diff --git a/asm/nonmatchings/code_32E490/func_E0014000.s b/asm/nonmatchings/code_32E490/func_E0014000.s new file mode 100644 index 0000000000..bf508f1d12 --- /dev/null +++ b/asm/nonmatchings/code_32E490/func_E0014000.s @@ -0,0 +1,158 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0014000 +/* 32E490 E0014000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 32E494 E0014004 F7BA0058 */ sdc1 $f26, 0x58($sp) +/* 32E498 E0014008 46006686 */ mov.s $f26, $f12 +/* 32E49C E001400C F7BC0060 */ sdc1 $f28, 0x60($sp) +/* 32E4A0 E0014010 46007706 */ mov.s $f28, $f14 +/* 32E4A4 E0014014 27A40010 */ addiu $a0, $sp, 0x10 +/* 32E4A8 E0014018 F7BE0068 */ sdc1 $f30, 0x68($sp) +/* 32E4AC E001401C 4486F000 */ mtc1 $a2, $f30 +/* 32E4B0 E0014020 3C02E001 */ lui $v0, %hi(D_E0014258) +/* 32E4B4 E0014024 24424258 */ addiu $v0, $v0, %lo(D_E0014258) +/* 32E4B8 E0014028 AFA20018 */ sw $v0, 0x18($sp) +/* 32E4BC E001402C 3C02E001 */ lui $v0, %hi(D_E0014260) +/* 32E4C0 E0014030 24424260 */ addiu $v0, $v0, %lo(D_E0014260) +/* 32E4C4 E0014034 AFA2001C */ sw $v0, 0x1c($sp) +/* 32E4C8 E0014038 3C02E001 */ lui $v0, %hi(D_E001449C) +/* 32E4CC E001403C 2442449C */ addiu $v0, $v0, %lo(D_E001449C) +/* 32E4D0 E0014040 AFA20020 */ sw $v0, 0x20($sp) +/* 32E4D4 E0014044 2402000A */ addiu $v0, $zero, 0xa +/* 32E4D8 E0014048 AFBF003C */ sw $ra, 0x3c($sp) +/* 32E4DC E001404C AFB40038 */ sw $s4, 0x38($sp) +/* 32E4E0 E0014050 AFB30034 */ sw $s3, 0x34($sp) +/* 32E4E4 E0014054 AFB20030 */ sw $s2, 0x30($sp) +/* 32E4E8 E0014058 AFB1002C */ sw $s1, 0x2c($sp) +/* 32E4EC E001405C AFB00028 */ sw $s0, 0x28($sp) +/* 32E4F0 E0014060 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 32E4F4 E0014064 F7B60048 */ sdc1 $f22, 0x48($sp) +/* 32E4F8 E0014068 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 32E4FC E001406C AFA7007C */ sw $a3, 0x7c($sp) +/* 32E500 E0014070 AFA00010 */ sw $zero, 0x10($sp) +/* 32E504 E0014074 AFA00024 */ sw $zero, 0x24($sp) +/* 32E508 E0014078 0C080124 */ jal func_E0200490 +/* 32E50C E001407C AFA20014 */ sw $v0, 0x14($sp) +/* 32E510 E0014080 24040260 */ addiu $a0, $zero, 0x260 +/* 32E514 E0014084 24140008 */ addiu $s4, $zero, 8 +/* 32E518 E0014088 0040802D */ daddu $s0, $v0, $zero +/* 32E51C E001408C 0C08012C */ jal func_E02004B0 +/* 32E520 E0014090 AE140008 */ sw $s4, 8($s0) +/* 32E524 E0014094 0040882D */ daddu $s1, $v0, $zero +/* 32E528 E0014098 16200003 */ bnez $s1, .LE00140A8 +/* 32E52C E001409C AE11000C */ sw $s1, 0xc($s0) +.LE00140A0: +/* 32E530 E00140A0 08005028 */ j .LE00140A0 +/* 32E534 E00140A4 00000000 */ nop +.LE00140A8: +/* 32E538 E00140A8 0220202D */ daddu $a0, $s1, $zero +/* 32E53C E00140AC 00142880 */ sll $a1, $s4, 2 +/* 32E540 E00140B0 00B42821 */ addu $a1, $a1, $s4 +/* 32E544 E00140B4 00052880 */ sll $a1, $a1, 2 +/* 32E548 E00140B8 00B42823 */ subu $a1, $a1, $s4 +/* 32E54C E00140BC 0C080130 */ jal func_E02004C0 +/* 32E550 E00140C0 00052880 */ sll $a1, $a1, 2 +/* 32E554 E00140C4 12800056 */ beqz $s4, .LE0014220 +/* 32E558 E00140C8 0000902D */ daddu $s2, $zero, $zero +/* 32E55C E00140CC 26300048 */ addiu $s0, $s1, 0x48 +/* 32E560 E00140D0 0240982D */ daddu $s3, $s2, $zero +/* 32E564 E00140D4 3C013F80 */ lui $at, 0x3f80 +/* 32E568 E00140D8 4481C000 */ mtc1 $at, $f24 +/* 32E56C E00140DC 3C01E001 */ lui $at, %hi(D_E0014780) +/* 32E570 E00140E0 D4364780 */ ldc1 $f22, %lo(D_E0014780)($at) +.LE00140E4: +/* 32E574 E00140E4 2404000A */ addiu $a0, $zero, 0xa +/* 32E578 E00140E8 24020001 */ addiu $v0, $zero, 1 +/* 32E57C E00140EC AE220000 */ sw $v0, ($s1) +/* 32E580 E00140F0 240200FF */ addiu $v0, $zero, 0xff +/* 32E584 E00140F4 AE00FFF8 */ sw $zero, -8($s0) +/* 32E588 E00140F8 E61AFFC4 */ swc1 $f26, -0x3c($s0) +/* 32E58C E00140FC E61CFFC8 */ swc1 $f28, -0x38($s0) +/* 32E590 E0014100 E61EFFCC */ swc1 $f30, -0x34($s0) +/* 32E594 E0014104 E618FFD0 */ swc1 $f24, -0x30($s0) +/* 32E598 E0014108 E618FFD4 */ swc1 $f24, -0x2c($s0) +/* 32E59C E001410C E618FFD8 */ swc1 $f24, -0x28($s0) +/* 32E5A0 E0014110 0C080138 */ jal func_E02004E0 +/* 32E5A4 E0014114 A202FFC0 */ sb $v0, -0x40($s0) +/* 32E5A8 E0014118 44820000 */ mtc1 $v0, $f0 +/* 32E5AC E001411C 00000000 */ nop +/* 32E5B0 E0014120 46800021 */ cvt.d.w $f0, $f0 +/* 32E5B4 E0014124 46360002 */ mul.d $f0, $f0, $f22 +/* 32E5B8 E0014128 00000000 */ nop +/* 32E5BC E001412C 3C013FF0 */ lui $at, 0x3ff0 +/* 32E5C0 E0014130 44811800 */ mtc1 $at, $f3 +/* 32E5C4 E0014134 44801000 */ mtc1 $zero, $f2 +/* 32E5C8 E0014138 00000000 */ nop +/* 32E5CC E001413C 46220000 */ add.d $f0, $f0, $f2 +/* 32E5D0 E0014140 2404000A */ addiu $a0, $zero, 0xa +/* 32E5D4 E0014144 46200020 */ cvt.s.d $f0, $f0 +/* 32E5D8 E0014148 0C080138 */ jal func_E02004E0 +/* 32E5DC E001414C E600FFDC */ swc1 $f0, -0x24($s0) +/* 32E5E0 E0014150 44820000 */ mtc1 $v0, $f0 +/* 32E5E4 E0014154 00000000 */ nop +/* 32E5E8 E0014158 46800021 */ cvt.d.w $f0, $f0 +/* 32E5EC E001415C 46360002 */ mul.d $f0, $f0, $f22 +/* 32E5F0 E0014160 00000000 */ nop +/* 32E5F4 E0014164 3C01E001 */ lui $at, %hi(D_E0014788) +/* 32E5F8 E0014168 D4224788 */ ldc1 $f2, %lo(D_E0014788)($at) +/* 32E5FC E001416C 26520001 */ addiu $s2, $s2, 1 +/* 32E600 E0014170 46220000 */ add.d $f0, $f0, $f2 +/* 32E604 E0014174 2631004C */ addiu $s1, $s1, 0x4c +/* 32E608 E0014178 2404003C */ addiu $a0, $zero, 0x3c +/* 32E60C E001417C 46200020 */ cvt.s.d $f0, $f0 +/* 32E610 E0014180 0C080000 */ jal func_E0200000 +/* 32E614 E0014184 E600FFE0 */ swc1 $f0, -0x20($s0) +/* 32E618 E0014188 44936000 */ mtc1 $s3, $f12 +/* 32E61C E001418C 00000000 */ nop +/* 32E620 E0014190 46806320 */ cvt.s.w $f12, $f12 +/* 32E624 E0014194 2673002D */ addiu $s3, $s3, 0x2d +/* 32E628 E0014198 C7A8007C */ lwc1 $f8, 0x7c($sp) +/* 32E62C E001419C 44820000 */ mtc1 $v0, $f0 +/* 32E630 E00141A0 00000000 */ nop +/* 32E634 E00141A4 46800020 */ cvt.s.w $f0, $f0 +/* 32E638 E00141A8 E600FFE4 */ swc1 $f0, -0x1c($s0) +/* 32E63C E00141AC 3C013F00 */ lui $at, 0x3f00 +/* 32E640 E00141B0 44810000 */ mtc1 $at, $f0 +/* 32E644 E00141B4 3C01BCA3 */ lui $at, 0xbca3 +/* 32E648 E00141B8 3421D70A */ ori $at, $at, 0xd70a +/* 32E64C E00141BC 44811000 */ mtc1 $at, $f2 +/* 32E650 E00141C0 3C013851 */ lui $at, 0x3851 +/* 32E654 E00141C4 3421B717 */ ori $at, $at, 0xb717 +/* 32E658 E00141C8 44812000 */ mtc1 $at, $f4 +/* 32E65C E00141CC 3C01C079 */ lui $at, 0xc079 +/* 32E660 E00141D0 3421999A */ ori $at, $at, 0x999a +/* 32E664 E00141D4 44813000 */ mtc1 $at, $f6 +/* 32E668 E00141D8 2402001E */ addiu $v0, $zero, 0x1e +/* 32E66C E00141DC A602FFBE */ sh $v0, -0x42($s0) +/* 32E670 E00141E0 460C4300 */ add.s $f12, $f8, $f12 +/* 32E674 E00141E4 E600FFEC */ swc1 $f0, -0x14($s0) +/* 32E678 E00141E8 E602FFF0 */ swc1 $f2, -0x10($s0) +/* 32E67C E00141EC E604FFF4 */ swc1 $f4, -0xc($s0) +/* 32E680 E00141F0 0C08013C */ jal func_E02004F0 +/* 32E684 E00141F4 E606FFE8 */ swc1 $f6, -0x18($s0) +/* 32E688 E00141F8 46000506 */ mov.s $f20, $f0 +/* 32E68C E00141FC 0C080140 */ jal func_E0200500 +/* 32E690 E0014200 4600A306 */ mov.s $f12, $f20 +/* 32E694 E0014204 4600A306 */ mov.s $f12, $f20 +/* 32E698 E0014208 0C080144 */ jal func_E0200510 +/* 32E69C E001420C E600FFFC */ swc1 $f0, -4($s0) +/* 32E6A0 E0014210 E6000000 */ swc1 $f0, ($s0) +/* 32E6A4 E0014214 0254102A */ slt $v0, $s2, $s4 +/* 32E6A8 E0014218 1440FFB2 */ bnez $v0, .LE00140E4 +/* 32E6AC E001421C 2610004C */ addiu $s0, $s0, 0x4c +.LE0014220: +/* 32E6B0 E0014220 8FBF003C */ lw $ra, 0x3c($sp) +/* 32E6B4 E0014224 8FB40038 */ lw $s4, 0x38($sp) +/* 32E6B8 E0014228 8FB30034 */ lw $s3, 0x34($sp) +/* 32E6BC E001422C 8FB20030 */ lw $s2, 0x30($sp) +/* 32E6C0 E0014230 8FB1002C */ lw $s1, 0x2c($sp) +/* 32E6C4 E0014234 8FB00028 */ lw $s0, 0x28($sp) +/* 32E6C8 E0014238 D7BE0068 */ ldc1 $f30, 0x68($sp) +/* 32E6CC E001423C D7BC0060 */ ldc1 $f28, 0x60($sp) +/* 32E6D0 E0014240 D7BA0058 */ ldc1 $f26, 0x58($sp) +/* 32E6D4 E0014244 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 32E6D8 E0014248 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 32E6DC E001424C D7B40040 */ ldc1 $f20, 0x40($sp) +/* 32E6E0 E0014250 03E00008 */ jr $ra +/* 32E6E4 E0014254 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_32E490/func_E0014258.s b/asm/nonmatchings/code_32E490/func_E0014258.s new file mode 100644 index 0000000000..48f6845698 --- /dev/null +++ b/asm/nonmatchings/code_32E490/func_E0014258.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0014258 +/* 32E6E8 E0014258 03E00008 */ jr $ra +/* 32E6EC E001425C 00000000 */ nop diff --git a/asm/nonmatchings/code_32E490/func_E0014260.s b/asm/nonmatchings/code_32E490/func_E0014260.s new file mode 100644 index 0000000000..f1fbcfe5b9 --- /dev/null +++ b/asm/nonmatchings/code_32E490/func_E0014260.s @@ -0,0 +1,154 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0014260 +/* 32E6F0 E0014260 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 32E6F4 E0014264 AFB40020 */ sw $s4, 0x20($sp) +/* 32E6F8 E0014268 0080A02D */ daddu $s4, $a0, $zero +/* 32E6FC E001426C AFB3001C */ sw $s3, 0x1c($sp) +/* 32E700 E0014270 0000982D */ daddu $s3, $zero, $zero +/* 32E704 E0014274 AFB20018 */ sw $s2, 0x18($sp) +/* 32E708 E0014278 AFBF0024 */ sw $ra, 0x24($sp) +/* 32E70C E001427C AFB10014 */ sw $s1, 0x14($sp) +/* 32E710 E0014280 AFB00010 */ sw $s0, 0x10($sp) +/* 32E714 E0014284 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 32E718 E0014288 8E820008 */ lw $v0, 8($s4) +/* 32E71C E001428C 8E91000C */ lw $s1, 0xc($s4) +/* 32E720 E0014290 18400075 */ blez $v0, .LE0014468 +/* 32E724 E0014294 0260902D */ daddu $s2, $s3, $zero +/* 32E728 E0014298 3C01E001 */ lui $at, %hi(D_E0014790) +/* 32E72C E001429C D4344790 */ ldc1 $f20, %lo(D_E0014790)($at) +/* 32E730 E00142A0 26300008 */ addiu $s0, $s1, 8 +.LE00142A4: +/* 32E734 E00142A4 8E220000 */ lw $v0, ($s1) +/* 32E738 E00142A8 5040006A */ beql $v0, $zero, .LE0014454 +/* 32E73C E00142AC 26730001 */ addiu $s3, $s3, 1 +/* 32E740 E00142B0 9602FFFE */ lhu $v0, -2($s0) +/* 32E744 E00142B4 2442FFFF */ addiu $v0, $v0, -1 +/* 32E748 E00142B8 A602FFFE */ sh $v0, -2($s0) +/* 32E74C E00142BC 00021400 */ sll $v0, $v0, 0x10 +/* 32E750 E00142C0 1C400003 */ bgtz $v0, .LE00142D0 +/* 32E754 E00142C4 00000000 */ nop +/* 32E758 E00142C8 08005114 */ j .LE0014450 +/* 32E75C E00142CC AE200000 */ sw $zero, ($s1) +.LE00142D0: +/* 32E760 E00142D0 C6000024 */ lwc1 $f0, 0x24($s0) +/* 32E764 E00142D4 3C014140 */ lui $at, 0x4140 +/* 32E768 E00142D8 44816000 */ mtc1 $at, $f12 +/* 32E76C E00142DC 0C08013C */ jal func_E02004F0 +/* 32E770 E00142E0 460C0300 */ add.s $f12, $f0, $f12 +/* 32E774 E00142E4 46000306 */ mov.s $f12, $f0 +/* 32E778 E00142E8 0C080140 */ jal func_E0200500 +/* 32E77C E00142EC E60C0024 */ swc1 $f12, 0x24($s0) +/* 32E780 E00142F0 46000021 */ cvt.d.s $f0, $f0 +/* 32E784 E00142F4 46340002 */ mul.d $f0, $f0, $f20 +/* 32E788 E00142F8 00000000 */ nop +/* 32E78C E00142FC C602001C */ lwc1 $f2, 0x1c($s0) +/* 32E790 E0014300 460010A1 */ cvt.d.s $f2, $f2 +/* 32E794 E0014304 46201080 */ add.d $f2, $f2, $f0 +/* 32E798 E0014308 C60C0024 */ lwc1 $f12, 0x24($s0) +/* 32E79C E001430C 462010A0 */ cvt.s.d $f2, $f2 +/* 32E7A0 E0014310 0C080144 */ jal func_E0200510 +/* 32E7A4 E0014314 E6020010 */ swc1 $f2, 0x10($s0) +/* 32E7A8 E0014318 46000021 */ cvt.d.s $f0, $f0 +/* 32E7AC E001431C 46340002 */ mul.d $f0, $f0, $f20 +/* 32E7B0 E0014320 00000000 */ nop +/* 32E7B4 E0014324 C6040028 */ lwc1 $f4, 0x28($s0) +/* 32E7B8 E0014328 3C01E001 */ lui $at, %hi(D_E0014798) +/* 32E7BC E001432C D4224798 */ ldc1 $f2, %lo(D_E0014798)($at) +/* 32E7C0 E0014330 46002121 */ cvt.d.s $f4, $f4 +/* 32E7C4 E0014334 46222102 */ mul.d $f4, $f4, $f2 +/* 32E7C8 E0014338 00000000 */ nop +/* 32E7CC E001433C C608001C */ lwc1 $f8, 0x1c($s0) +/* 32E7D0 E0014340 3C01401E */ lui $at, 0x401e +/* 32E7D4 E0014344 44817800 */ mtc1 $at, $f15 +/* 32E7D8 E0014348 44807000 */ mtc1 $zero, $f14 +/* 32E7DC E001434C 46004221 */ cvt.d.s $f8, $f8 +/* 32E7E0 E0014350 46287381 */ sub.d $f14, $f14, $f8 +/* 32E7E4 E0014354 3C01E001 */ lui $at, %hi(D_E00147A0) +/* 32E7E8 E0014358 D42247A0 */ ldc1 $f2, %lo(D_E00147A0)($at) +/* 32E7EC E001435C 46227382 */ mul.d $f14, $f14, $f2 +/* 32E7F0 E0014360 00000000 */ nop +/* 32E7F4 E0014364 C60C0020 */ lwc1 $f12, 0x20($s0) +/* 32E7F8 E0014368 3C01E001 */ lui $at, %hi(D_E00147A8) +/* 32E7FC E001436C D42247A8 */ ldc1 $f2, %lo(D_E00147A8)($at) +/* 32E800 E0014370 46006321 */ cvt.d.s $f12, $f12 +/* 32E804 E0014374 46226302 */ mul.d $f12, $f12, $f2 +/* 32E808 E0014378 00000000 */ nop +/* 32E80C E001437C C612003C */ lwc1 $f18, 0x3c($s0) +/* 32E810 E0014380 46202120 */ cvt.s.d $f4, $f4 +/* 32E814 E0014384 46122482 */ mul.s $f18, $f4, $f18 +/* 32E818 E0014388 00000000 */ nop +/* 32E81C E001438C C6020040 */ lwc1 $f2, 0x40($s0) +/* 32E820 E0014390 24120001 */ addiu $s2, $zero, 1 +/* 32E824 E0014394 E6040028 */ swc1 $f4, 0x28($s0) +/* 32E828 E0014398 46002406 */ mov.s $f16, $f4 +/* 32E82C E001439C 46028402 */ mul.s $f16, $f16, $f2 +/* 32E830 E00143A0 00000000 */ nop +/* 32E834 E00143A4 C60A0030 */ lwc1 $f10, 0x30($s0) +/* 32E838 E00143A8 C606002C */ lwc1 $f6, 0x2c($s0) +/* 32E83C E00143AC C6020034 */ lwc1 $f2, 0x34($s0) +/* 32E840 E00143B0 8602FFFE */ lh $v0, -2($s0) +/* 32E844 E00143B4 46025280 */ add.s $f10, $f10, $f2 +/* 32E848 E00143B8 C6020020 */ lwc1 $f2, 0x20($s0) +/* 32E84C E00143BC 2842000A */ slti $v0, $v0, 0xa +/* 32E850 E00143C0 460010A1 */ cvt.d.s $f2, $f2 +/* 32E854 E00143C4 46201080 */ add.d $f2, $f2, $f0 +/* 32E858 E00143C8 C6040008 */ lwc1 $f4, 8($s0) +/* 32E85C E00143CC C600000C */ lwc1 $f0, 0xc($s0) +/* 32E860 E00143D0 462E4200 */ add.d $f8, $f8, $f14 +/* 32E864 E00143D4 46206320 */ cvt.s.d $f12, $f12 +/* 32E868 E00143D8 E60A0030 */ swc1 $f10, 0x30($s0) +/* 32E86C E00143DC E60C0020 */ swc1 $f12, 0x20($s0) +/* 32E870 E00143E0 460A3180 */ add.s $f6, $f6, $f10 +/* 32E874 E00143E4 462010A0 */ cvt.s.d $f2, $f2 +/* 32E878 E00143E8 46204220 */ cvt.s.d $f8, $f8 +/* 32E87C E00143EC 46100000 */ add.s $f0, $f0, $f16 +/* 32E880 E00143F0 E6020014 */ swc1 $f2, 0x14($s0) +/* 32E884 E00143F4 C6020004 */ lwc1 $f2, 4($s0) +/* 32E888 E00143F8 46062100 */ add.s $f4, $f4, $f6 +/* 32E88C E00143FC E608001C */ swc1 $f8, 0x1c($s0) +/* 32E890 E0014400 E606002C */ swc1 $f6, 0x2c($s0) +/* 32E894 E0014404 46121080 */ add.s $f2, $f2, $f18 +/* 32E898 E0014408 E600000C */ swc1 $f0, 0xc($s0) +/* 32E89C E001440C E6040008 */ swc1 $f4, 8($s0) +/* 32E8A0 E0014410 10400008 */ beqz $v0, .LE0014434 +/* 32E8A4 E0014414 E6020004 */ swc1 $f2, 4($s0) +/* 32E8A8 E0014418 3C01E001 */ lui $at, %hi(D_E00147B0) +/* 32E8AC E001441C D42247B0 */ ldc1 $f2, %lo(D_E00147B0)($at) +/* 32E8B0 E0014420 46006021 */ cvt.d.s $f0, $f12 +/* 32E8B4 E0014424 46220002 */ mul.d $f0, $f0, $f2 +/* 32E8B8 E0014428 00000000 */ nop +/* 32E8BC E001442C 46200020 */ cvt.s.d $f0, $f0 +/* 32E8C0 E0014430 E6000020 */ swc1 $f0, 0x20($s0) +.LE0014434: +/* 32E8C4 E0014434 8602FFFE */ lh $v0, -2($s0) +/* 32E8C8 E0014438 2842000F */ slti $v0, $v0, 0xf +/* 32E8CC E001443C 50400005 */ beql $v0, $zero, .LE0014454 +/* 32E8D0 E0014440 26730001 */ addiu $s3, $s3, 1 +/* 32E8D4 E0014444 92020000 */ lbu $v0, ($s0) +/* 32E8D8 E0014448 2442FFF0 */ addiu $v0, $v0, -0x10 +/* 32E8DC E001444C A2020000 */ sb $v0, ($s0) +.LE0014450: +/* 32E8E0 E0014450 26730001 */ addiu $s3, $s3, 1 +.LE0014454: +/* 32E8E4 E0014454 2610004C */ addiu $s0, $s0, 0x4c +/* 32E8E8 E0014458 8E820008 */ lw $v0, 8($s4) +/* 32E8EC E001445C 0262102A */ slt $v0, $s3, $v0 +/* 32E8F0 E0014460 1440FF90 */ bnez $v0, .LE00142A4 +/* 32E8F4 E0014464 2631004C */ addiu $s1, $s1, 0x4c +.LE0014468: +/* 32E8F8 E0014468 16400003 */ bnez $s2, .LE0014478 +/* 32E8FC E001446C 00000000 */ nop +/* 32E900 E0014470 0C080128 */ jal func_E02004A0 +/* 32E904 E0014474 0280202D */ daddu $a0, $s4, $zero +.LE0014478: +/* 32E908 E0014478 8FBF0024 */ lw $ra, 0x24($sp) +/* 32E90C E001447C 8FB40020 */ lw $s4, 0x20($sp) +/* 32E910 E0014480 8FB3001C */ lw $s3, 0x1c($sp) +/* 32E914 E0014484 8FB20018 */ lw $s2, 0x18($sp) +/* 32E918 E0014488 8FB10014 */ lw $s1, 0x14($sp) +/* 32E91C E001448C 8FB00010 */ lw $s0, 0x10($sp) +/* 32E920 E0014490 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 32E924 E0014494 03E00008 */ jr $ra +/* 32E928 E0014498 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/nonmatchings/code_32E490/func_E001449C.s b/asm/nonmatchings/code_32E490/func_E001449C.s new file mode 100644 index 0000000000..13949c5177 --- /dev/null +++ b/asm/nonmatchings/code_32E490/func_E001449C.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001449C +/* 32E92C E001449C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 32E930 E00144A0 3C02E001 */ lui $v0, %hi(D_E00144E0) +/* 32E934 E00144A4 244244E0 */ addiu $v0, $v0, %lo(D_E00144E0) +/* 32E938 E00144A8 AFA2001C */ sw $v0, 0x1c($sp) +/* 32E93C E00144AC 24020028 */ addiu $v0, $zero, 0x28 +/* 32E940 E00144B0 AFA40018 */ sw $a0, 0x18($sp) +/* 32E944 E00144B4 27A40010 */ addiu $a0, $sp, 0x10 +/* 32E948 E00144B8 AFBF0020 */ sw $ra, 0x20($sp) +/* 32E94C E00144BC AFA00014 */ sw $zero, 0x14($sp) +/* 32E950 E00144C0 0C080120 */ jal func_E0200480 +/* 32E954 E00144C4 AFA20010 */ sw $v0, 0x10($sp) +/* 32E958 E00144C8 8C430000 */ lw $v1, ($v0) +/* 32E95C E00144CC 34630002 */ ori $v1, $v1, 2 +/* 32E960 E00144D0 AC430000 */ sw $v1, ($v0) +/* 32E964 E00144D4 8FBF0020 */ lw $ra, 0x20($sp) +/* 32E968 E00144D8 03E00008 */ jr $ra +/* 32E96C E00144DC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_32E490/func_E00144E0.s b/asm/nonmatchings/code_32E490/func_E00144E0.s new file mode 100644 index 0000000000..c83add09cd --- /dev/null +++ b/asm/nonmatchings/code_32E490/func_E00144E0.s @@ -0,0 +1,175 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00144E0 +/* 32E970 E00144E0 27BDFF30 */ addiu $sp, $sp, -0xd0 +/* 32E974 E00144E4 AFB600B8 */ sw $s6, 0xb8($sp) +/* 32E978 E00144E8 0080B02D */ daddu $s6, $a0, $zero +/* 32E97C E00144EC 3C05DB06 */ lui $a1, 0xdb06 +/* 32E980 E00144F0 34A50024 */ ori $a1, $a1, 0x24 +/* 32E984 E00144F4 AFB200A8 */ sw $s2, 0xa8($sp) +/* 32E988 E00144F8 0000902D */ daddu $s2, $zero, $zero +/* 32E98C E00144FC 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 32E990 E0014500 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 32E994 E0014504 3C02E700 */ lui $v0, 0xe700 +/* 32E998 E0014508 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 32E99C E001450C AFBE00C0 */ sw $fp, 0xc0($sp) +/* 32E9A0 E0014510 AFB700BC */ sw $s7, 0xbc($sp) +/* 32E9A4 E0014514 AFB500B4 */ sw $s5, 0xb4($sp) +/* 32E9A8 E0014518 AFB400B0 */ sw $s4, 0xb0($sp) +/* 32E9AC E001451C AFB300AC */ sw $s3, 0xac($sp) +/* 32E9B0 E0014520 AFB100A4 */ sw $s1, 0xa4($sp) +/* 32E9B4 E0014524 AFB000A0 */ sw $s0, 0xa0($sp) +/* 32E9B8 E0014528 F7B400C8 */ sdc1 $f20, 0xc8($sp) +/* 32E9BC E001452C 8CC30000 */ lw $v1, ($a2) +/* 32E9C0 E0014530 8ED1000C */ lw $s1, 0xc($s6) +/* 32E9C4 E0014534 0060202D */ daddu $a0, $v1, $zero +/* 32E9C8 E0014538 24630008 */ addiu $v1, $v1, 8 +/* 32E9CC E001453C ACC30000 */ sw $v1, ($a2) +/* 32E9D0 E0014540 AC820000 */ sw $v0, ($a0) +/* 32E9D4 E0014544 AC800004 */ sw $zero, 4($a0) +/* 32E9D8 E0014548 AC650000 */ sw $a1, ($v1) +/* 32E9DC E001454C 8EC40010 */ lw $a0, 0x10($s6) +/* 32E9E0 E0014550 24620008 */ addiu $v0, $v1, 8 +/* 32E9E4 E0014554 ACC20000 */ sw $v0, ($a2) +/* 32E9E8 E0014558 8C84001C */ lw $a0, 0x1c($a0) +/* 32E9EC E001455C 3C02DE00 */ lui $v0, 0xde00 +/* 32E9F0 E0014560 AC620008 */ sw $v0, 8($v1) +/* 32E9F4 E0014564 3C020900 */ lui $v0, 0x900 +/* 32E9F8 E0014568 244200E0 */ addiu $v0, $v0, 0xe0 +/* 32E9FC E001456C AC62000C */ sw $v0, 0xc($v1) +/* 32EA00 E0014570 3C028000 */ lui $v0, 0x8000 +/* 32EA04 E0014574 00822021 */ addu $a0, $a0, $v0 +/* 32EA08 E0014578 AC640004 */ sw $a0, 4($v1) +/* 32EA0C E001457C 8EC20008 */ lw $v0, 8($s6) +/* 32EA10 E0014580 24630010 */ addiu $v1, $v1, 0x10 +/* 32EA14 E0014584 18400066 */ blez $v0, .LE0014720 +/* 32EA18 E0014588 ACC30000 */ sw $v1, ($a2) +/* 32EA1C E001458C 4480A000 */ mtc1 $zero, $f20 +/* 32EA20 E0014590 27B50060 */ addiu $s5, $sp, 0x60 +/* 32EA24 E0014594 3C1E800A */ lui $fp, %hi(D_8009A674) +/* 32EA28 E0014598 27DEA674 */ addiu $fp, $fp, %lo(D_8009A674) +/* 32EA2C E001459C 3C178007 */ lui $s7, %hi(D_800741F0) +/* 32EA30 E00145A0 26F741F0 */ addiu $s7, $s7, %lo(D_800741F0) +/* 32EA34 E00145A4 3C140001 */ lui $s4, 1 +/* 32EA38 E00145A8 36941630 */ ori $s4, $s4, 0x1630 +/* 32EA3C E00145AC 00C0982D */ daddu $s3, $a2, $zero +/* 32EA40 E00145B0 26300008 */ addiu $s0, $s1, 8 +.LE00145B4: +/* 32EA44 E00145B4 8E220000 */ lw $v0, ($s1) +/* 32EA48 E00145B8 50400054 */ beql $v0, $zero, .LE001470C +/* 32EA4C E00145BC 26520001 */ addiu $s2, $s2, 1 +/* 32EA50 E00145C0 3C09800B */ lui $t1, %hi(gCameras) +/* 32EA54 E00145C4 25291D80 */ addiu $t1, $t1, %lo(gCameras) +/* 32EA58 E00145C8 4405A000 */ mfc1 $a1, $f20 +/* 32EA5C E00145CC 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 32EA60 E00145D0 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 32EA64 E00145D4 4407A000 */ mfc1 $a3, $f20 +/* 32EA68 E00145D8 3C013F80 */ lui $at, 0x3f80 +/* 32EA6C E00145DC 44810000 */ mtc1 $at, $f0 +/* 32EA70 E00145E0 00031080 */ sll $v0, $v1, 2 +/* 32EA74 E00145E4 00431021 */ addu $v0, $v0, $v1 +/* 32EA78 E00145E8 00021080 */ sll $v0, $v0, 2 +/* 32EA7C E00145EC 00431023 */ subu $v0, $v0, $v1 +/* 32EA80 E00145F0 000218C0 */ sll $v1, $v0, 3 +/* 32EA84 E00145F4 00431021 */ addu $v0, $v0, $v1 +/* 32EA88 E00145F8 000210C0 */ sll $v0, $v0, 3 +/* 32EA8C E00145FC 00491021 */ addu $v0, $v0, $t1 +/* 32EA90 E0014600 C442006C */ lwc1 $f2, 0x6c($v0) +/* 32EA94 E0014604 E7A00010 */ swc1 $f0, 0x10($sp) +/* 32EA98 E0014608 C6000004 */ lwc1 $f0, 4($s0) +/* 32EA9C E001460C 46001087 */ neg.s $f2, $f2 +/* 32EAA0 E0014610 E7A00014 */ swc1 $f0, 0x14($sp) +/* 32EAA4 E0014614 C6000008 */ lwc1 $f0, 8($s0) +/* 32EAA8 E0014618 44061000 */ mfc1 $a2, $f2 +/* 32EAAC E001461C E7A00018 */ swc1 $f0, 0x18($sp) +/* 32EAB0 E0014620 C600000C */ lwc1 $f0, 0xc($s0) +/* 32EAB4 E0014624 27A40020 */ addiu $a0, $sp, 0x20 +/* 32EAB8 E0014628 0C080180 */ jal func_E0200600 +/* 32EABC E001462C E7A0001C */ swc1 $f0, 0x1c($sp) +/* 32EAC0 E0014630 8E050010 */ lw $a1, 0x10($s0) +/* 32EAC4 E0014634 8E060014 */ lw $a2, 0x14($s0) +/* 32EAC8 E0014638 8E070018 */ lw $a3, 0x18($s0) +/* 32EACC E001463C 0C080110 */ jal func_E0200440 +/* 32EAD0 E0014640 02A0202D */ daddu $a0, $s5, $zero +/* 32EAD4 E0014644 02A0202D */ daddu $a0, $s5, $zero +/* 32EAD8 E0014648 27A50020 */ addiu $a1, $sp, 0x20 +/* 32EADC E001464C 0C080114 */ jal func_E0200450 +/* 32EAE0 E0014650 00A0302D */ daddu $a2, $a1, $zero +/* 32EAE4 E0014654 27A40020 */ addiu $a0, $sp, 0x20 +/* 32EAE8 E0014658 96E50000 */ lhu $a1, ($s7) +/* 32EAEC E001465C 8FC20000 */ lw $v0, ($fp) +/* 32EAF0 E0014660 00052980 */ sll $a1, $a1, 6 +/* 32EAF4 E0014664 00B42821 */ addu $a1, $a1, $s4 +/* 32EAF8 E0014668 0C080118 */ jal func_E0200460 +/* 32EAFC E001466C 00452821 */ addu $a1, $v0, $a1 +/* 32EB00 E0014670 3C077060 */ lui $a3, 0x7060 +/* 32EB04 E0014674 34E71800 */ ori $a3, $a3, 0x1800 +/* 32EB08 E0014678 3C08D838 */ lui $t0, 0xd838 +/* 32EB0C E001467C 35080002 */ ori $t0, $t0, 2 +/* 32EB10 E0014680 8E640000 */ lw $a0, ($s3) +/* 32EB14 E0014684 3C02FA00 */ lui $v0, 0xfa00 +/* 32EB18 E0014688 0080302D */ daddu $a2, $a0, $zero +/* 32EB1C E001468C 24840008 */ addiu $a0, $a0, 8 +/* 32EB20 E0014690 AE640000 */ sw $a0, ($s3) +/* 32EB24 E0014694 ACC20000 */ sw $v0, ($a2) +/* 32EB28 E0014698 92050000 */ lbu $a1, ($s0) +/* 32EB2C E001469C 96E30000 */ lhu $v1, ($s7) +/* 32EB30 E00146A0 24820008 */ addiu $v0, $a0, 8 +/* 32EB34 E00146A4 AE620000 */ sw $v0, ($s3) +/* 32EB38 E00146A8 24620001 */ addiu $v0, $v1, 1 +/* 32EB3C E00146AC A6E20000 */ sh $v0, ($s7) +/* 32EB40 E00146B0 24820010 */ addiu $v0, $a0, 0x10 +/* 32EB44 E00146B4 AE620000 */ sw $v0, ($s3) +/* 32EB48 E00146B8 24820018 */ addiu $v0, $a0, 0x18 +/* 32EB4C E00146BC 00A72825 */ or $a1, $a1, $a3 +/* 32EB50 E00146C0 AE620000 */ sw $v0, ($s3) +/* 32EB54 E00146C4 3C02DA38 */ lui $v0, 0xda38 +/* 32EB58 E00146C8 3063FFFF */ andi $v1, $v1, 0xffff +/* 32EB5C E00146CC 00031980 */ sll $v1, $v1, 6 +/* 32EB60 E00146D0 ACC50004 */ sw $a1, 4($a2) +/* 32EB64 E00146D4 AC820000 */ sw $v0, ($a0) +/* 32EB68 E00146D8 8FC20000 */ lw $v0, ($fp) +/* 32EB6C E00146DC 00741821 */ addu $v1, $v1, $s4 +/* 32EB70 E00146E0 AC880010 */ sw $t0, 0x10($a0) +/* 32EB74 E00146E4 00431021 */ addu $v0, $v0, $v1 +/* 32EB78 E00146E8 AC820004 */ sw $v0, 4($a0) +/* 32EB7C E00146EC 3C02DE00 */ lui $v0, 0xde00 +/* 32EB80 E00146F0 AC820008 */ sw $v0, 8($a0) +/* 32EB84 E00146F4 3C020900 */ lui $v0, 0x900 +/* 32EB88 E00146F8 244201B8 */ addiu $v0, $v0, 0x1b8 +/* 32EB8C E00146FC AC82000C */ sw $v0, 0xc($a0) +/* 32EB90 E0014700 24020040 */ addiu $v0, $zero, 0x40 +/* 32EB94 E0014704 AC820014 */ sw $v0, 0x14($a0) +/* 32EB98 E0014708 26520001 */ addiu $s2, $s2, 1 +.LE001470C: +/* 32EB9C E001470C 2610004C */ addiu $s0, $s0, 0x4c +/* 32EBA0 E0014710 8EC20008 */ lw $v0, 8($s6) +/* 32EBA4 E0014714 0242102A */ slt $v0, $s2, $v0 +/* 32EBA8 E0014718 1440FFA6 */ bnez $v0, .LE00145B4 +/* 32EBAC E001471C 2631004C */ addiu $s1, $s1, 0x4c +.LE0014720: +/* 32EBB0 E0014720 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 32EBB4 E0014724 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 32EBB8 E0014728 8C620000 */ lw $v0, ($v1) +/* 32EBBC E001472C 0040202D */ daddu $a0, $v0, $zero +/* 32EBC0 E0014730 24420008 */ addiu $v0, $v0, 8 +/* 32EBC4 E0014734 AC620000 */ sw $v0, ($v1) +/* 32EBC8 E0014738 3C02E700 */ lui $v0, 0xe700 +/* 32EBCC E001473C AC820000 */ sw $v0, ($a0) +/* 32EBD0 E0014740 AC800004 */ sw $zero, 4($a0) +/* 32EBD4 E0014744 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 32EBD8 E0014748 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 32EBDC E001474C 8FB700BC */ lw $s7, 0xbc($sp) +/* 32EBE0 E0014750 8FB600B8 */ lw $s6, 0xb8($sp) +/* 32EBE4 E0014754 8FB500B4 */ lw $s5, 0xb4($sp) +/* 32EBE8 E0014758 8FB400B0 */ lw $s4, 0xb0($sp) +/* 32EBEC E001475C 8FB300AC */ lw $s3, 0xac($sp) +/* 32EBF0 E0014760 8FB200A8 */ lw $s2, 0xa8($sp) +/* 32EBF4 E0014764 8FB100A4 */ lw $s1, 0xa4($sp) +/* 32EBF8 E0014768 8FB000A0 */ lw $s0, 0xa0($sp) +/* 32EBFC E001476C D7B400C8 */ ldc1 $f20, 0xc8($sp) +/* 32EC00 E0014770 03E00008 */ jr $ra +/* 32EC04 E0014774 27BD00D0 */ addiu $sp, $sp, 0xd0 +/* 32EC08 E0014778 00000000 */ nop +/* 32EC0C E001477C 00000000 */ nop diff --git a/asm/nonmatchings/code_32EE30/func_E0016000.s b/asm/nonmatchings/code_32EE30/func_E0016000.s new file mode 100644 index 0000000000..7dd57f6985 --- /dev/null +++ b/asm/nonmatchings/code_32EE30/func_E0016000.s @@ -0,0 +1,144 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0016000 +/* 32EE30 E0016000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 32EE34 E0016004 F7B80058 */ sdc1 $f24, 0x58($sp) +/* 32EE38 E0016008 4485C000 */ mtc1 $a1, $f24 +/* 32EE3C E001600C AFB5003C */ sw $s5, 0x3c($sp) +/* 32EE40 E0016010 0080A82D */ daddu $s5, $a0, $zero +/* 32EE44 E0016014 F7BA0060 */ sdc1 $f26, 0x60($sp) +/* 32EE48 E0016018 4486D000 */ mtc1 $a2, $f26 +/* 32EE4C E001601C 27A40010 */ addiu $a0, $sp, 0x10 +/* 32EE50 E0016020 F7BC0068 */ sdc1 $f28, 0x68($sp) +/* 32EE54 E0016024 4487E000 */ mtc1 $a3, $f28 +/* 32EE58 E0016028 3C02E001 */ lui $v0, %hi(D_E0016220) +/* 32EE5C E001602C 24426220 */ addiu $v0, $v0, %lo(D_E0016220) +/* 32EE60 E0016030 AFA20018 */ sw $v0, 0x18($sp) +/* 32EE64 E0016034 3C02E001 */ lui $v0, %hi(D_E0016228) +/* 32EE68 E0016038 24426228 */ addiu $v0, $v0, %lo(D_E0016228) +/* 32EE6C E001603C AFA2001C */ sw $v0, 0x1c($sp) +/* 32EE70 E0016040 3C02E001 */ lui $v0, %hi(D_E0016410) +/* 32EE74 E0016044 24426410 */ addiu $v0, $v0, %lo(D_E0016410) +/* 32EE78 E0016048 AFA20020 */ sw $v0, 0x20($sp) +/* 32EE7C E001604C 2402000B */ addiu $v0, $zero, 0xb +/* 32EE80 E0016050 AFBF0044 */ sw $ra, 0x44($sp) +/* 32EE84 E0016054 AFB60040 */ sw $s6, 0x40($sp) +/* 32EE88 E0016058 AFB40038 */ sw $s4, 0x38($sp) +/* 32EE8C E001605C AFB30034 */ sw $s3, 0x34($sp) +/* 32EE90 E0016060 AFB20030 */ sw $s2, 0x30($sp) +/* 32EE94 E0016064 AFB1002C */ sw $s1, 0x2c($sp) +/* 32EE98 E0016068 AFB00028 */ sw $s0, 0x28($sp) +/* 32EE9C E001606C F7B60050 */ sdc1 $f22, 0x50($sp) +/* 32EEA0 E0016070 F7B40048 */ sdc1 $f20, 0x48($sp) +/* 32EEA4 E0016074 AFA00010 */ sw $zero, 0x10($sp) +/* 32EEA8 E0016078 AFA00024 */ sw $zero, 0x24($sp) +/* 32EEAC E001607C 0C080124 */ jal func_E0200490 +/* 32EEB0 E0016080 AFA20014 */ sw $v0, 0x14($sp) +/* 32EEB4 E0016084 24040050 */ addiu $a0, $zero, 0x50 +/* 32EEB8 E0016088 24130001 */ addiu $s3, $zero, 1 +/* 32EEBC E001608C 0040802D */ daddu $s0, $v0, $zero +/* 32EEC0 E0016090 0C08012C */ jal func_E02004B0 +/* 32EEC4 E0016094 AE130008 */ sw $s3, 8($s0) +/* 32EEC8 E0016098 0040882D */ daddu $s1, $v0, $zero +/* 32EECC E001609C 16200003 */ bnez $s1, .LE00160AC +/* 32EED0 E00160A0 AE11000C */ sw $s1, 0xc($s0) +.LE00160A4: +/* 32EED4 E00160A4 08005829 */ j .LE00160A4 +/* 32EED8 E00160A8 00000000 */ nop +.LE00160AC: +/* 32EEDC E00160AC 0220202D */ daddu $a0, $s1, $zero +/* 32EEE0 E00160B0 00132880 */ sll $a1, $s3, 2 +/* 32EEE4 E00160B4 00B32821 */ addu $a1, $a1, $s3 +/* 32EEE8 E00160B8 0C080130 */ jal func_E02004C0 +/* 32EEEC E00160BC 00052900 */ sll $a1, $a1, 4 +/* 32EEF0 E00160C0 0000902D */ daddu $s2, $zero, $zero +/* 32EEF4 E00160C4 0253102A */ slt $v0, $s2, $s3 +/* 32EEF8 E00160C8 10400046 */ beqz $v0, .LE00161E4 +/* 32EEFC E00160CC 24160001 */ addiu $s6, $zero, 1 +/* 32EF00 E00160D0 241400FF */ addiu $s4, $zero, 0xff +/* 32EF04 E00160D4 26300008 */ addiu $s0, $s1, 8 +/* 32EF08 E00160D8 3C013F80 */ lui $at, 0x3f80 +/* 32EF0C E00160DC 4481B000 */ mtc1 $at, $f22 +/* 32EF10 E00160E0 3C01E001 */ lui $at, %hi(D_E0016720) +/* 32EF14 E00160E4 D4346720 */ ldc1 $f20, %lo(D_E0016720)($at) +.LE00160E8: +/* 32EF18 E00160E8 2404000A */ addiu $a0, $zero, 0xa +/* 32EF1C E00160EC AE360000 */ sw $s6, ($s1) +/* 32EF20 E00160F0 A615FFFC */ sh $s5, -4($s0) +/* 32EF24 E00160F4 AE000038 */ sw $zero, 0x38($s0) +/* 32EF28 E00160F8 AE00003C */ sw $zero, 0x3c($s0) +/* 32EF2C E00160FC E6180004 */ swc1 $f24, 4($s0) +/* 32EF30 E0016100 E61A0008 */ swc1 $f26, 8($s0) +/* 32EF34 E0016104 E61C000C */ swc1 $f28, 0xc($s0) +/* 32EF38 E0016108 E6160014 */ swc1 $f22, 0x14($s0) +/* 32EF3C E001610C E6160018 */ swc1 $f22, 0x18($s0) +/* 32EF40 E0016110 E616001C */ swc1 $f22, 0x1c($s0) +/* 32EF44 E0016114 0C080138 */ jal func_E02004E0 +/* 32EF48 E0016118 A2140000 */ sb $s4, ($s0) +/* 32EF4C E001611C 44820000 */ mtc1 $v0, $f0 +/* 32EF50 E0016120 00000000 */ nop +/* 32EF54 E0016124 46800021 */ cvt.d.w $f0, $f0 +/* 32EF58 E0016128 46340002 */ mul.d $f0, $f0, $f20 +/* 32EF5C E001612C 00000000 */ nop +/* 32EF60 E0016130 3C01E001 */ lui $at, %hi(D_E0016728) +/* 32EF64 E0016134 D4226728 */ ldc1 $f2, %lo(D_E0016728)($at) +/* 32EF68 E0016138 46220000 */ add.d $f0, $f0, $f2 +/* 32EF6C E001613C 2404000A */ addiu $a0, $zero, 0xa +/* 32EF70 E0016140 46200020 */ cvt.s.d $f0, $f0 +/* 32EF74 E0016144 0C080138 */ jal func_E02004E0 +/* 32EF78 E0016148 E6000020 */ swc1 $f0, 0x20($s0) +/* 32EF7C E001614C 44820000 */ mtc1 $v0, $f0 +/* 32EF80 E0016150 00000000 */ nop +/* 32EF84 E0016154 46800021 */ cvt.d.w $f0, $f0 +/* 32EF88 E0016158 46340002 */ mul.d $f0, $f0, $f20 +/* 32EF8C E001615C 00000000 */ nop +/* 32EF90 E0016160 3C013FF8 */ lui $at, 0x3ff8 +/* 32EF94 E0016164 44811800 */ mtc1 $at, $f3 +/* 32EF98 E0016168 44801000 */ mtc1 $zero, $f2 +/* 32EF9C E001616C 26520001 */ addiu $s2, $s2, 1 +/* 32EFA0 E0016170 46220000 */ add.d $f0, $f0, $f2 +/* 32EFA4 E0016174 26310050 */ addiu $s1, $s1, 0x50 +/* 32EFA8 E0016178 2404003C */ addiu $a0, $zero, 0x3c +/* 32EFAC E001617C 46200020 */ cvt.s.d $f0, $f0 +/* 32EFB0 E0016180 0C080000 */ jal func_E0200000 +/* 32EFB4 E0016184 E6000024 */ swc1 $f0, 0x24($s0) +/* 32EFB8 E0016188 24040168 */ addiu $a0, $zero, 0x168 +/* 32EFBC E001618C 44820000 */ mtc1 $v0, $f0 +/* 32EFC0 E0016190 00000000 */ nop +/* 32EFC4 E0016194 46800020 */ cvt.s.w $f0, $f0 +/* 32EFC8 E0016198 E6000028 */ swc1 $f0, 0x28($s0) +/* 32EFCC E001619C 3C014000 */ lui $at, 0x4000 +/* 32EFD0 E00161A0 44810000 */ mtc1 $at, $f0 +/* 32EFD4 E00161A4 3C01BF00 */ lui $at, 0xbf00 +/* 32EFD8 E00161A8 44811000 */ mtc1 $at, $f2 +/* 32EFDC E00161AC 2402000F */ addiu $v0, $zero, 0xf +/* 32EFE0 E00161B0 A615FFFC */ sh $s5, -4($s0) +/* 32EFE4 E00161B4 A602FFFE */ sh $v0, -2($s0) +/* 32EFE8 E00161B8 E6000030 */ swc1 $f0, 0x30($s0) +/* 32EFEC E00161BC 0C080000 */ jal func_E0200000 +/* 32EFF0 E00161C0 E6020034 */ swc1 $f2, 0x34($s0) +/* 32EFF4 E00161C4 44820000 */ mtc1 $v0, $f0 +/* 32EFF8 E00161C8 00000000 */ nop +/* 32EFFC E00161CC 46800020 */ cvt.s.w $f0, $f0 +/* 32F000 E00161D0 E6000010 */ swc1 $f0, 0x10($s0) +/* 32F004 E00161D4 A2140000 */ sb $s4, ($s0) +/* 32F008 E00161D8 0253102A */ slt $v0, $s2, $s3 +/* 32F00C E00161DC 1440FFC2 */ bnez $v0, .LE00160E8 +/* 32F010 E00161E0 26100050 */ addiu $s0, $s0, 0x50 +.LE00161E4: +/* 32F014 E00161E4 8FBF0044 */ lw $ra, 0x44($sp) +/* 32F018 E00161E8 8FB60040 */ lw $s6, 0x40($sp) +/* 32F01C E00161EC 8FB5003C */ lw $s5, 0x3c($sp) +/* 32F020 E00161F0 8FB40038 */ lw $s4, 0x38($sp) +/* 32F024 E00161F4 8FB30034 */ lw $s3, 0x34($sp) +/* 32F028 E00161F8 8FB20030 */ lw $s2, 0x30($sp) +/* 32F02C E00161FC 8FB1002C */ lw $s1, 0x2c($sp) +/* 32F030 E0016200 8FB00028 */ lw $s0, 0x28($sp) +/* 32F034 E0016204 D7BC0068 */ ldc1 $f28, 0x68($sp) +/* 32F038 E0016208 D7BA0060 */ ldc1 $f26, 0x60($sp) +/* 32F03C E001620C D7B80058 */ ldc1 $f24, 0x58($sp) +/* 32F040 E0016210 D7B60050 */ ldc1 $f22, 0x50($sp) +/* 32F044 E0016214 D7B40048 */ ldc1 $f20, 0x48($sp) +/* 32F048 E0016218 03E00008 */ jr $ra +/* 32F04C E001621C 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_32EE30/func_E0016220.s b/asm/nonmatchings/code_32EE30/func_E0016220.s new file mode 100644 index 0000000000..4c26e84db9 --- /dev/null +++ b/asm/nonmatchings/code_32EE30/func_E0016220.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0016220 +/* 32F050 E0016220 03E00008 */ jr $ra +/* 32F054 E0016224 00000000 */ nop diff --git a/asm/nonmatchings/code_32EE30/func_E0016228.s b/asm/nonmatchings/code_32EE30/func_E0016228.s new file mode 100644 index 0000000000..704c900878 --- /dev/null +++ b/asm/nonmatchings/code_32EE30/func_E0016228.s @@ -0,0 +1,133 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0016228 +/* 32F058 E0016228 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 32F05C E001622C AFB40020 */ sw $s4, 0x20($sp) +/* 32F060 E0016230 0080A02D */ daddu $s4, $a0, $zero +/* 32F064 E0016234 AFB20018 */ sw $s2, 0x18($sp) +/* 32F068 E0016238 0000902D */ daddu $s2, $zero, $zero +/* 32F06C E001623C AFB3001C */ sw $s3, 0x1c($sp) +/* 32F070 E0016240 AFBF0024 */ sw $ra, 0x24($sp) +/* 32F074 E0016244 AFB10014 */ sw $s1, 0x14($sp) +/* 32F078 E0016248 AFB00010 */ sw $s0, 0x10($sp) +/* 32F07C E001624C F7B60030 */ sdc1 $f22, 0x30($sp) +/* 32F080 E0016250 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 32F084 E0016254 8E820008 */ lw $v0, 8($s4) +/* 32F088 E0016258 8E91000C */ lw $s1, 0xc($s4) +/* 32F08C E001625C 1840005E */ blez $v0, .LE00163D8 +/* 32F090 E0016260 0240982D */ daddu $s3, $s2, $zero +/* 32F094 E0016264 26300038 */ addiu $s0, $s1, 0x38 +/* 32F098 E0016268 3C01E001 */ lui $at, %hi(D_E0016730) +/* 32F09C E001626C D4346730 */ ldc1 $f20, %lo(D_E0016730)($at) +/* 32F0A0 E0016270 4480B000 */ mtc1 $zero, $f22 +.LE0016274: +/* 32F0A4 E0016274 8E220000 */ lw $v0, ($s1) +/* 32F0A8 E0016278 50400052 */ beql $v0, $zero, .LE00163C4 +/* 32F0AC E001627C 26520001 */ addiu $s2, $s2, 1 +/* 32F0B0 E0016280 9602FFCE */ lhu $v0, -0x32($s0) +/* 32F0B4 E0016284 2442FFFF */ addiu $v0, $v0, -1 +/* 32F0B8 E0016288 A602FFCE */ sh $v0, -0x32($s0) +/* 32F0BC E001628C 00021400 */ sll $v0, $v0, 0x10 +/* 32F0C0 E0016290 1C400003 */ bgtz $v0, .LE00162A0 +/* 32F0C4 E0016294 00000000 */ nop +/* 32F0C8 E0016298 080058F0 */ j .LE00163C0 +/* 32F0CC E001629C AE200000 */ sw $zero, ($s1) +.LE00162A0: +/* 32F0D0 E00162A0 C600FFF8 */ lwc1 $f0, -8($s0) +/* 32F0D4 E00162A4 3C014140 */ lui $at, 0x4140 +/* 32F0D8 E00162A8 44816000 */ mtc1 $at, $f12 +/* 32F0DC E00162AC 0C08013C */ jal func_E02004F0 +/* 32F0E0 E00162B0 460C0300 */ add.s $f12, $f0, $f12 +/* 32F0E4 E00162B4 46000306 */ mov.s $f12, $f0 +/* 32F0E8 E00162B8 0C080140 */ jal func_E0200500 +/* 32F0EC E00162BC E60CFFF8 */ swc1 $f12, -8($s0) +/* 32F0F0 E00162C0 46000021 */ cvt.d.s $f0, $f0 +/* 32F0F4 E00162C4 46340002 */ mul.d $f0, $f0, $f20 +/* 32F0F8 E00162C8 00000000 */ nop +/* 32F0FC E00162CC C602FFF0 */ lwc1 $f2, -0x10($s0) +/* 32F100 E00162D0 460010A1 */ cvt.d.s $f2, $f2 +/* 32F104 E00162D4 46201080 */ add.d $f2, $f2, $f0 +/* 32F108 E00162D8 C60CFFF8 */ lwc1 $f12, -8($s0) +/* 32F10C E00162DC 462010A0 */ cvt.s.d $f2, $f2 +/* 32F110 E00162E0 0C080144 */ jal func_E0200510 +/* 32F114 E00162E4 E602FFE4 */ swc1 $f2, -0x1c($s0) +/* 32F118 E00162E8 46000021 */ cvt.d.s $f0, $f0 +/* 32F11C E00162EC 46340002 */ mul.d $f0, $f0, $f20 +/* 32F120 E00162F0 00000000 */ nop +/* 32F124 E00162F4 C602FFF4 */ lwc1 $f2, -0xc($s0) +/* 32F128 E00162F8 460010A1 */ cvt.d.s $f2, $f2 +/* 32F12C E00162FC 46201080 */ add.d $f2, $f2, $f0 +/* 32F130 E0016300 24130001 */ addiu $s3, $zero, 1 +/* 32F134 E0016304 9602FFCC */ lhu $v0, -0x34($s0) +/* 32F138 E0016308 462010A0 */ cvt.s.d $f2, $f2 +/* 32F13C E001630C 1440000B */ bnez $v0, .LE001633C +/* 32F140 E0016310 E602FFE8 */ swc1 $f2, -0x18($s0) +/* 32F144 E0016314 24030005 */ addiu $v1, $zero, 5 +/* 32F148 E0016318 8602FFCE */ lh $v0, -0x32($s0) +/* 32F14C E001631C 14430007 */ bne $v0, $v1, .LE001633C +/* 32F150 E0016320 9604FFCE */ lhu $a0, -0x32($s0) +/* 32F154 E0016324 3C028011 */ lui $v0, %hi(gPlayerActionState) +/* 32F158 E0016328 8042F07C */ lb $v0, %lo(gPlayerActionState)($v0) +/* 32F15C E001632C 14400003 */ bnez $v0, .LE001633C +/* 32F160 E0016330 00931021 */ addu $v0, $a0, $s3 +/* 32F164 E0016334 080058FA */ j .LE00163E8 +/* 32F168 E0016338 A602FFCE */ sh $v0, -0x32($s0) +.LE001633C: +/* 32F16C E001633C C604FFF4 */ lwc1 $f4, -0xc($s0) +/* 32F170 E0016340 3C01E001 */ lui $at, %hi(D_E0016738) +/* 32F174 E0016344 D4206738 */ ldc1 $f0, %lo(D_E0016738)($at) +/* 32F178 E0016348 46002121 */ cvt.d.s $f4, $f4 +/* 32F17C E001634C 46202102 */ mul.d $f4, $f4, $f0 +/* 32F180 E0016350 00000000 */ nop +/* 32F184 E0016354 9202FFD0 */ lbu $v0, -0x30($s0) +/* 32F188 E0016358 C6080004 */ lwc1 $f8, 4($s0) +/* 32F18C E001635C C6020008 */ lwc1 $f2, 8($s0) +/* 32F190 E0016360 C6060000 */ lwc1 $f6, ($s0) +/* 32F194 E0016364 2442FFF1 */ addiu $v0, $v0, -0xf +/* 32F198 E0016368 46024200 */ add.s $f8, $f8, $f2 +/* 32F19C E001636C C600FFF0 */ lwc1 $f0, -0x10($s0) +/* 32F1A0 E0016370 3C01E001 */ lui $at, %hi(D_E0016740) +/* 32F1A4 E0016374 D4226740 */ ldc1 $f2, %lo(D_E0016740)($at) +/* 32F1A8 E0016378 46000021 */ cvt.d.s $f0, $f0 +/* 32F1AC E001637C 46220000 */ add.d $f0, $f0, $f2 +/* 32F1B0 E0016380 A202FFD0 */ sb $v0, -0x30($s0) +/* 32F1B4 E0016384 C602FFD8 */ lwc1 $f2, -0x28($s0) +/* 32F1B8 E0016388 46083180 */ add.s $f6, $f6, $f8 +/* 32F1BC E001638C E6080004 */ swc1 $f8, 4($s0) +/* 32F1C0 E0016390 46200020 */ cvt.s.d $f0, $f0 +/* 32F1C4 E0016394 E600FFF0 */ swc1 $f0, -0x10($s0) +/* 32F1C8 E0016398 46061080 */ add.s $f2, $f2, $f6 +/* 32F1CC E001639C E6060000 */ swc1 $f6, ($s0) +/* 32F1D0 E00163A0 46003006 */ mov.s $f0, $f6 +/* 32F1D4 E00163A4 4616003C */ c.lt.s $f0, $f22 +/* 32F1D8 E00163A8 E602FFD8 */ swc1 $f2, -0x28($s0) +/* 32F1DC E00163AC 46202120 */ cvt.s.d $f4, $f4 +/* 32F1E0 E00163B0 45000003 */ bc1f .LE00163C0 +/* 32F1E4 E00163B4 E604FFF4 */ swc1 $f4, -0xc($s0) +/* 32F1E8 E00163B8 E6160004 */ swc1 $f22, 4($s0) +/* 32F1EC E00163BC E6160000 */ swc1 $f22, ($s0) +.LE00163C0: +/* 32F1F0 E00163C0 26520001 */ addiu $s2, $s2, 1 +.LE00163C4: +/* 32F1F4 E00163C4 26100050 */ addiu $s0, $s0, 0x50 +/* 32F1F8 E00163C8 8E820008 */ lw $v0, 8($s4) +/* 32F1FC E00163CC 0242102A */ slt $v0, $s2, $v0 +/* 32F200 E00163D0 1440FFA8 */ bnez $v0, .LE0016274 +/* 32F204 E00163D4 26310050 */ addiu $s1, $s1, 0x50 +.LE00163D8: +/* 32F208 E00163D8 16600003 */ bnez $s3, .LE00163E8 +/* 32F20C E00163DC 00000000 */ nop +/* 32F210 E00163E0 0C080128 */ jal func_E02004A0 +/* 32F214 E00163E4 0280202D */ daddu $a0, $s4, $zero +.LE00163E8: +/* 32F218 E00163E8 8FBF0024 */ lw $ra, 0x24($sp) +/* 32F21C E00163EC 8FB40020 */ lw $s4, 0x20($sp) +/* 32F220 E00163F0 8FB3001C */ lw $s3, 0x1c($sp) +/* 32F224 E00163F4 8FB20018 */ lw $s2, 0x18($sp) +/* 32F228 E00163F8 8FB10014 */ lw $s1, 0x14($sp) +/* 32F22C E00163FC 8FB00010 */ lw $s0, 0x10($sp) +/* 32F230 E0016400 D7B60030 */ ldc1 $f22, 0x30($sp) +/* 32F234 E0016404 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 32F238 E0016408 03E00008 */ jr $ra +/* 32F23C E001640C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_32EE30/func_E0016410.s b/asm/nonmatchings/code_32EE30/func_E0016410.s new file mode 100644 index 0000000000..a3c84e7595 --- /dev/null +++ b/asm/nonmatchings/code_32EE30/func_E0016410.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0016410 +/* 32F240 E0016410 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 32F244 E0016414 3C02E001 */ lui $v0, %hi(D_E0016454) +/* 32F248 E0016418 24426454 */ addiu $v0, $v0, %lo(D_E0016454) +/* 32F24C E001641C AFA2001C */ sw $v0, 0x1c($sp) +/* 32F250 E0016420 24020028 */ addiu $v0, $zero, 0x28 +/* 32F254 E0016424 AFA40018 */ sw $a0, 0x18($sp) +/* 32F258 E0016428 27A40010 */ addiu $a0, $sp, 0x10 +/* 32F25C E001642C AFBF0020 */ sw $ra, 0x20($sp) +/* 32F260 E0016430 AFA00014 */ sw $zero, 0x14($sp) +/* 32F264 E0016434 0C080120 */ jal func_E0200480 +/* 32F268 E0016438 AFA20010 */ sw $v0, 0x10($sp) +/* 32F26C E001643C 8C430000 */ lw $v1, ($v0) +/* 32F270 E0016440 34630002 */ ori $v1, $v1, 2 +/* 32F274 E0016444 AC430000 */ sw $v1, ($v0) +/* 32F278 E0016448 8FBF0020 */ lw $ra, 0x20($sp) +/* 32F27C E001644C 03E00008 */ jr $ra +/* 32F280 E0016450 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_32EE30/func_E0016454.s b/asm/nonmatchings/code_32EE30/func_E0016454.s new file mode 100644 index 0000000000..c4cb43ce12 --- /dev/null +++ b/asm/nonmatchings/code_32EE30/func_E0016454.s @@ -0,0 +1,186 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0016454 +/* 32F284 E0016454 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 32F288 E0016458 AFB600B8 */ sw $s6, 0xb8($sp) +/* 32F28C E001645C 0080B02D */ daddu $s6, $a0, $zero +/* 32F290 E0016460 3C05DB06 */ lui $a1, 0xdb06 +/* 32F294 E0016464 34A50024 */ ori $a1, $a1, 0x24 +/* 32F298 E0016468 AFB300AC */ sw $s3, 0xac($sp) +/* 32F29C E001646C 0000982D */ daddu $s3, $zero, $zero +/* 32F2A0 E0016470 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 32F2A4 E0016474 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 32F2A8 E0016478 3C02E700 */ lui $v0, 0xe700 +/* 32F2AC E001647C AFBF00C4 */ sw $ra, 0xc4($sp) +/* 32F2B0 E0016480 AFBE00C0 */ sw $fp, 0xc0($sp) +/* 32F2B4 E0016484 AFB700BC */ sw $s7, 0xbc($sp) +/* 32F2B8 E0016488 AFB500B4 */ sw $s5, 0xb4($sp) +/* 32F2BC E001648C AFB400B0 */ sw $s4, 0xb0($sp) +/* 32F2C0 E0016490 AFB200A8 */ sw $s2, 0xa8($sp) +/* 32F2C4 E0016494 AFB100A4 */ sw $s1, 0xa4($sp) +/* 32F2C8 E0016498 AFB000A0 */ sw $s0, 0xa0($sp) +/* 32F2CC E001649C F7B600D0 */ sdc1 $f22, 0xd0($sp) +/* 32F2D0 E00164A0 F7B400C8 */ sdc1 $f20, 0xc8($sp) +/* 32F2D4 E00164A4 8CC30000 */ lw $v1, ($a2) +/* 32F2D8 E00164A8 8ED2000C */ lw $s2, 0xc($s6) +/* 32F2DC E00164AC 0060202D */ daddu $a0, $v1, $zero +/* 32F2E0 E00164B0 24630008 */ addiu $v1, $v1, 8 +/* 32F2E4 E00164B4 ACC30000 */ sw $v1, ($a2) +/* 32F2E8 E00164B8 AC820000 */ sw $v0, ($a0) +/* 32F2EC E00164BC AC800004 */ sw $zero, 4($a0) +/* 32F2F0 E00164C0 AC650000 */ sw $a1, ($v1) +/* 32F2F4 E00164C4 8EC40010 */ lw $a0, 0x10($s6) +/* 32F2F8 E00164C8 24620008 */ addiu $v0, $v1, 8 +/* 32F2FC E00164CC ACC20000 */ sw $v0, ($a2) +/* 32F300 E00164D0 8C84001C */ lw $a0, 0x1c($a0) +/* 32F304 E00164D4 3C02DE00 */ lui $v0, 0xde00 +/* 32F308 E00164D8 AC620008 */ sw $v0, 8($v1) +/* 32F30C E00164DC 3C020900 */ lui $v0, 0x900 +/* 32F310 E00164E0 244200E0 */ addiu $v0, $v0, 0xe0 +/* 32F314 E00164E4 AC62000C */ sw $v0, 0xc($v1) +/* 32F318 E00164E8 3C028000 */ lui $v0, 0x8000 +/* 32F31C E00164EC 00822021 */ addu $a0, $a0, $v0 +/* 32F320 E00164F0 AC640004 */ sw $a0, 4($v1) +/* 32F324 E00164F4 8EC20008 */ lw $v0, 8($s6) +/* 32F328 E00164F8 24630010 */ addiu $v1, $v1, 0x10 +/* 32F32C E00164FC 18400070 */ blez $v0, .LE00166C0 +/* 32F330 E0016500 ACC30000 */ sw $v1, ($a2) +/* 32F334 E0016504 27B10060 */ addiu $s1, $sp, 0x60 +/* 32F338 E0016508 3C1E800A */ lui $fp, %hi(D_8009A674) +/* 32F33C E001650C 27DEA674 */ addiu $fp, $fp, %lo(D_8009A674) +/* 32F340 E0016510 3C178007 */ lui $s7, %hi(D_800741F0) +/* 32F344 E0016514 26F741F0 */ addiu $s7, $s7, %lo(D_800741F0) +/* 32F348 E0016518 3C150001 */ lui $s5, 1 +/* 32F34C E001651C 36B51630 */ ori $s5, $s5, 0x1630 +/* 32F350 E0016520 00C0A02D */ daddu $s4, $a2, $zero +/* 32F354 E0016524 26500008 */ addiu $s0, $s2, 8 +/* 32F358 E0016528 4480A000 */ mtc1 $zero, $f20 +/* 32F35C E001652C 3C013F80 */ lui $at, 0x3f80 +/* 32F360 E0016530 4481B000 */ mtc1 $at, $f22 +.LE0016534: +/* 32F364 E0016534 8E420000 */ lw $v0, ($s2) +/* 32F368 E0016538 5040005C */ beql $v0, $zero, .LE00166AC +/* 32F36C E001653C 26730001 */ addiu $s3, $s3, 1 +/* 32F370 E0016540 3C09800B */ lui $t1, %hi(gCameras) +/* 32F374 E0016544 25291D80 */ addiu $t1, $t1, %lo(gCameras) +/* 32F378 E0016548 4405A000 */ mfc1 $a1, $f20 +/* 32F37C E001654C 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 32F380 E0016550 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 32F384 E0016554 4407A000 */ mfc1 $a3, $f20 +/* 32F388 E0016558 00031080 */ sll $v0, $v1, 2 +/* 32F38C E001655C 00431021 */ addu $v0, $v0, $v1 +/* 32F390 E0016560 00021080 */ sll $v0, $v0, 2 +/* 32F394 E0016564 00431023 */ subu $v0, $v0, $v1 +/* 32F398 E0016568 000218C0 */ sll $v1, $v0, 3 +/* 32F39C E001656C 00431021 */ addu $v0, $v0, $v1 +/* 32F3A0 E0016570 000210C0 */ sll $v0, $v0, 3 +/* 32F3A4 E0016574 00491021 */ addu $v0, $v0, $t1 +/* 32F3A8 E0016578 C442006C */ lwc1 $f2, 0x6c($v0) +/* 32F3AC E001657C E7B60010 */ swc1 $f22, 0x10($sp) +/* 32F3B0 E0016580 C6000004 */ lwc1 $f0, 4($s0) +/* 32F3B4 E0016584 46001087 */ neg.s $f2, $f2 +/* 32F3B8 E0016588 E7A00014 */ swc1 $f0, 0x14($sp) +/* 32F3BC E001658C C6000008 */ lwc1 $f0, 8($s0) +/* 32F3C0 E0016590 44061000 */ mfc1 $a2, $f2 +/* 32F3C4 E0016594 E7A00018 */ swc1 $f0, 0x18($sp) +/* 32F3C8 E0016598 C600000C */ lwc1 $f0, 0xc($s0) +/* 32F3CC E001659C 27A40020 */ addiu $a0, $sp, 0x20 +/* 32F3D0 E00165A0 0C080180 */ jal func_E0200600 +/* 32F3D4 E00165A4 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 32F3D8 E00165A8 8E050014 */ lw $a1, 0x14($s0) +/* 32F3DC E00165AC 8E060018 */ lw $a2, 0x18($s0) +/* 32F3E0 E00165B0 8E07001C */ lw $a3, 0x1c($s0) +/* 32F3E4 E00165B4 0C080110 */ jal func_E0200440 +/* 32F3E8 E00165B8 0220202D */ daddu $a0, $s1, $zero +/* 32F3EC E00165BC 0220202D */ daddu $a0, $s1, $zero +/* 32F3F0 E00165C0 27A50020 */ addiu $a1, $sp, 0x20 +/* 32F3F4 E00165C4 0C080114 */ jal func_E0200450 +/* 32F3F8 E00165C8 00A0302D */ daddu $a2, $a1, $zero +/* 32F3FC E00165CC E7B60010 */ swc1 $f22, 0x10($sp) +/* 32F400 E00165D0 8E050010 */ lw $a1, 0x10($s0) +/* 32F404 E00165D4 4406A000 */ mfc1 $a2, $f20 +/* 32F408 E00165D8 4407A000 */ mfc1 $a3, $f20 +/* 32F40C E00165DC 0C080104 */ jal func_E0200410 +/* 32F410 E00165E0 0220202D */ daddu $a0, $s1, $zero +/* 32F414 E00165E4 0220202D */ daddu $a0, $s1, $zero +/* 32F418 E00165E8 27A50020 */ addiu $a1, $sp, 0x20 +/* 32F41C E00165EC 0C080114 */ jal func_E0200450 +/* 32F420 E00165F0 00A0302D */ daddu $a2, $a1, $zero +/* 32F424 E00165F4 27A40020 */ addiu $a0, $sp, 0x20 +/* 32F428 E00165F8 96E50000 */ lhu $a1, ($s7) +/* 32F42C E00165FC 8FC20000 */ lw $v0, ($fp) +/* 32F430 E0016600 00052980 */ sll $a1, $a1, 6 +/* 32F434 E0016604 00B52821 */ addu $a1, $a1, $s5 +/* 32F438 E0016608 0C080118 */ jal func_E0200460 +/* 32F43C E001660C 00452821 */ addu $a1, $v0, $a1 +/* 32F440 E0016610 3C077060 */ lui $a3, 0x7060 +/* 32F444 E0016614 34E71800 */ ori $a3, $a3, 0x1800 +/* 32F448 E0016618 3C08D838 */ lui $t0, 0xd838 +/* 32F44C E001661C 35080002 */ ori $t0, $t0, 2 +/* 32F450 E0016620 8E840000 */ lw $a0, ($s4) +/* 32F454 E0016624 3C02FA00 */ lui $v0, 0xfa00 +/* 32F458 E0016628 0080302D */ daddu $a2, $a0, $zero +/* 32F45C E001662C 24840008 */ addiu $a0, $a0, 8 +/* 32F460 E0016630 AE840000 */ sw $a0, ($s4) +/* 32F464 E0016634 ACC20000 */ sw $v0, ($a2) +/* 32F468 E0016638 92050000 */ lbu $a1, ($s0) +/* 32F46C E001663C 96E30000 */ lhu $v1, ($s7) +/* 32F470 E0016640 24820008 */ addiu $v0, $a0, 8 +/* 32F474 E0016644 AE820000 */ sw $v0, ($s4) +/* 32F478 E0016648 24620001 */ addiu $v0, $v1, 1 +/* 32F47C E001664C A6E20000 */ sh $v0, ($s7) +/* 32F480 E0016650 24820010 */ addiu $v0, $a0, 0x10 +/* 32F484 E0016654 AE820000 */ sw $v0, ($s4) +/* 32F488 E0016658 24820018 */ addiu $v0, $a0, 0x18 +/* 32F48C E001665C 00A72825 */ or $a1, $a1, $a3 +/* 32F490 E0016660 AE820000 */ sw $v0, ($s4) +/* 32F494 E0016664 3C02DA38 */ lui $v0, 0xda38 +/* 32F498 E0016668 3063FFFF */ andi $v1, $v1, 0xffff +/* 32F49C E001666C 00031980 */ sll $v1, $v1, 6 +/* 32F4A0 E0016670 ACC50004 */ sw $a1, 4($a2) +/* 32F4A4 E0016674 AC820000 */ sw $v0, ($a0) +/* 32F4A8 E0016678 8FC20000 */ lw $v0, ($fp) +/* 32F4AC E001667C 00751821 */ addu $v1, $v1, $s5 +/* 32F4B0 E0016680 AC880010 */ sw $t0, 0x10($a0) +/* 32F4B4 E0016684 00431021 */ addu $v0, $v0, $v1 +/* 32F4B8 E0016688 AC820004 */ sw $v0, 4($a0) +/* 32F4BC E001668C 3C02DE00 */ lui $v0, 0xde00 +/* 32F4C0 E0016690 AC820008 */ sw $v0, 8($a0) +/* 32F4C4 E0016694 3C020900 */ lui $v0, 0x900 +/* 32F4C8 E0016698 244201B8 */ addiu $v0, $v0, 0x1b8 +/* 32F4CC E001669C AC82000C */ sw $v0, 0xc($a0) +/* 32F4D0 E00166A0 24020040 */ addiu $v0, $zero, 0x40 +/* 32F4D4 E00166A4 AC820014 */ sw $v0, 0x14($a0) +/* 32F4D8 E00166A8 26730001 */ addiu $s3, $s3, 1 +.LE00166AC: +/* 32F4DC E00166AC 26100050 */ addiu $s0, $s0, 0x50 +/* 32F4E0 E00166B0 8EC20008 */ lw $v0, 8($s6) +/* 32F4E4 E00166B4 0262102A */ slt $v0, $s3, $v0 +/* 32F4E8 E00166B8 1440FF9E */ bnez $v0, .LE0016534 +/* 32F4EC E00166BC 26520050 */ addiu $s2, $s2, 0x50 +.LE00166C0: +/* 32F4F0 E00166C0 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 32F4F4 E00166C4 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 32F4F8 E00166C8 8C620000 */ lw $v0, ($v1) +/* 32F4FC E00166CC 0040202D */ daddu $a0, $v0, $zero +/* 32F500 E00166D0 24420008 */ addiu $v0, $v0, 8 +/* 32F504 E00166D4 AC620000 */ sw $v0, ($v1) +/* 32F508 E00166D8 3C02E700 */ lui $v0, 0xe700 +/* 32F50C E00166DC AC820000 */ sw $v0, ($a0) +/* 32F510 E00166E0 AC800004 */ sw $zero, 4($a0) +/* 32F514 E00166E4 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 32F518 E00166E8 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 32F51C E00166EC 8FB700BC */ lw $s7, 0xbc($sp) +/* 32F520 E00166F0 8FB600B8 */ lw $s6, 0xb8($sp) +/* 32F524 E00166F4 8FB500B4 */ lw $s5, 0xb4($sp) +/* 32F528 E00166F8 8FB400B0 */ lw $s4, 0xb0($sp) +/* 32F52C E00166FC 8FB300AC */ lw $s3, 0xac($sp) +/* 32F530 E0016700 8FB200A8 */ lw $s2, 0xa8($sp) +/* 32F534 E0016704 8FB100A4 */ lw $s1, 0xa4($sp) +/* 32F538 E0016708 8FB000A0 */ lw $s0, 0xa0($sp) +/* 32F53C E001670C D7B600D0 */ ldc1 $f22, 0xd0($sp) +/* 32F540 E0016710 D7B400C8 */ ldc1 $f20, 0xc8($sp) +/* 32F544 E0016714 03E00008 */ jr $ra +/* 32F548 E0016718 27BD00D8 */ addiu $sp, $sp, 0xd8 +/* 32F54C E001671C 00000000 */ nop diff --git a/asm/nonmatchings/code_32FE30/func_E001A000.s b/asm/nonmatchings/code_32FE30/func_E001A000.s new file mode 100644 index 0000000000..5ec95affec --- /dev/null +++ b/asm/nonmatchings/code_32FE30/func_E001A000.s @@ -0,0 +1,145 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001A000 +/* 32FE30 E001A000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 32FE34 E001A004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 32FE38 E001A008 4485A000 */ mtc1 $a1, $f20 +/* 32FE3C E001A00C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 32FE40 E001A010 4486C000 */ mtc1 $a2, $f24 +/* 32FE44 E001A014 AFB1002C */ sw $s1, 0x2c($sp) +/* 32FE48 E001A018 0080882D */ daddu $s1, $a0, $zero +/* 32FE4C E001A01C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 32FE50 E001A020 4487B000 */ mtc1 $a3, $f22 +/* 32FE54 E001A024 27A40010 */ addiu $a0, $sp, 0x10 +/* 32FE58 E001A028 AFB20030 */ sw $s2, 0x30($sp) +/* 32FE5C E001A02C 8FB20060 */ lw $s2, 0x60($sp) +/* 32FE60 E001A030 3C02E002 */ lui $v0, %hi(D_E001A21C) +/* 32FE64 E001A034 2442A21C */ addiu $v0, $v0, %lo(D_E001A21C) +/* 32FE68 E001A038 AFA20018 */ sw $v0, 0x18($sp) +/* 32FE6C E001A03C 3C02E002 */ lui $v0, %hi(D_E001A224) +/* 32FE70 E001A040 2442A224 */ addiu $v0, $v0, %lo(D_E001A224) +/* 32FE74 E001A044 AFA2001C */ sw $v0, 0x1c($sp) +/* 32FE78 E001A048 3C02E002 */ lui $v0, %hi(D_E001A3FC) +/* 32FE7C E001A04C 2442A3FC */ addiu $v0, $v0, %lo(D_E001A3FC) +/* 32FE80 E001A050 AFA20020 */ sw $v0, 0x20($sp) +/* 32FE84 E001A054 2402000D */ addiu $v0, $zero, 0xd +/* 32FE88 E001A058 AFBF0034 */ sw $ra, 0x34($sp) +/* 32FE8C E001A05C AFB00028 */ sw $s0, 0x28($sp) +/* 32FE90 E001A060 AFA00010 */ sw $zero, 0x10($sp) +/* 32FE94 E001A064 AFA00024 */ sw $zero, 0x24($sp) +/* 32FE98 E001A068 0C080124 */ jal func_E0200490 +/* 32FE9C E001A06C AFA20014 */ sw $v0, 0x14($sp) +/* 32FEA0 E001A070 24040048 */ addiu $a0, $zero, 0x48 +/* 32FEA4 E001A074 24030001 */ addiu $v1, $zero, 1 +/* 32FEA8 E001A078 0040802D */ daddu $s0, $v0, $zero +/* 32FEAC E001A07C 0C08012C */ jal func_E02004B0 +/* 32FEB0 E001A080 AE030008 */ sw $v1, 8($s0) +/* 32FEB4 E001A084 AE02000C */ sw $v0, 0xc($s0) +/* 32FEB8 E001A088 0040802D */ daddu $s0, $v0, $zero +/* 32FEBC E001A08C 56000003 */ bnel $s0, $zero, .LE001A09C +/* 32FEC0 E001A090 AE110000 */ sw $s1, ($s0) +.LE001A094: +/* 32FEC4 E001A094 08006825 */ j .LE001A094 +/* 32FEC8 E001A098 00000000 */ nop +.LE001A09C: +/* 32FECC E001A09C 3C014120 */ lui $at, 0x4120 +/* 32FED0 E001A0A0 44813000 */ mtc1 $at, $f6 +/* 32FED4 E001A0A4 E6140004 */ swc1 $f20, 4($s0) +/* 32FED8 E001A0A8 E616000C */ swc1 $f22, 0xc($s0) +/* 32FEDC E001A0AC AE000010 */ sw $zero, 0x10($s0) +/* 32FEE0 E001A0B0 4606C000 */ add.s $f0, $f24, $f6 +/* 32FEE4 E001A0B4 AE000014 */ sw $zero, 0x14($s0) +/* 32FEE8 E001A0B8 AE000018 */ sw $zero, 0x18($s0) +/* 32FEEC E001A0BC 16200018 */ bnez $s1, .LE001A120 +/* 32FEF0 E001A0C0 E6000008 */ swc1 $f0, 8($s0) +/* 32FEF4 E001A0C4 3C013DF5 */ lui $at, 0x3df5 +/* 32FEF8 E001A0C8 3421C28F */ ori $at, $at, 0xc28f +/* 32FEFC E001A0CC 44810000 */ mtc1 $at, $f0 +/* 32FF00 E001A0D0 3C01BC79 */ lui $at, 0xbc79 +/* 32FF04 E001A0D4 3421096C */ ori $at, $at, 0x96c +/* 32FF08 E001A0D8 44811000 */ mtc1 $at, $f2 +/* 32FF0C E001A0DC 3C014040 */ lui $at, 0x4040 +/* 32FF10 E001A0E0 44812000 */ mtc1 $at, $f4 +/* 32FF14 E001A0E4 3C02E002 */ lui $v0, %hi(D_E001A610) +/* 32FF18 E001A0E8 8C42A610 */ lw $v0, %lo(D_E001A610)($v0) +/* 32FF1C E001A0EC AE000018 */ sw $zero, 0x18($s0) +/* 32FF20 E001A0F0 AE000024 */ sw $zero, 0x24($s0) +/* 32FF24 E001A0F4 AE000028 */ sw $zero, 0x28($s0) +/* 32FF28 E001A0F8 E600001C */ swc1 $f0, 0x1c($s0) +/* 32FF2C E001A0FC E6020020 */ swc1 $f2, 0x20($s0) +/* 32FF30 E001A100 10400004 */ beqz $v0, .LE001A114 +/* 32FF34 E001A104 E604002C */ swc1 $f4, 0x2c($s0) +/* 32FF38 E001A108 3C01C120 */ lui $at, 0xc120 +/* 32FF3C E001A10C 44813000 */ mtc1 $at, $f6 +/* 32FF40 E001A110 00000000 */ nop +.LE001A114: +/* 32FF44 E001A114 E6060030 */ swc1 $f6, 0x30($s0) +/* 32FF48 E001A118 08006876 */ j .LE001A1D8 +/* 32FF4C E001A11C AE120034 */ sw $s2, 0x34($s0) +.LE001A120: +/* 32FF50 E001A120 3C013DF5 */ lui $at, 0x3df5 +/* 32FF54 E001A124 3421C28F */ ori $at, $at, 0xc28f +/* 32FF58 E001A128 44810000 */ mtc1 $at, $f0 +/* 32FF5C E001A12C 3C01BC79 */ lui $at, 0xbc79 +/* 32FF60 E001A130 3421096C */ ori $at, $at, 0x96c +/* 32FF64 E001A134 44811000 */ mtc1 $at, $f2 +/* 32FF68 E001A138 24040001 */ addiu $a0, $zero, 1 +/* 32FF6C E001A13C E600001C */ swc1 $f0, 0x1c($s0) +/* 32FF70 E001A140 0C080138 */ jal func_E02004E0 +/* 32FF74 E001A144 E6020020 */ swc1 $f2, 0x20($s0) +/* 32FF78 E001A148 24040168 */ addiu $a0, $zero, 0x168 +/* 32FF7C E001A14C 00021900 */ sll $v1, $v0, 4 +/* 32FF80 E001A150 00621823 */ subu $v1, $v1, $v0 +/* 32FF84 E001A154 00031840 */ sll $v1, $v1, 1 +/* 32FF88 E001A158 2463FFF1 */ addiu $v1, $v1, -0xf +/* 32FF8C E001A15C 44830000 */ mtc1 $v1, $f0 +/* 32FF90 E001A160 00000000 */ nop +/* 32FF94 E001A164 46800020 */ cvt.s.w $f0, $f0 +/* 32FF98 E001A168 0C080138 */ jal func_E02004E0 +/* 32FF9C E001A16C E6000024 */ swc1 $f0, 0x24($s0) +/* 32FFA0 E001A170 24040001 */ addiu $a0, $zero, 1 +/* 32FFA4 E001A174 44820000 */ mtc1 $v0, $f0 +/* 32FFA8 E001A178 00000000 */ nop +/* 32FFAC E001A17C 46800020 */ cvt.s.w $f0, $f0 +/* 32FFB0 E001A180 E6000028 */ swc1 $f0, 0x28($s0) +/* 32FFB4 E001A184 0C080138 */ jal func_E02004E0 +/* 32FFB8 E001A188 AE00002C */ sw $zero, 0x2c($s0) +/* 32FFBC E001A18C 2404000A */ addiu $a0, $zero, 0xa +/* 32FFC0 E001A190 000210C0 */ sll $v0, $v0, 3 +/* 32FFC4 E001A194 2442FFFC */ addiu $v0, $v0, -4 +/* 32FFC8 E001A198 44820000 */ mtc1 $v0, $f0 +/* 32FFCC E001A19C 00000000 */ nop +/* 32FFD0 E001A1A0 46800020 */ cvt.s.w $f0, $f0 +/* 32FFD4 E001A1A4 E6000030 */ swc1 $f0, 0x30($s0) +/* 32FFD8 E001A1A8 AE120034 */ sw $s2, 0x34($s0) +/* 32FFDC E001A1AC 0C080138 */ jal func_E02004E0 +/* 32FFE0 E001A1B0 AE000038 */ sw $zero, 0x38($s0) +/* 32FFE4 E001A1B4 24040014 */ addiu $a0, $zero, 0x14 +/* 32FFE8 E001A1B8 0C080138 */ jal func_E02004E0 +/* 32FFEC E001A1BC AE020044 */ sw $v0, 0x44($s0) +/* 32FFF0 E001A1C0 24040001 */ addiu $a0, $zero, 1 +/* 32FFF4 E001A1C4 0C080138 */ jal func_E02004E0 +/* 32FFF8 E001A1C8 AE020040 */ sw $v0, 0x40($s0) +/* 32FFFC E001A1CC 00021040 */ sll $v0, $v0, 1 +/* 330000 E001A1D0 2442FFFF */ addiu $v0, $v0, -1 +/* 330004 E001A1D4 AE02003C */ sw $v0, 0x3c($s0) +.LE001A1D8: +/* 330008 E001A1D8 3C03E002 */ lui $v1, %hi(D_E001A610) +/* 33000C E001A1DC 2463A610 */ addiu $v1, $v1, %lo(D_E001A610) +/* 330010 E001A1E0 8C620000 */ lw $v0, ($v1) +/* 330014 E001A1E4 24420001 */ addiu $v0, $v0, 1 +/* 330018 E001A1E8 AC620000 */ sw $v0, ($v1) +/* 33001C E001A1EC 28420002 */ slti $v0, $v0, 2 +/* 330020 E001A1F0 50400001 */ beql $v0, $zero, .LE001A1F8 +/* 330024 E001A1F4 AC600000 */ sw $zero, ($v1) +.LE001A1F8: +/* 330028 E001A1F8 8FBF0034 */ lw $ra, 0x34($sp) +/* 33002C E001A1FC 8FB20030 */ lw $s2, 0x30($sp) +/* 330030 E001A200 8FB1002C */ lw $s1, 0x2c($sp) +/* 330034 E001A204 8FB00028 */ lw $s0, 0x28($sp) +/* 330038 E001A208 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 33003C E001A20C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 330040 E001A210 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 330044 E001A214 03E00008 */ jr $ra +/* 330048 E001A218 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_32FE30/func_E001A21C.s b/asm/nonmatchings/code_32FE30/func_E001A21C.s new file mode 100644 index 0000000000..bf55cc3ab3 --- /dev/null +++ b/asm/nonmatchings/code_32FE30/func_E001A21C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001A21C +/* 33004C E001A21C 03E00008 */ jr $ra +/* 330050 E001A220 00000000 */ nop diff --git a/asm/nonmatchings/code_32FE30/func_E001A224.s b/asm/nonmatchings/code_32FE30/func_E001A224.s new file mode 100644 index 0000000000..e668c36d94 --- /dev/null +++ b/asm/nonmatchings/code_32FE30/func_E001A224.s @@ -0,0 +1,130 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001A224 +/* 330054 E001A224 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 330058 E001A228 AFBF0010 */ sw $ra, 0x10($sp) +/* 33005C E001A22C 8C85000C */ lw $a1, 0xc($a0) +/* 330060 E001A230 8CA20034 */ lw $v0, 0x34($a1) +/* 330064 E001A234 8CA60000 */ lw $a2, ($a1) +/* 330068 E001A238 28420096 */ slti $v0, $v0, 0x96 +/* 33006C E001A23C 10400039 */ beqz $v0, .LE001A324 +/* 330070 E001A240 00000000 */ nop +/* 330074 E001A244 C4A00010 */ lwc1 $f0, 0x10($a1) +/* 330078 E001A248 3C01E002 */ lui $at, %hi(D_E001A620) +/* 33007C E001A24C D422A620 */ ldc1 $f2, %lo(D_E001A620)($at) +/* 330080 E001A250 C4A6000C */ lwc1 $f6, 0xc($a1) +/* 330084 E001A254 46000021 */ cvt.d.s $f0, $f0 +/* 330088 E001A258 46220001 */ sub.d $f0, $f0, $f2 +/* 33008C E001A25C C4A20018 */ lwc1 $f2, 0x18($a1) +/* 330090 E001A260 C4A40024 */ lwc1 $f4, 0x24($a1) +/* 330094 E001A264 46023180 */ add.s $f6, $f6, $f2 +/* 330098 E001A268 C4A2002C */ lwc1 $f2, 0x2c($a1) +/* 33009C E001A26C 46022100 */ add.s $f4, $f4, $f2 +/* 3300A0 E001A270 C4A20004 */ lwc1 $f2, 4($a1) +/* 3300A4 E001A274 46200020 */ cvt.s.d $f0, $f0 +/* 3300A8 E001A278 E4A00010 */ swc1 $f0, 0x10($a1) +/* 3300AC E001A27C 46001080 */ add.s $f2, $f2, $f0 +/* 3300B0 E001A280 E4A6000C */ swc1 $f6, 0xc($a1) +/* 3300B4 E001A284 E4A40024 */ swc1 $f4, 0x24($a1) +/* 3300B8 E001A288 14C00018 */ bnez $a2, .LE001A2EC +/* 3300BC E001A28C E4A20004 */ swc1 $f2, 4($a1) +/* 3300C0 E001A290 3C014120 */ lui $at, 0x4120 +/* 3300C4 E001A294 44811000 */ mtc1 $at, $f2 +/* 3300C8 E001A298 00000000 */ nop +/* 3300CC E001A29C 4602203C */ c.lt.s $f4, $f2 +/* 3300D0 E001A2A0 00000000 */ nop +/* 3300D4 E001A2A4 45000005 */ bc1f .LE001A2BC +/* 3300D8 E001A2A8 00000000 */ nop +/* 3300DC E001A2AC C4A0002C */ lwc1 $f0, 0x2c($a1) +/* 3300E0 E001A2B0 E4A20024 */ swc1 $f2, 0x24($a1) +/* 3300E4 E001A2B4 46000007 */ neg.s $f0, $f0 +/* 3300E8 E001A2B8 E4A0002C */ swc1 $f0, 0x2c($a1) +.LE001A2BC: +/* 3300EC E001A2BC C4A00024 */ lwc1 $f0, 0x24($a1) +/* 3300F0 E001A2C0 3C014234 */ lui $at, 0x4234 +/* 3300F4 E001A2C4 44811000 */ mtc1 $at, $f2 +/* 3300F8 E001A2C8 00000000 */ nop +/* 3300FC E001A2CC 4600103C */ c.lt.s $f2, $f0 +/* 330100 E001A2D0 00000000 */ nop +/* 330104 E001A2D4 45000005 */ bc1f .LE001A2EC +/* 330108 E001A2D8 00000000 */ nop +/* 33010C E001A2DC C4A0002C */ lwc1 $f0, 0x2c($a1) +/* 330110 E001A2E0 E4A20024 */ swc1 $f2, 0x24($a1) +/* 330114 E001A2E4 46000007 */ neg.s $f0, $f0 +/* 330118 E001A2E8 E4A0002C */ swc1 $f0, 0x2c($a1) +.LE001A2EC: +/* 33011C E001A2EC C4A00028 */ lwc1 $f0, 0x28($a1) +/* 330120 E001A2F0 C4A20030 */ lwc1 $f2, 0x30($a1) +/* 330124 E001A2F4 46020000 */ add.s $f0, $f0, $f2 +/* 330128 E001A2F8 14C00006 */ bnez $a2, .LE001A314 +/* 33012C E001A2FC E4A00028 */ swc1 $f0, 0x28($a1) +/* 330130 E001A300 3C013FB3 */ lui $at, 0x3fb3 +/* 330134 E001A304 34213333 */ ori $at, $at, 0x3333 +/* 330138 E001A308 44810000 */ mtc1 $at, $f0 +/* 33013C E001A30C 080068DC */ j .LE001A370 +/* 330140 E001A310 E4A00014 */ swc1 $f0, 0x14($a1) +.LE001A314: +/* 330144 E001A314 3C013F80 */ lui $at, 0x3f80 +/* 330148 E001A318 44810000 */ mtc1 $at, $f0 +/* 33014C E001A31C 080068DC */ j .LE001A370 +/* 330150 E001A320 E4A00014 */ swc1 $f0, 0x14($a1) +.LE001A324: +/* 330154 E001A324 C4A00020 */ lwc1 $f0, 0x20($a1) +/* 330158 E001A328 3C01E002 */ lui $at, %hi(D_E001A628) +/* 33015C E001A32C D422A628 */ ldc1 $f2, %lo(D_E001A628)($at) +/* 330160 E001A330 46000021 */ cvt.d.s $f0, $f0 +/* 330164 E001A334 46220000 */ add.d $f0, $f0, $f2 +/* 330168 E001A338 C4A4001C */ lwc1 $f4, 0x1c($a1) +/* 33016C E001A33C 46200020 */ cvt.s.d $f0, $f0 +/* 330170 E001A340 46002100 */ add.s $f4, $f4, $f0 +/* 330174 E001A344 C4A20014 */ lwc1 $f2, 0x14($a1) +/* 330178 E001A348 3C013F80 */ lui $at, 0x3f80 +/* 33017C E001A34C 44813000 */ mtc1 $at, $f6 +/* 330180 E001A350 46041080 */ add.s $f2, $f2, $f4 +/* 330184 E001A354 E4A00020 */ swc1 $f0, 0x20($a1) +/* 330188 E001A358 E4A4001C */ swc1 $f4, 0x1c($a1) +/* 33018C E001A35C 4602303C */ c.lt.s $f6, $f2 +/* 330190 E001A360 00000000 */ nop +/* 330194 E001A364 45000002 */ bc1f .LE001A370 +/* 330198 E001A368 E4A20014 */ swc1 $f2, 0x14($a1) +/* 33019C E001A36C E4A60014 */ swc1 $f6, 0x14($a1) +.LE001A370: +/* 3301A0 E001A370 24020001 */ addiu $v0, $zero, 1 +/* 3301A4 E001A374 14C20010 */ bne $a2, $v0, .LE001A3B8 +/* 3301A8 E001A378 00000000 */ nop +/* 3301AC E001A37C 8CA20040 */ lw $v0, 0x40($a1) +/* 3301B0 E001A380 8CA3003C */ lw $v1, 0x3c($a1) +/* 3301B4 E001A384 00431821 */ addu $v1, $v0, $v1 +/* 3301B8 E001A388 28620014 */ slti $v0, $v1, 0x14 +/* 3301BC E001A38C 14400006 */ bnez $v0, .LE001A3A8 +/* 3301C0 E001A390 ACA30040 */ sw $v1, 0x40($a1) +/* 3301C4 E001A394 24020014 */ addiu $v0, $zero, 0x14 +/* 3301C8 E001A398 ACA20040 */ sw $v0, 0x40($a1) +/* 3301CC E001A39C 2402FFFF */ addiu $v0, $zero, -1 +/* 3301D0 E001A3A0 080068EE */ j .LE001A3B8 +/* 3301D4 E001A3A4 ACA2003C */ sw $v0, 0x3c($a1) +.LE001A3A8: +/* 3301D8 E001A3A8 1C600003 */ bgtz $v1, .LE001A3B8 +/* 3301DC E001A3AC 00000000 */ nop +/* 3301E0 E001A3B0 ACA00040 */ sw $zero, 0x40($a1) +/* 3301E4 E001A3B4 ACA6003C */ sw $a2, 0x3c($a1) +.LE001A3B8: +/* 3301E8 E001A3B8 C4A00008 */ lwc1 $f0, 8($a1) +/* 3301EC E001A3BC 8CA20034 */ lw $v0, 0x34($a1) +/* 3301F0 E001A3C0 C4A20014 */ lwc1 $f2, 0x14($a1) +/* 3301F4 E001A3C4 2442FFFF */ addiu $v0, $v0, -1 +/* 3301F8 E001A3C8 46020000 */ add.s $f0, $f0, $f2 +/* 3301FC E001A3CC ACA20034 */ sw $v0, 0x34($a1) +/* 330200 E001A3D0 8CA20038 */ lw $v0, 0x38($a1) +/* 330204 E001A3D4 8CA30034 */ lw $v1, 0x34($a1) +/* 330208 E001A3D8 24420001 */ addiu $v0, $v0, 1 +/* 33020C E001A3DC ACA20038 */ sw $v0, 0x38($a1) +/* 330210 E001A3E0 04610003 */ bgez $v1, .LE001A3F0 +/* 330214 E001A3E4 E4A00008 */ swc1 $f0, 8($a1) +/* 330218 E001A3E8 0C080128 */ jal func_E02004A0 +/* 33021C E001A3EC 00000000 */ nop +.LE001A3F0: +/* 330220 E001A3F0 8FBF0010 */ lw $ra, 0x10($sp) +/* 330224 E001A3F4 03E00008 */ jr $ra +/* 330228 E001A3F8 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_32FE30/func_E001A3FC.s b/asm/nonmatchings/code_32FE30/func_E001A3FC.s new file mode 100644 index 0000000000..b86426b54a --- /dev/null +++ b/asm/nonmatchings/code_32FE30/func_E001A3FC.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001A3FC +/* 33022C E001A3FC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 330230 E001A400 3C02E002 */ lui $v0, %hi(D_E001A440) +/* 330234 E001A404 2442A440 */ addiu $v0, $v0, %lo(D_E001A440) +/* 330238 E001A408 AFA2001C */ sw $v0, 0x1c($sp) +/* 33023C E001A40C 2402002D */ addiu $v0, $zero, 0x2d +/* 330240 E001A410 AFA40018 */ sw $a0, 0x18($sp) +/* 330244 E001A414 27A40010 */ addiu $a0, $sp, 0x10 +/* 330248 E001A418 AFBF0020 */ sw $ra, 0x20($sp) +/* 33024C E001A41C AFA00014 */ sw $zero, 0x14($sp) +/* 330250 E001A420 0C080120 */ jal func_E0200480 +/* 330254 E001A424 AFA20010 */ sw $v0, 0x10($sp) +/* 330258 E001A428 8C430000 */ lw $v1, ($v0) +/* 33025C E001A42C 34630002 */ ori $v1, $v1, 2 +/* 330260 E001A430 AC430000 */ sw $v1, ($v0) +/* 330264 E001A434 8FBF0020 */ lw $ra, 0x20($sp) +/* 330268 E001A438 03E00008 */ jr $ra +/* 33026C E001A43C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_32FE30/func_E001A440.s b/asm/nonmatchings/code_32FE30/func_E001A440.s new file mode 100644 index 0000000000..be26fbfaa1 --- /dev/null +++ b/asm/nonmatchings/code_32FE30/func_E001A440.s @@ -0,0 +1,122 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001A440 +/* 330270 E001A440 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 330274 E001A444 0080382D */ daddu $a3, $a0, $zero +/* 330278 E001A448 3C08DB06 */ lui $t0, 0xdb06 +/* 33027C E001A44C 35080024 */ ori $t0, $t0, 0x24 +/* 330280 E001A450 AFB400B8 */ sw $s4, 0xb8($sp) +/* 330284 E001A454 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 330288 E001A458 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 33028C E001A45C 27A40020 */ addiu $a0, $sp, 0x20 +/* 330290 E001A460 3C02E700 */ lui $v0, 0xe700 +/* 330294 E001A464 AFBF00BC */ sw $ra, 0xbc($sp) +/* 330298 E001A468 AFB300B4 */ sw $s3, 0xb4($sp) +/* 33029C E001A46C AFB200B0 */ sw $s2, 0xb0($sp) +/* 3302A0 E001A470 AFB100AC */ sw $s1, 0xac($sp) +/* 3302A4 E001A474 AFB000A8 */ sw $s0, 0xa8($sp) +/* 3302A8 E001A478 8E830000 */ lw $v1, ($s4) +/* 3302AC E001A47C 8CE6000C */ lw $a2, 0xc($a3) +/* 3302B0 E001A480 0060282D */ daddu $a1, $v1, $zero +/* 3302B4 E001A484 24630008 */ addiu $v1, $v1, 8 +/* 3302B8 E001A488 ACA20000 */ sw $v0, ($a1) +/* 3302BC E001A48C ACA00004 */ sw $zero, 4($a1) +/* 3302C0 E001A490 AC680000 */ sw $t0, ($v1) +/* 3302C4 E001A494 8CE20010 */ lw $v0, 0x10($a3) +/* 3302C8 E001A498 3C013F80 */ lui $at, 0x3f80 +/* 3302CC E001A49C 44810000 */ mtc1 $at, $f0 +/* 3302D0 E001A4A0 8C42001C */ lw $v0, 0x1c($v0) +/* 3302D4 E001A4A4 3C058000 */ lui $a1, 0x8000 +/* 3302D8 E001A4A8 00451021 */ addu $v0, $v0, $a1 +/* 3302DC E001A4AC AC620004 */ sw $v0, 4($v1) +/* 3302E0 E001A4B0 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3302E4 E001A4B4 C4C00004 */ lwc1 $f0, 4($a2) +/* 3302E8 E001A4B8 3C120001 */ lui $s2, 1 +/* 3302EC E001A4BC E7A00014 */ swc1 $f0, 0x14($sp) +/* 3302F0 E001A4C0 C4C00008 */ lwc1 $f0, 8($a2) +/* 3302F4 E001A4C4 36521630 */ ori $s2, $s2, 0x1630 +/* 3302F8 E001A4C8 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3302FC E001A4CC C4C0000C */ lwc1 $f0, 0xc($a2) +/* 330300 E001A4D0 0000382D */ daddu $a3, $zero, $zero +/* 330304 E001A4D4 AE830000 */ sw $v1, ($s4) +/* 330308 E001A4D8 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 33030C E001A4DC 8CC50024 */ lw $a1, 0x24($a2) +/* 330310 E001A4E0 8CC60028 */ lw $a2, 0x28($a2) +/* 330314 E001A4E4 24630008 */ addiu $v1, $v1, 8 +/* 330318 E001A4E8 0C080180 */ jal func_E0200600 +/* 33031C E001A4EC AE830000 */ sw $v1, ($s4) +/* 330320 E001A4F0 27A40020 */ addiu $a0, $sp, 0x20 +/* 330324 E001A4F4 3C108007 */ lui $s0, %hi(D_800741F0) +/* 330328 E001A4F8 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 33032C E001A4FC 3C11800A */ lui $s1, %hi(D_8009A674) +/* 330330 E001A500 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 330334 E001A504 96050000 */ lhu $a1, ($s0) +/* 330338 E001A508 8E220000 */ lw $v0, ($s1) +/* 33033C E001A50C 00052980 */ sll $a1, $a1, 6 +/* 330340 E001A510 00B22821 */ addu $a1, $a1, $s2 +/* 330344 E001A514 0C080118 */ jal func_E0200460 +/* 330348 E001A518 00452821 */ addu $a1, $v0, $a1 +/* 33034C E001A51C 8E820000 */ lw $v0, ($s4) +/* 330350 E001A520 241300FF */ addiu $s3, $zero, 0xff +/* 330354 E001A524 A3B300A1 */ sb $s3, 0xa1($sp) +/* 330358 E001A528 0040282D */ daddu $a1, $v0, $zero +/* 33035C E001A52C 24420008 */ addiu $v0, $v0, 8 +/* 330360 E001A530 AE820000 */ sw $v0, ($s4) +/* 330364 E001A534 96020000 */ lhu $v0, ($s0) +/* 330368 E001A538 3C03DA38 */ lui $v1, 0xda38 +/* 33036C E001A53C ACA30000 */ sw $v1, ($a1) +/* 330370 E001A540 24430001 */ addiu $v1, $v0, 1 +/* 330374 E001A544 3042FFFF */ andi $v0, $v0, 0xffff +/* 330378 E001A548 00021180 */ sll $v0, $v0, 6 +/* 33037C E001A54C 00521021 */ addu $v0, $v0, $s2 +/* 330380 E001A550 A6030000 */ sh $v1, ($s0) +/* 330384 E001A554 8E230000 */ lw $v1, ($s1) +/* 330388 E001A558 3C048015 */ lui $a0, %hi(D_801512F0) +/* 33038C E001A55C 8C8412F0 */ lw $a0, %lo(D_801512F0)($a0) +/* 330390 E001A560 00621821 */ addu $v1, $v1, $v0 +/* 330394 E001A564 ACA30004 */ sw $v1, 4($a1) +/* 330398 E001A568 90830000 */ lbu $v1, ($a0) +/* 33039C E001A56C 24020001 */ addiu $v0, $zero, 1 +/* 3303A0 E001A570 14620007 */ bne $v1, $v0, .LE001A590 +/* 3303A4 E001A574 27A400A0 */ addiu $a0, $sp, 0xa0 +/* 3303A8 E001A578 0080282D */ daddu $a1, $a0, $zero +/* 3303AC E001A57C 0080302D */ daddu $a2, $a0, $zero +/* 3303B0 E001A580 0C08019C */ jal func_E0200670 +/* 3303B4 E001A584 27A700A1 */ addiu $a3, $sp, 0xa1 +/* 3303B8 E001A588 93A200A1 */ lbu $v0, 0xa1($sp) +/* 3303BC E001A58C 02629823 */ subu $s3, $s3, $v0 +.LE001A590: +/* 3303C0 E001A590 12600016 */ beqz $s3, .LE001A5EC +/* 3303C4 E001A594 3C05D838 */ lui $a1, 0xd838 +/* 3303C8 E001A598 34A50002 */ ori $a1, $a1, 2 +/* 3303CC E001A59C 8E830000 */ lw $v1, ($s4) +/* 3303D0 E001A5A0 3C02FA00 */ lui $v0, 0xfa00 +/* 3303D4 E001A5A4 0060202D */ daddu $a0, $v1, $zero +/* 3303D8 E001A5A8 24630008 */ addiu $v1, $v1, 8 +/* 3303DC E001A5AC AE830000 */ sw $v1, ($s4) +/* 3303E0 E001A5B0 AC820000 */ sw $v0, ($a0) +/* 3303E4 E001A5B4 326200FF */ andi $v0, $s3, 0xff +/* 3303E8 E001A5B8 AC820004 */ sw $v0, 4($a0) +/* 3303EC E001A5BC 24620008 */ addiu $v0, $v1, 8 +/* 3303F0 E001A5C0 AE820000 */ sw $v0, ($s4) +/* 3303F4 E001A5C4 3C02DE00 */ lui $v0, 0xde00 +/* 3303F8 E001A5C8 AC620000 */ sw $v0, ($v1) +/* 3303FC E001A5CC 3C020900 */ lui $v0, 0x900 +/* 330400 E001A5D0 244202F0 */ addiu $v0, $v0, 0x2f0 +/* 330404 E001A5D4 AC620004 */ sw $v0, 4($v1) +/* 330408 E001A5D8 24620010 */ addiu $v0, $v1, 0x10 +/* 33040C E001A5DC AE820000 */ sw $v0, ($s4) +/* 330410 E001A5E0 24020040 */ addiu $v0, $zero, 0x40 +/* 330414 E001A5E4 AC650008 */ sw $a1, 8($v1) +/* 330418 E001A5E8 AC62000C */ sw $v0, 0xc($v1) +.LE001A5EC: +/* 33041C E001A5EC 8FBF00BC */ lw $ra, 0xbc($sp) +/* 330420 E001A5F0 8FB400B8 */ lw $s4, 0xb8($sp) +/* 330424 E001A5F4 8FB300B4 */ lw $s3, 0xb4($sp) +/* 330428 E001A5F8 8FB200B0 */ lw $s2, 0xb0($sp) +/* 33042C E001A5FC 8FB100AC */ lw $s1, 0xac($sp) +/* 330430 E001A600 8FB000A8 */ lw $s0, 0xa8($sp) +/* 330434 E001A604 03E00008 */ jr $ra +/* 330438 E001A608 27BD00C0 */ addiu $sp, $sp, 0xc0 +/* 33043C E001A60C 00000000 */ nop diff --git a/asm/nonmatchings/code_330910/func_E001C000.s b/asm/nonmatchings/code_330910/func_E001C000.s new file mode 100644 index 0000000000..45b41ffc60 --- /dev/null +++ b/asm/nonmatchings/code_330910/func_E001C000.s @@ -0,0 +1,80 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001C000 +/* 330910 E001C000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 330914 E001C004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 330918 E001C008 46006506 */ mov.s $f20, $f12 +/* 33091C E001C00C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 330920 E001C010 46007586 */ mov.s $f22, $f14 +/* 330924 E001C014 AFB1002C */ sw $s1, 0x2c($sp) +/* 330928 E001C018 00E0882D */ daddu $s1, $a3, $zero +/* 33092C E001C01C 27A40010 */ addiu $a0, $sp, 0x10 +/* 330930 E001C020 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 330934 E001C024 4486C000 */ mtc1 $a2, $f24 +/* 330938 E001C028 3C02E002 */ lui $v0, %hi(D_E001C120) +/* 33093C E001C02C 2442C120 */ addiu $v0, $v0, %lo(D_E001C120) +/* 330940 E001C030 AFA20018 */ sw $v0, 0x18($sp) +/* 330944 E001C034 3C02E002 */ lui $v0, %hi(D_E001C128) +/* 330948 E001C038 2442C128 */ addiu $v0, $v0, %lo(D_E001C128) +/* 33094C E001C03C AFA2001C */ sw $v0, 0x1c($sp) +/* 330950 E001C040 3C02E002 */ lui $v0, %hi(D_E001C200) +/* 330954 E001C044 2442C200 */ addiu $v0, $v0, %lo(D_E001C200) +/* 330958 E001C048 AFA20020 */ sw $v0, 0x20($sp) +/* 33095C E001C04C 2402000E */ addiu $v0, $zero, 0xe +/* 330960 E001C050 AFBF0030 */ sw $ra, 0x30($sp) +/* 330964 E001C054 AFB00028 */ sw $s0, 0x28($sp) +/* 330968 E001C058 AFA00010 */ sw $zero, 0x10($sp) +/* 33096C E001C05C AFA00024 */ sw $zero, 0x24($sp) +/* 330970 E001C060 0C080124 */ jal func_E0200490 +/* 330974 E001C064 AFA20014 */ sw $v0, 0x14($sp) +/* 330978 E001C068 2404002C */ addiu $a0, $zero, 0x2c +/* 33097C E001C06C 24030001 */ addiu $v1, $zero, 1 +/* 330980 E001C070 0040802D */ daddu $s0, $v0, $zero +/* 330984 E001C074 0C08012C */ jal func_E02004B0 +/* 330988 E001C078 AE030008 */ sw $v1, 8($s0) +/* 33098C E001C07C 14400003 */ bnez $v0, .LE001C08C +/* 330990 E001C080 AE02000C */ sw $v0, 0xc($s0) +.LE001C084: +/* 330994 E001C084 08007021 */ j .LE001C084 +/* 330998 E001C088 00000000 */ nop +.LE001C08C: +/* 33099C E001C08C 3C04E002 */ lui $a0, %hi(D_E001C5E0) +/* 3309A0 E001C090 2484C5E0 */ addiu $a0, $a0, %lo(D_E001C5E0) +/* 3309A4 E001C094 3C014120 */ lui $at, 0x4120 +/* 3309A8 E001C098 44812000 */ mtc1 $at, $f4 +/* 3309AC E001C09C 3C01C040 */ lui $at, 0xc040 +/* 3309B0 E001C0A0 44810000 */ mtc1 $at, $f0 +/* 3309B4 E001C0A4 3C014040 */ lui $at, 0x4040 +/* 3309B8 E001C0A8 44811000 */ mtc1 $at, $f2 +/* 3309BC E001C0AC 8C830000 */ lw $v1, ($a0) +/* 3309C0 E001C0B0 E4540000 */ swc1 $f20, ($v0) +/* 3309C4 E001C0B4 E4560004 */ swc1 $f22, 4($v0) +/* 3309C8 E001C0B8 E4580008 */ swc1 $f24, 8($v0) +/* 3309CC E001C0BC AC40000C */ sw $zero, 0xc($v0) +/* 3309D0 E001C0C0 AC400014 */ sw $zero, 0x14($v0) +/* 3309D4 E001C0C4 AC400018 */ sw $zero, 0x18($v0) +/* 3309D8 E001C0C8 AC40001C */ sw $zero, 0x1c($v0) +/* 3309DC E001C0CC E4400010 */ swc1 $f0, 0x10($v0) +/* 3309E0 E001C0D0 10600004 */ beqz $v1, .LE001C0E4 +/* 3309E4 E001C0D4 E4420020 */ swc1 $f2, 0x20($v0) +/* 3309E8 E001C0D8 3C01C120 */ lui $at, 0xc120 +/* 3309EC E001C0DC 44812000 */ mtc1 $at, $f4 +/* 3309F0 E001C0E0 00000000 */ nop +.LE001C0E4: +/* 3309F4 E001C0E4 E4440024 */ swc1 $f4, 0x24($v0) +/* 3309F8 E001C0E8 AC510028 */ sw $s1, 0x28($v0) +/* 3309FC E001C0EC 24620001 */ addiu $v0, $v1, 1 +/* 330A00 E001C0F0 AC820000 */ sw $v0, ($a0) +/* 330A04 E001C0F4 28420002 */ slti $v0, $v0, 2 +/* 330A08 E001C0F8 50400001 */ beql $v0, $zero, .LE001C100 +/* 330A0C E001C0FC AC800000 */ sw $zero, ($a0) +.LE001C100: +/* 330A10 E001C100 8FBF0030 */ lw $ra, 0x30($sp) +/* 330A14 E001C104 8FB1002C */ lw $s1, 0x2c($sp) +/* 330A18 E001C108 8FB00028 */ lw $s0, 0x28($sp) +/* 330A1C E001C10C D7B80048 */ ldc1 $f24, 0x48($sp) +/* 330A20 E001C110 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 330A24 E001C114 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 330A28 E001C118 03E00008 */ jr $ra +/* 330A2C E001C11C 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_330910/func_E001C120.s b/asm/nonmatchings/code_330910/func_E001C120.s new file mode 100644 index 0000000000..bbc98d7380 --- /dev/null +++ b/asm/nonmatchings/code_330910/func_E001C120.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001C120 +/* 330A30 E001C120 03E00008 */ jr $ra +/* 330A34 E001C124 00000000 */ nop diff --git a/asm/nonmatchings/code_330910/func_E001C128.s b/asm/nonmatchings/code_330910/func_E001C128.s new file mode 100644 index 0000000000..f999e11da0 --- /dev/null +++ b/asm/nonmatchings/code_330910/func_E001C128.s @@ -0,0 +1,62 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001C128 +/* 330A38 E001C128 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 330A3C E001C12C AFBF0010 */ sw $ra, 0x10($sp) +/* 330A40 E001C130 8C83000C */ lw $v1, 0xc($a0) +/* 330A44 E001C134 8C620028 */ lw $v0, 0x28($v1) +/* 330A48 E001C138 2442FFFF */ addiu $v0, $v0, -1 +/* 330A4C E001C13C 04410005 */ bgez $v0, .LE001C154 +/* 330A50 E001C140 AC620028 */ sw $v0, 0x28($v1) +/* 330A54 E001C144 0C080128 */ jal func_E02004A0 +/* 330A58 E001C148 00000000 */ nop +/* 330A5C E001C14C 0800707D */ j .LE001C1F4 +/* 330A60 E001C150 00000000 */ nop +.LE001C154: +/* 330A64 E001C154 C4680000 */ lwc1 $f8, ($v1) +/* 330A68 E001C158 C460000C */ lwc1 $f0, 0xc($v1) +/* 330A6C E001C15C C4660004 */ lwc1 $f6, 4($v1) +/* 330A70 E001C160 46004200 */ add.s $f8, $f8, $f0 +/* 330A74 E001C164 C4600010 */ lwc1 $f0, 0x10($v1) +/* 330A78 E001C168 C4640018 */ lwc1 $f4, 0x18($v1) +/* 330A7C E001C16C 46003180 */ add.s $f6, $f6, $f0 +/* 330A80 E001C170 C4600020 */ lwc1 $f0, 0x20($v1) +/* 330A84 E001C174 C4620014 */ lwc1 $f2, 0x14($v1) +/* 330A88 E001C178 46002100 */ add.s $f4, $f4, $f0 +/* 330A8C E001C17C C4600008 */ lwc1 $f0, 8($v1) +/* 330A90 E001C180 3C014120 */ lui $at, 0x4120 +/* 330A94 E001C184 44815000 */ mtc1 $at, $f10 +/* 330A98 E001C188 46020000 */ add.s $f0, $f0, $f2 +/* 330A9C E001C18C E4680000 */ swc1 $f8, ($v1) +/* 330AA0 E001C190 E4660004 */ swc1 $f6, 4($v1) +/* 330AA4 E001C194 460A203C */ c.lt.s $f4, $f10 +/* 330AA8 E001C198 E4640018 */ swc1 $f4, 0x18($v1) +/* 330AAC E001C19C 45000005 */ bc1f .LE001C1B4 +/* 330AB0 E001C1A0 E4600008 */ swc1 $f0, 8($v1) +/* 330AB4 E001C1A4 C4600020 */ lwc1 $f0, 0x20($v1) +/* 330AB8 E001C1A8 E46A0018 */ swc1 $f10, 0x18($v1) +/* 330ABC E001C1AC 46000007 */ neg.s $f0, $f0 +/* 330AC0 E001C1B0 E4600020 */ swc1 $f0, 0x20($v1) +.LE001C1B4: +/* 330AC4 E001C1B4 C4600018 */ lwc1 $f0, 0x18($v1) +/* 330AC8 E001C1B8 3C014234 */ lui $at, 0x4234 +/* 330ACC E001C1BC 44811000 */ mtc1 $at, $f2 +/* 330AD0 E001C1C0 00000000 */ nop +/* 330AD4 E001C1C4 4600103C */ c.lt.s $f2, $f0 +/* 330AD8 E001C1C8 00000000 */ nop +/* 330ADC E001C1CC 45000005 */ bc1f .LE001C1E4 +/* 330AE0 E001C1D0 00000000 */ nop +/* 330AE4 E001C1D4 C4600020 */ lwc1 $f0, 0x20($v1) +/* 330AE8 E001C1D8 E4620018 */ swc1 $f2, 0x18($v1) +/* 330AEC E001C1DC 46000007 */ neg.s $f0, $f0 +/* 330AF0 E001C1E0 E4600020 */ swc1 $f0, 0x20($v1) +.LE001C1E4: +/* 330AF4 E001C1E4 C460001C */ lwc1 $f0, 0x1c($v1) +/* 330AF8 E001C1E8 C4620024 */ lwc1 $f2, 0x24($v1) +/* 330AFC E001C1EC 46020000 */ add.s $f0, $f0, $f2 +/* 330B00 E001C1F0 E460001C */ swc1 $f0, 0x1c($v1) +.LE001C1F4: +/* 330B04 E001C1F4 8FBF0010 */ lw $ra, 0x10($sp) +/* 330B08 E001C1F8 03E00008 */ jr $ra +/* 330B0C E001C1FC 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_330910/func_E001C200.s b/asm/nonmatchings/code_330910/func_E001C200.s new file mode 100644 index 0000000000..307d44c1f6 --- /dev/null +++ b/asm/nonmatchings/code_330910/func_E001C200.s @@ -0,0 +1,77 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001C200 +/* 330B10 E001C200 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 330B14 E001C204 0080282D */ daddu $a1, $a0, $zero +/* 330B18 E001C208 3C038011 */ lui $v1, %hi(gPlayerStatus) +/* 330B1C E001C20C 2463EFC8 */ addiu $v1, $v1, %lo(gPlayerStatus) +/* 330B20 E001C210 AFBF0020 */ sw $ra, 0x20($sp) +/* 330B24 E001C214 8CA2000C */ lw $v0, 0xc($a1) +/* 330B28 E001C218 C4640028 */ lwc1 $f4, 0x28($v1) +/* 330B2C E001C21C C4420000 */ lwc1 $f2, ($v0) +/* 330B30 E001C220 46041001 */ sub.s $f0, $f2, $f4 +/* 330B34 E001C224 3C014348 */ lui $at, 0x4348 +/* 330B38 E001C228 44813000 */ mtc1 $at, $f6 +/* 330B3C E001C22C 00000000 */ nop +/* 330B40 E001C230 4600303C */ c.lt.s $f6, $f0 +/* 330B44 E001C234 00000000 */ nop +/* 330B48 E001C238 45000005 */ bc1f .LE001C250 +/* 330B4C E001C23C 27A40010 */ addiu $a0, $sp, 0x10 +/* 330B50 E001C240 3C0143C8 */ lui $at, 0x43c8 +/* 330B54 E001C244 44810000 */ mtc1 $at, $f0 +/* 330B58 E001C248 0800709D */ j .LE001C274 +/* 330B5C E001C24C 46001001 */ sub.s $f0, $f2, $f0 +.LE001C250: +/* 330B60 E001C250 46022001 */ sub.s $f0, $f4, $f2 +/* 330B64 E001C254 4600303C */ c.lt.s $f6, $f0 +/* 330B68 E001C258 00000000 */ nop +/* 330B6C E001C25C 45000006 */ bc1f .LE001C278 +/* 330B70 E001C260 00000000 */ nop +/* 330B74 E001C264 3C0143C8 */ lui $at, 0x43c8 +/* 330B78 E001C268 44810000 */ mtc1 $at, $f0 +/* 330B7C E001C26C 00000000 */ nop +/* 330B80 E001C270 46001000 */ add.s $f0, $f2, $f0 +.LE001C274: +/* 330B84 E001C274 E4400000 */ swc1 $f0, ($v0) +.LE001C278: +/* 330B88 E001C278 C4420008 */ lwc1 $f2, 8($v0) +/* 330B8C E001C27C C4640030 */ lwc1 $f4, 0x30($v1) +/* 330B90 E001C280 46041001 */ sub.s $f0, $f2, $f4 +/* 330B94 E001C284 3C014348 */ lui $at, 0x4348 +/* 330B98 E001C288 44813000 */ mtc1 $at, $f6 +/* 330B9C E001C28C 00000000 */ nop +/* 330BA0 E001C290 4600303C */ c.lt.s $f6, $f0 +/* 330BA4 E001C294 00000000 */ nop +/* 330BA8 E001C298 45020005 */ bc1fl .LE001C2B0 +/* 330BAC E001C29C 46022001 */ sub.s $f0, $f4, $f2 +/* 330BB0 E001C2A0 3C0143C8 */ lui $at, 0x43c8 +/* 330BB4 E001C2A4 44810000 */ mtc1 $at, $f0 +/* 330BB8 E001C2A8 080070B4 */ j .LE001C2D0 +/* 330BBC E001C2AC 46001001 */ sub.s $f0, $f2, $f0 +.LE001C2B0: +/* 330BC0 E001C2B0 4600303C */ c.lt.s $f6, $f0 +/* 330BC4 E001C2B4 00000000 */ nop +/* 330BC8 E001C2B8 45000006 */ bc1f .LE001C2D4 +/* 330BCC E001C2BC 00000000 */ nop +/* 330BD0 E001C2C0 3C0143C8 */ lui $at, 0x43c8 +/* 330BD4 E001C2C4 44810000 */ mtc1 $at, $f0 +/* 330BD8 E001C2C8 00000000 */ nop +/* 330BDC E001C2CC 46001000 */ add.s $f0, $f2, $f0 +.LE001C2D0: +/* 330BE0 E001C2D0 E4400008 */ swc1 $f0, 8($v0) +.LE001C2D4: +/* 330BE4 E001C2D4 3C02E002 */ lui $v0, %hi(D_E001C30C) +/* 330BE8 E001C2D8 2442C30C */ addiu $v0, $v0, %lo(D_E001C30C) +/* 330BEC E001C2DC AC82000C */ sw $v0, 0xc($a0) +/* 330BF0 E001C2E0 2402002D */ addiu $v0, $zero, 0x2d +/* 330BF4 E001C2E4 AC850008 */ sw $a1, 8($a0) +/* 330BF8 E001C2E8 AC800004 */ sw $zero, 4($a0) +/* 330BFC E001C2EC 0C080120 */ jal func_E0200480 +/* 330C00 E001C2F0 AC820000 */ sw $v0, ($a0) +/* 330C04 E001C2F4 8C430000 */ lw $v1, ($v0) +/* 330C08 E001C2F8 34630002 */ ori $v1, $v1, 2 +/* 330C0C E001C2FC AC430000 */ sw $v1, ($v0) +/* 330C10 E001C300 8FBF0020 */ lw $ra, 0x20($sp) +/* 330C14 E001C304 03E00008 */ jr $ra +/* 330C18 E001C308 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_330910/func_E001C30C.s b/asm/nonmatchings/code_330910/func_E001C30C.s new file mode 100644 index 0000000000..130061636c --- /dev/null +++ b/asm/nonmatchings/code_330910/func_E001C30C.s @@ -0,0 +1,185 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E001C30C +/* 330C1C E001C30C 27BDFE70 */ addiu $sp, $sp, -0x190 +/* 330C20 E001C310 0080302D */ daddu $a2, $a0, $zero +/* 330C24 E001C314 3C07DB06 */ lui $a3, 0xdb06 +/* 330C28 E001C318 34E70024 */ ori $a3, $a3, 0x24 +/* 330C2C E001C31C 27A40018 */ addiu $a0, $sp, 0x18 +/* 330C30 E001C320 AFB70174 */ sw $s7, 0x174($sp) +/* 330C34 E001C324 3C170001 */ lui $s7, 1 +/* 330C38 E001C328 AFB1015C */ sw $s1, 0x15c($sp) +/* 330C3C E001C32C 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 330C40 E001C330 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 330C44 E001C334 AFBF017C */ sw $ra, 0x17c($sp) +/* 330C48 E001C338 AFBE0178 */ sw $fp, 0x178($sp) +/* 330C4C E001C33C AFB60170 */ sw $s6, 0x170($sp) +/* 330C50 E001C340 AFB5016C */ sw $s5, 0x16c($sp) +/* 330C54 E001C344 AFB40168 */ sw $s4, 0x168($sp) +/* 330C58 E001C348 AFB30164 */ sw $s3, 0x164($sp) +/* 330C5C E001C34C AFB20160 */ sw $s2, 0x160($sp) +/* 330C60 E001C350 AFB00158 */ sw $s0, 0x158($sp) +/* 330C64 E001C354 F7B60188 */ sdc1 $f22, 0x188($sp) +/* 330C68 E001C358 F7B40180 */ sdc1 $f20, 0x180($sp) +/* 330C6C E001C35C 8E230000 */ lw $v1, ($s1) +/* 330C70 E001C360 36F71630 */ ori $s7, $s7, 0x1630 +/* 330C74 E001C364 0060282D */ daddu $a1, $v1, $zero +/* 330C78 E001C368 24630008 */ addiu $v1, $v1, 8 +/* 330C7C E001C36C AE230000 */ sw $v1, ($s1) +/* 330C80 E001C370 8CD6000C */ lw $s6, 0xc($a2) +/* 330C84 E001C374 3C02E700 */ lui $v0, 0xe700 +/* 330C88 E001C378 ACA20000 */ sw $v0, ($a1) +/* 330C8C E001C37C ACA00004 */ sw $zero, 4($a1) +/* 330C90 E001C380 AC670000 */ sw $a3, ($v1) +/* 330C94 E001C384 8CC50010 */ lw $a1, 0x10($a2) +/* 330C98 E001C388 24620008 */ addiu $v0, $v1, 8 +/* 330C9C E001C38C AE220000 */ sw $v0, ($s1) +/* 330CA0 E001C390 3C020900 */ lui $v0, 0x900 +/* 330CA4 E001C394 24420900 */ addiu $v0, $v0, 0x900 +/* 330CA8 E001C398 8CA5001C */ lw $a1, 0x1c($a1) +/* 330CAC E001C39C 3C0ADE00 */ lui $t2, 0xde00 +/* 330CB0 E001C3A0 AC62000C */ sw $v0, 0xc($v1) +/* 330CB4 E001C3A4 3C028000 */ lui $v0, 0x8000 +/* 330CB8 E001C3A8 AC6A0008 */ sw $t2, 8($v1) +/* 330CBC E001C3AC 00A22821 */ addu $a1, $a1, $v0 +/* 330CC0 E001C3B0 AC650004 */ sw $a1, 4($v1) +/* 330CC4 E001C3B4 8EC50000 */ lw $a1, ($s6) +/* 330CC8 E001C3B8 8EC60004 */ lw $a2, 4($s6) +/* 330CCC E001C3BC 8EC70008 */ lw $a3, 8($s6) +/* 330CD0 E001C3C0 24630010 */ addiu $v1, $v1, 0x10 +/* 330CD4 E001C3C4 0C080108 */ jal func_E0200420 +/* 330CD8 E001C3C8 AE230000 */ sw $v1, ($s1) +/* 330CDC E001C3CC 27B000D8 */ addiu $s0, $sp, 0xd8 +/* 330CE0 E001C3D0 4480A000 */ mtc1 $zero, $f20 +/* 330CE4 E001C3D4 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 330CE8 E001C3D8 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 330CEC E001C3DC 3C013F80 */ lui $at, 0x3f80 +/* 330CF0 E001C3E0 4481B000 */ mtc1 $at, $f22 +/* 330CF4 E001C3E4 00031080 */ sll $v0, $v1, 2 +/* 330CF8 E001C3E8 00431021 */ addu $v0, $v0, $v1 +/* 330CFC E001C3EC 00021080 */ sll $v0, $v0, 2 +/* 330D00 E001C3F0 00431023 */ subu $v0, $v0, $v1 +/* 330D04 E001C3F4 000218C0 */ sll $v1, $v0, 3 +/* 330D08 E001C3F8 00431021 */ addu $v0, $v0, $v1 +/* 330D0C E001C3FC 000210C0 */ sll $v0, $v0, 3 +/* 330D10 E001C400 4406A000 */ mfc1 $a2, $f20 +/* 330D14 E001C404 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 330D18 E001C408 00220821 */ addu $at, $at, $v0 +/* 330D1C E001C40C C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 330D20 E001C410 4407B000 */ mfc1 $a3, $f22 +/* 330D24 E001C414 46000007 */ neg.s $f0, $f0 +/* 330D28 E001C418 44050000 */ mfc1 $a1, $f0 +/* 330D2C E001C41C 0200202D */ daddu $a0, $s0, $zero +/* 330D30 E001C420 0C080104 */ jal func_E0200410 +/* 330D34 E001C424 E7B40010 */ swc1 $f20, 0x10($sp) +/* 330D38 E001C428 0200202D */ daddu $a0, $s0, $zero +/* 330D3C E001C42C 27A50018 */ addiu $a1, $sp, 0x18 +/* 330D40 E001C430 27B40118 */ addiu $s4, $sp, 0x118 +/* 330D44 E001C434 0C080114 */ jal func_E0200450 +/* 330D48 E001C438 0280302D */ daddu $a2, $s4, $zero +/* 330D4C E001C43C 0280202D */ daddu $a0, $s4, $zero +/* 330D50 E001C440 3C128007 */ lui $s2, %hi(D_800741F0) +/* 330D54 E001C444 265241F0 */ addiu $s2, $s2, %lo(D_800741F0) +/* 330D58 E001C448 3C15800A */ lui $s5, %hi(D_8009A674) +/* 330D5C E001C44C 26B5A674 */ addiu $s5, $s5, %lo(D_8009A674) +/* 330D60 E001C450 96450000 */ lhu $a1, ($s2) +/* 330D64 E001C454 8EA20000 */ lw $v0, ($s5) +/* 330D68 E001C458 00052980 */ sll $a1, $a1, 6 +/* 330D6C E001C45C 00B72821 */ addu $a1, $a1, $s7 +/* 330D70 E001C460 0C080118 */ jal func_E0200460 +/* 330D74 E001C464 00452821 */ addu $a1, $v0, $a1 +/* 330D78 E001C468 3C1EDA38 */ lui $fp, 0xda38 +/* 330D7C E001C46C 27B30058 */ addiu $s3, $sp, 0x58 +/* 330D80 E001C470 8E280000 */ lw $t0, ($s1) +/* 330D84 E001C474 4406B000 */ mfc1 $a2, $f22 +/* 330D88 E001C478 4407A000 */ mfc1 $a3, $f20 +/* 330D8C E001C47C 96490000 */ lhu $t1, ($s2) +/* 330D90 E001C480 0100202D */ daddu $a0, $t0, $zero +/* 330D94 E001C484 25080008 */ addiu $t0, $t0, 8 +/* 330D98 E001C488 3122FFFF */ andi $v0, $t1, 0xffff +/* 330D9C E001C48C 00021180 */ sll $v0, $v0, 6 +/* 330DA0 E001C490 00571021 */ addu $v0, $v0, $s7 +/* 330DA4 E001C494 AC9E0000 */ sw $fp, ($a0) +/* 330DA8 E001C498 8EA30000 */ lw $v1, ($s5) +/* 330DAC E001C49C 25290001 */ addiu $t1, $t1, 1 +/* 330DB0 E001C4A0 00621821 */ addu $v1, $v1, $v0 +/* 330DB4 E001C4A4 3C02FA00 */ lui $v0, 0xfa00 +/* 330DB8 E001C4A8 AC830004 */ sw $v1, 4($a0) +/* 330DBC E001C4AC AD020000 */ sw $v0, ($t0) +/* 330DC0 E001C4B0 240200FF */ addiu $v0, $zero, 0xff +/* 330DC4 E001C4B4 AD020004 */ sw $v0, 4($t0) +/* 330DC8 E001C4B8 E7B40010 */ swc1 $f20, 0x10($sp) +/* 330DCC E001C4BC 8EC50018 */ lw $a1, 0x18($s6) +/* 330DD0 E001C4C0 0260202D */ daddu $a0, $s3, $zero +/* 330DD4 E001C4C4 AE280000 */ sw $t0, ($s1) +/* 330DD8 E001C4C8 25080008 */ addiu $t0, $t0, 8 +/* 330DDC E001C4CC A6490000 */ sh $t1, ($s2) +/* 330DE0 E001C4D0 0C080104 */ jal func_E0200410 +/* 330DE4 E001C4D4 AE280000 */ sw $t0, ($s1) +/* 330DE8 E001C4D8 27B00098 */ addiu $s0, $sp, 0x98 +/* 330DEC E001C4DC E7B40010 */ swc1 $f20, 0x10($sp) +/* 330DF0 E001C4E0 8EC5001C */ lw $a1, 0x1c($s6) +/* 330DF4 E001C4E4 4406A000 */ mfc1 $a2, $f20 +/* 330DF8 E001C4E8 4407B000 */ mfc1 $a3, $f22 +/* 330DFC E001C4EC 0C080104 */ jal func_E0200410 +/* 330E00 E001C4F0 0200202D */ daddu $a0, $s0, $zero +/* 330E04 E001C4F4 0260202D */ daddu $a0, $s3, $zero +/* 330E08 E001C4F8 0200282D */ daddu $a1, $s0, $zero +/* 330E0C E001C4FC 0C080114 */ jal func_E0200450 +/* 330E10 E001C500 0280302D */ daddu $a2, $s4, $zero +/* 330E14 E001C504 0280202D */ daddu $a0, $s4, $zero +/* 330E18 E001C508 96450000 */ lhu $a1, ($s2) +/* 330E1C E001C50C 8EA20000 */ lw $v0, ($s5) +/* 330E20 E001C510 00052980 */ sll $a1, $a1, 6 +/* 330E24 E001C514 00B72821 */ addu $a1, $a1, $s7 +/* 330E28 E001C518 0C080118 */ jal func_E0200460 +/* 330E2C E001C51C 00452821 */ addu $a1, $v0, $a1 +/* 330E30 E001C520 3C06D838 */ lui $a2, 0xd838 +/* 330E34 E001C524 34C60002 */ ori $a2, $a2, 2 +/* 330E38 E001C528 8E240000 */ lw $a0, ($s1) +/* 330E3C E001C52C 96420000 */ lhu $v0, ($s2) +/* 330E40 E001C530 0080282D */ daddu $a1, $a0, $zero +/* 330E44 E001C534 24840008 */ addiu $a0, $a0, 8 +/* 330E48 E001C538 24430001 */ addiu $v1, $v0, 1 +/* 330E4C E001C53C 3042FFFF */ andi $v0, $v0, 0xffff +/* 330E50 E001C540 00021180 */ sll $v0, $v0, 6 +/* 330E54 E001C544 AE240000 */ sw $a0, ($s1) +/* 330E58 E001C548 ACBE0000 */ sw $fp, ($a1) +/* 330E5C E001C54C A6430000 */ sh $v1, ($s2) +/* 330E60 E001C550 8EA30000 */ lw $v1, ($s5) +/* 330E64 E001C554 00571021 */ addu $v0, $v0, $s7 +/* 330E68 E001C558 00621821 */ addu $v1, $v1, $v0 +/* 330E6C E001C55C 24820008 */ addiu $v0, $a0, 8 +/* 330E70 E001C560 ACA30004 */ sw $v1, 4($a1) +/* 330E74 E001C564 3C0ADE00 */ lui $t2, 0xde00 +/* 330E78 E001C568 AE220000 */ sw $v0, ($s1) +/* 330E7C E001C56C 3C020900 */ lui $v0, 0x900 +/* 330E80 E001C570 244209E8 */ addiu $v0, $v0, 0x9e8 +/* 330E84 E001C574 AC820004 */ sw $v0, 4($a0) +/* 330E88 E001C578 24820010 */ addiu $v0, $a0, 0x10 +/* 330E8C E001C57C 24030040 */ addiu $v1, $zero, 0x40 +/* 330E90 E001C580 AC8A0000 */ sw $t2, ($a0) +/* 330E94 E001C584 AE220000 */ sw $v0, ($s1) +/* 330E98 E001C588 24820018 */ addiu $v0, $a0, 0x18 +/* 330E9C E001C58C AC860008 */ sw $a2, 8($a0) +/* 330EA0 E001C590 AC83000C */ sw $v1, 0xc($a0) +/* 330EA4 E001C594 AE220000 */ sw $v0, ($s1) +/* 330EA8 E001C598 AC860010 */ sw $a2, 0x10($a0) +/* 330EAC E001C59C AC830014 */ sw $v1, 0x14($a0) +/* 330EB0 E001C5A0 8FBF017C */ lw $ra, 0x17c($sp) +/* 330EB4 E001C5A4 8FBE0178 */ lw $fp, 0x178($sp) +/* 330EB8 E001C5A8 8FB70174 */ lw $s7, 0x174($sp) +/* 330EBC E001C5AC 8FB60170 */ lw $s6, 0x170($sp) +/* 330EC0 E001C5B0 8FB5016C */ lw $s5, 0x16c($sp) +/* 330EC4 E001C5B4 8FB40168 */ lw $s4, 0x168($sp) +/* 330EC8 E001C5B8 8FB30164 */ lw $s3, 0x164($sp) +/* 330ECC E001C5BC 8FB20160 */ lw $s2, 0x160($sp) +/* 330ED0 E001C5C0 8FB1015C */ lw $s1, 0x15c($sp) +/* 330ED4 E001C5C4 8FB00158 */ lw $s0, 0x158($sp) +/* 330ED8 E001C5C8 D7B60188 */ ldc1 $f22, 0x188($sp) +/* 330EDC E001C5CC D7B40180 */ ldc1 $f20, 0x180($sp) +/* 330EE0 E001C5D0 03E00008 */ jr $ra +/* 330EE4 E001C5D4 27BD0190 */ addiu $sp, $sp, 0x190 +/* 330EE8 E001C5D8 00000000 */ nop +/* 330EEC E001C5DC 00000000 */ nop diff --git a/asm/nonmatchings/code_34DD20/func_E0038000.s b/asm/nonmatchings/code_34DD20/func_E0038000.s new file mode 100644 index 0000000000..6657dfb559 --- /dev/null +++ b/asm/nonmatchings/code_34DD20/func_E0038000.s @@ -0,0 +1,280 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0038000 +/* 34DD20 E0038000 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 34DD24 E0038004 F7BE00C0 */ sdc1 $f30, 0xc0($sp) +/* 34DD28 E0038008 4485F000 */ mtc1 $a1, $f30 +/* 34DD2C E003800C F7B600A0 */ sdc1 $f22, 0xa0($sp) +/* 34DD30 E0038010 4480B000 */ mtc1 $zero, $f22 +/* 34DD34 E0038014 3C013F80 */ lui $at, 0x3f80 +/* 34DD38 E0038018 44816000 */ mtc1 $at, $f12 +/* 34DD3C E003801C F7B800A8 */ sdc1 $f24, 0xa8($sp) +/* 34DD40 E0038020 3C01BF80 */ lui $at, 0xbf80 +/* 34DD44 E0038024 4481C000 */ mtc1 $at, $f24 +/* 34DD48 E0038028 AFBF0094 */ sw $ra, 0x94($sp) +/* 34DD4C E003802C AFBE0090 */ sw $fp, 0x90($sp) +/* 34DD50 E0038030 AFB7008C */ sw $s7, 0x8c($sp) +/* 34DD54 E0038034 AFB60088 */ sw $s6, 0x88($sp) +/* 34DD58 E0038038 AFB50084 */ sw $s5, 0x84($sp) +/* 34DD5C E003803C AFB40080 */ sw $s4, 0x80($sp) +/* 34DD60 E0038040 AFB3007C */ sw $s3, 0x7c($sp) +/* 34DD64 E0038044 AFB20078 */ sw $s2, 0x78($sp) +/* 34DD68 E0038048 AFB10074 */ sw $s1, 0x74($sp) +/* 34DD6C E003804C AFB00070 */ sw $s0, 0x70($sp) +/* 34DD70 E0038050 F7BC00B8 */ sdc1 $f28, 0xb8($sp) +/* 34DD74 E0038054 F7BA00B0 */ sdc1 $f26, 0xb0($sp) +/* 34DD78 E0038058 F7B40098 */ sdc1 $f20, 0x98($sp) +/* 34DD7C E003805C AFA400C8 */ sw $a0, 0xc8($sp) +/* 34DD80 E0038060 AFA600D0 */ sw $a2, 0xd0($sp) +/* 34DD84 E0038064 AFA700D4 */ sw $a3, 0xd4($sp) +/* 34DD88 E0038068 0C080154 */ jal func_E0200550 +/* 34DD8C E003806C 46006706 */ mov.s $f28, $f12 +/* 34DD90 E0038070 4600C303 */ div.s $f12, $f24, $f0 +/* 34DD94 E0038074 46166682 */ mul.s $f26, $f12, $f22 +/* 34DD98 E0038078 00000000 */ nop +/* 34DD9C E003807C 4600B506 */ mov.s $f20, $f22 +/* 34DDA0 E0038080 27B00018 */ addiu $s0, $sp, 0x18 +/* 34DDA4 E0038084 24150005 */ addiu $s5, $zero, 5 +/* 34DDA8 E0038088 4600D586 */ mov.s $f22, $f26 +/* 34DDAC E003808C 4614B032 */ c.eq.s $f22, $f20 +/* 34DDB0 E0038090 00000000 */ nop +/* 34DDB4 E0038094 45010005 */ bc1t .LE00380AC +/* 34DDB8 E0038098 46006607 */ neg.s $f24, $f12 +/* 34DDBC E003809C 46166003 */ div.s $f0, $f12, $f22 +/* 34DDC0 E00380A0 4600E086 */ mov.s $f2, $f28 +/* 34DDC4 E00380A4 0800E036 */ j .LE00380D8 +/* 34DDC8 E00380A8 4600A106 */ mov.s $f4, $f20 +.LE00380AC: +/* 34DDCC E00380AC 4614C032 */ c.eq.s $f24, $f20 +/* 34DDD0 E00380B0 00000000 */ nop +/* 34DDD4 E00380B4 45010005 */ bc1t .LE00380CC +/* 34DDD8 E00380B8 4600B007 */ neg.s $f0, $f22 +/* 34DDDC E00380BC 46180083 */ div.s $f2, $f0, $f24 +/* 34DDE0 E00380C0 4600E006 */ mov.s $f0, $f28 +/* 34DDE4 E00380C4 0800E036 */ j .LE00380D8 +/* 34DDE8 E00380C8 4600A106 */ mov.s $f4, $f20 +.LE00380CC: +/* 34DDEC E00380CC 46160103 */ div.s $f4, $f0, $f22 +/* 34DDF0 E00380D0 4600A086 */ mov.s $f2, $f20 +/* 34DDF4 E00380D4 4600E006 */ mov.s $f0, $f28 +.LE00380D8: +/* 34DDF8 E00380D8 46000002 */ mul.s $f0, $f0, $f0 +/* 34DDFC E00380DC 00000000 */ nop +/* 34DE00 E00380E0 46021082 */ mul.s $f2, $f2, $f2 +/* 34DE04 E00380E4 00000000 */ nop +/* 34DE08 E00380E8 46042102 */ mul.s $f4, $f4, $f4 +/* 34DE0C E00380EC 00000000 */ nop +/* 34DE10 E00380F0 46020000 */ add.s $f0, $f0, $f2 +/* 34DE14 E00380F4 46040300 */ add.s $f12, $f0, $f4 +/* 34DE18 E00380F8 44800000 */ mtc1 $zero, $f0 +/* 34DE1C E00380FC 00000000 */ nop +/* 34DE20 E0038100 46006032 */ c.eq.s $f12, $f0 +/* 34DE24 E0038104 00000000 */ nop +/* 34DE28 E0038108 450100B2 */ bc1t .LE00383D4 +/* 34DE2C E003810C 00000000 */ nop +/* 34DE30 E0038110 0C080154 */ jal func_E0200550 +/* 34DE34 E0038114 00000000 */ nop +/* 34DE38 E0038118 0200202D */ daddu $a0, $s0, $zero +/* 34DE3C E003811C 3C014190 */ lui $at, 0x4190 +/* 34DE40 E0038120 44810000 */ mtc1 $at, $f0 +/* 34DE44 E0038124 3C02E004 */ lui $v0, %hi(D_E003841C) +/* 34DE48 E0038128 2442841C */ addiu $v0, $v0, %lo(D_E003841C) +/* 34DE4C E003812C AC820008 */ sw $v0, 8($a0) +/* 34DE50 E0038130 4600D682 */ mul.s $f26, $f26, $f0 +/* 34DE54 E0038134 00000000 */ nop +/* 34DE58 E0038138 3C02E004 */ lui $v0, %hi(D_E0038424) +/* 34DE5C E003813C 24428424 */ addiu $v0, $v0, %lo(D_E0038424) +/* 34DE60 E0038140 AC82000C */ sw $v0, 0xc($a0) +/* 34DE64 E0038144 3C02E004 */ lui $v0, %hi(D_E0038704) +/* 34DE68 E0038148 24428704 */ addiu $v0, $v0, %lo(D_E0038704) +/* 34DE6C E003814C AC820010 */ sw $v0, 0x10($a0) +/* 34DE70 E0038150 4600C602 */ mul.s $f24, $f24, $f0 +/* 34DE74 E0038154 00000000 */ nop +/* 34DE78 E0038158 2402001C */ addiu $v0, $zero, 0x1c +/* 34DE7C E003815C AC800000 */ sw $zero, ($a0) +/* 34DE80 E0038160 AC800014 */ sw $zero, 0x14($a0) +/* 34DE84 E0038164 4600B582 */ mul.s $f22, $f22, $f0 +/* 34DE88 E0038168 00000000 */ nop +/* 34DE8C E003816C 0C080124 */ jal func_E0200490 +/* 34DE90 E0038170 AC820004 */ sw $v0, 4($a0) +/* 34DE94 E0038174 00152040 */ sll $a0, $s5, 1 +/* 34DE98 E0038178 00952021 */ addu $a0, $a0, $s5 +/* 34DE9C E003817C 00042100 */ sll $a0, $a0, 4 +/* 34DEA0 E0038180 0040802D */ daddu $s0, $v0, $zero +/* 34DEA4 E0038184 0C08012C */ jal func_E02004B0 +/* 34DEA8 E0038188 AE150008 */ sw $s5, 8($s0) +/* 34DEAC E003818C 0040902D */ daddu $s2, $v0, $zero +/* 34DEB0 E0038190 16400003 */ bnez $s2, .LE00381A0 +/* 34DEB4 E0038194 AE12000C */ sw $s2, 0xc($s0) +.LE0038198: +/* 34DEB8 E0038198 0800E066 */ j .LE0038198 +/* 34DEBC E003819C 00000000 */ nop +.LE00381A0: +/* 34DEC0 E00381A0 12A0008C */ beqz $s5, .LE00383D4 +/* 34DEC4 E00381A4 0000A02D */ daddu $s4, $zero, $zero +/* 34DEC8 E00381A8 3C17800B */ lui $s7, %hi(gCameras) +/* 34DECC E00381AC 26F71D80 */ addiu $s7, $s7, %lo(gCameras) +/* 34DED0 E00381B0 3C168007 */ lui $s6, %hi(gCurrentCameraID) +/* 34DED4 E00381B4 26D67410 */ addiu $s6, $s6, %lo(gCurrentCameraID) +/* 34DED8 E00381B8 27BE0030 */ addiu $fp, $sp, 0x30 +/* 34DEDC E00381BC 26B3FFFF */ addiu $s3, $s5, -1 +/* 34DEE0 E00381C0 3C01E004 */ lui $at, %hi(D_E0038A20) +/* 34DEE4 E00381C4 D43C8A20 */ ldc1 $f28, %lo(D_E0038A20)($at) +/* 34DEE8 E00381C8 26500024 */ addiu $s0, $s2, 0x24 +/* 34DEEC E00381CC 0280882D */ daddu $s1, $s4, $zero +.LE00381D0: +/* 34DEF0 E00381D0 8EC30000 */ lw $v1, ($s6) +/* 34DEF4 E00381D4 8FA800C8 */ lw $t0, 0xc8($sp) +/* 34DEF8 E00381D8 00031080 */ sll $v0, $v1, 2 +/* 34DEFC E00381DC 00431021 */ addu $v0, $v0, $v1 +/* 34DF00 E00381E0 00021080 */ sll $v0, $v0, 2 +/* 34DF04 E00381E4 00431023 */ subu $v0, $v0, $v1 +/* 34DF08 E00381E8 000218C0 */ sll $v1, $v0, 3 +/* 34DF0C E00381EC 00431021 */ addu $v0, $v0, $v1 +/* 34DF10 E00381F0 AE480000 */ sw $t0, ($s2) +/* 34DF14 E00381F4 E61EFFE0 */ swc1 $f30, -0x20($s0) +/* 34DF18 E00381F8 C7A600D0 */ lwc1 $f6, 0xd0($sp) +/* 34DF1C E00381FC 000210C0 */ sll $v0, $v0, 3 +/* 34DF20 E0038200 E606FFE4 */ swc1 $f6, -0x1c($s0) +/* 34DF24 E0038204 C7A600D4 */ lwc1 $f6, 0xd4($sp) +/* 34DF28 E0038208 00571021 */ addu $v0, $v0, $s7 +/* 34DF2C E003820C E606FFE8 */ swc1 $f6, -0x18($s0) +/* 34DF30 E0038210 0C080140 */ jal func_E0200500 +/* 34DF34 E0038214 C44C006C */ lwc1 $f12, 0x6c($v0) +/* 34DF38 E0038218 8EC30000 */ lw $v1, ($s6) +/* 34DF3C E003821C 00031080 */ sll $v0, $v1, 2 +/* 34DF40 E0038220 00431021 */ addu $v0, $v0, $v1 +/* 34DF44 E0038224 00021080 */ sll $v0, $v0, 2 +/* 34DF48 E0038228 00431023 */ subu $v0, $v0, $v1 +/* 34DF4C E003822C 000218C0 */ sll $v1, $v0, 3 +/* 34DF50 E0038230 00431021 */ addu $v0, $v0, $v1 +/* 34DF54 E0038234 000210C0 */ sll $v0, $v0, 3 +/* 34DF58 E0038238 00571021 */ addu $v0, $v0, $s7 +/* 34DF5C E003823C C44C006C */ lwc1 $f12, 0x6c($v0) +/* 34DF60 E0038240 0C080144 */ jal func_E0200510 +/* 34DF64 E0038244 46000506 */ mov.s $f20, $f0 +/* 34DF68 E0038248 24020001 */ addiu $v0, $zero, 1 +/* 34DF6C E003824C 12A20011 */ beq $s5, $v0, .LE0038294 +/* 34DF70 E0038250 46000007 */ neg.s $f0, $f0 +/* 34DF74 E0038254 16600002 */ bnez $s3, .LE0038260 +/* 34DF78 E0038258 0233001A */ div $zero, $s1, $s3 +/* 34DF7C E003825C 0007000D */ break 7 +.LE0038260: +/* 34DF80 E0038260 2401FFFF */ addiu $at, $zero, -1 +/* 34DF84 E0038264 16610004 */ bne $s3, $at, .LE0038278 +/* 34DF88 E0038268 3C018000 */ lui $at, 0x8000 +/* 34DF8C E003826C 16210002 */ bne $s1, $at, .LE0038278 +/* 34DF90 E0038270 00000000 */ nop +/* 34DF94 E0038274 0006000D */ break 6 +.LE0038278: +/* 34DF98 E0038278 00001012 */ mflo $v0 +/* 34DF9C E003827C 2442FFCE */ addiu $v0, $v0, -0x32 +/* 34DFA0 E0038280 44821000 */ mtc1 $v0, $f2 +/* 34DFA4 E0038284 00000000 */ nop +/* 34DFA8 E0038288 468010A0 */ cvt.s.w $f2, $f2 +/* 34DFAC E003828C 0800E0A7 */ j .LE003829C +/* 34DFB0 E0038290 03C0202D */ daddu $a0, $fp, $zero +.LE0038294: +/* 34DFB4 E0038294 44801000 */ mtc1 $zero, $f2 +/* 34DFB8 E0038298 03C0202D */ daddu $a0, $fp, $zero +.LE003829C: +/* 34DFBC E003829C 44051000 */ mfc1 $a1, $f2 +/* 34DFC0 E00382A0 4406A000 */ mfc1 $a2, $f20 +/* 34DFC4 E00382A4 0000382D */ daddu $a3, $zero, $zero +/* 34DFC8 E00382A8 0C080104 */ jal func_E0200410 +/* 34DFCC E00382AC E7A00010 */ swc1 $f0, 0x10($sp) +/* 34DFD0 E00382B0 16600002 */ bnez $s3, .LE00382BC +/* 34DFD4 E00382B4 0233001A */ div $zero, $s1, $s3 +/* 34DFD8 E00382B8 0007000D */ break 7 +.LE00382BC: +/* 34DFDC E00382BC 2401FFFF */ addiu $at, $zero, -1 +/* 34DFE0 E00382C0 16610004 */ bne $s3, $at, .LE00382D4 +/* 34DFE4 E00382C4 3C018000 */ lui $at, 0x8000 +/* 34DFE8 E00382C8 16210002 */ bne $s1, $at, .LE00382D4 +/* 34DFEC E00382CC 00000000 */ nop +/* 34DFF0 E00382D0 0006000D */ break 6 +.LE00382D4: +/* 34DFF4 E00382D4 00001812 */ mflo $v1 +/* 34DFF8 E00382D8 C7A00030 */ lwc1 $f0, 0x30($sp) +/* 34DFFC E00382DC 461A0002 */ mul.s $f0, $f0, $f26 +/* 34E000 E00382E0 00000000 */ nop +/* 34E004 E00382E4 C7A40040 */ lwc1 $f4, 0x40($sp) +/* 34E008 E00382E8 46182102 */ mul.s $f4, $f4, $f24 +/* 34E00C E00382EC 00000000 */ nop +/* 34E010 E00382F0 C7A20050 */ lwc1 $f2, 0x50($sp) +/* 34E014 E00382F4 46161082 */ mul.s $f2, $f2, $f22 +/* 34E018 E00382F8 00000000 */ nop +/* 34E01C E00382FC 46040000 */ add.s $f0, $f0, $f4 +/* 34E020 E0038300 46020000 */ add.s $f0, $f0, $f2 +/* 34E024 E0038304 46000021 */ cvt.d.s $f0, $f0 +/* 34E028 E0038308 463C0002 */ mul.d $f0, $f0, $f28 +/* 34E02C E003830C 00000000 */ nop +/* 34E030 E0038310 46200020 */ cvt.s.d $f0, $f0 +/* 34E034 E0038314 E600FFEC */ swc1 $f0, -0x14($s0) +/* 34E038 E0038318 C7A00034 */ lwc1 $f0, 0x34($sp) +/* 34E03C E003831C 461A0002 */ mul.s $f0, $f0, $f26 +/* 34E040 E0038320 00000000 */ nop +/* 34E044 E0038324 C7A40044 */ lwc1 $f4, 0x44($sp) +/* 34E048 E0038328 46182102 */ mul.s $f4, $f4, $f24 +/* 34E04C E003832C 00000000 */ nop +/* 34E050 E0038330 C7A20054 */ lwc1 $f2, 0x54($sp) +/* 34E054 E0038334 46161082 */ mul.s $f2, $f2, $f22 +/* 34E058 E0038338 00000000 */ nop +/* 34E05C E003833C 46040000 */ add.s $f0, $f0, $f4 +/* 34E060 E0038340 46020000 */ add.s $f0, $f0, $f2 +/* 34E064 E0038344 E600FFF0 */ swc1 $f0, -0x10($s0) +/* 34E068 E0038348 C7A00038 */ lwc1 $f0, 0x38($sp) +/* 34E06C E003834C 461A0002 */ mul.s $f0, $f0, $f26 +/* 34E070 E0038350 00000000 */ nop +/* 34E074 E0038354 C7A20048 */ lwc1 $f2, 0x48($sp) +/* 34E078 E0038358 46181082 */ mul.s $f2, $f2, $f24 +/* 34E07C E003835C 00000000 */ nop +/* 34E080 E0038360 C7A40058 */ lwc1 $f4, 0x58($sp) +/* 34E084 E0038364 46162102 */ mul.s $f4, $f4, $f22 +/* 34E088 E0038368 00000000 */ nop +/* 34E08C E003836C 26940001 */ addiu $s4, $s4, 1 +/* 34E090 E0038370 26520030 */ addiu $s2, $s2, 0x30 +/* 34E094 E0038374 26310064 */ addiu $s1, $s1, 0x64 +/* 34E098 E0038378 46020000 */ add.s $f0, $f0, $f2 +/* 34E09C E003837C 24020032 */ addiu $v0, $zero, 0x32 +/* 34E0A0 E0038380 3C013F00 */ lui $at, 0x3f00 +/* 34E0A4 E0038384 44811000 */ mtc1 $at, $f2 +/* 34E0A8 E0038388 46040000 */ add.s $f0, $f0, $f4 +/* 34E0AC E003838C E602FFFC */ swc1 $f2, -4($s0) +/* 34E0B0 E0038390 8FA800D8 */ lw $t0, 0xd8($sp) +/* 34E0B4 E0038394 46000021 */ cvt.d.s $f0, $f0 +/* 34E0B8 E0038398 463C0002 */ mul.d $f0, $f0, $f28 +/* 34E0BC E003839C 00000000 */ nop +/* 34E0C0 E00383A0 AE000008 */ sw $zero, 8($s0) +/* 34E0C4 E00383A4 AE000000 */ sw $zero, ($s0) +/* 34E0C8 E00383A8 AE080004 */ sw $t0, 4($s0) +/* 34E0CC E00383AC 00431023 */ subu $v0, $v0, $v1 +/* 34E0D0 E00383B0 44821000 */ mtc1 $v0, $f2 +/* 34E0D4 E00383B4 00000000 */ nop +/* 34E0D8 E00383B8 468010A0 */ cvt.s.w $f2, $f2 +/* 34E0DC E00383BC 0295102A */ slt $v0, $s4, $s5 +/* 34E0E0 E00383C0 E602FFF8 */ swc1 $f2, -8($s0) +/* 34E0E4 E00383C4 46200020 */ cvt.s.d $f0, $f0 +/* 34E0E8 E00383C8 E600FFF4 */ swc1 $f0, -0xc($s0) +/* 34E0EC E00383CC 1440FF80 */ bnez $v0, .LE00381D0 +/* 34E0F0 E00383D0 26100030 */ addiu $s0, $s0, 0x30 +.LE00383D4: +/* 34E0F4 E00383D4 8FBF0094 */ lw $ra, 0x94($sp) +/* 34E0F8 E00383D8 8FBE0090 */ lw $fp, 0x90($sp) +/* 34E0FC E00383DC 8FB7008C */ lw $s7, 0x8c($sp) +/* 34E100 E00383E0 8FB60088 */ lw $s6, 0x88($sp) +/* 34E104 E00383E4 8FB50084 */ lw $s5, 0x84($sp) +/* 34E108 E00383E8 8FB40080 */ lw $s4, 0x80($sp) +/* 34E10C E00383EC 8FB3007C */ lw $s3, 0x7c($sp) +/* 34E110 E00383F0 8FB20078 */ lw $s2, 0x78($sp) +/* 34E114 E00383F4 8FB10074 */ lw $s1, 0x74($sp) +/* 34E118 E00383F8 8FB00070 */ lw $s0, 0x70($sp) +/* 34E11C E00383FC D7BE00C0 */ ldc1 $f30, 0xc0($sp) +/* 34E120 E0038400 D7BC00B8 */ ldc1 $f28, 0xb8($sp) +/* 34E124 E0038404 D7BA00B0 */ ldc1 $f26, 0xb0($sp) +/* 34E128 E0038408 D7B800A8 */ ldc1 $f24, 0xa8($sp) +/* 34E12C E003840C D7B600A0 */ ldc1 $f22, 0xa0($sp) +/* 34E130 E0038410 D7B40098 */ ldc1 $f20, 0x98($sp) +/* 34E134 E0038414 03E00008 */ jr $ra +/* 34E138 E0038418 27BD00C8 */ addiu $sp, $sp, 0xc8 diff --git a/asm/nonmatchings/code_34DD20/func_E003841C.s b/asm/nonmatchings/code_34DD20/func_E003841C.s new file mode 100644 index 0000000000..95c1169189 --- /dev/null +++ b/asm/nonmatchings/code_34DD20/func_E003841C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E003841C +/* 34E13C E003841C 03E00008 */ jr $ra +/* 34E140 E0038420 00000000 */ nop diff --git a/asm/nonmatchings/code_34DD20/func_E0038424.s b/asm/nonmatchings/code_34DD20/func_E0038424.s new file mode 100644 index 0000000000..78fabca0db --- /dev/null +++ b/asm/nonmatchings/code_34DD20/func_E0038424.s @@ -0,0 +1,193 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0038424 +/* 34E144 E0038424 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 34E148 E0038428 AFB40020 */ sw $s4, 0x20($sp) +/* 34E14C E003842C 0080A02D */ daddu $s4, $a0, $zero +/* 34E150 E0038430 AFBF0028 */ sw $ra, 0x28($sp) +/* 34E154 E0038434 AFB50024 */ sw $s5, 0x24($sp) +/* 34E158 E0038438 AFB3001C */ sw $s3, 0x1c($sp) +/* 34E15C E003843C AFB20018 */ sw $s2, 0x18($sp) +/* 34E160 E0038440 AFB10014 */ sw $s1, 0x14($sp) +/* 34E164 E0038444 AFB00010 */ sw $s0, 0x10($sp) +/* 34E168 E0038448 F7BC0050 */ sdc1 $f28, 0x50($sp) +/* 34E16C E003844C F7BA0048 */ sdc1 $f26, 0x48($sp) +/* 34E170 E0038450 F7B80040 */ sdc1 $f24, 0x40($sp) +/* 34E174 E0038454 F7B60038 */ sdc1 $f22, 0x38($sp) +/* 34E178 E0038458 F7B40030 */ sdc1 $f20, 0x30($sp) +/* 34E17C E003845C 8E83000C */ lw $v1, 0xc($s4) +/* 34E180 E0038460 8C620028 */ lw $v0, 0x28($v1) +/* 34E184 E0038464 2442FFFF */ addiu $v0, $v0, -1 +/* 34E188 E0038468 AC620028 */ sw $v0, 0x28($v1) +/* 34E18C E003846C 8C62002C */ lw $v0, 0x2c($v1) +/* 34E190 E0038470 8C640028 */ lw $a0, 0x28($v1) +/* 34E194 E0038474 24450001 */ addiu $a1, $v0, 1 +/* 34E198 E0038478 04810005 */ bgez $a0, .LE0038490 +/* 34E19C E003847C AC65002C */ sw $a1, 0x2c($v1) +/* 34E1A0 E0038480 0C080128 */ jal func_E02004A0 +/* 34E1A4 E0038484 0280202D */ daddu $a0, $s4, $zero +/* 34E1A8 E0038488 0800E1B3 */ j .LE00386CC +/* 34E1AC E003848C 00000000 */ nop +.LE0038490: +/* 34E1B0 E0038490 0000882D */ daddu $s1, $zero, $zero +/* 34E1B4 E0038494 0080982D */ daddu $s3, $a0, $zero +/* 34E1B8 E0038498 8E820008 */ lw $v0, 8($s4) +/* 34E1BC E003849C 1840008B */ blez $v0, .LE00386CC +/* 34E1C0 E00384A0 00A0902D */ daddu $s2, $a1, $zero +/* 34E1C4 E00384A4 241500FF */ addiu $s5, $zero, 0xff +/* 34E1C8 E00384A8 2470000C */ addiu $s0, $v1, 0xc +/* 34E1CC E00384AC 3C01E004 */ lui $at, %hi(D_E0038A28) +/* 34E1D0 E00384B0 D4388A28 */ ldc1 $f24, %lo(D_E0038A28)($at) +/* 34E1D4 E00384B4 3C0141F0 */ lui $at, 0x41f0 +/* 34E1D8 E00384B8 4481D000 */ mtc1 $at, $f26 +/* 34E1DC E00384BC 3C014040 */ lui $at, 0x4040 +/* 34E1E0 E00384C0 4481E000 */ mtc1 $at, $f28 +/* 34E1E4 E00384C4 3C01E004 */ lui $at, %hi(D_E0038A30) +/* 34E1E8 E00384C8 D4368A30 */ ldc1 $f22, %lo(D_E0038A30)($at) +.LE00384CC: +/* 34E1EC E00384CC 2A620006 */ slti $v0, $s3, 6 +/* 34E1F0 E00384D0 14400037 */ bnez $v0, .LE00385B0 +/* 34E1F4 E00384D4 2A620005 */ slti $v0, $s3, 5 +/* 34E1F8 E00384D8 C6020004 */ lwc1 $f2, 4($s0) +/* 34E1FC E00384DC 460010A1 */ cvt.d.s $f2, $f2 +/* 34E200 E00384E0 46381082 */ mul.d $f2, $f2, $f24 +/* 34E204 E00384E4 00000000 */ nop +/* 34E208 E00384E8 C6000008 */ lwc1 $f0, 8($s0) +/* 34E20C E00384EC 46000021 */ cvt.d.s $f0, $f0 +/* 34E210 E00384F0 46380002 */ mul.d $f0, $f0, $f24 +/* 34E214 E00384F4 00000000 */ nop +/* 34E218 E00384F8 C604000C */ lwc1 $f4, 0xc($s0) +/* 34E21C E00384FC 46002121 */ cvt.d.s $f4, $f4 +/* 34E220 E0038500 46382102 */ mul.d $f4, $f4, $f24 +/* 34E224 E0038504 00000000 */ nop +/* 34E228 E0038508 8E030018 */ lw $v1, 0x18($s0) +/* 34E22C E003850C 3C01E004 */ lui $at, %hi(D_E0038A38) +/* 34E230 E0038510 D4268A38 */ ldc1 $f6, %lo(D_E0038A38)($at) +/* 34E234 E0038514 02A31023 */ subu $v0, $s5, $v1 +/* 34E238 E0038518 44824000 */ mtc1 $v0, $f8 +/* 34E23C E003851C 00000000 */ nop +/* 34E240 E0038520 46804221 */ cvt.d.w $f8, $f8 +/* 34E244 E0038524 46264202 */ mul.d $f8, $f8, $f6 +/* 34E248 E0038528 00000000 */ nop +/* 34E24C E003852C 462010A0 */ cvt.s.d $f2, $f2 +/* 34E250 E0038530 46200020 */ cvt.s.d $f0, $f0 +/* 34E254 E0038534 E6000008 */ swc1 $f0, 8($s0) +/* 34E258 E0038538 44830000 */ mtc1 $v1, $f0 +/* 34E25C E003853C 00000000 */ nop +/* 34E260 E0038540 46800021 */ cvt.d.w $f0, $f0 +/* 34E264 E0038544 46202120 */ cvt.s.d $f4, $f4 +/* 34E268 E0038548 46280000 */ add.d $f0, $f0, $f8 +/* 34E26C E003854C E6020004 */ swc1 $f2, 4($s0) +/* 34E270 E0038550 E604000C */ swc1 $f4, 0xc($s0) +/* 34E274 E0038554 4620028D */ trunc.w.d $f10, $f0 +/* 34E278 E0038558 44035000 */ mfc1 $v1, $f10 +/* 34E27C E003855C 00000000 */ nop +/* 34E280 E0038560 000317C2 */ srl $v0, $v1, 0x1f +/* 34E284 E0038564 00621021 */ addu $v0, $v1, $v0 +/* 34E288 E0038568 00021043 */ sra $v0, $v0, 1 +/* 34E28C E003856C 44826000 */ mtc1 $v0, $f12 +/* 34E290 E0038570 00000000 */ nop +/* 34E294 E0038574 46806320 */ cvt.s.w $f12, $f12 +/* 34E298 E0038578 0C080140 */ jal func_E0200500 +/* 34E29C E003857C AE030018 */ sw $v1, 0x18($s0) +/* 34E2A0 E0038580 44926000 */ mtc1 $s2, $f12 +/* 34E2A4 E0038584 00000000 */ nop +/* 34E2A8 E0038588 46806320 */ cvt.s.w $f12, $f12 +/* 34E2AC E003858C 461A6302 */ mul.s $f12, $f12, $f26 +/* 34E2B0 E0038590 00000000 */ nop +/* 34E2B4 E0038594 0C080140 */ jal func_E0200500 +/* 34E2B8 E0038598 46000506 */ mov.s $f20, $f0 +/* 34E2BC E003859C 461CA502 */ mul.s $f20, $f20, $f28 +/* 34E2C0 E00385A0 00000000 */ nop +/* 34E2C4 E00385A4 4600A500 */ add.s $f20, $f20, $f0 +/* 34E2C8 E00385A8 E6140014 */ swc1 $f20, 0x14($s0) +/* 34E2CC E00385AC 2A620005 */ slti $v0, $s3, 5 +.LE00385B0: +/* 34E2D0 E00385B0 10400035 */ beqz $v0, .LE0038688 +/* 34E2D4 E00385B4 00000000 */ nop +/* 34E2D8 E00385B8 3C01E004 */ lui $at, %hi(D_E0038A40) +/* 34E2DC E00385BC D4208A40 */ ldc1 $f0, %lo(D_E0038A40)($at) +/* 34E2E0 E00385C0 C6060018 */ lwc1 $f6, 0x18($s0) +/* 34E2E4 E00385C4 468031A1 */ cvt.d.w $f6, $f6 +/* 34E2E8 E00385C8 46203182 */ mul.d $f6, $f6, $f0 +/* 34E2EC E00385CC 00000000 */ nop +/* 34E2F0 E00385D0 C6040004 */ lwc1 $f4, 4($s0) +/* 34E2F4 E00385D4 46002121 */ cvt.d.s $f4, $f4 +/* 34E2F8 E00385D8 46362102 */ mul.d $f4, $f4, $f22 +/* 34E2FC E00385DC 00000000 */ nop +/* 34E300 E00385E0 C602000C */ lwc1 $f2, 0xc($s0) +/* 34E304 E00385E4 460010A1 */ cvt.d.s $f2, $f2 +/* 34E308 E00385E8 46361082 */ mul.d $f2, $f2, $f22 +/* 34E30C E00385EC 00000000 */ nop +/* 34E310 E00385F0 C6000008 */ lwc1 $f0, 8($s0) +/* 34E314 E00385F4 46000021 */ cvt.d.s $f0, $f0 +/* 34E318 E00385F8 46360002 */ mul.d $f0, $f0, $f22 +/* 34E31C E00385FC 00000000 */ nop +/* 34E320 E0038600 4620328D */ trunc.w.d $f10, $f6 +/* 34E324 E0038604 E60A0018 */ swc1 $f10, 0x18($s0) +/* 34E328 E0038608 46202120 */ cvt.s.d $f4, $f4 +/* 34E32C E003860C 8E030018 */ lw $v1, 0x18($s0) +/* 34E330 E0038610 462010A0 */ cvt.s.d $f2, $f2 +/* 34E334 E0038614 E6040004 */ swc1 $f4, 4($s0) +/* 34E338 E0038618 E602000C */ swc1 $f2, 0xc($s0) +/* 34E33C E003861C 46200020 */ cvt.s.d $f0, $f0 +/* 34E340 E0038620 000317C2 */ srl $v0, $v1, 0x1f +/* 34E344 E0038624 00621821 */ addu $v1, $v1, $v0 +/* 34E348 E0038628 00031843 */ sra $v1, $v1, 1 +/* 34E34C E003862C 44836000 */ mtc1 $v1, $f12 +/* 34E350 E0038630 00000000 */ nop +/* 34E354 E0038634 46806320 */ cvt.s.w $f12, $f12 +/* 34E358 E0038638 0C080140 */ jal func_E0200500 +/* 34E35C E003863C E6000008 */ swc1 $f0, 8($s0) +/* 34E360 E0038640 44926000 */ mtc1 $s2, $f12 +/* 34E364 E0038644 00000000 */ nop +/* 34E368 E0038648 46806320 */ cvt.s.w $f12, $f12 +/* 34E36C E003864C 461A6302 */ mul.s $f12, $f12, $f26 +/* 34E370 E0038650 00000000 */ nop +/* 34E374 E0038654 0C080140 */ jal func_E0200500 +/* 34E378 E0038658 46000506 */ mov.s $f20, $f0 +/* 34E37C E003865C 461CA502 */ mul.s $f20, $f20, $f28 +/* 34E380 E0038660 00000000 */ nop +/* 34E384 E0038664 8E020018 */ lw $v0, 0x18($s0) +/* 34E388 E0038668 02A21023 */ subu $v0, $s5, $v0 +/* 34E38C E003866C 4600A500 */ add.s $f20, $f20, $f0 +/* 34E390 E0038670 44820000 */ mtc1 $v0, $f0 +/* 34E394 E0038674 00000000 */ nop +/* 34E398 E0038678 46800020 */ cvt.s.w $f0, $f0 +/* 34E39C E003867C 461A0003 */ div.s $f0, $f0, $f26 +/* 34E3A0 E0038680 4600A500 */ add.s $f20, $f20, $f0 +/* 34E3A4 E0038684 E6140014 */ swc1 $f20, 0x14($s0) +.LE0038688: +/* 34E3A8 E0038688 C606FFF8 */ lwc1 $f6, -8($s0) +/* 34E3AC E003868C C6000004 */ lwc1 $f0, 4($s0) +/* 34E3B0 E0038690 C604FFFC */ lwc1 $f4, -4($s0) +/* 34E3B4 E0038694 46003180 */ add.s $f6, $f6, $f0 +/* 34E3B8 E0038698 C6000008 */ lwc1 $f0, 8($s0) +/* 34E3BC E003869C C602000C */ lwc1 $f2, 0xc($s0) +/* 34E3C0 E00386A0 46002100 */ add.s $f4, $f4, $f0 +/* 34E3C4 E00386A4 C6000000 */ lwc1 $f0, ($s0) +/* 34E3C8 E00386A8 26310001 */ addiu $s1, $s1, 1 +/* 34E3CC E00386AC 46020000 */ add.s $f0, $f0, $f2 +/* 34E3D0 E00386B0 E606FFF8 */ swc1 $f6, -8($s0) +/* 34E3D4 E00386B4 E604FFFC */ swc1 $f4, -4($s0) +/* 34E3D8 E00386B8 E6000000 */ swc1 $f0, ($s0) +/* 34E3DC E00386BC 8E820008 */ lw $v0, 8($s4) +/* 34E3E0 E00386C0 0222102A */ slt $v0, $s1, $v0 +/* 34E3E4 E00386C4 1440FF81 */ bnez $v0, .LE00384CC +/* 34E3E8 E00386C8 26100030 */ addiu $s0, $s0, 0x30 +.LE00386CC: +/* 34E3EC E00386CC 8FBF0028 */ lw $ra, 0x28($sp) +/* 34E3F0 E00386D0 8FB50024 */ lw $s5, 0x24($sp) +/* 34E3F4 E00386D4 8FB40020 */ lw $s4, 0x20($sp) +/* 34E3F8 E00386D8 8FB3001C */ lw $s3, 0x1c($sp) +/* 34E3FC E00386DC 8FB20018 */ lw $s2, 0x18($sp) +/* 34E400 E00386E0 8FB10014 */ lw $s1, 0x14($sp) +/* 34E404 E00386E4 8FB00010 */ lw $s0, 0x10($sp) +/* 34E408 E00386E8 D7BC0050 */ ldc1 $f28, 0x50($sp) +/* 34E40C E00386EC D7BA0048 */ ldc1 $f26, 0x48($sp) +/* 34E410 E00386F0 D7B80040 */ ldc1 $f24, 0x40($sp) +/* 34E414 E00386F4 D7B60038 */ ldc1 $f22, 0x38($sp) +/* 34E418 E00386F8 D7B40030 */ ldc1 $f20, 0x30($sp) +/* 34E41C E00386FC 03E00008 */ jr $ra +/* 34E420 E0038700 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_34DD20/func_E0038704.s b/asm/nonmatchings/code_34DD20/func_E0038704.s new file mode 100644 index 0000000000..0d4d2ed830 --- /dev/null +++ b/asm/nonmatchings/code_34DD20/func_E0038704.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0038704 +/* 34E424 E0038704 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 34E428 E0038708 3C02E004 */ lui $v0, %hi(D_E0038748) +/* 34E42C E003870C 24428748 */ addiu $v0, $v0, %lo(D_E0038748) +/* 34E430 E0038710 AFA2001C */ sw $v0, 0x1c($sp) +/* 34E434 E0038714 2402002D */ addiu $v0, $zero, 0x2d +/* 34E438 E0038718 AFA40018 */ sw $a0, 0x18($sp) +/* 34E43C E003871C 27A40010 */ addiu $a0, $sp, 0x10 +/* 34E440 E0038720 AFBF0020 */ sw $ra, 0x20($sp) +/* 34E444 E0038724 AFA00014 */ sw $zero, 0x14($sp) +/* 34E448 E0038728 0C080120 */ jal func_E0200480 +/* 34E44C E003872C AFA20010 */ sw $v0, 0x10($sp) +/* 34E450 E0038730 8C430000 */ lw $v1, ($v0) +/* 34E454 E0038734 34630002 */ ori $v1, $v1, 2 +/* 34E458 E0038738 AC430000 */ sw $v1, ($v0) +/* 34E45C E003873C 8FBF0020 */ lw $ra, 0x20($sp) +/* 34E460 E0038740 03E00008 */ jr $ra +/* 34E464 E0038744 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_34DD20/func_E0038748.s b/asm/nonmatchings/code_34DD20/func_E0038748.s new file mode 100644 index 0000000000..075f38bf58 --- /dev/null +++ b/asm/nonmatchings/code_34DD20/func_E0038748.s @@ -0,0 +1,176 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0038748 +/* 34E468 E0038748 27BDFF30 */ addiu $sp, $sp, -0xd0 +/* 34E46C E003874C AFB700B4 */ sw $s7, 0xb4($sp) +/* 34E470 E0038750 0080B82D */ daddu $s7, $a0, $zero +/* 34E474 E0038754 3C02DB06 */ lui $v0, 0xdb06 +/* 34E478 E0038758 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 34E47C E003875C 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 34E480 E0038760 34420024 */ ori $v0, $v0, 0x24 +/* 34E484 E0038764 AFBF00BC */ sw $ra, 0xbc($sp) +/* 34E488 E0038768 AFBE00B8 */ sw $fp, 0xb8($sp) +/* 34E48C E003876C AFB600B0 */ sw $s6, 0xb0($sp) +/* 34E490 E0038770 AFB500AC */ sw $s5, 0xac($sp) +/* 34E494 E0038774 AFB400A8 */ sw $s4, 0xa8($sp) +/* 34E498 E0038778 AFB300A4 */ sw $s3, 0xa4($sp) +/* 34E49C E003877C AFB200A0 */ sw $s2, 0xa0($sp) +/* 34E4A0 E0038780 AFB1009C */ sw $s1, 0x9c($sp) +/* 34E4A4 E0038784 AFB00098 */ sw $s0, 0x98($sp) +/* 34E4A8 E0038788 F7B600C8 */ sdc1 $f22, 0xc8($sp) +/* 34E4AC E003878C F7B400C0 */ sdc1 $f20, 0xc0($sp) +/* 34E4B0 E0038790 8CC40000 */ lw $a0, ($a2) +/* 34E4B4 E0038794 8EE7000C */ lw $a3, 0xc($s7) +/* 34E4B8 E0038798 0080282D */ daddu $a1, $a0, $zero +/* 34E4BC E003879C 24840008 */ addiu $a0, $a0, 8 +/* 34E4C0 E00387A0 ACC40000 */ sw $a0, ($a2) +/* 34E4C4 E00387A4 ACA20000 */ sw $v0, ($a1) +/* 34E4C8 E00387A8 24820008 */ addiu $v0, $a0, 8 +/* 34E4CC E00387AC ACC20000 */ sw $v0, ($a2) +/* 34E4D0 E00387B0 8EE30010 */ lw $v1, 0x10($s7) +/* 34E4D4 E00387B4 24820010 */ addiu $v0, $a0, 0x10 +/* 34E4D8 E00387B8 ACC20000 */ sw $v0, ($a2) +/* 34E4DC E00387BC 8C62001C */ lw $v0, 0x1c($v1) +/* 34E4E0 E00387C0 3C038000 */ lui $v1, 0x8000 +/* 34E4E4 E00387C4 00431021 */ addu $v0, $v0, $v1 +/* 34E4E8 E00387C8 ACA20004 */ sw $v0, 4($a1) +/* 34E4EC E00387CC 3C02DE00 */ lui $v0, 0xde00 +/* 34E4F0 E00387D0 AC820000 */ sw $v0, ($a0) +/* 34E4F4 E00387D4 3C020900 */ lui $v0, 0x900 +/* 34E4F8 E00387D8 24420440 */ addiu $v0, $v0, 0x440 +/* 34E4FC E00387DC AC820004 */ sw $v0, 4($a0) +/* 34E500 E00387E0 3C02FA00 */ lui $v0, 0xfa00 +/* 34E504 E00387E4 AC820008 */ sw $v0, 8($a0) +/* 34E508 E00387E8 90E20027 */ lbu $v0, 0x27($a3) +/* 34E50C E00387EC 2403FF00 */ addiu $v1, $zero, -0x100 +/* 34E510 E00387F0 00431025 */ or $v0, $v0, $v1 +/* 34E514 E00387F4 AC82000C */ sw $v0, 0xc($a0) +/* 34E518 E00387F8 8EE20008 */ lw $v0, 8($s7) +/* 34E51C E00387FC 1840006B */ blez $v0, .LE00389AC +/* 34E520 E0038800 0000902D */ daddu $s2, $zero, $zero +/* 34E524 E0038804 27B10058 */ addiu $s1, $sp, 0x58 +/* 34E528 E0038808 3C1E800B */ lui $fp, %hi(gCameras) +/* 34E52C E003880C 27DE1D80 */ addiu $fp, $fp, %lo(gCameras) +/* 34E530 E0038810 3C16800A */ lui $s6, %hi(D_8009A674) +/* 34E534 E0038814 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 34E538 E0038818 3C158007 */ lui $s5, %hi(D_800741F0) +/* 34E53C E003881C 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 34E540 E0038820 3C140001 */ lui $s4, 1 +/* 34E544 E0038824 36941630 */ ori $s4, $s4, 0x1630 +/* 34E548 E0038828 00C0982D */ daddu $s3, $a2, $zero +/* 34E54C E003882C 24F00020 */ addiu $s0, $a3, 0x20 +/* 34E550 E0038830 4480A000 */ mtc1 $zero, $f20 +/* 34E554 E0038834 3C013F80 */ lui $at, 0x3f80 +/* 34E558 E0038838 4481B000 */ mtc1 $at, $f22 +.LE003883C: +/* 34E55C E003883C 27A40018 */ addiu $a0, $sp, 0x18 +/* 34E560 E0038840 8E05FFE4 */ lw $a1, -0x1c($s0) +/* 34E564 E0038844 8E06FFE8 */ lw $a2, -0x18($s0) +/* 34E568 E0038848 8E07FFEC */ lw $a3, -0x14($s0) +/* 34E56C E003884C 0C080108 */ jal func_E0200420 +/* 34E570 E0038850 26520001 */ addiu $s2, $s2, 1 +/* 34E574 E0038854 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 34E578 E0038858 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 34E57C E003885C 4406A000 */ mfc1 $a2, $f20 +/* 34E580 E0038860 00031080 */ sll $v0, $v1, 2 +/* 34E584 E0038864 00431021 */ addu $v0, $v0, $v1 +/* 34E588 E0038868 00021080 */ sll $v0, $v0, 2 +/* 34E58C E003886C 00431023 */ subu $v0, $v0, $v1 +/* 34E590 E0038870 000218C0 */ sll $v1, $v0, 3 +/* 34E594 E0038874 00431021 */ addu $v0, $v0, $v1 +/* 34E598 E0038878 000210C0 */ sll $v0, $v0, 3 +/* 34E59C E003887C 005E1021 */ addu $v0, $v0, $fp +/* 34E5A0 E0038880 C440006C */ lwc1 $f0, 0x6c($v0) +/* 34E5A4 E0038884 4407B000 */ mfc1 $a3, $f22 +/* 34E5A8 E0038888 46000007 */ neg.s $f0, $f0 +/* 34E5AC E003888C 44050000 */ mfc1 $a1, $f0 +/* 34E5B0 E0038890 0220202D */ daddu $a0, $s1, $zero +/* 34E5B4 E0038894 0C080104 */ jal func_E0200410 +/* 34E5B8 E0038898 E7B40010 */ swc1 $f20, 0x10($sp) +/* 34E5BC E003889C 0220202D */ daddu $a0, $s1, $zero +/* 34E5C0 E00388A0 27A50018 */ addiu $a1, $sp, 0x18 +/* 34E5C4 E00388A4 0C080114 */ jal func_E0200450 +/* 34E5C8 E00388A8 00A0302D */ daddu $a2, $a1, $zero +/* 34E5CC E00388AC E7B60010 */ swc1 $f22, 0x10($sp) +/* 34E5D0 E00388B0 8E05FFFC */ lw $a1, -4($s0) +/* 34E5D4 E00388B4 4406A000 */ mfc1 $a2, $f20 +/* 34E5D8 E00388B8 4407A000 */ mfc1 $a3, $f20 +/* 34E5DC E00388BC 0C080104 */ jal func_E0200410 +/* 34E5E0 E00388C0 0220202D */ daddu $a0, $s1, $zero +/* 34E5E4 E00388C4 0220202D */ daddu $a0, $s1, $zero +/* 34E5E8 E00388C8 27A50018 */ addiu $a1, $sp, 0x18 +/* 34E5EC E00388CC 0C080114 */ jal func_E0200450 +/* 34E5F0 E00388D0 00A0302D */ daddu $a2, $a1, $zero +/* 34E5F4 E00388D4 0220202D */ daddu $a0, $s1, $zero +/* 34E5F8 E00388D8 8E050000 */ lw $a1, ($s0) +/* 34E5FC E00388DC 26100030 */ addiu $s0, $s0, 0x30 +/* 34E600 E00388E0 4407B000 */ mfc1 $a3, $f22 +/* 34E604 E00388E4 0C080110 */ jal func_E0200440 +/* 34E608 E00388E8 00A0302D */ daddu $a2, $a1, $zero +/* 34E60C E00388EC 0220202D */ daddu $a0, $s1, $zero +/* 34E610 E00388F0 27A50018 */ addiu $a1, $sp, 0x18 +/* 34E614 E00388F4 0C080114 */ jal func_E0200450 +/* 34E618 E00388F8 00A0302D */ daddu $a2, $a1, $zero +/* 34E61C E00388FC 27A40018 */ addiu $a0, $sp, 0x18 +/* 34E620 E0038900 96A50000 */ lhu $a1, ($s5) +/* 34E624 E0038904 8EC20000 */ lw $v0, ($s6) +/* 34E628 E0038908 00052980 */ sll $a1, $a1, 6 +/* 34E62C E003890C 00B42821 */ addu $a1, $a1, $s4 +/* 34E630 E0038910 0C080118 */ jal func_E0200460 +/* 34E634 E0038914 00452821 */ addu $a1, $v0, $a1 +/* 34E638 E0038918 3C05D838 */ lui $a1, 0xd838 +/* 34E63C E003891C 34A50002 */ ori $a1, $a1, 2 +/* 34E640 E0038920 8E640000 */ lw $a0, ($s3) +/* 34E644 E0038924 3C02E700 */ lui $v0, 0xe700 +/* 34E648 E0038928 0080182D */ daddu $v1, $a0, $zero +/* 34E64C E003892C 24840008 */ addiu $a0, $a0, 8 +/* 34E650 E0038930 AE640000 */ sw $a0, ($s3) +/* 34E654 E0038934 AC620000 */ sw $v0, ($v1) +/* 34E658 E0038938 24820008 */ addiu $v0, $a0, 8 +/* 34E65C E003893C AC600004 */ sw $zero, 4($v1) +/* 34E660 E0038940 AE620000 */ sw $v0, ($s3) +/* 34E664 E0038944 96A20000 */ lhu $v0, ($s5) +/* 34E668 E0038948 3C03DA38 */ lui $v1, 0xda38 +/* 34E66C E003894C AC830000 */ sw $v1, ($a0) +/* 34E670 E0038950 24430001 */ addiu $v1, $v0, 1 +/* 34E674 E0038954 3042FFFF */ andi $v0, $v0, 0xffff +/* 34E678 E0038958 00021180 */ sll $v0, $v0, 6 +/* 34E67C E003895C A6A30000 */ sh $v1, ($s5) +/* 34E680 E0038960 8EC30000 */ lw $v1, ($s6) +/* 34E684 E0038964 00541021 */ addu $v0, $v0, $s4 +/* 34E688 E0038968 00621821 */ addu $v1, $v1, $v0 +/* 34E68C E003896C 24820010 */ addiu $v0, $a0, 0x10 +/* 34E690 E0038970 AC830004 */ sw $v1, 4($a0) +/* 34E694 E0038974 AE620000 */ sw $v0, ($s3) +/* 34E698 E0038978 3C02DE00 */ lui $v0, 0xde00 +/* 34E69C E003897C AC820008 */ sw $v0, 8($a0) +/* 34E6A0 E0038980 3C020900 */ lui $v0, 0x900 +/* 34E6A4 E0038984 244204E8 */ addiu $v0, $v0, 0x4e8 +/* 34E6A8 E0038988 AC82000C */ sw $v0, 0xc($a0) +/* 34E6AC E003898C 24020040 */ addiu $v0, $zero, 0x40 +/* 34E6B0 E0038990 AC850010 */ sw $a1, 0x10($a0) +/* 34E6B4 E0038994 AC820014 */ sw $v0, 0x14($a0) +/* 34E6B8 E0038998 8EE20008 */ lw $v0, 8($s7) +/* 34E6BC E003899C 24840018 */ addiu $a0, $a0, 0x18 +/* 34E6C0 E00389A0 0242102A */ slt $v0, $s2, $v0 +/* 34E6C4 E00389A4 1440FFA5 */ bnez $v0, .LE003883C +/* 34E6C8 E00389A8 AE640000 */ sw $a0, ($s3) +.LE00389AC: +/* 34E6CC E00389AC 8FBF00BC */ lw $ra, 0xbc($sp) +/* 34E6D0 E00389B0 8FBE00B8 */ lw $fp, 0xb8($sp) +/* 34E6D4 E00389B4 8FB700B4 */ lw $s7, 0xb4($sp) +/* 34E6D8 E00389B8 8FB600B0 */ lw $s6, 0xb0($sp) +/* 34E6DC E00389BC 8FB500AC */ lw $s5, 0xac($sp) +/* 34E6E0 E00389C0 8FB400A8 */ lw $s4, 0xa8($sp) +/* 34E6E4 E00389C4 8FB300A4 */ lw $s3, 0xa4($sp) +/* 34E6E8 E00389C8 8FB200A0 */ lw $s2, 0xa0($sp) +/* 34E6EC E00389CC 8FB1009C */ lw $s1, 0x9c($sp) +/* 34E6F0 E00389D0 8FB00098 */ lw $s0, 0x98($sp) +/* 34E6F4 E00389D4 D7B600C8 */ ldc1 $f22, 0xc8($sp) +/* 34E6F8 E00389D8 D7B400C0 */ ldc1 $f20, 0xc0($sp) +/* 34E6FC E00389DC 03E00008 */ jr $ra +/* 34E700 E00389E0 27BD00D0 */ addiu $sp, $sp, 0xd0 +/* 34E704 E00389E4 00000000 */ nop +/* 34E708 E00389E8 00000000 */ nop +/* 34E70C E00389EC 00000000 */ nop diff --git a/asm/nonmatchings/code_353300/func_E0040000.s b/asm/nonmatchings/code_353300/func_E0040000.s new file mode 100644 index 0000000000..a23938b175 --- /dev/null +++ b/asm/nonmatchings/code_353300/func_E0040000.s @@ -0,0 +1,90 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0040000 +/* 353300 E0040000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 353304 E0040004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 353308 E0040008 4485A000 */ mtc1 $a1, $f20 +/* 35330C E004000C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 353310 E0040010 4486B000 */ mtc1 $a2, $f22 +/* 353314 E0040014 AFB00028 */ sw $s0, 0x28($sp) +/* 353318 E0040018 0080802D */ daddu $s0, $a0, $zero +/* 35331C E004001C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 353320 E0040020 4487C000 */ mtc1 $a3, $f24 +/* 353324 E0040024 27A40010 */ addiu $a0, $sp, 0x10 +/* 353328 E0040028 AFB20030 */ sw $s2, 0x30($sp) +/* 35332C E004002C 8FB20064 */ lw $s2, 0x64($sp) +/* 353330 E0040030 2A020004 */ slti $v0, $s0, 4 +/* 353334 E0040034 AFBF0034 */ sw $ra, 0x34($sp) +/* 353338 E0040038 14400002 */ bnez $v0, .LE0040044 +/* 35333C E004003C AFB1002C */ sw $s1, 0x2c($sp) +/* 353340 E0040040 24100003 */ addiu $s0, $zero, 3 +.LE0040044: +/* 353344 E0040044 3C02E004 */ lui $v0, %hi(D_E0040148) +/* 353348 E0040048 24420148 */ addiu $v0, $v0, %lo(D_E0040148) +/* 35334C E004004C AFA20018 */ sw $v0, 0x18($sp) +/* 353350 E0040050 3C02E004 */ lui $v0, %hi(D_E0040150) +/* 353354 E0040054 24420150 */ addiu $v0, $v0, %lo(D_E0040150) +/* 353358 E0040058 AFA2001C */ sw $v0, 0x1c($sp) +/* 35335C E004005C 3C02E004 */ lui $v0, %hi(D_E0040210) +/* 353360 E0040060 24420210 */ addiu $v0, $v0, %lo(D_E0040210) +/* 353364 E0040064 AFA20020 */ sw $v0, 0x20($sp) +/* 353368 E0040068 24020020 */ addiu $v0, $zero, 0x20 +/* 35336C E004006C AFA00010 */ sw $zero, 0x10($sp) +/* 353370 E0040070 AFA00024 */ sw $zero, 0x24($sp) +/* 353374 E0040074 0C080124 */ jal func_E0200490 +/* 353378 E0040078 AFA20014 */ sw $v0, 0x14($sp) +/* 35337C E004007C 24040034 */ addiu $a0, $zero, 0x34 +/* 353380 E0040080 0040882D */ daddu $s1, $v0, $zero +/* 353384 E0040084 24020001 */ addiu $v0, $zero, 1 +/* 353388 E0040088 0C08012C */ jal func_E02004B0 +/* 35338C E004008C AE220008 */ sw $v0, 8($s1) +/* 353390 E0040090 0040182D */ daddu $v1, $v0, $zero +/* 353394 E0040094 14600003 */ bnez $v1, .LE00400A4 +/* 353398 E0040098 AE22000C */ sw $v0, 0xc($s1) +.LE004009C: +/* 35339C E004009C 08010027 */ j .LE004009C +/* 3533A0 E00400A0 00000000 */ nop +.LE00400A4: +/* 3533A4 E00400A4 00101100 */ sll $v0, $s0, 4 +/* 3533A8 E00400A8 AC700000 */ sw $s0, ($v1) +/* 3533AC E00400AC AC600018 */ sw $zero, 0x18($v1) +/* 3533B0 E00400B0 E4740004 */ swc1 $f20, 4($v1) +/* 3533B4 E00400B4 E4760008 */ swc1 $f22, 8($v1) +/* 3533B8 E00400B8 E478000C */ swc1 $f24, 0xc($v1) +/* 3533BC E00400BC 3C01E004 */ lui $at, %hi(D_E0040848) +/* 3533C0 E00400C0 00220821 */ addu $at, $at, $v0 +/* 3533C4 E00400C4 90220848 */ lbu $v0, %lo(D_E0040848)($at) +/* 3533C8 E00400C8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3533CC E00400CC 44821000 */ mtc1 $v0, $f2 +/* 3533D0 E00400D0 00000000 */ nop +/* 3533D4 E00400D4 468010A0 */ cvt.s.w $f2, $f2 +/* 3533D8 E00400D8 46020002 */ mul.s $f0, $f0, $f2 +/* 3533DC E00400DC 00000000 */ nop +/* 3533E0 E00400E0 3C01E004 */ lui $at, %hi(D_E0040890) +/* 3533E4 E00400E4 D4220890 */ ldc1 $f2, %lo(D_E0040890)($at) +/* 3533E8 E00400E8 46000021 */ cvt.d.s $f0, $f0 +/* 3533EC E00400EC 46220002 */ mul.d $f0, $f0, $f2 +/* 3533F0 E00400F0 00000000 */ nop +/* 3533F4 E00400F4 3C013F80 */ lui $at, 0x3f80 +/* 3533F8 E00400F8 44811000 */ mtc1 $at, $f2 +/* 3533FC E00400FC AC60001C */ sw $zero, 0x1c($v1) +/* 353400 E0040100 AC600024 */ sw $zero, 0x24($v1) +/* 353404 E0040104 AC600020 */ sw $zero, 0x20($v1) +/* 353408 E0040108 E4620030 */ swc1 $f2, 0x30($v1) +/* 35340C E004010C E462002C */ swc1 $f2, 0x2c($v1) +/* 353410 E0040110 E4620028 */ swc1 $f2, 0x28($v1) +/* 353414 E0040114 46200020 */ cvt.s.d $f0, $f0 +/* 353418 E0040118 12400002 */ beqz $s2, .LE0040124 +/* 35341C E004011C E4600010 */ swc1 $f0, 0x10($v1) +/* 353420 E0040120 AE510000 */ sw $s1, ($s2) +.LE0040124: +/* 353424 E0040124 8FBF0034 */ lw $ra, 0x34($sp) +/* 353428 E0040128 8FB20030 */ lw $s2, 0x30($sp) +/* 35342C E004012C 8FB1002C */ lw $s1, 0x2c($sp) +/* 353430 E0040130 8FB00028 */ lw $s0, 0x28($sp) +/* 353434 E0040134 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 353438 E0040138 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 35343C E004013C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 353440 E0040140 03E00008 */ jr $ra +/* 353444 E0040144 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_353300/func_E0040148.s b/asm/nonmatchings/code_353300/func_E0040148.s new file mode 100644 index 0000000000..94c6234e51 --- /dev/null +++ b/asm/nonmatchings/code_353300/func_E0040148.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0040148 +/* 353448 E0040148 03E00008 */ jr $ra +/* 35344C E004014C 00000000 */ nop diff --git a/asm/nonmatchings/code_353300/func_E0040150.s b/asm/nonmatchings/code_353300/func_E0040150.s new file mode 100644 index 0000000000..ee7a99d53c --- /dev/null +++ b/asm/nonmatchings/code_353300/func_E0040150.s @@ -0,0 +1,58 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0040150 +/* 353450 E0040150 8C820008 */ lw $v0, 8($a0) +/* 353454 E0040154 8C83000C */ lw $v1, 0xc($a0) +/* 353458 E0040158 1840002B */ blez $v0, .LE0040208 +/* 35345C E004015C 0000282D */ daddu $a1, $zero, $zero +/* 353460 E0040160 24630024 */ addiu $v1, $v1, 0x24 +/* 353464 E0040164 3C014280 */ lui $at, 0x4280 +/* 353468 E0040168 44813000 */ mtc1 $at, $f6 +/* 35346C E004016C 44804000 */ mtc1 $zero, $f8 +/* 353470 E0040170 3C014300 */ lui $at, 0x4300 +/* 353474 E0040174 44812000 */ mtc1 $at, $f4 +.LE0040178: +/* 353478 E0040178 C462FFF8 */ lwc1 $f2, -8($v1) +/* 35347C E004017C C460FFFC */ lwc1 $f0, -4($v1) +/* 353480 E0040180 46001000 */ add.s $f0, $f2, $f0 +/* 353484 E0040184 4600303C */ c.lt.s $f6, $f0 +/* 353488 E0040188 00000000 */ nop +/* 35348C E004018C 45000003 */ bc1f .LE004019C +/* 353490 E0040190 E460FFF8 */ swc1 $f0, -8($v1) +/* 353494 E0040194 46060001 */ sub.s $f0, $f0, $f6 +/* 353498 E0040198 E460FFF8 */ swc1 $f0, -8($v1) +.LE004019C: +/* 35349C E004019C C460FFF8 */ lwc1 $f0, -8($v1) +/* 3534A0 E00401A0 4608003C */ c.lt.s $f0, $f8 +/* 3534A4 E00401A4 00000000 */ nop +/* 3534A8 E00401A8 45000003 */ bc1f .LE00401B8 +/* 3534AC E00401AC 00000000 */ nop +/* 3534B0 E00401B0 46060000 */ add.s $f0, $f0, $f6 +/* 3534B4 E00401B4 E460FFF8 */ swc1 $f0, -8($v1) +.LE00401B8: +/* 3534B8 E00401B8 C4620000 */ lwc1 $f2, ($v1) +/* 3534BC E00401BC C4600004 */ lwc1 $f0, 4($v1) +/* 3534C0 E00401C0 46001000 */ add.s $f0, $f2, $f0 +/* 3534C4 E00401C4 4600203C */ c.lt.s $f4, $f0 +/* 3534C8 E00401C8 00000000 */ nop +/* 3534CC E00401CC 45000003 */ bc1f .LE00401DC +/* 3534D0 E00401D0 E4600000 */ swc1 $f0, ($v1) +/* 3534D4 E00401D4 46040001 */ sub.s $f0, $f0, $f4 +/* 3534D8 E00401D8 E4600000 */ swc1 $f0, ($v1) +.LE00401DC: +/* 3534DC E00401DC C4600000 */ lwc1 $f0, ($v1) +/* 3534E0 E00401E0 4608003C */ c.lt.s $f0, $f8 +/* 3534E4 E00401E4 00000000 */ nop +/* 3534E8 E00401E8 45000003 */ bc1f .LE00401F8 +/* 3534EC E00401EC 24A50001 */ addiu $a1, $a1, 1 +/* 3534F0 E00401F0 46040000 */ add.s $f0, $f0, $f4 +/* 3534F4 E00401F4 E4600000 */ swc1 $f0, ($v1) +.LE00401F8: +/* 3534F8 E00401F8 8C820008 */ lw $v0, 8($a0) +/* 3534FC E00401FC 00A2102A */ slt $v0, $a1, $v0 +/* 353500 E0040200 1440FFDD */ bnez $v0, .LE0040178 +/* 353504 E0040204 24630034 */ addiu $v1, $v1, 0x34 +.LE0040208: +/* 353508 E0040208 03E00008 */ jr $ra +/* 35350C E004020C 00000000 */ nop diff --git a/asm/nonmatchings/code_353300/func_E0040210.s b/asm/nonmatchings/code_353300/func_E0040210.s new file mode 100644 index 0000000000..4c3f253b2c --- /dev/null +++ b/asm/nonmatchings/code_353300/func_E0040210.s @@ -0,0 +1,85 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0040210 +/* 353510 E0040210 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 353514 E0040214 AFB1004C */ sw $s1, 0x4c($sp) +/* 353518 E0040218 0080882D */ daddu $s1, $a0, $zero +/* 35351C E004021C AFBF0050 */ sw $ra, 0x50($sp) +/* 353520 E0040220 AFB00048 */ sw $s0, 0x48($sp) +/* 353524 E0040224 8E27000C */ lw $a3, 0xc($s1) +/* 353528 E0040228 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 35352C E004022C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 353530 E0040230 3C013F80 */ lui $at, 0x3f80 +/* 353534 E0040234 44810000 */ mtc1 $at, $f0 +/* 353538 E0040238 27A20038 */ addiu $v0, $sp, 0x38 +/* 35353C E004023C AFA20014 */ sw $v0, 0x14($sp) +/* 353540 E0040240 27A2003C */ addiu $v0, $sp, 0x3c +/* 353544 E0040244 AFA20018 */ sw $v0, 0x18($sp) +/* 353548 E0040248 27A20040 */ addiu $v0, $sp, 0x40 +/* 35354C E004024C AFA2001C */ sw $v0, 0x1c($sp) +/* 353550 E0040250 27A20044 */ addiu $v0, $sp, 0x44 +/* 353554 E0040254 AFA20020 */ sw $v0, 0x20($sp) +/* 353558 E0040258 00032080 */ sll $a0, $v1, 2 +/* 35355C E004025C 00832021 */ addu $a0, $a0, $v1 +/* 353560 E0040260 00042080 */ sll $a0, $a0, 2 +/* 353564 E0040264 00832023 */ subu $a0, $a0, $v1 +/* 353568 E0040268 000410C0 */ sll $v0, $a0, 3 +/* 35356C E004026C 00822021 */ addu $a0, $a0, $v0 +/* 353570 E0040270 000420C0 */ sll $a0, $a0, 3 +/* 353574 E0040274 3C02800B */ lui $v0, %hi(D_800B1E54) +/* 353578 E0040278 24421E54 */ addiu $v0, $v0, %lo(D_800B1E54) +/* 35357C E004027C E7A00010 */ swc1 $f0, 0x10($sp) +/* 353580 E0040280 8CE50004 */ lw $a1, 4($a3) +/* 353584 E0040284 8CE60008 */ lw $a2, 8($a3) +/* 353588 E0040288 8CE7000C */ lw $a3, 0xc($a3) +/* 35358C E004028C 0C080168 */ jal func_E02005A0 +/* 353590 E0040290 00822021 */ addu $a0, $a0, $v0 +/* 353594 E0040294 C7A00040 */ lwc1 $f0, 0x40($sp) +/* 353598 E0040298 3C01459C */ lui $at, 0x459c +/* 35359C E004029C 34214000 */ ori $at, $at, 0x4000 +/* 3535A0 E00402A0 44811000 */ mtc1 $at, $f2 +/* 3535A4 E00402A4 00000000 */ nop +/* 3535A8 E00402A8 46020000 */ add.s $f0, $f0, $f2 +/* 3535AC E00402AC 4600010D */ trunc.w.s $f4, $f0 +/* 3535B0 E00402B0 44032000 */ mfc1 $v1, $f4 +/* 3535B4 E00402B4 00000000 */ nop +/* 3535B8 E00402B8 04610003 */ bgez $v1, .LE00402C8 +/* 3535BC E00402BC 27B00028 */ addiu $s0, $sp, 0x28 +/* 3535C0 E00402C0 080100B5 */ j .LE00402D4 +/* 3535C4 E00402C4 0000182D */ daddu $v1, $zero, $zero +.LE00402C8: +/* 3535C8 E00402C8 28622711 */ slti $v0, $v1, 0x2711 +/* 3535CC E00402CC 50400001 */ beql $v0, $zero, .LE00402D4 +/* 3535D0 E00402D0 24032710 */ addiu $v1, $zero, 0x2710 +.LE00402D4: +/* 3535D4 E00402D4 C7A20044 */ lwc1 $f2, 0x44($sp) +/* 3535D8 E00402D8 3C01E004 */ lui $at, %hi(D_E0040898) +/* 3535DC E00402DC D4200898 */ ldc1 $f0, %lo(D_E0040898)($at) +/* 3535E0 E00402E0 460010A1 */ cvt.d.s $f2, $f2 +/* 3535E4 E00402E4 4620103C */ c.lt.d $f2, $f0 +/* 3535E8 E00402E8 00000000 */ nop +/* 3535EC E00402EC 45000008 */ bc1f .LE0040310 +/* 3535F0 E00402F0 0200202D */ daddu $a0, $s0, $zero +/* 3535F4 E00402F4 3C01E004 */ lui $at, %hi(D_E00408A0) +/* 3535F8 E00402F8 D42008A0 */ ldc1 $f0, %lo(D_E00408A0)($at) +/* 3535FC E00402FC 4622003C */ c.lt.d $f0, $f2 +/* 353600 E0040300 00000000 */ nop +/* 353604 E0040304 45030002 */ bc1tl .LE0040310 +/* 353608 E0040308 0000182D */ daddu $v1, $zero, $zero +/* 35360C E004030C 0200202D */ daddu $a0, $s0, $zero +.LE0040310: +/* 353610 E0040310 3C02E004 */ lui $v0, %hi(D_E0040348) +/* 353614 E0040314 24420348 */ addiu $v0, $v0, %lo(D_E0040348) +/* 353618 E0040318 AC82000C */ sw $v0, 0xc($a0) +/* 35361C E004031C 00031023 */ negu $v0, $v1 +/* 353620 E0040320 AC820004 */ sw $v0, 4($a0) +/* 353624 E0040324 24020011 */ addiu $v0, $zero, 0x11 +/* 353628 E0040328 AC910008 */ sw $s1, 8($a0) +/* 35362C E004032C 0C080120 */ jal func_E0200480 +/* 353630 E0040330 AC820000 */ sw $v0, ($a0) +/* 353634 E0040334 8FBF0050 */ lw $ra, 0x50($sp) +/* 353638 E0040338 8FB1004C */ lw $s1, 0x4c($sp) +/* 35363C E004033C 8FB00048 */ lw $s0, 0x48($sp) +/* 353640 E0040340 03E00008 */ jr $ra +/* 353644 E0040344 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_353300/func_E0040348.s b/asm/nonmatchings/code_353300/func_E0040348.s new file mode 100644 index 0000000000..891297ed05 --- /dev/null +++ b/asm/nonmatchings/code_353300/func_E0040348.s @@ -0,0 +1,323 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0040348 +/* 353648 E0040348 27BDFF08 */ addiu $sp, $sp, -0xf8 +/* 35364C E004034C 3C03DB06 */ lui $v1, 0xdb06 +/* 353650 E0040350 AFB400E8 */ sw $s4, 0xe8($sp) +/* 353654 E0040354 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 353658 E0040358 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 35365C E004035C 34630024 */ ori $v1, $v1, 0x24 +/* 353660 E0040360 AFB600F0 */ sw $s6, 0xf0($sp) +/* 353664 E0040364 3C16E700 */ lui $s6, 0xe700 +/* 353668 E0040368 3C0B8000 */ lui $t3, 0x8000 +/* 35366C E004036C AFBF00F4 */ sw $ra, 0xf4($sp) +/* 353670 E0040370 AFB500EC */ sw $s5, 0xec($sp) +/* 353674 E0040374 AFB300E4 */ sw $s3, 0xe4($sp) +/* 353678 E0040378 AFB200E0 */ sw $s2, 0xe0($sp) +/* 35367C E004037C AFB100DC */ sw $s1, 0xdc($sp) +/* 353680 E0040380 AFB000D8 */ sw $s0, 0xd8($sp) +/* 353684 E0040384 8E870000 */ lw $a3, ($s4) +/* 353688 E0040388 8C92000C */ lw $s2, 0xc($a0) +/* 35368C E004038C 3C014080 */ lui $at, 0x4080 +/* 353690 E0040390 44812000 */ mtc1 $at, $f4 +/* 353694 E0040394 00E0102D */ daddu $v0, $a3, $zero +/* 353698 E0040398 24E70008 */ addiu $a3, $a3, 8 +/* 35369C E004039C AE870000 */ sw $a3, ($s4) +/* 3536A0 E00403A0 8E4C0000 */ lw $t4, ($s2) +/* 3536A4 E00403A4 C640001C */ lwc1 $f0, 0x1c($s2) +/* 3536A8 E00403A8 C6420024 */ lwc1 $f2, 0x24($s2) +/* 3536AC E00403AC 3C108007 */ lui $s0, %hi(gCurrentCameraID) +/* 3536B0 E00403B0 26107410 */ addiu $s0, $s0, %lo(gCurrentCameraID) +/* 3536B4 E00403B4 AC560000 */ sw $s6, ($v0) +/* 3536B8 E00403B8 AC400004 */ sw $zero, 4($v0) +/* 3536BC E00403BC ACE30000 */ sw $v1, ($a3) +/* 3536C0 E00403C0 8C830010 */ lw $v1, 0x10($a0) +/* 3536C4 E00403C4 24E20008 */ addiu $v0, $a3, 8 +/* 3536C8 E00403C8 AE820000 */ sw $v0, ($s4) +/* 3536CC E00403CC 46040002 */ mul.s $f0, $f0, $f4 +/* 3536D0 E00403D0 00000000 */ nop +/* 3536D4 E00403D4 8C62001C */ lw $v0, 0x1c($v1) +/* 3536D8 E00403D8 3C15800B */ lui $s5, %hi(gCameras) +/* 3536DC E00403DC 26B51D80 */ addiu $s5, $s5, %lo(gCameras) +/* 3536E0 E00403E0 004B1021 */ addu $v0, $v0, $t3 +/* 3536E4 E00403E4 ACE20004 */ sw $v0, 4($a3) +/* 3536E8 E00403E8 8E030000 */ lw $v1, ($s0) +/* 3536EC E00403EC 46041082 */ mul.s $f2, $f2, $f4 +/* 3536F0 E00403F0 00000000 */ nop +/* 3536F4 E00403F4 00031080 */ sll $v0, $v1, 2 +/* 3536F8 E00403F8 00431021 */ addu $v0, $v0, $v1 +/* 3536FC E00403FC 00021080 */ sll $v0, $v0, 2 +/* 353700 E0040400 00431023 */ subu $v0, $v0, $v1 +/* 353704 E0040404 000218C0 */ sll $v1, $v0, 3 +/* 353708 E0040408 00431021 */ addu $v0, $v0, $v1 +/* 35370C E004040C 000210C0 */ sll $v0, $v0, 3 +/* 353710 E0040410 00554021 */ addu $t0, $v0, $s5 +/* 353714 E0040414 3C028007 */ lui $v0, %hi(gGameStatusPtr) +/* 353718 E0040418 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) +/* 35371C E004041C 3C04E004 */ lui $a0, %hi(D_E0040880) +/* 353720 E0040420 24840880 */ addiu $a0, $a0, %lo(D_E0040880) +/* 353724 E0040424 94430134 */ lhu $v1, 0x134($v0) +/* 353728 E0040428 8C820000 */ lw $v0, ($a0) +/* 35372C E004042C 4600018D */ trunc.w.s $f6, $f0 +/* 353730 E0040430 440A3000 */ mfc1 $t2, $f6 +/* 353734 E0040434 4600118D */ trunc.w.s $f6, $f2 +/* 353738 E0040438 44093000 */ mfc1 $t1, $f6 +/* 35373C E004043C 1043005F */ beq $v0, $v1, .LE00405BC +/* 353740 E0040440 24E20010 */ addiu $v0, $a3, 0x10 +/* 353744 E0040444 3C06FF10 */ lui $a2, 0xff10 +/* 353748 E0040448 34C6013F */ ori $a2, $a2, 0x13f +/* 35374C E004044C 3C05DE00 */ lui $a1, 0xde00 +/* 353750 E0040450 AC830000 */ sw $v1, ($a0) +/* 353754 E0040454 AE820000 */ sw $v0, ($s4) +/* 353758 E0040458 3C020900 */ lui $v0, 0x900 +/* 35375C E004045C 24420918 */ addiu $v0, $v0, 0x918 +/* 353760 E0040460 31430FFF */ andi $v1, $t2, 0xfff +/* 353764 E0040464 00031B00 */ sll $v1, $v1, 0xc +/* 353768 E0040468 ACE2000C */ sw $v0, 0xc($a3) +/* 35376C E004046C 31220FFF */ andi $v0, $t1, 0xfff +/* 353770 E0040470 3C04F200 */ lui $a0, 0xf200 +/* 353774 E0040474 00441025 */ or $v0, $v0, $a0 +/* 353778 E0040478 00621825 */ or $v1, $v1, $v0 +/* 35377C E004047C 25420080 */ addiu $v0, $t2, 0x80 +/* 353780 E0040480 30420FFF */ andi $v0, $v0, 0xfff +/* 353784 E0040484 00021300 */ sll $v0, $v0, 0xc +/* 353788 E0040488 ACE30010 */ sw $v1, 0x10($a3) +/* 35378C E004048C 25230100 */ addiu $v1, $t1, 0x100 +/* 353790 E0040490 30630FFF */ andi $v1, $v1, 0xfff +/* 353794 E0040494 3C040100 */ lui $a0, 0x100 +/* 353798 E0040498 00641825 */ or $v1, $v1, $a0 +/* 35379C E004049C 00431025 */ or $v0, $v0, $v1 +/* 3537A0 E00404A0 ACE20014 */ sw $v0, 0x14($a3) +/* 3537A4 E00404A4 3C020900 */ lui $v0, 0x900 +/* 3537A8 E00404A8 244209E0 */ addiu $v0, $v0, 0x9e0 +/* 3537AC E00404AC 3C03800A */ lui $v1, %hi(D_8009A64C) +/* 3537B0 E00404B0 8C63A64C */ lw $v1, %lo(D_8009A64C)($v1) +/* 3537B4 E00404B4 3C04ED00 */ lui $a0, 0xed00 +/* 3537B8 E00404B8 ACE50008 */ sw $a1, 8($a3) +/* 3537BC E00404BC ACE50018 */ sw $a1, 0x18($a3) +/* 3537C0 E00404C0 ACE2001C */ sw $v0, 0x1c($a3) +/* 3537C4 E00404C4 ACE60020 */ sw $a2, 0x20($a3) +/* 3537C8 E00404C8 006B1821 */ addu $v1, $v1, $t3 +/* 3537CC E00404CC ACE30024 */ sw $v1, 0x24($a3) +/* 3537D0 E00404D0 8502000E */ lh $v0, 0xe($t0) +/* 3537D4 E00404D4 24E30018 */ addiu $v1, $a3, 0x18 +/* 3537D8 E00404D8 44821000 */ mtc1 $v0, $f2 +/* 3537DC E00404DC 00000000 */ nop +/* 3537E0 E00404E0 468010A0 */ cvt.s.w $f2, $f2 +/* 3537E4 E00404E4 46041082 */ mul.s $f2, $f2, $f4 +/* 3537E8 E00404E8 00000000 */ nop +/* 3537EC E00404EC AE830000 */ sw $v1, ($s4) +/* 3537F0 E00404F0 85020010 */ lh $v0, 0x10($t0) +/* 3537F4 E00404F4 24E30020 */ addiu $v1, $a3, 0x20 +/* 3537F8 E00404F8 44820000 */ mtc1 $v0, $f0 +/* 3537FC E00404FC 00000000 */ nop +/* 353800 E0040500 46800020 */ cvt.s.w $f0, $f0 +/* 353804 E0040504 46040002 */ mul.s $f0, $f0, $f4 +/* 353808 E0040508 00000000 */ nop +/* 35380C E004050C AE830000 */ sw $v1, ($s4) +/* 353810 E0040510 4600118D */ trunc.w.s $f6, $f2 +/* 353814 E0040514 44023000 */ mfc1 $v0, $f6 +/* 353818 E0040518 00000000 */ nop +/* 35381C E004051C 30420FFF */ andi $v0, $v0, 0xfff +/* 353820 E0040520 00021300 */ sll $v0, $v0, 0xc +/* 353824 E0040524 4600018D */ trunc.w.s $f6, $f0 +/* 353828 E0040528 44033000 */ mfc1 $v1, $f6 +/* 35382C E004052C 00000000 */ nop +/* 353830 E0040530 30630FFF */ andi $v1, $v1, 0xfff +/* 353834 E0040534 00641825 */ or $v1, $v1, $a0 +/* 353838 E0040538 00431025 */ or $v0, $v0, $v1 +/* 35383C E004053C ACE20028 */ sw $v0, 0x28($a3) +/* 353840 E0040540 8503000E */ lh $v1, 0xe($t0) +/* 353844 E0040544 8504000A */ lh $a0, 0xa($t0) +/* 353848 E0040548 24E20028 */ addiu $v0, $a3, 0x28 +/* 35384C E004054C AE820000 */ sw $v0, ($s4) +/* 353850 E0040550 85020010 */ lh $v0, 0x10($t0) +/* 353854 E0040554 00641821 */ addu $v1, $v1, $a0 +/* 353858 E0040558 44831000 */ mtc1 $v1, $f2 +/* 35385C E004055C 00000000 */ nop +/* 353860 E0040560 468010A0 */ cvt.s.w $f2, $f2 +/* 353864 E0040564 46041082 */ mul.s $f2, $f2, $f4 +/* 353868 E0040568 00000000 */ nop +/* 35386C E004056C 8503000C */ lh $v1, 0xc($t0) +/* 353870 E0040570 24E40030 */ addiu $a0, $a3, 0x30 +/* 353874 E0040574 00431021 */ addu $v0, $v0, $v1 +/* 353878 E0040578 44820000 */ mtc1 $v0, $f0 +/* 35387C E004057C 00000000 */ nop +/* 353880 E0040580 46800020 */ cvt.s.w $f0, $f0 +/* 353884 E0040584 46040002 */ mul.s $f0, $f0, $f4 +/* 353888 E0040588 00000000 */ nop +/* 35388C E004058C AE840000 */ sw $a0, ($s4) +/* 353890 E0040590 4600118D */ trunc.w.s $f6, $f2 +/* 353894 E0040594 44023000 */ mfc1 $v0, $f6 +/* 353898 E0040598 00000000 */ nop +/* 35389C E004059C 30420FFF */ andi $v0, $v0, 0xfff +/* 3538A0 E00405A0 00021300 */ sll $v0, $v0, 0xc +/* 3538A4 E00405A4 4600018D */ trunc.w.s $f6, $f0 +/* 3538A8 E00405A8 44033000 */ mfc1 $v1, $f6 +/* 3538AC E00405AC 00000000 */ nop +/* 3538B0 E00405B0 30630FFF */ andi $v1, $v1, 0xfff +/* 3538B4 E00405B4 00431025 */ or $v0, $v0, $v1 +/* 3538B8 E00405B8 ACE2002C */ sw $v0, 0x2c($a3) +.LE00405BC: +/* 3538BC E00405BC 3C13DE00 */ lui $s3, 0xde00 +/* 3538C0 E00405C0 3C02E004 */ lui $v0, %hi(D_E0040840) +/* 3538C4 E00405C4 24420840 */ addiu $v0, $v0, %lo(D_E0040840) +/* 3538C8 E00405C8 000C3100 */ sll $a2, $t4, 4 +/* 3538CC E00405CC 8E850000 */ lw $a1, ($s4) +/* 3538D0 E00405D0 00C23021 */ addu $a2, $a2, $v0 +/* 3538D4 E00405D4 00A0202D */ daddu $a0, $a1, $zero +/* 3538D8 E00405D8 24A50008 */ addiu $a1, $a1, 8 +/* 3538DC E00405DC AE850000 */ sw $a1, ($s4) +/* 3538E0 E00405E0 AC930000 */ sw $s3, ($a0) +/* 3538E4 E00405E4 8CC3000C */ lw $v1, 0xc($a2) +/* 3538E8 E00405E8 24A20008 */ addiu $v0, $a1, 8 +/* 3538EC E00405EC AE820000 */ sw $v0, ($s4) +/* 3538F0 E00405F0 3C02EB00 */ lui $v0, 0xeb00 +/* 3538F4 E00405F4 AC830004 */ sw $v1, 4($a0) +/* 3538F8 E00405F8 ACA20000 */ sw $v0, ($a1) +/* 3538FC E00405FC 90C30003 */ lbu $v1, 3($a2) +/* 353900 E0040600 90C40000 */ lbu $a0, ($a2) +/* 353904 E0040604 24A20010 */ addiu $v0, $a1, 0x10 +/* 353908 E0040608 AE820000 */ sw $v0, ($s4) +/* 35390C E004060C 3C02EA00 */ lui $v0, 0xea00 +/* 353910 E0040610 ACA20008 */ sw $v0, 8($a1) +/* 353914 E0040614 00031A00 */ sll $v1, $v1, 8 +/* 353918 E0040618 00641825 */ or $v1, $v1, $a0 +/* 35391C E004061C ACA30004 */ sw $v1, 4($a1) +/* 353920 E0040620 90C40003 */ lbu $a0, 3($a2) +/* 353924 E0040624 90C30001 */ lbu $v1, 1($a2) +/* 353928 E0040628 90C70002 */ lbu $a3, 2($a2) +/* 35392C E004062C 24A20018 */ addiu $v0, $a1, 0x18 +/* 353930 E0040630 AE820000 */ sw $v0, ($s4) +/* 353934 E0040634 3C02FA00 */ lui $v0, 0xfa00 +/* 353938 E0040638 ACA20010 */ sw $v0, 0x10($a1) +/* 35393C E004063C 00041600 */ sll $v0, $a0, 0x18 +/* 353940 E0040640 00031C00 */ sll $v1, $v1, 0x10 +/* 353944 E0040644 00431025 */ or $v0, $v0, $v1 +/* 353948 E0040648 00042200 */ sll $a0, $a0, 8 +/* 35394C E004064C 00441025 */ or $v0, $v0, $a0 +/* 353950 E0040650 00471025 */ or $v0, $v0, $a3 +/* 353954 E0040654 ACA2000C */ sw $v0, 0xc($a1) +/* 353958 E0040658 90C40007 */ lbu $a0, 7($a2) +/* 35395C E004065C 24A20020 */ addiu $v0, $a1, 0x20 +/* 353960 E0040660 AE820000 */ sw $v0, ($s4) +/* 353964 E0040664 3C02FB00 */ lui $v0, 0xfb00 +/* 353968 E0040668 ACA20018 */ sw $v0, 0x18($a1) +/* 35396C E004066C 00041600 */ sll $v0, $a0, 0x18 +/* 353970 E0040670 00041C00 */ sll $v1, $a0, 0x10 +/* 353974 E0040674 00431025 */ or $v0, $v0, $v1 +/* 353978 E0040678 00042200 */ sll $a0, $a0, 8 +/* 35397C E004067C 00441025 */ or $v0, $v0, $a0 +/* 353980 E0040680 ACA20014 */ sw $v0, 0x14($a1) +/* 353984 E0040684 90C20004 */ lbu $v0, 4($a2) +/* 353988 E0040688 90C40005 */ lbu $a0, 5($a2) +/* 35398C E004068C 90C30006 */ lbu $v1, 6($a2) +/* 353990 E0040690 00021600 */ sll $v0, $v0, 0x18 +/* 353994 E0040694 00042400 */ sll $a0, $a0, 0x10 +/* 353998 E0040698 00441025 */ or $v0, $v0, $a0 +/* 35399C E004069C 00031A00 */ sll $v1, $v1, 8 +/* 3539A0 E00406A0 00431025 */ or $v0, $v0, $v1 +/* 3539A4 E00406A4 ACA2001C */ sw $v0, 0x1c($a1) +/* 3539A8 E00406A8 8E450004 */ lw $a1, 4($s2) +/* 3539AC E00406AC 8E460008 */ lw $a2, 8($s2) +/* 3539B0 E00406B0 8E47000C */ lw $a3, 0xc($s2) +/* 3539B4 E00406B4 0C080108 */ jal func_E0200420 +/* 3539B8 E00406B8 27A40018 */ addiu $a0, $sp, 0x18 +/* 3539BC E00406BC 27B10058 */ addiu $s1, $sp, 0x58 +/* 3539C0 E00406C0 8E030000 */ lw $v1, ($s0) +/* 3539C4 E00406C4 44800000 */ mtc1 $zero, $f0 +/* 3539C8 E00406C8 00031080 */ sll $v0, $v1, 2 +/* 3539CC E00406CC 00431021 */ addu $v0, $v0, $v1 +/* 3539D0 E00406D0 00021080 */ sll $v0, $v0, 2 +/* 3539D4 E00406D4 00431023 */ subu $v0, $v0, $v1 +/* 3539D8 E00406D8 000218C0 */ sll $v1, $v0, 3 +/* 3539DC E00406DC 00431021 */ addu $v0, $v0, $v1 +/* 3539E0 E00406E0 000210C0 */ sll $v0, $v0, 3 +/* 3539E4 E00406E4 00551021 */ addu $v0, $v0, $s5 +/* 3539E8 E00406E8 44060000 */ mfc1 $a2, $f0 +/* 3539EC E00406EC C440006C */ lwc1 $f0, 0x6c($v0) +/* 3539F0 E00406F0 3C073F80 */ lui $a3, 0x3f80 +/* 3539F4 E00406F4 46000007 */ neg.s $f0, $f0 +/* 3539F8 E00406F8 44050000 */ mfc1 $a1, $f0 +/* 3539FC E00406FC 0220202D */ daddu $a0, $s1, $zero +/* 353A00 E0040700 0C080104 */ jal func_E0200410 +/* 353A04 E0040704 AFA60010 */ sw $a2, 0x10($sp) +/* 353A08 E0040708 0220202D */ daddu $a0, $s1, $zero +/* 353A0C E004070C 27A50018 */ addiu $a1, $sp, 0x18 +/* 353A10 E0040710 27B00098 */ addiu $s0, $sp, 0x98 +/* 353A14 E0040714 0C080114 */ jal func_E0200450 +/* 353A18 E0040718 0200302D */ daddu $a2, $s0, $zero +/* 353A1C E004071C C6420010 */ lwc1 $f2, 0x10($s2) +/* 353A20 E0040720 C6400030 */ lwc1 $f0, 0x30($s2) +/* 353A24 E0040724 46001002 */ mul.s $f0, $f2, $f0 +/* 353A28 E0040728 00000000 */ nop +/* 353A2C E004072C 44050000 */ mfc1 $a1, $f0 +/* 353A30 E0040730 C640002C */ lwc1 $f0, 0x2c($s2) +/* 353A34 E0040734 46001002 */ mul.s $f0, $f2, $f0 +/* 353A38 E0040738 00000000 */ nop +/* 353A3C E004073C 0220202D */ daddu $a0, $s1, $zero +/* 353A40 E0040740 44071000 */ mfc1 $a3, $f2 +/* 353A44 E0040744 3C120001 */ lui $s2, 1 +/* 353A48 E0040748 44060000 */ mfc1 $a2, $f0 +/* 353A4C E004074C 0C080110 */ jal func_E0200440 +/* 353A50 E0040750 36521630 */ ori $s2, $s2, 0x1630 +/* 353A54 E0040754 0220202D */ daddu $a0, $s1, $zero +/* 353A58 E0040758 0200282D */ daddu $a1, $s0, $zero +/* 353A5C E004075C 0C080114 */ jal func_E0200450 +/* 353A60 E0040760 0200302D */ daddu $a2, $s0, $zero +/* 353A64 E0040764 0200202D */ daddu $a0, $s0, $zero +/* 353A68 E0040768 3C108007 */ lui $s0, %hi(D_800741F0) +/* 353A6C E004076C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 353A70 E0040770 3C11800A */ lui $s1, %hi(D_8009A674) +/* 353A74 E0040774 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 353A78 E0040778 96050000 */ lhu $a1, ($s0) +/* 353A7C E004077C 8E220000 */ lw $v0, ($s1) +/* 353A80 E0040780 00052980 */ sll $a1, $a1, 6 +/* 353A84 E0040784 00B22821 */ addu $a1, $a1, $s2 +/* 353A88 E0040788 0C080118 */ jal func_E0200460 +/* 353A8C E004078C 00452821 */ addu $a1, $v0, $a1 +/* 353A90 E0040790 3C06D838 */ lui $a2, 0xd838 +/* 353A94 E0040794 8E840000 */ lw $a0, ($s4) +/* 353A98 E0040798 34C60002 */ ori $a2, $a2, 2 +/* 353A9C E004079C 0080282D */ daddu $a1, $a0, $zero +/* 353AA0 E00407A0 24840008 */ addiu $a0, $a0, 8 +/* 353AA4 E00407A4 AE840000 */ sw $a0, ($s4) +/* 353AA8 E00407A8 96020000 */ lhu $v0, ($s0) +/* 353AAC E00407AC 3C03DA38 */ lui $v1, 0xda38 +/* 353AB0 E00407B0 ACA30000 */ sw $v1, ($a1) +/* 353AB4 E00407B4 24430001 */ addiu $v1, $v0, 1 +/* 353AB8 E00407B8 3042FFFF */ andi $v0, $v0, 0xffff +/* 353ABC E00407BC 00021180 */ sll $v0, $v0, 6 +/* 353AC0 E00407C0 A6030000 */ sh $v1, ($s0) +/* 353AC4 E00407C4 8E230000 */ lw $v1, ($s1) +/* 353AC8 E00407C8 00521021 */ addu $v0, $v0, $s2 +/* 353ACC E00407CC 00621821 */ addu $v1, $v1, $v0 +/* 353AD0 E00407D0 24820008 */ addiu $v0, $a0, 8 +/* 353AD4 E00407D4 ACA30004 */ sw $v1, 4($a1) +/* 353AD8 E00407D8 AE820000 */ sw $v0, ($s4) +/* 353ADC E00407DC 3C020900 */ lui $v0, 0x900 +/* 353AE0 E00407E0 244208F8 */ addiu $v0, $v0, 0x8f8 +/* 353AE4 E00407E4 AC820004 */ sw $v0, 4($a0) +/* 353AE8 E00407E8 24820010 */ addiu $v0, $a0, 0x10 +/* 353AEC E00407EC AC930000 */ sw $s3, ($a0) +/* 353AF0 E00407F0 AE820000 */ sw $v0, ($s4) +/* 353AF4 E00407F4 24020040 */ addiu $v0, $zero, 0x40 +/* 353AF8 E00407F8 AC82000C */ sw $v0, 0xc($a0) +/* 353AFC E00407FC 24820018 */ addiu $v0, $a0, 0x18 +/* 353B00 E0040800 AC860008 */ sw $a2, 8($a0) +/* 353B04 E0040804 AE820000 */ sw $v0, ($s4) +/* 353B08 E0040808 AC960010 */ sw $s6, 0x10($a0) +/* 353B0C E004080C AC800014 */ sw $zero, 0x14($a0) +/* 353B10 E0040810 8FBF00F4 */ lw $ra, 0xf4($sp) +/* 353B14 E0040814 8FB600F0 */ lw $s6, 0xf0($sp) +/* 353B18 E0040818 8FB500EC */ lw $s5, 0xec($sp) +/* 353B1C E004081C 8FB400E8 */ lw $s4, 0xe8($sp) +/* 353B20 E0040820 8FB300E4 */ lw $s3, 0xe4($sp) +/* 353B24 E0040824 8FB200E0 */ lw $s2, 0xe0($sp) +/* 353B28 E0040828 8FB100DC */ lw $s1, 0xdc($sp) +/* 353B2C E004082C 8FB000D8 */ lw $s0, 0xd8($sp) +/* 353B30 E0040830 03E00008 */ jr $ra +/* 353B34 E0040834 27BD00F8 */ addiu $sp, $sp, 0xf8 +/* 353B38 E0040838 00000000 */ nop +/* 353B3C E004083C 00000000 */ nop diff --git a/asm/nonmatchings/code_3547A0/func_E0042000.s b/asm/nonmatchings/code_3547A0/func_E0042000.s new file mode 100644 index 0000000000..9b143958df --- /dev/null +++ b/asm/nonmatchings/code_3547A0/func_E0042000.s @@ -0,0 +1,147 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0042000 +/* 3547A0 E0042000 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 3547A4 E0042004 F7BE00A8 */ sdc1 $f30, 0xa8($sp) +/* 3547A8 E0042008 4485F000 */ mtc1 $a1, $f30 +/* 3547AC E004200C AFB30074 */ sw $s3, 0x74($sp) +/* 3547B0 E0042010 8FB300C8 */ lw $s3, 0xc8($sp) +/* 3547B4 E0042014 AFB40078 */ sw $s4, 0x78($sp) +/* 3547B8 E0042018 0080A02D */ daddu $s4, $a0, $zero +/* 3547BC E004201C F7BC00A0 */ sdc1 $f28, 0xa0($sp) +/* 3547C0 E0042020 C7BC00C0 */ lwc1 $f28, 0xc0($sp) +/* 3547C4 E0042024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3547C8 E0042028 AFBF007C */ sw $ra, 0x7c($sp) +/* 3547CC E004202C AFB20070 */ sw $s2, 0x70($sp) +/* 3547D0 E0042030 AFB1006C */ sw $s1, 0x6c($sp) +/* 3547D4 E0042034 AFB00068 */ sw $s0, 0x68($sp) +/* 3547D8 E0042038 F7BA0098 */ sdc1 $f26, 0x98($sp) +/* 3547DC E004203C F7B80090 */ sdc1 $f24, 0x90($sp) +/* 3547E0 E0042040 F7B60088 */ sdc1 $f22, 0x88($sp) +/* 3547E4 E0042044 F7B40080 */ sdc1 $f20, 0x80($sp) +/* 3547E8 E0042048 AFA600B8 */ sw $a2, 0xb8($sp) +/* 3547EC E004204C 12600069 */ beqz $s3, .LE00421F4 +/* 3547F0 E0042050 AFA700BC */ sw $a3, 0xbc($sp) +/* 3547F4 E0042054 26730001 */ addiu $s3, $s3, 1 +/* 3547F8 E0042058 3C02E004 */ lui $v0, %hi(D_E004222C) +/* 3547FC E004205C 2442222C */ addiu $v0, $v0, %lo(D_E004222C) +/* 354800 E0042060 AFA20018 */ sw $v0, 0x18($sp) +/* 354804 E0042064 3C02E004 */ lui $v0, %hi(D_E0042234) +/* 354808 E0042068 24422234 */ addiu $v0, $v0, %lo(D_E0042234) +/* 35480C E004206C AFA2001C */ sw $v0, 0x1c($sp) +/* 354810 E0042070 3C02E004 */ lui $v0, %hi(D_E0042374) +/* 354814 E0042074 24422374 */ addiu $v0, $v0, %lo(D_E0042374) +/* 354818 E0042078 AFA20020 */ sw $v0, 0x20($sp) +/* 35481C E004207C 24020021 */ addiu $v0, $zero, 0x21 +/* 354820 E0042080 AFA00010 */ sw $zero, 0x10($sp) +/* 354824 E0042084 AFA00024 */ sw $zero, 0x24($sp) +/* 354828 E0042088 0C080124 */ jal func_E0200490 +/* 35482C E004208C AFA20014 */ sw $v0, 0x14($sp) +/* 354830 E0042090 001320C0 */ sll $a0, $s3, 3 +/* 354834 E0042094 00932023 */ subu $a0, $a0, $s3 +/* 354838 E0042098 000420C0 */ sll $a0, $a0, 3 +/* 35483C E004209C 0040802D */ daddu $s0, $v0, $zero +/* 354840 E00420A0 0C08012C */ jal func_E02004B0 +/* 354844 E00420A4 AE130008 */ sw $s3, 8($s0) +/* 354848 E00420A8 0040882D */ daddu $s1, $v0, $zero +/* 35484C E00420AC 16200003 */ bnez $s1, .LE00420BC +/* 354850 E00420B0 AE11000C */ sw $s1, 0xc($s0) +.LE00420B4: +/* 354854 E00420B4 0801082D */ j .LE00420B4 +/* 354858 E00420B8 00000000 */ nop +.LE00420BC: +/* 35485C E00420BC AE340000 */ sw $s4, ($s1) +/* 354860 E00420C0 E63E0004 */ swc1 $f30, 4($s1) +/* 354864 E00420C4 C7A200B8 */ lwc1 $f2, 0xb8($sp) +/* 354868 E00420C8 2402001E */ addiu $v0, $zero, 0x1e +/* 35486C E00420CC E6220008 */ swc1 $f2, 8($s1) +/* 354870 E00420D0 C7A200BC */ lwc1 $f2, 0xbc($sp) +/* 354874 E00420D4 24120001 */ addiu $s2, $zero, 1 +/* 354878 E00420D8 AE220030 */ sw $v0, 0x30($s1) +/* 35487C E00420DC 240200FF */ addiu $v0, $zero, 0xff +/* 354880 E00420E0 AE22002C */ sw $v0, 0x2c($s1) +/* 354884 E00420E4 0253102A */ slt $v0, $s2, $s3 +/* 354888 E00420E8 AE200034 */ sw $zero, 0x34($s1) +/* 35488C E00420EC E622000C */ swc1 $f2, 0xc($s1) +/* 354890 E00420F0 10400040 */ beqz $v0, .LE00421F4 +/* 354894 E00420F4 26310038 */ addiu $s1, $s1, 0x38 +/* 354898 E00420F8 26300024 */ addiu $s0, $s1, 0x24 +/* 35489C E00420FC 3C014024 */ lui $at, 0x4024 +/* 3548A0 E0042100 4481D800 */ mtc1 $at, $f27 +/* 3548A4 E0042104 4480D000 */ mtc1 $zero, $f26 +.LE0042108: +/* 3548A8 E0042108 0C080138 */ jal func_E02004E0 +/* 3548AC E004210C 2404000A */ addiu $a0, $zero, 0xa +/* 3548B0 E0042110 32440002 */ andi $a0, $s2, 2 +/* 3548B4 E0042114 00121FC2 */ srl $v1, $s2, 0x1f +/* 3548B8 E0042118 02431821 */ addu $v1, $s2, $v1 +/* 3548BC E004211C 00031843 */ sra $v1, $v1, 1 +/* 3548C0 E0042120 00830018 */ mult $a0, $v1 +/* 3548C4 E0042124 3C013E80 */ lui $at, 0x3e80 +/* 3548C8 E0042128 44811000 */ mtc1 $at, $f2 +/* 3548CC E004212C 4482A000 */ mtc1 $v0, $f20 +/* 3548D0 E0042130 00000000 */ nop +/* 3548D4 E0042134 4680A520 */ cvt.s.w $f20, $f20 +/* 3548D8 E0042138 4602A502 */ mul.s $f20, $f20, $f2 +/* 3548DC E004213C 00000000 */ nop +/* 3548E0 E0042140 AE340000 */ sw $s4, ($s1) +/* 3548E4 E0042144 E61EFFE0 */ swc1 $f30, -0x20($s0) +/* 3548E8 E0042148 C7A200C4 */ lwc1 $f2, 0xc4($sp) +/* 3548EC E004214C 00004012 */ mflo $t0 +/* 3548F0 E0042150 00081080 */ sll $v0, $t0, 2 +/* 3548F4 E0042154 4482C000 */ mtc1 $v0, $f24 +/* 3548F8 E0042158 00000000 */ nop +/* 3548FC E004215C 4680C620 */ cvt.s.w $f24, $f24 +/* 354900 E0042160 46181600 */ add.s $f24, $f2, $f24 +/* 354904 E0042164 C7A200B8 */ lwc1 $f2, 0xb8($sp) +/* 354908 E0042168 E602FFE4 */ swc1 $f2, -0x1c($s0) +/* 35490C E004216C C7A200BC */ lwc1 $f2, 0xbc($sp) +/* 354910 E0042170 E602FFE8 */ swc1 $f2, -0x18($s0) +/* 354914 E0042174 3C0140A0 */ lui $at, 0x40a0 +/* 354918 E0042178 44811000 */ mtc1 $at, $f2 +/* 35491C E004217C 4600C306 */ mov.s $f12, $f24 +/* 354920 E0042180 0C080144 */ jal func_E0200510 +/* 354924 E0042184 4602A500 */ add.s $f20, $f20, $f2 +/* 354928 E0042188 4600E306 */ mov.s $f12, $f28 +/* 35492C E004218C 0C080140 */ jal func_E0200500 +/* 354930 E0042190 46000586 */ mov.s $f22, $f0 +/* 354934 E0042194 4600B582 */ mul.s $f22, $f22, $f0 +/* 354938 E0042198 00000000 */ nop +/* 35493C E004219C 26520001 */ addiu $s2, $s2, 1 +/* 354940 E00421A0 26310038 */ addiu $s1, $s1, 0x38 +/* 354944 E00421A4 4600C306 */ mov.s $f12, $f24 +/* 354948 E00421A8 0C080140 */ jal func_E0200500 +/* 35494C E00421AC E616FFEC */ swc1 $f22, -0x14($s0) +/* 354950 E00421B0 4600C306 */ mov.s $f12, $f24 +/* 354954 E00421B4 0C080144 */ jal func_E0200510 +/* 354958 E00421B8 E600FFF0 */ swc1 $f0, -0x10($s0) +/* 35495C E00421BC 4600E306 */ mov.s $f12, $f28 +/* 354960 E00421C0 0C080144 */ jal func_E0200510 +/* 354964 E00421C4 46000586 */ mov.s $f22, $f0 +/* 354968 E00421C8 E6140004 */ swc1 $f20, 4($s0) +/* 35496C E00421CC 4600A521 */ cvt.d.s $f20, $f20 +/* 354970 E00421D0 4600B582 */ mul.s $f22, $f22, $f0 +/* 354974 E00421D4 00000000 */ nop +/* 354978 E00421D8 463AA503 */ div.d $f20, $f20, $f26 +/* 35497C E00421DC 4620A520 */ cvt.s.d $f20, $f20 +/* 354980 E00421E0 0253102A */ slt $v0, $s2, $s3 +/* 354984 E00421E4 E6140000 */ swc1 $f20, ($s0) +/* 354988 E00421E8 E616FFF4 */ swc1 $f22, -0xc($s0) +/* 35498C E00421EC 1440FFC6 */ bnez $v0, .LE0042108 +/* 354990 E00421F0 26100038 */ addiu $s0, $s0, 0x38 +.LE00421F4: +/* 354994 E00421F4 8FBF007C */ lw $ra, 0x7c($sp) +/* 354998 E00421F8 8FB40078 */ lw $s4, 0x78($sp) +/* 35499C E00421FC 8FB30074 */ lw $s3, 0x74($sp) +/* 3549A0 E0042200 8FB20070 */ lw $s2, 0x70($sp) +/* 3549A4 E0042204 8FB1006C */ lw $s1, 0x6c($sp) +/* 3549A8 E0042208 8FB00068 */ lw $s0, 0x68($sp) +/* 3549AC E004220C D7BE00A8 */ ldc1 $f30, 0xa8($sp) +/* 3549B0 E0042210 D7BC00A0 */ ldc1 $f28, 0xa0($sp) +/* 3549B4 E0042214 D7BA0098 */ ldc1 $f26, 0x98($sp) +/* 3549B8 E0042218 D7B80090 */ ldc1 $f24, 0x90($sp) +/* 3549BC E004221C D7B60088 */ ldc1 $f22, 0x88($sp) +/* 3549C0 E0042220 D7B40080 */ ldc1 $f20, 0x80($sp) +/* 3549C4 E0042224 03E00008 */ jr $ra +/* 3549C8 E0042228 27BD00B0 */ addiu $sp, $sp, 0xb0 diff --git a/asm/nonmatchings/code_3547A0/func_E004222C.s b/asm/nonmatchings/code_3547A0/func_E004222C.s new file mode 100644 index 0000000000..80aebf4af4 --- /dev/null +++ b/asm/nonmatchings/code_3547A0/func_E004222C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E004222C +/* 3549CC E004222C 03E00008 */ jr $ra +/* 3549D0 E0042230 00000000 */ nop diff --git a/asm/nonmatchings/code_3547A0/func_E0042234.s b/asm/nonmatchings/code_3547A0/func_E0042234.s new file mode 100644 index 0000000000..118638acfe --- /dev/null +++ b/asm/nonmatchings/code_3547A0/func_E0042234.s @@ -0,0 +1,89 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0042234 +/* 3549D4 E0042234 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3549D8 E0042238 AFBF0010 */ sw $ra, 0x10($sp) +/* 3549DC E004223C 8C83000C */ lw $v1, 0xc($a0) +/* 3549E0 E0042240 8C620030 */ lw $v0, 0x30($v1) +/* 3549E4 E0042244 2442FFFF */ addiu $v0, $v0, -1 +/* 3549E8 E0042248 AC620030 */ sw $v0, 0x30($v1) +/* 3549EC E004224C 8C620034 */ lw $v0, 0x34($v1) +/* 3549F0 E0042250 8C650030 */ lw $a1, 0x30($v1) +/* 3549F4 E0042254 24420001 */ addiu $v0, $v0, 1 +/* 3549F8 E0042258 04A10005 */ bgez $a1, .LE0042270 +/* 3549FC E004225C AC620034 */ sw $v0, 0x34($v1) +/* 354A00 E0042260 0C080128 */ jal func_E02004A0 +/* 354A04 E0042264 00000000 */ nop +/* 354A08 E0042268 080108DA */ j .LE0042368 +/* 354A0C E004226C 00000000 */ nop +.LE0042270: +/* 354A10 E0042270 28A6000A */ slti $a2, $a1, 0xa +/* 354A14 E0042274 10C00009 */ beqz $a2, .LE004229C +/* 354A18 E0042278 00000000 */ nop +/* 354A1C E004227C 3C01E004 */ lui $at, %hi(D_E00427B0) +/* 354A20 E0042280 D42227B0 */ ldc1 $f2, %lo(D_E00427B0)($at) +/* 354A24 E0042284 C460002C */ lwc1 $f0, 0x2c($v1) +/* 354A28 E0042288 46800021 */ cvt.d.w $f0, $f0 +/* 354A2C E004228C 46220002 */ mul.d $f0, $f0, $f2 +/* 354A30 E0042290 00000000 */ nop +/* 354A34 E0042294 4620040D */ trunc.w.d $f16, $f0 +/* 354A38 E0042298 E470002C */ swc1 $f16, 0x2c($v1) +.LE004229C: +/* 354A3C E004229C 8C820008 */ lw $v0, 8($a0) +/* 354A40 E00422A0 24050001 */ addiu $a1, $zero, 1 +/* 354A44 E00422A4 00A2102A */ slt $v0, $a1, $v0 +/* 354A48 E00422A8 1040002F */ beqz $v0, .LE0042368 +/* 354A4C E00422AC 24630038 */ addiu $v1, $v1, 0x38 +/* 354A50 E00422B0 24630024 */ addiu $v1, $v1, 0x24 +/* 354A54 E00422B4 3C01E004 */ lui $at, %hi(D_E00427B8) +/* 354A58 E00422B8 D42E27B8 */ ldc1 $f14, %lo(D_E00427B8)($at) +/* 354A5C E00422BC 3C014024 */ lui $at, 0x4024 +/* 354A60 E00422C0 44816800 */ mtc1 $at, $f13 +/* 354A64 E00422C4 44806000 */ mtc1 $zero, $f12 +.LE00422C8: +/* 354A68 E00422C8 C4660004 */ lwc1 $f6, 4($v1) +/* 354A6C E00422CC 460031A1 */ cvt.d.s $f6, $f6 +/* 354A70 E00422D0 462E3182 */ mul.d $f6, $f6, $f14 +/* 354A74 E00422D4 00000000 */ nop +/* 354A78 E00422D8 C4620004 */ lwc1 $f2, 4($v1) +/* 354A7C E00422DC C460FFEC */ lwc1 $f0, -0x14($v1) +/* 354A80 E00422E0 46001082 */ mul.s $f2, $f2, $f0 +/* 354A84 E00422E4 00000000 */ nop +/* 354A88 E00422E8 C46A0004 */ lwc1 $f10, 4($v1) +/* 354A8C E00422EC C460FFF0 */ lwc1 $f0, -0x10($v1) +/* 354A90 E00422F0 46005282 */ mul.s $f10, $f10, $f0 +/* 354A94 E00422F4 00000000 */ nop +/* 354A98 E00422F8 C4680004 */ lwc1 $f8, 4($v1) +/* 354A9C E00422FC C460FFF4 */ lwc1 $f0, -0xc($v1) +/* 354AA0 E0042300 46004202 */ mul.s $f8, $f8, $f0 +/* 354AA4 E0042304 00000000 */ nop +/* 354AA8 E0042308 C464FFE0 */ lwc1 $f4, -0x20($v1) +/* 354AAC E004230C 46022100 */ add.s $f4, $f4, $f2 +/* 354AB0 E0042310 C462FFE4 */ lwc1 $f2, -0x1c($v1) +/* 354AB4 E0042314 460A1080 */ add.s $f2, $f2, $f10 +/* 354AB8 E0042318 C460FFE8 */ lwc1 $f0, -0x18($v1) +/* 354ABC E004231C 46080000 */ add.s $f0, $f0, $f8 +/* 354AC0 E0042320 E464FFE0 */ swc1 $f4, -0x20($v1) +/* 354AC4 E0042324 E462FFE4 */ swc1 $f2, -0x1c($v1) +/* 354AC8 E0042328 E460FFE8 */ swc1 $f0, -0x18($v1) +/* 354ACC E004232C 46203020 */ cvt.s.d $f0, $f6 +/* 354AD0 E0042330 10C00008 */ beqz $a2, .LE0042354 +/* 354AD4 E0042334 E4600004 */ swc1 $f0, 4($v1) +/* 354AD8 E0042338 46000021 */ cvt.d.s $f0, $f0 +/* 354ADC E004233C C4620000 */ lwc1 $f2, ($v1) +/* 354AE0 E0042340 462C0003 */ div.d $f0, $f0, $f12 +/* 354AE4 E0042344 460010A1 */ cvt.d.s $f2, $f2 +/* 354AE8 E0042348 46201080 */ add.d $f2, $f2, $f0 +/* 354AEC E004234C 462010A0 */ cvt.s.d $f2, $f2 +/* 354AF0 E0042350 E4620000 */ swc1 $f2, ($v1) +.LE0042354: +/* 354AF4 E0042354 24A50001 */ addiu $a1, $a1, 1 +/* 354AF8 E0042358 8C820008 */ lw $v0, 8($a0) +/* 354AFC E004235C 00A2102A */ slt $v0, $a1, $v0 +/* 354B00 E0042360 1440FFD9 */ bnez $v0, .LE00422C8 +/* 354B04 E0042364 24630038 */ addiu $v1, $v1, 0x38 +.LE0042368: +/* 354B08 E0042368 8FBF0010 */ lw $ra, 0x10($sp) +/* 354B0C E004236C 03E00008 */ jr $ra +/* 354B10 E0042370 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3547A0/func_E0042374.s b/asm/nonmatchings/code_3547A0/func_E0042374.s new file mode 100644 index 0000000000..51e8b6eb29 --- /dev/null +++ b/asm/nonmatchings/code_3547A0/func_E0042374.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0042374 +/* 354B14 E0042374 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 354B18 E0042378 3C02E004 */ lui $v0, %hi(D_E00423B8) +/* 354B1C E004237C 244223B8 */ addiu $v0, $v0, %lo(D_E00423B8) +/* 354B20 E0042380 AFA2001C */ sw $v0, 0x1c($sp) +/* 354B24 E0042384 2402002D */ addiu $v0, $zero, 0x2d +/* 354B28 E0042388 AFA40018 */ sw $a0, 0x18($sp) +/* 354B2C E004238C 27A40010 */ addiu $a0, $sp, 0x10 +/* 354B30 E0042390 AFBF0020 */ sw $ra, 0x20($sp) +/* 354B34 E0042394 AFA00014 */ sw $zero, 0x14($sp) +/* 354B38 E0042398 0C080120 */ jal func_E0200480 +/* 354B3C E004239C AFA20010 */ sw $v0, 0x10($sp) +/* 354B40 E00423A0 8C430000 */ lw $v1, ($v0) +/* 354B44 E00423A4 34630002 */ ori $v1, $v1, 2 +/* 354B48 E00423A8 AC430000 */ sw $v1, ($v0) +/* 354B4C E00423AC 8FBF0020 */ lw $ra, 0x20($sp) +/* 354B50 E00423B0 03E00008 */ jr $ra +/* 354B54 E00423B4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3547A0/func_E00423B8.s b/asm/nonmatchings/code_3547A0/func_E00423B8.s new file mode 100644 index 0000000000..40a97ea77c --- /dev/null +++ b/asm/nonmatchings/code_3547A0/func_E00423B8.s @@ -0,0 +1,248 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00423B8 +/* 354B58 E00423B8 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 354B5C E00423BC 3C05DB06 */ lui $a1, 0xdb06 +/* 354B60 E00423C0 34A50024 */ ori $a1, $a1, 0x24 +/* 354B64 E00423C4 3C0638E3 */ lui $a2, 0x38e3 +/* 354B68 E00423C8 34C68E39 */ ori $a2, $a2, 0x8e39 +/* 354B6C E00423CC 3C08800A */ lui $t0, %hi(D_8009A66C) +/* 354B70 E00423D0 2508A66C */ addiu $t0, $t0, %lo(D_8009A66C) +/* 354B74 E00423D4 3C02E700 */ lui $v0, 0xe700 +/* 354B78 E00423D8 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 354B7C E00423DC AFBE00C0 */ sw $fp, 0xc0($sp) +/* 354B80 E00423E0 AFB700BC */ sw $s7, 0xbc($sp) +/* 354B84 E00423E4 AFB600B8 */ sw $s6, 0xb8($sp) +/* 354B88 E00423E8 AFB500B4 */ sw $s5, 0xb4($sp) +/* 354B8C E00423EC AFB400B0 */ sw $s4, 0xb0($sp) +/* 354B90 E00423F0 AFB300AC */ sw $s3, 0xac($sp) +/* 354B94 E00423F4 AFB200A8 */ sw $s2, 0xa8($sp) +/* 354B98 E00423F8 AFB100A4 */ sw $s1, 0xa4($sp) +/* 354B9C E00423FC AFB000A0 */ sw $s0, 0xa0($sp) +/* 354BA0 E0042400 F7B600D0 */ sdc1 $f22, 0xd0($sp) +/* 354BA4 E0042404 F7B400C8 */ sdc1 $f20, 0xc8($sp) +/* 354BA8 E0042408 AFA400D8 */ sw $a0, 0xd8($sp) +/* 354BAC E004240C 8D040000 */ lw $a0, ($t0) +/* 354BB0 E0042410 8FA900D8 */ lw $t1, 0xd8($sp) +/* 354BB4 E0042414 0080182D */ daddu $v1, $a0, $zero +/* 354BB8 E0042418 8D27000C */ lw $a3, 0xc($t1) +/* 354BBC E004241C 24840008 */ addiu $a0, $a0, 8 +/* 354BC0 E0042420 AC620000 */ sw $v0, ($v1) +/* 354BC4 E0042424 AC600004 */ sw $zero, 4($v1) +/* 354BC8 E0042428 AC850000 */ sw $a1, ($a0) +/* 354BCC E004242C 8D220010 */ lw $v0, 0x10($t1) +/* 354BD0 E0042430 24150001 */ addiu $s5, $zero, 1 +/* 354BD4 E0042434 AD040000 */ sw $a0, ($t0) +/* 354BD8 E0042438 8C43001C */ lw $v1, 0x1c($v0) +/* 354BDC E004243C 3C02DE00 */ lui $v0, 0xde00 +/* 354BE0 E0042440 AC820008 */ sw $v0, 8($a0) +/* 354BE4 E0042444 3C020900 */ lui $v0, 0x900 +/* 354BE8 E0042448 244204C0 */ addiu $v0, $v0, 0x4c0 +/* 354BEC E004244C AC82000C */ sw $v0, 0xc($a0) +/* 354BF0 E0042450 3C028000 */ lui $v0, 0x8000 +/* 354BF4 E0042454 00621821 */ addu $v1, $v1, $v0 +/* 354BF8 E0042458 AC830004 */ sw $v1, 4($a0) +/* 354BFC E004245C 24830008 */ addiu $v1, $a0, 8 +/* 354C00 E0042460 8CE20034 */ lw $v0, 0x34($a3) +/* 354C04 E0042464 24840010 */ addiu $a0, $a0, 0x10 +/* 354C08 E0042468 AD030000 */ sw $v1, ($t0) +/* 354C0C E004246C 2442FFFF */ addiu $v0, $v0, -1 +/* 354C10 E0042470 02A21804 */ sllv $v1, $v0, $s5 +/* 354C14 E0042474 00629821 */ addu $s3, $v1, $v0 +/* 354C18 E0042478 02660018 */ mult $s3, $a2 +/* 354C1C E004247C AD040000 */ sw $a0, ($t0) +/* 354C20 E0042480 8CE9002C */ lw $t1, 0x2c($a3) +/* 354C24 E0042484 001317C3 */ sra $v0, $s3, 0x1f +/* 354C28 E0042488 AFA90098 */ sw $t1, 0x98($sp) +/* 354C2C E004248C 00004810 */ mfhi $t1 +/* 354C30 E0042490 000918C3 */ sra $v1, $t1, 3 +/* 354C34 E0042494 00621823 */ subu $v1, $v1, $v0 +/* 354C38 E0042498 000310C0 */ sll $v0, $v1, 3 +/* 354C3C E004249C 00431021 */ addu $v0, $v0, $v1 +/* 354C40 E00424A0 00021080 */ sll $v0, $v0, 2 +/* 354C44 E00424A4 8FA900D8 */ lw $t1, 0xd8($sp) +/* 354C48 E00424A8 02629823 */ subu $s3, $s3, $v0 +/* 354C4C E00424AC 8D220008 */ lw $v0, 8($t1) +/* 354C50 E00424B0 02A2102A */ slt $v0, $s5, $v0 +/* 354C54 E00424B4 104000A1 */ beqz $v0, .LE004273C +/* 354C58 E00424B8 24E70038 */ addiu $a3, $a3, 0x38 +/* 354C5C E00424BC 0100A02D */ daddu $s4, $t0, $zero +/* 354C60 E00424C0 3C1E38E3 */ lui $fp, 0x38e3 +/* 354C64 E00424C4 37DE8E39 */ ori $fp, $fp, 0x8e39 +/* 354C68 E00424C8 27B20058 */ addiu $s2, $sp, 0x58 +/* 354C6C E00424CC 3C090001 */ lui $t1, 1 +/* 354C70 E00424D0 35291630 */ ori $t1, $t1, 0x1630 +/* 354C74 E00424D4 24F00024 */ addiu $s0, $a3, 0x24 +/* 354C78 E00424D8 24170005 */ addiu $s7, $zero, 5 +/* 354C7C E00424DC 24160004 */ addiu $s6, $zero, 4 +/* 354C80 E00424E0 4480B000 */ mtc1 $zero, $f22 +/* 354C84 E00424E4 3C013F80 */ lui $at, 0x3f80 +/* 354C88 E00424E8 4481A000 */ mtc1 $at, $f20 +/* 354C8C E00424EC 26710003 */ addiu $s1, $s3, 3 +/* 354C90 E00424F0 AFA9009C */ sw $t1, 0x9c($sp) +.LE00424F4: +/* 354C94 E00424F4 27A40018 */ addiu $a0, $sp, 0x18 +/* 354C98 E00424F8 02773821 */ addu $a3, $s3, $s7 +/* 354C9C E00424FC 26F70003 */ addiu $s7, $s7, 3 +/* 354CA0 E0042500 02763021 */ addu $a2, $s3, $s6 +/* 354CA4 E0042504 26D60003 */ addiu $s6, $s6, 3 +/* 354CA8 E0042508 26B50001 */ addiu $s5, $s5, 1 +/* 354CAC E004250C 8E820000 */ lw $v0, ($s4) +/* 354CB0 E0042510 023E0018 */ mult $s1, $fp +/* 354CB4 E0042514 0040402D */ daddu $t0, $v0, $zero +/* 354CB8 E0042518 24420008 */ addiu $v0, $v0, 8 +/* 354CBC E004251C AE820000 */ sw $v0, ($s4) +/* 354CC0 E0042520 3C02FA00 */ lui $v0, 0xfa00 +/* 354CC4 E0042524 AD020000 */ sw $v0, ($t0) +/* 354CC8 E0042528 001117C3 */ sra $v0, $s1, 0x1f +/* 354CCC E004252C 00004810 */ mfhi $t1 +/* 354CD0 E0042530 000918C3 */ sra $v1, $t1, 3 +/* 354CD4 E0042534 00621823 */ subu $v1, $v1, $v0 +/* 354CD8 E0042538 000328C0 */ sll $a1, $v1, 3 +/* 354CDC E004253C 00A32821 */ addu $a1, $a1, $v1 +/* 354CE0 E0042540 00052880 */ sll $a1, $a1, 2 +/* 354CE4 E0042544 02252823 */ subu $a1, $s1, $a1 +/* 354CE8 E0042548 3C09E004 */ lui $t1, %hi(D_E0042780) +/* 354CEC E004254C 25292780 */ addiu $t1, $t1, %lo(D_E0042780) +/* 354CF0 E0042550 00DE0018 */ mult $a2, $fp +/* 354CF4 E0042554 00A92821 */ addu $a1, $a1, $t1 +/* 354CF8 E0042558 90A50000 */ lbu $a1, ($a1) +/* 354CFC E004255C 000617C3 */ sra $v0, $a2, 0x1f +/* 354D00 E0042560 00052E00 */ sll $a1, $a1, 0x18 +/* 354D04 E0042564 00004810 */ mfhi $t1 +/* 354D08 E0042568 000918C3 */ sra $v1, $t1, 3 +/* 354D0C E004256C 00621823 */ subu $v1, $v1, $v0 +/* 354D10 E0042570 000310C0 */ sll $v0, $v1, 3 +/* 354D14 E0042574 00431021 */ addu $v0, $v0, $v1 +/* 354D18 E0042578 00021080 */ sll $v0, $v0, 2 +/* 354D1C E004257C 00C23023 */ subu $a2, $a2, $v0 +/* 354D20 E0042580 3C09E004 */ lui $t1, %hi(D_E0042780) +/* 354D24 E0042584 25292780 */ addiu $t1, $t1, %lo(D_E0042780) +/* 354D28 E0042588 00C93021 */ addu $a2, $a2, $t1 +/* 354D2C E004258C 00FE0018 */ mult $a3, $fp +/* 354D30 E0042590 90C60000 */ lbu $a2, ($a2) +/* 354D34 E0042594 000717C3 */ sra $v0, $a3, 0x1f +/* 354D38 E0042598 00063400 */ sll $a2, $a2, 0x10 +/* 354D3C E004259C 00A62825 */ or $a1, $a1, $a2 +/* 354D40 E00425A0 00004810 */ mfhi $t1 +/* 354D44 E00425A4 000918C3 */ sra $v1, $t1, 3 +/* 354D48 E00425A8 00621823 */ subu $v1, $v1, $v0 +/* 354D4C E00425AC 000310C0 */ sll $v0, $v1, 3 +/* 354D50 E00425B0 00431021 */ addu $v0, $v0, $v1 +/* 354D54 E00425B4 00021080 */ sll $v0, $v0, 2 +/* 354D58 E00425B8 00E23823 */ subu $a3, $a3, $v0 +/* 354D5C E00425BC 3C09E004 */ lui $t1, %hi(D_E0042780) +/* 354D60 E00425C0 25292780 */ addiu $t1, $t1, %lo(D_E0042780) +/* 354D64 E00425C4 00E93821 */ addu $a3, $a3, $t1 +/* 354D68 E00425C8 90E20000 */ lbu $v0, ($a3) +/* 354D6C E00425CC 8FA90098 */ lw $t1, 0x98($sp) +/* 354D70 E00425D0 00021200 */ sll $v0, $v0, 8 +/* 354D74 E00425D4 00A22825 */ or $a1, $a1, $v0 +/* 354D78 E00425D8 312200FF */ andi $v0, $t1, 0xff +/* 354D7C E00425DC 00A22825 */ or $a1, $a1, $v0 +/* 354D80 E00425E0 AD050004 */ sw $a1, 4($t0) +/* 354D84 E00425E4 8E05FFE0 */ lw $a1, -0x20($s0) +/* 354D88 E00425E8 8E06FFE4 */ lw $a2, -0x1c($s0) +/* 354D8C E00425EC 8E07FFE8 */ lw $a3, -0x18($s0) +/* 354D90 E00425F0 0C080108 */ jal func_E0200420 +/* 354D94 E00425F4 26310003 */ addiu $s1, $s1, 3 +/* 354D98 E00425F8 3C09800B */ lui $t1, %hi(gCameras) +/* 354D9C E00425FC 25291D80 */ addiu $t1, $t1, %lo(gCameras) +/* 354DA0 E0042600 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 354DA4 E0042604 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 354DA8 E0042608 4406B000 */ mfc1 $a2, $f22 +/* 354DAC E004260C 00031080 */ sll $v0, $v1, 2 +/* 354DB0 E0042610 00431021 */ addu $v0, $v0, $v1 +/* 354DB4 E0042614 00021080 */ sll $v0, $v0, 2 +/* 354DB8 E0042618 00431023 */ subu $v0, $v0, $v1 +/* 354DBC E004261C 000218C0 */ sll $v1, $v0, 3 +/* 354DC0 E0042620 00431021 */ addu $v0, $v0, $v1 +/* 354DC4 E0042624 000210C0 */ sll $v0, $v0, 3 +/* 354DC8 E0042628 00491021 */ addu $v0, $v0, $t1 +/* 354DCC E004262C C440006C */ lwc1 $f0, 0x6c($v0) +/* 354DD0 E0042630 4407A000 */ mfc1 $a3, $f20 +/* 354DD4 E0042634 46000007 */ neg.s $f0, $f0 +/* 354DD8 E0042638 44050000 */ mfc1 $a1, $f0 +/* 354DDC E004263C 0240202D */ daddu $a0, $s2, $zero +/* 354DE0 E0042640 0C080104 */ jal func_E0200410 +/* 354DE4 E0042644 E7B60010 */ swc1 $f22, 0x10($sp) +/* 354DE8 E0042648 0240202D */ daddu $a0, $s2, $zero +/* 354DEC E004264C 27A50018 */ addiu $a1, $sp, 0x18 +/* 354DF0 E0042650 0C080114 */ jal func_E0200450 +/* 354DF4 E0042654 00A0302D */ daddu $a2, $a1, $zero +/* 354DF8 E0042658 0240202D */ daddu $a0, $s2, $zero +/* 354DFC E004265C 8E050000 */ lw $a1, ($s0) +/* 354E00 E0042660 4407A000 */ mfc1 $a3, $f20 +/* 354E04 E0042664 0C080110 */ jal func_E0200440 +/* 354E08 E0042668 00A0302D */ daddu $a2, $a1, $zero +/* 354E0C E004266C 0240202D */ daddu $a0, $s2, $zero +/* 354E10 E0042670 27A50018 */ addiu $a1, $sp, 0x18 +/* 354E14 E0042674 0C080114 */ jal func_E0200450 +/* 354E18 E0042678 00A0302D */ daddu $a2, $a1, $zero +/* 354E1C E004267C 27A40018 */ addiu $a0, $sp, 0x18 +/* 354E20 E0042680 3C058007 */ lui $a1, %hi(D_800741F0) +/* 354E24 E0042684 94A541F0 */ lhu $a1, %lo(D_800741F0)($a1) +/* 354E28 E0042688 3C02800A */ lui $v0, %hi(D_8009A674) +/* 354E2C E004268C 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 354E30 E0042690 8FA9009C */ lw $t1, 0x9c($sp) +/* 354E34 E0042694 00052980 */ sll $a1, $a1, 6 +/* 354E38 E0042698 00A92821 */ addu $a1, $a1, $t1 +/* 354E3C E004269C 0C080118 */ jal func_E0200460 +/* 354E40 E00426A0 00452821 */ addu $a1, $v0, $a1 +/* 354E44 E00426A4 3C06D838 */ lui $a2, 0xd838 +/* 354E48 E00426A8 8E840000 */ lw $a0, ($s4) +/* 354E4C E00426AC 34C60002 */ ori $a2, $a2, 2 +/* 354E50 E00426B0 0080282D */ daddu $a1, $a0, $zero +/* 354E54 E00426B4 24840008 */ addiu $a0, $a0, 8 +/* 354E58 E00426B8 AE840000 */ sw $a0, ($s4) +/* 354E5C E00426BC 3C028007 */ lui $v0, %hi(D_800741F0) +/* 354E60 E00426C0 944241F0 */ lhu $v0, %lo(D_800741F0)($v0) +/* 354E64 E00426C4 3C03DA38 */ lui $v1, 0xda38 +/* 354E68 E00426C8 ACA30000 */ sw $v1, ($a1) +/* 354E6C E00426CC 8FA9009C */ lw $t1, 0x9c($sp) +/* 354E70 E00426D0 24430001 */ addiu $v1, $v0, 1 +/* 354E74 E00426D4 3042FFFF */ andi $v0, $v0, 0xffff +/* 354E78 E00426D8 00021180 */ sll $v0, $v0, 6 +/* 354E7C E00426DC 3C018007 */ lui $at, %hi(D_800741F0) +/* 354E80 E00426E0 A42341F0 */ sh $v1, %lo(D_800741F0)($at) +/* 354E84 E00426E4 3C03800A */ lui $v1, %hi(D_8009A674) +/* 354E88 E00426E8 8C63A674 */ lw $v1, %lo(D_8009A674)($v1) +/* 354E8C E00426EC 00491021 */ addu $v0, $v0, $t1 +/* 354E90 E00426F0 00621821 */ addu $v1, $v1, $v0 +/* 354E94 E00426F4 24820008 */ addiu $v0, $a0, 8 +/* 354E98 E00426F8 ACA30004 */ sw $v1, 4($a1) +/* 354E9C E00426FC AE820000 */ sw $v0, ($s4) +/* 354EA0 E0042700 3C02DE00 */ lui $v0, 0xde00 +/* 354EA4 E0042704 3C090900 */ lui $t1, 0x900 +/* 354EA8 E0042708 252905E0 */ addiu $t1, $t1, 0x5e0 +/* 354EAC E004270C AC820000 */ sw $v0, ($a0) +/* 354EB0 E0042710 24020040 */ addiu $v0, $zero, 0x40 +/* 354EB4 E0042714 AC890004 */ sw $t1, 4($a0) +/* 354EB8 E0042718 AC860008 */ sw $a2, 8($a0) +/* 354EBC E004271C AC82000C */ sw $v0, 0xc($a0) +/* 354EC0 E0042720 8FA900D8 */ lw $t1, 0xd8($sp) +/* 354EC4 E0042724 26100038 */ addiu $s0, $s0, 0x38 +/* 354EC8 E0042728 8D220008 */ lw $v0, 8($t1) +/* 354ECC E004272C 24840010 */ addiu $a0, $a0, 0x10 +/* 354ED0 E0042730 02A2102A */ slt $v0, $s5, $v0 +/* 354ED4 E0042734 1440FF6F */ bnez $v0, .LE00424F4 +/* 354ED8 E0042738 AE840000 */ sw $a0, ($s4) +.LE004273C: +/* 354EDC E004273C 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 354EE0 E0042740 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 354EE4 E0042744 8FB700BC */ lw $s7, 0xbc($sp) +/* 354EE8 E0042748 8FB600B8 */ lw $s6, 0xb8($sp) +/* 354EEC E004274C 8FB500B4 */ lw $s5, 0xb4($sp) +/* 354EF0 E0042750 8FB400B0 */ lw $s4, 0xb0($sp) +/* 354EF4 E0042754 8FB300AC */ lw $s3, 0xac($sp) +/* 354EF8 E0042758 8FB200A8 */ lw $s2, 0xa8($sp) +/* 354EFC E004275C 8FB100A4 */ lw $s1, 0xa4($sp) +/* 354F00 E0042760 8FB000A0 */ lw $s0, 0xa0($sp) +/* 354F04 E0042764 D7B600D0 */ ldc1 $f22, 0xd0($sp) +/* 354F08 E0042768 D7B400C8 */ ldc1 $f20, 0xc8($sp) +/* 354F0C E004276C 03E00008 */ jr $ra +/* 354F10 E0042770 27BD00D8 */ addiu $sp, $sp, 0xd8 +/* 354F14 E0042774 00000000 */ nop +/* 354F18 E0042778 00000000 */ nop +/* 354F1C E004277C 00000000 */ nop diff --git a/asm/nonmatchings/code_359F20/func_E004C000.s b/asm/nonmatchings/code_359F20/func_E004C000.s new file mode 100644 index 0000000000..df5eb58417 --- /dev/null +++ b/asm/nonmatchings/code_359F20/func_E004C000.s @@ -0,0 +1,140 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E004C000 +/* 359F20 E004C000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 359F24 E004C004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 359F28 E004C008 4485A000 */ mtc1 $a1, $f20 +/* 359F2C E004C00C AFB1002C */ sw $s1, 0x2c($sp) +/* 359F30 E004C010 0080882D */ daddu $s1, $a0, $zero +/* 359F34 E004C014 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 359F38 E004C018 4486B000 */ mtc1 $a2, $f22 +/* 359F3C E004C01C 27A40010 */ addiu $a0, $sp, 0x10 +/* 359F40 E004C020 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 359F44 E004C024 4487C000 */ mtc1 $a3, $f24 +/* 359F48 E004C028 3C02E005 */ lui $v0, %hi(D_E004C204) +/* 359F4C E004C02C 2442C204 */ addiu $v0, $v0, %lo(D_E004C204) +/* 359F50 E004C030 AFA20018 */ sw $v0, 0x18($sp) +/* 359F54 E004C034 3C02E005 */ lui $v0, %hi(D_E004C20C) +/* 359F58 E004C038 2442C20C */ addiu $v0, $v0, %lo(D_E004C20C) +/* 359F5C E004C03C AFA2001C */ sw $v0, 0x1c($sp) +/* 359F60 E004C040 3C02E005 */ lui $v0, %hi(D_E004C364) +/* 359F64 E004C044 2442C364 */ addiu $v0, $v0, %lo(D_E004C364) +/* 359F68 E004C048 AFA20020 */ sw $v0, 0x20($sp) +/* 359F6C E004C04C 24020026 */ addiu $v0, $zero, 0x26 +/* 359F70 E004C050 AFBF0030 */ sw $ra, 0x30($sp) +/* 359F74 E004C054 AFB00028 */ sw $s0, 0x28($sp) +/* 359F78 E004C058 AFA00010 */ sw $zero, 0x10($sp) +/* 359F7C E004C05C AFA00024 */ sw $zero, 0x24($sp) +/* 359F80 E004C060 0C080124 */ jal func_E0200490 +/* 359F84 E004C064 AFA20014 */ sw $v0, 0x14($sp) +/* 359F88 E004C068 24040034 */ addiu $a0, $zero, 0x34 +/* 359F8C E004C06C 24030001 */ addiu $v1, $zero, 1 +/* 359F90 E004C070 0040802D */ daddu $s0, $v0, $zero +/* 359F94 E004C074 0C08012C */ jal func_E02004B0 +/* 359F98 E004C078 AE030008 */ sw $v1, 8($s0) +/* 359F9C E004C07C AE02000C */ sw $v0, 0xc($s0) +/* 359FA0 E004C080 0040802D */ daddu $s0, $v0, $zero +/* 359FA4 E004C084 16000003 */ bnez $s0, .LE004C094 +/* 359FA8 E004C088 24040006 */ addiu $a0, $zero, 6 +.LE004C08C: +/* 359FAC E004C08C 08013023 */ j .LE004C08C +/* 359FB0 E004C090 00000000 */ nop +.LE004C094: +/* 359FB4 E004C094 24020040 */ addiu $v0, $zero, 0x40 +/* 359FB8 E004C098 AE110000 */ sw $s1, ($s0) +/* 359FBC E004C09C E6140004 */ swc1 $f20, 4($s0) +/* 359FC0 E004C0A0 E6160008 */ swc1 $f22, 8($s0) +/* 359FC4 E004C0A4 E618000C */ swc1 $f24, 0xc($s0) +/* 359FC8 E004C0A8 AE000010 */ sw $zero, 0x10($s0) +/* 359FCC E004C0AC AE020018 */ sw $v0, 0x18($s0) +/* 359FD0 E004C0B0 AE000014 */ sw $zero, 0x14($s0) +/* 359FD4 E004C0B4 0C080138 */ jal func_E02004E0 +/* 359FD8 E004C0B8 AE00001C */ sw $zero, 0x1c($s0) +/* 359FDC E004C0BC 12200006 */ beqz $s1, .LE004C0D8 +/* 359FE0 E004C0C0 AE020020 */ sw $v0, 0x20($s0) +/* 359FE4 E004C0C4 24020001 */ addiu $v0, $zero, 1 +/* 359FE8 E004C0C8 1222000A */ beq $s1, $v0, .LE004C0F4 +/* 359FEC E004C0CC 00000000 */ nop +/* 359FF0 E004C0D0 08013059 */ j .LE004C164 +/* 359FF4 E004C0D4 00000000 */ nop +.LE004C0D8: +/* 359FF8 E004C0D8 3C013F80 */ lui $at, 0x3f80 +/* 359FFC E004C0DC 44810000 */ mtc1 $at, $f0 +/* 35A000 E004C0E0 AE000024 */ sw $zero, 0x24($s0) +/* 35A004 E004C0E4 AE00002C */ sw $zero, 0x2c($s0) +/* 35A008 E004C0E8 E6000028 */ swc1 $f0, 0x28($s0) +/* 35A00C E004C0EC 08013079 */ j .LE004C1E4 +/* 35A010 E004C0F0 E6000030 */ swc1 $f0, 0x30($s0) +.LE004C0F4: +/* 35A014 E004C0F4 0C080138 */ jal func_E02004E0 +/* 35A018 E004C0F8 2404000A */ addiu $a0, $zero, 0xa +/* 35A01C E004C0FC 3C01E005 */ lui $at, %hi(D_E004C6A0) +/* 35A020 E004C100 D434C6A0 */ ldc1 $f20, %lo(D_E004C6A0)($at) +/* 35A024 E004C104 44820000 */ mtc1 $v0, $f0 +/* 35A028 E004C108 00000000 */ nop +/* 35A02C E004C10C 46800021 */ cvt.d.w $f0, $f0 +/* 35A030 E004C110 46340002 */ mul.d $f0, $f0, $f20 +/* 35A034 E004C114 00000000 */ nop +/* 35A038 E004C118 3C01C014 */ lui $at, 0xc014 +/* 35A03C E004C11C 44811800 */ mtc1 $at, $f3 +/* 35A040 E004C120 44801000 */ mtc1 $zero, $f2 +/* 35A044 E004C124 00000000 */ nop +/* 35A048 E004C128 46220000 */ add.d $f0, $f0, $f2 +/* 35A04C E004C12C 2404000A */ addiu $a0, $zero, 0xa +/* 35A050 E004C130 46200020 */ cvt.s.d $f0, $f0 +/* 35A054 E004C134 0C080138 */ jal func_E02004E0 +/* 35A058 E004C138 E6000024 */ swc1 $f0, 0x24($s0) +/* 35A05C E004C13C 44820000 */ mtc1 $v0, $f0 +/* 35A060 E004C140 00000000 */ nop +/* 35A064 E004C144 46800021 */ cvt.d.w $f0, $f0 +/* 35A068 E004C148 46340002 */ mul.d $f0, $f0, $f20 +/* 35A06C E004C14C 00000000 */ nop +/* 35A070 E004C150 3C013FE0 */ lui $at, 0x3fe0 +/* 35A074 E004C154 44811800 */ mtc1 $at, $f3 +/* 35A078 E004C158 44801000 */ mtc1 $zero, $f2 +/* 35A07C E004C15C 08013075 */ j .LE004C1D4 +/* 35A080 E004C160 46220000 */ add.d $f0, $f0, $f2 +.LE004C164: +/* 35A084 E004C164 0C080138 */ jal func_E02004E0 +/* 35A088 E004C168 2404000A */ addiu $a0, $zero, 0xa +/* 35A08C E004C16C 3C01E005 */ lui $at, %hi(D_E004C6A8) +/* 35A090 E004C170 D434C6A8 */ ldc1 $f20, %lo(D_E004C6A8)($at) +/* 35A094 E004C174 44821000 */ mtc1 $v0, $f2 +/* 35A098 E004C178 00000000 */ nop +/* 35A09C E004C17C 468010A1 */ cvt.d.w $f2, $f2 +/* 35A0A0 E004C180 46341082 */ mul.d $f2, $f2, $f20 +/* 35A0A4 E004C184 00000000 */ nop +/* 35A0A8 E004C188 3C014014 */ lui $at, 0x4014 +/* 35A0AC E004C18C 44810800 */ mtc1 $at, $f1 +/* 35A0B0 E004C190 44800000 */ mtc1 $zero, $f0 +/* 35A0B4 E004C194 00000000 */ nop +/* 35A0B8 E004C198 46220001 */ sub.d $f0, $f0, $f2 +/* 35A0BC E004C19C 2404000A */ addiu $a0, $zero, 0xa +/* 35A0C0 E004C1A0 46200020 */ cvt.s.d $f0, $f0 +/* 35A0C4 E004C1A4 0C080138 */ jal func_E02004E0 +/* 35A0C8 E004C1A8 E6000024 */ swc1 $f0, 0x24($s0) +/* 35A0CC E004C1AC 44820000 */ mtc1 $v0, $f0 +/* 35A0D0 E004C1B0 00000000 */ nop +/* 35A0D4 E004C1B4 46800021 */ cvt.d.w $f0, $f0 +/* 35A0D8 E004C1B8 46340002 */ mul.d $f0, $f0, $f20 +/* 35A0DC E004C1BC 00000000 */ nop +/* 35A0E0 E004C1C0 3C013FF0 */ lui $at, 0x3ff0 +/* 35A0E4 E004C1C4 44811800 */ mtc1 $at, $f3 +/* 35A0E8 E004C1C8 44801000 */ mtc1 $zero, $f2 +/* 35A0EC E004C1CC 00000000 */ nop +/* 35A0F0 E004C1D0 46220000 */ add.d $f0, $f0, $f2 +.LE004C1D4: +/* 35A0F4 E004C1D4 AE00002C */ sw $zero, 0x2c($s0) +/* 35A0F8 E004C1D8 AE000030 */ sw $zero, 0x30($s0) +/* 35A0FC E004C1DC 46200020 */ cvt.s.d $f0, $f0 +/* 35A100 E004C1E0 E6000028 */ swc1 $f0, 0x28($s0) +.LE004C1E4: +/* 35A104 E004C1E4 8FBF0030 */ lw $ra, 0x30($sp) +/* 35A108 E004C1E8 8FB1002C */ lw $s1, 0x2c($sp) +/* 35A10C E004C1EC 8FB00028 */ lw $s0, 0x28($sp) +/* 35A110 E004C1F0 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 35A114 E004C1F4 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 35A118 E004C1F8 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 35A11C E004C1FC 03E00008 */ jr $ra +/* 35A120 E004C200 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_359F20/func_E004C204.s b/asm/nonmatchings/code_359F20/func_E004C204.s new file mode 100644 index 0000000000..82b575e7e0 --- /dev/null +++ b/asm/nonmatchings/code_359F20/func_E004C204.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E004C204 +/* 35A124 E004C204 03E00008 */ jr $ra +/* 35A128 E004C208 00000000 */ nop diff --git a/asm/nonmatchings/code_359F20/func_E004C20C.s b/asm/nonmatchings/code_359F20/func_E004C20C.s new file mode 100644 index 0000000000..d33162c85b --- /dev/null +++ b/asm/nonmatchings/code_359F20/func_E004C20C.s @@ -0,0 +1,94 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E004C20C +/* 35A12C E004C20C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 35A130 E004C210 AFBF0010 */ sw $ra, 0x10($sp) +/* 35A134 E004C214 8C85000C */ lw $a1, 0xc($a0) +/* 35A138 E004C218 8CA20018 */ lw $v0, 0x18($a1) +/* 35A13C E004C21C 2442FFFF */ addiu $v0, $v0, -1 +/* 35A140 E004C220 ACA20018 */ sw $v0, 0x18($a1) +/* 35A144 E004C224 8CA2001C */ lw $v0, 0x1c($a1) +/* 35A148 E004C228 8CA60018 */ lw $a2, 0x18($a1) +/* 35A14C E004C22C 24420001 */ addiu $v0, $v0, 1 +/* 35A150 E004C230 04C10005 */ bgez $a2, .LE004C248 +/* 35A154 E004C234 ACA2001C */ sw $v0, 0x1c($a1) +/* 35A158 E004C238 0C080128 */ jal func_E02004A0 +/* 35A15C E004C23C 00000000 */ nop +/* 35A160 E004C240 080130D6 */ j .LE004C358 +/* 35A164 E004C244 00000000 */ nop +.LE004C248: +/* 35A168 E004C248 28C20006 */ slti $v0, $a2, 6 +/* 35A16C E004C24C 1440001E */ bnez $v0, .LE004C2C8 +/* 35A170 E004C250 28C2000A */ slti $v0, $a2, 0xa +/* 35A174 E004C254 240200FF */ addiu $v0, $zero, 0xff +/* 35A178 E004C258 8CA30014 */ lw $v1, 0x14($a1) +/* 35A17C E004C25C 3C01E005 */ lui $at, %hi(D_E004C6B0) +/* 35A180 E004C260 D424C6B0 */ ldc1 $f4, %lo(D_E004C6B0)($at) +/* 35A184 E004C264 00431023 */ subu $v0, $v0, $v1 +/* 35A188 E004C268 44823000 */ mtc1 $v0, $f6 +/* 35A18C E004C26C 00000000 */ nop +/* 35A190 E004C270 468031A1 */ cvt.d.w $f6, $f6 +/* 35A194 E004C274 46243182 */ mul.d $f6, $f6, $f4 +/* 35A198 E004C278 00000000 */ nop +/* 35A19C E004C27C C4A20010 */ lwc1 $f2, 0x10($a1) +/* 35A1A0 E004C280 3C013F80 */ lui $at, 0x3f80 +/* 35A1A4 E004C284 44810000 */ mtc1 $at, $f0 +/* 35A1A8 E004C288 00000000 */ nop +/* 35A1AC E004C28C 46020001 */ sub.s $f0, $f0, $f2 +/* 35A1B0 E004C290 46000021 */ cvt.d.s $f0, $f0 +/* 35A1B4 E004C294 46240002 */ mul.d $f0, $f0, $f4 +/* 35A1B8 E004C298 00000000 */ nop +/* 35A1BC E004C29C 44832000 */ mtc1 $v1, $f4 +/* 35A1C0 E004C2A0 00000000 */ nop +/* 35A1C4 E004C2A4 46802121 */ cvt.d.w $f4, $f4 +/* 35A1C8 E004C2A8 46262100 */ add.d $f4, $f4, $f6 +/* 35A1CC E004C2AC 460010A1 */ cvt.d.s $f2, $f2 +/* 35A1D0 E004C2B0 46201080 */ add.d $f2, $f2, $f0 +/* 35A1D4 E004C2B4 4620238D */ trunc.w.d $f14, $f4 +/* 35A1D8 E004C2B8 E4AE0014 */ swc1 $f14, 0x14($a1) +/* 35A1DC E004C2BC 462010A0 */ cvt.s.d $f2, $f2 +/* 35A1E0 E004C2C0 E4A20010 */ swc1 $f2, 0x10($a1) +/* 35A1E4 E004C2C4 28C2000A */ slti $v0, $a2, 0xa +.LE004C2C8: +/* 35A1E8 E004C2C8 10400005 */ beqz $v0, .LE004C2E0 +/* 35A1EC E004C2CC 00061040 */ sll $v0, $a2, 1 +/* 35A1F0 E004C2D0 00461021 */ addu $v0, $v0, $a2 +/* 35A1F4 E004C2D4 000210C0 */ sll $v0, $v0, 3 +/* 35A1F8 E004C2D8 00461021 */ addu $v0, $v0, $a2 +/* 35A1FC E004C2DC ACA20014 */ sw $v0, 0x14($a1) +.LE004C2E0: +/* 35A200 E004C2E0 C4A60024 */ lwc1 $f6, 0x24($a1) +/* 35A204 E004C2E4 C4A4002C */ lwc1 $f4, 0x2c($a1) +/* 35A208 E004C2E8 46062101 */ sub.s $f4, $f4, $f6 +/* 35A20C E004C2EC 3C01E005 */ lui $at, %hi(D_E004C6B8) +/* 35A210 E004C2F0 D428C6B8 */ ldc1 $f8, %lo(D_E004C6B8)($at) +/* 35A214 E004C2F4 46002121 */ cvt.d.s $f4, $f4 +/* 35A218 E004C2F8 46282102 */ mul.d $f4, $f4, $f8 +/* 35A21C E004C2FC 00000000 */ nop +/* 35A220 E004C300 C4A20028 */ lwc1 $f2, 0x28($a1) +/* 35A224 E004C304 C4A00030 */ lwc1 $f0, 0x30($a1) +/* 35A228 E004C308 46020001 */ sub.s $f0, $f0, $f2 +/* 35A22C E004C30C 46000021 */ cvt.d.s $f0, $f0 +/* 35A230 E004C310 46280002 */ mul.d $f0, $f0, $f8 +/* 35A234 E004C314 00000000 */ nop +/* 35A238 E004C318 C4AA0004 */ lwc1 $f10, 4($a1) +/* 35A23C E004C31C 46003206 */ mov.s $f8, $f6 +/* 35A240 E004C320 46085280 */ add.s $f10, $f10, $f8 +/* 35A244 E004C324 C4AC0008 */ lwc1 $f12, 8($a1) +/* 35A248 E004C328 46001206 */ mov.s $f8, $f2 +/* 35A24C E004C32C 46086300 */ add.s $f12, $f12, $f8 +/* 35A250 E004C330 460031A1 */ cvt.d.s $f6, $f6 +/* 35A254 E004C334 46243180 */ add.d $f6, $f6, $f4 +/* 35A258 E004C338 460010A1 */ cvt.d.s $f2, $f2 +/* 35A25C E004C33C E4AA0004 */ swc1 $f10, 4($a1) +/* 35A260 E004C340 46201080 */ add.d $f2, $f2, $f0 +/* 35A264 E004C344 E4AC0008 */ swc1 $f12, 8($a1) +/* 35A268 E004C348 462031A0 */ cvt.s.d $f6, $f6 +/* 35A26C E004C34C 462010A0 */ cvt.s.d $f2, $f2 +/* 35A270 E004C350 E4A60024 */ swc1 $f6, 0x24($a1) +/* 35A274 E004C354 E4A20028 */ swc1 $f2, 0x28($a1) +.LE004C358: +/* 35A278 E004C358 8FBF0010 */ lw $ra, 0x10($sp) +/* 35A27C E004C35C 03E00008 */ jr $ra +/* 35A280 E004C360 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_359F20/func_E004C364.s b/asm/nonmatchings/code_359F20/func_E004C364.s new file mode 100644 index 0000000000..039559b6a2 --- /dev/null +++ b/asm/nonmatchings/code_359F20/func_E004C364.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E004C364 +/* 35A284 E004C364 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 35A288 E004C368 3C02E005 */ lui $v0, %hi(D_E004C3A8) +/* 35A28C E004C36C 2442C3A8 */ addiu $v0, $v0, %lo(D_E004C3A8) +/* 35A290 E004C370 AFA2001C */ sw $v0, 0x1c($sp) +/* 35A294 E004C374 2402002D */ addiu $v0, $zero, 0x2d +/* 35A298 E004C378 AFA40018 */ sw $a0, 0x18($sp) +/* 35A29C E004C37C 27A40010 */ addiu $a0, $sp, 0x10 +/* 35A2A0 E004C380 AFBF0020 */ sw $ra, 0x20($sp) +/* 35A2A4 E004C384 AFA00014 */ sw $zero, 0x14($sp) +/* 35A2A8 E004C388 0C080120 */ jal func_E0200480 +/* 35A2AC E004C38C AFA20010 */ sw $v0, 0x10($sp) +/* 35A2B0 E004C390 8C430000 */ lw $v1, ($v0) +/* 35A2B4 E004C394 34630002 */ ori $v1, $v1, 2 +/* 35A2B8 E004C398 AC430000 */ sw $v1, ($v0) +/* 35A2BC E004C39C 8FBF0020 */ lw $ra, 0x20($sp) +/* 35A2C0 E004C3A0 03E00008 */ jr $ra +/* 35A2C4 E004C3A4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_359F20/func_E004C3A8.s b/asm/nonmatchings/code_359F20/func_E004C3A8.s new file mode 100644 index 0000000000..483ea3f61d --- /dev/null +++ b/asm/nonmatchings/code_359F20/func_E004C3A8.s @@ -0,0 +1,178 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E004C3A8 +/* 35A2C8 E004C3A8 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 35A2CC E004C3AC 0080182D */ daddu $v1, $a0, $zero +/* 35A2D0 E004C3B0 3C0838E3 */ lui $t0, 0x38e3 +/* 35A2D4 E004C3B4 35088E39 */ ori $t0, $t0, 0x8e39 +/* 35A2D8 E004C3B8 3C05DB06 */ lui $a1, 0xdb06 +/* 35A2DC E004C3BC 34A50024 */ ori $a1, $a1, 0x24 +/* 35A2E0 E004C3C0 27A40018 */ addiu $a0, $sp, 0x18 +/* 35A2E4 E004C3C4 AFB500AC */ sw $s5, 0xac($sp) +/* 35A2E8 E004C3C8 3C150001 */ lui $s5, 1 +/* 35A2EC E004C3CC AFB200A0 */ sw $s2, 0xa0($sp) +/* 35A2F0 E004C3D0 3C12800A */ lui $s2, %hi(D_8009A66C) +/* 35A2F4 E004C3D4 2652A66C */ addiu $s2, $s2, %lo(D_8009A66C) +/* 35A2F8 E004C3D8 AFB600B0 */ sw $s6, 0xb0($sp) +/* 35A2FC E004C3DC 3C16E700 */ lui $s6, 0xe700 +/* 35A300 E004C3E0 AFBF00B4 */ sw $ra, 0xb4($sp) +/* 35A304 E004C3E4 AFB400A8 */ sw $s4, 0xa8($sp) +/* 35A308 E004C3E8 AFB300A4 */ sw $s3, 0xa4($sp) +/* 35A30C E004C3EC AFB1009C */ sw $s1, 0x9c($sp) +/* 35A310 E004C3F0 AFB00098 */ sw $s0, 0x98($sp) +/* 35A314 E004C3F4 F7B400B8 */ sdc1 $f20, 0xb8($sp) +/* 35A318 E004C3F8 8E460000 */ lw $a2, ($s2) +/* 35A31C E004C3FC 8C71000C */ lw $s1, 0xc($v1) +/* 35A320 E004C400 00C0102D */ daddu $v0, $a2, $zero +/* 35A324 E004C404 24C60008 */ addiu $a2, $a2, 8 +/* 35A328 E004C408 AE460000 */ sw $a2, ($s2) +/* 35A32C E004C40C 8E27001C */ lw $a3, 0x1c($s1) +/* 35A330 E004C410 8E330020 */ lw $s3, 0x20($s1) +/* 35A334 E004C414 3C14DE00 */ lui $s4, 0xde00 +/* 35A338 E004C418 AC560000 */ sw $s6, ($v0) +/* 35A33C E004C41C AC400004 */ sw $zero, 4($v0) +/* 35A340 E004C420 24C20008 */ addiu $v0, $a2, 8 +/* 35A344 E004C424 AE420000 */ sw $v0, ($s2) +/* 35A348 E004C428 24C20010 */ addiu $v0, $a2, 0x10 +/* 35A34C E004C42C ACC50000 */ sw $a1, ($a2) +/* 35A350 E004C430 AE420000 */ sw $v0, ($s2) +/* 35A354 E004C434 8C630010 */ lw $v1, 0x10($v1) +/* 35A358 E004C438 24C20018 */ addiu $v0, $a2, 0x18 +/* 35A35C E004C43C AE420000 */ sw $v0, ($s2) +/* 35A360 E004C440 3C020900 */ lui $v0, 0x900 +/* 35A364 E004C444 24420FC0 */ addiu $v0, $v0, 0xfc0 +/* 35A368 E004C448 00072840 */ sll $a1, $a3, 1 +/* 35A36C E004C44C 8C63001C */ lw $v1, 0x1c($v1) +/* 35A370 E004C450 00A72821 */ addu $a1, $a1, $a3 +/* 35A374 E004C454 ACC2000C */ sw $v0, 0xc($a2) +/* 35A378 E004C458 3C02FA00 */ lui $v0, 0xfa00 +/* 35A37C E004C45C ACC20010 */ sw $v0, 0x10($a2) +/* 35A380 E004C460 3C028000 */ lui $v0, 0x8000 +/* 35A384 E004C464 00A80018 */ mult $a1, $t0 +/* 35A388 E004C468 ACD40008 */ sw $s4, 8($a2) +/* 35A38C E004C46C 00621821 */ addu $v1, $v1, $v0 +/* 35A390 E004C470 000517C3 */ sra $v0, $a1, 0x1f +/* 35A394 E004C474 ACC30004 */ sw $v1, 4($a2) +/* 35A398 E004C478 00004810 */ mfhi $t1 +/* 35A39C E004C47C 000918C3 */ sra $v1, $t1, 3 +/* 35A3A0 E004C480 00621823 */ subu $v1, $v1, $v0 +/* 35A3A4 E004C484 000310C0 */ sll $v0, $v1, 3 +/* 35A3A8 E004C488 00431021 */ addu $v0, $v0, $v1 +/* 35A3AC E004C48C 00021080 */ sll $v0, $v0, 2 +/* 35A3B0 E004C490 00A22823 */ subu $a1, $a1, $v0 +/* 35A3B4 E004C494 3C02E005 */ lui $v0, %hi(D_E004C67C) +/* 35A3B8 E004C498 00451021 */ addu $v0, $v0, $a1 +/* 35A3BC E004C49C 9042C67C */ lbu $v0, %lo(D_E004C67C)($v0) +/* 35A3C0 E004C4A0 3C03E005 */ lui $v1, %hi(D_E004C67D) +/* 35A3C4 E004C4A4 00651821 */ addu $v1, $v1, $a1 +/* 35A3C8 E004C4A8 9063C67D */ lbu $v1, %lo(D_E004C67D)($v1) +/* 35A3CC E004C4AC 3C01E005 */ lui $at, %hi(D_E004C67E) +/* 35A3D0 E004C4B0 00250821 */ addu $at, $at, $a1 +/* 35A3D4 E004C4B4 9025C67E */ lbu $a1, %lo(D_E004C67E)($at) +/* 35A3D8 E004C4B8 00021600 */ sll $v0, $v0, 0x18 +/* 35A3DC E004C4BC 00031C00 */ sll $v1, $v1, 0x10 +/* 35A3E0 E004C4C0 00431025 */ or $v0, $v0, $v1 +/* 35A3E4 E004C4C4 00052A00 */ sll $a1, $a1, 8 +/* 35A3E8 E004C4C8 92230017 */ lbu $v1, 0x17($s1) +/* 35A3EC E004C4CC 00451025 */ or $v0, $v0, $a1 +/* 35A3F0 E004C4D0 00431025 */ or $v0, $v0, $v1 +/* 35A3F4 E004C4D4 ACC20014 */ sw $v0, 0x14($a2) +/* 35A3F8 E004C4D8 8E250004 */ lw $a1, 4($s1) +/* 35A3FC E004C4DC 8E260008 */ lw $a2, 8($s1) +/* 35A400 E004C4E0 8E27000C */ lw $a3, 0xc($s1) +/* 35A404 E004C4E4 4480A000 */ mtc1 $zero, $f20 +/* 35A408 E004C4E8 0C080108 */ jal func_E0200420 +/* 35A40C E004C4EC 36B51630 */ ori $s5, $s5, 0x1630 +/* 35A410 E004C4F0 27B00058 */ addiu $s0, $sp, 0x58 +/* 35A414 E004C4F4 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 35A418 E004C4F8 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 35A41C E004C4FC 4406A000 */ mfc1 $a2, $f20 +/* 35A420 E004C500 00031080 */ sll $v0, $v1, 2 +/* 35A424 E004C504 00431021 */ addu $v0, $v0, $v1 +/* 35A428 E004C508 00021080 */ sll $v0, $v0, 2 +/* 35A42C E004C50C 00431023 */ subu $v0, $v0, $v1 +/* 35A430 E004C510 000218C0 */ sll $v1, $v0, 3 +/* 35A434 E004C514 00431021 */ addu $v0, $v0, $v1 +/* 35A438 E004C518 000210C0 */ sll $v0, $v0, 3 +/* 35A43C E004C51C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 35A440 E004C520 00220821 */ addu $at, $at, $v0 +/* 35A444 E004C524 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 35A448 E004C528 3C073F80 */ lui $a3, 0x3f80 +/* 35A44C E004C52C 46000007 */ neg.s $f0, $f0 +/* 35A450 E004C530 44050000 */ mfc1 $a1, $f0 +/* 35A454 E004C534 0200202D */ daddu $a0, $s0, $zero +/* 35A458 E004C538 0C080104 */ jal func_E0200410 +/* 35A45C E004C53C E7B40010 */ swc1 $f20, 0x10($sp) +/* 35A460 E004C540 0200202D */ daddu $a0, $s0, $zero +/* 35A464 E004C544 27A50018 */ addiu $a1, $sp, 0x18 +/* 35A468 E004C548 0C080114 */ jal func_E0200450 +/* 35A46C E004C54C 00A0302D */ daddu $a2, $a1, $zero +/* 35A470 E004C550 0200202D */ daddu $a0, $s0, $zero +/* 35A474 E004C554 8E250010 */ lw $a1, 0x10($s1) +/* 35A478 E004C558 4407A000 */ mfc1 $a3, $f20 +/* 35A47C E004C55C 0C080110 */ jal func_E0200440 +/* 35A480 E004C560 00A0302D */ daddu $a2, $a1, $zero +/* 35A484 E004C564 0200202D */ daddu $a0, $s0, $zero +/* 35A488 E004C568 27A50018 */ addiu $a1, $sp, 0x18 +/* 35A48C E004C56C 0C080114 */ jal func_E0200450 +/* 35A490 E004C570 00A0302D */ daddu $a2, $a1, $zero +/* 35A494 E004C574 27A40018 */ addiu $a0, $sp, 0x18 +/* 35A498 E004C578 3C108007 */ lui $s0, %hi(D_800741F0) +/* 35A49C E004C57C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 35A4A0 E004C580 3C11800A */ lui $s1, %hi(D_8009A674) +/* 35A4A4 E004C584 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 35A4A8 E004C588 96050000 */ lhu $a1, ($s0) +/* 35A4AC E004C58C 8E220000 */ lw $v0, ($s1) +/* 35A4B0 E004C590 00052980 */ sll $a1, $a1, 6 +/* 35A4B4 E004C594 00B52821 */ addu $a1, $a1, $s5 +/* 35A4B8 E004C598 0C080118 */ jal func_E0200460 +/* 35A4BC E004C59C 00452821 */ addu $a1, $v0, $a1 +/* 35A4C0 E004C5A0 3C06D838 */ lui $a2, 0xd838 +/* 35A4C4 E004C5A4 34C60002 */ ori $a2, $a2, 2 +/* 35A4C8 E004C5A8 8E440000 */ lw $a0, ($s2) +/* 35A4CC E004C5AC 3C03DA38 */ lui $v1, 0xda38 +/* 35A4D0 E004C5B0 0080282D */ daddu $a1, $a0, $zero +/* 35A4D4 E004C5B4 24840008 */ addiu $a0, $a0, 8 +/* 35A4D8 E004C5B8 AE440000 */ sw $a0, ($s2) +/* 35A4DC E004C5BC 96020000 */ lhu $v0, ($s0) +/* 35A4E0 E004C5C0 00139880 */ sll $s3, $s3, 2 +/* 35A4E4 E004C5C4 ACA30000 */ sw $v1, ($a1) +/* 35A4E8 E004C5C8 24430001 */ addiu $v1, $v0, 1 +/* 35A4EC E004C5CC 3042FFFF */ andi $v0, $v0, 0xffff +/* 35A4F0 E004C5D0 00021180 */ sll $v0, $v0, 6 +/* 35A4F4 E004C5D4 A6030000 */ sh $v1, ($s0) +/* 35A4F8 E004C5D8 8E230000 */ lw $v1, ($s1) +/* 35A4FC E004C5DC 00551021 */ addu $v0, $v0, $s5 +/* 35A500 E004C5E0 00621821 */ addu $v1, $v1, $v0 +/* 35A504 E004C5E4 24820008 */ addiu $v0, $a0, 8 +/* 35A508 E004C5E8 ACA30004 */ sw $v1, 4($a1) +/* 35A50C E004C5EC AE420000 */ sw $v0, ($s2) +/* 35A510 E004C5F0 AC940000 */ sw $s4, ($a0) +/* 35A514 E004C5F4 3C03E005 */ lui $v1, %hi(D_E004C660) +/* 35A518 E004C5F8 00731821 */ addu $v1, $v1, $s3 +/* 35A51C E004C5FC 8C63C660 */ lw $v1, %lo(D_E004C660)($v1) +/* 35A520 E004C600 24820010 */ addiu $v0, $a0, 0x10 +/* 35A524 E004C604 AE420000 */ sw $v0, ($s2) +/* 35A528 E004C608 24020040 */ addiu $v0, $zero, 0x40 +/* 35A52C E004C60C AC82000C */ sw $v0, 0xc($a0) +/* 35A530 E004C610 24820018 */ addiu $v0, $a0, 0x18 +/* 35A534 E004C614 AC860008 */ sw $a2, 8($a0) +/* 35A538 E004C618 AE420000 */ sw $v0, ($s2) +/* 35A53C E004C61C AC960010 */ sw $s6, 0x10($a0) +/* 35A540 E004C620 AC800014 */ sw $zero, 0x14($a0) +/* 35A544 E004C624 AC830004 */ sw $v1, 4($a0) +/* 35A548 E004C628 8FBF00B4 */ lw $ra, 0xb4($sp) +/* 35A54C E004C62C 8FB600B0 */ lw $s6, 0xb0($sp) +/* 35A550 E004C630 8FB500AC */ lw $s5, 0xac($sp) +/* 35A554 E004C634 8FB400A8 */ lw $s4, 0xa8($sp) +/* 35A558 E004C638 8FB300A4 */ lw $s3, 0xa4($sp) +/* 35A55C E004C63C 8FB200A0 */ lw $s2, 0xa0($sp) +/* 35A560 E004C640 8FB1009C */ lw $s1, 0x9c($sp) +/* 35A564 E004C644 8FB00098 */ lw $s0, 0x98($sp) +/* 35A568 E004C648 D7B400B8 */ ldc1 $f20, 0xb8($sp) +/* 35A56C E004C64C 03E00008 */ jr $ra +/* 35A570 E004C650 27BD00C0 */ addiu $sp, $sp, 0xc0 +/* 35A574 E004C654 00000000 */ nop +/* 35A578 E004C658 00000000 */ nop +/* 35A57C E004C65C 00000000 */ nop diff --git a/asm/nonmatchings/code_35CA80/func_E0052000.s b/asm/nonmatchings/code_35CA80/func_E0052000.s new file mode 100644 index 0000000000..9e958ce2cc --- /dev/null +++ b/asm/nonmatchings/code_35CA80/func_E0052000.s @@ -0,0 +1,64 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0052000 +/* 35CA80 E0052000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 35CA84 E0052004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 35CA88 E0052008 4485A000 */ mtc1 $a1, $f20 +/* 35CA8C E005200C AFB1002C */ sw $s1, 0x2c($sp) +/* 35CA90 E0052010 0080882D */ daddu $s1, $a0, $zero +/* 35CA94 E0052014 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 35CA98 E0052018 4486B000 */ mtc1 $a2, $f22 +/* 35CA9C E005201C 27A40010 */ addiu $a0, $sp, 0x10 +/* 35CAA0 E0052020 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 35CAA4 E0052024 4487C000 */ mtc1 $a3, $f24 +/* 35CAA8 E0052028 3C02E005 */ lui $v0, %hi(D_E00520E8) +/* 35CAAC E005202C 244220E8 */ addiu $v0, $v0, %lo(D_E00520E8) +/* 35CAB0 E0052030 AFA20018 */ sw $v0, 0x18($sp) +/* 35CAB4 E0052034 3C02E005 */ lui $v0, %hi(D_E00520F0) +/* 35CAB8 E0052038 244220F0 */ addiu $v0, $v0, %lo(D_E00520F0) +/* 35CABC E005203C AFA2001C */ sw $v0, 0x1c($sp) +/* 35CAC0 E0052040 3C02E005 */ lui $v0, %hi(D_E005241C) +/* 35CAC4 E0052044 2442241C */ addiu $v0, $v0, %lo(D_E005241C) +/* 35CAC8 E0052048 AFA20020 */ sw $v0, 0x20($sp) +/* 35CACC E005204C 24020029 */ addiu $v0, $zero, 0x29 +/* 35CAD0 E0052050 AFBF0030 */ sw $ra, 0x30($sp) +/* 35CAD4 E0052054 AFB00028 */ sw $s0, 0x28($sp) +/* 35CAD8 E0052058 AFA00010 */ sw $zero, 0x10($sp) +/* 35CADC E005205C AFA00024 */ sw $zero, 0x24($sp) +/* 35CAE0 E0052060 0C080124 */ jal func_E0200490 +/* 35CAE4 E0052064 AFA20014 */ sw $v0, 0x14($sp) +/* 35CAE8 E0052068 240400CC */ addiu $a0, $zero, 0xcc +/* 35CAEC E005206C 24030001 */ addiu $v1, $zero, 1 +/* 35CAF0 E0052070 0040802D */ daddu $s0, $v0, $zero +/* 35CAF4 E0052074 0C08012C */ jal func_E02004B0 +/* 35CAF8 E0052078 AE030008 */ sw $v1, 8($s0) +/* 35CAFC E005207C 0040182D */ daddu $v1, $v0, $zero +/* 35CB00 E0052080 14600003 */ bnez $v1, .LE0052090 +/* 35CB04 E0052084 AE02000C */ sw $v0, 0xc($s0) +.LE0052088: +/* 35CB08 E0052088 08014822 */ j .LE0052088 +/* 35CB0C E005208C 00000000 */ nop +.LE0052090: +/* 35CB10 E0052090 AC710000 */ sw $s1, ($v1) +/* 35CB14 E0052094 E4740004 */ swc1 $f20, 4($v1) +/* 35CB18 E0052098 E4760008 */ swc1 $f22, 8($v1) +/* 35CB1C E005209C E478000C */ swc1 $f24, 0xc($v1) +/* 35CB20 E00520A0 C7A00064 */ lwc1 $f0, 0x64($sp) +/* 35CB24 E00520A4 24020064 */ addiu $v0, $zero, 0x64 +/* 35CB28 E00520A8 AC62001C */ sw $v0, 0x1c($v1) +/* 35CB2C E00520AC E4600010 */ swc1 $f0, 0x10($v1) +/* 35CB30 E00520B0 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 35CB34 E00520B4 AC600018 */ sw $zero, 0x18($v1) +/* 35CB38 E00520B8 AC600020 */ sw $zero, 0x20($v1) +/* 35CB3C E00520BC E4600014 */ swc1 $f0, 0x14($v1) +/* 35CB40 E00520C0 8FA20068 */ lw $v0, 0x68($sp) +/* 35CB44 E00520C4 AC500000 */ sw $s0, ($v0) +/* 35CB48 E00520C8 8FBF0030 */ lw $ra, 0x30($sp) +/* 35CB4C E00520CC 8FB1002C */ lw $s1, 0x2c($sp) +/* 35CB50 E00520D0 8FB00028 */ lw $s0, 0x28($sp) +/* 35CB54 E00520D4 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 35CB58 E00520D8 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 35CB5C E00520DC D7B40038 */ ldc1 $f20, 0x38($sp) +/* 35CB60 E00520E0 03E00008 */ jr $ra +/* 35CB64 E00520E4 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_35CA80/func_E00520E8.s b/asm/nonmatchings/code_35CA80/func_E00520E8.s new file mode 100644 index 0000000000..8417563611 --- /dev/null +++ b/asm/nonmatchings/code_35CA80/func_E00520E8.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00520E8 +/* 35CB68 E00520E8 03E00008 */ jr $ra +/* 35CB6C E00520EC 00000000 */ nop diff --git a/asm/nonmatchings/code_35CA80/func_E00520F0.s b/asm/nonmatchings/code_35CA80/func_E00520F0.s new file mode 100644 index 0000000000..e30739ab56 --- /dev/null +++ b/asm/nonmatchings/code_35CA80/func_E00520F0.s @@ -0,0 +1,214 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00520F0 +/* 35CB70 E00520F0 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 35CB74 E00520F4 AFBF0030 */ sw $ra, 0x30($sp) +/* 35CB78 E00520F8 AFB7002C */ sw $s7, 0x2c($sp) +/* 35CB7C E00520FC AFB60028 */ sw $s6, 0x28($sp) +/* 35CB80 E0052100 AFB50024 */ sw $s5, 0x24($sp) +/* 35CB84 E0052104 AFB40020 */ sw $s4, 0x20($sp) +/* 35CB88 E0052108 AFB3001C */ sw $s3, 0x1c($sp) +/* 35CB8C E005210C AFB20018 */ sw $s2, 0x18($sp) +/* 35CB90 E0052110 AFB10014 */ sw $s1, 0x14($sp) +/* 35CB94 E0052114 AFB00010 */ sw $s0, 0x10($sp) +/* 35CB98 E0052118 F7BE0060 */ sdc1 $f30, 0x60($sp) +/* 35CB9C E005211C F7BC0058 */ sdc1 $f28, 0x58($sp) +/* 35CBA0 E0052120 F7BA0050 */ sdc1 $f26, 0x50($sp) +/* 35CBA4 E0052124 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 35CBA8 E0052128 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 35CBAC E005212C F7B40038 */ sdc1 $f20, 0x38($sp) +/* 35CBB0 E0052130 8C90000C */ lw $s0, 0xc($a0) +/* 35CBB4 E0052134 8E03001C */ lw $v1, 0x1c($s0) +/* 35CBB8 E0052138 28620064 */ slti $v0, $v1, 0x64 +/* 35CBBC E005213C 10400003 */ beqz $v0, .LE005214C +/* 35CBC0 E0052140 26130024 */ addiu $s3, $s0, 0x24 +/* 35CBC4 E0052144 2462FFFF */ addiu $v0, $v1, -1 +/* 35CBC8 E0052148 AE02001C */ sw $v0, 0x1c($s0) +.LE005214C: +/* 35CBCC E005214C 3C030004 */ lui $v1, 4 +/* 35CBD0 E0052150 8E020020 */ lw $v0, 0x20($s0) +/* 35CBD4 E0052154 3463F1A0 */ ori $v1, $v1, 0xf1a0 +/* 35CBD8 E0052158 24420001 */ addiu $v0, $v0, 1 +/* 35CBDC E005215C 0062182A */ slt $v1, $v1, $v0 +/* 35CBE0 E0052160 10600003 */ beqz $v1, .LE0052170 +/* 35CBE4 E0052164 AE020020 */ sw $v0, 0x20($s0) +/* 35CBE8 E0052168 24020100 */ addiu $v0, $zero, 0x100 +/* 35CBEC E005216C AE020020 */ sw $v0, 0x20($s0) +.LE0052170: +/* 35CBF0 E0052170 8E03001C */ lw $v1, 0x1c($s0) +/* 35CBF4 E0052174 04610005 */ bgez $v1, .LE005218C +/* 35CBF8 E0052178 0060B82D */ daddu $s7, $v1, $zero +/* 35CBFC E005217C 0C080128 */ jal func_E02004A0 +/* 35CC00 E0052180 00000000 */ nop +/* 35CC04 E0052184 080148F6 */ j .LE00523D8 +/* 35CC08 E0052188 00000000 */ nop +.LE005218C: +/* 35CC0C E005218C C6020014 */ lwc1 $f2, 0x14($s0) +/* 35CC10 E0052190 C6140018 */ lwc1 $f20, 0x18($s0) +/* 35CC14 E0052194 46141081 */ sub.s $f2, $f2, $f20 +/* 35CC18 E0052198 3C013DCC */ lui $at, 0x3dcc +/* 35CC1C E005219C 3421CCCD */ ori $at, $at, 0xcccd +/* 35CC20 E00521A0 44810000 */ mtc1 $at, $f0 +/* 35CC24 E00521A4 00000000 */ nop +/* 35CC28 E00521A8 46001082 */ mul.s $f2, $f2, $f0 +/* 35CC2C E00521AC 00000000 */ nop +/* 35CC30 E00521B0 8E160020 */ lw $s6, 0x20($s0) +/* 35CC34 E00521B4 00161040 */ sll $v0, $s6, 1 +/* 35CC38 E00521B8 4602A500 */ add.s $f20, $f20, $f2 +/* 35CC3C E00521BC 00561021 */ addu $v0, $v0, $s6 +/* 35CC40 E00521C0 44826000 */ mtc1 $v0, $f12 +/* 35CC44 E00521C4 00000000 */ nop +/* 35CC48 E00521C8 46806320 */ cvt.s.w $f12, $f12 +/* 35CC4C E00521CC 0C080140 */ jal func_E0200500 +/* 35CC50 E00521D0 E6140018 */ swc1 $f20, 0x18($s0) +/* 35CC54 E00521D4 4600A002 */ mul.s $f0, $f20, $f0 +/* 35CC58 E00521D8 00000000 */ nop +/* 35CC5C E00521DC 3C01E005 */ lui $at, %hi(D_E0052A80) +/* 35CC60 E00521E0 D4222A80 */ ldc1 $f2, %lo(D_E0052A80)($at) +/* 35CC64 E00521E4 46000021 */ cvt.d.s $f0, $f0 +/* 35CC68 E00521E8 46220002 */ mul.d $f0, $f0, $f2 +/* 35CC6C E00521EC 00000000 */ nop +/* 35CC70 E00521F0 0000902D */ daddu $s2, $zero, $zero +/* 35CC74 E00521F4 26110028 */ addiu $s1, $s0, 0x28 +/* 35CC78 E00521F8 0240A82D */ daddu $s5, $s2, $zero +/* 35CC7C E00521FC 0240A02D */ daddu $s4, $s2, $zero +/* 35CC80 E0052200 4600A521 */ cvt.d.s $f20, $f20 +/* 35CC84 E0052204 3C014000 */ lui $at, 0x4000 +/* 35CC88 E0052208 4481F800 */ mtc1 $at, $f31 +/* 35CC8C E005220C 4480F000 */ mtc1 $zero, $f30 +/* 35CC90 E0052210 4620A500 */ add.d $f20, $f20, $f0 +/* 35CC94 E0052214 3C013FF8 */ lui $at, 0x3ff8 +/* 35CC98 E0052218 4481E800 */ mtc1 $at, $f29 +/* 35CC9C E005221C 4480E000 */ mtc1 $zero, $f28 +/* 35CCA0 E0052220 46201686 */ mov.d $f26, $f2 +/* 35CCA4 E0052224 4620A620 */ cvt.s.d $f24, $f20 +.LE0052228: +/* 35CCA8 E0052228 3C0143B4 */ lui $at, 0x43b4 +/* 35CCAC E005222C 4481A000 */ mtc1 $at, $f20 +/* 35CCB0 E0052230 4492B000 */ mtc1 $s2, $f22 +/* 35CCB4 E0052234 00000000 */ nop +/* 35CCB8 E0052238 4680B5A0 */ cvt.s.w $f22, $f22 +/* 35CCBC E005223C 4614B502 */ mul.s $f20, $f22, $f20 +/* 35CCC0 E0052240 00000000 */ nop +/* 35CCC4 E0052244 3C0141A8 */ lui $at, 0x41a8 +/* 35CCC8 E0052248 44810000 */ mtc1 $at, $f0 +/* 35CCCC E005224C 3C014188 */ lui $at, 0x4188 +/* 35CCD0 E0052250 44811000 */ mtc1 $at, $f2 +/* 35CCD4 E0052254 4600A503 */ div.s $f20, $f20, $f0 +/* 35CCD8 E0052258 4602A500 */ add.s $f20, $f20, $f2 +/* 35CCDC E005225C 0C080140 */ jal func_E0200500 +/* 35CCE0 E0052260 4600A306 */ mov.s $f12, $f20 +/* 35CCE4 E0052264 4600C002 */ mul.s $f0, $f24, $f0 +/* 35CCE8 E0052268 00000000 */ nop +/* 35CCEC E005226C 4600A306 */ mov.s $f12, $f20 +/* 35CCF0 E0052270 0C080144 */ jal func_E0200510 +/* 35CCF4 E0052274 E6600000 */ swc1 $f0, ($s3) +/* 35CCF8 E0052278 4600C087 */ neg.s $f2, $f24 +/* 35CCFC E005227C 46001082 */ mul.s $f2, $f2, $f0 +/* 35CD00 E0052280 00000000 */ nop +/* 35CD04 E0052284 44946000 */ mtc1 $s4, $f12 +/* 35CD08 E0052288 00000000 */ nop +/* 35CD0C E005228C 46806320 */ cvt.s.w $f12, $f12 +/* 35CD10 E0052290 0C080140 */ jal func_E0200500 +/* 35CD14 E0052294 E6220000 */ swc1 $f2, ($s1) +/* 35CD18 E0052298 46000021 */ cvt.d.s $f0, $f0 +/* 35CD1C E005229C 463A0002 */ mul.d $f0, $f0, $f26 +/* 35CD20 E00522A0 00000000 */ nop +/* 35CD24 E00522A4 463E0000 */ add.d $f0, $f0, $f30 +/* 35CD28 E00522A8 4496A000 */ mtc1 $s6, $f20 +/* 35CD2C E00522AC 00000000 */ nop +/* 35CD30 E00522B0 4680A520 */ cvt.s.w $f20, $f20 +/* 35CD34 E00522B4 4600A521 */ cvt.d.s $f20, $f20 +/* 35CD38 E00522B8 4620A002 */ mul.d $f0, $f20, $f0 +/* 35CD3C E00522BC 00000000 */ nop +/* 35CD40 E00522C0 3C0140A0 */ lui $at, 0x40a0 +/* 35CD44 E00522C4 44811000 */ mtc1 $at, $f2 +/* 35CD48 E00522C8 00000000 */ nop +/* 35CD4C E00522CC 4602B580 */ add.s $f22, $f22, $f2 +/* 35CD50 E00522D0 3C0141F0 */ lui $at, 0x41f0 +/* 35CD54 E00522D4 44811000 */ mtc1 $at, $f2 +/* 35CD58 E00522D8 00000000 */ nop +/* 35CD5C E00522DC 4602B082 */ mul.s $f2, $f22, $f2 +/* 35CD60 E00522E0 00000000 */ nop +/* 35CD64 E00522E4 460010A1 */ cvt.d.s $f2, $f2 +/* 35CD68 E00522E8 46220000 */ add.d $f0, $f0, $f2 +/* 35CD6C E00522EC 0C080140 */ jal func_E0200500 +/* 35CD70 E00522F0 46200320 */ cvt.s.d $f12, $f0 +/* 35CD74 E00522F4 46000021 */ cvt.d.s $f0, $f0 +/* 35CD78 E00522F8 463C0002 */ mul.d $f0, $f0, $f28 +/* 35CD7C E00522FC 00000000 */ nop +/* 35CD80 E0052300 C6620000 */ lwc1 $f2, ($s3) +/* 35CD84 E0052304 460010A1 */ cvt.d.s $f2, $f2 +/* 35CD88 E0052308 46201080 */ add.d $f2, $f2, $f0 +/* 35CD8C E005230C 44956000 */ mtc1 $s5, $f12 +/* 35CD90 E0052310 00000000 */ nop +/* 35CD94 E0052314 46806320 */ cvt.s.w $f12, $f12 +/* 35CD98 E0052318 462010A0 */ cvt.s.d $f2, $f2 +/* 35CD9C E005231C 0C080144 */ jal func_E0200510 +/* 35CDA0 E0052320 E6620000 */ swc1 $f2, ($s3) +/* 35CDA4 E0052324 46000021 */ cvt.d.s $f0, $f0 +/* 35CDA8 E0052328 463A0002 */ mul.d $f0, $f0, $f26 +/* 35CDAC E005232C 00000000 */ nop +/* 35CDB0 E0052330 463E0000 */ add.d $f0, $f0, $f30 +/* 35CDB4 E0052334 4620A502 */ mul.d $f20, $f20, $f0 +/* 35CDB8 E0052338 00000000 */ nop +/* 35CDBC E005233C 3C014248 */ lui $at, 0x4248 +/* 35CDC0 E0052340 44810000 */ mtc1 $at, $f0 +/* 35CDC4 E0052344 00000000 */ nop +/* 35CDC8 E0052348 4600B582 */ mul.s $f22, $f22, $f0 +/* 35CDCC E005234C 00000000 */ nop +/* 35CDD0 E0052350 4600B5A1 */ cvt.d.s $f22, $f22 +/* 35CDD4 E0052354 4636A500 */ add.d $f20, $f20, $f22 +/* 35CDD8 E0052358 0C080144 */ jal func_E0200510 +/* 35CDDC E005235C 4620A320 */ cvt.s.d $f12, $f20 +/* 35CDE0 E0052360 46000021 */ cvt.d.s $f0, $f0 +/* 35CDE4 E0052364 463C0002 */ mul.d $f0, $f0, $f28 +/* 35CDE8 E0052368 00000000 */ nop +/* 35CDEC E005236C 26520001 */ addiu $s2, $s2, 1 +/* 35CDF0 E0052370 26940035 */ addiu $s4, $s4, 0x35 +/* 35CDF4 E0052374 C6220000 */ lwc1 $f2, ($s1) +/* 35CDF8 E0052378 26B50024 */ addiu $s5, $s5, 0x24 +/* 35CDFC E005237C 460010A1 */ cvt.d.s $f2, $f2 +/* 35CE00 E0052380 46201080 */ add.d $f2, $f2, $f0 +/* 35CE04 E0052384 26730008 */ addiu $s3, $s3, 8 +/* 35CE08 E0052388 2A420014 */ slti $v0, $s2, 0x14 +/* 35CE0C E005238C 462010A0 */ cvt.s.d $f2, $f2 +/* 35CE10 E0052390 E6220000 */ swc1 $f2, ($s1) +/* 35CE14 E0052394 1440FFA4 */ bnez $v0, .LE0052228 +/* 35CE18 E0052398 26310008 */ addiu $s1, $s1, 8 +/* 35CE1C E005239C 2AE20064 */ slti $v0, $s7, 0x64 +/* 35CE20 E00523A0 10400006 */ beqz $v0, .LE00523BC +/* 35CE24 E00523A4 AE0000C4 */ sw $zero, 0xc4($s0) +/* 35CE28 E00523A8 C60000C8 */ lwc1 $f0, 0xc8($s0) +/* 35CE2C E00523AC 3C013F80 */ lui $at, 0x3f80 +/* 35CE30 E00523B0 44811000 */ mtc1 $at, $f2 +/* 35CE34 E00523B4 080148F5 */ j .LE00523D4 +/* 35CE38 E00523B8 46020000 */ add.s $f0, $f0, $f2 +.LE00523BC: +/* 35CE3C E00523BC 3C01E005 */ lui $at, %hi(D_E0052A88) +/* 35CE40 E00523C0 D4222A88 */ ldc1 $f2, %lo(D_E0052A88)($at) +/* 35CE44 E00523C4 4600C021 */ cvt.d.s $f0, $f24 +/* 35CE48 E00523C8 46220002 */ mul.d $f0, $f0, $f2 +/* 35CE4C E00523CC 00000000 */ nop +/* 35CE50 E00523D0 46200020 */ cvt.s.d $f0, $f0 +.LE00523D4: +/* 35CE54 E00523D4 E60000C8 */ swc1 $f0, 0xc8($s0) +.LE00523D8: +/* 35CE58 E00523D8 8FBF0030 */ lw $ra, 0x30($sp) +/* 35CE5C E00523DC 8FB7002C */ lw $s7, 0x2c($sp) +/* 35CE60 E00523E0 8FB60028 */ lw $s6, 0x28($sp) +/* 35CE64 E00523E4 8FB50024 */ lw $s5, 0x24($sp) +/* 35CE68 E00523E8 8FB40020 */ lw $s4, 0x20($sp) +/* 35CE6C E00523EC 8FB3001C */ lw $s3, 0x1c($sp) +/* 35CE70 E00523F0 8FB20018 */ lw $s2, 0x18($sp) +/* 35CE74 E00523F4 8FB10014 */ lw $s1, 0x14($sp) +/* 35CE78 E00523F8 8FB00010 */ lw $s0, 0x10($sp) +/* 35CE7C E00523FC D7BE0060 */ ldc1 $f30, 0x60($sp) +/* 35CE80 E0052400 D7BC0058 */ ldc1 $f28, 0x58($sp) +/* 35CE84 E0052404 D7BA0050 */ ldc1 $f26, 0x50($sp) +/* 35CE88 E0052408 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 35CE8C E005240C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 35CE90 E0052410 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 35CE94 E0052414 03E00008 */ jr $ra +/* 35CE98 E0052418 27BD0068 */ addiu $sp, $sp, 0x68 diff --git a/asm/nonmatchings/code_35CA80/func_E005241C.s b/asm/nonmatchings/code_35CA80/func_E005241C.s new file mode 100644 index 0000000000..550fbee617 --- /dev/null +++ b/asm/nonmatchings/code_35CA80/func_E005241C.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005241C +/* 35CE9C E005241C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 35CEA0 E0052420 3C02E005 */ lui $v0, %hi(D_E0052460) +/* 35CEA4 E0052424 24422460 */ addiu $v0, $v0, %lo(D_E0052460) +/* 35CEA8 E0052428 AFA2001C */ sw $v0, 0x1c($sp) +/* 35CEAC E005242C 2402002D */ addiu $v0, $zero, 0x2d +/* 35CEB0 E0052430 AFA40018 */ sw $a0, 0x18($sp) +/* 35CEB4 E0052434 27A40010 */ addiu $a0, $sp, 0x10 +/* 35CEB8 E0052438 AFBF0020 */ sw $ra, 0x20($sp) +/* 35CEBC E005243C AFA00014 */ sw $zero, 0x14($sp) +/* 35CEC0 E0052440 0C080120 */ jal func_E0200480 +/* 35CEC4 E0052444 AFA20010 */ sw $v0, 0x10($sp) +/* 35CEC8 E0052448 8C430000 */ lw $v1, ($v0) +/* 35CECC E005244C 34630002 */ ori $v1, $v1, 2 +/* 35CED0 E0052450 AC430000 */ sw $v1, ($v0) +/* 35CED4 E0052454 8FBF0020 */ lw $ra, 0x20($sp) +/* 35CED8 E0052458 03E00008 */ jr $ra +/* 35CEDC E005245C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_35CA80/func_E0052460.s b/asm/nonmatchings/code_35CA80/func_E0052460.s new file mode 100644 index 0000000000..57b7150039 --- /dev/null +++ b/asm/nonmatchings/code_35CA80/func_E0052460.s @@ -0,0 +1,364 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0052460 +/* 35CEE0 E0052460 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 35CEE4 E0052464 3C05DB06 */ lui $a1, 0xdb06 +/* 35CEE8 E0052468 3C07800A */ lui $a3, %hi(D_8009A66C) +/* 35CEEC E005246C 24E7A66C */ addiu $a3, $a3, %lo(D_8009A66C) +/* 35CEF0 E0052470 34A50024 */ ori $a1, $a1, 0x24 +/* 35CEF4 E0052474 3C02E700 */ lui $v0, 0xe700 +/* 35CEF8 E0052478 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 35CEFC E005247C AFBE00C0 */ sw $fp, 0xc0($sp) +/* 35CF00 E0052480 AFB700BC */ sw $s7, 0xbc($sp) +/* 35CF04 E0052484 AFB600B8 */ sw $s6, 0xb8($sp) +/* 35CF08 E0052488 AFB500B4 */ sw $s5, 0xb4($sp) +/* 35CF0C E005248C AFB400B0 */ sw $s4, 0xb0($sp) +/* 35CF10 E0052490 AFB300AC */ sw $s3, 0xac($sp) +/* 35CF14 E0052494 AFB200A8 */ sw $s2, 0xa8($sp) +/* 35CF18 E0052498 AFB100A4 */ sw $s1, 0xa4($sp) +/* 35CF1C E005249C AFB000A0 */ sw $s0, 0xa0($sp) +/* 35CF20 E00524A0 F7B600D0 */ sdc1 $f22, 0xd0($sp) +/* 35CF24 E00524A4 F7B400C8 */ sdc1 $f20, 0xc8($sp) +/* 35CF28 E00524A8 8CE60000 */ lw $a2, ($a3) +/* 35CF2C E00524AC 8C88000C */ lw $t0, 0xc($a0) +/* 35CF30 E00524B0 00C0182D */ daddu $v1, $a2, $zero +/* 35CF34 E00524B4 24C60008 */ addiu $a2, $a2, 8 +/* 35CF38 E00524B8 AC620000 */ sw $v0, ($v1) +/* 35CF3C E00524BC AC600004 */ sw $zero, 4($v1) +/* 35CF40 E00524C0 ACC50000 */ sw $a1, ($a2) +/* 35CF44 E00524C4 8C820010 */ lw $v0, 0x10($a0) +/* 35CF48 E00524C8 ACE60000 */ sw $a2, ($a3) +/* 35CF4C E00524CC 8C42001C */ lw $v0, 0x1c($v0) +/* 35CF50 E00524D0 3C038000 */ lui $v1, 0x8000 +/* 35CF54 E00524D4 00431021 */ addu $v0, $v0, $v1 +/* 35CF58 E00524D8 ACC20004 */ sw $v0, 4($a2) +/* 35CF5C E00524DC 8D0A001C */ lw $t2, 0x1c($t0) +/* 35CF60 E00524E0 24C20008 */ addiu $v0, $a2, 8 +/* 35CF64 E00524E4 AFAA0098 */ sw $t2, 0x98($sp) +/* 35CF68 E00524E8 15400009 */ bnez $t2, .LE0052510 +/* 35CF6C E00524EC ACE20000 */ sw $v0, ($a3) +/* 35CF70 E00524F0 24C20010 */ addiu $v0, $a2, 0x10 +/* 35CF74 E00524F4 ACE20000 */ sw $v0, ($a3) +/* 35CF78 E00524F8 3C02DE00 */ lui $v0, 0xde00 +/* 35CF7C E00524FC ACC20008 */ sw $v0, 8($a2) +/* 35CF80 E0052500 3C020900 */ lui $v0, 0x900 +/* 35CF84 E0052504 24420440 */ addiu $v0, $v0, 0x440 +/* 35CF88 E0052508 08014955 */ j .LE0052554 +/* 35CF8C E005250C ACC2000C */ sw $v0, 0xc($a2) +.LE0052510: +/* 35CF90 E0052510 8FAA0098 */ lw $t2, 0x98($sp) +/* 35CF94 E0052514 24020001 */ addiu $v0, $zero, 1 +/* 35CF98 E0052518 15420008 */ bne $t2, $v0, .LE005253C +/* 35CF9C E005251C 24C20010 */ addiu $v0, $a2, 0x10 +/* 35CFA0 E0052520 ACE20000 */ sw $v0, ($a3) +/* 35CFA4 E0052524 3C02DE00 */ lui $v0, 0xde00 +/* 35CFA8 E0052528 ACC20008 */ sw $v0, 8($a2) +/* 35CFAC E005252C 3C020900 */ lui $v0, 0x900 +/* 35CFB0 E0052530 24420390 */ addiu $v0, $v0, 0x390 +/* 35CFB4 E0052534 08014955 */ j .LE0052554 +/* 35CFB8 E0052538 ACC2000C */ sw $v0, 0xc($a2) +.LE005253C: +/* 35CFBC E005253C ACE20000 */ sw $v0, ($a3) +/* 35CFC0 E0052540 3C02DE00 */ lui $v0, 0xde00 +/* 35CFC4 E0052544 ACC20008 */ sw $v0, 8($a2) +/* 35CFC8 E0052548 3C020900 */ lui $v0, 0x900 +/* 35CFCC E005254C 244202E0 */ addiu $v0, $v0, 0x2e0 +/* 35CFD0 E0052550 ACC2000C */ sw $v0, 0xc($a2) +.LE0052554: +/* 35CFD4 E0052554 27A40018 */ addiu $a0, $sp, 0x18 +/* 35CFD8 E0052558 3C120001 */ lui $s2, 1 +/* 35CFDC E005255C 36521630 */ ori $s2, $s2, 0x1630 +/* 35CFE0 E0052560 0000982D */ daddu $s3, $zero, $zero +/* 35CFE4 E0052564 3C02800A */ lui $v0, %hi(D_8009A674) +/* 35CFE8 E0052568 2442A674 */ addiu $v0, $v0, %lo(D_8009A674) +/* 35CFEC E005256C 0040B82D */ daddu $s7, $v0, $zero +/* 35CFF0 E0052570 3C028007 */ lui $v0, %hi(D_800741F0) +/* 35CFF4 E0052574 244241F0 */ addiu $v0, $v0, %lo(D_800741F0) +/* 35CFF8 E0052578 0040B02D */ daddu $s6, $v0, $zero +/* 35CFFC E005257C 3C1E0001 */ lui $fp, 1 +/* 35D000 E0052580 37DE1630 */ ori $fp, $fp, 0x1630 +/* 35D004 E0052584 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 35D008 E0052588 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 35D00C E005258C 0040A82D */ daddu $s5, $v0, $zero +/* 35D010 E0052590 8D050004 */ lw $a1, 4($t0) +/* 35D014 E0052594 8D060008 */ lw $a2, 8($t0) +/* 35D018 E0052598 8D07000C */ lw $a3, 0xc($t0) +/* 35D01C E005259C 0C080108 */ jal func_E0200420 +/* 35D020 E00525A0 0100A02D */ daddu $s4, $t0, $zero +/* 35D024 E00525A4 27A40018 */ addiu $a0, $sp, 0x18 +/* 35D028 E00525A8 96C50000 */ lhu $a1, ($s6) +/* 35D02C E00525AC 8EE20000 */ lw $v0, ($s7) +/* 35D030 E00525B0 00052980 */ sll $a1, $a1, 6 +/* 35D034 E00525B4 00B22821 */ addu $a1, $a1, $s2 +/* 35D038 E00525B8 0C080118 */ jal func_E0200460 +/* 35D03C E00525BC 00452821 */ addu $a1, $v0, $a1 +/* 35D040 E00525C0 3C02DA38 */ lui $v0, 0xda38 +/* 35D044 E00525C4 34420002 */ ori $v0, $v0, 2 +/* 35D048 E00525C8 3C050100 */ lui $a1, 0x100 +/* 35D04C E00525CC 34A51002 */ ori $a1, $a1, 0x1002 +/* 35D050 E00525D0 3C110900 */ lui $s1, 0x900 +/* 35D054 E00525D4 26310190 */ addiu $s1, $s1, 0x190 +/* 35D058 E00525D8 4480A000 */ mtc1 $zero, $f20 +/* 35D05C E00525DC 8EA80000 */ lw $t0, ($s5) +/* 35D060 E00525E0 96C90000 */ lhu $t1, ($s6) +/* 35D064 E00525E4 3C013F80 */ lui $at, 0x3f80 +/* 35D068 E00525E8 4481B000 */ mtc1 $at, $f22 +/* 35D06C E00525EC 0100202D */ daddu $a0, $t0, $zero +/* 35D070 E00525F0 25080008 */ addiu $t0, $t0, 8 +/* 35D074 E00525F4 AC820000 */ sw $v0, ($a0) +/* 35D078 E00525F8 3122FFFF */ andi $v0, $t1, 0xffff +/* 35D07C E00525FC 00021180 */ sll $v0, $v0, 6 +/* 35D080 E0052600 00521021 */ addu $v0, $v0, $s2 +/* 35D084 E0052604 25290001 */ addiu $t1, $t1, 1 +/* 35D088 E0052608 4406A000 */ mfc1 $a2, $f20 +/* 35D08C E005260C 8EE30000 */ lw $v1, ($s7) +/* 35D090 E0052610 4407A000 */ mfc1 $a3, $f20 +/* 35D094 E0052614 00621821 */ addu $v1, $v1, $v0 +/* 35D098 E0052618 AC830004 */ sw $v1, 4($a0) +/* 35D09C E005261C AD050000 */ sw $a1, ($t0) +/* 35D0A0 E0052620 AD110004 */ sw $s1, 4($t0) +/* 35D0A4 E0052624 E7B60010 */ swc1 $f22, 0x10($sp) +/* 35D0A8 E0052628 8E850010 */ lw $a1, 0x10($s4) +/* 35D0AC E005262C 27A40018 */ addiu $a0, $sp, 0x18 +/* 35D0B0 E0052630 AEA80000 */ sw $t0, ($s5) +/* 35D0B4 E0052634 25080008 */ addiu $t0, $t0, 8 +/* 35D0B8 E0052638 A6C90000 */ sh $t1, ($s6) +/* 35D0BC E005263C 0C080104 */ jal func_E0200410 +/* 35D0C0 E0052640 AEA80000 */ sw $t0, ($s5) +/* 35D0C4 E0052644 27A40018 */ addiu $a0, $sp, 0x18 +/* 35D0C8 E0052648 96C50000 */ lhu $a1, ($s6) +/* 35D0CC E005264C 8EE20000 */ lw $v0, ($s7) +/* 35D0D0 E0052650 00052980 */ sll $a1, $a1, 6 +/* 35D0D4 E0052654 00B22821 */ addu $a1, $a1, $s2 +/* 35D0D8 E0052658 0C080118 */ jal func_E0200460 +/* 35D0DC E005265C 00452821 */ addu $a1, $v0, $a1 +/* 35D0E0 E0052660 3C03DA38 */ lui $v1, 0xda38 +/* 35D0E4 E0052664 34630001 */ ori $v1, $v1, 1 +/* 35D0E8 E0052668 27A40018 */ addiu $a0, $sp, 0x18 +/* 35D0EC E005266C 8EA20000 */ lw $v0, ($s5) +/* 35D0F0 E0052670 4406A000 */ mfc1 $a2, $f20 +/* 35D0F4 E0052674 96C80000 */ lhu $t0, ($s6) +/* 35D0F8 E0052678 0040482D */ daddu $t1, $v0, $zero +/* 35D0FC E005267C 24420008 */ addiu $v0, $v0, 8 +/* 35D100 E0052680 AEA20000 */ sw $v0, ($s5) +/* 35D104 E0052684 AD230000 */ sw $v1, ($t1) +/* 35D108 E0052688 3103FFFF */ andi $v1, $t0, 0xffff +/* 35D10C E005268C 00031980 */ sll $v1, $v1, 6 +/* 35D110 E0052690 00721821 */ addu $v1, $v1, $s2 +/* 35D114 E0052694 8EE20000 */ lw $v0, ($s7) +/* 35D118 E0052698 3C058007 */ lui $a1, %hi(gCurrentCameraID) +/* 35D11C E005269C 8CA57410 */ lw $a1, %lo(gCurrentCameraID)($a1) +/* 35D120 E00526A0 00431021 */ addu $v0, $v0, $v1 +/* 35D124 E00526A4 AD220004 */ sw $v0, 4($t1) +/* 35D128 E00526A8 00051080 */ sll $v0, $a1, 2 +/* 35D12C E00526AC 00451021 */ addu $v0, $v0, $a1 +/* 35D130 E00526B0 00021080 */ sll $v0, $v0, 2 +/* 35D134 E00526B4 00451023 */ subu $v0, $v0, $a1 +/* 35D138 E00526B8 000218C0 */ sll $v1, $v0, 3 +/* 35D13C E00526BC 00431021 */ addu $v0, $v0, $v1 +/* 35D140 E00526C0 000210C0 */ sll $v0, $v0, 3 +/* 35D144 E00526C4 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 35D148 E00526C8 00220821 */ addu $at, $at, $v0 +/* 35D14C E00526CC C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 35D150 E00526D0 4407B000 */ mfc1 $a3, $f22 +/* 35D154 E00526D4 46000007 */ neg.s $f0, $f0 +/* 35D158 E00526D8 44050000 */ mfc1 $a1, $f0 +/* 35D15C E00526DC 25080001 */ addiu $t0, $t0, 1 +/* 35D160 E00526E0 A6C80000 */ sh $t0, ($s6) +/* 35D164 E00526E4 0C080104 */ jal func_E0200410 +/* 35D168 E00526E8 E7B40010 */ swc1 $f20, 0x10($sp) +/* 35D16C E00526EC 27B00058 */ addiu $s0, $sp, 0x58 +/* 35D170 E00526F0 8E8500C4 */ lw $a1, 0xc4($s4) +/* 35D174 E00526F4 8E8600C8 */ lw $a2, 0xc8($s4) +/* 35D178 E00526F8 4407A000 */ mfc1 $a3, $f20 +/* 35D17C E00526FC 0C080108 */ jal func_E0200420 +/* 35D180 E0052700 0200202D */ daddu $a0, $s0, $zero +/* 35D184 E0052704 0200202D */ daddu $a0, $s0, $zero +/* 35D188 E0052708 27A50018 */ addiu $a1, $sp, 0x18 +/* 35D18C E005270C 0C080114 */ jal func_E0200450 +/* 35D190 E0052710 00A0302D */ daddu $a2, $a1, $zero +/* 35D194 E0052714 27A40018 */ addiu $a0, $sp, 0x18 +/* 35D198 E0052718 96C50000 */ lhu $a1, ($s6) +/* 35D19C E005271C 8EE20000 */ lw $v0, ($s7) +/* 35D1A0 E0052720 00052980 */ sll $a1, $a1, 6 +/* 35D1A4 E0052724 00B22821 */ addu $a1, $a1, $s2 +/* 35D1A8 E0052728 0C080118 */ jal func_E0200460 +/* 35D1AC E005272C 00452821 */ addu $a1, $v0, $a1 +/* 35D1B0 E0052730 3C060100 */ lui $a2, 0x100 +/* 35D1B4 E0052734 34C61004 */ ori $a2, $a2, 0x1004 +/* 35D1B8 E0052738 8EA40000 */ lw $a0, ($s5) +/* 35D1BC E005273C 3C03DA38 */ lui $v1, 0xda38 +/* 35D1C0 E0052740 0080282D */ daddu $a1, $a0, $zero +/* 35D1C4 E0052744 24840008 */ addiu $a0, $a0, 8 +/* 35D1C8 E0052748 AEA40000 */ sw $a0, ($s5) +/* 35D1CC E005274C 96C20000 */ lhu $v0, ($s6) +/* 35D1D0 E0052750 2631FFF0 */ addiu $s1, $s1, -0x10 +/* 35D1D4 E0052754 ACA30000 */ sw $v1, ($a1) +/* 35D1D8 E0052758 24430001 */ addiu $v1, $v0, 1 +/* 35D1DC E005275C 3042FFFF */ andi $v0, $v0, 0xffff +/* 35D1E0 E0052760 00021180 */ sll $v0, $v0, 6 +/* 35D1E4 E0052764 A6C30000 */ sh $v1, ($s6) +/* 35D1E8 E0052768 8EE30000 */ lw $v1, ($s7) +/* 35D1EC E005276C 00521021 */ addu $v0, $v0, $s2 +/* 35D1F0 E0052770 00621821 */ addu $v1, $v1, $v0 +/* 35D1F4 E0052774 24820008 */ addiu $v0, $a0, 8 +/* 35D1F8 E0052778 ACA30004 */ sw $v1, 4($a1) +/* 35D1FC E005277C AEA20000 */ sw $v0, ($s5) +/* 35D200 E0052780 AC860000 */ sw $a2, ($a0) +/* 35D204 E0052784 AC910004 */ sw $s1, 4($a0) +.LE0052788: +/* 35D208 E0052788 27A40018 */ addiu $a0, $sp, 0x18 +/* 35D20C E005278C 0000382D */ daddu $a3, $zero, $zero +/* 35D210 E0052790 8E850024 */ lw $a1, 0x24($s4) +/* 35D214 E0052794 8E860028 */ lw $a2, 0x28($s4) +/* 35D218 E0052798 0C080108 */ jal func_E0200420 +/* 35D21C E005279C 26940008 */ addiu $s4, $s4, 8 +/* 35D220 E00527A0 27A40018 */ addiu $a0, $sp, 0x18 +/* 35D224 E00527A4 96C50000 */ lhu $a1, ($s6) +/* 35D228 E00527A8 8EE20000 */ lw $v0, ($s7) +/* 35D22C E00527AC 00052980 */ sll $a1, $a1, 6 +/* 35D230 E00527B0 00BE2821 */ addu $a1, $a1, $fp +/* 35D234 E00527B4 0C080118 */ jal func_E0200460 +/* 35D238 E00527B8 00452821 */ addu $a1, $v0, $a1 +/* 35D23C E00527BC 3C080100 */ lui $t0, 0x100 +/* 35D240 E00527C0 35081000 */ ori $t0, $t0, 0x1000 +/* 35D244 E00527C4 3C09D838 */ lui $t1, 0xd838 +/* 35D248 E00527C8 35290002 */ ori $t1, $t1, 2 +/* 35D24C E00527CC 26640003 */ addiu $a0, $s3, 3 +/* 35D250 E00527D0 00133100 */ sll $a2, $s3, 4 +/* 35D254 E00527D4 26730001 */ addiu $s3, $s3, 1 +/* 35D258 E00527D8 3C03DA38 */ lui $v1, 0xda38 +/* 35D25C E00527DC 3084007F */ andi $a0, $a0, 0x7f +/* 35D260 E00527E0 8EA50000 */ lw $a1, ($s5) +/* 35D264 E00527E4 00042040 */ sll $a0, $a0, 1 +/* 35D268 E00527E8 00A0382D */ daddu $a3, $a1, $zero +/* 35D26C E00527EC 24A50008 */ addiu $a1, $a1, 8 +/* 35D270 E00527F0 AEA50000 */ sw $a1, ($s5) +/* 35D274 E00527F4 96C20000 */ lhu $v0, ($s6) +/* 35D278 E00527F8 00882025 */ or $a0, $a0, $t0 +/* 35D27C E00527FC ACE30000 */ sw $v1, ($a3) +/* 35D280 E0052800 24430001 */ addiu $v1, $v0, 1 +/* 35D284 E0052804 3042FFFF */ andi $v0, $v0, 0xffff +/* 35D288 E0052808 00021180 */ sll $v0, $v0, 6 +/* 35D28C E005280C A6C30000 */ sh $v1, ($s6) +/* 35D290 E0052810 8EE30000 */ lw $v1, ($s7) +/* 35D294 E0052814 005E1021 */ addu $v0, $v0, $fp +/* 35D298 E0052818 00621821 */ addu $v1, $v1, $v0 +/* 35D29C E005281C 24A20008 */ addiu $v0, $a1, 8 +/* 35D2A0 E0052820 ACE30004 */ sw $v1, 4($a3) +/* 35D2A4 E0052824 AEA20000 */ sw $v0, ($s5) +/* 35D2A8 E0052828 3C020900 */ lui $v0, 0x900 +/* 35D2AC E005282C 244201A0 */ addiu $v0, $v0, 0x1a0 +/* 35D2B0 E0052830 00C23021 */ addu $a2, $a2, $v0 +/* 35D2B4 E0052834 24A20010 */ addiu $v0, $a1, 0x10 +/* 35D2B8 E0052838 24030040 */ addiu $v1, $zero, 0x40 +/* 35D2BC E005283C ACA40000 */ sw $a0, ($a1) +/* 35D2C0 E0052840 ACA60004 */ sw $a2, 4($a1) +/* 35D2C4 E0052844 AEA20000 */ sw $v0, ($s5) +/* 35D2C8 E0052848 2A620014 */ slti $v0, $s3, 0x14 +/* 35D2CC E005284C ACA90008 */ sw $t1, 8($a1) +/* 35D2D0 E0052850 1440FFCD */ bnez $v0, .LE0052788 +/* 35D2D4 E0052854 ACA3000C */ sw $v1, 0xc($a1) +/* 35D2D8 E0052858 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 35D2DC E005285C 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 35D2E0 E0052860 8CC50000 */ lw $a1, ($a2) +/* 35D2E4 E0052864 00A0102D */ daddu $v0, $a1, $zero +/* 35D2E8 E0052868 24A50008 */ addiu $a1, $a1, 8 +/* 35D2EC E005286C ACC50000 */ sw $a1, ($a2) +/* 35D2F0 E0052870 AC490000 */ sw $t1, ($v0) +/* 35D2F4 E0052874 AC430004 */ sw $v1, 4($v0) +/* 35D2F8 E0052878 24A20008 */ addiu $v0, $a1, 8 +/* 35D2FC E005287C ACC20000 */ sw $v0, ($a2) +/* 35D300 E0052880 ACA90000 */ sw $t1, ($a1) +/* 35D304 E0052884 ACA30004 */ sw $v1, 4($a1) +/* 35D308 E0052888 8FAA0098 */ lw $t2, 0x98($sp) +/* 35D30C E005288C 29420064 */ slti $v0, $t2, 0x64 +/* 35D310 E0052890 1040001F */ beqz $v0, .LE0052910 +/* 35D314 E0052894 3C03052A */ lui $v1, 0x52a +/* 35D318 E0052898 34630402 */ ori $v1, $v1, 0x402 +/* 35D31C E005289C 0000982D */ daddu $s3, $zero, $zero +/* 35D320 E00528A0 00C0402D */ daddu $t0, $a2, $zero +/* 35D324 E00528A4 3C090500 */ lui $t1, 0x500 +/* 35D328 E00528A8 35290002 */ ori $t1, $t1, 2 +/* 35D32C E00528AC 24070006 */ addiu $a3, $zero, 6 +/* 35D330 E00528B0 24060004 */ addiu $a2, $zero, 4 +/* 35D334 E00528B4 24A20010 */ addiu $v0, $a1, 0x10 +/* 35D338 E00528B8 AD020000 */ sw $v0, ($t0) +/* 35D33C E00528BC ACA30008 */ sw $v1, 8($a1) +/* 35D340 E00528C0 ACA0000C */ sw $zero, 0xc($a1) +.LE00528C4: +/* 35D344 E00528C4 30E400FF */ andi $a0, $a3, 0xff +/* 35D348 E00528C8 24E70002 */ addiu $a3, $a3, 2 +/* 35D34C E00528CC 30C300FF */ andi $v1, $a2, 0xff +/* 35D350 E00528D0 24C60002 */ addiu $a2, $a2, 2 +/* 35D354 E00528D4 26730001 */ addiu $s3, $s3, 1 +/* 35D358 E00528D8 00031C00 */ sll $v1, $v1, 0x10 +/* 35D35C E00528DC 00042200 */ sll $a0, $a0, 8 +/* 35D360 E00528E0 00641825 */ or $v1, $v1, $a0 +/* 35D364 E00528E4 8D020000 */ lw $v0, ($t0) +/* 35D368 E00528E8 00691825 */ or $v1, $v1, $t1 +/* 35D36C E00528EC 0040282D */ daddu $a1, $v0, $zero +/* 35D370 E00528F0 24420008 */ addiu $v0, $v0, 8 +/* 35D374 E00528F4 AD020000 */ sw $v0, ($t0) +/* 35D378 E00528F8 2A620013 */ slti $v0, $s3, 0x13 +/* 35D37C E00528FC ACA30000 */ sw $v1, ($a1) +/* 35D380 E0052900 1440FFF0 */ bnez $v0, .LE00528C4 +/* 35D384 E0052904 ACA00004 */ sw $zero, 4($a1) +/* 35D388 E0052908 08014A67 */ j .LE005299C +/* 35D38C E005290C 00000000 */ nop +.LE0052910: +/* 35D390 E0052910 3C030500 */ lui $v1, 0x500 +/* 35D394 E0052914 34630204 */ ori $v1, $v1, 0x204 +/* 35D398 E0052918 3C040500 */ lui $a0, 0x500 +/* 35D39C E005291C 34842A02 */ ori $a0, $a0, 0x2a02 +/* 35D3A0 E0052920 0000982D */ daddu $s3, $zero, $zero +/* 35D3A4 E0052924 00C0402D */ daddu $t0, $a2, $zero +/* 35D3A8 E0052928 3C090500 */ lui $t1, 0x500 +/* 35D3AC E005292C 35290002 */ ori $t1, $t1, 2 +/* 35D3B0 E0052930 24070006 */ addiu $a3, $zero, 6 +/* 35D3B4 E0052934 24060004 */ addiu $a2, $zero, 4 +/* 35D3B8 E0052938 24A20010 */ addiu $v0, $a1, 0x10 +/* 35D3BC E005293C AD020000 */ sw $v0, ($t0) +/* 35D3C0 E0052940 24A20018 */ addiu $v0, $a1, 0x18 +/* 35D3C4 E0052944 ACA30008 */ sw $v1, 8($a1) +/* 35D3C8 E0052948 ACA0000C */ sw $zero, 0xc($a1) +/* 35D3CC E005294C AD020000 */ sw $v0, ($t0) +/* 35D3D0 E0052950 ACA40010 */ sw $a0, 0x10($a1) +/* 35D3D4 E0052954 ACA00014 */ sw $zero, 0x14($a1) +.LE0052958: +/* 35D3D8 E0052958 30E400FF */ andi $a0, $a3, 0xff +/* 35D3DC E005295C 24E70002 */ addiu $a3, $a3, 2 +/* 35D3E0 E0052960 30C300FF */ andi $v1, $a2, 0xff +/* 35D3E4 E0052964 24C60002 */ addiu $a2, $a2, 2 +/* 35D3E8 E0052968 26730001 */ addiu $s3, $s3, 1 +/* 35D3EC E005296C 00031C00 */ sll $v1, $v1, 0x10 +/* 35D3F0 E0052970 00042200 */ sll $a0, $a0, 8 +/* 35D3F4 E0052974 00641825 */ or $v1, $v1, $a0 +/* 35D3F8 E0052978 8D020000 */ lw $v0, ($t0) +/* 35D3FC E005297C 00691825 */ or $v1, $v1, $t1 +/* 35D400 E0052980 0040282D */ daddu $a1, $v0, $zero +/* 35D404 E0052984 24420008 */ addiu $v0, $v0, 8 +/* 35D408 E0052988 AD020000 */ sw $v0, ($t0) +/* 35D40C E005298C 2A620013 */ slti $v0, $s3, 0x13 +/* 35D410 E0052990 ACA30000 */ sw $v1, ($a1) +/* 35D414 E0052994 1440FFF0 */ bnez $v0, .LE0052958 +/* 35D418 E0052998 ACA00004 */ sw $zero, 4($a1) +.LE005299C: +/* 35D41C E005299C 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 35D420 E00529A0 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 35D424 E00529A4 8FB700BC */ lw $s7, 0xbc($sp) +/* 35D428 E00529A8 8FB600B8 */ lw $s6, 0xb8($sp) +/* 35D42C E00529AC 8FB500B4 */ lw $s5, 0xb4($sp) +/* 35D430 E00529B0 8FB400B0 */ lw $s4, 0xb0($sp) +/* 35D434 E00529B4 8FB300AC */ lw $s3, 0xac($sp) +/* 35D438 E00529B8 8FB200A8 */ lw $s2, 0xa8($sp) +/* 35D43C E00529BC 8FB100A4 */ lw $s1, 0xa4($sp) +/* 35D440 E00529C0 8FB000A0 */ lw $s0, 0xa0($sp) +/* 35D444 E00529C4 D7B600D0 */ ldc1 $f22, 0xd0($sp) +/* 35D448 E00529C8 D7B400C8 */ ldc1 $f20, 0xc8($sp) +/* 35D44C E00529CC 03E00008 */ jr $ra +/* 35D450 E00529D0 27BD00D8 */ addiu $sp, $sp, 0xd8 +/* 35D454 E00529D4 00000000 */ nop +/* 35D458 E00529D8 00000000 */ nop +/* 35D45C E00529DC 00000000 */ nop diff --git a/asm/nonmatchings/code_35DA00/func_E0056000.s b/asm/nonmatchings/code_35DA00/func_E0056000.s new file mode 100644 index 0000000000..5830883546 --- /dev/null +++ b/asm/nonmatchings/code_35DA00/func_E0056000.s @@ -0,0 +1,208 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0056000 +/* 35DA00 E0056000 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 35DA04 E0056004 F7B40048 */ sdc1 $f20, 0x48($sp) +/* 35DA08 E0056008 4485A000 */ mtc1 $a1, $f20 +/* 35DA0C E005600C AFB5003C */ sw $s5, 0x3c($sp) +/* 35DA10 E0056010 0080A82D */ daddu $s5, $a0, $zero +/* 35DA14 E0056014 F7B60050 */ sdc1 $f22, 0x50($sp) +/* 35DA18 E0056018 4486B000 */ mtc1 $a2, $f22 +/* 35DA1C E005601C 27A40010 */ addiu $a0, $sp, 0x10 +/* 35DA20 E0056020 F7B80058 */ sdc1 $f24, 0x58($sp) +/* 35DA24 E0056024 4487C000 */ mtc1 $a3, $f24 +/* 35DA28 E0056028 3C02E005 */ lui $v0, %hi(D_E0056304) +/* 35DA2C E005602C 24426304 */ addiu $v0, $v0, %lo(D_E0056304) +/* 35DA30 E0056030 AFA20018 */ sw $v0, 0x18($sp) +/* 35DA34 E0056034 3C02E005 */ lui $v0, %hi(D_E005630C) +/* 35DA38 E0056038 2442630C */ addiu $v0, $v0, %lo(D_E005630C) +/* 35DA3C E005603C AFA2001C */ sw $v0, 0x1c($sp) +/* 35DA40 E0056040 3C02E005 */ lui $v0, %hi(D_E0056B8C) +/* 35DA44 E0056044 24426B8C */ addiu $v0, $v0, %lo(D_E0056B8C) +/* 35DA48 E0056048 AFA20020 */ sw $v0, 0x20($sp) +/* 35DA4C E005604C 2402002B */ addiu $v0, $zero, 0x2b +/* 35DA50 E0056050 AFBF0044 */ sw $ra, 0x44($sp) +/* 35DA54 E0056054 AFB60040 */ sw $s6, 0x40($sp) +/* 35DA58 E0056058 AFB40038 */ sw $s4, 0x38($sp) +/* 35DA5C E005605C AFB30034 */ sw $s3, 0x34($sp) +/* 35DA60 E0056060 AFB20030 */ sw $s2, 0x30($sp) +/* 35DA64 E0056064 AFB1002C */ sw $s1, 0x2c($sp) +/* 35DA68 E0056068 AFB00028 */ sw $s0, 0x28($sp) +/* 35DA6C E005606C AFA00010 */ sw $zero, 0x10($sp) +/* 35DA70 E0056070 AFA00024 */ sw $zero, 0x24($sp) +/* 35DA74 E0056074 0C080124 */ jal func_E0200490 +/* 35DA78 E0056078 AFA20014 */ sw $v0, 0x14($sp) +/* 35DA7C E005607C 2404012C */ addiu $a0, $zero, 0x12c +/* 35DA80 E0056080 24160005 */ addiu $s6, $zero, 5 +/* 35DA84 E0056084 0040802D */ daddu $s0, $v0, $zero +/* 35DA88 E0056088 0C08012C */ jal func_E02004B0 +/* 35DA8C E005608C AE160008 */ sw $s6, 8($s0) +/* 35DA90 E0056090 0040182D */ daddu $v1, $v0, $zero +/* 35DA94 E0056094 14600003 */ bnez $v1, .LE00560A4 +/* 35DA98 E0056098 AE03000C */ sw $v1, 0xc($s0) +.LE005609C: +/* 35DA9C E005609C 08015827 */ j .LE005609C +/* 35DAA0 E00560A0 00000000 */ nop +.LE00560A4: +/* 35DAA4 E00560A4 24020064 */ addiu $v0, $zero, 0x64 +/* 35DAA8 E00560A8 AC750000 */ sw $s5, ($v1) +/* 35DAAC E00560AC E4740004 */ swc1 $f20, 4($v1) +/* 35DAB0 E00560B0 E4760008 */ swc1 $f22, 8($v1) +/* 35DAB4 E00560B4 E478000C */ swc1 $f24, 0xc($v1) +/* 35DAB8 E00560B8 AC620028 */ sw $v0, 0x28($v1) +/* 35DABC E00560BC AC60002C */ sw $zero, 0x2c($v1) +/* 35DAC0 E00560C0 AC600024 */ sw $zero, 0x24($v1) +/* 35DAC4 E00560C4 24140001 */ addiu $s4, $zero, 1 +/* 35DAC8 E00560C8 0296102A */ slt $v0, $s4, $s6 +/* 35DACC E00560CC 10400080 */ beqz $v0, .LE00562D0 +/* 35DAD0 E00560D0 2463003C */ addiu $v1, $v1, 0x3c +/* 35DAD4 E00560D4 24730014 */ addiu $s3, $v1, 0x14 +/* 35DAD8 E00560D8 3C01E005 */ lui $at, %hi(D_E0056EA0) +/* 35DADC E00560DC D4346EA0 */ ldc1 $f20, %lo(D_E0056EA0)($at) +/* 35DAE0 E00560E0 3C01E005 */ lui $at, %hi(D_E0056EA8) +/* 35DAE4 E00560E4 D4386EA8 */ ldc1 $f24, %lo(D_E0056EA8)($at) +/* 35DAE8 E00560E8 3C01E005 */ lui $at, %hi(D_E0056EB0) +/* 35DAEC E00560EC D4366EB0 */ ldc1 $f22, %lo(D_E0056EB0)($at) +.LE00560F0: +/* 35DAF0 E00560F0 0C080000 */ jal func_E0200000 +/* 35DAF4 E00560F4 24040032 */ addiu $a0, $zero, 0x32 +/* 35DAF8 E00560F8 24040014 */ addiu $a0, $zero, 0x14 +/* 35DAFC E00560FC 0C080000 */ jal func_E0200000 +/* 35DB00 E0056100 0040802D */ daddu $s0, $v0, $zero +/* 35DB04 E0056104 24040168 */ addiu $a0, $zero, 0x168 +/* 35DB08 E0056108 0C080000 */ jal func_E0200000 +/* 35DB0C E005610C 0040882D */ daddu $s1, $v0, $zero +/* 35DB10 E0056110 24040064 */ addiu $a0, $zero, 0x64 +/* 35DB14 E0056114 0C080000 */ jal func_E0200000 +/* 35DB18 E0056118 0040902D */ daddu $s2, $v0, $zero +/* 35DB1C E005611C 2610004B */ addiu $s0, $s0, 0x4b +/* 35DB20 E0056120 44900000 */ mtc1 $s0, $f0 +/* 35DB24 E0056124 00000000 */ nop +/* 35DB28 E0056128 46800020 */ cvt.s.w $f0, $f0 +/* 35DB2C E005612C 26310046 */ addiu $s1, $s1, 0x46 +/* 35DB30 E0056130 E660FFF0 */ swc1 $f0, -0x10($s3) +/* 35DB34 E0056134 44910000 */ mtc1 $s1, $f0 +/* 35DB38 E0056138 00000000 */ nop +/* 35DB3C E005613C 46800020 */ cvt.s.w $f0, $f0 +/* 35DB40 E0056140 E660FFF4 */ swc1 $f0, -0xc($s3) +/* 35DB44 E0056144 44920000 */ mtc1 $s2, $f0 +/* 35DB48 E0056148 00000000 */ nop +/* 35DB4C E005614C 46800020 */ cvt.s.w $f0, $f0 +/* 35DB50 E0056150 24030168 */ addiu $v1, $zero, 0x168 +/* 35DB54 E0056154 00721823 */ subu $v1, $v1, $s2 +/* 35DB58 E0056158 E6600004 */ swc1 $f0, 4($s3) +/* 35DB5C E005615C 44830000 */ mtc1 $v1, $f0 +/* 35DB60 E0056160 00000000 */ nop +/* 35DB64 E0056164 46800020 */ cvt.s.w $f0, $f0 +/* 35DB68 E0056168 0040182D */ daddu $v1, $v0, $zero +/* 35DB6C E005616C 24020001 */ addiu $v0, $zero, 1 +/* 35DB70 E0056170 AE60FFF8 */ sw $zero, -8($s3) +/* 35DB74 E0056174 12A20019 */ beq $s5, $v0, .LE00561DC +/* 35DB78 E0056178 E660000C */ swc1 $f0, 0xc($s3) +/* 35DB7C E005617C 2AA20002 */ slti $v0, $s5, 2 +/* 35DB80 E0056180 10400005 */ beqz $v0, .LE0056198 +/* 35DB84 E0056184 24020002 */ addiu $v0, $zero, 2 +/* 35DB88 E0056188 52A00007 */ beql $s5, $zero, .LE00561A8 +/* 35DB8C E005618C AE60FFFC */ sw $zero, -4($s3) +/* 35DB90 E0056190 080158B1 */ j .LE00562C4 +/* 35DB94 E0056194 26940001 */ addiu $s4, $s4, 1 +.LE0056198: +/* 35DB98 E0056198 12A20023 */ beq $s5, $v0, .LE0056228 +/* 35DB9C E005619C 2404000A */ addiu $a0, $zero, 0xa +/* 35DBA0 E00561A0 080158B1 */ j .LE00562C4 +/* 35DBA4 E00561A4 26940001 */ addiu $s4, $s4, 1 +.LE00561A8: +/* 35DBA8 E00561A8 44830000 */ mtc1 $v1, $f0 +/* 35DBAC E00561AC 00000000 */ nop +/* 35DBB0 E00561B0 46800020 */ cvt.s.w $f0, $f0 +/* 35DBB4 E00561B4 46000021 */ cvt.d.s $f0, $f0 +/* 35DBB8 E00561B8 46340002 */ mul.d $f0, $f0, $f20 +/* 35DBBC E00561BC 00000000 */ nop +/* 35DBC0 E00561C0 3C01C040 */ lui $at, 0xc040 +/* 35DBC4 E00561C4 44811000 */ mtc1 $at, $f2 +/* 35DBC8 E00561C8 3C014040 */ lui $at, 0x4040 +/* 35DBCC E00561CC 44812000 */ mtc1 $at, $f4 +/* 35DBD0 E00561D0 AE600000 */ sw $zero, ($s3) +/* 35DBD4 E00561D4 08015885 */ j .LE0056214 +/* 35DBD8 E00561D8 AE600020 */ sw $zero, 0x20($s3) +.LE00561DC: +/* 35DBDC E00561DC 44830000 */ mtc1 $v1, $f0 +/* 35DBE0 E00561E0 00000000 */ nop +/* 35DBE4 E00561E4 46800020 */ cvt.s.w $f0, $f0 +/* 35DBE8 E00561E8 46000021 */ cvt.d.s $f0, $f0 +/* 35DBEC E00561EC 46340002 */ mul.d $f0, $f0, $f20 +/* 35DBF0 E00561F0 00000000 */ nop +/* 35DBF4 E00561F4 3C01C0C0 */ lui $at, 0xc0c0 +/* 35DBF8 E00561F8 44811000 */ mtc1 $at, $f2 +/* 35DBFC E00561FC 3C0140C0 */ lui $at, 0x40c0 +/* 35DC00 E0056200 44812000 */ mtc1 $at, $f4 +/* 35DC04 E0056204 AE60FFFC */ sw $zero, -4($s3) +/* 35DC08 E0056208 AE600000 */ sw $zero, ($s3) +/* 35DC0C E005620C AE600020 */ sw $zero, 0x20($s3) +/* 35DC10 E0056210 46200000 */ add.d $f0, $f0, $f0 +.LE0056214: +/* 35DC14 E0056214 E662001C */ swc1 $f2, 0x1c($s3) +/* 35DC18 E0056218 E6640024 */ swc1 $f4, 0x24($s3) +/* 35DC1C E005621C 46200020 */ cvt.s.d $f0, $f0 +/* 35DC20 E0056220 080158B0 */ j .LE00562C0 +/* 35DC24 E0056224 E6600008 */ swc1 $f0, 8($s3) +.LE0056228: +/* 35DC28 E0056228 44830000 */ mtc1 $v1, $f0 +/* 35DC2C E005622C 00000000 */ nop +/* 35DC30 E0056230 46800020 */ cvt.s.w $f0, $f0 +/* 35DC34 E0056234 46000021 */ cvt.d.s $f0, $f0 +/* 35DC38 E0056238 46340002 */ mul.d $f0, $f0, $f20 +/* 35DC3C E005623C 00000000 */ nop +/* 35DC40 E0056240 46200000 */ add.d $f0, $f0, $f0 +/* 35DC44 E0056244 46200020 */ cvt.s.d $f0, $f0 +/* 35DC48 E0056248 0C080138 */ jal func_E02004E0 +/* 35DC4C E005624C E6600008 */ swc1 $f0, 8($s3) +/* 35DC50 E0056250 44821000 */ mtc1 $v0, $f2 +/* 35DC54 E0056254 00000000 */ nop +/* 35DC58 E0056258 468010A1 */ cvt.d.w $f2, $f2 +/* 35DC5C E005625C 46381082 */ mul.d $f2, $f2, $f24 +/* 35DC60 E0056260 00000000 */ nop +/* 35DC64 E0056264 46361080 */ add.d $f2, $f2, $f22 +/* 35DC68 E0056268 C660FFF0 */ lwc1 $f0, -0x10($s3) +/* 35DC6C E005626C 46000007 */ neg.s $f0, $f0 +/* 35DC70 E0056270 46000021 */ cvt.d.s $f0, $f0 +/* 35DC74 E0056274 46220002 */ mul.d $f0, $f0, $f2 +/* 35DC78 E0056278 00000000 */ nop +/* 35DC7C E005627C 2404000A */ addiu $a0, $zero, 0xa +/* 35DC80 E0056280 46200020 */ cvt.s.d $f0, $f0 +/* 35DC84 E0056284 0C080138 */ jal func_E02004E0 +/* 35DC88 E0056288 E660FFFC */ swc1 $f0, -4($s3) +/* 35DC8C E005628C 44821000 */ mtc1 $v0, $f2 +/* 35DC90 E0056290 00000000 */ nop +/* 35DC94 E0056294 468010A1 */ cvt.d.w $f2, $f2 +/* 35DC98 E0056298 46381082 */ mul.d $f2, $f2, $f24 +/* 35DC9C E005629C 00000000 */ nop +/* 35DCA0 E00562A0 46361080 */ add.d $f2, $f2, $f22 +/* 35DCA4 E00562A4 C660FFF4 */ lwc1 $f0, -0xc($s3) +/* 35DCA8 E00562A8 46000007 */ neg.s $f0, $f0 +/* 35DCAC E00562AC 46000021 */ cvt.d.s $f0, $f0 +/* 35DCB0 E00562B0 46220002 */ mul.d $f0, $f0, $f2 +/* 35DCB4 E00562B4 00000000 */ nop +/* 35DCB8 E00562B8 46200020 */ cvt.s.d $f0, $f0 +/* 35DCBC E00562BC E6600000 */ swc1 $f0, ($s3) +.LE00562C0: +/* 35DCC0 E00562C0 26940001 */ addiu $s4, $s4, 1 +.LE00562C4: +/* 35DCC4 E00562C4 0296102A */ slt $v0, $s4, $s6 +/* 35DCC8 E00562C8 1440FF89 */ bnez $v0, .LE00560F0 +/* 35DCCC E00562CC 2673003C */ addiu $s3, $s3, 0x3c +.LE00562D0: +/* 35DCD0 E00562D0 8FBF0044 */ lw $ra, 0x44($sp) +/* 35DCD4 E00562D4 8FB60040 */ lw $s6, 0x40($sp) +/* 35DCD8 E00562D8 8FB5003C */ lw $s5, 0x3c($sp) +/* 35DCDC E00562DC 8FB40038 */ lw $s4, 0x38($sp) +/* 35DCE0 E00562E0 8FB30034 */ lw $s3, 0x34($sp) +/* 35DCE4 E00562E4 8FB20030 */ lw $s2, 0x30($sp) +/* 35DCE8 E00562E8 8FB1002C */ lw $s1, 0x2c($sp) +/* 35DCEC E00562EC 8FB00028 */ lw $s0, 0x28($sp) +/* 35DCF0 E00562F0 D7B80058 */ ldc1 $f24, 0x58($sp) +/* 35DCF4 E00562F4 D7B60050 */ ldc1 $f22, 0x50($sp) +/* 35DCF8 E00562F8 D7B40048 */ ldc1 $f20, 0x48($sp) +/* 35DCFC E00562FC 03E00008 */ jr $ra +/* 35DD00 E0056300 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_35DA00/func_E0056304.s b/asm/nonmatchings/code_35DA00/func_E0056304.s new file mode 100644 index 0000000000..5d18f08ec5 --- /dev/null +++ b/asm/nonmatchings/code_35DA00/func_E0056304.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0056304 +/* 35DD04 E0056304 03E00008 */ jr $ra +/* 35DD08 E0056308 00000000 */ nop diff --git a/asm/nonmatchings/code_35DA00/func_E005630C.s b/asm/nonmatchings/code_35DA00/func_E005630C.s new file mode 100644 index 0000000000..6903d70f8e --- /dev/null +++ b/asm/nonmatchings/code_35DA00/func_E005630C.s @@ -0,0 +1,581 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005630C +/* 35DD0C E005630C 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 35DD10 E0056310 AFB40020 */ sw $s4, 0x20($sp) +/* 35DD14 E0056314 0080A02D */ daddu $s4, $a0, $zero +/* 35DD18 E0056318 AFBF0024 */ sw $ra, 0x24($sp) +/* 35DD1C E005631C AFB3001C */ sw $s3, 0x1c($sp) +/* 35DD20 E0056320 AFB20018 */ sw $s2, 0x18($sp) +/* 35DD24 E0056324 AFB10014 */ sw $s1, 0x14($sp) +/* 35DD28 E0056328 AFB00010 */ sw $s0, 0x10($sp) +/* 35DD2C E005632C F7BC0048 */ sdc1 $f28, 0x48($sp) +/* 35DD30 E0056330 F7BA0040 */ sdc1 $f26, 0x40($sp) +/* 35DD34 E0056334 F7B80038 */ sdc1 $f24, 0x38($sp) +/* 35DD38 E0056338 F7B60030 */ sdc1 $f22, 0x30($sp) +/* 35DD3C E005633C F7B40028 */ sdc1 $f20, 0x28($sp) +/* 35DD40 E0056340 8E84000C */ lw $a0, 0xc($s4) +/* 35DD44 E0056344 8C820028 */ lw $v0, 0x28($a0) +/* 35DD48 E0056348 8C85002C */ lw $a1, 0x2c($a0) +/* 35DD4C E005634C 2442FFFF */ addiu $v0, $v0, -1 +/* 35DD50 E0056350 AC820028 */ sw $v0, 0x28($a0) +/* 35DD54 E0056354 0040302D */ daddu $a2, $v0, $zero +/* 35DD58 E0056358 24A20001 */ addiu $v0, $a1, 1 +/* 35DD5C E005635C 04C10005 */ bgez $a2, .LE0056374 +/* 35DD60 E0056360 AC82002C */ sw $v0, 0x2c($a0) +/* 35DD64 E0056364 0C080128 */ jal func_E02004A0 +/* 35DD68 E0056368 0280202D */ daddu $a0, $s4, $zero +/* 35DD6C E005636C 08015AD6 */ j .LE0056B58 +/* 35DD70 E0056370 00000000 */ nop +.LE0056374: +/* 35DD74 E0056374 8C930000 */ lw $s3, ($a0) +/* 35DD78 E0056378 2842000A */ slti $v0, $v0, 0xa +/* 35DD7C E005637C 10400010 */ beqz $v0, .LE00563C0 +/* 35DD80 E0056380 240200FF */ addiu $v0, $zero, 0xff +/* 35DD84 E0056384 8C830024 */ lw $v1, 0x24($a0) +/* 35DD88 E0056388 3C01E005 */ lui $at, %hi(D_E0056EB8) +/* 35DD8C E005638C D4206EB8 */ ldc1 $f0, %lo(D_E0056EB8)($at) +/* 35DD90 E0056390 00431023 */ subu $v0, $v0, $v1 +/* 35DD94 E0056394 44821000 */ mtc1 $v0, $f2 +/* 35DD98 E0056398 00000000 */ nop +/* 35DD9C E005639C 468010A1 */ cvt.d.w $f2, $f2 +/* 35DDA0 E00563A0 46201082 */ mul.d $f2, $f2, $f0 +/* 35DDA4 E00563A4 00000000 */ nop +/* 35DDA8 E00563A8 44830000 */ mtc1 $v1, $f0 +/* 35DDAC E00563AC 00000000 */ nop +/* 35DDB0 E00563B0 46800021 */ cvt.d.w $f0, $f0 +/* 35DDB4 E00563B4 46220000 */ add.d $f0, $f0, $f2 +/* 35DDB8 E00563B8 4620028D */ trunc.w.d $f10, $f0 +/* 35DDBC E00563BC E48A0024 */ swc1 $f10, 0x24($a0) +.LE00563C0: +/* 35DDC0 E00563C0 28C2000A */ slti $v0, $a2, 0xa +/* 35DDC4 E00563C4 10400009 */ beqz $v0, .LE00563EC +/* 35DDC8 E00563C8 24020001 */ addiu $v0, $zero, 1 +/* 35DDCC E00563CC 3C01E005 */ lui $at, %hi(D_E0056EC0) +/* 35DDD0 E00563D0 D4226EC0 */ ldc1 $f2, %lo(D_E0056EC0)($at) +/* 35DDD4 E00563D4 C4800024 */ lwc1 $f0, 0x24($a0) +/* 35DDD8 E00563D8 46800021 */ cvt.d.w $f0, $f0 +/* 35DDDC E00563DC 46220002 */ mul.d $f0, $f0, $f2 +/* 35DDE0 E00563E0 00000000 */ nop +/* 35DDE4 E00563E4 4620028D */ trunc.w.d $f10, $f0 +/* 35DDE8 E00563E8 E48A0024 */ swc1 $f10, 0x24($a0) +.LE00563EC: +/* 35DDEC E00563EC 126200E6 */ beq $s3, $v0, .LE0056788 +/* 35DDF0 E00563F0 2484003C */ addiu $a0, $a0, 0x3c +/* 35DDF4 E00563F4 2A620002 */ slti $v0, $s3, 2 +/* 35DDF8 E00563F8 50400005 */ beql $v0, $zero, .LE0056410 +/* 35DDFC E00563FC 24020002 */ addiu $v0, $zero, 2 +/* 35DE00 E0056400 12600007 */ beqz $s3, .LE0056420 +/* 35DE04 E0056404 24120001 */ addiu $s2, $zero, 1 +/* 35DE08 E0056408 08015AD6 */ j .LE0056B58 +/* 35DE0C E005640C 00000000 */ nop +.LE0056410: +/* 35DE10 E0056410 1262019E */ beq $s3, $v0, .LE0056A8C +/* 35DE14 E0056414 24120001 */ addiu $s2, $zero, 1 +/* 35DE18 E0056418 08015AD6 */ j .LE0056B58 +/* 35DE1C E005641C 00000000 */ nop +.LE0056420: +/* 35DE20 E0056420 8E820008 */ lw $v0, 8($s4) +/* 35DE24 E0056424 0242102A */ slt $v0, $s2, $v0 +/* 35DE28 E0056428 104001CB */ beqz $v0, .LE0056B58 +/* 35DE2C E005642C 2490000C */ addiu $s0, $a0, 0xc +/* 35DE30 E0056430 24B10015 */ addiu $s1, $a1, 0x15 +/* 35DE34 E0056434 3C01BD4C */ lui $at, 0xbd4c +/* 35DE38 E0056438 3421CCCD */ ori $at, $at, 0xcccd +/* 35DE3C E005643C 4481E000 */ mtc1 $at, $f28 +/* 35DE40 E0056440 3C014120 */ lui $at, 0x4120 +/* 35DE44 E0056444 4481D000 */ mtc1 $at, $f26 +/* 35DE48 E0056448 3C01E005 */ lui $at, %hi(D_E0056EC8) +/* 35DE4C E005644C D4346EC8 */ ldc1 $f20, %lo(D_E0056EC8)($at) +/* 35DE50 E0056450 4480C000 */ mtc1 $zero, $f24 +/* 35DE54 E0056454 3C01E005 */ lui $at, %hi(D_E0056ED0) +/* 35DE58 E0056458 D4366ED0 */ ldc1 $f22, %lo(D_E0056ED0)($at) +.LE005645C: +/* 35DE5C E005645C C60C000C */ lwc1 $f12, 0xc($s0) +/* 35DE60 E0056460 0C080140 */ jal func_E0200500 +/* 35DE64 E0056464 460C6300 */ add.s $f12, $f12, $f12 +/* 35DE68 E0056468 3C01E005 */ lui $at, %hi(D_E0056ED8) +/* 35DE6C E005646C D4226ED8 */ ldc1 $f2, %lo(D_E0056ED8)($at) +/* 35DE70 E0056470 46000021 */ cvt.d.s $f0, $f0 +/* 35DE74 E0056474 46220002 */ mul.d $f0, $f0, $f2 +/* 35DE78 E0056478 00000000 */ nop +/* 35DE7C E005647C C6020008 */ lwc1 $f2, 8($s0) +/* 35DE80 E0056480 461C1080 */ add.s $f2, $f2, $f28 +/* 35DE84 E0056484 C6040004 */ lwc1 $f4, 4($s0) +/* 35DE88 E0056488 46200020 */ cvt.s.d $f0, $f0 +/* 35DE8C E005648C 46002000 */ add.s $f0, $f4, $f0 +/* 35DE90 E0056490 E6020008 */ swc1 $f2, 8($s0) +/* 35DE94 E0056494 16600019 */ bnez $s3, .LE00564FC +/* 35DE98 E0056498 E6000004 */ swc1 $f0, 4($s0) +/* 35DE9C E005649C 3C01E005 */ lui $at, %hi(D_E0056EE0) +/* 35DEA0 E00564A0 D4226EE0 */ ldc1 $f2, %lo(D_E0056EE0)($at) +/* 35DEA4 E00564A4 46000021 */ cvt.d.s $f0, $f0 +/* 35DEA8 E00564A8 46220002 */ mul.d $f0, $f0, $f2 +/* 35DEAC E00564AC 00000000 */ nop +/* 35DEB0 E00564B0 C60C000C */ lwc1 $f12, 0xc($s0) +/* 35DEB4 E00564B4 46200020 */ cvt.s.d $f0, $f0 +/* 35DEB8 E00564B8 0C080140 */ jal func_E0200500 +/* 35DEBC E00564BC E6000004 */ swc1 $f0, 4($s0) +/* 35DEC0 E00564C0 3C01E005 */ lui $at, %hi(D_E0056EE8) +/* 35DEC4 E00564C4 D4226EE8 */ ldc1 $f2, %lo(D_E0056EE8)($at) +/* 35DEC8 E00564C8 46000021 */ cvt.d.s $f0, $f0 +/* 35DECC E00564CC 46220002 */ mul.d $f0, $f0, $f2 +/* 35DED0 E00564D0 00000000 */ nop +/* 35DED4 E00564D4 3C01E005 */ lui $at, %hi(D_E0056EF0) +/* 35DED8 E00564D8 D4246EF0 */ ldc1 $f4, %lo(D_E0056EF0)($at) +/* 35DEDC E00564DC C6020008 */ lwc1 $f2, 8($s0) +/* 35DEE0 E00564E0 46240000 */ add.d $f0, $f0, $f4 +/* 35DEE4 E00564E4 460010A1 */ cvt.d.s $f2, $f2 +/* 35DEE8 E00564E8 46201082 */ mul.d $f2, $f2, $f0 +/* 35DEEC E00564EC 00000000 */ nop +/* 35DEF0 E00564F0 462010A0 */ cvt.s.d $f2, $f2 +/* 35DEF4 E00564F4 0801594A */ j .LE0056528 +/* 35DEF8 E00564F8 E6020008 */ swc1 $f2, 8($s0) +.LE00564FC: +/* 35DEFC E00564FC C6000004 */ lwc1 $f0, 4($s0) +/* 35DF00 E0056500 3C01E005 */ lui $at, %hi(D_E0056EF8) +/* 35DF04 E0056504 D4226EF8 */ ldc1 $f2, %lo(D_E0056EF8)($at) +/* 35DF08 E0056508 46000021 */ cvt.d.s $f0, $f0 +/* 35DF0C E005650C 46220002 */ mul.d $f0, $f0, $f2 +/* 35DF10 E0056510 00000000 */ nop +/* 35DF14 E0056514 C6020008 */ lwc1 $f2, 8($s0) +/* 35DF18 E0056518 461C1080 */ add.s $f2, $f2, $f28 +/* 35DF1C E005651C E6020008 */ swc1 $f2, 8($s0) +/* 35DF20 E0056520 46200020 */ cvt.s.d $f0, $f0 +/* 35DF24 E0056524 E6000004 */ swc1 $f0, 4($s0) +.LE0056528: +/* 35DF28 E0056528 24040032 */ addiu $a0, $zero, 0x32 +/* 35DF2C E005652C 0C080011 */ jal func_E0200044 +/* 35DF30 E0056530 0220282D */ daddu $a1, $s1, $zero +/* 35DF34 E0056534 2442FFE7 */ addiu $v0, $v0, -0x19 +/* 35DF38 E0056538 C60C0010 */ lwc1 $f12, 0x10($s0) +/* 35DF3C E005653C 44820000 */ mtc1 $v0, $f0 +/* 35DF40 E0056540 00000000 */ nop +/* 35DF44 E0056544 46800020 */ cvt.s.w $f0, $f0 +/* 35DF48 E0056548 46006300 */ add.s $f12, $f12, $f0 +/* 35DF4C E005654C 0C080140 */ jal func_E0200500 +/* 35DF50 E0056550 E60C0010 */ swc1 $f12, 0x10($s0) +/* 35DF54 E0056554 C60C0010 */ lwc1 $f12, 0x10($s0) +/* 35DF58 E0056558 3C013FE0 */ lui $at, 0x3fe0 +/* 35DF5C E005655C 44811800 */ mtc1 $at, $f3 +/* 35DF60 E0056560 44801000 */ mtc1 $zero, $f2 +/* 35DF64 E0056564 46006321 */ cvt.d.s $f12, $f12 +/* 35DF68 E0056568 46226302 */ mul.d $f12, $f12, $f2 +/* 35DF6C E005656C 00000000 */ nop +/* 35DF70 E0056570 461A0002 */ mul.s $f0, $f0, $f26 +/* 35DF74 E0056574 00000000 */ nop +/* 35DF78 E0056578 C602000C */ lwc1 $f2, 0xc($s0) +/* 35DF7C E005657C 46001080 */ add.s $f2, $f2, $f0 +/* 35DF80 E0056580 E602000C */ swc1 $f2, 0xc($s0) +/* 35DF84 E0056584 0C080144 */ jal func_E0200510 +/* 35DF88 E0056588 46206320 */ cvt.s.d $f12, $f12 +/* 35DF8C E005658C 461A0002 */ mul.s $f0, $f0, $f26 +/* 35DF90 E0056590 00000000 */ nop +/* 35DF94 E0056594 C606FFF8 */ lwc1 $f6, -8($s0) +/* 35DF98 E0056598 C6020004 */ lwc1 $f2, 4($s0) +/* 35DF9C E005659C C604FFFC */ lwc1 $f4, -4($s0) +/* 35DFA0 E00565A0 46023180 */ add.s $f6, $f6, $f2 +/* 35DFA4 E00565A4 C6020008 */ lwc1 $f2, 8($s0) +/* 35DFA8 E00565A8 46022100 */ add.s $f4, $f4, $f2 +/* 35DFAC E00565AC C6020014 */ lwc1 $f2, 0x14($s0) +/* 35DFB0 E00565B0 3C0141F0 */ lui $at, 0x41f0 +/* 35DFB4 E00565B4 44814000 */ mtc1 $at, $f8 +/* 35DFB8 E00565B8 46001080 */ add.s $f2, $f2, $f0 +/* 35DFBC E00565BC E606FFF8 */ swc1 $f6, -8($s0) +/* 35DFC0 E00565C0 E604FFFC */ swc1 $f4, -4($s0) +/* 35DFC4 E00565C4 4608203C */ c.lt.s $f4, $f8 +/* 35DFC8 E00565C8 00000000 */ nop +/* 35DFCC E00565CC 45000032 */ bc1f .LE0056698 +/* 35DFD0 E00565D0 E6020014 */ swc1 $f2, 0x14($s0) +/* 35DFD4 E00565D4 3C01C348 */ lui $at, 0xc348 +/* 35DFD8 E00565D8 44810000 */ mtc1 $at, $f0 +/* 35DFDC E00565DC 46003086 */ mov.s $f2, $f6 +/* 35DFE0 E00565E0 4602003C */ c.lt.s $f0, $f2 +/* 35DFE4 E00565E4 00000000 */ nop +/* 35DFE8 E00565E8 45000005 */ bc1f .LE0056600 +/* 35DFEC E00565EC 00000000 */ nop +/* 35DFF0 E00565F0 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35DFF4 E00565F4 46000021 */ cvt.d.s $f0, $f0 +/* 35DFF8 E00565F8 08015983 */ j .LE005660C +/* 35DFFC E00565FC 46340001 */ sub.d $f0, $f0, $f20 +.LE0056600: +/* 35E000 E0056600 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E004 E0056604 46000021 */ cvt.d.s $f0, $f0 +/* 35E008 E0056608 46340000 */ add.d $f0, $f0, $f20 +.LE005660C: +/* 35E00C E005660C 46200020 */ cvt.s.d $f0, $f0 +/* 35E010 E0056610 E6000024 */ swc1 $f0, 0x24($s0) +/* 35E014 E0056614 C6000000 */ lwc1 $f0, ($s0) +/* 35E018 E0056618 4600C03C */ c.lt.s $f24, $f0 +/* 35E01C E005661C 00000000 */ nop +/* 35E020 E0056620 45000005 */ bc1f .LE0056638 +/* 35E024 E0056624 00000000 */ nop +/* 35E028 E0056628 C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E02C E005662C 46000021 */ cvt.d.s $f0, $f0 +/* 35E030 E0056630 08015991 */ j .LE0056644 +/* 35E034 E0056634 46340001 */ sub.d $f0, $f0, $f20 +.LE0056638: +/* 35E038 E0056638 C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E03C E005663C 46000021 */ cvt.d.s $f0, $f0 +/* 35E040 E0056640 46340000 */ add.d $f0, $f0, $f20 +.LE0056644: +/* 35E044 E0056644 46200020 */ cvt.s.d $f0, $f0 +/* 35E048 E0056648 E600002C */ swc1 $f0, 0x2c($s0) +/* 35E04C E005664C C6040024 */ lwc1 $f4, 0x24($s0) +/* 35E050 E0056650 46002121 */ cvt.d.s $f4, $f4 +/* 35E054 E0056654 46362102 */ mul.d $f4, $f4, $f22 +/* 35E058 E0056658 00000000 */ nop +/* 35E05C E005665C C602002C */ lwc1 $f2, 0x2c($s0) +/* 35E060 E0056660 460010A1 */ cvt.d.s $f2, $f2 +/* 35E064 E0056664 46361082 */ mul.d $f2, $f2, $f22 +/* 35E068 E0056668 00000000 */ nop +/* 35E06C E005666C C6000008 */ lwc1 $f0, 8($s0) +/* 35E070 E0056670 46000021 */ cvt.d.s $f0, $f0 +/* 35E074 E0056674 46360002 */ mul.d $f0, $f0, $f22 +/* 35E078 E0056678 00000000 */ nop +/* 35E07C E005667C 46202120 */ cvt.s.d $f4, $f4 +/* 35E080 E0056680 462010A0 */ cvt.s.d $f2, $f2 +/* 35E084 E0056684 46200020 */ cvt.s.d $f0, $f0 +/* 35E088 E0056688 E6040024 */ swc1 $f4, 0x24($s0) +/* 35E08C E005668C E602002C */ swc1 $f2, 0x2c($s0) +/* 35E090 E0056690 080159CE */ j .LE0056738 +/* 35E094 E0056694 E6000008 */ swc1 $f0, 8($s0) +.LE0056698: +/* 35E098 E0056698 C600FFF8 */ lwc1 $f0, -8($s0) +/* 35E09C E005669C 4600C03C */ c.lt.s $f24, $f0 +/* 35E0A0 E00566A0 00000000 */ nop +/* 35E0A4 E00566A4 45000005 */ bc1f .LE00566BC +/* 35E0A8 E00566A8 00000000 */ nop +/* 35E0AC E00566AC C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E0B0 E00566B0 46000021 */ cvt.d.s $f0, $f0 +/* 35E0B4 E00566B4 080159B2 */ j .LE00566C8 +/* 35E0B8 E00566B8 46340001 */ sub.d $f0, $f0, $f20 +.LE00566BC: +/* 35E0BC E00566BC C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E0C0 E00566C0 46000021 */ cvt.d.s $f0, $f0 +/* 35E0C4 E00566C4 46340000 */ add.d $f0, $f0, $f20 +.LE00566C8: +/* 35E0C8 E00566C8 46200020 */ cvt.s.d $f0, $f0 +/* 35E0CC E00566CC E6000024 */ swc1 $f0, 0x24($s0) +/* 35E0D0 E00566D0 C6000000 */ lwc1 $f0, ($s0) +/* 35E0D4 E00566D4 4600C03C */ c.lt.s $f24, $f0 +/* 35E0D8 E00566D8 00000000 */ nop +/* 35E0DC E00566DC 45000005 */ bc1f .LE00566F4 +/* 35E0E0 E00566E0 00000000 */ nop +/* 35E0E4 E00566E4 C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E0E8 E00566E8 46000021 */ cvt.d.s $f0, $f0 +/* 35E0EC E00566EC 080159C0 */ j .LE0056700 +/* 35E0F0 E00566F0 46340001 */ sub.d $f0, $f0, $f20 +.LE00566F4: +/* 35E0F4 E00566F4 C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E0F8 E00566F8 46000021 */ cvt.d.s $f0, $f0 +/* 35E0FC E00566FC 46340000 */ add.d $f0, $f0, $f20 +.LE0056700: +/* 35E100 E0056700 46200020 */ cvt.s.d $f0, $f0 +/* 35E104 E0056704 E600002C */ swc1 $f0, 0x2c($s0) +/* 35E108 E0056708 C6020024 */ lwc1 $f2, 0x24($s0) +/* 35E10C E005670C 460010A1 */ cvt.d.s $f2, $f2 +/* 35E110 E0056710 46361082 */ mul.d $f2, $f2, $f22 +/* 35E114 E0056714 00000000 */ nop +/* 35E118 E0056718 C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E11C E005671C 46000021 */ cvt.d.s $f0, $f0 +/* 35E120 E0056720 46360002 */ mul.d $f0, $f0, $f22 +/* 35E124 E0056724 00000000 */ nop +/* 35E128 E0056728 462010A0 */ cvt.s.d $f2, $f2 +/* 35E12C E005672C 46200020 */ cvt.s.d $f0, $f0 +/* 35E130 E0056730 E6020024 */ swc1 $f2, 0x24($s0) +/* 35E134 E0056734 E600002C */ swc1 $f0, 0x2c($s0) +.LE0056738: +/* 35E138 E0056738 26310014 */ addiu $s1, $s1, 0x14 +/* 35E13C E005673C C606FFF8 */ lwc1 $f6, -8($s0) +/* 35E140 E0056740 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E144 E0056744 C604FFFC */ lwc1 $f4, -4($s0) +/* 35E148 E0056748 46003180 */ add.s $f6, $f6, $f0 +/* 35E14C E005674C C6000028 */ lwc1 $f0, 0x28($s0) +/* 35E150 E0056750 C602002C */ lwc1 $f2, 0x2c($s0) +/* 35E154 E0056754 46002100 */ add.s $f4, $f4, $f0 +/* 35E158 E0056758 C6000000 */ lwc1 $f0, ($s0) +/* 35E15C E005675C 26520001 */ addiu $s2, $s2, 1 +/* 35E160 E0056760 46020000 */ add.s $f0, $f0, $f2 +/* 35E164 E0056764 E606FFF8 */ swc1 $f6, -8($s0) +/* 35E168 E0056768 E604FFFC */ swc1 $f4, -4($s0) +/* 35E16C E005676C E6000000 */ swc1 $f0, ($s0) +/* 35E170 E0056770 8E820008 */ lw $v0, 8($s4) +/* 35E174 E0056774 0242102A */ slt $v0, $s2, $v0 +/* 35E178 E0056778 1440FF38 */ bnez $v0, .LE005645C +/* 35E17C E005677C 2610003C */ addiu $s0, $s0, 0x3c +/* 35E180 E0056780 08015AD6 */ j .LE0056B58 +/* 35E184 E0056784 00000000 */ nop +.LE0056788: +/* 35E188 E0056788 8E820008 */ lw $v0, 8($s4) +/* 35E18C E005678C 24120001 */ addiu $s2, $zero, 1 +/* 35E190 E0056790 0242102A */ slt $v0, $s2, $v0 +/* 35E194 E0056794 104000F0 */ beqz $v0, .LE0056B58 +/* 35E198 E0056798 2490000C */ addiu $s0, $a0, 0xc +/* 35E19C E005679C 24B10015 */ addiu $s1, $a1, 0x15 +/* 35E1A0 E00567A0 3C01BD4C */ lui $at, 0xbd4c +/* 35E1A4 E00567A4 3421CCCD */ ori $at, $at, 0xcccd +/* 35E1A8 E00567A8 4481E000 */ mtc1 $at, $f28 +/* 35E1AC E00567AC 3C014120 */ lui $at, 0x4120 +/* 35E1B0 E00567B0 4481D000 */ mtc1 $at, $f26 +/* 35E1B4 E00567B4 3C01E005 */ lui $at, %hi(D_E0056F00) +/* 35E1B8 E00567B8 D4346F00 */ ldc1 $f20, %lo(D_E0056F00)($at) +/* 35E1BC E00567BC 4480C000 */ mtc1 $zero, $f24 +/* 35E1C0 E00567C0 3C01E005 */ lui $at, %hi(D_E0056F08) +/* 35E1C4 E00567C4 D4366F08 */ ldc1 $f22, %lo(D_E0056F08)($at) +.LE00567C8: +/* 35E1C8 E00567C8 C60C000C */ lwc1 $f12, 0xc($s0) +/* 35E1CC E00567CC 0C080140 */ jal func_E0200500 +/* 35E1D0 E00567D0 460C6300 */ add.s $f12, $f12, $f12 +/* 35E1D4 E00567D4 3C01E005 */ lui $at, %hi(D_E0056F10) +/* 35E1D8 E00567D8 D4226F10 */ ldc1 $f2, %lo(D_E0056F10)($at) +/* 35E1DC E00567DC 46000021 */ cvt.d.s $f0, $f0 +/* 35E1E0 E00567E0 46220002 */ mul.d $f0, $f0, $f2 +/* 35E1E4 E00567E4 00000000 */ nop +/* 35E1E8 E00567E8 46200000 */ add.d $f0, $f0, $f0 +/* 35E1EC E00567EC C6020004 */ lwc1 $f2, 4($s0) +/* 35E1F0 E00567F0 46200020 */ cvt.s.d $f0, $f0 +/* 35E1F4 E00567F4 46001080 */ add.s $f2, $f2, $f0 +/* 35E1F8 E00567F8 3C01E005 */ lui $at, %hi(D_E0056F18) +/* 35E1FC E00567FC D4206F18 */ ldc1 $f0, %lo(D_E0056F18)($at) +/* 35E200 E0056800 E6020004 */ swc1 $f2, 4($s0) +/* 35E204 E0056804 460010A1 */ cvt.d.s $f2, $f2 +/* 35E208 E0056808 46201082 */ mul.d $f2, $f2, $f0 +/* 35E20C E005680C 00000000 */ nop +/* 35E210 E0056810 C6000008 */ lwc1 $f0, 8($s0) +/* 35E214 E0056814 461C0000 */ add.s $f0, $f0, $f28 +/* 35E218 E0056818 E6000008 */ swc1 $f0, 8($s0) +/* 35E21C E005681C 461C0000 */ add.s $f0, $f0, $f28 +/* 35E220 E0056820 24040032 */ addiu $a0, $zero, 0x32 +/* 35E224 E0056824 0220282D */ daddu $a1, $s1, $zero +/* 35E228 E0056828 E6000008 */ swc1 $f0, 8($s0) +/* 35E22C E005682C 462010A0 */ cvt.s.d $f2, $f2 +/* 35E230 E0056830 0C080011 */ jal func_E0200044 +/* 35E234 E0056834 E6020004 */ swc1 $f2, 4($s0) +/* 35E238 E0056838 2442FFE7 */ addiu $v0, $v0, -0x19 +/* 35E23C E005683C C60C0010 */ lwc1 $f12, 0x10($s0) +/* 35E240 E0056840 44820000 */ mtc1 $v0, $f0 +/* 35E244 E0056844 00000000 */ nop +/* 35E248 E0056848 46800020 */ cvt.s.w $f0, $f0 +/* 35E24C E005684C 46006300 */ add.s $f12, $f12, $f0 +/* 35E250 E0056850 0C080140 */ jal func_E0200500 +/* 35E254 E0056854 E60C0010 */ swc1 $f12, 0x10($s0) +/* 35E258 E0056858 C60C0010 */ lwc1 $f12, 0x10($s0) +/* 35E25C E005685C 3C013FE0 */ lui $at, 0x3fe0 +/* 35E260 E0056860 44811800 */ mtc1 $at, $f3 +/* 35E264 E0056864 44801000 */ mtc1 $zero, $f2 +/* 35E268 E0056868 46006321 */ cvt.d.s $f12, $f12 +/* 35E26C E005686C 46226302 */ mul.d $f12, $f12, $f2 +/* 35E270 E0056870 00000000 */ nop +/* 35E274 E0056874 461A0002 */ mul.s $f0, $f0, $f26 +/* 35E278 E0056878 00000000 */ nop +/* 35E27C E005687C C602000C */ lwc1 $f2, 0xc($s0) +/* 35E280 E0056880 46001080 */ add.s $f2, $f2, $f0 +/* 35E284 E0056884 E602000C */ swc1 $f2, 0xc($s0) +/* 35E288 E0056888 0C080144 */ jal func_E0200510 +/* 35E28C E005688C 46206320 */ cvt.s.d $f12, $f12 +/* 35E290 E0056890 461A0002 */ mul.s $f0, $f0, $f26 +/* 35E294 E0056894 00000000 */ nop +/* 35E298 E0056898 C606FFF8 */ lwc1 $f6, -8($s0) +/* 35E29C E005689C C6020004 */ lwc1 $f2, 4($s0) +/* 35E2A0 E00568A0 C604FFFC */ lwc1 $f4, -4($s0) +/* 35E2A4 E00568A4 46023180 */ add.s $f6, $f6, $f2 +/* 35E2A8 E00568A8 C6020008 */ lwc1 $f2, 8($s0) +/* 35E2AC E00568AC 46022100 */ add.s $f4, $f4, $f2 +/* 35E2B0 E00568B0 C6020014 */ lwc1 $f2, 0x14($s0) +/* 35E2B4 E00568B4 3C0141F0 */ lui $at, 0x41f0 +/* 35E2B8 E00568B8 44814000 */ mtc1 $at, $f8 +/* 35E2BC E00568BC 46001080 */ add.s $f2, $f2, $f0 +/* 35E2C0 E00568C0 E606FFF8 */ swc1 $f6, -8($s0) +/* 35E2C4 E00568C4 E604FFFC */ swc1 $f4, -4($s0) +/* 35E2C8 E00568C8 4608203C */ c.lt.s $f4, $f8 +/* 35E2CC E00568CC 00000000 */ nop +/* 35E2D0 E00568D0 45000032 */ bc1f .LE005699C +/* 35E2D4 E00568D4 E6020014 */ swc1 $f2, 0x14($s0) +/* 35E2D8 E00568D8 3C01C348 */ lui $at, 0xc348 +/* 35E2DC E00568DC 44810000 */ mtc1 $at, $f0 +/* 35E2E0 E00568E0 46003086 */ mov.s $f2, $f6 +/* 35E2E4 E00568E4 4602003C */ c.lt.s $f0, $f2 +/* 35E2E8 E00568E8 00000000 */ nop +/* 35E2EC E00568EC 45000005 */ bc1f .LE0056904 +/* 35E2F0 E00568F0 00000000 */ nop +/* 35E2F4 E00568F4 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E2F8 E00568F8 46000021 */ cvt.d.s $f0, $f0 +/* 35E2FC E00568FC 08015A44 */ j .LE0056910 +/* 35E300 E0056900 46340001 */ sub.d $f0, $f0, $f20 +.LE0056904: +/* 35E304 E0056904 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E308 E0056908 46000021 */ cvt.d.s $f0, $f0 +/* 35E30C E005690C 46340000 */ add.d $f0, $f0, $f20 +.LE0056910: +/* 35E310 E0056910 46200020 */ cvt.s.d $f0, $f0 +/* 35E314 E0056914 E6000024 */ swc1 $f0, 0x24($s0) +/* 35E318 E0056918 C6000000 */ lwc1 $f0, ($s0) +/* 35E31C E005691C 4600C03C */ c.lt.s $f24, $f0 +/* 35E320 E0056920 00000000 */ nop +/* 35E324 E0056924 45000005 */ bc1f .LE005693C +/* 35E328 E0056928 00000000 */ nop +/* 35E32C E005692C C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E330 E0056930 46000021 */ cvt.d.s $f0, $f0 +/* 35E334 E0056934 08015A52 */ j .LE0056948 +/* 35E338 E0056938 46340001 */ sub.d $f0, $f0, $f20 +.LE005693C: +/* 35E33C E005693C C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E340 E0056940 46000021 */ cvt.d.s $f0, $f0 +/* 35E344 E0056944 46340000 */ add.d $f0, $f0, $f20 +.LE0056948: +/* 35E348 E0056948 46200020 */ cvt.s.d $f0, $f0 +/* 35E34C E005694C E600002C */ swc1 $f0, 0x2c($s0) +/* 35E350 E0056950 C6040024 */ lwc1 $f4, 0x24($s0) +/* 35E354 E0056954 46002121 */ cvt.d.s $f4, $f4 +/* 35E358 E0056958 46362102 */ mul.d $f4, $f4, $f22 +/* 35E35C E005695C 00000000 */ nop +/* 35E360 E0056960 C602002C */ lwc1 $f2, 0x2c($s0) +/* 35E364 E0056964 460010A1 */ cvt.d.s $f2, $f2 +/* 35E368 E0056968 46361082 */ mul.d $f2, $f2, $f22 +/* 35E36C E005696C 00000000 */ nop +/* 35E370 E0056970 C6000008 */ lwc1 $f0, 8($s0) +/* 35E374 E0056974 46000021 */ cvt.d.s $f0, $f0 +/* 35E378 E0056978 46360002 */ mul.d $f0, $f0, $f22 +/* 35E37C E005697C 00000000 */ nop +/* 35E380 E0056980 46202120 */ cvt.s.d $f4, $f4 +/* 35E384 E0056984 462010A0 */ cvt.s.d $f2, $f2 +/* 35E388 E0056988 46200020 */ cvt.s.d $f0, $f0 +/* 35E38C E005698C E6040024 */ swc1 $f4, 0x24($s0) +/* 35E390 E0056990 E602002C */ swc1 $f2, 0x2c($s0) +/* 35E394 E0056994 08015A8F */ j .LE0056A3C +/* 35E398 E0056998 E6000008 */ swc1 $f0, 8($s0) +.LE005699C: +/* 35E39C E005699C C600FFF8 */ lwc1 $f0, -8($s0) +/* 35E3A0 E00569A0 4600C03C */ c.lt.s $f24, $f0 +/* 35E3A4 E00569A4 00000000 */ nop +/* 35E3A8 E00569A8 45000005 */ bc1f .LE00569C0 +/* 35E3AC E00569AC 00000000 */ nop +/* 35E3B0 E00569B0 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E3B4 E00569B4 46000021 */ cvt.d.s $f0, $f0 +/* 35E3B8 E00569B8 08015A73 */ j .LE00569CC +/* 35E3BC E00569BC 46340001 */ sub.d $f0, $f0, $f20 +.LE00569C0: +/* 35E3C0 E00569C0 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E3C4 E00569C4 46000021 */ cvt.d.s $f0, $f0 +/* 35E3C8 E00569C8 46340000 */ add.d $f0, $f0, $f20 +.LE00569CC: +/* 35E3CC E00569CC 46200020 */ cvt.s.d $f0, $f0 +/* 35E3D0 E00569D0 E6000024 */ swc1 $f0, 0x24($s0) +/* 35E3D4 E00569D4 C6000000 */ lwc1 $f0, ($s0) +/* 35E3D8 E00569D8 4600C03C */ c.lt.s $f24, $f0 +/* 35E3DC E00569DC 00000000 */ nop +/* 35E3E0 E00569E0 45000005 */ bc1f .LE00569F8 +/* 35E3E4 E00569E4 00000000 */ nop +/* 35E3E8 E00569E8 C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E3EC E00569EC 46000021 */ cvt.d.s $f0, $f0 +/* 35E3F0 E00569F0 08015A81 */ j .LE0056A04 +/* 35E3F4 E00569F4 46340001 */ sub.d $f0, $f0, $f20 +.LE00569F8: +/* 35E3F8 E00569F8 C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E3FC E00569FC 46000021 */ cvt.d.s $f0, $f0 +/* 35E400 E0056A00 46340000 */ add.d $f0, $f0, $f20 +.LE0056A04: +/* 35E404 E0056A04 46200020 */ cvt.s.d $f0, $f0 +/* 35E408 E0056A08 E600002C */ swc1 $f0, 0x2c($s0) +/* 35E40C E0056A0C C6020024 */ lwc1 $f2, 0x24($s0) +/* 35E410 E0056A10 460010A1 */ cvt.d.s $f2, $f2 +/* 35E414 E0056A14 46361082 */ mul.d $f2, $f2, $f22 +/* 35E418 E0056A18 00000000 */ nop +/* 35E41C E0056A1C C600002C */ lwc1 $f0, 0x2c($s0) +/* 35E420 E0056A20 46000021 */ cvt.d.s $f0, $f0 +/* 35E424 E0056A24 46360002 */ mul.d $f0, $f0, $f22 +/* 35E428 E0056A28 00000000 */ nop +/* 35E42C E0056A2C 462010A0 */ cvt.s.d $f2, $f2 +/* 35E430 E0056A30 46200020 */ cvt.s.d $f0, $f0 +/* 35E434 E0056A34 E6020024 */ swc1 $f2, 0x24($s0) +/* 35E438 E0056A38 E600002C */ swc1 $f0, 0x2c($s0) +.LE0056A3C: +/* 35E43C E0056A3C 26310014 */ addiu $s1, $s1, 0x14 +/* 35E440 E0056A40 C606FFF8 */ lwc1 $f6, -8($s0) +/* 35E444 E0056A44 C6000024 */ lwc1 $f0, 0x24($s0) +/* 35E448 E0056A48 C604FFFC */ lwc1 $f4, -4($s0) +/* 35E44C E0056A4C 46003180 */ add.s $f6, $f6, $f0 +/* 35E450 E0056A50 C6000028 */ lwc1 $f0, 0x28($s0) +/* 35E454 E0056A54 C602002C */ lwc1 $f2, 0x2c($s0) +/* 35E458 E0056A58 46002100 */ add.s $f4, $f4, $f0 +/* 35E45C E0056A5C C6000000 */ lwc1 $f0, ($s0) +/* 35E460 E0056A60 26520001 */ addiu $s2, $s2, 1 +/* 35E464 E0056A64 46020000 */ add.s $f0, $f0, $f2 +/* 35E468 E0056A68 E606FFF8 */ swc1 $f6, -8($s0) +/* 35E46C E0056A6C E604FFFC */ swc1 $f4, -4($s0) +/* 35E470 E0056A70 E6000000 */ swc1 $f0, ($s0) +/* 35E474 E0056A74 8E820008 */ lw $v0, 8($s4) +/* 35E478 E0056A78 0242102A */ slt $v0, $s2, $v0 +/* 35E47C E0056A7C 1440FF52 */ bnez $v0, .LE00567C8 +/* 35E480 E0056A80 2610003C */ addiu $s0, $s0, 0x3c +/* 35E484 E0056A84 08015AD6 */ j .LE0056B58 +/* 35E488 E0056A88 00000000 */ nop +.LE0056A8C: +/* 35E48C E0056A8C 8E820008 */ lw $v0, 8($s4) +/* 35E490 E0056A90 0242102A */ slt $v0, $s2, $v0 +/* 35E494 E0056A94 10400030 */ beqz $v0, .LE0056B58 +/* 35E498 E0056A98 24900008 */ addiu $s0, $a0, 8 +/* 35E49C E0056A9C 24B10015 */ addiu $s1, $a1, 0x15 +/* 35E4A0 E0056AA0 3C014120 */ lui $at, 0x4120 +/* 35E4A4 E0056AA4 4481A000 */ mtc1 $at, $f20 +/* 35E4A8 E0056AA8 3C013FE0 */ lui $at, 0x3fe0 +/* 35E4AC E0056AAC 4481B800 */ mtc1 $at, $f23 +/* 35E4B0 E0056AB0 4480B000 */ mtc1 $zero, $f22 +.LE0056AB4: +/* 35E4B4 E0056AB4 24040032 */ addiu $a0, $zero, 0x32 +/* 35E4B8 E0056AB8 0C080011 */ jal func_E0200044 +/* 35E4BC E0056ABC 0220282D */ daddu $a1, $s1, $zero +/* 35E4C0 E0056AC0 2442FFE7 */ addiu $v0, $v0, -0x19 +/* 35E4C4 E0056AC4 C60C0014 */ lwc1 $f12, 0x14($s0) +/* 35E4C8 E0056AC8 44820000 */ mtc1 $v0, $f0 +/* 35E4CC E0056ACC 00000000 */ nop +/* 35E4D0 E0056AD0 46800020 */ cvt.s.w $f0, $f0 +/* 35E4D4 E0056AD4 46006300 */ add.s $f12, $f12, $f0 +/* 35E4D8 E0056AD8 0C080140 */ jal func_E0200500 +/* 35E4DC E0056ADC E60C0014 */ swc1 $f12, 0x14($s0) +/* 35E4E0 E0056AE0 C60C0014 */ lwc1 $f12, 0x14($s0) +/* 35E4E4 E0056AE4 46006321 */ cvt.d.s $f12, $f12 +/* 35E4E8 E0056AE8 46366302 */ mul.d $f12, $f12, $f22 +/* 35E4EC E0056AEC 00000000 */ nop +/* 35E4F0 E0056AF0 46140002 */ mul.s $f0, $f0, $f20 +/* 35E4F4 E0056AF4 00000000 */ nop +/* 35E4F8 E0056AF8 C6020010 */ lwc1 $f2, 0x10($s0) +/* 35E4FC E0056AFC 46001080 */ add.s $f2, $f2, $f0 +/* 35E500 E0056B00 E6020010 */ swc1 $f2, 0x10($s0) +/* 35E504 E0056B04 0C080144 */ jal func_E0200510 +/* 35E508 E0056B08 46206320 */ cvt.s.d $f12, $f12 +/* 35E50C E0056B0C 46140002 */ mul.s $f0, $f0, $f20 +/* 35E510 E0056B10 00000000 */ nop +/* 35E514 E0056B14 C606FFFC */ lwc1 $f6, -4($s0) +/* 35E518 E0056B18 C6020008 */ lwc1 $f2, 8($s0) +/* 35E51C E0056B1C C6040000 */ lwc1 $f4, ($s0) +/* 35E520 E0056B20 46023180 */ add.s $f6, $f6, $f2 +/* 35E524 E0056B24 C602000C */ lwc1 $f2, 0xc($s0) +/* 35E528 E0056B28 26310014 */ addiu $s1, $s1, 0x14 +/* 35E52C E0056B2C 46022100 */ add.s $f4, $f4, $f2 +/* 35E530 E0056B30 C6020018 */ lwc1 $f2, 0x18($s0) +/* 35E534 E0056B34 26520001 */ addiu $s2, $s2, 1 +/* 35E538 E0056B38 46001080 */ add.s $f2, $f2, $f0 +/* 35E53C E0056B3C E606FFFC */ swc1 $f6, -4($s0) +/* 35E540 E0056B40 E6040000 */ swc1 $f4, ($s0) +/* 35E544 E0056B44 E6020018 */ swc1 $f2, 0x18($s0) +/* 35E548 E0056B48 8E820008 */ lw $v0, 8($s4) +/* 35E54C E0056B4C 0242102A */ slt $v0, $s2, $v0 +/* 35E550 E0056B50 1440FFD8 */ bnez $v0, .LE0056AB4 +/* 35E554 E0056B54 2610003C */ addiu $s0, $s0, 0x3c +.LE0056B58: +/* 35E558 E0056B58 8FBF0024 */ lw $ra, 0x24($sp) +/* 35E55C E0056B5C 8FB40020 */ lw $s4, 0x20($sp) +/* 35E560 E0056B60 8FB3001C */ lw $s3, 0x1c($sp) +/* 35E564 E0056B64 8FB20018 */ lw $s2, 0x18($sp) +/* 35E568 E0056B68 8FB10014 */ lw $s1, 0x14($sp) +/* 35E56C E0056B6C 8FB00010 */ lw $s0, 0x10($sp) +/* 35E570 E0056B70 D7BC0048 */ ldc1 $f28, 0x48($sp) +/* 35E574 E0056B74 D7BA0040 */ ldc1 $f26, 0x40($sp) +/* 35E578 E0056B78 D7B80038 */ ldc1 $f24, 0x38($sp) +/* 35E57C E0056B7C D7B60030 */ ldc1 $f22, 0x30($sp) +/* 35E580 E0056B80 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 35E584 E0056B84 03E00008 */ jr $ra +/* 35E588 E0056B88 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_35DA00/func_E0056B8C.s b/asm/nonmatchings/code_35DA00/func_E0056B8C.s new file mode 100644 index 0000000000..3da3c46eb2 --- /dev/null +++ b/asm/nonmatchings/code_35DA00/func_E0056B8C.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0056B8C +/* 35E58C E0056B8C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 35E590 E0056B90 3C02E005 */ lui $v0, %hi(D_E0056BD0) +/* 35E594 E0056B94 24426BD0 */ addiu $v0, $v0, %lo(D_E0056BD0) +/* 35E598 E0056B98 AFA2001C */ sw $v0, 0x1c($sp) +/* 35E59C E0056B9C 2402002D */ addiu $v0, $zero, 0x2d +/* 35E5A0 E0056BA0 AFA40018 */ sw $a0, 0x18($sp) +/* 35E5A4 E0056BA4 27A40010 */ addiu $a0, $sp, 0x10 +/* 35E5A8 E0056BA8 AFBF0020 */ sw $ra, 0x20($sp) +/* 35E5AC E0056BAC AFA00014 */ sw $zero, 0x14($sp) +/* 35E5B0 E0056BB0 0C080120 */ jal func_E0200480 +/* 35E5B4 E0056BB4 AFA20010 */ sw $v0, 0x10($sp) +/* 35E5B8 E0056BB8 8C430000 */ lw $v1, ($v0) +/* 35E5BC E0056BBC 34630002 */ ori $v1, $v1, 2 +/* 35E5C0 E0056BC0 AC430000 */ sw $v1, ($v0) +/* 35E5C4 E0056BC4 8FBF0020 */ lw $ra, 0x20($sp) +/* 35E5C8 E0056BC8 03E00008 */ jr $ra +/* 35E5CC E0056BCC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_35DA00/func_E0056BD0.s b/asm/nonmatchings/code_35DA00/func_E0056BD0.s new file mode 100644 index 0000000000..113e6966f8 --- /dev/null +++ b/asm/nonmatchings/code_35DA00/func_E0056BD0.s @@ -0,0 +1,187 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0056BD0 +/* 35E5D0 E0056BD0 27BDFEF0 */ addiu $sp, $sp, -0x110 +/* 35E5D4 E0056BD4 AFBE00F8 */ sw $fp, 0xf8($sp) +/* 35E5D8 E0056BD8 0080F02D */ daddu $fp, $a0, $zero +/* 35E5DC E0056BDC AFBF00FC */ sw $ra, 0xfc($sp) +/* 35E5E0 E0056BE0 AFB700F4 */ sw $s7, 0xf4($sp) +/* 35E5E4 E0056BE4 AFB600F0 */ sw $s6, 0xf0($sp) +/* 35E5E8 E0056BE8 AFB500EC */ sw $s5, 0xec($sp) +/* 35E5EC E0056BEC AFB400E8 */ sw $s4, 0xe8($sp) +/* 35E5F0 E0056BF0 AFB300E4 */ sw $s3, 0xe4($sp) +/* 35E5F4 E0056BF4 AFB200E0 */ sw $s2, 0xe0($sp) +/* 35E5F8 E0056BF8 AFB100DC */ sw $s1, 0xdc($sp) +/* 35E5FC E0056BFC AFB000D8 */ sw $s0, 0xd8($sp) +/* 35E600 E0056C00 F7B60108 */ sdc1 $f22, 0x108($sp) +/* 35E604 E0056C04 F7B40100 */ sdc1 $f20, 0x100($sp) +/* 35E608 E0056C08 8FD0000C */ lw $s0, 0xc($fp) +/* 35E60C E0056C0C 8E020000 */ lw $v0, ($s0) +/* 35E610 E0056C10 3C170900 */ lui $s7, 0x900 +/* 35E614 E0056C14 26F71280 */ addiu $s7, $s7, 0x1280 +/* 35E618 E0056C18 14400003 */ bnez $v0, .LE0056C28 +/* 35E61C E0056C1C 3C02DB06 */ lui $v0, 0xdb06 +/* 35E620 E0056C20 3C170900 */ lui $s7, 0x900 +/* 35E624 E0056C24 26F71258 */ addiu $s7, $s7, 0x1258 +.LE0056C28: +/* 35E628 E0056C28 34420024 */ ori $v0, $v0, 0x24 +/* 35E62C E0056C2C 3C061464 */ lui $a2, 0x1464 +/* 35E630 E0056C30 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 35E634 E0056C34 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 35E638 E0056C38 8E650000 */ lw $a1, ($s3) +/* 35E63C E0056C3C 34C61400 */ ori $a2, $a2, 0x1400 +/* 35E640 E0056C40 00A0202D */ daddu $a0, $a1, $zero +/* 35E644 E0056C44 24A50008 */ addiu $a1, $a1, 8 +/* 35E648 E0056C48 AE650000 */ sw $a1, ($s3) +/* 35E64C E0056C4C AC820000 */ sw $v0, ($a0) +/* 35E650 E0056C50 24A20008 */ addiu $v0, $a1, 8 +/* 35E654 E0056C54 AE620000 */ sw $v0, ($s3) +/* 35E658 E0056C58 8FC30010 */ lw $v1, 0x10($fp) +/* 35E65C E0056C5C 24A20010 */ addiu $v0, $a1, 0x10 +/* 35E660 E0056C60 AE620000 */ sw $v0, ($s3) +/* 35E664 E0056C64 8C62001C */ lw $v0, 0x1c($v1) +/* 35E668 E0056C68 3C038000 */ lui $v1, 0x8000 +/* 35E66C E0056C6C 00431021 */ addu $v0, $v0, $v1 +/* 35E670 E0056C70 AC820004 */ sw $v0, 4($a0) +/* 35E674 E0056C74 3C02DE00 */ lui $v0, 0xde00 +/* 35E678 E0056C78 ACA20000 */ sw $v0, ($a1) +/* 35E67C E0056C7C 3C020900 */ lui $v0, 0x900 +/* 35E680 E0056C80 24421180 */ addiu $v0, $v0, 0x1180 +/* 35E684 E0056C84 ACA20004 */ sw $v0, 4($a1) +/* 35E688 E0056C88 3C02FA00 */ lui $v0, 0xfa00 +/* 35E68C E0056C8C ACA20008 */ sw $v0, 8($a1) +/* 35E690 E0056C90 92020027 */ lbu $v0, 0x27($s0) +/* 35E694 E0056C94 24120001 */ addiu $s2, $zero, 1 +/* 35E698 E0056C98 00461025 */ or $v0, $v0, $a2 +/* 35E69C E0056C9C ACA2000C */ sw $v0, 0xc($a1) +/* 35E6A0 E0056CA0 8E050004 */ lw $a1, 4($s0) +/* 35E6A4 E0056CA4 8E060008 */ lw $a2, 8($s0) +/* 35E6A8 E0056CA8 8E07000C */ lw $a3, 0xc($s0) +/* 35E6AC E0056CAC 0C080108 */ jal func_E0200420 +/* 35E6B0 E0056CB0 27A40018 */ addiu $a0, $sp, 0x18 +/* 35E6B4 E0056CB4 27B10058 */ addiu $s1, $sp, 0x58 +/* 35E6B8 E0056CB8 4480A000 */ mtc1 $zero, $f20 +/* 35E6BC E0056CBC 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 35E6C0 E0056CC0 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 35E6C4 E0056CC4 3C013F80 */ lui $at, 0x3f80 +/* 35E6C8 E0056CC8 4481B000 */ mtc1 $at, $f22 +/* 35E6CC E0056CCC 00031080 */ sll $v0, $v1, 2 +/* 35E6D0 E0056CD0 00431021 */ addu $v0, $v0, $v1 +/* 35E6D4 E0056CD4 00021080 */ sll $v0, $v0, 2 +/* 35E6D8 E0056CD8 00431023 */ subu $v0, $v0, $v1 +/* 35E6DC E0056CDC 000218C0 */ sll $v1, $v0, 3 +/* 35E6E0 E0056CE0 00431021 */ addu $v0, $v0, $v1 +/* 35E6E4 E0056CE4 000210C0 */ sll $v0, $v0, 3 +/* 35E6E8 E0056CE8 4406A000 */ mfc1 $a2, $f20 +/* 35E6EC E0056CEC 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 35E6F0 E0056CF0 00220821 */ addu $at, $at, $v0 +/* 35E6F4 E0056CF4 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 35E6F8 E0056CF8 4407B000 */ mfc1 $a3, $f22 +/* 35E6FC E0056CFC 46000007 */ neg.s $f0, $f0 +/* 35E700 E0056D00 44050000 */ mfc1 $a1, $f0 +/* 35E704 E0056D04 0220202D */ daddu $a0, $s1, $zero +/* 35E708 E0056D08 0C080104 */ jal func_E0200410 +/* 35E70C E0056D0C E7B40010 */ swc1 $f20, 0x10($sp) +/* 35E710 E0056D10 0220202D */ daddu $a0, $s1, $zero +/* 35E714 E0056D14 27A50018 */ addiu $a1, $sp, 0x18 +/* 35E718 E0056D18 0C080114 */ jal func_E0200450 +/* 35E71C E0056D1C 27A60098 */ addiu $a2, $sp, 0x98 +/* 35E720 E0056D20 8FC20008 */ lw $v0, 8($fp) +/* 35E724 E0056D24 0242102A */ slt $v0, $s2, $v0 +/* 35E728 E0056D28 1040004C */ beqz $v0, .LE0056E5C +/* 35E72C E0056D2C 2610003C */ addiu $s0, $s0, 0x3c +/* 35E730 E0056D30 3C16800A */ lui $s6, %hi(D_8009A674) +/* 35E734 E0056D34 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 35E738 E0056D38 3C158007 */ lui $s5, %hi(D_800741F0) +/* 35E73C E0056D3C 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 35E740 E0056D40 3C140001 */ lui $s4, 1 +/* 35E744 E0056D44 36941630 */ ori $s4, $s4, 0x1630 +/* 35E748 E0056D48 26100020 */ addiu $s0, $s0, 0x20 +.LE0056D4C: +/* 35E74C E0056D4C 0220202D */ daddu $a0, $s1, $zero +/* 35E750 E0056D50 8E05FFE4 */ lw $a1, -0x1c($s0) +/* 35E754 E0056D54 8E06FFE8 */ lw $a2, -0x18($s0) +/* 35E758 E0056D58 8E07FFEC */ lw $a3, -0x14($s0) +/* 35E75C E0056D5C 0C080108 */ jal func_E0200420 +/* 35E760 E0056D60 26520001 */ addiu $s2, $s2, 1 +/* 35E764 E0056D64 0220202D */ daddu $a0, $s1, $zero +/* 35E768 E0056D68 27A50098 */ addiu $a1, $sp, 0x98 +/* 35E76C E0056D6C 0C080114 */ jal func_E0200450 +/* 35E770 E0056D70 27A60018 */ addiu $a2, $sp, 0x18 +/* 35E774 E0056D74 E7B60010 */ swc1 $f22, 0x10($sp) +/* 35E778 E0056D78 8E05FFF8 */ lw $a1, -8($s0) +/* 35E77C E0056D7C 4406A000 */ mfc1 $a2, $f20 +/* 35E780 E0056D80 4407A000 */ mfc1 $a3, $f20 +/* 35E784 E0056D84 0C080104 */ jal func_E0200410 +/* 35E788 E0056D88 0220202D */ daddu $a0, $s1, $zero +/* 35E78C E0056D8C 0220202D */ daddu $a0, $s1, $zero +/* 35E790 E0056D90 27A50018 */ addiu $a1, $sp, 0x18 +/* 35E794 E0056D94 0C080114 */ jal func_E0200450 +/* 35E798 E0056D98 00A0302D */ daddu $a2, $a1, $zero +/* 35E79C E0056D9C 0220202D */ daddu $a0, $s1, $zero +/* 35E7A0 E0056DA0 E7B40010 */ swc1 $f20, 0x10($sp) +/* 35E7A4 E0056DA4 8E050000 */ lw $a1, ($s0) +/* 35E7A8 E0056DA8 4406A000 */ mfc1 $a2, $f20 +/* 35E7AC E0056DAC 4407B000 */ mfc1 $a3, $f22 +/* 35E7B0 E0056DB0 0C080104 */ jal func_E0200410 +/* 35E7B4 E0056DB4 2610003C */ addiu $s0, $s0, 0x3c +/* 35E7B8 E0056DB8 0220202D */ daddu $a0, $s1, $zero +/* 35E7BC E0056DBC 27A50018 */ addiu $a1, $sp, 0x18 +/* 35E7C0 E0056DC0 0C080114 */ jal func_E0200450 +/* 35E7C4 E0056DC4 00A0302D */ daddu $a2, $a1, $zero +/* 35E7C8 E0056DC8 27A40018 */ addiu $a0, $sp, 0x18 +/* 35E7CC E0056DCC 96A50000 */ lhu $a1, ($s5) +/* 35E7D0 E0056DD0 8EC20000 */ lw $v0, ($s6) +/* 35E7D4 E0056DD4 00052980 */ sll $a1, $a1, 6 +/* 35E7D8 E0056DD8 00B42821 */ addu $a1, $a1, $s4 +/* 35E7DC E0056DDC 0C080118 */ jal func_E0200460 +/* 35E7E0 E0056DE0 00452821 */ addu $a1, $v0, $a1 +/* 35E7E4 E0056DE4 3C06D838 */ lui $a2, 0xd838 +/* 35E7E8 E0056DE8 8E640000 */ lw $a0, ($s3) +/* 35E7EC E0056DEC 34C60002 */ ori $a2, $a2, 2 +/* 35E7F0 E0056DF0 0080282D */ daddu $a1, $a0, $zero +/* 35E7F4 E0056DF4 24840008 */ addiu $a0, $a0, 8 +/* 35E7F8 E0056DF8 AE640000 */ sw $a0, ($s3) +/* 35E7FC E0056DFC 96A20000 */ lhu $v0, ($s5) +/* 35E800 E0056E00 3C03DA38 */ lui $v1, 0xda38 +/* 35E804 E0056E04 ACA30000 */ sw $v1, ($a1) +/* 35E808 E0056E08 24430001 */ addiu $v1, $v0, 1 +/* 35E80C E0056E0C 3042FFFF */ andi $v0, $v0, 0xffff +/* 35E810 E0056E10 00021180 */ sll $v0, $v0, 6 +/* 35E814 E0056E14 A6A30000 */ sh $v1, ($s5) +/* 35E818 E0056E18 8EC30000 */ lw $v1, ($s6) +/* 35E81C E0056E1C 00541021 */ addu $v0, $v0, $s4 +/* 35E820 E0056E20 00621821 */ addu $v1, $v1, $v0 +/* 35E824 E0056E24 24820008 */ addiu $v0, $a0, 8 +/* 35E828 E0056E28 ACA30004 */ sw $v1, 4($a1) +/* 35E82C E0056E2C AE620000 */ sw $v0, ($s3) +/* 35E830 E0056E30 3C02DE00 */ lui $v0, 0xde00 +/* 35E834 E0056E34 AC820000 */ sw $v0, ($a0) +/* 35E838 E0056E38 24020040 */ addiu $v0, $zero, 0x40 +/* 35E83C E0056E3C AC970004 */ sw $s7, 4($a0) +/* 35E840 E0056E40 AC860008 */ sw $a2, 8($a0) +/* 35E844 E0056E44 AC82000C */ sw $v0, 0xc($a0) +/* 35E848 E0056E48 8FC20008 */ lw $v0, 8($fp) +/* 35E84C E0056E4C 24840010 */ addiu $a0, $a0, 0x10 +/* 35E850 E0056E50 0242102A */ slt $v0, $s2, $v0 +/* 35E854 E0056E54 1440FFBD */ bnez $v0, .LE0056D4C +/* 35E858 E0056E58 AE640000 */ sw $a0, ($s3) +.LE0056E5C: +/* 35E85C E0056E5C 8FBF00FC */ lw $ra, 0xfc($sp) +/* 35E860 E0056E60 8FBE00F8 */ lw $fp, 0xf8($sp) +/* 35E864 E0056E64 8FB700F4 */ lw $s7, 0xf4($sp) +/* 35E868 E0056E68 8FB600F0 */ lw $s6, 0xf0($sp) +/* 35E86C E0056E6C 8FB500EC */ lw $s5, 0xec($sp) +/* 35E870 E0056E70 8FB400E8 */ lw $s4, 0xe8($sp) +/* 35E874 E0056E74 8FB300E4 */ lw $s3, 0xe4($sp) +/* 35E878 E0056E78 8FB200E0 */ lw $s2, 0xe0($sp) +/* 35E87C E0056E7C 8FB100DC */ lw $s1, 0xdc($sp) +/* 35E880 E0056E80 8FB000D8 */ lw $s0, 0xd8($sp) +/* 35E884 E0056E84 D7B60108 */ ldc1 $f22, 0x108($sp) +/* 35E888 E0056E88 D7B40100 */ ldc1 $f20, 0x100($sp) +/* 35E88C E0056E8C 03E00008 */ jr $ra +/* 35E890 E0056E90 27BD0110 */ addiu $sp, $sp, 0x110 +/* 35E894 E0056E94 00000000 */ nop +/* 35E898 E0056E98 00000000 */ nop +/* 35E89C E0056E9C 00000000 */ nop diff --git a/asm/nonmatchings/code_35E920/func_E0058000.s b/asm/nonmatchings/code_35E920/func_E0058000.s new file mode 100644 index 0000000000..926a84b599 --- /dev/null +++ b/asm/nonmatchings/code_35E920/func_E0058000.s @@ -0,0 +1,115 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0058000 +/* 35E920 E0058000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 35E924 E0058004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 35E928 E0058008 4485A000 */ mtc1 $a1, $f20 +/* 35E92C E005800C AFB1002C */ sw $s1, 0x2c($sp) +/* 35E930 E0058010 0080882D */ daddu $s1, $a0, $zero +/* 35E934 E0058014 F7B60048 */ sdc1 $f22, 0x48($sp) +/* 35E938 E0058018 4486B000 */ mtc1 $a2, $f22 +/* 35E93C E005801C 27A40010 */ addiu $a0, $sp, 0x10 +/* 35E940 E0058020 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 35E944 E0058024 4487C000 */ mtc1 $a3, $f24 +/* 35E948 E0058028 3C02E006 */ lui $v0, %hi(D_E00581AC) +/* 35E94C E005802C 244281AC */ addiu $v0, $v0, %lo(D_E00581AC) +/* 35E950 E0058030 AFA20018 */ sw $v0, 0x18($sp) +/* 35E954 E0058034 3C02E006 */ lui $v0, %hi(D_E00581B4) +/* 35E958 E0058038 244281B4 */ addiu $v0, $v0, %lo(D_E00581B4) +/* 35E95C E005803C AFA2001C */ sw $v0, 0x1c($sp) +/* 35E960 E0058040 3C02E006 */ lui $v0, %hi(D_E0058490) +/* 35E964 E0058044 24428490 */ addiu $v0, $v0, %lo(D_E0058490) +/* 35E968 E0058048 AFA20020 */ sw $v0, 0x20($sp) +/* 35E96C E005804C 2402002C */ addiu $v0, $zero, 0x2c +/* 35E970 E0058050 AFBF0038 */ sw $ra, 0x38($sp) +/* 35E974 E0058054 AFB30034 */ sw $s3, 0x34($sp) +/* 35E978 E0058058 AFB20030 */ sw $s2, 0x30($sp) +/* 35E97C E005805C AFB00028 */ sw $s0, 0x28($sp) +/* 35E980 E0058060 AFA00010 */ sw $zero, 0x10($sp) +/* 35E984 E0058064 AFA00024 */ sw $zero, 0x24($sp) +/* 35E988 E0058068 0C080124 */ jal func_E0200490 +/* 35E98C E005806C AFA20014 */ sw $v0, 0x14($sp) +/* 35E990 E0058070 24040104 */ addiu $a0, $zero, 0x104 +/* 35E994 E0058074 24120005 */ addiu $s2, $zero, 5 +/* 35E998 E0058078 0040802D */ daddu $s0, $v0, $zero +/* 35E99C E005807C 0C08012C */ jal func_E02004B0 +/* 35E9A0 E0058080 AE120008 */ sw $s2, 8($s0) +/* 35E9A4 E0058084 0040182D */ daddu $v1, $v0, $zero +/* 35E9A8 E0058088 14600003 */ bnez $v1, .LE0058098 +/* 35E9AC E005808C AE03000C */ sw $v1, 0xc($s0) +.LE0058090: +/* 35E9B0 E0058090 08016024 */ j .LE0058090 +/* 35E9B4 E0058094 00000000 */ nop +.LE0058098: +/* 35E9B8 E0058098 24020064 */ addiu $v0, $zero, 0x64 +/* 35E9BC E005809C AC710000 */ sw $s1, ($v1) +/* 35E9C0 E00580A0 E4740004 */ swc1 $f20, 4($v1) +/* 35E9C4 E00580A4 E4760008 */ swc1 $f22, 8($v1) +/* 35E9C8 E00580A8 E478000C */ swc1 $f24, 0xc($v1) +/* 35E9CC E00580AC AC620028 */ sw $v0, 0x28($v1) +/* 35E9D0 E00580B0 AC60002C */ sw $zero, 0x2c($v1) +/* 35E9D4 E00580B4 AC600024 */ sw $zero, 0x24($v1) +/* 35E9D8 E00580B8 24110001 */ addiu $s1, $zero, 1 +/* 35E9DC E00580BC 0232102A */ slt $v0, $s1, $s2 +/* 35E9E0 E00580C0 10400030 */ beqz $v0, .LE0058184 +/* 35E9E4 E00580C4 24630034 */ addiu $v1, $v1, 0x34 +/* 35E9E8 E00580C8 3C136666 */ lui $s3, 0x6666 +/* 35E9EC E00580CC 36736667 */ ori $s3, $s3, 0x6667 +/* 35E9F0 E00580D0 24700014 */ addiu $s0, $v1, 0x14 +.LE00580D4: +/* 35E9F4 E00580D4 0C080138 */ jal func_E02004E0 +/* 35E9F8 E00580D8 2404001E */ addiu $a0, $zero, 0x1e +/* 35E9FC E00580DC 2404001E */ addiu $a0, $zero, 0x1e +/* 35EA00 E00580E0 2442FFF1 */ addiu $v0, $v0, -0xf +/* 35EA04 E00580E4 44820000 */ mtc1 $v0, $f0 +/* 35EA08 E00580E8 00000000 */ nop +/* 35EA0C E00580EC 46800020 */ cvt.s.w $f0, $f0 +/* 35EA10 E00580F0 E600FFF0 */ swc1 $f0, -0x10($s0) +/* 35EA14 E00580F4 0C080138 */ jal func_E02004E0 +/* 35EA18 E00580F8 AE00FFF4 */ sw $zero, -0xc($s0) +/* 35EA1C E00580FC 24040168 */ addiu $a0, $zero, 0x168 +/* 35EA20 E0058100 2442FFF1 */ addiu $v0, $v0, -0xf +/* 35EA24 E0058104 44820000 */ mtc1 $v0, $f0 +/* 35EA28 E0058108 00000000 */ nop +/* 35EA2C E005810C 46800020 */ cvt.s.w $f0, $f0 +/* 35EA30 E0058110 0C080138 */ jal func_E02004E0 +/* 35EA34 E0058114 E600FFF8 */ swc1 $f0, -8($s0) +/* 35EA38 E0058118 24040168 */ addiu $a0, $zero, 0x168 +/* 35EA3C E005811C 44820000 */ mtc1 $v0, $f0 +/* 35EA40 E0058120 00000000 */ nop +/* 35EA44 E0058124 46800020 */ cvt.s.w $f0, $f0 +/* 35EA48 E0058128 0C080138 */ jal func_E02004E0 +/* 35EA4C E005812C E6000004 */ swc1 $f0, 4($s0) +/* 35EA50 E0058130 24040064 */ addiu $a0, $zero, 0x64 +/* 35EA54 E0058134 44820000 */ mtc1 $v0, $f0 +/* 35EA58 E0058138 00000000 */ nop +/* 35EA5C E005813C 46800020 */ cvt.s.w $f0, $f0 +/* 35EA60 E0058140 0C080138 */ jal func_E02004E0 +/* 35EA64 E0058144 E600000C */ swc1 $f0, 0xc($s0) +/* 35EA68 E0058148 00530018 */ mult $v0, $s3 +/* 35EA6C E005814C 26310001 */ addiu $s1, $s1, 1 +/* 35EA70 E0058150 000217C3 */ sra $v0, $v0, 0x1f +/* 35EA74 E0058154 AE00FFFC */ sw $zero, -4($s0) +/* 35EA78 E0058158 AE000000 */ sw $zero, ($s0) +/* 35EA7C E005815C 00004010 */ mfhi $t0 +/* 35EA80 E0058160 00081883 */ sra $v1, $t0, 2 +/* 35EA84 E0058164 00621823 */ subu $v1, $v1, $v0 +/* 35EA88 E0058168 44830000 */ mtc1 $v1, $f0 +/* 35EA8C E005816C 00000000 */ nop +/* 35EA90 E0058170 46800020 */ cvt.s.w $f0, $f0 +/* 35EA94 E0058174 E6000008 */ swc1 $f0, 8($s0) +/* 35EA98 E0058178 0232102A */ slt $v0, $s1, $s2 +/* 35EA9C E005817C 1440FFD5 */ bnez $v0, .LE00580D4 +/* 35EAA0 E0058180 26100034 */ addiu $s0, $s0, 0x34 +.LE0058184: +/* 35EAA4 E0058184 8FBF0038 */ lw $ra, 0x38($sp) +/* 35EAA8 E0058188 8FB30034 */ lw $s3, 0x34($sp) +/* 35EAAC E005818C 8FB20030 */ lw $s2, 0x30($sp) +/* 35EAB0 E0058190 8FB1002C */ lw $s1, 0x2c($sp) +/* 35EAB4 E0058194 8FB00028 */ lw $s0, 0x28($sp) +/* 35EAB8 E0058198 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 35EABC E005819C D7B60048 */ ldc1 $f22, 0x48($sp) +/* 35EAC0 E00581A0 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 35EAC4 E00581A4 03E00008 */ jr $ra +/* 35EAC8 E00581A8 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_35E920/func_E00581AC.s b/asm/nonmatchings/code_35E920/func_E00581AC.s new file mode 100644 index 0000000000..66e43ecb09 --- /dev/null +++ b/asm/nonmatchings/code_35E920/func_E00581AC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00581AC +/* 35EACC E00581AC 03E00008 */ jr $ra +/* 35EAD0 E00581B0 00000000 */ nop diff --git a/asm/nonmatchings/code_35E920/func_E00581B4.s b/asm/nonmatchings/code_35E920/func_E00581B4.s new file mode 100644 index 0000000000..8a2fb09ba0 --- /dev/null +++ b/asm/nonmatchings/code_35E920/func_E00581B4.s @@ -0,0 +1,197 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00581B4 +/* 35EAD4 E00581B4 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 35EAD8 E00581B8 AFB3001C */ sw $s3, 0x1c($sp) +/* 35EADC E00581BC 0080982D */ daddu $s3, $a0, $zero +/* 35EAE0 E00581C0 AFBF0020 */ sw $ra, 0x20($sp) +/* 35EAE4 E00581C4 AFB20018 */ sw $s2, 0x18($sp) +/* 35EAE8 E00581C8 AFB10014 */ sw $s1, 0x14($sp) +/* 35EAEC E00581CC AFB00010 */ sw $s0, 0x10($sp) +/* 35EAF0 E00581D0 F7B60030 */ sdc1 $f22, 0x30($sp) +/* 35EAF4 E00581D4 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 35EAF8 E00581D8 8E65000C */ lw $a1, 0xc($s3) +/* 35EAFC E00581DC 8CA2002C */ lw $v0, 0x2c($a1) +/* 35EB00 E00581E0 8CB20000 */ lw $s2, ($a1) +/* 35EB04 E00581E4 2442FFFB */ addiu $v0, $v0, -5 +/* 35EB08 E00581E8 2C42000A */ sltiu $v0, $v0, 0xa +/* 35EB0C E00581EC 10400007 */ beqz $v0, .LE005820C +/* 35EB10 E00581F0 3C020004 */ lui $v0, 4 +/* 35EB14 E00581F4 16400006 */ bnez $s2, .LE0058210 +/* 35EB18 E00581F8 3442F1A0 */ ori $v0, $v0, 0xf1a0 +/* 35EB1C E00581FC 3C028011 */ lui $v0, %hi(gPlayerActionState) +/* 35EB20 E0058200 8042F07C */ lb $v0, %lo(gPlayerActionState)($v0) +/* 35EB24 E0058204 10400099 */ beqz $v0, .LE005846C +/* 35EB28 E0058208 3C020004 */ lui $v0, 4 +.LE005820C: +/* 35EB2C E005820C 3442F1A0 */ ori $v0, $v0, 0xf1a0 +.LE0058210: +/* 35EB30 E0058210 8CA30028 */ lw $v1, 0x28($a1) +/* 35EB34 E0058214 8CA4002C */ lw $a0, 0x2c($a1) +/* 35EB38 E0058218 2463FFFF */ addiu $v1, $v1, -1 +/* 35EB3C E005821C 24840001 */ addiu $a0, $a0, 1 +/* 35EB40 E0058220 0044102A */ slt $v0, $v0, $a0 +/* 35EB44 E0058224 ACA30028 */ sw $v1, 0x28($a1) +/* 35EB48 E0058228 10400003 */ beqz $v0, .LE0058238 +/* 35EB4C E005822C ACA4002C */ sw $a0, 0x2c($a1) +/* 35EB50 E0058230 24020100 */ addiu $v0, $zero, 0x100 +/* 35EB54 E0058234 ACA2002C */ sw $v0, 0x2c($a1) +.LE0058238: +/* 35EB58 E0058238 8CA40028 */ lw $a0, 0x28($a1) +/* 35EB5C E005823C 04810005 */ bgez $a0, .LE0058254 +/* 35EB60 E0058240 00000000 */ nop +/* 35EB64 E0058244 0C080128 */ jal func_E02004A0 +/* 35EB68 E0058248 0260202D */ daddu $a0, $s3, $zero +/* 35EB6C E005824C 0801611B */ j .LE005846C +/* 35EB70 E0058250 00000000 */ nop +.LE0058254: +/* 35EB74 E0058254 8CA2002C */ lw $v0, 0x2c($a1) +/* 35EB78 E0058258 2842000A */ slti $v0, $v0, 0xa +/* 35EB7C E005825C 10400010 */ beqz $v0, .LE00582A0 +/* 35EB80 E0058260 240200FF */ addiu $v0, $zero, 0xff +/* 35EB84 E0058264 8CA30024 */ lw $v1, 0x24($a1) +/* 35EB88 E0058268 3C01E006 */ lui $at, %hi(D_E0058780) +/* 35EB8C E005826C D4208780 */ ldc1 $f0, %lo(D_E0058780)($at) +/* 35EB90 E0058270 00431023 */ subu $v0, $v0, $v1 +/* 35EB94 E0058274 44821000 */ mtc1 $v0, $f2 +/* 35EB98 E0058278 00000000 */ nop +/* 35EB9C E005827C 468010A1 */ cvt.d.w $f2, $f2 +/* 35EBA0 E0058280 46201082 */ mul.d $f2, $f2, $f0 +/* 35EBA4 E0058284 00000000 */ nop +/* 35EBA8 E0058288 44830000 */ mtc1 $v1, $f0 +/* 35EBAC E005828C 00000000 */ nop +/* 35EBB0 E0058290 46800021 */ cvt.d.w $f0, $f0 +/* 35EBB4 E0058294 46220000 */ add.d $f0, $f0, $f2 +/* 35EBB8 E0058298 4620020D */ trunc.w.d $f8, $f0 +/* 35EBBC E005829C E4A80024 */ swc1 $f8, 0x24($a1) +.LE00582A0: +/* 35EBC0 E00582A0 2882000A */ slti $v0, $a0, 0xa +/* 35EBC4 E00582A4 10400009 */ beqz $v0, .LE00582CC +/* 35EBC8 E00582A8 00000000 */ nop +/* 35EBCC E00582AC 3C01E006 */ lui $at, %hi(D_E0058788) +/* 35EBD0 E00582B0 D4228788 */ ldc1 $f2, %lo(D_E0058788)($at) +/* 35EBD4 E00582B4 C4A00024 */ lwc1 $f0, 0x24($a1) +/* 35EBD8 E00582B8 46800021 */ cvt.d.w $f0, $f0 +/* 35EBDC E00582BC 46220002 */ mul.d $f0, $f0, $f2 +/* 35EBE0 E00582C0 00000000 */ nop +/* 35EBE4 E00582C4 4620020D */ trunc.w.d $f8, $f0 +/* 35EBE8 E00582C8 E4A80024 */ swc1 $f8, 0x24($a1) +.LE00582CC: +/* 35EBEC E00582CC 8E620008 */ lw $v0, 8($s3) +/* 35EBF0 E00582D0 24110001 */ addiu $s1, $zero, 1 +/* 35EBF4 E00582D4 0222102A */ slt $v0, $s1, $v0 +/* 35EBF8 E00582D8 10400064 */ beqz $v0, .LE005846C +/* 35EBFC E00582DC 24A50034 */ addiu $a1, $a1, 0x34 +/* 35EC00 E00582E0 24B00008 */ addiu $s0, $a1, 8 +/* 35EC04 E00582E4 3C01BD4C */ lui $at, 0xbd4c +/* 35EC08 E00582E8 3421CCCD */ ori $at, $at, 0xcccd +/* 35EC0C E00582EC 4481B000 */ mtc1 $at, $f22 +/* 35EC10 E00582F0 3C014120 */ lui $at, 0x4120 +/* 35EC14 E00582F4 4481A000 */ mtc1 $at, $f20 +.LE00582F8: +/* 35EC18 E00582F8 C60C0010 */ lwc1 $f12, 0x10($s0) +/* 35EC1C E00582FC 0C080140 */ jal func_E0200500 +/* 35EC20 E0058300 460C6300 */ add.s $f12, $f12, $f12 +/* 35EC24 E0058304 3C01E006 */ lui $at, %hi(D_E0058790) +/* 35EC28 E0058308 D4228790 */ ldc1 $f2, %lo(D_E0058790)($at) +/* 35EC2C E005830C 46000021 */ cvt.d.s $f0, $f0 +/* 35EC30 E0058310 46220002 */ mul.d $f0, $f0, $f2 +/* 35EC34 E0058314 00000000 */ nop +/* 35EC38 E0058318 C602000C */ lwc1 $f2, 0xc($s0) +/* 35EC3C E005831C 46161080 */ add.s $f2, $f2, $f22 +/* 35EC40 E0058320 C6040008 */ lwc1 $f4, 8($s0) +/* 35EC44 E0058324 46200020 */ cvt.s.d $f0, $f0 +/* 35EC48 E0058328 46002000 */ add.s $f0, $f4, $f0 +/* 35EC4C E005832C E602000C */ swc1 $f2, 0xc($s0) +/* 35EC50 E0058330 16400019 */ bnez $s2, .LE0058398 +/* 35EC54 E0058334 E6000008 */ swc1 $f0, 8($s0) +/* 35EC58 E0058338 3C01E006 */ lui $at, %hi(D_E0058798) +/* 35EC5C E005833C D4228798 */ ldc1 $f2, %lo(D_E0058798)($at) +/* 35EC60 E0058340 46000021 */ cvt.d.s $f0, $f0 +/* 35EC64 E0058344 46220002 */ mul.d $f0, $f0, $f2 +/* 35EC68 E0058348 00000000 */ nop +/* 35EC6C E005834C C60C0010 */ lwc1 $f12, 0x10($s0) +/* 35EC70 E0058350 46200020 */ cvt.s.d $f0, $f0 +/* 35EC74 E0058354 0C080140 */ jal func_E0200500 +/* 35EC78 E0058358 E6000008 */ swc1 $f0, 8($s0) +/* 35EC7C E005835C 3C01E006 */ lui $at, %hi(D_E00587A0) +/* 35EC80 E0058360 D42287A0 */ ldc1 $f2, %lo(D_E00587A0)($at) +/* 35EC84 E0058364 46000021 */ cvt.d.s $f0, $f0 +/* 35EC88 E0058368 46220002 */ mul.d $f0, $f0, $f2 +/* 35EC8C E005836C 00000000 */ nop +/* 35EC90 E0058370 3C01E006 */ lui $at, %hi(D_E00587A8) +/* 35EC94 E0058374 D42487A8 */ ldc1 $f4, %lo(D_E00587A8)($at) +/* 35EC98 E0058378 C602000C */ lwc1 $f2, 0xc($s0) +/* 35EC9C E005837C 46240000 */ add.d $f0, $f0, $f4 +/* 35ECA0 E0058380 460010A1 */ cvt.d.s $f2, $f2 +/* 35ECA4 E0058384 46201082 */ mul.d $f2, $f2, $f0 +/* 35ECA8 E0058388 00000000 */ nop +/* 35ECAC E005838C 462010A0 */ cvt.s.d $f2, $f2 +/* 35ECB0 E0058390 080160F1 */ j .LE00583C4 +/* 35ECB4 E0058394 E602000C */ swc1 $f2, 0xc($s0) +.LE0058398: +/* 35ECB8 E0058398 C6000008 */ lwc1 $f0, 8($s0) +/* 35ECBC E005839C 3C01E006 */ lui $at, %hi(D_E00587B0) +/* 35ECC0 E00583A0 D42287B0 */ ldc1 $f2, %lo(D_E00587B0)($at) +/* 35ECC4 E00583A4 46000021 */ cvt.d.s $f0, $f0 +/* 35ECC8 E00583A8 46220002 */ mul.d $f0, $f0, $f2 +/* 35ECCC E00583AC 00000000 */ nop +/* 35ECD0 E00583B0 C602000C */ lwc1 $f2, 0xc($s0) +/* 35ECD4 E00583B4 46161080 */ add.s $f2, $f2, $f22 +/* 35ECD8 E00583B8 E602000C */ swc1 $f2, 0xc($s0) +/* 35ECDC E00583BC 46200020 */ cvt.s.d $f0, $f0 +/* 35ECE0 E00583C0 E6000008 */ swc1 $f0, 8($s0) +.LE00583C4: +/* 35ECE4 E00583C4 0C080138 */ jal func_E02004E0 +/* 35ECE8 E00583C8 24040032 */ addiu $a0, $zero, 0x32 +/* 35ECEC E00583CC 3C0141C8 */ lui $at, 0x41c8 +/* 35ECF0 E00583D0 44811000 */ mtc1 $at, $f2 +/* 35ECF4 E00583D4 44820000 */ mtc1 $v0, $f0 +/* 35ECF8 E00583D8 00000000 */ nop +/* 35ECFC E00583DC 46800020 */ cvt.s.w $f0, $f0 +/* 35ED00 E00583E0 46020001 */ sub.s $f0, $f0, $f2 +/* 35ED04 E00583E4 C60C0014 */ lwc1 $f12, 0x14($s0) +/* 35ED08 E00583E8 46006300 */ add.s $f12, $f12, $f0 +/* 35ED0C E00583EC 0C080140 */ jal func_E0200500 +/* 35ED10 E00583F0 E60C0014 */ swc1 $f12, 0x14($s0) +/* 35ED14 E00583F4 46140002 */ mul.s $f0, $f0, $f20 +/* 35ED18 E00583F8 00000000 */ nop +/* 35ED1C E00583FC C6020014 */ lwc1 $f2, 0x14($s0) +/* 35ED20 E0058400 3C013F00 */ lui $at, 0x3f00 +/* 35ED24 E0058404 44816000 */ mtc1 $at, $f12 +/* 35ED28 E0058408 00000000 */ nop +/* 35ED2C E005840C 460C1302 */ mul.s $f12, $f2, $f12 +/* 35ED30 E0058410 00000000 */ nop +/* 35ED34 E0058414 C6020010 */ lwc1 $f2, 0x10($s0) +/* 35ED38 E0058418 46001080 */ add.s $f2, $f2, $f0 +/* 35ED3C E005841C 0C080144 */ jal func_E0200510 +/* 35ED40 E0058420 E6020010 */ swc1 $f2, 0x10($s0) +/* 35ED44 E0058424 46140002 */ mul.s $f0, $f0, $f20 +/* 35ED48 E0058428 00000000 */ nop +/* 35ED4C E005842C C606FFFC */ lwc1 $f6, -4($s0) +/* 35ED50 E0058430 C6020008 */ lwc1 $f2, 8($s0) +/* 35ED54 E0058434 C6040000 */ lwc1 $f4, ($s0) +/* 35ED58 E0058438 46023180 */ add.s $f6, $f6, $f2 +/* 35ED5C E005843C C602000C */ lwc1 $f2, 0xc($s0) +/* 35ED60 E0058440 46022100 */ add.s $f4, $f4, $f2 +/* 35ED64 E0058444 C6020018 */ lwc1 $f2, 0x18($s0) +/* 35ED68 E0058448 26310001 */ addiu $s1, $s1, 1 +/* 35ED6C E005844C 46001080 */ add.s $f2, $f2, $f0 +/* 35ED70 E0058450 E606FFFC */ swc1 $f6, -4($s0) +/* 35ED74 E0058454 E6040000 */ swc1 $f4, ($s0) +/* 35ED78 E0058458 E6020018 */ swc1 $f2, 0x18($s0) +/* 35ED7C E005845C 8E620008 */ lw $v0, 8($s3) +/* 35ED80 E0058460 0222102A */ slt $v0, $s1, $v0 +/* 35ED84 E0058464 1440FFA4 */ bnez $v0, .LE00582F8 +/* 35ED88 E0058468 26100034 */ addiu $s0, $s0, 0x34 +.LE005846C: +/* 35ED8C E005846C 8FBF0020 */ lw $ra, 0x20($sp) +/* 35ED90 E0058470 8FB3001C */ lw $s3, 0x1c($sp) +/* 35ED94 E0058474 8FB20018 */ lw $s2, 0x18($sp) +/* 35ED98 E0058478 8FB10014 */ lw $s1, 0x14($sp) +/* 35ED9C E005847C 8FB00010 */ lw $s0, 0x10($sp) +/* 35EDA0 E0058480 D7B60030 */ ldc1 $f22, 0x30($sp) +/* 35EDA4 E0058484 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 35EDA8 E0058488 03E00008 */ jr $ra +/* 35EDAC E005848C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_35E920/func_E0058490.s b/asm/nonmatchings/code_35E920/func_E0058490.s new file mode 100644 index 0000000000..9b14ca2257 --- /dev/null +++ b/asm/nonmatchings/code_35E920/func_E0058490.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0058490 +/* 35EDB0 E0058490 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 35EDB4 E0058494 3C02E006 */ lui $v0, %hi(D_E00584D4) +/* 35EDB8 E0058498 244284D4 */ addiu $v0, $v0, %lo(D_E00584D4) +/* 35EDBC E005849C AFA2001C */ sw $v0, 0x1c($sp) +/* 35EDC0 E00584A0 2402002D */ addiu $v0, $zero, 0x2d +/* 35EDC4 E00584A4 AFA40018 */ sw $a0, 0x18($sp) +/* 35EDC8 E00584A8 27A40010 */ addiu $a0, $sp, 0x10 +/* 35EDCC E00584AC AFBF0020 */ sw $ra, 0x20($sp) +/* 35EDD0 E00584B0 AFA00014 */ sw $zero, 0x14($sp) +/* 35EDD4 E00584B4 0C080120 */ jal func_E0200480 +/* 35EDD8 E00584B8 AFA20010 */ sw $v0, 0x10($sp) +/* 35EDDC E00584BC 8C430000 */ lw $v1, ($v0) +/* 35EDE0 E00584C0 34630002 */ ori $v1, $v1, 2 +/* 35EDE4 E00584C4 AC430000 */ sw $v1, ($v0) +/* 35EDE8 E00584C8 8FBF0020 */ lw $ra, 0x20($sp) +/* 35EDEC E00584CC 03E00008 */ jr $ra +/* 35EDF0 E00584D0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_35E920/func_E00584D4.s b/asm/nonmatchings/code_35E920/func_E00584D4.s new file mode 100644 index 0000000000..f4a771358d --- /dev/null +++ b/asm/nonmatchings/code_35E920/func_E00584D4.s @@ -0,0 +1,177 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00584D4 +/* 35EDF4 E00584D4 27BDFEF0 */ addiu $sp, $sp, -0x110 +/* 35EDF8 E00584D8 AFB700F4 */ sw $s7, 0xf4($sp) +/* 35EDFC E00584DC 0080B82D */ daddu $s7, $a0, $zero +/* 35EE00 E00584E0 3C02DB06 */ lui $v0, 0xdb06 +/* 35EE04 E00584E4 34420024 */ ori $v0, $v0, 0x24 +/* 35EE08 E00584E8 3C061464 */ lui $a2, 0x1464 +/* 35EE0C E00584EC 34C61400 */ ori $a2, $a2, 0x1400 +/* 35EE10 E00584F0 AFB300E4 */ sw $s3, 0xe4($sp) +/* 35EE14 E00584F4 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 35EE18 E00584F8 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 35EE1C E00584FC AFBF00F8 */ sw $ra, 0xf8($sp) +/* 35EE20 E0058500 AFB600F0 */ sw $s6, 0xf0($sp) +/* 35EE24 E0058504 AFB500EC */ sw $s5, 0xec($sp) +/* 35EE28 E0058508 AFB400E8 */ sw $s4, 0xe8($sp) +/* 35EE2C E005850C AFB200E0 */ sw $s2, 0xe0($sp) +/* 35EE30 E0058510 AFB100DC */ sw $s1, 0xdc($sp) +/* 35EE34 E0058514 AFB000D8 */ sw $s0, 0xd8($sp) +/* 35EE38 E0058518 F7B60108 */ sdc1 $f22, 0x108($sp) +/* 35EE3C E005851C F7B40100 */ sdc1 $f20, 0x100($sp) +/* 35EE40 E0058520 8E650000 */ lw $a1, ($s3) +/* 35EE44 E0058524 8EF0000C */ lw $s0, 0xc($s7) +/* 35EE48 E0058528 00A0202D */ daddu $a0, $a1, $zero +/* 35EE4C E005852C 24A50008 */ addiu $a1, $a1, 8 +/* 35EE50 E0058530 AE650000 */ sw $a1, ($s3) +/* 35EE54 E0058534 AC820000 */ sw $v0, ($a0) +/* 35EE58 E0058538 24A20008 */ addiu $v0, $a1, 8 +/* 35EE5C E005853C AE620000 */ sw $v0, ($s3) +/* 35EE60 E0058540 8EE30010 */ lw $v1, 0x10($s7) +/* 35EE64 E0058544 24A20010 */ addiu $v0, $a1, 0x10 +/* 35EE68 E0058548 AE620000 */ sw $v0, ($s3) +/* 35EE6C E005854C 8C62001C */ lw $v0, 0x1c($v1) +/* 35EE70 E0058550 3C038000 */ lui $v1, 0x8000 +/* 35EE74 E0058554 00431021 */ addu $v0, $v0, $v1 +/* 35EE78 E0058558 AC820004 */ sw $v0, 4($a0) +/* 35EE7C E005855C 3C02DE00 */ lui $v0, 0xde00 +/* 35EE80 E0058560 ACA20000 */ sw $v0, ($a1) +/* 35EE84 E0058564 3C020900 */ lui $v0, 0x900 +/* 35EE88 E0058568 24421100 */ addiu $v0, $v0, 0x1100 +/* 35EE8C E005856C ACA20004 */ sw $v0, 4($a1) +/* 35EE90 E0058570 3C02FA00 */ lui $v0, 0xfa00 +/* 35EE94 E0058574 ACA20008 */ sw $v0, 8($a1) +/* 35EE98 E0058578 92020027 */ lbu $v0, 0x27($s0) +/* 35EE9C E005857C 24120001 */ addiu $s2, $zero, 1 +/* 35EEA0 E0058580 00461025 */ or $v0, $v0, $a2 +/* 35EEA4 E0058584 ACA2000C */ sw $v0, 0xc($a1) +/* 35EEA8 E0058588 8E050004 */ lw $a1, 4($s0) +/* 35EEAC E005858C 8E060008 */ lw $a2, 8($s0) +/* 35EEB0 E0058590 8E07000C */ lw $a3, 0xc($s0) +/* 35EEB4 E0058594 0C080108 */ jal func_E0200420 +/* 35EEB8 E0058598 27A40018 */ addiu $a0, $sp, 0x18 +/* 35EEBC E005859C 27B10058 */ addiu $s1, $sp, 0x58 +/* 35EEC0 E00585A0 4480A000 */ mtc1 $zero, $f20 +/* 35EEC4 E00585A4 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 35EEC8 E00585A8 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 35EECC E00585AC 3C013F80 */ lui $at, 0x3f80 +/* 35EED0 E00585B0 4481B000 */ mtc1 $at, $f22 +/* 35EED4 E00585B4 00031080 */ sll $v0, $v1, 2 +/* 35EED8 E00585B8 00431021 */ addu $v0, $v0, $v1 +/* 35EEDC E00585BC 00021080 */ sll $v0, $v0, 2 +/* 35EEE0 E00585C0 00431023 */ subu $v0, $v0, $v1 +/* 35EEE4 E00585C4 000218C0 */ sll $v1, $v0, 3 +/* 35EEE8 E00585C8 00431021 */ addu $v0, $v0, $v1 +/* 35EEEC E00585CC 000210C0 */ sll $v0, $v0, 3 +/* 35EEF0 E00585D0 4406A000 */ mfc1 $a2, $f20 +/* 35EEF4 E00585D4 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 35EEF8 E00585D8 00220821 */ addu $at, $at, $v0 +/* 35EEFC E00585DC C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 35EF00 E00585E0 4407B000 */ mfc1 $a3, $f22 +/* 35EF04 E00585E4 46000007 */ neg.s $f0, $f0 +/* 35EF08 E00585E8 44050000 */ mfc1 $a1, $f0 +/* 35EF0C E00585EC 0220202D */ daddu $a0, $s1, $zero +/* 35EF10 E00585F0 0C080104 */ jal func_E0200410 +/* 35EF14 E00585F4 E7B40010 */ swc1 $f20, 0x10($sp) +/* 35EF18 E00585F8 0220202D */ daddu $a0, $s1, $zero +/* 35EF1C E00585FC 27A50018 */ addiu $a1, $sp, 0x18 +/* 35EF20 E0058600 0C080114 */ jal func_E0200450 +/* 35EF24 E0058604 27A60098 */ addiu $a2, $sp, 0x98 +/* 35EF28 E0058608 8EE20008 */ lw $v0, 8($s7) +/* 35EF2C E005860C 0242102A */ slt $v0, $s2, $v0 +/* 35EF30 E0058610 1040004E */ beqz $v0, .LE005874C +/* 35EF34 E0058614 26100034 */ addiu $s0, $s0, 0x34 +/* 35EF38 E0058618 3C16800A */ lui $s6, %hi(D_8009A674) +/* 35EF3C E005861C 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 35EF40 E0058620 3C158007 */ lui $s5, %hi(D_800741F0) +/* 35EF44 E0058624 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 35EF48 E0058628 3C140001 */ lui $s4, 1 +/* 35EF4C E005862C 36941630 */ ori $s4, $s4, 0x1630 +/* 35EF50 E0058630 26100020 */ addiu $s0, $s0, 0x20 +.LE0058634: +/* 35EF54 E0058634 0220202D */ daddu $a0, $s1, $zero +/* 35EF58 E0058638 8E05FFE4 */ lw $a1, -0x1c($s0) +/* 35EF5C E005863C 8E06FFE8 */ lw $a2, -0x18($s0) +/* 35EF60 E0058640 8E07FFEC */ lw $a3, -0x14($s0) +/* 35EF64 E0058644 0C080108 */ jal func_E0200420 +/* 35EF68 E0058648 26520001 */ addiu $s2, $s2, 1 +/* 35EF6C E005864C 0220202D */ daddu $a0, $s1, $zero +/* 35EF70 E0058650 27A50098 */ addiu $a1, $sp, 0x98 +/* 35EF74 E0058654 0C080114 */ jal func_E0200450 +/* 35EF78 E0058658 27A60018 */ addiu $a2, $sp, 0x18 +/* 35EF7C E005865C E7B60010 */ swc1 $f22, 0x10($sp) +/* 35EF80 E0058660 8E05FFF8 */ lw $a1, -8($s0) +/* 35EF84 E0058664 4406A000 */ mfc1 $a2, $f20 +/* 35EF88 E0058668 4407A000 */ mfc1 $a3, $f20 +/* 35EF8C E005866C 0C080104 */ jal func_E0200410 +/* 35EF90 E0058670 0220202D */ daddu $a0, $s1, $zero +/* 35EF94 E0058674 0220202D */ daddu $a0, $s1, $zero +/* 35EF98 E0058678 27A50018 */ addiu $a1, $sp, 0x18 +/* 35EF9C E005867C 0C080114 */ jal func_E0200450 +/* 35EFA0 E0058680 00A0302D */ daddu $a2, $a1, $zero +/* 35EFA4 E0058684 0220202D */ daddu $a0, $s1, $zero +/* 35EFA8 E0058688 E7B40010 */ swc1 $f20, 0x10($sp) +/* 35EFAC E005868C 8E050000 */ lw $a1, ($s0) +/* 35EFB0 E0058690 4406A000 */ mfc1 $a2, $f20 +/* 35EFB4 E0058694 4407B000 */ mfc1 $a3, $f22 +/* 35EFB8 E0058698 0C080104 */ jal func_E0200410 +/* 35EFBC E005869C 26100034 */ addiu $s0, $s0, 0x34 +/* 35EFC0 E00586A0 0220202D */ daddu $a0, $s1, $zero +/* 35EFC4 E00586A4 27A50018 */ addiu $a1, $sp, 0x18 +/* 35EFC8 E00586A8 0C080114 */ jal func_E0200450 +/* 35EFCC E00586AC 00A0302D */ daddu $a2, $a1, $zero +/* 35EFD0 E00586B0 27A40018 */ addiu $a0, $sp, 0x18 +/* 35EFD4 E00586B4 96A50000 */ lhu $a1, ($s5) +/* 35EFD8 E00586B8 8EC20000 */ lw $v0, ($s6) +/* 35EFDC E00586BC 00052980 */ sll $a1, $a1, 6 +/* 35EFE0 E00586C0 00B42821 */ addu $a1, $a1, $s4 +/* 35EFE4 E00586C4 0C080118 */ jal func_E0200460 +/* 35EFE8 E00586C8 00452821 */ addu $a1, $v0, $a1 +/* 35EFEC E00586CC 3C06D838 */ lui $a2, 0xd838 +/* 35EFF0 E00586D0 8E640000 */ lw $a0, ($s3) +/* 35EFF4 E00586D4 34C60002 */ ori $a2, $a2, 2 +/* 35EFF8 E00586D8 0080282D */ daddu $a1, $a0, $zero +/* 35EFFC E00586DC 24840008 */ addiu $a0, $a0, 8 +/* 35F000 E00586E0 AE640000 */ sw $a0, ($s3) +/* 35F004 E00586E4 96A20000 */ lhu $v0, ($s5) +/* 35F008 E00586E8 3C03DA38 */ lui $v1, 0xda38 +/* 35F00C E00586EC ACA30000 */ sw $v1, ($a1) +/* 35F010 E00586F0 24430001 */ addiu $v1, $v0, 1 +/* 35F014 E00586F4 3042FFFF */ andi $v0, $v0, 0xffff +/* 35F018 E00586F8 00021180 */ sll $v0, $v0, 6 +/* 35F01C E00586FC A6A30000 */ sh $v1, ($s5) +/* 35F020 E0058700 8EC30000 */ lw $v1, ($s6) +/* 35F024 E0058704 00541021 */ addu $v0, $v0, $s4 +/* 35F028 E0058708 00621821 */ addu $v1, $v1, $v0 +/* 35F02C E005870C 24820008 */ addiu $v0, $a0, 8 +/* 35F030 E0058710 ACA30004 */ sw $v1, 4($a1) +/* 35F034 E0058714 AE620000 */ sw $v0, ($s3) +/* 35F038 E0058718 3C02DE00 */ lui $v0, 0xde00 +/* 35F03C E005871C AC820000 */ sw $v0, ($a0) +/* 35F040 E0058720 3C020900 */ lui $v0, 0x900 +/* 35F044 E0058724 244211B0 */ addiu $v0, $v0, 0x11b0 +/* 35F048 E0058728 AC820004 */ sw $v0, 4($a0) +/* 35F04C E005872C 24020040 */ addiu $v0, $zero, 0x40 +/* 35F050 E0058730 AC860008 */ sw $a2, 8($a0) +/* 35F054 E0058734 AC82000C */ sw $v0, 0xc($a0) +/* 35F058 E0058738 8EE20008 */ lw $v0, 8($s7) +/* 35F05C E005873C 24840010 */ addiu $a0, $a0, 0x10 +/* 35F060 E0058740 0242102A */ slt $v0, $s2, $v0 +/* 35F064 E0058744 1440FFBB */ bnez $v0, .LE0058634 +/* 35F068 E0058748 AE640000 */ sw $a0, ($s3) +.LE005874C: +/* 35F06C E005874C 8FBF00F8 */ lw $ra, 0xf8($sp) +/* 35F070 E0058750 8FB700F4 */ lw $s7, 0xf4($sp) +/* 35F074 E0058754 8FB600F0 */ lw $s6, 0xf0($sp) +/* 35F078 E0058758 8FB500EC */ lw $s5, 0xec($sp) +/* 35F07C E005875C 8FB400E8 */ lw $s4, 0xe8($sp) +/* 35F080 E0058760 8FB300E4 */ lw $s3, 0xe4($sp) +/* 35F084 E0058764 8FB200E0 */ lw $s2, 0xe0($sp) +/* 35F088 E0058768 8FB100DC */ lw $s1, 0xdc($sp) +/* 35F08C E005876C 8FB000D8 */ lw $s0, 0xd8($sp) +/* 35F090 E0058770 D7B60108 */ ldc1 $f22, 0x108($sp) +/* 35F094 E0058774 D7B40100 */ ldc1 $f20, 0x100($sp) +/* 35F098 E0058778 03E00008 */ jr $ra +/* 35F09C E005877C 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/asm/nonmatchings/code_360F40/func_E005C000.s b/asm/nonmatchings/code_360F40/func_E005C000.s new file mode 100644 index 0000000000..75449cd8e2 --- /dev/null +++ b/asm/nonmatchings/code_360F40/func_E005C000.s @@ -0,0 +1,102 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005C000 +/* 360F40 E005C000 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 360F44 E005C004 F7B40048 */ sdc1 $f20, 0x48($sp) +/* 360F48 E005C008 4485A000 */ mtc1 $a1, $f20 +/* 360F4C E005C00C F7B60050 */ sdc1 $f22, 0x50($sp) +/* 360F50 E005C010 4486B000 */ mtc1 $a2, $f22 +/* 360F54 E005C014 AFB5003C */ sw $s5, 0x3c($sp) +/* 360F58 E005C018 0080A82D */ daddu $s5, $a0, $zero +/* 360F5C E005C01C F7B80058 */ sdc1 $f24, 0x58($sp) +/* 360F60 E005C020 4487C000 */ mtc1 $a3, $f24 +/* 360F64 E005C024 27A40010 */ addiu $a0, $sp, 0x10 +/* 360F68 E005C028 AFB40038 */ sw $s4, 0x38($sp) +/* 360F6C E005C02C 8FB40074 */ lw $s4, 0x74($sp) +/* 360F70 E005C030 3C02E006 */ lui $v0, %hi(D_E005C178) +/* 360F74 E005C034 2442C178 */ addiu $v0, $v0, %lo(D_E005C178) +/* 360F78 E005C038 AFA20018 */ sw $v0, 0x18($sp) +/* 360F7C E005C03C 3C02E006 */ lui $v0, %hi(D_E005C180) +/* 360F80 E005C040 2442C180 */ addiu $v0, $v0, %lo(D_E005C180) +/* 360F84 E005C044 AFA2001C */ sw $v0, 0x1c($sp) +/* 360F88 E005C048 3C02E006 */ lui $v0, %hi(D_E005C2B4) +/* 360F8C E005C04C 2442C2B4 */ addiu $v0, $v0, %lo(D_E005C2B4) +/* 360F90 E005C050 AFA20020 */ sw $v0, 0x20($sp) +/* 360F94 E005C054 2402002E */ addiu $v0, $zero, 0x2e +/* 360F98 E005C058 AFBF0040 */ sw $ra, 0x40($sp) +/* 360F9C E005C05C AFB30034 */ sw $s3, 0x34($sp) +/* 360FA0 E005C060 AFB20030 */ sw $s2, 0x30($sp) +/* 360FA4 E005C064 AFB1002C */ sw $s1, 0x2c($sp) +/* 360FA8 E005C068 AFB00028 */ sw $s0, 0x28($sp) +/* 360FAC E005C06C AFA00010 */ sw $zero, 0x10($sp) +/* 360FB0 E005C070 AFA00024 */ sw $zero, 0x24($sp) +/* 360FB4 E005C074 0C080124 */ jal func_E0200490 +/* 360FB8 E005C078 AFA20014 */ sw $v0, 0x14($sp) +/* 360FBC E005C07C 24040068 */ addiu $a0, $zero, 0x68 +/* 360FC0 E005C080 24130002 */ addiu $s3, $zero, 2 +/* 360FC4 E005C084 0040802D */ daddu $s0, $v0, $zero +/* 360FC8 E005C088 0C08012C */ jal func_E02004B0 +/* 360FCC E005C08C AE130008 */ sw $s3, 8($s0) +/* 360FD0 E005C090 0040882D */ daddu $s1, $v0, $zero +/* 360FD4 E005C094 16200003 */ bnez $s1, .LE005C0A4 +/* 360FD8 E005C098 AE11000C */ sw $s1, 0xc($s0) +.LE005C09C: +/* 360FDC E005C09C 08017027 */ j .LE005C09C +/* 360FE0 E005C0A0 00000000 */ nop +.LE005C0A4: +/* 360FE4 E005C0A4 0220202D */ daddu $a0, $s1, $zero +/* 360FE8 E005C0A8 00132840 */ sll $a1, $s3, 1 +/* 360FEC E005C0AC 00B32821 */ addu $a1, $a1, $s3 +/* 360FF0 E005C0B0 00052880 */ sll $a1, $a1, 2 +/* 360FF4 E005C0B4 00B32821 */ addu $a1, $a1, $s3 +/* 360FF8 E005C0B8 0C080130 */ jal func_E02004C0 +/* 360FFC E005C0BC 00052880 */ sll $a1, $a1, 2 +/* 361000 E005C0C0 24120001 */ addiu $s2, $zero, 1 +/* 361004 E005C0C4 3C014120 */ lui $at, 0x4120 +/* 361008 E005C0C8 44810000 */ mtc1 $at, $f0 +/* 36100C E005C0CC 3C0141F0 */ lui $at, 0x41f0 +/* 361010 E005C0D0 44811000 */ mtc1 $at, $f2 +/* 361014 E005C0D4 0253102A */ slt $v0, $s2, $s3 +/* 361018 E005C0D8 AE340024 */ sw $s4, 0x24($s1) +/* 36101C E005C0DC AE200028 */ sw $zero, 0x28($s1) +/* 361020 E005C0E0 AE34002C */ sw $s4, 0x2c($s1) +/* 361024 E005C0E4 AE200030 */ sw $zero, 0x30($s1) +/* 361028 E005C0E8 A6350000 */ sh $s5, ($s1) +/* 36102C E005C0EC E6340004 */ swc1 $f20, 4($s1) +/* 361030 E005C0F0 E6360008 */ swc1 $f22, 8($s1) +/* 361034 E005C0F4 E638000C */ swc1 $f24, 0xc($s1) +/* 361038 E005C0F8 E620001C */ swc1 $f0, 0x1c($s1) +/* 36103C E005C0FC E6220020 */ swc1 $f2, 0x20($s1) +/* 361040 E005C100 10400011 */ beqz $v0, .LE005C148 +/* 361044 E005C104 26310034 */ addiu $s1, $s1, 0x34 +/* 361048 E005C108 4480A000 */ mtc1 $zero, $f20 +/* 36104C E005C10C 26300018 */ addiu $s0, $s1, 0x18 +.LE005C110: +/* 361050 E005C110 4600A306 */ mov.s $f12, $f20 +/* 361054 E005C114 E614FFEC */ swc1 $f20, -0x14($s0) +/* 361058 E005C118 E614FFF0 */ swc1 $f20, -0x10($s0) +/* 36105C E005C11C 0C080140 */ jal func_E0200500 +/* 361060 E005C120 E614FFF4 */ swc1 $f20, -0xc($s0) +/* 361064 E005C124 4600A306 */ mov.s $f12, $f20 +/* 361068 E005C128 E600FFF8 */ swc1 $f0, -8($s0) +/* 36106C E005C12C 0C080144 */ jal func_E0200510 +/* 361070 E005C130 E614FFFC */ swc1 $f20, -4($s0) +/* 361074 E005C134 26520001 */ addiu $s2, $s2, 1 +/* 361078 E005C138 E6000000 */ swc1 $f0, ($s0) +/* 36107C E005C13C 0253102A */ slt $v0, $s2, $s3 +/* 361080 E005C140 1440FFF3 */ bnez $v0, .LE005C110 +/* 361084 E005C144 26100034 */ addiu $s0, $s0, 0x34 +.LE005C148: +/* 361088 E005C148 8FBF0040 */ lw $ra, 0x40($sp) +/* 36108C E005C14C 8FB5003C */ lw $s5, 0x3c($sp) +/* 361090 E005C150 8FB40038 */ lw $s4, 0x38($sp) +/* 361094 E005C154 8FB30034 */ lw $s3, 0x34($sp) +/* 361098 E005C158 8FB20030 */ lw $s2, 0x30($sp) +/* 36109C E005C15C 8FB1002C */ lw $s1, 0x2c($sp) +/* 3610A0 E005C160 8FB00028 */ lw $s0, 0x28($sp) +/* 3610A4 E005C164 D7B80058 */ ldc1 $f24, 0x58($sp) +/* 3610A8 E005C168 D7B60050 */ ldc1 $f22, 0x50($sp) +/* 3610AC E005C16C D7B40048 */ ldc1 $f20, 0x48($sp) +/* 3610B0 E005C170 03E00008 */ jr $ra +/* 3610B4 E005C174 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_360F40/func_E005C178.s b/asm/nonmatchings/code_360F40/func_E005C178.s new file mode 100644 index 0000000000..98b2a3e2e2 --- /dev/null +++ b/asm/nonmatchings/code_360F40/func_E005C178.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005C178 +/* 3610B8 E005C178 03E00008 */ jr $ra +/* 3610BC E005C17C 00000000 */ nop diff --git a/asm/nonmatchings/code_360F40/func_E005C180.s b/asm/nonmatchings/code_360F40/func_E005C180.s new file mode 100644 index 0000000000..f35fd2bbda --- /dev/null +++ b/asm/nonmatchings/code_360F40/func_E005C180.s @@ -0,0 +1,84 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005C180 +/* 3610C0 E005C180 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3610C4 E005C184 AFBF0010 */ sw $ra, 0x10($sp) +/* 3610C8 E005C188 8C85000C */ lw $a1, 0xc($a0) +/* 3610CC E005C18C 3C0140E0 */ lui $at, 0x40e0 +/* 3610D0 E005C190 44810000 */ mtc1 $at, $f0 +/* 3610D4 E005C194 8CA20028 */ lw $v0, 0x28($a1) +/* 3610D8 E005C198 8CA30024 */ lw $v1, 0x24($a1) +/* 3610DC E005C19C 44821000 */ mtc1 $v0, $f2 +/* 3610E0 E005C1A0 00000000 */ nop +/* 3610E4 E005C1A4 468010A0 */ cvt.s.w $f2, $f2 +/* 3610E8 E005C1A8 24420001 */ addiu $v0, $v0, 1 +/* 3610EC E005C1AC 46001082 */ mul.s $f2, $f2, $f0 +/* 3610F0 E005C1B0 00000000 */ nop +/* 3610F4 E005C1B4 2463FFFF */ addiu $v1, $v1, -1 +/* 3610F8 E005C1B8 C4A0002C */ lwc1 $f0, 0x2c($a1) +/* 3610FC E005C1BC 46800020 */ cvt.s.w $f0, $f0 +/* 361100 E005C1C0 ACA20028 */ sw $v0, 0x28($a1) +/* 361104 E005C1C4 ACA30024 */ sw $v1, 0x24($a1) +/* 361108 E005C1C8 46001083 */ div.s $f2, $f2, $f0 +/* 36110C E005C1CC 04610005 */ bgez $v1, .LE005C1E4 +/* 361110 E005C1D0 E4A20030 */ swc1 $f2, 0x30($a1) +/* 361114 E005C1D4 0C080128 */ jal func_E02004A0 +/* 361118 E005C1D8 00000000 */ nop +/* 36111C E005C1DC 080170AA */ j .LE005C2A8 +/* 361120 E005C1E0 00000000 */ nop +.LE005C1E4: +/* 361124 E005C1E4 C4A2001C */ lwc1 $f2, 0x1c($a1) +/* 361128 E005C1E8 C4A00020 */ lwc1 $f0, 0x20($a1) +/* 36112C E005C1EC 46020001 */ sub.s $f0, $f0, $f2 +/* 361130 E005C1F0 3C01E006 */ lui $at, %hi(D_E005C710) +/* 361134 E005C1F4 D424C710 */ ldc1 $f4, %lo(D_E005C710)($at) +/* 361138 E005C1F8 46000021 */ cvt.d.s $f0, $f0 +/* 36113C E005C1FC 46240002 */ mul.d $f0, $f0, $f4 +/* 361140 E005C200 00000000 */ nop +/* 361144 E005C204 460010A1 */ cvt.d.s $f2, $f2 +/* 361148 E005C208 46201080 */ add.d $f2, $f2, $f0 +/* 36114C E005C20C 24060001 */ addiu $a2, $zero, 1 +/* 361150 E005C210 462010A0 */ cvt.s.d $f2, $f2 +/* 361154 E005C214 E4A2001C */ swc1 $f2, 0x1c($a1) +/* 361158 E005C218 24A50034 */ addiu $a1, $a1, 0x34 +/* 36115C E005C21C 8C820008 */ lw $v0, 8($a0) +/* 361160 E005C220 00C2102A */ slt $v0, $a2, $v0 +/* 361164 E005C224 10400020 */ beqz $v0, .LE005C2A8 +/* 361168 E005C228 46001206 */ mov.s $f8, $f2 +/* 36116C E005C22C 24A3000C */ addiu $v1, $a1, 0xc +/* 361170 E005C230 3C01E006 */ lui $at, %hi(D_E005C718) +/* 361174 E005C234 D42CC718 */ ldc1 $f12, %lo(D_E005C718)($at) +/* 361178 E005C238 3C01E006 */ lui $at, %hi(D_E005C720) +/* 36117C E005C23C D42AC720 */ ldc1 $f10, %lo(D_E005C720)($at) +.LE005C240: +/* 361180 E005C240 C4600008 */ lwc1 $f0, 8($v1) +/* 361184 E005C244 46000021 */ cvt.d.s $f0, $f0 +/* 361188 E005C248 462C0000 */ add.d $f0, $f0, $f12 +/* 36118C E005C24C 46200020 */ cvt.s.d $f0, $f0 +/* 361190 E005C250 46000021 */ cvt.d.s $f0, $f0 +/* 361194 E005C254 462A0002 */ mul.d $f0, $f0, $f10 +/* 361198 E005C258 00000000 */ nop +/* 36119C E005C25C C4660004 */ lwc1 $f6, 4($v1) +/* 3611A0 E005C260 46064182 */ mul.s $f6, $f8, $f6 +/* 3611A4 E005C264 00000000 */ nop +/* 3611A8 E005C268 C464000C */ lwc1 $f4, 0xc($v1) +/* 3611AC E005C26C 46044102 */ mul.s $f4, $f8, $f4 +/* 3611B0 E005C270 00000000 */ nop +/* 3611B4 E005C274 46200020 */ cvt.s.d $f0, $f0 +/* 3611B8 E005C278 E4600008 */ swc1 $f0, 8($v1) +/* 3611BC E005C27C C460FFFC */ lwc1 $f0, -4($v1) +/* 3611C0 E005C280 C4620008 */ lwc1 $f2, 8($v1) +/* 3611C4 E005C284 24C60001 */ addiu $a2, $a2, 1 +/* 3611C8 E005C288 46020000 */ add.s $f0, $f0, $f2 +/* 3611CC E005C28C E466FFF8 */ swc1 $f6, -8($v1) +/* 3611D0 E005C290 E4640000 */ swc1 $f4, ($v1) +/* 3611D4 E005C294 E460FFFC */ swc1 $f0, -4($v1) +/* 3611D8 E005C298 8C820008 */ lw $v0, 8($a0) +/* 3611DC E005C29C 00C2102A */ slt $v0, $a2, $v0 +/* 3611E0 E005C2A0 1440FFE7 */ bnez $v0, .LE005C240 +/* 3611E4 E005C2A4 24630034 */ addiu $v1, $v1, 0x34 +.LE005C2A8: +/* 3611E8 E005C2A8 8FBF0010 */ lw $ra, 0x10($sp) +/* 3611EC E005C2AC 03E00008 */ jr $ra +/* 3611F0 E005C2B0 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_360F40/func_E005C2B4.s b/asm/nonmatchings/code_360F40/func_E005C2B4.s new file mode 100644 index 0000000000..946f90b55e --- /dev/null +++ b/asm/nonmatchings/code_360F40/func_E005C2B4.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005C2B4 +/* 3611F4 E005C2B4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3611F8 E005C2B8 3C02E006 */ lui $v0, %hi(D_E005C2F8) +/* 3611FC E005C2BC 2442C2F8 */ addiu $v0, $v0, %lo(D_E005C2F8) +/* 361200 E005C2C0 AFA2001C */ sw $v0, 0x1c($sp) +/* 361204 E005C2C4 24020028 */ addiu $v0, $zero, 0x28 +/* 361208 E005C2C8 AFA40018 */ sw $a0, 0x18($sp) +/* 36120C E005C2CC 27A40010 */ addiu $a0, $sp, 0x10 +/* 361210 E005C2D0 AFBF0020 */ sw $ra, 0x20($sp) +/* 361214 E005C2D4 AFA00014 */ sw $zero, 0x14($sp) +/* 361218 E005C2D8 0C080120 */ jal func_E0200480 +/* 36121C E005C2DC AFA20010 */ sw $v0, 0x10($sp) +/* 361220 E005C2E0 8C430000 */ lw $v1, ($v0) +/* 361224 E005C2E4 34630002 */ ori $v1, $v1, 2 +/* 361228 E005C2E8 AC430000 */ sw $v1, ($v0) +/* 36122C E005C2EC 8FBF0020 */ lw $ra, 0x20($sp) +/* 361230 E005C2F0 03E00008 */ jr $ra +/* 361234 E005C2F4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_360F40/func_E005C2F8.s b/asm/nonmatchings/code_360F40/func_E005C2F8.s new file mode 100644 index 0000000000..6c65623a66 --- /dev/null +++ b/asm/nonmatchings/code_360F40/func_E005C2F8.s @@ -0,0 +1,266 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005C2F8 +/* 361238 E005C2F8 27BDFEF8 */ addiu $sp, $sp, -0x108 +/* 36123C E005C2FC AFBE0100 */ sw $fp, 0x100($sp) +/* 361240 E005C300 0080F02D */ daddu $fp, $a0, $zero +/* 361244 E005C304 3C08DB06 */ lui $t0, 0xdb06 +/* 361248 E005C308 35080024 */ ori $t0, $t0, 0x24 +/* 36124C E005C30C 27A40018 */ addiu $a0, $sp, 0x18 +/* 361250 E005C310 AFB500F4 */ sw $s5, 0xf4($sp) +/* 361254 E005C314 3C150001 */ lui $s5, 1 +/* 361258 E005C318 AFB700FC */ sw $s7, 0xfc($sp) +/* 36125C E005C31C 3C17800A */ lui $s7, %hi(D_8009A66C) +/* 361260 E005C320 26F7A66C */ addiu $s7, $s7, %lo(D_8009A66C) +/* 361264 E005C324 AFBF0104 */ sw $ra, 0x104($sp) +/* 361268 E005C328 AFB600F8 */ sw $s6, 0xf8($sp) +/* 36126C E005C32C AFB400F0 */ sw $s4, 0xf0($sp) +/* 361270 E005C330 AFB300EC */ sw $s3, 0xec($sp) +/* 361274 E005C334 AFB200E8 */ sw $s2, 0xe8($sp) +/* 361278 E005C338 AFB100E4 */ sw $s1, 0xe4($sp) +/* 36127C E005C33C AFB000E0 */ sw $s0, 0xe0($sp) +/* 361280 E005C340 8EE50000 */ lw $a1, ($s7) +/* 361284 E005C344 8FD6000C */ lw $s6, 0xc($fp) +/* 361288 E005C348 00A0302D */ daddu $a2, $a1, $zero +/* 36128C E005C34C 24A50008 */ addiu $a1, $a1, 8 +/* 361290 E005C350 AEE50000 */ sw $a1, ($s7) +/* 361294 E005C354 96C30000 */ lhu $v1, ($s6) +/* 361298 E005C358 24A20008 */ addiu $v0, $a1, 8 +/* 36129C E005C35C AEE20000 */ sw $v0, ($s7) +/* 3612A0 E005C360 C6C20030 */ lwc1 $f2, 0x30($s6) +/* 3612A4 E005C364 00031880 */ sll $v1, $v1, 2 +/* 3612A8 E005C368 3C09E006 */ lui $t1, %hi(D_E005C700) +/* 3612AC E005C36C 01234821 */ addu $t1, $t1, $v1 +/* 3612B0 E005C370 8D29C700 */ lw $t1, %lo(D_E005C700)($t1) +/* 3612B4 E005C374 36B51630 */ ori $s5, $s5, 0x1630 +/* 3612B8 E005C378 AFA900D8 */ sw $t1, 0xd8($sp) +/* 3612BC E005C37C 3C07E006 */ lui $a3, %hi(D_E005C704) +/* 3612C0 E005C380 00E33821 */ addu $a3, $a3, $v1 +/* 3612C4 E005C384 8CE7C704 */ lw $a3, %lo(D_E005C704)($a3) +/* 3612C8 E005C388 3C02E700 */ lui $v0, 0xe700 +/* 3612CC E005C38C ACC20000 */ sw $v0, ($a2) +/* 3612D0 E005C390 ACC00004 */ sw $zero, 4($a2) +/* 3612D4 E005C394 ACA80000 */ sw $t0, ($a1) +/* 3612D8 E005C398 8FC30010 */ lw $v1, 0x10($fp) +/* 3612DC E005C39C 24A20010 */ addiu $v0, $a1, 0x10 +/* 3612E0 E005C3A0 AEE20000 */ sw $v0, ($s7) +/* 3612E4 E005C3A4 3C02DE00 */ lui $v0, 0xde00 +/* 3612E8 E005C3A8 4600110D */ trunc.w.s $f4, $f2 +/* 3612EC E005C3AC 44132000 */ mfc1 $s3, $f4 +/* 3612F0 E005C3B0 00000000 */ nop +/* 3612F4 E005C3B4 44930000 */ mtc1 $s3, $f0 +/* 3612F8 E005C3B8 00000000 */ nop +/* 3612FC E005C3BC 46800020 */ cvt.s.w $f0, $f0 +/* 361300 E005C3C0 3A740006 */ xori $s4, $s3, 6 +/* 361304 E005C3C4 46001081 */ sub.s $f2, $f2, $f0 +/* 361308 E005C3C8 3C014380 */ lui $at, 0x4380 +/* 36130C E005C3CC 44810000 */ mtc1 $at, $f0 +/* 361310 E005C3D0 8C63001C */ lw $v1, 0x1c($v1) +/* 361314 E005C3D4 ACA20008 */ sw $v0, 8($a1) +/* 361318 E005C3D8 3C028000 */ lui $v0, 0x8000 +/* 36131C E005C3DC ACA7000C */ sw $a3, 0xc($a1) +/* 361320 E005C3E0 00621821 */ addu $v1, $v1, $v0 +/* 361324 E005C3E4 46001082 */ mul.s $f2, $f2, $f0 +/* 361328 E005C3E8 00000000 */ nop +/* 36132C E005C3EC ACA30004 */ sw $v1, 4($a1) +/* 361330 E005C3F0 8EC50004 */ lw $a1, 4($s6) +/* 361334 E005C3F4 8EC60008 */ lw $a2, 8($s6) +/* 361338 E005C3F8 8EC7000C */ lw $a3, 0xc($s6) +/* 36133C E005C3FC 4600110D */ trunc.w.s $f4, $f2 +/* 361340 E005C400 44122000 */ mfc1 $s2, $f4 +/* 361344 E005C404 0C080108 */ jal func_E0200420 +/* 361348 E005C408 2E940001 */ sltiu $s4, $s4, 1 +/* 36134C E005C40C 27B00058 */ addiu $s0, $sp, 0x58 +/* 361350 E005C410 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 361354 E005C414 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 361358 E005C418 44800000 */ mtc1 $zero, $f0 +/* 36135C E005C41C 00031080 */ sll $v0, $v1, 2 +/* 361360 E005C420 00431021 */ addu $v0, $v0, $v1 +/* 361364 E005C424 00021080 */ sll $v0, $v0, 2 +/* 361368 E005C428 00431023 */ subu $v0, $v0, $v1 +/* 36136C E005C42C 000218C0 */ sll $v1, $v0, 3 +/* 361370 E005C430 00431021 */ addu $v0, $v0, $v1 +/* 361374 E005C434 000210C0 */ sll $v0, $v0, 3 +/* 361378 E005C438 44060000 */ mfc1 $a2, $f0 +/* 36137C E005C43C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 361380 E005C440 00220821 */ addu $at, $at, $v0 +/* 361384 E005C444 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 361388 E005C448 3C073F80 */ lui $a3, 0x3f80 +/* 36138C E005C44C 46000007 */ neg.s $f0, $f0 +/* 361390 E005C450 44050000 */ mfc1 $a1, $f0 +/* 361394 E005C454 0200202D */ daddu $a0, $s0, $zero +/* 361398 E005C458 0C080104 */ jal func_E0200410 +/* 36139C E005C45C AFA60010 */ sw $a2, 0x10($sp) +/* 3613A0 E005C460 0200202D */ daddu $a0, $s0, $zero +/* 3613A4 E005C464 27A50018 */ addiu $a1, $sp, 0x18 +/* 3613A8 E005C468 27B00098 */ addiu $s0, $sp, 0x98 +/* 3613AC E005C46C 0C080114 */ jal func_E0200450 +/* 3613B0 E005C470 0200302D */ daddu $a2, $s0, $zero +/* 3613B4 E005C474 0200202D */ daddu $a0, $s0, $zero +/* 3613B8 E005C478 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3613BC E005C47C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3613C0 E005C480 3C11800A */ lui $s1, %hi(D_8009A674) +/* 3613C4 E005C484 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 3613C8 E005C488 96050000 */ lhu $a1, ($s0) +/* 3613CC E005C48C 8E220000 */ lw $v0, ($s1) +/* 3613D0 E005C490 00052980 */ sll $a1, $a1, 6 +/* 3613D4 E005C494 00B52821 */ addu $a1, $a1, $s5 +/* 3613D8 E005C498 0C080118 */ jal func_E0200460 +/* 3613DC E005C49C 00452821 */ addu $a1, $v0, $a1 +/* 3613E0 E005C4A0 3C05E6DE */ lui $a1, 0xe6de +/* 3613E4 E005C4A4 34A5DE82 */ ori $a1, $a1, 0xde82 +/* 3613E8 E005C4A8 8EE60000 */ lw $a2, ($s7) +/* 3613EC E005C4AC 3C03DA38 */ lui $v1, 0xda38 +/* 3613F0 E005C4B0 00C0202D */ daddu $a0, $a2, $zero +/* 3613F4 E005C4B4 24C60008 */ addiu $a2, $a2, 8 +/* 3613F8 E005C4B8 AEE60000 */ sw $a2, ($s7) +/* 3613FC E005C4BC 96020000 */ lhu $v0, ($s0) +/* 361400 E005C4C0 325200FF */ andi $s2, $s2, 0xff +/* 361404 E005C4C4 AC830000 */ sw $v1, ($a0) +/* 361408 E005C4C8 24430001 */ addiu $v1, $v0, 1 +/* 36140C E005C4CC 3042FFFF */ andi $v0, $v0, 0xffff +/* 361410 E005C4D0 00021180 */ sll $v0, $v0, 6 +/* 361414 E005C4D4 A6030000 */ sh $v1, ($s0) +/* 361418 E005C4D8 8E230000 */ lw $v1, ($s1) +/* 36141C E005C4DC 00551021 */ addu $v0, $v0, $s5 +/* 361420 E005C4E0 00621821 */ addu $v1, $v1, $v0 +/* 361424 E005C4E4 24C20008 */ addiu $v0, $a2, 8 +/* 361428 E005C4E8 AC830004 */ sw $v1, 4($a0) +/* 36142C E005C4EC AEE20000 */ sw $v0, ($s7) +/* 361430 E005C4F0 3C02FA00 */ lui $v0, 0xfa00 +/* 361434 E005C4F4 ACC20000 */ sw $v0, ($a2) +/* 361438 E005C4F8 24C20010 */ addiu $v0, $a2, 0x10 +/* 36143C E005C4FC ACC50004 */ sw $a1, 4($a2) +/* 361440 E005C500 AEE20000 */ sw $v0, ($s7) +/* 361444 E005C504 3C02FB00 */ lui $v0, 0xfb00 +/* 361448 E005C508 ACC20008 */ sw $v0, 8($a2) +/* 36144C E005C50C 24C20018 */ addiu $v0, $a2, 0x18 +/* 361450 E005C510 ACD2000C */ sw $s2, 0xc($a2) +/* 361454 E005C514 AEE20000 */ sw $v0, ($s7) +/* 361458 E005C518 001311C0 */ sll $v0, $s3, 7 +/* 36145C E005C51C 30420FFF */ andi $v0, $v0, 0xfff +/* 361460 E005C520 00021300 */ sll $v0, $v0, 0xc +/* 361464 E005C524 3C04F200 */ lui $a0, 0xf200 +/* 361468 E005C528 00441025 */ or $v0, $v0, $a0 +/* 36146C E005C52C 00139940 */ sll $s3, $s3, 5 +/* 361470 E005C530 ACC20010 */ sw $v0, 0x10($a2) +/* 361474 E005C534 26620020 */ addiu $v0, $s3, 0x20 +/* 361478 E005C538 00021080 */ sll $v0, $v0, 2 +/* 36147C E005C53C 30420FFF */ andi $v0, $v0, 0xfff +/* 361480 E005C540 00022B00 */ sll $a1, $v0, 0xc +/* 361484 E005C544 34A20080 */ ori $v0, $a1, 0x80 +/* 361488 E005C548 1280000F */ beqz $s4, .LE005C588 +/* 36148C E005C54C ACC20014 */ sw $v0, 0x14($a2) +/* 361490 E005C550 0080182D */ daddu $v1, $a0, $zero +/* 361494 E005C554 34630080 */ ori $v1, $v1, 0x80 +/* 361498 E005C558 3C040100 */ lui $a0, 0x100 +/* 36149C E005C55C 34840100 */ ori $a0, $a0, 0x100 +/* 3614A0 E005C560 24C20020 */ addiu $v0, $a2, 0x20 +/* 3614A4 E005C564 00A31825 */ or $v1, $a1, $v1 +/* 3614A8 E005C568 AEE20000 */ sw $v0, ($s7) +/* 3614AC E005C56C 26620040 */ addiu $v0, $s3, 0x40 +/* 3614B0 E005C570 00021080 */ sll $v0, $v0, 2 +/* 3614B4 E005C574 30420FFF */ andi $v0, $v0, 0xfff +/* 3614B8 E005C578 00021300 */ sll $v0, $v0, 0xc +/* 3614BC E005C57C 00441025 */ or $v0, $v0, $a0 +/* 3614C0 E005C580 0801716D */ j .LE005C5B4 +/* 3614C4 E005C584 ACC30018 */ sw $v1, 0x18($a2) +.LE005C588: +/* 3614C8 E005C588 3C030100 */ lui $v1, 0x100 +/* 3614CC E005C58C 34630080 */ ori $v1, $v1, 0x80 +/* 3614D0 E005C590 24C20020 */ addiu $v0, $a2, 0x20 +/* 3614D4 E005C594 AEE20000 */ sw $v0, ($s7) +/* 3614D8 E005C598 00A41025 */ or $v0, $a1, $a0 +/* 3614DC E005C59C ACC20018 */ sw $v0, 0x18($a2) +/* 3614E0 E005C5A0 26620040 */ addiu $v0, $s3, 0x40 +/* 3614E4 E005C5A4 00021080 */ sll $v0, $v0, 2 +/* 3614E8 E005C5A8 30420FFF */ andi $v0, $v0, 0xfff +/* 3614EC E005C5AC 00021300 */ sll $v0, $v0, 0xc +/* 3614F0 E005C5B0 00431025 */ or $v0, $v0, $v1 +.LE005C5B4: +/* 3614F4 E005C5B4 ACC2001C */ sw $v0, 0x1c($a2) +/* 3614F8 E005C5B8 8FC20008 */ lw $v0, 8($fp) +/* 3614FC E005C5BC 24110001 */ addiu $s1, $zero, 1 +/* 361500 E005C5C0 0222102A */ slt $v0, $s1, $v0 +/* 361504 E005C5C4 10400037 */ beqz $v0, .LE005C6A4 +/* 361508 E005C5C8 26D60034 */ addiu $s6, $s6, 0x34 +/* 36150C E005C5CC 3C15800A */ lui $s5, %hi(D_8009A674) +/* 361510 E005C5D0 26B5A674 */ addiu $s5, $s5, %lo(D_8009A674) +/* 361514 E005C5D4 3C148007 */ lui $s4, %hi(D_800741F0) +/* 361518 E005C5D8 269441F0 */ addiu $s4, $s4, %lo(D_800741F0) +/* 36151C E005C5DC 3C130001 */ lui $s3, 1 +/* 361520 E005C5E0 36731630 */ ori $s3, $s3, 0x1630 +/* 361524 E005C5E4 3C12800A */ lui $s2, %hi(D_8009A66C) +/* 361528 E005C5E8 2652A66C */ addiu $s2, $s2, %lo(D_8009A66C) +/* 36152C E005C5EC 26D0000C */ addiu $s0, $s6, 0xc +.LE005C5F0: +/* 361530 E005C5F0 27A40018 */ addiu $a0, $sp, 0x18 +/* 361534 E005C5F4 26310001 */ addiu $s1, $s1, 1 +/* 361538 E005C5F8 8E05FFF8 */ lw $a1, -8($s0) +/* 36153C E005C5FC 8E06FFFC */ lw $a2, -4($s0) +/* 361540 E005C600 8E070000 */ lw $a3, ($s0) +/* 361544 E005C604 0C080108 */ jal func_E0200420 +/* 361548 E005C608 26100034 */ addiu $s0, $s0, 0x34 +/* 36154C E005C60C 27A40018 */ addiu $a0, $sp, 0x18 +/* 361550 E005C610 96850000 */ lhu $a1, ($s4) +/* 361554 E005C614 8EA20000 */ lw $v0, ($s5) +/* 361558 E005C618 00052980 */ sll $a1, $a1, 6 +/* 36155C E005C61C 00B32821 */ addu $a1, $a1, $s3 +/* 361560 E005C620 0C080118 */ jal func_E0200460 +/* 361564 E005C624 00452821 */ addu $a1, $v0, $a1 +/* 361568 E005C628 3C06D838 */ lui $a2, 0xd838 +/* 36156C E005C62C 8E440000 */ lw $a0, ($s2) +/* 361570 E005C630 34C60002 */ ori $a2, $a2, 2 +/* 361574 E005C634 0080282D */ daddu $a1, $a0, $zero +/* 361578 E005C638 24840008 */ addiu $a0, $a0, 8 +/* 36157C E005C63C AE440000 */ sw $a0, ($s2) +/* 361580 E005C640 96820000 */ lhu $v0, ($s4) +/* 361584 E005C644 3C03DA38 */ lui $v1, 0xda38 +/* 361588 E005C648 ACA30000 */ sw $v1, ($a1) +/* 36158C E005C64C 24430001 */ addiu $v1, $v0, 1 +/* 361590 E005C650 3042FFFF */ andi $v0, $v0, 0xffff +/* 361594 E005C654 00021180 */ sll $v0, $v0, 6 +/* 361598 E005C658 A6830000 */ sh $v1, ($s4) +/* 36159C E005C65C 8EA30000 */ lw $v1, ($s5) +/* 3615A0 E005C660 00531021 */ addu $v0, $v0, $s3 +/* 3615A4 E005C664 00621821 */ addu $v1, $v1, $v0 +/* 3615A8 E005C668 24820008 */ addiu $v0, $a0, 8 +/* 3615AC E005C66C ACA30004 */ sw $v1, 4($a1) +/* 3615B0 E005C670 AE420000 */ sw $v0, ($s2) +/* 3615B4 E005C674 3C02DE00 */ lui $v0, 0xde00 +/* 3615B8 E005C678 AC820000 */ sw $v0, ($a0) +/* 3615BC E005C67C 8FA900D8 */ lw $t1, 0xd8($sp) +/* 3615C0 E005C680 24020040 */ addiu $v0, $zero, 0x40 +/* 3615C4 E005C684 AC860008 */ sw $a2, 8($a0) +/* 3615C8 E005C688 AC82000C */ sw $v0, 0xc($a0) +/* 3615CC E005C68C AC890004 */ sw $t1, 4($a0) +/* 3615D0 E005C690 8FC20008 */ lw $v0, 8($fp) +/* 3615D4 E005C694 24840010 */ addiu $a0, $a0, 0x10 +/* 3615D8 E005C698 0222102A */ slt $v0, $s1, $v0 +/* 3615DC E005C69C 1440FFD4 */ bnez $v0, .LE005C5F0 +/* 3615E0 E005C6A0 AE440000 */ sw $a0, ($s2) +.LE005C6A4: +/* 3615E4 E005C6A4 3C05D838 */ lui $a1, 0xd838 +/* 3615E8 E005C6A8 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3615EC E005C6AC 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3615F0 E005C6B0 8C620000 */ lw $v0, ($v1) +/* 3615F4 E005C6B4 34A50002 */ ori $a1, $a1, 2 +/* 3615F8 E005C6B8 0040202D */ daddu $a0, $v0, $zero +/* 3615FC E005C6BC 24420008 */ addiu $v0, $v0, 8 +/* 361600 E005C6C0 AC620000 */ sw $v0, ($v1) +/* 361604 E005C6C4 24020040 */ addiu $v0, $zero, 0x40 +/* 361608 E005C6C8 AC850000 */ sw $a1, ($a0) +/* 36160C E005C6CC AC820004 */ sw $v0, 4($a0) +/* 361610 E005C6D0 8FBF0104 */ lw $ra, 0x104($sp) +/* 361614 E005C6D4 8FBE0100 */ lw $fp, 0x100($sp) +/* 361618 E005C6D8 8FB700FC */ lw $s7, 0xfc($sp) +/* 36161C E005C6DC 8FB600F8 */ lw $s6, 0xf8($sp) +/* 361620 E005C6E0 8FB500F4 */ lw $s5, 0xf4($sp) +/* 361624 E005C6E4 8FB400F0 */ lw $s4, 0xf0($sp) +/* 361628 E005C6E8 8FB300EC */ lw $s3, 0xec($sp) +/* 36162C E005C6EC 8FB200E8 */ lw $s2, 0xe8($sp) +/* 361630 E005C6F0 8FB100E4 */ lw $s1, 0xe4($sp) +/* 361634 E005C6F4 8FB000E0 */ lw $s0, 0xe0($sp) +/* 361638 E005C6F8 03E00008 */ jr $ra +/* 36163C E005C6FC 27BD0108 */ addiu $sp, $sp, 0x108 diff --git a/asm/nonmatchings/code_3625C0/func_E005E000.s b/asm/nonmatchings/code_3625C0/func_E005E000.s new file mode 100644 index 0000000000..5cf66507f5 --- /dev/null +++ b/asm/nonmatchings/code_3625C0/func_E005E000.s @@ -0,0 +1,118 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005E000 +/* 3625C0 E005E000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3625C4 E005E004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3625C8 E005E008 4485A000 */ mtc1 $a1, $f20 +/* 3625CC E005E00C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3625D0 E005E010 4486B000 */ mtc1 $a2, $f22 +/* 3625D4 E005E014 AFB30034 */ sw $s3, 0x34($sp) +/* 3625D8 E005E018 0080982D */ daddu $s3, $a0, $zero +/* 3625DC E005E01C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3625E0 E005E020 4487C000 */ mtc1 $a3, $f24 +/* 3625E4 E005E024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3625E8 E005E028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3625EC E005E02C 8FB1006C */ lw $s1, 0x6c($sp) +/* 3625F0 E005E030 3C02E006 */ lui $v0, %hi(D_E005E1B0) +/* 3625F4 E005E034 2442E1B0 */ addiu $v0, $v0, %lo(D_E005E1B0) +/* 3625F8 E005E038 AFA20018 */ sw $v0, 0x18($sp) +/* 3625FC E005E03C 3C02E006 */ lui $v0, %hi(D_E005E1B8) +/* 362600 E005E040 2442E1B8 */ addiu $v0, $v0, %lo(D_E005E1B8) +/* 362604 E005E044 AFA2001C */ sw $v0, 0x1c($sp) +/* 362608 E005E048 3C02E006 */ lui $v0, %hi(D_E005E310) +/* 36260C E005E04C 2442E310 */ addiu $v0, $v0, %lo(D_E005E310) +/* 362610 E005E050 AFA20020 */ sw $v0, 0x20($sp) +/* 362614 E005E054 3C02E006 */ lui $v0, %hi(D_E005E318) +/* 362618 E005E058 2442E318 */ addiu $v0, $v0, %lo(D_E005E318) +/* 36261C E005E05C AFA20024 */ sw $v0, 0x24($sp) +/* 362620 E005E060 2402002F */ addiu $v0, $zero, 0x2f +/* 362624 E005E064 AFBF0038 */ sw $ra, 0x38($sp) +/* 362628 E005E068 AFB20030 */ sw $s2, 0x30($sp) +/* 36262C E005E06C AFB00028 */ sw $s0, 0x28($sp) +/* 362630 E005E070 AFA00010 */ sw $zero, 0x10($sp) +/* 362634 E005E074 AFA20014 */ sw $v0, 0x14($sp) +/* 362638 E005E078 0C080124 */ jal func_E0200490 +/* 36263C E005E07C 26310001 */ addiu $s1, $s1, 1 +/* 362640 E005E080 00112040 */ sll $a0, $s1, 1 +/* 362644 E005E084 00912021 */ addu $a0, $a0, $s1 +/* 362648 E005E088 00042080 */ sll $a0, $a0, 2 +/* 36264C E005E08C 00912023 */ subu $a0, $a0, $s1 +/* 362650 E005E090 00042080 */ sll $a0, $a0, 2 +/* 362654 E005E094 0040902D */ daddu $s2, $v0, $zero +/* 362658 E005E098 0C08012C */ jal func_E02004B0 +/* 36265C E005E09C AE510008 */ sw $s1, 8($s2) +/* 362660 E005E0A0 0040802D */ daddu $s0, $v0, $zero +/* 362664 E005E0A4 16000003 */ bnez $s0, .LE005E0B4 +/* 362668 E005E0A8 AE50000C */ sw $s0, 0xc($s2) +.LE005E0AC: +/* 36266C E005E0AC 0801782B */ j .LE005E0AC +/* 362670 E005E0B0 00000000 */ nop +.LE005E0B4: +/* 362674 E005E0B4 0200202D */ daddu $a0, $s0, $zero +/* 362678 E005E0B8 00112840 */ sll $a1, $s1, 1 +/* 36267C E005E0BC 00B12821 */ addu $a1, $a1, $s1 +/* 362680 E005E0C0 00052880 */ sll $a1, $a1, 2 +/* 362684 E005E0C4 00B12823 */ subu $a1, $a1, $s1 +/* 362688 E005E0C8 0C080130 */ jal func_E02004C0 +/* 36268C E005E0CC 00052880 */ sll $a1, $a1, 2 +/* 362690 E005E0D0 24020001 */ addiu $v0, $zero, 1 +/* 362694 E005E0D4 AE130000 */ sw $s3, ($s0) +/* 362698 E005E0D8 E6140004 */ swc1 $f20, 4($s0) +/* 36269C E005E0DC E6160008 */ swc1 $f22, 8($s0) +/* 3626A0 E005E0E0 E618000C */ swc1 $f24, 0xc($s0) +/* 3626A4 E005E0E4 AE000010 */ sw $zero, 0x10($s0) +/* 3626A8 E005E0E8 AE000024 */ sw $zero, 0x24($s0) +/* 3626AC E005E0EC C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3626B0 E005E0F0 0040302D */ daddu $a2, $v0, $zero +/* 3626B4 E005E0F4 AE020028 */ sw $v0, 0x28($s0) +/* 3626B8 E005E0F8 00D1102A */ slt $v0, $a2, $s1 +/* 3626BC E005E0FC E6000014 */ swc1 $f0, 0x14($s0) +/* 3626C0 E005E100 1040001F */ beqz $v0, .LE005E180 +/* 3626C4 E005E104 2610002C */ addiu $s0, $s0, 0x2c +/* 3626C8 E005E108 2627FFFF */ addiu $a3, $s1, -1 +/* 3626CC E005E10C 3C0141A0 */ lui $at, 0x41a0 +/* 3626D0 E005E110 44811000 */ mtc1 $at, $f2 +/* 3626D4 E005E114 26040024 */ addiu $a0, $s0, 0x24 +/* 3626D8 E005E118 0000282D */ daddu $a1, $zero, $zero +.LE005E11C: +/* 3626DC E005E11C 14E00002 */ bnez $a3, .LE005E128 +/* 3626E0 E005E120 00A7001A */ div $zero, $a1, $a3 +/* 3626E4 E005E124 0007000D */ break 7 +.LE005E128: +/* 3626E8 E005E128 2401FFFF */ addiu $at, $zero, -1 +/* 3626EC E005E12C 14E10004 */ bne $a3, $at, .LE005E140 +/* 3626F0 E005E130 3C018000 */ lui $at, 0x8000 +/* 3626F4 E005E134 14A10002 */ bne $a1, $at, .LE005E140 +/* 3626F8 E005E138 00000000 */ nop +/* 3626FC E005E13C 0006000D */ break 6 +.LE005E140: +/* 362700 E005E140 00001812 */ mflo $v1 +/* 362704 E005E144 24A50168 */ addiu $a1, $a1, 0x168 +/* 362708 E005E148 24C60001 */ addiu $a2, $a2, 1 +/* 36270C E005E14C 00D1102A */ slt $v0, $a2, $s1 +/* 362710 E005E150 AC80FFE0 */ sw $zero, -0x20($a0) +/* 362714 E005E154 AC80FFE4 */ sw $zero, -0x1c($a0) +/* 362718 E005E158 AC80FFE8 */ sw $zero, -0x18($a0) +/* 36271C E005E15C E482FFF8 */ swc1 $f2, -8($a0) +/* 362720 E005E160 AC80FFFC */ sw $zero, -4($a0) +/* 362724 E005E164 44830000 */ mtc1 $v1, $f0 +/* 362728 E005E168 00000000 */ nop +/* 36272C E005E16C 46800020 */ cvt.s.w $f0, $f0 +/* 362730 E005E170 E480FFF4 */ swc1 $f0, -0xc($a0) +/* 362734 E005E174 AC830000 */ sw $v1, ($a0) +/* 362738 E005E178 1440FFE8 */ bnez $v0, .LE005E11C +/* 36273C E005E17C 2484002C */ addiu $a0, $a0, 0x2c +.LE005E180: +/* 362740 E005E180 8FA20070 */ lw $v0, 0x70($sp) +/* 362744 E005E184 AC520000 */ sw $s2, ($v0) +/* 362748 E005E188 8FBF0038 */ lw $ra, 0x38($sp) +/* 36274C E005E18C 8FB30034 */ lw $s3, 0x34($sp) +/* 362750 E005E190 8FB20030 */ lw $s2, 0x30($sp) +/* 362754 E005E194 8FB1002C */ lw $s1, 0x2c($sp) +/* 362758 E005E198 8FB00028 */ lw $s0, 0x28($sp) +/* 36275C E005E19C D7B80050 */ ldc1 $f24, 0x50($sp) +/* 362760 E005E1A0 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 362764 E005E1A4 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 362768 E005E1A8 03E00008 */ jr $ra +/* 36276C E005E1AC 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3625C0/func_E005E1B0.s b/asm/nonmatchings/code_3625C0/func_E005E1B0.s new file mode 100644 index 0000000000..874a067aef --- /dev/null +++ b/asm/nonmatchings/code_3625C0/func_E005E1B0.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005E1B0 +/* 362770 E005E1B0 03E00008 */ jr $ra +/* 362774 E005E1B4 00000000 */ nop diff --git a/asm/nonmatchings/code_3625C0/func_E005E1B8.s b/asm/nonmatchings/code_3625C0/func_E005E1B8.s new file mode 100644 index 0000000000..2f53c29357 --- /dev/null +++ b/asm/nonmatchings/code_3625C0/func_E005E1B8.s @@ -0,0 +1,93 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005E1B8 +/* 362778 E005E1B8 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 36277C E005E1BC AFB20018 */ sw $s2, 0x18($sp) +/* 362780 E005E1C0 0080902D */ daddu $s2, $a0, $zero +/* 362784 E005E1C4 AFBF001C */ sw $ra, 0x1c($sp) +/* 362788 E005E1C8 AFB10014 */ sw $s1, 0x14($sp) +/* 36278C E005E1CC AFB00010 */ sw $s0, 0x10($sp) +/* 362790 E005E1D0 F7B60028 */ sdc1 $f22, 0x28($sp) +/* 362794 E005E1D4 F7B40020 */ sdc1 $f20, 0x20($sp) +/* 362798 E005E1D8 8E43000C */ lw $v1, 0xc($s2) +/* 36279C E005E1DC 8C620028 */ lw $v0, 0x28($v1) +/* 3627A0 E005E1E0 10400043 */ beqz $v0, .LE005E2F0 +/* 3627A4 E005E1E4 24110001 */ addiu $s1, $zero, 1 +/* 3627A8 E005E1E8 C4620010 */ lwc1 $f2, 0x10($v1) +/* 3627AC E005E1EC C4600014 */ lwc1 $f0, 0x14($v1) +/* 3627B0 E005E1F0 46020001 */ sub.s $f0, $f0, $f2 +/* 3627B4 E005E1F4 3C01E006 */ lui $at, %hi(D_E005E680) +/* 3627B8 E005E1F8 D424E680 */ ldc1 $f4, %lo(D_E005E680)($at) +/* 3627BC E005E1FC 46000021 */ cvt.d.s $f0, $f0 +/* 3627C0 E005E200 46240002 */ mul.d $f0, $f0, $f4 +/* 3627C4 E005E204 00000000 */ nop +/* 3627C8 E005E208 8C620024 */ lw $v0, 0x24($v1) +/* 3627CC E005E20C 460010A1 */ cvt.d.s $f2, $f2 +/* 3627D0 E005E210 46201080 */ add.d $f2, $f2, $f0 +/* 3627D4 E005E214 00511021 */ addu $v0, $v0, $s1 +/* 3627D8 E005E218 AC620024 */ sw $v0, 0x24($v1) +/* 3627DC E005E21C 462010A0 */ cvt.s.d $f2, $f2 +/* 3627E0 E005E220 E4620010 */ swc1 $f2, 0x10($v1) +/* 3627E4 E005E224 2463002C */ addiu $v1, $v1, 0x2c +/* 3627E8 E005E228 8E420008 */ lw $v0, 8($s2) +/* 3627EC E005E22C 0222102A */ slt $v0, $s1, $v0 +/* 3627F0 E005E230 1040002F */ beqz $v0, .LE005E2F0 +/* 3627F4 E005E234 46001586 */ mov.s $f22, $f2 +/* 3627F8 E005E238 24700024 */ addiu $s0, $v1, 0x24 +.LE005E23C: +/* 3627FC E005E23C C60C0000 */ lwc1 $f12, ($s0) +/* 362800 E005E240 0C080140 */ jal func_E0200500 +/* 362804 E005E244 46806320 */ cvt.s.w $f12, $f12 +/* 362808 E005E248 4600B002 */ mul.s $f0, $f22, $f0 +/* 36280C E005E24C 00000000 */ nop +/* 362810 E005E250 C60C0000 */ lwc1 $f12, ($s0) +/* 362814 E005E254 46806320 */ cvt.s.w $f12, $f12 +/* 362818 E005E258 0C080144 */ jal func_E0200510 +/* 36281C E005E25C E600FFE0 */ swc1 $f0, -0x20($s0) +/* 362820 E005E260 C60CFFFC */ lwc1 $f12, -4($s0) +/* 362824 E005E264 0C080144 */ jal func_E0200510 +/* 362828 E005E268 46000506 */ mov.s $f20, $f0 +/* 36282C E005E26C 4614B502 */ mul.s $f20, $f22, $f20 +/* 362830 E005E270 00000000 */ nop +/* 362834 E005E274 4600A502 */ mul.s $f20, $f20, $f0 +/* 362838 E005E278 00000000 */ nop +/* 36283C E005E27C C60C0000 */ lwc1 $f12, ($s0) +/* 362840 E005E280 46806320 */ cvt.s.w $f12, $f12 +/* 362844 E005E284 0C080144 */ jal func_E0200510 +/* 362848 E005E288 E614FFE8 */ swc1 $f20, -0x18($s0) +/* 36284C E005E28C C60CFFFC */ lwc1 $f12, -4($s0) +/* 362850 E005E290 0C080140 */ jal func_E0200500 +/* 362854 E005E294 46000506 */ mov.s $f20, $f0 +/* 362858 E005E298 4614B502 */ mul.s $f20, $f22, $f20 +/* 36285C E005E29C 00000000 */ nop +/* 362860 E005E2A0 C602FFF8 */ lwc1 $f2, -8($s0) +/* 362864 E005E2A4 8E030000 */ lw $v1, ($s0) +/* 362868 E005E2A8 4600A502 */ mul.s $f20, $f20, $f0 +/* 36286C E005E2AC 00000000 */ nop +/* 362870 E005E2B0 AE00FFFC */ sw $zero, -4($s0) +/* 362874 E005E2B4 C600FFF4 */ lwc1 $f0, -0xc($s0) +/* 362878 E005E2B8 24620010 */ addiu $v0, $v1, 0x10 +/* 36287C E005E2BC 46020000 */ add.s $f0, $f0, $f2 +/* 362880 E005E2C0 AE020000 */ sw $v0, ($s0) +/* 362884 E005E2C4 28420169 */ slti $v0, $v0, 0x169 +/* 362888 E005E2C8 E600FFF4 */ swc1 $f0, -0xc($s0) +/* 36288C E005E2CC 14400003 */ bnez $v0, .LE005E2DC +/* 362890 E005E2D0 E614FFE4 */ swc1 $f20, -0x1c($s0) +/* 362894 E005E2D4 2462FEA8 */ addiu $v0, $v1, -0x158 +/* 362898 E005E2D8 AE020000 */ sw $v0, ($s0) +.LE005E2DC: +/* 36289C E005E2DC 26310001 */ addiu $s1, $s1, 1 +/* 3628A0 E005E2E0 8E420008 */ lw $v0, 8($s2) +/* 3628A4 E005E2E4 0222102A */ slt $v0, $s1, $v0 +/* 3628A8 E005E2E8 1440FFD4 */ bnez $v0, .LE005E23C +/* 3628AC E005E2EC 2610002C */ addiu $s0, $s0, 0x2c +.LE005E2F0: +/* 3628B0 E005E2F0 8FBF001C */ lw $ra, 0x1c($sp) +/* 3628B4 E005E2F4 8FB20018 */ lw $s2, 0x18($sp) +/* 3628B8 E005E2F8 8FB10014 */ lw $s1, 0x14($sp) +/* 3628BC E005E2FC 8FB00010 */ lw $s0, 0x10($sp) +/* 3628C0 E005E300 D7B60028 */ ldc1 $f22, 0x28($sp) +/* 3628C4 E005E304 D7B40020 */ ldc1 $f20, 0x20($sp) +/* 3628C8 E005E308 03E00008 */ jr $ra +/* 3628CC E005E30C 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/nonmatchings/code_3625C0/func_E005E310.s b/asm/nonmatchings/code_3625C0/func_E005E310.s new file mode 100644 index 0000000000..8c0f206e76 --- /dev/null +++ b/asm/nonmatchings/code_3625C0/func_E005E310.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005E310 +/* 3628D0 E005E310 03E00008 */ jr $ra +/* 3628D4 E005E314 00000000 */ nop diff --git a/asm/nonmatchings/code_3625C0/func_E005E318.s b/asm/nonmatchings/code_3625C0/func_E005E318.s new file mode 100644 index 0000000000..d436659109 --- /dev/null +++ b/asm/nonmatchings/code_3625C0/func_E005E318.s @@ -0,0 +1,11 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005E318 +/* 3628D8 E005E318 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3628DC E005E31C AFBF0010 */ sw $ra, 0x10($sp) +/* 3628E0 E005E320 0C0178CD */ jal func_E005E334 +/* 3628E4 E005E324 00000000 */ nop +/* 3628E8 E005E328 8FBF0010 */ lw $ra, 0x10($sp) +/* 3628EC E005E32C 03E00008 */ jr $ra +/* 3628F0 E005E330 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3625C0/func_E005E334.s b/asm/nonmatchings/code_3625C0/func_E005E334.s new file mode 100644 index 0000000000..1ec841322b --- /dev/null +++ b/asm/nonmatchings/code_3625C0/func_E005E334.s @@ -0,0 +1,214 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E005E334 +/* 3628F4 E005E334 27BDFEF0 */ addiu $sp, $sp, -0x110 +/* 3628F8 E005E338 AFBF0104 */ sw $ra, 0x104($sp) +/* 3628FC E005E33C AFBE0100 */ sw $fp, 0x100($sp) +/* 362900 E005E340 AFB700FC */ sw $s7, 0xfc($sp) +/* 362904 E005E344 AFB600F8 */ sw $s6, 0xf8($sp) +/* 362908 E005E348 AFB500F4 */ sw $s5, 0xf4($sp) +/* 36290C E005E34C AFB400F0 */ sw $s4, 0xf0($sp) +/* 362910 E005E350 AFB300EC */ sw $s3, 0xec($sp) +/* 362914 E005E354 AFB200E8 */ sw $s2, 0xe8($sp) +/* 362918 E005E358 AFB100E4 */ sw $s1, 0xe4($sp) +/* 36291C E005E35C AFB000E0 */ sw $s0, 0xe0($sp) +/* 362920 E005E360 F7B40108 */ sdc1 $f20, 0x108($sp) +/* 362924 E005E364 AFA40110 */ sw $a0, 0x110($sp) +/* 362928 E005E368 8C92000C */ lw $s2, 0xc($a0) +/* 36292C E005E36C 8E420028 */ lw $v0, 0x28($s2) +/* 362930 E005E370 104000B2 */ beqz $v0, .LE005E63C +/* 362934 E005E374 3C07DB06 */ lui $a3, 0xdb06 +/* 362938 E005E378 34E70024 */ ori $a3, $a3, 0x24 +/* 36293C E005E37C 27A40018 */ addiu $a0, $sp, 0x18 +/* 362940 E005E380 3C110001 */ lui $s1, 1 +/* 362944 E005E384 3C16800A */ lui $s6, %hi(D_8009A66C) +/* 362948 E005E388 26D6A66C */ addiu $s6, $s6, %lo(D_8009A66C) +/* 36294C E005E38C 8EC30000 */ lw $v1, ($s6) +/* 362950 E005E390 36311630 */ ori $s1, $s1, 0x1630 +/* 362954 E005E394 0060282D */ daddu $a1, $v1, $zero +/* 362958 E005E398 24630008 */ addiu $v1, $v1, 8 +/* 36295C E005E39C AEC30000 */ sw $v1, ($s6) +/* 362960 E005E3A0 3C08E006 */ lui $t0, %hi(D_E005E670) +/* 362964 E005E3A4 8D08E670 */ lw $t0, %lo(D_E005E670)($t0) +/* 362968 E005E3A8 3C06E006 */ lui $a2, %hi(D_E005E674) +/* 36296C E005E3AC 8CC6E674 */ lw $a2, %lo(D_E005E674)($a2) +/* 362970 E005E3B0 3C02E700 */ lui $v0, 0xe700 +/* 362974 E005E3B4 AFA800D8 */ sw $t0, 0xd8($sp) +/* 362978 E005E3B8 ACA20000 */ sw $v0, ($a1) +/* 36297C E005E3BC 24620008 */ addiu $v0, $v1, 8 +/* 362980 E005E3C0 ACA00004 */ sw $zero, 4($a1) +/* 362984 E005E3C4 AEC20000 */ sw $v0, ($s6) +/* 362988 E005E3C8 AC670000 */ sw $a3, ($v1) +/* 36298C E005E3CC 8FA80110 */ lw $t0, 0x110($sp) +/* 362990 E005E3D0 8D050010 */ lw $a1, 0x10($t0) +/* 362994 E005E3D4 24620010 */ addiu $v0, $v1, 0x10 +/* 362998 E005E3D8 AEC20000 */ sw $v0, ($s6) +/* 36299C E005E3DC 8CA5001C */ lw $a1, 0x1c($a1) +/* 3629A0 E005E3E0 3C02DE00 */ lui $v0, 0xde00 +/* 3629A4 E005E3E4 AC620008 */ sw $v0, 8($v1) +/* 3629A8 E005E3E8 3C028000 */ lui $v0, 0x8000 +/* 3629AC E005E3EC AC66000C */ sw $a2, 0xc($v1) +/* 3629B0 E005E3F0 00A22821 */ addu $a1, $a1, $v0 +/* 3629B4 E005E3F4 AC650004 */ sw $a1, 4($v1) +/* 3629B8 E005E3F8 8E450004 */ lw $a1, 4($s2) +/* 3629BC E005E3FC 8E460008 */ lw $a2, 8($s2) +/* 3629C0 E005E400 8E47000C */ lw $a3, 0xc($s2) +/* 3629C4 E005E404 4480A000 */ mtc1 $zero, $f20 +/* 3629C8 E005E408 0C080108 */ jal func_E0200420 +/* 3629CC E005E40C 24140001 */ addiu $s4, $zero, 1 +/* 3629D0 E005E410 27B30058 */ addiu $s3, $sp, 0x58 +/* 3629D4 E005E414 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3629D8 E005E418 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3629DC E005E41C 4406A000 */ mfc1 $a2, $f20 +/* 3629E0 E005E420 00031080 */ sll $v0, $v1, 2 +/* 3629E4 E005E424 00431021 */ addu $v0, $v0, $v1 +/* 3629E8 E005E428 00021080 */ sll $v0, $v0, 2 +/* 3629EC E005E42C 00431023 */ subu $v0, $v0, $v1 +/* 3629F0 E005E430 000218C0 */ sll $v1, $v0, 3 +/* 3629F4 E005E434 00431021 */ addu $v0, $v0, $v1 +/* 3629F8 E005E438 000210C0 */ sll $v0, $v0, 3 +/* 3629FC E005E43C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 362A00 E005E440 00220821 */ addu $at, $at, $v0 +/* 362A04 E005E444 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 362A08 E005E448 3C073F80 */ lui $a3, 0x3f80 +/* 362A0C E005E44C 46000007 */ neg.s $f0, $f0 +/* 362A10 E005E450 44050000 */ mfc1 $a1, $f0 +/* 362A14 E005E454 0260202D */ daddu $a0, $s3, $zero +/* 362A18 E005E458 0C080104 */ jal func_E0200410 +/* 362A1C E005E45C E7B40010 */ swc1 $f20, 0x10($sp) +/* 362A20 E005E460 0260202D */ daddu $a0, $s3, $zero +/* 362A24 E005E464 27A50018 */ addiu $a1, $sp, 0x18 +/* 362A28 E005E468 27B00098 */ addiu $s0, $sp, 0x98 +/* 362A2C E005E46C 0C080114 */ jal func_E0200450 +/* 362A30 E005E470 0200302D */ daddu $a2, $s0, $zero +/* 362A34 E005E474 0200202D */ daddu $a0, $s0, $zero +/* 362A38 E005E478 3C108007 */ lui $s0, %hi(D_800741F0) +/* 362A3C E005E47C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 362A40 E005E480 3C17800A */ lui $s7, %hi(D_8009A674) +/* 362A44 E005E484 26F7A674 */ addiu $s7, $s7, %lo(D_8009A674) +/* 362A48 E005E488 96050000 */ lhu $a1, ($s0) +/* 362A4C E005E48C 8EE20000 */ lw $v0, ($s7) +/* 362A50 E005E490 00052980 */ sll $a1, $a1, 6 +/* 362A54 E005E494 00B12821 */ addu $a1, $a1, $s1 +/* 362A58 E005E498 0C080118 */ jal func_E0200460 +/* 362A5C E005E49C 00452821 */ addu $a1, $v0, $a1 +/* 362A60 E005E4A0 3C06DCDC */ lui $a2, 0xdcdc +/* 362A64 E005E4A4 8EC40000 */ lw $a0, ($s6) +/* 362A68 E005E4A8 34C628FF */ ori $a2, $a2, 0x28ff +/* 362A6C E005E4AC 0080282D */ daddu $a1, $a0, $zero +/* 362A70 E005E4B0 24840008 */ addiu $a0, $a0, 8 +/* 362A74 E005E4B4 AEC40000 */ sw $a0, ($s6) +/* 362A78 E005E4B8 96020000 */ lhu $v0, ($s0) +/* 362A7C E005E4BC 3C03DA38 */ lui $v1, 0xda38 +/* 362A80 E005E4C0 ACA30000 */ sw $v1, ($a1) +/* 362A84 E005E4C4 00541821 */ addu $v1, $v0, $s4 +/* 362A88 E005E4C8 3042FFFF */ andi $v0, $v0, 0xffff +/* 362A8C E005E4CC 00021180 */ sll $v0, $v0, 6 +/* 362A90 E005E4D0 A6030000 */ sh $v1, ($s0) +/* 362A94 E005E4D4 8EE30000 */ lw $v1, ($s7) +/* 362A98 E005E4D8 00511021 */ addu $v0, $v0, $s1 +/* 362A9C E005E4DC 00621821 */ addu $v1, $v1, $v0 +/* 362AA0 E005E4E0 3C02FA00 */ lui $v0, 0xfa00 +/* 362AA4 E005E4E4 ACA30004 */ sw $v1, 4($a1) +/* 362AA8 E005E4E8 AC820000 */ sw $v0, ($a0) +/* 362AAC E005E4EC AC860004 */ sw $a2, 4($a0) +/* 362AB0 E005E4F0 8FA80110 */ lw $t0, 0x110($sp) +/* 362AB4 E005E4F4 2652002C */ addiu $s2, $s2, 0x2c +/* 362AB8 E005E4F8 8D020008 */ lw $v0, 8($t0) +/* 362ABC E005E4FC 24840008 */ addiu $a0, $a0, 8 +/* 362AC0 E005E500 0282102A */ slt $v0, $s4, $v0 +/* 362AC4 E005E504 10400042 */ beqz $v0, .LE005E610 +/* 362AC8 E005E508 AEC40000 */ sw $a0, ($s6) +/* 362ACC E005E50C 0260A82D */ daddu $s5, $s3, $zero +/* 362AD0 E005E510 02E0F02D */ daddu $fp, $s7, $zero +/* 362AD4 E005E514 0200B82D */ daddu $s7, $s0, $zero +/* 362AD8 E005E518 3C130001 */ lui $s3, 1 +/* 362ADC E005E51C 36731630 */ ori $s3, $s3, 0x1630 +/* 362AE0 E005E520 02C0882D */ daddu $s1, $s6, $zero +/* 362AE4 E005E524 26500018 */ addiu $s0, $s2, 0x18 +.LE005E528: +/* 362AE8 E005E528 8E05FFEC */ lw $a1, -0x14($s0) +/* 362AEC E005E52C 8E06FFF0 */ lw $a2, -0x10($s0) +/* 362AF0 E005E530 8E07FFF4 */ lw $a3, -0xc($s0) +/* 362AF4 E005E534 0C080108 */ jal func_E0200420 +/* 362AF8 E005E538 27A40018 */ addiu $a0, $sp, 0x18 +/* 362AFC E005E53C 4406A000 */ mfc1 $a2, $f20 +/* 362B00 E005E540 4407A000 */ mfc1 $a3, $f20 +/* 362B04 E005E544 3C013F80 */ lui $at, 0x3f80 +/* 362B08 E005E548 44810000 */ mtc1 $at, $f0 +/* 362B0C E005E54C 26940001 */ addiu $s4, $s4, 1 +/* 362B10 E005E550 E7A00010 */ swc1 $f0, 0x10($sp) +/* 362B14 E005E554 8E050000 */ lw $a1, ($s0) +/* 362B18 E005E558 0C080104 */ jal func_E0200410 +/* 362B1C E005E55C 02A0202D */ daddu $a0, $s5, $zero +/* 362B20 E005E560 02A0202D */ daddu $a0, $s5, $zero +/* 362B24 E005E564 27A50018 */ addiu $a1, $sp, 0x18 +/* 362B28 E005E568 0C080114 */ jal func_E0200450 +/* 362B2C E005E56C 00A0302D */ daddu $a2, $a1, $zero +/* 362B30 E005E570 27A40018 */ addiu $a0, $sp, 0x18 +/* 362B34 E005E574 96E50000 */ lhu $a1, ($s7) +/* 362B38 E005E578 8FC20000 */ lw $v0, ($fp) +/* 362B3C E005E57C 00052980 */ sll $a1, $a1, 6 +/* 362B40 E005E580 00B32821 */ addu $a1, $a1, $s3 +/* 362B44 E005E584 0C080118 */ jal func_E0200460 +/* 362B48 E005E588 00452821 */ addu $a1, $v0, $a1 +/* 362B4C E005E58C 3C06D838 */ lui $a2, 0xd838 +/* 362B50 E005E590 8E240000 */ lw $a0, ($s1) +/* 362B54 E005E594 34C60002 */ ori $a2, $a2, 2 +/* 362B58 E005E598 0080282D */ daddu $a1, $a0, $zero +/* 362B5C E005E59C 24840008 */ addiu $a0, $a0, 8 +/* 362B60 E005E5A0 AE240000 */ sw $a0, ($s1) +/* 362B64 E005E5A4 96E20000 */ lhu $v0, ($s7) +/* 362B68 E005E5A8 3C03DA38 */ lui $v1, 0xda38 +/* 362B6C E005E5AC ACA30000 */ sw $v1, ($a1) +/* 362B70 E005E5B0 24430001 */ addiu $v1, $v0, 1 +/* 362B74 E005E5B4 3042FFFF */ andi $v0, $v0, 0xffff +/* 362B78 E005E5B8 00021180 */ sll $v0, $v0, 6 +/* 362B7C E005E5BC A6E30000 */ sh $v1, ($s7) +/* 362B80 E005E5C0 8FC30000 */ lw $v1, ($fp) +/* 362B84 E005E5C4 00531021 */ addu $v0, $v0, $s3 +/* 362B88 E005E5C8 00621821 */ addu $v1, $v1, $v0 +/* 362B8C E005E5CC 24820008 */ addiu $v0, $a0, 8 +/* 362B90 E005E5D0 ACA30004 */ sw $v1, 4($a1) +/* 362B94 E005E5D4 AE220000 */ sw $v0, ($s1) +/* 362B98 E005E5D8 3C02DE00 */ lui $v0, 0xde00 +/* 362B9C E005E5DC AC820000 */ sw $v0, ($a0) +/* 362BA0 E005E5E0 8FA800D8 */ lw $t0, 0xd8($sp) +/* 362BA4 E005E5E4 24020040 */ addiu $v0, $zero, 0x40 +/* 362BA8 E005E5E8 AC860008 */ sw $a2, 8($a0) +/* 362BAC E005E5EC AC82000C */ sw $v0, 0xc($a0) +/* 362BB0 E005E5F0 AC880004 */ sw $t0, 4($a0) +/* 362BB4 E005E5F4 8FA80110 */ lw $t0, 0x110($sp) +/* 362BB8 E005E5F8 2610002C */ addiu $s0, $s0, 0x2c +/* 362BBC E005E5FC 8D020008 */ lw $v0, 8($t0) +/* 362BC0 E005E600 24840010 */ addiu $a0, $a0, 0x10 +/* 362BC4 E005E604 0282102A */ slt $v0, $s4, $v0 +/* 362BC8 E005E608 1440FFC7 */ bnez $v0, .LE005E528 +/* 362BCC E005E60C AE240000 */ sw $a0, ($s1) +.LE005E610: +/* 362BD0 E005E610 3C05D838 */ lui $a1, 0xd838 +/* 362BD4 E005E614 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 362BD8 E005E618 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 362BDC E005E61C 8C620000 */ lw $v0, ($v1) +/* 362BE0 E005E620 34A50002 */ ori $a1, $a1, 2 +/* 362BE4 E005E624 0040202D */ daddu $a0, $v0, $zero +/* 362BE8 E005E628 24420008 */ addiu $v0, $v0, 8 +/* 362BEC E005E62C AC620000 */ sw $v0, ($v1) +/* 362BF0 E005E630 24020040 */ addiu $v0, $zero, 0x40 +/* 362BF4 E005E634 AC850000 */ sw $a1, ($a0) +/* 362BF8 E005E638 AC820004 */ sw $v0, 4($a0) +.LE005E63C: +/* 362BFC E005E63C 8FBF0104 */ lw $ra, 0x104($sp) +/* 362C00 E005E640 8FBE0100 */ lw $fp, 0x100($sp) +/* 362C04 E005E644 8FB700FC */ lw $s7, 0xfc($sp) +/* 362C08 E005E648 8FB600F8 */ lw $s6, 0xf8($sp) +/* 362C0C E005E64C 8FB500F4 */ lw $s5, 0xf4($sp) +/* 362C10 E005E650 8FB400F0 */ lw $s4, 0xf0($sp) +/* 362C14 E005E654 8FB300EC */ lw $s3, 0xec($sp) +/* 362C18 E005E658 8FB200E8 */ lw $s2, 0xe8($sp) +/* 362C1C E005E65C 8FB100E4 */ lw $s1, 0xe4($sp) +/* 362C20 E005E660 8FB000E0 */ lw $s0, 0xe0($sp) +/* 362C24 E005E664 D7B40108 */ ldc1 $f20, 0x108($sp) +/* 362C28 E005E668 03E00008 */ jr $ra +/* 362C2C E005E66C 27BD0110 */ addiu $sp, $sp, 0x110 diff --git a/asm/nonmatchings/code_363160/func_E0060000.s b/asm/nonmatchings/code_363160/func_E0060000.s new file mode 100644 index 0000000000..d2abb7e8f7 --- /dev/null +++ b/asm/nonmatchings/code_363160/func_E0060000.s @@ -0,0 +1,126 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0060000 +/* 363160 E0060000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 363164 E0060004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 363168 E0060008 4485A000 */ mtc1 $a1, $f20 +/* 36316C E006000C AFB20030 */ sw $s2, 0x30($sp) +/* 363170 E0060010 0080902D */ daddu $s2, $a0, $zero +/* 363174 E0060014 F7B60048 */ sdc1 $f22, 0x48($sp) +/* 363178 E0060018 4486B000 */ mtc1 $a2, $f22 +/* 36317C E006001C 27A40010 */ addiu $a0, $sp, 0x10 +/* 363180 E0060020 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 363184 E0060024 4487C000 */ mtc1 $a3, $f24 +/* 363188 E0060028 3C02E006 */ lui $v0, %hi(D_E00601D8) +/* 36318C E006002C 244201D8 */ addiu $v0, $v0, %lo(D_E00601D8) +/* 363190 E0060030 AFA20018 */ sw $v0, 0x18($sp) +/* 363194 E0060034 3C02E006 */ lui $v0, %hi(D_E00601E0) +/* 363198 E0060038 244201E0 */ addiu $v0, $v0, %lo(D_E00601E0) +/* 36319C E006003C AFA2001C */ sw $v0, 0x1c($sp) +/* 3631A0 E0060040 3C02E006 */ lui $v0, %hi(D_E006040C) +/* 3631A4 E0060044 2442040C */ addiu $v0, $v0, %lo(D_E006040C) +/* 3631A8 E0060048 AFA20020 */ sw $v0, 0x20($sp) +/* 3631AC E006004C 24020030 */ addiu $v0, $zero, 0x30 +/* 3631B0 E0060050 AFBF003C */ sw $ra, 0x3c($sp) +/* 3631B4 E0060054 AFB40038 */ sw $s4, 0x38($sp) +/* 3631B8 E0060058 AFB30034 */ sw $s3, 0x34($sp) +/* 3631BC E006005C AFB1002C */ sw $s1, 0x2c($sp) +/* 3631C0 E0060060 AFB00028 */ sw $s0, 0x28($sp) +/* 3631C4 E0060064 AFA00010 */ sw $zero, 0x10($sp) +/* 3631C8 E0060068 AFA00024 */ sw $zero, 0x24($sp) +/* 3631CC E006006C 0C080124 */ jal func_E0200490 +/* 3631D0 E0060070 AFA20014 */ sw $v0, 0x14($sp) +/* 3631D4 E0060074 240401B0 */ addiu $a0, $zero, 0x1b0 +/* 3631D8 E0060078 24130009 */ addiu $s3, $zero, 9 +/* 3631DC E006007C 0040802D */ daddu $s0, $v0, $zero +/* 3631E0 E0060080 0C08012C */ jal func_E02004B0 +/* 3631E4 E0060084 AE130008 */ sw $s3, 8($s0) +/* 3631E8 E0060088 0040882D */ daddu $s1, $v0, $zero +/* 3631EC E006008C 16200003 */ bnez $s1, .LE006009C +/* 3631F0 E0060090 AE11000C */ sw $s1, 0xc($s0) +.LE0060094: +/* 3631F4 E0060094 08018025 */ j .LE0060094 +/* 3631F8 E0060098 00000000 */ nop +.LE006009C: +/* 3631FC E006009C 0220202D */ daddu $a0, $s1, $zero +/* 363200 E00600A0 00132840 */ sll $a1, $s3, 1 +/* 363204 E00600A4 00B32821 */ addu $a1, $a1, $s3 +/* 363208 E00600A8 0C080130 */ jal func_E02004C0 +/* 36320C E00600AC 00052900 */ sll $a1, $a1, 4 +/* 363210 E00600B0 2402001E */ addiu $v0, $zero, 0x1e +/* 363214 E00600B4 AE320000 */ sw $s2, ($s1) +/* 363218 E00600B8 E6340004 */ swc1 $f20, 4($s1) +/* 36321C E00600BC E6360008 */ swc1 $f22, 8($s1) +/* 363220 E00600C0 E638000C */ swc1 $f24, 0xc($s1) +/* 363224 E00600C4 AE220028 */ sw $v0, 0x28($s1) +/* 363228 E00600C8 AE20002C */ sw $zero, 0x2c($s1) +/* 36322C E00600CC AE200024 */ sw $zero, 0x24($s1) +/* 363230 E00600D0 24120001 */ addiu $s2, $zero, 1 +/* 363234 E00600D4 0253102A */ slt $v0, $s2, $s3 +/* 363238 E00600D8 10400034 */ beqz $v0, .LE00601AC +/* 36323C E00600DC 26310030 */ addiu $s1, $s1, 0x30 +/* 363240 E00600E0 3C146666 */ lui $s4, 0x6666 +/* 363244 E00600E4 36946667 */ ori $s4, $s4, 0x6667 +/* 363248 E00600E8 26300014 */ addiu $s0, $s1, 0x14 +/* 36324C E00600EC 3C014120 */ lui $at, 0x4120 +/* 363250 E00600F0 4481B000 */ mtc1 $at, $f22 +/* 363254 E00600F4 3C014000 */ lui $at, 0x4000 +/* 363258 E00600F8 4481A000 */ mtc1 $at, $f20 +.LE00600FC: +/* 36325C E00600FC 0C080000 */ jal func_E0200000 +/* 363260 E0060100 2404000A */ addiu $a0, $zero, 0xa +/* 363264 E0060104 2404000A */ addiu $a0, $zero, 0xa +/* 363268 E0060108 2442FFFB */ addiu $v0, $v0, -5 +/* 36326C E006010C 44820000 */ mtc1 $v0, $f0 +/* 363270 E0060110 00000000 */ nop +/* 363274 E0060114 46800020 */ cvt.s.w $f0, $f0 +/* 363278 E0060118 0C080000 */ jal func_E0200000 +/* 36327C E006011C E600FFF0 */ swc1 $f0, -0x10($s0) +/* 363280 E0060120 24040168 */ addiu $a0, $zero, 0x168 +/* 363284 E0060124 24420005 */ addiu $v0, $v0, 5 +/* 363288 E0060128 44820000 */ mtc1 $v0, $f0 +/* 36328C E006012C 00000000 */ nop +/* 363290 E0060130 46800020 */ cvt.s.w $f0, $f0 +/* 363294 E0060134 E600FFF4 */ swc1 $f0, -0xc($s0) +/* 363298 E0060138 0C080000 */ jal func_E0200000 +/* 36329C E006013C E616FFF8 */ swc1 $f22, -8($s0) +/* 3632A0 E0060140 24040168 */ addiu $a0, $zero, 0x168 +/* 3632A4 E0060144 44820000 */ mtc1 $v0, $f0 +/* 3632A8 E0060148 00000000 */ nop +/* 3632AC E006014C 46800020 */ cvt.s.w $f0, $f0 +/* 3632B0 E0060150 0C080000 */ jal func_E0200000 +/* 3632B4 E0060154 E6000004 */ swc1 $f0, 4($s0) +/* 3632B8 E0060158 24040064 */ addiu $a0, $zero, 0x64 +/* 3632BC E006015C 44820000 */ mtc1 $v0, $f0 +/* 3632C0 E0060160 00000000 */ nop +/* 3632C4 E0060164 46800020 */ cvt.s.w $f0, $f0 +/* 3632C8 E0060168 0C080000 */ jal func_E0200000 +/* 3632CC E006016C E600000C */ swc1 $f0, 0xc($s0) +/* 3632D0 E0060170 00540018 */ mult $v0, $s4 +/* 3632D4 E0060174 26520001 */ addiu $s2, $s2, 1 +/* 3632D8 E0060178 000217C3 */ sra $v0, $v0, 0x1f +/* 3632DC E006017C AE00FFFC */ sw $zero, -4($s0) +/* 3632E0 E0060180 E6140000 */ swc1 $f20, ($s0) +/* 3632E4 E0060184 00004010 */ mfhi $t0 +/* 3632E8 E0060188 00081883 */ sra $v1, $t0, 2 +/* 3632EC E006018C 00621823 */ subu $v1, $v1, $v0 +/* 3632F0 E0060190 44830000 */ mtc1 $v1, $f0 +/* 3632F4 E0060194 00000000 */ nop +/* 3632F8 E0060198 46800020 */ cvt.s.w $f0, $f0 +/* 3632FC E006019C E6000008 */ swc1 $f0, 8($s0) +/* 363300 E00601A0 0253102A */ slt $v0, $s2, $s3 +/* 363304 E00601A4 1440FFD5 */ bnez $v0, .LE00600FC +/* 363308 E00601A8 26100030 */ addiu $s0, $s0, 0x30 +.LE00601AC: +/* 36330C E00601AC 8FBF003C */ lw $ra, 0x3c($sp) +/* 363310 E00601B0 8FB40038 */ lw $s4, 0x38($sp) +/* 363314 E00601B4 8FB30034 */ lw $s3, 0x34($sp) +/* 363318 E00601B8 8FB20030 */ lw $s2, 0x30($sp) +/* 36331C E00601BC 8FB1002C */ lw $s1, 0x2c($sp) +/* 363320 E00601C0 8FB00028 */ lw $s0, 0x28($sp) +/* 363324 E00601C4 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 363328 E00601C8 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 36332C E00601CC D7B40040 */ ldc1 $f20, 0x40($sp) +/* 363330 E00601D0 03E00008 */ jr $ra +/* 363334 E00601D4 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_363160/func_E00601D8.s b/asm/nonmatchings/code_363160/func_E00601D8.s new file mode 100644 index 0000000000..8062315acb --- /dev/null +++ b/asm/nonmatchings/code_363160/func_E00601D8.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00601D8 +/* 363338 E00601D8 03E00008 */ jr $ra +/* 36333C E00601DC 00000000 */ nop diff --git a/asm/nonmatchings/code_363160/func_E00601E0.s b/asm/nonmatchings/code_363160/func_E00601E0.s new file mode 100644 index 0000000000..f07b248b7d --- /dev/null +++ b/asm/nonmatchings/code_363160/func_E00601E0.s @@ -0,0 +1,148 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00601E0 +/* 363340 E00601E0 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 363344 E00601E4 AFB3001C */ sw $s3, 0x1c($sp) +/* 363348 E00601E8 0080982D */ daddu $s3, $a0, $zero +/* 36334C E00601EC AFBF0020 */ sw $ra, 0x20($sp) +/* 363350 E00601F0 AFB20018 */ sw $s2, 0x18($sp) +/* 363354 E00601F4 AFB10014 */ sw $s1, 0x14($sp) +/* 363358 E00601F8 AFB00010 */ sw $s0, 0x10($sp) +/* 36335C E00601FC F7B60030 */ sdc1 $f22, 0x30($sp) +/* 363360 E0060200 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 363364 E0060204 8E64000C */ lw $a0, 0xc($s3) +/* 363368 E0060208 8C820028 */ lw $v0, 0x28($a0) +/* 36336C E006020C 2442FFFF */ addiu $v0, $v0, -1 +/* 363370 E0060210 AC820028 */ sw $v0, 0x28($a0) +/* 363374 E0060214 8C82002C */ lw $v0, 0x2c($a0) +/* 363378 E0060218 8C850028 */ lw $a1, 0x28($a0) +/* 36337C E006021C 24420001 */ addiu $v0, $v0, 1 +/* 363380 E0060220 04A10005 */ bgez $a1, .LE0060238 +/* 363384 E0060224 AC82002C */ sw $v0, 0x2c($a0) +/* 363388 E0060228 0C080128 */ jal func_E02004A0 +/* 36338C E006022C 0260202D */ daddu $a0, $s3, $zero +/* 363390 E0060230 080180FA */ j .LE00603E8 +/* 363394 E0060234 00000000 */ nop +.LE0060238: +/* 363398 E0060238 2842000A */ slti $v0, $v0, 0xa +/* 36339C E006023C 10400011 */ beqz $v0, .LE0060284 +/* 3633A0 E0060240 00A0302D */ daddu $a2, $a1, $zero +/* 3633A4 E0060244 240200FF */ addiu $v0, $zero, 0xff +/* 3633A8 E0060248 8C830024 */ lw $v1, 0x24($a0) +/* 3633AC E006024C 3C01E006 */ lui $at, %hi(D_E0060740) +/* 3633B0 E0060250 D4200740 */ ldc1 $f0, %lo(D_E0060740)($at) +/* 3633B4 E0060254 00431023 */ subu $v0, $v0, $v1 +/* 3633B8 E0060258 44821000 */ mtc1 $v0, $f2 +/* 3633BC E006025C 00000000 */ nop +/* 3633C0 E0060260 468010A1 */ cvt.d.w $f2, $f2 +/* 3633C4 E0060264 46201082 */ mul.d $f2, $f2, $f0 +/* 3633C8 E0060268 00000000 */ nop +/* 3633CC E006026C 44830000 */ mtc1 $v1, $f0 +/* 3633D0 E0060270 00000000 */ nop +/* 3633D4 E0060274 46800021 */ cvt.d.w $f0, $f0 +/* 3633D8 E0060278 46220000 */ add.d $f0, $f0, $f2 +/* 3633DC E006027C 4620020D */ trunc.w.d $f8, $f0 +/* 3633E0 E0060280 E4880024 */ swc1 $f8, 0x24($a0) +.LE0060284: +/* 3633E4 E0060284 28C2000A */ slti $v0, $a2, 0xa +/* 3633E8 E0060288 10400009 */ beqz $v0, .LE00602B0 +/* 3633EC E006028C 00000000 */ nop +/* 3633F0 E0060290 3C01E006 */ lui $at, %hi(D_E0060748) +/* 3633F4 E0060294 D4220748 */ ldc1 $f2, %lo(D_E0060748)($at) +/* 3633F8 E0060298 C4800024 */ lwc1 $f0, 0x24($a0) +/* 3633FC E006029C 46800021 */ cvt.d.w $f0, $f0 +/* 363400 E00602A0 46220002 */ mul.d $f0, $f0, $f2 +/* 363404 E00602A4 00000000 */ nop +/* 363408 E00602A8 4620020D */ trunc.w.d $f8, $f0 +/* 36340C E00602AC E4880024 */ swc1 $f8, 0x24($a0) +.LE00602B0: +/* 363410 E00602B0 8E620008 */ lw $v0, 8($s3) +/* 363414 E00602B4 24110001 */ addiu $s1, $zero, 1 +/* 363418 E00602B8 0222102A */ slt $v0, $s1, $v0 +/* 36341C E00602BC 1040004A */ beqz $v0, .LE00603E8 +/* 363420 E00602C0 24840030 */ addiu $a0, $a0, 0x30 +/* 363424 E00602C4 24900008 */ addiu $s0, $a0, 8 +/* 363428 E00602C8 24B20014 */ addiu $s2, $a1, 0x14 +/* 36342C E00602CC 3C01BD4C */ lui $at, 0xbd4c +/* 363430 E00602D0 3421CCCD */ ori $at, $at, 0xcccd +/* 363434 E00602D4 4481B000 */ mtc1 $at, $f22 +/* 363438 E00602D8 3C014120 */ lui $at, 0x4120 +/* 36343C E00602DC 4481A000 */ mtc1 $at, $f20 +.LE00602E0: +/* 363440 E00602E0 C60C0010 */ lwc1 $f12, 0x10($s0) +/* 363444 E00602E4 0C080140 */ jal func_E0200500 +/* 363448 E00602E8 460C6300 */ add.s $f12, $f12, $f12 +/* 36344C E00602EC 3C01E006 */ lui $at, %hi(D_E0060750) +/* 363450 E00602F0 D4220750 */ ldc1 $f2, %lo(D_E0060750)($at) +/* 363454 E00602F4 46000021 */ cvt.d.s $f0, $f0 +/* 363458 E00602F8 46220002 */ mul.d $f0, $f0, $f2 +/* 36345C E00602FC 00000000 */ nop +/* 363460 E0060300 C6020008 */ lwc1 $f2, 8($s0) +/* 363464 E0060304 46200020 */ cvt.s.d $f0, $f0 +/* 363468 E0060308 46001080 */ add.s $f2, $f2, $f0 +/* 36346C E006030C 3C01E006 */ lui $at, %hi(D_E0060758) +/* 363470 E0060310 D4200758 */ ldc1 $f0, %lo(D_E0060758)($at) +/* 363474 E0060314 E6020008 */ swc1 $f2, 8($s0) +/* 363478 E0060318 460010A1 */ cvt.d.s $f2, $f2 +/* 36347C E006031C 46201082 */ mul.d $f2, $f2, $f0 +/* 363480 E0060320 00000000 */ nop +/* 363484 E0060324 C600000C */ lwc1 $f0, 0xc($s0) +/* 363488 E0060328 46160000 */ add.s $f0, $f0, $f22 +/* 36348C E006032C E600000C */ swc1 $f0, 0xc($s0) +/* 363490 E0060330 46160000 */ add.s $f0, $f0, $f22 +/* 363494 E0060334 24040032 */ addiu $a0, $zero, 0x32 +/* 363498 E0060338 0240282D */ daddu $a1, $s2, $zero +/* 36349C E006033C E600000C */ swc1 $f0, 0xc($s0) +/* 3634A0 E0060340 462010A0 */ cvt.s.d $f2, $f2 +/* 3634A4 E0060344 0C080011 */ jal func_E0200044 +/* 3634A8 E0060348 E6020008 */ swc1 $f2, 8($s0) +/* 3634AC E006034C 2442FFE7 */ addiu $v0, $v0, -0x19 +/* 3634B0 E0060350 C60C0014 */ lwc1 $f12, 0x14($s0) +/* 3634B4 E0060354 44820000 */ mtc1 $v0, $f0 +/* 3634B8 E0060358 00000000 */ nop +/* 3634BC E006035C 46800020 */ cvt.s.w $f0, $f0 +/* 3634C0 E0060360 46006300 */ add.s $f12, $f12, $f0 +/* 3634C4 E0060364 0C080140 */ jal func_E0200500 +/* 3634C8 E0060368 E60C0014 */ swc1 $f12, 0x14($s0) +/* 3634CC E006036C 46140002 */ mul.s $f0, $f0, $f20 +/* 3634D0 E0060370 00000000 */ nop +/* 3634D4 E0060374 C6020014 */ lwc1 $f2, 0x14($s0) +/* 3634D8 E0060378 3C013F00 */ lui $at, 0x3f00 +/* 3634DC E006037C 44816000 */ mtc1 $at, $f12 +/* 3634E0 E0060380 00000000 */ nop +/* 3634E4 E0060384 460C1302 */ mul.s $f12, $f2, $f12 +/* 3634E8 E0060388 00000000 */ nop +/* 3634EC E006038C C6020010 */ lwc1 $f2, 0x10($s0) +/* 3634F0 E0060390 46001080 */ add.s $f2, $f2, $f0 +/* 3634F4 E0060394 0C080144 */ jal func_E0200510 +/* 3634F8 E0060398 E6020010 */ swc1 $f2, 0x10($s0) +/* 3634FC E006039C 46140002 */ mul.s $f0, $f0, $f20 +/* 363500 E00603A0 00000000 */ nop +/* 363504 E00603A4 C606FFFC */ lwc1 $f6, -4($s0) +/* 363508 E00603A8 C6020008 */ lwc1 $f2, 8($s0) +/* 36350C E00603AC C6040000 */ lwc1 $f4, ($s0) +/* 363510 E00603B0 46023180 */ add.s $f6, $f6, $f2 +/* 363514 E00603B4 C602000C */ lwc1 $f2, 0xc($s0) +/* 363518 E00603B8 26310001 */ addiu $s1, $s1, 1 +/* 36351C E00603BC 46022100 */ add.s $f4, $f4, $f2 +/* 363520 E00603C0 C6020018 */ lwc1 $f2, 0x18($s0) +/* 363524 E00603C4 26520014 */ addiu $s2, $s2, 0x14 +/* 363528 E00603C8 46001080 */ add.s $f2, $f2, $f0 +/* 36352C E00603CC E606FFFC */ swc1 $f6, -4($s0) +/* 363530 E00603D0 E6040000 */ swc1 $f4, ($s0) +/* 363534 E00603D4 E6020018 */ swc1 $f2, 0x18($s0) +/* 363538 E00603D8 8E620008 */ lw $v0, 8($s3) +/* 36353C E00603DC 0222102A */ slt $v0, $s1, $v0 +/* 363540 E00603E0 1440FFBF */ bnez $v0, .LE00602E0 +/* 363544 E00603E4 26100030 */ addiu $s0, $s0, 0x30 +.LE00603E8: +/* 363548 E00603E8 8FBF0020 */ lw $ra, 0x20($sp) +/* 36354C E00603EC 8FB3001C */ lw $s3, 0x1c($sp) +/* 363550 E00603F0 8FB20018 */ lw $s2, 0x18($sp) +/* 363554 E00603F4 8FB10014 */ lw $s1, 0x14($sp) +/* 363558 E00603F8 8FB00010 */ lw $s0, 0x10($sp) +/* 36355C E00603FC D7B60030 */ ldc1 $f22, 0x30($sp) +/* 363560 E0060400 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 363564 E0060404 03E00008 */ jr $ra +/* 363568 E0060408 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_363160/func_E006040C.s b/asm/nonmatchings/code_363160/func_E006040C.s new file mode 100644 index 0000000000..f52aeefae6 --- /dev/null +++ b/asm/nonmatchings/code_363160/func_E006040C.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E006040C +/* 36356C E006040C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 363570 E0060410 3C02E006 */ lui $v0, %hi(D_E0060450) +/* 363574 E0060414 24420450 */ addiu $v0, $v0, %lo(D_E0060450) +/* 363578 E0060418 AFA2001C */ sw $v0, 0x1c($sp) +/* 36357C E006041C 2402002D */ addiu $v0, $zero, 0x2d +/* 363580 E0060420 AFA40018 */ sw $a0, 0x18($sp) +/* 363584 E0060424 27A40010 */ addiu $a0, $sp, 0x10 +/* 363588 E0060428 AFBF0020 */ sw $ra, 0x20($sp) +/* 36358C E006042C AFA00014 */ sw $zero, 0x14($sp) +/* 363590 E0060430 0C080120 */ jal func_E0200480 +/* 363594 E0060434 AFA20010 */ sw $v0, 0x10($sp) +/* 363598 E0060438 8C430000 */ lw $v1, ($v0) +/* 36359C E006043C 34630002 */ ori $v1, $v1, 2 +/* 3635A0 E0060440 AC430000 */ sw $v1, ($v0) +/* 3635A4 E0060444 8FBF0020 */ lw $ra, 0x20($sp) +/* 3635A8 E0060448 03E00008 */ jr $ra +/* 3635AC E006044C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_363160/func_E0060450.s b/asm/nonmatchings/code_363160/func_E0060450.s new file mode 100644 index 0000000000..9a6b50af6e --- /dev/null +++ b/asm/nonmatchings/code_363160/func_E0060450.s @@ -0,0 +1,191 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0060450 +/* 3635B0 E0060450 27BDFEF0 */ addiu $sp, $sp, -0x110 +/* 3635B4 E0060454 3C02DB06 */ lui $v0, 0xdb06 +/* 3635B8 E0060458 34420024 */ ori $v0, $v0, 0x24 +/* 3635BC E006045C AFB400E8 */ sw $s4, 0xe8($sp) +/* 3635C0 E0060460 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 3635C4 E0060464 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 3635C8 E0060468 AFBF00FC */ sw $ra, 0xfc($sp) +/* 3635CC E006046C AFBE00F8 */ sw $fp, 0xf8($sp) +/* 3635D0 E0060470 AFB700F4 */ sw $s7, 0xf4($sp) +/* 3635D4 E0060474 AFB600F0 */ sw $s6, 0xf0($sp) +/* 3635D8 E0060478 AFB500EC */ sw $s5, 0xec($sp) +/* 3635DC E006047C AFB300E4 */ sw $s3, 0xe4($sp) +/* 3635E0 E0060480 AFB200E0 */ sw $s2, 0xe0($sp) +/* 3635E4 E0060484 AFB100DC */ sw $s1, 0xdc($sp) +/* 3635E8 E0060488 AFB000D8 */ sw $s0, 0xd8($sp) +/* 3635EC E006048C F7B60108 */ sdc1 $f22, 0x108($sp) +/* 3635F0 E0060490 F7B40100 */ sdc1 $f20, 0x100($sp) +/* 3635F4 E0060494 AFA40110 */ sw $a0, 0x110($sp) +/* 3635F8 E0060498 8E850000 */ lw $a1, ($s4) +/* 3635FC E006049C 8C90000C */ lw $s0, 0xc($a0) +/* 363600 E00604A0 3C06E006 */ lui $a2, %hi(D_E0060738) +/* 363604 E00604A4 8CC60738 */ lw $a2, %lo(D_E0060738)($a2) +/* 363608 E00604A8 00A0202D */ daddu $a0, $a1, $zero +/* 36360C E00604AC 24A50008 */ addiu $a1, $a1, 8 +/* 363610 E00604B0 AE850000 */ sw $a1, ($s4) +/* 363614 E00604B4 AC820000 */ sw $v0, ($a0) +/* 363618 E00604B8 24A20008 */ addiu $v0, $a1, 8 +/* 36361C E00604BC AE820000 */ sw $v0, ($s4) +/* 363620 E00604C0 8FA80110 */ lw $t0, 0x110($sp) +/* 363624 E00604C4 3C071464 */ lui $a3, 0x1464 +/* 363628 E00604C8 8D030010 */ lw $v1, 0x10($t0) +/* 36362C E00604CC 24A20010 */ addiu $v0, $a1, 0x10 +/* 363630 E00604D0 AE820000 */ sw $v0, ($s4) +/* 363634 E00604D4 8C62001C */ lw $v0, 0x1c($v1) +/* 363638 E00604D8 3C038000 */ lui $v1, 0x8000 +/* 36363C E00604DC 00431021 */ addu $v0, $v0, $v1 +/* 363640 E00604E0 AC820004 */ sw $v0, 4($a0) +/* 363644 E00604E4 3C02DE00 */ lui $v0, 0xde00 +/* 363648 E00604E8 ACA20000 */ sw $v0, ($a1) +/* 36364C E00604EC 3C02FA00 */ lui $v0, 0xfa00 +/* 363650 E00604F0 ACA60004 */ sw $a2, 4($a1) +/* 363654 E00604F4 ACA20008 */ sw $v0, 8($a1) +/* 363658 E00604F8 92020027 */ lbu $v0, 0x27($s0) +/* 36365C E00604FC 34E71400 */ ori $a3, $a3, 0x1400 +/* 363660 E0060500 00471025 */ or $v0, $v0, $a3 +/* 363664 E0060504 ACA2000C */ sw $v0, 0xc($a1) +/* 363668 E0060508 8E050004 */ lw $a1, 4($s0) +/* 36366C E006050C 8E060008 */ lw $a2, 8($s0) +/* 363670 E0060510 8E07000C */ lw $a3, 0xc($s0) +/* 363674 E0060514 0C080108 */ jal func_E0200420 +/* 363678 E0060518 27A40018 */ addiu $a0, $sp, 0x18 +/* 36367C E006051C 27B10058 */ addiu $s1, $sp, 0x58 +/* 363680 E0060520 4480A000 */ mtc1 $zero, $f20 +/* 363684 E0060524 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 363688 E0060528 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 36368C E006052C 3C013F80 */ lui $at, 0x3f80 +/* 363690 E0060530 4481B000 */ mtc1 $at, $f22 +/* 363694 E0060534 00031080 */ sll $v0, $v1, 2 +/* 363698 E0060538 00431021 */ addu $v0, $v0, $v1 +/* 36369C E006053C 00021080 */ sll $v0, $v0, 2 +/* 3636A0 E0060540 00431023 */ subu $v0, $v0, $v1 +/* 3636A4 E0060544 000218C0 */ sll $v1, $v0, 3 +/* 3636A8 E0060548 00431021 */ addu $v0, $v0, $v1 +/* 3636AC E006054C 000210C0 */ sll $v0, $v0, 3 +/* 3636B0 E0060550 4406A000 */ mfc1 $a2, $f20 +/* 3636B4 E0060554 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3636B8 E0060558 00220821 */ addu $at, $at, $v0 +/* 3636BC E006055C C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 3636C0 E0060560 4407B000 */ mfc1 $a3, $f22 +/* 3636C4 E0060564 46000007 */ neg.s $f0, $f0 +/* 3636C8 E0060568 44050000 */ mfc1 $a1, $f0 +/* 3636CC E006056C 0220202D */ daddu $a0, $s1, $zero +/* 3636D0 E0060570 0C080104 */ jal func_E0200410 +/* 3636D4 E0060574 E7B40010 */ swc1 $f20, 0x10($sp) +/* 3636D8 E0060578 0220202D */ daddu $a0, $s1, $zero +/* 3636DC E006057C 27A50018 */ addiu $a1, $sp, 0x18 +/* 3636E0 E0060580 0C080114 */ jal func_E0200450 +/* 3636E4 E0060584 27A60098 */ addiu $a2, $sp, 0x98 +/* 3636E8 E0060588 8FA80110 */ lw $t0, 0x110($sp) +/* 3636EC E006058C 24130001 */ addiu $s3, $zero, 1 +/* 3636F0 E0060590 8D020008 */ lw $v0, 8($t0) +/* 3636F4 E0060594 0262102A */ slt $v0, $s3, $v0 +/* 3636F8 E0060598 10400056 */ beqz $v0, .LE00606F4 +/* 3636FC E006059C 26100030 */ addiu $s0, $s0, 0x30 +/* 363700 E00605A0 0220902D */ daddu $s2, $s1, $zero +/* 363704 E00605A4 3C1E800A */ lui $fp, %hi(D_8009A674) +/* 363708 E00605A8 27DEA674 */ addiu $fp, $fp, %lo(D_8009A674) +/* 36370C E00605AC 3C178007 */ lui $s7, %hi(D_800741F0) +/* 363710 E00605B0 26F741F0 */ addiu $s7, $s7, %lo(D_800741F0) +/* 363714 E00605B4 3C160001 */ lui $s6, 1 +/* 363718 E00605B8 36D61630 */ ori $s6, $s6, 0x1630 +/* 36371C E00605BC 26110020 */ addiu $s1, $s0, 0x20 +.LE00605C0: +/* 363720 E00605C0 32700001 */ andi $s0, $s3, 1 +/* 363724 E00605C4 00101080 */ sll $v0, $s0, 2 +/* 363728 E00605C8 3C08E006 */ lui $t0, %hi(D_E0060730) +/* 36372C E00605CC 25080730 */ addiu $t0, $t0, %lo(D_E0060730) +/* 363730 E00605D0 00481021 */ addu $v0, $v0, $t0 +/* 363734 E00605D4 8E25FFE4 */ lw $a1, -0x1c($s1) +/* 363738 E00605D8 8E26FFE8 */ lw $a2, -0x18($s1) +/* 36373C E00605DC 8E27FFEC */ lw $a3, -0x14($s1) +/* 363740 E00605E0 8C550000 */ lw $s5, ($v0) +/* 363744 E00605E4 0C080108 */ jal func_E0200420 +/* 363748 E00605E8 0240202D */ daddu $a0, $s2, $zero +/* 36374C E00605EC 0240202D */ daddu $a0, $s2, $zero +/* 363750 E00605F0 27A50098 */ addiu $a1, $sp, 0x98 +/* 363754 E00605F4 0C080114 */ jal func_E0200450 +/* 363758 E00605F8 27A60018 */ addiu $a2, $sp, 0x18 +/* 36375C E00605FC 56000016 */ bnel $s0, $zero, .LE0060658 +/* 363760 E0060600 27A40018 */ addiu $a0, $sp, 0x18 +/* 363764 E0060604 E7B60010 */ swc1 $f22, 0x10($sp) +/* 363768 E0060608 8E25FFF8 */ lw $a1, -8($s1) +/* 36376C E006060C 4406A000 */ mfc1 $a2, $f20 +/* 363770 E0060610 4407A000 */ mfc1 $a3, $f20 +/* 363774 E0060614 0C080104 */ jal func_E0200410 +/* 363778 E0060618 0240202D */ daddu $a0, $s2, $zero +/* 36377C E006061C 0240202D */ daddu $a0, $s2, $zero +/* 363780 E0060620 27A50018 */ addiu $a1, $sp, 0x18 +/* 363784 E0060624 0C080114 */ jal func_E0200450 +/* 363788 E0060628 00A0302D */ daddu $a2, $a1, $zero +/* 36378C E006062C E7B40010 */ swc1 $f20, 0x10($sp) +/* 363790 E0060630 8E250000 */ lw $a1, ($s1) +/* 363794 E0060634 4406A000 */ mfc1 $a2, $f20 +/* 363798 E0060638 4407B000 */ mfc1 $a3, $f22 +/* 36379C E006063C 0C080104 */ jal func_E0200410 +/* 3637A0 E0060640 0240202D */ daddu $a0, $s2, $zero +/* 3637A4 E0060644 0240202D */ daddu $a0, $s2, $zero +/* 3637A8 E0060648 27A50018 */ addiu $a1, $sp, 0x18 +/* 3637AC E006064C 0C080114 */ jal func_E0200450 +/* 3637B0 E0060650 00A0302D */ daddu $a2, $a1, $zero +/* 3637B4 E0060654 27A40018 */ addiu $a0, $sp, 0x18 +.LE0060658: +/* 3637B8 E0060658 26730001 */ addiu $s3, $s3, 1 +/* 3637BC E006065C 96E50000 */ lhu $a1, ($s7) +/* 3637C0 E0060660 8FC20000 */ lw $v0, ($fp) +/* 3637C4 E0060664 00052980 */ sll $a1, $a1, 6 +/* 3637C8 E0060668 00B62821 */ addu $a1, $a1, $s6 +/* 3637CC E006066C 0C080118 */ jal func_E0200460 +/* 3637D0 E0060670 00452821 */ addu $a1, $v0, $a1 +/* 3637D4 E0060674 3C06D838 */ lui $a2, 0xd838 +/* 3637D8 E0060678 8E840000 */ lw $a0, ($s4) +/* 3637DC E006067C 34C60002 */ ori $a2, $a2, 2 +/* 3637E0 E0060680 0080282D */ daddu $a1, $a0, $zero +/* 3637E4 E0060684 24840008 */ addiu $a0, $a0, 8 +/* 3637E8 E0060688 AE840000 */ sw $a0, ($s4) +/* 3637EC E006068C 96E20000 */ lhu $v0, ($s7) +/* 3637F0 E0060690 3C03DA38 */ lui $v1, 0xda38 +/* 3637F4 E0060694 ACA30000 */ sw $v1, ($a1) +/* 3637F8 E0060698 24430001 */ addiu $v1, $v0, 1 +/* 3637FC E006069C 3042FFFF */ andi $v0, $v0, 0xffff +/* 363800 E00606A0 00021180 */ sll $v0, $v0, 6 +/* 363804 E00606A4 A6E30000 */ sh $v1, ($s7) +/* 363808 E00606A8 8FC30000 */ lw $v1, ($fp) +/* 36380C E00606AC 00561021 */ addu $v0, $v0, $s6 +/* 363810 E00606B0 00621821 */ addu $v1, $v1, $v0 +/* 363814 E00606B4 24820008 */ addiu $v0, $a0, 8 +/* 363818 E00606B8 ACA30004 */ sw $v1, 4($a1) +/* 36381C E00606BC AE820000 */ sw $v0, ($s4) +/* 363820 E00606C0 3C02DE00 */ lui $v0, 0xde00 +/* 363824 E00606C4 AC820000 */ sw $v0, ($a0) +/* 363828 E00606C8 24020040 */ addiu $v0, $zero, 0x40 +/* 36382C E00606CC AC950004 */ sw $s5, 4($a0) +/* 363830 E00606D0 AC860008 */ sw $a2, 8($a0) +/* 363834 E00606D4 AC82000C */ sw $v0, 0xc($a0) +/* 363838 E00606D8 8FA80110 */ lw $t0, 0x110($sp) +/* 36383C E00606DC 26310030 */ addiu $s1, $s1, 0x30 +/* 363840 E00606E0 8D020008 */ lw $v0, 8($t0) +/* 363844 E00606E4 24840010 */ addiu $a0, $a0, 0x10 +/* 363848 E00606E8 0262102A */ slt $v0, $s3, $v0 +/* 36384C E00606EC 1440FFB4 */ bnez $v0, .LE00605C0 +/* 363850 E00606F0 AE840000 */ sw $a0, ($s4) +.LE00606F4: +/* 363854 E00606F4 8FBF00FC */ lw $ra, 0xfc($sp) +/* 363858 E00606F8 8FBE00F8 */ lw $fp, 0xf8($sp) +/* 36385C E00606FC 8FB700F4 */ lw $s7, 0xf4($sp) +/* 363860 E0060700 8FB600F0 */ lw $s6, 0xf0($sp) +/* 363864 E0060704 8FB500EC */ lw $s5, 0xec($sp) +/* 363868 E0060708 8FB400E8 */ lw $s4, 0xe8($sp) +/* 36386C E006070C 8FB300E4 */ lw $s3, 0xe4($sp) +/* 363870 E0060710 8FB200E0 */ lw $s2, 0xe0($sp) +/* 363874 E0060714 8FB100DC */ lw $s1, 0xdc($sp) +/* 363878 E0060718 8FB000D8 */ lw $s0, 0xd8($sp) +/* 36387C E006071C D7B60108 */ ldc1 $f22, 0x108($sp) +/* 363880 E0060720 D7B40100 */ ldc1 $f20, 0x100($sp) +/* 363884 E0060724 03E00008 */ jr $ra +/* 363888 E0060728 27BD0110 */ addiu $sp, $sp, 0x110 +/* 36388C E006072C 00000000 */ nop diff --git a/asm/nonmatchings/code_364300/func_E0062000.s b/asm/nonmatchings/code_364300/func_E0062000.s new file mode 100644 index 0000000000..534d15997a --- /dev/null +++ b/asm/nonmatchings/code_364300/func_E0062000.s @@ -0,0 +1,146 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0062000 +/* 364300 E0062000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 364304 E0062004 F7B40048 */ sdc1 $f20, 0x48($sp) +/* 364308 E0062008 4485A000 */ mtc1 $a1, $f20 +/* 36430C E006200C AFB1002C */ sw $s1, 0x2c($sp) +/* 364310 E0062010 0080882D */ daddu $s1, $a0, $zero +/* 364314 E0062014 F7B60050 */ sdc1 $f22, 0x50($sp) +/* 364318 E0062018 4486B000 */ mtc1 $a2, $f22 +/* 36431C E006201C 27A40010 */ addiu $a0, $sp, 0x10 +/* 364320 E0062020 F7B80058 */ sdc1 $f24, 0x58($sp) +/* 364324 E0062024 4487C000 */ mtc1 $a3, $f24 +/* 364328 E0062028 3C02E006 */ lui $v0, %hi(D_E0062218) +/* 36432C E006202C 24422218 */ addiu $v0, $v0, %lo(D_E0062218) +/* 364330 E0062030 AFA20018 */ sw $v0, 0x18($sp) +/* 364334 E0062034 3C02E006 */ lui $v0, %hi(D_E0062220) +/* 364338 E0062038 24422220 */ addiu $v0, $v0, %lo(D_E0062220) +/* 36433C E006203C AFA2001C */ sw $v0, 0x1c($sp) +/* 364340 E0062040 3C02E006 */ lui $v0, %hi(D_E00624A8) +/* 364344 E0062044 244224A8 */ addiu $v0, $v0, %lo(D_E00624A8) +/* 364348 E0062048 AFA20020 */ sw $v0, 0x20($sp) +/* 36434C E006204C 24020031 */ addiu $v0, $zero, 0x31 +/* 364350 E0062050 AFBF0040 */ sw $ra, 0x40($sp) +/* 364354 E0062054 AFB5003C */ sw $s5, 0x3c($sp) +/* 364358 E0062058 AFB40038 */ sw $s4, 0x38($sp) +/* 36435C E006205C AFB30034 */ sw $s3, 0x34($sp) +/* 364360 E0062060 AFB20030 */ sw $s2, 0x30($sp) +/* 364364 E0062064 AFB00028 */ sw $s0, 0x28($sp) +/* 364368 E0062068 F7BC0068 */ sdc1 $f28, 0x68($sp) +/* 36436C E006206C F7BA0060 */ sdc1 $f26, 0x60($sp) +/* 364370 E0062070 AFA00010 */ sw $zero, 0x10($sp) +/* 364374 E0062074 AFA00024 */ sw $zero, 0x24($sp) +/* 364378 E0062078 0C080124 */ jal func_E0200490 +/* 36437C E006207C AFA20014 */ sw $v0, 0x14($sp) +/* 364380 E0062080 24040200 */ addiu $a0, $zero, 0x200 +/* 364384 E0062084 24150008 */ addiu $s5, $zero, 8 +/* 364388 E0062088 0040A02D */ daddu $s4, $v0, $zero +/* 36438C E006208C 0C08012C */ jal func_E02004B0 +/* 364390 E0062090 AE950008 */ sw $s5, 8($s4) +/* 364394 E0062094 0040802D */ daddu $s0, $v0, $zero +/* 364398 E0062098 16000003 */ bnez $s0, .LE00620A8 +/* 36439C E006209C AE90000C */ sw $s0, 0xc($s4) +.LE00620A0: +/* 3643A0 E00620A0 08018828 */ j .LE00620A0 +/* 3643A4 E00620A4 00000000 */ nop +.LE00620A8: +/* 3643A8 E00620A8 0200202D */ daddu $a0, $s0, $zero +/* 3643AC E00620AC 0C080130 */ jal func_E02004C0 +/* 3643B0 E00620B0 00152980 */ sll $a1, $s5, 6 +/* 3643B4 E00620B4 2402001E */ addiu $v0, $zero, 0x1e +/* 3643B8 E00620B8 AE020024 */ sw $v0, 0x24($s0) +/* 3643BC E00620BC 240200FF */ addiu $v0, $zero, 0xff +/* 3643C0 E00620C0 AE000028 */ sw $zero, 0x28($s0) +/* 3643C4 E00620C4 A6110000 */ sh $s1, ($s0) +/* 3643C8 E00620C8 E6140004 */ swc1 $f20, 4($s0) +/* 3643CC E00620CC E6160008 */ swc1 $f22, 8($s0) +/* 3643D0 E00620D0 E618000C */ swc1 $f24, 0xc($s0) +/* 3643D4 E00620D4 16200009 */ bnez $s1, .LE00620FC +/* 3643D8 E00620D8 AE020034 */ sw $v0, 0x34($s0) +/* 3643DC E00620DC 24020014 */ addiu $v0, $zero, 0x14 +/* 3643E0 E00620E0 A202003B */ sb $v0, 0x3b($s0) +/* 3643E4 E00620E4 A2020038 */ sb $v0, 0x38($s0) +/* 3643E8 E00620E8 24020015 */ addiu $v0, $zero, 0x15 +/* 3643EC E00620EC A202003C */ sb $v0, 0x3c($s0) +/* 3643F0 E00620F0 A2020039 */ sb $v0, 0x39($s0) +/* 3643F4 E00620F4 08018846 */ j .LE0062118 +/* 3643F8 E00620F8 240200F2 */ addiu $v0, $zero, 0xf2 +.LE00620FC: +/* 3643FC E00620FC 240200C8 */ addiu $v0, $zero, 0xc8 +/* 364400 E0062100 A202003B */ sb $v0, 0x3b($s0) +/* 364404 E0062104 A2020038 */ sb $v0, 0x38($s0) +/* 364408 E0062108 24020015 */ addiu $v0, $zero, 0x15 +/* 36440C E006210C A202003C */ sb $v0, 0x3c($s0) +/* 364410 E0062110 A2020039 */ sb $v0, 0x39($s0) +/* 364414 E0062114 240200D4 */ addiu $v0, $zero, 0xd4 +.LE0062118: +/* 364418 E0062118 A202003D */ sb $v0, 0x3d($s0) +/* 36441C E006211C A202003A */ sb $v0, 0x3a($s0) +/* 364420 E0062120 24120001 */ addiu $s2, $zero, 1 +/* 364424 E0062124 0255102A */ slt $v0, $s2, $s5 +/* 364428 E0062128 1040002C */ beqz $v0, .LE00621DC +/* 36442C E006212C 26100040 */ addiu $s0, $s0, 0x40 +/* 364430 E0062130 26B3FFFF */ addiu $s3, $s5, -1 +/* 364434 E0062134 2610002C */ addiu $s0, $s0, 0x2c +/* 364438 E0062138 0000882D */ daddu $s1, $zero, $zero +/* 36443C E006213C 3C013F80 */ lui $at, 0x3f80 +/* 364440 E0062140 4481E000 */ mtc1 $at, $f28 +/* 364444 E0062144 3C0142B4 */ lui $at, 0x42b4 +/* 364448 E0062148 4481D000 */ mtc1 $at, $f26 +/* 36444C E006214C 3C013DCC */ lui $at, 0x3dcc +/* 364450 E0062150 3421CCCD */ ori $at, $at, 0xcccd +/* 364454 E0062154 4481C000 */ mtc1 $at, $f24 +.LE0062158: +/* 364458 E0062158 16600002 */ bnez $s3, .LE0062164 +/* 36445C E006215C 0233001A */ div $zero, $s1, $s3 +/* 364460 E0062160 0007000D */ break 7 +.LE0062164: +/* 364464 E0062164 2401FFFF */ addiu $at, $zero, -1 +/* 364468 E0062168 16610004 */ bne $s3, $at, .LE006217C +/* 36446C E006216C 3C018000 */ lui $at, 0x8000 +/* 364470 E0062170 16210002 */ bne $s1, $at, .LE006217C +/* 364474 E0062174 00000000 */ nop +/* 364478 E0062178 0006000D */ break 6 +.LE006217C: +/* 36447C E006217C 00001012 */ mflo $v0 +/* 364480 E0062180 4482B000 */ mtc1 $v0, $f22 +/* 364484 E0062184 00000000 */ nop +/* 364488 E0062188 4680B5A0 */ cvt.s.w $f22, $f22 +/* 36448C E006218C 461AB500 */ add.s $f20, $f22, $f26 +/* 364490 E0062190 26310168 */ addiu $s1, $s1, 0x168 +/* 364494 E0062194 26520001 */ addiu $s2, $s2, 1 +/* 364498 E0062198 0C080144 */ jal func_E0200510 +/* 36449C E006219C 4600A306 */ mov.s $f12, $f20 +/* 3644A0 E00621A0 4600A306 */ mov.s $f12, $f20 +/* 3644A4 E00621A4 0C080140 */ jal func_E0200500 +/* 3644A8 E00621A8 E600FFD8 */ swc1 $f0, -0x28($s0) +/* 3644AC E00621AC E600FFDC */ swc1 $f0, -0x24($s0) +/* 3644B0 E00621B0 AE00FFE0 */ sw $zero, -0x20($s0) +/* 3644B4 E00621B4 AE00FFE4 */ sw $zero, -0x1c($s0) +/* 3644B8 E00621B8 AE00FFE8 */ sw $zero, -0x18($s0) +/* 3644BC E00621BC AE00FFEC */ sw $zero, -0x14($s0) +/* 3644C0 E00621C0 E618FFF0 */ swc1 $f24, -0x10($s0) +/* 3644C4 E00621C4 E618FFF4 */ swc1 $f24, -0xc($s0) +/* 3644C8 E00621C8 E61C0004 */ swc1 $f28, 4($s0) +/* 3644CC E00621CC E6160000 */ swc1 $f22, ($s0) +/* 3644D0 E00621D0 0255102A */ slt $v0, $s2, $s5 +/* 3644D4 E00621D4 1440FFE0 */ bnez $v0, .LE0062158 +/* 3644D8 E00621D8 26100040 */ addiu $s0, $s0, 0x40 +.LE00621DC: +/* 3644DC E00621DC 0280102D */ daddu $v0, $s4, $zero +/* 3644E0 E00621E0 8FBF0040 */ lw $ra, 0x40($sp) +/* 3644E4 E00621E4 8FB5003C */ lw $s5, 0x3c($sp) +/* 3644E8 E00621E8 8FB40038 */ lw $s4, 0x38($sp) +/* 3644EC E00621EC 8FB30034 */ lw $s3, 0x34($sp) +/* 3644F0 E00621F0 8FB20030 */ lw $s2, 0x30($sp) +/* 3644F4 E00621F4 8FB1002C */ lw $s1, 0x2c($sp) +/* 3644F8 E00621F8 8FB00028 */ lw $s0, 0x28($sp) +/* 3644FC E00621FC D7BC0068 */ ldc1 $f28, 0x68($sp) +/* 364500 E0062200 D7BA0060 */ ldc1 $f26, 0x60($sp) +/* 364504 E0062204 D7B80058 */ ldc1 $f24, 0x58($sp) +/* 364508 E0062208 D7B60050 */ ldc1 $f22, 0x50($sp) +/* 36450C E006220C D7B40048 */ ldc1 $f20, 0x48($sp) +/* 364510 E0062210 03E00008 */ jr $ra +/* 364514 E0062214 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_364300/func_E0062218.s b/asm/nonmatchings/code_364300/func_E0062218.s new file mode 100644 index 0000000000..bc4d74894a --- /dev/null +++ b/asm/nonmatchings/code_364300/func_E0062218.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0062218 +/* 364518 E0062218 03E00008 */ jr $ra +/* 36451C E006221C 00000000 */ nop diff --git a/asm/nonmatchings/code_364300/func_E0062220.s b/asm/nonmatchings/code_364300/func_E0062220.s new file mode 100644 index 0000000000..463a10bc46 --- /dev/null +++ b/asm/nonmatchings/code_364300/func_E0062220.s @@ -0,0 +1,172 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0062220 +/* 364520 E0062220 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 364524 E0062224 AFB3001C */ sw $s3, 0x1c($sp) +/* 364528 E0062228 0080982D */ daddu $s3, $a0, $zero +/* 36452C E006222C AFBF0020 */ sw $ra, 0x20($sp) +/* 364530 E0062230 AFB20018 */ sw $s2, 0x18($sp) +/* 364534 E0062234 AFB10014 */ sw $s1, 0x14($sp) +/* 364538 E0062238 AFB00010 */ sw $s0, 0x10($sp) +/* 36453C E006223C F7B80038 */ sdc1 $f24, 0x38($sp) +/* 364540 E0062240 F7B60030 */ sdc1 $f22, 0x30($sp) +/* 364544 E0062244 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 364548 E0062248 8E64000C */ lw $a0, 0xc($s3) +/* 36454C E006224C 8C820028 */ lw $v0, 0x28($a0) +/* 364550 E0062250 8C830024 */ lw $v1, 0x24($a0) +/* 364554 E0062254 24420001 */ addiu $v0, $v0, 1 +/* 364558 E0062258 2463FFFF */ addiu $v1, $v1, -1 +/* 36455C E006225C AC820028 */ sw $v0, 0x28($a0) +/* 364560 E0062260 04610005 */ bgez $v1, .LE0062278 +/* 364564 E0062264 AC830024 */ sw $v1, 0x24($a0) +/* 364568 E0062268 0C080128 */ jal func_E02004A0 +/* 36456C E006226C 0260202D */ daddu $a0, $s3, $zero +/* 364570 E0062270 08018920 */ j .LE0062480 +/* 364574 E0062274 00000000 */ nop +.LE0062278: +/* 364578 E0062278 8C920028 */ lw $s2, 0x28($a0) +/* 36457C E006227C 2A42000B */ slti $v0, $s2, 0xb +/* 364580 E0062280 14400009 */ bnez $v0, .LE00622A8 +/* 364584 E0062284 00000000 */ nop +/* 364588 E0062288 3C01E006 */ lui $at, %hi(D_E00628D0) +/* 36458C E006228C D42228D0 */ ldc1 $f2, %lo(D_E00628D0)($at) +/* 364590 E0062290 C4800034 */ lwc1 $f0, 0x34($a0) +/* 364594 E0062294 46800021 */ cvt.d.w $f0, $f0 +/* 364598 E0062298 46220002 */ mul.d $f0, $f0, $f2 +/* 36459C E006229C 00000000 */ nop +/* 3645A0 E00622A0 4620038D */ trunc.w.d $f14, $f0 +/* 3645A4 E00622A4 E48E0034 */ swc1 $f14, 0x34($a0) +.LE00622A8: +/* 3645A8 E00622A8 8E620008 */ lw $v0, 8($s3) +/* 3645AC E00622AC 24110001 */ addiu $s1, $zero, 1 +/* 3645B0 E00622B0 0222102A */ slt $v0, $s1, $v0 +/* 3645B4 E00622B4 10400072 */ beqz $v0, .LE0062480 +/* 3645B8 E00622B8 24840040 */ addiu $a0, $a0, 0x40 +/* 3645BC E00622BC 24900008 */ addiu $s0, $a0, 8 +/* 3645C0 E00622C0 3C01E006 */ lui $at, %hi(D_E00628D8) +/* 3645C4 E00622C4 D43428D8 */ ldc1 $f20, %lo(D_E00628D8)($at) +/* 3645C8 E00622C8 3C01E006 */ lui $at, %hi(D_E00628E0) +/* 3645CC E00622CC D43628E0 */ ldc1 $f22, %lo(D_E00628E0)($at) +/* 3645D0 E00622D0 3C0142B4 */ lui $at, 0x42b4 +/* 3645D4 E00622D4 4481C000 */ mtc1 $at, $f24 +.LE00622D8: +/* 3645D8 E00622D8 2A42000B */ slti $v0, $s2, 0xb +/* 3645DC E00622DC 1440002B */ bnez $v0, .LE006238C +/* 3645E0 E00622E0 2A42000A */ slti $v0, $s2, 0xa +/* 3645E4 E00622E4 C60A0014 */ lwc1 $f10, 0x14($s0) +/* 3645E8 E00622E8 3C013FF0 */ lui $at, 0x3ff0 +/* 3645EC E00622EC 44816800 */ mtc1 $at, $f13 +/* 3645F0 E00622F0 44806000 */ mtc1 $zero, $f12 +/* 3645F4 E00622F4 460052A1 */ cvt.d.s $f10, $f10 +/* 3645F8 E00622F8 462A6301 */ sub.d $f12, $f12, $f10 +/* 3645FC E00622FC 46346302 */ mul.d $f12, $f12, $f20 +/* 364600 E0062300 00000000 */ nop +/* 364604 E0062304 C6080018 */ lwc1 $f8, 0x18($s0) +/* 364608 E0062308 3C014019 */ lui $at, 0x4019 +/* 36460C E006230C 3421999A */ ori $at, $at, 0x999a +/* 364610 E0062310 44812000 */ mtc1 $at, $f4 +/* 364614 E0062314 00000000 */ nop +/* 364618 E0062318 46082101 */ sub.s $f4, $f4, $f8 +/* 36461C E006231C 46002121 */ cvt.d.s $f4, $f4 +/* 364620 E0062320 46342102 */ mul.d $f4, $f4, $f20 +/* 364624 E0062324 00000000 */ nop +/* 364628 E0062328 C6060028 */ lwc1 $f6, 0x28($s0) +/* 36462C E006232C 3C0142C8 */ lui $at, 0x42c8 +/* 364630 E0062330 44811000 */ mtc1 $at, $f2 +/* 364634 E0062334 00000000 */ nop +/* 364638 E0062338 46061081 */ sub.s $f2, $f2, $f6 +/* 36463C E006233C 3C01E006 */ lui $at, %hi(D_E00628E8) +/* 364640 E0062340 D42028E8 */ ldc1 $f0, %lo(D_E00628E8)($at) +/* 364644 E0062344 460010A1 */ cvt.d.s $f2, $f2 +/* 364648 E0062348 46201082 */ mul.d $f2, $f2, $f0 +/* 36464C E006234C 00000000 */ nop +/* 364650 E0062350 3C01E006 */ lui $at, %hi(D_E00628F0) +/* 364654 E0062354 D42028F0 */ ldc1 $f0, %lo(D_E00628F0)($at) +/* 364658 E0062358 46201082 */ mul.d $f2, $f2, $f0 +/* 36465C E006235C 00000000 */ nop +/* 364660 E0062360 462C5280 */ add.d $f10, $f10, $f12 +/* 364664 E0062364 46004221 */ cvt.d.s $f8, $f8 +/* 364668 E0062368 46244200 */ add.d $f8, $f8, $f4 +/* 36466C E006236C 460031A1 */ cvt.d.s $f6, $f6 +/* 364670 E0062370 462052A0 */ cvt.s.d $f10, $f10 +/* 364674 E0062374 46204220 */ cvt.s.d $f8, $f8 +/* 364678 E0062378 46223180 */ add.d $f6, $f6, $f2 +/* 36467C E006237C E60A0014 */ swc1 $f10, 0x14($s0) +/* 364680 E0062380 E6080018 */ swc1 $f8, 0x18($s0) +/* 364684 E0062384 462031A0 */ cvt.s.d $f6, $f6 +/* 364688 E0062388 E6060028 */ swc1 $f6, 0x28($s0) +.LE006238C: +/* 36468C E006238C 10400029 */ beqz $v0, .LE0062434 +/* 364690 E0062390 00000000 */ nop +/* 364694 E0062394 C60C0014 */ lwc1 $f12, 0x14($s0) +/* 364698 E0062398 3C0140E0 */ lui $at, 0x40e0 +/* 36469C E006239C 44814000 */ mtc1 $at, $f8 +/* 3646A0 E00623A0 00000000 */ nop +/* 3646A4 E00623A4 460C4201 */ sub.s $f8, $f8, $f12 +/* 3646A8 E00623A8 46004221 */ cvt.d.s $f8, $f8 +/* 3646AC E00623AC 46364202 */ mul.d $f8, $f8, $f22 +/* 3646B0 E00623B0 00000000 */ nop +/* 3646B4 E00623B4 C60A0018 */ lwc1 $f10, 0x18($s0) +/* 3646B8 E00623B8 3C013F80 */ lui $at, 0x3f80 +/* 3646BC E00623BC 44812000 */ mtc1 $at, $f4 +/* 3646C0 E00623C0 00000000 */ nop +/* 3646C4 E00623C4 460A2101 */ sub.s $f4, $f4, $f10 +/* 3646C8 E00623C8 46002121 */ cvt.d.s $f4, $f4 +/* 3646CC E00623CC 46342102 */ mul.d $f4, $f4, $f20 +/* 3646D0 E00623D0 00000000 */ nop +/* 3646D4 E00623D4 C6060028 */ lwc1 $f6, 0x28($s0) +/* 3646D8 E00623D8 3C014120 */ lui $at, 0x4120 +/* 3646DC E00623DC 44811000 */ mtc1 $at, $f2 +/* 3646E0 E00623E0 00000000 */ nop +/* 3646E4 E00623E4 46061081 */ sub.s $f2, $f2, $f6 +/* 3646E8 E00623E8 460010A1 */ cvt.d.s $f2, $f2 +/* 3646EC E00623EC 46361082 */ mul.d $f2, $f2, $f22 +/* 3646F0 E00623F0 00000000 */ nop +/* 3646F4 E00623F4 3C01E006 */ lui $at, %hi(D_E00628F8) +/* 3646F8 E00623F8 D42028F8 */ ldc1 $f0, %lo(D_E00628F8)($at) +/* 3646FC E00623FC 46201082 */ mul.d $f2, $f2, $f0 +/* 364700 E0062400 00000000 */ nop +/* 364704 E0062404 46006321 */ cvt.d.s $f12, $f12 +/* 364708 E0062408 46286300 */ add.d $f12, $f12, $f8 +/* 36470C E006240C 460052A1 */ cvt.d.s $f10, $f10 +/* 364710 E0062410 46245280 */ add.d $f10, $f10, $f4 +/* 364714 E0062414 460031A1 */ cvt.d.s $f6, $f6 +/* 364718 E0062418 46206320 */ cvt.s.d $f12, $f12 +/* 36471C E006241C 462052A0 */ cvt.s.d $f10, $f10 +/* 364720 E0062420 46223180 */ add.d $f6, $f6, $f2 +/* 364724 E0062424 E60C0014 */ swc1 $f12, 0x14($s0) +/* 364728 E0062428 E60A0018 */ swc1 $f10, 0x18($s0) +/* 36472C E006242C 462031A0 */ cvt.s.d $f6, $f6 +/* 364730 E0062430 E6060028 */ swc1 $f6, 0x28($s0) +.LE0062434: +/* 364734 E0062434 C60C0024 */ lwc1 $f12, 0x24($s0) +/* 364738 E0062438 0C080144 */ jal func_E0200510 +/* 36473C E006243C 46186300 */ add.s $f12, $f12, $f24 +/* 364740 E0062440 C6020028 */ lwc1 $f2, 0x28($s0) +/* 364744 E0062444 46020002 */ mul.s $f0, $f0, $f2 +/* 364748 E0062448 00000000 */ nop +/* 36474C E006244C C60C0024 */ lwc1 $f12, 0x24($s0) +/* 364750 E0062450 46186300 */ add.s $f12, $f12, $f24 +/* 364754 E0062454 0C080140 */ jal func_E0200500 +/* 364758 E0062458 E600FFFC */ swc1 $f0, -4($s0) +/* 36475C E006245C C6020028 */ lwc1 $f2, 0x28($s0) +/* 364760 E0062460 46020002 */ mul.s $f0, $f0, $f2 +/* 364764 E0062464 00000000 */ nop +/* 364768 E0062468 26310001 */ addiu $s1, $s1, 1 +/* 36476C E006246C E6000000 */ swc1 $f0, ($s0) +/* 364770 E0062470 8E620008 */ lw $v0, 8($s3) +/* 364774 E0062474 0222102A */ slt $v0, $s1, $v0 +/* 364778 E0062478 1440FF97 */ bnez $v0, .LE00622D8 +/* 36477C E006247C 26100040 */ addiu $s0, $s0, 0x40 +.LE0062480: +/* 364780 E0062480 8FBF0020 */ lw $ra, 0x20($sp) +/* 364784 E0062484 8FB3001C */ lw $s3, 0x1c($sp) +/* 364788 E0062488 8FB20018 */ lw $s2, 0x18($sp) +/* 36478C E006248C 8FB10014 */ lw $s1, 0x14($sp) +/* 364790 E0062490 8FB00010 */ lw $s0, 0x10($sp) +/* 364794 E0062494 D7B80038 */ ldc1 $f24, 0x38($sp) +/* 364798 E0062498 D7B60030 */ ldc1 $f22, 0x30($sp) +/* 36479C E006249C D7B40028 */ ldc1 $f20, 0x28($sp) +/* 3647A0 E00624A0 03E00008 */ jr $ra +/* 3647A4 E00624A4 27BD0040 */ addiu $sp, $sp, 0x40 diff --git a/asm/nonmatchings/code_364300/func_E00624A8.s b/asm/nonmatchings/code_364300/func_E00624A8.s new file mode 100644 index 0000000000..f80f07b1f5 --- /dev/null +++ b/asm/nonmatchings/code_364300/func_E00624A8.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00624A8 +/* 3647A8 E00624A8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3647AC E00624AC 3C02E006 */ lui $v0, %hi(D_E00624EC) +/* 3647B0 E00624B0 244224EC */ addiu $v0, $v0, %lo(D_E00624EC) +/* 3647B4 E00624B4 AFA2001C */ sw $v0, 0x1c($sp) +/* 3647B8 E00624B8 24020028 */ addiu $v0, $zero, 0x28 +/* 3647BC E00624BC AFA40018 */ sw $a0, 0x18($sp) +/* 3647C0 E00624C0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3647C4 E00624C4 AFBF0020 */ sw $ra, 0x20($sp) +/* 3647C8 E00624C8 AFA00014 */ sw $zero, 0x14($sp) +/* 3647CC E00624CC 0C080120 */ jal func_E0200480 +/* 3647D0 E00624D0 AFA20010 */ sw $v0, 0x10($sp) +/* 3647D4 E00624D4 8C430000 */ lw $v1, ($v0) +/* 3647D8 E00624D8 34630002 */ ori $v1, $v1, 2 +/* 3647DC E00624DC AC430000 */ sw $v1, ($v0) +/* 3647E0 E00624E0 8FBF0020 */ lw $ra, 0x20($sp) +/* 3647E4 E00624E4 03E00008 */ jr $ra +/* 3647E8 E00624E8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_364300/func_E00624EC.s b/asm/nonmatchings/code_364300/func_E00624EC.s new file mode 100644 index 0000000000..c228208582 --- /dev/null +++ b/asm/nonmatchings/code_364300/func_E00624EC.s @@ -0,0 +1,251 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00624EC +/* 3647EC E00624EC 27BDFEE0 */ addiu $sp, $sp, -0x120 +/* 3647F0 E00624F0 AFBE0100 */ sw $fp, 0x100($sp) +/* 3647F4 E00624F4 0080F02D */ daddu $fp, $a0, $zero +/* 3647F8 E00624F8 3C07DB06 */ lui $a3, 0xdb06 +/* 3647FC E00624FC 34E70024 */ ori $a3, $a3, 0x24 +/* 364800 E0062500 27A40018 */ addiu $a0, $sp, 0x18 +/* 364804 E0062504 AFB100E4 */ sw $s1, 0xe4($sp) +/* 364808 E0062508 3C110001 */ lui $s1, 1 +/* 36480C E006250C 36311630 */ ori $s1, $s1, 0x1630 +/* 364810 E0062510 AFB300EC */ sw $s3, 0xec($sp) +/* 364814 E0062514 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 364818 E0062518 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 36481C E006251C AFBF0104 */ sw $ra, 0x104($sp) +/* 364820 E0062520 AFB700FC */ sw $s7, 0xfc($sp) +/* 364824 E0062524 AFB600F8 */ sw $s6, 0xf8($sp) +/* 364828 E0062528 AFB500F4 */ sw $s5, 0xf4($sp) +/* 36482C E006252C AFB400F0 */ sw $s4, 0xf0($sp) +/* 364830 E0062530 AFB200E8 */ sw $s2, 0xe8($sp) +/* 364834 E0062534 AFB000E0 */ sw $s0, 0xe0($sp) +/* 364838 E0062538 F7B80118 */ sdc1 $f24, 0x118($sp) +/* 36483C E006253C F7B60110 */ sdc1 $f22, 0x110($sp) +/* 364840 E0062540 F7B40108 */ sdc1 $f20, 0x108($sp) +/* 364844 E0062544 8E630000 */ lw $v1, ($s3) +/* 364848 E0062548 8FD2000C */ lw $s2, 0xc($fp) +/* 36484C E006254C 0060282D */ daddu $a1, $v1, $zero +/* 364850 E0062550 24630008 */ addiu $v1, $v1, 8 +/* 364854 E0062554 AE630000 */ sw $v1, ($s3) +/* 364858 E0062558 3C08E006 */ lui $t0, %hi(D_E00628C0) +/* 36485C E006255C 8D0828C0 */ lw $t0, %lo(D_E00628C0)($t0) +/* 364860 E0062560 3C06E006 */ lui $a2, %hi(D_E00628C4) +/* 364864 E0062564 8CC628C4 */ lw $a2, %lo(D_E00628C4)($a2) +/* 364868 E0062568 3C02E700 */ lui $v0, 0xe700 +/* 36486C E006256C AFA800D8 */ sw $t0, 0xd8($sp) +/* 364870 E0062570 ACA20000 */ sw $v0, ($a1) +/* 364874 E0062574 ACA00004 */ sw $zero, 4($a1) +/* 364878 E0062578 AC670000 */ sw $a3, ($v1) +/* 36487C E006257C 8FC50010 */ lw $a1, 0x10($fp) +/* 364880 E0062580 24620008 */ addiu $v0, $v1, 8 +/* 364884 E0062584 AE620000 */ sw $v0, ($s3) +/* 364888 E0062588 8CA5001C */ lw $a1, 0x1c($a1) +/* 36488C E006258C 3C02DE00 */ lui $v0, 0xde00 +/* 364890 E0062590 AC620008 */ sw $v0, 8($v1) +/* 364894 E0062594 3C028000 */ lui $v0, 0x8000 +/* 364898 E0062598 AC66000C */ sw $a2, 0xc($v1) +/* 36489C E006259C 00A22821 */ addu $a1, $a1, $v0 +/* 3648A0 E00625A0 AC650004 */ sw $a1, 4($v1) +/* 3648A4 E00625A4 8E450004 */ lw $a1, 4($s2) +/* 3648A8 E00625A8 8E460008 */ lw $a2, 8($s2) +/* 3648AC E00625AC 8E47000C */ lw $a3, 0xc($s2) +/* 3648B0 E00625B0 24630010 */ addiu $v1, $v1, 0x10 +/* 3648B4 E00625B4 0C080108 */ jal func_E0200420 +/* 3648B8 E00625B8 AE630000 */ sw $v1, ($s3) +/* 3648BC E00625BC 27B50058 */ addiu $s5, $sp, 0x58 +/* 3648C0 E00625C0 4480A000 */ mtc1 $zero, $f20 +/* 3648C4 E00625C4 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3648C8 E00625C8 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3648CC E00625CC 3C013F80 */ lui $at, 0x3f80 +/* 3648D0 E00625D0 4481C000 */ mtc1 $at, $f24 +/* 3648D4 E00625D4 00031080 */ sll $v0, $v1, 2 +/* 3648D8 E00625D8 00431021 */ addu $v0, $v0, $v1 +/* 3648DC E00625DC 00021080 */ sll $v0, $v0, 2 +/* 3648E0 E00625E0 00431023 */ subu $v0, $v0, $v1 +/* 3648E4 E00625E4 000218C0 */ sll $v1, $v0, 3 +/* 3648E8 E00625E8 00431021 */ addu $v0, $v0, $v1 +/* 3648EC E00625EC 000210C0 */ sll $v0, $v0, 3 +/* 3648F0 E00625F0 4406A000 */ mfc1 $a2, $f20 +/* 3648F4 E00625F4 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3648F8 E00625F8 00220821 */ addu $at, $at, $v0 +/* 3648FC E00625FC C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 364900 E0062600 4407C000 */ mfc1 $a3, $f24 +/* 364904 E0062604 46000007 */ neg.s $f0, $f0 +/* 364908 E0062608 44050000 */ mfc1 $a1, $f0 +/* 36490C E006260C 02A0202D */ daddu $a0, $s5, $zero +/* 364910 E0062610 0C080104 */ jal func_E0200410 +/* 364914 E0062614 E7B40010 */ swc1 $f20, 0x10($sp) +/* 364918 E0062618 02A0202D */ daddu $a0, $s5, $zero +/* 36491C E006261C 27A50018 */ addiu $a1, $sp, 0x18 +/* 364920 E0062620 27B00098 */ addiu $s0, $sp, 0x98 +/* 364924 E0062624 0C080114 */ jal func_E0200450 +/* 364928 E0062628 0200302D */ daddu $a2, $s0, $zero +/* 36492C E006262C 0200202D */ daddu $a0, $s0, $zero +/* 364930 E0062630 3C108007 */ lui $s0, %hi(D_800741F0) +/* 364934 E0062634 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 364938 E0062638 3C16800A */ lui $s6, %hi(D_8009A674) +/* 36493C E006263C 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 364940 E0062640 96050000 */ lhu $a1, ($s0) +/* 364944 E0062644 8EC20000 */ lw $v0, ($s6) +/* 364948 E0062648 00052980 */ sll $a1, $a1, 6 +/* 36494C E006264C 00B12821 */ addu $a1, $a1, $s1 +/* 364950 E0062650 0C080118 */ jal func_E0200460 +/* 364954 E0062654 00452821 */ addu $a1, $v0, $a1 +/* 364958 E0062658 8E660000 */ lw $a2, ($s3) +/* 36495C E006265C 24140001 */ addiu $s4, $zero, 1 +/* 364960 E0062660 00C0202D */ daddu $a0, $a2, $zero +/* 364964 E0062664 24C60008 */ addiu $a2, $a2, 8 +/* 364968 E0062668 AE660000 */ sw $a2, ($s3) +/* 36496C E006266C 96020000 */ lhu $v0, ($s0) +/* 364970 E0062670 3C03DA38 */ lui $v1, 0xda38 +/* 364974 E0062674 AC830000 */ sw $v1, ($a0) +/* 364978 E0062678 00541821 */ addu $v1, $v0, $s4 +/* 36497C E006267C 3042FFFF */ andi $v0, $v0, 0xffff +/* 364980 E0062680 00021180 */ sll $v0, $v0, 6 +/* 364984 E0062684 A6030000 */ sh $v1, ($s0) +/* 364988 E0062688 8EC30000 */ lw $v1, ($s6) +/* 36498C E006268C 00511021 */ addu $v0, $v0, $s1 +/* 364990 E0062690 00621821 */ addu $v1, $v1, $v0 +/* 364994 E0062694 24C20008 */ addiu $v0, $a2, 8 +/* 364998 E0062698 AC830004 */ sw $v1, 4($a0) +/* 36499C E006269C AE620000 */ sw $v0, ($s3) +/* 3649A0 E00626A0 3C02FA00 */ lui $v0, 0xfa00 +/* 3649A4 E00626A4 ACC20000 */ sw $v0, ($a2) +/* 3649A8 E00626A8 92420038 */ lbu $v0, 0x38($s2) +/* 3649AC E00626AC 92440039 */ lbu $a0, 0x39($s2) +/* 3649B0 E00626B0 9245003A */ lbu $a1, 0x3a($s2) +/* 3649B4 E00626B4 92470037 */ lbu $a3, 0x37($s2) +/* 3649B8 E00626B8 24C30010 */ addiu $v1, $a2, 0x10 +/* 3649BC E00626BC AE630000 */ sw $v1, ($s3) +/* 3649C0 E00626C0 3C03FB00 */ lui $v1, 0xfb00 +/* 3649C4 E00626C4 ACC30008 */ sw $v1, 8($a2) +/* 3649C8 E00626C8 00021600 */ sll $v0, $v0, 0x18 +/* 3649CC E00626CC 00042400 */ sll $a0, $a0, 0x10 +/* 3649D0 E00626D0 00441025 */ or $v0, $v0, $a0 +/* 3649D4 E00626D4 00052A00 */ sll $a1, $a1, 8 +/* 3649D8 E00626D8 00451025 */ or $v0, $v0, $a1 +/* 3649DC E00626DC 00471025 */ or $v0, $v0, $a3 +/* 3649E0 E00626E0 ACC20004 */ sw $v0, 4($a2) +/* 3649E4 E00626E4 9242003B */ lbu $v0, 0x3b($s2) +/* 3649E8 E00626E8 9244003C */ lbu $a0, 0x3c($s2) +/* 3649EC E00626EC 9243003D */ lbu $v1, 0x3d($s2) +/* 3649F0 E00626F0 00021600 */ sll $v0, $v0, 0x18 +/* 3649F4 E00626F4 00042400 */ sll $a0, $a0, 0x10 +/* 3649F8 E00626F8 00441025 */ or $v0, $v0, $a0 +/* 3649FC E00626FC 00031A00 */ sll $v1, $v1, 8 +/* 364A00 E0062700 00431025 */ or $v0, $v0, $v1 +/* 364A04 E0062704 ACC2000C */ sw $v0, 0xc($a2) +/* 364A08 E0062708 8FC20008 */ lw $v0, 8($fp) +/* 364A0C E006270C 0282102A */ slt $v0, $s4, $v0 +/* 364A10 E0062710 10400049 */ beqz $v0, .LE0062838 +/* 364A14 E0062714 26520040 */ addiu $s2, $s2, 0x40 +/* 364A18 E0062718 02A0882D */ daddu $s1, $s5, $zero +/* 364A1C E006271C 4600A586 */ mov.s $f22, $f20 +/* 364A20 E0062720 4600C506 */ mov.s $f20, $f24 +/* 364A24 E0062724 02C0B82D */ daddu $s7, $s6, $zero +/* 364A28 E0062728 0200B02D */ daddu $s6, $s0, $zero +/* 364A2C E006272C 3C150001 */ lui $s5, 1 +/* 364A30 E0062730 36B51630 */ ori $s5, $s5, 0x1630 +/* 364A34 E0062734 2650001C */ addiu $s0, $s2, 0x1c +.LE0062738: +/* 364A38 E0062738 27A40018 */ addiu $a0, $sp, 0x18 +/* 364A3C E006273C 8E05FFE8 */ lw $a1, -0x18($s0) +/* 364A40 E0062740 8E06FFEC */ lw $a2, -0x14($s0) +/* 364A44 E0062744 8E07FFF0 */ lw $a3, -0x10($s0) +/* 364A48 E0062748 0C080108 */ jal func_E0200420 +/* 364A4C E006274C 26940001 */ addiu $s4, $s4, 1 +/* 364A50 E0062750 E7B40010 */ swc1 $f20, 0x10($sp) +/* 364A54 E0062754 8E050010 */ lw $a1, 0x10($s0) +/* 364A58 E0062758 4406B000 */ mfc1 $a2, $f22 +/* 364A5C E006275C 4407B000 */ mfc1 $a3, $f22 +/* 364A60 E0062760 0C080104 */ jal func_E0200410 +/* 364A64 E0062764 0220202D */ daddu $a0, $s1, $zero +/* 364A68 E0062768 0220202D */ daddu $a0, $s1, $zero +/* 364A6C E006276C 27A50018 */ addiu $a1, $sp, 0x18 +/* 364A70 E0062770 0C080114 */ jal func_E0200450 +/* 364A74 E0062774 00A0302D */ daddu $a2, $a1, $zero +/* 364A78 E0062778 0220202D */ daddu $a0, $s1, $zero +/* 364A7C E006277C 8E050004 */ lw $a1, 4($s0) +/* 364A80 E0062780 8E060000 */ lw $a2, ($s0) +/* 364A84 E0062784 4407A000 */ mfc1 $a3, $f20 +/* 364A88 E0062788 0C080110 */ jal func_E0200440 +/* 364A8C E006278C 26100040 */ addiu $s0, $s0, 0x40 +/* 364A90 E0062790 0220202D */ daddu $a0, $s1, $zero +/* 364A94 E0062794 27A50018 */ addiu $a1, $sp, 0x18 +/* 364A98 E0062798 0C080114 */ jal func_E0200450 +/* 364A9C E006279C 00A0302D */ daddu $a2, $a1, $zero +/* 364AA0 E00627A0 27A40018 */ addiu $a0, $sp, 0x18 +/* 364AA4 E00627A4 96C50000 */ lhu $a1, ($s6) +/* 364AA8 E00627A8 8EE20000 */ lw $v0, ($s7) +/* 364AAC E00627AC 00052980 */ sll $a1, $a1, 6 +/* 364AB0 E00627B0 00B52821 */ addu $a1, $a1, $s5 +/* 364AB4 E00627B4 0C080118 */ jal func_E0200460 +/* 364AB8 E00627B8 00452821 */ addu $a1, $v0, $a1 +/* 364ABC E00627BC 3C06D838 */ lui $a2, 0xd838 +/* 364AC0 E00627C0 8E640000 */ lw $a0, ($s3) +/* 364AC4 E00627C4 34C60002 */ ori $a2, $a2, 2 +/* 364AC8 E00627C8 0080282D */ daddu $a1, $a0, $zero +/* 364ACC E00627CC 24840008 */ addiu $a0, $a0, 8 +/* 364AD0 E00627D0 AE640000 */ sw $a0, ($s3) +/* 364AD4 E00627D4 96C20000 */ lhu $v0, ($s6) +/* 364AD8 E00627D8 3C03DA38 */ lui $v1, 0xda38 +/* 364ADC E00627DC ACA30000 */ sw $v1, ($a1) +/* 364AE0 E00627E0 24430001 */ addiu $v1, $v0, 1 +/* 364AE4 E00627E4 3042FFFF */ andi $v0, $v0, 0xffff +/* 364AE8 E00627E8 00021180 */ sll $v0, $v0, 6 +/* 364AEC E00627EC A6C30000 */ sh $v1, ($s6) +/* 364AF0 E00627F0 8EE30000 */ lw $v1, ($s7) +/* 364AF4 E00627F4 00551021 */ addu $v0, $v0, $s5 +/* 364AF8 E00627F8 00621821 */ addu $v1, $v1, $v0 +/* 364AFC E00627FC 24820008 */ addiu $v0, $a0, 8 +/* 364B00 E0062800 ACA30004 */ sw $v1, 4($a1) +/* 364B04 E0062804 AE620000 */ sw $v0, ($s3) +/* 364B08 E0062808 3C02DE00 */ lui $v0, 0xde00 +/* 364B0C E006280C AC820000 */ sw $v0, ($a0) +/* 364B10 E0062810 8FA800D8 */ lw $t0, 0xd8($sp) +/* 364B14 E0062814 24020040 */ addiu $v0, $zero, 0x40 +/* 364B18 E0062818 AC860008 */ sw $a2, 8($a0) +/* 364B1C E006281C AC82000C */ sw $v0, 0xc($a0) +/* 364B20 E0062820 AC880004 */ sw $t0, 4($a0) +/* 364B24 E0062824 8FC20008 */ lw $v0, 8($fp) +/* 364B28 E0062828 24840010 */ addiu $a0, $a0, 0x10 +/* 364B2C E006282C 0282102A */ slt $v0, $s4, $v0 +/* 364B30 E0062830 1440FFC1 */ bnez $v0, .LE0062738 +/* 364B34 E0062834 AE640000 */ sw $a0, ($s3) +.LE0062838: +/* 364B38 E0062838 3C03D838 */ lui $v1, 0xd838 +/* 364B3C E006283C 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 364B40 E0062840 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 364B44 E0062844 8C820000 */ lw $v0, ($a0) +/* 364B48 E0062848 34630002 */ ori $v1, $v1, 2 +/* 364B4C E006284C 0040282D */ daddu $a1, $v0, $zero +/* 364B50 E0062850 24420008 */ addiu $v0, $v0, 8 +/* 364B54 E0062854 AC820000 */ sw $v0, ($a0) +/* 364B58 E0062858 ACA30000 */ sw $v1, ($a1) +/* 364B5C E006285C 24030040 */ addiu $v1, $zero, 0x40 +/* 364B60 E0062860 ACA30004 */ sw $v1, 4($a1) +/* 364B64 E0062864 24430008 */ addiu $v1, $v0, 8 +/* 364B68 E0062868 AC830000 */ sw $v1, ($a0) +/* 364B6C E006286C 3C03E700 */ lui $v1, 0xe700 +/* 364B70 E0062870 AC430000 */ sw $v1, ($v0) +/* 364B74 E0062874 AC400004 */ sw $zero, 4($v0) +/* 364B78 E0062878 8FBF0104 */ lw $ra, 0x104($sp) +/* 364B7C E006287C 8FBE0100 */ lw $fp, 0x100($sp) +/* 364B80 E0062880 8FB700FC */ lw $s7, 0xfc($sp) +/* 364B84 E0062884 8FB600F8 */ lw $s6, 0xf8($sp) +/* 364B88 E0062888 8FB500F4 */ lw $s5, 0xf4($sp) +/* 364B8C E006288C 8FB400F0 */ lw $s4, 0xf0($sp) +/* 364B90 E0062890 8FB300EC */ lw $s3, 0xec($sp) +/* 364B94 E0062894 8FB200E8 */ lw $s2, 0xe8($sp) +/* 364B98 E0062898 8FB100E4 */ lw $s1, 0xe4($sp) +/* 364B9C E006289C 8FB000E0 */ lw $s0, 0xe0($sp) +/* 364BA0 E00628A0 D7B80118 */ ldc1 $f24, 0x118($sp) +/* 364BA4 E00628A4 D7B60110 */ ldc1 $f22, 0x110($sp) +/* 364BA8 E00628A8 D7B40108 */ ldc1 $f20, 0x108($sp) +/* 364BAC E00628AC 03E00008 */ jr $ra +/* 364BB0 E00628B0 27BD0120 */ addiu $sp, $sp, 0x120 +/* 364BB4 E00628B4 00000000 */ nop +/* 364BB8 E00628B8 00000000 */ nop +/* 364BBC E00628BC 00000000 */ nop diff --git a/asm/nonmatchings/code_364F10/func_E0064000.s b/asm/nonmatchings/code_364F10/func_E0064000.s new file mode 100644 index 0000000000..4fb62b43b3 --- /dev/null +++ b/asm/nonmatchings/code_364F10/func_E0064000.s @@ -0,0 +1,112 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0064000 +/* 364F10 E0064000 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 364F14 E0064004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 364F18 E0064008 4485A000 */ mtc1 $a1, $f20 +/* 364F1C E006400C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 364F20 E0064010 4486B000 */ mtc1 $a2, $f22 +/* 364F24 E0064014 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 364F28 E0064018 4487C000 */ mtc1 $a3, $f24 +/* 364F2C E006401C AFB30034 */ sw $s3, 0x34($sp) +/* 364F30 E0064020 0080982D */ daddu $s3, $a0, $zero +/* 364F34 E0064024 AFB1002C */ sw $s1, 0x2c($sp) +/* 364F38 E0064028 24110001 */ addiu $s1, $zero, 1 +/* 364F3C E006402C F7BA0058 */ sdc1 $f26, 0x58($sp) +/* 364F40 E0064030 C7BA0070 */ lwc1 $f26, 0x70($sp) +/* 364F44 E0064034 27A40010 */ addiu $a0, $sp, 0x10 +/* 364F48 E0064038 AFBF0038 */ sw $ra, 0x38($sp) +/* 364F4C E006403C AFB20030 */ sw $s2, 0x30($sp) +/* 364F50 E0064040 16600002 */ bnez $s3, .LE006404C +/* 364F54 E0064044 AFB00028 */ sw $s0, 0x28($sp) +/* 364F58 E0064048 24110004 */ addiu $s1, $zero, 4 +.LE006404C: +/* 364F5C E006404C 26310001 */ addiu $s1, $s1, 1 +/* 364F60 E0064050 3C02E006 */ lui $v0, %hi(D_E006419C) +/* 364F64 E0064054 2442419C */ addiu $v0, $v0, %lo(D_E006419C) +/* 364F68 E0064058 AFA00010 */ sw $zero, 0x10($sp) +/* 364F6C E006405C AC820008 */ sw $v0, 8($a0) +/* 364F70 E0064060 3C02E006 */ lui $v0, %hi(D_E00641A4) +/* 364F74 E0064064 244241A4 */ addiu $v0, $v0, %lo(D_E00641A4) +/* 364F78 E0064068 AC82000C */ sw $v0, 0xc($a0) +/* 364F7C E006406C 3C02E006 */ lui $v0, %hi(D_E00643DC) +/* 364F80 E0064070 244243DC */ addiu $v0, $v0, %lo(D_E00643DC) +/* 364F84 E0064074 AC820010 */ sw $v0, 0x10($a0) +/* 364F88 E0064078 24020032 */ addiu $v0, $zero, 0x32 +/* 364F8C E006407C AC800014 */ sw $zero, 0x14($a0) +/* 364F90 E0064080 0C080124 */ jal func_E0200490 +/* 364F94 E0064084 AC820004 */ sw $v0, 4($a0) +/* 364F98 E0064088 00112040 */ sll $a0, $s1, 1 +/* 364F9C E006408C 00912021 */ addu $a0, $a0, $s1 +/* 364FA0 E0064090 00042080 */ sll $a0, $a0, 2 +/* 364FA4 E0064094 00912023 */ subu $a0, $a0, $s1 +/* 364FA8 E0064098 000420C0 */ sll $a0, $a0, 3 +/* 364FAC E006409C 0040902D */ daddu $s2, $v0, $zero +/* 364FB0 E00640A0 0C08012C */ jal func_E02004B0 +/* 364FB4 E00640A4 AE510008 */ sw $s1, 8($s2) +/* 364FB8 E00640A8 0040802D */ daddu $s0, $v0, $zero +/* 364FBC E00640AC 16000003 */ bnez $s0, .LE00640BC +/* 364FC0 E00640B0 AE50000C */ sw $s0, 0xc($s2) +.LE00640B4: +/* 364FC4 E00640B4 0801902D */ j .LE00640B4 +/* 364FC8 E00640B8 00000000 */ nop +.LE00640BC: +/* 364FCC E00640BC 0200202D */ daddu $a0, $s0, $zero +/* 364FD0 E00640C0 00112840 */ sll $a1, $s1, 1 +/* 364FD4 E00640C4 00B12821 */ addu $a1, $a1, $s1 +/* 364FD8 E00640C8 00052880 */ sll $a1, $a1, 2 +/* 364FDC E00640CC 00B12823 */ subu $a1, $a1, $s1 +/* 364FE0 E00640D0 0C080130 */ jal func_E02004C0 +/* 364FE4 E00640D4 000528C0 */ sll $a1, $a1, 3 +/* 364FE8 E00640D8 2402003C */ addiu $v0, $zero, 0x3c +/* 364FEC E00640DC 240300FF */ addiu $v1, $zero, 0xff +/* 364FF0 E00640E0 AE020028 */ sw $v0, 0x28($s0) +/* 364FF4 E00640E4 2402007A */ addiu $v0, $zero, 0x7a +/* 364FF8 E00640E8 A2020052 */ sb $v0, 0x52($s0) +/* 364FFC E00640EC 240200F0 */ addiu $v0, $zero, 0xf0 +/* 365000 E00640F0 A2020053 */ sb $v0, 0x53($s0) +/* 365004 E00640F4 240200FA */ addiu $v0, $zero, 0xfa +/* 365008 E00640F8 AE00002C */ sw $zero, 0x2c($s0) +/* 36500C E00640FC A6130000 */ sh $s3, ($s0) +/* 365010 E0064100 E6140004 */ swc1 $f20, 4($s0) +/* 365014 E0064104 E6160008 */ swc1 $f22, 8($s0) +/* 365018 E0064108 E618000C */ swc1 $f24, 0xc($s0) +/* 36501C E006410C AE030038 */ sw $v1, 0x38($s0) +/* 365020 E0064110 A2000050 */ sb $zero, 0x50($s0) +/* 365024 E0064114 A2030051 */ sb $v1, 0x51($s0) +/* 365028 E0064118 A2030054 */ sb $v1, 0x54($s0) +/* 36502C E006411C A2020055 */ sb $v0, 0x55($s0) +/* 365030 E0064120 24030001 */ addiu $v1, $zero, 1 +/* 365034 E0064124 0071102A */ slt $v0, $v1, $s1 +/* 365038 E0064128 10400010 */ beqz $v0, .LE006416C +/* 36503C E006412C 26100058 */ addiu $s0, $s0, 0x58 +/* 365040 E0064130 26040030 */ addiu $a0, $s0, 0x30 +/* 365044 E0064134 2406001E */ addiu $a2, $zero, 0x1e +/* 365048 E0064138 2405FFFF */ addiu $a1, $zero, -1 +.LE006413C: +/* 36504C E006413C 44860000 */ mtc1 $a2, $f0 +/* 365050 E0064140 00000000 */ nop +/* 365054 E0064144 46800020 */ cvt.s.w $f0, $f0 +/* 365058 E0064148 24C6001E */ addiu $a2, $a2, 0x1e +/* 36505C E006414C AC85001C */ sw $a1, 0x1c($a0) +/* 365060 E0064150 24A5FFFC */ addiu $a1, $a1, -4 +/* 365064 E0064154 24630001 */ addiu $v1, $v1, 1 +/* 365068 E0064158 E49A0004 */ swc1 $f26, 4($a0) +/* 36506C E006415C E4800000 */ swc1 $f0, ($a0) +/* 365070 E0064160 0071102A */ slt $v0, $v1, $s1 +/* 365074 E0064164 1440FFF5 */ bnez $v0, .LE006413C +/* 365078 E0064168 24840058 */ addiu $a0, $a0, 0x58 +.LE006416C: +/* 36507C E006416C 0240102D */ daddu $v0, $s2, $zero +/* 365080 E0064170 8FBF0038 */ lw $ra, 0x38($sp) +/* 365084 E0064174 8FB30034 */ lw $s3, 0x34($sp) +/* 365088 E0064178 8FB20030 */ lw $s2, 0x30($sp) +/* 36508C E006417C 8FB1002C */ lw $s1, 0x2c($sp) +/* 365090 E0064180 8FB00028 */ lw $s0, 0x28($sp) +/* 365094 E0064184 D7BA0058 */ ldc1 $f26, 0x58($sp) +/* 365098 E0064188 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 36509C E006418C D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3650A0 E0064190 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3650A4 E0064194 03E00008 */ jr $ra +/* 3650A8 E0064198 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_364F10/func_E006419C.s b/asm/nonmatchings/code_364F10/func_E006419C.s new file mode 100644 index 0000000000..9e5a49a44b --- /dev/null +++ b/asm/nonmatchings/code_364F10/func_E006419C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E006419C +/* 3650AC E006419C 03E00008 */ jr $ra +/* 3650B0 E00641A0 00000000 */ nop diff --git a/asm/nonmatchings/code_364F10/func_E00641A4.s b/asm/nonmatchings/code_364F10/func_E00641A4.s new file mode 100644 index 0000000000..e7847efaea --- /dev/null +++ b/asm/nonmatchings/code_364F10/func_E00641A4.s @@ -0,0 +1,152 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00641A4 +/* 3650B4 E00641A4 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 3650B8 E00641A8 AFB20018 */ sw $s2, 0x18($sp) +/* 3650BC E00641AC 0080902D */ daddu $s2, $a0, $zero +/* 3650C0 E00641B0 AFBF001C */ sw $ra, 0x1c($sp) +/* 3650C4 E00641B4 AFB10014 */ sw $s1, 0x14($sp) +/* 3650C8 E00641B8 AFB00010 */ sw $s0, 0x10($sp) +/* 3650CC E00641BC F7BC0040 */ sdc1 $f28, 0x40($sp) +/* 3650D0 E00641C0 F7BA0038 */ sdc1 $f26, 0x38($sp) +/* 3650D4 E00641C4 F7B80030 */ sdc1 $f24, 0x30($sp) +/* 3650D8 E00641C8 F7B60028 */ sdc1 $f22, 0x28($sp) +/* 3650DC E00641CC F7B40020 */ sdc1 $f20, 0x20($sp) +/* 3650E0 E00641D0 8E44000C */ lw $a0, 0xc($s2) +/* 3650E4 E00641D4 8C82002C */ lw $v0, 0x2c($a0) +/* 3650E8 E00641D8 8C830028 */ lw $v1, 0x28($a0) +/* 3650EC E00641DC 24420001 */ addiu $v0, $v0, 1 +/* 3650F0 E00641E0 2463FFFF */ addiu $v1, $v1, -1 +/* 3650F4 E00641E4 AC82002C */ sw $v0, 0x2c($a0) +/* 3650F8 E00641E8 04610005 */ bgez $v1, .LE0064200 +/* 3650FC E00641EC AC830028 */ sw $v1, 0x28($a0) +/* 365100 E00641F0 0C080128 */ jal func_E02004A0 +/* 365104 E00641F4 0240202D */ daddu $a0, $s2, $zero +/* 365108 E00641F8 080190EC */ j .LE00643B0 +/* 36510C E00641FC 00000000 */ nop +.LE0064200: +/* 365110 E0064200 8C82002C */ lw $v0, 0x2c($a0) +/* 365114 E0064204 28420008 */ slti $v0, $v0, 8 +/* 365118 E0064208 14400009 */ bnez $v0, .LE0064230 +/* 36511C E006420C 00000000 */ nop +/* 365120 E0064210 3C01E006 */ lui $at, %hi(D_E0064A70) +/* 365124 E0064214 D4224A70 */ ldc1 $f2, %lo(D_E0064A70)($at) +/* 365128 E0064218 C4800038 */ lwc1 $f0, 0x38($a0) +/* 36512C E006421C 46800021 */ cvt.d.w $f0, $f0 +/* 365130 E0064220 46220002 */ mul.d $f0, $f0, $f2 +/* 365134 E0064224 00000000 */ nop +/* 365138 E0064228 4620038D */ trunc.w.d $f14, $f0 +/* 36513C E006422C E48E0038 */ swc1 $f14, 0x38($a0) +.LE0064230: +/* 365140 E0064230 8E420008 */ lw $v0, 8($s2) +/* 365144 E0064234 24110001 */ addiu $s1, $zero, 1 +/* 365148 E0064238 0222102A */ slt $v0, $s1, $v0 +/* 36514C E006423C 1040005C */ beqz $v0, .LE00643B0 +/* 365150 E0064240 24840058 */ addiu $a0, $a0, 0x58 +/* 365154 E0064244 2490003C */ addiu $s0, $a0, 0x3c +/* 365158 E0064248 3C013FE0 */ lui $at, 0x3fe0 +/* 36515C E006424C 4481C800 */ mtc1 $at, $f25 +/* 365160 E0064250 4480C000 */ mtc1 $zero, $f24 +/* 365164 E0064254 3C014200 */ lui $at, 0x4200 +/* 365168 E0064258 4481B000 */ mtc1 $at, $f22 +/* 36516C E006425C 3C013F00 */ lui $at, 0x3f00 +/* 365170 E0064260 4481E000 */ mtc1 $at, $f28 +/* 365174 E0064264 3C01E006 */ lui $at, %hi(D_E0064A78) +/* 365178 E0064268 D4344A78 */ ldc1 $f20, %lo(D_E0064A78)($at) +/* 36517C E006426C 3C014300 */ lui $at, 0x4300 +/* 365180 E0064270 4481D000 */ mtc1 $at, $f26 +.LE0064274: +/* 365184 E0064274 8E020010 */ lw $v0, 0x10($s0) +/* 365188 E0064278 24420001 */ addiu $v0, $v0, 1 +/* 36518C E006427C 04400047 */ bltz $v0, .LE006439C +/* 365190 E0064280 AE020010 */ sw $v0, 0x10($s0) +/* 365194 E0064284 1440001D */ bnez $v0, .LE00642FC +/* 365198 E0064288 00000000 */ nop +/* 36519C E006428C C60CFFF8 */ lwc1 $f12, -8($s0) +/* 3651A0 E0064290 AE00FFC8 */ sw $zero, -0x38($s0) +/* 3651A4 E0064294 AE00FFCC */ sw $zero, -0x34($s0) +/* 3651A8 E0064298 0C080140 */ jal func_E0200500 +/* 3651AC E006429C AE00FFD0 */ sw $zero, -0x30($s0) +/* 3651B0 E00642A0 46000007 */ neg.s $f0, $f0 +/* 3651B4 E00642A4 46000021 */ cvt.d.s $f0, $f0 +/* 3651B8 E00642A8 46380002 */ mul.d $f0, $f0, $f24 +/* 3651BC E00642AC 00000000 */ nop +/* 3651C0 E00642B0 C60CFFF8 */ lwc1 $f12, -8($s0) +/* 3651C4 E00642B4 46200020 */ cvt.s.d $f0, $f0 +/* 3651C8 E00642B8 0C080144 */ jal func_E0200510 +/* 3651CC E00642BC E600FFD4 */ swc1 $f0, -0x2c($s0) +/* 3651D0 E00642C0 46000021 */ cvt.d.s $f0, $f0 +/* 3651D4 E00642C4 3C014120 */ lui $at, 0x4120 +/* 3651D8 E00642C8 44811000 */ mtc1 $at, $f2 +/* 3651DC E00642CC 46380002 */ mul.d $f0, $f0, $f24 +/* 3651E0 E00642D0 00000000 */ nop +/* 3651E4 E00642D4 AE00FFDC */ sw $zero, -0x24($s0) +/* 3651E8 E00642D8 E6160000 */ swc1 $f22, ($s0) +/* 3651EC E00642DC E6160004 */ swc1 $f22, 4($s0) +/* 3651F0 E00642E0 E616000C */ swc1 $f22, 0xc($s0) +/* 3651F4 E00642E4 E61CFFE0 */ swc1 $f28, -0x20($s0) +/* 3651F8 E00642E8 E61CFFE8 */ swc1 $f28, -0x18($s0) +/* 3651FC E00642EC E6160008 */ swc1 $f22, 8($s0) +/* 365200 E00642F0 E602FFE4 */ swc1 $f2, -0x1c($s0) +/* 365204 E00642F4 46200020 */ cvt.s.d $f0, $f0 +/* 365208 E00642F8 E600FFD8 */ swc1 $f0, -0x28($s0) +.LE00642FC: +/* 36520C E00642FC C6060004 */ lwc1 $f6, 4($s0) +/* 365210 E0064300 3C01E006 */ lui $at, %hi(D_E0064A80) +/* 365214 E0064304 D4204A80 */ ldc1 $f0, %lo(D_E0064A80)($at) +/* 365218 E0064308 460031A1 */ cvt.d.s $f6, $f6 +/* 36521C E006430C 46203182 */ mul.d $f6, $f6, $f0 +/* 365220 E0064310 00000000 */ nop +/* 365224 E0064314 C604FFE4 */ lwc1 $f4, -0x1c($s0) +/* 365228 E0064318 3C01E006 */ lui $at, %hi(D_E0064A88) +/* 36522C E006431C D42A4A88 */ ldc1 $f10, %lo(D_E0064A88)($at) +/* 365230 E0064320 46002121 */ cvt.d.s $f4, $f4 +/* 365234 E0064324 46245281 */ sub.d $f10, $f10, $f4 +/* 365238 E0064328 46345282 */ mul.d $f10, $f10, $f20 +/* 36523C E006432C 00000000 */ nop +/* 365240 E0064330 C6020004 */ lwc1 $f2, 4($s0) +/* 365244 E0064334 C6000000 */ lwc1 $f0, ($s0) +/* 365248 E0064338 46020000 */ add.s $f0, $f0, $f2 +/* 36524C E006433C C602FFE0 */ lwc1 $f2, -0x20($s0) +/* 365250 E0064340 C6080008 */ lwc1 $f8, 8($s0) +/* 365254 E0064344 460010A1 */ cvt.d.s $f2, $f2 +/* 365258 E0064348 46341080 */ add.d $f2, $f2, $f20 +/* 36525C E006434C E6000000 */ swc1 $f0, ($s0) +/* 365260 E0064350 C600000C */ lwc1 $f0, 0xc($s0) +/* 365264 E0064354 46004200 */ add.s $f8, $f8, $f0 +/* 365268 E0064358 C600FFE8 */ lwc1 $f0, -0x18($s0) +/* 36526C E006435C 462010A0 */ cvt.s.d $f2, $f2 +/* 365270 E0064360 46000021 */ cvt.d.s $f0, $f0 +/* 365274 E0064364 46340000 */ add.d $f0, $f0, $f20 +/* 365278 E0064368 E602FFE0 */ swc1 $f2, -0x20($s0) +/* 36527C E006436C E6080008 */ swc1 $f8, 8($s0) +/* 365280 E0064370 46200020 */ cvt.s.d $f0, $f0 +/* 365284 E0064374 E600FFE8 */ swc1 $f0, -0x18($s0) +/* 365288 E0064378 C6000000 */ lwc1 $f0, ($s0) +/* 36528C E006437C 462A2100 */ add.d $f4, $f4, $f10 +/* 365290 E0064380 462031A0 */ cvt.s.d $f6, $f6 +/* 365294 E0064384 E6060004 */ swc1 $f6, 4($s0) +/* 365298 E0064388 4600D03C */ c.lt.s $f26, $f0 +/* 36529C E006438C 46202120 */ cvt.s.d $f4, $f4 +/* 3652A0 E0064390 45000002 */ bc1f .LE006439C +/* 3652A4 E0064394 E604FFE4 */ swc1 $f4, -0x1c($s0) +/* 3652A8 E0064398 E61A0000 */ swc1 $f26, ($s0) +.LE006439C: +/* 3652AC E006439C 26310001 */ addiu $s1, $s1, 1 +/* 3652B0 E00643A0 8E420008 */ lw $v0, 8($s2) +/* 3652B4 E00643A4 0222102A */ slt $v0, $s1, $v0 +/* 3652B8 E00643A8 1440FFB2 */ bnez $v0, .LE0064274 +/* 3652BC E00643AC 26100058 */ addiu $s0, $s0, 0x58 +.LE00643B0: +/* 3652C0 E00643B0 8FBF001C */ lw $ra, 0x1c($sp) +/* 3652C4 E00643B4 8FB20018 */ lw $s2, 0x18($sp) +/* 3652C8 E00643B8 8FB10014 */ lw $s1, 0x14($sp) +/* 3652CC E00643BC 8FB00010 */ lw $s0, 0x10($sp) +/* 3652D0 E00643C0 D7BC0040 */ ldc1 $f28, 0x40($sp) +/* 3652D4 E00643C4 D7BA0038 */ ldc1 $f26, 0x38($sp) +/* 3652D8 E00643C8 D7B80030 */ ldc1 $f24, 0x30($sp) +/* 3652DC E00643CC D7B60028 */ ldc1 $f22, 0x28($sp) +/* 3652E0 E00643D0 D7B40020 */ ldc1 $f20, 0x20($sp) +/* 3652E4 E00643D4 03E00008 */ jr $ra +/* 3652E8 E00643D8 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_364F10/func_E00643DC.s b/asm/nonmatchings/code_364F10/func_E00643DC.s new file mode 100644 index 0000000000..535c042692 --- /dev/null +++ b/asm/nonmatchings/code_364F10/func_E00643DC.s @@ -0,0 +1,18 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00643DC +/* 3652EC E00643DC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3652F0 E00643E0 3C02E006 */ lui $v0, %hi(D_E0064414) +/* 3652F4 E00643E4 24424414 */ addiu $v0, $v0, %lo(D_E0064414) +/* 3652F8 E00643E8 AFA2001C */ sw $v0, 0x1c($sp) +/* 3652FC E00643EC 24020028 */ addiu $v0, $zero, 0x28 +/* 365300 E00643F0 AFA40018 */ sw $a0, 0x18($sp) +/* 365304 E00643F4 27A40010 */ addiu $a0, $sp, 0x10 +/* 365308 E00643F8 AFBF0020 */ sw $ra, 0x20($sp) +/* 36530C E00643FC AFA00014 */ sw $zero, 0x14($sp) +/* 365310 E0064400 0C080120 */ jal func_E0200480 +/* 365314 E0064404 AFA20010 */ sw $v0, 0x10($sp) +/* 365318 E0064408 8FBF0020 */ lw $ra, 0x20($sp) +/* 36531C E006440C 03E00008 */ jr $ra +/* 365320 E0064410 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_364F10/func_E0064414.s b/asm/nonmatchings/code_364F10/func_E0064414.s new file mode 100644 index 0000000000..afd7a08c00 --- /dev/null +++ b/asm/nonmatchings/code_364F10/func_E0064414.s @@ -0,0 +1,410 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0064414 +/* 365324 E0064414 27BDFEE8 */ addiu $sp, $sp, -0x118 +/* 365328 E0064418 AFB300E4 */ sw $s3, 0xe4($sp) +/* 36532C E006441C 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 365330 E0064420 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 365334 E0064424 AFBF00FC */ sw $ra, 0xfc($sp) +/* 365338 E0064428 AFBE00F8 */ sw $fp, 0xf8($sp) +/* 36533C E006442C AFB700F4 */ sw $s7, 0xf4($sp) +/* 365340 E0064430 AFB600F0 */ sw $s6, 0xf0($sp) +/* 365344 E0064434 AFB500EC */ sw $s5, 0xec($sp) +/* 365348 E0064438 AFB400E8 */ sw $s4, 0xe8($sp) +/* 36534C E006443C AFB200E0 */ sw $s2, 0xe0($sp) +/* 365350 E0064440 AFB100DC */ sw $s1, 0xdc($sp) +/* 365354 E0064444 AFB000D8 */ sw $s0, 0xd8($sp) +/* 365358 E0064448 F7B80110 */ sdc1 $f24, 0x110($sp) +/* 36535C E006444C F7B60108 */ sdc1 $f22, 0x108($sp) +/* 365360 E0064450 F7B40100 */ sdc1 $f20, 0x100($sp) +/* 365364 E0064454 AFA40118 */ sw $a0, 0x118($sp) +/* 365368 E0064458 8E680000 */ lw $t0, ($s3) +/* 36536C E006445C 8FAD0118 */ lw $t5, 0x118($sp) +/* 365370 E0064460 4480A000 */ mtc1 $zero, $f20 +/* 365374 E0064464 3C013F80 */ lui $at, 0x3f80 +/* 365378 E0064468 4481C000 */ mtc1 $at, $f24 +/* 36537C E006446C 8DB1000C */ lw $s1, 0xc($t5) +/* 365380 E0064470 4405A000 */ mfc1 $a1, $f20 +/* 365384 E0064474 96220000 */ lhu $v0, ($s1) +/* 365388 E0064478 922D0050 */ lbu $t5, 0x50($s1) +/* 36538C E006447C 00021080 */ sll $v0, $v0, 2 +/* 365390 E0064480 3C09E006 */ lui $t1, %hi(D_E0064A60) +/* 365394 E0064484 01224821 */ addu $t1, $t1, $v0 +/* 365398 E0064488 8D294A60 */ lw $t1, %lo(D_E0064A60)($t1) +/* 36539C E006448C 3C06DB06 */ lui $a2, 0xdb06 +/* 3653A0 E0064490 AFAD00A4 */ sw $t5, 0xa4($sp) +/* 3653A4 E0064494 922D0051 */ lbu $t5, 0x51($s1) +/* 3653A8 E0064498 34C60024 */ ori $a2, $a2, 0x24 +/* 3653AC E006449C AFAD00A8 */ sw $t5, 0xa8($sp) +/* 3653B0 E00644A0 922D0052 */ lbu $t5, 0x52($s1) +/* 3653B4 E00644A4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3653B8 E00644A8 AFAD00AC */ sw $t5, 0xac($sp) +/* 3653BC E00644AC 922D0053 */ lbu $t5, 0x53($s1) +/* 3653C0 E00644B0 0100182D */ daddu $v1, $t0, $zero +/* 3653C4 E00644B4 AFAD00B0 */ sw $t5, 0xb0($sp) +/* 3653C8 E00644B8 922D0054 */ lbu $t5, 0x54($s1) +/* 3653CC E00644BC 25080008 */ addiu $t0, $t0, 8 +/* 3653D0 E00644C0 AFAD00B4 */ sw $t5, 0xb4($sp) +/* 3653D4 E00644C4 922D0055 */ lbu $t5, 0x55($s1) +/* 3653D8 E00644C8 3C02E700 */ lui $v0, 0xe700 +/* 3653DC E00644CC AFAD00B8 */ sw $t5, 0xb8($sp) +/* 3653E0 E00644D0 AC620000 */ sw $v0, ($v1) +/* 3653E4 E00644D4 AC600004 */ sw $zero, 4($v1) +/* 3653E8 E00644D8 AD060000 */ sw $a2, ($t0) +/* 3653EC E00644DC 8FAD0118 */ lw $t5, 0x118($sp) +/* 3653F0 E00644E0 4407A000 */ mfc1 $a3, $f20 +/* 3653F4 E00644E4 8DA20010 */ lw $v0, 0x10($t5) +/* 3653F8 E00644E8 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3653FC E00644EC 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 365400 E00644F0 8C46001C */ lw $a2, 0x1c($v0) +/* 365404 E00644F4 3C02DE00 */ lui $v0, 0xde00 +/* 365408 E00644F8 AD020008 */ sw $v0, 8($t0) +/* 36540C E00644FC 3C028000 */ lui $v0, 0x8000 +/* 365410 E0064500 AD09000C */ sw $t1, 0xc($t0) +/* 365414 E0064504 00C23021 */ addu $a2, $a2, $v0 +/* 365418 E0064508 00031080 */ sll $v0, $v1, 2 +/* 36541C E006450C 00431021 */ addu $v0, $v0, $v1 +/* 365420 E0064510 00021080 */ sll $v0, $v0, 2 +/* 365424 E0064514 00431023 */ subu $v0, $v0, $v1 +/* 365428 E0064518 000218C0 */ sll $v1, $v0, 3 +/* 36542C E006451C 00431021 */ addu $v0, $v0, $v1 +/* 365430 E0064520 000210C0 */ sll $v0, $v0, 3 +/* 365434 E0064524 AD060004 */ sw $a2, 4($t0) +/* 365438 E0064528 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 36543C E006452C 00220821 */ addu $at, $at, $v0 +/* 365440 E0064530 C4221DEC */ lwc1 $f2, %lo(D_800B1DEC)($at) +/* 365444 E0064534 3C100001 */ lui $s0, 1 +/* 365448 E0064538 AE680000 */ sw $t0, ($s3) +/* 36544C E006453C E7B80010 */ swc1 $f24, 0x10($sp) +/* 365450 E0064540 C6200004 */ lwc1 $f0, 4($s1) +/* 365454 E0064544 25020008 */ addiu $v0, $t0, 8 +/* 365458 E0064548 AE620000 */ sw $v0, ($s3) +/* 36545C E006454C 46001087 */ neg.s $f2, $f2 +/* 365460 E0064550 E7A00014 */ swc1 $f0, 0x14($sp) +/* 365464 E0064554 C6200008 */ lwc1 $f0, 8($s1) +/* 365468 E0064558 44061000 */ mfc1 $a2, $f2 +/* 36546C E006455C 25080010 */ addiu $t0, $t0, 0x10 +/* 365470 E0064560 AE680000 */ sw $t0, ($s3) +/* 365474 E0064564 E7A00018 */ swc1 $f0, 0x18($sp) +/* 365478 E0064568 C620000C */ lwc1 $f0, 0xc($s1) +/* 36547C E006456C 36101630 */ ori $s0, $s0, 0x1630 +/* 365480 E0064570 0C080180 */ jal func_E0200600 +/* 365484 E0064574 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 365488 E0064578 27A40020 */ addiu $a0, $sp, 0x20 +/* 36548C E006457C 3C158007 */ lui $s5, %hi(D_800741F0) +/* 365490 E0064580 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 365494 E0064584 3C16800A */ lui $s6, %hi(D_8009A674) +/* 365498 E0064588 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 36549C E006458C 96A50000 */ lhu $a1, ($s5) +/* 3654A0 E0064590 8EC20000 */ lw $v0, ($s6) +/* 3654A4 E0064594 00052980 */ sll $a1, $a1, 6 +/* 3654A8 E0064598 00B02821 */ addu $a1, $a1, $s0 +/* 3654AC E006459C 0C080118 */ jal func_E0200460 +/* 3654B0 E00645A0 00452821 */ addu $a1, $v0, $a1 +/* 3654B4 E00645A4 24140001 */ addiu $s4, $zero, 1 +/* 3654B8 E00645A8 3C02DA38 */ lui $v0, 0xda38 +/* 3654BC E00645AC 8E650000 */ lw $a1, ($s3) +/* 3654C0 E00645B0 96A40000 */ lhu $a0, ($s5) +/* 3654C4 E00645B4 00A0302D */ daddu $a2, $a1, $zero +/* 3654C8 E00645B8 24A50008 */ addiu $a1, $a1, 8 +/* 3654CC E00645BC ACC20000 */ sw $v0, ($a2) +/* 3654D0 E00645C0 3082FFFF */ andi $v0, $a0, 0xffff +/* 3654D4 E00645C4 00021180 */ sll $v0, $v0, 6 +/* 3654D8 E00645C8 00501021 */ addu $v0, $v0, $s0 +/* 3654DC E00645CC 00942021 */ addu $a0, $a0, $s4 +/* 3654E0 E00645D0 8EC30000 */ lw $v1, ($s6) +/* 3654E4 E00645D4 00A0B82D */ daddu $s7, $a1, $zero +/* 3654E8 E00645D8 00621821 */ addu $v1, $v1, $v0 +/* 3654EC E00645DC ACC30004 */ sw $v1, 4($a2) +/* 3654F0 E00645E0 8E2D0038 */ lw $t5, 0x38($s1) +/* 3654F4 E00645E4 26E30008 */ addiu $v1, $s7, 8 +/* 3654F8 E00645E8 AFAD00A0 */ sw $t5, 0xa0($sp) +/* 3654FC E00645EC AE650000 */ sw $a1, ($s3) +/* 365500 E00645F0 A6A40000 */ sh $a0, ($s5) +/* 365504 E00645F4 AE630000 */ sw $v1, ($s3) +/* 365508 E00645F8 8FAD00A4 */ lw $t5, 0xa4($sp) +/* 36550C E00645FC AFAD00BC */ sw $t5, 0xbc($sp) +/* 365510 E0064600 8FAD00A8 */ lw $t5, 0xa8($sp) +/* 365514 E0064604 AFAD00C0 */ sw $t5, 0xc0($sp) +/* 365518 E0064608 8FAD00AC */ lw $t5, 0xac($sp) +/* 36551C E006460C AFAD00C4 */ sw $t5, 0xc4($sp) +/* 365520 E0064610 8FAD00B0 */ lw $t5, 0xb0($sp) +/* 365524 E0064614 AFAD00C8 */ sw $t5, 0xc8($sp) +/* 365528 E0064618 8FAD00B4 */ lw $t5, 0xb4($sp) +/* 36552C E006461C AFAD00CC */ sw $t5, 0xcc($sp) +/* 365530 E0064620 8FAD00B8 */ lw $t5, 0xb8($sp) +/* 365534 E0064624 AFAD00D0 */ sw $t5, 0xd0($sp) +/* 365538 E0064628 8FAD0118 */ lw $t5, 0x118($sp) +/* 36553C E006462C 8DA20008 */ lw $v0, 8($t5) +/* 365540 E0064630 26310058 */ addiu $s1, $s1, 0x58 +/* 365544 E0064634 0282102A */ slt $v0, $s4, $v0 +/* 365548 E0064638 10400090 */ beqz $v0, .LE006487C +/* 36554C E006463C AFA300D4 */ sw $v1, 0xd4($sp) +/* 365550 E0064640 27B20060 */ addiu $s2, $sp, 0x60 +/* 365554 E0064644 4600A586 */ mov.s $f22, $f20 +/* 365558 E0064648 3C01E006 */ lui $at, %hi(D_E0064A90) +/* 36555C E006464C D4344A90 */ ldc1 $f20, %lo(D_E0064A90)($at) +/* 365560 E0064650 02A0B02D */ daddu $s6, $s5, $zero +/* 365564 E0064654 3C150001 */ lui $s5, 1 +/* 365568 E0064658 36B51630 */ ori $s5, $s5, 0x1630 +/* 36556C E006465C 3C1EF200 */ lui $fp, 0xf200 +/* 365570 E0064660 26300044 */ addiu $s0, $s1, 0x44 +.LE0064664: +/* 365574 E0064664 8E020008 */ lw $v0, 8($s0) +/* 365578 E0064668 0440007E */ bltz $v0, .LE0064864 +/* 36557C E006466C 00000000 */ nop +/* 365580 E0064670 8E05FFC0 */ lw $a1, -0x40($s0) +/* 365584 E0064674 8E06FFC4 */ lw $a2, -0x3c($s0) +/* 365588 E0064678 8E07FFC8 */ lw $a3, -0x38($s0) +/* 36558C E006467C 0C080108 */ jal func_E0200420 +/* 365590 E0064680 27A40020 */ addiu $a0, $sp, 0x20 +/* 365594 E0064684 E7B80010 */ swc1 $f24, 0x10($sp) +/* 365598 E0064688 8E05FFF0 */ lw $a1, -0x10($s0) +/* 36559C E006468C 4406B000 */ mfc1 $a2, $f22 +/* 3655A0 E0064690 4407B000 */ mfc1 $a3, $f22 +/* 3655A4 E0064694 0C080104 */ jal func_E0200410 +/* 3655A8 E0064698 0240202D */ daddu $a0, $s2, $zero +/* 3655AC E006469C 0240202D */ daddu $a0, $s2, $zero +/* 3655B0 E00646A0 27A50020 */ addiu $a1, $sp, 0x20 +/* 3655B4 E00646A4 0C080114 */ jal func_E0200450 +/* 3655B8 E00646A8 00A0302D */ daddu $a2, $a1, $zero +/* 3655BC E00646AC C604FFD8 */ lwc1 $f4, -0x28($s0) +/* 3655C0 E00646B0 46002121 */ cvt.d.s $f4, $f4 +/* 3655C4 E00646B4 46342102 */ mul.d $f4, $f4, $f20 +/* 3655C8 E00646B8 00000000 */ nop +/* 3655CC E00646BC C602FFDC */ lwc1 $f2, -0x24($s0) +/* 3655D0 E00646C0 460010A1 */ cvt.d.s $f2, $f2 +/* 3655D4 E00646C4 46341082 */ mul.d $f2, $f2, $f20 +/* 3655D8 E00646C8 00000000 */ nop +/* 3655DC E00646CC C600FFE0 */ lwc1 $f0, -0x20($s0) +/* 3655E0 E00646D0 46000021 */ cvt.d.s $f0, $f0 +/* 3655E4 E00646D4 46340002 */ mul.d $f0, $f0, $f20 +/* 3655E8 E00646D8 00000000 */ nop +/* 3655EC E00646DC 46202120 */ cvt.s.d $f4, $f4 +/* 3655F0 E00646E0 462010A0 */ cvt.s.d $f2, $f2 +/* 3655F4 E00646E4 46200020 */ cvt.s.d $f0, $f0 +/* 3655F8 E00646E8 44052000 */ mfc1 $a1, $f4 +/* 3655FC E00646EC 44061000 */ mfc1 $a2, $f2 +/* 365600 E00646F0 44070000 */ mfc1 $a3, $f0 +/* 365604 E00646F4 0C080110 */ jal func_E0200440 +/* 365608 E00646F8 0240202D */ daddu $a0, $s2, $zero +/* 36560C E00646FC 0240202D */ daddu $a0, $s2, $zero +/* 365610 E0064700 27A50020 */ addiu $a1, $sp, 0x20 +/* 365614 E0064704 0C080114 */ jal func_E0200450 +/* 365618 E0064708 00A0302D */ daddu $a2, $a1, $zero +/* 36561C E006470C E7B60010 */ swc1 $f22, 0x10($sp) +/* 365620 E0064710 8E05FFEC */ lw $a1, -0x14($s0) +/* 365624 E0064714 4406B000 */ mfc1 $a2, $f22 +/* 365628 E0064718 4407C000 */ mfc1 $a3, $f24 +/* 36562C E006471C 0C080104 */ jal func_E0200410 +/* 365630 E0064720 0240202D */ daddu $a0, $s2, $zero +/* 365634 E0064724 0240202D */ daddu $a0, $s2, $zero +/* 365638 E0064728 27A50020 */ addiu $a1, $sp, 0x20 +/* 36563C E006472C 0C080114 */ jal func_E0200450 +/* 365640 E0064730 00A0302D */ daddu $a2, $a1, $zero +/* 365644 E0064734 27A40020 */ addiu $a0, $sp, 0x20 +/* 365648 E0064738 96C50000 */ lhu $a1, ($s6) +/* 36564C E006473C 3C02800A */ lui $v0, %hi(D_8009A674) +/* 365650 E0064740 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 365654 E0064744 00052980 */ sll $a1, $a1, 6 +/* 365658 E0064748 00B52821 */ addu $a1, $a1, $s5 +/* 36565C E006474C 0C080118 */ jal func_E0200460 +/* 365660 E0064750 00452821 */ addu $a1, $v0, $a1 +/* 365664 E0064754 3C06000F */ lui $a2, 0xf +/* 365668 E0064758 34C6C000 */ ori $a2, $a2, 0xc000 +/* 36566C E006475C 3C080107 */ lui $t0, 0x107 +/* 365670 E0064760 3508C000 */ ori $t0, $t0, 0xc000 +/* 365674 E0064764 3C07D838 */ lui $a3, 0xd838 +/* 365678 E0064768 34E70002 */ ori $a3, $a3, 2 +/* 36567C E006476C 8E630000 */ lw $v1, ($s3) +/* 365680 E0064770 C600FFF8 */ lwc1 $f0, -8($s0) +/* 365684 E0064774 0060282D */ daddu $a1, $v1, $zero +/* 365688 E0064778 24630008 */ addiu $v1, $v1, 8 +/* 36568C E006477C 4600018D */ trunc.w.s $f6, $f0 +/* 365690 E0064780 44023000 */ mfc1 $v0, $f6 +/* 365694 E0064784 00000000 */ nop +/* 365698 E0064788 30420FFF */ andi $v0, $v0, 0xfff +/* 36569C E006478C 005E1025 */ or $v0, $v0, $fp +/* 3656A0 E0064790 AE630000 */ sw $v1, ($s3) +/* 3656A4 E0064794 ACA20000 */ sw $v0, ($a1) +/* 3656A8 E0064798 24620008 */ addiu $v0, $v1, 8 +/* 3656AC E006479C AE620000 */ sw $v0, ($s3) +/* 3656B0 E00647A0 96C40000 */ lhu $a0, ($s6) +/* 3656B4 E00647A4 24620010 */ addiu $v0, $v1, 0x10 +/* 3656B8 E00647A8 AE620000 */ sw $v0, ($s3) +/* 3656BC E00647AC 24820001 */ addiu $v0, $a0, 1 +/* 3656C0 E00647B0 A6C20000 */ sh $v0, ($s6) +/* 3656C4 E00647B4 24620018 */ addiu $v0, $v1, 0x18 +/* 3656C8 E00647B8 3084FFFF */ andi $a0, $a0, 0xffff +/* 3656CC E00647BC 00042180 */ sll $a0, $a0, 6 +/* 3656D0 E00647C0 C600FFF8 */ lwc1 $f0, -8($s0) +/* 3656D4 E00647C4 00952021 */ addu $a0, $a0, $s5 +/* 3656D8 E00647C8 AE620000 */ sw $v0, ($s3) +/* 3656DC E00647CC 4600018D */ trunc.w.s $f6, $f0 +/* 3656E0 E00647D0 44023000 */ mfc1 $v0, $f6 +/* 3656E4 E00647D4 00000000 */ nop +/* 3656E8 E00647D8 2442007C */ addiu $v0, $v0, 0x7c +/* 3656EC E00647DC 30420FFF */ andi $v0, $v0, 0xfff +/* 3656F0 E00647E0 00461025 */ or $v0, $v0, $a2 +/* 3656F4 E00647E4 ACA20004 */ sw $v0, 4($a1) +/* 3656F8 E00647E8 C6000000 */ lwc1 $f0, ($s0) +/* 3656FC E00647EC 24620020 */ addiu $v0, $v1, 0x20 +/* 365700 E00647F0 AE620000 */ sw $v0, ($s3) +/* 365704 E00647F4 4600018D */ trunc.w.s $f6, $f0 +/* 365708 E00647F8 44023000 */ mfc1 $v0, $f6 +/* 36570C E00647FC 00000000 */ nop +/* 365710 E0064800 30420FFF */ andi $v0, $v0, 0xfff +/* 365714 E0064804 005E1025 */ or $v0, $v0, $fp +/* 365718 E0064808 AC620000 */ sw $v0, ($v1) +/* 36571C E006480C C6000000 */ lwc1 $f0, ($s0) +/* 365720 E0064810 3C02DA38 */ lui $v0, 0xda38 +/* 365724 E0064814 AC620008 */ sw $v0, 8($v1) +/* 365728 E0064818 3C02800A */ lui $v0, %hi(D_8009A674) +/* 36572C E006481C 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 365730 E0064820 3C0D0900 */ lui $t5, 0x900 +/* 365734 E0064824 25AD0540 */ addiu $t5, $t5, 0x540 +/* 365738 E0064828 AC6D0014 */ sw $t5, 0x14($v1) +/* 36573C E006482C AC670018 */ sw $a3, 0x18($v1) +/* 365740 E0064830 00441021 */ addu $v0, $v0, $a0 +/* 365744 E0064834 AC62000C */ sw $v0, 0xc($v1) +/* 365748 E0064838 3C02DE00 */ lui $v0, 0xde00 +/* 36574C E006483C AC620010 */ sw $v0, 0x10($v1) +/* 365750 E0064840 24020040 */ addiu $v0, $zero, 0x40 +/* 365754 E0064844 AC62001C */ sw $v0, 0x1c($v1) +/* 365758 E0064848 4600018D */ trunc.w.s $f6, $f0 +/* 36575C E006484C 44023000 */ mfc1 $v0, $f6 +/* 365760 E0064850 00000000 */ nop +/* 365764 E0064854 2442007C */ addiu $v0, $v0, 0x7c +/* 365768 E0064858 30420FFF */ andi $v0, $v0, 0xfff +/* 36576C E006485C 00481025 */ or $v0, $v0, $t0 +/* 365770 E0064860 AC620004 */ sw $v0, 4($v1) +.LE0064864: +/* 365774 E0064864 8FAD0118 */ lw $t5, 0x118($sp) +/* 365778 E0064868 26940001 */ addiu $s4, $s4, 1 +/* 36577C E006486C 8DA20008 */ lw $v0, 8($t5) +/* 365780 E0064870 0282102A */ slt $v0, $s4, $v0 +/* 365784 E0064874 1440FF7B */ bnez $v0, .LE0064664 +/* 365788 E0064878 26100058 */ addiu $s0, $s0, 0x58 +.LE006487C: +/* 36578C E006487C 3C0AD9FF */ lui $t2, 0xd9ff +/* 365790 E0064880 354AF9FF */ ori $t2, $t2, 0xf9ff +/* 365794 E0064884 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 365798 E0064888 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 36579C E006488C 3C02DF00 */ lui $v0, 0xdf00 +/* 3657A0 E0064890 8CA30000 */ lw $v1, ($a1) +/* 3657A4 E0064894 3C09FA00 */ lui $t1, 0xfa00 +/* 3657A8 E0064898 0060202D */ daddu $a0, $v1, $zero +/* 3657AC E006489C 24630008 */ addiu $v1, $v1, 8 +/* 3657B0 E00648A0 ACA30000 */ sw $v1, ($a1) +/* 3657B4 E00648A4 AC820000 */ sw $v0, ($a0) +/* 3657B8 E00648A8 3C02DE01 */ lui $v0, 0xde01 +/* 3657BC E00648AC AC800004 */ sw $zero, 4($a0) +/* 3657C0 E00648B0 AEE20000 */ sw $v0, ($s7) +/* 3657C4 E00648B4 24620008 */ addiu $v0, $v1, 8 +/* 3657C8 E00648B8 AEE30004 */ sw $v1, 4($s7) +/* 3657CC E00648BC ACA20000 */ sw $v0, ($a1) +/* 3657D0 E00648C0 AC690000 */ sw $t1, ($v1) +/* 3657D4 E00648C4 8FAD00BC */ lw $t5, 0xbc($sp) +/* 3657D8 E00648C8 3C0BD9FF */ lui $t3, 0xd9ff +/* 3657DC E00648CC 000D1600 */ sll $v0, $t5, 0x18 +/* 3657E0 E00648D0 8FAD00C0 */ lw $t5, 0xc0($sp) +/* 3657E4 E00648D4 3C07FB00 */ lui $a3, 0xfb00 +/* 3657E8 E00648D8 000D2400 */ sll $a0, $t5, 0x10 +/* 3657EC E00648DC 8FAD00C4 */ lw $t5, 0xc4($sp) +/* 3657F0 E00648E0 00441025 */ or $v0, $v0, $a0 +/* 3657F4 E00648E4 000D2200 */ sll $a0, $t5, 8 +/* 3657F8 E00648E8 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 3657FC E00648EC 00441025 */ or $v0, $v0, $a0 +/* 365800 E00648F0 31A800FF */ andi $t0, $t5, 0xff +/* 365804 E00648F4 00481025 */ or $v0, $v0, $t0 +/* 365808 E00648F8 AC620004 */ sw $v0, 4($v1) +/* 36580C E00648FC 24620010 */ addiu $v0, $v1, 0x10 +/* 365810 E0064900 ACA20000 */ sw $v0, ($a1) +/* 365814 E0064904 AC670008 */ sw $a3, 8($v1) +/* 365818 E0064908 8FAD00C8 */ lw $t5, 0xc8($sp) +/* 36581C E006490C 356BFFFF */ ori $t3, $t3, 0xffff +/* 365820 E0064910 000D1600 */ sll $v0, $t5, 0x18 +/* 365824 E0064914 8FAD00CC */ lw $t5, 0xcc($sp) +/* 365828 E0064918 3C06DE00 */ lui $a2, 0xde00 +/* 36582C E006491C 000D2400 */ sll $a0, $t5, 0x10 +/* 365830 E0064920 8FAD00D0 */ lw $t5, 0xd0($sp) +/* 365834 E0064924 00441025 */ or $v0, $v0, $a0 +/* 365838 E0064928 000D2200 */ sll $a0, $t5, 8 +/* 36583C E006492C 00441025 */ or $v0, $v0, $a0 +/* 365840 E0064930 AC62000C */ sw $v0, 0xc($v1) +/* 365844 E0064934 24620018 */ addiu $v0, $v1, 0x18 +/* 365848 E0064938 ACA20000 */ sw $v0, ($a1) +/* 36584C E006493C 24620020 */ addiu $v0, $v1, 0x20 +/* 365850 E0064940 AC6A0010 */ sw $t2, 0x10($v1) +/* 365854 E0064944 AC600014 */ sw $zero, 0x14($v1) +/* 365858 E0064948 ACA20000 */ sw $v0, ($a1) +/* 36585C E006494C 24020200 */ addiu $v0, $zero, 0x200 +/* 365860 E0064950 AC62001C */ sw $v0, 0x1c($v1) +/* 365864 E0064954 24620028 */ addiu $v0, $v1, 0x28 +/* 365868 E0064958 AC6B0018 */ sw $t3, 0x18($v1) +/* 36586C E006495C ACA20000 */ sw $v0, ($a1) +/* 365870 E0064960 AC660020 */ sw $a2, 0x20($v1) +/* 365874 E0064964 8FAD00D4 */ lw $t5, 0xd4($sp) +/* 365878 E0064968 24620030 */ addiu $v0, $v1, 0x30 +/* 36587C E006496C AC6D0024 */ sw $t5, 0x24($v1) +/* 365880 E0064970 ACA20000 */ sw $v0, ($a1) +/* 365884 E0064974 AC690028 */ sw $t1, 0x28($v1) +/* 365888 E0064978 8FAD00A4 */ lw $t5, 0xa4($sp) +/* 36588C E006497C 000D1600 */ sll $v0, $t5, 0x18 +/* 365890 E0064980 8FAD00A8 */ lw $t5, 0xa8($sp) +/* 365894 E0064984 000D2400 */ sll $a0, $t5, 0x10 +/* 365898 E0064988 8FAD00AC */ lw $t5, 0xac($sp) +/* 36589C E006498C 00441025 */ or $v0, $v0, $a0 +/* 3658A0 E0064990 000D2200 */ sll $a0, $t5, 8 +/* 3658A4 E0064994 00441025 */ or $v0, $v0, $a0 +/* 3658A8 E0064998 00481025 */ or $v0, $v0, $t0 +/* 3658AC E006499C AC62002C */ sw $v0, 0x2c($v1) +/* 3658B0 E00649A0 24620038 */ addiu $v0, $v1, 0x38 +/* 3658B4 E00649A4 ACA20000 */ sw $v0, ($a1) +/* 3658B8 E00649A8 AC670030 */ sw $a3, 0x30($v1) +/* 3658BC E00649AC 8FAD00B0 */ lw $t5, 0xb0($sp) +/* 3658C0 E00649B0 3C0CD838 */ lui $t4, 0xd838 +/* 3658C4 E00649B4 000D1600 */ sll $v0, $t5, 0x18 +/* 3658C8 E00649B8 8FAD00B4 */ lw $t5, 0xb4($sp) +/* 3658CC E00649BC 358C0002 */ ori $t4, $t4, 2 +/* 3658D0 E00649C0 000D2400 */ sll $a0, $t5, 0x10 +/* 3658D4 E00649C4 8FAD00B8 */ lw $t5, 0xb8($sp) +/* 3658D8 E00649C8 00441025 */ or $v0, $v0, $a0 +/* 3658DC E00649CC 000D2200 */ sll $a0, $t5, 8 +/* 3658E0 E00649D0 00441025 */ or $v0, $v0, $a0 +/* 3658E4 E00649D4 AC620034 */ sw $v0, 0x34($v1) +/* 3658E8 E00649D8 24620040 */ addiu $v0, $v1, 0x40 +/* 3658EC E00649DC ACA20000 */ sw $v0, ($a1) +/* 3658F0 E00649E0 24620048 */ addiu $v0, $v1, 0x48 +/* 3658F4 E00649E4 AC6A0038 */ sw $t2, 0x38($v1) +/* 3658F8 E00649E8 AC60003C */ sw $zero, 0x3c($v1) +/* 3658FC E00649EC ACA20000 */ sw $v0, ($a1) +/* 365900 E00649F0 24020400 */ addiu $v0, $zero, 0x400 +/* 365904 E00649F4 AC620044 */ sw $v0, 0x44($v1) +/* 365908 E00649F8 24620050 */ addiu $v0, $v1, 0x50 +/* 36590C E00649FC AC6B0040 */ sw $t3, 0x40($v1) +/* 365910 E0064A00 ACA20000 */ sw $v0, ($a1) +/* 365914 E0064A04 AC660048 */ sw $a2, 0x48($v1) +/* 365918 E0064A08 8FAD00D4 */ lw $t5, 0xd4($sp) +/* 36591C E0064A0C 24620058 */ addiu $v0, $v1, 0x58 +/* 365920 E0064A10 AC6D004C */ sw $t5, 0x4c($v1) +/* 365924 E0064A14 ACA20000 */ sw $v0, ($a1) +/* 365928 E0064A18 24020040 */ addiu $v0, $zero, 0x40 +/* 36592C E0064A1C AC6C0050 */ sw $t4, 0x50($v1) +/* 365930 E0064A20 AC620054 */ sw $v0, 0x54($v1) +/* 365934 E0064A24 8FBF00FC */ lw $ra, 0xfc($sp) +/* 365938 E0064A28 8FBE00F8 */ lw $fp, 0xf8($sp) +/* 36593C E0064A2C 8FB700F4 */ lw $s7, 0xf4($sp) +/* 365940 E0064A30 8FB600F0 */ lw $s6, 0xf0($sp) +/* 365944 E0064A34 8FB500EC */ lw $s5, 0xec($sp) +/* 365948 E0064A38 8FB400E8 */ lw $s4, 0xe8($sp) +/* 36594C E0064A3C 8FB300E4 */ lw $s3, 0xe4($sp) +/* 365950 E0064A40 8FB200E0 */ lw $s2, 0xe0($sp) +/* 365954 E0064A44 8FB100DC */ lw $s1, 0xdc($sp) +/* 365958 E0064A48 8FB000D8 */ lw $s0, 0xd8($sp) +/* 36595C E0064A4C D7B80110 */ ldc1 $f24, 0x110($sp) +/* 365960 E0064A50 D7B60108 */ ldc1 $f22, 0x108($sp) +/* 365964 E0064A54 D7B40100 */ ldc1 $f20, 0x100($sp) +/* 365968 E0064A58 03E00008 */ jr $ra +/* 36596C E0064A5C 27BD0118 */ addiu $sp, $sp, 0x118 diff --git a/asm/nonmatchings/code_37C540/func_E007A000.s b/asm/nonmatchings/code_37C540/func_E007A000.s new file mode 100644 index 0000000000..567f19d0c4 --- /dev/null +++ b/asm/nonmatchings/code_37C540/func_E007A000.s @@ -0,0 +1,333 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007A000 +/* 37C540 E007A000 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 37C544 E007A004 F7B60098 */ sdc1 $f22, 0x98($sp) +/* 37C548 E007A008 C7B600D0 */ lwc1 $f22, 0xd0($sp) +/* 37C54C E007A00C F7B800A0 */ sdc1 $f24, 0xa0($sp) +/* 37C550 E007A010 C7B800D4 */ lwc1 $f24, 0xd4($sp) +/* 37C554 E007A014 F7BA00A8 */ sdc1 $f26, 0xa8($sp) +/* 37C558 E007A018 C7BA00D8 */ lwc1 $f26, 0xd8($sp) +/* 37C55C E007A01C AFB20080 */ sw $s2, 0x80($sp) +/* 37C560 E007A020 8FB200DC */ lw $s2, 0xdc($sp) +/* 37C564 E007A024 AFB1007C */ sw $s1, 0x7c($sp) +/* 37C568 E007A028 0080882D */ daddu $s1, $a0, $zero +/* 37C56C E007A02C AFB00078 */ sw $s0, 0x78($sp) +/* 37C570 E007A030 27B00018 */ addiu $s0, $sp, 0x18 +/* 37C574 E007A034 AFBF008C */ sw $ra, 0x8c($sp) +/* 37C578 E007A038 AFB40088 */ sw $s4, 0x88($sp) +/* 37C57C E007A03C AFB30084 */ sw $s3, 0x84($sp) +/* 37C580 E007A040 F7BE00B8 */ sdc1 $f30, 0xb8($sp) +/* 37C584 E007A044 F7BC00B0 */ sdc1 $f28, 0xb0($sp) +/* 37C588 E007A048 F7B40090 */ sdc1 $f20, 0x90($sp) +/* 37C58C E007A04C AFA500C4 */ sw $a1, 0xc4($sp) +/* 37C590 E007A050 AFA600C8 */ sw $a2, 0xc8($sp) +/* 37C594 E007A054 1240011D */ beqz $s2, .LE007A4CC +/* 37C598 E007A058 AFA700CC */ sw $a3, 0xcc($sp) +/* 37C59C E007A05C 4616B002 */ mul.s $f0, $f22, $f22 +/* 37C5A0 E007A060 00000000 */ nop +/* 37C5A4 E007A064 4618C082 */ mul.s $f2, $f24, $f24 +/* 37C5A8 E007A068 00000000 */ nop +/* 37C5AC E007A06C 461AD102 */ mul.s $f4, $f26, $f26 +/* 37C5B0 E007A070 00000000 */ nop +/* 37C5B4 E007A074 46020000 */ add.s $f0, $f0, $f2 +/* 37C5B8 E007A078 46040300 */ add.s $f12, $f0, $f4 +/* 37C5BC E007A07C 4480A000 */ mtc1 $zero, $f20 +/* 37C5C0 E007A080 00000000 */ nop +/* 37C5C4 E007A084 46146032 */ c.eq.s $f12, $f20 +/* 37C5C8 E007A088 00000000 */ nop +/* 37C5CC E007A08C 4501010F */ bc1t .LE007A4CC +/* 37C5D0 E007A090 26520001 */ addiu $s2, $s2, 1 +/* 37C5D4 E007A094 0C080154 */ jal func_E0200550 +/* 37C5D8 E007A098 00000000 */ nop +/* 37C5DC E007A09C 3C01BF80 */ lui $at, 0xbf80 +/* 37C5E0 E007A0A0 44811000 */ mtc1 $at, $f2 +/* 37C5E4 E007A0A4 00000000 */ nop +/* 37C5E8 E007A0A8 46001303 */ div.s $f12, $f2, $f0 +/* 37C5EC E007A0AC 460CB582 */ mul.s $f22, $f22, $f12 +/* 37C5F0 E007A0B0 00000000 */ nop +/* 37C5F4 E007A0B4 460CC602 */ mul.s $f24, $f24, $f12 +/* 37C5F8 E007A0B8 00000000 */ nop +/* 37C5FC E007A0BC 460CD682 */ mul.s $f26, $f26, $f12 +/* 37C600 E007A0C0 00000000 */ nop +/* 37C604 E007A0C4 4614B032 */ c.eq.s $f22, $f20 +/* 37C608 E007A0C8 00000000 */ nop +/* 37C60C E007A0CC 45010007 */ bc1t .LE007A0EC +/* 37C610 E007A0D0 4600A706 */ mov.s $f28, $f20 +/* 37C614 E007A0D4 4600C007 */ neg.s $f0, $f24 +/* 37C618 E007A0D8 46160783 */ div.s $f30, $f0, $f22 +/* 37C61C E007A0DC 3C013F80 */ lui $at, 0x3f80 +/* 37C620 E007A0E0 44817000 */ mtc1 $at, $f14 +/* 37C624 E007A0E4 0801E849 */ j .LE007A124 +/* 37C628 E007A0E8 E7AE0070 */ swc1 $f14, 0x70($sp) +.LE007A0EC: +/* 37C62C E007A0EC 4614C032 */ c.eq.s $f24, $f20 +/* 37C630 E007A0F0 00000000 */ nop +/* 37C634 E007A0F4 45010007 */ bc1t .LE007A114 +/* 37C638 E007A0F8 4600B007 */ neg.s $f0, $f22 +/* 37C63C E007A0FC 46180003 */ div.s $f0, $f0, $f24 +/* 37C640 E007A100 3C013F80 */ lui $at, 0x3f80 +/* 37C644 E007A104 4481F000 */ mtc1 $at, $f30 +/* 37C648 E007A108 4600A706 */ mov.s $f28, $f20 +/* 37C64C E007A10C 0801E849 */ j .LE007A124 +/* 37C650 E007A110 E7A00070 */ swc1 $f0, 0x70($sp) +.LE007A114: +/* 37C654 E007A114 3C013F80 */ lui $at, 0x3f80 +/* 37C658 E007A118 4481F000 */ mtc1 $at, $f30 +/* 37C65C E007A11C 461A0703 */ div.s $f28, $f0, $f26 +/* 37C660 E007A120 E7B40070 */ swc1 $f20, 0x70($sp) +.LE007A124: +/* 37C664 E007A124 461EF002 */ mul.s $f0, $f30, $f30 +/* 37C668 E007A128 00000000 */ nop +/* 37C66C E007A12C 461CE102 */ mul.s $f4, $f28, $f28 +/* 37C670 E007A130 00000000 */ nop +/* 37C674 E007A134 C7B00070 */ lwc1 $f16, 0x70($sp) +/* 37C678 E007A138 46008386 */ mov.s $f14, $f16 +/* 37C67C E007A13C 460E8082 */ mul.s $f2, $f16, $f14 +/* 37C680 E007A140 00000000 */ nop +/* 37C684 E007A144 46020000 */ add.s $f0, $f0, $f2 +/* 37C688 E007A148 46040300 */ add.s $f12, $f0, $f4 +/* 37C68C E007A14C 44800000 */ mtc1 $zero, $f0 +/* 37C690 E007A150 00000000 */ nop +/* 37C694 E007A154 46006032 */ c.eq.s $f12, $f0 +/* 37C698 E007A158 00000000 */ nop +/* 37C69C E007A15C 450100DB */ bc1t .LE007A4CC +/* 37C6A0 E007A160 00000000 */ nop +/* 37C6A4 E007A164 0C080154 */ jal func_E0200550 +/* 37C6A8 E007A168 00000000 */ nop +/* 37C6AC E007A16C 3C013F80 */ lui $at, 0x3f80 +/* 37C6B0 E007A170 44811000 */ mtc1 $at, $f2 +/* 37C6B4 E007A174 00000000 */ nop +/* 37C6B8 E007A178 46001303 */ div.s $f12, $f2, $f0 +/* 37C6BC E007A17C 460CF782 */ mul.s $f30, $f30, $f12 +/* 37C6C0 E007A180 00000000 */ nop +/* 37C6C4 E007A184 C7B00070 */ lwc1 $f16, 0x70($sp) +/* 37C6C8 E007A188 460C8402 */ mul.s $f16, $f16, $f12 +/* 37C6CC E007A18C 00000000 */ nop +/* 37C6D0 E007A190 460CE702 */ mul.s $f28, $f28, $f12 +/* 37C6D4 E007A194 00000000 */ nop +/* 37C6D8 E007A198 3C014100 */ lui $at, 0x4100 +/* 37C6DC E007A19C 44810000 */ mtc1 $at, $f0 +/* 37C6E0 E007A1A0 00000000 */ nop +/* 37C6E4 E007A1A4 4600B582 */ mul.s $f22, $f22, $f0 +/* 37C6E8 E007A1A8 00000000 */ nop +/* 37C6EC E007A1AC 4600C602 */ mul.s $f24, $f24, $f0 +/* 37C6F0 E007A1B0 00000000 */ nop +/* 37C6F4 E007A1B4 4600D682 */ mul.s $f26, $f26, $f0 +/* 37C6F8 E007A1B8 00000000 */ nop +/* 37C6FC E007A1BC 4600F782 */ mul.s $f30, $f30, $f0 +/* 37C700 E007A1C0 00000000 */ nop +/* 37C704 E007A1C4 0200202D */ daddu $a0, $s0, $zero +/* 37C708 E007A1C8 3C02E008 */ lui $v0, %hi(D_E007A504) +/* 37C70C E007A1CC 2442A504 */ addiu $v0, $v0, %lo(D_E007A504) +/* 37C710 E007A1D0 AC820008 */ sw $v0, 8($a0) +/* 37C714 E007A1D4 46008402 */ mul.s $f16, $f16, $f0 +/* 37C718 E007A1D8 00000000 */ nop +/* 37C71C E007A1DC 3C02E008 */ lui $v0, %hi(D_E007A50C) +/* 37C720 E007A1E0 2442A50C */ addiu $v0, $v0, %lo(D_E007A50C) +/* 37C724 E007A1E4 AC82000C */ sw $v0, 0xc($a0) +/* 37C728 E007A1E8 3C02E008 */ lui $v0, %hi(D_E007A840) +/* 37C72C E007A1EC 2442A840 */ addiu $v0, $v0, %lo(D_E007A840) +/* 37C730 E007A1F0 AC800000 */ sw $zero, ($a0) +/* 37C734 E007A1F4 4600E702 */ mul.s $f28, $f28, $f0 +/* 37C738 E007A1F8 00000000 */ nop +/* 37C73C E007A1FC E7B00070 */ swc1 $f16, 0x70($sp) +/* 37C740 E007A200 AC820010 */ sw $v0, 0x10($a0) +/* 37C744 E007A204 2402003D */ addiu $v0, $zero, 0x3d +/* 37C748 E007A208 AC800014 */ sw $zero, 0x14($a0) +/* 37C74C E007A20C 0C080124 */ jal func_E0200490 +/* 37C750 E007A210 AC820004 */ sw $v0, 4($a0) +/* 37C754 E007A214 00122040 */ sll $a0, $s2, 1 +/* 37C758 E007A218 00922021 */ addu $a0, $a0, $s2 +/* 37C75C E007A21C 00042080 */ sll $a0, $a0, 2 +/* 37C760 E007A220 00922021 */ addu $a0, $a0, $s2 +/* 37C764 E007A224 000420C0 */ sll $a0, $a0, 3 +/* 37C768 E007A228 0040A02D */ daddu $s4, $v0, $zero +/* 37C76C E007A22C 0C08012C */ jal func_E02004B0 +/* 37C770 E007A230 AE920008 */ sw $s2, 8($s4) +/* 37C774 E007A234 0040182D */ daddu $v1, $v0, $zero +/* 37C778 E007A238 14600003 */ bnez $v1, .LE007A248 +/* 37C77C E007A23C AE83000C */ sw $v1, 0xc($s4) +.LE007A240: +/* 37C780 E007A240 0801E890 */ j .LE007A240 +/* 37C784 E007A244 00000000 */ nop +.LE007A248: +/* 37C788 E007A248 AC600004 */ sw $zero, 4($v1) +/* 37C78C E007A24C AC710000 */ sw $s1, ($v1) +/* 37C790 E007A250 C7AE00C4 */ lwc1 $f14, 0xc4($sp) +/* 37C794 E007A254 E46E0008 */ swc1 $f14, 8($v1) +/* 37C798 E007A258 C7B000C8 */ lwc1 $f16, 0xc8($sp) +/* 37C79C E007A25C 2402000A */ addiu $v0, $zero, 0xa +/* 37C7A0 E007A260 E470000C */ swc1 $f16, 0xc($v1) +/* 37C7A4 E007A264 C7AE00CC */ lwc1 $f14, 0xcc($sp) +/* 37C7A8 E007A268 24110001 */ addiu $s1, $zero, 1 +/* 37C7AC E007A26C E46E0010 */ swc1 $f14, 0x10($v1) +/* 37C7B0 E007A270 AC62005C */ sw $v0, 0x5c($v1) +/* 37C7B4 E007A274 AC600060 */ sw $zero, 0x60($v1) +/* 37C7B8 E007A278 0232102A */ slt $v0, $s1, $s2 +/* 37C7BC E007A27C 10400091 */ beqz $v0, .LE007A4C4 +/* 37C7C0 E007A280 24630068 */ addiu $v1, $v1, 0x68 +/* 37C7C4 E007A284 2470005C */ addiu $s0, $v1, 0x5c +/* 37C7C8 E007A288 24130048 */ addiu $s3, $zero, 0x48 +/* 37C7CC E007A28C 3C014010 */ lui $at, 0x4010 +/* 37C7D0 E007A290 4481A800 */ mtc1 $at, $f21 +/* 37C7D4 E007A294 4480A000 */ mtc1 $zero, $f20 +.LE007A298: +/* 37C7D8 E007A298 44938000 */ mtc1 $s3, $f16 +/* 37C7DC E007A29C 00000000 */ nop +/* 37C7E0 E007A2A0 46808420 */ cvt.s.w $f16, $f16 +/* 37C7E4 E007A2A4 4406B000 */ mfc1 $a2, $f22 +/* 37C7E8 E007A2A8 4407C000 */ mfc1 $a3, $f24 +/* 37C7EC E007A2AC 44058000 */ mfc1 $a1, $f16 +/* 37C7F0 E007A2B0 27A40030 */ addiu $a0, $sp, 0x30 +/* 37C7F4 E007A2B4 AE00FFAC */ sw $zero, -0x54($s0) +/* 37C7F8 E007A2B8 AE00FFB0 */ sw $zero, -0x50($s0) +/* 37C7FC E007A2BC AE00FFB4 */ sw $zero, -0x4c($s0) +/* 37C800 E007A2C0 0C080104 */ jal func_E0200410 +/* 37C804 E007A2C4 E7BA0010 */ swc1 $f26, 0x10($sp) +/* 37C808 E007A2C8 3C01E008 */ lui $at, %hi(D_E007AC00) +/* 37C80C E007A2CC D42EAC00 */ ldc1 $f14, %lo(D_E007AC00)($at) +/* 37C810 E007A2D0 4600B107 */ neg.s $f4, $f22 +/* 37C814 E007A2D4 46002121 */ cvt.d.s $f4, $f4 +/* 37C818 E007A2D8 462E2102 */ mul.d $f4, $f4, $f14 +/* 37C81C E007A2DC 00000000 */ nop +/* 37C820 E007A2E0 4600C087 */ neg.s $f2, $f24 +/* 37C824 E007A2E4 460010A1 */ cvt.d.s $f2, $f2 +/* 37C828 E007A2E8 462E1082 */ mul.d $f2, $f2, $f14 +/* 37C82C E007A2EC 00000000 */ nop +/* 37C830 E007A2F0 4600D007 */ neg.s $f0, $f26 +/* 37C834 E007A2F4 46000021 */ cvt.d.s $f0, $f0 +/* 37C838 E007A2F8 462E0002 */ mul.d $f0, $f0, $f14 +/* 37C83C E007A2FC 00000000 */ nop +/* 37C840 E007A300 46342102 */ mul.d $f4, $f4, $f20 +/* 37C844 E007A304 00000000 */ nop +/* 37C848 E007A308 46341082 */ mul.d $f2, $f2, $f20 +/* 37C84C E007A30C 00000000 */ nop +/* 37C850 E007A310 4616B180 */ add.s $f6, $f22, $f22 +/* 37C854 E007A314 4618C200 */ add.s $f8, $f24, $f24 +/* 37C858 E007A318 461AD280 */ add.s $f10, $f26, $f26 +/* 37C85C E007A31C E606FFC4 */ swc1 $f6, -0x3c($s0) +/* 37C860 E007A320 46340002 */ mul.d $f0, $f0, $f20 +/* 37C864 E007A324 00000000 */ nop +/* 37C868 E007A328 E606FFB8 */ swc1 $f6, -0x48($s0) +/* 37C86C E007A32C E608FFC8 */ swc1 $f8, -0x38($s0) +/* 37C870 E007A330 E608FFBC */ swc1 $f8, -0x44($s0) +/* 37C874 E007A334 E60AFFCC */ swc1 $f10, -0x34($s0) +/* 37C878 E007A338 E60AFFC0 */ swc1 $f10, -0x40($s0) +/* 37C87C E007A33C 46202120 */ cvt.s.d $f4, $f4 +/* 37C880 E007A340 462010A0 */ cvt.s.d $f2, $f2 +/* 37C884 E007A344 46200020 */ cvt.s.d $f0, $f0 +/* 37C888 E007A348 E604FFDC */ swc1 $f4, -0x24($s0) +/* 37C88C E007A34C E602FFE0 */ swc1 $f2, -0x20($s0) +/* 37C890 E007A350 E600FFE4 */ swc1 $f0, -0x1c($s0) +/* 37C894 E007A354 C7A00030 */ lwc1 $f0, 0x30($sp) +/* 37C898 E007A358 461E0002 */ mul.s $f0, $f0, $f30 +/* 37C89C E007A35C 00000000 */ nop +/* 37C8A0 E007A360 C7A40040 */ lwc1 $f4, 0x40($sp) +/* 37C8A4 E007A364 C7B00070 */ lwc1 $f16, 0x70($sp) +/* 37C8A8 E007A368 46102102 */ mul.s $f4, $f4, $f16 +/* 37C8AC E007A36C 00000000 */ nop +/* 37C8B0 E007A370 C7A20050 */ lwc1 $f2, 0x50($sp) +/* 37C8B4 E007A374 461C1082 */ mul.s $f2, $f2, $f28 +/* 37C8B8 E007A378 00000000 */ nop +/* 37C8BC E007A37C 46040000 */ add.s $f0, $f0, $f4 +/* 37C8C0 E007A380 46020000 */ add.s $f0, $f0, $f2 +/* 37C8C4 E007A384 3C01E008 */ lui $at, %hi(D_E007AC08) +/* 37C8C8 E007A388 D42EAC08 */ ldc1 $f14, %lo(D_E007AC08)($at) +/* 37C8CC E007A38C 46000021 */ cvt.d.s $f0, $f0 +/* 37C8D0 E007A390 462E0002 */ mul.d $f0, $f0, $f14 +/* 37C8D4 E007A394 00000000 */ nop +/* 37C8D8 E007A398 46340002 */ mul.d $f0, $f0, $f20 +/* 37C8DC E007A39C 00000000 */ nop +/* 37C8E0 E007A3A0 46200020 */ cvt.s.d $f0, $f0 +/* 37C8E4 E007A3A4 E600FFD0 */ swc1 $f0, -0x30($s0) +/* 37C8E8 E007A3A8 C7A00034 */ lwc1 $f0, 0x34($sp) +/* 37C8EC E007A3AC 461E0002 */ mul.s $f0, $f0, $f30 +/* 37C8F0 E007A3B0 00000000 */ nop +/* 37C8F4 E007A3B4 C7A40044 */ lwc1 $f4, 0x44($sp) +/* 37C8F8 E007A3B8 46102102 */ mul.s $f4, $f4, $f16 +/* 37C8FC E007A3BC 00000000 */ nop +/* 37C900 E007A3C0 C7A20054 */ lwc1 $f2, 0x54($sp) +/* 37C904 E007A3C4 461C1082 */ mul.s $f2, $f2, $f28 +/* 37C908 E007A3C8 00000000 */ nop +/* 37C90C E007A3CC 46040000 */ add.s $f0, $f0, $f4 +/* 37C910 E007A3D0 46020000 */ add.s $f0, $f0, $f2 +/* 37C914 E007A3D4 46000021 */ cvt.d.s $f0, $f0 +/* 37C918 E007A3D8 462E0002 */ mul.d $f0, $f0, $f14 +/* 37C91C E007A3DC 00000000 */ nop +/* 37C920 E007A3E0 46340002 */ mul.d $f0, $f0, $f20 +/* 37C924 E007A3E4 00000000 */ nop +/* 37C928 E007A3E8 46200020 */ cvt.s.d $f0, $f0 +/* 37C92C E007A3EC E600FFD4 */ swc1 $f0, -0x2c($s0) +/* 37C930 E007A3F0 C7A00038 */ lwc1 $f0, 0x38($sp) +/* 37C934 E007A3F4 461E0002 */ mul.s $f0, $f0, $f30 +/* 37C938 E007A3F8 00000000 */ nop +/* 37C93C E007A3FC C7A40048 */ lwc1 $f4, 0x48($sp) +/* 37C940 E007A400 46102102 */ mul.s $f4, $f4, $f16 +/* 37C944 E007A404 00000000 */ nop +/* 37C948 E007A408 C7A20058 */ lwc1 $f2, 0x58($sp) +/* 37C94C E007A40C 461C1082 */ mul.s $f2, $f2, $f28 +/* 37C950 E007A410 00000000 */ nop +/* 37C954 E007A414 46040000 */ add.s $f0, $f0, $f4 +/* 37C958 E007A418 46020000 */ add.s $f0, $f0, $f2 +/* 37C95C E007A41C 46000021 */ cvt.d.s $f0, $f0 +/* 37C960 E007A420 462E0002 */ mul.d $f0, $f0, $f14 +/* 37C964 E007A424 00000000 */ nop +/* 37C968 E007A428 26730048 */ addiu $s3, $s3, 0x48 +/* 37C96C E007A42C 46340002 */ mul.d $f0, $f0, $f20 +/* 37C970 E007A430 00000000 */ nop +/* 37C974 E007A434 3C0141A0 */ lui $at, 0x41a0 +/* 37C978 E007A438 44813000 */ mtc1 $at, $f6 +/* 37C97C E007A43C 3C014080 */ lui $at, 0x4080 +/* 37C980 E007A440 44812000 */ mtc1 $at, $f4 +/* 37C984 E007A444 3C013F00 */ lui $at, 0x3f00 +/* 37C988 E007A448 44811000 */ mtc1 $at, $f2 +/* 37C98C E007A44C 24040168 */ addiu $a0, $zero, 0x168 +/* 37C990 E007A450 E606FFF4 */ swc1 $f6, -0xc($s0) +/* 37C994 E007A454 E604FFEC */ swc1 $f4, -0x14($s0) +/* 37C998 E007A458 E602FFE8 */ swc1 $f2, -0x18($s0) +/* 37C99C E007A45C 46200020 */ cvt.s.d $f0, $f0 +/* 37C9A0 E007A460 0C080000 */ jal func_E0200000 +/* 37C9A4 E007A464 E600FFD8 */ swc1 $f0, -0x28($s0) +/* 37C9A8 E007A468 3C046666 */ lui $a0, 0x6666 +/* 37C9AC E007A46C 34846667 */ ori $a0, $a0, 0x6667 +/* 37C9B0 E007A470 2623FFFF */ addiu $v1, $s1, -1 +/* 37C9B4 E007A474 26310001 */ addiu $s1, $s1, 1 +/* 37C9B8 E007A478 44820000 */ mtc1 $v0, $f0 +/* 37C9BC E007A47C 00000000 */ nop +/* 37C9C0 E007A480 46800020 */ cvt.s.w $f0, $f0 +/* 37C9C4 E007A484 240200FF */ addiu $v0, $zero, 0xff +/* 37C9C8 E007A488 AE02FFFC */ sw $v0, -4($s0) +/* 37C9CC E007A48C 2402000A */ addiu $v0, $zero, 0xa +/* 37C9D0 E007A490 00640018 */ mult $v1, $a0 +/* 37C9D4 E007A494 00031FC3 */ sra $v1, $v1, 0x1f +/* 37C9D8 E007A498 E600FFF8 */ swc1 $f0, -8($s0) +/* 37C9DC E007A49C E600FFF0 */ swc1 $f0, -0x10($s0) +/* 37C9E0 E007A4A0 AE020000 */ sw $v0, ($s0) +/* 37C9E4 E007A4A4 00004010 */ mfhi $t0 +/* 37C9E8 E007A4A8 00081043 */ sra $v0, $t0, 1 +/* 37C9EC E007A4AC 00431023 */ subu $v0, $v0, $v1 +/* 37C9F0 E007A4B0 00021040 */ sll $v0, $v0, 1 +/* 37C9F4 E007A4B4 AE020008 */ sw $v0, 8($s0) +/* 37C9F8 E007A4B8 0232102A */ slt $v0, $s1, $s2 +/* 37C9FC E007A4BC 1440FF76 */ bnez $v0, .LE007A298 +/* 37CA00 E007A4C0 26100068 */ addiu $s0, $s0, 0x68 +.LE007A4C4: +/* 37CA04 E007A4C4 8FA200E0 */ lw $v0, 0xe0($sp) +/* 37CA08 E007A4C8 AC540000 */ sw $s4, ($v0) +.LE007A4CC: +/* 37CA0C E007A4CC 8FBF008C */ lw $ra, 0x8c($sp) +/* 37CA10 E007A4D0 8FB40088 */ lw $s4, 0x88($sp) +/* 37CA14 E007A4D4 8FB30084 */ lw $s3, 0x84($sp) +/* 37CA18 E007A4D8 8FB20080 */ lw $s2, 0x80($sp) +/* 37CA1C E007A4DC 8FB1007C */ lw $s1, 0x7c($sp) +/* 37CA20 E007A4E0 8FB00078 */ lw $s0, 0x78($sp) +/* 37CA24 E007A4E4 D7BE00B8 */ ldc1 $f30, 0xb8($sp) +/* 37CA28 E007A4E8 D7BC00B0 */ ldc1 $f28, 0xb0($sp) +/* 37CA2C E007A4EC D7BA00A8 */ ldc1 $f26, 0xa8($sp) +/* 37CA30 E007A4F0 D7B800A0 */ ldc1 $f24, 0xa0($sp) +/* 37CA34 E007A4F4 D7B60098 */ ldc1 $f22, 0x98($sp) +/* 37CA38 E007A4F8 D7B40090 */ ldc1 $f20, 0x90($sp) +/* 37CA3C E007A4FC 03E00008 */ jr $ra +/* 37CA40 E007A500 27BD00C0 */ addiu $sp, $sp, 0xc0 diff --git a/asm/nonmatchings/code_37C540/func_E007A504.s b/asm/nonmatchings/code_37C540/func_E007A504.s new file mode 100644 index 0000000000..ab7d6714f7 --- /dev/null +++ b/asm/nonmatchings/code_37C540/func_E007A504.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007A504 +/* 37CA44 E007A504 03E00008 */ jr $ra +/* 37CA48 E007A508 00000000 */ nop diff --git a/asm/nonmatchings/code_37C540/func_E007A50C.s b/asm/nonmatchings/code_37C540/func_E007A50C.s new file mode 100644 index 0000000000..274777d752 --- /dev/null +++ b/asm/nonmatchings/code_37C540/func_E007A50C.s @@ -0,0 +1,220 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007A50C +/* 37CA4C E007A50C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 37CA50 E007A510 AFBF0010 */ sw $ra, 0x10($sp) +/* 37CA54 E007A514 8C85000C */ lw $a1, 0xc($a0) +/* 37CA58 E007A518 8CA2005C */ lw $v0, 0x5c($a1) +/* 37CA5C E007A51C 8CA30060 */ lw $v1, 0x60($a1) +/* 37CA60 E007A520 8CA70004 */ lw $a3, 4($a1) +/* 37CA64 E007A524 2442FFFF */ addiu $v0, $v0, -1 +/* 37CA68 E007A528 24630001 */ addiu $v1, $v1, 1 +/* 37CA6C E007A52C ACA2005C */ sw $v0, 0x5c($a1) +/* 37CA70 E007A530 04410008 */ bgez $v0, .LE007A554 +/* 37CA74 E007A534 ACA30060 */ sw $v1, 0x60($a1) +/* 37CA78 E007A538 24020002 */ addiu $v0, $zero, 2 +/* 37CA7C E007A53C 14E20005 */ bne $a3, $v0, .LE007A554 +/* 37CA80 E007A540 00000000 */ nop +/* 37CA84 E007A544 0C080128 */ jal func_E02004A0 +/* 37CA88 E007A548 00000000 */ nop +/* 37CA8C E007A54C 0801EA0D */ j .LE007A834 +/* 37CA90 E007A550 00000000 */ nop +.LE007A554: +/* 37CA94 E007A554 8CA8005C */ lw $t0, 0x5c($a1) +/* 37CA98 E007A558 8C820008 */ lw $v0, 8($a0) +/* 37CA9C E007A55C 24060001 */ addiu $a2, $zero, 1 +/* 37CAA0 E007A560 00C2102A */ slt $v0, $a2, $v0 +/* 37CAA4 E007A564 104000AE */ beqz $v0, .LE007A820 +/* 37CAA8 E007A568 24A50068 */ addiu $a1, $a1, 0x68 +/* 37CAAC E007A56C 24A3004C */ addiu $v1, $a1, 0x4c +/* 37CAB0 E007A570 3C01E008 */ lui $at, %hi(D_E007AC10) +/* 37CAB4 E007A574 D430AC10 */ ldc1 $f16, %lo(D_E007AC10)($at) +/* 37CAB8 E007A578 3C01E008 */ lui $at, %hi(D_E007AC18) +/* 37CABC E007A57C D42EAC18 */ ldc1 $f14, %lo(D_E007AC18)($at) +.LE007A580: +/* 37CAC0 E007A580 8C620018 */ lw $v0, 0x18($v1) +/* 37CAC4 E007A584 18400003 */ blez $v0, .LE007A594 +/* 37CAC8 E007A588 2442FFFF */ addiu $v0, $v0, -1 +/* 37CACC E007A58C 1C40009F */ bgtz $v0, .LE007A80C +/* 37CAD0 E007A590 AC620018 */ sw $v0, 0x18($v1) +.LE007A594: +/* 37CAD4 E007A594 8C620010 */ lw $v0, 0x10($v1) +/* 37CAD8 E007A598 2442FFFF */ addiu $v0, $v0, -1 +/* 37CADC E007A59C 0040282D */ daddu $a1, $v0, $zero +/* 37CAE0 E007A5A0 04A10024 */ bgez $a1, .LE007A634 +/* 37CAE4 E007A5A4 AC650010 */ sw $a1, 0x10($v1) +/* 37CAE8 E007A5A8 54E0001B */ bnel $a3, $zero, .LE007A618 +/* 37CAEC E007A5AC AC60FFBC */ sw $zero, -0x44($v1) +/* 37CAF0 E007A5B0 24050009 */ addiu $a1, $zero, 9 +/* 37CAF4 E007A5B4 C460FFD4 */ lwc1 $f0, -0x2c($v1) +/* 37CAF8 E007A5B8 C462FFD8 */ lwc1 $f2, -0x28($v1) +/* 37CAFC E007A5BC C464FFDC */ lwc1 $f4, -0x24($v1) +/* 37CB00 E007A5C0 3C013F00 */ lui $at, 0x3f00 +/* 37CB04 E007A5C4 44813000 */ mtc1 $at, $f6 +/* 37CB08 E007A5C8 3C014080 */ lui $at, 0x4080 +/* 37CB0C E007A5CC 44814000 */ mtc1 $at, $f8 +/* 37CB10 E007A5D0 3C0141A0 */ lui $at, 0x41a0 +/* 37CB14 E007A5D4 44815000 */ mtc1 $at, $f10 +/* 37CB18 E007A5D8 C46C0008 */ lwc1 $f12, 8($v1) +/* 37CB1C E007A5DC 240200FF */ addiu $v0, $zero, 0xff +/* 37CB20 E007A5E0 AC62000C */ sw $v0, 0xc($v1) +/* 37CB24 E007A5E4 00A0102D */ daddu $v0, $a1, $zero +/* 37CB28 E007A5E8 AC60FFBC */ sw $zero, -0x44($v1) +/* 37CB2C E007A5EC AC60FFC0 */ sw $zero, -0x40($v1) +/* 37CB30 E007A5F0 AC60FFC4 */ sw $zero, -0x3c($v1) +/* 37CB34 E007A5F4 AC620010 */ sw $v0, 0x10($v1) +/* 37CB38 E007A5F8 E460FFC8 */ swc1 $f0, -0x38($v1) +/* 37CB3C E007A5FC E462FFCC */ swc1 $f2, -0x34($v1) +/* 37CB40 E007A600 E464FFD0 */ swc1 $f4, -0x30($v1) +/* 37CB44 E007A604 E466FFF8 */ swc1 $f6, -8($v1) +/* 37CB48 E007A608 E468FFFC */ swc1 $f8, -4($v1) +/* 37CB4C E007A60C E46A0004 */ swc1 $f10, 4($v1) +/* 37CB50 E007A610 0801E98D */ j .LE007A634 +/* 37CB54 E007A614 E46C0000 */ swc1 $f12, ($v1) +.LE007A618: +/* 37CB58 E007A618 AC60FFC0 */ sw $zero, -0x40($v1) +/* 37CB5C E007A61C AC60FFC4 */ sw $zero, -0x3c($v1) +/* 37CB60 E007A620 AC60FFC8 */ sw $zero, -0x38($v1) +/* 37CB64 E007A624 AC60FFCC */ sw $zero, -0x34($v1) +/* 37CB68 E007A628 AC60FFD0 */ sw $zero, -0x30($v1) +/* 37CB6C E007A62C AC60000C */ sw $zero, 0xc($v1) +/* 37CB70 E007A630 AC600010 */ sw $zero, 0x10($v1) +.LE007A634: +/* 37CB74 E007A634 24A2FFFC */ addiu $v0, $a1, -4 +/* 37CB78 E007A638 2C420003 */ sltiu $v0, $v0, 3 +/* 37CB7C E007A63C 1040000D */ beqz $v0, .LE007A674 +/* 37CB80 E007A640 28A20008 */ slti $v0, $a1, 8 +/* 37CB84 E007A644 C466FFC8 */ lwc1 $f6, -0x38($v1) +/* 37CB88 E007A648 C460FFE0 */ lwc1 $f0, -0x20($v1) +/* 37CB8C E007A64C C464FFCC */ lwc1 $f4, -0x34($v1) +/* 37CB90 E007A650 46003180 */ add.s $f6, $f6, $f0 +/* 37CB94 E007A654 C460FFE4 */ lwc1 $f0, -0x1c($v1) +/* 37CB98 E007A658 C462FFD0 */ lwc1 $f2, -0x30($v1) +/* 37CB9C E007A65C 46002100 */ add.s $f4, $f4, $f0 +/* 37CBA0 E007A660 C460FFE8 */ lwc1 $f0, -0x18($v1) +/* 37CBA4 E007A664 46001080 */ add.s $f2, $f2, $f0 +/* 37CBA8 E007A668 E466FFC8 */ swc1 $f6, -0x38($v1) +/* 37CBAC E007A66C E464FFCC */ swc1 $f4, -0x34($v1) +/* 37CBB0 E007A670 E462FFD0 */ swc1 $f2, -0x30($v1) +.LE007A674: +/* 37CBB4 E007A674 10400023 */ beqz $v0, .LE007A704 +/* 37CBB8 E007A678 00000000 */ nop +/* 37CBBC E007A67C C468FFF8 */ lwc1 $f8, -8($v1) +/* 37CBC0 E007A680 3C014008 */ lui $at, 0x4008 +/* 37CBC4 E007A684 44813800 */ mtc1 $at, $f7 +/* 37CBC8 E007A688 44803000 */ mtc1 $zero, $f6 +/* 37CBCC E007A68C 46004221 */ cvt.d.s $f8, $f8 +/* 37CBD0 E007A690 46283181 */ sub.d $f6, $f6, $f8 +/* 37CBD4 E007A694 46303182 */ mul.d $f6, $f6, $f16 +/* 37CBD8 E007A698 00000000 */ nop +/* 37CBDC E007A69C 3C014020 */ lui $at, 0x4020 +/* 37CBE0 E007A6A0 44810800 */ mtc1 $at, $f1 +/* 37CBE4 E007A6A4 44800000 */ mtc1 $zero, $f0 +/* 37CBE8 E007A6A8 00000000 */ nop +/* 37CBEC E007A6AC 46203182 */ mul.d $f6, $f6, $f0 +/* 37CBF0 E007A6B0 00000000 */ nop +/* 37CBF4 E007A6B4 C464FFFC */ lwc1 $f4, -4($v1) +/* 37CBF8 E007A6B8 3C013FE0 */ lui $at, 0x3fe0 +/* 37CBFC E007A6BC 44810800 */ mtc1 $at, $f1 +/* 37CC00 E007A6C0 44800000 */ mtc1 $zero, $f0 +/* 37CC04 E007A6C4 46002121 */ cvt.d.s $f4, $f4 +/* 37CC08 E007A6C8 46240001 */ sub.d $f0, $f0, $f4 +/* 37CC0C E007A6CC 46300002 */ mul.d $f0, $f0, $f16 +/* 37CC10 E007A6D0 00000000 */ nop +/* 37CC14 E007A6D4 3C014018 */ lui $at, 0x4018 +/* 37CC18 E007A6D8 44811800 */ mtc1 $at, $f3 +/* 37CC1C E007A6DC 44801000 */ mtc1 $zero, $f2 +/* 37CC20 E007A6E0 00000000 */ nop +/* 37CC24 E007A6E4 46220002 */ mul.d $f0, $f0, $f2 +/* 37CC28 E007A6E8 00000000 */ nop +/* 37CC2C E007A6EC 46264200 */ add.d $f8, $f8, $f6 +/* 37CC30 E007A6F0 46202100 */ add.d $f4, $f4, $f0 +/* 37CC34 E007A6F4 46204220 */ cvt.s.d $f8, $f8 +/* 37CC38 E007A6F8 E468FFF8 */ swc1 $f8, -8($v1) +/* 37CC3C E007A6FC 46202120 */ cvt.s.d $f4, $f4 +/* 37CC40 E007A700 E464FFFC */ swc1 $f4, -4($v1) +.LE007A704: +/* 37CC44 E007A704 C466FFC8 */ lwc1 $f6, -0x38($v1) +/* 37CC48 E007A708 C460FFEC */ lwc1 $f0, -0x14($v1) +/* 37CC4C E007A70C C462FFCC */ lwc1 $f2, -0x34($v1) +/* 37CC50 E007A710 46003180 */ add.s $f6, $f6, $f0 +/* 37CC54 E007A714 C460FFF0 */ lwc1 $f0, -0x10($v1) +/* 37CC58 E007A718 C464FFD0 */ lwc1 $f4, -0x30($v1) +/* 37CC5C E007A71C 46001080 */ add.s $f2, $f2, $f0 +/* 37CC60 E007A720 C460FFF4 */ lwc1 $f0, -0xc($v1) +/* 37CC64 E007A724 46002100 */ add.s $f4, $f4, $f0 +/* 37CC68 E007A728 44800000 */ mtc1 $zero, $f0 +/* 37CC6C E007A72C E466FFC8 */ swc1 $f6, -0x38($v1) +/* 37CC70 E007A730 4600103C */ c.lt.s $f2, $f0 +/* 37CC74 E007A734 E462FFCC */ swc1 $f2, -0x34($v1) +/* 37CC78 E007A738 45000024 */ bc1f .LE007A7CC +/* 37CC7C E007A73C E464FFD0 */ swc1 $f4, -0x30($v1) +/* 37CC80 E007A740 460031A1 */ cvt.d.s $f6, $f6 +/* 37CC84 E007A744 462E3182 */ mul.d $f6, $f6, $f14 +/* 37CC88 E007A748 00000000 */ nop +/* 37CC8C E007A74C C4680004 */ lwc1 $f8, 4($v1) +/* 37CC90 E007A750 3C01E008 */ lui $at, %hi(D_E007AC20) +/* 37CC94 E007A754 D420AC20 */ ldc1 $f0, %lo(D_E007AC20)($at) +/* 37CC98 E007A758 46004221 */ cvt.d.s $f8, $f8 +/* 37CC9C E007A75C 46204202 */ mul.d $f8, $f8, $f0 +/* 37CCA0 E007A760 00000000 */ nop +/* 37CCA4 E007A764 46001106 */ mov.s $f4, $f2 +/* 37CCA8 E007A768 3C01E008 */ lui $at, %hi(D_E007AC28) +/* 37CCAC E007A76C D420AC28 */ ldc1 $f0, %lo(D_E007AC28)($at) +/* 37CCB0 E007A770 46002121 */ cvt.d.s $f4, $f4 +/* 37CCB4 E007A774 46202102 */ mul.d $f4, $f4, $f0 +/* 37CCB8 E007A778 00000000 */ nop +/* 37CCBC E007A77C 3C01E008 */ lui $at, %hi(D_E007AC30) +/* 37CCC0 E007A780 D420AC30 */ ldc1 $f0, %lo(D_E007AC30)($at) +/* 37CCC4 E007A784 C462000C */ lwc1 $f2, 0xc($v1) +/* 37CCC8 E007A788 468010A1 */ cvt.d.w $f2, $f2 +/* 37CCCC E007A78C 46201082 */ mul.d $f2, $f2, $f0 +/* 37CCD0 E007A790 00000000 */ nop +/* 37CCD4 E007A794 C460FFD0 */ lwc1 $f0, -0x30($v1) +/* 37CCD8 E007A798 46000021 */ cvt.d.s $f0, $f0 +/* 37CCDC E007A79C 462E0002 */ mul.d $f0, $f0, $f14 +/* 37CCE0 E007A7A0 00000000 */ nop +/* 37CCE4 E007A7A4 462031A0 */ cvt.s.d $f6, $f6 +/* 37CCE8 E007A7A8 E466FFC8 */ swc1 $f6, -0x38($v1) +/* 37CCEC E007A7AC 46204220 */ cvt.s.d $f8, $f8 +/* 37CCF0 E007A7B0 E4680004 */ swc1 $f8, 4($v1) +/* 37CCF4 E007A7B4 46202120 */ cvt.s.d $f4, $f4 +/* 37CCF8 E007A7B8 E464FFCC */ swc1 $f4, -0x34($v1) +/* 37CCFC E007A7BC 4620148D */ trunc.w.d $f18, $f2 +/* 37CD00 E007A7C0 E472000C */ swc1 $f18, 0xc($v1) +/* 37CD04 E007A7C4 46200020 */ cvt.s.d $f0, $f0 +/* 37CD08 E007A7C8 E460FFD0 */ swc1 $f0, -0x30($v1) +.LE007A7CC: +/* 37CD0C E007A7CC C468FFBC */ lwc1 $f8, -0x44($v1) +/* 37CD10 E007A7D0 C460FFC8 */ lwc1 $f0, -0x38($v1) +/* 37CD14 E007A7D4 C466FFC0 */ lwc1 $f6, -0x40($v1) +/* 37CD18 E007A7D8 46004200 */ add.s $f8, $f8, $f0 +/* 37CD1C E007A7DC C460FFCC */ lwc1 $f0, -0x34($v1) +/* 37CD20 E007A7E0 C464FFC4 */ lwc1 $f4, -0x3c($v1) +/* 37CD24 E007A7E4 46003180 */ add.s $f6, $f6, $f0 +/* 37CD28 E007A7E8 C460FFD0 */ lwc1 $f0, -0x30($v1) +/* 37CD2C E007A7EC C4620004 */ lwc1 $f2, 4($v1) +/* 37CD30 E007A7F0 46002100 */ add.s $f4, $f4, $f0 +/* 37CD34 E007A7F4 C4600000 */ lwc1 $f0, ($v1) +/* 37CD38 E007A7F8 E468FFBC */ swc1 $f8, -0x44($v1) +/* 37CD3C E007A7FC 46020000 */ add.s $f0, $f0, $f2 +/* 37CD40 E007A800 E466FFC0 */ swc1 $f6, -0x40($v1) +/* 37CD44 E007A804 E464FFC4 */ swc1 $f4, -0x3c($v1) +/* 37CD48 E007A808 E4600000 */ swc1 $f0, ($v1) +.LE007A80C: +/* 37CD4C E007A80C 24C60001 */ addiu $a2, $a2, 1 +/* 37CD50 E007A810 8C820008 */ lw $v0, 8($a0) +/* 37CD54 E007A814 00C2102A */ slt $v0, $a2, $v0 +/* 37CD58 E007A818 1440FF59 */ bnez $v0, .LE007A580 +/* 37CD5C E007A81C 24630068 */ addiu $v1, $v1, 0x68 +.LE007A820: +/* 37CD60 E007A820 05010004 */ bgez $t0, .LE007A834 +/* 37CD64 E007A824 2402000A */ addiu $v0, $zero, 0xa +/* 37CD68 E007A828 8C85000C */ lw $a1, 0xc($a0) +/* 37CD6C E007A82C ACA2005C */ sw $v0, 0x5c($a1) +/* 37CD70 E007A830 ACA00060 */ sw $zero, 0x60($a1) +.LE007A834: +/* 37CD74 E007A834 8FBF0010 */ lw $ra, 0x10($sp) +/* 37CD78 E007A838 03E00008 */ jr $ra +/* 37CD7C E007A83C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_37C540/func_E007A840.s b/asm/nonmatchings/code_37C540/func_E007A840.s new file mode 100644 index 0000000000..52dba67b5d --- /dev/null +++ b/asm/nonmatchings/code_37C540/func_E007A840.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007A840 +/* 37CD80 E007A840 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 37CD84 E007A844 3C02E008 */ lui $v0, %hi(D_E007A88C) +/* 37CD88 E007A848 2442A88C */ addiu $v0, $v0, %lo(D_E007A88C) +/* 37CD8C E007A84C AFA2001C */ sw $v0, 0x1c($sp) +/* 37CD90 E007A850 2402002D */ addiu $v0, $zero, 0x2d +/* 37CD94 E007A854 AFA40018 */ sw $a0, 0x18($sp) +/* 37CD98 E007A858 27A40010 */ addiu $a0, $sp, 0x10 +/* 37CD9C E007A85C AFBF0020 */ sw $ra, 0x20($sp) +/* 37CDA0 E007A860 AFA00014 */ sw $zero, 0x14($sp) +/* 37CDA4 E007A864 0C080120 */ jal func_E0200480 +/* 37CDA8 E007A868 AFA20010 */ sw $v0, 0x10($sp) +/* 37CDAC E007A86C 8C430000 */ lw $v1, ($v0) +/* 37CDB0 E007A870 34630002 */ ori $v1, $v1, 2 +/* 37CDB4 E007A874 AC430000 */ sw $v1, ($v0) +/* 37CDB8 E007A878 8FBF0020 */ lw $ra, 0x20($sp) +/* 37CDBC E007A87C 03E00008 */ jr $ra +/* 37CDC0 E007A880 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_37C540/func_E007A884.s b/asm/nonmatchings/code_37C540/func_E007A884.s new file mode 100644 index 0000000000..2d7f4b1bad --- /dev/null +++ b/asm/nonmatchings/code_37C540/func_E007A884.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007A884 +/* 37CDC4 E007A884 03E00008 */ jr $ra +/* 37CDC8 E007A888 00000000 */ nop diff --git a/asm/nonmatchings/code_37C540/func_E007A88C.s b/asm/nonmatchings/code_37C540/func_E007A88C.s new file mode 100644 index 0000000000..f822edc8fd --- /dev/null +++ b/asm/nonmatchings/code_37C540/func_E007A88C.s @@ -0,0 +1,227 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007A88C +/* 37CDCC E007A88C 27BDFF30 */ addiu $sp, $sp, -0xd0 +/* 37CDD0 E007A890 AFBE00B8 */ sw $fp, 0xb8($sp) +/* 37CDD4 E007A894 0080F02D */ daddu $fp, $a0, $zero +/* 37CDD8 E007A898 3C06DB06 */ lui $a2, 0xdb06 +/* 37CDDC E007A89C 34C60024 */ ori $a2, $a2, 0x24 +/* 37CDE0 E007A8A0 27A40018 */ addiu $a0, $sp, 0x18 +/* 37CDE4 E007A8A4 AFB00098 */ sw $s0, 0x98($sp) +/* 37CDE8 E007A8A8 3C100001 */ lui $s0, 1 +/* 37CDEC E007A8AC 36101630 */ ori $s0, $s0, 0x1630 +/* 37CDF0 E007A8B0 AFB500AC */ sw $s5, 0xac($sp) +/* 37CDF4 E007A8B4 24150001 */ addiu $s5, $zero, 1 +/* 37CDF8 E007A8B8 AFB1009C */ sw $s1, 0x9c($sp) +/* 37CDFC E007A8BC 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 37CE00 E007A8C0 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 37CE04 E007A8C4 3C02E700 */ lui $v0, 0xe700 +/* 37CE08 E007A8C8 AFBF00BC */ sw $ra, 0xbc($sp) +/* 37CE0C E007A8CC AFB700B4 */ sw $s7, 0xb4($sp) +/* 37CE10 E007A8D0 AFB600B0 */ sw $s6, 0xb0($sp) +/* 37CE14 E007A8D4 AFB400A8 */ sw $s4, 0xa8($sp) +/* 37CE18 E007A8D8 AFB300A4 */ sw $s3, 0xa4($sp) +/* 37CE1C E007A8DC AFB200A0 */ sw $s2, 0xa0($sp) +/* 37CE20 E007A8E0 F7B600C8 */ sdc1 $f22, 0xc8($sp) +/* 37CE24 E007A8E4 F7B400C0 */ sdc1 $f20, 0xc0($sp) +/* 37CE28 E007A8E8 8E230000 */ lw $v1, ($s1) +/* 37CE2C E007A8EC 8FD2000C */ lw $s2, 0xc($fp) +/* 37CE30 E007A8F0 0060282D */ daddu $a1, $v1, $zero +/* 37CE34 E007A8F4 24630008 */ addiu $v1, $v1, 8 +/* 37CE38 E007A8F8 AE230000 */ sw $v1, ($s1) +/* 37CE3C E007A8FC ACA20000 */ sw $v0, ($a1) +/* 37CE40 E007A900 24620008 */ addiu $v0, $v1, 8 +/* 37CE44 E007A904 ACA00004 */ sw $zero, 4($a1) +/* 37CE48 E007A908 AE220000 */ sw $v0, ($s1) +/* 37CE4C E007A90C AC660000 */ sw $a2, ($v1) +/* 37CE50 E007A910 8FC50010 */ lw $a1, 0x10($fp) +/* 37CE54 E007A914 24620010 */ addiu $v0, $v1, 0x10 +/* 37CE58 E007A918 AE220000 */ sw $v0, ($s1) +/* 37CE5C E007A91C 8CA5001C */ lw $a1, 0x1c($a1) +/* 37CE60 E007A920 3C02DE00 */ lui $v0, 0xde00 +/* 37CE64 E007A924 AC620008 */ sw $v0, 8($v1) +/* 37CE68 E007A928 3C020900 */ lui $v0, 0x900 +/* 37CE6C E007A92C 24420240 */ addiu $v0, $v0, 0x240 +/* 37CE70 E007A930 AC62000C */ sw $v0, 0xc($v1) +/* 37CE74 E007A934 3C028000 */ lui $v0, 0x8000 +/* 37CE78 E007A938 00A22821 */ addu $a1, $a1, $v0 +/* 37CE7C E007A93C AC650004 */ sw $a1, 4($v1) +/* 37CE80 E007A940 8E450008 */ lw $a1, 8($s2) +/* 37CE84 E007A944 8E46000C */ lw $a2, 0xc($s2) +/* 37CE88 E007A948 8E470010 */ lw $a3, 0x10($s2) +/* 37CE8C E007A94C 0C080108 */ jal func_E0200420 +/* 37CE90 E007A950 26520068 */ addiu $s2, $s2, 0x68 +/* 37CE94 E007A954 27A40018 */ addiu $a0, $sp, 0x18 +/* 37CE98 E007A958 3C148007 */ lui $s4, %hi(D_800741F0) +/* 37CE9C E007A95C 269441F0 */ addiu $s4, $s4, %lo(D_800741F0) +/* 37CEA0 E007A960 3C16800A */ lui $s6, %hi(D_8009A674) +/* 37CEA4 E007A964 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 37CEA8 E007A968 96850000 */ lhu $a1, ($s4) +/* 37CEAC E007A96C 8EC20000 */ lw $v0, ($s6) +/* 37CEB0 E007A970 00052980 */ sll $a1, $a1, 6 +/* 37CEB4 E007A974 00B02821 */ addu $a1, $a1, $s0 +/* 37CEB8 E007A978 0C080118 */ jal func_E0200460 +/* 37CEBC E007A97C 00452821 */ addu $a1, $v0, $a1 +/* 37CEC0 E007A980 3C03DA38 */ lui $v1, 0xda38 +/* 37CEC4 E007A984 34630002 */ ori $v1, $v1, 2 +/* 37CEC8 E007A988 8E220000 */ lw $v0, ($s1) +/* 37CECC E007A98C 96840000 */ lhu $a0, ($s4) +/* 37CED0 E007A990 0040282D */ daddu $a1, $v0, $zero +/* 37CED4 E007A994 24420008 */ addiu $v0, $v0, 8 +/* 37CED8 E007A998 AE220000 */ sw $v0, ($s1) +/* 37CEDC E007A99C 3082FFFF */ andi $v0, $a0, 0xffff +/* 37CEE0 E007A9A0 00021180 */ sll $v0, $v0, 6 +/* 37CEE4 E007A9A4 ACA30000 */ sw $v1, ($a1) +/* 37CEE8 E007A9A8 8EC30000 */ lw $v1, ($s6) +/* 37CEEC E007A9AC 00501021 */ addu $v0, $v0, $s0 +/* 37CEF0 E007A9B0 00621821 */ addu $v1, $v1, $v0 +/* 37CEF4 E007A9B4 ACA30004 */ sw $v1, 4($a1) +/* 37CEF8 E007A9B8 8FC20008 */ lw $v0, 8($fp) +/* 37CEFC E007A9BC 00952021 */ addu $a0, $a0, $s5 +/* 37CF00 E007A9C0 02A2102A */ slt $v0, $s5, $v0 +/* 37CF04 E007A9C4 1040006F */ beqz $v0, .LE007AB84 +/* 37CF08 E007A9C8 A6840000 */ sh $a0, ($s4) +/* 37CF0C E007A9CC 0220982D */ daddu $s3, $s1, $zero +/* 37CF10 E007A9D0 27B10058 */ addiu $s1, $sp, 0x58 +/* 37CF14 E007A9D4 02C0B82D */ daddu $s7, $s6, $zero +/* 37CF18 E007A9D8 0280B02D */ daddu $s6, $s4, $zero +/* 37CF1C E007A9DC 3C140001 */ lui $s4, 1 +/* 37CF20 E007A9E0 36941630 */ ori $s4, $s4, 0x1630 +/* 37CF24 E007A9E4 2650004C */ addiu $s0, $s2, 0x4c +/* 37CF28 E007A9E8 4480A000 */ mtc1 $zero, $f20 +/* 37CF2C E007A9EC 3C013F80 */ lui $at, 0x3f80 +/* 37CF30 E007A9F0 4481B000 */ mtc1 $at, $f22 +.LE007A9F4: +/* 37CF34 E007A9F4 3C05C8FF */ lui $a1, 0xc8ff +/* 37CF38 E007A9F8 8E620000 */ lw $v0, ($s3) +/* 37CF3C E007A9FC 34A5FF00 */ ori $a1, $a1, 0xff00 +/* 37CF40 E007AA00 0040182D */ daddu $v1, $v0, $zero +/* 37CF44 E007AA04 24420008 */ addiu $v0, $v0, 8 +/* 37CF48 E007AA08 AE620000 */ sw $v0, ($s3) +/* 37CF4C E007AA0C 3C02FA00 */ lui $v0, 0xfa00 +/* 37CF50 E007AA10 AC620000 */ sw $v0, ($v1) +/* 37CF54 E007AA14 9202000F */ lbu $v0, 0xf($s0) +/* 37CF58 E007AA18 27A40018 */ addiu $a0, $sp, 0x18 +/* 37CF5C E007AA1C 00451025 */ or $v0, $v0, $a1 +/* 37CF60 E007AA20 AC620004 */ sw $v0, 4($v1) +/* 37CF64 E007AA24 8E05FFBC */ lw $a1, -0x44($s0) +/* 37CF68 E007AA28 8E06FFC0 */ lw $a2, -0x40($s0) +/* 37CF6C E007AA2C 8E07FFC4 */ lw $a3, -0x3c($s0) +/* 37CF70 E007AA30 0C080108 */ jal func_E0200420 +/* 37CF74 E007AA34 26B50001 */ addiu $s5, $s5, 1 +/* 37CF78 E007AA38 3C08800B */ lui $t0, %hi(gCameras) +/* 37CF7C E007AA3C 25081D80 */ addiu $t0, $t0, %lo(gCameras) +/* 37CF80 E007AA40 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 37CF84 E007AA44 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 37CF88 E007AA48 4406A000 */ mfc1 $a2, $f20 +/* 37CF8C E007AA4C 00031080 */ sll $v0, $v1, 2 +/* 37CF90 E007AA50 00431021 */ addu $v0, $v0, $v1 +/* 37CF94 E007AA54 00021080 */ sll $v0, $v0, 2 +/* 37CF98 E007AA58 00431023 */ subu $v0, $v0, $v1 +/* 37CF9C E007AA5C 000218C0 */ sll $v1, $v0, 3 +/* 37CFA0 E007AA60 00431021 */ addu $v0, $v0, $v1 +/* 37CFA4 E007AA64 000210C0 */ sll $v0, $v0, 3 +/* 37CFA8 E007AA68 00481021 */ addu $v0, $v0, $t0 +/* 37CFAC E007AA6C C440006C */ lwc1 $f0, 0x6c($v0) +/* 37CFB0 E007AA70 4407B000 */ mfc1 $a3, $f22 +/* 37CFB4 E007AA74 46000007 */ neg.s $f0, $f0 +/* 37CFB8 E007AA78 44050000 */ mfc1 $a1, $f0 +/* 37CFBC E007AA7C 0220202D */ daddu $a0, $s1, $zero +/* 37CFC0 E007AA80 0C080104 */ jal func_E0200410 +/* 37CFC4 E007AA84 E7B40010 */ swc1 $f20, 0x10($sp) +/* 37CFC8 E007AA88 0220202D */ daddu $a0, $s1, $zero +/* 37CFCC E007AA8C 27A50018 */ addiu $a1, $sp, 0x18 +/* 37CFD0 E007AA90 0C080114 */ jal func_E0200450 +/* 37CFD4 E007AA94 00A0302D */ daddu $a2, $a1, $zero +/* 37CFD8 E007AA98 0220202D */ daddu $a0, $s1, $zero +/* 37CFDC E007AA9C 8E05FFF8 */ lw $a1, -8($s0) +/* 37CFE0 E007AAA0 8E06FFFC */ lw $a2, -4($s0) +/* 37CFE4 E007AAA4 0C080110 */ jal func_E0200440 +/* 37CFE8 E007AAA8 00A0382D */ daddu $a3, $a1, $zero +/* 37CFEC E007AAAC 0220202D */ daddu $a0, $s1, $zero +/* 37CFF0 E007AAB0 27A50018 */ addiu $a1, $sp, 0x18 +/* 37CFF4 E007AAB4 0C080114 */ jal func_E0200450 +/* 37CFF8 E007AAB8 00A0302D */ daddu $a2, $a1, $zero +/* 37CFFC E007AABC 0220202D */ daddu $a0, $s1, $zero +/* 37D000 E007AAC0 E7B60010 */ swc1 $f22, 0x10($sp) +/* 37D004 E007AAC4 8E050000 */ lw $a1, ($s0) +/* 37D008 E007AAC8 4406A000 */ mfc1 $a2, $f20 +/* 37D00C E007AACC 4407A000 */ mfc1 $a3, $f20 +/* 37D010 E007AAD0 0C080104 */ jal func_E0200410 +/* 37D014 E007AAD4 26100068 */ addiu $s0, $s0, 0x68 +/* 37D018 E007AAD8 0220202D */ daddu $a0, $s1, $zero +/* 37D01C E007AADC 27A50018 */ addiu $a1, $sp, 0x18 +/* 37D020 E007AAE0 0C080114 */ jal func_E0200450 +/* 37D024 E007AAE4 00A0302D */ daddu $a2, $a1, $zero +/* 37D028 E007AAE8 27A40018 */ addiu $a0, $sp, 0x18 +/* 37D02C E007AAEC 96C50000 */ lhu $a1, ($s6) +/* 37D030 E007AAF0 8EE20000 */ lw $v0, ($s7) +/* 37D034 E007AAF4 00052980 */ sll $a1, $a1, 6 +/* 37D038 E007AAF8 00B42821 */ addu $a1, $a1, $s4 +/* 37D03C E007AAFC 0C080118 */ jal func_E0200460 +/* 37D040 E007AB00 00452821 */ addu $a1, $v0, $a1 +/* 37D044 E007AB04 3C06D838 */ lui $a2, 0xd838 +/* 37D048 E007AB08 8E640000 */ lw $a0, ($s3) +/* 37D04C E007AB0C 34C60002 */ ori $a2, $a2, 2 +/* 37D050 E007AB10 0080282D */ daddu $a1, $a0, $zero +/* 37D054 E007AB14 24840008 */ addiu $a0, $a0, 8 +/* 37D058 E007AB18 AE640000 */ sw $a0, ($s3) +/* 37D05C E007AB1C 96C20000 */ lhu $v0, ($s6) +/* 37D060 E007AB20 3C03DA38 */ lui $v1, 0xda38 +/* 37D064 E007AB24 ACA30000 */ sw $v1, ($a1) +/* 37D068 E007AB28 24430001 */ addiu $v1, $v0, 1 +/* 37D06C E007AB2C 3042FFFF */ andi $v0, $v0, 0xffff +/* 37D070 E007AB30 00021180 */ sll $v0, $v0, 6 +/* 37D074 E007AB34 A6C30000 */ sh $v1, ($s6) +/* 37D078 E007AB38 8EE30000 */ lw $v1, ($s7) +/* 37D07C E007AB3C 00541021 */ addu $v0, $v0, $s4 +/* 37D080 E007AB40 00621821 */ addu $v1, $v1, $v0 +/* 37D084 E007AB44 24820008 */ addiu $v0, $a0, 8 +/* 37D088 E007AB48 ACA30004 */ sw $v1, 4($a1) +/* 37D08C E007AB4C AE620000 */ sw $v0, ($s3) +/* 37D090 E007AB50 3C02DE00 */ lui $v0, 0xde00 +/* 37D094 E007AB54 AC820000 */ sw $v0, ($a0) +/* 37D098 E007AB58 3C020900 */ lui $v0, 0x900 +/* 37D09C E007AB5C 244202E8 */ addiu $v0, $v0, 0x2e8 +/* 37D0A0 E007AB60 AC820004 */ sw $v0, 4($a0) +/* 37D0A4 E007AB64 24020040 */ addiu $v0, $zero, 0x40 +/* 37D0A8 E007AB68 AC860008 */ sw $a2, 8($a0) +/* 37D0AC E007AB6C AC82000C */ sw $v0, 0xc($a0) +/* 37D0B0 E007AB70 8FC20008 */ lw $v0, 8($fp) +/* 37D0B4 E007AB74 24840010 */ addiu $a0, $a0, 0x10 +/* 37D0B8 E007AB78 02A2102A */ slt $v0, $s5, $v0 +/* 37D0BC E007AB7C 1440FF9D */ bnez $v0, .LE007A9F4 +/* 37D0C0 E007AB80 AE640000 */ sw $a0, ($s3) +.LE007AB84: +/* 37D0C4 E007AB84 3C03D838 */ lui $v1, 0xd838 +/* 37D0C8 E007AB88 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 37D0CC E007AB8C 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 37D0D0 E007AB90 8C820000 */ lw $v0, ($a0) +/* 37D0D4 E007AB94 34630002 */ ori $v1, $v1, 2 +/* 37D0D8 E007AB98 0040282D */ daddu $a1, $v0, $zero +/* 37D0DC E007AB9C 24420008 */ addiu $v0, $v0, 8 +/* 37D0E0 E007ABA0 AC820000 */ sw $v0, ($a0) +/* 37D0E4 E007ABA4 ACA30000 */ sw $v1, ($a1) +/* 37D0E8 E007ABA8 24030040 */ addiu $v1, $zero, 0x40 +/* 37D0EC E007ABAC ACA30004 */ sw $v1, 4($a1) +/* 37D0F0 E007ABB0 24430008 */ addiu $v1, $v0, 8 +/* 37D0F4 E007ABB4 AC830000 */ sw $v1, ($a0) +/* 37D0F8 E007ABB8 3C03E700 */ lui $v1, 0xe700 +/* 37D0FC E007ABBC AC430000 */ sw $v1, ($v0) +/* 37D100 E007ABC0 AC400004 */ sw $zero, 4($v0) +/* 37D104 E007ABC4 8FBF00BC */ lw $ra, 0xbc($sp) +/* 37D108 E007ABC8 8FBE00B8 */ lw $fp, 0xb8($sp) +/* 37D10C E007ABCC 8FB700B4 */ lw $s7, 0xb4($sp) +/* 37D110 E007ABD0 8FB600B0 */ lw $s6, 0xb0($sp) +/* 37D114 E007ABD4 8FB500AC */ lw $s5, 0xac($sp) +/* 37D118 E007ABD8 8FB400A8 */ lw $s4, 0xa8($sp) +/* 37D11C E007ABDC 8FB300A4 */ lw $s3, 0xa4($sp) +/* 37D120 E007ABE0 8FB200A0 */ lw $s2, 0xa0($sp) +/* 37D124 E007ABE4 8FB1009C */ lw $s1, 0x9c($sp) +/* 37D128 E007ABE8 8FB00098 */ lw $s0, 0x98($sp) +/* 37D12C E007ABEC D7B600C8 */ ldc1 $f22, 0xc8($sp) +/* 37D130 E007ABF0 D7B400C0 */ ldc1 $f20, 0xc0($sp) +/* 37D134 E007ABF4 03E00008 */ jr $ra +/* 37D138 E007ABF8 27BD00D0 */ addiu $sp, $sp, 0xd0 +/* 37D13C E007ABFC 00000000 */ nop diff --git a/asm/nonmatchings/code_37D490/func_E007C000.s b/asm/nonmatchings/code_37D490/func_E007C000.s new file mode 100644 index 0000000000..b97410c445 --- /dev/null +++ b/asm/nonmatchings/code_37D490/func_E007C000.s @@ -0,0 +1,82 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007C000 +/* 37D490 E007C000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 37D494 E007C004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 37D498 E007C008 4485A000 */ mtc1 $a1, $f20 +/* 37D49C E007C00C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 37D4A0 E007C010 4486B000 */ mtc1 $a2, $f22 +/* 37D4A4 E007C014 AFB30034 */ sw $s3, 0x34($sp) +/* 37D4A8 E007C018 0080982D */ daddu $s3, $a0, $zero +/* 37D4AC E007C01C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 37D4B0 E007C020 4487C000 */ mtc1 $a3, $f24 +/* 37D4B4 E007C024 27A40010 */ addiu $a0, $sp, 0x10 +/* 37D4B8 E007C028 AFB20030 */ sw $s2, 0x30($sp) +/* 37D4BC E007C02C 8FB2006C */ lw $s2, 0x6c($sp) +/* 37D4C0 E007C030 3C02E008 */ lui $v0, %hi(D_E007C128) +/* 37D4C4 E007C034 2442C128 */ addiu $v0, $v0, %lo(D_E007C128) +/* 37D4C8 E007C038 AFA20018 */ sw $v0, 0x18($sp) +/* 37D4CC E007C03C 3C02E008 */ lui $v0, %hi(D_E007C130) +/* 37D4D0 E007C040 2442C130 */ addiu $v0, $v0, %lo(D_E007C130) +/* 37D4D4 E007C044 AFA2001C */ sw $v0, 0x1c($sp) +/* 37D4D8 E007C048 3C02E008 */ lui $v0, %hi(D_E007C1B0) +/* 37D4DC E007C04C 2442C1B0 */ addiu $v0, $v0, %lo(D_E007C1B0) +/* 37D4E0 E007C050 AFA20020 */ sw $v0, 0x20($sp) +/* 37D4E4 E007C054 2402003E */ addiu $v0, $zero, 0x3e +/* 37D4E8 E007C058 AFBF0038 */ sw $ra, 0x38($sp) +/* 37D4EC E007C05C AFB1002C */ sw $s1, 0x2c($sp) +/* 37D4F0 E007C060 AFB00028 */ sw $s0, 0x28($sp) +/* 37D4F4 E007C064 AFA00010 */ sw $zero, 0x10($sp) +/* 37D4F8 E007C068 AFA00024 */ sw $zero, 0x24($sp) +/* 37D4FC E007C06C 0C080124 */ jal func_E0200490 +/* 37D500 E007C070 AFA20014 */ sw $v0, 0x14($sp) +/* 37D504 E007C074 2404002C */ addiu $a0, $zero, 0x2c +/* 37D508 E007C078 24110001 */ addiu $s1, $zero, 1 +/* 37D50C E007C07C 0040802D */ daddu $s0, $v0, $zero +/* 37D510 E007C080 0C08012C */ jal func_E02004B0 +/* 37D514 E007C084 AE110008 */ sw $s1, 8($s0) +/* 37D518 E007C088 AE02000C */ sw $v0, 0xc($s0) +/* 37D51C E007C08C 0040802D */ daddu $s0, $v0, $zero +/* 37D520 E007C090 16000003 */ bnez $s0, .LE007C0A0 +/* 37D524 E007C094 0200202D */ daddu $a0, $s0, $zero +.LE007C098: +/* 37D528 E007C098 0801F026 */ j .LE007C098 +/* 37D52C E007C09C 00000000 */ nop +.LE007C0A0: +/* 37D530 E007C0A0 00112840 */ sll $a1, $s1, 1 +/* 37D534 E007C0A4 00B12821 */ addu $a1, $a1, $s1 +/* 37D538 E007C0A8 00052880 */ sll $a1, $a1, 2 +/* 37D53C E007C0AC 00B12823 */ subu $a1, $a1, $s1 +/* 37D540 E007C0B0 0C080130 */ jal func_E02004C0 +/* 37D544 E007C0B4 00052880 */ sll $a1, $a1, 2 +/* 37D548 E007C0B8 AE120014 */ sw $s2, 0x14($s0) +/* 37D54C E007C0BC AE000018 */ sw $zero, 0x18($s0) +/* 37D550 E007C0C0 AE12001C */ sw $s2, 0x1c($s0) +/* 37D554 E007C0C4 AE000020 */ sw $zero, 0x20($s0) +/* 37D558 E007C0C8 A6130000 */ sh $s3, ($s0) +/* 37D55C E007C0CC E6140004 */ swc1 $f20, 4($s0) +/* 37D560 E007C0D0 E6160008 */ swc1 $f22, 8($s0) +/* 37D564 E007C0D4 E618000C */ swc1 $f24, 0xc($s0) +/* 37D568 E007C0D8 C7A00068 */ lwc1 $f0, 0x68($sp) +/* 37D56C E007C0DC AE000024 */ sw $zero, 0x24($s0) +/* 37D570 E007C0E0 16600003 */ bnez $s3, .LE007C0F0 +/* 37D574 E007C0E4 E6000010 */ swc1 $f0, 0x10($s0) +/* 37D578 E007C0E8 0801F040 */ j .LE007C100 +/* 37D57C E007C0EC AE000028 */ sw $zero, 0x28($s0) +.LE007C0F0: +/* 37D580 E007C0F0 3C014220 */ lui $at, 0x4220 +/* 37D584 E007C0F4 44810000 */ mtc1 $at, $f0 +/* 37D588 E007C0F8 00000000 */ nop +/* 37D58C E007C0FC E6000028 */ swc1 $f0, 0x28($s0) +.LE007C100: +/* 37D590 E007C100 8FBF0038 */ lw $ra, 0x38($sp) +/* 37D594 E007C104 8FB30034 */ lw $s3, 0x34($sp) +/* 37D598 E007C108 8FB20030 */ lw $s2, 0x30($sp) +/* 37D59C E007C10C 8FB1002C */ lw $s1, 0x2c($sp) +/* 37D5A0 E007C110 8FB00028 */ lw $s0, 0x28($sp) +/* 37D5A4 E007C114 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 37D5A8 E007C118 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 37D5AC E007C11C D7B40040 */ ldc1 $f20, 0x40($sp) +/* 37D5B0 E007C120 03E00008 */ jr $ra +/* 37D5B4 E007C124 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_37D490/func_E007C128.s b/asm/nonmatchings/code_37D490/func_E007C128.s new file mode 100644 index 0000000000..64b31ae9ac --- /dev/null +++ b/asm/nonmatchings/code_37D490/func_E007C128.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007C128 +/* 37D5B8 E007C128 03E00008 */ jr $ra +/* 37D5BC E007C12C 00000000 */ nop diff --git a/asm/nonmatchings/code_37D490/func_E007C130.s b/asm/nonmatchings/code_37D490/func_E007C130.s new file mode 100644 index 0000000000..5d2ad72764 --- /dev/null +++ b/asm/nonmatchings/code_37D490/func_E007C130.s @@ -0,0 +1,38 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007C130 +/* 37D5C0 E007C130 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 37D5C4 E007C134 AFBF0010 */ sw $ra, 0x10($sp) +/* 37D5C8 E007C138 8C85000C */ lw $a1, 0xc($a0) +/* 37D5CC E007C13C 3C014110 */ lui $at, 0x4110 +/* 37D5D0 E007C140 44810000 */ mtc1 $at, $f0 +/* 37D5D4 E007C144 8CA20018 */ lw $v0, 0x18($a1) +/* 37D5D8 E007C148 8CA30014 */ lw $v1, 0x14($a1) +/* 37D5DC E007C14C 44821000 */ mtc1 $v0, $f2 +/* 37D5E0 E007C150 00000000 */ nop +/* 37D5E4 E007C154 468010A0 */ cvt.s.w $f2, $f2 +/* 37D5E8 E007C158 24420001 */ addiu $v0, $v0, 1 +/* 37D5EC E007C15C 46001082 */ mul.s $f2, $f2, $f0 +/* 37D5F0 E007C160 00000000 */ nop +/* 37D5F4 E007C164 2463FFFF */ addiu $v1, $v1, -1 +/* 37D5F8 E007C168 C4A0001C */ lwc1 $f0, 0x1c($a1) +/* 37D5FC E007C16C 46800020 */ cvt.s.w $f0, $f0 +/* 37D600 E007C170 ACA20018 */ sw $v0, 0x18($a1) +/* 37D604 E007C174 ACA30014 */ sw $v1, 0x14($a1) +/* 37D608 E007C178 46001083 */ div.s $f2, $f2, $f0 +/* 37D60C E007C17C 04610005 */ bgez $v1, .LE007C194 +/* 37D610 E007C180 E4A20020 */ swc1 $f2, 0x20($a1) +/* 37D614 E007C184 0C080128 */ jal func_E02004A0 +/* 37D618 E007C188 00000000 */ nop +/* 37D61C E007C18C 0801F069 */ j .LE007C1A4 +/* 37D620 E007C190 00000000 */ nop +.LE007C194: +/* 37D624 E007C194 C4A00024 */ lwc1 $f0, 0x24($a1) +/* 37D628 E007C198 C4A20028 */ lwc1 $f2, 0x28($a1) +/* 37D62C E007C19C 46020000 */ add.s $f0, $f0, $f2 +/* 37D630 E007C1A0 E4A00024 */ swc1 $f0, 0x24($a1) +.LE007C1A4: +/* 37D634 E007C1A4 8FBF0010 */ lw $ra, 0x10($sp) +/* 37D638 E007C1A8 03E00008 */ jr $ra +/* 37D63C E007C1AC 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_37D490/func_E007C1B0.s b/asm/nonmatchings/code_37D490/func_E007C1B0.s new file mode 100644 index 0000000000..3e7abd5805 --- /dev/null +++ b/asm/nonmatchings/code_37D490/func_E007C1B0.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007C1B0 +/* 37D640 E007C1B0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 37D644 E007C1B4 3C02E008 */ lui $v0, %hi(D_E007C1F4) +/* 37D648 E007C1B8 2442C1F4 */ addiu $v0, $v0, %lo(D_E007C1F4) +/* 37D64C E007C1BC AFA2001C */ sw $v0, 0x1c($sp) +/* 37D650 E007C1C0 24020028 */ addiu $v0, $zero, 0x28 +/* 37D654 E007C1C4 AFA40018 */ sw $a0, 0x18($sp) +/* 37D658 E007C1C8 27A40010 */ addiu $a0, $sp, 0x10 +/* 37D65C E007C1CC AFBF0020 */ sw $ra, 0x20($sp) +/* 37D660 E007C1D0 AFA00014 */ sw $zero, 0x14($sp) +/* 37D664 E007C1D4 0C080120 */ jal func_E0200480 +/* 37D668 E007C1D8 AFA20010 */ sw $v0, 0x10($sp) +/* 37D66C E007C1DC 8C430000 */ lw $v1, ($v0) +/* 37D670 E007C1E0 34630002 */ ori $v1, $v1, 2 +/* 37D674 E007C1E4 AC430000 */ sw $v1, ($v0) +/* 37D678 E007C1E8 8FBF0020 */ lw $ra, 0x20($sp) +/* 37D67C E007C1EC 03E00008 */ jr $ra +/* 37D680 E007C1F0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_37D490/func_E007C1F4.s b/asm/nonmatchings/code_37D490/func_E007C1F4.s new file mode 100644 index 0000000000..fbc02a4253 --- /dev/null +++ b/asm/nonmatchings/code_37D490/func_E007C1F4.s @@ -0,0 +1,205 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E007C1F4 +/* 37D684 E007C1F4 27BDFEF0 */ addiu $sp, $sp, -0x110 +/* 37D688 E007C1F8 0080302D */ daddu $a2, $a0, $zero +/* 37D68C E007C1FC 3C07DB06 */ lui $a3, 0xdb06 +/* 37D690 E007C200 34E70024 */ ori $a3, $a3, 0x24 +/* 37D694 E007C204 27A40018 */ addiu $a0, $sp, 0x18 +/* 37D698 E007C208 AFB300E4 */ sw $s3, 0xe4($sp) +/* 37D69C E007C20C 3C130001 */ lui $s3, 1 +/* 37D6A0 E007C210 AFB400E8 */ sw $s4, 0xe8($sp) +/* 37D6A4 E007C214 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 37D6A8 E007C218 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 37D6AC E007C21C AFBF00F0 */ sw $ra, 0xf0($sp) +/* 37D6B0 E007C220 AFB500EC */ sw $s5, 0xec($sp) +/* 37D6B4 E007C224 AFB200E0 */ sw $s2, 0xe0($sp) +/* 37D6B8 E007C228 AFB100DC */ sw $s1, 0xdc($sp) +/* 37D6BC E007C22C AFB000D8 */ sw $s0, 0xd8($sp) +/* 37D6C0 E007C230 F7B80108 */ sdc1 $f24, 0x108($sp) +/* 37D6C4 E007C234 F7B60100 */ sdc1 $f22, 0x100($sp) +/* 37D6C8 E007C238 F7B400F8 */ sdc1 $f20, 0xf8($sp) +/* 37D6CC E007C23C 8E830000 */ lw $v1, ($s4) +/* 37D6D0 E007C240 8CD1000C */ lw $s1, 0xc($a2) +/* 37D6D4 E007C244 3C014380 */ lui $at, 0x4380 +/* 37D6D8 E007C248 4481C000 */ mtc1 $at, $f24 +/* 37D6DC E007C24C 0060282D */ daddu $a1, $v1, $zero +/* 37D6E0 E007C250 24630008 */ addiu $v1, $v1, 8 +/* 37D6E4 E007C254 AE830000 */ sw $v1, ($s4) +/* 37D6E8 E007C258 C6220020 */ lwc1 $f2, 0x20($s1) +/* 37D6EC E007C25C 3C02E700 */ lui $v0, 0xe700 +/* 37D6F0 E007C260 ACA20000 */ sw $v0, ($a1) +/* 37D6F4 E007C264 24620008 */ addiu $v0, $v1, 8 +/* 37D6F8 E007C268 ACA00004 */ sw $zero, 4($a1) +/* 37D6FC E007C26C AE820000 */ sw $v0, ($s4) +/* 37D700 E007C270 24620010 */ addiu $v0, $v1, 0x10 +/* 37D704 E007C274 AC670000 */ sw $a3, ($v1) +/* 37D708 E007C278 AE820000 */ sw $v0, ($s4) +/* 37D70C E007C27C 24620018 */ addiu $v0, $v1, 0x18 +/* 37D710 E007C280 8CC50010 */ lw $a1, 0x10($a2) +/* 37D714 E007C284 3C06DE00 */ lui $a2, 0xde00 +/* 37D718 E007C288 AE820000 */ sw $v0, ($s4) +/* 37D71C E007C28C 8CA5001C */ lw $a1, 0x1c($a1) +/* 37D720 E007C290 3C020900 */ lui $v0, 0x900 +/* 37D724 E007C294 24421300 */ addiu $v0, $v0, 0x1300 +/* 37D728 E007C298 AC62000C */ sw $v0, 0xc($v1) +/* 37D72C E007C29C 3C028000 */ lui $v0, 0x8000 +/* 37D730 E007C2A0 AC660008 */ sw $a2, 8($v1) +/* 37D734 E007C2A4 AC660010 */ sw $a2, 0x10($v1) +/* 37D738 E007C2A8 00A22821 */ addu $a1, $a1, $v0 +/* 37D73C E007C2AC 4600110D */ trunc.w.s $f4, $f2 +/* 37D740 E007C2B0 44022000 */ mfc1 $v0, $f4 +/* 37D744 E007C2B4 00000000 */ nop +/* 37D748 E007C2B8 44820000 */ mtc1 $v0, $f0 +/* 37D74C E007C2BC 00000000 */ nop +/* 37D750 E007C2C0 46800020 */ cvt.s.w $f0, $f0 +/* 37D754 E007C2C4 00021080 */ sll $v0, $v0, 2 +/* 37D758 E007C2C8 46001081 */ sub.s $f2, $f2, $f0 +/* 37D75C E007C2CC AC650004 */ sw $a1, 4($v1) +/* 37D760 E007C2D0 3C01E008 */ lui $at, %hi(D_E007C510) +/* 37D764 E007C2D4 00220821 */ addu $at, $at, $v0 +/* 37D768 E007C2D8 8C22C510 */ lw $v0, %lo(D_E007C510)($at) +/* 37D76C E007C2DC 46181082 */ mul.s $f2, $f2, $f24 +/* 37D770 E007C2E0 00000000 */ nop +/* 37D774 E007C2E4 AC620014 */ sw $v0, 0x14($v1) +/* 37D778 E007C2E8 8E250004 */ lw $a1, 4($s1) +/* 37D77C E007C2EC 8E260008 */ lw $a2, 8($s1) +/* 37D780 E007C2F0 8E27000C */ lw $a3, 0xc($s1) +/* 37D784 E007C2F4 4600110D */ trunc.w.s $f4, $f2 +/* 37D788 E007C2F8 44152000 */ mfc1 $s5, $f4 +/* 37D78C E007C2FC 0C080108 */ jal func_E0200420 +/* 37D790 E007C300 36731630 */ ori $s3, $s3, 0x1630 +/* 37D794 E007C304 27B00058 */ addiu $s0, $sp, 0x58 +/* 37D798 E007C308 4480B000 */ mtc1 $zero, $f22 +/* 37D79C E007C30C 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 37D7A0 E007C310 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 37D7A4 E007C314 3C013F80 */ lui $at, 0x3f80 +/* 37D7A8 E007C318 4481A000 */ mtc1 $at, $f20 +/* 37D7AC E007C31C 00031080 */ sll $v0, $v1, 2 +/* 37D7B0 E007C320 00431021 */ addu $v0, $v0, $v1 +/* 37D7B4 E007C324 00021080 */ sll $v0, $v0, 2 +/* 37D7B8 E007C328 00431023 */ subu $v0, $v0, $v1 +/* 37D7BC E007C32C 000218C0 */ sll $v1, $v0, 3 +/* 37D7C0 E007C330 00431021 */ addu $v0, $v0, $v1 +/* 37D7C4 E007C334 000210C0 */ sll $v0, $v0, 3 +/* 37D7C8 E007C338 4406B000 */ mfc1 $a2, $f22 +/* 37D7CC E007C33C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 37D7D0 E007C340 00220821 */ addu $at, $at, $v0 +/* 37D7D4 E007C344 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 37D7D8 E007C348 4407A000 */ mfc1 $a3, $f20 +/* 37D7DC E007C34C 46000007 */ neg.s $f0, $f0 +/* 37D7E0 E007C350 44050000 */ mfc1 $a1, $f0 +/* 37D7E4 E007C354 0200202D */ daddu $a0, $s0, $zero +/* 37D7E8 E007C358 0C080104 */ jal func_E0200410 +/* 37D7EC E007C35C E7B60010 */ swc1 $f22, 0x10($sp) +/* 37D7F0 E007C360 0200202D */ daddu $a0, $s0, $zero +/* 37D7F4 E007C364 27A50018 */ addiu $a1, $sp, 0x18 +/* 37D7F8 E007C368 27B00098 */ addiu $s0, $sp, 0x98 +/* 37D7FC E007C36C 0C080114 */ jal func_E0200450 +/* 37D800 E007C370 0200302D */ daddu $a2, $s0, $zero +/* 37D804 E007C374 27A40018 */ addiu $a0, $sp, 0x18 +/* 37D808 E007C378 8E250010 */ lw $a1, 0x10($s1) +/* 37D80C E007C37C 4407A000 */ mfc1 $a3, $f20 +/* 37D810 E007C380 0C080110 */ jal func_E0200440 +/* 37D814 E007C384 00A0302D */ daddu $a2, $a1, $zero +/* 37D818 E007C388 27A40018 */ addiu $a0, $sp, 0x18 +/* 37D81C E007C38C 0200282D */ daddu $a1, $s0, $zero +/* 37D820 E007C390 0C080114 */ jal func_E0200450 +/* 37D824 E007C394 0200302D */ daddu $a2, $s0, $zero +/* 37D828 E007C398 4406B000 */ mfc1 $a2, $f22 +/* 37D82C E007C39C 27A40018 */ addiu $a0, $sp, 0x18 +/* 37D830 E007C3A0 E7B40010 */ swc1 $f20, 0x10($sp) +/* 37D834 E007C3A4 8E250024 */ lw $a1, 0x24($s1) +/* 37D838 E007C3A8 0C080104 */ jal func_E0200410 +/* 37D83C E007C3AC 00C0382D */ daddu $a3, $a2, $zero +/* 37D840 E007C3B0 27A40018 */ addiu $a0, $sp, 0x18 +/* 37D844 E007C3B4 0200282D */ daddu $a1, $s0, $zero +/* 37D848 E007C3B8 0C080114 */ jal func_E0200450 +/* 37D84C E007C3BC 0200302D */ daddu $a2, $s0, $zero +/* 37D850 E007C3C0 0200202D */ daddu $a0, $s0, $zero +/* 37D854 E007C3C4 3C108007 */ lui $s0, %hi(D_800741F0) +/* 37D858 E007C3C8 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 37D85C E007C3CC 3C12800A */ lui $s2, %hi(D_8009A674) +/* 37D860 E007C3D0 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 37D864 E007C3D4 96050000 */ lhu $a1, ($s0) +/* 37D868 E007C3D8 8E420000 */ lw $v0, ($s2) +/* 37D86C E007C3DC 00052980 */ sll $a1, $a1, 6 +/* 37D870 E007C3E0 00B32821 */ addu $a1, $a1, $s3 +/* 37D874 E007C3E4 0C080118 */ jal func_E0200460 +/* 37D878 E007C3E8 00452821 */ addu $a1, $v0, $a1 +/* 37D87C E007C3EC 8E850000 */ lw $a1, ($s4) +/* 37D880 E007C3F0 3C014080 */ lui $at, 0x4080 +/* 37D884 E007C3F4 44810000 */ mtc1 $at, $f0 +/* 37D888 E007C3F8 00A0202D */ daddu $a0, $a1, $zero +/* 37D88C E007C3FC 24A50008 */ addiu $a1, $a1, 8 +/* 37D890 E007C400 AE850000 */ sw $a1, ($s4) +/* 37D894 E007C404 96020000 */ lhu $v0, ($s0) +/* 37D898 E007C408 3C03DA38 */ lui $v1, 0xda38 +/* 37D89C E007C40C AC830000 */ sw $v1, ($a0) +/* 37D8A0 E007C410 24430001 */ addiu $v1, $v0, 1 +/* 37D8A4 E007C414 3042FFFF */ andi $v0, $v0, 0xffff +/* 37D8A8 E007C418 00021180 */ sll $v0, $v0, 6 +/* 37D8AC E007C41C A6030000 */ sh $v1, ($s0) +/* 37D8B0 E007C420 8E430000 */ lw $v1, ($s2) +/* 37D8B4 E007C424 00531021 */ addu $v0, $v0, $s3 +/* 37D8B8 E007C428 00621821 */ addu $v1, $v1, $v0 +/* 37D8BC E007C42C AC830004 */ sw $v1, 4($a0) +/* 37D8C0 E007C430 C6220020 */ lwc1 $f2, 0x20($s1) +/* 37D8C4 E007C434 4602003C */ c.lt.s $f0, $f2 +/* 37D8C8 E007C438 00000000 */ nop +/* 37D8CC E007C43C 45000006 */ bc1f .LE007C458 +/* 37D8D0 E007C440 24A20008 */ addiu $v0, $a1, 8 +/* 37D8D4 E007C444 AE820000 */ sw $v0, ($s4) +/* 37D8D8 E007C448 3C02FA00 */ lui $v0, 0xfa00 +/* 37D8DC E007C44C ACA20000 */ sw $v0, ($a1) +/* 37D8E0 E007C450 0801F11A */ j .LE007C468 +/* 37D8E4 E007C454 2402FF7F */ addiu $v0, $zero, -0x81 +.LE007C458: +/* 37D8E8 E007C458 AE820000 */ sw $v0, ($s4) +/* 37D8EC E007C45C 3C02FA00 */ lui $v0, 0xfa00 +/* 37D8F0 E007C460 ACA20000 */ sw $v0, ($a1) +/* 37D8F4 E007C464 2402807F */ addiu $v0, $zero, -0x7f81 +.LE007C468: +/* 37D8F8 E007C468 ACA20004 */ sw $v0, 4($a1) +/* 37D8FC E007C46C 3C07D838 */ lui $a3, 0xd838 +/* 37D900 E007C470 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 37D904 E007C474 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 37D908 E007C478 34E70002 */ ori $a3, $a3, 2 +/* 37D90C E007C47C 3C02FB00 */ lui $v0, 0xfb00 +/* 37D910 E007C480 8CA40000 */ lw $a0, ($a1) +/* 37D914 E007C484 24038B00 */ addiu $v1, $zero, -0x7500 +/* 37D918 E007C488 0080302D */ daddu $a2, $a0, $zero +/* 37D91C E007C48C 24840008 */ addiu $a0, $a0, 8 +/* 37D920 E007C490 ACA40000 */ sw $a0, ($a1) +/* 37D924 E007C494 ACC20000 */ sw $v0, ($a2) +/* 37D928 E007C498 32A200FF */ andi $v0, $s5, 0xff +/* 37D92C E007C49C 00431025 */ or $v0, $v0, $v1 +/* 37D930 E007C4A0 ACC20004 */ sw $v0, 4($a2) +/* 37D934 E007C4A4 24820008 */ addiu $v0, $a0, 8 +/* 37D938 E007C4A8 ACA20000 */ sw $v0, ($a1) +/* 37D93C E007C4AC 3C02DE00 */ lui $v0, 0xde00 +/* 37D940 E007C4B0 AC820000 */ sw $v0, ($a0) +/* 37D944 E007C4B4 3C020900 */ lui $v0, 0x900 +/* 37D948 E007C4B8 244217B0 */ addiu $v0, $v0, 0x17b0 +/* 37D94C E007C4BC AC820004 */ sw $v0, 4($a0) +/* 37D950 E007C4C0 24820010 */ addiu $v0, $a0, 0x10 +/* 37D954 E007C4C4 ACA20000 */ sw $v0, ($a1) +/* 37D958 E007C4C8 24020040 */ addiu $v0, $zero, 0x40 +/* 37D95C E007C4CC AC870008 */ sw $a3, 8($a0) +/* 37D960 E007C4D0 AC82000C */ sw $v0, 0xc($a0) +/* 37D964 E007C4D4 8FBF00F0 */ lw $ra, 0xf0($sp) +/* 37D968 E007C4D8 8FB500EC */ lw $s5, 0xec($sp) +/* 37D96C E007C4DC 8FB400E8 */ lw $s4, 0xe8($sp) +/* 37D970 E007C4E0 8FB300E4 */ lw $s3, 0xe4($sp) +/* 37D974 E007C4E4 8FB200E0 */ lw $s2, 0xe0($sp) +/* 37D978 E007C4E8 8FB100DC */ lw $s1, 0xdc($sp) +/* 37D97C E007C4EC 8FB000D8 */ lw $s0, 0xd8($sp) +/* 37D980 E007C4F0 D7B80108 */ ldc1 $f24, 0x108($sp) +/* 37D984 E007C4F4 D7B60100 */ ldc1 $f22, 0x100($sp) +/* 37D988 E007C4F8 D7B400F8 */ ldc1 $f20, 0xf8($sp) +/* 37D98C E007C4FC 03E00008 */ jr $ra +/* 37D990 E007C500 27BD0110 */ addiu $sp, $sp, 0x110 +/* 37D994 E007C504 00000000 */ nop +/* 37D998 E007C508 00000000 */ nop +/* 37D99C E007C50C 00000000 */ nop diff --git a/asm/nonmatchings/code_38DE00/func_E008C000.s b/asm/nonmatchings/code_38DE00/func_E008C000.s new file mode 100644 index 0000000000..e16eb67801 --- /dev/null +++ b/asm/nonmatchings/code_38DE00/func_E008C000.s @@ -0,0 +1,266 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E008C000 +/* 38DE00 E008C000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 38DE04 E008C004 AFB00038 */ sw $s0, 0x38($sp) +/* 38DE08 E008C008 00E0802D */ daddu $s0, $a3, $zero +/* 38DE0C E008C00C AFA40070 */ sw $a0, 0x70($sp) +/* 38DE10 E008C010 27A40010 */ addiu $a0, $sp, 0x10 +/* 38DE14 E008C014 F7B40060 */ sdc1 $f20, 0x60($sp) +/* 38DE18 E008C018 4486A000 */ mtc1 $a2, $f20 +/* 38DE1C E008C01C 3C02E009 */ lui $v0, %hi(D_E008C3F4) +/* 38DE20 E008C020 2442C3F4 */ addiu $v0, $v0, %lo(D_E008C3F4) +/* 38DE24 E008C024 AFA20018 */ sw $v0, 0x18($sp) +/* 38DE28 E008C028 3C02E009 */ lui $v0, %hi(D_E008C3FC) +/* 38DE2C E008C02C 2442C3FC */ addiu $v0, $v0, %lo(D_E008C3FC) +/* 38DE30 E008C030 AFA2001C */ sw $v0, 0x1c($sp) +/* 38DE34 E008C034 3C02E009 */ lui $v0, %hi(D_E008C6B8) +/* 38DE38 E008C038 2442C6B8 */ addiu $v0, $v0, %lo(D_E008C6B8) +/* 38DE3C E008C03C AFA20020 */ sw $v0, 0x20($sp) +/* 38DE40 E008C040 24020046 */ addiu $v0, $zero, 0x46 +/* 38DE44 E008C044 AFBF005C */ sw $ra, 0x5c($sp) +/* 38DE48 E008C048 AFBE0058 */ sw $fp, 0x58($sp) +/* 38DE4C E008C04C AFB70054 */ sw $s7, 0x54($sp) +/* 38DE50 E008C050 AFB60050 */ sw $s6, 0x50($sp) +/* 38DE54 E008C054 AFB5004C */ sw $s5, 0x4c($sp) +/* 38DE58 E008C058 AFB40048 */ sw $s4, 0x48($sp) +/* 38DE5C E008C05C AFB30044 */ sw $s3, 0x44($sp) +/* 38DE60 E008C060 AFB20040 */ sw $s2, 0x40($sp) +/* 38DE64 E008C064 AFB1003C */ sw $s1, 0x3c($sp) +/* 38DE68 E008C068 F7B60068 */ sdc1 $f22, 0x68($sp) +/* 38DE6C E008C06C AFA50074 */ sw $a1, 0x74($sp) +/* 38DE70 E008C070 AFA00010 */ sw $zero, 0x10($sp) +/* 38DE74 E008C074 AFA00024 */ sw $zero, 0x24($sp) +/* 38DE78 E008C078 0C080124 */ jal func_E0200490 +/* 38DE7C E008C07C AFA20014 */ sw $v0, 0x14($sp) +/* 38DE80 E008C080 24040168 */ addiu $a0, $zero, 0x168 +/* 38DE84 E008C084 AFA20028 */ sw $v0, 0x28($sp) +/* 38DE88 E008C088 24080005 */ addiu $t0, $zero, 5 +/* 38DE8C E008C08C 0C08012C */ jal func_E02004B0 +/* 38DE90 E008C090 AC480008 */ sw $t0, 8($v0) +/* 38DE94 E008C094 8FA90028 */ lw $t1, 0x28($sp) +/* 38DE98 E008C098 0040202D */ daddu $a0, $v0, $zero +/* 38DE9C E008C09C 14800003 */ bnez $a0, .LE008C0AC +/* 38DEA0 E008C0A0 AD24000C */ sw $a0, 0xc($t1) +.LE008C0A4: +/* 38DEA4 E008C0A4 08023029 */ j .LE008C0A4 +/* 38DEA8 E008C0A8 00000000 */ nop +.LE008C0AC: +/* 38DEAC E008C0AC 4600A0A1 */ cvt.d.s $f2, $f20 +/* 38DEB0 E008C0B0 24110001 */ addiu $s1, $zero, 1 +/* 38DEB4 E008C0B4 3C01E009 */ lui $at, %hi(D_E008CB20) +/* 38DEB8 E008C0B8 D420CB20 */ ldc1 $f0, %lo(D_E008CB20)($at) +/* 38DEBC E008C0BC 8FA80070 */ lw $t0, 0x70($sp) +/* 38DEC0 E008C0C0 46201082 */ mul.d $f2, $f2, $f0 +/* 38DEC4 E008C0C4 00000000 */ nop +/* 38DEC8 E008C0C8 AC880000 */ sw $t0, ($a0) +/* 38DECC E008C0CC 8FA90074 */ lw $t1, 0x74($sp) +/* 38DED0 E008C0D0 2A220005 */ slti $v0, $s1, 5 +/* 38DED4 E008C0D4 AC900020 */ sw $s0, 0x20($a0) +/* 38DED8 E008C0D8 AC900024 */ sw $s0, 0x24($a0) +/* 38DEDC E008C0DC AC80001C */ sw $zero, 0x1c($a0) +/* 38DEE0 E008C0E0 AC800028 */ sw $zero, 0x28($a0) +/* 38DEE4 E008C0E4 AC890004 */ sw $t1, 4($a0) +/* 38DEE8 E008C0E8 462010A0 */ cvt.s.d $f2, $f2 +/* 38DEEC E008C0EC E4820014 */ swc1 $f2, 0x14($a0) +/* 38DEF0 E008C0F0 E4820018 */ swc1 $f2, 0x18($a0) +/* 38DEF4 E008C0F4 104000B0 */ beqz $v0, .LE008C3B8 +/* 38DEF8 E008C0F8 24840048 */ addiu $a0, $a0, 0x48 +/* 38DEFC E008C0FC 3C03E009 */ lui $v1, %hi(D_E008CB28) +/* 38DF00 E008C100 2463CB28 */ addiu $v1, $v1, %lo(D_E008CB28) +/* 38DF04 E008C104 00081080 */ sll $v0, $t0, 2 +/* 38DF08 E008C108 00431021 */ addu $v0, $v0, $v1 +/* 38DF0C E008C10C 24080005 */ addiu $t0, $zero, 5 +/* 38DF10 E008C110 2517FFFF */ addiu $s7, $t0, -1 +/* 38DF14 E008C114 3C03E009 */ lui $v1, %hi(D_E008CB48) +/* 38DF18 E008C118 2463CB48 */ addiu $v1, $v1, %lo(D_E008CB48) +/* 38DF1C E008C11C 24900046 */ addiu $s0, $a0, 0x46 +/* 38DF20 E008C120 24160026 */ addiu $s6, $zero, 0x26 +/* 38DF24 E008C124 0000A02D */ daddu $s4, $zero, $zero +/* 38DF28 E008C128 24150019 */ addiu $s5, $zero, 0x19 +/* 38DF2C E008C12C 24130078 */ addiu $s3, $zero, 0x78 +/* 38DF30 E008C130 8FA90070 */ lw $t1, 0x70($sp) +/* 38DF34 E008C134 3C013F80 */ lui $at, 0x3f80 +/* 38DF38 E008C138 4481B000 */ mtc1 $at, $f22 +/* 38DF3C E008C13C 3C013FE0 */ lui $at, 0x3fe0 +/* 38DF40 E008C140 4481A800 */ mtc1 $at, $f21 +/* 38DF44 E008C144 4480A000 */ mtc1 $zero, $f20 +/* 38DF48 E008C148 2412000B */ addiu $s2, $zero, 0xb +/* 38DF4C E008C14C AFA2002C */ sw $v0, 0x2c($sp) +/* 38DF50 E008C150 253EFFFE */ addiu $fp, $t1, -2 +/* 38DF54 E008C154 001E1080 */ sll $v0, $fp, 2 +/* 38DF58 E008C158 00431021 */ addu $v0, $v0, $v1 +/* 38DF5C E008C15C AFA20030 */ sw $v0, 0x30($sp) +.LE008C160: +/* 38DF60 E008C160 8FA80070 */ lw $t0, 0x70($sp) +/* 38DF64 E008C164 2D020008 */ sltiu $v0, $t0, 8 +/* 38DF68 E008C168 50400030 */ beql $v0, $zero, .LE008C22C +/* 38DF6C E008C16C AE00FFC2 */ sw $zero, -0x3e($s0) +/* 38DF70 E008C170 8FA9002C */ lw $t1, 0x2c($sp) +/* 38DF74 E008C174 8D220000 */ lw $v0, ($t1) +/* 38DF78 E008C178 00400008 */ jr $v0 +/* 38DF7C E008C17C 00000000 */ nop +/* 38DF80 E008C180 3C014270 */ lui $at, 0x4270 +/* 38DF84 E008C184 44811000 */ mtc1 $at, $f2 +/* 38DF88 E008C188 44920000 */ mtc1 $s2, $f0 +/* 38DF8C E008C18C 00000000 */ nop +/* 38DF90 E008C190 46800020 */ cvt.s.w $f0, $f0 +/* 38DF94 E008C194 E600FFC6 */ swc1 $f0, -0x3a($s0) +/* 38DF98 E008C198 44930000 */ mtc1 $s3, $f0 +/* 38DF9C E008C19C 00000000 */ nop +/* 38DFA0 E008C1A0 46800020 */ cvt.s.w $f0, $f0 +/* 38DFA4 E008C1A4 AE00FFC2 */ sw $zero, -0x3e($s0) +/* 38DFA8 E008C1A8 AE00FFCA */ sw $zero, -0x36($s0) +/* 38DFAC E008C1AC AE00FFF2 */ sw $zero, -0xe($s0) +/* 38DFB0 E008C1B0 AE00FFFA */ sw $zero, -6($s0) +/* 38DFB4 E008C1B4 AE00FFE6 */ sw $zero, -0x1a($s0) +/* 38DFB8 E008C1B8 E600FFEA */ swc1 $f0, -0x16($s0) +/* 38DFBC E008C1BC AE00FFEE */ sw $zero, -0x12($s0) +/* 38DFC0 E008C1C0 E616FFCE */ swc1 $f22, -0x32($s0) +/* 38DFC4 E008C1C4 080230CC */ j .LE008C330 +/* 38DFC8 E008C1C8 E602FFF6 */ swc1 $f2, -0xa($s0) +/* 38DFCC E008C1CC 44920000 */ mtc1 $s2, $f0 +/* 38DFD0 E008C1D0 00000000 */ nop +/* 38DFD4 E008C1D4 46800020 */ cvt.s.w $f0, $f0 +/* 38DFD8 E008C1D8 E600FFC6 */ swc1 $f0, -0x3a($s0) +/* 38DFDC E008C1DC 44930000 */ mtc1 $s3, $f0 +/* 38DFE0 E008C1E0 00000000 */ nop +/* 38DFE4 E008C1E4 46800020 */ cvt.s.w $f0, $f0 +/* 38DFE8 E008C1E8 240800FF */ addiu $t0, $zero, 0xff +/* 38DFEC E008C1EC 3C01C270 */ lui $at, 0xc270 +/* 38DFF0 E008C1F0 44811000 */ mtc1 $at, $f2 +/* 38DFF4 E008C1F4 0100482D */ daddu $t1, $t0, $zero +/* 38DFF8 E008C1F8 AE00FFC2 */ sw $zero, -0x3e($s0) +/* 38DFFC E008C1FC AE00FFCA */ sw $zero, -0x36($s0) +/* 38E000 E008C200 AE00FFF2 */ sw $zero, -0xe($s0) +/* 38E004 E008C204 AE00FFFA */ sw $zero, -6($s0) +/* 38E008 E008C208 AE00FFE6 */ sw $zero, -0x1a($s0) +/* 38E00C E008C20C E600FFEA */ swc1 $f0, -0x16($s0) +/* 38E010 E008C210 AE00FFEE */ sw $zero, -0x12($s0) +/* 38E014 E008C214 E616FFCE */ swc1 $f22, -0x32($s0) +/* 38E018 E008C218 A2080000 */ sb $t0, ($s0) +/* 38E01C E008C21C A209FFFF */ sb $t1, -1($s0) +/* 38E020 E008C220 A208FFFE */ sb $t0, -2($s0) +/* 38E024 E008C224 080230CC */ j .LE008C330 +/* 38E028 E008C228 E602FFF6 */ swc1 $f2, -0xa($s0) +.LE008C22C: +/* 38E02C E008C22C 8FA90074 */ lw $t1, 0x74($sp) +/* 38E030 E008C230 852200B0 */ lh $v0, 0xb0($t1) +/* 38E034 E008C234 44820000 */ mtc1 $v0, $f0 +/* 38E038 E008C238 00000000 */ nop +/* 38E03C E008C23C 46800021 */ cvt.d.w $f0, $f0 +/* 38E040 E008C240 46340002 */ mul.d $f0, $f0, $f20 +/* 38E044 E008C244 00000000 */ nop +/* 38E048 E008C248 24040001 */ addiu $a0, $zero, 1 +/* 38E04C E008C24C AE00FFCA */ sw $zero, -0x36($s0) +/* 38E050 E008C250 46200020 */ cvt.s.d $f0, $f0 +/* 38E054 E008C254 0C080000 */ jal func_E0200000 +/* 38E058 E008C258 E600FFC6 */ swc1 $f0, -0x3a($s0) +/* 38E05C E008C25C 24040001 */ addiu $a0, $zero, 1 +/* 38E060 E008C260 000210C0 */ sll $v0, $v0, 3 +/* 38E064 E008C264 2442FFFC */ addiu $v0, $v0, -4 +/* 38E068 E008C268 44820000 */ mtc1 $v0, $f0 +/* 38E06C E008C26C 00000000 */ nop +/* 38E070 E008C270 46800020 */ cvt.s.w $f0, $f0 +/* 38E074 E008C274 E600FFF2 */ swc1 $f0, -0xe($s0) +/* 38E078 E008C278 0C080000 */ jal func_E0200000 +/* 38E07C E008C27C AE00FFF6 */ sw $zero, -0xa($s0) +/* 38E080 E008C280 16E00002 */ bnez $s7, .LE008C28C +/* 38E084 E008C284 0297001A */ div $zero, $s4, $s7 +/* 38E088 E008C288 0007000D */ break 7 +.LE008C28C: +/* 38E08C E008C28C 2401FFFF */ addiu $at, $zero, -1 +/* 38E090 E008C290 16E10004 */ bne $s7, $at, .LE008C2A4 +/* 38E094 E008C294 3C018000 */ lui $at, 0x8000 +/* 38E098 E008C298 16810002 */ bne $s4, $at, .LE008C2A4 +/* 38E09C E008C29C 00000000 */ nop +/* 38E0A0 E008C2A0 0006000D */ break 6 +.LE008C2A4: +/* 38E0A4 E008C2A4 00002012 */ mflo $a0 +/* 38E0A8 E008C2A8 000210C0 */ sll $v0, $v0, 3 +/* 38E0AC E008C2AC 2623FFFF */ addiu $v1, $s1, -1 +/* 38E0B0 E008C2B0 44830000 */ mtc1 $v1, $f0 +/* 38E0B4 E008C2B4 00000000 */ nop +/* 38E0B8 E008C2B8 46800020 */ cvt.s.w $f0, $f0 +/* 38E0BC E008C2BC 44971000 */ mtc1 $s7, $f2 +/* 38E0C0 E008C2C0 00000000 */ nop +/* 38E0C4 E008C2C4 468010A0 */ cvt.s.w $f2, $f2 +/* 38E0C8 E008C2C8 46020003 */ div.s $f0, $f0, $f2 +/* 38E0CC E008C2CC 46000021 */ cvt.d.s $f0, $f0 +/* 38E0D0 E008C2D0 46340002 */ mul.d $f0, $f0, $f20 +/* 38E0D4 E008C2D4 00000000 */ nop +/* 38E0D8 E008C2D8 2442FFFC */ addiu $v0, $v0, -4 +/* 38E0DC E008C2DC 44821000 */ mtc1 $v0, $f2 +/* 38E0E0 E008C2E0 00000000 */ nop +/* 38E0E4 E008C2E4 468010A0 */ cvt.s.w $f2, $f2 +/* 38E0E8 E008C2E8 E602FFFA */ swc1 $f2, -6($s0) +/* 38E0EC E008C2EC 44951000 */ mtc1 $s5, $f2 +/* 38E0F0 E008C2F0 00000000 */ nop +/* 38E0F4 E008C2F4 468010A0 */ cvt.s.w $f2, $f2 +/* 38E0F8 E008C2F8 24020168 */ addiu $v0, $zero, 0x168 +/* 38E0FC E008C2FC 00561023 */ subu $v0, $v0, $s6 +/* 38E100 E008C300 E602FFE6 */ swc1 $f2, -0x1a($s0) +/* 38E104 E008C304 46340000 */ add.d $f0, $f0, $f20 +/* 38E108 E008C308 44821000 */ mtc1 $v0, $f2 +/* 38E10C E008C30C 00000000 */ nop +/* 38E110 E008C310 468010A0 */ cvt.s.w $f2, $f2 +/* 38E114 E008C314 E602FFEE */ swc1 $f2, -0x12($s0) +/* 38E118 E008C318 46200020 */ cvt.s.d $f0, $f0 +/* 38E11C E008C31C E600FFCE */ swc1 $f0, -0x32($s0) +/* 38E120 E008C320 44840000 */ mtc1 $a0, $f0 +/* 38E124 E008C324 00000000 */ nop +/* 38E128 E008C328 46800020 */ cvt.s.w $f0, $f0 +/* 38E12C E008C32C E600FFEA */ swc1 $f0, -0x16($s0) +.LE008C330: +/* 38E130 E008C330 2FC20006 */ sltiu $v0, $fp, 6 +/* 38E134 E008C334 1040000B */ beqz $v0, .LE008C364 +/* 38E138 E008C338 0000182D */ daddu $v1, $zero, $zero +/* 38E13C E008C33C 8FA80030 */ lw $t0, 0x30($sp) +/* 38E140 E008C340 8D020000 */ lw $v0, ($t0) +/* 38E144 E008C344 00400008 */ jr $v0 +/* 38E148 E008C348 00000000 */ nop +/* 38E14C E008C34C 080230D9 */ j .LE008C364 +/* 38E150 E008C350 24030001 */ addiu $v1, $zero, 1 +/* 38E154 E008C354 080230D9 */ j .LE008C364 +/* 38E158 E008C358 24030002 */ addiu $v1, $zero, 2 +/* 38E15C E008C35C 32220001 */ andi $v0, $s1, 1 +/* 38E160 E008C360 24430001 */ addiu $v1, $v0, 1 +.LE008C364: +/* 38E164 E008C364 26D60026 */ addiu $s6, $s6, 0x26 +/* 38E168 E008C368 26940168 */ addiu $s4, $s4, 0x168 +/* 38E16C E008C36C 26B50019 */ addiu $s5, $s5, 0x19 +/* 38E170 E008C370 3C02E009 */ lui $v0, %hi(D_E008CB14) +/* 38E174 E008C374 00431021 */ addu $v0, $v0, $v1 +/* 38E178 E008C378 9042CB14 */ lbu $v0, %lo(D_E008CB14)($v0) +/* 38E17C E008C37C 26730078 */ addiu $s3, $s3, 0x78 +/* 38E180 E008C380 A202FFFE */ sb $v0, -2($s0) +/* 38E184 E008C384 3C02E009 */ lui $v0, %hi(D_E008CB18) +/* 38E188 E008C388 00431021 */ addu $v0, $v0, $v1 +/* 38E18C E008C38C 9042CB18 */ lbu $v0, %lo(D_E008CB18)($v0) +/* 38E190 E008C390 26520007 */ addiu $s2, $s2, 7 +/* 38E194 E008C394 A202FFFF */ sb $v0, -1($s0) +/* 38E198 E008C398 3C02E009 */ lui $v0, %hi(D_E008CB1C) +/* 38E19C E008C39C 00431021 */ addu $v0, $v0, $v1 +/* 38E1A0 E008C3A0 9042CB1C */ lbu $v0, %lo(D_E008CB1C)($v0) +/* 38E1A4 E008C3A4 26310001 */ addiu $s1, $s1, 1 +/* 38E1A8 E008C3A8 A2020000 */ sb $v0, ($s0) +/* 38E1AC E008C3AC 2A220005 */ slti $v0, $s1, 5 +/* 38E1B0 E008C3B0 1440FF6B */ bnez $v0, .LE008C160 +/* 38E1B4 E008C3B4 26100048 */ addiu $s0, $s0, 0x48 +.LE008C3B8: +/* 38E1B8 E008C3B8 8FA20028 */ lw $v0, 0x28($sp) +/* 38E1BC E008C3BC 8FBF005C */ lw $ra, 0x5c($sp) +/* 38E1C0 E008C3C0 8FBE0058 */ lw $fp, 0x58($sp) +/* 38E1C4 E008C3C4 8FB70054 */ lw $s7, 0x54($sp) +/* 38E1C8 E008C3C8 8FB60050 */ lw $s6, 0x50($sp) +/* 38E1CC E008C3CC 8FB5004C */ lw $s5, 0x4c($sp) +/* 38E1D0 E008C3D0 8FB40048 */ lw $s4, 0x48($sp) +/* 38E1D4 E008C3D4 8FB30044 */ lw $s3, 0x44($sp) +/* 38E1D8 E008C3D8 8FB20040 */ lw $s2, 0x40($sp) +/* 38E1DC E008C3DC 8FB1003C */ lw $s1, 0x3c($sp) +/* 38E1E0 E008C3E0 8FB00038 */ lw $s0, 0x38($sp) +/* 38E1E4 E008C3E4 D7B60068 */ ldc1 $f22, 0x68($sp) +/* 38E1E8 E008C3E8 D7B40060 */ ldc1 $f20, 0x60($sp) +/* 38E1EC E008C3EC 03E00008 */ jr $ra +/* 38E1F0 E008C3F0 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_38DE00/func_E008C3F4.s b/asm/nonmatchings/code_38DE00/func_E008C3F4.s new file mode 100644 index 0000000000..b70951389c --- /dev/null +++ b/asm/nonmatchings/code_38DE00/func_E008C3F4.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E008C3F4 +/* 38E1F4 E008C3F4 03E00008 */ jr $ra +/* 38E1F8 E008C3F8 00000000 */ nop diff --git a/asm/nonmatchings/code_38DE00/func_E008C3FC.s b/asm/nonmatchings/code_38DE00/func_E008C3FC.s new file mode 100644 index 0000000000..6323f35928 --- /dev/null +++ b/asm/nonmatchings/code_38DE00/func_E008C3FC.s @@ -0,0 +1,191 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E008C3FC +/* 38E1FC E008C3FC 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 38E200 E008C400 AFBF0010 */ sw $ra, 0x10($sp) +/* 38E204 E008C404 8C85000C */ lw $a1, 0xc($a0) +/* 38E208 E008C408 8CA20024 */ lw $v0, 0x24($a1) +/* 38E20C E008C40C 2442FFFF */ addiu $v0, $v0, -1 +/* 38E210 E008C410 ACA20024 */ sw $v0, 0x24($a1) +/* 38E214 E008C414 8CA20028 */ lw $v0, 0x28($a1) +/* 38E218 E008C418 8CA30024 */ lw $v1, 0x24($a1) +/* 38E21C E008C41C 24420001 */ addiu $v0, $v0, 1 +/* 38E220 E008C420 04610005 */ bgez $v1, .LE008C438 +/* 38E224 E008C424 ACA20028 */ sw $v0, 0x28($a1) +/* 38E228 E008C428 0C080128 */ jal func_E02004A0 +/* 38E22C E008C42C 00000000 */ nop +/* 38E230 E008C430 080231AB */ j .LE008C6AC +/* 38E234 E008C434 00000000 */ nop +.LE008C438: +/* 38E238 E008C438 8CA80000 */ lw $t0, ($a1) +/* 38E23C E008C43C 24020008 */ addiu $v0, $zero, 8 +/* 38E240 E008C440 15020025 */ bne $t0, $v0, .LE008C4D8 +/* 38E244 E008C444 0060382D */ daddu $a3, $v1, $zero +/* 38E248 E008C448 28E20006 */ slti $v0, $a3, 6 +/* 38E24C E008C44C 14400010 */ bnez $v0, .LE008C490 +/* 38E250 E008C450 240200FF */ addiu $v0, $zero, 0xff +/* 38E254 E008C454 8CA3001C */ lw $v1, 0x1c($a1) +/* 38E258 E008C458 3C01E009 */ lui $at, %hi(D_E008CB60) +/* 38E25C E008C45C D420CB60 */ ldc1 $f0, %lo(D_E008CB60)($at) +/* 38E260 E008C460 00431023 */ subu $v0, $v0, $v1 +/* 38E264 E008C464 44821000 */ mtc1 $v0, $f2 +/* 38E268 E008C468 00000000 */ nop +/* 38E26C E008C46C 468010A1 */ cvt.d.w $f2, $f2 +/* 38E270 E008C470 46201082 */ mul.d $f2, $f2, $f0 +/* 38E274 E008C474 00000000 */ nop +/* 38E278 E008C478 44830000 */ mtc1 $v1, $f0 +/* 38E27C E008C47C 00000000 */ nop +/* 38E280 E008C480 46800021 */ cvt.d.w $f0, $f0 +/* 38E284 E008C484 46220000 */ add.d $f0, $f0, $f2 +/* 38E288 E008C488 4620040D */ trunc.w.d $f16, $f0 +/* 38E28C E008C48C E4B0001C */ swc1 $f16, 0x1c($a1) +.LE008C490: +/* 38E290 E008C490 C4A00018 */ lwc1 $f0, 0x18($a1) +/* 38E294 E008C494 44871000 */ mtc1 $a3, $f2 +/* 38E298 E008C498 00000000 */ nop +/* 38E29C E008C49C 468010A0 */ cvt.s.w $f2, $f2 +/* 38E2A0 E008C4A0 46020002 */ mul.s $f0, $f0, $f2 +/* 38E2A4 E008C4A4 00000000 */ nop +/* 38E2A8 E008C4A8 28E2000A */ slti $v0, $a3, 0xa +/* 38E2AC E008C4AC C4A20020 */ lwc1 $f2, 0x20($a1) +/* 38E2B0 E008C4B0 468010A0 */ cvt.s.w $f2, $f2 +/* 38E2B4 E008C4B4 46020003 */ div.s $f0, $f0, $f2 +/* 38E2B8 E008C4B8 10400032 */ beqz $v0, .LE008C584 +/* 38E2BC E008C4BC E4A00014 */ swc1 $f0, 0x14($a1) +/* 38E2C0 E008C4C0 00071040 */ sll $v0, $a3, 1 +/* 38E2C4 E008C4C4 00471021 */ addu $v0, $v0, $a3 +/* 38E2C8 E008C4C8 000210C0 */ sll $v0, $v0, 3 +/* 38E2CC E008C4CC 00471021 */ addu $v0, $v0, $a3 +/* 38E2D0 E008C4D0 08023161 */ j .LE008C584 +/* 38E2D4 E008C4D4 ACA2001C */ sw $v0, 0x1c($a1) +.LE008C4D8: +/* 38E2D8 E008C4D8 28E20006 */ slti $v0, $a3, 6 +/* 38E2DC E008C4DC 14400012 */ bnez $v0, .LE008C528 +/* 38E2E0 E008C4E0 28E2000A */ slti $v0, $a3, 0xa +/* 38E2E4 E008C4E4 24020064 */ addiu $v0, $zero, 0x64 +/* 38E2E8 E008C4E8 8CA3001C */ lw $v1, 0x1c($a1) +/* 38E2EC E008C4EC 3C01E009 */ lui $at, %hi(D_E008CB68) +/* 38E2F0 E008C4F0 D420CB68 */ ldc1 $f0, %lo(D_E008CB68)($at) +/* 38E2F4 E008C4F4 00431023 */ subu $v0, $v0, $v1 +/* 38E2F8 E008C4F8 44821000 */ mtc1 $v0, $f2 +/* 38E2FC E008C4FC 00000000 */ nop +/* 38E300 E008C500 468010A1 */ cvt.d.w $f2, $f2 +/* 38E304 E008C504 46201082 */ mul.d $f2, $f2, $f0 +/* 38E308 E008C508 00000000 */ nop +/* 38E30C E008C50C 44830000 */ mtc1 $v1, $f0 +/* 38E310 E008C510 00000000 */ nop +/* 38E314 E008C514 46800021 */ cvt.d.w $f0, $f0 +/* 38E318 E008C518 46220000 */ add.d $f0, $f0, $f2 +/* 38E31C E008C51C 4620040D */ trunc.w.d $f16, $f0 +/* 38E320 E008C520 E4B0001C */ swc1 $f16, 0x1c($a1) +/* 38E324 E008C524 28E2000A */ slti $v0, $a3, 0xa +.LE008C528: +/* 38E328 E008C528 10400016 */ beqz $v0, .LE008C584 +/* 38E32C E008C52C 00000000 */ nop +/* 38E330 E008C530 3C01E009 */ lui $at, %hi(D_E008CB70) +/* 38E334 E008C534 D420CB70 */ ldc1 $f0, %lo(D_E008CB70)($at) +/* 38E338 E008C538 C4A6001C */ lwc1 $f6, 0x1c($a1) +/* 38E33C E008C53C 468031A1 */ cvt.d.w $f6, $f6 +/* 38E340 E008C540 46203182 */ mul.d $f6, $f6, $f0 +/* 38E344 E008C544 00000000 */ nop +/* 38E348 E008C548 C4A00018 */ lwc1 $f0, 0x18($a1) +/* 38E34C E008C54C 46000000 */ add.s $f0, $f0, $f0 +/* 38E350 E008C550 C4A20014 */ lwc1 $f2, 0x14($a1) +/* 38E354 E008C554 46020001 */ sub.s $f0, $f0, $f2 +/* 38E358 E008C558 3C01E009 */ lui $at, %hi(D_E008CB78) +/* 38E35C E008C55C D424CB78 */ ldc1 $f4, %lo(D_E008CB78)($at) +/* 38E360 E008C560 46000021 */ cvt.d.s $f0, $f0 +/* 38E364 E008C564 46240002 */ mul.d $f0, $f0, $f4 +/* 38E368 E008C568 00000000 */ nop +/* 38E36C E008C56C 460010A1 */ cvt.d.s $f2, $f2 +/* 38E370 E008C570 46201080 */ add.d $f2, $f2, $f0 +/* 38E374 E008C574 4620340D */ trunc.w.d $f16, $f6 +/* 38E378 E008C578 E4B0001C */ swc1 $f16, 0x1c($a1) +/* 38E37C E008C57C 462010A0 */ cvt.s.d $f2, $f2 +/* 38E380 E008C580 E4A20014 */ swc1 $f2, 0x14($a1) +.LE008C584: +/* 38E384 E008C584 8CA20004 */ lw $v0, 4($a1) +/* 38E388 E008C588 C4400028 */ lwc1 $f0, 0x28($v0) +/* 38E38C E008C58C E4A00008 */ swc1 $f0, 8($a1) +/* 38E390 E008C590 C440002C */ lwc1 $f0, 0x2c($v0) +/* 38E394 E008C594 E4A0000C */ swc1 $f0, 0xc($a1) +/* 38E398 E008C598 C4400030 */ lwc1 $f0, 0x30($v0) +/* 38E39C E008C59C 24060001 */ addiu $a2, $zero, 1 +/* 38E3A0 E008C5A0 E4A00010 */ swc1 $f0, 0x10($a1) +/* 38E3A4 E008C5A4 8C820008 */ lw $v0, 8($a0) +/* 38E3A8 E008C5A8 00C2102A */ slt $v0, $a2, $v0 +/* 38E3AC E008C5AC 1040003F */ beqz $v0, .LE008C6AC +/* 38E3B0 E008C5B0 24A50048 */ addiu $a1, $a1, 0x48 +/* 38E3B4 E008C5B4 240A0008 */ addiu $t2, $zero, 8 +/* 38E3B8 E008C5B8 28E9000A */ slti $t1, $a3, 0xa +/* 38E3BC E008C5BC 24A30030 */ addiu $v1, $a1, 0x30 +/* 38E3C0 E008C5C0 3C014220 */ lui $at, 0x4220 +/* 38E3C4 E008C5C4 44817000 */ mtc1 $at, $f14 +/* 38E3C8 E008C5C8 3C01E009 */ lui $at, %hi(D_E008CB80) +/* 38E3CC E008C5CC D428CB80 */ ldc1 $f8, %lo(D_E008CB80)($at) +/* 38E3D0 E008C5D0 3C01C220 */ lui $at, 0xc220 +/* 38E3D4 E008C5D4 44816000 */ mtc1 $at, $f12 +/* 38E3D8 E008C5D8 3C014120 */ lui $at, 0x4120 +/* 38E3DC E008C5DC 44815000 */ mtc1 $at, $f10 +.LE008C5E0: +/* 38E3E0 E008C5E0 150A001C */ bne $t0, $t2, .LE008C654 +/* 38E3E4 E008C5E4 30C20001 */ andi $v0, $a2, 1 +/* 38E3E8 E008C5E8 10400004 */ beqz $v0, .LE008C5FC +/* 38E3EC E008C5EC 00000000 */ nop +/* 38E3F0 E008C5F0 C460000C */ lwc1 $f0, 0xc($v1) +/* 38E3F4 E008C5F4 08023181 */ j .LE008C604 +/* 38E3F8 E008C5F8 46007081 */ sub.s $f2, $f14, $f0 +.LE008C5FC: +/* 38E3FC E008C5FC C460000C */ lwc1 $f0, 0xc($v1) +/* 38E400 E008C600 46006081 */ sub.s $f2, $f12, $f0 +.LE008C604: +/* 38E404 E008C604 460010A1 */ cvt.d.s $f2, $f2 +/* 38E408 E008C608 46281082 */ mul.d $f2, $f2, $f8 +/* 38E40C E008C60C 00000000 */ nop +/* 38E410 E008C610 46000021 */ cvt.d.s $f0, $f0 +/* 38E414 E008C614 46220000 */ add.d $f0, $f0, $f2 +/* 38E418 E008C618 46200020 */ cvt.s.d $f0, $f0 +/* 38E41C E008C61C E460000C */ swc1 $f0, 0xc($v1) +/* 38E420 E008C620 C466FFFC */ lwc1 $f6, -4($v1) +/* 38E424 E008C624 C4600008 */ lwc1 $f0, 8($v1) +/* 38E428 E008C628 C4640000 */ lwc1 $f4, ($v1) +/* 38E42C E008C62C 46003180 */ add.s $f6, $f6, $f0 +/* 38E430 E008C630 C460000C */ lwc1 $f0, 0xc($v1) +/* 38E434 E008C634 C4620004 */ lwc1 $f2, 4($v1) +/* 38E438 E008C638 46002100 */ add.s $f4, $f4, $f0 +/* 38E43C E008C63C C4600010 */ lwc1 $f0, 0x10($v1) +/* 38E440 E008C640 46001080 */ add.s $f2, $f2, $f0 +/* 38E444 E008C644 E466FFFC */ swc1 $f6, -4($v1) +/* 38E448 E008C648 E4640000 */ swc1 $f4, ($v1) +/* 38E44C E008C64C 080231A6 */ j .LE008C698 +/* 38E450 E008C650 E4620004 */ swc1 $f2, 4($v1) +.LE008C654: +/* 38E454 E008C654 1120000C */ beqz $t1, .LE008C688 +/* 38E458 E008C658 00000000 */ nop +/* 38E45C E008C65C C460000C */ lwc1 $f0, 0xc($v1) +/* 38E460 E008C660 44871000 */ mtc1 $a3, $f2 +/* 38E464 E008C664 00000000 */ nop +/* 38E468 E008C668 468010A0 */ cvt.s.w $f2, $f2 +/* 38E46C E008C66C 46020002 */ mul.s $f0, $f0, $f2 +/* 38E470 E008C670 00000000 */ nop +/* 38E474 E008C674 C4620000 */ lwc1 $f2, ($v1) +/* 38E478 E008C678 460A0003 */ div.s $f0, $f0, $f10 +/* 38E47C E008C67C 46001080 */ add.s $f2, $f2, $f0 +/* 38E480 E008C680 080231A6 */ j .LE008C698 +/* 38E484 E008C684 E4620000 */ swc1 $f2, ($v1) +.LE008C688: +/* 38E488 E008C688 C4600000 */ lwc1 $f0, ($v1) +/* 38E48C E008C68C C462000C */ lwc1 $f2, 0xc($v1) +/* 38E490 E008C690 46020000 */ add.s $f0, $f0, $f2 +/* 38E494 E008C694 E4600000 */ swc1 $f0, ($v1) +.LE008C698: +/* 38E498 E008C698 24C60001 */ addiu $a2, $a2, 1 +/* 38E49C E008C69C 8C820008 */ lw $v0, 8($a0) +/* 38E4A0 E008C6A0 00C2102A */ slt $v0, $a2, $v0 +/* 38E4A4 E008C6A4 1440FFCE */ bnez $v0, .LE008C5E0 +/* 38E4A8 E008C6A8 24630048 */ addiu $v1, $v1, 0x48 +.LE008C6AC: +/* 38E4AC E008C6AC 8FBF0010 */ lw $ra, 0x10($sp) +/* 38E4B0 E008C6B0 03E00008 */ jr $ra +/* 38E4B4 E008C6B4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_38DE00/func_E008C6B8.s b/asm/nonmatchings/code_38DE00/func_E008C6B8.s new file mode 100644 index 0000000000..fdbd02ffd8 --- /dev/null +++ b/asm/nonmatchings/code_38DE00/func_E008C6B8.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E008C6B8 +/* 38E4B8 E008C6B8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 38E4BC E008C6BC 3C02E009 */ lui $v0, %hi(D_E008C6FC) +/* 38E4C0 E008C6C0 2442C6FC */ addiu $v0, $v0, %lo(D_E008C6FC) +/* 38E4C4 E008C6C4 AFA2001C */ sw $v0, 0x1c($sp) +/* 38E4C8 E008C6C8 2402002D */ addiu $v0, $zero, 0x2d +/* 38E4CC E008C6CC AFA40018 */ sw $a0, 0x18($sp) +/* 38E4D0 E008C6D0 27A40010 */ addiu $a0, $sp, 0x10 +/* 38E4D4 E008C6D4 AFBF0020 */ sw $ra, 0x20($sp) +/* 38E4D8 E008C6D8 AFA00014 */ sw $zero, 0x14($sp) +/* 38E4DC E008C6DC 0C080120 */ jal func_E0200480 +/* 38E4E0 E008C6E0 AFA20010 */ sw $v0, 0x10($sp) +/* 38E4E4 E008C6E4 8C430000 */ lw $v1, ($v0) +/* 38E4E8 E008C6E8 34630002 */ ori $v1, $v1, 2 +/* 38E4EC E008C6EC AC430000 */ sw $v1, ($v0) +/* 38E4F0 E008C6F0 8FBF0020 */ lw $ra, 0x20($sp) +/* 38E4F4 E008C6F4 03E00008 */ jr $ra +/* 38E4F8 E008C6F8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_38DE00/func_E008C6FC.s b/asm/nonmatchings/code_38DE00/func_E008C6FC.s new file mode 100644 index 0000000000..07906501d0 --- /dev/null +++ b/asm/nonmatchings/code_38DE00/func_E008C6FC.s @@ -0,0 +1,261 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E008C6FC +/* 38E4FC E008C6FC 27BDFF10 */ addiu $sp, $sp, -0xf0 +/* 38E500 E008C700 AFBE00C8 */ sw $fp, 0xc8($sp) +/* 38E504 E008C704 0080F02D */ daddu $fp, $a0, $zero +/* 38E508 E008C708 3C06DB06 */ lui $a2, 0xdb06 +/* 38E50C E008C70C 34C60024 */ ori $a2, $a2, 0x24 +/* 38E510 E008C710 27A40020 */ addiu $a0, $sp, 0x20 +/* 38E514 E008C714 AFB000A8 */ sw $s0, 0xa8($sp) +/* 38E518 E008C718 3C100001 */ lui $s0, 1 +/* 38E51C E008C71C 36101630 */ ori $s0, $s0, 0x1630 +/* 38E520 E008C720 AFB300B4 */ sw $s3, 0xb4($sp) +/* 38E524 E008C724 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 38E528 E008C728 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 38E52C E008C72C AFBF00CC */ sw $ra, 0xcc($sp) +/* 38E530 E008C730 AFB700C4 */ sw $s7, 0xc4($sp) +/* 38E534 E008C734 AFB600C0 */ sw $s6, 0xc0($sp) +/* 38E538 E008C738 AFB500BC */ sw $s5, 0xbc($sp) +/* 38E53C E008C73C AFB400B8 */ sw $s4, 0xb8($sp) +/* 38E540 E008C740 AFB200B0 */ sw $s2, 0xb0($sp) +/* 38E544 E008C744 AFB100AC */ sw $s1, 0xac($sp) +/* 38E548 E008C748 F7BA00E8 */ sdc1 $f26, 0xe8($sp) +/* 38E54C E008C74C F7B800E0 */ sdc1 $f24, 0xe0($sp) +/* 38E550 E008C750 F7B600D8 */ sdc1 $f22, 0xd8($sp) +/* 38E554 E008C754 F7B400D0 */ sdc1 $f20, 0xd0($sp) +/* 38E558 E008C758 8E630000 */ lw $v1, ($s3) +/* 38E55C E008C75C 8FD1000C */ lw $s1, 0xc($fp) +/* 38E560 E008C760 0060282D */ daddu $a1, $v1, $zero +/* 38E564 E008C764 24630008 */ addiu $v1, $v1, 8 +/* 38E568 E008C768 AE630000 */ sw $v1, ($s3) +/* 38E56C E008C76C 8E28001C */ lw $t0, 0x1c($s1) +/* 38E570 E008C770 AFA800A4 */ sw $t0, 0xa4($sp) +/* 38E574 E008C774 C6380014 */ lwc1 $f24, 0x14($s1) +/* 38E578 E008C778 C6360018 */ lwc1 $f22, 0x18($s1) +/* 38E57C E008C77C 8E280000 */ lw $t0, ($s1) +/* 38E580 E008C780 3C02E700 */ lui $v0, 0xe700 +/* 38E584 E008C784 AFA800A0 */ sw $t0, 0xa0($sp) +/* 38E588 E008C788 ACA20000 */ sw $v0, ($a1) +/* 38E58C E008C78C 24620008 */ addiu $v0, $v1, 8 +/* 38E590 E008C790 ACA00004 */ sw $zero, 4($a1) +/* 38E594 E008C794 AE620000 */ sw $v0, ($s3) +/* 38E598 E008C798 AC660000 */ sw $a2, ($v1) +/* 38E59C E008C79C 8FC50010 */ lw $a1, 0x10($fp) +/* 38E5A0 E008C7A0 24620010 */ addiu $v0, $v1, 0x10 +/* 38E5A4 E008C7A4 AE620000 */ sw $v0, ($s3) +/* 38E5A8 E008C7A8 8CA5001C */ lw $a1, 0x1c($a1) +/* 38E5AC E008C7AC 3C02DE00 */ lui $v0, 0xde00 +/* 38E5B0 E008C7B0 AC620008 */ sw $v0, 8($v1) +/* 38E5B4 E008C7B4 3C020900 */ lui $v0, 0x900 +/* 38E5B8 E008C7B8 24420420 */ addiu $v0, $v0, 0x420 +/* 38E5BC E008C7BC AC62000C */ sw $v0, 0xc($v1) +/* 38E5C0 E008C7C0 3C028000 */ lui $v0, 0x8000 +/* 38E5C4 E008C7C4 00A22821 */ addu $a1, $a1, $v0 +/* 38E5C8 E008C7C8 AC650004 */ sw $a1, 4($v1) +/* 38E5CC E008C7CC 8E250008 */ lw $a1, 8($s1) +/* 38E5D0 E008C7D0 8E26000C */ lw $a2, 0xc($s1) +/* 38E5D4 E008C7D4 8E270010 */ lw $a3, 0x10($s1) +/* 38E5D8 E008C7D8 4480A000 */ mtc1 $zero, $f20 +/* 38E5DC E008C7DC 0C080108 */ jal func_E0200420 +/* 38E5E0 E008C7E0 24160001 */ addiu $s6, $zero, 1 +/* 38E5E4 E008C7E4 27B20060 */ addiu $s2, $sp, 0x60 +/* 38E5E8 E008C7E8 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 38E5EC E008C7EC 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 38E5F0 E008C7F0 4406A000 */ mfc1 $a2, $f20 +/* 38E5F4 E008C7F4 00031080 */ sll $v0, $v1, 2 +/* 38E5F8 E008C7F8 00431021 */ addu $v0, $v0, $v1 +/* 38E5FC E008C7FC 00021080 */ sll $v0, $v0, 2 +/* 38E600 E008C800 00431023 */ subu $v0, $v0, $v1 +/* 38E604 E008C804 000218C0 */ sll $v1, $v0, 3 +/* 38E608 E008C808 00431021 */ addu $v0, $v0, $v1 +/* 38E60C E008C80C 000210C0 */ sll $v0, $v0, 3 +/* 38E610 E008C810 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 38E614 E008C814 00220821 */ addu $at, $at, $v0 +/* 38E618 E008C818 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 38E61C E008C81C 3C073F80 */ lui $a3, 0x3f80 +/* 38E620 E008C820 46000007 */ neg.s $f0, $f0 +/* 38E624 E008C824 44050000 */ mfc1 $a1, $f0 +/* 38E628 E008C828 0240202D */ daddu $a0, $s2, $zero +/* 38E62C E008C82C 0C080104 */ jal func_E0200410 +/* 38E630 E008C830 E7B40010 */ swc1 $f20, 0x10($sp) +/* 38E634 E008C834 0240202D */ daddu $a0, $s2, $zero +/* 38E638 E008C838 27A50020 */ addiu $a1, $sp, 0x20 +/* 38E63C E008C83C 0C080114 */ jal func_E0200450 +/* 38E640 E008C840 00A0302D */ daddu $a2, $a1, $zero +/* 38E644 E008C844 27A40020 */ addiu $a0, $sp, 0x20 +/* 38E648 E008C848 3C148007 */ lui $s4, %hi(D_800741F0) +/* 38E64C E008C84C 269441F0 */ addiu $s4, $s4, %lo(D_800741F0) +/* 38E650 E008C850 3C15800A */ lui $s5, %hi(D_8009A674) +/* 38E654 E008C854 26B5A674 */ addiu $s5, $s5, %lo(D_8009A674) +/* 38E658 E008C858 96850000 */ lhu $a1, ($s4) +/* 38E65C E008C85C 8EA20000 */ lw $v0, ($s5) +/* 38E660 E008C860 00052980 */ sll $a1, $a1, 6 +/* 38E664 E008C864 00B02821 */ addu $a1, $a1, $s0 +/* 38E668 E008C868 0C080118 */ jal func_E0200460 +/* 38E66C E008C86C 00452821 */ addu $a1, $v0, $a1 +/* 38E670 E008C870 8E620000 */ lw $v0, ($s3) +/* 38E674 E008C874 26310048 */ addiu $s1, $s1, 0x48 +/* 38E678 E008C878 0040282D */ daddu $a1, $v0, $zero +/* 38E67C E008C87C 24420008 */ addiu $v0, $v0, 8 +/* 38E680 E008C880 AE620000 */ sw $v0, ($s3) +/* 38E684 E008C884 96840000 */ lhu $a0, ($s4) +/* 38E688 E008C888 3C02DA38 */ lui $v0, 0xda38 +/* 38E68C E008C88C ACA20000 */ sw $v0, ($a1) +/* 38E690 E008C890 8EA30000 */ lw $v1, ($s5) +/* 38E694 E008C894 3082FFFF */ andi $v0, $a0, 0xffff +/* 38E698 E008C898 00021180 */ sll $v0, $v0, 6 +/* 38E69C E008C89C 00501021 */ addu $v0, $v0, $s0 +/* 38E6A0 E008C8A0 00621821 */ addu $v1, $v1, $v0 +/* 38E6A4 E008C8A4 ACA30004 */ sw $v1, 4($a1) +/* 38E6A8 E008C8A8 8FC20008 */ lw $v0, 8($fp) +/* 38E6AC E008C8AC 00962021 */ addu $a0, $a0, $s6 +/* 38E6B0 E008C8B0 02C2102A */ slt $v0, $s6, $v0 +/* 38E6B4 E008C8B4 10400073 */ beqz $v0, .LE008CA84 +/* 38E6B8 E008C8B8 A6840000 */ sh $a0, ($s4) +/* 38E6BC E008C8BC 3C014040 */ lui $at, 0x4040 +/* 38E6C0 E008C8C0 4481D000 */ mtc1 $at, $f26 +/* 38E6C4 E008C8C4 02A0B82D */ daddu $s7, $s5, $zero +/* 38E6C8 E008C8C8 0280A82D */ daddu $s5, $s4, $zero +/* 38E6CC E008C8CC 3C140001 */ lui $s4, 1 +/* 38E6D0 E008C8D0 36941630 */ ori $s4, $s4, 0x1630 +/* 38E6D4 E008C8D4 26300046 */ addiu $s0, $s1, 0x46 +.LE008C8D8: +/* 38E6D8 E008C8D8 C600FFCE */ lwc1 $f0, -0x32($s0) +/* 38E6DC E008C8DC 4600C002 */ mul.s $f0, $f24, $f0 +/* 38E6E0 E008C8E0 00000000 */ nop +/* 38E6E4 E008C8E4 4406A000 */ mfc1 $a2, $f20 +/* 38E6E8 E008C8E8 E7A00010 */ swc1 $f0, 0x10($sp) +/* 38E6EC E008C8EC C600FFC2 */ lwc1 $f0, -0x3e($s0) +/* 38E6F0 E008C8F0 E7A00014 */ swc1 $f0, 0x14($sp) +/* 38E6F4 E008C8F4 C600FFC6 */ lwc1 $f0, -0x3a($s0) +/* 38E6F8 E008C8F8 E7A00018 */ swc1 $f0, 0x18($sp) +/* 38E6FC E008C8FC C600FFCA */ lwc1 $f0, -0x36($s0) +/* 38E700 E008C900 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 38E704 E008C904 8E05FFE6 */ lw $a1, -0x1a($s0) +/* 38E708 E008C908 8E07FFEE */ lw $a3, -0x12($s0) +/* 38E70C E008C90C 0C080180 */ jal func_E0200600 +/* 38E710 E008C910 27A40020 */ addiu $a0, $sp, 0x20 +/* 38E714 E008C914 E7B40010 */ swc1 $f20, 0x10($sp) +/* 38E718 E008C918 8E05FFEA */ lw $a1, -0x16($s0) +/* 38E71C E008C91C 4406A000 */ mfc1 $a2, $f20 +/* 38E720 E008C920 3C073F80 */ lui $a3, 0x3f80 +/* 38E724 E008C924 0C080104 */ jal func_E0200410 +/* 38E728 E008C928 0240202D */ daddu $a0, $s2, $zero +/* 38E72C E008C92C 0240202D */ daddu $a0, $s2, $zero +/* 38E730 E008C930 27A50020 */ addiu $a1, $sp, 0x20 +/* 38E734 E008C934 0C080114 */ jal func_E0200450 +/* 38E738 E008C938 00A0302D */ daddu $a2, $a1, $zero +/* 38E73C E008C93C 8FA800A0 */ lw $t0, 0xa0($sp) +/* 38E740 E008C940 29020008 */ slti $v0, $t0, 8 +/* 38E744 E008C944 1040000B */ beqz $v0, .LE008C974 +/* 38E748 E008C948 00000000 */ nop +/* 38E74C E008C94C 4616C001 */ sub.s $f0, $f24, $f22 +/* 38E750 E008C950 461A0002 */ mul.s $f0, $f0, $f26 +/* 38E754 E008C954 00000000 */ nop +/* 38E758 E008C958 46160003 */ div.s $f0, $f0, $f22 +/* 38E75C E008C95C 4600D001 */ sub.s $f0, $f26, $f0 +/* 38E760 E008C960 4406A000 */ mfc1 $a2, $f20 +/* 38E764 E008C964 4407A000 */ mfc1 $a3, $f20 +/* 38E768 E008C968 44050000 */ mfc1 $a1, $f0 +/* 38E76C E008C96C 08023260 */ j .LE008C980 +/* 38E770 E008C970 00000000 */ nop +.LE008C974: +/* 38E774 E008C974 3C054000 */ lui $a1, 0x4000 +/* 38E778 E008C978 4406A000 */ mfc1 $a2, $f20 +/* 38E77C E008C97C 4407A000 */ mfc1 $a3, $f20 +.LE008C980: +/* 38E780 E008C980 0C080108 */ jal func_E0200420 +/* 38E784 E008C984 0240202D */ daddu $a0, $s2, $zero +/* 38E788 E008C988 0240202D */ daddu $a0, $s2, $zero +/* 38E78C E008C98C 27A50020 */ addiu $a1, $sp, 0x20 +/* 38E790 E008C990 0C080114 */ jal func_E0200450 +/* 38E794 E008C994 00A0302D */ daddu $a2, $a1, $zero +/* 38E798 E008C998 27A40020 */ addiu $a0, $sp, 0x20 +/* 38E79C E008C99C 26D60001 */ addiu $s6, $s6, 1 +/* 38E7A0 E008C9A0 8E630000 */ lw $v1, ($s3) +/* 38E7A4 E008C9A4 96A50000 */ lhu $a1, ($s5) +/* 38E7A8 E008C9A8 8EE20000 */ lw $v0, ($s7) +/* 38E7AC E008C9AC 0060382D */ daddu $a3, $v1, $zero +/* 38E7B0 E008C9B0 24630008 */ addiu $v1, $v1, 8 +/* 38E7B4 E008C9B4 00052980 */ sll $a1, $a1, 6 +/* 38E7B8 E008C9B8 00B42821 */ addu $a1, $a1, $s4 +/* 38E7BC E008C9BC 00452821 */ addu $a1, $v0, $a1 +/* 38E7C0 E008C9C0 3C02FA00 */ lui $v0, 0xfa00 +/* 38E7C4 E008C9C4 AE630000 */ sw $v1, ($s3) +/* 38E7C8 E008C9C8 ACE20000 */ sw $v0, ($a3) +/* 38E7CC E008C9CC 9203FFFE */ lbu $v1, -2($s0) +/* 38E7D0 E008C9D0 9202FFFF */ lbu $v0, -1($s0) +/* 38E7D4 E008C9D4 92060000 */ lbu $a2, ($s0) +/* 38E7D8 E008C9D8 26100048 */ addiu $s0, $s0, 0x48 +/* 38E7DC E008C9DC 8FA800A4 */ lw $t0, 0xa4($sp) +/* 38E7E0 E008C9E0 00031E00 */ sll $v1, $v1, 0x18 +/* 38E7E4 E008C9E4 00021400 */ sll $v0, $v0, 0x10 +/* 38E7E8 E008C9E8 00621825 */ or $v1, $v1, $v0 +/* 38E7EC E008C9EC 00063200 */ sll $a2, $a2, 8 +/* 38E7F0 E008C9F0 00661825 */ or $v1, $v1, $a2 +/* 38E7F4 E008C9F4 310200FF */ andi $v0, $t0, 0xff +/* 38E7F8 E008C9F8 00621825 */ or $v1, $v1, $v0 +/* 38E7FC E008C9FC 0C080118 */ jal func_E0200460 +/* 38E800 E008CA00 ACE30004 */ sw $v1, 4($a3) +/* 38E804 E008CA04 3C06D838 */ lui $a2, 0xd838 +/* 38E808 E008CA08 8E640000 */ lw $a0, ($s3) +/* 38E80C E008CA0C 34C60002 */ ori $a2, $a2, 2 +/* 38E810 E008CA10 0080282D */ daddu $a1, $a0, $zero +/* 38E814 E008CA14 24840008 */ addiu $a0, $a0, 8 +/* 38E818 E008CA18 AE640000 */ sw $a0, ($s3) +/* 38E81C E008CA1C 96A20000 */ lhu $v0, ($s5) +/* 38E820 E008CA20 3C03DA38 */ lui $v1, 0xda38 +/* 38E824 E008CA24 ACA30000 */ sw $v1, ($a1) +/* 38E828 E008CA28 24430001 */ addiu $v1, $v0, 1 +/* 38E82C E008CA2C 3042FFFF */ andi $v0, $v0, 0xffff +/* 38E830 E008CA30 00021180 */ sll $v0, $v0, 6 +/* 38E834 E008CA34 A6A30000 */ sh $v1, ($s5) +/* 38E838 E008CA38 8EE30000 */ lw $v1, ($s7) +/* 38E83C E008CA3C 00541021 */ addu $v0, $v0, $s4 +/* 38E840 E008CA40 00621821 */ addu $v1, $v1, $v0 +/* 38E844 E008CA44 24820008 */ addiu $v0, $a0, 8 +/* 38E848 E008CA48 ACA30004 */ sw $v1, 4($a1) +/* 38E84C E008CA4C AE620000 */ sw $v0, ($s3) +/* 38E850 E008CA50 3C02DE00 */ lui $v0, 0xde00 +/* 38E854 E008CA54 AC820000 */ sw $v0, ($a0) +/* 38E858 E008CA58 3C020900 */ lui $v0, 0x900 +/* 38E85C E008CA5C 244203A0 */ addiu $v0, $v0, 0x3a0 +/* 38E860 E008CA60 AC820004 */ sw $v0, 4($a0) +/* 38E864 E008CA64 24020040 */ addiu $v0, $zero, 0x40 +/* 38E868 E008CA68 AC860008 */ sw $a2, 8($a0) +/* 38E86C E008CA6C AC82000C */ sw $v0, 0xc($a0) +/* 38E870 E008CA70 8FC20008 */ lw $v0, 8($fp) +/* 38E874 E008CA74 24840010 */ addiu $a0, $a0, 0x10 +/* 38E878 E008CA78 02C2102A */ slt $v0, $s6, $v0 +/* 38E87C E008CA7C 1440FF96 */ bnez $v0, .LE008C8D8 +/* 38E880 E008CA80 AE640000 */ sw $a0, ($s3) +.LE008CA84: +/* 38E884 E008CA84 3C05D838 */ lui $a1, 0xd838 +/* 38E888 E008CA88 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 38E88C E008CA8C 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 38E890 E008CA90 8C620000 */ lw $v0, ($v1) +/* 38E894 E008CA94 34A50002 */ ori $a1, $a1, 2 +/* 38E898 E008CA98 0040202D */ daddu $a0, $v0, $zero +/* 38E89C E008CA9C 24420008 */ addiu $v0, $v0, 8 +/* 38E8A0 E008CAA0 AC620000 */ sw $v0, ($v1) +/* 38E8A4 E008CAA4 24020040 */ addiu $v0, $zero, 0x40 +/* 38E8A8 E008CAA8 AC850000 */ sw $a1, ($a0) +/* 38E8AC E008CAAC AC820004 */ sw $v0, 4($a0) +/* 38E8B0 E008CAB0 8FBF00CC */ lw $ra, 0xcc($sp) +/* 38E8B4 E008CAB4 8FBE00C8 */ lw $fp, 0xc8($sp) +/* 38E8B8 E008CAB8 8FB700C4 */ lw $s7, 0xc4($sp) +/* 38E8BC E008CABC 8FB600C0 */ lw $s6, 0xc0($sp) +/* 38E8C0 E008CAC0 8FB500BC */ lw $s5, 0xbc($sp) +/* 38E8C4 E008CAC4 8FB400B8 */ lw $s4, 0xb8($sp) +/* 38E8C8 E008CAC8 8FB300B4 */ lw $s3, 0xb4($sp) +/* 38E8CC E008CACC 8FB200B0 */ lw $s2, 0xb0($sp) +/* 38E8D0 E008CAD0 8FB100AC */ lw $s1, 0xac($sp) +/* 38E8D4 E008CAD4 8FB000A8 */ lw $s0, 0xa8($sp) +/* 38E8D8 E008CAD8 D7BA00E8 */ ldc1 $f26, 0xe8($sp) +/* 38E8DC E008CADC D7B800E0 */ ldc1 $f24, 0xe0($sp) +/* 38E8E0 E008CAE0 D7B600D8 */ ldc1 $f22, 0xd8($sp) +/* 38E8E4 E008CAE4 D7B400D0 */ ldc1 $f20, 0xd0($sp) +/* 38E8E8 E008CAE8 03E00008 */ jr $ra +/* 38E8EC E008CAEC 27BD00F0 */ addiu $sp, $sp, 0xf0 diff --git a/asm/nonmatchings/code_394280/func_E0096000.s b/asm/nonmatchings/code_394280/func_E0096000.s new file mode 100644 index 0000000000..95218835af --- /dev/null +++ b/asm/nonmatchings/code_394280/func_E0096000.s @@ -0,0 +1,65 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0096000 +/* 394280 E0096000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 394284 E0096004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 394288 E0096008 4485A000 */ mtc1 $a1, $f20 +/* 39428C E009600C AFB1002C */ sw $s1, 0x2c($sp) +/* 394290 E0096010 0080882D */ daddu $s1, $a0, $zero +/* 394294 E0096014 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 394298 E0096018 4486B000 */ mtc1 $a2, $f22 +/* 39429C E009601C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3942A0 E0096020 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3942A4 E0096024 4487C000 */ mtc1 $a3, $f24 +/* 3942A8 E0096028 3C02E009 */ lui $v0, %hi(D_E00960EC) +/* 3942AC E009602C 244260EC */ addiu $v0, $v0, %lo(D_E00960EC) +/* 3942B0 E0096030 AFA20018 */ sw $v0, 0x18($sp) +/* 3942B4 E0096034 3C02E009 */ lui $v0, %hi(D_E00960F4) +/* 3942B8 E0096038 244260F4 */ addiu $v0, $v0, %lo(D_E00960F4) +/* 3942BC E009603C AFA2001C */ sw $v0, 0x1c($sp) +/* 3942C0 E0096040 3C02E009 */ lui $v0, %hi(D_E0096178) +/* 3942C4 E0096044 24426178 */ addiu $v0, $v0, %lo(D_E0096178) +/* 3942C8 E0096048 AFA20020 */ sw $v0, 0x20($sp) +/* 3942CC E009604C 2402004B */ addiu $v0, $zero, 0x4b +/* 3942D0 E0096050 AFBF0030 */ sw $ra, 0x30($sp) +/* 3942D4 E0096054 AFB00028 */ sw $s0, 0x28($sp) +/* 3942D8 E0096058 AFA00010 */ sw $zero, 0x10($sp) +/* 3942DC E009605C AFA00024 */ sw $zero, 0x24($sp) +/* 3942E0 E0096060 0C080124 */ jal func_E0200490 +/* 3942E4 E0096064 AFA20014 */ sw $v0, 0x14($sp) +/* 3942E8 E0096068 24040024 */ addiu $a0, $zero, 0x24 +/* 3942EC E009606C 24030001 */ addiu $v1, $zero, 1 +/* 3942F0 E0096070 0040802D */ daddu $s0, $v0, $zero +/* 3942F4 E0096074 0C08012C */ jal func_E02004B0 +/* 3942F8 E0096078 AE030008 */ sw $v1, 8($s0) +/* 3942FC E009607C 0040202D */ daddu $a0, $v0, $zero +/* 394300 E0096080 14800003 */ bnez $a0, .LE0096090 +/* 394304 E0096084 AE02000C */ sw $v0, 0xc($s0) +.LE0096088: +/* 394308 E0096088 08025822 */ j .LE0096088 +/* 39430C E009608C 00000000 */ nop +.LE0096090: +/* 394310 E0096090 3C013F2B */ lui $at, 0x3f2b +/* 394314 E0096094 3421851F */ ori $at, $at, 0x851f +/* 394318 E0096098 44810000 */ mtc1 $at, $f0 +/* 39431C E009609C AC910000 */ sw $s1, ($a0) +/* 394320 E00960A0 E4940004 */ swc1 $f20, 4($a0) +/* 394324 E00960A4 E4960008 */ swc1 $f22, 8($a0) +/* 394328 E00960A8 E498000C */ swc1 $f24, 0xc($a0) +/* 39432C E00960AC AC800010 */ sw $zero, 0x10($a0) +/* 394330 E00960B0 8FA30064 */ lw $v1, 0x64($sp) +/* 394334 E00960B4 AC800020 */ sw $zero, 0x20($a0) +/* 394338 E00960B8 AC83001C */ sw $v1, 0x1c($a0) +/* 39433C E00960BC C7A20060 */ lwc1 $f2, 0x60($sp) +/* 394340 E00960C0 0200102D */ daddu $v0, $s0, $zero +/* 394344 E00960C4 E4800018 */ swc1 $f0, 0x18($a0) +/* 394348 E00960C8 E4820014 */ swc1 $f2, 0x14($a0) +/* 39434C E00960CC 8FBF0030 */ lw $ra, 0x30($sp) +/* 394350 E00960D0 8FB1002C */ lw $s1, 0x2c($sp) +/* 394354 E00960D4 8FB00028 */ lw $s0, 0x28($sp) +/* 394358 E00960D8 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 39435C E00960DC D7B60040 */ ldc1 $f22, 0x40($sp) +/* 394360 E00960E0 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 394364 E00960E4 03E00008 */ jr $ra +/* 394368 E00960E8 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_394280/func_E00960EC.s b/asm/nonmatchings/code_394280/func_E00960EC.s new file mode 100644 index 0000000000..093bc41d52 --- /dev/null +++ b/asm/nonmatchings/code_394280/func_E00960EC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00960EC +/* 39436C E00960EC 03E00008 */ jr $ra +/* 394370 E00960F0 00000000 */ nop diff --git a/asm/nonmatchings/code_394280/func_E00960F4.s b/asm/nonmatchings/code_394280/func_E00960F4.s new file mode 100644 index 0000000000..55b414dd9a --- /dev/null +++ b/asm/nonmatchings/code_394280/func_E00960F4.s @@ -0,0 +1,40 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00960F4 +/* 394374 E00960F4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 394378 E00960F8 AFBF0010 */ sw $ra, 0x10($sp) +/* 39437C E00960FC 8C85000C */ lw $a1, 0xc($a0) +/* 394380 E0096100 8CA2001C */ lw $v0, 0x1c($a1) +/* 394384 E0096104 2442FFFF */ addiu $v0, $v0, -1 +/* 394388 E0096108 ACA2001C */ sw $v0, 0x1c($a1) +/* 39438C E009610C 8CA20020 */ lw $v0, 0x20($a1) +/* 394390 E0096110 8CA3001C */ lw $v1, 0x1c($a1) +/* 394394 E0096114 24420001 */ addiu $v0, $v0, 1 +/* 394398 E0096118 04610005 */ bgez $v1, .LE0096130 +/* 39439C E009611C ACA20020 */ sw $v0, 0x20($a1) +/* 3943A0 E0096120 0C080128 */ jal func_E02004A0 +/* 3943A4 E0096124 00000000 */ nop +/* 3943A8 E0096128 0802585B */ j .LE009616C +/* 3943AC E009612C 00000000 */ nop +.LE0096130: +/* 3943B0 E0096130 C4A00010 */ lwc1 $f0, 0x10($a1) +/* 3943B4 E0096134 C4A20014 */ lwc1 $f2, 0x14($a1) +/* 3943B8 E0096138 46020000 */ add.s $f0, $f0, $f2 +/* 3943BC E009613C 3C014000 */ lui $at, 0x4000 +/* 3943C0 E0096140 44811000 */ mtc1 $at, $f2 +/* 3943C4 E0096144 00000000 */ nop +/* 3943C8 E0096148 4600103C */ c.lt.s $f2, $f0 +/* 3943CC E009614C 00000000 */ nop +/* 3943D0 E0096150 45000002 */ bc1f .LE009615C +/* 3943D4 E0096154 E4A00010 */ swc1 $f0, 0x10($a1) +/* 3943D8 E0096158 E4A20010 */ swc1 $f2, 0x10($a1) +.LE009615C: +/* 3943DC E009615C C4A00008 */ lwc1 $f0, 8($a1) +/* 3943E0 E0096160 C4A20010 */ lwc1 $f2, 0x10($a1) +/* 3943E4 E0096164 46020000 */ add.s $f0, $f0, $f2 +/* 3943E8 E0096168 E4A00008 */ swc1 $f0, 8($a1) +.LE009616C: +/* 3943EC E009616C 8FBF0010 */ lw $ra, 0x10($sp) +/* 3943F0 E0096170 03E00008 */ jr $ra +/* 3943F4 E0096174 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_394280/func_E0096178.s b/asm/nonmatchings/code_394280/func_E0096178.s new file mode 100644 index 0000000000..d258f2c49c --- /dev/null +++ b/asm/nonmatchings/code_394280/func_E0096178.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0096178 +/* 3943F8 E0096178 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3943FC E009617C 3C02E009 */ lui $v0, %hi(D_E00961BC) +/* 394400 E0096180 244261BC */ addiu $v0, $v0, %lo(D_E00961BC) +/* 394404 E0096184 AFA2001C */ sw $v0, 0x1c($sp) +/* 394408 E0096188 24020001 */ addiu $v0, $zero, 1 +/* 39440C E009618C AFA40018 */ sw $a0, 0x18($sp) +/* 394410 E0096190 27A40010 */ addiu $a0, $sp, 0x10 +/* 394414 E0096194 AFBF0020 */ sw $ra, 0x20($sp) +/* 394418 E0096198 AFA00014 */ sw $zero, 0x14($sp) +/* 39441C E009619C 0C080120 */ jal func_E0200480 +/* 394420 E00961A0 AFA20010 */ sw $v0, 0x10($sp) +/* 394424 E00961A4 8C430000 */ lw $v1, ($v0) +/* 394428 E00961A8 34630002 */ ori $v1, $v1, 2 +/* 39442C E00961AC AC430000 */ sw $v1, ($v0) +/* 394430 E00961B0 8FBF0020 */ lw $ra, 0x20($sp) +/* 394434 E00961B4 03E00008 */ jr $ra +/* 394438 E00961B8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_394280/func_E00961BC.s b/asm/nonmatchings/code_394280/func_E00961BC.s new file mode 100644 index 0000000000..ee5c1cccfa --- /dev/null +++ b/asm/nonmatchings/code_394280/func_E00961BC.s @@ -0,0 +1,141 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00961BC +/* 39443C E00961BC 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 394440 E00961C0 0080182D */ daddu $v1, $a0, $zero +/* 394444 E00961C4 3C05DB06 */ lui $a1, 0xdb06 +/* 394448 E00961C8 34A50024 */ ori $a1, $a1, 0x24 +/* 39444C E00961CC 27A40018 */ addiu $a0, $sp, 0x18 +/* 394450 E00961D0 AFB1009C */ sw $s1, 0x9c($sp) +/* 394454 E00961D4 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 394458 E00961D8 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 39445C E00961DC AFB400A8 */ sw $s4, 0xa8($sp) +/* 394460 E00961E0 3C140001 */ lui $s4, 1 +/* 394464 E00961E4 AFB500AC */ sw $s5, 0xac($sp) +/* 394468 E00961E8 3C15E700 */ lui $s5, 0xe700 +/* 39446C E00961EC AFBF00B0 */ sw $ra, 0xb0($sp) +/* 394470 E00961F0 AFB300A4 */ sw $s3, 0xa4($sp) +/* 394474 E00961F4 AFB200A0 */ sw $s2, 0xa0($sp) +/* 394478 E00961F8 AFB00098 */ sw $s0, 0x98($sp) +/* 39447C E00961FC F7B400B8 */ sdc1 $f20, 0xb8($sp) +/* 394480 E0096200 8E280000 */ lw $t0, ($s1) +/* 394484 E0096204 8C72000C */ lw $s2, 0xc($v1) +/* 394488 E0096208 0100102D */ daddu $v0, $t0, $zero +/* 39448C E009620C 8E530000 */ lw $s3, ($s2) +/* 394490 E0096210 25080008 */ addiu $t0, $t0, 8 +/* 394494 E0096214 AC550000 */ sw $s5, ($v0) +/* 394498 E0096218 AC400004 */ sw $zero, 4($v0) +/* 39449C E009621C AD050000 */ sw $a1, ($t0) +/* 3944A0 E0096220 8C620010 */ lw $v0, 0x10($v1) +/* 3944A4 E0096224 36941630 */ ori $s4, $s4, 0x1630 +/* 3944A8 E0096228 AE280000 */ sw $t0, ($s1) +/* 3944AC E009622C 8C42001C */ lw $v0, 0x1c($v0) +/* 3944B0 E0096230 3C038000 */ lui $v1, 0x8000 +/* 3944B4 E0096234 00431021 */ addu $v0, $v0, $v1 +/* 3944B8 E0096238 AD020004 */ sw $v0, 4($t0) +/* 3944BC E009623C 8E450004 */ lw $a1, 4($s2) +/* 3944C0 E0096240 8E460008 */ lw $a2, 8($s2) +/* 3944C4 E0096244 8E47000C */ lw $a3, 0xc($s2) +/* 3944C8 E0096248 25080008 */ addiu $t0, $t0, 8 +/* 3944CC E009624C 0C080108 */ jal func_E0200420 +/* 3944D0 E0096250 AE280000 */ sw $t0, ($s1) +/* 3944D4 E0096254 27B00058 */ addiu $s0, $sp, 0x58 +/* 3944D8 E0096258 3C013F80 */ lui $at, 0x3f80 +/* 3944DC E009625C 4481A000 */ mtc1 $at, $f20 +/* 3944E0 E0096260 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3944E4 E0096264 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3944E8 E0096268 44800000 */ mtc1 $zero, $f0 +/* 3944EC E009626C 00031080 */ sll $v0, $v1, 2 +/* 3944F0 E0096270 00431021 */ addu $v0, $v0, $v1 +/* 3944F4 E0096274 00021080 */ sll $v0, $v0, 2 +/* 3944F8 E0096278 00431023 */ subu $v0, $v0, $v1 +/* 3944FC E009627C 000218C0 */ sll $v1, $v0, 3 +/* 394500 E0096280 00431021 */ addu $v0, $v0, $v1 +/* 394504 E0096284 000210C0 */ sll $v0, $v0, 3 +/* 394508 E0096288 44060000 */ mfc1 $a2, $f0 +/* 39450C E009628C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 394510 E0096290 00220821 */ addu $at, $at, $v0 +/* 394514 E0096294 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 394518 E0096298 4407A000 */ mfc1 $a3, $f20 +/* 39451C E009629C 46000007 */ neg.s $f0, $f0 +/* 394520 E00962A0 44050000 */ mfc1 $a1, $f0 +/* 394524 E00962A4 0200202D */ daddu $a0, $s0, $zero +/* 394528 E00962A8 0C080104 */ jal func_E0200410 +/* 39452C E00962AC AFA60010 */ sw $a2, 0x10($sp) +/* 394530 E00962B0 0200202D */ daddu $a0, $s0, $zero +/* 394534 E00962B4 27A50018 */ addiu $a1, $sp, 0x18 +/* 394538 E00962B8 0C080114 */ jal func_E0200450 +/* 39453C E00962BC 00A0302D */ daddu $a2, $a1, $zero +/* 394540 E00962C0 0200202D */ daddu $a0, $s0, $zero +/* 394544 E00962C4 8E450018 */ lw $a1, 0x18($s2) +/* 394548 E00962C8 4407A000 */ mfc1 $a3, $f20 +/* 39454C E00962CC 0C080110 */ jal func_E0200440 +/* 394550 E00962D0 00A0302D */ daddu $a2, $a1, $zero +/* 394554 E00962D4 0200202D */ daddu $a0, $s0, $zero +/* 394558 E00962D8 27A50018 */ addiu $a1, $sp, 0x18 +/* 39455C E00962DC 0C080114 */ jal func_E0200450 +/* 394560 E00962E0 00A0302D */ daddu $a2, $a1, $zero +/* 394564 E00962E4 27A40018 */ addiu $a0, $sp, 0x18 +/* 394568 E00962E8 3C108007 */ lui $s0, %hi(D_800741F0) +/* 39456C E00962EC 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 394570 E00962F0 3C12800A */ lui $s2, %hi(D_8009A674) +/* 394574 E00962F4 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 394578 E00962F8 96050000 */ lhu $a1, ($s0) +/* 39457C E00962FC 8E420000 */ lw $v0, ($s2) +/* 394580 E0096300 00052980 */ sll $a1, $a1, 6 +/* 394584 E0096304 00B42821 */ addu $a1, $a1, $s4 +/* 394588 E0096308 0C080118 */ jal func_E0200460 +/* 39458C E009630C 00452821 */ addu $a1, $v0, $a1 +/* 394590 E0096310 3C06D838 */ lui $a2, 0xd838 +/* 394594 E0096314 34C60002 */ ori $a2, $a2, 2 +/* 394598 E0096318 8E240000 */ lw $a0, ($s1) +/* 39459C E009631C 3C03DA38 */ lui $v1, 0xda38 +/* 3945A0 E0096320 0080282D */ daddu $a1, $a0, $zero +/* 3945A4 E0096324 24840008 */ addiu $a0, $a0, 8 +/* 3945A8 E0096328 AE240000 */ sw $a0, ($s1) +/* 3945AC E009632C 96020000 */ lhu $v0, ($s0) +/* 3945B0 E0096330 00139880 */ sll $s3, $s3, 2 +/* 3945B4 E0096334 ACA30000 */ sw $v1, ($a1) +/* 3945B8 E0096338 24430001 */ addiu $v1, $v0, 1 +/* 3945BC E009633C 3042FFFF */ andi $v0, $v0, 0xffff +/* 3945C0 E0096340 00021180 */ sll $v0, $v0, 6 +/* 3945C4 E0096344 A6030000 */ sh $v1, ($s0) +/* 3945C8 E0096348 8E430000 */ lw $v1, ($s2) +/* 3945CC E009634C 00541021 */ addu $v0, $v0, $s4 +/* 3945D0 E0096350 00621821 */ addu $v1, $v1, $v0 +/* 3945D4 E0096354 24820008 */ addiu $v0, $a0, 8 +/* 3945D8 E0096358 ACA30004 */ sw $v1, 4($a1) +/* 3945DC E009635C 3C03DE00 */ lui $v1, 0xde00 +/* 3945E0 E0096360 AE220000 */ sw $v0, ($s1) +/* 3945E4 E0096364 AC830000 */ sw $v1, ($a0) +/* 3945E8 E0096368 3C05E009 */ lui $a1, %hi(D_E00963E0) +/* 3945EC E009636C 00B32821 */ addu $a1, $a1, $s3 +/* 3945F0 E0096370 8CA563E0 */ lw $a1, %lo(D_E00963E0)($a1) +/* 3945F4 E0096374 24820010 */ addiu $v0, $a0, 0x10 +/* 3945F8 E0096378 AE220000 */ sw $v0, ($s1) +/* 3945FC E009637C 3C020900 */ lui $v0, 0x900 +/* 394600 E0096380 24421508 */ addiu $v0, $v0, 0x1508 +/* 394604 E0096384 AC82000C */ sw $v0, 0xc($a0) +/* 394608 E0096388 24820018 */ addiu $v0, $a0, 0x18 +/* 39460C E009638C AC830008 */ sw $v1, 8($a0) +/* 394610 E0096390 AE220000 */ sw $v0, ($s1) +/* 394614 E0096394 24020040 */ addiu $v0, $zero, 0x40 +/* 394618 E0096398 AC820014 */ sw $v0, 0x14($a0) +/* 39461C E009639C 24820020 */ addiu $v0, $a0, 0x20 +/* 394620 E00963A0 AC860010 */ sw $a2, 0x10($a0) +/* 394624 E00963A4 AE220000 */ sw $v0, ($s1) +/* 394628 E00963A8 AC950018 */ sw $s5, 0x18($a0) +/* 39462C E00963AC AC80001C */ sw $zero, 0x1c($a0) +/* 394630 E00963B0 AC850004 */ sw $a1, 4($a0) +/* 394634 E00963B4 8FBF00B0 */ lw $ra, 0xb0($sp) +/* 394638 E00963B8 8FB500AC */ lw $s5, 0xac($sp) +/* 39463C E00963BC 8FB400A8 */ lw $s4, 0xa8($sp) +/* 394640 E00963C0 8FB300A4 */ lw $s3, 0xa4($sp) +/* 394644 E00963C4 8FB200A0 */ lw $s2, 0xa0($sp) +/* 394648 E00963C8 8FB1009C */ lw $s1, 0x9c($sp) +/* 39464C E00963CC 8FB00098 */ lw $s0, 0x98($sp) +/* 394650 E00963D0 D7B400B8 */ ldc1 $f20, 0xb8($sp) +/* 394654 E00963D4 03E00008 */ jr $ra +/* 394658 E00963D8 27BD00C0 */ addiu $sp, $sp, 0xc0 +/* 39465C E00963DC 00000000 */ nop diff --git a/asm/nonmatchings/code_395BB0/func_E0098000.s b/asm/nonmatchings/code_395BB0/func_E0098000.s new file mode 100644 index 0000000000..5b9fa47162 --- /dev/null +++ b/asm/nonmatchings/code_395BB0/func_E0098000.s @@ -0,0 +1,96 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0098000 +/* 395BB0 E0098000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 395BB4 E0098004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 395BB8 E0098008 4485A000 */ mtc1 $a1, $f20 +/* 395BBC E009800C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 395BC0 E0098010 4486B000 */ mtc1 $a2, $f22 +/* 395BC4 E0098014 AFB20030 */ sw $s2, 0x30($sp) +/* 395BC8 E0098018 0080902D */ daddu $s2, $a0, $zero +/* 395BCC E009801C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 395BD0 E0098020 4487C000 */ mtc1 $a3, $f24 +/* 395BD4 E0098024 27A40010 */ addiu $a0, $sp, 0x10 +/* 395BD8 E0098028 F7BA0050 */ sdc1 $f26, 0x50($sp) +/* 395BDC E009802C C7BA0074 */ lwc1 $f26, 0x74($sp) +/* 395BE0 E0098030 3C02E00A */ lui $v0, %hi(D_E0098168) +/* 395BE4 E0098034 24428168 */ addiu $v0, $v0, %lo(D_E0098168) +/* 395BE8 E0098038 AFA20018 */ sw $v0, 0x18($sp) +/* 395BEC E009803C 3C02E00A */ lui $v0, %hi(D_E0098170) +/* 395BF0 E0098040 24428170 */ addiu $v0, $v0, %lo(D_E0098170) +/* 395BF4 E0098044 AFA2001C */ sw $v0, 0x1c($sp) +/* 395BF8 E0098048 3C02E00A */ lui $v0, %hi(D_E009829C) +/* 395BFC E009804C 2442829C */ addiu $v0, $v0, %lo(D_E009829C) +/* 395C00 E0098050 AFA20020 */ sw $v0, 0x20($sp) +/* 395C04 E0098054 2402004C */ addiu $v0, $zero, 0x4c +/* 395C08 E0098058 AFBF0034 */ sw $ra, 0x34($sp) +/* 395C0C E009805C AFB1002C */ sw $s1, 0x2c($sp) +/* 395C10 E0098060 AFB00028 */ sw $s0, 0x28($sp) +/* 395C14 E0098064 AFA00010 */ sw $zero, 0x10($sp) +/* 395C18 E0098068 AFA00024 */ sw $zero, 0x24($sp) +/* 395C1C E009806C 0C080124 */ jal func_E0200490 +/* 395C20 E0098070 AFA20014 */ sw $v0, 0x14($sp) +/* 395C24 E0098074 24040050 */ addiu $a0, $zero, 0x50 +/* 395C28 E0098078 24030001 */ addiu $v1, $zero, 1 +/* 395C2C E009807C 0040882D */ daddu $s1, $v0, $zero +/* 395C30 E0098080 0C08012C */ jal func_E02004B0 +/* 395C34 E0098084 AE230008 */ sw $v1, 8($s1) +/* 395C38 E0098088 0040802D */ daddu $s0, $v0, $zero +/* 395C3C E009808C 16000003 */ bnez $s0, .LE009809C +/* 395C40 E0098090 AE22000C */ sw $v0, 0xc($s1) +.LE0098094: +/* 395C44 E0098094 08026025 */ j .LE0098094 +/* 395C48 E0098098 00000000 */ nop +.LE009809C: +/* 395C4C E009809C AE120000 */ sw $s2, ($s0) +/* 395C50 E00980A0 E6140004 */ swc1 $f20, 4($s0) +/* 395C54 E00980A4 E6160008 */ swc1 $f22, 8($s0) +/* 395C58 E00980A8 E618000C */ swc1 $f24, 0xc($s0) +/* 395C5C E00980AC C7A00068 */ lwc1 $f0, 0x68($sp) +/* 395C60 E00980B0 E6000010 */ swc1 $f0, 0x10($s0) +/* 395C64 E00980B4 C7A0006C */ lwc1 $f0, 0x6c($sp) +/* 395C68 E00980B8 E6000018 */ swc1 $f0, 0x18($s0) +/* 395C6C E00980BC C7A00070 */ lwc1 $f0, 0x70($sp) +/* 395C70 E00980C0 E6000020 */ swc1 $f0, 0x20($s0) +/* 395C74 E00980C4 8FA20078 */ lw $v0, 0x78($sp) +/* 395C78 E00980C8 24040168 */ addiu $a0, $zero, 0x168 +/* 395C7C E00980CC AE00004C */ sw $zero, 0x4c($s0) +/* 395C80 E00980D0 AE000014 */ sw $zero, 0x14($s0) +/* 395C84 E00980D4 AE00001C */ sw $zero, 0x1c($s0) +/* 395C88 E00980D8 AE000024 */ sw $zero, 0x24($s0) +/* 395C8C E00980DC 0C080138 */ jal func_E02004E0 +/* 395C90 E00980E0 AE020048 */ sw $v0, 0x48($s0) +/* 395C94 E00980E4 24040168 */ addiu $a0, $zero, 0x168 +/* 395C98 E00980E8 44820000 */ mtc1 $v0, $f0 +/* 395C9C E00980EC 00000000 */ nop +/* 395CA0 E00980F0 46800020 */ cvt.s.w $f0, $f0 +/* 395CA4 E00980F4 0C080138 */ jal func_E02004E0 +/* 395CA8 E00980F8 E6000028 */ swc1 $f0, 0x28($s0) +/* 395CAC E00980FC 44820000 */ mtc1 $v0, $f0 +/* 395CB0 E0098100 00000000 */ nop +/* 395CB4 E0098104 46800020 */ cvt.s.w $f0, $f0 +/* 395CB8 E0098108 0220102D */ daddu $v0, $s1, $zero +/* 395CBC E009810C 240300FF */ addiu $v1, $zero, 0xff +/* 395CC0 E0098110 E600002C */ swc1 $f0, 0x2c($s0) +/* 395CC4 E0098114 3C0141A0 */ lui $at, 0x41a0 +/* 395CC8 E0098118 44810000 */ mtc1 $at, $f0 +/* 395CCC E009811C 3C01C1A0 */ lui $at, 0xc1a0 +/* 395CD0 E0098120 44811000 */ mtc1 $at, $f2 +/* 395CD4 E0098124 461AD100 */ add.s $f4, $f26, $f26 +/* 395CD8 E0098128 AE000030 */ sw $zero, 0x30($s0) +/* 395CDC E009812C AE030044 */ sw $v1, 0x44($s0) +/* 395CE0 E0098130 AE000040 */ sw $zero, 0x40($s0) +/* 395CE4 E0098134 E6000038 */ swc1 $f0, 0x38($s0) +/* 395CE8 E0098138 E6020034 */ swc1 $f2, 0x34($s0) +/* 395CEC E009813C E604003C */ swc1 $f4, 0x3c($s0) +/* 395CF0 E0098140 8FBF0034 */ lw $ra, 0x34($sp) +/* 395CF4 E0098144 8FB20030 */ lw $s2, 0x30($sp) +/* 395CF8 E0098148 8FB1002C */ lw $s1, 0x2c($sp) +/* 395CFC E009814C 8FB00028 */ lw $s0, 0x28($sp) +/* 395D00 E0098150 D7BA0050 */ ldc1 $f26, 0x50($sp) +/* 395D04 E0098154 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 395D08 E0098158 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 395D0C E009815C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 395D10 E0098160 03E00008 */ jr $ra +/* 395D14 E0098164 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_395BB0/func_E0098168.s b/asm/nonmatchings/code_395BB0/func_E0098168.s new file mode 100644 index 0000000000..6957f386de --- /dev/null +++ b/asm/nonmatchings/code_395BB0/func_E0098168.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0098168 +/* 395D18 E0098168 03E00008 */ jr $ra +/* 395D1C E009816C 00000000 */ nop diff --git a/asm/nonmatchings/code_395BB0/func_E0098170.s b/asm/nonmatchings/code_395BB0/func_E0098170.s new file mode 100644 index 0000000000..e2fef6f42a --- /dev/null +++ b/asm/nonmatchings/code_395BB0/func_E0098170.s @@ -0,0 +1,82 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0098170 +/* 395D20 E0098170 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 395D24 E0098174 AFBF0020 */ sw $ra, 0x20($sp) +/* 395D28 E0098178 AFB1001C */ sw $s1, 0x1c($sp) +/* 395D2C E009817C AFB00018 */ sw $s0, 0x18($sp) +/* 395D30 E0098180 8C90000C */ lw $s0, 0xc($a0) +/* 395D34 E0098184 8E020048 */ lw $v0, 0x48($s0) +/* 395D38 E0098188 2442FFFF */ addiu $v0, $v0, -1 +/* 395D3C E009818C AE020048 */ sw $v0, 0x48($s0) +/* 395D40 E0098190 8E02004C */ lw $v0, 0x4c($s0) +/* 395D44 E0098194 8E030048 */ lw $v1, 0x48($s0) +/* 395D48 E0098198 24420001 */ addiu $v0, $v0, 1 +/* 395D4C E009819C 04610005 */ bgez $v1, .LE00981B4 +/* 395D50 E00981A0 AE02004C */ sw $v0, 0x4c($s0) +/* 395D54 E00981A4 0C080128 */ jal func_E02004A0 +/* 395D58 E00981A8 00000000 */ nop +/* 395D5C E00981AC 080260A2 */ j .LE0098288 +/* 395D60 E00981B0 00000000 */ nop +.LE00981B4: +/* 395D64 E00981B4 C6020008 */ lwc1 $f2, 8($s0) +/* 395D68 E00981B8 C6000010 */ lwc1 $f0, 0x10($s0) +/* 395D6C E00981BC 46001032 */ c.eq.s $f2, $f0 +/* 395D70 E00981C0 00000000 */ nop +/* 395D74 E00981C4 45010025 */ bc1t .LE009825C +/* 395D78 E00981C8 0060882D */ daddu $s1, $v1, $zero +/* 395D7C E00981CC C6020018 */ lwc1 $f2, 0x18($s0) +/* 395D80 E00981D0 C6000020 */ lwc1 $f0, 0x20($s0) +/* 395D84 E00981D4 C6080024 */ lwc1 $f8, 0x24($s0) +/* 395D88 E00981D8 C606002C */ lwc1 $f6, 0x2c($s0) +/* 395D8C E00981DC 46001080 */ add.s $f2, $f2, $f0 +/* 395D90 E00981E0 C60A0038 */ lwc1 $f10, 0x38($s0) +/* 395D94 E00981E4 C6040030 */ lwc1 $f4, 0x30($s0) +/* 395D98 E00981E8 460A3180 */ add.s $f6, $f6, $f10 +/* 395D9C E00981EC C6000008 */ lwc1 $f0, 8($s0) +/* 395DA0 E00981F0 C60A0010 */ lwc1 $f10, 0x10($s0) +/* 395DA4 E00981F4 46020000 */ add.s $f0, $f0, $f2 +/* 395DA8 E00981F8 E6020018 */ swc1 $f2, 0x18($s0) +/* 395DAC E00981FC C6020034 */ lwc1 $f2, 0x34($s0) +/* 395DB0 E0098200 46044200 */ add.s $f8, $f8, $f4 +/* 395DB4 E0098204 E6000008 */ swc1 $f0, 8($s0) +/* 395DB8 E0098208 C6000028 */ lwc1 $f0, 0x28($s0) +/* 395DBC E009820C C6040008 */ lwc1 $f4, 8($s0) +/* 395DC0 E0098210 46020000 */ add.s $f0, $f0, $f2 +/* 395DC4 E0098214 E6080024 */ swc1 $f8, 0x24($s0) +/* 395DC8 E0098218 E606002C */ swc1 $f6, 0x2c($s0) +/* 395DCC E009821C 460A203E */ c.le.s $f4, $f10 +/* 395DD0 E0098220 00000000 */ nop +/* 395DD4 E0098224 4500000D */ bc1f .LE009825C +/* 395DD8 E0098228 E6000028 */ swc1 $f0, 0x28($s0) +/* 395DDC E009822C 24040015 */ addiu $a0, $zero, 0x15 +/* 395DE0 E0098230 0C080150 */ jal func_E0200540 +/* 395DE4 E0098234 E60A0008 */ swc1 $f10, 8($s0) +/* 395DE8 E0098238 24020014 */ addiu $v0, $zero, 0x14 +/* 395DEC E009823C AFA20010 */ sw $v0, 0x10($sp) +/* 395DF0 E0098240 8E050004 */ lw $a1, 4($s0) +/* 395DF4 E0098244 8E060008 */ lw $a2, 8($s0) +/* 395DF8 E0098248 8E07000C */ lw $a3, 0xc($s0) +/* 395DFC E009824C 0C00A800 */ jal func_E002A000 +/* 395E00 E0098250 24040002 */ addiu $a0, $zero, 2 +/* 395E04 E0098254 2402001E */ addiu $v0, $zero, 0x1e +/* 395E08 E0098258 AE020048 */ sw $v0, 0x48($s0) +.LE009825C: +/* 395E0C E009825C 2A22000A */ slti $v0, $s1, 0xa +/* 395E10 E0098260 10400009 */ beqz $v0, .LE0098288 +/* 395E14 E0098264 00000000 */ nop +/* 395E18 E0098268 3C01E00A */ lui $at, %hi(D_E0098530) +/* 395E1C E009826C D4228530 */ ldc1 $f2, %lo(D_E0098530)($at) +/* 395E20 E0098270 C6000044 */ lwc1 $f0, 0x44($s0) +/* 395E24 E0098274 46800021 */ cvt.d.w $f0, $f0 +/* 395E28 E0098278 46220002 */ mul.d $f0, $f0, $f2 +/* 395E2C E009827C 00000000 */ nop +/* 395E30 E0098280 4620030D */ trunc.w.d $f12, $f0 +/* 395E34 E0098284 E60C0044 */ swc1 $f12, 0x44($s0) +.LE0098288: +/* 395E38 E0098288 8FBF0020 */ lw $ra, 0x20($sp) +/* 395E3C E009828C 8FB1001C */ lw $s1, 0x1c($sp) +/* 395E40 E0098290 8FB00018 */ lw $s0, 0x18($sp) +/* 395E44 E0098294 03E00008 */ jr $ra +/* 395E48 E0098298 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_395BB0/func_E009829C.s b/asm/nonmatchings/code_395BB0/func_E009829C.s new file mode 100644 index 0000000000..547afb570a --- /dev/null +++ b/asm/nonmatchings/code_395BB0/func_E009829C.s @@ -0,0 +1,24 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009829C +/* 395E4C E009829C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 395E50 E00982A0 AFBF0020 */ sw $ra, 0x20($sp) +/* 395E54 E00982A4 8C83000C */ lw $v1, 0xc($a0) +/* 395E58 E00982A8 3C02E00A */ lui $v0, %hi(D_E00982EC) +/* 395E5C E00982AC 244282EC */ addiu $v0, $v0, %lo(D_E00982EC) +/* 395E60 E00982B0 AFA2001C */ sw $v0, 0x1c($sp) +/* 395E64 E00982B4 2402002D */ addiu $v0, $zero, 0x2d +/* 395E68 E00982B8 AFA40018 */ sw $a0, 0x18($sp) +/* 395E6C E00982BC C460000C */ lwc1 $f0, 0xc($v1) +/* 395E70 E00982C0 AFA20010 */ sw $v0, 0x10($sp) +/* 395E74 E00982C4 4600008D */ trunc.w.s $f2, $f0 +/* 395E78 E00982C8 E7A20014 */ swc1 $f2, 0x14($sp) +/* 395E7C E00982CC 0C080120 */ jal func_E0200480 +/* 395E80 E00982D0 27A40010 */ addiu $a0, $sp, 0x10 +/* 395E84 E00982D4 8C430000 */ lw $v1, ($v0) +/* 395E88 E00982D8 34630002 */ ori $v1, $v1, 2 +/* 395E8C E00982DC AC430000 */ sw $v1, ($v0) +/* 395E90 E00982E0 8FBF0020 */ lw $ra, 0x20($sp) +/* 395E94 E00982E4 03E00008 */ jr $ra +/* 395E98 E00982E8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_395BB0/func_E00982EC.s b/asm/nonmatchings/code_395BB0/func_E00982EC.s new file mode 100644 index 0000000000..c96edb3c0c --- /dev/null +++ b/asm/nonmatchings/code_395BB0/func_E00982EC.s @@ -0,0 +1,143 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00982EC +/* 395E9C E00982EC 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 395EA0 E00982F0 3C05DB06 */ lui $a1, 0xdb06 +/* 395EA4 E00982F4 AFB50074 */ sw $s5, 0x74($sp) +/* 395EA8 E00982F8 3C15800A */ lui $s5, %hi(D_8009A66C) +/* 395EAC E00982FC 26B5A66C */ addiu $s5, $s5, %lo(D_8009A66C) +/* 395EB0 E0098300 34A50024 */ ori $a1, $a1, 0x24 +/* 395EB4 E0098304 3C02E700 */ lui $v0, 0xe700 +/* 395EB8 E0098308 AFBF0078 */ sw $ra, 0x78($sp) +/* 395EBC E009830C AFB40070 */ sw $s4, 0x70($sp) +/* 395EC0 E0098310 AFB3006C */ sw $s3, 0x6c($sp) +/* 395EC4 E0098314 AFB20068 */ sw $s2, 0x68($sp) +/* 395EC8 E0098318 AFB10064 */ sw $s1, 0x64($sp) +/* 395ECC E009831C AFB00060 */ sw $s0, 0x60($sp) +/* 395ED0 E0098320 8EA80000 */ lw $t0, ($s5) +/* 395ED4 E0098324 8C94000C */ lw $s4, 0xc($a0) +/* 395ED8 E0098328 0100182D */ daddu $v1, $t0, $zero +/* 395EDC E009832C 8E930044 */ lw $s3, 0x44($s4) +/* 395EE0 E0098330 25080008 */ addiu $t0, $t0, 8 +/* 395EE4 E0098334 AC620000 */ sw $v0, ($v1) +/* 395EE8 E0098338 AC600004 */ sw $zero, 4($v1) +/* 395EEC E009833C AD050000 */ sw $a1, ($t0) +/* 395EF0 E0098340 8C820010 */ lw $v0, 0x10($a0) +/* 395EF4 E0098344 8C42001C */ lw $v0, 0x1c($v0) +/* 395EF8 E0098348 3C038000 */ lui $v1, 0x8000 +/* 395EFC E009834C 00431021 */ addu $v0, $v0, $v1 +/* 395F00 E0098350 AD020004 */ sw $v0, 4($t0) +/* 395F04 E0098354 C680003C */ lwc1 $f0, 0x3c($s4) +/* 395F08 E0098358 E7A00010 */ swc1 $f0, 0x10($sp) +/* 395F0C E009835C C6800004 */ lwc1 $f0, 4($s4) +/* 395F10 E0098360 3C120001 */ lui $s2, 1 +/* 395F14 E0098364 E7A00014 */ swc1 $f0, 0x14($sp) +/* 395F18 E0098368 C6800008 */ lwc1 $f0, 8($s4) +/* 395F1C E009836C 36521630 */ ori $s2, $s2, 0x1630 +/* 395F20 E0098370 E7A00018 */ swc1 $f0, 0x18($sp) +/* 395F24 E0098374 C680000C */ lwc1 $f0, 0xc($s4) +/* 395F28 E0098378 27A40020 */ addiu $a0, $sp, 0x20 +/* 395F2C E009837C AEA80000 */ sw $t0, ($s5) +/* 395F30 E0098380 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 395F34 E0098384 8E850024 */ lw $a1, 0x24($s4) +/* 395F38 E0098388 8E86002C */ lw $a2, 0x2c($s4) +/* 395F3C E009838C 8E870028 */ lw $a3, 0x28($s4) +/* 395F40 E0098390 25080008 */ addiu $t0, $t0, 8 +/* 395F44 E0098394 0C080180 */ jal func_E0200600 +/* 395F48 E0098398 AEA80000 */ sw $t0, ($s5) +/* 395F4C E009839C 27A40020 */ addiu $a0, $sp, 0x20 +/* 395F50 E00983A0 3C108007 */ lui $s0, %hi(D_800741F0) +/* 395F54 E00983A4 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 395F58 E00983A8 3C11800A */ lui $s1, %hi(D_8009A674) +/* 395F5C E00983AC 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 395F60 E00983B0 96050000 */ lhu $a1, ($s0) +/* 395F64 E00983B4 8E220000 */ lw $v0, ($s1) +/* 395F68 E00983B8 00052980 */ sll $a1, $a1, 6 +/* 395F6C E00983BC 00B22821 */ addu $a1, $a1, $s2 +/* 395F70 E00983C0 0C080118 */ jal func_E0200460 +/* 395F74 E00983C4 00452821 */ addu $a1, $v0, $a1 +/* 395F78 E00983C8 3C05D7D7 */ lui $a1, 0xd7d7 +/* 395F7C E00983CC 8EA60000 */ lw $a2, ($s5) +/* 395F80 E00983D0 34A56E00 */ ori $a1, $a1, 0x6e00 +/* 395F84 E00983D4 00C0202D */ daddu $a0, $a2, $zero +/* 395F88 E00983D8 24C60008 */ addiu $a2, $a2, 8 +/* 395F8C E00983DC AEA60000 */ sw $a2, ($s5) +/* 395F90 E00983E0 96020000 */ lhu $v0, ($s0) +/* 395F94 E00983E4 3C03DA38 */ lui $v1, 0xda38 +/* 395F98 E00983E8 AC830000 */ sw $v1, ($a0) +/* 395F9C E00983EC 24430001 */ addiu $v1, $v0, 1 +/* 395FA0 E00983F0 3042FFFF */ andi $v0, $v0, 0xffff +/* 395FA4 E00983F4 00021180 */ sll $v0, $v0, 6 +/* 395FA8 E00983F8 A6030000 */ sh $v1, ($s0) +/* 395FAC E00983FC 8E230000 */ lw $v1, ($s1) +/* 395FB0 E0098400 00521021 */ addu $v0, $v0, $s2 +/* 395FB4 E0098404 00621821 */ addu $v1, $v1, $v0 +/* 395FB8 E0098408 24C20008 */ addiu $v0, $a2, 8 +/* 395FBC E009840C AC830004 */ sw $v1, 4($a0) +/* 395FC0 E0098410 AEA20000 */ sw $v0, ($s5) +/* 395FC4 E0098414 3C02FA00 */ lui $v0, 0xfa00 +/* 395FC8 E0098418 ACC20000 */ sw $v0, ($a2) +/* 395FCC E009841C 326200FF */ andi $v0, $s3, 0xff +/* 395FD0 E0098420 00451025 */ or $v0, $v0, $a1 +/* 395FD4 E0098424 ACC20004 */ sw $v0, 4($a2) +/* 395FD8 E0098428 240200FF */ addiu $v0, $zero, 0xff +/* 395FDC E009842C 12620005 */ beq $s3, $v0, .LE0098444 +/* 395FE0 E0098430 3C04E200 */ lui $a0, 0xe200 +/* 395FE4 E0098434 3484001C */ ori $a0, $a0, 0x1c +/* 395FE8 E0098438 3C030050 */ lui $v1, 0x50 +/* 395FEC E009843C 08026114 */ j .LE0098450 +/* 395FF0 E0098440 346349D8 */ ori $v1, $v1, 0x49d8 +.LE0098444: +/* 395FF4 E0098444 3484001C */ ori $a0, $a0, 0x1c +/* 395FF8 E0098448 3C030055 */ lui $v1, 0x55 +/* 395FFC E009844C 34632078 */ ori $v1, $v1, 0x2078 +.LE0098450: +/* 396000 E0098450 24C20010 */ addiu $v0, $a2, 0x10 +/* 396004 E0098454 AEA20000 */ sw $v0, ($s5) +/* 396008 E0098458 ACC40008 */ sw $a0, 8($a2) +/* 39600C E009845C ACC3000C */ sw $v1, 0xc($a2) +/* 396010 E0098460 3C07D838 */ lui $a3, 0xd838 +/* 396014 E0098464 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 396018 E0098468 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 39601C E009846C 34E70002 */ ori $a3, $a3, 2 +/* 396020 E0098470 3C06DE00 */ lui $a2, 0xde00 +/* 396024 E0098474 8CA40000 */ lw $a0, ($a1) +/* 396028 E0098478 3C020900 */ lui $v0, 0x900 +/* 39602C E009847C 24420450 */ addiu $v0, $v0, 0x450 +/* 396030 E0098480 0080182D */ daddu $v1, $a0, $zero +/* 396034 E0098484 24840008 */ addiu $a0, $a0, 8 +/* 396038 E0098488 ACA40000 */ sw $a0, ($a1) +/* 39603C E009848C AC620004 */ sw $v0, 4($v1) +/* 396040 E0098490 24820008 */ addiu $v0, $a0, 8 +/* 396044 E0098494 AC660000 */ sw $a2, ($v1) +/* 396048 E0098498 ACA20000 */ sw $v0, ($a1) +/* 39604C E009849C AC860000 */ sw $a2, ($a0) +/* 396050 E00984A0 8E820000 */ lw $v0, ($s4) +/* 396054 E00984A4 24830010 */ addiu $v1, $a0, 0x10 +/* 396058 E00984A8 ACA30000 */ sw $v1, ($a1) +/* 39605C E00984AC 00021080 */ sll $v0, $v0, 2 +/* 396060 E00984B0 3C03E00A */ lui $v1, %hi(D_E0098510) +/* 396064 E00984B4 00621821 */ addu $v1, $v1, $v0 +/* 396068 E00984B8 8C638510 */ lw $v1, %lo(D_E0098510)($v1) +/* 39606C E00984BC 24820018 */ addiu $v0, $a0, 0x18 +/* 396070 E00984C0 ACA20000 */ sw $v0, ($a1) +/* 396074 E00984C4 24020040 */ addiu $v0, $zero, 0x40 +/* 396078 E00984C8 AC82000C */ sw $v0, 0xc($a0) +/* 39607C E00984CC 3C02E700 */ lui $v0, 0xe700 +/* 396080 E00984D0 AC870008 */ sw $a3, 8($a0) +/* 396084 E00984D4 AC820010 */ sw $v0, 0x10($a0) +/* 396088 E00984D8 AC800014 */ sw $zero, 0x14($a0) +/* 39608C E00984DC AC830004 */ sw $v1, 4($a0) +/* 396090 E00984E0 8FBF0078 */ lw $ra, 0x78($sp) +/* 396094 E00984E4 8FB50074 */ lw $s5, 0x74($sp) +/* 396098 E00984E8 8FB40070 */ lw $s4, 0x70($sp) +/* 39609C E00984EC 8FB3006C */ lw $s3, 0x6c($sp) +/* 3960A0 E00984F0 8FB20068 */ lw $s2, 0x68($sp) +/* 3960A4 E00984F4 8FB10064 */ lw $s1, 0x64($sp) +/* 3960A8 E00984F8 8FB00060 */ lw $s0, 0x60($sp) +/* 3960AC E00984FC 03E00008 */ jr $ra +/* 3960B0 E0098500 27BD0080 */ addiu $sp, $sp, 0x80 +/* 3960B4 E0098504 00000000 */ nop +/* 3960B8 E0098508 00000000 */ nop +/* 3960BC E009850C 00000000 */ nop diff --git a/asm/nonmatchings/code_3965B0/func_E009A000.s b/asm/nonmatchings/code_3965B0/func_E009A000.s new file mode 100644 index 0000000000..87821885cf --- /dev/null +++ b/asm/nonmatchings/code_3965B0/func_E009A000.s @@ -0,0 +1,84 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009A000 +/* 3965B0 E009A000 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 3965B4 E009A004 F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3965B8 E009A008 4485B000 */ mtc1 $a1, $f22 +/* 3965BC E009A00C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3965C0 E009A010 4486C000 */ mtc1 $a2, $f24 +/* 3965C4 E009A014 F7BA0058 */ sdc1 $f26, 0x58($sp) +/* 3965C8 E009A018 4487D000 */ mtc1 $a3, $f26 +/* 3965CC E009A01C AFB30034 */ sw $s3, 0x34($sp) +/* 3965D0 E009A020 0080982D */ daddu $s3, $a0, $zero +/* 3965D4 E009A024 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3965D8 E009A028 C7B40070 */ lwc1 $f20, 0x70($sp) +/* 3965DC E009A02C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3965E0 E009A030 AFB20030 */ sw $s2, 0x30($sp) +/* 3965E4 E009A034 8FB20074 */ lw $s2, 0x74($sp) +/* 3965E8 E009A038 3C02E00A */ lui $v0, %hi(D_E009A138) +/* 3965EC E009A03C 2442A138 */ addiu $v0, $v0, %lo(D_E009A138) +/* 3965F0 E009A040 AFA20018 */ sw $v0, 0x18($sp) +/* 3965F4 E009A044 3C02E00A */ lui $v0, %hi(D_E009A140) +/* 3965F8 E009A048 2442A140 */ addiu $v0, $v0, %lo(D_E009A140) +/* 3965FC E009A04C AFA2001C */ sw $v0, 0x1c($sp) +/* 396600 E009A050 3C02E00A */ lui $v0, %hi(D_E009A398) +/* 396604 E009A054 2442A398 */ addiu $v0, $v0, %lo(D_E009A398) +/* 396608 E009A058 AFA20020 */ sw $v0, 0x20($sp) +/* 39660C E009A05C 2402004D */ addiu $v0, $zero, 0x4d +/* 396610 E009A060 AFBF0038 */ sw $ra, 0x38($sp) +/* 396614 E009A064 AFB1002C */ sw $s1, 0x2c($sp) +/* 396618 E009A068 AFB00028 */ sw $s0, 0x28($sp) +/* 39661C E009A06C AFA00010 */ sw $zero, 0x10($sp) +/* 396620 E009A070 AFA00024 */ sw $zero, 0x24($sp) +/* 396624 E009A074 0C080124 */ jal func_E0200490 +/* 396628 E009A078 AFA20014 */ sw $v0, 0x14($sp) +/* 39662C E009A07C 24040048 */ addiu $a0, $zero, 0x48 +/* 396630 E009A080 24030001 */ addiu $v1, $zero, 1 +/* 396634 E009A084 0040882D */ daddu $s1, $v0, $zero +/* 396638 E009A088 0C08012C */ jal func_E02004B0 +/* 39663C E009A08C AE230008 */ sw $v1, 8($s1) +/* 396640 E009A090 0040802D */ daddu $s0, $v0, $zero +/* 396644 E009A094 16000003 */ bnez $s0, .LE009A0A4 +/* 396648 E009A098 AE22000C */ sw $v0, 0xc($s1) +.LE009A09C: +/* 39664C E009A09C 08026827 */ j .LE009A09C +/* 396650 E009A0A0 00000000 */ nop +.LE009A0A4: +/* 396654 E009A0A4 3C013F80 */ lui $at, 0x3f80 +/* 396658 E009A0A8 44811000 */ mtc1 $at, $f2 +/* 39665C E009A0AC AE130000 */ sw $s3, ($s0) +/* 396660 E009A0B0 E6160004 */ swc1 $f22, 4($s0) +/* 396664 E009A0B4 E6180008 */ swc1 $f24, 8($s0) +/* 396668 E009A0B8 E61A000C */ swc1 $f26, 0xc($s0) +/* 39666C E009A0BC C7A00080 */ lwc1 $f0, 0x80($sp) +/* 396670 E009A0C0 E6140014 */ swc1 $f20, 0x14($s0) +/* 396674 E009A0C4 AE12001C */ sw $s2, 0x1c($s0) +/* 396678 E009A0C8 E6000028 */ swc1 $f0, 0x28($s0) +/* 39667C E009A0CC C7A00078 */ lwc1 $f0, 0x78($sp) +/* 396680 E009A0D0 E6000018 */ swc1 $f0, 0x18($s0) +/* 396684 E009A0D4 8FA2007C */ lw $v0, 0x7c($sp) +/* 396688 E009A0D8 24040168 */ addiu $a0, $zero, 0x168 +/* 39668C E009A0DC E6020034 */ swc1 $f2, 0x34($s0) +/* 396690 E009A0E0 0C080138 */ jal func_E02004E0 +/* 396694 E009A0E4 AE020020 */ sw $v0, 0x20($s0) +/* 396698 E009A0E8 AE020038 */ sw $v0, 0x38($s0) +/* 39669C E009A0EC 8FA30084 */ lw $v1, 0x84($sp) +/* 3966A0 E009A0F0 0220102D */ daddu $v0, $s1, $zero +/* 3966A4 E009A0F4 AE000044 */ sw $zero, 0x44($s0) +/* 3966A8 E009A0F8 AE12003C */ sw $s2, 0x3c($s0) +/* 3966AC E009A0FC E6140024 */ swc1 $f20, 0x24($s0) +/* 3966B0 E009A100 AE000010 */ sw $zero, 0x10($s0) +/* 3966B4 E009A104 AE00002C */ sw $zero, 0x2c($s0) +/* 3966B8 E009A108 AE030040 */ sw $v1, 0x40($s0) +/* 3966BC E009A10C 8FBF0038 */ lw $ra, 0x38($sp) +/* 3966C0 E009A110 8FB30034 */ lw $s3, 0x34($sp) +/* 3966C4 E009A114 8FB20030 */ lw $s2, 0x30($sp) +/* 3966C8 E009A118 8FB1002C */ lw $s1, 0x2c($sp) +/* 3966CC E009A11C 8FB00028 */ lw $s0, 0x28($sp) +/* 3966D0 E009A120 D7BA0058 */ ldc1 $f26, 0x58($sp) +/* 3966D4 E009A124 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3966D8 E009A128 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3966DC E009A12C D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3966E0 E009A130 03E00008 */ jr $ra +/* 3966E4 E009A134 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_3965B0/func_E009A138.s b/asm/nonmatchings/code_3965B0/func_E009A138.s new file mode 100644 index 0000000000..9413315963 --- /dev/null +++ b/asm/nonmatchings/code_3965B0/func_E009A138.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009A138 +/* 3966E8 E009A138 03E00008 */ jr $ra +/* 3966EC E009A13C 00000000 */ nop diff --git a/asm/nonmatchings/code_3965B0/func_E009A140.s b/asm/nonmatchings/code_3965B0/func_E009A140.s new file mode 100644 index 0000000000..68ae26eca0 --- /dev/null +++ b/asm/nonmatchings/code_3965B0/func_E009A140.s @@ -0,0 +1,157 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009A140 +/* 3966F0 E009A140 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 3966F4 E009A144 AFBF0020 */ sw $ra, 0x20($sp) +/* 3966F8 E009A148 AFB1001C */ sw $s1, 0x1c($sp) +/* 3966FC E009A14C AFB00018 */ sw $s0, 0x18($sp) +/* 396700 E009A150 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 396704 E009A154 8C91000C */ lw $s1, 0xc($a0) +/* 396708 E009A158 8E220040 */ lw $v0, 0x40($s1) +/* 39670C E009A15C 2442FFFF */ addiu $v0, $v0, -1 +/* 396710 E009A160 AE220040 */ sw $v0, 0x40($s1) +/* 396714 E009A164 8E220044 */ lw $v0, 0x44($s1) +/* 396718 E009A168 8E230040 */ lw $v1, 0x40($s1) +/* 39671C E009A16C 24420001 */ addiu $v0, $v0, 1 +/* 396720 E009A170 04610005 */ bgez $v1, .LE009A188 +/* 396724 E009A174 AE220044 */ sw $v0, 0x44($s1) +/* 396728 E009A178 0C080128 */ jal func_E02004A0 +/* 39672C E009A17C 00000000 */ nop +/* 396730 E009A180 080268E0 */ j .LE009A380 +/* 396734 E009A184 00000000 */ nop +.LE009A188: +/* 396738 E009A188 8E24002C */ lw $a0, 0x2c($s1) +/* 39673C E009A18C 2C820006 */ sltiu $v0, $a0, 6 +/* 396740 E009A190 1040007B */ beqz $v0, .LE009A380 +/* 396744 E009A194 00041080 */ sll $v0, $a0, 2 +/* 396748 E009A198 3C01E00A */ lui $at, %hi(D_E009AA60) +/* 39674C E009A19C 00220821 */ addu $at, $at, $v0 +/* 396750 E009A1A0 8C22AA60 */ lw $v0, %lo(D_E009AA60)($at) +/* 396754 E009A1A4 00400008 */ jr $v0 +/* 396758 E009A1A8 00000000 */ nop +/* 39675C E009A1AC 8E23003C */ lw $v1, 0x3c($s1) +/* 396760 E009A1B0 8E220020 */ lw $v0, 0x20($s1) +/* 396764 E009A1B4 C6200028 */ lwc1 $f0, 0x28($s1) +/* 396768 E009A1B8 00431023 */ subu $v0, $v0, $v1 +/* 39676C E009A1BC 44822000 */ mtc1 $v0, $f4 +/* 396770 E009A1C0 00000000 */ nop +/* 396774 E009A1C4 46802120 */ cvt.s.w $f4, $f4 +/* 396778 E009A1C8 46002102 */ mul.s $f4, $f4, $f0 +/* 39677C E009A1CC 00000000 */ nop +/* 396780 E009A1D0 C6220018 */ lwc1 $f2, 0x18($s1) +/* 396784 E009A1D4 C6260024 */ lwc1 $f6, 0x24($s1) +/* 396788 E009A1D8 46061081 */ sub.s $f2, $f2, $f6 +/* 39678C E009A1DC 46001082 */ mul.s $f2, $f2, $f0 +/* 396790 E009A1E0 00000000 */ nop +/* 396794 E009A1E4 C6200034 */ lwc1 $f0, 0x34($s1) +/* 396798 E009A1E8 46023180 */ add.s $f6, $f6, $f2 +/* 39679C E009A1EC 3C01E00A */ lui $at, %hi(D_E009AA78) +/* 3967A0 E009A1F0 D422AA78 */ ldc1 $f2, %lo(D_E009AA78)($at) +/* 3967A4 E009A1F4 46000021 */ cvt.d.s $f0, $f0 +/* 3967A8 E009A1F8 46220001 */ sub.d $f0, $f0, $f2 +/* 3967AC E009A1FC 44804000 */ mtc1 $zero, $f8 +/* 3967B0 E009A200 44831000 */ mtc1 $v1, $f2 +/* 3967B4 E009A204 00000000 */ nop +/* 3967B8 E009A208 468010A0 */ cvt.s.w $f2, $f2 +/* 3967BC E009A20C 46041080 */ add.s $f2, $f2, $f4 +/* 3967C0 E009A210 E6260024 */ swc1 $f6, 0x24($s1) +/* 3967C4 E009A214 46200020 */ cvt.s.d $f0, $f0 +/* 3967C8 E009A218 4600128D */ trunc.w.s $f10, $f2 +/* 3967CC E009A21C E62A003C */ swc1 $f10, 0x3c($s1) +/* 3967D0 E009A220 4608003C */ c.lt.s $f0, $f8 +/* 3967D4 E009A224 00000000 */ nop +/* 3967D8 E009A228 45000055 */ bc1f .LE009A380 +/* 3967DC E009A22C E6200034 */ swc1 $f0, 0x34($s1) +/* 3967E0 E009A230 2402000A */ addiu $v0, $zero, 0xa +/* 3967E4 E009A234 AE220030 */ sw $v0, 0x30($s1) +/* 3967E8 E009A238 24020001 */ addiu $v0, $zero, 1 +/* 3967EC E009A23C E6280034 */ swc1 $f8, 0x34($s1) +/* 3967F0 E009A240 E6280010 */ swc1 $f8, 0x10($s1) +/* 3967F4 E009A244 080268E0 */ j .LE009A380 +/* 3967F8 E009A248 AE22002C */ sw $v0, 0x2c($s1) +/* 3967FC E009A24C 8E220030 */ lw $v0, 0x30($s1) +/* 396800 E009A250 2442FFFF */ addiu $v0, $v0, -1 +/* 396804 E009A254 1C40004A */ bgtz $v0, .LE009A380 +/* 396808 E009A258 AE220030 */ sw $v0, 0x30($s1) +/* 39680C E009A25C 24020002 */ addiu $v0, $zero, 2 +/* 396810 E009A260 AE22002C */ sw $v0, 0x2c($s1) +/* 396814 E009A264 2402000A */ addiu $v0, $zero, 0xa +/* 396818 E009A268 080268E0 */ j .LE009A380 +/* 39681C E009A26C AE220030 */ sw $v0, 0x30($s1) +/* 396820 E009A270 8E220030 */ lw $v0, 0x30($s1) +/* 396824 E009A274 2442FFFF */ addiu $v0, $v0, -1 +/* 396828 E009A278 1C400041 */ bgtz $v0, .LE009A380 +/* 39682C E009A27C AE220030 */ sw $v0, 0x30($s1) +/* 396830 E009A280 24020003 */ addiu $v0, $zero, 3 +/* 396834 E009A284 080268E0 */ j .LE009A380 +/* 396838 E009A288 AE22002C */ sw $v0, 0x2c($s1) +/* 39683C E009A28C C6200010 */ lwc1 $f0, 0x10($s1) +/* 396840 E009A290 3C013F80 */ lui $at, 0x3f80 +/* 396844 E009A294 44811000 */ mtc1 $at, $f2 +/* 396848 E009A298 00000000 */ nop +/* 39684C E009A29C 46020001 */ sub.s $f0, $f0, $f2 +/* 396850 E009A2A0 C6220008 */ lwc1 $f2, 8($s1) +/* 396854 E009A2A4 44802000 */ mtc1 $zero, $f4 +/* 396858 E009A2A8 46001080 */ add.s $f2, $f2, $f0 +/* 39685C E009A2AC E6200010 */ swc1 $f0, 0x10($s1) +/* 396860 E009A2B0 4604103C */ c.lt.s $f2, $f4 +/* 396864 E009A2B4 00000000 */ nop +/* 396868 E009A2B8 45000031 */ bc1f .LE009A380 +/* 39686C E009A2BC E6220008 */ swc1 $f2, 8($s1) +/* 396870 E009A2C0 24040015 */ addiu $a0, $zero, 0x15 +/* 396874 E009A2C4 0C080150 */ jal func_E0200540 +/* 396878 E009A2C8 E6240008 */ swc1 $f4, 8($s1) +/* 39687C E009A2CC C6200004 */ lwc1 $f0, 4($s1) +/* 396880 E009A2D0 3C0140A0 */ lui $at, 0x40a0 +/* 396884 E009A2D4 4481A000 */ mtc1 $at, $f20 +/* 396888 E009A2D8 2410001E */ addiu $s0, $zero, 0x1e +/* 39688C E009A2DC AFB00010 */ sw $s0, 0x10($sp) +/* 396890 E009A2E0 46140000 */ add.s $f0, $f0, $f20 +/* 396894 E009A2E4 8E260008 */ lw $a2, 8($s1) +/* 396898 E009A2E8 8E27000C */ lw $a3, 0xc($s1) +/* 39689C E009A2EC 44050000 */ mfc1 $a1, $f0 +/* 3968A0 E009A2F0 0C00A800 */ jal func_E002A000 +/* 3968A4 E009A2F4 24040002 */ addiu $a0, $zero, 2 +/* 3968A8 E009A2F8 C6200004 */ lwc1 $f0, 4($s1) +/* 3968AC E009A2FC AFB00010 */ sw $s0, 0x10($sp) +/* 3968B0 E009A300 46140001 */ sub.s $f0, $f0, $f20 +/* 3968B4 E009A304 8E260008 */ lw $a2, 8($s1) +/* 3968B8 E009A308 8E27000C */ lw $a3, 0xc($s1) +/* 3968BC E009A30C 44050000 */ mfc1 $a1, $f0 +/* 3968C0 E009A310 0C00A800 */ jal func_E002A000 +/* 3968C4 E009A314 24040002 */ addiu $a0, $zero, 2 +/* 3968C8 E009A318 24020004 */ addiu $v0, $zero, 4 +/* 3968CC E009A31C AE22002C */ sw $v0, 0x2c($s1) +/* 3968D0 E009A320 24020014 */ addiu $v0, $zero, 0x14 +/* 3968D4 E009A324 080268E0 */ j .LE009A380 +/* 3968D8 E009A328 AE220030 */ sw $v0, 0x30($s1) +/* 3968DC E009A32C 8E220030 */ lw $v0, 0x30($s1) +/* 3968E0 E009A330 2442FFFF */ addiu $v0, $v0, -1 +/* 3968E4 E009A334 1C400012 */ bgtz $v0, .LE009A380 +/* 3968E8 E009A338 AE220030 */ sw $v0, 0x30($s1) +/* 3968EC E009A33C 24020005 */ addiu $v0, $zero, 5 +/* 3968F0 E009A340 080268E0 */ j .LE009A380 +/* 3968F4 E009A344 AE22002C */ sw $v0, 0x2c($s1) +/* 3968F8 E009A348 2862000A */ slti $v0, $v1, 0xa +/* 3968FC E009A34C 10400005 */ beqz $v0, .LE009A364 +/* 396900 E009A350 00031040 */ sll $v0, $v1, 1 +/* 396904 E009A354 00431021 */ addu $v0, $v0, $v1 +/* 396908 E009A358 000210C0 */ sll $v0, $v0, 3 +/* 39690C E009A35C 00431021 */ addu $v0, $v0, $v1 +/* 396910 E009A360 AE22003C */ sw $v0, 0x3c($s1) +.LE009A364: +/* 396914 E009A364 C6200034 */ lwc1 $f0, 0x34($s1) +/* 396918 E009A368 3C01E00A */ lui $at, %hi(D_E009AA80) +/* 39691C E009A36C D422AA80 */ ldc1 $f2, %lo(D_E009AA80)($at) +/* 396920 E009A370 46000021 */ cvt.d.s $f0, $f0 +/* 396924 E009A374 46220001 */ sub.d $f0, $f0, $f2 +/* 396928 E009A378 46200020 */ cvt.s.d $f0, $f0 +/* 39692C E009A37C E6200034 */ swc1 $f0, 0x34($s1) +.LE009A380: +/* 396930 E009A380 8FBF0020 */ lw $ra, 0x20($sp) +/* 396934 E009A384 8FB1001C */ lw $s1, 0x1c($sp) +/* 396938 E009A388 8FB00018 */ lw $s0, 0x18($sp) +/* 39693C E009A38C D7B40028 */ ldc1 $f20, 0x28($sp) +/* 396940 E009A390 03E00008 */ jr $ra +/* 396944 E009A394 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/nonmatchings/code_3965B0/func_E009A398.s b/asm/nonmatchings/code_3965B0/func_E009A398.s new file mode 100644 index 0000000000..7d3247880c --- /dev/null +++ b/asm/nonmatchings/code_3965B0/func_E009A398.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009A398 +/* 396948 E009A398 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 39694C E009A39C 3C02E00A */ lui $v0, %hi(D_E009A3E0) +/* 396950 E009A3A0 2442A3E0 */ addiu $v0, $v0, %lo(D_E009A3E0) +/* 396954 E009A3A4 AFA2001C */ sw $v0, 0x1c($sp) +/* 396958 E009A3A8 2402FFF6 */ addiu $v0, $zero, -0xa +/* 39695C E009A3AC AFA20014 */ sw $v0, 0x14($sp) +/* 396960 E009A3B0 24020011 */ addiu $v0, $zero, 0x11 +/* 396964 E009A3B4 AFA40018 */ sw $a0, 0x18($sp) +/* 396968 E009A3B8 27A40010 */ addiu $a0, $sp, 0x10 +/* 39696C E009A3BC AFBF0020 */ sw $ra, 0x20($sp) +/* 396970 E009A3C0 0C080120 */ jal func_E0200480 +/* 396974 E009A3C4 AFA20010 */ sw $v0, 0x10($sp) +/* 396978 E009A3C8 8C430000 */ lw $v1, ($v0) +/* 39697C E009A3CC 34630002 */ ori $v1, $v1, 2 +/* 396980 E009A3D0 AC430000 */ sw $v1, ($v0) +/* 396984 E009A3D4 8FBF0020 */ lw $ra, 0x20($sp) +/* 396988 E009A3D8 03E00008 */ jr $ra +/* 39698C E009A3DC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3965B0/func_E009A3E0.s b/asm/nonmatchings/code_3965B0/func_E009A3E0.s new file mode 100644 index 0000000000..383f2666a1 --- /dev/null +++ b/asm/nonmatchings/code_3965B0/func_E009A3E0.s @@ -0,0 +1,437 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009A3E0 +/* 396990 E009A3E0 27BDFF20 */ addiu $sp, $sp, -0xe0 +/* 396994 E009A3E4 0080482D */ daddu $t1, $a0, $zero +/* 396998 E009A3E8 3C0ADB06 */ lui $t2, 0xdb06 +/* 39699C E009A3EC 354A0024 */ ori $t2, $t2, 0x24 +/* 3969A0 E009A3F0 27A40020 */ addiu $a0, $sp, 0x20 +/* 3969A4 E009A3F4 AFB200B0 */ sw $s2, 0xb0($sp) +/* 3969A8 E009A3F8 3C12800A */ lui $s2, %hi(D_8009A66C) +/* 3969AC E009A3FC 2652A66C */ addiu $s2, $s2, %lo(D_8009A66C) +/* 3969B0 E009A400 3C013C23 */ lui $at, 0x3c23 +/* 3969B4 E009A404 3421D70A */ ori $at, $at, 0xd70a +/* 3969B8 E009A408 44810000 */ mtc1 $at, $f0 +/* 3969BC E009A40C 3C02E700 */ lui $v0, 0xe700 +/* 3969C0 E009A410 AFBF00CC */ sw $ra, 0xcc($sp) +/* 3969C4 E009A414 AFBE00C8 */ sw $fp, 0xc8($sp) +/* 3969C8 E009A418 AFB700C4 */ sw $s7, 0xc4($sp) +/* 3969CC E009A41C AFB600C0 */ sw $s6, 0xc0($sp) +/* 3969D0 E009A420 AFB500BC */ sw $s5, 0xbc($sp) +/* 3969D4 E009A424 AFB400B8 */ sw $s4, 0xb8($sp) +/* 3969D8 E009A428 AFB300B4 */ sw $s3, 0xb4($sp) +/* 3969DC E009A42C AFB100AC */ sw $s1, 0xac($sp) +/* 3969E0 E009A430 AFB000A8 */ sw $s0, 0xa8($sp) +/* 3969E4 E009A434 F7B600D8 */ sdc1 $f22, 0xd8($sp) +/* 3969E8 E009A438 F7B400D0 */ sdc1 $f20, 0xd0($sp) +/* 3969EC E009A43C 8E430000 */ lw $v1, ($s2) +/* 3969F0 E009A440 8D35000C */ lw $s5, 0xc($t1) +/* 3969F4 E009A444 0060402D */ daddu $t0, $v1, $zero +/* 3969F8 E009A448 44050000 */ mfc1 $a1, $f0 +/* 3969FC E009A44C 24630008 */ addiu $v1, $v1, 8 +/* 396A00 E009A450 AE430000 */ sw $v1, ($s2) +/* 396A04 E009A454 C6B60034 */ lwc1 $f22, 0x34($s5) +/* 396A08 E009A458 8EB70038 */ lw $s7, 0x38($s5) +/* 396A0C E009A45C 8EAF003C */ lw $t7, 0x3c($s5) +/* 396A10 E009A460 3C1E8000 */ lui $fp, 0x8000 +/* 396A14 E009A464 AFAF00A0 */ sw $t7, 0xa0($sp) +/* 396A18 E009A468 8EB60044 */ lw $s6, 0x44($s5) +/* 396A1C E009A46C 00A0302D */ daddu $a2, $a1, $zero +/* 396A20 E009A470 AD020000 */ sw $v0, ($t0) +/* 396A24 E009A474 AD000004 */ sw $zero, 4($t0) +/* 396A28 E009A478 AC6A0000 */ sw $t2, ($v1) +/* 396A2C E009A47C 8D280010 */ lw $t0, 0x10($t1) +/* 396A30 E009A480 24620008 */ addiu $v0, $v1, 8 +/* 396A34 E009A484 AE420000 */ sw $v0, ($s2) +/* 396A38 E009A488 8D02001C */ lw $v0, 0x1c($t0) +/* 396A3C E009A48C 00A0382D */ daddu $a3, $a1, $zero +/* 396A40 E009A490 005E1021 */ addu $v0, $v0, $fp +/* 396A44 E009A494 0C080110 */ jal func_E0200440 +/* 396A48 E009A498 AC620004 */ sw $v0, 4($v1) +/* 396A4C E009A49C C6A00024 */ lwc1 $f0, 0x24($s5) +/* 396A50 E009A4A0 3C0142C8 */ lui $at, 0x42c8 +/* 396A54 E009A4A4 44812000 */ mtc1 $at, $f4 +/* 396A58 E009A4A8 E7A00010 */ swc1 $f0, 0x10($sp) +/* 396A5C E009A4AC C6A00004 */ lwc1 $f0, 4($s5) +/* 396A60 E009A4B0 46040002 */ mul.s $f0, $f0, $f4 +/* 396A64 E009A4B4 00000000 */ nop +/* 396A68 E009A4B8 E7A00014 */ swc1 $f0, 0x14($sp) +/* 396A6C E009A4BC C6A00008 */ lwc1 $f0, 8($s5) +/* 396A70 E009A4C0 46040002 */ mul.s $f0, $f0, $f4 +/* 396A74 E009A4C4 00000000 */ nop +/* 396A78 E009A4C8 3C140001 */ lui $s4, 1 +/* 396A7C E009A4CC 36941630 */ ori $s4, $s4, 0x1630 +/* 396A80 E009A4D0 27B00060 */ addiu $s0, $sp, 0x60 +/* 396A84 E009A4D4 E7A00018 */ swc1 $f0, 0x18($sp) +/* 396A88 E009A4D8 C6A0000C */ lwc1 $f0, 0xc($s5) +/* 396A8C E009A4DC 44801000 */ mtc1 $zero, $f2 +/* 396A90 E009A4E0 46040002 */ mul.s $f0, $f0, $f4 +/* 396A94 E009A4E4 00000000 */ nop +/* 396A98 E009A4E8 44051000 */ mfc1 $a1, $f2 +/* 396A9C E009A4EC 0200202D */ daddu $a0, $s0, $zero +/* 396AA0 E009A4F0 00A0302D */ daddu $a2, $a1, $zero +/* 396AA4 E009A4F4 00A0382D */ daddu $a3, $a1, $zero +/* 396AA8 E009A4F8 0C080180 */ jal func_E0200600 +/* 396AAC E009A4FC E7A0001C */ swc1 $f0, 0x1c($sp) +/* 396AB0 E009A500 0200202D */ daddu $a0, $s0, $zero +/* 396AB4 E009A504 27A50020 */ addiu $a1, $sp, 0x20 +/* 396AB8 E009A508 0C080114 */ jal func_E0200450 +/* 396ABC E009A50C 00A0302D */ daddu $a2, $a1, $zero +/* 396AC0 E009A510 27A40020 */ addiu $a0, $sp, 0x20 +/* 396AC4 E009A514 3C118007 */ lui $s1, %hi(D_800741F0) +/* 396AC8 E009A518 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 396ACC E009A51C 3C13800A */ lui $s3, %hi(D_8009A674) +/* 396AD0 E009A520 2673A674 */ addiu $s3, $s3, %lo(D_8009A674) +/* 396AD4 E009A524 96250000 */ lhu $a1, ($s1) +/* 396AD8 E009A528 8E620000 */ lw $v0, ($s3) +/* 396ADC E009A52C 00052980 */ sll $a1, $a1, 6 +/* 396AE0 E009A530 00B42821 */ addu $a1, $a1, $s4 +/* 396AE4 E009A534 0C080118 */ jal func_E0200460 +/* 396AE8 E009A538 00452821 */ addu $a1, $v0, $a1 +/* 396AEC E009A53C 3C03DA38 */ lui $v1, 0xda38 +/* 396AF0 E009A540 34630002 */ ori $v1, $v1, 2 +/* 396AF4 E009A544 00161100 */ sll $v0, $s6, 4 +/* 396AF8 E009A548 00561023 */ subu $v0, $v0, $s6 +/* 396AFC E009A54C 00021040 */ sll $v0, $v0, 1 +/* 396B00 E009A550 4482A000 */ mtc1 $v0, $f20 +/* 396B04 E009A554 00000000 */ nop +/* 396B08 E009A558 4680A520 */ cvt.s.w $f20, $f20 +/* 396B0C E009A55C 4600A306 */ mov.s $f12, $f20 +/* 396B10 E009A560 8E500000 */ lw $s0, ($s2) +/* 396B14 E009A564 96220000 */ lhu $v0, ($s1) +/* 396B18 E009A568 0200202D */ daddu $a0, $s0, $zero +/* 396B1C E009A56C 26100008 */ addiu $s0, $s0, 8 +/* 396B20 E009A570 AE500000 */ sw $s0, ($s2) +/* 396B24 E009A574 AC830000 */ sw $v1, ($a0) +/* 396B28 E009A578 24430001 */ addiu $v1, $v0, 1 +/* 396B2C E009A57C 3042FFFF */ andi $v0, $v0, 0xffff +/* 396B30 E009A580 00021180 */ sll $v0, $v0, 6 +/* 396B34 E009A584 A6230000 */ sh $v1, ($s1) +/* 396B38 E009A588 8E630000 */ lw $v1, ($s3) +/* 396B3C E009A58C 00541021 */ addu $v0, $v0, $s4 +/* 396B40 E009A590 00621821 */ addu $v1, $v1, $v0 +/* 396B44 E009A594 26020008 */ addiu $v0, $s0, 8 +/* 396B48 E009A598 AC830004 */ sw $v1, 4($a0) +/* 396B4C E009A59C AE420000 */ sw $v0, ($s2) +/* 396B50 E009A5A0 3C02FA00 */ lui $v0, 0xfa00 +/* 396B54 E009A5A4 0C080140 */ jal func_E0200500 +/* 396B58 E009A5A8 AE020000 */ sw $v0, ($s0) +/* 396B5C E009A5AC 4600A306 */ mov.s $f12, $f20 +/* 396B60 E009A5B0 0C080140 */ jal func_E0200500 +/* 396B64 E009A5B4 46000506 */ mov.s $f20, $f0 +/* 396B68 E009A5B8 3C0141C8 */ lui $at, 0x41c8 +/* 396B6C E009A5BC 44811000 */ mtc1 $at, $f2 +/* 396B70 E009A5C0 00000000 */ nop +/* 396B74 E009A5C4 4602A502 */ mul.s $f20, $f20, $f2 +/* 396B78 E009A5C8 00000000 */ nop +/* 396B7C E009A5CC 3C014361 */ lui $at, 0x4361 +/* 396B80 E009A5D0 44811000 */ mtc1 $at, $f2 +/* 396B84 E009A5D4 46000106 */ mov.s $f4, $f0 +/* 396B88 E009A5D8 4602A500 */ add.s $f20, $f20, $f2 +/* 396B8C E009A5DC 3C014F00 */ lui $at, 0x4f00 +/* 396B90 E009A5E0 44811000 */ mtc1 $at, $f2 +/* 396B94 E009A5E4 00000000 */ nop +/* 396B98 E009A5E8 4614103E */ c.le.s $f2, $f20 +/* 396B9C E009A5EC 00000000 */ nop +/* 396BA0 E009A5F0 45010005 */ bc1t .LE009A608 +/* 396BA4 E009A5F4 26100004 */ addiu $s0, $s0, 4 +/* 396BA8 E009A5F8 4600A18D */ trunc.w.s $f6, $f20 +/* 396BAC E009A5FC 44023000 */ mfc1 $v0, $f6 +/* 396BB0 E009A600 08026987 */ j .LE009A61C +/* 396BB4 E009A604 00000000 */ nop +.LE009A608: +/* 396BB8 E009A608 4602A001 */ sub.s $f0, $f20, $f2 +/* 396BBC E009A60C 4600018D */ trunc.w.s $f6, $f0 +/* 396BC0 E009A610 44023000 */ mfc1 $v0, $f6 +/* 396BC4 E009A614 00000000 */ nop +/* 396BC8 E009A618 005E1025 */ or $v0, $v0, $fp +.LE009A61C: +/* 396BCC E009A61C 3C0141C8 */ lui $at, 0x41c8 +/* 396BD0 E009A620 44810000 */ mtc1 $at, $f0 +/* 396BD4 E009A624 00000000 */ nop +/* 396BD8 E009A628 46002002 */ mul.s $f0, $f4, $f0 +/* 396BDC E009A62C 00000000 */ nop +/* 396BE0 E009A630 3C014361 */ lui $at, 0x4361 +/* 396BE4 E009A634 44811000 */ mtc1 $at, $f2 +/* 396BE8 E009A638 00000000 */ nop +/* 396BEC E009A63C 46020000 */ add.s $f0, $f0, $f2 +/* 396BF0 E009A640 3C014F00 */ lui $at, 0x4f00 +/* 396BF4 E009A644 44811000 */ mtc1 $at, $f2 +/* 396BF8 E009A648 00000000 */ nop +/* 396BFC E009A64C 4600103E */ c.le.s $f2, $f0 +/* 396C00 E009A650 00000000 */ nop +/* 396C04 E009A654 45010005 */ bc1t .LE009A66C +/* 396C08 E009A658 00022600 */ sll $a0, $v0, 0x18 +/* 396C0C E009A65C 4600018D */ trunc.w.s $f6, $f0 +/* 396C10 E009A660 44033000 */ mfc1 $v1, $f6 +/* 396C14 E009A664 080269A2 */ j .LE009A688 +/* 396C18 E009A668 306200FF */ andi $v0, $v1, 0xff +.LE009A66C: +/* 396C1C E009A66C 46020001 */ sub.s $f0, $f0, $f2 +/* 396C20 E009A670 3C028000 */ lui $v0, 0x8000 +/* 396C24 E009A674 4600018D */ trunc.w.s $f6, $f0 +/* 396C28 E009A678 44033000 */ mfc1 $v1, $f6 +/* 396C2C E009A67C 00000000 */ nop +/* 396C30 E009A680 00621825 */ or $v1, $v1, $v0 +/* 396C34 E009A684 306200FF */ andi $v0, $v1, 0xff +.LE009A688: +/* 396C38 E009A688 00021400 */ sll $v0, $v0, 0x10 +/* 396C3C E009A68C 8FAF00A0 */ lw $t7, 0xa0($sp) +/* 396C40 E009A690 00821025 */ or $v0, $a0, $v0 +/* 396C44 E009A694 31E300FF */ andi $v1, $t7, 0xff +/* 396C48 E009A698 3463FF00 */ ori $v1, $v1, 0xff00 +/* 396C4C E009A69C 00431025 */ or $v0, $v0, $v1 +/* 396C50 E009A6A0 AE020000 */ sw $v0, ($s0) +/* 396C54 E009A6A4 8EA3002C */ lw $v1, 0x2c($s5) +/* 396C58 E009A6A8 24020001 */ addiu $v0, $zero, 1 +/* 396C5C E009A6AC 1462002F */ bne $v1, $v0, .LE009A76C +/* 396C60 E009A6B0 3C088888 */ lui $t0, 0x8888 +/* 396C64 E009A6B4 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 396C68 E009A6B8 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 396C6C E009A6BC 35088889 */ ori $t0, $t0, 0x8889 +/* 396C70 E009A6C0 3C06DE00 */ lui $a2, 0xde00 +/* 396C74 E009A6C4 3C020900 */ lui $v0, 0x900 +/* 396C78 E009A6C8 24421040 */ addiu $v0, $v0, 0x1040 +/* 396C7C E009A6CC 8CA40000 */ lw $a0, ($a1) +/* 396C80 E009A6D0 3C070900 */ lui $a3, 0x900 +/* 396C84 E009A6D4 24E71190 */ addiu $a3, $a3, 0x1190 +/* 396C88 E009A6D8 0080182D */ daddu $v1, $a0, $zero +/* 396C8C E009A6DC 24840008 */ addiu $a0, $a0, 8 +/* 396C90 E009A6E0 ACA40000 */ sw $a0, ($a1) +/* 396C94 E009A6E4 AC620004 */ sw $v0, 4($v1) +/* 396C98 E009A6E8 24820008 */ addiu $v0, $a0, 8 +/* 396C9C E009A6EC AC660000 */ sw $a2, ($v1) +/* 396CA0 E009A6F0 ACA20000 */ sw $v0, ($a1) +/* 396CA4 E009A6F4 24820010 */ addiu $v0, $a0, 0x10 +/* 396CA8 E009A6F8 AC860000 */ sw $a2, ($a0) +/* 396CAC E009A6FC AC870004 */ sw $a3, 4($a0) +/* 396CB0 E009A700 ACA20000 */ sw $v0, ($a1) +/* 396CB4 E009A704 3C02FA00 */ lui $v0, 0xfa00 +/* 396CB8 E009A708 AC820008 */ sw $v0, 8($a0) +/* 396CBC E009A70C 8EA30030 */ lw $v1, 0x30($s5) +/* 396CC0 E009A710 24820018 */ addiu $v0, $a0, 0x18 +/* 396CC4 E009A714 ACA20000 */ sw $v0, ($a1) +/* 396CC8 E009A718 3C020900 */ lui $v0, 0x900 +/* 396CCC E009A71C 244210E8 */ addiu $v0, $v0, 0x10e8 +/* 396CD0 E009A720 AC820014 */ sw $v0, 0x14($a0) +/* 396CD4 E009A724 2402001E */ addiu $v0, $zero, 0x1e +/* 396CD8 E009A728 AC860010 */ sw $a2, 0x10($a0) +/* 396CDC E009A72C 00431023 */ subu $v0, $v0, $v1 +/* 396CE0 E009A730 00021A00 */ sll $v1, $v0, 8 +/* 396CE4 E009A734 00621823 */ subu $v1, $v1, $v0 +/* 396CE8 E009A738 00680018 */ mult $v1, $t0 +/* 396CEC E009A73C 24820020 */ addiu $v0, $a0, 0x20 +/* 396CF0 E009A740 ACA20000 */ sw $v0, ($a1) +/* 396CF4 E009A744 AC860018 */ sw $a2, 0x18($a0) +/* 396CF8 E009A748 AC87001C */ sw $a3, 0x1c($a0) +/* 396CFC E009A74C 00007810 */ mfhi $t7 +/* 396D00 E009A750 01E31021 */ addu $v0, $t7, $v1 +/* 396D04 E009A754 00021103 */ sra $v0, $v0, 4 +/* 396D08 E009A758 00031FC3 */ sra $v1, $v1, 0x1f +/* 396D0C E009A75C 00431023 */ subu $v0, $v0, $v1 +/* 396D10 E009A760 304200FF */ andi $v0, $v0, 0xff +/* 396D14 E009A764 08026A77 */ j .LE009A9DC +/* 396D18 E009A768 AC82000C */ sw $v0, 0xc($a0) +.LE009A76C: +/* 396D1C E009A76C 1860000D */ blez $v1, .LE009A7A4 +/* 396D20 E009A770 00000000 */ nop +/* 396D24 E009A774 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 396D28 E009A778 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 396D2C E009A77C 8C620000 */ lw $v0, ($v1) +/* 396D30 E009A780 0040202D */ daddu $a0, $v0, $zero +/* 396D34 E009A784 24420008 */ addiu $v0, $v0, 8 +/* 396D38 E009A788 AC620000 */ sw $v0, ($v1) +/* 396D3C E009A78C 3C02DE00 */ lui $v0, 0xde00 +/* 396D40 E009A790 AC820000 */ sw $v0, ($a0) +/* 396D44 E009A794 3C020900 */ lui $v0, 0x900 +/* 396D48 E009A798 244210E8 */ addiu $v0, $v0, 0x10e8 +/* 396D4C E009A79C 080269F4 */ j .LE009A7D0 +/* 396D50 E009A7A0 AC820004 */ sw $v0, 4($a0) +.LE009A7A4: +/* 396D54 E009A7A4 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 396D58 E009A7A8 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 396D5C E009A7AC 8C620000 */ lw $v0, ($v1) +/* 396D60 E009A7B0 0040202D */ daddu $a0, $v0, $zero +/* 396D64 E009A7B4 24420008 */ addiu $v0, $v0, 8 +/* 396D68 E009A7B8 AC620000 */ sw $v0, ($v1) +/* 396D6C E009A7BC 3C02DE00 */ lui $v0, 0xde00 +/* 396D70 E009A7C0 AC820000 */ sw $v0, ($a0) +/* 396D74 E009A7C4 3C020900 */ lui $v0, 0x900 +/* 396D78 E009A7C8 24421040 */ addiu $v0, $v0, 0x1040 +/* 396D7C E009A7CC AC820004 */ sw $v0, 4($a0) +.LE009A7D0: +/* 396D80 E009A7D0 0000902D */ daddu $s2, $zero, $zero +/* 396D84 E009A7D4 0240A82D */ daddu $s5, $s2, $zero +/* 396D88 E009A7D8 00161080 */ sll $v0, $s6, 2 +/* 396D8C E009A7DC 00561021 */ addu $v0, $v0, $s6 +/* 396D90 E009A7E0 00029840 */ sll $s3, $v0, 1 +/* 396D94 E009A7E4 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 396D98 E009A7E8 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 396D9C E009A7EC 8C830000 */ lw $v1, ($a0) +/* 396DA0 E009A7F0 0260A02D */ daddu $s4, $s3, $zero +/* 396DA4 E009A7F4 24620008 */ addiu $v0, $v1, 8 +/* 396DA8 E009A7F8 0040B02D */ daddu $s6, $v0, $zero +/* 396DAC E009A7FC 3C02DE01 */ lui $v0, 0xde01 +/* 396DB0 E009A800 AC620000 */ sw $v0, ($v1) +/* 396DB4 E009A804 24620208 */ addiu $v0, $v1, 0x208 +/* 396DB8 E009A808 AC620004 */ sw $v0, 4($v1) +/* 396DBC E009A80C AC960000 */ sw $s6, ($a0) +.LE009A810: +/* 396DC0 E009A810 00128140 */ sll $s0, $s2, 5 +/* 396DC4 E009A814 02971021 */ addu $v0, $s4, $s7 +/* 396DC8 E009A818 44826000 */ mtc1 $v0, $f12 +/* 396DCC E009A81C 00000000 */ nop +/* 396DD0 E009A820 46806320 */ cvt.s.w $f12, $f12 +/* 396DD4 E009A824 0C080140 */ jal func_E0200500 +/* 396DD8 E009A828 02D08021 */ addu $s0, $s6, $s0 +/* 396DDC E009A82C 3C0143FA */ lui $at, 0x43fa +/* 396DE0 E009A830 44811000 */ mtc1 $at, $f2 +/* 396DE4 E009A834 00000000 */ nop +/* 396DE8 E009A838 46020002 */ mul.s $f0, $f0, $f2 +/* 396DEC E009A83C 00000000 */ nop +/* 396DF0 E009A840 46160002 */ mul.s $f0, $f0, $f22 +/* 396DF4 E009A844 00000000 */ nop +/* 396DF8 E009A848 02771021 */ addu $v0, $s3, $s7 +/* 396DFC E009A84C 44826000 */ mtc1 $v0, $f12 +/* 396E00 E009A850 00000000 */ nop +/* 396E04 E009A854 46806320 */ cvt.s.w $f12, $f12 +/* 396E08 E009A858 4600018D */ trunc.w.s $f6, $f0 +/* 396E0C E009A85C 44113000 */ mfc1 $s1, $f6 +/* 396E10 E009A860 0C080140 */ jal func_E0200500 +/* 396E14 E009A864 26730006 */ addiu $s3, $s3, 6 +/* 396E18 E009A868 3C014348 */ lui $at, 0x4348 +/* 396E1C E009A86C 44811000 */ mtc1 $at, $f2 +/* 396E20 E009A870 2694003C */ addiu $s4, $s4, 0x3c +/* 396E24 E009A874 46020002 */ mul.s $f0, $f0, $f2 +/* 396E28 E009A878 00000000 */ nop +/* 396E2C E009A87C 001219C0 */ sll $v1, $s2, 7 +/* 396E30 E009A880 26520001 */ addiu $s2, $s2, 1 +/* 396E34 E009A884 2622F380 */ addiu $v0, $s1, -0xc80 +/* 396E38 E009A888 26310C80 */ addiu $s1, $s1, 0xc80 +/* 396E3C E009A88C 46160002 */ mul.s $f0, $f0, $f22 +/* 396E40 E009A890 00000000 */ nop +/* 396E44 E009A894 A6020000 */ sh $v0, ($s0) +/* 396E48 E009A898 A6000004 */ sh $zero, 4($s0) +/* 396E4C E009A89C A6000008 */ sh $zero, 8($s0) +/* 396E50 E009A8A0 A603000A */ sh $v1, 0xa($s0) +/* 396E54 E009A8A4 4600018D */ trunc.w.s $f6, $f0 +/* 396E58 E009A8A8 44023000 */ mfc1 $v0, $f6 +/* 396E5C E009A8AC 00000000 */ nop +/* 396E60 E009A8B0 02A21021 */ addu $v0, $s5, $v0 +/* 396E64 E009A8B4 A6020002 */ sh $v0, 2($s0) +/* 396E68 E009A8B8 26100010 */ addiu $s0, $s0, 0x10 +/* 396E6C E009A8BC 26B50190 */ addiu $s5, $s5, 0x190 +/* 396E70 E009A8C0 A6020002 */ sh $v0, 2($s0) +/* 396E74 E009A8C4 24020800 */ addiu $v0, $zero, 0x800 +/* 396E78 E009A8C8 A6020008 */ sh $v0, 8($s0) +/* 396E7C E009A8CC 2A420010 */ slti $v0, $s2, 0x10 +/* 396E80 E009A8D0 A6110000 */ sh $s1, ($s0) +/* 396E84 E009A8D4 A6000004 */ sh $zero, 4($s0) +/* 396E88 E009A8D8 1440FFCD */ bnez $v0, .LE009A810 +/* 396E8C E009A8DC A603000A */ sh $v1, 0xa($s0) +/* 396E90 E009A8E0 3C040102 */ lui $a0, 0x102 +/* 396E94 E009A8E4 34840040 */ ori $a0, $a0, 0x40 +/* 396E98 E009A8E8 0000902D */ daddu $s2, $zero, $zero +/* 396E9C E009A8EC 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 396EA0 E009A8F0 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 396EA4 E009A8F4 0040482D */ daddu $t1, $v0, $zero +/* 396EA8 E009A8F8 3C0B0600 */ lui $t3, 0x600 +/* 396EAC E009A8FC 240A0001 */ addiu $t2, $zero, 1 +/* 396EB0 E009A900 3C0E0606 */ lui $t6, 0x606 +/* 396EB4 E009A904 35CE0402 */ ori $t6, $t6, 0x402 +/* 396EB8 E009A908 3C0D0002 */ lui $t5, 2 +/* 396EBC E009A90C 35AD0406 */ ori $t5, $t5, 0x406 +/* 396EC0 E009A910 3C0C0006 */ lui $t4, 6 +/* 396EC4 E009A914 358C0804 */ ori $t4, $t4, 0x804 +/* 396EC8 E009A918 24070004 */ addiu $a3, $zero, 4 +/* 396ECC E009A91C 24060002 */ addiu $a2, $zero, 2 +/* 396ED0 E009A920 8D230000 */ lw $v1, ($t1) +/* 396ED4 E009A924 24080006 */ addiu $t0, $zero, 6 +/* 396ED8 E009A928 24620208 */ addiu $v0, $v1, 0x208 +/* 396EDC E009A92C AD220000 */ sw $v0, ($t1) +/* 396EE0 E009A930 AC640200 */ sw $a0, 0x200($v1) +/* 396EE4 E009A934 AC760204 */ sw $s6, 0x204($v1) +.LE009A938: +/* 396EE8 E009A938 8D240000 */ lw $a0, ($t1) +/* 396EEC E009A93C 00122840 */ sll $a1, $s2, 1 +/* 396EF0 E009A940 24820008 */ addiu $v0, $a0, 8 +/* 396EF4 E009A944 14A00004 */ bnez $a1, .LE009A958 +/* 396EF8 E009A948 AD220000 */ sw $v0, ($t1) +/* 396EFC E009A94C 00121440 */ sll $v0, $s2, 0x11 +/* 396F00 E009A950 08026A60 */ j .LE009A980 +/* 396F04 E009A954 34420402 */ ori $v0, $v0, 0x402 +.LE009A958: +/* 396F08 E009A958 14AA0003 */ bne $a1, $t2, .LE009A968 +/* 396F0C E009A95C 30C200FF */ andi $v0, $a2, 0xff +/* 396F10 E009A960 08026A62 */ j .LE009A988 +/* 396F14 E009A964 AC8E0000 */ sw $t6, ($a0) +.LE009A968: +/* 396F18 E009A968 00021400 */ sll $v0, $v0, 0x10 +/* 396F1C E009A96C 00121A80 */ sll $v1, $s2, 0xa +/* 396F20 E009A970 3063FC00 */ andi $v1, $v1, 0xfc00 +/* 396F24 E009A974 00431025 */ or $v0, $v0, $v1 +/* 396F28 E009A978 30E300FF */ andi $v1, $a3, 0xff +/* 396F2C E009A97C 00431025 */ or $v0, $v0, $v1 +.LE009A980: +/* 396F30 E009A980 004B1025 */ or $v0, $v0, $t3 +/* 396F34 E009A984 AC820000 */ sw $v0, ($a0) +.LE009A988: +/* 396F38 E009A988 14A00003 */ bnez $a1, .LE009A998 +/* 396F3C E009A98C 00000000 */ nop +/* 396F40 E009A990 08026A71 */ j .LE009A9C4 +/* 396F44 E009A994 AC8D0004 */ sw $t5, 4($a0) +.LE009A998: +/* 396F48 E009A998 14AA0003 */ bne $a1, $t2, .LE009A9A8 +/* 396F4C E009A99C 310200FF */ andi $v0, $t0, 0xff +/* 396F50 E009A9A0 08026A71 */ j .LE009A9C4 +/* 396F54 E009A9A4 AC8C0004 */ sw $t4, 4($a0) +.LE009A9A8: +/* 396F58 E009A9A8 00021400 */ sll $v0, $v0, 0x10 +/* 396F5C E009A9AC 30C300FF */ andi $v1, $a2, 0xff +/* 396F60 E009A9B0 00031A00 */ sll $v1, $v1, 8 +/* 396F64 E009A9B4 00431025 */ or $v0, $v0, $v1 +/* 396F68 E009A9B8 30E300FF */ andi $v1, $a3, 0xff +/* 396F6C E009A9BC 00431025 */ or $v0, $v0, $v1 +/* 396F70 E009A9C0 AC820004 */ sw $v0, 4($a0) +.LE009A9C4: +/* 396F74 E009A9C4 24E70004 */ addiu $a3, $a3, 4 +/* 396F78 E009A9C8 24C60004 */ addiu $a2, $a2, 4 +/* 396F7C E009A9CC 26520001 */ addiu $s2, $s2, 1 +/* 396F80 E009A9D0 2A42000F */ slti $v0, $s2, 0xf +/* 396F84 E009A9D4 1440FFD8 */ bnez $v0, .LE009A938 +/* 396F88 E009A9D8 25080004 */ addiu $t0, $t0, 4 +.LE009A9DC: +/* 396F8C E009A9DC 3C03D838 */ lui $v1, 0xd838 +/* 396F90 E009A9E0 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 396F94 E009A9E4 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 396F98 E009A9E8 8C820000 */ lw $v0, ($a0) +/* 396F9C E009A9EC 34630002 */ ori $v1, $v1, 2 +/* 396FA0 E009A9F0 0040282D */ daddu $a1, $v0, $zero +/* 396FA4 E009A9F4 24420008 */ addiu $v0, $v0, 8 +/* 396FA8 E009A9F8 AC820000 */ sw $v0, ($a0) +/* 396FAC E009A9FC ACA30000 */ sw $v1, ($a1) +/* 396FB0 E009AA00 24030040 */ addiu $v1, $zero, 0x40 +/* 396FB4 E009AA04 ACA30004 */ sw $v1, 4($a1) +/* 396FB8 E009AA08 24430008 */ addiu $v1, $v0, 8 +/* 396FBC E009AA0C AC830000 */ sw $v1, ($a0) +/* 396FC0 E009AA10 3C03E700 */ lui $v1, 0xe700 +/* 396FC4 E009AA14 AC430000 */ sw $v1, ($v0) +/* 396FC8 E009AA18 AC400004 */ sw $zero, 4($v0) +/* 396FCC E009AA1C 8FBF00CC */ lw $ra, 0xcc($sp) +/* 396FD0 E009AA20 8FBE00C8 */ lw $fp, 0xc8($sp) +/* 396FD4 E009AA24 8FB700C4 */ lw $s7, 0xc4($sp) +/* 396FD8 E009AA28 8FB600C0 */ lw $s6, 0xc0($sp) +/* 396FDC E009AA2C 8FB500BC */ lw $s5, 0xbc($sp) +/* 396FE0 E009AA30 8FB400B8 */ lw $s4, 0xb8($sp) +/* 396FE4 E009AA34 8FB300B4 */ lw $s3, 0xb4($sp) +/* 396FE8 E009AA38 8FB200B0 */ lw $s2, 0xb0($sp) +/* 396FEC E009AA3C 8FB100AC */ lw $s1, 0xac($sp) +/* 396FF0 E009AA40 8FB000A8 */ lw $s0, 0xa8($sp) +/* 396FF4 E009AA44 D7B600D8 */ ldc1 $f22, 0xd8($sp) +/* 396FF8 E009AA48 D7B400D0 */ ldc1 $f20, 0xd0($sp) +/* 396FFC E009AA4C 03E00008 */ jr $ra +/* 397000 E009AA50 27BD00E0 */ addiu $sp, $sp, 0xe0 +/* 397004 E009AA54 00000000 */ nop +/* 397008 E009AA58 00000000 */ nop +/* 39700C E009AA5C 00000000 */ nop diff --git a/asm/nonmatchings/code_3981F0/func_E009C000.s b/asm/nonmatchings/code_3981F0/func_E009C000.s new file mode 100644 index 0000000000..5215da546a --- /dev/null +++ b/asm/nonmatchings/code_3981F0/func_E009C000.s @@ -0,0 +1,70 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009C000 +/* 3981F0 E009C000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3981F4 E009C004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3981F8 E009C008 4485A000 */ mtc1 $a1, $f20 +/* 3981FC E009C00C AFB1002C */ sw $s1, 0x2c($sp) +/* 398200 E009C010 0080882D */ daddu $s1, $a0, $zero +/* 398204 E009C014 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 398208 E009C018 4486B000 */ mtc1 $a2, $f22 +/* 39820C E009C01C 27A40010 */ addiu $a0, $sp, 0x10 +/* 398210 E009C020 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 398214 E009C024 4487C000 */ mtc1 $a3, $f24 +/* 398218 E009C028 3C02E00A */ lui $v0, %hi(D_E009C100) +/* 39821C E009C02C 2442C100 */ addiu $v0, $v0, %lo(D_E009C100) +/* 398220 E009C030 AFA20018 */ sw $v0, 0x18($sp) +/* 398224 E009C034 3C02E00A */ lui $v0, %hi(D_E009C108) +/* 398228 E009C038 2442C108 */ addiu $v0, $v0, %lo(D_E009C108) +/* 39822C E009C03C AFA2001C */ sw $v0, 0x1c($sp) +/* 398230 E009C040 3C02E00A */ lui $v0, %hi(D_E009C1DC) +/* 398234 E009C044 2442C1DC */ addiu $v0, $v0, %lo(D_E009C1DC) +/* 398238 E009C048 AFA20020 */ sw $v0, 0x20($sp) +/* 39823C E009C04C 2402004E */ addiu $v0, $zero, 0x4e +/* 398240 E009C050 AFBF0030 */ sw $ra, 0x30($sp) +/* 398244 E009C054 AFB00028 */ sw $s0, 0x28($sp) +/* 398248 E009C058 AFA00010 */ sw $zero, 0x10($sp) +/* 39824C E009C05C AFA00024 */ sw $zero, 0x24($sp) +/* 398250 E009C060 0C080124 */ jal func_E0200490 +/* 398254 E009C064 AFA20014 */ sw $v0, 0x14($sp) +/* 398258 E009C068 24040044 */ addiu $a0, $zero, 0x44 +/* 39825C E009C06C 24030001 */ addiu $v1, $zero, 1 +/* 398260 E009C070 0040802D */ daddu $s0, $v0, $zero +/* 398264 E009C074 0C08012C */ jal func_E02004B0 +/* 398268 E009C078 AE030008 */ sw $v1, 8($s0) +/* 39826C E009C07C 0040202D */ daddu $a0, $v0, $zero +/* 398270 E009C080 14800003 */ bnez $a0, .LE009C090 +/* 398274 E009C084 AE02000C */ sw $v0, 0xc($s0) +.LE009C088: +/* 398278 E009C088 08027022 */ j .LE009C088 +/* 39827C E009C08C 00000000 */ nop +.LE009C090: +/* 398280 E009C090 0200102D */ daddu $v0, $s0, $zero +/* 398284 E009C094 24030064 */ addiu $v1, $zero, 0x64 +/* 398288 E009C098 AC830004 */ sw $v1, 4($a0) +/* 39828C E009C09C 240300FF */ addiu $v1, $zero, 0xff +/* 398290 E009C0A0 AC830018 */ sw $v1, 0x18($a0) +/* 398294 E009C0A4 AC83001C */ sw $v1, 0x1c($a0) +/* 398298 E009C0A8 AC830020 */ sw $v1, 0x20($a0) +/* 39829C E009C0AC AC830024 */ sw $v1, 0x24($a0) +/* 3982A0 E009C0B0 AC830028 */ sw $v1, 0x28($a0) +/* 3982A4 E009C0B4 24030040 */ addiu $v1, $zero, 0x40 +/* 3982A8 E009C0B8 AC830030 */ sw $v1, 0x30($a0) +/* 3982AC E009C0BC 2403000F */ addiu $v1, $zero, 0xf +/* 3982B0 E009C0C0 AC910000 */ sw $s1, ($a0) +/* 3982B4 E009C0C4 E494000C */ swc1 $f20, 0xc($a0) +/* 3982B8 E009C0C8 E4960010 */ swc1 $f22, 0x10($a0) +/* 3982BC E009C0CC E4980014 */ swc1 $f24, 0x14($a0) +/* 3982C0 E009C0D0 AC80002C */ sw $zero, 0x2c($a0) +/* 3982C4 E009C0D4 AC830034 */ sw $v1, 0x34($a0) +/* 3982C8 E009C0D8 AC800038 */ sw $zero, 0x38($a0) +/* 3982CC E009C0DC AC800008 */ sw $zero, 8($a0) +/* 3982D0 E009C0E0 8FBF0030 */ lw $ra, 0x30($sp) +/* 3982D4 E009C0E4 8FB1002C */ lw $s1, 0x2c($sp) +/* 3982D8 E009C0E8 8FB00028 */ lw $s0, 0x28($sp) +/* 3982DC E009C0EC D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3982E0 E009C0F0 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3982E4 E009C0F4 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3982E8 E009C0F8 03E00008 */ jr $ra +/* 3982EC E009C0FC 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3981F0/func_E009C100.s b/asm/nonmatchings/code_3981F0/func_E009C100.s new file mode 100644 index 0000000000..b37f920893 --- /dev/null +++ b/asm/nonmatchings/code_3981F0/func_E009C100.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009C100 +/* 3982F0 E009C100 03E00008 */ jr $ra +/* 3982F4 E009C104 00000000 */ nop diff --git a/asm/nonmatchings/code_3981F0/func_E009C108.s b/asm/nonmatchings/code_3981F0/func_E009C108.s new file mode 100644 index 0000000000..3ab646443e --- /dev/null +++ b/asm/nonmatchings/code_3981F0/func_E009C108.s @@ -0,0 +1,64 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009C108 +/* 3982F8 E009C108 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3982FC E009C10C AFBF0010 */ sw $ra, 0x10($sp) +/* 398300 E009C110 8C830000 */ lw $v1, ($a0) +/* 398304 E009C114 8C85000C */ lw $a1, 0xc($a0) +/* 398308 E009C118 30620010 */ andi $v0, $v1, 0x10 +/* 39830C E009C11C 10400005 */ beqz $v0, .LE009C134 +/* 398310 E009C120 2402FFEF */ addiu $v0, $zero, -0x11 +/* 398314 E009C124 00621024 */ and $v0, $v1, $v0 +/* 398318 E009C128 AC820000 */ sw $v0, ($a0) +/* 39831C E009C12C 2402001E */ addiu $v0, $zero, 0x1e +/* 398320 E009C130 ACA20004 */ sw $v0, 4($a1) +.LE009C134: +/* 398324 E009C134 8CA30004 */ lw $v1, 4($a1) +/* 398328 E009C138 28620064 */ slti $v0, $v1, 0x64 +/* 39832C E009C13C 10400002 */ beqz $v0, .LE009C148 +/* 398330 E009C140 2462FFFF */ addiu $v0, $v1, -1 +/* 398334 E009C144 ACA20004 */ sw $v0, 4($a1) +.LE009C148: +/* 398338 E009C148 8CA20008 */ lw $v0, 8($a1) +/* 39833C E009C14C 8CA60004 */ lw $a2, 4($a1) +/* 398340 E009C150 24430001 */ addiu $v1, $v0, 1 +/* 398344 E009C154 04C10005 */ bgez $a2, .LE009C16C +/* 398348 E009C158 ACA30008 */ sw $v1, 8($a1) +/* 39834C E009C15C 0C080128 */ jal func_E02004A0 +/* 398350 E009C160 00000000 */ nop +/* 398354 E009C164 08027074 */ j .LE009C1D0 +/* 398358 E009C168 00000000 */ nop +.LE009C16C: +/* 39835C E009C16C 28C20010 */ slti $v0, $a2, 0x10 +/* 398360 E009C170 10400002 */ beqz $v0, .LE009C17C +/* 398364 E009C174 00061100 */ sll $v0, $a2, 4 +/* 398368 E009C178 ACA20018 */ sw $v0, 0x18($a1) +.LE009C17C: +/* 39836C E009C17C 8CA20034 */ lw $v0, 0x34($a1) +/* 398370 E009C180 14400002 */ bnez $v0, .LE009C18C +/* 398374 E009C184 0062001A */ div $zero, $v1, $v0 +/* 398378 E009C188 0007000D */ break 7 +.LE009C18C: +/* 39837C E009C18C 2401FFFF */ addiu $at, $zero, -1 +/* 398380 E009C190 14410004 */ bne $v0, $at, .LE009C1A4 +/* 398384 E009C194 3C018000 */ lui $at, 0x8000 +/* 398388 E009C198 14610002 */ bne $v1, $at, .LE009C1A4 +/* 39838C E009C19C 00000000 */ nop +/* 398390 E009C1A0 0006000D */ break 6 +.LE009C1A4: +/* 398394 E009C1A4 00001810 */ mfhi $v1 +/* 398398 E009C1A8 14600009 */ bnez $v1, .LE009C1D0 +/* 39839C E009C1AC 00000000 */ nop +/* 3983A0 E009C1B0 8CA2002C */ lw $v0, 0x2c($a1) +/* 3983A4 E009C1B4 8CA30030 */ lw $v1, 0x30($a1) +/* 3983A8 E009C1B8 00431821 */ addu $v1, $v0, $v1 +/* 3983AC E009C1BC 28620401 */ slti $v0, $v1, 0x401 +/* 3983B0 E009C1C0 14400003 */ bnez $v0, .LE009C1D0 +/* 3983B4 E009C1C4 ACA3002C */ sw $v1, 0x2c($a1) +/* 3983B8 E009C1C8 2462FC00 */ addiu $v0, $v1, -0x400 +/* 3983BC E009C1CC ACA2002C */ sw $v0, 0x2c($a1) +.LE009C1D0: +/* 3983C0 E009C1D0 8FBF0010 */ lw $ra, 0x10($sp) +/* 3983C4 E009C1D4 03E00008 */ jr $ra +/* 3983C8 E009C1D8 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3981F0/func_E009C1DC.s b/asm/nonmatchings/code_3981F0/func_E009C1DC.s new file mode 100644 index 0000000000..ab52f7ec18 --- /dev/null +++ b/asm/nonmatchings/code_3981F0/func_E009C1DC.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009C1DC +/* 3983CC E009C1DC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3983D0 E009C1E0 3C02E00A */ lui $v0, %hi(D_E009C220) +/* 3983D4 E009C1E4 2442C220 */ addiu $v0, $v0, %lo(D_E009C220) +/* 3983D8 E009C1E8 AFA2001C */ sw $v0, 0x1c($sp) +/* 3983DC E009C1EC 24020001 */ addiu $v0, $zero, 1 +/* 3983E0 E009C1F0 AFA40018 */ sw $a0, 0x18($sp) +/* 3983E4 E009C1F4 27A40010 */ addiu $a0, $sp, 0x10 +/* 3983E8 E009C1F8 AFBF0020 */ sw $ra, 0x20($sp) +/* 3983EC E009C1FC AFA00014 */ sw $zero, 0x14($sp) +/* 3983F0 E009C200 0C080120 */ jal func_E0200480 +/* 3983F4 E009C204 AFA20010 */ sw $v0, 0x10($sp) +/* 3983F8 E009C208 8C430000 */ lw $v1, ($v0) +/* 3983FC E009C20C 34630002 */ ori $v1, $v1, 2 +/* 398400 E009C210 AC430000 */ sw $v1, ($v0) +/* 398404 E009C214 8FBF0020 */ lw $ra, 0x20($sp) +/* 398408 E009C218 03E00008 */ jr $ra +/* 39840C E009C21C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3981F0/func_E009C220.s b/asm/nonmatchings/code_3981F0/func_E009C220.s new file mode 100644 index 0000000000..f3481ab78e --- /dev/null +++ b/asm/nonmatchings/code_3981F0/func_E009C220.s @@ -0,0 +1,497 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009C220 +/* 398410 E009C220 27BDFF20 */ addiu $sp, $sp, -0xe0 +/* 398414 E009C224 0080182D */ daddu $v1, $a0, $zero +/* 398418 E009C228 3C05DB06 */ lui $a1, 0xdb06 +/* 39841C E009C22C 34A50024 */ ori $a1, $a1, 0x24 +/* 398420 E009C230 27A40018 */ addiu $a0, $sp, 0x18 +/* 398424 E009C234 AFBE00C8 */ sw $fp, 0xc8($sp) +/* 398428 E009C238 3C1E800A */ lui $fp, %hi(D_8009A66C) +/* 39842C E009C23C 27DEA66C */ addiu $fp, $fp, %lo(D_8009A66C) +/* 398430 E009C240 AFB500BC */ sw $s5, 0xbc($sp) +/* 398434 E009C244 3C150001 */ lui $s5, 1 +/* 398438 E009C248 AFBF00CC */ sw $ra, 0xcc($sp) +/* 39843C E009C24C AFB700C4 */ sw $s7, 0xc4($sp) +/* 398440 E009C250 AFB600C0 */ sw $s6, 0xc0($sp) +/* 398444 E009C254 AFB400B8 */ sw $s4, 0xb8($sp) +/* 398448 E009C258 AFB300B4 */ sw $s3, 0xb4($sp) +/* 39844C E009C25C AFB200B0 */ sw $s2, 0xb0($sp) +/* 398450 E009C260 AFB100AC */ sw $s1, 0xac($sp) +/* 398454 E009C264 AFB000A8 */ sw $s0, 0xa8($sp) +/* 398458 E009C268 F7B600D8 */ sdc1 $f22, 0xd8($sp) +/* 39845C E009C26C F7B400D0 */ sdc1 $f20, 0xd0($sp) +/* 398460 E009C270 8FC80000 */ lw $t0, ($fp) +/* 398464 E009C274 8C77000C */ lw $s7, 0xc($v1) +/* 398468 E009C278 0100102D */ daddu $v0, $t0, $zero +/* 39846C E009C27C 25080008 */ addiu $t0, $t0, 8 +/* 398470 E009C280 8EF00018 */ lw $s0, 0x18($s7) +/* 398474 E009C284 3C09E700 */ lui $t1, 0xe700 +/* 398478 E009C288 AC490000 */ sw $t1, ($v0) +/* 39847C E009C28C AC400004 */ sw $zero, 4($v0) +/* 398480 E009C290 AD050000 */ sw $a1, ($t0) +/* 398484 E009C294 8C620010 */ lw $v0, 0x10($v1) +/* 398488 E009C298 36B51630 */ ori $s5, $s5, 0x1630 +/* 39848C E009C29C AFC80000 */ sw $t0, ($fp) +/* 398490 E009C2A0 8C42001C */ lw $v0, 0x1c($v0) +/* 398494 E009C2A4 3C038000 */ lui $v1, 0x8000 +/* 398498 E009C2A8 00431021 */ addu $v0, $v0, $v1 +/* 39849C E009C2AC AD020004 */ sw $v0, 4($t0) +/* 3984A0 E009C2B0 8EE5000C */ lw $a1, 0xc($s7) +/* 3984A4 E009C2B4 8EE60010 */ lw $a2, 0x10($s7) +/* 3984A8 E009C2B8 8EE70014 */ lw $a3, 0x14($s7) +/* 3984AC E009C2BC 25080008 */ addiu $t0, $t0, 8 +/* 3984B0 E009C2C0 0C080108 */ jal func_E0200420 +/* 3984B4 E009C2C4 AFC80000 */ sw $t0, ($fp) +/* 3984B8 E009C2C8 27B10058 */ addiu $s1, $sp, 0x58 +/* 3984BC E009C2CC 4480A000 */ mtc1 $zero, $f20 +/* 3984C0 E009C2D0 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3984C4 E009C2D4 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3984C8 E009C2D8 3C013F80 */ lui $at, 0x3f80 +/* 3984CC E009C2DC 4481B000 */ mtc1 $at, $f22 +/* 3984D0 E009C2E0 00031080 */ sll $v0, $v1, 2 +/* 3984D4 E009C2E4 00431021 */ addu $v0, $v0, $v1 +/* 3984D8 E009C2E8 00021080 */ sll $v0, $v0, 2 +/* 3984DC E009C2EC 00431023 */ subu $v0, $v0, $v1 +/* 3984E0 E009C2F0 000218C0 */ sll $v1, $v0, 3 +/* 3984E4 E009C2F4 00431021 */ addu $v0, $v0, $v1 +/* 3984E8 E009C2F8 000210C0 */ sll $v0, $v0, 3 +/* 3984EC E009C2FC 4406A000 */ mfc1 $a2, $f20 +/* 3984F0 E009C300 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3984F4 E009C304 00220821 */ addu $at, $at, $v0 +/* 3984F8 E009C308 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 3984FC E009C30C 4407B000 */ mfc1 $a3, $f22 +/* 398500 E009C310 46000007 */ neg.s $f0, $f0 +/* 398504 E009C314 44050000 */ mfc1 $a1, $f0 +/* 398508 E009C318 0220202D */ daddu $a0, $s1, $zero +/* 39850C E009C31C 0C080104 */ jal func_E0200410 +/* 398510 E009C320 E7B40010 */ swc1 $f20, 0x10($sp) +/* 398514 E009C324 0220202D */ daddu $a0, $s1, $zero +/* 398518 E009C328 27A50018 */ addiu $a1, $sp, 0x18 +/* 39851C E009C32C 0C080114 */ jal func_E0200450 +/* 398520 E009C330 00A0302D */ daddu $a2, $a1, $zero +/* 398524 E009C334 27A40018 */ addiu $a0, $sp, 0x18 +/* 398528 E009C338 3C168007 */ lui $s6, %hi(D_800741F0) +/* 39852C E009C33C 26D641F0 */ addiu $s6, $s6, %lo(D_800741F0) +/* 398530 E009C340 3C13800A */ lui $s3, %hi(D_8009A674) +/* 398534 E009C344 2673A674 */ addiu $s3, $s3, %lo(D_8009A674) +/* 398538 E009C348 96C50000 */ lhu $a1, ($s6) +/* 39853C E009C34C 8E620000 */ lw $v0, ($s3) +/* 398540 E009C350 00052980 */ sll $a1, $a1, 6 +/* 398544 E009C354 00B52821 */ addu $a1, $a1, $s5 +/* 398548 E009C358 0C080118 */ jal func_E0200460 +/* 39854C E009C35C 00452821 */ addu $a1, $v0, $a1 +/* 398550 E009C360 3C03DA38 */ lui $v1, 0xda38 +/* 398554 E009C364 34630002 */ ori $v1, $v1, 2 +/* 398558 E009C368 3C05FC12 */ lui $a1, 0xfc12 +/* 39855C E009C36C 34A51803 */ ori $a1, $a1, 0x1803 +/* 398560 E009C370 321000FF */ andi $s0, $s0, 0xff +/* 398564 E009C374 3C14DE00 */ lui $s4, 0xde00 +/* 398568 E009C378 8FC80000 */ lw $t0, ($fp) +/* 39856C E009C37C 96C20000 */ lhu $v0, ($s6) +/* 398570 E009C380 0100202D */ daddu $a0, $t0, $zero +/* 398574 E009C384 25080008 */ addiu $t0, $t0, 8 +/* 398578 E009C388 AFC80000 */ sw $t0, ($fp) +/* 39857C E009C38C AC830000 */ sw $v1, ($a0) +/* 398580 E009C390 24430001 */ addiu $v1, $v0, 1 +/* 398584 E009C394 3042FFFF */ andi $v0, $v0, 0xffff +/* 398588 E009C398 00021180 */ sll $v0, $v0, 6 +/* 39858C E009C39C A6C30000 */ sh $v1, ($s6) +/* 398590 E009C3A0 8E630000 */ lw $v1, ($s3) +/* 398594 E009C3A4 00551021 */ addu $v0, $v0, $s5 +/* 398598 E009C3A8 00621821 */ addu $v1, $v1, $v0 +/* 39859C E009C3AC 25020008 */ addiu $v0, $t0, 8 +/* 3985A0 E009C3B0 AC830004 */ sw $v1, 4($a0) +/* 3985A4 E009C3B4 AFC20000 */ sw $v0, ($fp) +/* 3985A8 E009C3B8 3C02FA00 */ lui $v0, 0xfa00 +/* 3985AC E009C3BC AD020000 */ sw $v0, ($t0) +/* 3985B0 E009C3C0 00101600 */ sll $v0, $s0, 0x18 +/* 3985B4 E009C3C4 00101C00 */ sll $v1, $s0, 0x10 +/* 3985B8 E009C3C8 00431025 */ or $v0, $v0, $v1 +/* 3985BC E009C3CC 00108200 */ sll $s0, $s0, 8 +/* 3985C0 E009C3D0 00501025 */ or $v0, $v0, $s0 +/* 3985C4 E009C3D4 344200FF */ ori $v0, $v0, 0xff +/* 3985C8 E009C3D8 AD020004 */ sw $v0, 4($t0) +/* 3985CC E009C3DC 25020010 */ addiu $v0, $t0, 0x10 +/* 3985D0 E009C3E0 AFC20000 */ sw $v0, ($fp) +/* 3985D4 E009C3E4 2402FFF8 */ addiu $v0, $zero, -8 +/* 3985D8 E009C3E8 AD02000C */ sw $v0, 0xc($t0) +/* 3985DC E009C3EC 25020018 */ addiu $v0, $t0, 0x18 +/* 3985E0 E009C3F0 AD050008 */ sw $a1, 8($t0) +/* 3985E4 E009C3F4 AFC20000 */ sw $v0, ($fp) +/* 3985E8 E009C3F8 3C020900 */ lui $v0, 0x900 +/* 3985EC E009C3FC 24427230 */ addiu $v0, $v0, 0x7230 +/* 3985F0 E009C400 AD140010 */ sw $s4, 0x10($t0) +/* 3985F4 E009C404 AD020014 */ sw $v0, 0x14($t0) +/* 3985F8 E009C408 8EE3003C */ lw $v1, 0x3c($s7) +/* 3985FC E009C40C 240200FF */ addiu $v0, $zero, 0xff +/* 398600 E009C410 10620150 */ beq $v1, $v0, .LE009C954 +/* 398604 E009C414 3C098080 */ lui $t1, 0x8080 +/* 398608 E009C418 35298081 */ ori $t1, $t1, 0x8081 +/* 39860C E009C41C AFA90098 */ sw $t1, 0x98($sp) +/* 398610 E009C420 3C09DA38 */ lui $t1, 0xda38 +/* 398614 E009C424 35290001 */ ori $t1, $t1, 1 +/* 398618 E009C428 AFA9009C */ sw $t1, 0x9c($sp) +/* 39861C E009C42C 3C09D838 */ lui $t1, 0xd838 +/* 398620 E009C430 35290002 */ ori $t1, $t1, 2 +/* 398624 E009C434 AFA900A0 */ sw $t1, 0xa0($sp) +/* 398628 E009C438 3C09DA38 */ lui $t1, 0xda38 +/* 39862C E009C43C 3C110900 */ lui $s1, 0x900 +/* 398630 E009C440 263141C8 */ addiu $s1, $s1, 0x41c8 +/* 398634 E009C444 AD090018 */ sw $t1, 0x18($t0) +/* 398638 E009C448 AD11001C */ sw $s1, 0x1c($t0) +/* 39863C E009C44C 8EE3001C */ lw $v1, 0x1c($s7) +/* 398640 E009C450 8FA90098 */ lw $t1, 0x98($sp) +/* 398644 E009C454 00031040 */ sll $v0, $v1, 1 +/* 398648 E009C458 00431021 */ addu $v0, $v0, $v1 +/* 39864C E009C45C 00021900 */ sll $v1, $v0, 4 +/* 398650 E009C460 00621823 */ subu $v1, $v1, $v0 +/* 398654 E009C464 00031880 */ sll $v1, $v1, 2 +/* 398658 E009C468 00690018 */ mult $v1, $t1 +/* 39865C E009C46C 4406B000 */ mfc1 $a2, $f22 +/* 398660 E009C470 4407A000 */ mfc1 $a3, $f20 +/* 398664 E009C474 25020020 */ addiu $v0, $t0, 0x20 +/* 398668 E009C478 AFC20000 */ sw $v0, ($fp) +/* 39866C E009C47C 00004810 */ mfhi $t1 +/* 398670 E009C480 01231021 */ addu $v0, $t1, $v1 +/* 398674 E009C484 000211C3 */ sra $v0, $v0, 7 +/* 398678 E009C488 00031FC3 */ sra $v1, $v1, 0x1f +/* 39867C E009C48C 00431023 */ subu $v0, $v0, $v1 +/* 398680 E009C490 2442FF4C */ addiu $v0, $v0, -0xb4 +/* 398684 E009C494 44821000 */ mtc1 $v0, $f2 +/* 398688 E009C498 00000000 */ nop +/* 39868C E009C49C 468010A0 */ cvt.s.w $f2, $f2 +/* 398690 E009C4A0 44051000 */ mfc1 $a1, $f2 +/* 398694 E009C4A4 27A40018 */ addiu $a0, $sp, 0x18 +/* 398698 E009C4A8 0C080104 */ jal func_E0200410 +/* 39869C E009C4AC E7B40010 */ swc1 $f20, 0x10($sp) +/* 3986A0 E009C4B0 27A40018 */ addiu $a0, $sp, 0x18 +/* 3986A4 E009C4B4 96C50000 */ lhu $a1, ($s6) +/* 3986A8 E009C4B8 8E620000 */ lw $v0, ($s3) +/* 3986AC E009C4BC 00052980 */ sll $a1, $a1, 6 +/* 3986B0 E009C4C0 00B52821 */ addu $a1, $a1, $s5 +/* 3986B4 E009C4C4 0C080118 */ jal func_E0200460 +/* 3986B8 E009C4C8 00452821 */ addu $a1, $v0, $a1 +/* 3986BC E009C4CC 24120040 */ addiu $s2, $zero, 0x40 +/* 3986C0 E009C4D0 2410005A */ addiu $s0, $zero, 0x5a +/* 3986C4 E009C4D4 8FC50000 */ lw $a1, ($fp) +/* 3986C8 E009C4D8 4406A000 */ mfc1 $a2, $f20 +/* 3986CC E009C4DC 4407A000 */ mfc1 $a3, $f20 +/* 3986D0 E009C4E0 96C20000 */ lhu $v0, ($s6) +/* 3986D4 E009C4E4 00A0402D */ daddu $t0, $a1, $zero +/* 3986D8 E009C4E8 24A50008 */ addiu $a1, $a1, 8 +/* 3986DC E009C4EC 24430001 */ addiu $v1, $v0, 1 +/* 3986E0 E009C4F0 3042FFFF */ andi $v0, $v0, 0xffff +/* 3986E4 E009C4F4 AFC50000 */ sw $a1, ($fp) +/* 3986E8 E009C4F8 8FA9009C */ lw $t1, 0x9c($sp) +/* 3986EC E009C4FC 00021180 */ sll $v0, $v0, 6 +/* 3986F0 E009C500 AD090000 */ sw $t1, ($t0) +/* 3986F4 E009C504 A6C30000 */ sh $v1, ($s6) +/* 3986F8 E009C508 8E630000 */ lw $v1, ($s3) +/* 3986FC E009C50C 00551021 */ addu $v0, $v0, $s5 +/* 398700 E009C510 00621821 */ addu $v1, $v1, $v0 +/* 398704 E009C514 24A20008 */ addiu $v0, $a1, 8 +/* 398708 E009C518 AD030004 */ sw $v1, 4($t0) +/* 39870C E009C51C AFC20000 */ sw $v0, ($fp) +/* 398710 E009C520 3C020900 */ lui $v0, 0x900 +/* 398714 E009C524 24426E28 */ addiu $v0, $v0, 0x6e28 +/* 398718 E009C528 ACA20004 */ sw $v0, 4($a1) +/* 39871C E009C52C 24A20010 */ addiu $v0, $a1, 0x10 +/* 398720 E009C530 3C090900 */ lui $t1, 0x900 +/* 398724 E009C534 25291518 */ addiu $t1, $t1, 0x1518 +/* 398728 E009C538 24A30018 */ addiu $v1, $a1, 0x18 +/* 39872C E009C53C ACB40000 */ sw $s4, ($a1) +/* 398730 E009C540 AFC20000 */ sw $v0, ($fp) +/* 398734 E009C544 ACB40008 */ sw $s4, 8($a1) +/* 398738 E009C548 ACA9000C */ sw $t1, 0xc($a1) +/* 39873C E009C54C 8EE2002C */ lw $v0, 0x2c($s7) +/* 398740 E009C550 3C09F200 */ lui $t1, 0xf200 +/* 398744 E009C554 AFC30000 */ sw $v1, ($fp) +/* 398748 E009C558 30420FFF */ andi $v0, $v0, 0xfff +/* 39874C E009C55C 00021300 */ sll $v0, $v0, 0xc +/* 398750 E009C560 00491025 */ or $v0, $v0, $t1 +/* 398754 E009C564 ACA20010 */ sw $v0, 0x10($a1) +/* 398758 E009C568 8EE3002C */ lw $v1, 0x2c($s7) +/* 39875C E009C56C 24A20020 */ addiu $v0, $a1, 0x20 +/* 398760 E009C570 AFC20000 */ sw $v0, ($fp) +/* 398764 E009C574 3C020900 */ lui $v0, 0x900 +/* 398768 E009C578 24426DA0 */ addiu $v0, $v0, 0x6da0 +/* 39876C E009C57C ACB40018 */ sw $s4, 0x18($a1) +/* 398770 E009C580 ACA2001C */ sw $v0, 0x1c($a1) +/* 398774 E009C584 8FA900A0 */ lw $t1, 0xa0($sp) +/* 398778 E009C588 2622FF80 */ addiu $v0, $s1, -0x80 +/* 39877C E009C58C ACB20024 */ sw $s2, 0x24($a1) +/* 398780 E009C590 ACA2002C */ sw $v0, 0x2c($a1) +/* 398784 E009C594 ACA90020 */ sw $t1, 0x20($a1) +/* 398788 E009C598 3C09DA38 */ lui $t1, 0xda38 +/* 39878C E009C59C 246300FC */ addiu $v1, $v1, 0xfc +/* 398790 E009C5A0 30630FFF */ andi $v1, $v1, 0xfff +/* 398794 E009C5A4 00031B00 */ sll $v1, $v1, 0xc +/* 398798 E009C5A8 3463003C */ ori $v1, $v1, 0x3c +/* 39879C E009C5AC ACA90028 */ sw $t1, 0x28($a1) +/* 3987A0 E009C5B0 ACA30014 */ sw $v1, 0x14($a1) +/* 3987A4 E009C5B4 8EE30020 */ lw $v1, 0x20($s7) +/* 3987A8 E009C5B8 8FA90098 */ lw $t1, 0x98($sp) +/* 3987AC E009C5BC 00031040 */ sll $v0, $v1, 1 +/* 3987B0 E009C5C0 00431021 */ addu $v0, $v0, $v1 +/* 3987B4 E009C5C4 00021900 */ sll $v1, $v0, 4 +/* 3987B8 E009C5C8 00621823 */ subu $v1, $v1, $v0 +/* 3987BC E009C5CC 00031840 */ sll $v1, $v1, 1 +/* 3987C0 E009C5D0 00690018 */ mult $v1, $t1 +/* 3987C4 E009C5D4 24A80028 */ addiu $t0, $a1, 0x28 +/* 3987C8 E009C5D8 24A50030 */ addiu $a1, $a1, 0x30 +/* 3987CC E009C5DC AFC80000 */ sw $t0, ($fp) +/* 3987D0 E009C5E0 AFC50000 */ sw $a1, ($fp) +/* 3987D4 E009C5E4 00004810 */ mfhi $t1 +/* 3987D8 E009C5E8 01231021 */ addu $v0, $t1, $v1 +/* 3987DC E009C5EC 000211C3 */ sra $v0, $v0, 7 +/* 3987E0 E009C5F0 00031FC3 */ sra $v1, $v1, 0x1f +/* 3987E4 E009C5F4 00431023 */ subu $v0, $v0, $v1 +/* 3987E8 E009C5F8 02021023 */ subu $v0, $s0, $v0 +/* 3987EC E009C5FC 44821000 */ mtc1 $v0, $f2 +/* 3987F0 E009C600 00000000 */ nop +/* 3987F4 E009C604 468010A0 */ cvt.s.w $f2, $f2 +/* 3987F8 E009C608 44051000 */ mfc1 $a1, $f2 +/* 3987FC E009C60C 27A40018 */ addiu $a0, $sp, 0x18 +/* 398800 E009C610 0C080104 */ jal func_E0200410 +/* 398804 E009C614 E7B60010 */ swc1 $f22, 0x10($sp) +/* 398808 E009C618 27A40018 */ addiu $a0, $sp, 0x18 +/* 39880C E009C61C 96C50000 */ lhu $a1, ($s6) +/* 398810 E009C620 8E620000 */ lw $v0, ($s3) +/* 398814 E009C624 00052980 */ sll $a1, $a1, 6 +/* 398818 E009C628 00B52821 */ addu $a1, $a1, $s5 +/* 39881C E009C62C 0C080118 */ jal func_E0200460 +/* 398820 E009C630 00452821 */ addu $a1, $v0, $a1 +/* 398824 E009C634 8FC50000 */ lw $a1, ($fp) +/* 398828 E009C638 4406A000 */ mfc1 $a2, $f20 +/* 39882C E009C63C 4407A000 */ mfc1 $a3, $f20 +/* 398830 E009C640 96C20000 */ lhu $v0, ($s6) +/* 398834 E009C644 00A0402D */ daddu $t0, $a1, $zero +/* 398838 E009C648 24A50008 */ addiu $a1, $a1, 8 +/* 39883C E009C64C 24430001 */ addiu $v1, $v0, 1 +/* 398840 E009C650 3042FFFF */ andi $v0, $v0, 0xffff +/* 398844 E009C654 AFC50000 */ sw $a1, ($fp) +/* 398848 E009C658 8FA9009C */ lw $t1, 0x9c($sp) +/* 39884C E009C65C 00021180 */ sll $v0, $v0, 6 +/* 398850 E009C660 AD090000 */ sw $t1, ($t0) +/* 398854 E009C664 A6C30000 */ sh $v1, ($s6) +/* 398858 E009C668 8E630000 */ lw $v1, ($s3) +/* 39885C E009C66C 00551021 */ addu $v0, $v0, $s5 +/* 398860 E009C670 00621821 */ addu $v1, $v1, $v0 +/* 398864 E009C674 24A20008 */ addiu $v0, $a1, 8 +/* 398868 E009C678 AD030004 */ sw $v1, 4($t0) +/* 39886C E009C67C AFC20000 */ sw $v0, ($fp) +/* 398870 E009C680 3C020900 */ lui $v0, 0x900 +/* 398874 E009C684 24426FB0 */ addiu $v0, $v0, 0x6fb0 +/* 398878 E009C688 ACB40000 */ sw $s4, ($a1) +/* 39887C E009C68C ACA20004 */ sw $v0, 4($a1) +/* 398880 E009C690 8FA900A0 */ lw $t1, 0xa0($sp) +/* 398884 E009C694 2622FFC0 */ addiu $v0, $s1, -0x40 +/* 398888 E009C698 ACB2000C */ sw $s2, 0xc($a1) +/* 39888C E009C69C ACA20014 */ sw $v0, 0x14($a1) +/* 398890 E009C6A0 ACA90008 */ sw $t1, 8($a1) +/* 398894 E009C6A4 3C09DA38 */ lui $t1, 0xda38 +/* 398898 E009C6A8 ACA90010 */ sw $t1, 0x10($a1) +/* 39889C E009C6AC 8EE30024 */ lw $v1, 0x24($s7) +/* 3988A0 E009C6B0 8FA90098 */ lw $t1, 0x98($sp) +/* 3988A4 E009C6B4 00031040 */ sll $v0, $v1, 1 +/* 3988A8 E009C6B8 00431021 */ addu $v0, $v0, $v1 +/* 3988AC E009C6BC 00021900 */ sll $v1, $v0, 4 +/* 3988B0 E009C6C0 00621823 */ subu $v1, $v1, $v0 +/* 3988B4 E009C6C4 00031840 */ sll $v1, $v1, 1 +/* 3988B8 E009C6C8 00690018 */ mult $v1, $t1 +/* 3988BC E009C6CC 24A80010 */ addiu $t0, $a1, 0x10 +/* 3988C0 E009C6D0 24A50018 */ addiu $a1, $a1, 0x18 +/* 3988C4 E009C6D4 AFC80000 */ sw $t0, ($fp) +/* 3988C8 E009C6D8 AFC50000 */ sw $a1, ($fp) +/* 3988CC E009C6DC 00004810 */ mfhi $t1 +/* 3988D0 E009C6E0 01231021 */ addu $v0, $t1, $v1 +/* 3988D4 E009C6E4 000211C3 */ sra $v0, $v0, 7 +/* 3988D8 E009C6E8 00031FC3 */ sra $v1, $v1, 0x1f +/* 3988DC E009C6EC 00431023 */ subu $v0, $v0, $v1 +/* 3988E0 E009C6F0 2442FFA6 */ addiu $v0, $v0, -0x5a +/* 3988E4 E009C6F4 44821000 */ mtc1 $v0, $f2 +/* 3988E8 E009C6F8 00000000 */ nop +/* 3988EC E009C6FC 468010A0 */ cvt.s.w $f2, $f2 +/* 3988F0 E009C700 44051000 */ mfc1 $a1, $f2 +/* 3988F4 E009C704 27A40018 */ addiu $a0, $sp, 0x18 +/* 3988F8 E009C708 0C080104 */ jal func_E0200410 +/* 3988FC E009C70C E7B60010 */ swc1 $f22, 0x10($sp) +/* 398900 E009C710 27A40018 */ addiu $a0, $sp, 0x18 +/* 398904 E009C714 96C50000 */ lhu $a1, ($s6) +/* 398908 E009C718 8E620000 */ lw $v0, ($s3) +/* 39890C E009C71C 00052980 */ sll $a1, $a1, 6 +/* 398910 E009C720 00B52821 */ addu $a1, $a1, $s5 +/* 398914 E009C724 0C080118 */ jal func_E0200460 +/* 398918 E009C728 00452821 */ addu $a1, $v0, $a1 +/* 39891C E009C72C 02328821 */ addu $s1, $s1, $s2 +/* 398920 E009C730 8FC50000 */ lw $a1, ($fp) +/* 398924 E009C734 4406B000 */ mfc1 $a2, $f22 +/* 398928 E009C738 4407A000 */ mfc1 $a3, $f20 +/* 39892C E009C73C 96C20000 */ lhu $v0, ($s6) +/* 398930 E009C740 00A0402D */ daddu $t0, $a1, $zero +/* 398934 E009C744 24A50008 */ addiu $a1, $a1, 8 +/* 398938 E009C748 24430001 */ addiu $v1, $v0, 1 +/* 39893C E009C74C 3042FFFF */ andi $v0, $v0, 0xffff +/* 398940 E009C750 AFC50000 */ sw $a1, ($fp) +/* 398944 E009C754 8FA9009C */ lw $t1, 0x9c($sp) +/* 398948 E009C758 00021180 */ sll $v0, $v0, 6 +/* 39894C E009C75C AD090000 */ sw $t1, ($t0) +/* 398950 E009C760 A6C30000 */ sh $v1, ($s6) +/* 398954 E009C764 8E630000 */ lw $v1, ($s3) +/* 398958 E009C768 00551021 */ addu $v0, $v0, $s5 +/* 39895C E009C76C 00621821 */ addu $v1, $v1, $v0 +/* 398960 E009C770 24A20008 */ addiu $v0, $a1, 8 +/* 398964 E009C774 AD030004 */ sw $v1, 4($t0) +/* 398968 E009C778 AFC20000 */ sw $v0, ($fp) +/* 39896C E009C77C 3C020900 */ lui $v0, 0x900 +/* 398970 E009C780 24426F20 */ addiu $v0, $v0, 0x6f20 +/* 398974 E009C784 ACA20004 */ sw $v0, 4($a1) +/* 398978 E009C788 24A20010 */ addiu $v0, $a1, 0x10 +/* 39897C E009C78C ACB40000 */ sw $s4, ($a1) +/* 398980 E009C790 AFC20000 */ sw $v0, ($fp) +/* 398984 E009C794 24A20018 */ addiu $v0, $a1, 0x18 +/* 398988 E009C798 8FA900A0 */ lw $t1, 0xa0($sp) +/* 39898C E009C79C 24A30028 */ addiu $v1, $a1, 0x28 +/* 398990 E009C7A0 ACB2000C */ sw $s2, 0xc($a1) +/* 398994 E009C7A4 ACA90008 */ sw $t1, 8($a1) +/* 398998 E009C7A8 AFC20000 */ sw $v0, ($fp) +/* 39899C E009C7AC 3C020900 */ lui $v0, 0x900 +/* 3989A0 E009C7B0 244270E8 */ addiu $v0, $v0, 0x70e8 +/* 3989A4 E009C7B4 ACA20014 */ sw $v0, 0x14($a1) +/* 3989A8 E009C7B8 24A20020 */ addiu $v0, $a1, 0x20 +/* 3989AC E009C7BC ACB40010 */ sw $s4, 0x10($a1) +/* 3989B0 E009C7C0 AFC20000 */ sw $v0, ($fp) +/* 3989B4 E009C7C4 3C020900 */ lui $v0, 0x900 +/* 3989B8 E009C7C8 24427030 */ addiu $v0, $v0, 0x7030 +/* 3989BC E009C7CC 3C090900 */ lui $t1, 0x900 +/* 3989C0 E009C7D0 25291518 */ addiu $t1, $t1, 0x1518 +/* 3989C4 E009C7D4 ACB40018 */ sw $s4, 0x18($a1) +/* 3989C8 E009C7D8 ACA2001C */ sw $v0, 0x1c($a1) +/* 3989CC E009C7DC ACB40020 */ sw $s4, 0x20($a1) +/* 3989D0 E009C7E0 ACA90024 */ sw $t1, 0x24($a1) +/* 3989D4 E009C7E4 8EE2002C */ lw $v0, 0x2c($s7) +/* 3989D8 E009C7E8 3C09F200 */ lui $t1, 0xf200 +/* 3989DC E009C7EC AFC30000 */ sw $v1, ($fp) +/* 3989E0 E009C7F0 30420FFF */ andi $v0, $v0, 0xfff +/* 3989E4 E009C7F4 00021300 */ sll $v0, $v0, 0xc +/* 3989E8 E009C7F8 00491025 */ or $v0, $v0, $t1 +/* 3989EC E009C7FC ACA20028 */ sw $v0, 0x28($a1) +/* 3989F0 E009C800 8EE2002C */ lw $v0, 0x2c($s7) +/* 3989F4 E009C804 24A30030 */ addiu $v1, $a1, 0x30 +/* 3989F8 E009C808 AFC30000 */ sw $v1, ($fp) +/* 3989FC E009C80C 3C030900 */ lui $v1, 0x900 +/* 398A00 E009C810 24636FD8 */ addiu $v1, $v1, 0x6fd8 +/* 398A04 E009C814 3C09DA38 */ lui $t1, 0xda38 +/* 398A08 E009C818 ACB40030 */ sw $s4, 0x30($a1) +/* 398A0C E009C81C ACA30034 */ sw $v1, 0x34($a1) +/* 398A10 E009C820 ACA90038 */ sw $t1, 0x38($a1) +/* 398A14 E009C824 ACB1003C */ sw $s1, 0x3c($a1) +/* 398A18 E009C828 244200FC */ addiu $v0, $v0, 0xfc +/* 398A1C E009C82C 30420FFF */ andi $v0, $v0, 0xfff +/* 398A20 E009C830 00021300 */ sll $v0, $v0, 0xc +/* 398A24 E009C834 3442003C */ ori $v0, $v0, 0x3c +/* 398A28 E009C838 ACA2002C */ sw $v0, 0x2c($a1) +/* 398A2C E009C83C 8EE30028 */ lw $v1, 0x28($s7) +/* 398A30 E009C840 8FA90098 */ lw $t1, 0x98($sp) +/* 398A34 E009C844 00031040 */ sll $v0, $v1, 1 +/* 398A38 E009C848 00431021 */ addu $v0, $v0, $v1 +/* 398A3C E009C84C 00021900 */ sll $v1, $v0, 4 +/* 398A40 E009C850 00621823 */ subu $v1, $v1, $v0 +/* 398A44 E009C854 00031840 */ sll $v1, $v1, 1 +/* 398A48 E009C858 00690018 */ mult $v1, $t1 +/* 398A4C E009C85C 24A80038 */ addiu $t0, $a1, 0x38 +/* 398A50 E009C860 00B22821 */ addu $a1, $a1, $s2 +/* 398A54 E009C864 AFC80000 */ sw $t0, ($fp) +/* 398A58 E009C868 AFC50000 */ sw $a1, ($fp) +/* 398A5C E009C86C 00004810 */ mfhi $t1 +/* 398A60 E009C870 01231021 */ addu $v0, $t1, $v1 +/* 398A64 E009C874 000211C3 */ sra $v0, $v0, 7 +/* 398A68 E009C878 00031FC3 */ sra $v1, $v1, 0x1f +/* 398A6C E009C87C 00431023 */ subu $v0, $v0, $v1 +/* 398A70 E009C880 02028023 */ subu $s0, $s0, $v0 +/* 398A74 E009C884 44901000 */ mtc1 $s0, $f2 +/* 398A78 E009C888 00000000 */ nop +/* 398A7C E009C88C 468010A0 */ cvt.s.w $f2, $f2 +/* 398A80 E009C890 44051000 */ mfc1 $a1, $f2 +/* 398A84 E009C894 27A40018 */ addiu $a0, $sp, 0x18 +/* 398A88 E009C898 0C080104 */ jal func_E0200410 +/* 398A8C E009C89C AFA70010 */ sw $a3, 0x10($sp) +/* 398A90 E009C8A0 27A40018 */ addiu $a0, $sp, 0x18 +/* 398A94 E009C8A4 96C50000 */ lhu $a1, ($s6) +/* 398A98 E009C8A8 8E620000 */ lw $v0, ($s3) +/* 398A9C E009C8AC 00052980 */ sll $a1, $a1, 6 +/* 398AA0 E009C8B0 00B52821 */ addu $a1, $a1, $s5 +/* 398AA4 E009C8B4 0C080118 */ jal func_E0200460 +/* 398AA8 E009C8B8 00452821 */ addu $a1, $v0, $a1 +/* 398AAC E009C8BC 8FC40000 */ lw $a0, ($fp) +/* 398AB0 E009C8C0 96C20000 */ lhu $v0, ($s6) +/* 398AB4 E009C8C4 0080282D */ daddu $a1, $a0, $zero +/* 398AB8 E009C8C8 24840008 */ addiu $a0, $a0, 8 +/* 398ABC E009C8CC 24430001 */ addiu $v1, $v0, 1 +/* 398AC0 E009C8D0 3042FFFF */ andi $v0, $v0, 0xffff +/* 398AC4 E009C8D4 AFC40000 */ sw $a0, ($fp) +/* 398AC8 E009C8D8 8FA9009C */ lw $t1, 0x9c($sp) +/* 398ACC E009C8DC 00021180 */ sll $v0, $v0, 6 +/* 398AD0 E009C8E0 ACA90000 */ sw $t1, ($a1) +/* 398AD4 E009C8E4 A6C30000 */ sh $v1, ($s6) +/* 398AD8 E009C8E8 8E630000 */ lw $v1, ($s3) +/* 398ADC E009C8EC 00551021 */ addu $v0, $v0, $s5 +/* 398AE0 E009C8F0 00621821 */ addu $v1, $v1, $v0 +/* 398AE4 E009C8F4 24820008 */ addiu $v0, $a0, 8 +/* 398AE8 E009C8F8 ACA30004 */ sw $v1, 4($a1) +/* 398AEC E009C8FC AFC20000 */ sw $v0, ($fp) +/* 398AF0 E009C900 3C020900 */ lui $v0, 0x900 +/* 398AF4 E009C904 24426D48 */ addiu $v0, $v0, 0x6d48 +/* 398AF8 E009C908 AC820004 */ sw $v0, 4($a0) +/* 398AFC E009C90C 24820010 */ addiu $v0, $a0, 0x10 +/* 398B00 E009C910 AC940000 */ sw $s4, ($a0) +/* 398B04 E009C914 AFC20000 */ sw $v0, ($fp) +/* 398B08 E009C918 8FA900A0 */ lw $t1, 0xa0($sp) +/* 398B0C E009C91C 24820018 */ addiu $v0, $a0, 0x18 +/* 398B10 E009C920 AC890008 */ sw $t1, 8($a0) +/* 398B14 E009C924 AC92000C */ sw $s2, 0xc($a0) +/* 398B18 E009C928 AFC20000 */ sw $v0, ($fp) +/* 398B1C E009C92C 3C020900 */ lui $v0, 0x900 +/* 398B20 E009C930 24420218 */ addiu $v0, $v0, 0x218 +/* 398B24 E009C934 AC820014 */ sw $v0, 0x14($a0) +/* 398B28 E009C938 24820020 */ addiu $v0, $a0, 0x20 +/* 398B2C E009C93C AC940010 */ sw $s4, 0x10($a0) +/* 398B30 E009C940 AFC20000 */ sw $v0, ($fp) +/* 398B34 E009C944 3C020900 */ lui $v0, 0x900 +/* 398B38 E009C948 24427090 */ addiu $v0, $v0, 0x7090 +/* 398B3C E009C94C AC940018 */ sw $s4, 0x18($a0) +/* 398B40 E009C950 AC82001C */ sw $v0, 0x1c($a0) +.LE009C954: +/* 398B44 E009C954 3C03D838 */ lui $v1, 0xd838 +/* 398B48 E009C958 8FC20000 */ lw $v0, ($fp) +/* 398B4C E009C95C 34630002 */ ori $v1, $v1, 2 +/* 398B50 E009C960 0040202D */ daddu $a0, $v0, $zero +/* 398B54 E009C964 24420008 */ addiu $v0, $v0, 8 +/* 398B58 E009C968 AFC20000 */ sw $v0, ($fp) +/* 398B5C E009C96C AC830000 */ sw $v1, ($a0) +/* 398B60 E009C970 24030040 */ addiu $v1, $zero, 0x40 +/* 398B64 E009C974 AC830004 */ sw $v1, 4($a0) +/* 398B68 E009C978 24430008 */ addiu $v1, $v0, 8 +/* 398B6C E009C97C 3C09E700 */ lui $t1, 0xe700 +/* 398B70 E009C980 AFC30000 */ sw $v1, ($fp) +/* 398B74 E009C984 AC490000 */ sw $t1, ($v0) +/* 398B78 E009C988 AC400004 */ sw $zero, 4($v0) +/* 398B7C E009C98C 8FBF00CC */ lw $ra, 0xcc($sp) +/* 398B80 E009C990 8FBE00C8 */ lw $fp, 0xc8($sp) +/* 398B84 E009C994 8FB700C4 */ lw $s7, 0xc4($sp) +/* 398B88 E009C998 8FB600C0 */ lw $s6, 0xc0($sp) +/* 398B8C E009C99C 8FB500BC */ lw $s5, 0xbc($sp) +/* 398B90 E009C9A0 8FB400B8 */ lw $s4, 0xb8($sp) +/* 398B94 E009C9A4 8FB300B4 */ lw $s3, 0xb4($sp) +/* 398B98 E009C9A8 8FB200B0 */ lw $s2, 0xb0($sp) +/* 398B9C E009C9AC 8FB100AC */ lw $s1, 0xac($sp) +/* 398BA0 E009C9B0 8FB000A8 */ lw $s0, 0xa8($sp) +/* 398BA4 E009C9B4 D7B600D8 */ ldc1 $f22, 0xd8($sp) +/* 398BA8 E009C9B8 D7B400D0 */ ldc1 $f20, 0xd0($sp) +/* 398BAC E009C9BC 03E00008 */ jr $ra +/* 398BB0 E009C9C0 27BD00E0 */ addiu $sp, $sp, 0xe0 +/* 398BB4 E009C9C4 00000000 */ nop +/* 398BB8 E009C9C8 00000000 */ nop +/* 398BBC E009C9CC 00000000 */ nop diff --git a/asm/nonmatchings/code_39FF20/func_E009E000.s b/asm/nonmatchings/code_39FF20/func_E009E000.s new file mode 100644 index 0000000000..35726fbf94 --- /dev/null +++ b/asm/nonmatchings/code_39FF20/func_E009E000.s @@ -0,0 +1,129 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009E000 +/* 39FF20 E009E000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 39FF24 E009E004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 39FF28 E009E008 4485A000 */ mtc1 $a1, $f20 +/* 39FF2C E009E00C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 39FF30 E009E010 4486B000 */ mtc1 $a2, $f22 +/* 39FF34 E009E014 AFB1002C */ sw $s1, 0x2c($sp) +/* 39FF38 E009E018 0080882D */ daddu $s1, $a0, $zero +/* 39FF3C E009E01C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 39FF40 E009E020 4487C000 */ mtc1 $a3, $f24 +/* 39FF44 E009E024 27A40010 */ addiu $a0, $sp, 0x10 +/* 39FF48 E009E028 AFB00028 */ sw $s0, 0x28($sp) +/* 39FF4C E009E02C 8FB0006C */ lw $s0, 0x6c($sp) +/* 39FF50 E009E030 3C02E00A */ lui $v0, %hi(D_E009E1DC) +/* 39FF54 E009E034 2442E1DC */ addiu $v0, $v0, %lo(D_E009E1DC) +/* 39FF58 E009E038 AFA20018 */ sw $v0, 0x18($sp) +/* 39FF5C E009E03C 3C02E00A */ lui $v0, %hi(D_E009E1E4) +/* 39FF60 E009E040 2442E1E4 */ addiu $v0, $v0, %lo(D_E009E1E4) +/* 39FF64 E009E044 AFA2001C */ sw $v0, 0x1c($sp) +/* 39FF68 E009E048 3C02E00A */ lui $v0, %hi(D_E009E3DC) +/* 39FF6C E009E04C 2442E3DC */ addiu $v0, $v0, %lo(D_E009E3DC) +/* 39FF70 E009E050 AFA20020 */ sw $v0, 0x20($sp) +/* 39FF74 E009E054 2402004F */ addiu $v0, $zero, 0x4f +/* 39FF78 E009E058 AFBF003C */ sw $ra, 0x3c($sp) +/* 39FF7C E009E05C AFB40038 */ sw $s4, 0x38($sp) +/* 39FF80 E009E060 AFB30034 */ sw $s3, 0x34($sp) +/* 39FF84 E009E064 AFB20030 */ sw $s2, 0x30($sp) +/* 39FF88 E009E068 AFA00010 */ sw $zero, 0x10($sp) +/* 39FF8C E009E06C AFA00024 */ sw $zero, 0x24($sp) +/* 39FF90 E009E070 0C080124 */ jal func_E0200490 +/* 39FF94 E009E074 AFA20014 */ sw $v0, 0x14($sp) +/* 39FF98 E009E078 24040138 */ addiu $a0, $zero, 0x138 +/* 39FF9C E009E07C 24130006 */ addiu $s3, $zero, 6 +/* 39FFA0 E009E080 0040902D */ daddu $s2, $v0, $zero +/* 39FFA4 E009E084 0C08012C */ jal func_E02004B0 +/* 39FFA8 E009E088 AE530008 */ sw $s3, 8($s2) +/* 39FFAC E009E08C 0040182D */ daddu $v1, $v0, $zero +/* 39FFB0 E009E090 14600003 */ bnez $v1, .LE009E0A0 +/* 39FFB4 E009E094 AE43000C */ sw $v1, 0xc($s2) +.LE009E098: +/* 39FFB8 E009E098 08027826 */ j .LE009E098 +/* 39FFBC E009E09C 00000000 */ nop +.LE009E0A0: +/* 39FFC0 E009E0A0 AC710004 */ sw $s1, 4($v1) +/* 39FFC4 E009E0A4 1E000004 */ bgtz $s0, .LE009E0B8 +/* 39FFC8 E009E0A8 AC60001C */ sw $zero, 0x1c($v1) +/* 39FFCC E009E0AC 24020064 */ addiu $v0, $zero, 0x64 +/* 39FFD0 E009E0B0 0802782F */ j .LE009E0BC +/* 39FFD4 E009E0B4 AC620018 */ sw $v0, 0x18($v1) +.LE009E0B8: +/* 39FFD8 E009E0B8 AC700018 */ sw $s0, 0x18($v1) +.LE009E0BC: +/* 39FFDC E009E0BC AC600014 */ sw $zero, 0x14($v1) +/* 39FFE0 E009E0C0 E4740008 */ swc1 $f20, 8($v1) +/* 39FFE4 E009E0C4 E476000C */ swc1 $f22, 0xc($v1) +/* 39FFE8 E009E0C8 E4780010 */ swc1 $f24, 0x10($v1) +/* 39FFEC E009E0CC 24110001 */ addiu $s1, $zero, 1 +/* 39FFF0 E009E0D0 0233102A */ slt $v0, $s1, $s3 +/* 39FFF4 E009E0D4 10400035 */ beqz $v0, .LE009E1AC +/* 39FFF8 E009E0D8 24630034 */ addiu $v1, $v1, 0x34 +/* 39FFFC E009E0DC 3C146666 */ lui $s4, 0x6666 +/* 3A0000 E009E0E0 36946667 */ ori $s4, $s4, 0x6667 +/* 3A0004 E009E0E4 24700030 */ addiu $s0, $v1, 0x30 +/* 3A0008 E009E0E8 3C01E00A */ lui $at, %hi(D_E009EE00) +/* 3A000C E009E0EC D434EE00 */ ldc1 $f20, %lo(D_E009EE00)($at) +/* 3A0010 E009E0F0 3C01E00A */ lui $at, %hi(D_E009EE08) +/* 3A0014 E009E0F4 D436EE08 */ ldc1 $f22, %lo(D_E009EE08)($at) +.LE009E0F8: +/* 3A0018 E009E0F8 0C080138 */ jal func_E02004E0 +/* 3A001C E009E0FC 24040168 */ addiu $a0, $zero, 0x168 +/* 3A0020 E009E100 00112840 */ sll $a1, $s1, 1 +/* 3A0024 E009E104 00B40018 */ mult $a1, $s4 +/* 3A0028 E009E108 2404000F */ addiu $a0, $zero, 0xf +/* 3A002C E009E10C 44820000 */ mtc1 $v0, $f0 +/* 3A0030 E009E110 00000000 */ nop +/* 3A0034 E009E114 46800020 */ cvt.s.w $f0, $f0 +/* 3A0038 E009E118 000517C3 */ sra $v0, $a1, 0x1f +/* 3A003C E009E11C E600FFF0 */ swc1 $f0, -0x10($s0) +/* 3A0040 E009E120 00004010 */ mfhi $t0 +/* 3A0044 E009E124 000818C3 */ sra $v1, $t0, 3 +/* 3A0048 E009E128 00621823 */ subu $v1, $v1, $v0 +/* 3A004C E009E12C 00031080 */ sll $v0, $v1, 2 +/* 3A0050 E009E130 00431021 */ addu $v0, $v0, $v1 +/* 3A0054 E009E134 00021080 */ sll $v0, $v0, 2 +/* 3A0058 E009E138 00A22823 */ subu $a1, $a1, $v0 +/* 3A005C E009E13C 24A5003C */ addiu $a1, $a1, 0x3c +/* 3A0060 E009E140 44850000 */ mtc1 $a1, $f0 +/* 3A0064 E009E144 00000000 */ nop +/* 3A0068 E009E148 46800020 */ cvt.s.w $f0, $f0 +/* 3A006C E009E14C 0C080138 */ jal func_E02004E0 +/* 3A0070 E009E150 E600FFFC */ swc1 $f0, -4($s0) +/* 3A0074 E009E154 44820000 */ mtc1 $v0, $f0 +/* 3A0078 E009E158 00000000 */ nop +/* 3A007C E009E15C 46800021 */ cvt.d.w $f0, $f0 +/* 3A0080 E009E160 46340002 */ mul.d $f0, $f0, $f20 +/* 3A0084 E009E164 00000000 */ nop +/* 3A0088 E009E168 46360000 */ add.d $f0, $f0, $f22 +/* 3A008C E009E16C 2404000A */ addiu $a0, $zero, 0xa +/* 3A0090 E009E170 46200020 */ cvt.s.d $f0, $f0 +/* 3A0094 E009E174 0C080138 */ jal func_E02004E0 +/* 3A0098 E009E178 E600FFF8 */ swc1 $f0, -8($s0) +/* 3A009C E009E17C 44820000 */ mtc1 $v0, $f0 +/* 3A00A0 E009E180 00000000 */ nop +/* 3A00A4 E009E184 46800021 */ cvt.d.w $f0, $f0 +/* 3A00A8 E009E188 46340002 */ mul.d $f0, $f0, $f20 +/* 3A00AC E009E18C 00000000 */ nop +/* 3A00B0 E009E190 46340000 */ add.d $f0, $f0, $f20 +/* 3A00B4 E009E194 26310001 */ addiu $s1, $s1, 1 +/* 3A00B8 E009E198 0233102A */ slt $v0, $s1, $s3 +/* 3A00BC E009E19C 46200020 */ cvt.s.d $f0, $f0 +/* 3A00C0 E009E1A0 E6000000 */ swc1 $f0, ($s0) +/* 3A00C4 E009E1A4 1440FFD4 */ bnez $v0, .LE009E0F8 +/* 3A00C8 E009E1A8 26100034 */ addiu $s0, $s0, 0x34 +.LE009E1AC: +/* 3A00CC E009E1AC 0240102D */ daddu $v0, $s2, $zero +/* 3A00D0 E009E1B0 8FBF003C */ lw $ra, 0x3c($sp) +/* 3A00D4 E009E1B4 8FB40038 */ lw $s4, 0x38($sp) +/* 3A00D8 E009E1B8 8FB30034 */ lw $s3, 0x34($sp) +/* 3A00DC E009E1BC 8FB20030 */ lw $s2, 0x30($sp) +/* 3A00E0 E009E1C0 8FB1002C */ lw $s1, 0x2c($sp) +/* 3A00E4 E009E1C4 8FB00028 */ lw $s0, 0x28($sp) +/* 3A00E8 E009E1C8 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3A00EC E009E1CC D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3A00F0 E009E1D0 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3A00F4 E009E1D4 03E00008 */ jr $ra +/* 3A00F8 E009E1D8 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_39FF20/func_E009E1DC.s b/asm/nonmatchings/code_39FF20/func_E009E1DC.s new file mode 100644 index 0000000000..e2addf6321 --- /dev/null +++ b/asm/nonmatchings/code_39FF20/func_E009E1DC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009E1DC +/* 3A00FC E009E1DC 03E00008 */ jr $ra +/* 3A0100 E009E1E0 00000000 */ nop diff --git a/asm/nonmatchings/code_39FF20/func_E009E1E4.s b/asm/nonmatchings/code_39FF20/func_E009E1E4.s new file mode 100644 index 0000000000..8d53d9beec --- /dev/null +++ b/asm/nonmatchings/code_39FF20/func_E009E1E4.s @@ -0,0 +1,139 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009E1E4 +/* 3A0104 E009E1E4 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 3A0108 E009E1E8 AFB20018 */ sw $s2, 0x18($sp) +/* 3A010C E009E1EC 0080902D */ daddu $s2, $a0, $zero +/* 3A0110 E009E1F0 AFBF001C */ sw $ra, 0x1c($sp) +/* 3A0114 E009E1F4 AFB10014 */ sw $s1, 0x14($sp) +/* 3A0118 E009E1F8 AFB00010 */ sw $s0, 0x10($sp) +/* 3A011C E009E1FC F7BC0040 */ sdc1 $f28, 0x40($sp) +/* 3A0120 E009E200 F7BA0038 */ sdc1 $f26, 0x38($sp) +/* 3A0124 E009E204 F7B80030 */ sdc1 $f24, 0x30($sp) +/* 3A0128 E009E208 F7B60028 */ sdc1 $f22, 0x28($sp) +/* 3A012C E009E20C F7B40020 */ sdc1 $f20, 0x20($sp) +/* 3A0130 E009E210 8E430000 */ lw $v1, ($s2) +/* 3A0134 E009E214 8E45000C */ lw $a1, 0xc($s2) +/* 3A0138 E009E218 30620010 */ andi $v0, $v1, 0x10 +/* 3A013C E009E21C 10400005 */ beqz $v0, .LE009E234 +/* 3A0140 E009E220 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3A0144 E009E224 00621024 */ and $v0, $v1, $v0 +/* 3A0148 E009E228 AE420000 */ sw $v0, ($s2) +/* 3A014C E009E22C 2402001E */ addiu $v0, $zero, 0x1e +/* 3A0150 E009E230 ACA20018 */ sw $v0, 0x18($a1) +.LE009E234: +/* 3A0154 E009E234 8CA30018 */ lw $v1, 0x18($a1) +/* 3A0158 E009E238 28620064 */ slti $v0, $v1, 0x64 +/* 3A015C E009E23C 10400002 */ beqz $v0, .LE009E248 +/* 3A0160 E009E240 2462FFFF */ addiu $v0, $v1, -1 +/* 3A0164 E009E244 ACA20018 */ sw $v0, 0x18($a1) +.LE009E248: +/* 3A0168 E009E248 8CA2001C */ lw $v0, 0x1c($a1) +/* 3A016C E009E24C 8CA40018 */ lw $a0, 0x18($a1) +/* 3A0170 E009E250 24430001 */ addiu $v1, $v0, 1 +/* 3A0174 E009E254 04810005 */ bgez $a0, .LE009E26C +/* 3A0178 E009E258 ACA3001C */ sw $v1, 0x1c($a1) +/* 3A017C E009E25C 0C080128 */ jal func_E02004A0 +/* 3A0180 E009E260 0240202D */ daddu $a0, $s2, $zero +/* 3A0184 E009E264 080278EC */ j .LE009E3B0 +/* 3A0188 E009E268 00000000 */ nop +.LE009E26C: +/* 3A018C E009E26C 28620015 */ slti $v0, $v1, 0x15 +/* 3A0190 E009E270 10400003 */ beqz $v0, .LE009E280 +/* 3A0194 E009E274 00031040 */ sll $v0, $v1, 1 +/* 3A0198 E009E278 080278A4 */ j .LE009E290 +/* 3A019C E009E27C 00431021 */ addu $v0, $v0, $v1 +.LE009E280: +/* 3A01A0 E009E280 28820014 */ slti $v0, $a0, 0x14 +/* 3A01A4 E009E284 10400004 */ beqz $v0, .LE009E298 +/* 3A01A8 E009E288 00041040 */ sll $v0, $a0, 1 +/* 3A01AC E009E28C 00441021 */ addu $v0, $v0, $a0 +.LE009E290: +/* 3A01B0 E009E290 00021080 */ sll $v0, $v0, 2 +/* 3A01B4 E009E294 ACA20014 */ sw $v0, 0x14($a1) +.LE009E298: +/* 3A01B8 E009E298 8E420008 */ lw $v0, 8($s2) +/* 3A01BC E009E29C 24110001 */ addiu $s1, $zero, 1 +/* 3A01C0 E009E2A0 0222102A */ slt $v0, $s1, $v0 +/* 3A01C4 E009E2A4 10400042 */ beqz $v0, .LE009E3B0 +/* 3A01C8 E009E2A8 24A50034 */ addiu $a1, $a1, 0x34 +/* 3A01CC E009E2AC 24B00020 */ addiu $s0, $a1, 0x20 +/* 3A01D0 E009E2B0 3C01428C */ lui $at, 0x428c +/* 3A01D4 E009E2B4 4481E000 */ mtc1 $at, $f28 +/* 3A01D8 E009E2B8 3C0142B4 */ lui $at, 0x42b4 +/* 3A01DC E009E2BC 4481D000 */ mtc1 $at, $f26 +/* 3A01E0 E009E2C0 3C014120 */ lui $at, 0x4120 +/* 3A01E4 E009E2C4 4481C000 */ mtc1 $at, $f24 +/* 3A01E8 E009E2C8 3C01437F */ lui $at, 0x437f +/* 3A01EC E009E2CC 4481B000 */ mtc1 $at, $f22 +/* 3A01F0 E009E2D0 3C01E00A */ lui $at, %hi(D_E009EE10) +/* 3A01F4 E009E2D4 D434EE10 */ ldc1 $f20, %lo(D_E009EE10)($at) +.LE009E2D8: +/* 3A01F8 E009E2D8 C60C000C */ lwc1 $f12, 0xc($s0) +/* 3A01FC E009E2DC 461C6301 */ sub.s $f12, $f12, $f28 +/* 3A0200 E009E2E0 461A6302 */ mul.s $f12, $f12, $f26 +/* 3A0204 E009E2E4 00000000 */ nop +/* 3A0208 E009E2E8 0C080144 */ jal func_E0200510 +/* 3A020C E009E2EC 46186303 */ div.s $f12, $f12, $f24 +/* 3A0210 E009E2F0 46160002 */ mul.s $f0, $f0, $f22 +/* 3A0214 E009E2F4 00000000 */ nop +/* 3A0218 E009E2F8 C604000C */ lwc1 $f4, 0xc($s0) +/* 3A021C E009E2FC C6020010 */ lwc1 $f2, 0x10($s0) +/* 3A0220 E009E300 46022100 */ add.s $f4, $f4, $f2 +/* 3A0224 E009E304 3C0142A0 */ lui $at, 0x42a0 +/* 3A0228 E009E308 44811000 */ mtc1 $at, $f2 +/* 3A022C E009E30C E604000C */ swc1 $f4, 0xc($s0) +/* 3A0230 E009E310 4604103C */ c.lt.s $f2, $f4 +/* 3A0234 E009E314 4600018D */ trunc.w.s $f6, $f0 +/* 3A0238 E009E318 E606FFF4 */ swc1 $f6, -0xc($s0) +/* 3A023C E009E31C 4500001F */ bc1f .LE009E39C +/* 3A0240 E009E320 2404000F */ addiu $a0, $zero, 0xf +/* 3A0244 E009E324 3C014270 */ lui $at, 0x4270 +/* 3A0248 E009E328 44810000 */ mtc1 $at, $f0 +/* 3A024C E009E32C 0C080138 */ jal func_E02004E0 +/* 3A0250 E009E330 E600000C */ swc1 $f0, 0xc($s0) +/* 3A0254 E009E334 44820000 */ mtc1 $v0, $f0 +/* 3A0258 E009E338 00000000 */ nop +/* 3A025C E009E33C 46800021 */ cvt.d.w $f0, $f0 +/* 3A0260 E009E340 46340002 */ mul.d $f0, $f0, $f20 +/* 3A0264 E009E344 00000000 */ nop +/* 3A0268 E009E348 3C01E00A */ lui $at, %hi(D_E009EE18) +/* 3A026C E009E34C D422EE18 */ ldc1 $f2, %lo(D_E009EE18)($at) +/* 3A0270 E009E350 46220000 */ add.d $f0, $f0, $f2 +/* 3A0274 E009E354 2404000A */ addiu $a0, $zero, 0xa +/* 3A0278 E009E358 46200020 */ cvt.s.d $f0, $f0 +/* 3A027C E009E35C 0C080138 */ jal func_E02004E0 +/* 3A0280 E009E360 E6000008 */ swc1 $f0, 8($s0) +/* 3A0284 E009E364 44820000 */ mtc1 $v0, $f0 +/* 3A0288 E009E368 00000000 */ nop +/* 3A028C E009E36C 46800021 */ cvt.d.w $f0, $f0 +/* 3A0290 E009E370 46340002 */ mul.d $f0, $f0, $f20 +/* 3A0294 E009E374 00000000 */ nop +/* 3A0298 E009E378 46340000 */ add.d $f0, $f0, $f20 +/* 3A029C E009E37C 24040168 */ addiu $a0, $zero, 0x168 +/* 3A02A0 E009E380 46200020 */ cvt.s.d $f0, $f0 +/* 3A02A4 E009E384 0C080138 */ jal func_E02004E0 +/* 3A02A8 E009E388 E6000010 */ swc1 $f0, 0x10($s0) +/* 3A02AC E009E38C 44820000 */ mtc1 $v0, $f0 +/* 3A02B0 E009E390 00000000 */ nop +/* 3A02B4 E009E394 46800020 */ cvt.s.w $f0, $f0 +/* 3A02B8 E009E398 E6000000 */ swc1 $f0, ($s0) +.LE009E39C: +/* 3A02BC E009E39C 26310001 */ addiu $s1, $s1, 1 +/* 3A02C0 E009E3A0 8E420008 */ lw $v0, 8($s2) +/* 3A02C4 E009E3A4 0222102A */ slt $v0, $s1, $v0 +/* 3A02C8 E009E3A8 1440FFCB */ bnez $v0, .LE009E2D8 +/* 3A02CC E009E3AC 26100034 */ addiu $s0, $s0, 0x34 +.LE009E3B0: +/* 3A02D0 E009E3B0 8FBF001C */ lw $ra, 0x1c($sp) +/* 3A02D4 E009E3B4 8FB20018 */ lw $s2, 0x18($sp) +/* 3A02D8 E009E3B8 8FB10014 */ lw $s1, 0x14($sp) +/* 3A02DC E009E3BC 8FB00010 */ lw $s0, 0x10($sp) +/* 3A02E0 E009E3C0 D7BC0040 */ ldc1 $f28, 0x40($sp) +/* 3A02E4 E009E3C4 D7BA0038 */ ldc1 $f26, 0x38($sp) +/* 3A02E8 E009E3C8 D7B80030 */ ldc1 $f24, 0x30($sp) +/* 3A02EC E009E3CC D7B60028 */ ldc1 $f22, 0x28($sp) +/* 3A02F0 E009E3D0 D7B40020 */ ldc1 $f20, 0x20($sp) +/* 3A02F4 E009E3D4 03E00008 */ jr $ra +/* 3A02F8 E009E3D8 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_39FF20/func_E009E3DC.s b/asm/nonmatchings/code_39FF20/func_E009E3DC.s new file mode 100644 index 0000000000..677c427596 --- /dev/null +++ b/asm/nonmatchings/code_39FF20/func_E009E3DC.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009E3DC +/* 3A02FC E009E3DC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3A0300 E009E3E0 3C02E00A */ lui $v0, %hi(D_E009E424) +/* 3A0304 E009E3E4 2442E424 */ addiu $v0, $v0, %lo(D_E009E424) +/* 3A0308 E009E3E8 AFA2001C */ sw $v0, 0x1c($sp) +/* 3A030C E009E3EC 2402000A */ addiu $v0, $zero, 0xa +/* 3A0310 E009E3F0 AFA20014 */ sw $v0, 0x14($sp) +/* 3A0314 E009E3F4 24020022 */ addiu $v0, $zero, 0x22 +/* 3A0318 E009E3F8 AFA40018 */ sw $a0, 0x18($sp) +/* 3A031C E009E3FC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A0320 E009E400 AFBF0020 */ sw $ra, 0x20($sp) +/* 3A0324 E009E404 0C080120 */ jal func_E0200480 +/* 3A0328 E009E408 AFA20010 */ sw $v0, 0x10($sp) +/* 3A032C E009E40C 8C430000 */ lw $v1, ($v0) +/* 3A0330 E009E410 34630002 */ ori $v1, $v1, 2 +/* 3A0334 E009E414 AC430000 */ sw $v1, ($v0) +/* 3A0338 E009E418 8FBF0020 */ lw $ra, 0x20($sp) +/* 3A033C E009E41C 03E00008 */ jr $ra +/* 3A0340 E009E420 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_39FF20/func_E009E424.s b/asm/nonmatchings/code_39FF20/func_E009E424.s new file mode 100644 index 0000000000..0251e54887 --- /dev/null +++ b/asm/nonmatchings/code_39FF20/func_E009E424.s @@ -0,0 +1,635 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E009E424 +/* 3A0344 E009E424 27BDFED0 */ addiu $sp, $sp, -0x130 +/* 3A0348 E009E428 AFBF0104 */ sw $ra, 0x104($sp) +/* 3A034C E009E42C AFBE0100 */ sw $fp, 0x100($sp) +/* 3A0350 E009E430 AFB700FC */ sw $s7, 0xfc($sp) +/* 3A0354 E009E434 AFB600F8 */ sw $s6, 0xf8($sp) +/* 3A0358 E009E438 AFB500F4 */ sw $s5, 0xf4($sp) +/* 3A035C E009E43C AFB400F0 */ sw $s4, 0xf0($sp) +/* 3A0360 E009E440 AFB300EC */ sw $s3, 0xec($sp) +/* 3A0364 E009E444 AFB200E8 */ sw $s2, 0xe8($sp) +/* 3A0368 E009E448 AFB100E4 */ sw $s1, 0xe4($sp) +/* 3A036C E009E44C AFB000E0 */ sw $s0, 0xe0($sp) +/* 3A0370 E009E450 F7BC0128 */ sdc1 $f28, 0x128($sp) +/* 3A0374 E009E454 F7BA0120 */ sdc1 $f26, 0x120($sp) +/* 3A0378 E009E458 F7B80118 */ sdc1 $f24, 0x118($sp) +/* 3A037C E009E45C F7B60110 */ sdc1 $f22, 0x110($sp) +/* 3A0380 E009E460 F7B40108 */ sdc1 $f20, 0x108($sp) +/* 3A0384 E009E464 AFA40130 */ sw $a0, 0x130($sp) +/* 3A0388 E009E468 8C94000C */ lw $s4, 0xc($a0) +/* 3A038C E009E46C 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3A0390 E009E470 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3A0394 E009E474 3C04800B */ lui $a0, %hi(gCameras) +/* 3A0398 E009E478 24841D80 */ addiu $a0, $a0, %lo(gCameras) +/* 3A039C E009E47C 00031080 */ sll $v0, $v1, 2 +/* 3A03A0 E009E480 00431021 */ addu $v0, $v0, $v1 +/* 3A03A4 E009E484 00021080 */ sll $v0, $v0, 2 +/* 3A03A8 E009E488 00431023 */ subu $v0, $v0, $v1 +/* 3A03AC E009E48C 000218C0 */ sll $v1, $v0, 3 +/* 3A03B0 E009E490 00431021 */ addu $v0, $v0, $v1 +/* 3A03B4 E009E494 8E8D0014 */ lw $t5, 0x14($s4) +/* 3A03B8 E009E498 000210C0 */ sll $v0, $v0, 3 +/* 3A03BC E009E49C AFAD00DC */ sw $t5, 0xdc($sp) +/* 3A03C0 E009E4A0 8E8D001C */ lw $t5, 0x1c($s4) +/* 3A03C4 E009E4A4 0044B021 */ addu $s6, $v0, $a0 +/* 3A03C8 E009E4A8 31B20001 */ andi $s2, $t5, 1 +/* 3A03CC E009E4AC 12400009 */ beqz $s2, .LE009E4D4 +/* 3A03D0 E009E4B0 AFAD00D8 */ sw $t5, 0xd8($sp) +/* 3A03D4 E009E4B4 3C01E00A */ lui $at, %hi(D_E009EE20) +/* 3A03D8 E009E4B8 D422EE20 */ ldc1 $f2, %lo(D_E009EE20)($at) +/* 3A03DC E009E4BC C7A000DC */ lwc1 $f0, 0xdc($sp) +/* 3A03E0 E009E4C0 46800021 */ cvt.d.w $f0, $f0 +/* 3A03E4 E009E4C4 46220002 */ mul.d $f0, $f0, $f2 +/* 3A03E8 E009E4C8 00000000 */ nop +/* 3A03EC E009E4CC 4620010D */ trunc.w.d $f4, $f0 +/* 3A03F0 E009E4D0 E7A400DC */ swc1 $f4, 0xdc($sp) +.LE009E4D4: +/* 3A03F4 E009E4D4 3C06DB06 */ lui $a2, 0xdb06 +/* 3A03F8 E009E4D8 34C60024 */ ori $a2, $a2, 0x24 +/* 3A03FC E009E4DC 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0400 E009E4E0 3C100001 */ lui $s0, 1 +/* 3A0404 E009E4E4 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 3A0408 E009E4E8 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 3A040C E009E4EC 8E250000 */ lw $a1, ($s1) +/* 3A0410 E009E4F0 3C02E700 */ lui $v0, 0xe700 +/* 3A0414 E009E4F4 00A0182D */ daddu $v1, $a1, $zero +/* 3A0418 E009E4F8 24A50008 */ addiu $a1, $a1, 8 +/* 3A041C E009E4FC AE250000 */ sw $a1, ($s1) +/* 3A0420 E009E500 AC620000 */ sw $v0, ($v1) +/* 3A0424 E009E504 AC600004 */ sw $zero, 4($v1) +/* 3A0428 E009E508 ACA60000 */ sw $a2, ($a1) +/* 3A042C E009E50C 8FAD0130 */ lw $t5, 0x130($sp) +/* 3A0430 E009E510 36101630 */ ori $s0, $s0, 0x1630 +/* 3A0434 E009E514 8DA30010 */ lw $v1, 0x10($t5) +/* 3A0438 E009E518 24A20008 */ addiu $v0, $a1, 8 +/* 3A043C E009E51C AE220000 */ sw $v0, ($s1) +/* 3A0440 E009E520 8C62001C */ lw $v0, 0x1c($v1) +/* 3A0444 E009E524 3C038000 */ lui $v1, 0x8000 +/* 3A0448 E009E528 00431021 */ addu $v0, $v0, $v1 +/* 3A044C E009E52C ACA20004 */ sw $v0, 4($a1) +/* 3A0450 E009E530 8E850008 */ lw $a1, 8($s4) +/* 3A0454 E009E534 8E86000C */ lw $a2, 0xc($s4) +/* 3A0458 E009E538 8E870010 */ lw $a3, 0x10($s4) +/* 3A045C E009E53C 0C080108 */ jal func_E0200420 +/* 3A0460 E009E540 24170001 */ addiu $s7, $zero, 1 +/* 3A0464 E009E544 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0468 E009E548 3C138007 */ lui $s3, %hi(D_800741F0) +/* 3A046C E009E54C 267341F0 */ addiu $s3, $s3, %lo(D_800741F0) +/* 3A0470 E009E550 3C15800A */ lui $s5, %hi(D_8009A674) +/* 3A0474 E009E554 26B5A674 */ addiu $s5, $s5, %lo(D_8009A674) +/* 3A0478 E009E558 96650000 */ lhu $a1, ($s3) +/* 3A047C E009E55C 8EA20000 */ lw $v0, ($s5) +/* 3A0480 E009E560 00052980 */ sll $a1, $a1, 6 +/* 3A0484 E009E564 00B02821 */ addu $a1, $a1, $s0 +/* 3A0488 E009E568 0C080118 */ jal func_E0200460 +/* 3A048C E009E56C 00452821 */ addu $a1, $v0, $a1 +/* 3A0490 E009E570 3C03DA38 */ lui $v1, 0xda38 +/* 3A0494 E009E574 34630002 */ ori $v1, $v1, 2 +/* 3A0498 E009E578 3C0ADA38 */ lui $t2, 0xda38 +/* 3A049C E009E57C 01575025 */ or $t2, $t2, $s7 +/* 3A04A0 E009E580 3C0BFF40 */ lui $t3, 0xff40 +/* 3A04A4 E009E584 356B4000 */ ori $t3, $t3, 0x4000 +/* 3A04A8 E009E588 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A04AC E009E58C 02F21004 */ sllv $v0, $s2, $s7 +/* 3A04B0 E009E590 8FAD00D8 */ lw $t5, 0xd8($sp) +/* 3A04B4 E009E594 4480A000 */ mtc1 $zero, $f20 +/* 3A04B8 E009E598 8E280000 */ lw $t0, ($s1) +/* 3A04BC E009E59C 3C013F80 */ lui $at, 0x3f80 +/* 3A04C0 E009E5A0 4481C000 */ mtc1 $at, $f24 +/* 3A04C4 E009E5A4 004D1021 */ addu $v0, $v0, $t5 +/* 3A04C8 E009E5A8 44822000 */ mtc1 $v0, $f4 +/* 3A04CC E009E5AC 00000000 */ nop +/* 3A04D0 E009E5B0 46802120 */ cvt.s.w $f4, $f4 +/* 3A04D4 E009E5B4 0100482D */ daddu $t1, $t0, $zero +/* 3A04D8 E009E5B8 44052000 */ mfc1 $a1, $f4 +/* 3A04DC E009E5BC 4406A000 */ mfc1 $a2, $f20 +/* 3A04E0 E009E5C0 96620000 */ lhu $v0, ($s3) +/* 3A04E4 E009E5C4 25080008 */ addiu $t0, $t0, 8 +/* 3A04E8 E009E5C8 AE280000 */ sw $t0, ($s1) +/* 3A04EC E009E5CC AD230000 */ sw $v1, ($t1) +/* 3A04F0 E009E5D0 00571821 */ addu $v1, $v0, $s7 +/* 3A04F4 E009E5D4 3042FFFF */ andi $v0, $v0, 0xffff +/* 3A04F8 E009E5D8 00021180 */ sll $v0, $v0, 6 +/* 3A04FC E009E5DC A6630000 */ sh $v1, ($s3) +/* 3A0500 E009E5E0 8EA30000 */ lw $v1, ($s5) +/* 3A0504 E009E5E4 00501021 */ addu $v0, $v0, $s0 +/* 3A0508 E009E5E8 00621821 */ addu $v1, $v1, $v0 +/* 3A050C E009E5EC 25020008 */ addiu $v0, $t0, 8 +/* 3A0510 E009E5F0 AD230004 */ sw $v1, 4($t1) +/* 3A0514 E009E5F4 AE220000 */ sw $v0, ($s1) +/* 3A0518 E009E5F8 25020010 */ addiu $v0, $t0, 0x10 +/* 3A051C E009E5FC AD0A0000 */ sw $t2, ($t0) +/* 3A0520 E009E600 AE220000 */ sw $v0, ($s1) +/* 3A0524 E009E604 8EC30204 */ lw $v1, 0x204($s6) +/* 3A0528 E009E608 3C02FA00 */ lui $v0, 0xfa00 +/* 3A052C E009E60C AD020008 */ sw $v0, 8($t0) +/* 3A0530 E009E610 8FAD00DC */ lw $t5, 0xdc($sp) +/* 3A0534 E009E614 4407A000 */ mfc1 $a3, $f20 +/* 3A0538 E009E618 31A200FF */ andi $v0, $t5, 0xff +/* 3A053C E009E61C 004B1025 */ or $v0, $v0, $t3 +/* 3A0540 E009E620 AD02000C */ sw $v0, 0xc($t0) +/* 3A0544 E009E624 AD030004 */ sw $v1, 4($t0) +/* 3A0548 E009E628 0C080104 */ jal func_E0200410 +/* 3A054C E009E62C E7B80010 */ swc1 $f24, 0x10($sp) +/* 3A0550 E009E630 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0554 E009E634 96650000 */ lhu $a1, ($s3) +/* 3A0558 E009E638 8EA20000 */ lw $v0, ($s5) +/* 3A055C E009E63C 00052980 */ sll $a1, $a1, 6 +/* 3A0560 E009E640 00B02821 */ addu $a1, $a1, $s0 +/* 3A0564 E009E644 0C080118 */ jal func_E0200460 +/* 3A0568 E009E648 00452821 */ addu $a1, $v0, $a1 +/* 3A056C E009E64C 3C06D838 */ lui $a2, 0xd838 +/* 3A0570 E009E650 8E240000 */ lw $a0, ($s1) +/* 3A0574 E009E654 34C60002 */ ori $a2, $a2, 2 +/* 3A0578 E009E658 0080282D */ daddu $a1, $a0, $zero +/* 3A057C E009E65C 24840008 */ addiu $a0, $a0, 8 +/* 3A0580 E009E660 AE240000 */ sw $a0, ($s1) +/* 3A0584 E009E664 96620000 */ lhu $v0, ($s3) +/* 3A0588 E009E668 3C03DA38 */ lui $v1, 0xda38 +/* 3A058C E009E66C ACA30000 */ sw $v1, ($a1) +/* 3A0590 E009E670 00571821 */ addu $v1, $v0, $s7 +/* 3A0594 E009E674 3042FFFF */ andi $v0, $v0, 0xffff +/* 3A0598 E009E678 00021180 */ sll $v0, $v0, 6 +/* 3A059C E009E67C A6630000 */ sh $v1, ($s3) +/* 3A05A0 E009E680 8EA30000 */ lw $v1, ($s5) +/* 3A05A4 E009E684 00501021 */ addu $v0, $v0, $s0 +/* 3A05A8 E009E688 00621821 */ addu $v1, $v1, $v0 +/* 3A05AC E009E68C 24820008 */ addiu $v0, $a0, 8 +/* 3A05B0 E009E690 ACA30004 */ sw $v1, 4($a1) +/* 3A05B4 E009E694 3C03DE00 */ lui $v1, 0xde00 +/* 3A05B8 E009E698 AE220000 */ sw $v0, ($s1) +/* 3A05BC E009E69C 3C020900 */ lui $v0, 0x900 +/* 3A05C0 E009E6A0 244212A8 */ addiu $v0, $v0, 0x12a8 +/* 3A05C4 E009E6A4 AC820004 */ sw $v0, 4($a0) +/* 3A05C8 E009E6A8 24820010 */ addiu $v0, $a0, 0x10 +/* 3A05CC E009E6AC AC830000 */ sw $v1, ($a0) +/* 3A05D0 E009E6B0 AE220000 */ sw $v0, ($s1) +/* 3A05D4 E009E6B4 3C020900 */ lui $v0, 0x900 +/* 3A05D8 E009E6B8 24421510 */ addiu $v0, $v0, 0x1510 +/* 3A05DC E009E6BC AC82000C */ sw $v0, 0xc($a0) +/* 3A05E0 E009E6C0 24820018 */ addiu $v0, $a0, 0x18 +/* 3A05E4 E009E6C4 AC830008 */ sw $v1, 8($a0) +/* 3A05E8 E009E6C8 AE220000 */ sw $v0, ($s1) +/* 3A05EC E009E6CC 24020040 */ addiu $v0, $zero, 0x40 +/* 3A05F0 E009E6D0 AC820014 */ sw $v0, 0x14($a0) +/* 3A05F4 E009E6D4 3C020900 */ lui $v0, 0x900 +/* 3A05F8 E009E6D8 24421200 */ addiu $v0, $v0, 0x1200 +/* 3A05FC E009E6DC AC860010 */ sw $a2, 0x10($a0) +/* 3A0600 E009E6E0 AC830018 */ sw $v1, 0x18($a0) +/* 3A0604 E009E6E4 AC82001C */ sw $v0, 0x1c($a0) +/* 3A0608 E009E6E8 8FAD0130 */ lw $t5, 0x130($sp) +/* 3A060C E009E6EC 26940034 */ addiu $s4, $s4, 0x34 +/* 3A0610 E009E6F0 8DA20008 */ lw $v0, 8($t5) +/* 3A0614 E009E6F4 24840020 */ addiu $a0, $a0, 0x20 +/* 3A0618 E009E6F8 02E2102A */ slt $v0, $s7, $v0 +/* 3A061C E009E6FC 104001A0 */ beqz $v0, .LE009ED80 +/* 3A0620 E009E700 AE240000 */ sw $a0, ($s1) +/* 3A0624 E009E704 4600A586 */ mov.s $f22, $f20 +/* 3A0628 E009E708 0220902D */ daddu $s2, $s1, $zero +/* 3A062C E009E70C 27B00058 */ addiu $s0, $sp, 0x58 +/* 3A0630 E009E710 02A0B02D */ daddu $s6, $s5, $zero +/* 3A0634 E009E714 0260A82D */ daddu $s5, $s3, $zero +/* 3A0638 E009E718 3C130001 */ lui $s3, 1 +/* 3A063C E009E71C 36731630 */ ori $s3, $s3, 0x1630 +/* 3A0640 E009E720 3C1ED838 */ lui $fp, 0xd838 +/* 3A0644 E009E724 37DE0002 */ ori $fp, $fp, 2 +/* 3A0648 E009E728 2691002C */ addiu $s1, $s4, 0x2c +/* 3A064C E009E72C 2414000A */ addiu $s4, $zero, 0xa +/* 3A0650 E009E730 3C014270 */ lui $at, 0x4270 +/* 3A0654 E009E734 4481E000 */ mtc1 $at, $f28 +/* 3A0658 E009E738 3C014000 */ lui $at, 0x4000 +/* 3A065C E009E73C 4481D800 */ mtc1 $at, $f27 +/* 3A0660 E009E740 4480D000 */ mtc1 $zero, $f26 +.LE009E744: +/* 3A0664 E009E744 C634FFFC */ lwc1 $f20, -4($s1) +/* 3A0668 E009E748 4616A032 */ c.eq.s $f20, $f22 +/* 3A066C E009E74C 00000000 */ nop +/* 3A0670 E009E750 45030185 */ bc1tl .LE009ED68 +/* 3A0674 E009E754 2694000A */ addiu $s4, $s4, 0xa +/* 3A0678 E009E758 3C0AFCFF */ lui $t2, 0xfcff +/* 3A067C E009E75C 354A97FF */ ori $t2, $t2, 0x97ff +/* 3A0680 E009E760 3C09FF2D */ lui $t1, 0xff2d +/* 3A0684 E009E764 3529FEFF */ ori $t1, $t1, 0xfeff +/* 3A0688 E009E768 8E480000 */ lw $t0, ($s2) +/* 3A068C E009E76C 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0690 E009E770 0100282D */ daddu $a1, $t0, $zero +/* 3A0694 E009E774 3C0DFA00 */ lui $t5, 0xfa00 +/* 3A0698 E009E778 ACAD0000 */ sw $t5, ($a1) +/* 3A069C E009E77C 8E22FFE8 */ lw $v0, -0x18($s1) +/* 3A06A0 E009E780 8FAD00DC */ lw $t5, 0xdc($sp) +/* 3A06A4 E009E784 2403FF00 */ addiu $v1, $zero, -0x100 +/* 3A06A8 E009E788 004D0018 */ mult $v0, $t5 +/* 3A06AC E009E78C 4406B000 */ mfc1 $a2, $f22 +/* 3A06B0 E009E790 4407B000 */ mfc1 $a3, $f22 +/* 3A06B4 E009E794 25080008 */ addiu $t0, $t0, 8 +/* 3A06B8 E009E798 AE480000 */ sw $t0, ($s2) +/* 3A06BC E009E79C 00001012 */ mflo $v0 +/* 3A06C0 E009E7A0 00021203 */ sra $v0, $v0, 8 +/* 3A06C4 E009E7A4 00431025 */ or $v0, $v0, $v1 +/* 3A06C8 E009E7A8 ACA20004 */ sw $v0, 4($a1) +/* 3A06CC E009E7AC AD0A0000 */ sw $t2, ($t0) +/* 3A06D0 E009E7B0 AD090004 */ sw $t1, 4($t0) +/* 3A06D4 E009E7B4 E7B80010 */ swc1 $f24, 0x10($sp) +/* 3A06D8 E009E7B8 8E25FFF4 */ lw $a1, -0xc($s1) +/* 3A06DC E009E7BC 25080008 */ addiu $t0, $t0, 8 +/* 3A06E0 E009E7C0 0C080104 */ jal func_E0200410 +/* 3A06E4 E009E7C4 AE480000 */ sw $t0, ($s2) +/* 3A06E8 E009E7C8 8E250000 */ lw $a1, ($s1) +/* 3A06EC E009E7CC 4406B000 */ mfc1 $a2, $f22 +/* 3A06F0 E009E7D0 4407B000 */ mfc1 $a3, $f22 +/* 3A06F4 E009E7D4 0C080108 */ jal func_E0200420 +/* 3A06F8 E009E7D8 0200202D */ daddu $a0, $s0, $zero +/* 3A06FC E009E7DC 0200202D */ daddu $a0, $s0, $zero +/* 3A0700 E009E7E0 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0704 E009E7E4 0C080114 */ jal func_E0200450 +/* 3A0708 E009E7E8 00A0302D */ daddu $a2, $a1, $zero +/* 3A070C E009E7EC 4405A000 */ mfc1 $a1, $f20 +/* 3A0710 E009E7F0 4406A000 */ mfc1 $a2, $f20 +/* 3A0714 E009E7F4 4407A000 */ mfc1 $a3, $f20 +/* 3A0718 E009E7F8 0C080110 */ jal func_E0200440 +/* 3A071C E009E7FC 0200202D */ daddu $a0, $s0, $zero +/* 3A0720 E009E800 0200202D */ daddu $a0, $s0, $zero +/* 3A0724 E009E804 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0728 E009E808 0C080114 */ jal func_E0200450 +/* 3A072C E009E80C 00A0302D */ daddu $a2, $a1, $zero +/* 3A0730 E009E810 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0734 E009E814 96A50000 */ lhu $a1, ($s5) +/* 3A0738 E009E818 8EC20000 */ lw $v0, ($s6) +/* 3A073C E009E81C 00052980 */ sll $a1, $a1, 6 +/* 3A0740 E009E820 00B32821 */ addu $a1, $a1, $s3 +/* 3A0744 E009E824 0C080118 */ jal func_E0200460 +/* 3A0748 E009E828 00452821 */ addu $a1, $v0, $a1 +/* 3A074C E009E82C 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0750 E009E830 8E480000 */ lw $t0, ($s2) +/* 3A0754 E009E834 4406B000 */ mfc1 $a2, $f22 +/* 3A0758 E009E838 4407B000 */ mfc1 $a3, $f22 +/* 3A075C E009E83C 96A30000 */ lhu $v1, ($s5) +/* 3A0760 E009E840 0100282D */ daddu $a1, $t0, $zero +/* 3A0764 E009E844 25080008 */ addiu $t0, $t0, 8 +/* 3A0768 E009E848 3C0DDA38 */ lui $t5, 0xda38 +/* 3A076C E009E84C 24620001 */ addiu $v0, $v1, 1 +/* 3A0770 E009E850 3063FFFF */ andi $v1, $v1, 0xffff +/* 3A0774 E009E854 00031980 */ sll $v1, $v1, 6 +/* 3A0778 E009E858 AE480000 */ sw $t0, ($s2) +/* 3A077C E009E85C ACAD0000 */ sw $t5, ($a1) +/* 3A0780 E009E860 A6A20000 */ sh $v0, ($s5) +/* 3A0784 E009E864 8EC20000 */ lw $v0, ($s6) +/* 3A0788 E009E868 00731821 */ addu $v1, $v1, $s3 +/* 3A078C E009E86C 00431021 */ addu $v0, $v0, $v1 +/* 3A0790 E009E870 ACA20004 */ sw $v0, 4($a1) +/* 3A0794 E009E874 3C0DDE00 */ lui $t5, 0xde00 +/* 3A0798 E009E878 25020008 */ addiu $v0, $t0, 8 +/* 3A079C E009E87C AD0D0000 */ sw $t5, ($t0) +/* 3A07A0 E009E880 3C03E00A */ lui $v1, %hi(D_E009EDFC) +/* 3A07A4 E009E884 8C63EDFC */ lw $v1, %lo(D_E009EDFC)($v1) +/* 3A07A8 E009E888 240D0040 */ addiu $t5, $zero, 0x40 +/* 3A07AC E009E88C AE420000 */ sw $v0, ($s2) +/* 3A07B0 E009E890 AD1E0008 */ sw $fp, 8($t0) +/* 3A07B4 E009E894 AD0D000C */ sw $t5, 0xc($t0) +/* 3A07B8 E009E898 AD030004 */ sw $v1, 4($t0) +/* 3A07BC E009E89C E7B80010 */ swc1 $f24, 0x10($sp) +/* 3A07C0 E009E8A0 8E25FFF4 */ lw $a1, -0xc($s1) +/* 3A07C4 E009E8A4 25080010 */ addiu $t0, $t0, 0x10 +/* 3A07C8 E009E8A8 0C080104 */ jal func_E0200410 +/* 3A07CC E009E8AC AE480000 */ sw $t0, ($s2) +/* 3A07D0 E009E8B0 C6220000 */ lwc1 $f2, ($s1) +/* 3A07D4 E009E8B4 3C0140A0 */ lui $at, 0x40a0 +/* 3A07D8 E009E8B8 44810000 */ mtc1 $at, $f0 +/* 3A07DC E009E8BC 00000000 */ nop +/* 3A07E0 E009E8C0 46001080 */ add.s $f2, $f2, $f0 +/* 3A07E4 E009E8C4 4406B000 */ mfc1 $a2, $f22 +/* 3A07E8 E009E8C8 4407B000 */ mfc1 $a3, $f22 +/* 3A07EC E009E8CC 44051000 */ mfc1 $a1, $f2 +/* 3A07F0 E009E8D0 0C080108 */ jal func_E0200420 +/* 3A07F4 E009E8D4 0200202D */ daddu $a0, $s0, $zero +/* 3A07F8 E009E8D8 0200202D */ daddu $a0, $s0, $zero +/* 3A07FC E009E8DC 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0800 E009E8E0 0C080114 */ jal func_E0200450 +/* 3A0804 E009E8E4 00A0302D */ daddu $a2, $a1, $zero +/* 3A0808 E009E8E8 3C01E00A */ lui $at, %hi(D_E009EE28) +/* 3A080C E009E8EC D420EE28 */ ldc1 $f0, %lo(D_E009EE28)($at) +/* 3A0810 E009E8F0 4600A0A1 */ cvt.d.s $f2, $f20 +/* 3A0814 E009E8F4 46220001 */ sub.d $f0, $f0, $f2 +/* 3A0818 E009E8F8 46200020 */ cvt.s.d $f0, $f0 +/* 3A081C E009E8FC 44050000 */ mfc1 $a1, $f0 +/* 3A0820 E009E900 0200202D */ daddu $a0, $s0, $zero +/* 3A0824 E009E904 00A0302D */ daddu $a2, $a1, $zero +/* 3A0828 E009E908 0C080110 */ jal func_E0200440 +/* 3A082C E009E90C 00A0382D */ daddu $a3, $a1, $zero +/* 3A0830 E009E910 0200202D */ daddu $a0, $s0, $zero +/* 3A0834 E009E914 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0838 E009E918 0C080114 */ jal func_E0200450 +/* 3A083C E009E91C 00A0302D */ daddu $a2, $a1, $zero +/* 3A0840 E009E920 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0844 E009E924 96A50000 */ lhu $a1, ($s5) +/* 3A0848 E009E928 8EC20000 */ lw $v0, ($s6) +/* 3A084C E009E92C 00052980 */ sll $a1, $a1, 6 +/* 3A0850 E009E930 00B32821 */ addu $a1, $a1, $s3 +/* 3A0854 E009E934 0C080118 */ jal func_E0200460 +/* 3A0858 E009E938 00452821 */ addu $a1, $v0, $a1 +/* 3A085C E009E93C 3C0CFF00 */ lui $t4, 0xff00 +/* 3A0860 E009E940 358CFF00 */ ori $t4, $t4, 0xff00 +/* 3A0864 E009E944 3C0BFF80 */ lui $t3, 0xff80 +/* 3A0868 E009E948 356BFF00 */ ori $t3, $t3, 0xff00 +/* 3A086C E009E94C 3C0AFC50 */ lui $t2, 0xfc50 +/* 3A0870 E009E950 354A96A1 */ ori $t2, $t2, 0x96a1 +/* 3A0874 E009E954 3C09332D */ lui $t1, 0x332d +/* 3A0878 E009E958 3529FEFF */ ori $t1, $t1, 0xfeff +/* 3A087C E009E95C 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0880 E009E960 8E480000 */ lw $t0, ($s2) +/* 3A0884 E009E964 96A30000 */ lhu $v1, ($s5) +/* 3A0888 E009E968 3C014160 */ lui $at, 0x4160 +/* 3A088C E009E96C 44810000 */ mtc1 $at, $f0 +/* 3A0890 E009E970 0100282D */ daddu $a1, $t0, $zero +/* 3A0894 E009E974 25080008 */ addiu $t0, $t0, 8 +/* 3A0898 E009E978 3C0DDA38 */ lui $t5, 0xda38 +/* 3A089C E009E97C 24620001 */ addiu $v0, $v1, 1 +/* 3A08A0 E009E980 3063FFFF */ andi $v1, $v1, 0xffff +/* 3A08A4 E009E984 00031980 */ sll $v1, $v1, 6 +/* 3A08A8 E009E988 AE480000 */ sw $t0, ($s2) +/* 3A08AC E009E98C ACAD0000 */ sw $t5, ($a1) +/* 3A08B0 E009E990 A6A20000 */ sh $v0, ($s5) +/* 3A08B4 E009E994 8EC20000 */ lw $v0, ($s6) +/* 3A08B8 E009E998 00731821 */ addu $v1, $v1, $s3 +/* 3A08BC E009E99C 00431021 */ addu $v0, $v0, $v1 +/* 3A08C0 E009E9A0 ACA20004 */ sw $v0, 4($a1) +/* 3A08C4 E009E9A4 25020008 */ addiu $v0, $t0, 8 +/* 3A08C8 E009E9A8 3C0DDE00 */ lui $t5, 0xde00 +/* 3A08CC E009E9AC AE420000 */ sw $v0, ($s2) +/* 3A08D0 E009E9B0 25020010 */ addiu $v0, $t0, 0x10 +/* 3A08D4 E009E9B4 AD0D0000 */ sw $t5, ($t0) +/* 3A08D8 E009E9B8 3C03E00A */ lui $v1, %hi(D_E009EDF8) +/* 3A08DC E009E9BC 8C63EDF8 */ lw $v1, %lo(D_E009EDF8)($v1) +/* 3A08E0 E009E9C0 240D0040 */ addiu $t5, $zero, 0x40 +/* 3A08E4 E009E9C4 AE420000 */ sw $v0, ($s2) +/* 3A08E8 E009E9C8 25020018 */ addiu $v0, $t0, 0x18 +/* 3A08EC E009E9CC AD0D000C */ sw $t5, 0xc($t0) +/* 3A08F0 E009E9D0 3C0DFA00 */ lui $t5, 0xfa00 +/* 3A08F4 E009E9D4 AD1E0008 */ sw $fp, 8($t0) +/* 3A08F8 E009E9D8 AE420000 */ sw $v0, ($s2) +/* 3A08FC E009E9DC AD0D0010 */ sw $t5, 0x10($t0) +/* 3A0900 E009E9E0 AD030004 */ sw $v1, 4($t0) +/* 3A0904 E009E9E4 8E22FFE8 */ lw $v0, -0x18($s1) +/* 3A0908 E009E9E8 8FAD00DC */ lw $t5, 0xdc($sp) +/* 3A090C E009E9EC 3C03FB00 */ lui $v1, 0xfb00 +/* 3A0910 E009E9F0 004D0018 */ mult $v0, $t5 +/* 3A0914 E009E9F4 AD030018 */ sw $v1, 0x18($t0) +/* 3A0918 E009E9F8 AD0B001C */ sw $t3, 0x1c($t0) +/* 3A091C E009E9FC AD0A0020 */ sw $t2, 0x20($t0) +/* 3A0920 E009EA00 AD090024 */ sw $t1, 0x24($t0) +/* 3A0924 E009EA04 00001012 */ mflo $v0 +/* 3A0928 E009EA08 00021243 */ sra $v0, $v0, 9 +/* 3A092C E009EA0C 304200FF */ andi $v0, $v0, 0xff +/* 3A0930 E009EA10 004C1025 */ or $v0, $v0, $t4 +/* 3A0934 E009EA14 AD020014 */ sw $v0, 0x14($t0) +/* 3A0938 E009EA18 C622FFF4 */ lwc1 $f2, -0xc($s1) +/* 3A093C E009EA1C 4406B000 */ mfc1 $a2, $f22 +/* 3A0940 E009EA20 46001080 */ add.s $f2, $f2, $f0 +/* 3A0944 E009EA24 4407B000 */ mfc1 $a3, $f22 +/* 3A0948 E009EA28 25020020 */ addiu $v0, $t0, 0x20 +/* 3A094C E009EA2C 44051000 */ mfc1 $a1, $f2 +/* 3A0950 E009EA30 25080028 */ addiu $t0, $t0, 0x28 +/* 3A0954 E009EA34 AE420000 */ sw $v0, ($s2) +/* 3A0958 E009EA38 AE480000 */ sw $t0, ($s2) +/* 3A095C E009EA3C 0C080104 */ jal func_E0200410 +/* 3A0960 E009EA40 E7B80010 */ swc1 $f24, 0x10($sp) +/* 3A0964 E009EA44 3C02B60B */ lui $v0, 0xb60b +/* 3A0968 E009EA48 344260B7 */ ori $v0, $v0, 0x60b7 +/* 3A096C E009EA4C 02820018 */ mult $s4, $v0 +/* 3A0970 E009EA50 00141FC3 */ sra $v1, $s4, 0x1f +/* 3A0974 E009EA54 4406B000 */ mfc1 $a2, $f22 +/* 3A0978 E009EA58 4407C000 */ mfc1 $a3, $f24 +/* 3A097C E009EA5C 8FAD00D8 */ lw $t5, 0xd8($sp) +/* 3A0980 E009EA60 00001010 */ mfhi $v0 +/* 3A0984 E009EA64 00541021 */ addu $v0, $v0, $s4 +/* 3A0988 E009EA68 00021143 */ sra $v0, $v0, 5 +/* 3A098C E009EA6C 00431023 */ subu $v0, $v0, $v1 +/* 3A0990 E009EA70 00021840 */ sll $v1, $v0, 1 +/* 3A0994 E009EA74 00621821 */ addu $v1, $v1, $v0 +/* 3A0998 E009EA78 00031100 */ sll $v0, $v1, 4 +/* 3A099C E009EA7C 00431023 */ subu $v0, $v0, $v1 +/* 3A09A0 E009EA80 02821023 */ subu $v0, $s4, $v0 +/* 3A09A4 E009EA84 004D1021 */ addu $v0, $v0, $t5 +/* 3A09A8 E009EA88 44822000 */ mtc1 $v0, $f4 +/* 3A09AC E009EA8C 00000000 */ nop +/* 3A09B0 E009EA90 46802120 */ cvt.s.w $f4, $f4 +/* 3A09B4 E009EA94 44052000 */ mfc1 $a1, $f4 +/* 3A09B8 E009EA98 0200202D */ daddu $a0, $s0, $zero +/* 3A09BC E009EA9C 0C080104 */ jal func_E0200410 +/* 3A09C0 E009EAA0 E7B60010 */ swc1 $f22, 0x10($sp) +/* 3A09C4 E009EAA4 0200202D */ daddu $a0, $s0, $zero +/* 3A09C8 E009EAA8 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A09CC E009EAAC 0C080114 */ jal func_E0200450 +/* 3A09D0 E009EAB0 00A0302D */ daddu $a2, $a1, $zero +/* 3A09D4 E009EAB4 3C0541A0 */ lui $a1, 0x41a0 +/* 3A09D8 E009EAB8 4406B000 */ mfc1 $a2, $f22 +/* 3A09DC E009EABC 4407B000 */ mfc1 $a3, $f22 +/* 3A09E0 E009EAC0 0C080108 */ jal func_E0200420 +/* 3A09E4 E009EAC4 0200202D */ daddu $a0, $s0, $zero +/* 3A09E8 E009EAC8 0200202D */ daddu $a0, $s0, $zero +/* 3A09EC E009EACC 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A09F0 E009EAD0 0C080114 */ jal func_E0200450 +/* 3A09F4 E009EAD4 00A0302D */ daddu $a2, $a1, $zero +/* 3A09F8 E009EAD8 C6200000 */ lwc1 $f0, ($s1) +/* 3A09FC E009EADC 461C0001 */ sub.s $f0, $f0, $f28 +/* 3A0A00 E009EAE0 3C01E00A */ lui $at, %hi(D_E009EE30) +/* 3A0A04 E009EAE4 D422EE30 */ ldc1 $f2, %lo(D_E009EE30)($at) +/* 3A0A08 E009EAE8 46000021 */ cvt.d.s $f0, $f0 +/* 3A0A0C E009EAEC 46220002 */ mul.d $f0, $f0, $f2 +/* 3A0A10 E009EAF0 00000000 */ nop +/* 3A0A14 E009EAF4 3C013FF0 */ lui $at, 0x3ff0 +/* 3A0A18 E009EAF8 44811800 */ mtc1 $at, $f3 +/* 3A0A1C E009EAFC 44801000 */ mtc1 $zero, $f2 +/* 3A0A20 E009EB00 00000000 */ nop +/* 3A0A24 E009EB04 46220080 */ add.d $f2, $f0, $f2 +/* 3A0A28 E009EB08 4620D001 */ sub.d $f0, $f26, $f0 +/* 3A0A2C E009EB0C 4407C000 */ mfc1 $a3, $f24 +/* 3A0A30 E009EB10 462010A0 */ cvt.s.d $f2, $f2 +/* 3A0A34 E009EB14 46200020 */ cvt.s.d $f0, $f0 +/* 3A0A38 E009EB18 44051000 */ mfc1 $a1, $f2 +/* 3A0A3C E009EB1C 44060000 */ mfc1 $a2, $f0 +/* 3A0A40 E009EB20 0C080110 */ jal func_E0200440 +/* 3A0A44 E009EB24 0200202D */ daddu $a0, $s0, $zero +/* 3A0A48 E009EB28 0200202D */ daddu $a0, $s0, $zero +/* 3A0A4C E009EB2C 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0A50 E009EB30 0C080114 */ jal func_E0200450 +/* 3A0A54 E009EB34 00A0302D */ daddu $a2, $a1, $zero +/* 3A0A58 E009EB38 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0A5C E009EB3C 96A50000 */ lhu $a1, ($s5) +/* 3A0A60 E009EB40 8EC20000 */ lw $v0, ($s6) +/* 3A0A64 E009EB44 00052980 */ sll $a1, $a1, 6 +/* 3A0A68 E009EB48 00B32821 */ addu $a1, $a1, $s3 +/* 3A0A6C E009EB4C 0C080118 */ jal func_E0200460 +/* 3A0A70 E009EB50 00452821 */ addu $a1, $v0, $a1 +/* 3A0A74 E009EB54 3C09FF40 */ lui $t1, 0xff40 +/* 3A0A78 E009EB58 8E480000 */ lw $t0, ($s2) +/* 3A0A7C E009EB5C 4406B000 */ mfc1 $a2, $f22 +/* 3A0A80 E009EB60 96A50000 */ lhu $a1, ($s5) +/* 3A0A84 E009EB64 0100202D */ daddu $a0, $t0, $zero +/* 3A0A88 E009EB68 25080008 */ addiu $t0, $t0, 8 +/* 3A0A8C E009EB6C 3C0DDA38 */ lui $t5, 0xda38 +/* 3A0A90 E009EB70 30A2FFFF */ andi $v0, $a1, 0xffff +/* 3A0A94 E009EB74 00021180 */ sll $v0, $v0, 6 +/* 3A0A98 E009EB78 AC8D0000 */ sw $t5, ($a0) +/* 3A0A9C E009EB7C 8EC30000 */ lw $v1, ($s6) +/* 3A0AA0 E009EB80 00531021 */ addu $v0, $v0, $s3 +/* 3A0AA4 E009EB84 00621821 */ addu $v1, $v1, $v0 +/* 3A0AA8 E009EB88 AC830004 */ sw $v1, 4($a0) +/* 3A0AAC E009EB8C 3C0DDE00 */ lui $t5, 0xde00 +/* 3A0AB0 E009EB90 AD0D0000 */ sw $t5, ($t0) +/* 3A0AB4 E009EB94 3C02E00A */ lui $v0, %hi(D_E009EDF4) +/* 3A0AB8 E009EB98 8C42EDF4 */ lw $v0, %lo(D_E009EDF4)($v0) +/* 3A0ABC E009EB9C 240D0040 */ addiu $t5, $zero, 0x40 +/* 3A0AC0 E009EBA0 AD0D000C */ sw $t5, 0xc($t0) +/* 3A0AC4 E009EBA4 3C0DFA00 */ lui $t5, 0xfa00 +/* 3A0AC8 E009EBA8 AD1E0008 */ sw $fp, 8($t0) +/* 3A0ACC E009EBAC AD0D0010 */ sw $t5, 0x10($t0) +/* 3A0AD0 E009EBB0 AD020004 */ sw $v0, 4($t0) +/* 3A0AD4 E009EBB4 8E22FFE8 */ lw $v0, -0x18($s1) +/* 3A0AD8 E009EBB8 35294000 */ ori $t1, $t1, 0x4000 +/* 3A0ADC E009EBBC AE480000 */ sw $t0, ($s2) +/* 3A0AE0 E009EBC0 8FAD00DC */ lw $t5, 0xdc($sp) +/* 3A0AE4 E009EBC4 3C014208 */ lui $at, 0x4208 +/* 3A0AE8 E009EBC8 44810000 */ mtc1 $at, $f0 +/* 3A0AEC E009EBCC 004D0018 */ mult $v0, $t5 +/* 3A0AF0 E009EBD0 24A50001 */ addiu $a1, $a1, 1 +/* 3A0AF4 E009EBD4 A6A50000 */ sh $a1, ($s5) +/* 3A0AF8 E009EBD8 25020008 */ addiu $v0, $t0, 8 +/* 3A0AFC E009EBDC AE420000 */ sw $v0, ($s2) +/* 3A0B00 E009EBE0 00001812 */ mflo $v1 +/* 3A0B04 E009EBE4 00031203 */ sra $v0, $v1, 8 +/* 3A0B08 E009EBE8 304200FF */ andi $v0, $v0, 0xff +/* 3A0B0C E009EBEC 00491025 */ or $v0, $v0, $t1 +/* 3A0B10 E009EBF0 AD020014 */ sw $v0, 0x14($t0) +/* 3A0B14 E009EBF4 C622FFF4 */ lwc1 $f2, -0xc($s1) +/* 3A0B18 E009EBF8 25020010 */ addiu $v0, $t0, 0x10 +/* 3A0B1C E009EBFC 46001080 */ add.s $f2, $f2, $f0 +/* 3A0B20 E009EC00 AE420000 */ sw $v0, ($s2) +/* 3A0B24 E009EC04 C7A000D8 */ lwc1 $f0, 0xd8($sp) +/* 3A0B28 E009EC08 46800020 */ cvt.s.w $f0, $f0 +/* 3A0B2C E009EC0C 46001080 */ add.s $f2, $f2, $f0 +/* 3A0B30 E009EC10 4407B000 */ mfc1 $a3, $f22 +/* 3A0B34 E009EC14 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0B38 E009EC18 44051000 */ mfc1 $a1, $f2 +/* 3A0B3C E009EC1C 25080018 */ addiu $t0, $t0, 0x18 +/* 3A0B40 E009EC20 AE480000 */ sw $t0, ($s2) +/* 3A0B44 E009EC24 0C080104 */ jal func_E0200410 +/* 3A0B48 E009EC28 E7B80010 */ swc1 $f24, 0x10($sp) +/* 3A0B4C E009EC2C 001710C0 */ sll $v0, $s7, 3 +/* 3A0B50 E009EC30 00571021 */ addu $v0, $v0, $s7 +/* 3A0B54 E009EC34 00021080 */ sll $v0, $v0, 2 +/* 3A0B58 E009EC38 00571023 */ subu $v0, $v0, $s7 +/* 3A0B5C E009EC3C 44822000 */ mtc1 $v0, $f4 +/* 3A0B60 E009EC40 00000000 */ nop +/* 3A0B64 E009EC44 46802120 */ cvt.s.w $f4, $f4 +/* 3A0B68 E009EC48 4406B000 */ mfc1 $a2, $f22 +/* 3A0B6C E009EC4C 4407C000 */ mfc1 $a3, $f24 +/* 3A0B70 E009EC50 44052000 */ mfc1 $a1, $f4 +/* 3A0B74 E009EC54 0200202D */ daddu $a0, $s0, $zero +/* 3A0B78 E009EC58 0C080104 */ jal func_E0200410 +/* 3A0B7C E009EC5C E7B60010 */ swc1 $f22, 0x10($sp) +/* 3A0B80 E009EC60 0200202D */ daddu $a0, $s0, $zero +/* 3A0B84 E009EC64 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0B88 E009EC68 0C080114 */ jal func_E0200450 +/* 3A0B8C E009EC6C 00A0302D */ daddu $a2, $a1, $zero +/* 3A0B90 E009EC70 3C054170 */ lui $a1, 0x4170 +/* 3A0B94 E009EC74 4406B000 */ mfc1 $a2, $f22 +/* 3A0B98 E009EC78 4407B000 */ mfc1 $a3, $f22 +/* 3A0B9C E009EC7C 0C080108 */ jal func_E0200420 +/* 3A0BA0 E009EC80 0200202D */ daddu $a0, $s0, $zero +/* 3A0BA4 E009EC84 0200202D */ daddu $a0, $s0, $zero +/* 3A0BA8 E009EC88 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0BAC E009EC8C 0C080114 */ jal func_E0200450 +/* 3A0BB0 E009EC90 00A0302D */ daddu $a2, $a1, $zero +/* 3A0BB4 E009EC94 C6200000 */ lwc1 $f0, ($s1) +/* 3A0BB8 E009EC98 461C0001 */ sub.s $f0, $f0, $f28 +/* 3A0BBC E009EC9C 3C01E00A */ lui $at, %hi(D_E009EE38) +/* 3A0BC0 E009ECA0 D422EE38 */ ldc1 $f2, %lo(D_E009EE38)($at) +/* 3A0BC4 E009ECA4 46000021 */ cvt.d.s $f0, $f0 +/* 3A0BC8 E009ECA8 46220002 */ mul.d $f0, $f0, $f2 +/* 3A0BCC E009ECAC 00000000 */ nop +/* 3A0BD0 E009ECB0 463A0000 */ add.d $f0, $f0, $f26 +/* 3A0BD4 E009ECB4 4406C000 */ mfc1 $a2, $f24 +/* 3A0BD8 E009ECB8 4407C000 */ mfc1 $a3, $f24 +/* 3A0BDC E009ECBC 46200020 */ cvt.s.d $f0, $f0 +/* 3A0BE0 E009ECC0 44050000 */ mfc1 $a1, $f0 +/* 3A0BE4 E009ECC4 0C080110 */ jal func_E0200440 +/* 3A0BE8 E009ECC8 0200202D */ daddu $a0, $s0, $zero +/* 3A0BEC E009ECCC 0200202D */ daddu $a0, $s0, $zero +/* 3A0BF0 E009ECD0 27A50018 */ addiu $a1, $sp, 0x18 +/* 3A0BF4 E009ECD4 0C080114 */ jal func_E0200450 +/* 3A0BF8 E009ECD8 00A0302D */ daddu $a2, $a1, $zero +/* 3A0BFC E009ECDC 27A40018 */ addiu $a0, $sp, 0x18 +/* 3A0C00 E009ECE0 96A50000 */ lhu $a1, ($s5) +/* 3A0C04 E009ECE4 8EC20000 */ lw $v0, ($s6) +/* 3A0C08 E009ECE8 00052980 */ sll $a1, $a1, 6 +/* 3A0C0C E009ECEC 00B32821 */ addu $a1, $a1, $s3 +/* 3A0C10 E009ECF0 0C080118 */ jal func_E0200460 +/* 3A0C14 E009ECF4 00452821 */ addu $a1, $v0, $a1 +/* 3A0C18 E009ECF8 8E440000 */ lw $a0, ($s2) +/* 3A0C1C E009ECFC 96A30000 */ lhu $v1, ($s5) +/* 3A0C20 E009ED00 0080282D */ daddu $a1, $a0, $zero +/* 3A0C24 E009ED04 24840008 */ addiu $a0, $a0, 8 +/* 3A0C28 E009ED08 3C0DDA38 */ lui $t5, 0xda38 +/* 3A0C2C E009ED0C 24620001 */ addiu $v0, $v1, 1 +/* 3A0C30 E009ED10 3063FFFF */ andi $v1, $v1, 0xffff +/* 3A0C34 E009ED14 00031980 */ sll $v1, $v1, 6 +/* 3A0C38 E009ED18 AE440000 */ sw $a0, ($s2) +/* 3A0C3C E009ED1C ACAD0000 */ sw $t5, ($a1) +/* 3A0C40 E009ED20 A6A20000 */ sh $v0, ($s5) +/* 3A0C44 E009ED24 8EC20000 */ lw $v0, ($s6) +/* 3A0C48 E009ED28 00731821 */ addu $v1, $v1, $s3 +/* 3A0C4C E009ED2C 00431021 */ addu $v0, $v0, $v1 +/* 3A0C50 E009ED30 ACA20004 */ sw $v0, 4($a1) +/* 3A0C54 E009ED34 24820008 */ addiu $v0, $a0, 8 +/* 3A0C58 E009ED38 3C0DDE00 */ lui $t5, 0xde00 +/* 3A0C5C E009ED3C AE420000 */ sw $v0, ($s2) +/* 3A0C60 E009ED40 24820010 */ addiu $v0, $a0, 0x10 +/* 3A0C64 E009ED44 AC8D0000 */ sw $t5, ($a0) +/* 3A0C68 E009ED48 3C03E00A */ lui $v1, %hi(D_E009EDF0) +/* 3A0C6C E009ED4C 8C63EDF0 */ lw $v1, %lo(D_E009EDF0)($v1) +/* 3A0C70 E009ED50 240D0040 */ addiu $t5, $zero, 0x40 +/* 3A0C74 E009ED54 AE420000 */ sw $v0, ($s2) +/* 3A0C78 E009ED58 AC9E0008 */ sw $fp, 8($a0) +/* 3A0C7C E009ED5C AC8D000C */ sw $t5, 0xc($a0) +/* 3A0C80 E009ED60 AC830004 */ sw $v1, 4($a0) +/* 3A0C84 E009ED64 2694000A */ addiu $s4, $s4, 0xa +.LE009ED68: +/* 3A0C88 E009ED68 8FAD0130 */ lw $t5, 0x130($sp) +/* 3A0C8C E009ED6C 26F70001 */ addiu $s7, $s7, 1 +/* 3A0C90 E009ED70 8DA20008 */ lw $v0, 8($t5) +/* 3A0C94 E009ED74 02E2102A */ slt $v0, $s7, $v0 +/* 3A0C98 E009ED78 1440FE72 */ bnez $v0, .LE009E744 +/* 3A0C9C E009ED7C 26310034 */ addiu $s1, $s1, 0x34 +.LE009ED80: +/* 3A0CA0 E009ED80 3C05D838 */ lui $a1, 0xd838 +/* 3A0CA4 E009ED84 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3A0CA8 E009ED88 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3A0CAC E009ED8C 8C620000 */ lw $v0, ($v1) +/* 3A0CB0 E009ED90 34A50002 */ ori $a1, $a1, 2 +/* 3A0CB4 E009ED94 0040202D */ daddu $a0, $v0, $zero +/* 3A0CB8 E009ED98 24420008 */ addiu $v0, $v0, 8 +/* 3A0CBC E009ED9C AC620000 */ sw $v0, ($v1) +/* 3A0CC0 E009EDA0 24020040 */ addiu $v0, $zero, 0x40 +/* 3A0CC4 E009EDA4 AC850000 */ sw $a1, ($a0) +/* 3A0CC8 E009EDA8 AC820004 */ sw $v0, 4($a0) +/* 3A0CCC E009EDAC 8FBF0104 */ lw $ra, 0x104($sp) +/* 3A0CD0 E009EDB0 8FBE0100 */ lw $fp, 0x100($sp) +/* 3A0CD4 E009EDB4 8FB700FC */ lw $s7, 0xfc($sp) +/* 3A0CD8 E009EDB8 8FB600F8 */ lw $s6, 0xf8($sp) +/* 3A0CDC E009EDBC 8FB500F4 */ lw $s5, 0xf4($sp) +/* 3A0CE0 E009EDC0 8FB400F0 */ lw $s4, 0xf0($sp) +/* 3A0CE4 E009EDC4 8FB300EC */ lw $s3, 0xec($sp) +/* 3A0CE8 E009EDC8 8FB200E8 */ lw $s2, 0xe8($sp) +/* 3A0CEC E009EDCC 8FB100E4 */ lw $s1, 0xe4($sp) +/* 3A0CF0 E009EDD0 8FB000E0 */ lw $s0, 0xe0($sp) +/* 3A0CF4 E009EDD4 D7BC0128 */ ldc1 $f28, 0x128($sp) +/* 3A0CF8 E009EDD8 D7BA0120 */ ldc1 $f26, 0x120($sp) +/* 3A0CFC E009EDDC D7B80118 */ ldc1 $f24, 0x118($sp) +/* 3A0D00 E009EDE0 D7B60110 */ ldc1 $f22, 0x110($sp) +/* 3A0D04 E009EDE4 D7B40108 */ ldc1 $f20, 0x108($sp) +/* 3A0D08 E009EDE8 03E00008 */ jr $ra +/* 3A0D0C E009EDEC 27BD0130 */ addiu $sp, $sp, 0x130 diff --git a/asm/nonmatchings/code_3A2290/func_E00A0000.s b/asm/nonmatchings/code_3A2290/func_E00A0000.s new file mode 100644 index 0000000000..1acefb4285 --- /dev/null +++ b/asm/nonmatchings/code_3A2290/func_E00A0000.s @@ -0,0 +1,114 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A0000 +/* 3A2290 E00A0000 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 3A2294 E00A0004 AFB00028 */ sw $s0, 0x28($sp) +/* 3A2298 E00A0008 0080802D */ daddu $s0, $a0, $zero +/* 3A229C E00A000C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A22A0 E00A0010 24020050 */ addiu $v0, $zero, 0x50 +/* 3A22A4 E00A0014 AFBF002C */ sw $ra, 0x2c($sp) +/* 3A22A8 E00A0018 AFA00010 */ sw $zero, 0x10($sp) +/* 3A22AC E00A001C AFA00018 */ sw $zero, 0x18($sp) +/* 3A22B0 E00A0020 AFA0001C */ sw $zero, 0x1c($sp) +/* 3A22B4 E00A0024 AFA00020 */ sw $zero, 0x20($sp) +/* 3A22B8 E00A0028 AFA00024 */ sw $zero, 0x24($sp) +/* 3A22BC E00A002C 0C080124 */ jal func_E0200490 +/* 3A22C0 E00A0030 AFA20014 */ sw $v0, 0x14($sp) +/* 3A22C4 E00A0034 3C04DB06 */ lui $a0, 0xdb06 +/* 3A22C8 E00A0038 34840024 */ ori $a0, $a0, 0x24 +/* 3A22CC E00A003C 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 3A22D0 E00A0040 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 3A22D4 E00A0044 0040582D */ daddu $t3, $v0, $zero +/* 3A22D8 E00A0048 8CC50000 */ lw $a1, ($a2) +/* 3A22DC E00A004C 3C02E700 */ lui $v0, 0xe700 +/* 3A22E0 E00A0050 AD60000C */ sw $zero, 0xc($t3) +/* 3A22E4 E00A0054 00A0182D */ daddu $v1, $a1, $zero +/* 3A22E8 E00A0058 24A50008 */ addiu $a1, $a1, 8 +/* 3A22EC E00A005C ACC50000 */ sw $a1, ($a2) +/* 3A22F0 E00A0060 AC620000 */ sw $v0, ($v1) +/* 3A22F4 E00A0064 AC600004 */ sw $zero, 4($v1) +/* 3A22F8 E00A0068 ACA40000 */ sw $a0, ($a1) +/* 3A22FC E00A006C 8D630010 */ lw $v1, 0x10($t3) +/* 3A2300 E00A0070 24A20008 */ addiu $v0, $a1, 8 +/* 3A2304 E00A0074 ACC20000 */ sw $v0, ($a2) +/* 3A2308 E00A0078 8C62001C */ lw $v0, 0x1c($v1) +/* 3A230C E00A007C 3C038000 */ lui $v1, 0x8000 +/* 3A2310 E00A0080 00431021 */ addu $v0, $v0, $v1 +/* 3A2314 E00A0084 1600000A */ bnez $s0, .LE00A00B0 +/* 3A2318 E00A0088 ACA20004 */ sw $v0, 4($a1) +/* 3A231C E00A008C 3C03FF40 */ lui $v1, 0xff40 +/* 3A2320 E00A0090 24A20010 */ addiu $v0, $a1, 0x10 +/* 3A2324 E00A0094 ACC20000 */ sw $v0, ($a2) +/* 3A2328 E00A0098 3C02DE00 */ lui $v0, 0xde00 +/* 3A232C E00A009C ACA20008 */ sw $v0, 8($a1) +/* 3A2330 E00A00A0 3C020900 */ lui $v0, 0x900 +/* 3A2334 E00A00A4 24420400 */ addiu $v0, $v0, 0x400 +/* 3A2338 E00A00A8 08028034 */ j .LE00A00D0 +/* 3A233C E00A00AC 346340E6 */ ori $v1, $v1, 0x40e6 +.LE00A00B0: +/* 3A2340 E00A00B0 3C035050 */ lui $v1, 0x5050 +/* 3A2344 E00A00B4 3463FFE6 */ ori $v1, $v1, 0xffe6 +/* 3A2348 E00A00B8 24A20010 */ addiu $v0, $a1, 0x10 +/* 3A234C E00A00BC ACC20000 */ sw $v0, ($a2) +/* 3A2350 E00A00C0 3C02DE00 */ lui $v0, 0xde00 +/* 3A2354 E00A00C4 ACA20008 */ sw $v0, 8($a1) +/* 3A2358 E00A00C8 3C020900 */ lui $v0, 0x900 +/* 3A235C E00A00CC 244204A8 */ addiu $v0, $v0, 0x4a8 +.LE00A00D0: +/* 3A2360 E00A00D0 ACA2000C */ sw $v0, 0xc($a1) +/* 3A2364 E00A00D4 24A20018 */ addiu $v0, $a1, 0x18 +/* 3A2368 E00A00D8 ACC20000 */ sw $v0, ($a2) +/* 3A236C E00A00DC 3C02FA00 */ lui $v0, 0xfa00 +/* 3A2370 E00A00E0 ACA20010 */ sw $v0, 0x10($a1) +/* 3A2374 E00A00E4 ACA30014 */ sw $v1, 0x14($a1) +/* 3A2378 E00A00E8 3C070050 */ lui $a3, 0x50 +/* 3A237C E00A00EC 34E703C0 */ ori $a3, $a3, 0x3c0 +/* 3A2380 E00A00F0 3C09E430 */ lui $t1, 0xe430 +/* 3A2384 E00A00F4 35290230 */ ori $t1, $t1, 0x230 +/* 3A2388 E00A00F8 3C080020 */ lui $t0, 0x20 +/* 3A238C E00A00FC 35080130 */ ori $t0, $t0, 0x130 +/* 3A2390 E00A0100 3C0A0400 */ lui $t2, 0x400 +/* 3A2394 E00A0104 354A0400 */ ori $t2, $t2, 0x400 +/* 3A2398 E00A0108 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 3A239C E00A010C 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 3A23A0 E00A0110 0160202D */ daddu $a0, $t3, $zero +/* 3A23A4 E00A0114 8CA20000 */ lw $v0, ($a1) +/* 3A23A8 E00A0118 3C03ED00 */ lui $v1, 0xed00 +/* 3A23AC E00A011C 0040302D */ daddu $a2, $v0, $zero +/* 3A23B0 E00A0120 24420008 */ addiu $v0, $v0, 8 +/* 3A23B4 E00A0124 ACA20000 */ sw $v0, ($a1) +/* 3A23B8 E00A0128 ACC30000 */ sw $v1, ($a2) +/* 3A23BC E00A012C 24430008 */ addiu $v1, $v0, 8 +/* 3A23C0 E00A0130 ACC70004 */ sw $a3, 4($a2) +/* 3A23C4 E00A0134 ACA30000 */ sw $v1, ($a1) +/* 3A23C8 E00A0138 24430010 */ addiu $v1, $v0, 0x10 +/* 3A23CC E00A013C AC490000 */ sw $t1, ($v0) +/* 3A23D0 E00A0140 AC480004 */ sw $t0, 4($v0) +/* 3A23D4 E00A0144 ACA30000 */ sw $v1, ($a1) +/* 3A23D8 E00A0148 3C03E100 */ lui $v1, 0xe100 +/* 3A23DC E00A014C AC430008 */ sw $v1, 8($v0) +/* 3A23E0 E00A0150 24030400 */ addiu $v1, $zero, 0x400 +/* 3A23E4 E00A0154 AC43000C */ sw $v1, 0xc($v0) +/* 3A23E8 E00A0158 24430018 */ addiu $v1, $v0, 0x18 +/* 3A23EC E00A015C ACA30000 */ sw $v1, ($a1) +/* 3A23F0 E00A0160 3C03F100 */ lui $v1, 0xf100 +/* 3A23F4 E00A0164 AC430010 */ sw $v1, 0x10($v0) +/* 3A23F8 E00A0168 24430020 */ addiu $v1, $v0, 0x20 +/* 3A23FC E00A016C AC4A0014 */ sw $t2, 0x14($v0) +/* 3A2400 E00A0170 ACA30000 */ sw $v1, ($a1) +/* 3A2404 E00A0174 3C03E700 */ lui $v1, 0xe700 +/* 3A2408 E00A0178 AC430018 */ sw $v1, 0x18($v0) +/* 3A240C E00A017C 24430028 */ addiu $v1, $v0, 0x28 +/* 3A2410 E00A0180 AC40001C */ sw $zero, 0x1c($v0) +/* 3A2414 E00A0184 ACA30000 */ sw $v1, ($a1) +/* 3A2418 E00A0188 3C03DB06 */ lui $v1, 0xdb06 +/* 3A241C E00A018C AC430020 */ sw $v1, 0x20($v0) +/* 3A2420 E00A0190 0C080128 */ jal func_E02004A0 +/* 3A2424 E00A0194 AC400024 */ sw $zero, 0x24($v0) +/* 3A2428 E00A0198 8FBF002C */ lw $ra, 0x2c($sp) +/* 3A242C E00A019C 8FB00028 */ lw $s0, 0x28($sp) +/* 3A2430 E00A01A0 0000102D */ daddu $v0, $zero, $zero +/* 3A2434 E00A01A4 03E00008 */ jr $ra +/* 3A2438 E00A01A8 27BD0030 */ addiu $sp, $sp, 0x30 +/* 3A243C E00A01AC 00000000 */ nop diff --git a/asm/nonmatchings/code_3A2990/func_E00A2000.s b/asm/nonmatchings/code_3A2990/func_E00A2000.s new file mode 100644 index 0000000000..ddd23391a4 --- /dev/null +++ b/asm/nonmatchings/code_3A2990/func_E00A2000.s @@ -0,0 +1,78 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A2000 +/* 3A2990 E00A2000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3A2994 E00A2004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3A2998 E00A2008 4485A000 */ mtc1 $a1, $f20 +/* 3A299C E00A200C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3A29A0 E00A2010 4486B000 */ mtc1 $a2, $f22 +/* 3A29A4 E00A2014 AFB20030 */ sw $s2, 0x30($sp) +/* 3A29A8 E00A2018 0080902D */ daddu $s2, $a0, $zero +/* 3A29AC E00A201C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3A29B0 E00A2020 4487C000 */ mtc1 $a3, $f24 +/* 3A29B4 E00A2024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A29B8 E00A2028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3A29BC E00A202C 8FB10064 */ lw $s1, 0x64($sp) +/* 3A29C0 E00A2030 3C02E00A */ lui $v0, %hi(D_E00A2118) +/* 3A29C4 E00A2034 24422118 */ addiu $v0, $v0, %lo(D_E00A2118) +/* 3A29C8 E00A2038 AFA20018 */ sw $v0, 0x18($sp) +/* 3A29CC E00A203C 3C02E00A */ lui $v0, %hi(D_E00A2120) +/* 3A29D0 E00A2040 24422120 */ addiu $v0, $v0, %lo(D_E00A2120) +/* 3A29D4 E00A2044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3A29D8 E00A2048 3C02E00A */ lui $v0, %hi(D_E00A21EC) +/* 3A29DC E00A204C 244221EC */ addiu $v0, $v0, %lo(D_E00A21EC) +/* 3A29E0 E00A2050 AFA20020 */ sw $v0, 0x20($sp) +/* 3A29E4 E00A2054 24020051 */ addiu $v0, $zero, 0x51 +/* 3A29E8 E00A2058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3A29EC E00A205C AFB00028 */ sw $s0, 0x28($sp) +/* 3A29F0 E00A2060 AFA00010 */ sw $zero, 0x10($sp) +/* 3A29F4 E00A2064 AFA00024 */ sw $zero, 0x24($sp) +/* 3A29F8 E00A2068 0C080124 */ jal func_E0200490 +/* 3A29FC E00A206C AFA20014 */ sw $v0, 0x14($sp) +/* 3A2A00 E00A2070 24040068 */ addiu $a0, $zero, 0x68 +/* 3A2A04 E00A2074 24030001 */ addiu $v1, $zero, 1 +/* 3A2A08 E00A2078 0040802D */ daddu $s0, $v0, $zero +/* 3A2A0C E00A207C 0C08012C */ jal func_E02004B0 +/* 3A2A10 E00A2080 AE030008 */ sw $v1, 8($s0) +/* 3A2A14 E00A2084 0040202D */ daddu $a0, $v0, $zero +/* 3A2A18 E00A2088 14800003 */ bnez $a0, .LE00A2098 +/* 3A2A1C E00A208C AE02000C */ sw $v0, 0xc($s0) +.LE00A2090: +/* 3A2A20 E00A2090 08028824 */ j .LE00A2090 +/* 3A2A24 E00A2094 00000000 */ nop +.LE00A2098: +/* 3A2A28 E00A2098 06210004 */ bgez $s1, .LE00A20AC +/* 3A2A2C E00A209C AC920000 */ sw $s2, ($a0) +/* 3A2A30 E00A20A0 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3A2A34 E00A20A4 0802882C */ j .LE00A20B0 +/* 3A2A38 E00A20A8 AC820050 */ sw $v0, 0x50($a0) +.LE00A20AC: +/* 3A2A3C E00A20AC AC910050 */ sw $s1, 0x50($a0) +.LE00A20B0: +/* 3A2A40 E00A20B0 0200102D */ daddu $v0, $s0, $zero +/* 3A2A44 E00A20B4 2403007F */ addiu $v1, $zero, 0x7f +/* 3A2A48 E00A20B8 AC83004C */ sw $v1, 0x4c($a0) +/* 3A2A4C E00A20BC 240300FF */ addiu $v1, $zero, 0xff +/* 3A2A50 E00A20C0 AC800054 */ sw $zero, 0x54($a0) +/* 3A2A54 E00A20C4 E4940004 */ swc1 $f20, 4($a0) +/* 3A2A58 E00A20C8 E4960008 */ swc1 $f22, 8($a0) +/* 3A2A5C E00A20CC E498000C */ swc1 $f24, 0xc($a0) +/* 3A2A60 E00A20D0 AC800010 */ sw $zero, 0x10($a0) +/* 3A2A64 E00A20D4 AC800014 */ sw $zero, 0x14($a0) +/* 3A2A68 E00A20D8 AC800018 */ sw $zero, 0x18($a0) +/* 3A2A6C E00A20DC AC83005C */ sw $v1, 0x5c($a0) +/* 3A2A70 E00A20E0 AC830060 */ sw $v1, 0x60($a0) +/* 3A2A74 E00A20E4 AC830064 */ sw $v1, 0x64($a0) +/* 3A2A78 E00A20E8 AC800040 */ sw $zero, 0x40($a0) +/* 3A2A7C E00A20EC AC800044 */ sw $zero, 0x44($a0) +/* 3A2A80 E00A20F0 AC800048 */ sw $zero, 0x48($a0) +/* 3A2A84 E00A20F4 8FBF0034 */ lw $ra, 0x34($sp) +/* 3A2A88 E00A20F8 8FB20030 */ lw $s2, 0x30($sp) +/* 3A2A8C E00A20FC 8FB1002C */ lw $s1, 0x2c($sp) +/* 3A2A90 E00A2100 8FB00028 */ lw $s0, 0x28($sp) +/* 3A2A94 E00A2104 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3A2A98 E00A2108 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3A2A9C E00A210C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3A2AA0 E00A2110 03E00008 */ jr $ra +/* 3A2AA4 E00A2114 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3A2990/func_E00A2118.s b/asm/nonmatchings/code_3A2990/func_E00A2118.s new file mode 100644 index 0000000000..fd4ee87114 --- /dev/null +++ b/asm/nonmatchings/code_3A2990/func_E00A2118.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A2118 +/* 3A2AA8 E00A2118 03E00008 */ jr $ra +/* 3A2AAC E00A211C 00000000 */ nop diff --git a/asm/nonmatchings/code_3A2990/func_E00A2120.s b/asm/nonmatchings/code_3A2990/func_E00A2120.s new file mode 100644 index 0000000000..f7116213ba --- /dev/null +++ b/asm/nonmatchings/code_3A2990/func_E00A2120.s @@ -0,0 +1,61 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A2120 +/* 3A2AB0 E00A2120 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3A2AB4 E00A2124 AFBF0010 */ sw $ra, 0x10($sp) +/* 3A2AB8 E00A2128 8C850000 */ lw $a1, ($a0) +/* 3A2ABC E00A212C 8C83000C */ lw $v1, 0xc($a0) +/* 3A2AC0 E00A2130 30A20010 */ andi $v0, $a1, 0x10 +/* 3A2AC4 E00A2134 10400005 */ beqz $v0, .LE00A214C +/* 3A2AC8 E00A2138 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3A2ACC E00A213C 00A21024 */ and $v0, $a1, $v0 +/* 3A2AD0 E00A2140 AC820000 */ sw $v0, ($a0) +/* 3A2AD4 E00A2144 2402001E */ addiu $v0, $zero, 0x1e +/* 3A2AD8 E00A2148 AC620050 */ sw $v0, 0x50($v1) +.LE00A214C: +/* 3A2ADC E00A214C 8C620054 */ lw $v0, 0x54($v1) +/* 3A2AE0 E00A2150 8C650050 */ lw $a1, 0x50($v1) +/* 3A2AE4 E00A2154 24420001 */ addiu $v0, $v0, 1 +/* 3A2AE8 E00A2158 AC620054 */ sw $v0, 0x54($v1) +/* 3A2AEC E00A215C 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3A2AF0 E00A2160 10400002 */ beqz $v0, .LE00A216C +/* 3A2AF4 E00A2164 24A2FFFF */ addiu $v0, $a1, -1 +/* 3A2AF8 E00A2168 AC620050 */ sw $v0, 0x50($v1) +.LE00A216C: +/* 3A2AFC E00A216C 8C620050 */ lw $v0, 0x50($v1) +/* 3A2B00 E00A2170 04410005 */ bgez $v0, .LE00A2188 +/* 3A2B04 E00A2174 0040282D */ daddu $a1, $v0, $zero +/* 3A2B08 E00A2178 0C080128 */ jal func_E02004A0 +/* 3A2B0C E00A217C 00000000 */ nop +/* 3A2B10 E00A2180 08028878 */ j .LE00A21E0 +/* 3A2B14 E00A2184 00000000 */ nop +.LE00A2188: +/* 3A2B18 E00A2188 8C640054 */ lw $a0, 0x54($v1) +/* 3A2B1C E00A218C 28820011 */ slti $v0, $a0, 0x11 +/* 3A2B20 E00A2190 10400003 */ beqz $v0, .LE00A21A0 +/* 3A2B24 E00A2194 000410C0 */ sll $v0, $a0, 3 +/* 3A2B28 E00A2198 2442FFFF */ addiu $v0, $v0, -1 +/* 3A2B2C E00A219C AC62004C */ sw $v0, 0x4c($v1) +.LE00A21A0: +/* 3A2B30 E00A21A0 28A20010 */ slti $v0, $a1, 0x10 +/* 3A2B34 E00A21A4 10400002 */ beqz $v0, .LE00A21B0 +/* 3A2B38 E00A21A8 000510C0 */ sll $v0, $a1, 3 +/* 3A2B3C E00A21AC AC62004C */ sw $v0, 0x4c($v1) +.LE00A21B0: +/* 3A2B40 E00A21B0 C4660004 */ lwc1 $f6, 4($v1) +/* 3A2B44 E00A21B4 C4600010 */ lwc1 $f0, 0x10($v1) +/* 3A2B48 E00A21B8 C4640008 */ lwc1 $f4, 8($v1) +/* 3A2B4C E00A21BC 46003180 */ add.s $f6, $f6, $f0 +/* 3A2B50 E00A21C0 C4600014 */ lwc1 $f0, 0x14($v1) +/* 3A2B54 E00A21C4 C462000C */ lwc1 $f2, 0xc($v1) +/* 3A2B58 E00A21C8 46002100 */ add.s $f4, $f4, $f0 +/* 3A2B5C E00A21CC C4600018 */ lwc1 $f0, 0x18($v1) +/* 3A2B60 E00A21D0 46001080 */ add.s $f2, $f2, $f0 +/* 3A2B64 E00A21D4 E466001C */ swc1 $f6, 0x1c($v1) +/* 3A2B68 E00A21D8 E464002C */ swc1 $f4, 0x2c($v1) +/* 3A2B6C E00A21DC E462003C */ swc1 $f2, 0x3c($v1) +.LE00A21E0: +/* 3A2B70 E00A21E0 8FBF0010 */ lw $ra, 0x10($sp) +/* 3A2B74 E00A21E4 03E00008 */ jr $ra +/* 3A2B78 E00A21E8 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3A2990/func_E00A21EC.s b/asm/nonmatchings/code_3A2990/func_E00A21EC.s new file mode 100644 index 0000000000..49968ee665 --- /dev/null +++ b/asm/nonmatchings/code_3A2990/func_E00A21EC.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A21EC +/* 3A2B7C E00A21EC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3A2B80 E00A21F0 3C02E00A */ lui $v0, %hi(D_E00A223C) +/* 3A2B84 E00A21F4 2442223C */ addiu $v0, $v0, %lo(D_E00A223C) +/* 3A2B88 E00A21F8 AFA2001C */ sw $v0, 0x1c($sp) +/* 3A2B8C E00A21FC 24020064 */ addiu $v0, $zero, 0x64 +/* 3A2B90 E00A2200 AFA20014 */ sw $v0, 0x14($sp) +/* 3A2B94 E00A2204 2402002D */ addiu $v0, $zero, 0x2d +/* 3A2B98 E00A2208 AFA40018 */ sw $a0, 0x18($sp) +/* 3A2B9C E00A220C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A2BA0 E00A2210 AFBF0020 */ sw $ra, 0x20($sp) +/* 3A2BA4 E00A2214 0C080120 */ jal func_E0200480 +/* 3A2BA8 E00A2218 AFA20010 */ sw $v0, 0x10($sp) +/* 3A2BAC E00A221C 8C430000 */ lw $v1, ($v0) +/* 3A2BB0 E00A2220 34630002 */ ori $v1, $v1, 2 +/* 3A2BB4 E00A2224 AC430000 */ sw $v1, ($v0) +/* 3A2BB8 E00A2228 8FBF0020 */ lw $ra, 0x20($sp) +/* 3A2BBC E00A222C 03E00008 */ jr $ra +/* 3A2BC0 E00A2230 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3A2990/func_E00A2234.s b/asm/nonmatchings/code_3A2990/func_E00A2234.s new file mode 100644 index 0000000000..2d33744961 --- /dev/null +++ b/asm/nonmatchings/code_3A2990/func_E00A2234.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A2234 +/* 3A2BC4 E00A2234 03E00008 */ jr $ra +/* 3A2BC8 E00A2238 00000000 */ nop diff --git a/asm/nonmatchings/code_3A2990/func_E00A223C.s b/asm/nonmatchings/code_3A2990/func_E00A223C.s new file mode 100644 index 0000000000..7e53715799 --- /dev/null +++ b/asm/nonmatchings/code_3A2990/func_E00A223C.s @@ -0,0 +1,508 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A223C +/* 3A2BCC E00A223C 27BDFF60 */ addiu $sp, $sp, -0xa0 +/* 3A2BD0 E00A2240 3C07DB06 */ lui $a3, 0xdb06 +/* 3A2BD4 E00A2244 34E70024 */ ori $a3, $a3, 0x24 +/* 3A2BD8 E00A2248 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3A2BDC E00A224C 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3A2BE0 E00A2250 AFB00078 */ sw $s0, 0x78($sp) +/* 3A2BE4 E00A2254 0040802D */ daddu $s0, $v0, $zero +/* 3A2BE8 E00A2258 AFB60090 */ sw $s6, 0x90($sp) +/* 3A2BEC E00A225C 3C16F510 */ lui $s6, 0xf510 +/* 3A2BF0 E00A2260 36D60100 */ ori $s6, $s6, 0x100 +/* 3A2BF4 E00A2264 AFBF009C */ sw $ra, 0x9c($sp) +/* 3A2BF8 E00A2268 AFBE0098 */ sw $fp, 0x98($sp) +/* 3A2BFC E00A226C AFB70094 */ sw $s7, 0x94($sp) +/* 3A2C00 E00A2270 AFB5008C */ sw $s5, 0x8c($sp) +/* 3A2C04 E00A2274 AFB40088 */ sw $s4, 0x88($sp) +/* 3A2C08 E00A2278 AFB30084 */ sw $s3, 0x84($sp) +/* 3A2C0C E00A227C AFB20080 */ sw $s2, 0x80($sp) +/* 3A2C10 E00A2280 AFB1007C */ sw $s1, 0x7c($sp) +/* 3A2C14 E00A2284 AFB60060 */ sw $s6, 0x60($sp) +/* 3A2C18 E00A2288 8E050000 */ lw $a1, ($s0) +/* 3A2C1C E00A228C 3C02E700 */ lui $v0, 0xe700 +/* 3A2C20 E00A2290 AFA0006C */ sw $zero, 0x6c($sp) +/* 3A2C24 E00A2294 8C94000C */ lw $s4, 0xc($a0) +/* 3A2C28 E00A2298 00A0182D */ daddu $v1, $a1, $zero +/* 3A2C2C E00A229C 24A50008 */ addiu $a1, $a1, 8 +/* 3A2C30 E00A22A0 AE050000 */ sw $a1, ($s0) +/* 3A2C34 E00A22A4 8E860000 */ lw $a2, ($s4) +/* 3A2C38 E00A22A8 8E96004C */ lw $s6, 0x4c($s4) +/* 3A2C3C E00A22AC 0280B82D */ daddu $s7, $s4, $zero +/* 3A2C40 E00A22B0 AFB60050 */ sw $s6, 0x50($sp) +/* 3A2C44 E00A22B4 AC620000 */ sw $v0, ($v1) +/* 3A2C48 E00A22B8 24A20008 */ addiu $v0, $a1, 8 +/* 3A2C4C E00A22BC AC600004 */ sw $zero, 4($v1) +/* 3A2C50 E00A22C0 AE020000 */ sw $v0, ($s0) +/* 3A2C54 E00A22C4 ACA70000 */ sw $a3, ($a1) +/* 3A2C58 E00A22C8 8C830010 */ lw $v1, 0x10($a0) +/* 3A2C5C E00A22CC 24A20010 */ addiu $v0, $a1, 0x10 +/* 3A2C60 E00A22D0 AE020000 */ sw $v0, ($s0) +/* 3A2C64 E00A22D4 3C02DE00 */ lui $v0, 0xde00 +/* 3A2C68 E00A22D8 8C63001C */ lw $v1, 0x1c($v1) +/* 3A2C6C E00A22DC 3C04E00A */ lui $a0, %hi(D_E00A29DC) +/* 3A2C70 E00A22E0 248429DC */ addiu $a0, $a0, %lo(D_E00A29DC) +/* 3A2C74 E00A22E4 ACA20008 */ sw $v0, 8($a1) +/* 3A2C78 E00A22E8 3C028000 */ lui $v0, 0x8000 +/* 3A2C7C E00A22EC 00621821 */ addu $v1, $v1, $v0 +/* 3A2C80 E00A22F0 00061040 */ sll $v0, $a2, 1 +/* 3A2C84 E00A22F4 00461021 */ addu $v0, $v0, $a2 +/* 3A2C88 E00A22F8 000210C0 */ sll $v0, $v0, 3 +/* 3A2C8C E00A22FC 00063080 */ sll $a2, $a2, 2 +/* 3A2C90 E00A2300 ACA30004 */ sw $v1, 4($a1) +/* 3A2C94 E00A2304 3C03E00A */ lui $v1, %hi(D_E00A29D0) +/* 3A2C98 E00A2308 00661821 */ addu $v1, $v1, $a2 +/* 3A2C9C E00A230C 8C6329D0 */ lw $v1, %lo(D_E00A29D0)($v1) +/* 3A2CA0 E00A2310 00448821 */ addu $s1, $v0, $a0 +/* 3A2CA4 E00A2314 ACA3000C */ sw $v1, 0xc($a1) +.LE00A2318: +/* 3A2CA8 E00A2318 C6EC001C */ lwc1 $f12, 0x1c($s7) +/* 3A2CAC E00A231C C6EE002C */ lwc1 $f14, 0x2c($s7) +/* 3A2CB0 E00A2320 C6E0003C */ lwc1 $f0, 0x3c($s7) +/* 3A2CB4 E00A2324 8E350010 */ lw $s5, 0x10($s1) +/* 3A2CB8 E00A2328 8E320014 */ lw $s2, 0x14($s1) +/* 3A2CBC E00A232C 56F4000A */ bnel $s7, $s4, .LE00A2358 +/* 3A2CC0 E00A2330 E7AC0048 */ swc1 $f12, 0x48($sp) +/* 3A2CC4 E00A2334 27A20048 */ addiu $v0, $sp, 0x48 +/* 3A2CC8 E00A2338 AFA20010 */ sw $v0, 0x10($sp) +/* 3A2CCC E00A233C 27A2004C */ addiu $v0, $sp, 0x4c +/* 3A2CD0 E00A2340 44060000 */ mfc1 $a2, $f0 +/* 3A2CD4 E00A2344 2407FFFF */ addiu $a3, $zero, -1 +/* 3A2CD8 E00A2348 0C08015C */ jal func_E0200570 +/* 3A2CDC E00A234C AFA20014 */ sw $v0, 0x14($sp) +/* 3A2CE0 E00A2350 080288D9 */ j .LE00A2364 +/* 3A2CE4 E00A2354 0040302D */ daddu $a2, $v0, $zero +.LE00A2358: +/* 3A2CE8 E00A2358 4600018D */ trunc.w.s $f6, $f0 +/* 3A2CEC E00A235C 44063000 */ mfc1 $a2, $f6 +/* 3A2CF0 E00A2360 E7AE004C */ swc1 $f14, 0x4c($sp) +.LE00A2364: +/* 3A2CF4 E00A2364 8FB6006C */ lw $s6, 0x6c($sp) +/* 3A2CF8 E00A2368 03B61021 */ addu $v0, $sp, $s6 +/* 3A2CFC E00A236C AC460018 */ sw $a2, 0x18($v0) +/* 3A2D00 E00A2370 C7A20048 */ lwc1 $f2, 0x48($sp) +/* 3A2D04 E00A2374 E4420028 */ swc1 $f2, 0x28($v0) +/* 3A2D08 E00A2378 C7A4004C */ lwc1 $f4, 0x4c($sp) +/* 3A2D0C E00A237C 10C0016B */ beqz $a2, .LE00A292C +/* 3A2D10 E00A2380 E4440038 */ swc1 $f4, 0x38($v0) +/* 3A2D14 E00A2384 44800000 */ mtc1 $zero, $f0 +/* 3A2D18 E00A2388 00000000 */ nop +/* 3A2D1C E00A238C 4600103C */ c.lt.s $f2, $f0 +/* 3A2D20 E00A2390 00000000 */ nop +/* 3A2D24 E00A2394 45030166 */ bc1tl .LE00A2930 +/* 3A2D28 E00A2398 26F70004 */ addiu $s7, $s7, 4 +/* 3A2D2C E00A239C 4600203C */ c.lt.s $f4, $f0 +/* 3A2D30 E00A23A0 00000000 */ nop +/* 3A2D34 E00A23A4 45030162 */ bc1tl .LE00A2930 +/* 3A2D38 E00A23A8 26F70004 */ addiu $s7, $s7, 4 +/* 3A2D3C E00A23AC 3C0143A0 */ lui $at, 0x43a0 +/* 3A2D40 E00A23B0 44810000 */ mtc1 $at, $f0 +/* 3A2D44 E00A23B4 00000000 */ nop +/* 3A2D48 E00A23B8 4602003E */ c.le.s $f0, $f2 +/* 3A2D4C E00A23BC 00000000 */ nop +/* 3A2D50 E00A23C0 4503015B */ bc1tl .LE00A2930 +/* 3A2D54 E00A23C4 26F70004 */ addiu $s7, $s7, 4 +/* 3A2D58 E00A23C8 3C014370 */ lui $at, 0x4370 +/* 3A2D5C E00A23CC 44810000 */ mtc1 $at, $f0 +/* 3A2D60 E00A23D0 00000000 */ nop +/* 3A2D64 E00A23D4 4604003E */ c.le.s $f0, $f4 +/* 3A2D68 E00A23D8 00000000 */ nop +/* 3A2D6C E00A23DC 45030154 */ bc1tl .LE00A2930 +/* 3A2D70 E00A23E0 26F70004 */ addiu $s7, $s7, 4 +/* 3A2D74 E00A23E4 3C02E00A */ lui $v0, %hi(D_E00A2A24) +/* 3A2D78 E00A23E8 00561021 */ addu $v0, $v0, $s6 +/* 3A2D7C E00A23EC 8C422A24 */ lw $v0, %lo(D_E00A2A24)($v0) +/* 3A2D80 E00A23F0 8FB60050 */ lw $s6, 0x50($sp) +/* 3A2D84 E00A23F4 02C20018 */ mult $s6, $v0 +/* 3A2D88 E00A23F8 00001012 */ mflo $v0 +/* 3A2D8C E00A23FC 3C0351EB */ lui $v1, 0x51eb +/* 3A2D90 E00A2400 3463851F */ ori $v1, $v1, 0x851f +/* 3A2D94 E00A2404 00430018 */ mult $v0, $v1 +/* 3A2D98 E00A2408 000217C3 */ sra $v0, $v0, 0x1f +/* 3A2D9C E00A240C 00001810 */ mfhi $v1 +/* 3A2DA0 E00A2410 00032143 */ sra $a0, $v1, 5 +/* 3A2DA4 E00A2414 8E83005C */ lw $v1, 0x5c($s4) +/* 3A2DA8 E00A2418 00822023 */ subu $a0, $a0, $v0 +/* 3A2DAC E00A241C 00640018 */ mult $v1, $a0 +/* 3A2DB0 E00A2420 00001812 */ mflo $v1 +/* 3A2DB4 E00A2424 8E820060 */ lw $v0, 0x60($s4) +/* 3A2DB8 E00A2428 00000000 */ nop +/* 3A2DBC E00A242C 00440018 */ mult $v0, $a0 +/* 3A2DC0 E00A2430 00003812 */ mflo $a3 +/* 3A2DC4 E00A2434 8E820064 */ lw $v0, 0x64($s4) +/* 3A2DC8 E00A2438 00000000 */ nop +/* 3A2DCC E00A243C 00440018 */ mult $v0, $a0 +/* 3A2DD0 E00A2440 00004812 */ mflo $t1 +/* 3A2DD4 E00A2444 8E060000 */ lw $a2, ($s0) +/* 3A2DD8 E00A2448 00031A43 */ sra $v1, $v1, 9 +/* 3A2DDC E00A244C 00640018 */ mult $v1, $a0 +/* 3A2DE0 E00A2450 00C0282D */ daddu $a1, $a2, $zero +/* 3A2DE4 E00A2454 24C60008 */ addiu $a2, $a2, 8 +/* 3A2DE8 E00A2458 AE060000 */ sw $a2, ($s0) +/* 3A2DEC E00A245C 3C02FA00 */ lui $v0, 0xfa00 +/* 3A2DF0 E00A2460 00005812 */ mflo $t3 +/* 3A2DF4 E00A2464 ACA20000 */ sw $v0, ($a1) +/* 3A2DF8 E00A2468 00071243 */ sra $v0, $a3, 9 +/* 3A2DFC E00A246C 00440018 */ mult $v0, $a0 +/* 3A2E00 E00A2470 246A0020 */ addiu $t2, $v1, 0x20 +/* 3A2E04 E00A2474 24480020 */ addiu $t0, $v0, 0x20 +/* 3A2E08 E00A2478 00091243 */ sra $v0, $t1, 9 +/* 3A2E0C E00A247C 24490020 */ addiu $t1, $v0, 0x20 +/* 3A2E10 E00A2480 00003812 */ mflo $a3 +/* 3A2E14 E00A2484 000B1A03 */ sra $v1, $t3, 8 +/* 3A2E18 E00A2488 00031E00 */ sll $v1, $v1, 0x18 +/* 3A2E1C E00A248C 00440018 */ mult $v0, $a0 +/* 3A2E20 E00A2490 00071203 */ sra $v0, $a3, 8 +/* 3A2E24 E00A2494 304200FF */ andi $v0, $v0, 0xff +/* 3A2E28 E00A2498 00021400 */ sll $v0, $v0, 0x10 +/* 3A2E2C E00A249C 00621825 */ or $v1, $v1, $v0 +/* 3A2E30 E00A24A0 00005812 */ mflo $t3 +/* 3A2E34 E00A24A4 3162FF00 */ andi $v0, $t3, 0xff00 +/* 3A2E38 E00A24A8 00621825 */ or $v1, $v1, $v0 +/* 3A2E3C E00A24AC 346300FF */ ori $v1, $v1, 0xff +/* 3A2E40 E00A24B0 29420080 */ slti $v0, $t2, 0x80 +/* 3A2E44 E00A24B4 14400002 */ bnez $v0, .LE00A24C0 +/* 3A2E48 E00A24B8 ACA30004 */ sw $v1, 4($a1) +/* 3A2E4C E00A24BC 240A007F */ addiu $t2, $zero, 0x7f +.LE00A24C0: +/* 3A2E50 E00A24C0 29020080 */ slti $v0, $t0, 0x80 +/* 3A2E54 E00A24C4 50400001 */ beql $v0, $zero, .LE00A24CC +/* 3A2E58 E00A24C8 2408007F */ addiu $t0, $zero, 0x7f +.LE00A24CC: +/* 3A2E5C E00A24CC 29220080 */ slti $v0, $t1, 0x80 +/* 3A2E60 E00A24D0 50400001 */ beql $v0, $zero, .LE00A24D8 +/* 3A2E64 E00A24D4 2409007F */ addiu $t1, $zero, 0x7f +.LE00A24D8: +/* 3A2E68 E00A24D8 0000282D */ daddu $a1, $zero, $zero +/* 3A2E6C E00A24DC 24C20008 */ addiu $v0, $a2, 8 +/* 3A2E70 E00A24E0 AE020000 */ sw $v0, ($s0) +/* 3A2E74 E00A24E4 3C02FB00 */ lui $v0, 0xfb00 +/* 3A2E78 E00A24E8 000A1E00 */ sll $v1, $t2, 0x18 +/* 3A2E7C E00A24EC ACC20000 */ sw $v0, ($a2) +/* 3A2E80 E00A24F0 310200FF */ andi $v0, $t0, 0xff +/* 3A2E84 E00A24F4 00021400 */ sll $v0, $v0, 0x10 +/* 3A2E88 E00A24F8 00621825 */ or $v1, $v1, $v0 +/* 3A2E8C E00A24FC 312200FF */ andi $v0, $t1, 0xff +/* 3A2E90 E00A2500 00021200 */ sll $v0, $v0, 8 +/* 3A2E94 E00A2504 00621825 */ or $v1, $v1, $v0 +/* 3A2E98 E00A2508 C7A00048 */ lwc1 $f0, 0x48($sp) +/* 3A2E9C E00A250C 44952000 */ mtc1 $s5, $f4 +/* 3A2EA0 E00A2510 00000000 */ nop +/* 3A2EA4 E00A2514 46802120 */ cvt.s.w $f4, $f4 +/* 3A2EA8 E00A2518 ACC30004 */ sw $v1, 4($a2) +/* 3A2EAC E00A251C 46040001 */ sub.s $f0, $f0, $f4 +/* 3A2EB0 E00A2520 C7A2004C */ lwc1 $f2, 0x4c($sp) +/* 3A2EB4 E00A2524 00151840 */ sll $v1, $s5, 1 +/* 3A2EB8 E00A2528 46041081 */ sub.s $f2, $f2, $f4 +/* 3A2EBC E00A252C 4600018D */ trunc.w.s $f6, $f0 +/* 3A2EC0 E00A2530 44133000 */ mfc1 $s3, $f6 +/* 3A2EC4 E00A2534 00000000 */ nop +/* 3A2EC8 E00A2538 02637021 */ addu $t6, $s3, $v1 +/* 3A2ECC E00A253C 4600118D */ trunc.w.s $f6, $f2 +/* 3A2ED0 E00A2540 44023000 */ mfc1 $v0, $f6 +/* 3A2ED4 E00A2544 00000000 */ nop +/* 3A2ED8 E00A2548 00432021 */ addu $a0, $v0, $v1 +/* 3A2EDC E00A254C 06610002 */ bgez $s3, .LE00A2558 +/* 3A2EE0 E00A2550 0040582D */ daddu $t3, $v0, $zero +/* 3A2EE4 E00A2554 00132823 */ negu $a1, $s3 +.LE00A2558: +/* 3A2EE8 E00A2558 05610002 */ bgez $t3, .LE00A2564 +/* 3A2EEC E00A255C 0000182D */ daddu $v1, $zero, $zero +/* 3A2EF0 E00A2560 000B1823 */ negu $v1, $t3 +.LE00A2564: +/* 3A2EF4 E00A2564 29C20141 */ slti $v0, $t6, 0x141 +/* 3A2EF8 E00A2568 50400001 */ beql $v0, $zero, .LE00A2570 +/* 3A2EFC E00A256C 240E013F */ addiu $t6, $zero, 0x13f +.LE00A2570: +/* 3A2F00 E00A2570 288200F1 */ slti $v0, $a0, 0xf1 +/* 3A2F04 E00A2574 50400001 */ beql $v0, $zero, .LE00A257C +/* 3A2F08 E00A2578 240400EF */ addiu $a0, $zero, 0xef +.LE00A257C: +/* 3A2F0C E00A257C 16400002 */ bnez $s2, .LE00A2588 +/* 3A2F10 E00A2580 0072001A */ div $zero, $v1, $s2 +/* 3A2F14 E00A2584 0007000D */ break 7 +.LE00A2588: +/* 3A2F18 E00A2588 2401FFFF */ addiu $at, $zero, -1 +/* 3A2F1C E00A258C 16410004 */ bne $s2, $at, .LE00A25A0 +/* 3A2F20 E00A2590 3C018000 */ lui $at, 0x8000 +/* 3A2F24 E00A2594 14610002 */ bne $v1, $at, .LE00A25A0 +/* 3A2F28 E00A2598 00000000 */ nop +/* 3A2F2C E00A259C 0006000D */ break 6 +.LE00A25A0: +/* 3A2F30 E00A25A0 00005012 */ mflo $t2 +/* 3A2F34 E00A25A4 008B1023 */ subu $v0, $a0, $t3 +/* 3A2F38 E00A25A8 16400002 */ bnez $s2, .LE00A25B4 +/* 3A2F3C E00A25AC 0052001A */ div $zero, $v0, $s2 +/* 3A2F40 E00A25B0 0007000D */ break 7 +.LE00A25B4: +/* 3A2F44 E00A25B4 2401FFFF */ addiu $at, $zero, -1 +/* 3A2F48 E00A25B8 16410004 */ bne $s2, $at, .LE00A25CC +/* 3A2F4C E00A25BC 3C018000 */ lui $at, 0x8000 +/* 3A2F50 E00A25C0 14410002 */ bne $v0, $at, .LE00A25CC +/* 3A2F54 E00A25C4 00000000 */ nop +/* 3A2F58 E00A25C8 0006000D */ break 6 +.LE00A25CC: +/* 3A2F5C E00A25CC 0000B012 */ mflo $s6 +/* 3A2F60 E00A25D0 0156102A */ slt $v0, $t2, $s6 +/* 3A2F64 E00A25D4 104000D5 */ beqz $v0, .LE00A292C +/* 3A2F68 E00A25D8 AFB60054 */ sw $s6, 0x54($sp) +/* 3A2F6C E00A25DC 01520018 */ mult $t2, $s2 +/* 3A2F70 E00A25E0 0265A821 */ addu $s5, $s3, $a1 +/* 3A2F74 E00A25E4 01D51023 */ subu $v0, $t6, $s5 +/* 3A2F78 E00A25E8 00021040 */ sll $v0, $v0, 1 +/* 3A2F7C E00A25EC AFA2005C */ sw $v0, 0x5c($sp) +/* 3A2F80 E00A25F0 0000B012 */ mflo $s6 +/* 3A2F84 E00A25F4 02CB4821 */ addu $t1, $s6, $t3 +.LE00A25F8: +/* 3A2F88 E00A25F8 01321021 */ addu $v0, $t1, $s2 +/* 3A2F8C E00A25FC 284200F0 */ slti $v0, $v0, 0xf0 +/* 3A2F90 E00A2600 104000CA */ beqz $v0, .LE00A292C +/* 3A2F94 E00A2604 0120582D */ daddu $t3, $t1, $zero +/* 3A2F98 E00A2608 00093080 */ sll $a2, $t1, 2 +/* 3A2F9C E00A260C 00C91021 */ addu $v0, $a2, $t1 +/* 3A2FA0 E00A2610 000211C0 */ sll $v0, $v0, 7 +/* 3A2FA4 E00A2614 8FB6005C */ lw $s6, 0x5c($sp) +/* 3A2FA8 E00A2618 44932000 */ mtc1 $s3, $f4 +/* 3A2FAC E00A261C 00000000 */ nop +/* 3A2FB0 E00A2620 46802120 */ cvt.s.w $f4, $f4 +/* 3A2FB4 E00A2624 AFA20058 */ sw $v0, 0x58($sp) +/* 3A2FB8 E00A2628 26C20007 */ addiu $v0, $s6, 7 +/* 3A2FBC E00A262C 000210C3 */ sra $v0, $v0, 3 +/* 3A2FC0 E00A2630 304201FF */ andi $v0, $v0, 0x1ff +/* 3A2FC4 E00A2634 8FB60060 */ lw $s6, 0x60($sp) +/* 3A2FC8 E00A2638 00021240 */ sll $v0, $v0, 9 +/* 3A2FCC E00A263C 00567825 */ or $t7, $v0, $s6 +/* 3A2FD0 E00A2640 00151080 */ sll $v0, $s5, 2 +/* 3A2FD4 E00A2644 30420FFF */ andi $v0, $v0, 0xfff +/* 3A2FD8 E00A2648 00026B00 */ sll $t5, $v0, 0xc +/* 3A2FDC E00A264C 3C16F400 */ lui $s6, 0xf400 +/* 3A2FE0 E00A2650 01B6B025 */ or $s6, $t5, $s6 +/* 3A2FE4 E00A2654 25C2FFFF */ addiu $v0, $t6, -1 +/* 3A2FE8 E00A2658 00021080 */ sll $v0, $v0, 2 +/* 3A2FEC E00A265C 30420FFF */ andi $v0, $v0, 0xfff +/* 3A2FF0 E00A2660 0002CB00 */ sll $t9, $v0, 0xc +/* 3A2FF4 E00A2664 2642FFFF */ addiu $v0, $s2, -1 +/* 3A2FF8 E00A2668 00021080 */ sll $v0, $v0, 2 +/* 3A2FFC E00A266C 30580FFF */ andi $t8, $v0, 0xfff +/* 3A3000 E00A2670 3C020700 */ lui $v0, 0x700 +/* 3A3004 E00A2674 03021025 */ or $v0, $t8, $v0 +/* 3A3008 E00A2678 AFB60064 */ sw $s6, 0x64($sp) +/* 3A300C E00A267C C6200008 */ lwc1 $f0, 8($s1) +/* 3A3010 E00A2680 03221025 */ or $v0, $t9, $v0 +/* 3A3014 E00A2684 46002002 */ mul.s $f0, $f4, $f0 +/* 3A3018 E00A2688 00000000 */ nop +/* 3A301C E00A268C AFA20068 */ sw $v0, 0x68($sp) +/* 3A3020 E00A2690 8E220014 */ lw $v0, 0x14($s1) +/* 3A3024 E00A2694 8E050000 */ lw $a1, ($s0) +/* 3A3028 E00A2698 8E230004 */ lw $v1, 4($s1) +/* 3A302C E00A269C 01420018 */ mult $t2, $v0 +/* 3A3030 E00A26A0 00A0382D */ daddu $a3, $a1, $zero +/* 3A3034 E00A26A4 00031080 */ sll $v0, $v1, 2 +/* 3A3038 E00A26A8 00431021 */ addu $v0, $v0, $v1 +/* 3A303C E00A26AC 4600018D */ trunc.w.s $f6, $f0 +/* 3A3040 E00A26B0 44043000 */ mfc1 $a0, $f6 +/* 3A3044 E00A26B4 0000B012 */ mflo $s6 +/* 3A3048 E00A26B8 C620000C */ lwc1 $f0, 0xc($s1) +/* 3A304C E00A26BC 44961000 */ mtc1 $s6, $f2 +/* 3A3050 E00A26C0 00000000 */ nop +/* 3A3054 E00A26C4 468010A0 */ cvt.s.w $f2, $f2 +/* 3A3058 E00A26C8 46001082 */ mul.s $f2, $f2, $f0 +/* 3A305C E00A26CC 00000000 */ nop +/* 3A3060 E00A26D0 00021080 */ sll $v0, $v0, 2 +/* 3A3064 E00A26D4 24A50008 */ addiu $a1, $a1, 8 +/* 3A3068 E00A26D8 00042080 */ sll $a0, $a0, 2 +/* 3A306C E00A26DC 44820000 */ mtc1 $v0, $f0 +/* 3A3070 E00A26E0 00000000 */ nop +/* 3A3074 E00A26E4 46800020 */ cvt.s.w $f0, $f0 +/* 3A3078 E00A26E8 46020001 */ sub.s $f0, $f0, $f2 +/* 3A307C E00A26EC 30840FFF */ andi $a0, $a0, 0xfff +/* 3A3080 E00A26F0 00042300 */ sll $a0, $a0, 0xc +/* 3A3084 E00A26F4 4600018D */ trunc.w.s $f6, $f0 +/* 3A3088 E00A26F8 44023000 */ mfc1 $v0, $f6 +/* 3A308C E00A26FC 00000000 */ nop +/* 3A3090 E00A2700 00021080 */ sll $v0, $v0, 2 +/* 3A3094 E00A2704 30420FFF */ andi $v0, $v0, 0xfff +/* 3A3098 E00A2708 3C16F200 */ lui $s6, 0xf200 +/* 3A309C E00A270C 00561025 */ or $v0, $v0, $s6 +/* 3A30A0 E00A2710 00822025 */ or $a0, $a0, $v0 +/* 3A30A4 E00A2714 32A201FF */ andi $v0, $s5, 0x1ff +/* 3A30A8 E00A2718 ACE40000 */ sw $a0, ($a3) +/* 3A30AC E00A271C C6200008 */ lwc1 $f0, 8($s1) +/* 3A30B0 E00A2720 00021540 */ sll $v0, $v0, 0x15 +/* 3A30B4 E00A2724 AFA20070 */ sw $v0, 0x70($sp) +/* 3A30B8 E00A2728 46002102 */ mul.s $f4, $f4, $f0 +/* 3A30BC E00A272C 00000000 */ nop +/* 3A30C0 E00A2730 C6200000 */ lwc1 $f0, ($s1) +/* 3A30C4 E00A2734 46800020 */ cvt.s.w $f0, $f0 +/* 3A30C8 E00A2738 AE050000 */ sw $a1, ($s0) +/* 3A30CC E00A273C 8E220014 */ lw $v0, 0x14($s1) +/* 3A30D0 E00A2740 01420018 */ mult $t2, $v0 +/* 3A30D4 E00A2744 0000602D */ daddu $t4, $zero, $zero +/* 3A30D8 E00A2748 30C60FFF */ andi $a2, $a2, 0xfff +/* 3A30DC E00A274C 01A6F025 */ or $fp, $t5, $a2 +/* 3A30E0 E00A2750 8E240004 */ lw $a0, 4($s1) +/* 3A30E4 E00A2754 46002100 */ add.s $f4, $f4, $f0 +/* 3A30E8 E00A2758 00041080 */ sll $v0, $a0, 2 +/* 3A30EC E00A275C 00441021 */ addu $v0, $v0, $a0 +/* 3A30F0 E00A2760 4600218D */ trunc.w.s $f6, $f4 +/* 3A30F4 E00A2764 44033000 */ mfc1 $v1, $f6 +/* 3A30F8 E00A2768 0000B012 */ mflo $s6 +/* 3A30FC E00A276C C620000C */ lwc1 $f0, 0xc($s1) +/* 3A3100 E00A2770 44961000 */ mtc1 $s6, $f2 +/* 3A3104 E00A2774 00000000 */ nop +/* 3A3108 E00A2778 468010A0 */ cvt.s.w $f2, $f2 +/* 3A310C E00A277C 46001082 */ mul.s $f2, $f2, $f0 +/* 3A3110 E00A2780 00000000 */ nop +/* 3A3114 E00A2784 00021080 */ sll $v0, $v0, 2 +/* 3A3118 E00A2788 00441021 */ addu $v0, $v0, $a0 +/* 3A311C E00A278C 00031880 */ sll $v1, $v1, 2 +/* 3A3120 E00A2790 44820000 */ mtc1 $v0, $f0 +/* 3A3124 E00A2794 00000000 */ nop +/* 3A3128 E00A2798 46800020 */ cvt.s.w $f0, $f0 +/* 3A312C E00A279C 46020001 */ sub.s $f0, $f0, $f2 +/* 3A3130 E00A27A0 30630FFF */ andi $v1, $v1, 0xfff +/* 3A3134 E00A27A4 00031B00 */ sll $v1, $v1, 0xc +/* 3A3138 E00A27A8 4600018D */ trunc.w.s $f6, $f0 +/* 3A313C E00A27AC 44023000 */ mfc1 $v0, $f6 +/* 3A3140 E00A27B0 00000000 */ nop +/* 3A3144 E00A27B4 00021080 */ sll $v0, $v0, 2 +/* 3A3148 E00A27B8 30420FFF */ andi $v0, $v0, 0xfff +/* 3A314C E00A27BC 00621825 */ or $v1, $v1, $v0 +/* 3A3150 E00A27C0 ACE30004 */ sw $v1, 4($a3) +.LE00A27C4: +/* 3A3154 E00A27C4 3C02FD10 */ lui $v0, 0xfd10 +/* 3A3158 E00A27C8 3442013F */ ori $v0, $v0, 0x13f +/* 3A315C E00A27CC 3C060702 */ lui $a2, 0x702 +/* 3A3160 E00A27D0 34C60090 */ ori $a2, $a2, 0x90 +/* 3A3164 E00A27D4 3C070102 */ lui $a3, 0x102 +/* 3A3168 E00A27D8 34E70090 */ ori $a3, $a3, 0x90 +/* 3A316C E00A27DC 3C080400 */ lui $t0, 0x400 +/* 3A3170 E00A27E0 35080400 */ ori $t0, $t0, 0x400 +/* 3A3174 E00A27E4 258C0001 */ addiu $t4, $t4, 1 +/* 3A3178 E00A27E8 8E050000 */ lw $a1, ($s0) +/* 3A317C E00A27EC 3C03800A */ lui $v1, %hi(D_8009A64C) +/* 3A3180 E00A27F0 8C63A64C */ lw $v1, %lo(D_8009A64C)($v1) +/* 3A3184 E00A27F4 00A0202D */ daddu $a0, $a1, $zero +/* 3A3188 E00A27F8 24A50008 */ addiu $a1, $a1, 8 +/* 3A318C E00A27FC AE050000 */ sw $a1, ($s0) +/* 3A3190 E00A2800 AC820000 */ sw $v0, ($a0) +/* 3A3194 E00A2804 8FB60058 */ lw $s6, 0x58($sp) +/* 3A3198 E00A2808 3C028000 */ lui $v0, 0x8000 +/* 3A319C E00A280C 00761821 */ addu $v1, $v1, $s6 +/* 3A31A0 E00A2810 00621821 */ addu $v1, $v1, $v0 +/* 3A31A4 E00A2814 24A20008 */ addiu $v0, $a1, 8 +/* 3A31A8 E00A2818 AC830004 */ sw $v1, 4($a0) +/* 3A31AC E00A281C AE020000 */ sw $v0, ($s0) +/* 3A31B0 E00A2820 24A20010 */ addiu $v0, $a1, 0x10 +/* 3A31B4 E00A2824 ACAF0000 */ sw $t7, ($a1) +/* 3A31B8 E00A2828 ACA60004 */ sw $a2, 4($a1) +/* 3A31BC E00A282C AE020000 */ sw $v0, ($s0) +/* 3A31C0 E00A2830 3C02E600 */ lui $v0, 0xe600 +/* 3A31C4 E00A2834 ACA20008 */ sw $v0, 8($a1) +/* 3A31C8 E00A2838 24A20018 */ addiu $v0, $a1, 0x18 +/* 3A31CC E00A283C ACA0000C */ sw $zero, 0xc($a1) +/* 3A31D0 E00A2840 AE020000 */ sw $v0, ($s0) +/* 3A31D4 E00A2844 24A20020 */ addiu $v0, $a1, 0x20 +/* 3A31D8 E00A2848 000E2080 */ sll $a0, $t6, 2 +/* 3A31DC E00A284C 30840FFF */ andi $a0, $a0, 0xfff +/* 3A31E0 E00A2850 8FB60064 */ lw $s6, 0x64($sp) +/* 3A31E4 E00A2854 00042300 */ sll $a0, $a0, 0xc +/* 3A31E8 E00A2858 ACB60010 */ sw $s6, 0x10($a1) +/* 3A31EC E00A285C 8FB60068 */ lw $s6, 0x68($sp) +/* 3A31F0 E00A2860 3C03E400 */ lui $v1, 0xe400 +/* 3A31F4 E00A2864 ACB60014 */ sw $s6, 0x14($a1) +/* 3A31F8 E00A2868 3C16E700 */ lui $s6, 0xe700 +/* 3A31FC E00A286C AE020000 */ sw $v0, ($s0) +/* 3A3200 E00A2870 24A20028 */ addiu $v0, $a1, 0x28 +/* 3A3204 E00A2874 ACB60018 */ sw $s6, 0x18($a1) +/* 3A3208 E00A2878 ACA0001C */ sw $zero, 0x1c($a1) +/* 3A320C E00A287C AE020000 */ sw $v0, ($s0) +/* 3A3210 E00A2880 24A20030 */ addiu $v0, $a1, 0x30 +/* 3A3214 E00A2884 3C16F200 */ lui $s6, 0xf200 +/* 3A3218 E00A2888 ACAF0020 */ sw $t7, 0x20($a1) +/* 3A321C E00A288C ACA70024 */ sw $a3, 0x24($a1) +/* 3A3220 E00A2890 AE020000 */ sw $v0, ($s0) +/* 3A3224 E00A2894 01B61025 */ or $v0, $t5, $s6 +/* 3A3228 E00A2898 ACA20028 */ sw $v0, 0x28($a1) +/* 3A322C E00A289C 3C020100 */ lui $v0, 0x100 +/* 3A3230 E00A28A0 03021025 */ or $v0, $t8, $v0 +/* 3A3234 E00A28A4 03221025 */ or $v0, $t9, $v0 +/* 3A3238 E00A28A8 ACA2002C */ sw $v0, 0x2c($a1) +/* 3A323C E00A28AC 24A20038 */ addiu $v0, $a1, 0x38 +/* 3A3240 E00A28B0 AE020000 */ sw $v0, ($s0) +/* 3A3244 E00A28B4 01721021 */ addu $v0, $t3, $s2 +/* 3A3248 E00A28B8 00021080 */ sll $v0, $v0, 2 +/* 3A324C E00A28BC 30420FFF */ andi $v0, $v0, 0xfff +/* 3A3250 E00A28C0 00431025 */ or $v0, $v0, $v1 +/* 3A3254 E00A28C4 00822025 */ or $a0, $a0, $v0 +/* 3A3258 E00A28C8 24A20040 */ addiu $v0, $a1, 0x40 +/* 3A325C E00A28CC ACA40030 */ sw $a0, 0x30($a1) +/* 3A3260 E00A28D0 ACBE0034 */ sw $fp, 0x34($a1) +/* 3A3264 E00A28D4 AE020000 */ sw $v0, ($s0) +/* 3A3268 E00A28D8 3C02E100 */ lui $v0, 0xe100 +/* 3A326C E00A28DC ACA20038 */ sw $v0, 0x38($a1) +/* 3A3270 E00A28E0 8FB60070 */ lw $s6, 0x70($sp) +/* 3A3274 E00A28E4 24A20048 */ addiu $v0, $a1, 0x48 +/* 3A3278 E00A28E8 ACB6003C */ sw $s6, 0x3c($a1) +/* 3A327C E00A28EC AE020000 */ sw $v0, ($s0) +/* 3A3280 E00A28F0 3C02F100 */ lui $v0, 0xf100 +/* 3A3284 E00A28F4 ACA20040 */ sw $v0, 0x40($a1) +/* 3A3288 E00A28F8 24A20050 */ addiu $v0, $a1, 0x50 +/* 3A328C E00A28FC ACA80044 */ sw $t0, 0x44($a1) +/* 3A3290 E00A2900 AE020000 */ sw $v0, ($s0) +/* 3A3294 E00A2904 3C16E700 */ lui $s6, 0xe700 +/* 3A3298 E00A2908 29820002 */ slti $v0, $t4, 2 +/* 3A329C E00A290C ACB60048 */ sw $s6, 0x48($a1) +/* 3A32A0 E00A2910 1440FFAC */ bnez $v0, .LE00A27C4 +/* 3A32A4 E00A2914 ACA0004C */ sw $zero, 0x4c($a1) +/* 3A32A8 E00A2918 8FB60054 */ lw $s6, 0x54($sp) +/* 3A32AC E00A291C 254A0001 */ addiu $t2, $t2, 1 +/* 3A32B0 E00A2920 0156102A */ slt $v0, $t2, $s6 +/* 3A32B4 E00A2924 1440FF34 */ bnez $v0, .LE00A25F8 +/* 3A32B8 E00A2928 01324821 */ addu $t1, $t1, $s2 +.LE00A292C: +/* 3A32BC E00A292C 26F70004 */ addiu $s7, $s7, 4 +.LE00A2930: +/* 3A32C0 E00A2930 26820010 */ addiu $v0, $s4, 0x10 +/* 3A32C4 E00A2934 8FB6006C */ lw $s6, 0x6c($sp) +/* 3A32C8 E00A2938 02E2102A */ slt $v0, $s7, $v0 +/* 3A32CC E00A293C 26D60004 */ addiu $s6, $s6, 4 +/* 3A32D0 E00A2940 1440FE75 */ bnez $v0, .LE00A2318 +/* 3A32D4 E00A2944 AFB6006C */ sw $s6, 0x6c($sp) +/* 3A32D8 E00A2948 0000182D */ daddu $v1, $zero, $zero +/* 3A32DC E00A294C 27A80018 */ addiu $t0, $sp, 0x18 +/* 3A32E0 E00A2950 27A70028 */ addiu $a3, $sp, 0x28 +/* 3A32E4 E00A2954 27A60038 */ addiu $a2, $sp, 0x38 +.LE00A2958: +/* 3A32E8 E00A2958 24650001 */ addiu $a1, $v1, 1 +/* 3A32EC E00A295C 00052080 */ sll $a0, $a1, 2 +/* 3A32F0 E00A2960 02842021 */ addu $a0, $s4, $a0 +/* 3A32F4 E00A2964 00031880 */ sll $v1, $v1, 2 +/* 3A32F8 E00A2968 01031021 */ addu $v0, $t0, $v1 +/* 3A32FC E00A296C C4400000 */ lwc1 $f0, ($v0) +/* 3A3300 E00A2970 46800020 */ cvt.s.w $f0, $f0 +/* 3A3304 E00A2974 00E31021 */ addu $v0, $a3, $v1 +/* 3A3308 E00A2978 E480003C */ swc1 $f0, 0x3c($a0) +/* 3A330C E00A297C C4400000 */ lwc1 $f0, ($v0) +/* 3A3310 E00A2980 00C31821 */ addu $v1, $a2, $v1 +/* 3A3314 E00A2984 E480001C */ swc1 $f0, 0x1c($a0) +/* 3A3318 E00A2988 C4600000 */ lwc1 $f0, ($v1) +/* 3A331C E00A298C 00A0182D */ daddu $v1, $a1, $zero +/* 3A3320 E00A2990 28620003 */ slti $v0, $v1, 3 +/* 3A3324 E00A2994 1440FFF0 */ bnez $v0, .LE00A2958 +/* 3A3328 E00A2998 E480002C */ swc1 $f0, 0x2c($a0) +/* 3A332C E00A299C 8FBF009C */ lw $ra, 0x9c($sp) +/* 3A3330 E00A29A0 8FBE0098 */ lw $fp, 0x98($sp) +/* 3A3334 E00A29A4 8FB70094 */ lw $s7, 0x94($sp) +/* 3A3338 E00A29A8 8FB60090 */ lw $s6, 0x90($sp) +/* 3A333C E00A29AC 8FB5008C */ lw $s5, 0x8c($sp) +/* 3A3340 E00A29B0 8FB40088 */ lw $s4, 0x88($sp) +/* 3A3344 E00A29B4 8FB30084 */ lw $s3, 0x84($sp) +/* 3A3348 E00A29B8 8FB20080 */ lw $s2, 0x80($sp) +/* 3A334C E00A29BC 8FB1007C */ lw $s1, 0x7c($sp) +/* 3A3350 E00A29C0 8FB00078 */ lw $s0, 0x78($sp) +/* 3A3354 E00A29C4 03E00008 */ jr $ra +/* 3A3358 E00A29C8 27BD00A0 */ addiu $sp, $sp, 0xa0 +/* 3A335C E00A29CC 00000000 */ nop diff --git a/asm/nonmatchings/code_3A5550/func_E00A6000.s b/asm/nonmatchings/code_3A5550/func_E00A6000.s new file mode 100644 index 0000000000..28ee36d1f0 --- /dev/null +++ b/asm/nonmatchings/code_3A5550/func_E00A6000.s @@ -0,0 +1,77 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A6000 +/* 3A5550 E00A6000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3A5554 E00A6004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3A5558 E00A6008 4485A000 */ mtc1 $a1, $f20 +/* 3A555C E00A600C AFB1002C */ sw $s1, 0x2c($sp) +/* 3A5560 E00A6010 0080882D */ daddu $s1, $a0, $zero +/* 3A5564 E00A6014 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3A5568 E00A6018 4486B000 */ mtc1 $a2, $f22 +/* 3A556C E00A601C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A5570 E00A6020 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3A5574 E00A6024 4487C000 */ mtc1 $a3, $f24 +/* 3A5578 E00A6028 3C02E00A */ lui $v0, %hi(D_E00A611C) +/* 3A557C E00A602C 2442611C */ addiu $v0, $v0, %lo(D_E00A611C) +/* 3A5580 E00A6030 AFA20018 */ sw $v0, 0x18($sp) +/* 3A5584 E00A6034 3C02E00A */ lui $v0, %hi(D_E00A6124) +/* 3A5588 E00A6038 24426124 */ addiu $v0, $v0, %lo(D_E00A6124) +/* 3A558C E00A603C AFA2001C */ sw $v0, 0x1c($sp) +/* 3A5590 E00A6040 3C02E00A */ lui $v0, %hi(D_E00A6358) +/* 3A5594 E00A6044 24426358 */ addiu $v0, $v0, %lo(D_E00A6358) +/* 3A5598 E00A6048 AFA20020 */ sw $v0, 0x20($sp) +/* 3A559C E00A604C 24020053 */ addiu $v0, $zero, 0x53 +/* 3A55A0 E00A6050 AFBF0030 */ sw $ra, 0x30($sp) +/* 3A55A4 E00A6054 AFB00028 */ sw $s0, 0x28($sp) +/* 3A55A8 E00A6058 AFA00010 */ sw $zero, 0x10($sp) +/* 3A55AC E00A605C AFA00024 */ sw $zero, 0x24($sp) +/* 3A55B0 E00A6060 0C080124 */ jal func_E0200490 +/* 3A55B4 E00A6064 AFA20014 */ sw $v0, 0x14($sp) +/* 3A55B8 E00A6068 2404003C */ addiu $a0, $zero, 0x3c +/* 3A55BC E00A606C 24030001 */ addiu $v1, $zero, 1 +/* 3A55C0 E00A6070 0040802D */ daddu $s0, $v0, $zero +/* 3A55C4 E00A6074 0C08012C */ jal func_E02004B0 +/* 3A55C8 E00A6078 AE030008 */ sw $v1, 8($s0) +/* 3A55CC E00A607C 0040202D */ daddu $a0, $v0, $zero +/* 3A55D0 E00A6080 14800003 */ bnez $a0, .LE00A6090 +/* 3A55D4 E00A6084 AE02000C */ sw $v0, 0xc($s0) +.LE00A6088: +/* 3A55D8 E00A6088 08029822 */ j .LE00A6088 +/* 3A55DC E00A608C 00000000 */ nop +.LE00A6090: +/* 3A55E0 E00A6090 0200102D */ daddu $v0, $s0, $zero +/* 3A55E4 E00A6094 44800000 */ mtc1 $zero, $f0 +/* 3A55E8 E00A6098 3C013F99 */ lui $at, 0x3f99 +/* 3A55EC E00A609C 3421999A */ ori $at, $at, 0x999a +/* 3A55F0 E00A60A0 44812000 */ mtc1 $at, $f4 +/* 3A55F4 E00A60A4 3C013ECC */ lui $at, 0x3ecc +/* 3A55F8 E00A60A8 3421CCCD */ ori $at, $at, 0xcccd +/* 3A55FC E00A60AC 44811000 */ mtc1 $at, $f2 +/* 3A5600 E00A60B0 3C01BF80 */ lui $at, 0xbf80 +/* 3A5604 E00A60B4 44813000 */ mtc1 $at, $f6 +/* 3A5608 E00A60B8 24030064 */ addiu $v1, $zero, 0x64 +/* 3A560C E00A60BC AC830004 */ sw $v1, 4($a0) +/* 3A5610 E00A60C0 240300FF */ addiu $v1, $zero, 0xff +/* 3A5614 E00A60C4 AC910000 */ sw $s1, ($a0) +/* 3A5618 E00A60C8 AC830018 */ sw $v1, 0x18($a0) +/* 3A561C E00A60CC E494000C */ swc1 $f20, 0xc($a0) +/* 3A5620 E00A60D0 E4960010 */ swc1 $f22, 0x10($a0) +/* 3A5624 E00A60D4 E4980014 */ swc1 $f24, 0x14($a0) +/* 3A5628 E00A60D8 AC800008 */ sw $zero, 8($a0) +/* 3A562C E00A60DC E4800020 */ swc1 $f0, 0x20($a0) +/* 3A5630 E00A60E0 E480001C */ swc1 $f0, 0x1c($a0) +/* 3A5634 E00A60E4 E4800028 */ swc1 $f0, 0x28($a0) +/* 3A5638 E00A60E8 E4800024 */ swc1 $f0, 0x24($a0) +/* 3A563C E00A60EC E484002C */ swc1 $f4, 0x2c($a0) +/* 3A5640 E00A60F0 E4820030 */ swc1 $f2, 0x30($a0) +/* 3A5644 E00A60F4 E4860034 */ swc1 $f6, 0x34($a0) +/* 3A5648 E00A60F8 E4820038 */ swc1 $f2, 0x38($a0) +/* 3A564C E00A60FC 8FBF0030 */ lw $ra, 0x30($sp) +/* 3A5650 E00A6100 8FB1002C */ lw $s1, 0x2c($sp) +/* 3A5654 E00A6104 8FB00028 */ lw $s0, 0x28($sp) +/* 3A5658 E00A6108 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3A565C E00A610C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3A5660 E00A6110 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3A5664 E00A6114 03E00008 */ jr $ra +/* 3A5668 E00A6118 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3A5550/func_E00A611C.s b/asm/nonmatchings/code_3A5550/func_E00A611C.s new file mode 100644 index 0000000000..d1b88c88b1 --- /dev/null +++ b/asm/nonmatchings/code_3A5550/func_E00A611C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A611C +/* 3A566C E00A611C 03E00008 */ jr $ra +/* 3A5670 E00A6120 00000000 */ nop diff --git a/asm/nonmatchings/code_3A5550/func_E00A6124.s b/asm/nonmatchings/code_3A5550/func_E00A6124.s new file mode 100644 index 0000000000..9393174ee2 --- /dev/null +++ b/asm/nonmatchings/code_3A5550/func_E00A6124.s @@ -0,0 +1,162 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A6124 +/* 3A5674 E00A6124 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3A5678 E00A6128 AFBF0010 */ sw $ra, 0x10($sp) +/* 3A567C E00A612C 8C830000 */ lw $v1, ($a0) +/* 3A5680 E00A6130 8C85000C */ lw $a1, 0xc($a0) +/* 3A5684 E00A6134 30620010 */ andi $v0, $v1, 0x10 +/* 3A5688 E00A6138 10400005 */ beqz $v0, .LE00A6150 +/* 3A568C E00A613C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3A5690 E00A6140 00621024 */ and $v0, $v1, $v0 +/* 3A5694 E00A6144 AC820000 */ sw $v0, ($a0) +/* 3A5698 E00A6148 2402001E */ addiu $v0, $zero, 0x1e +/* 3A569C E00A614C ACA20004 */ sw $v0, 4($a1) +.LE00A6150: +/* 3A56A0 E00A6150 8CA30004 */ lw $v1, 4($a1) +/* 3A56A4 E00A6154 28620064 */ slti $v0, $v1, 0x64 +/* 3A56A8 E00A6158 10400002 */ beqz $v0, .LE00A6164 +/* 3A56AC E00A615C 2462FFFF */ addiu $v0, $v1, -1 +/* 3A56B0 E00A6160 ACA20004 */ sw $v0, 4($a1) +.LE00A6164: +/* 3A56B4 E00A6164 8CA20008 */ lw $v0, 8($a1) +/* 3A56B8 E00A6168 8CA30004 */ lw $v1, 4($a1) +/* 3A56BC E00A616C 24420001 */ addiu $v0, $v0, 1 +/* 3A56C0 E00A6170 04610005 */ bgez $v1, .LE00A6188 +/* 3A56C4 E00A6174 ACA20008 */ sw $v0, 8($a1) +/* 3A56C8 E00A6178 0C080128 */ jal func_E02004A0 +/* 3A56CC E00A617C 00000000 */ nop +/* 3A56D0 E00A6180 080298D3 */ j .LE00A634C +/* 3A56D4 E00A6184 00000000 */ nop +.LE00A6188: +/* 3A56D8 E00A6188 C4A2001C */ lwc1 $f2, 0x1c($a1) +/* 3A56DC E00A618C C4A0002C */ lwc1 $f0, 0x2c($a1) +/* 3A56E0 E00A6190 C4A60020 */ lwc1 $f6, 0x20($a1) +/* 3A56E4 E00A6194 C4A40024 */ lwc1 $f4, 0x24($a1) +/* 3A56E8 E00A6198 46001080 */ add.s $f2, $f2, $f0 +/* 3A56EC E00A619C C4A00030 */ lwc1 $f0, 0x30($a1) +/* 3A56F0 E00A61A0 8CA40008 */ lw $a0, 8($a1) +/* 3A56F4 E00A61A4 46003180 */ add.s $f6, $f6, $f0 +/* 3A56F8 E00A61A8 C4A00034 */ lwc1 $f0, 0x34($a1) +/* 3A56FC E00A61AC 8CA30004 */ lw $v1, 4($a1) +/* 3A5700 E00A61B0 46002100 */ add.s $f4, $f4, $f0 +/* 3A5704 E00A61B4 C4A00028 */ lwc1 $f0, 0x28($a1) +/* 3A5708 E00A61B8 E4A2001C */ swc1 $f2, 0x1c($a1) +/* 3A570C E00A61BC C4A20038 */ lwc1 $f2, 0x38($a1) +/* 3A5710 E00A61C0 28820011 */ slti $v0, $a0, 0x11 +/* 3A5714 E00A61C4 46020000 */ add.s $f0, $f0, $f2 +/* 3A5718 E00A61C8 E4A60020 */ swc1 $f6, 0x20($a1) +/* 3A571C E00A61CC E4A40024 */ swc1 $f4, 0x24($a1) +/* 3A5720 E00A61D0 10400004 */ beqz $v0, .LE00A61E4 +/* 3A5724 E00A61D4 E4A00028 */ swc1 $f0, 0x28($a1) +/* 3A5728 E00A61D8 00041100 */ sll $v0, $a0, 4 +/* 3A572C E00A61DC 2442FFFF */ addiu $v0, $v0, -1 +/* 3A5730 E00A61E0 ACA20018 */ sw $v0, 0x18($a1) +.LE00A61E4: +/* 3A5734 E00A61E4 28620010 */ slti $v0, $v1, 0x10 +/* 3A5738 E00A61E8 10400002 */ beqz $v0, .LE00A61F4 +/* 3A573C E00A61EC 00031100 */ sll $v0, $v1, 4 +/* 3A5740 E00A61F0 ACA20018 */ sw $v0, 0x18($a1) +.LE00A61F4: +/* 3A5744 E00A61F4 C4A2001C */ lwc1 $f2, 0x1c($a1) +/* 3A5748 E00A61F8 44800000 */ mtc1 $zero, $f0 +/* 3A574C E00A61FC 00000000 */ nop +/* 3A5750 E00A6200 4600103C */ c.lt.s $f2, $f0 +/* 3A5754 E00A6204 00000000 */ nop +/* 3A5758 E00A6208 45000005 */ bc1f .LE00A6220 +/* 3A575C E00A620C 00000000 */ nop +/* 3A5760 E00A6210 3C014300 */ lui $at, 0x4300 +/* 3A5764 E00A6214 44810000 */ mtc1 $at, $f0 +/* 3A5768 E00A6218 08029890 */ j .LE00A6240 +/* 3A576C E00A621C 46001000 */ add.s $f0, $f2, $f0 +.LE00A6220: +/* 3A5770 E00A6220 3C014300 */ lui $at, 0x4300 +/* 3A5774 E00A6224 44810000 */ mtc1 $at, $f0 +/* 3A5778 E00A6228 00000000 */ nop +/* 3A577C E00A622C 4602003C */ c.lt.s $f0, $f2 +/* 3A5780 E00A6230 00000000 */ nop +/* 3A5784 E00A6234 45000003 */ bc1f .LE00A6244 +/* 3A5788 E00A6238 00000000 */ nop +/* 3A578C E00A623C 46001001 */ sub.s $f0, $f2, $f0 +.LE00A6240: +/* 3A5790 E00A6240 E4A0001C */ swc1 $f0, 0x1c($a1) +.LE00A6244: +/* 3A5794 E00A6244 C4A00020 */ lwc1 $f0, 0x20($a1) +/* 3A5798 E00A6248 C4A20030 */ lwc1 $f2, 0x30($a1) +/* 3A579C E00A624C 46020080 */ add.s $f2, $f0, $f2 +/* 3A57A0 E00A6250 44800000 */ mtc1 $zero, $f0 +/* 3A57A4 E00A6254 00000000 */ nop +/* 3A57A8 E00A6258 4600103C */ c.lt.s $f2, $f0 +/* 3A57AC E00A625C 00000000 */ nop +/* 3A57B0 E00A6260 45000005 */ bc1f .LE00A6278 +/* 3A57B4 E00A6264 E4A20020 */ swc1 $f2, 0x20($a1) +/* 3A57B8 E00A6268 3C014300 */ lui $at, 0x4300 +/* 3A57BC E00A626C 44810000 */ mtc1 $at, $f0 +/* 3A57C0 E00A6270 080298A6 */ j .LE00A6298 +/* 3A57C4 E00A6274 46001000 */ add.s $f0, $f2, $f0 +.LE00A6278: +/* 3A57C8 E00A6278 3C014300 */ lui $at, 0x4300 +/* 3A57CC E00A627C 44810000 */ mtc1 $at, $f0 +/* 3A57D0 E00A6280 00000000 */ nop +/* 3A57D4 E00A6284 4602003C */ c.lt.s $f0, $f2 +/* 3A57D8 E00A6288 00000000 */ nop +/* 3A57DC E00A628C 45000003 */ bc1f .LE00A629C +/* 3A57E0 E00A6290 00000000 */ nop +/* 3A57E4 E00A6294 46001001 */ sub.s $f0, $f2, $f0 +.LE00A6298: +/* 3A57E8 E00A6298 E4A00020 */ swc1 $f0, 0x20($a1) +.LE00A629C: +/* 3A57EC E00A629C C4A00024 */ lwc1 $f0, 0x24($a1) +/* 3A57F0 E00A62A0 C4A20034 */ lwc1 $f2, 0x34($a1) +/* 3A57F4 E00A62A4 46020080 */ add.s $f2, $f0, $f2 +/* 3A57F8 E00A62A8 44800000 */ mtc1 $zero, $f0 +/* 3A57FC E00A62AC 00000000 */ nop +/* 3A5800 E00A62B0 4600103C */ c.lt.s $f2, $f0 +/* 3A5804 E00A62B4 00000000 */ nop +/* 3A5808 E00A62B8 45000005 */ bc1f .LE00A62D0 +/* 3A580C E00A62BC E4A20024 */ swc1 $f2, 0x24($a1) +/* 3A5810 E00A62C0 3C014300 */ lui $at, 0x4300 +/* 3A5814 E00A62C4 44810000 */ mtc1 $at, $f0 +/* 3A5818 E00A62C8 080298BC */ j .LE00A62F0 +/* 3A581C E00A62CC 46001000 */ add.s $f0, $f2, $f0 +.LE00A62D0: +/* 3A5820 E00A62D0 3C014300 */ lui $at, 0x4300 +/* 3A5824 E00A62D4 44810000 */ mtc1 $at, $f0 +/* 3A5828 E00A62D8 00000000 */ nop +/* 3A582C E00A62DC 4602003C */ c.lt.s $f0, $f2 +/* 3A5830 E00A62E0 00000000 */ nop +/* 3A5834 E00A62E4 45000003 */ bc1f .LE00A62F4 +/* 3A5838 E00A62E8 00000000 */ nop +/* 3A583C E00A62EC 46001001 */ sub.s $f0, $f2, $f0 +.LE00A62F0: +/* 3A5840 E00A62F0 E4A00024 */ swc1 $f0, 0x24($a1) +.LE00A62F4: +/* 3A5844 E00A62F4 C4A00028 */ lwc1 $f0, 0x28($a1) +/* 3A5848 E00A62F8 C4A20038 */ lwc1 $f2, 0x38($a1) +/* 3A584C E00A62FC 46020080 */ add.s $f2, $f0, $f2 +/* 3A5850 E00A6300 44800000 */ mtc1 $zero, $f0 +/* 3A5854 E00A6304 00000000 */ nop +/* 3A5858 E00A6308 4600103C */ c.lt.s $f2, $f0 +/* 3A585C E00A630C 00000000 */ nop +/* 3A5860 E00A6310 45000005 */ bc1f .LE00A6328 +/* 3A5864 E00A6314 E4A20028 */ swc1 $f2, 0x28($a1) +/* 3A5868 E00A6318 3C014300 */ lui $at, 0x4300 +/* 3A586C E00A631C 44810000 */ mtc1 $at, $f0 +/* 3A5870 E00A6320 080298D2 */ j .LE00A6348 +/* 3A5874 E00A6324 46001000 */ add.s $f0, $f2, $f0 +.LE00A6328: +/* 3A5878 E00A6328 3C014300 */ lui $at, 0x4300 +/* 3A587C E00A632C 44810000 */ mtc1 $at, $f0 +/* 3A5880 E00A6330 00000000 */ nop +/* 3A5884 E00A6334 4602003C */ c.lt.s $f0, $f2 +/* 3A5888 E00A6338 00000000 */ nop +/* 3A588C E00A633C 45000003 */ bc1f .LE00A634C +/* 3A5890 E00A6340 00000000 */ nop +/* 3A5894 E00A6344 46001001 */ sub.s $f0, $f2, $f0 +.LE00A6348: +/* 3A5898 E00A6348 E4A00028 */ swc1 $f0, 0x28($a1) +.LE00A634C: +/* 3A589C E00A634C 8FBF0010 */ lw $ra, 0x10($sp) +/* 3A58A0 E00A6350 03E00008 */ jr $ra +/* 3A58A4 E00A6354 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3A5550/func_E00A6358.s b/asm/nonmatchings/code_3A5550/func_E00A6358.s new file mode 100644 index 0000000000..e04a26f672 --- /dev/null +++ b/asm/nonmatchings/code_3A5550/func_E00A6358.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A6358 +/* 3A58A8 E00A6358 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3A58AC E00A635C 3C02E00A */ lui $v0, %hi(D_E00A63A4) +/* 3A58B0 E00A6360 244263A4 */ addiu $v0, $v0, %lo(D_E00A63A4) +/* 3A58B4 E00A6364 AFA2001C */ sw $v0, 0x1c($sp) +/* 3A58B8 E00A6368 2402002D */ addiu $v0, $zero, 0x2d +/* 3A58BC E00A636C AFA40018 */ sw $a0, 0x18($sp) +/* 3A58C0 E00A6370 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A58C4 E00A6374 AFBF0020 */ sw $ra, 0x20($sp) +/* 3A58C8 E00A6378 AFA00014 */ sw $zero, 0x14($sp) +/* 3A58CC E00A637C 0C080120 */ jal func_E0200480 +/* 3A58D0 E00A6380 AFA20010 */ sw $v0, 0x10($sp) +/* 3A58D4 E00A6384 8C430000 */ lw $v1, ($v0) +/* 3A58D8 E00A6388 34630002 */ ori $v1, $v1, 2 +/* 3A58DC E00A638C AC430000 */ sw $v1, ($v0) +/* 3A58E0 E00A6390 8FBF0020 */ lw $ra, 0x20($sp) +/* 3A58E4 E00A6394 03E00008 */ jr $ra +/* 3A58E8 E00A6398 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3A5550/func_E00A639C.s b/asm/nonmatchings/code_3A5550/func_E00A639C.s new file mode 100644 index 0000000000..6c95f6ef69 --- /dev/null +++ b/asm/nonmatchings/code_3A5550/func_E00A639C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A639C +/* 3A58EC E00A639C 03E00008 */ jr $ra +/* 3A58F0 E00A63A0 00000000 */ nop diff --git a/asm/nonmatchings/code_3A5550/func_E00A63A4.s b/asm/nonmatchings/code_3A5550/func_E00A63A4.s new file mode 100644 index 0000000000..663574e0bd --- /dev/null +++ b/asm/nonmatchings/code_3A5550/func_E00A63A4.s @@ -0,0 +1,191 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00A63A4 +/* 3A58F4 E00A63A4 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 3A58F8 E00A63A8 0080182D */ daddu $v1, $a0, $zero +/* 3A58FC E00A63AC 3C05DB06 */ lui $a1, 0xdb06 +/* 3A5900 E00A63B0 34A50024 */ ori $a1, $a1, 0x24 +/* 3A5904 E00A63B4 AFB10094 */ sw $s1, 0x94($sp) +/* 3A5908 E00A63B8 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 3A590C E00A63BC 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 3A5910 E00A63C0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A5914 E00A63C4 AFB600A8 */ sw $s6, 0xa8($sp) +/* 3A5918 E00A63C8 3C16E700 */ lui $s6, 0xe700 +/* 3A591C E00A63CC AFBF00AC */ sw $ra, 0xac($sp) +/* 3A5920 E00A63D0 AFB500A4 */ sw $s5, 0xa4($sp) +/* 3A5924 E00A63D4 AFB400A0 */ sw $s4, 0xa0($sp) +/* 3A5928 E00A63D8 AFB3009C */ sw $s3, 0x9c($sp) +/* 3A592C E00A63DC AFB20098 */ sw $s2, 0x98($sp) +/* 3A5930 E00A63E0 AFB00090 */ sw $s0, 0x90($sp) +/* 3A5934 E00A63E4 8E280000 */ lw $t0, ($s1) +/* 3A5938 E00A63E8 8C72000C */ lw $s2, 0xc($v1) +/* 3A593C E00A63EC 0100102D */ daddu $v0, $t0, $zero +/* 3A5940 E00A63F0 8E540018 */ lw $s4, 0x18($s2) +/* 3A5944 E00A63F4 25080008 */ addiu $t0, $t0, 8 +/* 3A5948 E00A63F8 AC560000 */ sw $s6, ($v0) +/* 3A594C E00A63FC AC400004 */ sw $zero, 4($v0) +/* 3A5950 E00A6400 AD050000 */ sw $a1, ($t0) +/* 3A5954 E00A6404 8C620010 */ lw $v0, 0x10($v1) +/* 3A5958 E00A6408 3C150001 */ lui $s5, 1 +/* 3A595C E00A640C AE280000 */ sw $t0, ($s1) +/* 3A5960 E00A6410 8C42001C */ lw $v0, 0x1c($v0) +/* 3A5964 E00A6414 3C038000 */ lui $v1, 0x8000 +/* 3A5968 E00A6418 00431021 */ addu $v0, $v0, $v1 +/* 3A596C E00A641C AD020004 */ sw $v0, 4($t0) +/* 3A5970 E00A6420 8E45000C */ lw $a1, 0xc($s2) +/* 3A5974 E00A6424 8E460010 */ lw $a2, 0x10($s2) +/* 3A5978 E00A6428 8E470014 */ lw $a3, 0x14($s2) +/* 3A597C E00A642C 25080008 */ addiu $t0, $t0, 8 +/* 3A5980 E00A6430 0C080108 */ jal func_E0200420 +/* 3A5984 E00A6434 AE280000 */ sw $t0, ($s1) +/* 3A5988 E00A6438 36B51630 */ ori $s5, $s5, 0x1630 +/* 3A598C E00A643C 3C013F75 */ lui $at, 0x3f75 +/* 3A5990 E00A6440 3421C28F */ ori $at, $at, 0xc28f +/* 3A5994 E00A6444 44810000 */ mtc1 $at, $f0 +/* 3A5998 E00A6448 27B00050 */ addiu $s0, $sp, 0x50 +/* 3A599C E00A644C 44050000 */ mfc1 $a1, $f0 +/* 3A59A0 E00A6450 0200202D */ daddu $a0, $s0, $zero +/* 3A59A4 E00A6454 00A0302D */ daddu $a2, $a1, $zero +/* 3A59A8 E00A6458 0C080110 */ jal func_E0200440 +/* 3A59AC E00A645C 00A0382D */ daddu $a3, $a1, $zero +/* 3A59B0 E00A6460 0200202D */ daddu $a0, $s0, $zero +/* 3A59B4 E00A6464 27A50010 */ addiu $a1, $sp, 0x10 +/* 3A59B8 E00A6468 0C080114 */ jal func_E0200450 +/* 3A59BC E00A646C 00A0302D */ daddu $a2, $a1, $zero +/* 3A59C0 E00A6470 27A40010 */ addiu $a0, $sp, 0x10 +/* 3A59C4 E00A6474 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3A59C8 E00A6478 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3A59CC E00A647C 3C13800A */ lui $s3, %hi(D_8009A674) +/* 3A59D0 E00A6480 2673A674 */ addiu $s3, $s3, %lo(D_8009A674) +/* 3A59D4 E00A6484 96050000 */ lhu $a1, ($s0) +/* 3A59D8 E00A6488 8E620000 */ lw $v0, ($s3) +/* 3A59DC E00A648C 00052980 */ sll $a1, $a1, 6 +/* 3A59E0 E00A6490 00B52821 */ addu $a1, $a1, $s5 +/* 3A59E4 E00A6494 0C080118 */ jal func_E0200460 +/* 3A59E8 E00A6498 00452821 */ addu $a1, $v0, $a1 +/* 3A59EC E00A649C 3C03DA38 */ lui $v1, 0xda38 +/* 3A59F0 E00A64A0 34630002 */ ori $v1, $v1, 2 +/* 3A59F4 E00A64A4 3C07FCFF */ lui $a3, 0xfcff +/* 3A59F8 E00A64A8 34E7A7FF */ ori $a3, $a3, 0xa7ff +/* 3A59FC E00A64AC 3C06FF17 */ lui $a2, 0xff17 +/* 3A5A00 E00A64B0 34C6723F */ ori $a2, $a2, 0x723f +/* 3A5A04 E00A64B4 3C08D838 */ lui $t0, 0xd838 +/* 3A5A08 E00A64B8 35080002 */ ori $t0, $t0, 2 +/* 3A5A0C E00A64BC 329400FF */ andi $s4, $s4, 0xff +/* 3A5A10 E00A64C0 8E250000 */ lw $a1, ($s1) +/* 3A5A14 E00A64C4 96020000 */ lhu $v0, ($s0) +/* 3A5A18 E00A64C8 3C014080 */ lui $at, 0x4080 +/* 3A5A1C E00A64CC 44812000 */ mtc1 $at, $f4 +/* 3A5A20 E00A64D0 00A0202D */ daddu $a0, $a1, $zero +/* 3A5A24 E00A64D4 24A50008 */ addiu $a1, $a1, 8 +/* 3A5A28 E00A64D8 AE250000 */ sw $a1, ($s1) +/* 3A5A2C E00A64DC AC830000 */ sw $v1, ($a0) +/* 3A5A30 E00A64E0 24430001 */ addiu $v1, $v0, 1 +/* 3A5A34 E00A64E4 3042FFFF */ andi $v0, $v0, 0xffff +/* 3A5A38 E00A64E8 00021180 */ sll $v0, $v0, 6 +/* 3A5A3C E00A64EC A6030000 */ sh $v1, ($s0) +/* 3A5A40 E00A64F0 8E630000 */ lw $v1, ($s3) +/* 3A5A44 E00A64F4 00551021 */ addu $v0, $v0, $s5 +/* 3A5A48 E00A64F8 00621821 */ addu $v1, $v1, $v0 +/* 3A5A4C E00A64FC 24A20008 */ addiu $v0, $a1, 8 +/* 3A5A50 E00A6500 AC830004 */ sw $v1, 4($a0) +/* 3A5A54 E00A6504 AE220000 */ sw $v0, ($s1) +/* 3A5A58 E00A6508 3C02FA00 */ lui $v0, 0xfa00 +/* 3A5A5C E00A650C ACA20000 */ sw $v0, ($a1) +/* 3A5A60 E00A6510 2402007F */ addiu $v0, $zero, 0x7f +/* 3A5A64 E00A6514 ACA20004 */ sw $v0, 4($a1) +/* 3A5A68 E00A6518 24A20010 */ addiu $v0, $a1, 0x10 +/* 3A5A6C E00A651C AE220000 */ sw $v0, ($s1) +/* 3A5A70 E00A6520 3C02FB00 */ lui $v0, 0xfb00 +/* 3A5A74 E00A6524 ACA60014 */ sw $a2, 0x14($a1) +/* 3A5A78 E00A6528 3C06DE00 */ lui $a2, 0xde00 +/* 3A5A7C E00A652C ACA20008 */ sw $v0, 8($a1) +/* 3A5A80 E00A6530 3C020900 */ lui $v0, 0x900 +/* 3A5A84 E00A6534 24421000 */ addiu $v0, $v0, 0x1000 +/* 3A5A88 E00A6538 ACB4000C */ sw $s4, 0xc($a1) +/* 3A5A8C E00A653C ACA70010 */ sw $a3, 0x10($a1) +/* 3A5A90 E00A6540 ACA60018 */ sw $a2, 0x18($a1) +/* 3A5A94 E00A6544 ACA2001C */ sw $v0, 0x1c($a1) +/* 3A5A98 E00A6548 C642001C */ lwc1 $f2, 0x1c($s2) +/* 3A5A9C E00A654C 24A20018 */ addiu $v0, $a1, 0x18 +/* 3A5AA0 E00A6550 AE220000 */ sw $v0, ($s1) +/* 3A5AA4 E00A6554 24A20020 */ addiu $v0, $a1, 0x20 +/* 3A5AA8 E00A6558 46041082 */ mul.s $f2, $f2, $f4 +/* 3A5AAC E00A655C 00000000 */ nop +/* 3A5AB0 E00A6560 AE220000 */ sw $v0, ($s1) +/* 3A5AB4 E00A6564 C6400020 */ lwc1 $f0, 0x20($s2) +/* 3A5AB8 E00A6568 24A20028 */ addiu $v0, $a1, 0x28 +/* 3A5ABC E00A656C AE220000 */ sw $v0, ($s1) +/* 3A5AC0 E00A6570 46040002 */ mul.s $f0, $f0, $f4 +/* 3A5AC4 E00A6574 00000000 */ nop +/* 3A5AC8 E00A6578 24A20030 */ addiu $v0, $a1, 0x30 +/* 3A5ACC E00A657C 3C04F200 */ lui $a0, 0xf200 +/* 3A5AD0 E00A6580 AE220000 */ sw $v0, ($s1) +/* 3A5AD4 E00A6584 4600118D */ trunc.w.s $f6, $f2 +/* 3A5AD8 E00A6588 44073000 */ mfc1 $a3, $f6 +/* 3A5ADC E00A658C 4600018D */ trunc.w.s $f6, $f0 +/* 3A5AE0 E00A6590 44093000 */ mfc1 $t1, $f6 +/* 3A5AE4 E00A6594 30E30FFF */ andi $v1, $a3, 0xfff +/* 3A5AE8 E00A6598 00031B00 */ sll $v1, $v1, 0xc +/* 3A5AEC E00A659C 31220FFF */ andi $v0, $t1, 0xfff +/* 3A5AF0 E00A65A0 00441025 */ or $v0, $v0, $a0 +/* 3A5AF4 E00A65A4 00621825 */ or $v1, $v1, $v0 +/* 3A5AF8 E00A65A8 24E200FC */ addiu $v0, $a3, 0xfc +/* 3A5AFC E00A65AC 30420FFF */ andi $v0, $v0, 0xfff +/* 3A5B00 E00A65B0 00021300 */ sll $v0, $v0, 0xc +/* 3A5B04 E00A65B4 ACA30020 */ sw $v1, 0x20($a1) +/* 3A5B08 E00A65B8 252300FC */ addiu $v1, $t1, 0xfc +/* 3A5B0C E00A65BC 30630FFF */ andi $v1, $v1, 0xfff +/* 3A5B10 E00A65C0 00431025 */ or $v0, $v0, $v1 +/* 3A5B14 E00A65C4 ACA20024 */ sw $v0, 0x24($a1) +/* 3A5B18 E00A65C8 C6420024 */ lwc1 $f2, 0x24($s2) +/* 3A5B1C E00A65CC 24A20038 */ addiu $v0, $a1, 0x38 +/* 3A5B20 E00A65D0 46041082 */ mul.s $f2, $f2, $f4 +/* 3A5B24 E00A65D4 00000000 */ nop +/* 3A5B28 E00A65D8 AE220000 */ sw $v0, ($s1) +/* 3A5B2C E00A65DC C6400028 */ lwc1 $f0, 0x28($s2) +/* 3A5B30 E00A65E0 24A20040 */ addiu $v0, $a1, 0x40 +/* 3A5B34 E00A65E4 AE220000 */ sw $v0, ($s1) +/* 3A5B38 E00A65E8 46040002 */ mul.s $f0, $f0, $f4 +/* 3A5B3C E00A65EC 00000000 */ nop +/* 3A5B40 E00A65F0 3C020900 */ lui $v0, 0x900 +/* 3A5B44 E00A65F4 24421418 */ addiu $v0, $v0, 0x1418 +/* 3A5B48 E00A65F8 ACA60030 */ sw $a2, 0x30($a1) +/* 3A5B4C E00A65FC ACA20034 */ sw $v0, 0x34($a1) +/* 3A5B50 E00A6600 4600118D */ trunc.w.s $f6, $f2 +/* 3A5B54 E00A6604 44073000 */ mfc1 $a3, $f6 +/* 3A5B58 E00A6608 4600018D */ trunc.w.s $f6, $f0 +/* 3A5B5C E00A660C 44093000 */ mfc1 $t1, $f6 +/* 3A5B60 E00A6610 30E30FFF */ andi $v1, $a3, 0xfff +/* 3A5B64 E00A6614 00031B00 */ sll $v1, $v1, 0xc +/* 3A5B68 E00A6618 31220FFF */ andi $v0, $t1, 0xfff +/* 3A5B6C E00A661C 00441025 */ or $v0, $v0, $a0 +/* 3A5B70 E00A6620 00621825 */ or $v1, $v1, $v0 +/* 3A5B74 E00A6624 24E200FC */ addiu $v0, $a3, 0xfc +/* 3A5B78 E00A6628 30420FFF */ andi $v0, $v0, 0xfff +/* 3A5B7C E00A662C 00021300 */ sll $v0, $v0, 0xc +/* 3A5B80 E00A6630 ACA30028 */ sw $v1, 0x28($a1) +/* 3A5B84 E00A6634 252300FC */ addiu $v1, $t1, 0xfc +/* 3A5B88 E00A6638 30630FFF */ andi $v1, $v1, 0xfff +/* 3A5B8C E00A663C 3C040100 */ lui $a0, 0x100 +/* 3A5B90 E00A6640 00641825 */ or $v1, $v1, $a0 +/* 3A5B94 E00A6644 00431025 */ or $v0, $v0, $v1 +/* 3A5B98 E00A6648 ACA2002C */ sw $v0, 0x2c($a1) +/* 3A5B9C E00A664C 24020040 */ addiu $v0, $zero, 0x40 +/* 3A5BA0 E00A6650 ACA80038 */ sw $t0, 0x38($a1) +/* 3A5BA4 E00A6654 ACA2003C */ sw $v0, 0x3c($a1) +/* 3A5BA8 E00A6658 24A20048 */ addiu $v0, $a1, 0x48 +/* 3A5BAC E00A665C AE220000 */ sw $v0, ($s1) +/* 3A5BB0 E00A6660 ACB60040 */ sw $s6, 0x40($a1) +/* 3A5BB4 E00A6664 ACA00044 */ sw $zero, 0x44($a1) +/* 3A5BB8 E00A6668 8FBF00AC */ lw $ra, 0xac($sp) +/* 3A5BBC E00A666C 8FB600A8 */ lw $s6, 0xa8($sp) +/* 3A5BC0 E00A6670 8FB500A4 */ lw $s5, 0xa4($sp) +/* 3A5BC4 E00A6674 8FB400A0 */ lw $s4, 0xa0($sp) +/* 3A5BC8 E00A6678 8FB3009C */ lw $s3, 0x9c($sp) +/* 3A5BCC E00A667C 8FB20098 */ lw $s2, 0x98($sp) +/* 3A5BD0 E00A6680 8FB10094 */ lw $s1, 0x94($sp) +/* 3A5BD4 E00A6684 8FB00090 */ lw $s0, 0x90($sp) +/* 3A5BD8 E00A6688 03E00008 */ jr $ra +/* 3A5BDC E00A668C 27BD00B0 */ addiu $sp, $sp, 0xb0 diff --git a/asm/nonmatchings/code_3B4790/func_E00B2000.s b/asm/nonmatchings/code_3B4790/func_E00B2000.s new file mode 100644 index 0000000000..8b1b81df36 --- /dev/null +++ b/asm/nonmatchings/code_3B4790/func_E00B2000.s @@ -0,0 +1,132 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B2000 +/* 3B4790 E00B2000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3B4794 E00B2004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3B4798 E00B2008 4485A000 */ mtc1 $a1, $f20 +/* 3B479C E00B200C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3B47A0 E00B2010 4486B000 */ mtc1 $a2, $f22 +/* 3B47A4 E00B2014 AFB20030 */ sw $s2, 0x30($sp) +/* 3B47A8 E00B2018 0080902D */ daddu $s2, $a0, $zero +/* 3B47AC E00B201C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3B47B0 E00B2020 4487C000 */ mtc1 $a3, $f24 +/* 3B47B4 E00B2024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B47B8 E00B2028 AFB00028 */ sw $s0, 0x28($sp) +/* 3B47BC E00B202C 8FB00070 */ lw $s0, 0x70($sp) +/* 3B47C0 E00B2030 3C02E00B */ lui $v0, %hi(D_E00B21DC) +/* 3B47C4 E00B2034 244221DC */ addiu $v0, $v0, %lo(D_E00B21DC) +/* 3B47C8 E00B2038 AFA20018 */ sw $v0, 0x18($sp) +/* 3B47CC E00B203C 3C02E00B */ lui $v0, %hi(D_E00B21E4) +/* 3B47D0 E00B2040 244221E4 */ addiu $v0, $v0, %lo(D_E00B21E4) +/* 3B47D4 E00B2044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3B47D8 E00B2048 3C02E00B */ lui $v0, %hi(D_E00B2460) +/* 3B47DC E00B204C 24422460 */ addiu $v0, $v0, %lo(D_E00B2460) +/* 3B47E0 E00B2050 AFA20020 */ sw $v0, 0x20($sp) +/* 3B47E4 E00B2054 24020059 */ addiu $v0, $zero, 0x59 +/* 3B47E8 E00B2058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3B47EC E00B205C AFB1002C */ sw $s1, 0x2c($sp) +/* 3B47F0 E00B2060 AFA00010 */ sw $zero, 0x10($sp) +/* 3B47F4 E00B2064 AFA00024 */ sw $zero, 0x24($sp) +/* 3B47F8 E00B2068 0C080124 */ jal func_E0200490 +/* 3B47FC E00B206C AFA20014 */ sw $v0, 0x14($sp) +/* 3B4800 E00B2070 240401E4 */ addiu $a0, $zero, 0x1e4 +/* 3B4804 E00B2074 24030001 */ addiu $v1, $zero, 1 +/* 3B4808 E00B2078 0040882D */ daddu $s1, $v0, $zero +/* 3B480C E00B207C 0C08012C */ jal func_E02004B0 +/* 3B4810 E00B2080 AE230008 */ sw $v1, 8($s1) +/* 3B4814 E00B2084 0040182D */ daddu $v1, $v0, $zero +/* 3B4818 E00B2088 14600003 */ bnez $v1, .LE00B2098 +/* 3B481C E00B208C AE22000C */ sw $v0, 0xc($s1) +.LE00B2090: +/* 3B4820 E00B2090 0802C824 */ j .LE00B2090 +/* 3B4824 E00B2094 00000000 */ nop +.LE00B2098: +/* 3B4828 E00B2098 AC720000 */ sw $s2, ($v1) +/* 3B482C E00B209C 1E000003 */ bgtz $s0, .LE00B20AC +/* 3B4830 E00B20A0 AC600030 */ sw $zero, 0x30($v1) +/* 3B4834 E00B20A4 0802C82E */ j .LE00B20B8 +/* 3B4838 E00B20A8 240203E8 */ addiu $v0, $zero, 0x3e8 +.LE00B20AC: +/* 3B483C E00B20AC 16400002 */ bnez $s2, .LE00B20B8 +/* 3B4840 E00B20B0 00101080 */ sll $v0, $s0, 2 +/* 3B4844 E00B20B4 00101040 */ sll $v0, $s0, 1 +.LE00B20B8: +/* 3B4848 E00B20B8 AC62002C */ sw $v0, 0x2c($v1) +/* 3B484C E00B20BC 16400003 */ bnez $s2, .LE00B20CC +/* 3B4850 E00B20C0 AC700028 */ sw $s0, 0x28($v1) +/* 3B4854 E00B20C4 0802C834 */ j .LE00B20D0 +/* 3B4858 E00B20C8 240200C8 */ addiu $v0, $zero, 0xc8 +.LE00B20CC: +/* 3B485C E00B20CC 240200FF */ addiu $v0, $zero, 0xff +.LE00B20D0: +/* 3B4860 E00B20D0 AC620040 */ sw $v0, 0x40($v1) +/* 3B4864 E00B20D4 0000282D */ daddu $a1, $zero, $zero +/* 3B4868 E00B20D8 3C014120 */ lui $at, 0x4120 +/* 3B486C E00B20DC 44814000 */ mtc1 $at, $f8 +/* 3B4870 E00B20E0 3C014000 */ lui $at, 0x4000 +/* 3B4874 E00B20E4 44813000 */ mtc1 $at, $f6 +/* 3B4878 E00B20E8 0060202D */ daddu $a0, $v1, $zero +/* 3B487C E00B20EC E4740010 */ swc1 $f20, 0x10($v1) +/* 3B4880 E00B20F0 E4760014 */ swc1 $f22, 0x14($v1) +/* 3B4884 E00B20F4 E4780018 */ swc1 $f24, 0x18($v1) +/* 3B4888 E00B20F8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3B488C E00B20FC 24060001 */ addiu $a2, $zero, 1 +/* 3B4890 E00B2100 E460001C */ swc1 $f0, 0x1c($v1) +/* 3B4894 E00B2104 C7A00064 */ lwc1 $f0, 0x64($sp) +/* 3B4898 E00B2108 240200D2 */ addiu $v0, $zero, 0xd2 +/* 3B489C E00B210C E4600020 */ swc1 $f0, 0x20($v1) +/* 3B48A0 E00B2110 C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3B48A4 E00B2114 4600B086 */ mov.s $f2, $f22 +/* 3B48A8 E00B2118 E4600024 */ swc1 $f0, 0x24($v1) +/* 3B48AC E00B211C C7A0006C */ lwc1 $f0, 0x6c($sp) +/* 3B48B0 E00B2120 4600C106 */ mov.s $f4, $f24 +/* 3B48B4 E00B2124 AC620034 */ sw $v0, 0x34($v1) +/* 3B48B8 E00B2128 240200E6 */ addiu $v0, $zero, 0xe6 +/* 3B48BC E00B212C AC620038 */ sw $v0, 0x38($v1) +/* 3B48C0 E00B2130 240200FF */ addiu $v0, $zero, 0xff +/* 3B48C4 E00B2134 AC62003C */ sw $v0, 0x3c($v1) +/* 3B48C8 E00B2138 2402001E */ addiu $v0, $zero, 0x1e +/* 3B48CC E00B213C AC620048 */ sw $v0, 0x48($v1) +/* 3B48D0 E00B2140 240200CD */ addiu $v0, $zero, 0xcd +/* 3B48D4 E00B2144 AC600044 */ sw $zero, 0x44($v1) +/* 3B48D8 E00B2148 AC62004C */ sw $v0, 0x4c($v1) +/* 3B48DC E00B214C AC600054 */ sw $zero, 0x54($v1) +/* 3B48E0 E00B2150 E4620008 */ swc1 $f2, 8($v1) +/* 3B48E4 E00B2154 E464000C */ swc1 $f4, 0xc($v1) +/* 3B48E8 E00B2158 E4600050 */ swc1 $f0, 0x50($v1) +/* 3B48EC E00B215C 4600A006 */ mov.s $f0, $f20 +/* 3B48F0 E00B2160 E4600004 */ swc1 $f0, 4($v1) +.LE00B2164: +/* 3B48F4 E00B2164 E4880058 */ swc1 $f8, 0x58($a0) +/* 3B48F8 E00B2168 E4860088 */ swc1 $f6, 0x88($a0) +/* 3B48FC E00B216C 16400004 */ bnez $s2, .LE00B2180 +/* 3B4900 E00B2170 AC8000B8 */ sw $zero, 0xb8($a0) +/* 3B4904 E00B2174 24A20001 */ addiu $v0, $a1, 1 +/* 3B4908 E00B2178 0802C861 */ j .LE00B2184 +/* 3B490C E00B217C AC820178 */ sw $v0, 0x178($a0) +.LE00B2180: +/* 3B4910 E00B2180 AC860178 */ sw $a2, 0x178($a0) +.LE00B2184: +/* 3B4914 E00B2184 C4600004 */ lwc1 $f0, 4($v1) +/* 3B4918 E00B2188 24C60005 */ addiu $a2, $a2, 5 +/* 3B491C E00B218C E48000E8 */ swc1 $f0, 0xe8($a0) +/* 3B4920 E00B2190 C4600008 */ lwc1 $f0, 8($v1) +/* 3B4924 E00B2194 24A50001 */ addiu $a1, $a1, 1 +/* 3B4928 E00B2198 E4800118 */ swc1 $f0, 0x118($a0) +/* 3B492C E00B219C C460000C */ lwc1 $f0, 0xc($v1) +/* 3B4930 E00B21A0 28A2000C */ slti $v0, $a1, 0xc +/* 3B4934 E00B21A4 AC8001A8 */ sw $zero, 0x1a8($a0) +/* 3B4938 E00B21A8 E4800148 */ swc1 $f0, 0x148($a0) +/* 3B493C E00B21AC 1440FFED */ bnez $v0, .LE00B2164 +/* 3B4940 E00B21B0 24840004 */ addiu $a0, $a0, 4 +/* 3B4944 E00B21B4 0220102D */ daddu $v0, $s1, $zero +/* 3B4948 E00B21B8 8FBF0034 */ lw $ra, 0x34($sp) +/* 3B494C E00B21BC 8FB20030 */ lw $s2, 0x30($sp) +/* 3B4950 E00B21C0 8FB1002C */ lw $s1, 0x2c($sp) +/* 3B4954 E00B21C4 8FB00028 */ lw $s0, 0x28($sp) +/* 3B4958 E00B21C8 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3B495C E00B21CC D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3B4960 E00B21D0 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3B4964 E00B21D4 03E00008 */ jr $ra +/* 3B4968 E00B21D8 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3B4790/func_E00B21DC.s b/asm/nonmatchings/code_3B4790/func_E00B21DC.s new file mode 100644 index 0000000000..4e0a5a2fa5 --- /dev/null +++ b/asm/nonmatchings/code_3B4790/func_E00B21DC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B21DC +/* 3B496C E00B21DC 03E00008 */ jr $ra +/* 3B4970 E00B21E0 00000000 */ nop diff --git a/asm/nonmatchings/code_3B4790/func_E00B21E4.s b/asm/nonmatchings/code_3B4790/func_E00B21E4.s new file mode 100644 index 0000000000..61f6936215 --- /dev/null +++ b/asm/nonmatchings/code_3B4790/func_E00B21E4.s @@ -0,0 +1,174 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B21E4 +/* 3B4974 E00B21E4 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 3B4978 E00B21E8 AFBF0028 */ sw $ra, 0x28($sp) +/* 3B497C E00B21EC AFB50024 */ sw $s5, 0x24($sp) +/* 3B4980 E00B21F0 AFB40020 */ sw $s4, 0x20($sp) +/* 3B4984 E00B21F4 AFB3001C */ sw $s3, 0x1c($sp) +/* 3B4988 E00B21F8 AFB20018 */ sw $s2, 0x18($sp) +/* 3B498C E00B21FC AFB10014 */ sw $s1, 0x14($sp) +/* 3B4990 E00B2200 AFB00010 */ sw $s0, 0x10($sp) +/* 3B4994 E00B2204 F7B80040 */ sdc1 $f24, 0x40($sp) +/* 3B4998 E00B2208 F7B60038 */ sdc1 $f22, 0x38($sp) +/* 3B499C E00B220C F7B40030 */ sdc1 $f20, 0x30($sp) +/* 3B49A0 E00B2210 8C830000 */ lw $v1, ($a0) +/* 3B49A4 E00B2214 8C90000C */ lw $s0, 0xc($a0) +/* 3B49A8 E00B2218 30620010 */ andi $v0, $v1, 0x10 +/* 3B49AC E00B221C 8E140000 */ lw $s4, ($s0) +/* 3B49B0 E00B2220 10400005 */ beqz $v0, .LE00B2238 +/* 3B49B4 E00B2224 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3B49B8 E00B2228 00621024 */ and $v0, $v1, $v0 +/* 3B49BC E00B222C AC820000 */ sw $v0, ($a0) +/* 3B49C0 E00B2230 24020010 */ addiu $v0, $zero, 0x10 +/* 3B49C4 E00B2234 AE02002C */ sw $v0, 0x2c($s0) +.LE00B2238: +/* 3B49C8 E00B2238 8E03002C */ lw $v1, 0x2c($s0) +/* 3B49CC E00B223C 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3B49D0 E00B2240 10400002 */ beqz $v0, .LE00B224C +/* 3B49D4 E00B2244 2462FFFF */ addiu $v0, $v1, -1 +/* 3B49D8 E00B2248 AE02002C */ sw $v0, 0x2c($s0) +.LE00B224C: +/* 3B49DC E00B224C 8E020030 */ lw $v0, 0x30($s0) +/* 3B49E0 E00B2250 8E03002C */ lw $v1, 0x2c($s0) +/* 3B49E4 E00B2254 24420001 */ addiu $v0, $v0, 1 +/* 3B49E8 E00B2258 04610005 */ bgez $v1, .LE00B2270 +/* 3B49EC E00B225C AE020030 */ sw $v0, 0x30($s0) +/* 3B49F0 E00B2260 0C080128 */ jal func_E02004A0 +/* 3B49F4 E00B2264 00000000 */ nop +/* 3B49F8 E00B2268 0802C90C */ j .LE00B2430 +/* 3B49FC E00B226C 00000000 */ nop +.LE00B2270: +/* 3B4A00 E00B2270 8E020054 */ lw $v0, 0x54($s0) +/* 3B4A04 E00B2274 8E130028 */ lw $s3, 0x28($s0) +/* 3B4A08 E00B2278 24420001 */ addiu $v0, $v0, 1 +/* 3B4A0C E00B227C AE020054 */ sw $v0, 0x54($s0) +/* 3B4A10 E00B2280 2842000D */ slti $v0, $v0, 0xd +/* 3B4A14 E00B2284 14400003 */ bnez $v0, .LE00B2294 +/* 3B4A18 E00B2288 0000902D */ daddu $s2, $zero, $zero +/* 3B4A1C E00B228C 2402000C */ addiu $v0, $zero, 0xc +/* 3B4A20 E00B2290 AE020054 */ sw $v0, 0x54($s0) +.LE00B2294: +/* 3B4A24 E00B2294 3C158000 */ lui $s5, 0x8000 +/* 3B4A28 E00B2298 0200882D */ daddu $s1, $s0, $zero +/* 3B4A2C E00B229C 3C01437F */ lui $at, 0x437f +/* 3B4A30 E00B22A0 4481C000 */ mtc1 $at, $f24 +/* 3B4A34 E00B22A4 3C014F00 */ lui $at, 0x4f00 +/* 3B4A38 E00B22A8 4481B000 */ mtc1 $at, $f22 +.LE00B22AC: +/* 3B4A3C E00B22AC 8E220178 */ lw $v0, 0x178($s1) +/* 3B4A40 E00B22B0 10400003 */ beqz $v0, .LE00B22C0 +/* 3B4A44 E00B22B4 2442FFFF */ addiu $v0, $v0, -1 +/* 3B4A48 E00B22B8 14400059 */ bnez $v0, .LE00B2420 +/* 3B4A4C E00B22BC AE220178 */ sw $v0, 0x178($s1) +.LE00B22C0: +/* 3B4A50 E00B22C0 8E2201A8 */ lw $v0, 0x1a8($s1) +/* 3B4A54 E00B22C4 24420001 */ addiu $v0, $v0, 1 +/* 3B4A58 E00B22C8 0040182D */ daddu $v1, $v0, $zero +/* 3B4A5C E00B22CC 0073102A */ slt $v0, $v1, $s3 +/* 3B4A60 E00B22D0 14400002 */ bnez $v0, .LE00B22DC +/* 3B4A64 E00B22D4 AE2301A8 */ sw $v1, 0x1a8($s1) +/* 3B4A68 E00B22D8 0260182D */ daddu $v1, $s3, $zero +.LE00B22DC: +/* 3B4A6C E00B22DC 44831000 */ mtc1 $v1, $f2 +/* 3B4A70 E00B22E0 00000000 */ nop +/* 3B4A74 E00B22E4 468010A0 */ cvt.s.w $f2, $f2 +/* 3B4A78 E00B22E8 44930000 */ mtc1 $s3, $f0 +/* 3B4A7C E00B22EC 00000000 */ nop +/* 3B4A80 E00B22F0 46800020 */ cvt.s.w $f0, $f0 +/* 3B4A84 E00B22F4 16800017 */ bnez $s4, .LE00B2354 +/* 3B4A88 E00B22F8 46001503 */ div.s $f20, $f2, $f0 +/* 3B4A8C E00B22FC C600001C */ lwc1 $f0, 0x1c($s0) +/* 3B4A90 E00B2300 C6020010 */ lwc1 $f2, 0x10($s0) +/* 3B4A94 E00B2304 46020001 */ sub.s $f0, $f0, $f2 +/* 3B4A98 E00B2308 46140002 */ mul.s $f0, $f0, $f20 +/* 3B4A9C E00B230C 00000000 */ nop +/* 3B4AA0 E00B2310 46001080 */ add.s $f2, $f2, $f0 +/* 3B4AA4 E00B2314 E62200E8 */ swc1 $f2, 0xe8($s1) +/* 3B4AA8 E00B2318 C6000020 */ lwc1 $f0, 0x20($s0) +/* 3B4AAC E00B231C C6020014 */ lwc1 $f2, 0x14($s0) +/* 3B4AB0 E00B2320 46020001 */ sub.s $f0, $f0, $f2 +/* 3B4AB4 E00B2324 46140002 */ mul.s $f0, $f0, $f20 +/* 3B4AB8 E00B2328 00000000 */ nop +/* 3B4ABC E00B232C 46001080 */ add.s $f2, $f2, $f0 +/* 3B4AC0 E00B2330 E6220118 */ swc1 $f2, 0x118($s1) +/* 3B4AC4 E00B2334 C6000024 */ lwc1 $f0, 0x24($s0) +/* 3B4AC8 E00B2338 C6020018 */ lwc1 $f2, 0x18($s0) +/* 3B4ACC E00B233C 46020001 */ sub.s $f0, $f0, $f2 +/* 3B4AD0 E00B2340 46140002 */ mul.s $f0, $f0, $f20 +/* 3B4AD4 E00B2344 00000000 */ nop +/* 3B4AD8 E00B2348 46001080 */ add.s $f2, $f2, $f0 +/* 3B4ADC E00B234C 0802C908 */ j .LE00B2420 +/* 3B4AE0 E00B2350 E6220148 */ swc1 $f2, 0x148($s1) +.LE00B2354: +/* 3B4AE4 E00B2354 3C014334 */ lui $at, 0x4334 +/* 3B4AE8 E00B2358 44816000 */ mtc1 $at, $f12 +/* 3B4AEC E00B235C 00000000 */ nop +/* 3B4AF0 E00B2360 460CA302 */ mul.s $f12, $f20, $f12 +/* 3B4AF4 E00B2364 00000000 */ nop +/* 3B4AF8 E00B2368 C600001C */ lwc1 $f0, 0x1c($s0) +/* 3B4AFC E00B236C C6020010 */ lwc1 $f2, 0x10($s0) +/* 3B4B00 E00B2370 46020001 */ sub.s $f0, $f0, $f2 +/* 3B4B04 E00B2374 46140002 */ mul.s $f0, $f0, $f20 +/* 3B4B08 E00B2378 00000000 */ nop +/* 3B4B0C E00B237C 46001080 */ add.s $f2, $f2, $f0 +/* 3B4B10 E00B2380 0C080140 */ jal func_E0200500 +/* 3B4B14 E00B2384 E62200E8 */ swc1 $f2, 0xe8($s1) +/* 3B4B18 E00B2388 3C0142F0 */ lui $at, 0x42f0 +/* 3B4B1C E00B238C 44811000 */ mtc1 $at, $f2 +/* 3B4B20 E00B2390 00000000 */ nop +/* 3B4B24 E00B2394 46020002 */ mul.s $f0, $f0, $f2 +/* 3B4B28 E00B2398 00000000 */ nop +/* 3B4B2C E00B239C C6040020 */ lwc1 $f4, 0x20($s0) +/* 3B4B30 E00B23A0 C6060014 */ lwc1 $f6, 0x14($s0) +/* 3B4B34 E00B23A4 46062101 */ sub.s $f4, $f4, $f6 +/* 3B4B38 E00B23A8 46142102 */ mul.s $f4, $f4, $f20 +/* 3B4B3C E00B23AC 00000000 */ nop +/* 3B4B40 E00B23B0 46043180 */ add.s $f6, $f6, $f4 +/* 3B4B44 E00B23B4 46003180 */ add.s $f6, $f6, $f0 +/* 3B4B48 E00B23B8 4618A102 */ mul.s $f4, $f20, $f24 +/* 3B4B4C E00B23BC 00000000 */ nop +/* 3B4B50 E00B23C0 E6260118 */ swc1 $f6, 0x118($s1) +/* 3B4B54 E00B23C4 C6000024 */ lwc1 $f0, 0x24($s0) +/* 3B4B58 E00B23C8 C6020018 */ lwc1 $f2, 0x18($s0) +/* 3B4B5C E00B23CC 46020001 */ sub.s $f0, $f0, $f2 +/* 3B4B60 E00B23D0 46140002 */ mul.s $f0, $f0, $f20 +/* 3B4B64 E00B23D4 00000000 */ nop +/* 3B4B68 E00B23D8 46001080 */ add.s $f2, $f2, $f0 +/* 3B4B6C E00B23DC 02121021 */ addu $v0, $s0, $s2 +/* 3B4B70 E00B23E0 4604C001 */ sub.s $f0, $f24, $f4 +/* 3B4B74 E00B23E4 244201D8 */ addiu $v0, $v0, 0x1d8 +/* 3B4B78 E00B23E8 4600B03E */ c.le.s $f22, $f0 +/* 3B4B7C E00B23EC 00000000 */ nop +/* 3B4B80 E00B23F0 45010005 */ bc1t .LE00B2408 +/* 3B4B84 E00B23F4 E6220148 */ swc1 $f2, 0x148($s1) +/* 3B4B88 E00B23F8 4600020D */ trunc.w.s $f8, $f0 +/* 3B4B8C E00B23FC 44034000 */ mfc1 $v1, $f8 +/* 3B4B90 E00B2400 0802C908 */ j .LE00B2420 +/* 3B4B94 E00B2404 A0430000 */ sb $v1, ($v0) +.LE00B2408: +/* 3B4B98 E00B2408 46160001 */ sub.s $f0, $f0, $f22 +/* 3B4B9C E00B240C 4600020D */ trunc.w.s $f8, $f0 +/* 3B4BA0 E00B2410 44034000 */ mfc1 $v1, $f8 +/* 3B4BA4 E00B2414 00000000 */ nop +/* 3B4BA8 E00B2418 00751825 */ or $v1, $v1, $s5 +/* 3B4BAC E00B241C A0430000 */ sb $v1, ($v0) +.LE00B2420: +/* 3B4BB0 E00B2420 26520001 */ addiu $s2, $s2, 1 +/* 3B4BB4 E00B2424 2A42000C */ slti $v0, $s2, 0xc +/* 3B4BB8 E00B2428 1440FFA0 */ bnez $v0, .LE00B22AC +/* 3B4BBC E00B242C 26310004 */ addiu $s1, $s1, 4 +.LE00B2430: +/* 3B4BC0 E00B2430 8FBF0028 */ lw $ra, 0x28($sp) +/* 3B4BC4 E00B2434 8FB50024 */ lw $s5, 0x24($sp) +/* 3B4BC8 E00B2438 8FB40020 */ lw $s4, 0x20($sp) +/* 3B4BCC E00B243C 8FB3001C */ lw $s3, 0x1c($sp) +/* 3B4BD0 E00B2440 8FB20018 */ lw $s2, 0x18($sp) +/* 3B4BD4 E00B2444 8FB10014 */ lw $s1, 0x14($sp) +/* 3B4BD8 E00B2448 8FB00010 */ lw $s0, 0x10($sp) +/* 3B4BDC E00B244C D7B80040 */ ldc1 $f24, 0x40($sp) +/* 3B4BE0 E00B2450 D7B60038 */ ldc1 $f22, 0x38($sp) +/* 3B4BE4 E00B2454 D7B40030 */ ldc1 $f20, 0x30($sp) +/* 3B4BE8 E00B2458 03E00008 */ jr $ra +/* 3B4BEC E00B245C 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_3B4790/func_E00B2460.s b/asm/nonmatchings/code_3B4790/func_E00B2460.s new file mode 100644 index 0000000000..4be8e8647f --- /dev/null +++ b/asm/nonmatchings/code_3B4790/func_E00B2460.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B2460 +/* 3B4BF0 E00B2460 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3B4BF4 E00B2464 3C02E00B */ lui $v0, %hi(D_E00B24B0) +/* 3B4BF8 E00B2468 244224B0 */ addiu $v0, $v0, %lo(D_E00B24B0) +/* 3B4BFC E00B246C AFA2001C */ sw $v0, 0x1c($sp) +/* 3B4C00 E00B2470 2402000A */ addiu $v0, $zero, 0xa +/* 3B4C04 E00B2474 AFA20014 */ sw $v0, 0x14($sp) +/* 3B4C08 E00B2478 2402002D */ addiu $v0, $zero, 0x2d +/* 3B4C0C E00B247C AFA40018 */ sw $a0, 0x18($sp) +/* 3B4C10 E00B2480 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B4C14 E00B2484 AFBF0020 */ sw $ra, 0x20($sp) +/* 3B4C18 E00B2488 0C080120 */ jal func_E0200480 +/* 3B4C1C E00B248C AFA20010 */ sw $v0, 0x10($sp) +/* 3B4C20 E00B2490 8C430000 */ lw $v1, ($v0) +/* 3B4C24 E00B2494 34630002 */ ori $v1, $v1, 2 +/* 3B4C28 E00B2498 AC430000 */ sw $v1, ($v0) +/* 3B4C2C E00B249C 8FBF0020 */ lw $ra, 0x20($sp) +/* 3B4C30 E00B24A0 03E00008 */ jr $ra +/* 3B4C34 E00B24A4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3B4790/func_E00B24A8.s b/asm/nonmatchings/code_3B4790/func_E00B24A8.s new file mode 100644 index 0000000000..195872281b --- /dev/null +++ b/asm/nonmatchings/code_3B4790/func_E00B24A8.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B24A8 +/* 3B4C38 E00B24A8 03E00008 */ jr $ra +/* 3B4C3C E00B24AC 00000000 */ nop diff --git a/asm/nonmatchings/code_3B4790/func_E00B24B0.s b/asm/nonmatchings/code_3B4790/func_E00B24B0.s new file mode 100644 index 0000000000..77dec3fe96 --- /dev/null +++ b/asm/nonmatchings/code_3B4790/func_E00B24B0.s @@ -0,0 +1,465 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B24B0 +/* 3B4C40 E00B24B0 27BDFF00 */ addiu $sp, $sp, -0x100 +/* 3B4C44 E00B24B4 0080482D */ daddu $t1, $a0, $zero +/* 3B4C48 E00B24B8 3C0ADB06 */ lui $t2, 0xdb06 +/* 3B4C4C E00B24BC 354A0024 */ ori $t2, $t2, 0x24 +/* 3B4C50 E00B24C0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B4C54 E00B24C4 AFB300B4 */ sw $s3, 0xb4($sp) +/* 3B4C58 E00B24C8 3C130001 */ lui $s3, 1 +/* 3B4C5C E00B24CC 36731630 */ ori $s3, $s3, 0x1630 +/* 3B4C60 E00B24D0 AFB500BC */ sw $s5, 0xbc($sp) +/* 3B4C64 E00B24D4 0000A82D */ daddu $s5, $zero, $zero +/* 3B4C68 E00B24D8 3C18E00B */ lui $t8, %hi(D_E00B2BA0) +/* 3B4C6C E00B24DC 27182BA0 */ addiu $t8, $t8, %lo(D_E00B2BA0) +/* 3B4C70 E00B24E0 AFB800A0 */ sw $t8, 0xa0($sp) +/* 3B4C74 E00B24E4 24180004 */ addiu $t8, $zero, 4 +/* 3B4C78 E00B24E8 AFB100AC */ sw $s1, 0xac($sp) +/* 3B4C7C E00B24EC 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 3B4C80 E00B24F0 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 3B4C84 E00B24F4 3C02E700 */ lui $v0, 0xe700 +/* 3B4C88 E00B24F8 AFBF00CC */ sw $ra, 0xcc($sp) +/* 3B4C8C E00B24FC AFBE00C8 */ sw $fp, 0xc8($sp) +/* 3B4C90 E00B2500 AFB700C4 */ sw $s7, 0xc4($sp) +/* 3B4C94 E00B2504 AFB600C0 */ sw $s6, 0xc0($sp) +/* 3B4C98 E00B2508 AFB400B8 */ sw $s4, 0xb8($sp) +/* 3B4C9C E00B250C AFB200B0 */ sw $s2, 0xb0($sp) +/* 3B4CA0 E00B2510 AFB000A8 */ sw $s0, 0xa8($sp) +/* 3B4CA4 E00B2514 F7BE00F8 */ sdc1 $f30, 0xf8($sp) +/* 3B4CA8 E00B2518 F7BC00F0 */ sdc1 $f28, 0xf0($sp) +/* 3B4CAC E00B251C F7BA00E8 */ sdc1 $f26, 0xe8($sp) +/* 3B4CB0 E00B2520 F7B800E0 */ sdc1 $f24, 0xe0($sp) +/* 3B4CB4 E00B2524 F7B600D8 */ sdc1 $f22, 0xd8($sp) +/* 3B4CB8 E00B2528 F7B400D0 */ sdc1 $f20, 0xd0($sp) +/* 3B4CBC E00B252C AFA0009C */ sw $zero, 0x9c($sp) +/* 3B4CC0 E00B2530 AFB800A4 */ sw $t8, 0xa4($sp) +/* 3B4CC4 E00B2534 8E280000 */ lw $t0, ($s1) +/* 3B4CC8 E00B2538 3C013FE0 */ lui $at, 0x3fe0 +/* 3B4CCC E00B253C 4481E800 */ mtc1 $at, $f29 +/* 3B4CD0 E00B2540 4480E000 */ mtc1 $zero, $f28 +/* 3B4CD4 E00B2544 3C0141A0 */ lui $at, 0x41a0 +/* 3B4CD8 E00B2548 4481D000 */ mtc1 $at, $f26 +/* 3B4CDC E00B254C 44800000 */ mtc1 $zero, $f0 +/* 3B4CE0 E00B2550 8D37000C */ lw $s7, 0xc($t1) +/* 3B4CE4 E00B2554 0100182D */ daddu $v1, $t0, $zero +/* 3B4CE8 E00B2558 44050000 */ mfc1 $a1, $f0 +/* 3B4CEC E00B255C 25080008 */ addiu $t0, $t0, 8 +/* 3B4CF0 E00B2560 AE280000 */ sw $t0, ($s1) +/* 3B4CF4 E00B2564 8EF80000 */ lw $t8, ($s7) +/* 3B4CF8 E00B2568 4485F000 */ mtc1 $a1, $f30 +/* 3B4CFC E00B256C 00A0302D */ daddu $a2, $a1, $zero +/* 3B4D00 E00B2570 AFB80090 */ sw $t8, 0x90($sp) +/* 3B4D04 E00B2574 C6E40050 */ lwc1 $f4, 0x50($s7) +/* 3B4D08 E00B2578 00A0382D */ daddu $a3, $a1, $zero +/* 3B4D0C E00B257C E7A40098 */ swc1 $f4, 0x98($sp) +/* 3B4D10 E00B2580 AC620000 */ sw $v0, ($v1) +/* 3B4D14 E00B2584 AC600004 */ sw $zero, 4($v1) +/* 3B4D18 E00B2588 AD0A0000 */ sw $t2, ($t0) +/* 3B4D1C E00B258C 8D230010 */ lw $v1, 0x10($t1) +/* 3B4D20 E00B2590 25020008 */ addiu $v0, $t0, 8 +/* 3B4D24 E00B2594 AE220000 */ sw $v0, ($s1) +/* 3B4D28 E00B2598 8C62001C */ lw $v0, 0x1c($v1) +/* 3B4D2C E00B259C 3C038000 */ lui $v1, 0x8000 +/* 3B4D30 E00B25A0 00431021 */ addu $v0, $v0, $v1 +/* 3B4D34 E00B25A4 0C080108 */ jal func_E0200420 +/* 3B4D38 E00B25A8 AD020004 */ sw $v0, 4($t0) +/* 3B4D3C E00B25AC 02E0B02D */ daddu $s6, $s7, $zero +/* 3B4D40 E00B25B0 3C013D4C */ lui $at, 0x3d4c +/* 3B4D44 E00B25B4 3421CCCD */ ori $at, $at, 0xcccd +/* 3B4D48 E00B25B8 44810000 */ mtc1 $at, $f0 +/* 3B4D4C E00B25BC 27B00050 */ addiu $s0, $sp, 0x50 +/* 3B4D50 E00B25C0 44050000 */ mfc1 $a1, $f0 +/* 3B4D54 E00B25C4 0200202D */ daddu $a0, $s0, $zero +/* 3B4D58 E00B25C8 00A0302D */ daddu $a2, $a1, $zero +/* 3B4D5C E00B25CC 0C080110 */ jal func_E0200440 +/* 3B4D60 E00B25D0 00A0382D */ daddu $a3, $a1, $zero +/* 3B4D64 E00B25D4 0200202D */ daddu $a0, $s0, $zero +/* 3B4D68 E00B25D8 27A50010 */ addiu $a1, $sp, 0x10 +/* 3B4D6C E00B25DC 0C080114 */ jal func_E0200450 +/* 3B4D70 E00B25E0 00A0302D */ daddu $a2, $a1, $zero +/* 3B4D74 E00B25E4 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B4D78 E00B25E8 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3B4D7C E00B25EC 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3B4D80 E00B25F0 3C12800A */ lui $s2, %hi(D_8009A674) +/* 3B4D84 E00B25F4 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 3B4D88 E00B25F8 96050000 */ lhu $a1, ($s0) +/* 3B4D8C E00B25FC 8E420000 */ lw $v0, ($s2) +/* 3B4D90 E00B2600 00052980 */ sll $a1, $a1, 6 +/* 3B4D94 E00B2604 00B32821 */ addu $a1, $a1, $s3 +/* 3B4D98 E00B2608 0C080118 */ jal func_E0200460 +/* 3B4D9C E00B260C 00452821 */ addu $a1, $v0, $a1 +/* 3B4DA0 E00B2610 3C03DA38 */ lui $v1, 0xda38 +/* 3B4DA4 E00B2614 8E240000 */ lw $a0, ($s1) +/* 3B4DA8 E00B2618 34630002 */ ori $v1, $v1, 2 +/* 3B4DAC E00B261C 0080282D */ daddu $a1, $a0, $zero +/* 3B4DB0 E00B2620 24840008 */ addiu $a0, $a0, 8 +/* 3B4DB4 E00B2624 24980018 */ addiu $t8, $a0, 0x18 +/* 3B4DB8 E00B2628 0300F02D */ daddu $fp, $t8, $zero +/* 3B4DBC E00B262C AFB80094 */ sw $t8, 0x94($sp) +/* 3B4DC0 E00B2630 96020000 */ lhu $v0, ($s0) +/* 3B4DC4 E00B2634 24940027 */ addiu $s4, $a0, 0x27 +/* 3B4DC8 E00B2638 AE240000 */ sw $a0, ($s1) +/* 3B4DCC E00B263C ACA30000 */ sw $v1, ($a1) +/* 3B4DD0 E00B2640 24430001 */ addiu $v1, $v0, 1 +/* 3B4DD4 E00B2644 3042FFFF */ andi $v0, $v0, 0xffff +/* 3B4DD8 E00B2648 00021180 */ sll $v0, $v0, 6 +/* 3B4DDC E00B264C A6030000 */ sh $v1, ($s0) +/* 3B4DE0 E00B2650 8E430000 */ lw $v1, ($s2) +/* 3B4DE4 E00B2654 00531021 */ addu $v0, $v0, $s3 +/* 3B4DE8 E00B2658 00621821 */ addu $v1, $v1, $v0 +/* 3B4DEC E00B265C 24820008 */ addiu $v0, $a0, 8 +/* 3B4DF0 E00B2660 ACA30004 */ sw $v1, 4($a1) +/* 3B4DF4 E00B2664 AE220000 */ sw $v0, ($s1) +/* 3B4DF8 E00B2668 3C02FA00 */ lui $v0, 0xfa00 +/* 3B4DFC E00B266C AC820000 */ sw $v0, ($a0) +/* 3B4E00 E00B2670 92E20037 */ lbu $v0, 0x37($s7) +/* 3B4E04 E00B2674 92E5003B */ lbu $a1, 0x3b($s7) +/* 3B4E08 E00B2678 92E6003F */ lbu $a2, 0x3f($s7) +/* 3B4E0C E00B267C 92E70043 */ lbu $a3, 0x43($s7) +/* 3B4E10 E00B2680 24830010 */ addiu $v1, $a0, 0x10 +/* 3B4E14 E00B2684 AE230000 */ sw $v1, ($s1) +/* 3B4E18 E00B2688 3C03FB00 */ lui $v1, 0xfb00 +/* 3B4E1C E00B268C AC830008 */ sw $v1, 8($a0) +/* 3B4E20 E00B2690 00021600 */ sll $v0, $v0, 0x18 +/* 3B4E24 E00B2694 00052C00 */ sll $a1, $a1, 0x10 +/* 3B4E28 E00B2698 00451025 */ or $v0, $v0, $a1 +/* 3B4E2C E00B269C 00063200 */ sll $a2, $a2, 8 +/* 3B4E30 E00B26A0 00461025 */ or $v0, $v0, $a2 +/* 3B4E34 E00B26A4 00471025 */ or $v0, $v0, $a3 +/* 3B4E38 E00B26A8 AC820004 */ sw $v0, 4($a0) +/* 3B4E3C E00B26AC 92E20047 */ lbu $v0, 0x47($s7) +/* 3B4E40 E00B26B0 92E5004B */ lbu $a1, 0x4b($s7) +/* 3B4E44 E00B26B4 92E6004F */ lbu $a2, 0x4f($s7) +/* 3B4E48 E00B26B8 3C03DE01 */ lui $v1, 0xde01 +/* 3B4E4C E00B26BC AC830010 */ sw $v1, 0x10($a0) +/* 3B4E50 E00B26C0 24830198 */ addiu $v1, $a0, 0x198 +/* 3B4E54 E00B26C4 AC830014 */ sw $v1, 0x14($a0) +/* 3B4E58 E00B26C8 AE230000 */ sw $v1, ($s1) +/* 3B4E5C E00B26CC 00021600 */ sll $v0, $v0, 0x18 +/* 3B4E60 E00B26D0 00052C00 */ sll $a1, $a1, 0x10 +/* 3B4E64 E00B26D4 00451025 */ or $v0, $v0, $a1 +/* 3B4E68 E00B26D8 00063200 */ sll $a2, $a2, 8 +/* 3B4E6C E00B26DC 00461025 */ or $v0, $v0, $a2 +/* 3B4E70 E00B26E0 344200C8 */ ori $v0, $v0, 0xc8 +/* 3B4E74 E00B26E4 AC82000C */ sw $v0, 0xc($a0) +.LE00B26E8: +/* 3B4E78 E00B26E8 12A00008 */ beqz $s5, .LE00B270C +/* 3B4E7C E00B26EC 0000C02D */ daddu $t8, $zero, $zero +/* 3B4E80 E00B26F0 13150006 */ beq $t8, $s5, .LE00B270C +/* 3B4E84 E00B26F4 2402000B */ addiu $v0, $zero, 0xb +/* 3B4E88 E00B26F8 12A2000F */ beq $s5, $v0, .LE00B2738 +/* 3B4E8C E00B26FC 00000000 */ nop +/* 3B4E90 E00B2700 8EC20178 */ lw $v0, 0x178($s6) +/* 3B4E94 E00B2704 1440000C */ bnez $v0, .LE00B2738 +/* 3B4E98 E00B2708 00000000 */ nop +.LE00B270C: +/* 3B4E9C E00B270C 8FB800A4 */ lw $t8, 0xa4($sp) +/* 3B4EA0 E00B2710 8EC60118 */ lw $a2, 0x118($s6) +/* 3B4EA4 E00B2714 C6C000E8 */ lwc1 $f0, 0xe8($s6) +/* 3B4EA8 E00B2718 02F81021 */ addu $v0, $s7, $t8 +/* 3B4EAC E00B271C 46000007 */ neg.s $f0, $f0 +/* 3B4EB0 E00B2720 C44C0118 */ lwc1 $f12, 0x118($v0) +/* 3B4EB4 E00B2724 C44E00E8 */ lwc1 $f14, 0xe8($v0) +/* 3B4EB8 E00B2728 44070000 */ mfc1 $a3, $f0 +/* 3B4EBC E00B272C 0C080148 */ jal func_E0200520 +/* 3B4EC0 E00B2730 46007387 */ neg.s $f14, $f14 +/* 3B4EC4 E00B2734 46000607 */ neg.s $f24, $f0 +.LE00B2738: +/* 3B4EC8 E00B2738 8EE20000 */ lw $v0, ($s7) +/* 3B4ECC E00B273C 14400015 */ bnez $v0, .LE00B2794 +/* 3B4ED0 E00B2740 00000000 */ nop +/* 3B4ED4 E00B2744 C6C001A8 */ lwc1 $f0, 0x1a8($s6) +/* 3B4ED8 E00B2748 46800020 */ cvt.s.w $f0, $f0 +/* 3B4EDC E00B274C 46000021 */ cvt.d.s $f0, $f0 +/* 3B4EE0 E00B2750 463C0002 */ mul.d $f0, $f0, $f28 +/* 3B4EE4 E00B2754 00000000 */ nop +/* 3B4EE8 E00B2758 3C014000 */ lui $at, 0x4000 +/* 3B4EEC E00B275C 44811800 */ mtc1 $at, $f3 +/* 3B4EF0 E00B2760 44801000 */ mtc1 $zero, $f2 +/* 3B4EF4 E00B2764 00000000 */ nop +/* 3B4EF8 E00B2768 46220000 */ add.d $f0, $f0, $f2 +/* 3B4EFC E00B276C 3C0140C0 */ lui $at, 0x40c0 +/* 3B4F00 E00B2770 44812000 */ mtc1 $at, $f4 +/* 3B4F04 E00B2774 462005A0 */ cvt.s.d $f22, $f0 +/* 3B4F08 E00B2778 4616203C */ c.lt.s $f4, $f22 +/* 3B4F0C E00B277C 00000000 */ nop +/* 3B4F10 E00B2780 45030001 */ bc1tl .LE00B2788 +/* 3B4F14 E00B2784 46002586 */ mov.s $f22, $f4 +.LE00B2788: +/* 3B4F18 E00B2788 8FB800A0 */ lw $t8, 0xa0($sp) +/* 3B4F1C E00B278C 0802CA04 */ j .LE00B2810 +/* 3B4F20 E00B2790 93110000 */ lbu $s1, ($t8) +.LE00B2794: +/* 3B4F24 E00B2794 C6C001A8 */ lwc1 $f0, 0x1a8($s6) +/* 3B4F28 E00B2798 46800020 */ cvt.s.w $f0, $f0 +/* 3B4F2C E00B279C 46000021 */ cvt.d.s $f0, $f0 +/* 3B4F30 E00B27A0 463C0002 */ mul.d $f0, $f0, $f28 +/* 3B4F34 E00B27A4 00000000 */ nop +/* 3B4F38 E00B27A8 3C013FF0 */ lui $at, 0x3ff0 +/* 3B4F3C E00B27AC 44811800 */ mtc1 $at, $f3 +/* 3B4F40 E00B27B0 44801000 */ mtc1 $zero, $f2 +/* 3B4F44 E00B27B4 00000000 */ nop +/* 3B4F48 E00B27B8 46220000 */ add.d $f0, $f0, $f2 +/* 3B4F4C E00B27BC 3C0141F0 */ lui $at, 0x41f0 +/* 3B4F50 E00B27C0 44811000 */ mtc1 $at, $f2 +/* 3B4F54 E00B27C4 462005A0 */ cvt.s.d $f22, $f0 +/* 3B4F58 E00B27C8 4616103C */ c.lt.s $f2, $f22 +/* 3B4F5C E00B27CC 00000000 */ nop +/* 3B4F60 E00B27D0 45030001 */ bc1tl .LE00B27D8 +/* 3B4F64 E00B27D4 46001586 */ mov.s $f22, $f2 +.LE00B27D8: +/* 3B4F68 E00B27D8 02F51021 */ addu $v0, $s7, $s5 +/* 3B4F6C E00B27DC 8FB800A0 */ lw $t8, 0xa0($sp) +/* 3B4F70 E00B27E0 904201D8 */ lbu $v0, 0x1d8($v0) +/* 3B4F74 E00B27E4 93030000 */ lbu $v1, ($t8) +/* 3B4F78 E00B27E8 00620018 */ mult $v1, $v0 +/* 3B4F7C E00B27EC 00001812 */ mflo $v1 +/* 3B4F80 E00B27F0 3C028080 */ lui $v0, 0x8080 +/* 3B4F84 E00B27F4 34428081 */ ori $v0, $v0, 0x8081 +/* 3B4F88 E00B27F8 00620018 */ mult $v1, $v0 +/* 3B4F8C E00B27FC 00001010 */ mfhi $v0 +/* 3B4F90 E00B2800 00431021 */ addu $v0, $v0, $v1 +/* 3B4F94 E00B2804 000211C3 */ sra $v0, $v0, 7 +/* 3B4F98 E00B2808 00031FC3 */ sra $v1, $v1, 0x1f +/* 3B4F9C E00B280C 00438823 */ subu $s1, $v0, $v1 +.LE00B2810: +/* 3B4FA0 E00B2810 C7A40098 */ lwc1 $f4, 0x98($sp) +/* 3B4FA4 E00B2814 8FB8009C */ lw $t8, 0x9c($sp) +/* 3B4FA8 E00B2818 4604B582 */ mul.s $f22, $f22, $f4 +/* 3B4FAC E00B281C 00000000 */ nop +/* 3B4FB0 E00B2820 4600C306 */ mov.s $f12, $f24 +/* 3B4FB4 E00B2824 03158021 */ addu $s0, $t8, $s5 +/* 3B4FB8 E00B2828 0C080140 */ jal func_E0200500 +/* 3B4FBC E00B282C 00108180 */ sll $s0, $s0, 6 +/* 3B4FC0 E00B2830 4600B502 */ mul.s $f20, $f22, $f0 +/* 3B4FC4 E00B2834 00000000 */ nop +/* 3B4FC8 E00B2838 0C080144 */ jal func_E0200510 +/* 3B4FCC E00B283C 4600C306 */ mov.s $f12, $f24 +/* 3B4FD0 E00B2840 C6C200E8 */ lwc1 $f2, 0xe8($s6) +/* 3B4FD4 E00B2844 46141080 */ add.s $f2, $f2, $f20 +/* 3B4FD8 E00B2848 461A1082 */ mul.s $f2, $f2, $f26 +/* 3B4FDC E00B284C 00000000 */ nop +/* 3B4FE0 E00B2850 4600B002 */ mul.s $f0, $f22, $f0 +/* 3B4FE4 E00B2854 00000000 */ nop +/* 3B4FE8 E00B2858 4600110D */ trunc.w.s $f4, $f2 +/* 3B4FEC E00B285C 44022000 */ mfc1 $v0, $f4 +/* 3B4FF0 E00B2860 00000000 */ nop +/* 3B4FF4 E00B2864 A7C20000 */ sh $v0, ($fp) +/* 3B4FF8 E00B2868 C6C20118 */ lwc1 $f2, 0x118($s6) +/* 3B4FFC E00B286C 46001080 */ add.s $f2, $f2, $f0 +/* 3B5000 E00B2870 461A1082 */ mul.s $f2, $f2, $f26 +/* 3B5004 E00B2874 00000000 */ nop +/* 3B5008 E00B2878 4600110D */ trunc.w.s $f4, $f2 +/* 3B500C E00B287C 44022000 */ mfc1 $v0, $f4 +/* 3B5010 E00B2880 00000000 */ nop +/* 3B5014 E00B2884 A682FFF3 */ sh $v0, -0xd($s4) +/* 3B5018 E00B2888 32A20001 */ andi $v0, $s5, 1 +/* 3B501C E00B288C 00022A00 */ sll $a1, $v0, 8 +/* 3B5020 E00B2890 00A22823 */ subu $a1, $a1, $v0 +/* 3B5024 E00B2894 00151043 */ sra $v0, $s5, 1 +/* 3B5028 E00B2898 30420001 */ andi $v0, $v0, 1 +/* 3B502C E00B289C 00022200 */ sll $a0, $v0, 8 +/* 3B5030 E00B28A0 00822023 */ subu $a0, $a0, $v0 +/* 3B5034 E00B28A4 00151083 */ sra $v0, $s5, 2 +/* 3B5038 E00B28A8 30420001 */ andi $v0, $v0, 1 +/* 3B503C E00B28AC 00021A00 */ sll $v1, $v0, 8 +/* 3B5040 E00B28B0 C6C20148 */ lwc1 $f2, 0x148($s6) +/* 3B5044 E00B28B4 00621823 */ subu $v1, $v1, $v0 +/* 3B5048 E00B28B8 461E1080 */ add.s $f2, $f2, $f30 +/* 3B504C E00B28BC A690FFF9 */ sh $s0, -7($s4) +/* 3B5050 E00B28C0 A680FFFB */ sh $zero, -5($s4) +/* 3B5054 E00B28C4 461A1082 */ mul.s $f2, $f2, $f26 +/* 3B5058 E00B28C8 00000000 */ nop +/* 3B505C E00B28CC A285FFFD */ sb $a1, -3($s4) +/* 3B5060 E00B28D0 A284FFFE */ sb $a0, -2($s4) +/* 3B5064 E00B28D4 A283FFFF */ sb $v1, -1($s4) +/* 3B5068 E00B28D8 A2910000 */ sb $s1, ($s4) +/* 3B506C E00B28DC 4600110D */ trunc.w.s $f4, $f2 +/* 3B5070 E00B28E0 44022000 */ mfc1 $v0, $f4 +/* 3B5074 E00B28E4 00000000 */ nop +/* 3B5078 E00B28E8 A682FFF5 */ sh $v0, -0xb($s4) +/* 3B507C E00B28EC C6C200E8 */ lwc1 $f2, 0xe8($s6) +/* 3B5080 E00B28F0 46141081 */ sub.s $f2, $f2, $f20 +/* 3B5084 E00B28F4 461A1082 */ mul.s $f2, $f2, $f26 +/* 3B5088 E00B28F8 00000000 */ nop +/* 3B508C E00B28FC 27DE0010 */ addiu $fp, $fp, 0x10 +/* 3B5090 E00B2900 26B50001 */ addiu $s5, $s5, 1 +/* 3B5094 E00B2904 26940010 */ addiu $s4, $s4, 0x10 +/* 3B5098 E00B2908 4600110D */ trunc.w.s $f4, $f2 +/* 3B509C E00B290C 44022000 */ mfc1 $v0, $f4 +/* 3B50A0 E00B2910 00000000 */ nop +/* 3B50A4 E00B2914 A7C20000 */ sh $v0, ($fp) +/* 3B50A8 E00B2918 8FB8009C */ lw $t8, 0x9c($sp) +/* 3B50AC E00B291C C6C20118 */ lwc1 $f2, 0x118($s6) +/* 3B50B0 E00B2920 27180004 */ addiu $t8, $t8, 4 +/* 3B50B4 E00B2924 AFB8009C */ sw $t8, 0x9c($sp) +/* 3B50B8 E00B2928 8FB800A0 */ lw $t8, 0xa0($sp) +/* 3B50BC E00B292C 46001081 */ sub.s $f2, $f2, $f0 +/* 3B50C0 E00B2930 27180001 */ addiu $t8, $t8, 1 +/* 3B50C4 E00B2934 AFB800A0 */ sw $t8, 0xa0($sp) +/* 3B50C8 E00B2938 461A1082 */ mul.s $f2, $f2, $f26 +/* 3B50CC E00B293C 00000000 */ nop +/* 3B50D0 E00B2940 8FB800A4 */ lw $t8, 0xa4($sp) +/* 3B50D4 E00B2944 27DE0010 */ addiu $fp, $fp, 0x10 +/* 3B50D8 E00B2948 27180004 */ addiu $t8, $t8, 4 +/* 3B50DC E00B294C AFB800A4 */ sw $t8, 0xa4($sp) +/* 3B50E0 E00B2950 4600110D */ trunc.w.s $f4, $f2 +/* 3B50E4 E00B2954 44022000 */ mfc1 $v0, $f4 +/* 3B50E8 E00B2958 00000000 */ nop +/* 3B50EC E00B295C A682FFF3 */ sh $v0, -0xd($s4) +/* 3B50F0 E00B2960 C6C00148 */ lwc1 $f0, 0x148($s6) +/* 3B50F4 E00B2964 26D60004 */ addiu $s6, $s6, 4 +/* 3B50F8 E00B2968 24020400 */ addiu $v0, $zero, 0x400 +/* 3B50FC E00B296C 461E0000 */ add.s $f0, $f0, $f30 +/* 3B5100 E00B2970 A690FFF9 */ sh $s0, -7($s4) +/* 3B5104 E00B2974 A682FFFB */ sh $v0, -5($s4) +/* 3B5108 E00B2978 461A0002 */ mul.s $f0, $f0, $f26 +/* 3B510C E00B297C 00000000 */ nop +/* 3B5110 E00B2980 A285FFFD */ sb $a1, -3($s4) +/* 3B5114 E00B2984 A284FFFE */ sb $a0, -2($s4) +/* 3B5118 E00B2988 A283FFFF */ sb $v1, -1($s4) +/* 3B511C E00B298C A2910000 */ sb $s1, ($s4) +/* 3B5120 E00B2990 4600010D */ trunc.w.s $f4, $f0 +/* 3B5124 E00B2994 44022000 */ mfc1 $v0, $f4 +/* 3B5128 E00B2998 00000000 */ nop +/* 3B512C E00B299C A682FFF5 */ sh $v0, -0xb($s4) +/* 3B5130 E00B29A0 2AA2000C */ slti $v0, $s5, 0xc +/* 3B5134 E00B29A4 1440FF50 */ bnez $v0, .LE00B26E8 +/* 3B5138 E00B29A8 26940010 */ addiu $s4, $s4, 0x10 +/* 3B513C E00B29AC 3C07800A */ lui $a3, %hi(D_8009A66C) +/* 3B5140 E00B29B0 24E7A66C */ addiu $a3, $a3, %lo(D_8009A66C) +/* 3B5144 E00B29B4 3C080900 */ lui $t0, 0x900 +/* 3B5148 E00B29B8 250808A8 */ addiu $t0, $t0, 0x8a8 +/* 3B514C E00B29BC 00151040 */ sll $v0, $s5, 1 +/* 3B5150 E00B29C0 304400FF */ andi $a0, $v0, 0xff +/* 3B5154 E00B29C4 00042300 */ sll $a0, $a0, 0xc +/* 3B5158 E00B29C8 3042007F */ andi $v0, $v0, 0x7f +/* 3B515C E00B29CC 00021040 */ sll $v0, $v0, 1 +/* 3B5160 E00B29D0 3C030100 */ lui $v1, 0x100 +/* 3B5164 E00B29D4 00431025 */ or $v0, $v0, $v1 +/* 3B5168 E00B29D8 8CE60000 */ lw $a2, ($a3) +/* 3B516C E00B29DC 00822025 */ or $a0, $a0, $v0 +/* 3B5170 E00B29E0 00C0282D */ daddu $a1, $a2, $zero +/* 3B5174 E00B29E4 24C60008 */ addiu $a2, $a2, 8 +/* 3B5178 E00B29E8 ACE60000 */ sw $a2, ($a3) +/* 3B517C E00B29EC ACA40000 */ sw $a0, ($a1) +/* 3B5180 E00B29F0 8FB80094 */ lw $t8, 0x94($sp) +/* 3B5184 E00B29F4 24C20008 */ addiu $v0, $a2, 8 +/* 3B5188 E00B29F8 ACB80004 */ sw $t8, 4($a1) +/* 3B518C E00B29FC ACE20000 */ sw $v0, ($a3) +/* 3B5190 E00B2A00 3C02DE00 */ lui $v0, 0xde00 +/* 3B5194 E00B2A04 ACC20000 */ sw $v0, ($a2) +/* 3B5198 E00B2A08 8FB80090 */ lw $t8, 0x90($sp) +/* 3B519C E00B2A0C 17000003 */ bnez $t8, .LE00B2A1C +/* 3B51A0 E00B2A10 02A0102D */ daddu $v0, $s5, $zero +/* 3B51A4 E00B2A14 3C080900 */ lui $t0, 0x900 +/* 3B51A8 E00B2A18 25080800 */ addiu $t0, $t0, 0x800 +.LE00B2A1C: +/* 3B51AC E00B2A1C ACC80004 */ sw $t0, 4($a2) +/* 3B51B0 E00B2A20 2442FFFF */ addiu $v0, $v0, -1 +/* 3B51B4 E00B2A24 18400039 */ blez $v0, .LE00B2B0C +/* 3B51B8 E00B2A28 0000A82D */ daddu $s5, $zero, $zero +/* 3B51BC E00B2A2C 00E0582D */ daddu $t3, $a3, $zero +/* 3B51C0 E00B2A30 3C0A0600 */ lui $t2, 0x600 +/* 3B51C4 E00B2A34 24090001 */ addiu $t1, $zero, 1 +/* 3B51C8 E00B2A38 3C0F0606 */ lui $t7, 0x606 +/* 3B51CC E00B2A3C 35EF0402 */ ori $t7, $t7, 0x402 +/* 3B51D0 E00B2A40 3C0E0002 */ lui $t6, 2 +/* 3B51D4 E00B2A44 35CE0406 */ ori $t6, $t6, 0x406 +/* 3B51D8 E00B2A48 3C0D0006 */ lui $t5, 6 +/* 3B51DC E00B2A4C 35AD0804 */ ori $t5, $t5, 0x804 +/* 3B51E0 E00B2A50 0040602D */ daddu $t4, $v0, $zero +/* 3B51E4 E00B2A54 24070004 */ addiu $a3, $zero, 4 +/* 3B51E8 E00B2A58 24060002 */ addiu $a2, $zero, 2 +/* 3B51EC E00B2A5C 24080006 */ addiu $t0, $zero, 6 +.LE00B2A60: +/* 3B51F0 E00B2A60 2AA20000 */ slti $v0, $s5, 0 +/* 3B51F4 E00B2A64 14400023 */ bnez $v0, .LE00B2AF4 +/* 3B51F8 E00B2A68 00152840 */ sll $a1, $s5, 1 +/* 3B51FC E00B2A6C 8D640000 */ lw $a0, ($t3) +/* 3B5200 E00B2A70 24820008 */ addiu $v0, $a0, 8 +/* 3B5204 E00B2A74 14A00004 */ bnez $a1, .LE00B2A88 +/* 3B5208 E00B2A78 AD620000 */ sw $v0, ($t3) +/* 3B520C E00B2A7C 00151440 */ sll $v0, $s5, 0x11 +/* 3B5210 E00B2A80 0802CAAC */ j .LE00B2AB0 +/* 3B5214 E00B2A84 34420402 */ ori $v0, $v0, 0x402 +.LE00B2A88: +/* 3B5218 E00B2A88 14A90003 */ bne $a1, $t1, .LE00B2A98 +/* 3B521C E00B2A8C 30C200FF */ andi $v0, $a2, 0xff +/* 3B5220 E00B2A90 0802CAAE */ j .LE00B2AB8 +/* 3B5224 E00B2A94 AC8F0000 */ sw $t7, ($a0) +.LE00B2A98: +/* 3B5228 E00B2A98 00021400 */ sll $v0, $v0, 0x10 +/* 3B522C E00B2A9C 00151A80 */ sll $v1, $s5, 0xa +/* 3B5230 E00B2AA0 3063FC00 */ andi $v1, $v1, 0xfc00 +/* 3B5234 E00B2AA4 00431025 */ or $v0, $v0, $v1 +/* 3B5238 E00B2AA8 30E300FF */ andi $v1, $a3, 0xff +/* 3B523C E00B2AAC 00431025 */ or $v0, $v0, $v1 +.LE00B2AB0: +/* 3B5240 E00B2AB0 004A1025 */ or $v0, $v0, $t2 +/* 3B5244 E00B2AB4 AC820000 */ sw $v0, ($a0) +.LE00B2AB8: +/* 3B5248 E00B2AB8 14A00003 */ bnez $a1, .LE00B2AC8 +/* 3B524C E00B2ABC 00000000 */ nop +/* 3B5250 E00B2AC0 0802CABD */ j .LE00B2AF4 +/* 3B5254 E00B2AC4 AC8E0004 */ sw $t6, 4($a0) +.LE00B2AC8: +/* 3B5258 E00B2AC8 14A90003 */ bne $a1, $t1, .LE00B2AD8 +/* 3B525C E00B2ACC 310200FF */ andi $v0, $t0, 0xff +/* 3B5260 E00B2AD0 0802CABD */ j .LE00B2AF4 +/* 3B5264 E00B2AD4 AC8D0004 */ sw $t5, 4($a0) +.LE00B2AD8: +/* 3B5268 E00B2AD8 00021400 */ sll $v0, $v0, 0x10 +/* 3B526C E00B2ADC 30C300FF */ andi $v1, $a2, 0xff +/* 3B5270 E00B2AE0 00031A00 */ sll $v1, $v1, 8 +/* 3B5274 E00B2AE4 00431025 */ or $v0, $v0, $v1 +/* 3B5278 E00B2AE8 30E300FF */ andi $v1, $a3, 0xff +/* 3B527C E00B2AEC 00431025 */ or $v0, $v0, $v1 +/* 3B5280 E00B2AF0 AC820004 */ sw $v0, 4($a0) +.LE00B2AF4: +/* 3B5284 E00B2AF4 24E70004 */ addiu $a3, $a3, 4 +/* 3B5288 E00B2AF8 24C60004 */ addiu $a2, $a2, 4 +/* 3B528C E00B2AFC 26B50001 */ addiu $s5, $s5, 1 +/* 3B5290 E00B2B00 02AC102A */ slt $v0, $s5, $t4 +/* 3B5294 E00B2B04 1440FFD6 */ bnez $v0, .LE00B2A60 +/* 3B5298 E00B2B08 25080004 */ addiu $t0, $t0, 4 +.LE00B2B0C: +/* 3B529C E00B2B0C 3C03D838 */ lui $v1, 0xd838 +/* 3B52A0 E00B2B10 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 3B52A4 E00B2B14 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 3B52A8 E00B2B18 8C820000 */ lw $v0, ($a0) +/* 3B52AC E00B2B1C 34630002 */ ori $v1, $v1, 2 +/* 3B52B0 E00B2B20 0040282D */ daddu $a1, $v0, $zero +/* 3B52B4 E00B2B24 24420008 */ addiu $v0, $v0, 8 +/* 3B52B8 E00B2B28 AC820000 */ sw $v0, ($a0) +/* 3B52BC E00B2B2C ACA30000 */ sw $v1, ($a1) +/* 3B52C0 E00B2B30 24030040 */ addiu $v1, $zero, 0x40 +/* 3B52C4 E00B2B34 ACA30004 */ sw $v1, 4($a1) +/* 3B52C8 E00B2B38 24430008 */ addiu $v1, $v0, 8 +/* 3B52CC E00B2B3C AC830000 */ sw $v1, ($a0) +/* 3B52D0 E00B2B40 3C03E700 */ lui $v1, 0xe700 +/* 3B52D4 E00B2B44 AC430000 */ sw $v1, ($v0) +/* 3B52D8 E00B2B48 AC400004 */ sw $zero, 4($v0) +/* 3B52DC E00B2B4C 8FBF00CC */ lw $ra, 0xcc($sp) +/* 3B52E0 E00B2B50 8FBE00C8 */ lw $fp, 0xc8($sp) +/* 3B52E4 E00B2B54 8FB700C4 */ lw $s7, 0xc4($sp) +/* 3B52E8 E00B2B58 8FB600C0 */ lw $s6, 0xc0($sp) +/* 3B52EC E00B2B5C 8FB500BC */ lw $s5, 0xbc($sp) +/* 3B52F0 E00B2B60 8FB400B8 */ lw $s4, 0xb8($sp) +/* 3B52F4 E00B2B64 8FB300B4 */ lw $s3, 0xb4($sp) +/* 3B52F8 E00B2B68 8FB200B0 */ lw $s2, 0xb0($sp) +/* 3B52FC E00B2B6C 8FB100AC */ lw $s1, 0xac($sp) +/* 3B5300 E00B2B70 8FB000A8 */ lw $s0, 0xa8($sp) +/* 3B5304 E00B2B74 D7BE00F8 */ ldc1 $f30, 0xf8($sp) +/* 3B5308 E00B2B78 D7BC00F0 */ ldc1 $f28, 0xf0($sp) +/* 3B530C E00B2B7C D7BA00E8 */ ldc1 $f26, 0xe8($sp) +/* 3B5310 E00B2B80 D7B800E0 */ ldc1 $f24, 0xe0($sp) +/* 3B5314 E00B2B84 D7B600D8 */ ldc1 $f22, 0xd8($sp) +/* 3B5318 E00B2B88 D7B400D0 */ ldc1 $f20, 0xd0($sp) +/* 3B531C E00B2B8C 03E00008 */ jr $ra +/* 3B5320 E00B2B90 27BD0100 */ addiu $sp, $sp, 0x100 +/* 3B5324 E00B2B94 00000000 */ nop +/* 3B5328 E00B2B98 00000000 */ nop +/* 3B532C E00B2B9C 00000000 */ nop diff --git a/asm/nonmatchings/code_3B5CF0/func_E00B4000.s b/asm/nonmatchings/code_3B5CF0/func_E00B4000.s new file mode 100644 index 0000000000..9a6c510df1 --- /dev/null +++ b/asm/nonmatchings/code_3B5CF0/func_E00B4000.s @@ -0,0 +1,86 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B4000 +/* 3B5CF0 E00B4000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3B5CF4 E00B4004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3B5CF8 E00B4008 4485A000 */ mtc1 $a1, $f20 +/* 3B5CFC E00B400C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3B5D00 E00B4010 4486B000 */ mtc1 $a2, $f22 +/* 3B5D04 E00B4014 AFB20030 */ sw $s2, 0x30($sp) +/* 3B5D08 E00B4018 0080902D */ daddu $s2, $a0, $zero +/* 3B5D0C E00B401C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3B5D10 E00B4020 4487C000 */ mtc1 $a3, $f24 +/* 3B5D14 E00B4024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B5D18 E00B4028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3B5D1C E00B402C 8FB10064 */ lw $s1, 0x64($sp) +/* 3B5D20 E00B4030 3C02E00B */ lui $v0, %hi(D_E00B4134) +/* 3B5D24 E00B4034 24424134 */ addiu $v0, $v0, %lo(D_E00B4134) +/* 3B5D28 E00B4038 AFA20018 */ sw $v0, 0x18($sp) +/* 3B5D2C E00B403C 3C02E00B */ lui $v0, %hi(D_E00B413C) +/* 3B5D30 E00B4040 2442413C */ addiu $v0, $v0, %lo(D_E00B413C) +/* 3B5D34 E00B4044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3B5D38 E00B4048 3C02E00B */ lui $v0, %hi(D_E00B452C) +/* 3B5D3C E00B404C 2442452C */ addiu $v0, $v0, %lo(D_E00B452C) +/* 3B5D40 E00B4050 AFA20020 */ sw $v0, 0x20($sp) +/* 3B5D44 E00B4054 2402005A */ addiu $v0, $zero, 0x5a +/* 3B5D48 E00B4058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3B5D4C E00B405C AFB00028 */ sw $s0, 0x28($sp) +/* 3B5D50 E00B4060 AFA00010 */ sw $zero, 0x10($sp) +/* 3B5D54 E00B4064 AFA00024 */ sw $zero, 0x24($sp) +/* 3B5D58 E00B4068 0C080124 */ jal func_E0200490 +/* 3B5D5C E00B406C AFA20014 */ sw $v0, 0x14($sp) +/* 3B5D60 E00B4070 24040098 */ addiu $a0, $zero, 0x98 +/* 3B5D64 E00B4074 24030001 */ addiu $v1, $zero, 1 +/* 3B5D68 E00B4078 0040802D */ daddu $s0, $v0, $zero +/* 3B5D6C E00B407C 0C08012C */ jal func_E02004B0 +/* 3B5D70 E00B4080 AE030008 */ sw $v1, 8($s0) +/* 3B5D74 E00B4084 0040182D */ daddu $v1, $v0, $zero +/* 3B5D78 E00B4088 14600003 */ bnez $v1, .LE00B4098 +/* 3B5D7C E00B408C AE02000C */ sw $v0, 0xc($s0) +.LE00B4090: +/* 3B5D80 E00B4090 0802D024 */ j .LE00B4090 +/* 3B5D84 E00B4094 00000000 */ nop +.LE00B4098: +/* 3B5D88 E00B4098 AC720000 */ sw $s2, ($v1) +/* 3B5D8C E00B409C 1E200004 */ bgtz $s1, .LE00B40B0 +/* 3B5D90 E00B40A0 AC600014 */ sw $zero, 0x14($v1) +/* 3B5D94 E00B40A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3B5D98 E00B40A8 0802D02D */ j .LE00B40B4 +/* 3B5D9C E00B40AC AC620010 */ sw $v0, 0x10($v1) +.LE00B40B0: +/* 3B5DA0 E00B40B0 AC710010 */ sw $s1, 0x10($v1) +.LE00B40B4: +/* 3B5DA4 E00B40B4 24060003 */ addiu $a2, $zero, 3 +/* 3B5DA8 E00B40B8 2405FFF3 */ addiu $a1, $zero, -0xd +/* 3B5DAC E00B40BC 2464000C */ addiu $a0, $v1, 0xc +/* 3B5DB0 E00B40C0 AC600024 */ sw $zero, 0x24($v1) +/* 3B5DB4 E00B40C4 E4740004 */ swc1 $f20, 4($v1) +/* 3B5DB8 E00B40C8 E4760008 */ swc1 $f22, 8($v1) +/* 3B5DBC E00B40CC E478000C */ swc1 $f24, 0xc($v1) +/* 3B5DC0 E00B40D0 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3B5DC4 E00B40D4 2402002F */ addiu $v0, $zero, 0x2f +/* 3B5DC8 E00B40D8 AC620018 */ sw $v0, 0x18($v1) +/* 3B5DCC E00B40DC 2402007F */ addiu $v0, $zero, 0x7f +/* 3B5DD0 E00B40E0 AC62001C */ sw $v0, 0x1c($v1) +/* 3B5DD4 E00B40E4 240200FF */ addiu $v0, $zero, 0xff +/* 3B5DD8 E00B40E8 AC620020 */ sw $v0, 0x20($v1) +/* 3B5DDC E00B40EC AC600030 */ sw $zero, 0x30($v1) +/* 3B5DE0 E00B40F0 AC600034 */ sw $zero, 0x34($v1) +/* 3B5DE4 E00B40F4 E460002C */ swc1 $f0, 0x2c($v1) +.LE00B40F8: +/* 3B5DE8 E00B40F8 AC850088 */ sw $a1, 0x88($a0) +/* 3B5DEC E00B40FC 24A50004 */ addiu $a1, $a1, 4 +/* 3B5DF0 E00B4100 24C6FFFF */ addiu $a2, $a2, -1 +/* 3B5DF4 E00B4104 04C1FFFC */ bgez $a2, .LE00B40F8 +/* 3B5DF8 E00B4108 2484FFFC */ addiu $a0, $a0, -4 +/* 3B5DFC E00B410C 0200102D */ daddu $v0, $s0, $zero +/* 3B5E00 E00B4110 8FBF0034 */ lw $ra, 0x34($sp) +/* 3B5E04 E00B4114 8FB20030 */ lw $s2, 0x30($sp) +/* 3B5E08 E00B4118 8FB1002C */ lw $s1, 0x2c($sp) +/* 3B5E0C E00B411C 8FB00028 */ lw $s0, 0x28($sp) +/* 3B5E10 E00B4120 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3B5E14 E00B4124 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3B5E18 E00B4128 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3B5E1C E00B412C 03E00008 */ jr $ra +/* 3B5E20 E00B4130 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3B5CF0/func_E00B4134.s b/asm/nonmatchings/code_3B5CF0/func_E00B4134.s new file mode 100644 index 0000000000..09825e8d31 --- /dev/null +++ b/asm/nonmatchings/code_3B5CF0/func_E00B4134.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B4134 +/* 3B5E24 E00B4134 03E00008 */ jr $ra +/* 3B5E28 E00B4138 00000000 */ nop diff --git a/asm/nonmatchings/code_3B5CF0/func_E00B413C.s b/asm/nonmatchings/code_3B5CF0/func_E00B413C.s new file mode 100644 index 0000000000..7ba8558b43 --- /dev/null +++ b/asm/nonmatchings/code_3B5CF0/func_E00B413C.s @@ -0,0 +1,272 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B413C +/* 3B5E2C E00B413C 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 3B5E30 E00B4140 AFB20020 */ sw $s2, 0x20($sp) +/* 3B5E34 E00B4144 0080902D */ daddu $s2, $a0, $zero +/* 3B5E38 E00B4148 AFBF0024 */ sw $ra, 0x24($sp) +/* 3B5E3C E00B414C AFB1001C */ sw $s1, 0x1c($sp) +/* 3B5E40 E00B4150 AFB00018 */ sw $s0, 0x18($sp) +/* 3B5E44 E00B4154 F7BA0040 */ sdc1 $f26, 0x40($sp) +/* 3B5E48 E00B4158 F7B80038 */ sdc1 $f24, 0x38($sp) +/* 3B5E4C E00B415C F7B60030 */ sdc1 $f22, 0x30($sp) +/* 3B5E50 E00B4160 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 3B5E54 E00B4164 8E430000 */ lw $v1, ($s2) +/* 3B5E58 E00B4168 8E51000C */ lw $s1, 0xc($s2) +/* 3B5E5C E00B416C 30620010 */ andi $v0, $v1, 0x10 +/* 3B5E60 E00B4170 8E240000 */ lw $a0, ($s1) +/* 3B5E64 E00B4174 1040000B */ beqz $v0, .LE00B41A4 +/* 3B5E68 E00B4178 24020001 */ addiu $v0, $zero, 1 +/* 3B5E6C E00B417C 14820005 */ bne $a0, $v0, .LE00B4194 +/* 3B5E70 E00B4180 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3B5E74 E00B4184 00621024 */ and $v0, $v1, $v0 +/* 3B5E78 E00B4188 AE420000 */ sw $v0, ($s2) +/* 3B5E7C E00B418C 0802D068 */ j .LE00B41A0 +/* 3B5E80 E00B4190 24020004 */ addiu $v0, $zero, 4 +.LE00B4194: +/* 3B5E84 E00B4194 00621024 */ and $v0, $v1, $v0 +/* 3B5E88 E00B4198 AE420000 */ sw $v0, ($s2) +/* 3B5E8C E00B419C 24020010 */ addiu $v0, $zero, 0x10 +.LE00B41A0: +/* 3B5E90 E00B41A0 AE220010 */ sw $v0, 0x10($s1) +.LE00B41A4: +/* 3B5E94 E00B41A4 8E230010 */ lw $v1, 0x10($s1) +/* 3B5E98 E00B41A8 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3B5E9C E00B41AC 10400002 */ beqz $v0, .LE00B41B8 +/* 3B5EA0 E00B41B0 2462FFFF */ addiu $v0, $v1, -1 +/* 3B5EA4 E00B41B4 AE220010 */ sw $v0, 0x10($s1) +.LE00B41B8: +/* 3B5EA8 E00B41B8 3C030004 */ lui $v1, 4 +/* 3B5EAC E00B41BC 8E220014 */ lw $v0, 0x14($s1) +/* 3B5EB0 E00B41C0 3463F1A0 */ ori $v1, $v1, 0xf1a0 +/* 3B5EB4 E00B41C4 24420001 */ addiu $v0, $v0, 1 +/* 3B5EB8 E00B41C8 0062182A */ slt $v1, $v1, $v0 +/* 3B5EBC E00B41CC 10600003 */ beqz $v1, .LE00B41DC +/* 3B5EC0 E00B41D0 AE220014 */ sw $v0, 0x14($s1) +/* 3B5EC4 E00B41D4 24020100 */ addiu $v0, $zero, 0x100 +/* 3B5EC8 E00B41D8 AE220014 */ sw $v0, 0x14($s1) +.LE00B41DC: +/* 3B5ECC E00B41DC 8E230010 */ lw $v1, 0x10($s1) +/* 3B5ED0 E00B41E0 04610020 */ bgez $v1, .LE00B4264 +/* 3B5ED4 E00B41E4 24020001 */ addiu $v0, $zero, 1 +/* 3B5ED8 E00B41E8 1482001A */ bne $a0, $v0, .LE00B4254 +/* 3B5EDC E00B41EC 00000000 */ nop +/* 3B5EE0 E00B41F0 0C080150 */ jal func_E0200540 +/* 3B5EE4 E00B41F4 2404005F */ addiu $a0, $zero, 0x5f +/* 3B5EE8 E00B41F8 C6200008 */ lwc1 $f0, 8($s1) +/* 3B5EEC E00B41FC 3C0141C0 */ lui $at, 0x41c0 +/* 3B5EF0 E00B4200 4481B000 */ mtc1 $at, $f22 +/* 3B5EF4 E00B4204 3C014000 */ lui $at, 0x4000 +/* 3B5EF8 E00B4208 4481A000 */ mtc1 $at, $f20 +/* 3B5EFC E00B420C 2410001E */ addiu $s0, $zero, 0x1e +/* 3B5F00 E00B4210 AFB00014 */ sw $s0, 0x14($sp) +/* 3B5F04 E00B4214 46160000 */ add.s $f0, $f0, $f22 +/* 3B5F08 E00B4218 E7B40010 */ swc1 $f20, 0x10($sp) +/* 3B5F0C E00B421C 8E250004 */ lw $a1, 4($s1) +/* 3B5F10 E00B4220 8E27000C */ lw $a3, 0xc($s1) +/* 3B5F14 E00B4224 44060000 */ mfc1 $a2, $f0 +/* 3B5F18 E00B4228 0C02F800 */ jal func_E00BE000 +/* 3B5F1C E00B422C 0000202D */ daddu $a0, $zero, $zero +/* 3B5F20 E00B4230 C6200008 */ lwc1 $f0, 8($s1) +/* 3B5F24 E00B4234 E7B40010 */ swc1 $f20, 0x10($sp) +/* 3B5F28 E00B4238 AFB00014 */ sw $s0, 0x14($sp) +/* 3B5F2C E00B423C 46160000 */ add.s $f0, $f0, $f22 +/* 3B5F30 E00B4240 8E250004 */ lw $a1, 4($s1) +/* 3B5F34 E00B4244 8E27000C */ lw $a3, 0xc($s1) +/* 3B5F38 E00B4248 44060000 */ mfc1 $a2, $f0 +/* 3B5F3C E00B424C 0C02F800 */ jal func_E00BE000 +/* 3B5F40 E00B4250 24040001 */ addiu $a0, $zero, 1 +.LE00B4254: +/* 3B5F44 E00B4254 0C080128 */ jal func_E02004A0 +/* 3B5F48 E00B4258 0240202D */ daddu $a0, $s2, $zero +/* 3B5F4C E00B425C 0802D141 */ j .LE00B4504 +/* 3B5F50 E00B4260 00000000 */ nop +.LE00B4264: +/* 3B5F54 E00B4264 8E300014 */ lw $s0, 0x14($s1) +/* 3B5F58 E00B4268 1480000B */ bnez $a0, .LE00B4298 +/* 3B5F5C E00B426C 2A020004 */ slti $v0, $s0, 4 +/* 3B5F60 E00B4270 28620010 */ slti $v0, $v1, 0x10 +/* 3B5F64 E00B4274 10400003 */ beqz $v0, .LE00B4284 +/* 3B5F68 E00B4278 00031100 */ sll $v0, $v1, 4 +/* 3B5F6C E00B427C AE220024 */ sw $v0, 0x24($s1) +/* 3B5F70 E00B4280 AE220028 */ sw $v0, 0x28($s1) +.LE00B4284: +/* 3B5F74 E00B4284 2A020010 */ slti $v0, $s0, 0x10 +/* 3B5F78 E00B4288 10400008 */ beqz $v0, .LE00B42AC +/* 3B5F7C E00B428C 00101100 */ sll $v0, $s0, 4 +/* 3B5F80 E00B4290 0802D0A9 */ j .LE00B42A4 +/* 3B5F84 E00B4294 2442000F */ addiu $v0, $v0, 0xf +.LE00B4298: +/* 3B5F88 E00B4298 10400004 */ beqz $v0, .LE00B42AC +/* 3B5F8C E00B429C 00101180 */ sll $v0, $s0, 6 +/* 3B5F90 E00B42A0 2442003F */ addiu $v0, $v0, 0x3f +.LE00B42A4: +/* 3B5F94 E00B42A4 AE220024 */ sw $v0, 0x24($s1) +/* 3B5F98 E00B42A8 AE220028 */ sw $v0, 0x28($s1) +.LE00B42AC: +/* 3B5F9C E00B42AC 00101040 */ sll $v0, $s0, 1 +/* 3B5FA0 E00B42B0 00501021 */ addu $v0, $v0, $s0 +/* 3B5FA4 E00B42B4 00021040 */ sll $v0, $v0, 1 +/* 3B5FA8 E00B42B8 00501021 */ addu $v0, $v0, $s0 +/* 3B5FAC E00B42BC 44826000 */ mtc1 $v0, $f12 +/* 3B5FB0 E00B42C0 00000000 */ nop +/* 3B5FB4 E00B42C4 0C080140 */ jal func_E0200500 +/* 3B5FB8 E00B42C8 46806320 */ cvt.s.w $f12, $f12 +/* 3B5FBC E00B42CC 4490A000 */ mtc1 $s0, $f20 +/* 3B5FC0 E00B42D0 00000000 */ nop +/* 3B5FC4 E00B42D4 4680A520 */ cvt.s.w $f20, $f20 +/* 3B5FC8 E00B42D8 3C01E00B */ lui $at, %hi(D_E00B4ED0) +/* 3B5FCC E00B42DC D4224ED0 */ ldc1 $f2, %lo(D_E00B4ED0)($at) +/* 3B5FD0 E00B42E0 4600A521 */ cvt.d.s $f20, $f20 +/* 3B5FD4 E00B42E4 4622A502 */ mul.d $f20, $f20, $f2 +/* 3B5FD8 E00B42E8 00000000 */ nop +/* 3B5FDC E00B42EC 3C014200 */ lui $at, 0x4200 +/* 3B5FE0 E00B42F0 4481C000 */ mtc1 $at, $f24 +/* 3B5FE4 E00B42F4 00000000 */ nop +/* 3B5FE8 E00B42F8 46180002 */ mul.s $f0, $f0, $f24 +/* 3B5FEC E00B42FC 00000000 */ nop +/* 3B5FF0 E00B4300 3C0140C0 */ lui $at, 0x40c0 +/* 3B5FF4 E00B4304 44816000 */ mtc1 $at, $f12 +/* 3B5FF8 E00B4308 4620A520 */ cvt.s.d $f20, $f20 +/* 3B5FFC E00B430C 460CA302 */ mul.s $f12, $f20, $f12 +/* 3B6000 E00B4310 00000000 */ nop +/* 3B6004 E00B4314 3C0142FE */ lui $at, 0x42fe +/* 3B6008 E00B4318 44811000 */ mtc1 $at, $f2 +/* 3B600C E00B431C 00000000 */ nop +/* 3B6010 E00B4320 46020000 */ add.s $f0, $f0, $f2 +/* 3B6014 E00B4324 4600038D */ trunc.w.s $f14, $f0 +/* 3B6018 E00B4328 0C080140 */ jal func_E0200500 +/* 3B601C E00B432C E62E001C */ swc1 $f14, 0x1c($s1) +/* 3B6020 E00B4330 4600A306 */ mov.s $f12, $f20 +/* 3B6024 E00B4334 0C080140 */ jal func_E0200500 +/* 3B6028 E00B4338 46000586 */ mov.s $f22, $f0 +/* 3B602C E00B433C 4614A300 */ add.s $f12, $f20, $f20 +/* 3B6030 E00B4340 0C080144 */ jal func_E0200510 +/* 3B6034 E00B4344 46000686 */ mov.s $f26, $f0 +/* 3B6038 E00B4348 4600A306 */ mov.s $f12, $f20 +/* 3B603C E00B434C 0C080144 */ jal func_E0200510 +/* 3B6040 E00B4350 46000506 */ mov.s $f20, $f0 +/* 3B6044 E00B4354 4618B582 */ mul.s $f22, $f22, $f24 +/* 3B6048 E00B4358 00000000 */ nop +/* 3B604C E00B435C 4618A502 */ mul.s $f20, $f20, $f24 +/* 3B6050 E00B4360 00000000 */ nop +/* 3B6054 E00B4364 46180002 */ mul.s $f0, $f0, $f24 +/* 3B6058 E00B4368 00000000 */ nop +/* 3B605C E00B436C 461AB582 */ mul.s $f22, $f22, $f26 +/* 3B6060 E00B4370 00000000 */ nop +/* 3B6064 E00B4374 3C014380 */ lui $at, 0x4380 +/* 3B6068 E00B4378 44811000 */ mtc1 $at, $f2 +/* 3B606C E00B437C 00000000 */ nop +/* 3B6070 E00B4380 4602B580 */ add.s $f22, $f22, $f2 +/* 3B6074 E00B4384 C6220034 */ lwc1 $f2, 0x34($s1) +/* 3B6078 E00B4388 3C01E00B */ lui $at, %hi(D_E00B4ED8) +/* 3B607C E00B438C D4244ED8 */ ldc1 $f4, %lo(D_E00B4ED8)($at) +/* 3B6080 E00B4390 460010A1 */ cvt.d.s $f2, $f2 +/* 3B6084 E00B4394 46241080 */ add.d $f2, $f2, $f4 +/* 3B6088 E00B4398 4614B580 */ add.s $f22, $f22, $f20 +/* 3B608C E00B439C 3C014300 */ lui $at, 0x4300 +/* 3B6090 E00B43A0 44812000 */ mtc1 $at, $f4 +/* 3B6094 E00B43A4 4600B580 */ add.s $f22, $f22, $f0 +/* 3B6098 E00B43A8 462010A0 */ cvt.s.d $f2, $f2 +/* 3B609C E00B43AC E6220034 */ swc1 $f2, 0x34($s1) +/* 3B60A0 E00B43B0 4602203E */ c.le.s $f4, $f2 +/* 3B60A4 E00B43B4 00000000 */ nop +/* 3B60A8 E00B43B8 45000002 */ bc1f .LE00B43C4 +/* 3B60AC E00B43BC E6360030 */ swc1 $f22, 0x30($s1) +/* 3B60B0 E00B43C0 AE200034 */ sw $zero, 0x34($s1) +.LE00B43C4: +/* 3B60B4 E00B43C4 0000902D */ daddu $s2, $zero, $zero +/* 3B60B8 E00B43C8 0220802D */ daddu $s0, $s1, $zero +.LE00B43CC: +/* 3B60BC E00B43CC 8E020088 */ lw $v0, 0x88($s0) +/* 3B60C0 E00B43D0 24420001 */ addiu $v0, $v0, 1 +/* 3B60C4 E00B43D4 04400047 */ bltz $v0, .LE00B44F4 +/* 3B60C8 E00B43D8 AE020088 */ sw $v0, 0x88($s0) +/* 3B60CC E00B43DC 1440001E */ bnez $v0, .LE00B4458 +/* 3B60D0 E00B43E0 2404000A */ addiu $a0, $zero, 0xa +/* 3B60D4 E00B43E4 3C014370 */ lui $at, 0x4370 +/* 3B60D8 E00B43E8 44810000 */ mtc1 $at, $f0 +/* 3B60DC E00B43EC AE000038 */ sw $zero, 0x38($s0) +/* 3B60E0 E00B43F0 0C080138 */ jal func_E02004E0 +/* 3B60E4 E00B43F4 E6000048 */ swc1 $f0, 0x48($s0) +/* 3B60E8 E00B43F8 2442FFFB */ addiu $v0, $v0, -5 +/* 3B60EC E00B43FC 3C01E00B */ lui $at, %hi(D_E00B4EE0) +/* 3B60F0 E00B4400 D4224EE0 */ ldc1 $f2, %lo(D_E00B4EE0)($at) +/* 3B60F4 E00B4404 44820000 */ mtc1 $v0, $f0 +/* 3B60F8 E00B4408 00000000 */ nop +/* 3B60FC E00B440C 46800021 */ cvt.d.w $f0, $f0 +/* 3B6100 E00B4410 46220002 */ mul.d $f0, $f0, $f2 +/* 3B6104 E00B4414 00000000 */ nop +/* 3B6108 E00B4418 2404000A */ addiu $a0, $zero, 0xa +/* 3B610C E00B441C 46200020 */ cvt.s.d $f0, $f0 +/* 3B6110 E00B4420 0C080138 */ jal func_E02004E0 +/* 3B6114 E00B4424 E6000058 */ swc1 $f0, 0x58($s0) +/* 3B6118 E00B4428 2404000A */ addiu $a0, $zero, 0xa +/* 3B611C E00B442C 24420002 */ addiu $v0, $v0, 2 +/* 3B6120 E00B4430 44820000 */ mtc1 $v0, $f0 +/* 3B6124 E00B4434 00000000 */ nop +/* 3B6128 E00B4438 46800020 */ cvt.s.w $f0, $f0 +/* 3B612C E00B443C 0C080138 */ jal func_E02004E0 +/* 3B6130 E00B4440 E6000068 */ swc1 $f0, 0x68($s0) +/* 3B6134 E00B4444 24420001 */ addiu $v0, $v0, 1 +/* 3B6138 E00B4448 44820000 */ mtc1 $v0, $f0 +/* 3B613C E00B444C 00000000 */ nop +/* 3B6140 E00B4450 46800020 */ cvt.s.w $f0, $f0 +/* 3B6144 E00B4454 E6000078 */ swc1 $f0, 0x78($s0) +.LE00B4458: +/* 3B6148 E00B4458 C6060058 */ lwc1 $f6, 0x58($s0) +/* 3B614C E00B445C 3C01E00B */ lui $at, %hi(D_E00B4EE8) +/* 3B6150 E00B4460 D4204EE8 */ ldc1 $f0, %lo(D_E00B4EE8)($at) +/* 3B6154 E00B4464 460031A1 */ cvt.d.s $f6, $f6 +/* 3B6158 E00B4468 46203182 */ mul.d $f6, $f6, $f0 +/* 3B615C E00B446C 00000000 */ nop +/* 3B6160 E00B4470 C6040068 */ lwc1 $f4, 0x68($s0) +/* 3B6164 E00B4474 3C014120 */ lui $at, 0x4120 +/* 3B6168 E00B4478 44811000 */ mtc1 $at, $f2 +/* 3B616C E00B447C 00000000 */ nop +/* 3B6170 E00B4480 46041081 */ sub.s $f2, $f2, $f4 +/* 3B6174 E00B4484 3C01E00B */ lui $at, %hi(D_E00B4EF0) +/* 3B6178 E00B4488 D4204EF0 */ ldc1 $f0, %lo(D_E00B4EF0)($at) +/* 3B617C E00B448C 460010A1 */ cvt.d.s $f2, $f2 +/* 3B6180 E00B4490 46201082 */ mul.d $f2, $f2, $f0 +/* 3B6184 E00B4494 00000000 */ nop +/* 3B6188 E00B4498 C6080048 */ lwc1 $f8, 0x48($s0) +/* 3B618C E00B449C C60A0058 */ lwc1 $f10, 0x58($s0) +/* 3B6190 E00B44A0 46002006 */ mov.s $f0, $f4 +/* 3B6194 E00B44A4 46004200 */ add.s $f8, $f8, $f0 +/* 3B6198 E00B44A8 C6000038 */ lwc1 $f0, 0x38($s0) +/* 3B619C E00B44AC 460A0000 */ add.s $f0, $f0, $f10 +/* 3B61A0 E00B44B0 E6080048 */ swc1 $f8, 0x48($s0) +/* 3B61A4 E00B44B4 46004286 */ mov.s $f10, $f8 +/* 3B61A8 E00B44B8 3C0143F0 */ lui $at, 0x43f0 +/* 3B61AC E00B44BC 44814000 */ mtc1 $at, $f8 +/* 3B61B0 E00B44C0 46002121 */ cvt.d.s $f4, $f4 +/* 3B61B4 E00B44C4 460A403C */ c.lt.s $f8, $f10 +/* 3B61B8 E00B44C8 E6000038 */ swc1 $f0, 0x38($s0) +/* 3B61BC E00B44CC 46222100 */ add.d $f4, $f4, $f2 +/* 3B61C0 E00B44D0 462031A0 */ cvt.s.d $f6, $f6 +/* 3B61C4 E00B44D4 E6060058 */ swc1 $f6, 0x58($s0) +/* 3B61C8 E00B44D8 46202120 */ cvt.s.d $f4, $f4 +/* 3B61CC E00B44DC 45000005 */ bc1f .LE00B44F4 +/* 3B61D0 E00B44E0 E6040068 */ swc1 $f4, 0x68($s0) +/* 3B61D4 E00B44E4 0C080138 */ jal func_E02004E0 +/* 3B61D8 E00B44E8 2404000A */ addiu $a0, $zero, 0xa +/* 3B61DC E00B44EC 00021027 */ nor $v0, $zero, $v0 +/* 3B61E0 E00B44F0 AE020088 */ sw $v0, 0x88($s0) +.LE00B44F4: +/* 3B61E4 E00B44F4 26520001 */ addiu $s2, $s2, 1 +/* 3B61E8 E00B44F8 2A420004 */ slti $v0, $s2, 4 +/* 3B61EC E00B44FC 1440FFB3 */ bnez $v0, .LE00B43CC +/* 3B61F0 E00B4500 26100004 */ addiu $s0, $s0, 4 +.LE00B4504: +/* 3B61F4 E00B4504 8FBF0024 */ lw $ra, 0x24($sp) +/* 3B61F8 E00B4508 8FB20020 */ lw $s2, 0x20($sp) +/* 3B61FC E00B450C 8FB1001C */ lw $s1, 0x1c($sp) +/* 3B6200 E00B4510 8FB00018 */ lw $s0, 0x18($sp) +/* 3B6204 E00B4514 D7BA0040 */ ldc1 $f26, 0x40($sp) +/* 3B6208 E00B4518 D7B80038 */ ldc1 $f24, 0x38($sp) +/* 3B620C E00B451C D7B60030 */ ldc1 $f22, 0x30($sp) +/* 3B6210 E00B4520 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 3B6214 E00B4524 03E00008 */ jr $ra +/* 3B6218 E00B4528 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_3B5CF0/func_E00B452C.s b/asm/nonmatchings/code_3B5CF0/func_E00B452C.s new file mode 100644 index 0000000000..18b68f526f --- /dev/null +++ b/asm/nonmatchings/code_3B5CF0/func_E00B452C.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B452C +/* 3B621C E00B452C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3B6220 E00B4530 3C02E00B */ lui $v0, %hi(D_E00B457C) +/* 3B6224 E00B4534 2442457C */ addiu $v0, $v0, %lo(D_E00B457C) +/* 3B6228 E00B4538 AFA2001C */ sw $v0, 0x1c($sp) +/* 3B622C E00B453C 24020014 */ addiu $v0, $zero, 0x14 +/* 3B6230 E00B4540 AFA20014 */ sw $v0, 0x14($sp) +/* 3B6234 E00B4544 2402002D */ addiu $v0, $zero, 0x2d +/* 3B6238 E00B4548 AFA40018 */ sw $a0, 0x18($sp) +/* 3B623C E00B454C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B6240 E00B4550 AFBF0020 */ sw $ra, 0x20($sp) +/* 3B6244 E00B4554 0C080120 */ jal func_E0200480 +/* 3B6248 E00B4558 AFA20010 */ sw $v0, 0x10($sp) +/* 3B624C E00B455C 8C430000 */ lw $v1, ($v0) +/* 3B6250 E00B4560 34630002 */ ori $v1, $v1, 2 +/* 3B6254 E00B4564 AC430000 */ sw $v1, ($v0) +/* 3B6258 E00B4568 8FBF0020 */ lw $ra, 0x20($sp) +/* 3B625C E00B456C 03E00008 */ jr $ra +/* 3B6260 E00B4570 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3B5CF0/func_E00B4574.s b/asm/nonmatchings/code_3B5CF0/func_E00B4574.s new file mode 100644 index 0000000000..47924b787e --- /dev/null +++ b/asm/nonmatchings/code_3B5CF0/func_E00B4574.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B4574 +/* 3B6264 E00B4574 03E00008 */ jr $ra +/* 3B6268 E00B4578 00000000 */ nop diff --git a/asm/nonmatchings/code_3B5CF0/func_E00B457C.s b/asm/nonmatchings/code_3B5CF0/func_E00B457C.s new file mode 100644 index 0000000000..c1565f1b38 --- /dev/null +++ b/asm/nonmatchings/code_3B5CF0/func_E00B457C.s @@ -0,0 +1,487 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B457C +/* 3B626C E00B457C 27BDFEF8 */ addiu $sp, $sp, -0x108 +/* 3B6270 E00B4580 0080282D */ daddu $a1, $a0, $zero +/* 3B6274 E00B4584 3C06DB06 */ lui $a2, 0xdb06 +/* 3B6278 E00B4588 34C60024 */ ori $a2, $a2, 0x24 +/* 3B627C E00B458C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B6280 E00B4590 AFB300BC */ sw $s3, 0xbc($sp) +/* 3B6284 E00B4594 3C130001 */ lui $s3, 1 +/* 3B6288 E00B4598 36731630 */ ori $s3, $s3, 0x1630 +/* 3B628C E00B459C AFB600C8 */ sw $s6, 0xc8($sp) +/* 3B6290 E00B45A0 3C16E00B */ lui $s6, %hi(D_E00B4CF0) +/* 3B6294 E00B45A4 26D64CF0 */ addiu $s6, $s6, %lo(D_E00B4CF0) +/* 3B6298 E00B45A8 AFB100B4 */ sw $s1, 0xb4($sp) +/* 3B629C E00B45AC 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 3B62A0 E00B45B0 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 3B62A4 E00B45B4 3C02E700 */ lui $v0, 0xe700 +/* 3B62A8 E00B45B8 AFBF00D4 */ sw $ra, 0xd4($sp) +/* 3B62AC E00B45BC AFBE00D0 */ sw $fp, 0xd0($sp) +/* 3B62B0 E00B45C0 AFB700CC */ sw $s7, 0xcc($sp) +/* 3B62B4 E00B45C4 AFB500C4 */ sw $s5, 0xc4($sp) +/* 3B62B8 E00B45C8 AFB400C0 */ sw $s4, 0xc0($sp) +/* 3B62BC E00B45CC AFB200B8 */ sw $s2, 0xb8($sp) +/* 3B62C0 E00B45D0 AFB000B0 */ sw $s0, 0xb0($sp) +/* 3B62C4 E00B45D4 F7BE0100 */ sdc1 $f30, 0x100($sp) +/* 3B62C8 E00B45D8 F7BC00F8 */ sdc1 $f28, 0xf8($sp) +/* 3B62CC E00B45DC F7BA00F0 */ sdc1 $f26, 0xf0($sp) +/* 3B62D0 E00B45E0 F7B800E8 */ sdc1 $f24, 0xe8($sp) +/* 3B62D4 E00B45E4 F7B600E0 */ sdc1 $f22, 0xe0($sp) +/* 3B62D8 E00B45E8 F7B400D8 */ sdc1 $f20, 0xd8($sp) +/* 3B62DC E00B45EC 8E280000 */ lw $t0, ($s1) +/* 3B62E0 E00B45F0 8CAD000C */ lw $t5, 0xc($a1) +/* 3B62E4 E00B45F4 0100182D */ daddu $v1, $t0, $zero +/* 3B62E8 E00B45F8 AFAD00A0 */ sw $t5, 0xa0($sp) +/* 3B62EC E00B45FC 8DAD0024 */ lw $t5, 0x24($t5) +/* 3B62F0 E00B4600 25080008 */ addiu $t0, $t0, 8 +/* 3B62F4 E00B4604 AFAD00A4 */ sw $t5, 0xa4($sp) +/* 3B62F8 E00B4608 AC620000 */ sw $v0, ($v1) +/* 3B62FC E00B460C AC600004 */ sw $zero, 4($v1) +/* 3B6300 E00B4610 AD060000 */ sw $a2, ($t0) +/* 3B6304 E00B4614 8CA20010 */ lw $v0, 0x10($a1) +/* 3B6308 E00B4618 0000B82D */ daddu $s7, $zero, $zero +/* 3B630C E00B461C AE280000 */ sw $t0, ($s1) +/* 3B6310 E00B4620 8C42001C */ lw $v0, 0x1c($v0) +/* 3B6314 E00B4624 3C038000 */ lui $v1, 0x8000 +/* 3B6318 E00B4628 00431021 */ addu $v0, $v0, $v1 +/* 3B631C E00B462C AD020004 */ sw $v0, 4($t0) +/* 3B6320 E00B4630 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 3B6324 E00B4634 26D5000A */ addiu $s5, $s6, 0xa +/* 3B6328 E00B4638 8DA50004 */ lw $a1, 4($t5) +/* 3B632C E00B463C 8DA60008 */ lw $a2, 8($t5) +/* 3B6330 E00B4640 8DA7000C */ lw $a3, 0xc($t5) +/* 3B6334 E00B4644 25080008 */ addiu $t0, $t0, 8 +/* 3B6338 E00B4648 0C080108 */ jal func_E0200420 +/* 3B633C E00B464C AE280000 */ sw $t0, ($s1) +/* 3B6340 E00B4650 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B6344 E00B4654 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3B6348 E00B4658 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3B634C E00B465C 3C12800A */ lui $s2, %hi(D_8009A674) +/* 3B6350 E00B4660 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 3B6354 E00B4664 96050000 */ lhu $a1, ($s0) +/* 3B6358 E00B4668 8E420000 */ lw $v0, ($s2) +/* 3B635C E00B466C 00052980 */ sll $a1, $a1, 6 +/* 3B6360 E00B4670 00B32821 */ addu $a1, $a1, $s3 +/* 3B6364 E00B4674 0C080118 */ jal func_E0200460 +/* 3B6368 E00B4678 00452821 */ addu $a1, $v0, $a1 +/* 3B636C E00B467C 3C02DA38 */ lui $v0, 0xda38 +/* 3B6370 E00B4680 8E240000 */ lw $a0, ($s1) +/* 3B6374 E00B4684 34420002 */ ori $v0, $v0, 2 +/* 3B6378 E00B4688 0080302D */ daddu $a2, $a0, $zero +/* 3B637C E00B468C 24840008 */ addiu $a0, $a0, 8 +/* 3B6380 E00B4690 248D0008 */ addiu $t5, $a0, 8 +/* 3B6384 E00B4694 01A0F02D */ daddu $fp, $t5, $zero +/* 3B6388 E00B4698 AFAD00A8 */ sw $t5, 0xa8($sp) +/* 3B638C E00B469C 96050000 */ lhu $a1, ($s0) +/* 3B6390 E00B46A0 24940017 */ addiu $s4, $a0, 0x17 +/* 3B6394 E00B46A4 AE240000 */ sw $a0, ($s1) +/* 3B6398 E00B46A8 ACC20000 */ sw $v0, ($a2) +/* 3B639C E00B46AC 8E430000 */ lw $v1, ($s2) +/* 3B63A0 E00B46B0 30A2FFFF */ andi $v0, $a1, 0xffff +/* 3B63A4 E00B46B4 00021180 */ sll $v0, $v0, 6 +/* 3B63A8 E00B46B8 00531021 */ addu $v0, $v0, $s3 +/* 3B63AC E00B46BC 00621821 */ addu $v1, $v1, $v0 +/* 3B63B0 E00B46C0 3C02DE01 */ lui $v0, 0xde01 +/* 3B63B4 E00B46C4 ACC30004 */ sw $v1, 4($a2) +/* 3B63B8 E00B46C8 AC820000 */ sw $v0, ($a0) +/* 3B63BC E00B46CC 3C028007 */ lui $v0, %hi(gGameStatusPtr) +/* 3B63C0 E00B46D0 8C42419C */ lw $v0, %lo(gGameStatusPtr)($v0) +/* 3B63C4 E00B46D4 24830288 */ addiu $v1, $a0, 0x288 +/* 3B63C8 E00B46D8 AC830004 */ sw $v1, 4($a0) +/* 3B63CC E00B46DC 94420134 */ lhu $v0, 0x134($v0) +/* 3B63D0 E00B46E0 24A50001 */ addiu $a1, $a1, 1 +/* 3B63D4 E00B46E4 A6050000 */ sh $a1, ($s0) +/* 3B63D8 E00B46E8 AE230000 */ sw $v1, ($s1) +/* 3B63DC E00B46EC 00028080 */ sll $s0, $v0, 2 +.LE00B46F0: +/* 3B63E0 E00B46F0 82C30000 */ lb $v1, ($s6) +/* 3B63E4 E00B46F4 4480F000 */ mtc1 $zero, $f30 +/* 3B63E8 E00B46F8 00031080 */ sll $v0, $v1, 2 +/* 3B63EC E00B46FC 00431021 */ addu $v0, $v0, $v1 +/* 3B63F0 E00B4700 00021040 */ sll $v0, $v0, 1 +/* 3B63F4 E00B4704 82A3FFF7 */ lb $v1, -9($s5) +/* 3B63F8 E00B4708 4482E000 */ mtc1 $v0, $f28 +/* 3B63FC E00B470C 00000000 */ nop +/* 3B6400 E00B4710 4680E720 */ cvt.s.w $f28, $f28 +/* 3B6404 E00B4714 00031080 */ sll $v0, $v1, 2 +/* 3B6408 E00B4718 00431021 */ addu $v0, $v0, $v1 +/* 3B640C E00B471C 00021040 */ sll $v0, $v0, 1 +/* 3B6410 E00B4720 4482C000 */ mtc1 $v0, $f24 +/* 3B6414 E00B4724 00000000 */ nop +/* 3B6418 E00B4728 4680C620 */ cvt.s.w $f24, $f24 +/* 3B641C E00B472C 82A3FFF8 */ lb $v1, -8($s5) +/* 3B6420 E00B4730 461EC032 */ c.eq.s $f24, $f30 +/* 3B6424 E00B4734 00031080 */ sll $v0, $v1, 2 +/* 3B6428 E00B4738 00431021 */ addu $v0, $v0, $v1 +/* 3B642C E00B473C 00021040 */ sll $v0, $v0, 1 +/* 3B6430 E00B4740 4482D000 */ mtc1 $v0, $f26 +/* 3B6434 E00B4744 00000000 */ nop +/* 3B6438 E00B4748 4680D6A0 */ cvt.s.w $f26, $f26 +/* 3B643C E00B474C 45010052 */ bc1t .LE00B4898 +/* 3B6440 E00B4750 00000000 */ nop +/* 3B6444 E00B4754 3C014120 */ lui $at, 0x4120 +/* 3B6448 E00B4758 44813000 */ mtc1 $at, $f6 +/* 3B644C E00B475C 00000000 */ nop +/* 3B6450 E00B4760 4606C002 */ mul.s $f0, $f24, $f6 +/* 3B6454 E00B4764 00000000 */ nop +/* 3B6458 E00B4768 3C0142C8 */ lui $at, 0x42c8 +/* 3B645C E00B476C 44813000 */ mtc1 $at, $f6 +/* 3B6460 E00B4770 00000000 */ nop +/* 3B6464 E00B4774 4606D082 */ mul.s $f2, $f26, $f6 +/* 3B6468 E00B4778 00000000 */ nop +/* 3B646C E00B477C 4600E000 */ add.s $f0, $f28, $f0 +/* 3B6470 E00B4780 46020000 */ add.s $f0, $f0, $f2 +/* 3B6474 E00B4784 4600018D */ trunc.w.s $f6, $f0 +/* 3B6478 E00B4788 44053000 */ mfc1 $a1, $f6 +/* 3B647C E00B478C 0C080011 */ jal func_E0200044 +/* 3B6480 E00B4790 240403E8 */ addiu $a0, $zero, 0x3e8 +/* 3B6484 E00B4794 02021021 */ addu $v0, $s0, $v0 +/* 3B6488 E00B4798 44826000 */ mtc1 $v0, $f12 +/* 3B648C E00B479C 00000000 */ nop +/* 3B6490 E00B47A0 0C080140 */ jal func_E0200500 +/* 3B6494 E00B47A4 46806320 */ cvt.s.w $f12, $f12 +/* 3B6498 E00B47A8 3C014120 */ lui $at, 0x4120 +/* 3B649C E00B47AC 44813000 */ mtc1 $at, $f6 +/* 3B64A0 E00B47B0 00000000 */ nop +/* 3B64A4 E00B47B4 4606E102 */ mul.s $f4, $f28, $f6 +/* 3B64A8 E00B47B8 00000000 */ nop +/* 3B64AC E00B47BC 3C0142C8 */ lui $at, 0x42c8 +/* 3B64B0 E00B47C0 44813000 */ mtc1 $at, $f6 +/* 3B64B4 E00B47C4 00000000 */ nop +/* 3B64B8 E00B47C8 4606C082 */ mul.s $f2, $f24, $f6 +/* 3B64BC E00B47CC 00000000 */ nop +/* 3B64C0 E00B47D0 46022100 */ add.s $f4, $f4, $f2 +/* 3B64C4 E00B47D4 461A2100 */ add.s $f4, $f4, $f26 +/* 3B64C8 E00B47D8 4600218D */ trunc.w.s $f6, $f4 +/* 3B64CC E00B47DC 44053000 */ mfc1 $a1, $f6 +/* 3B64D0 E00B47E0 3C0141A0 */ lui $at, 0x41a0 +/* 3B64D4 E00B47E4 44813000 */ mtc1 $at, $f6 +/* 3B64D8 E00B47E8 00000000 */ nop +/* 3B64DC E00B47EC 46060582 */ mul.s $f22, $f0, $f6 +/* 3B64E0 E00B47F0 00000000 */ nop +/* 3B64E4 E00B47F4 0C080011 */ jal func_E0200044 +/* 3B64E8 E00B47F8 240403E8 */ addiu $a0, $zero, 0x3e8 +/* 3B64EC E00B47FC 02021021 */ addu $v0, $s0, $v0 +/* 3B64F0 E00B4800 44826000 */ mtc1 $v0, $f12 +/* 3B64F4 E00B4804 00000000 */ nop +/* 3B64F8 E00B4808 0C080140 */ jal func_E0200500 +/* 3B64FC E00B480C 46806320 */ cvt.s.w $f12, $f12 +/* 3B6500 E00B4810 3C0142C8 */ lui $at, 0x42c8 +/* 3B6504 E00B4814 44813000 */ mtc1 $at, $f6 +/* 3B6508 E00B4818 00000000 */ nop +/* 3B650C E00B481C 4606E082 */ mul.s $f2, $f28, $f6 +/* 3B6510 E00B4820 00000000 */ nop +/* 3B6514 E00B4824 3C014120 */ lui $at, 0x4120 +/* 3B6518 E00B4828 44813000 */ mtc1 $at, $f6 +/* 3B651C E00B482C 00000000 */ nop +/* 3B6520 E00B4830 4606D102 */ mul.s $f4, $f26, $f6 +/* 3B6524 E00B4834 00000000 */ nop +/* 3B6528 E00B4838 46181080 */ add.s $f2, $f2, $f24 +/* 3B652C E00B483C 46041080 */ add.s $f2, $f2, $f4 +/* 3B6530 E00B4840 4600118D */ trunc.w.s $f6, $f2 +/* 3B6534 E00B4844 44053000 */ mfc1 $a1, $f6 +/* 3B6538 E00B4848 3C0141A0 */ lui $at, 0x41a0 +/* 3B653C E00B484C 44813000 */ mtc1 $at, $f6 +/* 3B6540 E00B4850 00000000 */ nop +/* 3B6544 E00B4854 46060502 */ mul.s $f20, $f0, $f6 +/* 3B6548 E00B4858 00000000 */ nop +/* 3B654C E00B485C 0C080011 */ jal func_E0200044 +/* 3B6550 E00B4860 240403E8 */ addiu $a0, $zero, 0x3e8 +/* 3B6554 E00B4864 02021021 */ addu $v0, $s0, $v0 +/* 3B6558 E00B4868 44826000 */ mtc1 $v0, $f12 +/* 3B655C E00B486C 00000000 */ nop +/* 3B6560 E00B4870 0C080140 */ jal func_E0200500 +/* 3B6564 E00B4874 46806320 */ cvt.s.w $f12, $f12 +/* 3B6568 E00B4878 3C0141A0 */ lui $at, 0x41a0 +/* 3B656C E00B487C 44813000 */ mtc1 $at, $f6 +/* 3B6570 E00B4880 00000000 */ nop +/* 3B6574 E00B4884 46060002 */ mul.s $f0, $f0, $f6 +/* 3B6578 E00B4888 00000000 */ nop +/* 3B657C E00B488C 4616E700 */ add.s $f28, $f28, $f22 +/* 3B6580 E00B4890 4614C600 */ add.s $f24, $f24, $f20 +/* 3B6584 E00B4894 4600D680 */ add.s $f26, $f26, $f0 +.LE00B4898: +/* 3B6588 E00B4898 4600E18D */ trunc.w.s $f6, $f28 +/* 3B658C E00B489C 44023000 */ mfc1 $v0, $f6 +/* 3B6590 E00B48A0 00000000 */ nop +/* 3B6594 E00B48A4 A7C20000 */ sh $v0, ($fp) +/* 3B6598 E00B48A8 4600C18D */ trunc.w.s $f6, $f24 +/* 3B659C E00B48AC 44023000 */ mfc1 $v0, $f6 +/* 3B65A0 E00B48B0 00000000 */ nop +/* 3B65A4 E00B48B4 A682FFF3 */ sh $v0, -0xd($s4) +/* 3B65A8 E00B48B8 4600D18D */ trunc.w.s $f6, $f26 +/* 3B65AC E00B48BC 44023000 */ mfc1 $v0, $f6 +/* 3B65B0 E00B48C0 00000000 */ nop +/* 3B65B4 E00B48C4 A682FFF5 */ sh $v0, -0xb($s4) +/* 3B65B8 E00B48C8 96A2FFFA */ lhu $v0, -6($s5) +/* 3B65BC E00B48CC A682FFF9 */ sh $v0, -7($s4) +/* 3B65C0 E00B48D0 96A2FFFC */ lhu $v0, -4($s5) +/* 3B65C4 E00B48D4 26F70001 */ addiu $s7, $s7, 1 +/* 3B65C8 E00B48D8 A682FFFB */ sh $v0, -5($s4) +/* 3B65CC E00B48DC 92A2FFFE */ lbu $v0, -2($s5) +/* 3B65D0 E00B48E0 26D6000C */ addiu $s6, $s6, 0xc +/* 3B65D4 E00B48E4 A282FFFD */ sb $v0, -3($s4) +/* 3B65D8 E00B48E8 92A2FFFF */ lbu $v0, -1($s5) +/* 3B65DC E00B48EC 27DE0010 */ addiu $fp, $fp, 0x10 +/* 3B65E0 E00B48F0 A282FFFE */ sb $v0, -2($s4) +/* 3B65E4 E00B48F4 92A30000 */ lbu $v1, ($s5) +/* 3B65E8 E00B48F8 26B5000C */ addiu $s5, $s5, 0xc +/* 3B65EC E00B48FC 24020050 */ addiu $v0, $zero, 0x50 +/* 3B65F0 E00B4900 A2820000 */ sb $v0, ($s4) +/* 3B65F4 E00B4904 2AE20028 */ slti $v0, $s7, 0x28 +/* 3B65F8 E00B4908 A283FFFF */ sb $v1, -1($s4) +/* 3B65FC E00B490C 1440FF78 */ bnez $v0, .LE00B46F0 +/* 3B6600 E00B4910 26940010 */ addiu $s4, $s4, 0x10 +/* 3B6604 E00B4914 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B6608 E00B4918 3C100001 */ lui $s0, 1 +/* 3B660C E00B491C 36101630 */ ori $s0, $s0, 0x1630 +/* 3B6610 E00B4920 0000B82D */ daddu $s7, $zero, $zero +/* 3B6614 E00B4924 4600F506 */ mov.s $f20, $f30 +/* 3B6618 E00B4928 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3B661C E00B492C 2442A674 */ addiu $v0, $v0, %lo(D_8009A674) +/* 3B6620 E00B4930 0040A82D */ daddu $s5, $v0, $zero +/* 3B6624 E00B4934 3C028007 */ lui $v0, %hi(D_800741F0) +/* 3B6628 E00B4938 244241F0 */ addiu $v0, $v0, %lo(D_800741F0) +/* 3B662C E00B493C 0040982D */ daddu $s3, $v0, $zero +/* 3B6630 E00B4940 3C013DCC */ lui $at, 0x3dcc +/* 3B6634 E00B4944 3421CCCD */ ori $at, $at, 0xcccd +/* 3B6638 E00B4948 44810000 */ mtc1 $at, $f0 +/* 3B663C E00B494C 3C140001 */ lui $s4, 1 +/* 3B6640 E00B4950 44050000 */ mfc1 $a1, $f0 +/* 3B6644 E00B4954 8FB100A0 */ lw $s1, 0xa0($sp) +/* 3B6648 E00B4958 00A0302D */ daddu $a2, $a1, $zero +/* 3B664C E00B495C 0C080110 */ jal func_E0200440 +/* 3B6650 E00B4960 00A0382D */ daddu $a3, $a1, $zero +/* 3B6654 E00B4964 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B6658 E00B4968 96650000 */ lhu $a1, ($s3) +/* 3B665C E00B496C 8EA20000 */ lw $v0, ($s5) +/* 3B6660 E00B4970 00052980 */ sll $a1, $a1, 6 +/* 3B6664 E00B4974 00B02821 */ addu $a1, $a1, $s0 +/* 3B6668 E00B4978 0C080118 */ jal func_E0200460 +/* 3B666C E00B497C 00452821 */ addu $a1, $v0, $a1 +/* 3B6670 E00B4980 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3B6674 E00B4984 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3B6678 E00B4988 8C440000 */ lw $a0, ($v0) +/* 3B667C E00B498C 0040902D */ daddu $s2, $v0, $zero +/* 3B6680 E00B4990 0080282D */ daddu $a1, $a0, $zero +/* 3B6684 E00B4994 24840008 */ addiu $a0, $a0, 8 +/* 3B6688 E00B4998 AE440000 */ sw $a0, ($s2) +/* 3B668C E00B499C 96620000 */ lhu $v0, ($s3) +/* 3B6690 E00B49A0 3C03DA38 */ lui $v1, 0xda38 +/* 3B6694 E00B49A4 ACA30000 */ sw $v1, ($a1) +/* 3B6698 E00B49A8 24430001 */ addiu $v1, $v0, 1 +/* 3B669C E00B49AC 3042FFFF */ andi $v0, $v0, 0xffff +/* 3B66A0 E00B49B0 00021180 */ sll $v0, $v0, 6 +/* 3B66A4 E00B49B4 A6630000 */ sh $v1, ($s3) +/* 3B66A8 E00B49B8 8EA30000 */ lw $v1, ($s5) +/* 3B66AC E00B49BC 00501021 */ addu $v0, $v0, $s0 +/* 3B66B0 E00B49C0 00621821 */ addu $v1, $v1, $v0 +/* 3B66B4 E00B49C4 24820008 */ addiu $v0, $a0, 8 +/* 3B66B8 E00B49C8 ACA30004 */ sw $v1, 4($a1) +/* 3B66BC E00B49CC AE420000 */ sw $v0, ($s2) +/* 3B66C0 E00B49D0 3C02FB00 */ lui $v0, 0xfb00 +/* 3B66C4 E00B49D4 AC820000 */ sw $v0, ($a0) +/* 3B66C8 E00B49D8 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 3B66CC E00B49DC 36941630 */ ori $s4, $s4, 0x1630 +/* 3B66D0 E00B49E0 91A3002B */ lbu $v1, 0x2b($t5) +/* 3B66D4 E00B49E4 24820010 */ addiu $v0, $a0, 0x10 +/* 3B66D8 E00B49E8 AE420000 */ sw $v0, ($s2) +/* 3B66DC E00B49EC 3C02FA00 */ lui $v0, 0xfa00 +/* 3B66E0 E00B49F0 AC820008 */ sw $v0, 8($a0) +/* 3B66E4 E00B49F4 8FAD00A4 */ lw $t5, 0xa4($sp) +/* 3B66E8 E00B49F8 2402FF00 */ addiu $v0, $zero, -0x100 +/* 3B66EC E00B49FC 01A21025 */ or $v0, $t5, $v0 +/* 3B66F0 E00B4A00 AC82000C */ sw $v0, 0xc($a0) +/* 3B66F4 E00B4A04 24820018 */ addiu $v0, $a0, 0x18 +/* 3B66F8 E00B4A08 AE420000 */ sw $v0, ($s2) +/* 3B66FC E00B4A0C 3C02DE00 */ lui $v0, 0xde00 +/* 3B6700 E00B4A10 AC820010 */ sw $v0, 0x10($a0) +/* 3B6704 E00B4A14 3C020900 */ lui $v0, 0x900 +/* 3B6708 E00B4A18 244203B0 */ addiu $v0, $v0, 0x3b0 +/* 3B670C E00B4A1C 3463FF00 */ ori $v1, $v1, 0xff00 +/* 3B6710 E00B4A20 AC820014 */ sw $v0, 0x14($a0) +/* 3B6714 E00B4A24 AC830004 */ sw $v1, 4($a0) +.LE00B4A28: +/* 3B6718 E00B4A28 8E220088 */ lw $v0, 0x88($s1) +/* 3B671C E00B4A2C 04420032 */ bltzl $v0, .LE00B4AF8 +/* 3B6720 E00B4A30 26F70001 */ addiu $s7, $s7, 1 +/* 3B6724 E00B4A34 C6200078 */ lwc1 $f0, 0x78($s1) +/* 3B6728 E00B4A38 4405A000 */ mfc1 $a1, $f20 +/* 3B672C E00B4A3C 4406A000 */ mfc1 $a2, $f20 +/* 3B6730 E00B4A40 4407A000 */ mfc1 $a3, $f20 +/* 3B6734 E00B4A44 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3B6738 E00B4A48 C6200038 */ lwc1 $f0, 0x38($s1) +/* 3B673C E00B4A4C E7A00014 */ swc1 $f0, 0x14($sp) +/* 3B6740 E00B4A50 C6200048 */ lwc1 $f0, 0x48($s1) +/* 3B6744 E00B4A54 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B6748 E00B4A58 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 3B674C E00B4A5C 0C080180 */ jal func_E0200600 +/* 3B6750 E00B4A60 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3B6754 E00B4A64 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B6758 E00B4A68 96650000 */ lhu $a1, ($s3) +/* 3B675C E00B4A6C 8EA20000 */ lw $v0, ($s5) +/* 3B6760 E00B4A70 00052980 */ sll $a1, $a1, 6 +/* 3B6764 E00B4A74 00B42821 */ addu $a1, $a1, $s4 +/* 3B6768 E00B4A78 0C080118 */ jal func_E0200460 +/* 3B676C E00B4A7C 00452821 */ addu $a1, $v0, $a1 +/* 3B6770 E00B4A80 3C06D838 */ lui $a2, 0xd838 +/* 3B6774 E00B4A84 8E440000 */ lw $a0, ($s2) +/* 3B6778 E00B4A88 34C60002 */ ori $a2, $a2, 2 +/* 3B677C E00B4A8C 0080282D */ daddu $a1, $a0, $zero +/* 3B6780 E00B4A90 24840008 */ addiu $a0, $a0, 8 +/* 3B6784 E00B4A94 AE440000 */ sw $a0, ($s2) +/* 3B6788 E00B4A98 96620000 */ lhu $v0, ($s3) +/* 3B678C E00B4A9C 3C03DA38 */ lui $v1, 0xda38 +/* 3B6790 E00B4AA0 ACA30000 */ sw $v1, ($a1) +/* 3B6794 E00B4AA4 24430001 */ addiu $v1, $v0, 1 +/* 3B6798 E00B4AA8 3042FFFF */ andi $v0, $v0, 0xffff +/* 3B679C E00B4AAC 00021180 */ sll $v0, $v0, 6 +/* 3B67A0 E00B4AB0 A6630000 */ sh $v1, ($s3) +/* 3B67A4 E00B4AB4 8EA30000 */ lw $v1, ($s5) +/* 3B67A8 E00B4AB8 00541021 */ addu $v0, $v0, $s4 +/* 3B67AC E00B4ABC 00621821 */ addu $v1, $v1, $v0 +/* 3B67B0 E00B4AC0 24820008 */ addiu $v0, $a0, 8 +/* 3B67B4 E00B4AC4 ACA30004 */ sw $v1, 4($a1) +/* 3B67B8 E00B4AC8 AE420000 */ sw $v0, ($s2) +/* 3B67BC E00B4ACC 3C02DE00 */ lui $v0, 0xde00 +/* 3B67C0 E00B4AD0 AC820000 */ sw $v0, ($a0) +/* 3B67C4 E00B4AD4 3C020900 */ lui $v0, 0x900 +/* 3B67C8 E00B4AD8 244204A0 */ addiu $v0, $v0, 0x4a0 +/* 3B67CC E00B4ADC AC820004 */ sw $v0, 4($a0) +/* 3B67D0 E00B4AE0 24820010 */ addiu $v0, $a0, 0x10 +/* 3B67D4 E00B4AE4 AE420000 */ sw $v0, ($s2) +/* 3B67D8 E00B4AE8 24020040 */ addiu $v0, $zero, 0x40 +/* 3B67DC E00B4AEC AC860008 */ sw $a2, 8($a0) +/* 3B67E0 E00B4AF0 AC82000C */ sw $v0, 0xc($a0) +/* 3B67E4 E00B4AF4 26F70001 */ addiu $s7, $s7, 1 +.LE00B4AF8: +/* 3B67E8 E00B4AF8 2AE20004 */ slti $v0, $s7, 4 +/* 3B67EC E00B4AFC 1440FFCA */ bnez $v0, .LE00B4A28 +/* 3B67F0 E00B4B00 26310004 */ addiu $s1, $s1, 4 +/* 3B67F4 E00B4B04 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 3B67F8 E00B4B08 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 3B67FC E00B4B0C 3C02DE00 */ lui $v0, 0xde00 +/* 3B6800 E00B4B10 8C830000 */ lw $v1, ($a0) +/* 3B6804 E00B4B14 3C01E00B */ lui $at, %hi(D_E00B4EF8) +/* 3B6808 E00B4B18 D4224EF8 */ ldc1 $f2, %lo(D_E00B4EF8)($at) +/* 3B680C E00B4B1C 0060282D */ daddu $a1, $v1, $zero +/* 3B6810 E00B4B20 24630008 */ addiu $v1, $v1, 8 +/* 3B6814 E00B4B24 AC830000 */ sw $v1, ($a0) +/* 3B6818 E00B4B28 ACA20000 */ sw $v0, ($a1) +/* 3B681C E00B4B2C C7A000A4 */ lwc1 $f0, 0xa4($sp) +/* 3B6820 E00B4B30 46800021 */ cvt.d.w $f0, $f0 +/* 3B6824 E00B4B34 3C020900 */ lui $v0, 0x900 +/* 3B6828 E00B4B38 24420300 */ addiu $v0, $v0, 0x300 +/* 3B682C E00B4B3C ACA20004 */ sw $v0, 4($a1) +/* 3B6830 E00B4B40 24620008 */ addiu $v0, $v1, 8 +/* 3B6834 E00B4B44 AC820000 */ sw $v0, ($a0) +/* 3B6838 E00B4B48 3C02FA00 */ lui $v0, 0xfa00 +/* 3B683C E00B4B4C 246C0004 */ addiu $t4, $v1, 4 +/* 3B6840 E00B4B50 46220002 */ mul.d $f0, $f0, $f2 +/* 3B6844 E00B4B54 00000000 */ nop +/* 3B6848 E00B4B58 AC620000 */ sw $v0, ($v1) +/* 3B684C E00B4B5C 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 3B6850 E00B4B60 3C0141E0 */ lui $at, 0x41e0 +/* 3B6854 E00B4B64 44811800 */ mtc1 $at, $f3 +/* 3B6858 E00B4B68 44801000 */ mtc1 $zero, $f2 +/* 3B685C E00B4B6C 91A4001B */ lbu $a0, 0x1b($t5) +/* 3B6860 E00B4B70 91A3001F */ lbu $v1, 0x1f($t5) +/* 3B6864 E00B4B74 91A20023 */ lbu $v0, 0x23($t5) +/* 3B6868 E00B4B78 00042600 */ sll $a0, $a0, 0x18 +/* 3B686C E00B4B7C 00031C00 */ sll $v1, $v1, 0x10 +/* 3B6870 E00B4B80 00832025 */ or $a0, $a0, $v1 +/* 3B6874 E00B4B84 00021200 */ sll $v0, $v0, 8 +/* 3B6878 E00B4B88 4620103E */ c.le.d $f2, $f0 +/* 3B687C E00B4B8C 00000000 */ nop +/* 3B6880 E00B4B90 45010005 */ bc1t .LE00B4BA8 +/* 3B6884 E00B4B94 00825825 */ or $t3, $a0, $v0 +/* 3B6888 E00B4B98 4620018D */ trunc.w.d $f6, $f0 +/* 3B688C E00B4B9C 440A3000 */ mfc1 $t2, $f6 +/* 3B6890 E00B4BA0 0802D2F1 */ j .LE00B4BC4 +/* 3B6894 E00B4BA4 3C05D9FF */ lui $a1, 0xd9ff +.LE00B4BA8: +/* 3B6898 E00B4BA8 46220001 */ sub.d $f0, $f0, $f2 +/* 3B689C E00B4BAC 3C028000 */ lui $v0, 0x8000 +/* 3B68A0 E00B4BB0 4620018D */ trunc.w.d $f6, $f0 +/* 3B68A4 E00B4BB4 440A3000 */ mfc1 $t2, $f6 +/* 3B68A8 E00B4BB8 00000000 */ nop +/* 3B68AC E00B4BBC 01425025 */ or $t2, $t2, $v0 +/* 3B68B0 E00B4BC0 3C05D9FF */ lui $a1, 0xd9ff +.LE00B4BC4: +/* 3B68B4 E00B4BC4 34A5F9FF */ ori $a1, $a1, 0xf9ff +/* 3B68B8 E00B4BC8 3C06D9FF */ lui $a2, 0xd9ff +/* 3B68BC E00B4BCC 34C6FFFF */ ori $a2, $a2, 0xffff +/* 3B68C0 E00B4BD0 3C070101 */ lui $a3, 0x101 +/* 3B68C4 E00B4BD4 34E7E03C */ ori $a3, $a3, 0xe03c +/* 3B68C8 E00B4BD8 3C090100 */ lui $t1, 0x100 +/* 3B68CC E00B4BDC 3529C018 */ ori $t1, $t1, 0xc018 +/* 3B68D0 E00B4BE0 3C08D838 */ lui $t0, 0xd838 +/* 3B68D4 E00B4BE4 35080002 */ ori $t0, $t0, 2 +/* 3B68D8 E00B4BE8 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 3B68DC E00B4BEC 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 3B68E0 E00B4BF0 314200FF */ andi $v0, $t2, 0xff +/* 3B68E4 E00B4BF4 8C830000 */ lw $v1, ($a0) +/* 3B68E8 E00B4BF8 01621025 */ or $v0, $t3, $v0 +/* 3B68EC E00B4BFC AD820000 */ sw $v0, ($t4) +/* 3B68F0 E00B4C00 0060102D */ daddu $v0, $v1, $zero +/* 3B68F4 E00B4C04 24630008 */ addiu $v1, $v1, 8 +/* 3B68F8 E00B4C08 AC830000 */ sw $v1, ($a0) +/* 3B68FC E00B4C0C AC450000 */ sw $a1, ($v0) +/* 3B6900 E00B4C10 AC400004 */ sw $zero, 4($v0) +/* 3B6904 E00B4C14 24620008 */ addiu $v0, $v1, 8 +/* 3B6908 E00B4C18 AC820000 */ sw $v0, ($a0) +/* 3B690C E00B4C1C 24020400 */ addiu $v0, $zero, 0x400 +/* 3B6910 E00B4C20 AC620004 */ sw $v0, 4($v1) +/* 3B6914 E00B4C24 24620010 */ addiu $v0, $v1, 0x10 +/* 3B6918 E00B4C28 AC660000 */ sw $a2, ($v1) +/* 3B691C E00B4C2C AC820000 */ sw $v0, ($a0) +/* 3B6920 E00B4C30 24620018 */ addiu $v0, $v1, 0x18 +/* 3B6924 E00B4C34 AC670008 */ sw $a3, 8($v1) +/* 3B6928 E00B4C38 8FAD00A8 */ lw $t5, 0xa8($sp) +/* 3B692C E00B4C3C 3C05DE00 */ lui $a1, 0xde00 +/* 3B6930 E00B4C40 AC6D000C */ sw $t5, 0xc($v1) +/* 3B6934 E00B4C44 AC820000 */ sw $v0, ($a0) +/* 3B6938 E00B4C48 3C020900 */ lui $v0, 0x900 +/* 3B693C E00B4C4C 244204D8 */ addiu $v0, $v0, 0x4d8 +/* 3B6940 E00B4C50 AC620014 */ sw $v0, 0x14($v1) +/* 3B6944 E00B4C54 24620020 */ addiu $v0, $v1, 0x20 +/* 3B6948 E00B4C58 AC650010 */ sw $a1, 0x10($v1) +/* 3B694C E00B4C5C AC820000 */ sw $v0, ($a0) +/* 3B6950 E00B4C60 AC690018 */ sw $t1, 0x18($v1) +/* 3B6954 E00B4C64 25A201C0 */ addiu $v0, $t5, 0x1c0 +/* 3B6958 E00B4C68 AC62001C */ sw $v0, 0x1c($v1) +/* 3B695C E00B4C6C 24620028 */ addiu $v0, $v1, 0x28 +/* 3B6960 E00B4C70 AC820000 */ sw $v0, ($a0) +/* 3B6964 E00B4C74 3C020900 */ lui $v0, 0x900 +/* 3B6968 E00B4C78 24420538 */ addiu $v0, $v0, 0x538 +/* 3B696C E00B4C7C AC620024 */ sw $v0, 0x24($v1) +/* 3B6970 E00B4C80 24620030 */ addiu $v0, $v1, 0x30 +/* 3B6974 E00B4C84 AC650020 */ sw $a1, 0x20($v1) +/* 3B6978 E00B4C88 24050040 */ addiu $a1, $zero, 0x40 +/* 3B697C E00B4C8C AC820000 */ sw $v0, ($a0) +/* 3B6980 E00B4C90 24620038 */ addiu $v0, $v1, 0x38 +/* 3B6984 E00B4C94 AC680028 */ sw $t0, 0x28($v1) +/* 3B6988 E00B4C98 AC65002C */ sw $a1, 0x2c($v1) +/* 3B698C E00B4C9C AC820000 */ sw $v0, ($a0) +/* 3B6990 E00B4CA0 AC680030 */ sw $t0, 0x30($v1) +/* 3B6994 E00B4CA4 AC650034 */ sw $a1, 0x34($v1) +/* 3B6998 E00B4CA8 8FBF00D4 */ lw $ra, 0xd4($sp) +/* 3B699C E00B4CAC 8FBE00D0 */ lw $fp, 0xd0($sp) +/* 3B69A0 E00B4CB0 8FB700CC */ lw $s7, 0xcc($sp) +/* 3B69A4 E00B4CB4 8FB600C8 */ lw $s6, 0xc8($sp) +/* 3B69A8 E00B4CB8 8FB500C4 */ lw $s5, 0xc4($sp) +/* 3B69AC E00B4CBC 8FB400C0 */ lw $s4, 0xc0($sp) +/* 3B69B0 E00B4CC0 8FB300BC */ lw $s3, 0xbc($sp) +/* 3B69B4 E00B4CC4 8FB200B8 */ lw $s2, 0xb8($sp) +/* 3B69B8 E00B4CC8 8FB100B4 */ lw $s1, 0xb4($sp) +/* 3B69BC E00B4CCC 8FB000B0 */ lw $s0, 0xb0($sp) +/* 3B69C0 E00B4CD0 D7BE0100 */ ldc1 $f30, 0x100($sp) +/* 3B69C4 E00B4CD4 D7BC00F8 */ ldc1 $f28, 0xf8($sp) +/* 3B69C8 E00B4CD8 D7BA00F0 */ ldc1 $f26, 0xf0($sp) +/* 3B69CC E00B4CDC D7B800E8 */ ldc1 $f24, 0xe8($sp) +/* 3B69D0 E00B4CE0 D7B600E0 */ ldc1 $f22, 0xe0($sp) +/* 3B69D4 E00B4CE4 D7B400D8 */ ldc1 $f20, 0xd8($sp) +/* 3B69D8 E00B4CE8 03E00008 */ jr $ra +/* 3B69DC E00B4CEC 27BD0108 */ addiu $sp, $sp, 0x108 diff --git a/asm/nonmatchings/code_3B7160/func_E00B6000.s b/asm/nonmatchings/code_3B7160/func_E00B6000.s new file mode 100644 index 0000000000..c3e5e276d0 --- /dev/null +++ b/asm/nonmatchings/code_3B7160/func_E00B6000.s @@ -0,0 +1,103 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B6000 +/* 3B7160 E00B6000 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 3B7164 E00B6004 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3B7168 E00B6008 4485C000 */ mtc1 $a1, $f24 +/* 3B716C E00B600C F7BA0050 */ sdc1 $f26, 0x50($sp) +/* 3B7170 E00B6010 4486D000 */ mtc1 $a2, $f26 +/* 3B7174 E00B6014 AFB1002C */ sw $s1, 0x2c($sp) +/* 3B7178 E00B6018 0080882D */ daddu $s1, $a0, $zero +/* 3B717C E00B601C F7BC0058 */ sdc1 $f28, 0x58($sp) +/* 3B7180 E00B6020 4487E000 */ mtc1 $a3, $f28 +/* 3B7184 E00B6024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B7188 E00B6028 AFB00028 */ sw $s0, 0x28($sp) +/* 3B718C E00B602C 8FB00074 */ lw $s0, 0x74($sp) +/* 3B7190 E00B6030 3C02E00B */ lui $v0, %hi(D_E00B6178) +/* 3B7194 E00B6034 24426178 */ addiu $v0, $v0, %lo(D_E00B6178) +/* 3B7198 E00B6038 AFA20018 */ sw $v0, 0x18($sp) +/* 3B719C E00B603C 3C02E00B */ lui $v0, %hi(D_E00B6180) +/* 3B71A0 E00B6040 24426180 */ addiu $v0, $v0, %lo(D_E00B6180) +/* 3B71A4 E00B6044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3B71A8 E00B6048 3C02E00B */ lui $v0, %hi(D_E00B629C) +/* 3B71AC E00B604C 2442629C */ addiu $v0, $v0, %lo(D_E00B629C) +/* 3B71B0 E00B6050 AFA20020 */ sw $v0, 0x20($sp) +/* 3B71B4 E00B6054 2402005B */ addiu $v0, $zero, 0x5b +/* 3B71B8 E00B6058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3B71BC E00B605C AFB20030 */ sw $s2, 0x30($sp) +/* 3B71C0 E00B6060 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3B71C4 E00B6064 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3B71C8 E00B6068 AFA00010 */ sw $zero, 0x10($sp) +/* 3B71CC E00B606C AFA00024 */ sw $zero, 0x24($sp) +/* 3B71D0 E00B6070 0C080124 */ jal func_E0200490 +/* 3B71D4 E00B6074 AFA20014 */ sw $v0, 0x14($sp) +/* 3B71D8 E00B6078 2404008C */ addiu $a0, $zero, 0x8c +/* 3B71DC E00B607C 24030001 */ addiu $v1, $zero, 1 +/* 3B71E0 E00B6080 0040902D */ daddu $s2, $v0, $zero +/* 3B71E4 E00B6084 0C08012C */ jal func_E02004B0 +/* 3B71E8 E00B6088 AE430008 */ sw $v1, 8($s2) +/* 3B71EC E00B608C 0040182D */ daddu $v1, $v0, $zero +/* 3B71F0 E00B6090 14600003 */ bnez $v1, .LE00B60A0 +/* 3B71F4 E00B6094 AE42000C */ sw $v0, 0xc($s2) +.LE00B6098: +/* 3B71F8 E00B6098 0802D826 */ j .LE00B6098 +/* 3B71FC E00B609C 00000000 */ nop +.LE00B60A0: +/* 3B7200 E00B60A0 AC710000 */ sw $s1, ($v1) +/* 3B7204 E00B60A4 1E000004 */ bgtz $s0, .LE00B60B8 +/* 3B7208 E00B60A8 AC600014 */ sw $zero, 0x14($v1) +/* 3B720C E00B60AC 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3B7210 E00B60B0 0802D82F */ j .LE00B60BC +/* 3B7214 E00B60B4 AC620010 */ sw $v0, 0x10($v1) +.LE00B60B8: +/* 3B7218 E00B60B8 AC700010 */ sw $s0, 0x10($v1) +.LE00B60BC: +/* 3B721C E00B60BC 0000882D */ daddu $s1, $zero, $zero +/* 3B7220 E00B60C0 3C01E00B */ lui $at, %hi(D_E00B6750) +/* 3B7224 E00B60C4 D4366750 */ ldc1 $f22, %lo(D_E00B6750)($at) +/* 3B7228 E00B60C8 3C01BFF0 */ lui $at, 0xbff0 +/* 3B722C E00B60CC 4481A800 */ mtc1 $at, $f21 +/* 3B7230 E00B60D0 4480A000 */ mtc1 $zero, $f20 +/* 3B7234 E00B60D4 0060802D */ daddu $s0, $v1, $zero +/* 3B7238 E00B60D8 AE000024 */ sw $zero, 0x24($s0) +/* 3B723C E00B60DC E6180004 */ swc1 $f24, 4($s0) +/* 3B7240 E00B60E0 E61A0008 */ swc1 $f26, 8($s0) +/* 3B7244 E00B60E4 E61C000C */ swc1 $f28, 0xc($s0) +/* 3B7248 E00B60E8 C7A00070 */ lwc1 $f0, 0x70($sp) +/* 3B724C E00B60EC 24020014 */ addiu $v0, $zero, 0x14 +/* 3B7250 E00B60F0 AE020018 */ sw $v0, 0x18($s0) +/* 3B7254 E00B60F4 24020078 */ addiu $v0, $zero, 0x78 +/* 3B7258 E00B60F8 AE02001C */ sw $v0, 0x1c($s0) +/* 3B725C E00B60FC 240200FF */ addiu $v0, $zero, 0xff +/* 3B7260 E00B6100 AE020020 */ sw $v0, 0x20($s0) +/* 3B7264 E00B6104 E6000028 */ swc1 $f0, 0x28($s0) +.LE00B6108: +/* 3B7268 E00B6108 2404000A */ addiu $a0, $zero, 0xa +/* 3B726C E00B610C 0C080138 */ jal func_E02004E0 +/* 3B7270 E00B6110 AE00002C */ sw $zero, 0x2c($s0) +/* 3B7274 E00B6114 44820000 */ mtc1 $v0, $f0 +/* 3B7278 E00B6118 00000000 */ nop +/* 3B727C E00B611C 46800020 */ cvt.s.w $f0, $f0 +/* 3B7280 E00B6120 46000021 */ cvt.d.s $f0, $f0 +/* 3B7284 E00B6124 46360002 */ mul.d $f0, $f0, $f22 +/* 3B7288 E00B6128 00000000 */ nop +/* 3B728C E00B612C 46340000 */ add.d $f0, $f0, $f20 +/* 3B7290 E00B6130 26310001 */ addiu $s1, $s1, 1 +/* 3B7294 E00B6134 2A22000C */ slti $v0, $s1, 0xc +/* 3B7298 E00B6138 46200020 */ cvt.s.d $f0, $f0 +/* 3B729C E00B613C E600005C */ swc1 $f0, 0x5c($s0) +/* 3B72A0 E00B6140 1440FFF1 */ bnez $v0, .LE00B6108 +/* 3B72A4 E00B6144 26100004 */ addiu $s0, $s0, 4 +/* 3B72A8 E00B6148 0240102D */ daddu $v0, $s2, $zero +/* 3B72AC E00B614C 8FBF0034 */ lw $ra, 0x34($sp) +/* 3B72B0 E00B6150 8FB20030 */ lw $s2, 0x30($sp) +/* 3B72B4 E00B6154 8FB1002C */ lw $s1, 0x2c($sp) +/* 3B72B8 E00B6158 8FB00028 */ lw $s0, 0x28($sp) +/* 3B72BC E00B615C D7BC0058 */ ldc1 $f28, 0x58($sp) +/* 3B72C0 E00B6160 D7BA0050 */ ldc1 $f26, 0x50($sp) +/* 3B72C4 E00B6164 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3B72C8 E00B6168 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3B72CC E00B616C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3B72D0 E00B6170 03E00008 */ jr $ra +/* 3B72D4 E00B6174 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_3B7160/func_E00B6178.s b/asm/nonmatchings/code_3B7160/func_E00B6178.s new file mode 100644 index 0000000000..9100e62115 --- /dev/null +++ b/asm/nonmatchings/code_3B7160/func_E00B6178.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B6178 +/* 3B72D8 E00B6178 03E00008 */ jr $ra +/* 3B72DC E00B617C 00000000 */ nop diff --git a/asm/nonmatchings/code_3B7160/func_E00B6180.s b/asm/nonmatchings/code_3B7160/func_E00B6180.s new file mode 100644 index 0000000000..3273f08c1c --- /dev/null +++ b/asm/nonmatchings/code_3B7160/func_E00B6180.s @@ -0,0 +1,83 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B6180 +/* 3B72E0 E00B6180 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3B72E4 E00B6184 AFBF0010 */ sw $ra, 0x10($sp) +/* 3B72E8 E00B6188 8C830000 */ lw $v1, ($a0) +/* 3B72EC E00B618C 8C85000C */ lw $a1, 0xc($a0) +/* 3B72F0 E00B6190 30620010 */ andi $v0, $v1, 0x10 +/* 3B72F4 E00B6194 10400005 */ beqz $v0, .LE00B61AC +/* 3B72F8 E00B6198 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3B72FC E00B619C 00621024 */ and $v0, $v1, $v0 +/* 3B7300 E00B61A0 AC820000 */ sw $v0, ($a0) +/* 3B7304 E00B61A4 24020010 */ addiu $v0, $zero, 0x10 +/* 3B7308 E00B61A8 ACA20010 */ sw $v0, 0x10($a1) +.LE00B61AC: +/* 3B730C E00B61AC 8CA30010 */ lw $v1, 0x10($a1) +/* 3B7310 E00B61B0 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3B7314 E00B61B4 10400002 */ beqz $v0, .LE00B61C0 +/* 3B7318 E00B61B8 2462FFFF */ addiu $v0, $v1, -1 +/* 3B731C E00B61BC ACA20010 */ sw $v0, 0x10($a1) +.LE00B61C0: +/* 3B7320 E00B61C0 8CA20014 */ lw $v0, 0x14($a1) +/* 3B7324 E00B61C4 8CA30010 */ lw $v1, 0x10($a1) +/* 3B7328 E00B61C8 24460001 */ addiu $a2, $v0, 1 +/* 3B732C E00B61CC 04610005 */ bgez $v1, .LE00B61E4 +/* 3B7330 E00B61D0 ACA60014 */ sw $a2, 0x14($a1) +/* 3B7334 E00B61D4 0C080128 */ jal func_E02004A0 +/* 3B7338 E00B61D8 00000000 */ nop +/* 3B733C E00B61DC 0802D8A4 */ j .LE00B6290 +/* 3B7340 E00B61E0 00000000 */ nop +.LE00B61E4: +/* 3B7344 E00B61E4 28620010 */ slti $v0, $v1, 0x10 +/* 3B7348 E00B61E8 10400002 */ beqz $v0, .LE00B61F4 +/* 3B734C E00B61EC 00031100 */ sll $v0, $v1, 4 +/* 3B7350 E00B61F0 ACA20024 */ sw $v0, 0x24($a1) +.LE00B61F4: +/* 3B7354 E00B61F4 28C20010 */ slti $v0, $a2, 0x10 +/* 3B7358 E00B61F8 10400003 */ beqz $v0, .LE00B6208 +/* 3B735C E00B61FC 00061100 */ sll $v0, $a2, 4 +/* 3B7360 E00B6200 2442000F */ addiu $v0, $v0, 0xf +/* 3B7364 E00B6204 ACA20024 */ sw $v0, 0x24($a1) +.LE00B6208: +/* 3B7368 E00B6208 0000202D */ daddu $a0, $zero, $zero +/* 3B736C E00B620C 00A0182D */ daddu $v1, $a1, $zero +/* 3B7370 E00B6210 3C01E00B */ lui $at, %hi(D_E00B6758) +/* 3B7374 E00B6214 D42A6758 */ ldc1 $f10, %lo(D_E00B6758)($at) +/* 3B7378 E00B6218 3C0140A0 */ lui $at, 0x40a0 +/* 3B737C E00B621C 44816000 */ mtc1 $at, $f12 +/* 3B7380 E00B6220 3C014014 */ lui $at, 0x4014 +/* 3B7384 E00B6224 44814800 */ mtc1 $at, $f9 +/* 3B7388 E00B6228 44804000 */ mtc1 $zero, $f8 +/* 3B738C E00B622C 3C01E00B */ lui $at, %hi(D_E00B6760) +/* 3B7390 E00B6230 D4266760 */ ldc1 $f6, %lo(D_E00B6760)($at) +.LE00B6234: +/* 3B7394 E00B6234 C464005C */ lwc1 $f4, 0x5c($v1) +/* 3B7398 E00B6238 46002086 */ mov.s $f2, $f4 +/* 3B739C E00B623C 460010A1 */ cvt.d.s $f2, $f2 +/* 3B73A0 E00B6240 462A1080 */ add.d $f2, $f2, $f10 +/* 3B73A4 E00B6244 C460002C */ lwc1 $f0, 0x2c($v1) +/* 3B73A8 E00B6248 46040000 */ add.s $f0, $f0, $f4 +/* 3B73AC E00B624C 462010A0 */ cvt.s.d $f2, $f2 +/* 3B73B0 E00B6250 E460002C */ swc1 $f0, 0x2c($v1) +/* 3B73B4 E00B6254 4602603C */ c.lt.s $f12, $f2 +/* 3B73B8 E00B6258 00000000 */ nop +/* 3B73BC E00B625C 45000008 */ bc1f .LE00B6280 +/* 3B73C0 E00B6260 E462005C */ swc1 $f2, 0x5c($v1) +/* 3B73C4 E00B6264 460010A1 */ cvt.d.s $f2, $f2 +/* 3B73C8 E00B6268 46224001 */ sub.d $f0, $f8, $f2 +/* 3B73CC E00B626C 46260002 */ mul.d $f0, $f0, $f6 +/* 3B73D0 E00B6270 00000000 */ nop +/* 3B73D4 E00B6274 46201080 */ add.d $f2, $f2, $f0 +/* 3B73D8 E00B6278 462010A0 */ cvt.s.d $f2, $f2 +/* 3B73DC E00B627C E462005C */ swc1 $f2, 0x5c($v1) +.LE00B6280: +/* 3B73E0 E00B6280 24840001 */ addiu $a0, $a0, 1 +/* 3B73E4 E00B6284 2882000C */ slti $v0, $a0, 0xc +/* 3B73E8 E00B6288 1440FFEA */ bnez $v0, .LE00B6234 +/* 3B73EC E00B628C 24630004 */ addiu $v1, $v1, 4 +.LE00B6290: +/* 3B73F0 E00B6290 8FBF0010 */ lw $ra, 0x10($sp) +/* 3B73F4 E00B6294 03E00008 */ jr $ra +/* 3B73F8 E00B6298 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3B7160/func_E00B629C.s b/asm/nonmatchings/code_3B7160/func_E00B629C.s new file mode 100644 index 0000000000..453f93b21a --- /dev/null +++ b/asm/nonmatchings/code_3B7160/func_E00B629C.s @@ -0,0 +1,19 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B629C +/* 3B73FC E00B629C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3B7400 E00B62A0 3C02E00B */ lui $v0, %hi(D_E00B62E0) +/* 3B7404 E00B62A4 244262E0 */ addiu $v0, $v0, %lo(D_E00B62E0) +/* 3B7408 E00B62A8 AFA2001C */ sw $v0, 0x1c($sp) +/* 3B740C E00B62AC 2402000A */ addiu $v0, $zero, 0xa +/* 3B7410 E00B62B0 AFA20014 */ sw $v0, 0x14($sp) +/* 3B7414 E00B62B4 2402002D */ addiu $v0, $zero, 0x2d +/* 3B7418 E00B62B8 AFA40018 */ sw $a0, 0x18($sp) +/* 3B741C E00B62BC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B7420 E00B62C0 AFBF0020 */ sw $ra, 0x20($sp) +/* 3B7424 E00B62C4 0C080120 */ jal func_E0200480 +/* 3B7428 E00B62C8 AFA20010 */ sw $v0, 0x10($sp) +/* 3B742C E00B62CC 8FBF0020 */ lw $ra, 0x20($sp) +/* 3B7430 E00B62D0 03E00008 */ jr $ra +/* 3B7434 E00B62D4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3B7160/func_E00B62D8.s b/asm/nonmatchings/code_3B7160/func_E00B62D8.s new file mode 100644 index 0000000000..407fa50018 --- /dev/null +++ b/asm/nonmatchings/code_3B7160/func_E00B62D8.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B62D8 +/* 3B7438 E00B62D8 03E00008 */ jr $ra +/* 3B743C E00B62DC 00000000 */ nop diff --git a/asm/nonmatchings/code_3B7160/func_E00B62E0.s b/asm/nonmatchings/code_3B7160/func_E00B62E0.s new file mode 100644 index 0000000000..1f64e9327b --- /dev/null +++ b/asm/nonmatchings/code_3B7160/func_E00B62E0.s @@ -0,0 +1,298 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00B62E0 +/* 3B7440 E00B62E0 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 3B7444 E00B62E4 0080302D */ daddu $a2, $a0, $zero +/* 3B7448 E00B62E8 3C07DB06 */ lui $a3, 0xdb06 +/* 3B744C E00B62EC 34E70024 */ ori $a3, $a3, 0x24 +/* 3B7450 E00B62F0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B7454 E00B62F4 AFB600A8 */ sw $s6, 0xa8($sp) +/* 3B7458 E00B62F8 3C160001 */ lui $s6, 1 +/* 3B745C E00B62FC AFB3009C */ sw $s3, 0x9c($sp) +/* 3B7460 E00B6300 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3B7464 E00B6304 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3B7468 E00B6308 36D61630 */ ori $s6, $s6, 0x1630 +/* 3B746C E00B630C AFBF00B0 */ sw $ra, 0xb0($sp) +/* 3B7470 E00B6310 AFB700AC */ sw $s7, 0xac($sp) +/* 3B7474 E00B6314 AFB500A4 */ sw $s5, 0xa4($sp) +/* 3B7478 E00B6318 AFB400A0 */ sw $s4, 0xa0($sp) +/* 3B747C E00B631C AFB20098 */ sw $s2, 0x98($sp) +/* 3B7480 E00B6320 AFB10094 */ sw $s1, 0x94($sp) +/* 3B7484 E00B6324 AFB00090 */ sw $s0, 0x90($sp) +/* 3B7488 E00B6328 F7B400B8 */ sdc1 $f20, 0xb8($sp) +/* 3B748C E00B632C 8E650000 */ lw $a1, ($s3) +/* 3B7490 E00B6330 8CD2000C */ lw $s2, 0xc($a2) +/* 3B7494 E00B6334 3C01E00B */ lui $at, %hi(D_E00B6768) +/* 3B7498 E00B6338 D4206768 */ ldc1 $f0, %lo(D_E00B6768)($at) +/* 3B749C E00B633C 00A0182D */ daddu $v1, $a1, $zero +/* 3B74A0 E00B6340 24A50008 */ addiu $a1, $a1, 8 +/* 3B74A4 E00B6344 AE650000 */ sw $a1, ($s3) +/* 3B74A8 E00B6348 8E570014 */ lw $s7, 0x14($s2) +/* 3B74AC E00B634C 8E550024 */ lw $s5, 0x24($s2) +/* 3B74B0 E00B6350 C6540028 */ lwc1 $f20, 0x28($s2) +/* 3B74B4 E00B6354 3C02E700 */ lui $v0, 0xe700 +/* 3B74B8 E00B6358 AC620000 */ sw $v0, ($v1) +/* 3B74BC E00B635C AC600004 */ sw $zero, 4($v1) +/* 3B74C0 E00B6360 ACA70000 */ sw $a3, ($a1) +/* 3B74C4 E00B6364 8CC30010 */ lw $v1, 0x10($a2) +/* 3B74C8 E00B6368 24A20008 */ addiu $v0, $a1, 8 +/* 3B74CC E00B636C AE620000 */ sw $v0, ($s3) +/* 3B74D0 E00B6370 8C62001C */ lw $v0, 0x1c($v1) +/* 3B74D4 E00B6374 3C038000 */ lui $v1, 0x8000 +/* 3B74D8 E00B6378 4600A521 */ cvt.d.s $f20, $f20 +/* 3B74DC E00B637C 4620A502 */ mul.d $f20, $f20, $f0 +/* 3B74E0 E00B6380 00000000 */ nop +/* 3B74E4 E00B6384 00431021 */ addu $v0, $v0, $v1 +/* 3B74E8 E00B6388 3C03800B */ lui $v1, %hi(gCameras) +/* 3B74EC E00B638C 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3B74F0 E00B6390 ACA20004 */ sw $v0, 4($a1) +/* 3B74F4 E00B6394 8E450004 */ lw $a1, 4($s2) +/* 3B74F8 E00B6398 8E460008 */ lw $a2, 8($s2) +/* 3B74FC E00B639C 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3B7500 E00B63A0 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3B7504 E00B63A4 8E47000C */ lw $a3, 0xc($s2) +/* 3B7508 E00B63A8 00028880 */ sll $s1, $v0, 2 +/* 3B750C E00B63AC 02228821 */ addu $s1, $s1, $v0 +/* 3B7510 E00B63B0 00118880 */ sll $s1, $s1, 2 +/* 3B7514 E00B63B4 02228823 */ subu $s1, $s1, $v0 +/* 3B7518 E00B63B8 001110C0 */ sll $v0, $s1, 3 +/* 3B751C E00B63BC 02228821 */ addu $s1, $s1, $v0 +/* 3B7520 E00B63C0 001188C0 */ sll $s1, $s1, 3 +/* 3B7524 E00B63C4 02238821 */ addu $s1, $s1, $v1 +/* 3B7528 E00B63C8 0C080108 */ jal func_E0200420 +/* 3B752C E00B63CC 4620A520 */ cvt.s.d $f20, $f20 +/* 3B7530 E00B63D0 27B00050 */ addiu $s0, $sp, 0x50 +/* 3B7534 E00B63D4 4405A000 */ mfc1 $a1, $f20 +/* 3B7538 E00B63D8 0200202D */ daddu $a0, $s0, $zero +/* 3B753C E00B63DC 00A0302D */ daddu $a2, $a1, $zero +/* 3B7540 E00B63E0 0C080110 */ jal func_E0200440 +/* 3B7544 E00B63E4 00A0382D */ daddu $a3, $a1, $zero +/* 3B7548 E00B63E8 0200202D */ daddu $a0, $s0, $zero +/* 3B754C E00B63EC 27A50010 */ addiu $a1, $sp, 0x10 +/* 3B7550 E00B63F0 0C080114 */ jal func_E0200450 +/* 3B7554 E00B63F4 00A0302D */ daddu $a2, $a1, $zero +/* 3B7558 E00B63F8 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B755C E00B63FC 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3B7560 E00B6400 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3B7564 E00B6404 3C14800A */ lui $s4, %hi(D_8009A674) +/* 3B7568 E00B6408 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 3B756C E00B640C 96050000 */ lhu $a1, ($s0) +/* 3B7570 E00B6410 8E820000 */ lw $v0, ($s4) +/* 3B7574 E00B6414 00052980 */ sll $a1, $a1, 6 +/* 3B7578 E00B6418 00B62821 */ addu $a1, $a1, $s6 +/* 3B757C E00B641C 0C080118 */ jal func_E0200460 +/* 3B7580 E00B6420 00452821 */ addu $a1, $v0, $a1 +/* 3B7584 E00B6424 3C03DA38 */ lui $v1, 0xda38 +/* 3B7588 E00B6428 34630002 */ ori $v1, $v1, 2 +/* 3B758C E00B642C 3C06DA38 */ lui $a2, 0xda38 +/* 3B7590 E00B6430 34C60001 */ ori $a2, $a2, 1 +/* 3B7594 E00B6434 0000482D */ daddu $t1, $zero, $zero +/* 3B7598 E00B6438 240F0258 */ addiu $t7, $zero, 0x258 +/* 3B759C E00B643C 240C00FF */ addiu $t4, $zero, 0xff +/* 3B75A0 E00B6440 240E0400 */ addiu $t6, $zero, 0x400 +/* 3B75A4 E00B6444 240BFFFF */ addiu $t3, $zero, -1 +/* 3B75A8 E00B6448 240AFED4 */ addiu $t2, $zero, -0x12c +/* 3B75AC E00B644C 32B500FF */ andi $s5, $s5, 0xff +/* 3B75B0 E00B6450 8E640000 */ lw $a0, ($s3) +/* 3B75B4 E00B6454 3C014270 */ lui $at, 0x4270 +/* 3B75B8 E00B6458 44812000 */ mtc1 $at, $f4 +/* 3B75BC E00B645C 3C014120 */ lui $at, 0x4120 +/* 3B75C0 E00B6460 44811000 */ mtc1 $at, $f2 +/* 3B75C4 E00B6464 96020000 */ lhu $v0, ($s0) +/* 3B75C8 E00B6468 0080282D */ daddu $a1, $a0, $zero +/* 3B75CC E00B646C 24840008 */ addiu $a0, $a0, 8 +/* 3B75D0 E00B6470 248D0020 */ addiu $t5, $a0, 0x20 +/* 3B75D4 E00B6474 01A0402D */ daddu $t0, $t5, $zero +/* 3B75D8 E00B6478 2487002F */ addiu $a3, $a0, 0x2f +/* 3B75DC E00B647C AE640000 */ sw $a0, ($s3) +/* 3B75E0 E00B6480 ACA30000 */ sw $v1, ($a1) +/* 3B75E4 E00B6484 24430001 */ addiu $v1, $v0, 1 +/* 3B75E8 E00B6488 3042FFFF */ andi $v0, $v0, 0xffff +/* 3B75EC E00B648C 00021180 */ sll $v0, $v0, 6 +/* 3B75F0 E00B6490 A6030000 */ sh $v1, ($s0) +/* 3B75F4 E00B6494 8E830000 */ lw $v1, ($s4) +/* 3B75F8 E00B6498 00561021 */ addu $v0, $v0, $s6 +/* 3B75FC E00B649C 00621821 */ addu $v1, $v1, $v0 +/* 3B7600 E00B64A0 24820008 */ addiu $v0, $a0, 8 +/* 3B7604 E00B64A4 ACA30004 */ sw $v1, 4($a1) +/* 3B7608 E00B64A8 AE620000 */ sw $v0, ($s3) +/* 3B760C E00B64AC 24820010 */ addiu $v0, $a0, 0x10 +/* 3B7610 E00B64B0 AC860000 */ sw $a2, ($a0) +/* 3B7614 E00B64B4 AE620000 */ sw $v0, ($s3) +/* 3B7618 E00B64B8 8E230204 */ lw $v1, 0x204($s1) +/* 3B761C E00B64BC 3C02FA00 */ lui $v0, 0xfa00 +/* 3B7620 E00B64C0 AC820008 */ sw $v0, 8($a0) +/* 3B7624 E00B64C4 AC830004 */ sw $v1, 4($a0) +/* 3B7628 E00B64C8 9243001B */ lbu $v1, 0x1b($s2) +/* 3B762C E00B64CC 9245001F */ lbu $a1, 0x1f($s2) +/* 3B7630 E00B64D0 92460023 */ lbu $a2, 0x23($s2) +/* 3B7634 E00B64D4 24820018 */ addiu $v0, $a0, 0x18 +/* 3B7638 E00B64D8 AE620000 */ sw $v0, ($s3) +/* 3B763C E00B64DC 3C02DE00 */ lui $v0, 0xde00 +/* 3B7640 E00B64E0 AC820010 */ sw $v0, 0x10($a0) +/* 3B7644 E00B64E4 3C020900 */ lui $v0, 0x900 +/* 3B7648 E00B64E8 24420200 */ addiu $v0, $v0, 0x200 +/* 3B764C E00B64EC AC820014 */ sw $v0, 0x14($a0) +/* 3B7650 E00B64F0 3C02DE01 */ lui $v0, 0xde01 +/* 3B7654 E00B64F4 AC820018 */ sw $v0, 0x18($a0) +/* 3B7658 E00B64F8 248201A0 */ addiu $v0, $a0, 0x1a0 +/* 3B765C E00B64FC AC82001C */ sw $v0, 0x1c($a0) +/* 3B7660 E00B6500 AE620000 */ sw $v0, ($s3) +/* 3B7664 E00B6504 00031E00 */ sll $v1, $v1, 0x18 +/* 3B7668 E00B6508 00052C00 */ sll $a1, $a1, 0x10 +/* 3B766C E00B650C 00651825 */ or $v1, $v1, $a1 +/* 3B7670 E00B6510 00063200 */ sll $a2, $a2, 8 +/* 3B7674 E00B6514 00661825 */ or $v1, $v1, $a2 +/* 3B7678 E00B6518 00751825 */ or $v1, $v1, $s5 +/* 3B767C E00B651C AC83000C */ sw $v1, 0xc($a0) +.LE00B6520: +/* 3B7680 E00B6520 A50A0000 */ sh $t2, ($t0) +/* 3B7684 E00B6524 25080010 */ addiu $t0, $t0, 0x10 +/* 3B7688 E00B6528 00171940 */ sll $v1, $s7, 5 +/* 3B768C E00B652C 26F70004 */ addiu $s7, $s7, 4 +/* 3B7690 E00B6530 A4EFFFF3 */ sh $t7, -0xd($a3) +/* 3B7694 E00B6534 A4E0FFF5 */ sh $zero, -0xb($a3) +/* 3B7698 E00B6538 A4E3FFF9 */ sh $v1, -7($a3) +/* 3B769C E00B653C C640002C */ lwc1 $f0, 0x2c($s2) +/* 3B76A0 E00B6540 25290001 */ addiu $t1, $t1, 1 +/* 3B76A4 E00B6544 A0ECFFFD */ sb $t4, -3($a3) +/* 3B76A8 E00B6548 A0ECFFFE */ sb $t4, -2($a3) +/* 3B76AC E00B654C A0ECFFFF */ sb $t4, -1($a3) +/* 3B76B0 E00B6550 A0EB0000 */ sb $t3, ($a3) +/* 3B76B4 E00B6554 4600018D */ trunc.w.s $f6, $f0 +/* 3B76B8 E00B6558 44023000 */ mfc1 $v0, $f6 +/* 3B76BC E00B655C 00000000 */ nop +/* 3B76C0 E00B6560 00021140 */ sll $v0, $v0, 5 +/* 3B76C4 E00B6564 A4E2FFFB */ sh $v0, -5($a3) +/* 3B76C8 E00B6568 24E70010 */ addiu $a3, $a3, 0x10 +/* 3B76CC E00B656C A50A0000 */ sh $t2, ($t0) +/* 3B76D0 E00B6570 C640002C */ lwc1 $f0, 0x2c($s2) +/* 3B76D4 E00B6574 25080010 */ addiu $t0, $t0, 0x10 +/* 3B76D8 E00B6578 A0EB0000 */ sb $t3, ($a3) +/* 3B76DC E00B657C 256BFFEC */ addiu $t3, $t3, -0x14 +/* 3B76E0 E00B6580 26520004 */ addiu $s2, $s2, 4 +/* 3B76E4 E00B6584 254A0032 */ addiu $t2, $t2, 0x32 +/* 3B76E8 E00B6588 46040000 */ add.s $f0, $f0, $f4 +/* 3B76EC E00B658C A4E0FFF5 */ sh $zero, -0xb($a3) +/* 3B76F0 E00B6590 A4E3FFF9 */ sh $v1, -7($a3) +/* 3B76F4 E00B6594 46020002 */ mul.s $f0, $f0, $f2 +/* 3B76F8 E00B6598 00000000 */ nop +/* 3B76FC E00B659C A4EEFFFB */ sh $t6, -5($a3) +/* 3B7700 E00B65A0 A0ECFFFD */ sb $t4, -3($a3) +/* 3B7704 E00B65A4 A0ECFFFE */ sb $t4, -2($a3) +/* 3B7708 E00B65A8 A0ECFFFF */ sb $t4, -1($a3) +/* 3B770C E00B65AC 4600018D */ trunc.w.s $f6, $f0 +/* 3B7710 E00B65B0 44023000 */ mfc1 $v0, $f6 +/* 3B7714 E00B65B4 00000000 */ nop +/* 3B7718 E00B65B8 A4E2FFF3 */ sh $v0, -0xd($a3) +/* 3B771C E00B65BC 2922000C */ slti $v0, $t1, 0xc +/* 3B7720 E00B65C0 1440FFD7 */ bnez $v0, .LE00B6520 +/* 3B7724 E00B65C4 24E70010 */ addiu $a3, $a3, 0x10 +/* 3B7728 E00B65C8 0120302D */ daddu $a2, $t1, $zero +/* 3B772C E00B65CC 3C07800A */ lui $a3, %hi(D_8009A66C) +/* 3B7730 E00B65D0 24E7A66C */ addiu $a3, $a3, %lo(D_8009A66C) +/* 3B7734 E00B65D4 00061040 */ sll $v0, $a2, 1 +/* 3B7738 E00B65D8 0000482D */ daddu $t1, $zero, $zero +/* 3B773C E00B65DC 304400FF */ andi $a0, $v0, 0xff +/* 3B7740 E00B65E0 00042300 */ sll $a0, $a0, 0xc +/* 3B7744 E00B65E4 3042007F */ andi $v0, $v0, 0x7f +/* 3B7748 E00B65E8 00021040 */ sll $v0, $v0, 1 +/* 3B774C E00B65EC 8CE30000 */ lw $v1, ($a3) +/* 3B7750 E00B65F0 24C6FFFF */ addiu $a2, $a2, -1 +/* 3B7754 E00B65F4 0060282D */ daddu $a1, $v1, $zero +/* 3B7758 E00B65F8 24630008 */ addiu $v1, $v1, 8 +/* 3B775C E00B65FC ACE30000 */ sw $v1, ($a3) +/* 3B7760 E00B6600 3C030100 */ lui $v1, 0x100 +/* 3B7764 E00B6604 00431025 */ or $v0, $v0, $v1 +/* 3B7768 E00B6608 00822025 */ or $a0, $a0, $v0 +/* 3B776C E00B660C ACA40000 */ sw $a0, ($a1) +/* 3B7770 E00B6610 18C00036 */ blez $a2, .LE00B66EC +/* 3B7774 E00B6614 ACAD0004 */ sw $t5, 4($a1) +/* 3B7778 E00B6618 00E0682D */ daddu $t5, $a3, $zero +/* 3B777C E00B661C 3C0C0600 */ lui $t4, 0x600 +/* 3B7780 E00B6620 240B0001 */ addiu $t3, $zero, 1 +/* 3B7784 E00B6624 3C100606 */ lui $s0, 0x606 +/* 3B7788 E00B6628 36100402 */ ori $s0, $s0, 0x402 +/* 3B778C E00B662C 3C0F0002 */ lui $t7, 2 +/* 3B7790 E00B6630 35EF0406 */ ori $t7, $t7, 0x406 +/* 3B7794 E00B6634 3C0E0006 */ lui $t6, 6 +/* 3B7798 E00B6638 35CE0804 */ ori $t6, $t6, 0x804 +/* 3B779C E00B663C 24080004 */ addiu $t0, $zero, 4 +/* 3B77A0 E00B6640 24070002 */ addiu $a3, $zero, 2 +/* 3B77A4 E00B6644 240A0006 */ addiu $t2, $zero, 6 +.LE00B6648: +/* 3B77A8 E00B6648 8DA40000 */ lw $a0, ($t5) +/* 3B77AC E00B664C 00092840 */ sll $a1, $t1, 1 +/* 3B77B0 E00B6650 24820008 */ addiu $v0, $a0, 8 +/* 3B77B4 E00B6654 14A00004 */ bnez $a1, .LE00B6668 +/* 3B77B8 E00B6658 ADA20000 */ sw $v0, ($t5) +/* 3B77BC E00B665C 00091440 */ sll $v0, $t1, 0x11 +/* 3B77C0 E00B6660 0802D9A4 */ j .LE00B6690 +/* 3B77C4 E00B6664 34420402 */ ori $v0, $v0, 0x402 +.LE00B6668: +/* 3B77C8 E00B6668 14AB0003 */ bne $a1, $t3, .LE00B6678 +/* 3B77CC E00B666C 30E200FF */ andi $v0, $a3, 0xff +/* 3B77D0 E00B6670 0802D9A6 */ j .LE00B6698 +/* 3B77D4 E00B6674 AC900000 */ sw $s0, ($a0) +.LE00B6678: +/* 3B77D8 E00B6678 00021400 */ sll $v0, $v0, 0x10 +/* 3B77DC E00B667C 00091A80 */ sll $v1, $t1, 0xa +/* 3B77E0 E00B6680 3063FC00 */ andi $v1, $v1, 0xfc00 +/* 3B77E4 E00B6684 00431025 */ or $v0, $v0, $v1 +/* 3B77E8 E00B6688 310300FF */ andi $v1, $t0, 0xff +/* 3B77EC E00B668C 00431025 */ or $v0, $v0, $v1 +.LE00B6690: +/* 3B77F0 E00B6690 004C1025 */ or $v0, $v0, $t4 +/* 3B77F4 E00B6694 AC820000 */ sw $v0, ($a0) +.LE00B6698: +/* 3B77F8 E00B6698 14A00003 */ bnez $a1, .LE00B66A8 +/* 3B77FC E00B669C 00000000 */ nop +/* 3B7800 E00B66A0 0802D9B5 */ j .LE00B66D4 +/* 3B7804 E00B66A4 AC8F0004 */ sw $t7, 4($a0) +.LE00B66A8: +/* 3B7808 E00B66A8 14AB0003 */ bne $a1, $t3, .LE00B66B8 +/* 3B780C E00B66AC 314200FF */ andi $v0, $t2, 0xff +/* 3B7810 E00B66B0 0802D9B5 */ j .LE00B66D4 +/* 3B7814 E00B66B4 AC8E0004 */ sw $t6, 4($a0) +.LE00B66B8: +/* 3B7818 E00B66B8 00021400 */ sll $v0, $v0, 0x10 +/* 3B781C E00B66BC 30E300FF */ andi $v1, $a3, 0xff +/* 3B7820 E00B66C0 00031A00 */ sll $v1, $v1, 8 +/* 3B7824 E00B66C4 00431025 */ or $v0, $v0, $v1 +/* 3B7828 E00B66C8 310300FF */ andi $v1, $t0, 0xff +/* 3B782C E00B66CC 00431025 */ or $v0, $v0, $v1 +/* 3B7830 E00B66D0 AC820004 */ sw $v0, 4($a0) +.LE00B66D4: +/* 3B7834 E00B66D4 25080004 */ addiu $t0, $t0, 4 +/* 3B7838 E00B66D8 24E70004 */ addiu $a3, $a3, 4 +/* 3B783C E00B66DC 25290001 */ addiu $t1, $t1, 1 +/* 3B7840 E00B66E0 0126102A */ slt $v0, $t1, $a2 +/* 3B7844 E00B66E4 1440FFD8 */ bnez $v0, .LE00B6648 +/* 3B7848 E00B66E8 254A0004 */ addiu $t2, $t2, 4 +.LE00B66EC: +/* 3B784C E00B66EC 3C05D838 */ lui $a1, 0xd838 +/* 3B7850 E00B66F0 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3B7854 E00B66F4 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3B7858 E00B66F8 8C620000 */ lw $v0, ($v1) +/* 3B785C E00B66FC 34A50002 */ ori $a1, $a1, 2 +/* 3B7860 E00B6700 0040202D */ daddu $a0, $v0, $zero +/* 3B7864 E00B6704 24420008 */ addiu $v0, $v0, 8 +/* 3B7868 E00B6708 AC620000 */ sw $v0, ($v1) +/* 3B786C E00B670C 24020040 */ addiu $v0, $zero, 0x40 +/* 3B7870 E00B6710 AC850000 */ sw $a1, ($a0) +/* 3B7874 E00B6714 AC820004 */ sw $v0, 4($a0) +/* 3B7878 E00B6718 8FBF00B0 */ lw $ra, 0xb0($sp) +/* 3B787C E00B671C 8FB700AC */ lw $s7, 0xac($sp) +/* 3B7880 E00B6720 8FB600A8 */ lw $s6, 0xa8($sp) +/* 3B7884 E00B6724 8FB500A4 */ lw $s5, 0xa4($sp) +/* 3B7888 E00B6728 8FB400A0 */ lw $s4, 0xa0($sp) +/* 3B788C E00B672C 8FB3009C */ lw $s3, 0x9c($sp) +/* 3B7890 E00B6730 8FB20098 */ lw $s2, 0x98($sp) +/* 3B7894 E00B6734 8FB10094 */ lw $s1, 0x94($sp) +/* 3B7898 E00B6738 8FB00090 */ lw $s0, 0x90($sp) +/* 3B789C E00B673C D7B400B8 */ ldc1 $f20, 0xb8($sp) +/* 3B78A0 E00B6740 03E00008 */ jr $ra +/* 3B78A4 E00B6744 27BD00C0 */ addiu $sp, $sp, 0xc0 +/* 3B78A8 E00B6748 00000000 */ nop +/* 3B78AC E00B674C 00000000 */ nop diff --git a/asm/nonmatchings/code_3B8BD0/func_E00BA000.s b/asm/nonmatchings/code_3B8BD0/func_E00BA000.s new file mode 100644 index 0000000000..89cd28a5f2 --- /dev/null +++ b/asm/nonmatchings/code_3B8BD0/func_E00BA000.s @@ -0,0 +1,101 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BA000 +/* 3B8BD0 E00BA000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3B8BD4 E00BA004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3B8BD8 E00BA008 4485A000 */ mtc1 $a1, $f20 +/* 3B8BDC E00BA00C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3B8BE0 E00BA010 4486B000 */ mtc1 $a2, $f22 +/* 3B8BE4 E00BA014 AFB20030 */ sw $s2, 0x30($sp) +/* 3B8BE8 E00BA018 0080902D */ daddu $s2, $a0, $zero +/* 3B8BEC E00BA01C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3B8BF0 E00BA020 4487C000 */ mtc1 $a3, $f24 +/* 3B8BF4 E00BA024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B8BF8 E00BA028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3B8BFC E00BA02C 8FB10064 */ lw $s1, 0x64($sp) +/* 3B8C00 E00BA030 3C02E00C */ lui $v0, %hi(D_E00BA16C) +/* 3B8C04 E00BA034 2442A16C */ addiu $v0, $v0, %lo(D_E00BA16C) +/* 3B8C08 E00BA038 AFA20018 */ sw $v0, 0x18($sp) +/* 3B8C0C E00BA03C 3C02E00C */ lui $v0, %hi(D_E00BA174) +/* 3B8C10 E00BA040 2442A174 */ addiu $v0, $v0, %lo(D_E00BA174) +/* 3B8C14 E00BA044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3B8C18 E00BA048 3C02E00C */ lui $v0, %hi(D_E00BA5DC) +/* 3B8C1C E00BA04C 2442A5DC */ addiu $v0, $v0, %lo(D_E00BA5DC) +/* 3B8C20 E00BA050 AFA20020 */ sw $v0, 0x20($sp) +/* 3B8C24 E00BA054 2402005D */ addiu $v0, $zero, 0x5d +/* 3B8C28 E00BA058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3B8C2C E00BA05C AFB00028 */ sw $s0, 0x28($sp) +/* 3B8C30 E00BA060 AFA00010 */ sw $zero, 0x10($sp) +/* 3B8C34 E00BA064 AFA00024 */ sw $zero, 0x24($sp) +/* 3B8C38 E00BA068 0C080124 */ jal func_E0200490 +/* 3B8C3C E00BA06C AFA20014 */ sw $v0, 0x14($sp) +/* 3B8C40 E00BA070 24040308 */ addiu $a0, $zero, 0x308 +/* 3B8C44 E00BA074 24030001 */ addiu $v1, $zero, 1 +/* 3B8C48 E00BA078 0040802D */ daddu $s0, $v0, $zero +/* 3B8C4C E00BA07C 0C08012C */ jal func_E02004B0 +/* 3B8C50 E00BA080 AE030008 */ sw $v1, 8($s0) +/* 3B8C54 E00BA084 0040302D */ daddu $a2, $v0, $zero +/* 3B8C58 E00BA088 14C00003 */ bnez $a2, .LE00BA098 +/* 3B8C5C E00BA08C AE02000C */ sw $v0, 0xc($s0) +.LE00BA090: +/* 3B8C60 E00BA090 0802E824 */ j .LE00BA090 +/* 3B8C64 E00BA094 00000000 */ nop +.LE00BA098: +/* 3B8C68 E00BA098 ACD20000 */ sw $s2, ($a2) +/* 3B8C6C E00BA09C 1E200004 */ bgtz $s1, .LE00BA0B0 +/* 3B8C70 E00BA0A0 ACC00014 */ sw $zero, 0x14($a2) +/* 3B8C74 E00BA0A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3B8C78 E00BA0A8 0802E82D */ j .LE00BA0B4 +/* 3B8C7C E00BA0AC ACC20010 */ sw $v0, 0x10($a2) +.LE00BA0B0: +/* 3B8C80 E00BA0B0 ACD10010 */ sw $s1, 0x10($a2) +.LE00BA0B4: +/* 3B8C84 E00BA0B4 0000482D */ daddu $t1, $zero, $zero +/* 3B8C88 E00BA0B8 0120402D */ daddu $t0, $t1, $zero +/* 3B8C8C E00BA0BC 0120382D */ daddu $a3, $t1, $zero +/* 3B8C90 E00BA0C0 A0C0001F */ sb $zero, 0x1f($a2) +/* 3B8C94 E00BA0C4 E4D40004 */ swc1 $f20, 4($a2) +/* 3B8C98 E00BA0C8 E4D60008 */ swc1 $f22, 8($a2) +/* 3B8C9C E00BA0CC E4D8000C */ swc1 $f24, 0xc($a2) +/* 3B8CA0 E00BA0D0 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3B8CA4 E00BA0D4 2402000A */ addiu $v0, $zero, 0xa +/* 3B8CA8 E00BA0D8 A0C2001C */ sb $v0, 0x1c($a2) +/* 3B8CAC E00BA0DC 2402006E */ addiu $v0, $zero, 0x6e +/* 3B8CB0 E00BA0E0 240300FF */ addiu $v1, $zero, 0xff +/* 3B8CB4 E00BA0E4 A0C2001D */ sb $v0, 0x1d($a2) +/* 3B8CB8 E00BA0E8 240200BE */ addiu $v0, $zero, 0xbe +/* 3B8CBC E00BA0EC A0C20020 */ sb $v0, 0x20($a2) +/* 3B8CC0 E00BA0F0 240200DC */ addiu $v0, $zero, 0xdc +/* 3B8CC4 E00BA0F4 A0C3001E */ sb $v1, 0x1e($a2) +/* 3B8CC8 E00BA0F8 A0C20021 */ sb $v0, 0x21($a2) +/* 3B8CCC E00BA0FC A0C30022 */ sb $v1, 0x22($a2) +/* 3B8CD0 E00BA100 E4C00018 */ swc1 $f0, 0x18($a2) +.LE00BA104: +/* 3B8CD4 E00BA104 0000202D */ daddu $a0, $zero, $zero +/* 3B8CD8 E00BA108 0100282D */ daddu $a1, $t0, $zero +.LE00BA10C: +/* 3B8CDC E00BA10C 00C51021 */ addu $v0, $a2, $a1 +/* 3B8CE0 E00BA110 00871821 */ addu $v1, $a0, $a3 +/* 3B8CE4 E00BA114 24840001 */ addiu $a0, $a0, 1 +/* 3B8CE8 E00BA118 00C31821 */ addu $v1, $a2, $v1 +/* 3B8CEC E00BA11C A0600023 */ sb $zero, 0x23($v1) +/* 3B8CF0 E00BA120 A440011A */ sh $zero, 0x11a($v0) +/* 3B8CF4 E00BA124 2882000D */ slti $v0, $a0, 0xd +/* 3B8CF8 E00BA128 1440FFF8 */ bnez $v0, .LE00BA10C +/* 3B8CFC E00BA12C 24A50002 */ addiu $a1, $a1, 2 +/* 3B8D00 E00BA130 2508001A */ addiu $t0, $t0, 0x1a +/* 3B8D04 E00BA134 25290001 */ addiu $t1, $t1, 1 +/* 3B8D08 E00BA138 29220013 */ slti $v0, $t1, 0x13 +/* 3B8D0C E00BA13C 1440FFF1 */ bnez $v0, .LE00BA104 +/* 3B8D10 E00BA140 24E7000D */ addiu $a3, $a3, 0xd +/* 3B8D14 E00BA144 0200102D */ daddu $v0, $s0, $zero +/* 3B8D18 E00BA148 8FBF0034 */ lw $ra, 0x34($sp) +/* 3B8D1C E00BA14C 8FB20030 */ lw $s2, 0x30($sp) +/* 3B8D20 E00BA150 8FB1002C */ lw $s1, 0x2c($sp) +/* 3B8D24 E00BA154 8FB00028 */ lw $s0, 0x28($sp) +/* 3B8D28 E00BA158 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3B8D2C E00BA15C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3B8D30 E00BA160 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3B8D34 E00BA164 03E00008 */ jr $ra +/* 3B8D38 E00BA168 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3B8BD0/func_E00BA16C.s b/asm/nonmatchings/code_3B8BD0/func_E00BA16C.s new file mode 100644 index 0000000000..32b971f327 --- /dev/null +++ b/asm/nonmatchings/code_3B8BD0/func_E00BA16C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BA16C +/* 3B8D3C E00BA16C 03E00008 */ jr $ra +/* 3B8D40 E00BA170 00000000 */ nop diff --git a/asm/nonmatchings/code_3B8BD0/func_E00BA174.s b/asm/nonmatchings/code_3B8BD0/func_E00BA174.s new file mode 100644 index 0000000000..4de9d0f6d1 --- /dev/null +++ b/asm/nonmatchings/code_3B8BD0/func_E00BA174.s @@ -0,0 +1,300 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BA174 +/* 3B8D44 E00BA174 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 3B8D48 E00BA178 AFBF0024 */ sw $ra, 0x24($sp) +/* 3B8D4C E00BA17C AFB40020 */ sw $s4, 0x20($sp) +/* 3B8D50 E00BA180 AFB3001C */ sw $s3, 0x1c($sp) +/* 3B8D54 E00BA184 AFB20018 */ sw $s2, 0x18($sp) +/* 3B8D58 E00BA188 AFB10014 */ sw $s1, 0x14($sp) +/* 3B8D5C E00BA18C AFB00010 */ sw $s0, 0x10($sp) +/* 3B8D60 E00BA190 F7B60030 */ sdc1 $f22, 0x30($sp) +/* 3B8D64 E00BA194 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 3B8D68 E00BA198 8C830000 */ lw $v1, ($a0) +/* 3B8D6C E00BA19C 8C90000C */ lw $s0, 0xc($a0) +/* 3B8D70 E00BA1A0 30620010 */ andi $v0, $v1, 0x10 +/* 3B8D74 E00BA1A4 10400005 */ beqz $v0, .LE00BA1BC +/* 3B8D78 E00BA1A8 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3B8D7C E00BA1AC 00621024 */ and $v0, $v1, $v0 +/* 3B8D80 E00BA1B0 AC820000 */ sw $v0, ($a0) +/* 3B8D84 E00BA1B4 24020020 */ addiu $v0, $zero, 0x20 +/* 3B8D88 E00BA1B8 AE020010 */ sw $v0, 0x10($s0) +.LE00BA1BC: +/* 3B8D8C E00BA1BC 8E030010 */ lw $v1, 0x10($s0) +/* 3B8D90 E00BA1C0 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3B8D94 E00BA1C4 10400002 */ beqz $v0, .LE00BA1D0 +/* 3B8D98 E00BA1C8 2462FFFF */ addiu $v0, $v1, -1 +/* 3B8D9C E00BA1CC AE020010 */ sw $v0, 0x10($s0) +.LE00BA1D0: +/* 3B8DA0 E00BA1D0 8E020014 */ lw $v0, 0x14($s0) +/* 3B8DA4 E00BA1D4 8E030010 */ lw $v1, 0x10($s0) +/* 3B8DA8 E00BA1D8 24420001 */ addiu $v0, $v0, 1 +/* 3B8DAC E00BA1DC 04610005 */ bgez $v1, .LE00BA1F4 +/* 3B8DB0 E00BA1E0 AE020014 */ sw $v0, 0x14($s0) +/* 3B8DB4 E00BA1E4 0C080128 */ jal func_E02004A0 +/* 3B8DB8 E00BA1E8 00000000 */ nop +/* 3B8DBC E00BA1EC 0802E96D */ j .LE00BA5B4 +/* 3B8DC0 E00BA1F0 00000000 */ nop +.LE00BA1F4: +/* 3B8DC4 E00BA1F4 0060A02D */ daddu $s4, $v1, $zero +/* 3B8DC8 E00BA1F8 0040982D */ daddu $s3, $v0, $zero +/* 3B8DCC E00BA1FC 2A820020 */ slti $v0, $s4, 0x20 +/* 3B8DD0 E00BA200 10400002 */ beqz $v0, .LE00BA20C +/* 3B8DD4 E00BA204 240400FF */ addiu $a0, $zero, 0xff +/* 3B8DD8 E00BA208 001420C0 */ sll $a0, $s4, 3 +.LE00BA20C: +/* 3B8DDC E00BA20C 2A620010 */ slti $v0, $s3, 0x10 +/* 3B8DE0 E00BA210 10400002 */ beqz $v0, .LE00BA21C +/* 3B8DE4 E00BA214 00131100 */ sll $v0, $s3, 4 +/* 3B8DE8 E00BA218 2444000F */ addiu $a0, $v0, 0xf +.LE00BA21C: +/* 3B8DEC E00BA21C 3C014F00 */ lui $at, 0x4f00 +/* 3B8DF0 E00BA220 44811000 */ mtc1 $at, $f2 +/* 3B8DF4 E00BA224 44840000 */ mtc1 $a0, $f0 +/* 3B8DF8 E00BA228 00000000 */ nop +/* 3B8DFC E00BA22C 46800020 */ cvt.s.w $f0, $f0 +/* 3B8E00 E00BA230 4600103E */ c.le.s $f2, $f0 +/* 3B8E04 E00BA234 00000000 */ nop +/* 3B8E08 E00BA238 45010005 */ bc1t .LE00BA250 +/* 3B8E0C E00BA23C 2605001F */ addiu $a1, $s0, 0x1f +/* 3B8E10 E00BA240 4600038D */ trunc.w.s $f14, $f0 +/* 3B8E14 E00BA244 44037000 */ mfc1 $v1, $f14 +/* 3B8E18 E00BA248 0802E89B */ j .LE00BA26C +/* 3B8E1C E00BA24C 24120001 */ addiu $s2, $zero, 1 +.LE00BA250: +/* 3B8E20 E00BA250 46020001 */ sub.s $f0, $f0, $f2 +/* 3B8E24 E00BA254 3C028000 */ lui $v0, 0x8000 +/* 3B8E28 E00BA258 4600038D */ trunc.w.s $f14, $f0 +/* 3B8E2C E00BA25C 44037000 */ mfc1 $v1, $f14 +/* 3B8E30 E00BA260 00000000 */ nop +/* 3B8E34 E00BA264 00621825 */ or $v1, $v1, $v0 +/* 3B8E38 E00BA268 24120001 */ addiu $s2, $zero, 1 +.LE00BA26C: +/* 3B8E3C E00BA26C 2611000D */ addiu $s1, $s0, 0xd +/* 3B8E40 E00BA270 3C01C280 */ lui $at, 0xc280 +/* 3B8E44 E00BA274 4481B000 */ mtc1 $at, $f22 +/* 3B8E48 E00BA278 3C01437F */ lui $at, 0x437f +/* 3B8E4C E00BA27C 44811000 */ mtc1 $at, $f2 +/* 3B8E50 E00BA280 44840000 */ mtc1 $a0, $f0 +/* 3B8E54 E00BA284 00000000 */ nop +/* 3B8E58 E00BA288 46800020 */ cvt.s.w $f0, $f0 +/* 3B8E5C E00BA28C A0A30000 */ sb $v1, ($a1) +/* 3B8E60 E00BA290 46020503 */ div.s $f20, $f0, $f2 +.LE00BA294: +/* 3B8E64 E00BA294 02721823 */ subu $v1, $s3, $s2 +/* 3B8E68 E00BA298 00031080 */ sll $v0, $v1, 2 +/* 3B8E6C E00BA29C 00431021 */ addu $v0, $v0, $v1 +/* 3B8E70 E00BA2A0 00021080 */ sll $v0, $v0, 2 +/* 3B8E74 E00BA2A4 00021023 */ negu $v0, $v0 +/* 3B8E78 E00BA2A8 44826000 */ mtc1 $v0, $f12 +/* 3B8E7C E00BA2AC 00000000 */ nop +/* 3B8E80 E00BA2B0 46806320 */ cvt.s.w $f12, $f12 +/* 3B8E84 E00BA2B4 0C080140 */ jal func_E0200500 +/* 3B8E88 E00BA2B8 26520001 */ addiu $s2, $s2, 1 +/* 3B8E8C E00BA2BC 46160002 */ mul.s $f0, $f0, $f22 +/* 3B8E90 E00BA2C0 00000000 */ nop +/* 3B8E94 E00BA2C4 46140002 */ mul.s $f0, $f0, $f20 +/* 3B8E98 E00BA2C8 00000000 */ nop +/* 3B8E9C E00BA2CC 4600038D */ trunc.w.s $f14, $f0 +/* 3B8EA0 E00BA2D0 44027000 */ mfc1 $v0, $f14 +/* 3B8EA4 E00BA2D4 00000000 */ nop +/* 3B8EA8 E00BA2D8 A2220029 */ sb $v0, 0x29($s1) +/* 3B8EAC E00BA2DC 2A420012 */ slti $v0, $s2, 0x12 +/* 3B8EB0 E00BA2E0 1440FFEC */ bnez $v0, .LE00BA294 +/* 3B8EB4 E00BA2E4 2631000D */ addiu $s1, $s1, 0xd +/* 3B8EB8 E00BA2E8 24120001 */ addiu $s2, $zero, 1 +/* 3B8EBC E00BA2EC 240F001A */ addiu $t7, $zero, 0x1a +/* 3B8EC0 E00BA2F0 240EFFFF */ addiu $t6, $zero, -1 +/* 3B8EC4 E00BA2F4 240D0019 */ addiu $t5, $zero, 0x19 +/* 3B8EC8 E00BA2F8 0000602D */ daddu $t4, $zero, $zero +/* 3B8ECC E00BA2FC 01E0582D */ daddu $t3, $t7, $zero +/* 3B8ED0 E00BA300 240A000D */ addiu $t2, $zero, 0xd +.LE00BA304: +/* 3B8ED4 E00BA304 24050001 */ addiu $a1, $zero, 1 +/* 3B8ED8 E00BA308 0140382D */ daddu $a3, $t2, $zero +/* 3B8EDC E00BA30C 0160482D */ daddu $t1, $t3, $zero +/* 3B8EE0 E00BA310 0180402D */ daddu $t0, $t4, $zero +/* 3B8EE4 E00BA314 01A0982D */ daddu $s3, $t5, $zero +/* 3B8EE8 E00BA318 01C0882D */ daddu $s1, $t6, $zero +/* 3B8EEC E00BA31C 25E60002 */ addiu $a2, $t7, 2 +.LE00BA320: +/* 3B8EF0 E00BA320 25220001 */ addiu $v0, $t1, 1 +/* 3B8EF4 E00BA324 00A21021 */ addu $v0, $a1, $v0 +/* 3B8EF8 E00BA328 02021021 */ addu $v0, $s0, $v0 +/* 3B8EFC E00BA32C 00A72021 */ addu $a0, $a1, $a3 +/* 3B8F00 E00BA330 00B31821 */ addu $v1, $a1, $s3 +/* 3B8F04 E00BA334 02031821 */ addu $v1, $s0, $v1 +/* 3B8F08 E00BA338 80420023 */ lb $v0, 0x23($v0) +/* 3B8F0C E00BA33C 80630023 */ lb $v1, 0x23($v1) +/* 3B8F10 E00BA340 44822000 */ mtc1 $v0, $f4 +/* 3B8F14 E00BA344 00000000 */ nop +/* 3B8F18 E00BA348 46802120 */ cvt.s.w $f4, $f4 +/* 3B8F1C E00BA34C 25020001 */ addiu $v0, $t0, 1 +/* 3B8F20 E00BA350 00A21021 */ addu $v0, $a1, $v0 +/* 3B8F24 E00BA354 02021021 */ addu $v0, $s0, $v0 +/* 3B8F28 E00BA358 80420023 */ lb $v0, 0x23($v0) +/* 3B8F2C E00BA35C 44831000 */ mtc1 $v1, $f2 +/* 3B8F30 E00BA360 00000000 */ nop +/* 3B8F34 E00BA364 468010A0 */ cvt.s.w $f2, $f2 +/* 3B8F38 E00BA368 44820000 */ mtc1 $v0, $f0 +/* 3B8F3C E00BA36C 00000000 */ nop +/* 3B8F40 E00BA370 46800020 */ cvt.s.w $f0, $f0 +/* 3B8F44 E00BA374 00B11021 */ addu $v0, $a1, $s1 +/* 3B8F48 E00BA378 46002100 */ add.s $f4, $f4, $f0 +/* 3B8F4C E00BA37C 02021021 */ addu $v0, $s0, $v0 +/* 3B8F50 E00BA380 80420023 */ lb $v0, 0x23($v0) +/* 3B8F54 E00BA384 46022100 */ add.s $f4, $f4, $f2 +/* 3B8F58 E00BA388 02042021 */ addu $a0, $s0, $a0 +/* 3B8F5C E00BA38C 44820000 */ mtc1 $v0, $f0 +/* 3B8F60 E00BA390 00000000 */ nop +/* 3B8F64 E00BA394 46800020 */ cvt.s.w $f0, $f0 +/* 3B8F68 E00BA398 46002100 */ add.s $f4, $f4, $f0 +/* 3B8F6C E00BA39C 80830023 */ lb $v1, 0x23($a0) +/* 3B8F70 E00BA3A0 3C013FE0 */ lui $at, 0x3fe0 +/* 3B8F74 E00BA3A4 44810800 */ mtc1 $at, $f1 +/* 3B8F78 E00BA3A8 44800000 */ mtc1 $zero, $f0 +/* 3B8F7C E00BA3AC 46002121 */ cvt.d.s $f4, $f4 +/* 3B8F80 E00BA3B0 46202102 */ mul.d $f4, $f4, $f0 +/* 3B8F84 E00BA3B4 00000000 */ nop +/* 3B8F88 E00BA3B8 44835000 */ mtc1 $v1, $f10 +/* 3B8F8C E00BA3BC 00000000 */ nop +/* 3B8F90 E00BA3C0 468052A0 */ cvt.s.w $f10, $f10 +/* 3B8F94 E00BA3C4 00A81821 */ addu $v1, $a1, $t0 +/* 3B8F98 E00BA3C8 02031821 */ addu $v1, $s0, $v1 +/* 3B8F9C E00BA3CC 00A91021 */ addu $v0, $a1, $t1 +/* 3B8FA0 E00BA3D0 02021021 */ addu $v0, $s0, $v0 +/* 3B8FA4 E00BA3D4 3C014080 */ lui $at, 0x4080 +/* 3B8FA8 E00BA3D8 44810000 */ mtc1 $at, $f0 +/* 3B8FAC E00BA3DC 80420023 */ lb $v0, 0x23($v0) +/* 3B8FB0 E00BA3E0 46005282 */ mul.s $f10, $f10, $f0 +/* 3B8FB4 E00BA3E4 00000000 */ nop +/* 3B8FB8 E00BA3E8 44821000 */ mtc1 $v0, $f2 +/* 3B8FBC E00BA3EC 00000000 */ nop +/* 3B8FC0 E00BA3F0 468010A0 */ cvt.s.w $f2, $f2 +/* 3B8FC4 E00BA3F4 24E20001 */ addiu $v0, $a3, 1 +/* 3B8FC8 E00BA3F8 00A21021 */ addu $v0, $a1, $v0 +/* 3B8FCC E00BA3FC 3C01E00C */ lui $at, %hi(D_E00BAE80) +/* 3B8FD0 E00BA400 D420AE80 */ ldc1 $f0, %lo(D_E00BAE80)($at) +/* 3B8FD4 E00BA404 460051A1 */ cvt.d.s $f6, $f10 +/* 3B8FD8 E00BA408 46203182 */ mul.d $f6, $f6, $f0 +/* 3B8FDC E00BA40C 00000000 */ nop +/* 3B8FE0 E00BA410 02021021 */ addu $v0, $s0, $v0 +/* 3B8FE4 E00BA414 80420023 */ lb $v0, 0x23($v0) +/* 3B8FE8 E00BA418 80630023 */ lb $v1, 0x23($v1) +/* 3B8FEC E00BA41C 44824000 */ mtc1 $v0, $f8 +/* 3B8FF0 E00BA420 00000000 */ nop +/* 3B8FF4 E00BA424 46804220 */ cvt.s.w $f8, $f8 +/* 3B8FF8 E00BA428 24E2FFFF */ addiu $v0, $a3, -1 +/* 3B8FFC E00BA42C 00A21021 */ addu $v0, $a1, $v0 +/* 3B9000 E00BA430 44830000 */ mtc1 $v1, $f0 +/* 3B9004 E00BA434 00000000 */ nop +/* 3B9008 E00BA438 46800020 */ cvt.s.w $f0, $f0 +/* 3B900C E00BA43C 46001080 */ add.s $f2, $f2, $f0 +/* 3B9010 E00BA440 02021021 */ addu $v0, $s0, $v0 +/* 3B9014 E00BA444 80420023 */ lb $v0, 0x23($v0) +/* 3B9018 E00BA448 46081080 */ add.s $f2, $f2, $f8 +/* 3B901C E00BA44C 44820000 */ mtc1 $v0, $f0 +/* 3B9020 E00BA450 00000000 */ nop +/* 3B9024 E00BA454 46800020 */ cvt.s.w $f0, $f0 +/* 3B9028 E00BA458 46001080 */ add.s $f2, $f2, $f0 +/* 3B902C E00BA45C 460A1081 */ sub.s $f2, $f2, $f10 +/* 3B9030 E00BA460 46202120 */ cvt.s.d $f4, $f4 +/* 3B9034 E00BA464 46041080 */ add.s $f2, $f2, $f4 +/* 3B9038 E00BA468 02061821 */ addu $v1, $s0, $a2 +/* 3B903C E00BA46C 8462011A */ lh $v0, 0x11a($v1) +/* 3B9040 E00BA470 460010A1 */ cvt.d.s $f2, $f2 +/* 3B9044 E00BA474 46261081 */ sub.d $f2, $f2, $f6 +/* 3B9048 E00BA478 44820000 */ mtc1 $v0, $f0 +/* 3B904C E00BA47C 00000000 */ nop +/* 3B9050 E00BA480 46800021 */ cvt.d.w $f0, $f0 +/* 3B9054 E00BA484 46220000 */ add.d $f0, $f0, $f2 +/* 3B9058 E00BA488 3C01E00C */ lui $at, %hi(D_E00BAE88) +/* 3B905C E00BA48C D422AE88 */ ldc1 $f2, %lo(D_E00BAE88)($at) +/* 3B9060 E00BA490 4620038D */ trunc.w.d $f14, $f0 +/* 3B9064 E00BA494 44027000 */ mfc1 $v0, $f14 +/* 3B9068 E00BA498 00000000 */ nop +/* 3B906C E00BA49C 00021400 */ sll $v0, $v0, 0x10 +/* 3B9070 E00BA4A0 00021403 */ sra $v0, $v0, 0x10 +/* 3B9074 E00BA4A4 44820000 */ mtc1 $v0, $f0 +/* 3B9078 E00BA4A8 00000000 */ nop +/* 3B907C E00BA4AC 46800021 */ cvt.d.w $f0, $f0 +/* 3B9080 E00BA4B0 46220002 */ mul.d $f0, $f0, $f2 +/* 3B9084 E00BA4B4 00000000 */ nop +/* 3B9088 E00BA4B8 4620038D */ trunc.w.d $f14, $f0 +/* 3B908C E00BA4BC 44027000 */ mfc1 $v0, $f14 +/* 3B9090 E00BA4C0 00000000 */ nop +/* 3B9094 E00BA4C4 A462011A */ sh $v0, 0x11a($v1) +/* 3B9098 E00BA4C8 2A820020 */ slti $v0, $s4, 0x20 +/* 3B909C E00BA4CC 1040000B */ beqz $v0, .LE00BA4FC +/* 3B90A0 E00BA4D0 24A50001 */ addiu $a1, $a1, 1 +/* 3B90A4 E00BA4D4 80820023 */ lb $v0, 0x23($a0) +/* 3B90A8 E00BA4D8 44820000 */ mtc1 $v0, $f0 +/* 3B90AC E00BA4DC 00000000 */ nop +/* 3B90B0 E00BA4E0 46800020 */ cvt.s.w $f0, $f0 +/* 3B90B4 E00BA4E4 46140002 */ mul.s $f0, $f0, $f20 +/* 3B90B8 E00BA4E8 00000000 */ nop +/* 3B90BC E00BA4EC 4600038D */ trunc.w.s $f14, $f0 +/* 3B90C0 E00BA4F0 44027000 */ mfc1 $v0, $f14 +/* 3B90C4 E00BA4F4 00000000 */ nop +/* 3B90C8 E00BA4F8 A0820023 */ sb $v0, 0x23($a0) +.LE00BA4FC: +/* 3B90CC E00BA4FC 28A2000C */ slti $v0, $a1, 0xc +/* 3B90D0 E00BA500 1440FF87 */ bnez $v0, .LE00BA320 +/* 3B90D4 E00BA504 24C60002 */ addiu $a2, $a2, 2 +/* 3B90D8 E00BA508 25EF001A */ addiu $t7, $t7, 0x1a +/* 3B90DC E00BA50C 25CE000D */ addiu $t6, $t6, 0xd +/* 3B90E0 E00BA510 25AD000D */ addiu $t5, $t5, 0xd +/* 3B90E4 E00BA514 258C000D */ addiu $t4, $t4, 0xd +/* 3B90E8 E00BA518 256B000D */ addiu $t3, $t3, 0xd +/* 3B90EC E00BA51C 26520001 */ addiu $s2, $s2, 1 +/* 3B90F0 E00BA520 2A420012 */ slti $v0, $s2, 0x12 +/* 3B90F4 E00BA524 1440FF77 */ bnez $v0, .LE00BA304 +/* 3B90F8 E00BA528 254A000D */ addiu $t2, $t2, 0xd +/* 3B90FC E00BA52C 24120001 */ addiu $s2, $zero, 1 +/* 3B9100 E00BA530 3C01E00C */ lui $at, %hi(D_E00BAE90) +/* 3B9104 E00BA534 D424AE90 */ ldc1 $f4, %lo(D_E00BAE90)($at) +/* 3B9108 E00BA538 2407001A */ addiu $a3, $zero, 0x1a +/* 3B910C E00BA53C 2406000D */ addiu $a2, $zero, 0xd +.LE00BA540: +/* 3B9110 E00BA540 24050001 */ addiu $a1, $zero, 1 +/* 3B9114 E00BA544 24E40002 */ addiu $a0, $a3, 2 +.LE00BA548: +/* 3B9118 E00BA548 02041021 */ addu $v0, $s0, $a0 +/* 3B911C E00BA54C 8442011A */ lh $v0, 0x11a($v0) +/* 3B9120 E00BA550 44821000 */ mtc1 $v0, $f2 +/* 3B9124 E00BA554 00000000 */ nop +/* 3B9128 E00BA558 468010A1 */ cvt.d.w $f2, $f2 +/* 3B912C E00BA55C 46241082 */ mul.d $f2, $f2, $f4 +/* 3B9130 E00BA560 00000000 */ nop +/* 3B9134 E00BA564 00A61821 */ addu $v1, $a1, $a2 +/* 3B9138 E00BA568 02031821 */ addu $v1, $s0, $v1 +/* 3B913C E00BA56C 80620023 */ lb $v0, 0x23($v1) +/* 3B9140 E00BA570 44820000 */ mtc1 $v0, $f0 +/* 3B9144 E00BA574 00000000 */ nop +/* 3B9148 E00BA578 46800021 */ cvt.d.w $f0, $f0 +/* 3B914C E00BA57C 46220000 */ add.d $f0, $f0, $f2 +/* 3B9150 E00BA580 24A50001 */ addiu $a1, $a1, 1 +/* 3B9154 E00BA584 4620038D */ trunc.w.d $f14, $f0 +/* 3B9158 E00BA588 44027000 */ mfc1 $v0, $f14 +/* 3B915C E00BA58C 00000000 */ nop +/* 3B9160 E00BA590 A0620023 */ sb $v0, 0x23($v1) +/* 3B9164 E00BA594 28A2000C */ slti $v0, $a1, 0xc +/* 3B9168 E00BA598 1440FFEB */ bnez $v0, .LE00BA548 +/* 3B916C E00BA59C 24840002 */ addiu $a0, $a0, 2 +/* 3B9170 E00BA5A0 24E7001A */ addiu $a3, $a3, 0x1a +/* 3B9174 E00BA5A4 26520001 */ addiu $s2, $s2, 1 +/* 3B9178 E00BA5A8 2A420012 */ slti $v0, $s2, 0x12 +/* 3B917C E00BA5AC 1440FFE4 */ bnez $v0, .LE00BA540 +/* 3B9180 E00BA5B0 24C6000D */ addiu $a2, $a2, 0xd +.LE00BA5B4: +/* 3B9184 E00BA5B4 8FBF0024 */ lw $ra, 0x24($sp) +/* 3B9188 E00BA5B8 8FB40020 */ lw $s4, 0x20($sp) +/* 3B918C E00BA5BC 8FB3001C */ lw $s3, 0x1c($sp) +/* 3B9190 E00BA5C0 8FB20018 */ lw $s2, 0x18($sp) +/* 3B9194 E00BA5C4 8FB10014 */ lw $s1, 0x14($sp) +/* 3B9198 E00BA5C8 8FB00010 */ lw $s0, 0x10($sp) +/* 3B919C E00BA5CC D7B60030 */ ldc1 $f22, 0x30($sp) +/* 3B91A0 E00BA5D0 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 3B91A4 E00BA5D4 03E00008 */ jr $ra +/* 3B91A8 E00BA5D8 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_3B8BD0/func_E00BA5DC.s b/asm/nonmatchings/code_3B8BD0/func_E00BA5DC.s new file mode 100644 index 0000000000..1354bdb5ae --- /dev/null +++ b/asm/nonmatchings/code_3B8BD0/func_E00BA5DC.s @@ -0,0 +1,19 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BA5DC +/* 3B91AC E00BA5DC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3B91B0 E00BA5E0 3C02E00C */ lui $v0, %hi(D_E00BA620) +/* 3B91B4 E00BA5E4 2442A620 */ addiu $v0, $v0, %lo(D_E00BA620) +/* 3B91B8 E00BA5E8 AFA2001C */ sw $v0, 0x1c($sp) +/* 3B91BC E00BA5EC 24020064 */ addiu $v0, $zero, 0x64 +/* 3B91C0 E00BA5F0 AFA20014 */ sw $v0, 0x14($sp) +/* 3B91C4 E00BA5F4 2402002D */ addiu $v0, $zero, 0x2d +/* 3B91C8 E00BA5F8 AFA40018 */ sw $a0, 0x18($sp) +/* 3B91CC E00BA5FC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3B91D0 E00BA600 AFBF0020 */ sw $ra, 0x20($sp) +/* 3B91D4 E00BA604 0C080120 */ jal func_E0200480 +/* 3B91D8 E00BA608 AFA20010 */ sw $v0, 0x10($sp) +/* 3B91DC E00BA60C 8FBF0020 */ lw $ra, 0x20($sp) +/* 3B91E0 E00BA610 03E00008 */ jr $ra +/* 3B91E4 E00BA614 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3B8BD0/func_E00BA618.s b/asm/nonmatchings/code_3B8BD0/func_E00BA618.s new file mode 100644 index 0000000000..7b0ea7d568 --- /dev/null +++ b/asm/nonmatchings/code_3B8BD0/func_E00BA618.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BA618 +/* 3B91E8 E00BA618 03E00008 */ jr $ra +/* 3B91EC E00BA61C 00000000 */ nop diff --git a/asm/nonmatchings/code_3B8BD0/func_E00BA620.s b/asm/nonmatchings/code_3B8BD0/func_E00BA620.s new file mode 100644 index 0000000000..bc61200c56 --- /dev/null +++ b/asm/nonmatchings/code_3B8BD0/func_E00BA620.s @@ -0,0 +1,551 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BA620 +/* 3B91F0 E00BA620 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 3B91F4 E00BA624 3C06DB06 */ lui $a2, 0xdb06 +/* 3B91F8 E00BA628 34C60024 */ ori $a2, $a2, 0x24 +/* 3B91FC E00BA62C 3C07FF10 */ lui $a3, 0xff10 +/* 3B9200 E00BA630 34E7013F */ ori $a3, $a3, 0x13f +/* 3B9204 E00BA634 0000682D */ daddu $t5, $zero, $zero +/* 3B9208 E00BA638 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3B920C E00BA63C 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3B9210 E00BA640 0040402D */ daddu $t0, $v0, $zero +/* 3B9214 E00BA644 AFB200B8 */ sw $s2, 0xb8($sp) +/* 3B9218 E00BA648 3C12FD10 */ lui $s2, 0xfd10 +/* 3B921C E00BA64C 3652013F */ ori $s2, $s2, 0x13f +/* 3B9220 E00BA650 3C18800A */ lui $t8, %hi(D_8009A64C) +/* 3B9224 E00BA654 2718A64C */ addiu $t8, $t8, %lo(D_8009A64C) +/* 3B9228 E00BA658 3C0CF510 */ lui $t4, 0xf510 +/* 3B922C E00BA65C 358CA000 */ ori $t4, $t4, 0xa000 +/* 3B9230 E00BA660 AFB700CC */ sw $s7, 0xcc($sp) +/* 3B9234 E00BA664 3C170700 */ lui $s7, 0x700 +/* 3B9238 E00BA668 AFB500C4 */ sw $s5, 0xc4($sp) +/* 3B923C E00BA66C 3C15F400 */ lui $s5, 0xf400 +/* 3B9240 E00BA670 AFB100B4 */ sw $s1, 0xb4($sp) +/* 3B9244 E00BA674 3C11074F */ lui $s1, 0x74f +/* 3B9248 E00BA678 3631C014 */ ori $s1, $s1, 0xc014 +/* 3B924C E00BA67C 3C0EE700 */ lui $t6, 0xe700 +/* 3B9250 E00BA680 AFB300BC */ sw $s3, 0xbc($sp) +/* 3B9254 E00BA684 3C13F200 */ lui $s3, 0xf200 +/* 3B9258 E00BA688 AFB000B0 */ sw $s0, 0xb0($sp) +/* 3B925C E00BA68C 3C10004F */ lui $s0, 0x4f +/* 3B9260 E00BA690 3610C014 */ ori $s0, $s0, 0xc014 +/* 3B9264 E00BA694 3C0FE44F */ lui $t7, 0xe44f +/* 3B9268 E00BA698 35EFC000 */ ori $t7, $t7, 0xc000 +/* 3B926C E00BA69C 01A0582D */ daddu $t3, $t5, $zero +/* 3B9270 E00BA6A0 240A0014 */ addiu $t2, $zero, 0x14 +/* 3B9274 E00BA6A4 01A0482D */ daddu $t1, $t5, $zero +/* 3B9278 E00BA6A8 01C0102D */ daddu $v0, $t6, $zero +/* 3B927C E00BA6AC AFBF00D4 */ sw $ra, 0xd4($sp) +/* 3B9280 E00BA6B0 AFBE00D0 */ sw $fp, 0xd0($sp) +/* 3B9284 E00BA6B4 AFB600C8 */ sw $s6, 0xc8($sp) +/* 3B9288 E00BA6B8 AFB400C0 */ sw $s4, 0xc0($sp) +/* 3B928C E00BA6BC 8D030000 */ lw $v1, ($t0) +/* 3B9290 E00BA6C0 8C94000C */ lw $s4, 0xc($a0) +/* 3B9294 E00BA6C4 0060282D */ daddu $a1, $v1, $zero +/* 3B9298 E00BA6C8 9299001F */ lbu $t9, 0x1f($s4) +/* 3B929C E00BA6CC 24630008 */ addiu $v1, $v1, 8 +/* 3B92A0 E00BA6D0 AD030000 */ sw $v1, ($t0) +/* 3B92A4 E00BA6D4 ACA20000 */ sw $v0, ($a1) +/* 3B92A8 E00BA6D8 24620008 */ addiu $v0, $v1, 8 +/* 3B92AC E00BA6DC ACA00004 */ sw $zero, 4($a1) +/* 3B92B0 E00BA6E0 AD020000 */ sw $v0, ($t0) +/* 3B92B4 E00BA6E4 AC660000 */ sw $a2, ($v1) +/* 3B92B8 E00BA6E8 8C840010 */ lw $a0, 0x10($a0) +/* 3B92BC E00BA6EC 24620010 */ addiu $v0, $v1, 0x10 +/* 3B92C0 E00BA6F0 AD020000 */ sw $v0, ($t0) +/* 3B92C4 E00BA6F4 3C05800A */ lui $a1, %hi(nuGfxZBuffer) +/* 3B92C8 E00BA6F8 8CA5A5DC */ lw $a1, %lo(nuGfxZBuffer)($a1) +/* 3B92CC E00BA6FC 8C84001C */ lw $a0, 0x1c($a0) +/* 3B92D0 E00BA700 24620018 */ addiu $v0, $v1, 0x18 +/* 3B92D4 E00BA704 AD020000 */ sw $v0, ($t0) +/* 3B92D8 E00BA708 3C02DE00 */ lui $v0, 0xde00 +/* 3B92DC E00BA70C AC620010 */ sw $v0, 0x10($v1) +/* 3B92E0 E00BA710 3C020900 */ lui $v0, 0x900 +/* 3B92E4 E00BA714 24420528 */ addiu $v0, $v0, 0x528 +/* 3B92E8 E00BA718 AC620014 */ sw $v0, 0x14($v1) +/* 3B92EC E00BA71C 3C028000 */ lui $v0, 0x8000 +/* 3B92F0 E00BA720 AC670008 */ sw $a3, 8($v1) +/* 3B92F4 E00BA724 AC65000C */ sw $a1, 0xc($v1) +/* 3B92F8 E00BA728 00822021 */ addu $a0, $a0, $v0 +/* 3B92FC E00BA72C AC640004 */ sw $a0, 4($v1) +.LE00BA730: +/* 3B9300 E00BA730 3C071000 */ lui $a3, 0x1000 +/* 3B9304 E00BA734 34E70400 */ ori $a3, $a3, 0x400 +/* 3B9308 E00BA738 31660FFF */ andi $a2, $t3, 0xfff +/* 3B930C E00BA73C 256B0018 */ addiu $t3, $t3, 0x18 +/* 3B9310 E00BA740 31450FFF */ andi $a1, $t2, 0xfff +/* 3B9314 E00BA744 254A0018 */ addiu $t2, $t2, 0x18 +/* 3B9318 E00BA748 25AD0001 */ addiu $t5, $t5, 1 +/* 3B931C E00BA74C 00AF2825 */ or $a1, $a1, $t7 +/* 3B9320 E00BA750 8D020000 */ lw $v0, ($t0) +/* 3B9324 E00BA754 8F030000 */ lw $v1, ($t8) +/* 3B9328 E00BA758 0040202D */ daddu $a0, $v0, $zero +/* 3B932C E00BA75C 24420008 */ addiu $v0, $v0, 8 +/* 3B9330 E00BA760 00691821 */ addu $v1, $v1, $t1 +/* 3B9334 E00BA764 AD020000 */ sw $v0, ($t0) +/* 3B9338 E00BA768 AC830004 */ sw $v1, 4($a0) +/* 3B933C E00BA76C 24430008 */ addiu $v1, $v0, 8 +/* 3B9340 E00BA770 AC920000 */ sw $s2, ($a0) +/* 3B9344 E00BA774 AD030000 */ sw $v1, ($t0) +/* 3B9348 E00BA778 24430010 */ addiu $v1, $v0, 0x10 +/* 3B934C E00BA77C 3C16E600 */ lui $s6, 0xe600 +/* 3B9350 E00BA780 AC4C0000 */ sw $t4, ($v0) +/* 3B9354 E00BA784 AC570004 */ sw $s7, 4($v0) +/* 3B9358 E00BA788 AD030000 */ sw $v1, ($t0) +/* 3B935C E00BA78C 24430018 */ addiu $v1, $v0, 0x18 +/* 3B9360 E00BA790 AC560008 */ sw $s6, 8($v0) +/* 3B9364 E00BA794 AC40000C */ sw $zero, 0xc($v0) +/* 3B9368 E00BA798 AD030000 */ sw $v1, ($t0) +/* 3B936C E00BA79C 24430020 */ addiu $v1, $v0, 0x20 +/* 3B9370 E00BA7A0 AC550010 */ sw $s5, 0x10($v0) +/* 3B9374 E00BA7A4 AC510014 */ sw $s1, 0x14($v0) +/* 3B9378 E00BA7A8 AD030000 */ sw $v1, ($t0) +/* 3B937C E00BA7AC 24430028 */ addiu $v1, $v0, 0x28 +/* 3B9380 E00BA7B0 AC4E0018 */ sw $t6, 0x18($v0) +/* 3B9384 E00BA7B4 AC40001C */ sw $zero, 0x1c($v0) +/* 3B9388 E00BA7B8 AD030000 */ sw $v1, ($t0) +/* 3B938C E00BA7BC 24430030 */ addiu $v1, $v0, 0x30 +/* 3B9390 E00BA7C0 AC4C0020 */ sw $t4, 0x20($v0) +/* 3B9394 E00BA7C4 AC400024 */ sw $zero, 0x24($v0) +/* 3B9398 E00BA7C8 AD030000 */ sw $v1, ($t0) +/* 3B939C E00BA7CC 24430038 */ addiu $v1, $v0, 0x38 +/* 3B93A0 E00BA7D0 AC530028 */ sw $s3, 0x28($v0) +/* 3B93A4 E00BA7D4 AC50002C */ sw $s0, 0x2c($v0) +/* 3B93A8 E00BA7D8 AD030000 */ sw $v1, ($t0) +/* 3B93AC E00BA7DC 24430040 */ addiu $v1, $v0, 0x40 +/* 3B93B0 E00BA7E0 AC450030 */ sw $a1, 0x30($v0) +/* 3B93B4 E00BA7E4 AC460034 */ sw $a2, 0x34($v0) +/* 3B93B8 E00BA7E8 AD030000 */ sw $v1, ($t0) +/* 3B93BC E00BA7EC 3C03E100 */ lui $v1, 0xe100 +/* 3B93C0 E00BA7F0 AC430038 */ sw $v1, 0x38($v0) +/* 3B93C4 E00BA7F4 24430048 */ addiu $v1, $v0, 0x48 +/* 3B93C8 E00BA7F8 AC40003C */ sw $zero, 0x3c($v0) +/* 3B93CC E00BA7FC AD030000 */ sw $v1, ($t0) +/* 3B93D0 E00BA800 3C03F100 */ lui $v1, 0xf100 +/* 3B93D4 E00BA804 AC430040 */ sw $v1, 0x40($v0) +/* 3B93D8 E00BA808 24430050 */ addiu $v1, $v0, 0x50 +/* 3B93DC E00BA80C AC470044 */ sw $a3, 0x44($v0) +/* 3B93E0 E00BA810 AD030000 */ sw $v1, ($t0) +/* 3B93E4 E00BA814 AC4E0048 */ sw $t6, 0x48($v0) +/* 3B93E8 E00BA818 AC40004C */ sw $zero, 0x4c($v0) +/* 3B93EC E00BA81C 29A20028 */ slti $v0, $t5, 0x28 +/* 3B93F0 E00BA820 1440FFC3 */ bnez $v0, .LE00BA730 +/* 3B93F4 E00BA824 25290F00 */ addiu $t1, $t1, 0xf00 +/* 3B93F8 E00BA828 3C06FF10 */ lui $a2, 0xff10 +/* 3B93FC E00BA82C 34C6013F */ ori $a2, $a2, 0x13f +/* 3B9400 E00BA830 3C0AE300 */ lui $t2, 0xe300 +/* 3B9404 E00BA834 354A0A01 */ ori $t2, $t2, 0xa01 +/* 3B9408 E00BA838 3C0CFC35 */ lui $t4, 0xfc35 +/* 3B940C E00BA83C 358C7E6A */ ori $t4, $t4, 0x7e6a +/* 3B9410 E00BA840 3C0BFFFC */ lui $t3, 0xfffc +/* 3B9414 E00BA844 356BF87C */ ori $t3, $t3, 0xf87c +/* 3B9418 E00BA848 3C0DFD10 */ lui $t5, 0xfd10 +/* 3B941C E00BA84C 35AD013F */ ori $t5, $t5, 0x13f +/* 3B9420 E00BA850 3C0FE200 */ lui $t7, 0xe200 +/* 3B9424 E00BA854 35EF001C */ ori $t7, $t7, 0x1c +/* 3B9428 E00BA858 3C0E0F0A */ lui $t6, 0xf0a +/* 3B942C E00BA85C 35CE4300 */ ori $t6, $t6, 0x4300 +/* 3B9430 E00BA860 3C11E300 */ lui $s1, 0xe300 +/* 3B9434 E00BA864 36310C00 */ ori $s1, $s1, 0xc00 +/* 3B9438 E00BA868 3C12E300 */ lui $s2, 0xe300 +/* 3B943C E00BA86C 36521201 */ ori $s2, $s2, 0x1201 +/* 3B9440 E00BA870 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B9444 E00BA874 3C130001 */ lui $s3, 1 +/* 3B9448 E00BA878 36731630 */ ori $s3, $s3, 0x1630 +/* 3B944C E00BA87C 3C10800A */ lui $s0, %hi(D_8009A66C) +/* 3B9450 E00BA880 2610A66C */ addiu $s0, $s0, %lo(D_8009A66C) +/* 3B9454 E00BA884 8E080000 */ lw $t0, ($s0) +/* 3B9458 E00BA888 3C05C2A0 */ lui $a1, 0xc2a0 +/* 3B945C E00BA88C 3C03800A */ lui $v1, %hi(D_8009A64C) +/* 3B9460 E00BA890 8C63A64C */ lw $v1, %lo(D_8009A64C)($v1) +/* 3B9464 E00BA894 3C01C270 */ lui $at, 0xc270 +/* 3B9468 E00BA898 44810000 */ mtc1 $at, $f0 +/* 3B946C E00BA89C 3C014320 */ lui $at, 0x4320 +/* 3B9470 E00BA8A0 44811000 */ mtc1 $at, $f2 +/* 3B9474 E00BA8A4 3C014420 */ lui $at, 0x4420 +/* 3B9478 E00BA8A8 44812000 */ mtc1 $at, $f4 +/* 3B947C E00BA8AC 3C013F80 */ lui $at, 0x3f80 +/* 3B9480 E00BA8B0 44813000 */ mtc1 $at, $f6 +/* 3B9484 E00BA8B4 0100102D */ daddu $v0, $t0, $zero +/* 3B9488 E00BA8B8 25080008 */ addiu $t0, $t0, 8 +/* 3B948C E00BA8BC AE080000 */ sw $t0, ($s0) +/* 3B9490 E00BA8C0 AC460000 */ sw $a2, ($v0) +/* 3B9494 E00BA8C4 AC430004 */ sw $v1, 4($v0) +/* 3B9498 E00BA8C8 25020008 */ addiu $v0, $t0, 8 +/* 3B949C E00BA8CC AE020000 */ sw $v0, ($s0) +/* 3B94A0 E00BA8D0 3C02FA00 */ lui $v0, 0xfa00 +/* 3B94A4 E00BA8D4 AD020000 */ sw $v0, ($t0) +/* 3B94A8 E00BA8D8 9289001C */ lbu $t1, 0x1c($s4) +/* 3B94AC E00BA8DC 9286001D */ lbu $a2, 0x1d($s4) +/* 3B94B0 E00BA8E0 9287001E */ lbu $a3, 0x1e($s4) +/* 3B94B4 E00BA8E4 25020010 */ addiu $v0, $t0, 0x10 +/* 3B94B8 E00BA8E8 AE020000 */ sw $v0, ($s0) +/* 3B94BC E00BA8EC 25020018 */ addiu $v0, $t0, 0x18 +/* 3B94C0 E00BA8F0 AD0A0008 */ sw $t2, 8($t0) +/* 3B94C4 E00BA8F4 AD00000C */ sw $zero, 0xc($t0) +/* 3B94C8 E00BA8F8 AE020000 */ sw $v0, ($s0) +/* 3B94CC E00BA8FC 25020020 */ addiu $v0, $t0, 0x20 +/* 3B94D0 E00BA900 AD0C0010 */ sw $t4, 0x10($t0) +/* 3B94D4 E00BA904 AD0B0014 */ sw $t3, 0x14($t0) +/* 3B94D8 E00BA908 AE020000 */ sw $v0, ($s0) +/* 3B94DC E00BA90C 3C02800A */ lui $v0, %hi(nuGfxZBuffer) +/* 3B94E0 E00BA910 8C42A5DC */ lw $v0, %lo(nuGfxZBuffer)($v0) +/* 3B94E4 E00BA914 3C038000 */ lui $v1, 0x8000 +/* 3B94E8 E00BA918 AD0D0018 */ sw $t5, 0x18($t0) +/* 3B94EC E00BA91C 00431021 */ addu $v0, $v0, $v1 +/* 3B94F0 E00BA920 AD02001C */ sw $v0, 0x1c($t0) +/* 3B94F4 E00BA924 25020028 */ addiu $v0, $t0, 0x28 +/* 3B94F8 E00BA928 AE020000 */ sw $v0, ($s0) +/* 3B94FC E00BA92C 25020030 */ addiu $v0, $t0, 0x30 +/* 3B9500 E00BA930 AD0F0020 */ sw $t7, 0x20($t0) +/* 3B9504 E00BA934 AD0E0024 */ sw $t6, 0x24($t0) +/* 3B9508 E00BA938 AE020000 */ sw $v0, ($s0) +/* 3B950C E00BA93C 3C020008 */ lui $v0, 8 +/* 3B9510 E00BA940 AD02002C */ sw $v0, 0x2c($t0) +/* 3B9514 E00BA944 25020038 */ addiu $v0, $t0, 0x38 +/* 3B9518 E00BA948 AD110028 */ sw $s1, 0x28($t0) +/* 3B951C E00BA94C AE020000 */ sw $v0, ($s0) +/* 3B9520 E00BA950 24022000 */ addiu $v0, $zero, 0x2000 +/* 3B9524 E00BA954 00094E00 */ sll $t1, $t1, 0x18 +/* 3B9528 E00BA958 00063400 */ sll $a2, $a2, 0x10 +/* 3B952C E00BA95C 01264825 */ or $t1, $t1, $a2 +/* 3B9530 E00BA960 00073A00 */ sll $a3, $a3, 8 +/* 3B9534 E00BA964 01274825 */ or $t1, $t1, $a3 +/* 3B9538 E00BA968 AD020034 */ sw $v0, 0x34($t0) +/* 3B953C E00BA96C 00191042 */ srl $v0, $t9, 1 +/* 3B9540 E00BA970 3C0642A0 */ lui $a2, 0x42a0 +/* 3B9544 E00BA974 3C074270 */ lui $a3, 0x4270 +/* 3B9548 E00BA978 01224825 */ or $t1, $t1, $v0 +/* 3B954C E00BA97C AD120030 */ sw $s2, 0x30($t0) +/* 3B9550 E00BA980 AD090004 */ sw $t1, 4($t0) +/* 3B9554 E00BA984 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3B9558 E00BA988 E7A20014 */ swc1 $f2, 0x14($sp) +/* 3B955C E00BA98C E7A40018 */ swc1 $f4, 0x18($sp) +/* 3B9560 E00BA990 0C080188 */ jal func_E0200620 +/* 3B9564 E00BA994 E7A6001C */ swc1 $f6, 0x1c($sp) +/* 3B9568 E00BA998 27A40020 */ addiu $a0, $sp, 0x20 +/* 3B956C E00BA99C 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3B9570 E00BA9A0 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3B9574 E00BA9A4 3C12800A */ lui $s2, %hi(D_8009A674) +/* 3B9578 E00BA9A8 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 3B957C E00BA9AC 96250000 */ lhu $a1, ($s1) +/* 3B9580 E00BA9B0 8E420000 */ lw $v0, ($s2) +/* 3B9584 E00BA9B4 00052980 */ sll $a1, $a1, 6 +/* 3B9588 E00BA9B8 00B32821 */ addu $a1, $a1, $s3 +/* 3B958C E00BA9BC 0C080118 */ jal func_E0200460 +/* 3B9590 E00BA9C0 00452821 */ addu $a1, $v0, $a1 +/* 3B9594 E00BA9C4 3C03DA38 */ lui $v1, 0xda38 +/* 3B9598 E00BA9C8 34630007 */ ori $v1, $v1, 7 +/* 3B959C E00BA9CC 3C06D9FD */ lui $a2, 0xd9fd +/* 3B95A0 E00BA9D0 34C6F9FF */ ori $a2, $a2, 0xf9ff +/* 3B95A4 E00BA9D4 3C08D9FF */ lui $t0, 0xd9ff +/* 3B95A8 E00BA9D8 3508FFFF */ ori $t0, $t0, 0xffff +/* 3B95AC E00BA9DC 3C070020 */ lui $a3, 0x20 +/* 3B95B0 E00BA9E0 34E70004 */ ori $a3, $a3, 4 +/* 3B95B4 E00BA9E4 3C090101 */ lui $t1, 0x101 +/* 3B95B8 E00BA9E8 35290020 */ ori $t1, $t1, 0x20 +/* 3B95BC E00BA9EC 0000702D */ daddu $t6, $zero, $zero +/* 3B95C0 E00BA9F0 3C150218 */ lui $s5, 0x218 +/* 3B95C4 E00BA9F4 24190018 */ addiu $t9, $zero, 0x18 +/* 3B95C8 E00BA9F8 8E040000 */ lw $a0, ($s0) +/* 3B95CC E00BA9FC 96220000 */ lhu $v0, ($s1) +/* 3B95D0 E00BAA00 0080282D */ daddu $a1, $a0, $zero +/* 3B95D4 E00BAA04 24840008 */ addiu $a0, $a0, 8 +/* 3B95D8 E00BAA08 AE040000 */ sw $a0, ($s0) +/* 3B95DC E00BAA0C ACA30000 */ sw $v1, ($a1) +/* 3B95E0 E00BAA10 24430001 */ addiu $v1, $v0, 1 +/* 3B95E4 E00BAA14 3042FFFF */ andi $v0, $v0, 0xffff +/* 3B95E8 E00BAA18 00021180 */ sll $v0, $v0, 6 +/* 3B95EC E00BAA1C A6230000 */ sh $v1, ($s1) +/* 3B95F0 E00BAA20 8E430000 */ lw $v1, ($s2) +/* 3B95F4 E00BAA24 00531021 */ addu $v0, $v0, $s3 +/* 3B95F8 E00BAA28 00621821 */ addu $v1, $v1, $v0 +/* 3B95FC E00BAA2C 24820008 */ addiu $v0, $a0, 8 +/* 3B9600 E00BAA30 ACA30004 */ sw $v1, 4($a1) +/* 3B9604 E00BAA34 AE020000 */ sw $v0, ($s0) +/* 3B9608 E00BAA38 24820010 */ addiu $v0, $a0, 0x10 +/* 3B960C E00BAA3C AC860000 */ sw $a2, ($a0) +/* 3B9610 E00BAA40 AC800004 */ sw $zero, 4($a0) +/* 3B9614 E00BAA44 AE020000 */ sw $v0, ($s0) +/* 3B9618 E00BAA48 00991021 */ addu $v0, $a0, $t9 +/* 3B961C E00BAA4C AC880008 */ sw $t0, 8($a0) +/* 3B9620 E00BAA50 AC87000C */ sw $a3, 0xc($a0) +/* 3B9624 E00BAA54 AE020000 */ sw $v0, ($s0) +/* 3B9628 E00BAA58 3C020900 */ lui $v0, 0x900 +/* 3B962C E00BAA5C 24420428 */ addiu $v0, $v0, 0x428 +/* 3B9630 E00BAA60 AC890010 */ sw $t1, 0x10($a0) +/* 3B9634 E00BAA64 AC820014 */ sw $v0, 0x14($a0) +.LE00BAA68: +/* 3B9638 E00BAA68 15C00004 */ bnez $t6, .LE00BAA7C +/* 3B963C E00BAA6C 0000902D */ daddu $s2, $zero, $zero +/* 3B9640 E00BAA70 2404FFFC */ addiu $a0, $zero, -4 +/* 3B9644 E00BAA74 0802EAA0 */ j .LE00BAA80 +/* 3B9648 E00BAA78 24120001 */ addiu $s2, $zero, 1 +.LE00BAA7C: +/* 3B964C E00BAA7C 0000202D */ daddu $a0, $zero, $zero +.LE00BAA80: +/* 3B9650 E00BAA80 2402000B */ addiu $v0, $zero, 0xb +/* 3B9654 E00BAA84 15C20003 */ bne $t6, $v0, .LE00BAA94 +/* 3B9658 E00BAA88 0000182D */ daddu $v1, $zero, $zero +/* 3B965C E00BAA8C 24030004 */ addiu $v1, $zero, 4 +/* 3B9660 E00BAA90 24120001 */ addiu $s2, $zero, 1 +.LE00BAA94: +/* 3B9664 E00BAA94 0000682D */ daddu $t5, $zero, $zero +/* 3B9668 E00BAA98 03241021 */ addu $v0, $t9, $a0 +/* 3B966C E00BAA9C 0002C080 */ sll $t8, $v0, 2 +/* 3B9670 E00BAAA0 33020FFF */ andi $v0, $t8, 0xfff +/* 3B9674 E00BAAA4 3C16F400 */ lui $s6, 0xf400 +/* 3B9678 E00BAAA8 0056B025 */ or $s6, $v0, $s6 +/* 3B967C E00BAAAC AFB600A0 */ sw $s6, 0xa0($sp) +/* 3B9680 E00BAAB0 03231821 */ addu $v1, $t9, $v1 +/* 3B9684 E00BAAB4 24620010 */ addiu $v0, $v1, 0x10 +/* 3B9688 E00BAAB8 00029880 */ sll $s3, $v0, 2 +/* 3B968C E00BAABC 32620FFF */ andi $v0, $s3, 0xfff +/* 3B9690 E00BAAC0 3C160700 */ lui $s6, 0x700 +/* 3B9694 E00BAAC4 0056F025 */ or $fp, $v0, $s6 +/* 3B9698 E00BAAC8 2463001F */ addiu $v1, $v1, 0x1f +/* 3B969C E00BAACC 00031880 */ sll $v1, $v1, 2 +/* 3B96A0 E00BAAD0 30770FFF */ andi $s7, $v1, 0xfff +/* 3B96A4 E00BAAD4 0012B023 */ negu $s6, $s2 +/* 3B96A8 E00BAAD8 AFB600A8 */ sw $s6, 0xa8($sp) +.LE00BAADC: +/* 3B96AC E00BAADC 0000502D */ daddu $t2, $zero, $zero +/* 3B96B0 E00BAAE0 000D1100 */ sll $v0, $t5, 4 +/* 3B96B4 E00BAAE4 15A00004 */ bnez $t5, .LE00BAAF8 +/* 3B96B8 E00BAAE8 244F0010 */ addiu $t7, $v0, 0x10 +/* 3B96BC E00BAAEC 240BFFFC */ addiu $t3, $zero, -4 +/* 3B96C0 E00BAAF0 0802EABF */ j .LE00BAAFC +/* 3B96C4 E00BAAF4 240A0001 */ addiu $t2, $zero, 1 +.LE00BAAF8: +/* 3B96C8 E00BAAF8 0000582D */ daddu $t3, $zero, $zero +.LE00BAAFC: +/* 3B96CC E00BAAFC 24020011 */ addiu $v0, $zero, 0x11 +/* 3B96D0 E00BAB00 15A20003 */ bne $t5, $v0, .LE00BAB10 +/* 3B96D4 E00BAB04 0000882D */ daddu $s1, $zero, $zero +/* 3B96D8 E00BAB08 24110004 */ addiu $s1, $zero, 4 +/* 3B96DC E00BAB0C 240A0001 */ addiu $t2, $zero, 1 +.LE00BAB10: +/* 3B96E0 E00BAB10 3C080709 */ lui $t0, 0x709 +/* 3B96E4 E00BAB14 35088260 */ ori $t0, $t0, 0x8260 +/* 3B96E8 E00BAB18 3C090009 */ lui $t1, 9 +/* 3B96EC E00BAB1C 35298260 */ ori $t1, $t1, 0x8260 +/* 3B96F0 E00BAB20 01F13021 */ addu $a2, $t7, $s1 +/* 3B96F4 E00BAB24 01EB2021 */ addu $a0, $t7, $t3 +/* 3B96F8 E00BAB28 2483FFF0 */ addiu $v1, $a0, -0x10 +/* 3B96FC E00BAB2C 00C31823 */ subu $v1, $a2, $v1 +/* 3B9700 E00BAB30 24630001 */ addiu $v1, $v1, 1 +/* 3B9704 E00BAB34 00031840 */ sll $v1, $v1, 1 +/* 3B9708 E00BAB38 24630007 */ addiu $v1, $v1, 7 +/* 3B970C E00BAB3C 000318C3 */ sra $v1, $v1, 3 +/* 3B9710 E00BAB40 306301FF */ andi $v1, $v1, 0x1ff +/* 3B9714 E00BAB44 00031A40 */ sll $v1, $v1, 9 +/* 3B9718 E00BAB48 3C02F510 */ lui $v0, 0xf510 +/* 3B971C E00BAB4C 00621825 */ or $v1, $v1, $v0 +/* 3B9720 E00BAB50 00042080 */ sll $a0, $a0, 2 +/* 3B9724 E00BAB54 30840FFF */ andi $a0, $a0, 0xfff +/* 3B9728 E00BAB58 8E050000 */ lw $a1, ($s0) +/* 3B972C E00BAB5C 00042300 */ sll $a0, $a0, 0xc +/* 3B9730 E00BAB60 00A0382D */ daddu $a3, $a1, $zero +/* 3B9734 E00BAB64 24A50008 */ addiu $a1, $a1, 8 +/* 3B9738 E00BAB68 24A20008 */ addiu $v0, $a1, 8 +/* 3B973C E00BAB6C AE050000 */ sw $a1, ($s0) +/* 3B9740 E00BAB70 ACE30000 */ sw $v1, ($a3) +/* 3B9744 E00BAB74 ACE80004 */ sw $t0, 4($a3) +/* 3B9748 E00BAB78 AE020000 */ sw $v0, ($s0) +/* 3B974C E00BAB7C 3C02E600 */ lui $v0, 0xe600 +/* 3B9750 E00BAB80 ACA20000 */ sw $v0, ($a1) +/* 3B9754 E00BAB84 24A20010 */ addiu $v0, $a1, 0x10 +/* 3B9758 E00BAB88 ACA00004 */ sw $zero, 4($a1) +/* 3B975C E00BAB8C AE020000 */ sw $v0, ($s0) +/* 3B9760 E00BAB90 24C20010 */ addiu $v0, $a2, 0x10 +/* 3B9764 E00BAB94 00021080 */ sll $v0, $v0, 2 +/* 3B9768 E00BAB98 30420FFF */ andi $v0, $v0, 0xfff +/* 3B976C E00BAB9C 00021300 */ sll $v0, $v0, 0xc +/* 3B9770 E00BABA0 8FB600A0 */ lw $s6, 0xa0($sp) +/* 3B9774 E00BABA4 005E1025 */ or $v0, $v0, $fp +/* 3B9778 E00BABA8 ACA2000C */ sw $v0, 0xc($a1) +/* 3B977C E00BABAC 24A20018 */ addiu $v0, $a1, 0x18 +/* 3B9780 E00BABB0 24C6001F */ addiu $a2, $a2, 0x1f +/* 3B9784 E00BABB4 00063080 */ sll $a2, $a2, 2 +/* 3B9788 E00BABB8 30C60FFF */ andi $a2, $a2, 0xfff +/* 3B978C E00BABBC 00063300 */ sll $a2, $a2, 0xc +/* 3B9790 E00BABC0 00D73025 */ or $a2, $a2, $s7 +/* 3B9794 E00BABC4 00962025 */ or $a0, $a0, $s6 +/* 3B9798 E00BABC8 3C16E700 */ lui $s6, 0xe700 +/* 3B979C E00BABCC ACA40008 */ sw $a0, 8($a1) +/* 3B97A0 E00BABD0 AE020000 */ sw $v0, ($s0) +/* 3B97A4 E00BABD4 24A20020 */ addiu $v0, $a1, 0x20 +/* 3B97A8 E00BABD8 ACB60010 */ sw $s6, 0x10($a1) +/* 3B97AC E00BABDC ACA00014 */ sw $zero, 0x14($a1) +/* 3B97B0 E00BABE0 AE020000 */ sw $v0, ($s0) +/* 3B97B4 E00BABE4 24A20028 */ addiu $v0, $a1, 0x28 +/* 3B97B8 E00BABE8 ACA30018 */ sw $v1, 0x18($a1) +/* 3B97BC E00BABEC ACA9001C */ sw $t1, 0x1c($a1) +/* 3B97C0 E00BABF0 AE020000 */ sw $v0, ($s0) +/* 3B97C4 E00BABF4 3C02F200 */ lui $v0, 0xf200 +/* 3B97C8 E00BABF8 ACA20020 */ sw $v0, 0x20($a1) +/* 3B97CC E00BABFC 11400003 */ beqz $t2, .LE00BAC0C +/* 3B97D0 E00BAC00 ACA60024 */ sw $a2, 0x24($a1) +/* 3B97D4 E00BAC04 16400005 */ bnez $s2, .LE00BAC1C +/* 3B97D8 E00BAC08 240C000C */ addiu $t4, $zero, 0xc +.LE00BAC0C: +/* 3B97DC E00BAC0C 15400003 */ bnez $t2, .LE00BAC1C +/* 3B97E0 E00BAC10 240C0004 */ addiu $t4, $zero, 4 +/* 3B97E4 E00BAC14 8FB600A8 */ lw $s6, 0xa8($sp) +/* 3B97E8 E00BAC18 32CC0008 */ andi $t4, $s6, 8 +.LE00BAC1C: +/* 3B97EC E00BAC1C 000D2840 */ sll $a1, $t5, 1 +/* 3B97F0 E00BAC20 00AD2821 */ addu $a1, $a1, $t5 +/* 3B97F4 E00BAC24 00052880 */ sll $a1, $a1, 2 +/* 3B97F8 E00BAC28 00AD2821 */ addu $a1, $a1, $t5 +/* 3B97FC E00BAC2C 25A20001 */ addiu $v0, $t5, 1 +/* 3B9800 E00BAC30 0040682D */ daddu $t5, $v0, $zero +/* 3B9804 E00BAC34 000C5040 */ sll $t2, $t4, 1 +/* 3B9808 E00BAC38 01551025 */ or $v0, $t2, $s5 +/* 3B980C E00BAC3C 01EB4821 */ addu $t1, $t7, $t3 +/* 3B9810 E00BAC40 00094C80 */ sll $t1, $t1, 0x12 +/* 3B9814 E00BAC44 258B0001 */ addiu $t3, $t4, 1 +/* 3B9818 E00BAC48 000B5840 */ sll $t3, $t3, 1 +/* 3B981C E00BAC4C 25880002 */ addiu $t0, $t4, 2 +/* 3B9820 E00BAC50 00084040 */ sll $t0, $t0, 1 +/* 3B9824 E00BAC54 01F13821 */ addu $a3, $t7, $s1 +/* 3B9828 E00BAC58 24E70010 */ addiu $a3, $a3, 0x10 +/* 3B982C E00BAC5C 00073C80 */ sll $a3, $a3, 0x12 +/* 3B9830 E00BAC60 8E060000 */ lw $a2, ($s0) +/* 3B9834 E00BAC64 000A5400 */ sll $t2, $t2, 0x10 +/* 3B9838 E00BAC68 00C0202D */ daddu $a0, $a2, $zero +/* 3B983C E00BAC6C 24C60008 */ addiu $a2, $a2, 8 +/* 3B9840 E00BAC70 AE060000 */ sw $a2, ($s0) +/* 3B9844 E00BAC74 AC820000 */ sw $v0, ($a0) +/* 3B9848 E00BAC78 01C51021 */ addu $v0, $t6, $a1 +/* 3B984C E00BAC7C 02821021 */ addu $v0, $s4, $v0 +/* 3B9850 E00BAC80 80430023 */ lb $v1, 0x23($v0) +/* 3B9854 E00BAC84 24C20008 */ addiu $v0, $a2, 8 +/* 3B9858 E00BAC88 AE020000 */ sw $v0, ($s0) +/* 3B985C E00BAC8C 01751025 */ or $v0, $t3, $s5 +/* 3B9860 E00BAC90 24A50001 */ addiu $a1, $a1, 1 +/* 3B9864 E00BAC94 01C52821 */ addu $a1, $t6, $a1 +/* 3B9868 E00BAC98 02852821 */ addu $a1, $s4, $a1 +/* 3B986C E00BAC9C 03031821 */ addu $v1, $t8, $v1 +/* 3B9870 E00BACA0 01231825 */ or $v1, $t1, $v1 +/* 3B9874 E00BACA4 AC830004 */ sw $v1, 4($a0) +/* 3B9878 E00BACA8 000D1840 */ sll $v1, $t5, 1 +/* 3B987C E00BACAC 006D1821 */ addu $v1, $v1, $t5 +/* 3B9880 E00BACB0 00031880 */ sll $v1, $v1, 2 +/* 3B9884 E00BACB4 006D1821 */ addu $v1, $v1, $t5 +/* 3B9888 E00BACB8 ACC20000 */ sw $v0, ($a2) +/* 3B988C E00BACBC 01C31021 */ addu $v0, $t6, $v1 +/* 3B9890 E00BACC0 02821021 */ addu $v0, $s4, $v0 +/* 3B9894 E00BACC4 80440023 */ lb $a0, 0x23($v0) +/* 3B9898 E00BACC8 24C20010 */ addiu $v0, $a2, 0x10 +/* 3B989C E00BACCC AE020000 */ sw $v0, ($s0) +/* 3B98A0 E00BACD0 01151025 */ or $v0, $t0, $s5 +/* 3B98A4 E00BACD4 ACC20008 */ sw $v0, 8($a2) +/* 3B98A8 E00BACD8 24C20018 */ addiu $v0, $a2, 0x18 +/* 3B98AC E00BACDC 24630001 */ addiu $v1, $v1, 1 +/* 3B98B0 E00BACE0 01C31821 */ addu $v1, $t6, $v1 +/* 3B98B4 E00BACE4 02831821 */ addu $v1, $s4, $v1 +/* 3B98B8 E00BACE8 00084200 */ sll $t0, $t0, 8 +/* 3B98BC E00BACEC 03042021 */ addu $a0, $t8, $a0 +/* 3B98C0 E00BACF0 00E42025 */ or $a0, $a3, $a0 +/* 3B98C4 E00BACF4 ACC40004 */ sw $a0, 4($a2) +/* 3B98C8 E00BACF8 80A40023 */ lb $a0, 0x23($a1) +/* 3B98CC E00BACFC 25850003 */ addiu $a1, $t4, 3 +/* 3B98D0 E00BAD00 00052840 */ sll $a1, $a1, 1 +/* 3B98D4 E00BAD04 AE020000 */ sw $v0, ($s0) +/* 3B98D8 E00BAD08 00B51025 */ or $v0, $a1, $s5 +/* 3B98DC E00BAD0C ACC20010 */ sw $v0, 0x10($a2) +/* 3B98E0 E00BAD10 24C20020 */ addiu $v0, $a2, 0x20 +/* 3B98E4 E00BAD14 02642021 */ addu $a0, $s3, $a0 +/* 3B98E8 E00BAD18 01244825 */ or $t1, $t1, $a0 +/* 3B98EC E00BAD1C ACC9000C */ sw $t1, 0xc($a2) +/* 3B98F0 E00BAD20 80640023 */ lb $a0, 0x23($v1) +/* 3B98F4 E00BAD24 30A500FF */ andi $a1, $a1, 0xff +/* 3B98F8 E00BAD28 AE020000 */ sw $v0, ($s0) +/* 3B98FC E00BAD2C 00051200 */ sll $v0, $a1, 8 +/* 3B9900 E00BAD30 01421025 */ or $v0, $t2, $v0 +/* 3B9904 E00BAD34 004B1025 */ or $v0, $v0, $t3 +/* 3B9908 E00BAD38 3C030600 */ lui $v1, 0x600 +/* 3B990C E00BAD3C 00431025 */ or $v0, $v0, $v1 +/* 3B9910 E00BAD40 01485025 */ or $t2, $t2, $t0 +/* 3B9914 E00BAD44 01455025 */ or $t2, $t2, $a1 +/* 3B9918 E00BAD48 ACC20018 */ sw $v0, 0x18($a2) +/* 3B991C E00BAD4C 24C20028 */ addiu $v0, $a2, 0x28 +/* 3B9920 E00BAD50 3C16E700 */ lui $s6, 0xe700 +/* 3B9924 E00BAD54 ACCA001C */ sw $t2, 0x1c($a2) +/* 3B9928 E00BAD58 AE020000 */ sw $v0, ($s0) +/* 3B992C E00BAD5C 29A20012 */ slti $v0, $t5, 0x12 +/* 3B9930 E00BAD60 ACD60020 */ sw $s6, 0x20($a2) +/* 3B9934 E00BAD64 ACC00024 */ sw $zero, 0x24($a2) +/* 3B9938 E00BAD68 02642021 */ addu $a0, $s3, $a0 +/* 3B993C E00BAD6C 00E43825 */ or $a3, $a3, $a0 +/* 3B9940 E00BAD70 1440FF5A */ bnez $v0, .LE00BAADC +/* 3B9944 E00BAD74 ACC70014 */ sw $a3, 0x14($a2) +/* 3B9948 E00BAD78 25CE0001 */ addiu $t6, $t6, 1 +/* 3B994C E00BAD7C 29C2000C */ slti $v0, $t6, 0xc +/* 3B9950 E00BAD80 1440FF39 */ bnez $v0, .LE00BAA68 +/* 3B9954 E00BAD84 27390010 */ addiu $t9, $t9, 0x10 +/* 3B9958 E00BAD88 3C06FF10 */ lui $a2, 0xff10 +/* 3B995C E00BAD8C 34C6013F */ ori $a2, $a2, 0x13f +/* 3B9960 E00BAD90 3C07DA38 */ lui $a3, 0xda38 +/* 3B9964 E00BAD94 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 3B9968 E00BAD98 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 3B996C E00BAD9C 8CA30000 */ lw $v1, ($a1) +/* 3B9970 E00BADA0 3C04800A */ lui $a0, %hi(nuGfxZBuffer) +/* 3B9974 E00BADA4 8C84A5DC */ lw $a0, %lo(nuGfxZBuffer)($a0) +/* 3B9978 E00BADA8 0060102D */ daddu $v0, $v1, $zero +/* 3B997C E00BADAC 24630008 */ addiu $v1, $v1, 8 +/* 3B9980 E00BADB0 ACA30000 */ sw $v1, ($a1) +/* 3B9984 E00BADB4 AC460000 */ sw $a2, ($v0) +/* 3B9988 E00BADB8 AC440004 */ sw $a0, 4($v0) +/* 3B998C E00BADBC 24620008 */ addiu $v0, $v1, 8 +/* 3B9990 E00BADC0 ACA20000 */ sw $v0, ($a1) +/* 3B9994 E00BADC4 3C04800A */ lui $a0, %hi(D_8009A64C) +/* 3B9998 E00BADC8 8C84A64C */ lw $a0, %lo(D_8009A64C)($a0) +/* 3B999C E00BADCC 3C02DE00 */ lui $v0, 0xde00 +/* 3B99A0 E00BADD0 AC620000 */ sw $v0, ($v1) +/* 3B99A4 E00BADD4 3C020900 */ lui $v0, 0x900 +/* 3B99A8 E00BADD8 24420570 */ addiu $v0, $v0, 0x570 +/* 3B99AC E00BADDC AC620004 */ sw $v0, 4($v1) +/* 3B99B0 E00BADE0 24620010 */ addiu $v0, $v1, 0x10 +/* 3B99B4 E00BADE4 ACA20000 */ sw $v0, ($a1) +/* 3B99B8 E00BADE8 24620018 */ addiu $v0, $v1, 0x18 +/* 3B99BC E00BADEC AC660008 */ sw $a2, 8($v1) +/* 3B99C0 E00BADF0 02C0302D */ daddu $a2, $s6, $zero +/* 3B99C4 E00BADF4 AC64000C */ sw $a0, 0xc($v1) +/* 3B99C8 E00BADF8 ACA20000 */ sw $v0, ($a1) +/* 3B99CC E00BADFC 3C048007 */ lui $a0, %hi(gCurrentCameraID) +/* 3B99D0 E00BAE00 8C847410 */ lw $a0, %lo(gCurrentCameraID)($a0) +/* 3B99D4 E00BAE04 24620020 */ addiu $v0, $v1, 0x20 +/* 3B99D8 E00BAE08 AC660010 */ sw $a2, 0x10($v1) +/* 3B99DC E00BAE0C AC600014 */ sw $zero, 0x14($v1) +/* 3B99E0 E00BAE10 ACA20000 */ sw $v0, ($a1) +/* 3B99E4 E00BAE14 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3B99E8 E00BAE18 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3B99EC E00BAE1C 34E70007 */ ori $a3, $a3, 7 +/* 3B99F0 E00BAE20 AC670018 */ sw $a3, 0x18($v1) +/* 3B99F4 E00BAE24 00042180 */ sll $a0, $a0, 6 +/* 3B99F8 E00BAE28 24840030 */ addiu $a0, $a0, 0x30 +/* 3B99FC E00BAE2C 00441021 */ addu $v0, $v0, $a0 +/* 3B9A00 E00BAE30 AC62001C */ sw $v0, 0x1c($v1) +/* 3B9A04 E00BAE34 24620028 */ addiu $v0, $v1, 0x28 +/* 3B9A08 E00BAE38 ACA20000 */ sw $v0, ($a1) +/* 3B9A0C E00BAE3C AC660020 */ sw $a2, 0x20($v1) +/* 3B9A10 E00BAE40 AC600024 */ sw $zero, 0x24($v1) +/* 3B9A14 E00BAE44 8FBF00D4 */ lw $ra, 0xd4($sp) +/* 3B9A18 E00BAE48 8FBE00D0 */ lw $fp, 0xd0($sp) +/* 3B9A1C E00BAE4C 8FB700CC */ lw $s7, 0xcc($sp) +/* 3B9A20 E00BAE50 8FB600C8 */ lw $s6, 0xc8($sp) +/* 3B9A24 E00BAE54 8FB500C4 */ lw $s5, 0xc4($sp) +/* 3B9A28 E00BAE58 8FB400C0 */ lw $s4, 0xc0($sp) +/* 3B9A2C E00BAE5C 8FB300BC */ lw $s3, 0xbc($sp) +/* 3B9A30 E00BAE60 8FB200B8 */ lw $s2, 0xb8($sp) +/* 3B9A34 E00BAE64 8FB100B4 */ lw $s1, 0xb4($sp) +/* 3B9A38 E00BAE68 8FB000B0 */ lw $s0, 0xb0($sp) +/* 3B9A3C E00BAE6C 03E00008 */ jr $ra +/* 3B9A40 E00BAE70 27BD00D8 */ addiu $sp, $sp, 0xd8 +/* 3B9A44 E00BAE74 00000000 */ nop +/* 3B9A48 E00BAE78 00000000 */ nop +/* 3B9A4C E00BAE7C 00000000 */ nop diff --git a/asm/nonmatchings/code_3BBF60/func_E00BE000.s b/asm/nonmatchings/code_3BBF60/func_E00BE000.s new file mode 100644 index 0000000000..7fbbe17f14 --- /dev/null +++ b/asm/nonmatchings/code_3BBF60/func_E00BE000.s @@ -0,0 +1,249 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BE000 +/* 3BBF60 E00BE000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3BBF64 E00BE004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3BBF68 E00BE008 4485A000 */ mtc1 $a1, $f20 +/* 3BBF6C E00BE00C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3BBF70 E00BE010 4486B000 */ mtc1 $a2, $f22 +/* 3BBF74 E00BE014 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3BBF78 E00BE018 4487C000 */ mtc1 $a3, $f24 +/* 3BBF7C E00BE01C AFB20030 */ sw $s2, 0x30($sp) +/* 3BBF80 E00BE020 0080902D */ daddu $s2, $a0, $zero +/* 3BBF84 E00BE024 AFB1002C */ sw $s1, 0x2c($sp) +/* 3BBF88 E00BE028 8FB1006C */ lw $s1, 0x6c($sp) +/* 3BBF8C E00BE02C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BBF90 E00BE030 AFBF003C */ sw $ra, 0x3c($sp) +/* 3BBF94 E00BE034 AFB40038 */ sw $s4, 0x38($sp) +/* 3BBF98 E00BE038 AFB30034 */ sw $s3, 0x34($sp) +/* 3BBF9C E00BE03C 06400009 */ bltz $s2, .LE00BE064 +/* 3BBFA0 E00BE040 AFB00028 */ sw $s0, 0x28($sp) +/* 3BBFA4 E00BE044 2A420002 */ slti $v0, $s2, 2 +/* 3BBFA8 E00BE048 14400007 */ bnez $v0, .LE00BE068 +/* 3BBFAC E00BE04C 24100015 */ addiu $s0, $zero, 0x15 +/* 3BBFB0 E00BE050 24020002 */ addiu $v0, $zero, 2 +/* 3BBFB4 E00BE054 16420004 */ bne $s2, $v0, .LE00BE068 +/* 3BBFB8 E00BE058 2410000B */ addiu $s0, $zero, 0xb +/* 3BBFBC E00BE05C 0802F81A */ j .LE00BE068 +/* 3BBFC0 E00BE060 24100029 */ addiu $s0, $zero, 0x29 +.LE00BE064: +/* 3BBFC4 E00BE064 2410000B */ addiu $s0, $zero, 0xb +.LE00BE068: +/* 3BBFC8 E00BE068 3C02E00C */ lui $v0, %hi(D_E00BE39C) +/* 3BBFCC E00BE06C 2442E39C */ addiu $v0, $v0, %lo(D_E00BE39C) +/* 3BBFD0 E00BE070 AC820008 */ sw $v0, 8($a0) +/* 3BBFD4 E00BE074 3C02E00C */ lui $v0, %hi(D_E00BE3A4) +/* 3BBFD8 E00BE078 2442E3A4 */ addiu $v0, $v0, %lo(D_E00BE3A4) +/* 3BBFDC E00BE07C AC82000C */ sw $v0, 0xc($a0) +/* 3BBFE0 E00BE080 3C02E00C */ lui $v0, %hi(D_E00BE578) +/* 3BBFE4 E00BE084 2442E578 */ addiu $v0, $v0, %lo(D_E00BE578) +/* 3BBFE8 E00BE088 AC820010 */ sw $v0, 0x10($a0) +/* 3BBFEC E00BE08C 2402005F */ addiu $v0, $zero, 0x5f +/* 3BBFF0 E00BE090 AC800000 */ sw $zero, ($a0) +/* 3BBFF4 E00BE094 AC800014 */ sw $zero, 0x14($a0) +/* 3BBFF8 E00BE098 0C080124 */ jal func_E0200490 +/* 3BBFFC E00BE09C AC820004 */ sw $v0, 4($a0) +/* 3BC000 E00BE0A0 001020C0 */ sll $a0, $s0, 3 +/* 3BC004 E00BE0A4 00902023 */ subu $a0, $a0, $s0 +/* 3BC008 E00BE0A8 000420C0 */ sll $a0, $a0, 3 +/* 3BC00C E00BE0AC 0040982D */ daddu $s3, $v0, $zero +/* 3BC010 E00BE0B0 0C08012C */ jal func_E02004B0 +/* 3BC014 E00BE0B4 AE700008 */ sw $s0, 8($s3) +/* 3BC018 E00BE0B8 0040202D */ daddu $a0, $v0, $zero +/* 3BC01C E00BE0BC 14800003 */ bnez $a0, .LE00BE0CC +/* 3BC020 E00BE0C0 AE64000C */ sw $a0, 0xc($s3) +.LE00BE0C4: +/* 3BC024 E00BE0C4 0802F831 */ j .LE00BE0C4 +/* 3BC028 E00BE0C8 00000000 */ nop +.LE00BE0CC: +/* 3BC02C E00BE0CC AC920000 */ sw $s2, ($a0) +/* 3BC030 E00BE0D0 1E200004 */ bgtz $s1, .LE00BE0E4 +/* 3BC034 E00BE0D4 AC800020 */ sw $zero, 0x20($a0) +/* 3BC038 E00BE0D8 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3BC03C E00BE0DC 0802F83A */ j .LE00BE0E8 +/* 3BC040 E00BE0E0 AC82001C */ sw $v0, 0x1c($a0) +.LE00BE0E4: +/* 3BC044 E00BE0E4 AC91001C */ sw $s1, 0x1c($a0) +.LE00BE0E8: +/* 3BC048 E00BE0E8 240300FF */ addiu $v1, $zero, 0xff +/* 3BC04C E00BE0EC AC830030 */ sw $v1, 0x30($a0) +/* 3BC050 E00BE0F0 E4940004 */ swc1 $f20, 4($a0) +/* 3BC054 E00BE0F4 E4960008 */ swc1 $f22, 8($a0) +/* 3BC058 E00BE0F8 E498000C */ swc1 $f24, 0xc($a0) +/* 3BC05C E00BE0FC C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3BC060 E00BE100 24020046 */ addiu $v0, $zero, 0x46 +/* 3BC064 E00BE104 AC820024 */ sw $v0, 0x24($a0) +/* 3BC068 E00BE108 240200B4 */ addiu $v0, $zero, 0xb4 +/* 3BC06C E00BE10C 24110001 */ addiu $s1, $zero, 1 +/* 3BC070 E00BE110 AC820028 */ sw $v0, 0x28($a0) +/* 3BC074 E00BE114 AC83002C */ sw $v1, 0x2c($a0) +/* 3BC078 E00BE118 E4800034 */ swc1 $f0, 0x34($a0) +/* 3BC07C E00BE11C 8E620008 */ lw $v0, 8($s3) +/* 3BC080 E00BE120 0222102A */ slt $v0, $s1, $v0 +/* 3BC084 E00BE124 10400091 */ beqz $v0, .LE00BE36C +/* 3BC088 E00BE128 24840038 */ addiu $a0, $a0, 0x38 +/* 3BC08C E00BE12C 24140002 */ addiu $s4, $zero, 2 +/* 3BC090 E00BE130 24900030 */ addiu $s0, $a0, 0x30 +/* 3BC094 E00BE134 3C013D8F */ lui $at, 0x3d8f +/* 3BC098 E00BE138 34215C29 */ ori $at, $at, 0x5c29 +/* 3BC09C E00BE13C 4481B000 */ mtc1 $at, $f22 +/* 3BC0A0 E00BE140 3C013FE0 */ lui $at, 0x3fe0 +/* 3BC0A4 E00BE144 4481A800 */ mtc1 $at, $f21 +/* 3BC0A8 E00BE148 4480A000 */ mtc1 $zero, $f20 +.LE00BE14C: +/* 3BC0AC E00BE14C 3C014000 */ lui $at, 0x4000 +/* 3BC0B0 E00BE150 44810000 */ mtc1 $at, $f0 +/* 3BC0B4 E00BE154 24020001 */ addiu $v0, $zero, 1 +/* 3BC0B8 E00BE158 AE00FFD4 */ sw $zero, -0x2c($s0) +/* 3BC0BC E00BE15C AE00FFD8 */ sw $zero, -0x28($s0) +/* 3BC0C0 E00BE160 AE00FFDC */ sw $zero, -0x24($s0) +/* 3BC0C4 E00BE164 12420022 */ beq $s2, $v0, .LE00BE1F0 +/* 3BC0C8 E00BE168 E6000004 */ swc1 $f0, 4($s0) +/* 3BC0CC E00BE16C 2A420002 */ slti $v0, $s2, 2 +/* 3BC0D0 E00BE170 10400005 */ beqz $v0, .LE00BE188 +/* 3BC0D4 E00BE174 00000000 */ nop +/* 3BC0D8 E00BE178 12400007 */ beqz $s2, .LE00BE198 +/* 3BC0DC E00BE17C 00000000 */ nop +/* 3BC0E0 E00BE180 0802F8B1 */ j .LE00BE2C4 +/* 3BC0E4 E00BE184 00000000 */ nop +.LE00BE188: +/* 3BC0E8 E00BE188 1254002F */ beq $s2, $s4, .LE00BE248 +/* 3BC0EC E00BE18C 00000000 */ nop +/* 3BC0F0 E00BE190 0802F8B1 */ j .LE00BE2C4 +/* 3BC0F4 E00BE194 00000000 */ nop +.LE00BE198: +/* 3BC0F8 E00BE198 0C080138 */ jal func_E02004E0 +/* 3BC0FC E00BE19C 2404000A */ addiu $a0, $zero, 0xa +/* 3BC100 E00BE1A0 2404000A */ addiu $a0, $zero, 0xa +/* 3BC104 E00BE1A4 2442FFFE */ addiu $v0, $v0, -2 +/* 3BC108 E00BE1A8 44820000 */ mtc1 $v0, $f0 +/* 3BC10C E00BE1AC 00000000 */ nop +/* 3BC110 E00BE1B0 46800020 */ cvt.s.w $f0, $f0 +/* 3BC114 E00BE1B4 0C080138 */ jal func_E02004E0 +/* 3BC118 E00BE1B8 E600FFE0 */ swc1 $f0, -0x20($s0) +/* 3BC11C E00BE1BC 2404000A */ addiu $a0, $zero, 0xa +/* 3BC120 E00BE1C0 2442FFFB */ addiu $v0, $v0, -5 +/* 3BC124 E00BE1C4 44820000 */ mtc1 $v0, $f0 +/* 3BC128 E00BE1C8 00000000 */ nop +/* 3BC12C E00BE1CC 46800020 */ cvt.s.w $f0, $f0 +/* 3BC130 E00BE1D0 0C080138 */ jal func_E02004E0 +/* 3BC134 E00BE1D4 E600FFE4 */ swc1 $f0, -0x1c($s0) +/* 3BC138 E00BE1D8 2442FFFB */ addiu $v0, $v0, -5 +/* 3BC13C E00BE1DC 44820000 */ mtc1 $v0, $f0 +/* 3BC140 E00BE1E0 00000000 */ nop +/* 3BC144 E00BE1E4 46800020 */ cvt.s.w $f0, $f0 +/* 3BC148 E00BE1E8 0802F8D4 */ j .LE00BE350 +/* 3BC14C E00BE1EC E600FFE8 */ swc1 $f0, -0x18($s0) +.LE00BE1F0: +/* 3BC150 E00BE1F0 0C080138 */ jal func_E02004E0 +/* 3BC154 E00BE1F4 2404000A */ addiu $a0, $zero, 0xa +/* 3BC158 E00BE1F8 2404000A */ addiu $a0, $zero, 0xa +/* 3BC15C E00BE1FC 02821023 */ subu $v0, $s4, $v0 +/* 3BC160 E00BE200 44820000 */ mtc1 $v0, $f0 +/* 3BC164 E00BE204 00000000 */ nop +/* 3BC168 E00BE208 46800020 */ cvt.s.w $f0, $f0 +/* 3BC16C E00BE20C 0C080138 */ jal func_E02004E0 +/* 3BC170 E00BE210 E600FFE0 */ swc1 $f0, -0x20($s0) +/* 3BC174 E00BE214 2404000A */ addiu $a0, $zero, 0xa +/* 3BC178 E00BE218 2442FFFB */ addiu $v0, $v0, -5 +/* 3BC17C E00BE21C 44820000 */ mtc1 $v0, $f0 +/* 3BC180 E00BE220 00000000 */ nop +/* 3BC184 E00BE224 46800020 */ cvt.s.w $f0, $f0 +/* 3BC188 E00BE228 0C080138 */ jal func_E02004E0 +/* 3BC18C E00BE22C E600FFE4 */ swc1 $f0, -0x1c($s0) +/* 3BC190 E00BE230 2442FFFB */ addiu $v0, $v0, -5 +/* 3BC194 E00BE234 44820000 */ mtc1 $v0, $f0 +/* 3BC198 E00BE238 00000000 */ nop +/* 3BC19C E00BE23C 46800020 */ cvt.s.w $f0, $f0 +/* 3BC1A0 E00BE240 0802F8D4 */ j .LE00BE350 +/* 3BC1A4 E00BE244 E600FFE8 */ swc1 $f0, -0x18($s0) +.LE00BE248: +/* 3BC1A8 E00BE248 0C080138 */ jal func_E02004E0 +/* 3BC1AC E00BE24C 24040064 */ addiu $a0, $zero, 0x64 +/* 3BC1B0 E00BE250 2442FFCE */ addiu $v0, $v0, -0x32 +/* 3BC1B4 E00BE254 44820000 */ mtc1 $v0, $f0 +/* 3BC1B8 E00BE258 00000000 */ nop +/* 3BC1BC E00BE25C 46800020 */ cvt.s.w $f0, $f0 +/* 3BC1C0 E00BE260 46160002 */ mul.s $f0, $f0, $f22 +/* 3BC1C4 E00BE264 00000000 */ nop +/* 3BC1C8 E00BE268 24040064 */ addiu $a0, $zero, 0x64 +/* 3BC1CC E00BE26C 0C080138 */ jal func_E02004E0 +/* 3BC1D0 E00BE270 E600FFE0 */ swc1 $f0, -0x20($s0) +/* 3BC1D4 E00BE274 2442000A */ addiu $v0, $v0, 0xa +/* 3BC1D8 E00BE278 3C013E4C */ lui $at, 0x3e4c +/* 3BC1DC E00BE27C 3421CCCD */ ori $at, $at, 0xcccd +/* 3BC1E0 E00BE280 44811000 */ mtc1 $at, $f2 +/* 3BC1E4 E00BE284 44820000 */ mtc1 $v0, $f0 +/* 3BC1E8 E00BE288 00000000 */ nop +/* 3BC1EC E00BE28C 46800020 */ cvt.s.w $f0, $f0 +/* 3BC1F0 E00BE290 46020002 */ mul.s $f0, $f0, $f2 +/* 3BC1F4 E00BE294 00000000 */ nop +/* 3BC1F8 E00BE298 24040064 */ addiu $a0, $zero, 0x64 +/* 3BC1FC E00BE29C 0C080138 */ jal func_E02004E0 +/* 3BC200 E00BE2A0 E600FFE4 */ swc1 $f0, -0x1c($s0) +/* 3BC204 E00BE2A4 2442FFCE */ addiu $v0, $v0, -0x32 +/* 3BC208 E00BE2A8 44820000 */ mtc1 $v0, $f0 +/* 3BC20C E00BE2AC 00000000 */ nop +/* 3BC210 E00BE2B0 46800020 */ cvt.s.w $f0, $f0 +/* 3BC214 E00BE2B4 46160002 */ mul.s $f0, $f0, $f22 +/* 3BC218 E00BE2B8 00000000 */ nop +/* 3BC21C E00BE2BC 0802F8D4 */ j .LE00BE350 +/* 3BC220 E00BE2C0 E600FFE8 */ swc1 $f0, -0x18($s0) +.LE00BE2C4: +/* 3BC224 E00BE2C4 0C080138 */ jal func_E02004E0 +/* 3BC228 E00BE2C8 2404000A */ addiu $a0, $zero, 0xa +/* 3BC22C E00BE2CC 2442FFFB */ addiu $v0, $v0, -5 +/* 3BC230 E00BE2D0 44820000 */ mtc1 $v0, $f0 +/* 3BC234 E00BE2D4 00000000 */ nop +/* 3BC238 E00BE2D8 46800021 */ cvt.d.w $f0, $f0 +/* 3BC23C E00BE2DC 46340002 */ mul.d $f0, $f0, $f20 +/* 3BC240 E00BE2E0 00000000 */ nop +/* 3BC244 E00BE2E4 2404000A */ addiu $a0, $zero, 0xa +/* 3BC248 E00BE2E8 46200020 */ cvt.s.d $f0, $f0 +/* 3BC24C E00BE2EC 0C080138 */ jal func_E02004E0 +/* 3BC250 E00BE2F0 E600FFE0 */ swc1 $f0, -0x20($s0) +/* 3BC254 E00BE2F4 2442FFFB */ addiu $v0, $v0, -5 +/* 3BC258 E00BE2F8 44820000 */ mtc1 $v0, $f0 +/* 3BC25C E00BE2FC 00000000 */ nop +/* 3BC260 E00BE300 46800021 */ cvt.d.w $f0, $f0 +/* 3BC264 E00BE304 46340002 */ mul.d $f0, $f0, $f20 +/* 3BC268 E00BE308 00000000 */ nop +/* 3BC26C E00BE30C 2404000A */ addiu $a0, $zero, 0xa +/* 3BC270 E00BE310 46200020 */ cvt.s.d $f0, $f0 +/* 3BC274 E00BE314 0C080138 */ jal func_E02004E0 +/* 3BC278 E00BE318 E600FFE4 */ swc1 $f0, -0x1c($s0) +/* 3BC27C E00BE31C 2442FFFB */ addiu $v0, $v0, -5 +/* 3BC280 E00BE320 44820000 */ mtc1 $v0, $f0 +/* 3BC284 E00BE324 00000000 */ nop +/* 3BC288 E00BE328 46800021 */ cvt.d.w $f0, $f0 +/* 3BC28C E00BE32C 46340002 */ mul.d $f0, $f0, $f20 +/* 3BC290 E00BE330 00000000 */ nop +/* 3BC294 E00BE334 3C013ECC */ lui $at, 0x3ecc +/* 3BC298 E00BE338 3421CCCD */ ori $at, $at, 0xcccd +/* 3BC29C E00BE33C 44811000 */ mtc1 $at, $f2 +/* 3BC2A0 E00BE340 AE11FFEC */ sw $s1, -0x14($s0) +/* 3BC2A4 E00BE344 E6020004 */ swc1 $f2, 4($s0) +/* 3BC2A8 E00BE348 46200020 */ cvt.s.d $f0, $f0 +/* 3BC2AC E00BE34C E600FFE8 */ swc1 $f0, -0x18($s0) +.LE00BE350: +/* 3BC2B0 E00BE350 26310001 */ addiu $s1, $s1, 1 +/* 3BC2B4 E00BE354 240200FF */ addiu $v0, $zero, 0xff +/* 3BC2B8 E00BE358 AE020000 */ sw $v0, ($s0) +/* 3BC2BC E00BE35C 8E620008 */ lw $v0, 8($s3) +/* 3BC2C0 E00BE360 0222102A */ slt $v0, $s1, $v0 +/* 3BC2C4 E00BE364 1440FF79 */ bnez $v0, .LE00BE14C +/* 3BC2C8 E00BE368 26100038 */ addiu $s0, $s0, 0x38 +.LE00BE36C: +/* 3BC2CC E00BE36C 0260102D */ daddu $v0, $s3, $zero +/* 3BC2D0 E00BE370 8FBF003C */ lw $ra, 0x3c($sp) +/* 3BC2D4 E00BE374 8FB40038 */ lw $s4, 0x38($sp) +/* 3BC2D8 E00BE378 8FB30034 */ lw $s3, 0x34($sp) +/* 3BC2DC E00BE37C 8FB20030 */ lw $s2, 0x30($sp) +/* 3BC2E0 E00BE380 8FB1002C */ lw $s1, 0x2c($sp) +/* 3BC2E4 E00BE384 8FB00028 */ lw $s0, 0x28($sp) +/* 3BC2E8 E00BE388 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3BC2EC E00BE38C D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3BC2F0 E00BE390 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3BC2F4 E00BE394 03E00008 */ jr $ra +/* 3BC2F8 E00BE398 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3BBF60/func_E00BE39C.s b/asm/nonmatchings/code_3BBF60/func_E00BE39C.s new file mode 100644 index 0000000000..e9476f3007 --- /dev/null +++ b/asm/nonmatchings/code_3BBF60/func_E00BE39C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BE39C +/* 3BC2FC E00BE39C 03E00008 */ jr $ra +/* 3BC300 E00BE3A0 00000000 */ nop diff --git a/asm/nonmatchings/code_3BBF60/func_E00BE3A4.s b/asm/nonmatchings/code_3BBF60/func_E00BE3A4.s new file mode 100644 index 0000000000..ee2b35608b --- /dev/null +++ b/asm/nonmatchings/code_3BBF60/func_E00BE3A4.s @@ -0,0 +1,130 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BE3A4 +/* 3BC304 E00BE3A4 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 3BC308 E00BE3A8 AFBF0010 */ sw $ra, 0x10($sp) +/* 3BC30C E00BE3AC F7B40018 */ sdc1 $f20, 0x18($sp) +/* 3BC310 E00BE3B0 8C850000 */ lw $a1, ($a0) +/* 3BC314 E00BE3B4 8C83000C */ lw $v1, 0xc($a0) +/* 3BC318 E00BE3B8 30A20010 */ andi $v0, $a1, 0x10 +/* 3BC31C E00BE3BC 8C660000 */ lw $a2, ($v1) +/* 3BC320 E00BE3C0 10400005 */ beqz $v0, .LE00BE3D8 +/* 3BC324 E00BE3C4 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3BC328 E00BE3C8 00A21024 */ and $v0, $a1, $v0 +/* 3BC32C E00BE3CC AC820000 */ sw $v0, ($a0) +/* 3BC330 E00BE3D0 24020010 */ addiu $v0, $zero, 0x10 +/* 3BC334 E00BE3D4 AC62001C */ sw $v0, 0x1c($v1) +.LE00BE3D8: +/* 3BC338 E00BE3D8 8C65001C */ lw $a1, 0x1c($v1) +/* 3BC33C E00BE3DC 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3BC340 E00BE3E0 10400002 */ beqz $v0, .LE00BE3EC +/* 3BC344 E00BE3E4 24A2FFFF */ addiu $v0, $a1, -1 +/* 3BC348 E00BE3E8 AC62001C */ sw $v0, 0x1c($v1) +.LE00BE3EC: +/* 3BC34C E00BE3EC 8C620020 */ lw $v0, 0x20($v1) +/* 3BC350 E00BE3F0 8C65001C */ lw $a1, 0x1c($v1) +/* 3BC354 E00BE3F4 24420001 */ addiu $v0, $v0, 1 +/* 3BC358 E00BE3F8 04A10005 */ bgez $a1, .LE00BE410 +/* 3BC35C E00BE3FC AC620020 */ sw $v0, 0x20($v1) +/* 3BC360 E00BE400 0C080128 */ jal func_E02004A0 +/* 3BC364 E00BE404 00000000 */ nop +/* 3BC368 E00BE408 0802F95A */ j .LE00BE568 +/* 3BC36C E00BE40C 00000000 */ nop +.LE00BE410: +/* 3BC370 E00BE410 28A20004 */ slti $v0, $a1, 4 +/* 3BC374 E00BE414 10400002 */ beqz $v0, .LE00BE420 +/* 3BC378 E00BE418 00051180 */ sll $v0, $a1, 6 +/* 3BC37C E00BE41C AC620030 */ sw $v0, 0x30($v1) +.LE00BE420: +/* 3BC380 E00BE420 8C820008 */ lw $v0, 8($a0) +/* 3BC384 E00BE424 24050001 */ addiu $a1, $zero, 1 +/* 3BC388 E00BE428 00A2102A */ slt $v0, $a1, $v0 +/* 3BC38C E00BE42C 1040004E */ beqz $v0, .LE00BE568 +/* 3BC390 E00BE430 24630038 */ addiu $v1, $v1, 0x38 +/* 3BC394 E00BE434 24080002 */ addiu $t0, $zero, 2 +/* 3BC398 E00BE438 24070003 */ addiu $a3, $zero, 3 +/* 3BC39C E00BE43C 24630034 */ addiu $v1, $v1, 0x34 +/* 3BC3A0 E00BE440 3C01E00C */ lui $at, %hi(D_E00BEB00) +/* 3BC3A4 E00BE444 D42AEB00 */ ldc1 $f10, %lo(D_E00BEB00)($at) +/* 3BC3A8 E00BE448 3C01E00C */ lui $at, %hi(D_E00BEB08) +/* 3BC3AC E00BE44C D432EB08 */ ldc1 $f18, %lo(D_E00BEB08)($at) +/* 3BC3B0 E00BE450 3C01E00C */ lui $at, %hi(D_E00BEB10) +/* 3BC3B4 E00BE454 D430EB10 */ ldc1 $f16, %lo(D_E00BEB10)($at) +/* 3BC3B8 E00BE458 3C01E00C */ lui $at, %hi(D_E00BEB18) +/* 3BC3BC E00BE45C D42EEB18 */ ldc1 $f14, %lo(D_E00BEB18)($at) +/* 3BC3C0 E00BE460 3C01E00C */ lui $at, %hi(D_E00BEB20) +/* 3BC3C4 E00BE464 D42CEB20 */ ldc1 $f12, %lo(D_E00BEB20)($at) +.LE00BE468: +/* 3BC3C8 E00BE468 C464FFFC */ lwc1 $f4, -4($v1) +/* 3BC3CC E00BE46C 46802121 */ cvt.d.w $f4, $f4 +/* 3BC3D0 E00BE470 462A2102 */ mul.d $f4, $f4, $f10 +/* 3BC3D4 E00BE474 00000000 */ nop +/* 3BC3D8 E00BE478 C468FFD0 */ lwc1 $f8, -0x30($v1) +/* 3BC3DC E00BE47C C460FFDC */ lwc1 $f0, -0x24($v1) +/* 3BC3E0 E00BE480 C466FFD4 */ lwc1 $f6, -0x2c($v1) +/* 3BC3E4 E00BE484 46004200 */ add.s $f8, $f8, $f0 +/* 3BC3E8 E00BE488 C460FFE0 */ lwc1 $f0, -0x20($v1) +/* 3BC3EC E00BE48C C462FFD8 */ lwc1 $f2, -0x28($v1) +/* 3BC3F0 E00BE490 46003180 */ add.s $f6, $f6, $f0 +/* 3BC3F4 E00BE494 C460FFE4 */ lwc1 $f0, -0x1c($v1) +/* 3BC3F8 E00BE498 46001080 */ add.s $f2, $f2, $f0 +/* 3BC3FC E00BE49C E468FFD0 */ swc1 $f8, -0x30($v1) +/* 3BC400 E00BE4A0 E466FFD4 */ swc1 $f6, -0x2c($v1) +/* 3BC404 E00BE4A4 E462FFD8 */ swc1 $f2, -0x28($v1) +/* 3BC408 E00BE4A8 4620250D */ trunc.w.d $f20, $f4 +/* 3BC40C E00BE4AC 14C80006 */ bne $a2, $t0, .LE00BE4C8 +/* 3BC410 E00BE4B0 E474FFFC */ swc1 $f20, -4($v1) +/* 3BC414 E00BE4B4 C460FFE0 */ lwc1 $f0, -0x20($v1) +/* 3BC418 E00BE4B8 46000021 */ cvt.d.s $f0, $f0 +/* 3BC41C E00BE4BC 46320000 */ add.d $f0, $f0, $f18 +/* 3BC420 E00BE4C0 46200020 */ cvt.s.d $f0, $f0 +/* 3BC424 E00BE4C4 E460FFE0 */ swc1 $f0, -0x20($v1) +.LE00BE4C8: +/* 3BC428 E00BE4C8 C464FFDC */ lwc1 $f4, -0x24($v1) +/* 3BC42C E00BE4CC 46002121 */ cvt.d.s $f4, $f4 +/* 3BC430 E00BE4D0 462A2102 */ mul.d $f4, $f4, $f10 +/* 3BC434 E00BE4D4 00000000 */ nop +/* 3BC438 E00BE4D8 C462FFE4 */ lwc1 $f2, -0x1c($v1) +/* 3BC43C E00BE4DC 460010A1 */ cvt.d.s $f2, $f2 +/* 3BC440 E00BE4E0 462A1082 */ mul.d $f2, $f2, $f10 +/* 3BC444 E00BE4E4 00000000 */ nop +/* 3BC448 E00BE4E8 C460FFE0 */ lwc1 $f0, -0x20($v1) +/* 3BC44C E00BE4EC 46000021 */ cvt.d.s $f0, $f0 +/* 3BC450 E00BE4F0 46300000 */ add.d $f0, $f0, $f16 +/* 3BC454 E00BE4F4 46200020 */ cvt.s.d $f0, $f0 +/* 3BC458 E00BE4F8 E460FFE0 */ swc1 $f0, -0x20($v1) +/* 3BC45C E00BE4FC 46000021 */ cvt.d.s $f0, $f0 +/* 3BC460 E00BE500 462A0002 */ mul.d $f0, $f0, $f10 +/* 3BC464 E00BE504 00000000 */ nop +/* 3BC468 E00BE508 46202120 */ cvt.s.d $f4, $f4 +/* 3BC46C E00BE50C 462010A0 */ cvt.s.d $f2, $f2 +/* 3BC470 E00BE510 E464FFDC */ swc1 $f4, -0x24($v1) +/* 3BC474 E00BE514 E462FFE4 */ swc1 $f2, -0x1c($v1) +/* 3BC478 E00BE518 46200020 */ cvt.s.d $f0, $f0 +/* 3BC47C E00BE51C 14C70007 */ bne $a2, $a3, .LE00BE53C +/* 3BC480 E00BE520 E460FFE0 */ swc1 $f0, -0x20($v1) +/* 3BC484 E00BE524 C4600000 */ lwc1 $f0, ($v1) +/* 3BC488 E00BE528 46000021 */ cvt.d.s $f0, $f0 +/* 3BC48C E00BE52C 462E0002 */ mul.d $f0, $f0, $f14 +/* 3BC490 E00BE530 00000000 */ nop +/* 3BC494 E00BE534 0802F954 */ j .LE00BE550 +/* 3BC498 E00BE538 46200020 */ cvt.s.d $f0, $f0 +.LE00BE53C: +/* 3BC49C E00BE53C C4600000 */ lwc1 $f0, ($v1) +/* 3BC4A0 E00BE540 46000021 */ cvt.d.s $f0, $f0 +/* 3BC4A4 E00BE544 462C0002 */ mul.d $f0, $f0, $f12 +/* 3BC4A8 E00BE548 00000000 */ nop +/* 3BC4AC E00BE54C 46200020 */ cvt.s.d $f0, $f0 +.LE00BE550: +/* 3BC4B0 E00BE550 E4600000 */ swc1 $f0, ($v1) +/* 3BC4B4 E00BE554 24A50001 */ addiu $a1, $a1, 1 +/* 3BC4B8 E00BE558 8C820008 */ lw $v0, 8($a0) +/* 3BC4BC E00BE55C 00A2102A */ slt $v0, $a1, $v0 +/* 3BC4C0 E00BE560 1440FFC1 */ bnez $v0, .LE00BE468 +/* 3BC4C4 E00BE564 24630038 */ addiu $v1, $v1, 0x38 +.LE00BE568: +/* 3BC4C8 E00BE568 8FBF0010 */ lw $ra, 0x10($sp) +/* 3BC4CC E00BE56C D7B40018 */ ldc1 $f20, 0x18($sp) +/* 3BC4D0 E00BE570 03E00008 */ jr $ra +/* 3BC4D4 E00BE574 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/asm/nonmatchings/code_3BBF60/func_E00BE578.s b/asm/nonmatchings/code_3BBF60/func_E00BE578.s new file mode 100644 index 0000000000..678c7620b2 --- /dev/null +++ b/asm/nonmatchings/code_3BBF60/func_E00BE578.s @@ -0,0 +1,19 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BE578 +/* 3BC4D8 E00BE578 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3BC4DC E00BE57C 3C02E00C */ lui $v0, %hi(D_E00BE5BC) +/* 3BC4E0 E00BE580 2442E5BC */ addiu $v0, $v0, %lo(D_E00BE5BC) +/* 3BC4E4 E00BE584 AFA2001C */ sw $v0, 0x1c($sp) +/* 3BC4E8 E00BE588 2402000A */ addiu $v0, $zero, 0xa +/* 3BC4EC E00BE58C AFA20014 */ sw $v0, 0x14($sp) +/* 3BC4F0 E00BE590 2402002D */ addiu $v0, $zero, 0x2d +/* 3BC4F4 E00BE594 AFA40018 */ sw $a0, 0x18($sp) +/* 3BC4F8 E00BE598 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BC4FC E00BE59C AFBF0020 */ sw $ra, 0x20($sp) +/* 3BC500 E00BE5A0 0C080120 */ jal func_E0200480 +/* 3BC504 E00BE5A4 AFA20010 */ sw $v0, 0x10($sp) +/* 3BC508 E00BE5A8 8FBF0020 */ lw $ra, 0x20($sp) +/* 3BC50C E00BE5AC 03E00008 */ jr $ra +/* 3BC510 E00BE5B0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3BBF60/func_E00BE5B4.s b/asm/nonmatchings/code_3BBF60/func_E00BE5B4.s new file mode 100644 index 0000000000..0ad97b7956 --- /dev/null +++ b/asm/nonmatchings/code_3BBF60/func_E00BE5B4.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BE5B4 +/* 3BC514 E00BE5B4 03E00008 */ jr $ra +/* 3BC518 E00BE5B8 00000000 */ nop diff --git a/asm/nonmatchings/code_3BBF60/func_E00BE5BC.s b/asm/nonmatchings/code_3BBF60/func_E00BE5BC.s new file mode 100644 index 0000000000..57f44bfde1 --- /dev/null +++ b/asm/nonmatchings/code_3BBF60/func_E00BE5BC.s @@ -0,0 +1,343 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00BE5BC +/* 3BC51C E00BE5BC 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 3BC520 E00BE5C0 3C05DB06 */ lui $a1, 0xdb06 +/* 3BC524 E00BE5C4 34A50024 */ ori $a1, $a1, 0x24 +/* 3BC528 E00BE5C8 AFA400C0 */ sw $a0, 0xc0($sp) +/* 3BC52C E00BE5CC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BC530 E00BE5D0 AFB1009C */ sw $s1, 0x9c($sp) +/* 3BC534 E00BE5D4 3C110001 */ lui $s1, 1 +/* 3BC538 E00BE5D8 36311630 */ ori $s1, $s1, 0x1630 +/* 3BC53C E00BE5DC AFB300A4 */ sw $s3, 0xa4($sp) +/* 3BC540 E00BE5E0 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3BC544 E00BE5E4 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3BC548 E00BE5E8 AFBF00BC */ sw $ra, 0xbc($sp) +/* 3BC54C E00BE5EC AFBE00B8 */ sw $fp, 0xb8($sp) +/* 3BC550 E00BE5F0 AFB700B4 */ sw $s7, 0xb4($sp) +/* 3BC554 E00BE5F4 AFB600B0 */ sw $s6, 0xb0($sp) +/* 3BC558 E00BE5F8 AFB500AC */ sw $s5, 0xac($sp) +/* 3BC55C E00BE5FC AFB400A8 */ sw $s4, 0xa8($sp) +/* 3BC560 E00BE600 AFB200A0 */ sw $s2, 0xa0($sp) +/* 3BC564 E00BE604 AFB00098 */ sw $s0, 0x98($sp) +/* 3BC568 E00BE608 8E670000 */ lw $a3, ($s3) +/* 3BC56C E00BE60C 8FAC00C0 */ lw $t4, 0xc0($sp) +/* 3BC570 E00BE610 00E0182D */ daddu $v1, $a3, $zero +/* 3BC574 E00BE614 8D92000C */ lw $s2, 0xc($t4) +/* 3BC578 E00BE618 24E70008 */ addiu $a3, $a3, 8 +/* 3BC57C E00BE61C AE670000 */ sw $a3, ($s3) +/* 3BC580 E00BE620 8E4C0030 */ lw $t4, 0x30($s2) +/* 3BC584 E00BE624 24160001 */ addiu $s6, $zero, 1 +/* 3BC588 E00BE628 AFAC0090 */ sw $t4, 0x90($sp) +/* 3BC58C E00BE62C C6400004 */ lwc1 $f0, 4($s2) +/* 3BC590 E00BE630 C6420008 */ lwc1 $f2, 8($s2) +/* 3BC594 E00BE634 3C02E700 */ lui $v0, 0xe700 +/* 3BC598 E00BE638 AC620000 */ sw $v0, ($v1) +/* 3BC59C E00BE63C 24E20008 */ addiu $v0, $a3, 8 +/* 3BC5A0 E00BE640 AC600004 */ sw $zero, 4($v1) +/* 3BC5A4 E00BE644 AE620000 */ sw $v0, ($s3) +/* 3BC5A8 E00BE648 ACE50000 */ sw $a1, ($a3) +/* 3BC5AC E00BE64C 4600010D */ trunc.w.s $f4, $f0 +/* 3BC5B0 E00BE650 E7A40094 */ swc1 $f4, 0x94($sp) +/* 3BC5B4 E00BE654 C7A40094 */ lwc1 $f4, 0x94($sp) +/* 3BC5B8 E00BE658 46802120 */ cvt.s.w $f4, $f4 +/* 3BC5BC E00BE65C 44052000 */ mfc1 $a1, $f4 +/* 3BC5C0 E00BE660 4600110D */ trunc.w.s $f4, $f2 +/* 3BC5C4 E00BE664 441E2000 */ mfc1 $fp, $f4 +/* 3BC5C8 E00BE668 8FAC00C0 */ lw $t4, 0xc0($sp) +/* 3BC5CC E00BE66C 3C038000 */ lui $v1, 0x8000 +/* 3BC5D0 E00BE670 8D820010 */ lw $v0, 0x10($t4) +/* 3BC5D4 E00BE674 449E2000 */ mtc1 $fp, $f4 +/* 3BC5D8 E00BE678 00000000 */ nop +/* 3BC5DC E00BE67C 46802120 */ cvt.s.w $f4, $f4 +/* 3BC5E0 E00BE680 8C42001C */ lw $v0, 0x1c($v0) +/* 3BC5E4 E00BE684 44062000 */ mfc1 $a2, $f4 +/* 3BC5E8 E00BE688 00431021 */ addu $v0, $v0, $v1 +/* 3BC5EC E00BE68C 3C03800B */ lui $v1, %hi(gCameras) +/* 3BC5F0 E00BE690 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3BC5F4 E00BE694 ACE20004 */ sw $v0, 4($a3) +/* 3BC5F8 E00BE698 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3BC5FC E00BE69C 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3BC600 E00BE6A0 8E47000C */ lw $a3, 0xc($s2) +/* 3BC604 E00BE6A4 00028080 */ sll $s0, $v0, 2 +/* 3BC608 E00BE6A8 02028021 */ addu $s0, $s0, $v0 +/* 3BC60C E00BE6AC 00108080 */ sll $s0, $s0, 2 +/* 3BC610 E00BE6B0 02028023 */ subu $s0, $s0, $v0 +/* 3BC614 E00BE6B4 001010C0 */ sll $v0, $s0, 3 +/* 3BC618 E00BE6B8 02028021 */ addu $s0, $s0, $v0 +/* 3BC61C E00BE6BC 001080C0 */ sll $s0, $s0, 3 +/* 3BC620 E00BE6C0 0C080108 */ jal func_E0200420 +/* 3BC624 E00BE6C4 02038021 */ addu $s0, $s0, $v1 +/* 3BC628 E00BE6C8 27B40050 */ addiu $s4, $sp, 0x50 +/* 3BC62C E00BE6CC 8E450034 */ lw $a1, 0x34($s2) +/* 3BC630 E00BE6D0 0280202D */ daddu $a0, $s4, $zero +/* 3BC634 E00BE6D4 00A0302D */ daddu $a2, $a1, $zero +/* 3BC638 E00BE6D8 0C080110 */ jal func_E0200440 +/* 3BC63C E00BE6DC 00A0382D */ daddu $a3, $a1, $zero +/* 3BC640 E00BE6E0 0280202D */ daddu $a0, $s4, $zero +/* 3BC644 E00BE6E4 27A50010 */ addiu $a1, $sp, 0x10 +/* 3BC648 E00BE6E8 0C080114 */ jal func_E0200450 +/* 3BC64C E00BE6EC 00A0302D */ daddu $a2, $a1, $zero +/* 3BC650 E00BE6F0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BC654 E00BE6F4 3C158007 */ lui $s5, %hi(D_800741F0) +/* 3BC658 E00BE6F8 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 3BC65C E00BE6FC 3C17800A */ lui $s7, %hi(D_8009A674) +/* 3BC660 E00BE700 26F7A674 */ addiu $s7, $s7, %lo(D_8009A674) +/* 3BC664 E00BE704 96A50000 */ lhu $a1, ($s5) +/* 3BC668 E00BE708 8EE20000 */ lw $v0, ($s7) +/* 3BC66C E00BE70C 00052980 */ sll $a1, $a1, 6 +/* 3BC670 E00BE710 00B12821 */ addu $a1, $a1, $s1 +/* 3BC674 E00BE714 0C080118 */ jal func_E0200460 +/* 3BC678 E00BE718 00452821 */ addu $a1, $v0, $a1 +/* 3BC67C E00BE71C 3C03DA38 */ lui $v1, 0xda38 +/* 3BC680 E00BE720 34630002 */ ori $v1, $v1, 2 +/* 3BC684 E00BE724 3C06DA38 */ lui $a2, 0xda38 +/* 3BC688 E00BE728 00D63025 */ or $a2, $a2, $s6 +/* 3BC68C E00BE72C 8E640000 */ lw $a0, ($s3) +/* 3BC690 E00BE730 96A20000 */ lhu $v0, ($s5) +/* 3BC694 E00BE734 0080282D */ daddu $a1, $a0, $zero +/* 3BC698 E00BE738 24840008 */ addiu $a0, $a0, 8 +/* 3BC69C E00BE73C AE640000 */ sw $a0, ($s3) +/* 3BC6A0 E00BE740 ACA30000 */ sw $v1, ($a1) +/* 3BC6A4 E00BE744 00561821 */ addu $v1, $v0, $s6 +/* 3BC6A8 E00BE748 3042FFFF */ andi $v0, $v0, 0xffff +/* 3BC6AC E00BE74C 00021180 */ sll $v0, $v0, 6 +/* 3BC6B0 E00BE750 A6A30000 */ sh $v1, ($s5) +/* 3BC6B4 E00BE754 8EE30000 */ lw $v1, ($s7) +/* 3BC6B8 E00BE758 00511021 */ addu $v0, $v0, $s1 +/* 3BC6BC E00BE75C 00621821 */ addu $v1, $v1, $v0 +/* 3BC6C0 E00BE760 24820008 */ addiu $v0, $a0, 8 +/* 3BC6C4 E00BE764 ACA30004 */ sw $v1, 4($a1) +/* 3BC6C8 E00BE768 AE620000 */ sw $v0, ($s3) +/* 3BC6CC E00BE76C AC860000 */ sw $a2, ($a0) +/* 3BC6D0 E00BE770 8E030204 */ lw $v1, 0x204($s0) +/* 3BC6D4 E00BE774 3C02DE00 */ lui $v0, 0xde00 +/* 3BC6D8 E00BE778 AC820008 */ sw $v0, 8($a0) +/* 3BC6DC E00BE77C 3C020900 */ lui $v0, 0x900 +/* 3BC6E0 E00BE780 24420100 */ addiu $v0, $v0, 0x100 +/* 3BC6E4 E00BE784 AC82000C */ sw $v0, 0xc($a0) +/* 3BC6E8 E00BE788 AC830004 */ sw $v1, 4($a0) +/* 3BC6EC E00BE78C 8FAC00C0 */ lw $t4, 0xc0($sp) +/* 3BC6F0 E00BE790 26520038 */ addiu $s2, $s2, 0x38 +/* 3BC6F4 E00BE794 8D820008 */ lw $v0, 8($t4) +/* 3BC6F8 E00BE798 24840010 */ addiu $a0, $a0, 0x10 +/* 3BC6FC E00BE79C 02C2102A */ slt $v0, $s6, $v0 +/* 3BC700 E00BE7A0 104000BB */ beqz $v0, .LE00BEA90 +/* 3BC704 E00BE7A4 AE640000 */ sw $a0, ($s3) +/* 3BC708 E00BE7A8 0260882D */ daddu $s1, $s3, $zero +/* 3BC70C E00BE7AC 3C130001 */ lui $s3, 1 +/* 3BC710 E00BE7B0 36731630 */ ori $s3, $s3, 0x1630 +/* 3BC714 E00BE7B4 26500030 */ addiu $s0, $s2, 0x30 +.LE00BE7B8: +/* 3BC718 E00BE7B8 C600FFD4 */ lwc1 $f0, -0x2c($s0) +/* 3BC71C E00BE7BC 4600010D */ trunc.w.s $f4, $f0 +/* 3BC720 E00BE7C0 44022000 */ mfc1 $v0, $f4 +/* 3BC724 E00BE7C4 8FAC0094 */ lw $t4, 0x94($sp) +/* 3BC728 E00BE7C8 C600FFD8 */ lwc1 $f0, -0x28($s0) +/* 3BC72C E00BE7CC 004C5021 */ addu $t2, $v0, $t4 +/* 3BC730 E00BE7D0 4600010D */ trunc.w.s $f4, $f0 +/* 3BC734 E00BE7D4 44022000 */ mfc1 $v0, $f4 +/* 3BC738 E00BE7D8 05410004 */ bgez $t2, .LE00BE7EC +/* 3BC73C E00BE7DC 005E5821 */ addu $t3, $v0, $fp +/* 3BC740 E00BE7E0 3142007F */ andi $v0, $t2, 0x7f +/* 3BC744 E00BE7E4 0802F9FC */ j .LE00BE7F0 +/* 3BC748 E00BE7E8 00025023 */ negu $t2, $v0 +.LE00BE7EC: +/* 3BC74C E00BE7EC 314A007F */ andi $t2, $t2, 0x7f +.LE00BE7F0: +/* 3BC750 E00BE7F0 19600003 */ blez $t3, .LE00BE800 +/* 3BC754 E00BE7F4 3162003F */ andi $v0, $t3, 0x3f +/* 3BC758 E00BE7F8 0802FA01 */ j .LE00BE804 +/* 3BC75C E00BE7FC 00025823 */ negu $t3, $v0 +.LE00BE800: +/* 3BC760 E00BE800 316B003F */ andi $t3, $t3, 0x3f +.LE00BE804: +/* 3BC764 E00BE804 3C02FD10 */ lui $v0, 0xfd10 +/* 3BC768 E00BE808 3442013F */ ori $v0, $v0, 0x13f +/* 3BC76C E00BE80C 3C07F510 */ lui $a3, 0xf510 +/* 3BC770 E00BE810 34E71100 */ ori $a3, $a3, 0x1100 +/* 3BC774 E00BE814 3C050701 */ lui $a1, 0x701 +/* 3BC778 E00BE818 34A54050 */ ori $a1, $a1, 0x4050 +/* 3BC77C E00BE81C 3C090101 */ lui $t1, 0x101 +/* 3BC780 E00BE820 35294050 */ ori $t1, $t1, 0x4050 +/* 3BC784 E00BE824 3C038000 */ lui $v1, 0x8000 +/* 3BC788 E00BE828 25660078 */ addiu $a2, $t3, 0x78 +/* 3BC78C E00BE82C 00063080 */ sll $a2, $a2, 2 +/* 3BC790 E00BE830 8E280000 */ lw $t0, ($s1) +/* 3BC794 E00BE834 30C60FFF */ andi $a2, $a2, 0xfff +/* 3BC798 E00BE838 0100202D */ daddu $a0, $t0, $zero +/* 3BC79C E00BE83C AC820000 */ sw $v0, ($a0) +/* 3BC7A0 E00BE840 3C02800A */ lui $v0, %hi(D_8009A64C) +/* 3BC7A4 E00BE844 8C42A64C */ lw $v0, %lo(D_8009A64C)($v0) +/* 3BC7A8 E00BE848 25080008 */ addiu $t0, $t0, 8 +/* 3BC7AC E00BE84C 00431021 */ addu $v0, $v0, $v1 +/* 3BC7B0 E00BE850 AC820004 */ sw $v0, 4($a0) +/* 3BC7B4 E00BE854 3C02E600 */ lui $v0, 0xe600 +/* 3BC7B8 E00BE858 AD050004 */ sw $a1, 4($t0) +/* 3BC7BC E00BE85C 254500A0 */ addiu $a1, $t2, 0xa0 +/* 3BC7C0 E00BE860 00052880 */ sll $a1, $a1, 2 +/* 3BC7C4 E00BE864 30A50FFF */ andi $a1, $a1, 0xfff +/* 3BC7C8 E00BE868 00052B00 */ sll $a1, $a1, 0xc +/* 3BC7CC E00BE86C AD020008 */ sw $v0, 8($t0) +/* 3BC7D0 E00BE870 3C02F400 */ lui $v0, 0xf400 +/* 3BC7D4 E00BE874 00C21025 */ or $v0, $a2, $v0 +/* 3BC7D8 E00BE878 00A21025 */ or $v0, $a1, $v0 +/* 3BC7DC E00BE87C 254400BF */ addiu $a0, $t2, 0xbf +/* 3BC7E0 E00BE880 00042080 */ sll $a0, $a0, 2 +/* 3BC7E4 E00BE884 30840FFF */ andi $a0, $a0, 0xfff +/* 3BC7E8 E00BE888 00042300 */ sll $a0, $a0, 0xc +/* 3BC7EC E00BE88C 25630097 */ addiu $v1, $t3, 0x97 +/* 3BC7F0 E00BE890 00031880 */ sll $v1, $v1, 2 +/* 3BC7F4 E00BE894 30630FFF */ andi $v1, $v1, 0xfff +/* 3BC7F8 E00BE898 AD020010 */ sw $v0, 0x10($t0) +/* 3BC7FC E00BE89C 3C020700 */ lui $v0, 0x700 +/* 3BC800 E00BE8A0 00621025 */ or $v0, $v1, $v0 +/* 3BC804 E00BE8A4 00821025 */ or $v0, $a0, $v0 +/* 3BC808 E00BE8A8 AD020014 */ sw $v0, 0x14($t0) +/* 3BC80C E00BE8AC 3C02E700 */ lui $v0, 0xe700 +/* 3BC810 E00BE8B0 AD020018 */ sw $v0, 0x18($t0) +/* 3BC814 E00BE8B4 3C02F200 */ lui $v0, 0xf200 +/* 3BC818 E00BE8B8 00C23025 */ or $a2, $a2, $v0 +/* 3BC81C E00BE8BC 00A62825 */ or $a1, $a1, $a2 +/* 3BC820 E00BE8C0 3C020100 */ lui $v0, 0x100 +/* 3BC824 E00BE8C4 00621825 */ or $v1, $v1, $v0 +/* 3BC828 E00BE8C8 00832025 */ or $a0, $a0, $v1 +/* 3BC82C E00BE8CC AD04002C */ sw $a0, 0x2c($t0) +/* 3BC830 E00BE8D0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BC834 E00BE8D4 AD070000 */ sw $a3, ($t0) +/* 3BC838 E00BE8D8 AD00000C */ sw $zero, 0xc($t0) +/* 3BC83C E00BE8DC AD00001C */ sw $zero, 0x1c($t0) +/* 3BC840 E00BE8E0 AD070020 */ sw $a3, 0x20($t0) +/* 3BC844 E00BE8E4 AD090024 */ sw $t1, 0x24($t0) +/* 3BC848 E00BE8E8 AD050028 */ sw $a1, 0x28($t0) +/* 3BC84C E00BE8EC 8E05FFD4 */ lw $a1, -0x2c($s0) +/* 3BC850 E00BE8F0 8E06FFD8 */ lw $a2, -0x28($s0) +/* 3BC854 E00BE8F4 8E07FFDC */ lw $a3, -0x24($s0) +/* 3BC858 E00BE8F8 25020008 */ addiu $v0, $t0, 8 +/* 3BC85C E00BE8FC AE280000 */ sw $t0, ($s1) +/* 3BC860 E00BE900 AE220000 */ sw $v0, ($s1) +/* 3BC864 E00BE904 25020010 */ addiu $v0, $t0, 0x10 +/* 3BC868 E00BE908 AE220000 */ sw $v0, ($s1) +/* 3BC86C E00BE90C 25020018 */ addiu $v0, $t0, 0x18 +/* 3BC870 E00BE910 AE220000 */ sw $v0, ($s1) +/* 3BC874 E00BE914 25020020 */ addiu $v0, $t0, 0x20 +/* 3BC878 E00BE918 AE220000 */ sw $v0, ($s1) +/* 3BC87C E00BE91C 25020028 */ addiu $v0, $t0, 0x28 +/* 3BC880 E00BE920 25080030 */ addiu $t0, $t0, 0x30 +/* 3BC884 E00BE924 AE220000 */ sw $v0, ($s1) +/* 3BC888 E00BE928 0C080108 */ jal func_E0200420 +/* 3BC88C E00BE92C AE280000 */ sw $t0, ($s1) +/* 3BC890 E00BE930 8E050004 */ lw $a1, 4($s0) +/* 3BC894 E00BE934 0280202D */ daddu $a0, $s4, $zero +/* 3BC898 E00BE938 00A0302D */ daddu $a2, $a1, $zero +/* 3BC89C E00BE93C 0C080110 */ jal func_E0200440 +/* 3BC8A0 E00BE940 00A0382D */ daddu $a3, $a1, $zero +/* 3BC8A4 E00BE944 0280202D */ daddu $a0, $s4, $zero +/* 3BC8A8 E00BE948 27A50010 */ addiu $a1, $sp, 0x10 +/* 3BC8AC E00BE94C 0C080114 */ jal func_E0200450 +/* 3BC8B0 E00BE950 00A0302D */ daddu $a2, $a1, $zero +/* 3BC8B4 E00BE954 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BC8B8 E00BE958 96A50000 */ lhu $a1, ($s5) +/* 3BC8BC E00BE95C 8EE20000 */ lw $v0, ($s7) +/* 3BC8C0 E00BE960 00052980 */ sll $a1, $a1, 6 +/* 3BC8C4 E00BE964 00B32821 */ addu $a1, $a1, $s3 +/* 3BC8C8 E00BE968 0C080118 */ jal func_E0200460 +/* 3BC8CC E00BE96C 00452821 */ addu $a1, $v0, $a1 +/* 3BC8D0 E00BE970 3C088080 */ lui $t0, 0x8080 +/* 3BC8D4 E00BE974 35088081 */ ori $t0, $t0, 0x8081 +/* 3BC8D8 E00BE978 3C09C8FF */ lui $t1, 0xc8ff +/* 3BC8DC E00BE97C 3529FF00 */ ori $t1, $t1, 0xff00 +/* 3BC8E0 E00BE980 3C070020 */ lui $a3, 0x20 +/* 3BC8E4 E00BE984 34E72000 */ ori $a3, $a3, 0x2000 +/* 3BC8E8 E00BE988 3C0AD838 */ lui $t2, 0xd838 +/* 3BC8EC E00BE98C 3C02DA38 */ lui $v0, 0xda38 +/* 3BC8F0 E00BE990 8E240000 */ lw $a0, ($s1) +/* 3BC8F4 E00BE994 96A50000 */ lhu $a1, ($s5) +/* 3BC8F8 E00BE998 0080302D */ daddu $a2, $a0, $zero +/* 3BC8FC E00BE99C 24840008 */ addiu $a0, $a0, 8 +/* 3BC900 E00BE9A0 ACC20000 */ sw $v0, ($a2) +/* 3BC904 E00BE9A4 30A2FFFF */ andi $v0, $a1, 0xffff +/* 3BC908 E00BE9A8 00021180 */ sll $v0, $v0, 6 +/* 3BC90C E00BE9AC 8EE30000 */ lw $v1, ($s7) +/* 3BC910 E00BE9B0 00531021 */ addu $v0, $v0, $s3 +/* 3BC914 E00BE9B4 00621821 */ addu $v1, $v1, $v0 +/* 3BC918 E00BE9B8 3C02FA00 */ lui $v0, 0xfa00 +/* 3BC91C E00BE9BC ACC30004 */ sw $v1, 4($a2) +/* 3BC920 E00BE9C0 AC820000 */ sw $v0, ($a0) +/* 3BC924 E00BE9C4 8E030000 */ lw $v1, ($s0) +/* 3BC928 E00BE9C8 24A50001 */ addiu $a1, $a1, 1 +/* 3BC92C E00BE9CC AE240000 */ sw $a0, ($s1) +/* 3BC930 E00BE9D0 A6A50000 */ sh $a1, ($s5) +/* 3BC934 E00BE9D4 8FAC0090 */ lw $t4, 0x90($sp) +/* 3BC938 E00BE9D8 354A0002 */ ori $t2, $t2, 2 +/* 3BC93C E00BE9DC 01830018 */ mult $t4, $v1 +/* 3BC940 E00BE9E0 24820008 */ addiu $v0, $a0, 8 +/* 3BC944 E00BE9E4 AE220000 */ sw $v0, ($s1) +/* 3BC948 E00BE9E8 24820010 */ addiu $v0, $a0, 0x10 +/* 3BC94C E00BE9EC AE220000 */ sw $v0, ($s1) +/* 3BC950 E00BE9F0 00001812 */ mflo $v1 +/* 3BC954 E00BE9F4 3C02FB00 */ lui $v0, 0xfb00 +/* 3BC958 E00BE9F8 AC820008 */ sw $v0, 8($a0) +/* 3BC95C E00BE9FC 00680018 */ mult $v1, $t0 +/* 3BC960 E00BEA00 3C02DE00 */ lui $v0, 0xde00 +/* 3BC964 E00BEA04 AC87000C */ sw $a3, 0xc($a0) +/* 3BC968 E00BEA08 AC820010 */ sw $v0, 0x10($a0) +/* 3BC96C E00BEA0C 3C0CE00C */ lui $t4, %hi(D_E00BEAF0) +/* 3BC970 E00BEA10 258CEAF0 */ addiu $t4, $t4, %lo(D_E00BEAF0) +/* 3BC974 E00BEA14 00004010 */ mfhi $t0 +/* 3BC978 E00BEA18 01031021 */ addu $v0, $t0, $v1 +/* 3BC97C E00BEA1C 000211C3 */ sra $v0, $v0, 7 +/* 3BC980 E00BEA20 00031FC3 */ sra $v1, $v1, 0x1f +/* 3BC984 E00BEA24 00431023 */ subu $v0, $v0, $v1 +/* 3BC988 E00BEA28 304200FF */ andi $v0, $v0, 0xff +/* 3BC98C E00BEA2C 3C038007 */ lui $v1, %hi(gGameStatusPtr) +/* 3BC990 E00BEA30 8C63419C */ lw $v1, %lo(gGameStatusPtr)($v1) +/* 3BC994 E00BEA34 00491025 */ or $v0, $v0, $t1 +/* 3BC998 E00BEA38 AC820004 */ sw $v0, 4($a0) +/* 3BC99C E00BEA3C 94620134 */ lhu $v0, 0x134($v1) +/* 3BC9A0 E00BEA40 24830018 */ addiu $v1, $a0, 0x18 +/* 3BC9A4 E00BEA44 AE230000 */ sw $v1, ($s1) +/* 3BC9A8 E00BEA48 00021042 */ srl $v0, $v0, 1 +/* 3BC9AC E00BEA4C 02C21021 */ addu $v0, $s6, $v0 +/* 3BC9B0 E00BEA50 30420003 */ andi $v0, $v0, 3 +/* 3BC9B4 E00BEA54 00021080 */ sll $v0, $v0, 2 +/* 3BC9B8 E00BEA58 004C1021 */ addu $v0, $v0, $t4 +/* 3BC9BC E00BEA5C 8C430000 */ lw $v1, ($v0) +/* 3BC9C0 E00BEA60 24820020 */ addiu $v0, $a0, 0x20 +/* 3BC9C4 E00BEA64 AE220000 */ sw $v0, ($s1) +/* 3BC9C8 E00BEA68 24020040 */ addiu $v0, $zero, 0x40 +/* 3BC9CC E00BEA6C AC8A0018 */ sw $t2, 0x18($a0) +/* 3BC9D0 E00BEA70 AC82001C */ sw $v0, 0x1c($a0) +/* 3BC9D4 E00BEA74 AC830014 */ sw $v1, 0x14($a0) +/* 3BC9D8 E00BEA78 8FAC00C0 */ lw $t4, 0xc0($sp) +/* 3BC9DC E00BEA7C 8D820008 */ lw $v0, 8($t4) +/* 3BC9E0 E00BEA80 26D60001 */ addiu $s6, $s6, 1 +/* 3BC9E4 E00BEA84 02C2102A */ slt $v0, $s6, $v0 +/* 3BC9E8 E00BEA88 1440FF4B */ bnez $v0, .LE00BE7B8 +/* 3BC9EC E00BEA8C 26100038 */ addiu $s0, $s0, 0x38 +.LE00BEA90: +/* 3BC9F0 E00BEA90 3C05D838 */ lui $a1, 0xd838 +/* 3BC9F4 E00BEA94 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3BC9F8 E00BEA98 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3BC9FC E00BEA9C 8C620000 */ lw $v0, ($v1) +/* 3BCA00 E00BEAA0 34A50002 */ ori $a1, $a1, 2 +/* 3BCA04 E00BEAA4 0040202D */ daddu $a0, $v0, $zero +/* 3BCA08 E00BEAA8 24420008 */ addiu $v0, $v0, 8 +/* 3BCA0C E00BEAAC AC620000 */ sw $v0, ($v1) +/* 3BCA10 E00BEAB0 24020040 */ addiu $v0, $zero, 0x40 +/* 3BCA14 E00BEAB4 AC850000 */ sw $a1, ($a0) +/* 3BCA18 E00BEAB8 AC820004 */ sw $v0, 4($a0) +/* 3BCA1C E00BEABC 8FBF00BC */ lw $ra, 0xbc($sp) +/* 3BCA20 E00BEAC0 8FBE00B8 */ lw $fp, 0xb8($sp) +/* 3BCA24 E00BEAC4 8FB700B4 */ lw $s7, 0xb4($sp) +/* 3BCA28 E00BEAC8 8FB600B0 */ lw $s6, 0xb0($sp) +/* 3BCA2C E00BEACC 8FB500AC */ lw $s5, 0xac($sp) +/* 3BCA30 E00BEAD0 8FB400A8 */ lw $s4, 0xa8($sp) +/* 3BCA34 E00BEAD4 8FB300A4 */ lw $s3, 0xa4($sp) +/* 3BCA38 E00BEAD8 8FB200A0 */ lw $s2, 0xa0($sp) +/* 3BCA3C E00BEADC 8FB1009C */ lw $s1, 0x9c($sp) +/* 3BCA40 E00BEAE0 8FB00098 */ lw $s0, 0x98($sp) +/* 3BCA44 E00BEAE4 03E00008 */ jr $ra +/* 3BCA48 E00BEAE8 27BD00C0 */ addiu $sp, $sp, 0xc0 +/* 3BCA4C E00BEAEC 00000000 */ nop diff --git a/asm/nonmatchings/code_3BCD60/func_E00C0000.s b/asm/nonmatchings/code_3BCD60/func_E00C0000.s new file mode 100644 index 0000000000..317a770292 --- /dev/null +++ b/asm/nonmatchings/code_3BCD60/func_E00C0000.s @@ -0,0 +1,94 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C0000 +/* 3BCD60 E00C0000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3BCD64 E00C0004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3BCD68 E00C0008 4485A000 */ mtc1 $a1, $f20 +/* 3BCD6C E00C000C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3BCD70 E00C0010 4486B000 */ mtc1 $a2, $f22 +/* 3BCD74 E00C0014 AFB20030 */ sw $s2, 0x30($sp) +/* 3BCD78 E00C0018 0080902D */ daddu $s2, $a0, $zero +/* 3BCD7C E00C001C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3BCD80 E00C0020 4487C000 */ mtc1 $a3, $f24 +/* 3BCD84 E00C0024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BCD88 E00C0028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3BCD8C E00C002C 8FB10064 */ lw $s1, 0x64($sp) +/* 3BCD90 E00C0030 3C02E00C */ lui $v0, %hi(D_E00C0158) +/* 3BCD94 E00C0034 24420158 */ addiu $v0, $v0, %lo(D_E00C0158) +/* 3BCD98 E00C0038 AFA20018 */ sw $v0, 0x18($sp) +/* 3BCD9C E00C003C 3C02E00C */ lui $v0, %hi(D_E00C0160) +/* 3BCDA0 E00C0040 24420160 */ addiu $v0, $v0, %lo(D_E00C0160) +/* 3BCDA4 E00C0044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3BCDA8 E00C0048 3C02E00C */ lui $v0, %hi(D_E00C0710) +/* 3BCDAC E00C004C 24420710 */ addiu $v0, $v0, %lo(D_E00C0710) +/* 3BCDB0 E00C0050 AFA20020 */ sw $v0, 0x20($sp) +/* 3BCDB4 E00C0054 24020060 */ addiu $v0, $zero, 0x60 +/* 3BCDB8 E00C0058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3BCDBC E00C005C AFB00028 */ sw $s0, 0x28($sp) +/* 3BCDC0 E00C0060 AFA00010 */ sw $zero, 0x10($sp) +/* 3BCDC4 E00C0064 AFA00024 */ sw $zero, 0x24($sp) +/* 3BCDC8 E00C0068 0C080124 */ jal func_E0200490 +/* 3BCDCC E00C006C AFA20014 */ sw $v0, 0x14($sp) +/* 3BCDD0 E00C0070 24040060 */ addiu $a0, $zero, 0x60 +/* 3BCDD4 E00C0074 24030001 */ addiu $v1, $zero, 1 +/* 3BCDD8 E00C0078 0040802D */ daddu $s0, $v0, $zero +/* 3BCDDC E00C007C 0C08012C */ jal func_E02004B0 +/* 3BCDE0 E00C0080 AE030008 */ sw $v1, 8($s0) +/* 3BCDE4 E00C0084 0040202D */ daddu $a0, $v0, $zero +/* 3BCDE8 E00C0088 14800003 */ bnez $a0, .LE00C0098 +/* 3BCDEC E00C008C AE02000C */ sw $v0, 0xc($s0) +.LE00C0090: +/* 3BCDF0 E00C0090 08030024 */ j .LE00C0090 +/* 3BCDF4 E00C0094 00000000 */ nop +.LE00C0098: +/* 3BCDF8 E00C0098 AC920000 */ sw $s2, ($a0) +/* 3BCDFC E00C009C 1E200004 */ bgtz $s1, .LE00C00B0 +/* 3BCE00 E00C00A0 AC800014 */ sw $zero, 0x14($a0) +/* 3BCE04 E00C00A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3BCE08 E00C00A8 0803002D */ j .LE00C00B4 +/* 3BCE0C E00C00AC AC820010 */ sw $v0, 0x10($a0) +.LE00C00B0: +/* 3BCE10 E00C00B0 AC910010 */ sw $s1, 0x10($a0) +.LE00C00B4: +/* 3BCE14 E00C00B4 0200102D */ daddu $v0, $s0, $zero +/* 3BCE18 E00C00B8 24030002 */ addiu $v1, $zero, 2 +/* 3BCE1C E00C00BC AC800024 */ sw $zero, 0x24($a0) +/* 3BCE20 E00C00C0 E4940004 */ swc1 $f20, 4($a0) +/* 3BCE24 E00C00C4 E4960008 */ swc1 $f22, 8($a0) +/* 3BCE28 E00C00C8 E498000C */ swc1 $f24, 0xc($a0) +/* 3BCE2C E00C00CC AC800030 */ sw $zero, 0x30($a0) +/* 3BCE30 E00C00D0 AC800038 */ sw $zero, 0x38($a0) +/* 3BCE34 E00C00D4 AC80003C */ sw $zero, 0x3c($a0) +/* 3BCE38 E00C00D8 AC800040 */ sw $zero, 0x40($a0) +/* 3BCE3C E00C00DC AC800044 */ sw $zero, 0x44($a0) +/* 3BCE40 E00C00E0 AC800054 */ sw $zero, 0x54($a0) +/* 3BCE44 E00C00E4 AC830058 */ sw $v1, 0x58($a0) +/* 3BCE48 E00C00E8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3BCE4C E00C00EC 3C01C100 */ lui $at, 0xc100 +/* 3BCE50 E00C00F0 44811000 */ mtc1 $at, $f2 +/* 3BCE54 E00C00F4 3C01BF80 */ lui $at, 0xbf80 +/* 3BCE58 E00C00F8 44812000 */ mtc1 $at, $f4 +/* 3BCE5C E00C00FC 240300C8 */ addiu $v1, $zero, 0xc8 +/* 3BCE60 E00C0100 AC830018 */ sw $v1, 0x18($a0) +/* 3BCE64 E00C0104 240300DC */ addiu $v1, $zero, 0xdc +/* 3BCE68 E00C0108 AC83001C */ sw $v1, 0x1c($a0) +/* 3BCE6C E00C010C E4800028 */ swc1 $f0, 0x28($a0) +/* 3BCE70 E00C0110 3C014348 */ lui $at, 0x4348 +/* 3BCE74 E00C0114 44810000 */ mtc1 $at, $f0 +/* 3BCE78 E00C0118 240300F0 */ addiu $v1, $zero, 0xf0 +/* 3BCE7C E00C011C AC80005C */ sw $zero, 0x5c($a0) +/* 3BCE80 E00C0120 AC830020 */ sw $v1, 0x20($a0) +/* 3BCE84 E00C0124 AC80002C */ sw $zero, 0x2c($a0) +/* 3BCE88 E00C0128 E4820040 */ swc1 $f2, 0x40($a0) +/* 3BCE8C E00C012C E4840050 */ swc1 $f4, 0x50($a0) +/* 3BCE90 E00C0130 E4800034 */ swc1 $f0, 0x34($a0) +/* 3BCE94 E00C0134 8FBF0034 */ lw $ra, 0x34($sp) +/* 3BCE98 E00C0138 8FB20030 */ lw $s2, 0x30($sp) +/* 3BCE9C E00C013C 8FB1002C */ lw $s1, 0x2c($sp) +/* 3BCEA0 E00C0140 8FB00028 */ lw $s0, 0x28($sp) +/* 3BCEA4 E00C0144 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3BCEA8 E00C0148 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3BCEAC E00C014C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3BCEB0 E00C0150 03E00008 */ jr $ra +/* 3BCEB4 E00C0154 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3BCD60/func_E00C0158.s b/asm/nonmatchings/code_3BCD60/func_E00C0158.s new file mode 100644 index 0000000000..8b1cd8cd65 --- /dev/null +++ b/asm/nonmatchings/code_3BCD60/func_E00C0158.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C0158 +/* 3BCEB8 E00C0158 03E00008 */ jr $ra +/* 3BCEBC E00C015C 00000000 */ nop diff --git a/asm/nonmatchings/code_3BCD60/func_E00C0160.s b/asm/nonmatchings/code_3BCD60/func_E00C0160.s new file mode 100644 index 0000000000..739a3c4076 --- /dev/null +++ b/asm/nonmatchings/code_3BCD60/func_E00C0160.s @@ -0,0 +1,392 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C0160 +/* 3BCEC0 E00C0160 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 3BCEC4 E00C0164 AFBF002C */ sw $ra, 0x2c($sp) +/* 3BCEC8 E00C0168 AFB00028 */ sw $s0, 0x28($sp) +/* 3BCECC E00C016C F7B40030 */ sdc1 $f20, 0x30($sp) +/* 3BCED0 E00C0170 8C830000 */ lw $v1, ($a0) +/* 3BCED4 E00C0174 8C90000C */ lw $s0, 0xc($a0) +/* 3BCED8 E00C0178 30620010 */ andi $v0, $v1, 0x10 +/* 3BCEDC E00C017C 10400005 */ beqz $v0, .LE00C0194 +/* 3BCEE0 E00C0180 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3BCEE4 E00C0184 00621024 */ and $v0, $v1, $v0 +/* 3BCEE8 E00C0188 AC820000 */ sw $v0, ($a0) +/* 3BCEEC E00C018C 24020010 */ addiu $v0, $zero, 0x10 +/* 3BCEF0 E00C0190 AE020010 */ sw $v0, 0x10($s0) +.LE00C0194: +/* 3BCEF4 E00C0194 8E030010 */ lw $v1, 0x10($s0) +/* 3BCEF8 E00C0198 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3BCEFC E00C019C 10400002 */ beqz $v0, .LE00C01A8 +/* 3BCF00 E00C01A0 2462FFFF */ addiu $v0, $v1, -1 +/* 3BCF04 E00C01A4 AE020010 */ sw $v0, 0x10($s0) +.LE00C01A8: +/* 3BCF08 E00C01A8 8E020014 */ lw $v0, 0x14($s0) +/* 3BCF0C E00C01AC 8E050010 */ lw $a1, 0x10($s0) +/* 3BCF10 E00C01B0 24420001 */ addiu $v0, $v0, 1 +/* 3BCF14 E00C01B4 04A10005 */ bgez $a1, .LE00C01CC +/* 3BCF18 E00C01B8 AE020014 */ sw $v0, 0x14($s0) +/* 3BCF1C E00C01BC 0C080128 */ jal func_E02004A0 +/* 3BCF20 E00C01C0 00000000 */ nop +/* 3BCF24 E00C01C4 080301BF */ j .LE00C06FC +/* 3BCF28 E00C01C8 00000000 */ nop +.LE00C01CC: +/* 3BCF2C E00C01CC 0040302D */ daddu $a2, $v0, $zero +/* 3BCF30 E00C01D0 28A20010 */ slti $v0, $a1, 0x10 +/* 3BCF34 E00C01D4 10400002 */ beqz $v0, .LE00C01E0 +/* 3BCF38 E00C01D8 00051100 */ sll $v0, $a1, 4 +/* 3BCF3C E00C01DC AE020024 */ sw $v0, 0x24($s0) +.LE00C01E0: +/* 3BCF40 E00C01E0 28C20010 */ slti $v0, $a2, 0x10 +/* 3BCF44 E00C01E4 10400003 */ beqz $v0, .LE00C01F4 +/* 3BCF48 E00C01E8 00061100 */ sll $v0, $a2, 4 +/* 3BCF4C E00C01EC 2442000F */ addiu $v0, $v0, 0xf +/* 3BCF50 E00C01F0 AE020024 */ sw $v0, 0x24($s0) +.LE00C01F4: +/* 3BCF54 E00C01F4 C604003C */ lwc1 $f4, 0x3c($s0) +/* 3BCF58 E00C01F8 44800000 */ mtc1 $zero, $f0 +/* 3BCF5C E00C01FC 00000000 */ nop +/* 3BCF60 E00C0200 46002032 */ c.eq.s $f4, $f0 +/* 3BCF64 E00C0204 00000000 */ nop +/* 3BCF68 E00C0208 45010010 */ bc1t .LE00C024C +/* 3BCF6C E00C020C 00000000 */ nop +/* 3BCF70 E00C0210 C6020040 */ lwc1 $f2, 0x40($s0) +/* 3BCF74 E00C0214 4600103C */ c.lt.s $f2, $f0 +/* 3BCF78 E00C0218 00000000 */ nop +/* 3BCF7C E00C021C 45030001 */ bc1tl .LE00C0224 +/* 3BCF80 E00C0220 46001087 */ neg.s $f2, $f2 +.LE00C0224: +/* 3BCF84 E00C0224 4600203C */ c.lt.s $f4, $f0 +/* 3BCF88 E00C0228 00000000 */ nop +/* 3BCF8C E00C022C 45000004 */ bc1f .LE00C0240 +/* 3BCF90 E00C0230 00000000 */ nop +/* 3BCF94 E00C0234 C600002C */ lwc1 $f0, 0x2c($s0) +/* 3BCF98 E00C0238 08030092 */ j .LE00C0248 +/* 3BCF9C E00C023C 46020001 */ sub.s $f0, $f0, $f2 +.LE00C0240: +/* 3BCFA0 E00C0240 C600002C */ lwc1 $f0, 0x2c($s0) +/* 3BCFA4 E00C0244 46020000 */ add.s $f0, $f0, $f2 +.LE00C0248: +/* 3BCFA8 E00C0248 E600002C */ swc1 $f0, 0x2c($s0) +.LE00C024C: +/* 3BCFAC E00C024C 8E040058 */ lw $a0, 0x58($s0) +/* 3BCFB0 E00C0250 24020001 */ addiu $v0, $zero, 1 +/* 3BCFB4 E00C0254 10820028 */ beq $a0, $v0, .LE00C02F8 +/* 3BCFB8 E00C0258 28820002 */ slti $v0, $a0, 2 +/* 3BCFBC E00C025C 10400005 */ beqz $v0, .LE00C0274 +/* 3BCFC0 E00C0260 24050002 */ addiu $a1, $zero, 2 +/* 3BCFC4 E00C0264 10800009 */ beqz $a0, .LE00C028C +/* 3BCFC8 E00C0268 30C30007 */ andi $v1, $a2, 7 +/* 3BCFCC E00C026C 08030175 */ j .LE00C05D4 +/* 3BCFD0 E00C0270 24020001 */ addiu $v0, $zero, 1 +.LE00C0274: +/* 3BCFD4 E00C0274 10850075 */ beq $a0, $a1, .LE00C044C +/* 3BCFD8 E00C0278 24020003 */ addiu $v0, $zero, 3 +/* 3BCFDC E00C027C 1082003B */ beq $a0, $v0, .LE00C036C +/* 3BCFE0 E00C0280 30C30007 */ andi $v1, $a2, 7 +/* 3BCFE4 E00C0284 08030175 */ j .LE00C05D4 +/* 3BCFE8 E00C0288 24020001 */ addiu $v0, $zero, 1 +.LE00C028C: +/* 3BCFEC E00C028C 8E030054 */ lw $v1, 0x54($s0) +/* 3BCFF0 E00C0290 3C02E00C */ lui $v0, %hi(D_E00C0A24) +/* 3BCFF4 E00C0294 00431021 */ addu $v0, $v0, $v1 +/* 3BCFF8 E00C0298 90420A24 */ lbu $v0, %lo(D_E00C0A24)($v0) +/* 3BCFFC E00C029C 3C01E00C */ lui $at, %hi(D_E00C0C00) +/* 3BD000 E00C02A0 D4220C00 */ ldc1 $f2, %lo(D_E00C0C00)($at) +/* 3BD004 E00C02A4 44820000 */ mtc1 $v0, $f0 +/* 3BD008 E00C02A8 00000000 */ nop +/* 3BD00C E00C02AC 46800020 */ cvt.s.w $f0, $f0 +/* 3BD010 E00C02B0 46000021 */ cvt.d.s $f0, $f0 +/* 3BD014 E00C02B4 46220002 */ mul.d $f0, $f0, $f2 +/* 3BD018 E00C02B8 00000000 */ nop +/* 3BD01C E00C02BC 46200020 */ cvt.s.d $f0, $f0 +/* 3BD020 E00C02C0 E600004C */ swc1 $f0, 0x4c($s0) +/* 3BD024 E00C02C4 46000086 */ mov.s $f2, $f0 +/* 3BD028 E00C02C8 3C014000 */ lui $at, 0x4000 +/* 3BD02C E00C02CC 44810000 */ mtc1 $at, $f0 +/* 3BD030 E00C02D0 24630001 */ addiu $v1, $v1, 1 +/* 3BD034 E00C02D4 AE030054 */ sw $v1, 0x54($s0) +/* 3BD038 E00C02D8 46020001 */ sub.s $f0, $f0, $f2 +/* 3BD03C E00C02DC 0060102D */ daddu $v0, $v1, $zero +/* 3BD040 E00C02E0 2842001B */ slti $v0, $v0, 0x1b +/* 3BD044 E00C02E4 144000B9 */ bnez $v0, .LE00C05CC +/* 3BD048 E00C02E8 E6000048 */ swc1 $f0, 0x48($s0) +/* 3BD04C E00C02EC 24020002 */ addiu $v0, $zero, 2 +/* 3BD050 E00C02F0 08030173 */ j .LE00C05CC +/* 3BD054 E00C02F4 AE020058 */ sw $v0, 0x58($s0) +.LE00C02F8: +/* 3BD058 E00C02F8 8E030054 */ lw $v1, 0x54($s0) +/* 3BD05C E00C02FC 3C02E00C */ lui $v0, %hi(D_E00C0A10) +/* 3BD060 E00C0300 00431021 */ addu $v0, $v0, $v1 +/* 3BD064 E00C0304 80420A10 */ lb $v0, %lo(D_E00C0A10)($v0) +/* 3BD068 E00C0308 3C01E00C */ lui $at, %hi(D_E00C0C08) +/* 3BD06C E00C030C D4220C08 */ ldc1 $f2, %lo(D_E00C0C08)($at) +/* 3BD070 E00C0310 44820000 */ mtc1 $v0, $f0 +/* 3BD074 E00C0314 00000000 */ nop +/* 3BD078 E00C0318 46800020 */ cvt.s.w $f0, $f0 +/* 3BD07C E00C031C 46000021 */ cvt.d.s $f0, $f0 +/* 3BD080 E00C0320 46220002 */ mul.d $f0, $f0, $f2 +/* 3BD084 E00C0324 00000000 */ nop +/* 3BD088 E00C0328 46200020 */ cvt.s.d $f0, $f0 +/* 3BD08C E00C032C E600004C */ swc1 $f0, 0x4c($s0) +/* 3BD090 E00C0330 46000086 */ mov.s $f2, $f0 +/* 3BD094 E00C0334 3C014000 */ lui $at, 0x4000 +/* 3BD098 E00C0338 44810000 */ mtc1 $at, $f0 +/* 3BD09C E00C033C 24630001 */ addiu $v1, $v1, 1 +/* 3BD0A0 E00C0340 AE030054 */ sw $v1, 0x54($s0) +/* 3BD0A4 E00C0344 46020001 */ sub.s $f0, $f0, $f2 +/* 3BD0A8 E00C0348 0060102D */ daddu $v0, $v1, $zero +/* 3BD0AC E00C034C 28420012 */ slti $v0, $v0, 0x12 +/* 3BD0B0 E00C0350 14400003 */ bnez $v0, .LE00C0360 +/* 3BD0B4 E00C0354 E6000048 */ swc1 $f0, 0x48($s0) +/* 3BD0B8 E00C0358 24020002 */ addiu $v0, $zero, 2 +/* 3BD0BC E00C035C AE020058 */ sw $v0, 0x58($s0) +.LE00C0360: +/* 3BD0C0 E00C0360 8E020054 */ lw $v0, 0x54($s0) +/* 3BD0C4 E00C0364 080300FF */ j .LE00C03FC +/* 3BD0C8 E00C0368 28420008 */ slti $v0, $v0, 8 +.LE00C036C: +/* 3BD0CC E00C036C 8E030054 */ lw $v1, 0x54($s0) +/* 3BD0D0 E00C0370 3C02E00C */ lui $v0, %hi(D_E00C0A40) +/* 3BD0D4 E00C0374 00431021 */ addu $v0, $v0, $v1 +/* 3BD0D8 E00C0378 90420A40 */ lbu $v0, %lo(D_E00C0A40)($v0) +/* 3BD0DC E00C037C 3C01E00C */ lui $at, %hi(D_E00C0C10) +/* 3BD0E0 E00C0380 D4220C10 */ ldc1 $f2, %lo(D_E00C0C10)($at) +/* 3BD0E4 E00C0384 44820000 */ mtc1 $v0, $f0 +/* 3BD0E8 E00C0388 00000000 */ nop +/* 3BD0EC E00C038C 46800020 */ cvt.s.w $f0, $f0 +/* 3BD0F0 E00C0390 46000021 */ cvt.d.s $f0, $f0 +/* 3BD0F4 E00C0394 46220002 */ mul.d $f0, $f0, $f2 +/* 3BD0F8 E00C0398 00000000 */ nop +/* 3BD0FC E00C039C 46200020 */ cvt.s.d $f0, $f0 +/* 3BD100 E00C03A0 E600004C */ swc1 $f0, 0x4c($s0) +/* 3BD104 E00C03A4 46000086 */ mov.s $f2, $f0 +/* 3BD108 E00C03A8 3C014000 */ lui $at, 0x4000 +/* 3BD10C E00C03AC 44810000 */ mtc1 $at, $f0 +/* 3BD110 E00C03B0 24630001 */ addiu $v1, $v1, 1 +/* 3BD114 E00C03B4 46020001 */ sub.s $f0, $f0, $f2 +/* 3BD118 E00C03B8 AE030054 */ sw $v1, 0x54($s0) +/* 3BD11C E00C03BC 0060102D */ daddu $v0, $v1, $zero +/* 3BD120 E00C03C0 E6000048 */ swc1 $f0, 0x48($s0) +/* 3BD124 E00C03C4 3C03E00C */ lui $v1, %hi(D_E00C0A8C) +/* 3BD128 E00C03C8 00621821 */ addu $v1, $v1, $v0 +/* 3BD12C E00C03CC 80630A8C */ lb $v1, %lo(D_E00C0A8C)($v1) +/* 3BD130 E00C03D0 24420001 */ addiu $v0, $v0, 1 +/* 3BD134 E00C03D4 AE020054 */ sw $v0, 0x54($s0) +/* 3BD138 E00C03D8 2842004A */ slti $v0, $v0, 0x4a +/* 3BD13C E00C03DC 44830000 */ mtc1 $v1, $f0 +/* 3BD140 E00C03E0 00000000 */ nop +/* 3BD144 E00C03E4 46800020 */ cvt.s.w $f0, $f0 +/* 3BD148 E00C03E8 14400002 */ bnez $v0, .LE00C03F4 +/* 3BD14C E00C03EC E600002C */ swc1 $f0, 0x2c($s0) +/* 3BD150 E00C03F0 AE050058 */ sw $a1, 0x58($s0) +.LE00C03F4: +/* 3BD154 E00C03F4 8E020054 */ lw $v0, 0x54($s0) +/* 3BD158 E00C03F8 28420040 */ slti $v0, $v0, 0x40 +.LE00C03FC: +/* 3BD15C E00C03FC 14400074 */ bnez $v0, .LE00C05D0 +/* 3BD160 E00C0400 30C30007 */ andi $v1, $a2, 7 +/* 3BD164 E00C0404 C6080030 */ lwc1 $f8, 0x30($s0) +/* 3BD168 E00C0408 C600003C */ lwc1 $f0, 0x3c($s0) +/* 3BD16C E00C040C C6060034 */ lwc1 $f6, 0x34($s0) +/* 3BD170 E00C0410 46004200 */ add.s $f8, $f8, $f0 +/* 3BD174 E00C0414 C6000040 */ lwc1 $f0, 0x40($s0) +/* 3BD178 E00C0418 C6020038 */ lwc1 $f2, 0x38($s0) +/* 3BD17C E00C041C 46003180 */ add.s $f6, $f6, $f0 +/* 3BD180 E00C0420 C6000044 */ lwc1 $f0, 0x44($s0) +/* 3BD184 E00C0424 3C01BF80 */ lui $at, 0xbf80 +/* 3BD188 E00C0428 44812000 */ mtc1 $at, $f4 +/* 3BD18C E00C042C 46001080 */ add.s $f2, $f2, $f0 +/* 3BD190 E00C0430 C6000040 */ lwc1 $f0, 0x40($s0) +/* 3BD194 E00C0434 E6080030 */ swc1 $f8, 0x30($s0) +/* 3BD198 E00C0438 46040000 */ add.s $f0, $f0, $f4 +/* 3BD19C E00C043C E6060034 */ swc1 $f6, 0x34($s0) +/* 3BD1A0 E00C0440 E6020038 */ swc1 $f2, 0x38($s0) +/* 3BD1A4 E00C0444 08030174 */ j .LE00C05D0 +/* 3BD1A8 E00C0448 E6000040 */ swc1 $f0, 0x40($s0) +.LE00C044C: +/* 3BD1AC E00C044C 3C02E00C */ lui $v0, %hi(D_E00C0A21) +/* 3BD1B0 E00C0450 80420A21 */ lb $v0, %lo(D_E00C0A21)($v0) +/* 3BD1B4 E00C0454 3C01E00C */ lui $at, %hi(D_E00C0C18) +/* 3BD1B8 E00C0458 D4220C18 */ ldc1 $f2, %lo(D_E00C0C18)($at) +/* 3BD1BC E00C045C 44820000 */ mtc1 $v0, $f0 +/* 3BD1C0 E00C0460 00000000 */ nop +/* 3BD1C4 E00C0464 46800020 */ cvt.s.w $f0, $f0 +/* 3BD1C8 E00C0468 46000021 */ cvt.d.s $f0, $f0 +/* 3BD1CC E00C046C 46220002 */ mul.d $f0, $f0, $f2 +/* 3BD1D0 E00C0470 00000000 */ nop +/* 3BD1D4 E00C0474 C6060030 */ lwc1 $f6, 0x30($s0) +/* 3BD1D8 E00C0478 C602003C */ lwc1 $f2, 0x3c($s0) +/* 3BD1DC E00C047C C6040034 */ lwc1 $f4, 0x34($s0) +/* 3BD1E0 E00C0480 46023180 */ add.s $f6, $f6, $f2 +/* 3BD1E4 E00C0484 C6020040 */ lwc1 $f2, 0x40($s0) +/* 3BD1E8 E00C0488 C6080038 */ lwc1 $f8, 0x38($s0) +/* 3BD1EC E00C048C 46022100 */ add.s $f4, $f4, $f2 +/* 3BD1F0 E00C0490 C6020044 */ lwc1 $f2, 0x44($s0) +/* 3BD1F4 E00C0494 44805000 */ mtc1 $zero, $f10 +/* 3BD1F8 E00C0498 46024200 */ add.s $f8, $f8, $f2 +/* 3BD1FC E00C049C C6020050 */ lwc1 $f2, 0x50($s0) +/* 3BD200 E00C04A0 E6040034 */ swc1 $f4, 0x34($s0) +/* 3BD204 E00C04A4 C6040040 */ lwc1 $f4, 0x40($s0) +/* 3BD208 E00C04A8 E6060030 */ swc1 $f6, 0x30($s0) +/* 3BD20C E00C04AC 46022100 */ add.s $f4, $f4, $f2 +/* 3BD210 E00C04B0 C6060034 */ lwc1 $f6, 0x34($s0) +/* 3BD214 E00C04B4 3C014000 */ lui $at, 0x4000 +/* 3BD218 E00C04B8 44811000 */ mtc1 $at, $f2 +/* 3BD21C E00C04BC 460A303C */ c.lt.s $f6, $f10 +/* 3BD220 E00C04C0 E6080038 */ swc1 $f8, 0x38($s0) +/* 3BD224 E00C04C4 46200020 */ cvt.s.d $f0, $f0 +/* 3BD228 E00C04C8 46001081 */ sub.s $f2, $f2, $f0 +/* 3BD22C E00C04CC E6040040 */ swc1 $f4, 0x40($s0) +/* 3BD230 E00C04D0 E600004C */ swc1 $f0, 0x4c($s0) +/* 3BD234 E00C04D4 4500003D */ bc1f .LE00C05CC +/* 3BD238 E00C04D8 E6020048 */ swc1 $f2, 0x48($s0) +/* 3BD23C E00C04DC 8E03005C */ lw $v1, 0x5c($s0) +/* 3BD240 E00C04E0 2C620005 */ sltiu $v0, $v1, 5 +/* 3BD244 E00C04E4 1040002F */ beqz $v0, .LE00C05A4 +/* 3BD248 E00C04E8 00031080 */ sll $v0, $v1, 2 +/* 3BD24C E00C04EC 3C01E00C */ lui $at, %hi(D_E00C0C20) +/* 3BD250 E00C04F0 00220821 */ addu $at, $at, $v0 +/* 3BD254 E00C04F4 8C220C20 */ lw $v0, %lo(D_E00C0C20)($at) +/* 3BD258 E00C04F8 00400008 */ jr $v0 +/* 3BD25C E00C04FC 00000000 */ nop +/* 3BD260 E00C0500 0803016E */ j .LE00C05B8 +/* 3BD264 E00C0504 AE000058 */ sw $zero, 0x58($s0) +/* 3BD268 E00C0508 3C014000 */ lui $at, 0x4000 +/* 3BD26C E00C050C 44810000 */ mtc1 $at, $f0 +/* 3BD270 E00C0510 08030154 */ j .LE00C0550 +/* 3BD274 E00C0514 00000000 */ nop +/* 3BD278 E00C0518 3C014000 */ lui $at, 0x4000 +/* 3BD27C E00C051C 44810000 */ mtc1 $at, $f0 +/* 3BD280 E00C0520 3C01C000 */ lui $at, 0xc000 +/* 3BD284 E00C0524 44811000 */ mtc1 $at, $f2 +/* 3BD288 E00C0528 3C014120 */ lui $at, 0x4120 +/* 3BD28C E00C052C 44812000 */ mtc1 $at, $f4 +/* 3BD290 E00C0530 24020001 */ addiu $v0, $zero, 1 +/* 3BD294 E00C0534 AE020058 */ sw $v0, 0x58($s0) +/* 3BD298 E00C0538 E600003C */ swc1 $f0, 0x3c($s0) +/* 3BD29C E00C053C E6020044 */ swc1 $f2, 0x44($s0) +/* 3BD2A0 E00C0540 0803016E */ j .LE00C05B8 +/* 3BD2A4 E00C0544 E6040040 */ swc1 $f4, 0x40($s0) +/* 3BD2A8 E00C0548 3C01C000 */ lui $at, 0xc000 +/* 3BD2AC E00C054C 44810000 */ mtc1 $at, $f0 +.LE00C0550: +/* 3BD2B0 E00C0550 3C014120 */ lui $at, 0x4120 +/* 3BD2B4 E00C0554 44811000 */ mtc1 $at, $f2 +/* 3BD2B8 E00C0558 24020001 */ addiu $v0, $zero, 1 +/* 3BD2BC E00C055C AE020058 */ sw $v0, 0x58($s0) +/* 3BD2C0 E00C0560 E600003C */ swc1 $f0, 0x3c($s0) +/* 3BD2C4 E00C0564 E6000044 */ swc1 $f0, 0x44($s0) +/* 3BD2C8 E00C0568 0803016E */ j .LE00C05B8 +/* 3BD2CC E00C056C E6020040 */ swc1 $f2, 0x40($s0) +/* 3BD2D0 E00C0570 3C014120 */ lui $at, 0x4120 +/* 3BD2D4 E00C0574 44810000 */ mtc1 $at, $f0 +/* 3BD2D8 E00C0578 3C014160 */ lui $at, 0x4160 +/* 3BD2DC E00C057C 44811000 */ mtc1 $at, $f2 +/* 3BD2E0 E00C0580 3C01BF80 */ lui $at, 0xbf80 +/* 3BD2E4 E00C0584 44812000 */ mtc1 $at, $f4 +/* 3BD2E8 E00C0588 24020001 */ addiu $v0, $zero, 1 +/* 3BD2EC E00C058C AE000044 */ sw $zero, 0x44($s0) +/* 3BD2F0 E00C0590 AE020058 */ sw $v0, 0x58($s0) +/* 3BD2F4 E00C0594 E600003C */ swc1 $f0, 0x3c($s0) +/* 3BD2F8 E00C0598 E6020040 */ swc1 $f2, 0x40($s0) +/* 3BD2FC E00C059C 0803016E */ j .LE00C05B8 +/* 3BD300 E00C05A0 E6040050 */ swc1 $f4, 0x50($s0) +.LE00C05A4: +/* 3BD304 E00C05A4 E60A003C */ swc1 $f10, 0x3c($s0) +/* 3BD308 E00C05A8 E60A0040 */ swc1 $f10, 0x40($s0) +/* 3BD30C E00C05AC E60A0044 */ swc1 $f10, 0x44($s0) +/* 3BD310 E00C05B0 E60A0034 */ swc1 $f10, 0x34($s0) +/* 3BD314 E00C05B4 AE040058 */ sw $a0, 0x58($s0) +.LE00C05B8: +/* 3BD318 E00C05B8 8E02005C */ lw $v0, 0x5c($s0) +/* 3BD31C E00C05BC AE000034 */ sw $zero, 0x34($s0) +/* 3BD320 E00C05C0 AE000054 */ sw $zero, 0x54($s0) +/* 3BD324 E00C05C4 24420001 */ addiu $v0, $v0, 1 +/* 3BD328 E00C05C8 AE02005C */ sw $v0, 0x5c($s0) +.LE00C05CC: +/* 3BD32C E00C05CC 30C30007 */ andi $v1, $a2, 7 +.LE00C05D0: +/* 3BD330 E00C05D0 24020001 */ addiu $v0, $zero, 1 +.LE00C05D4: +/* 3BD334 E00C05D4 14620049 */ bne $v1, $v0, .LE00C06FC +/* 3BD338 E00C05D8 00000000 */ nop +/* 3BD33C E00C05DC 0C080150 */ jal func_E0200540 +/* 3BD340 E00C05E0 2404006F */ addiu $a0, $zero, 0x6f +/* 3BD344 E00C05E4 0C080138 */ jal func_E02004E0 +/* 3BD348 E00C05E8 2404003C */ addiu $a0, $zero, 0x3c +/* 3BD34C E00C05EC C6140004 */ lwc1 $f20, 4($s0) +/* 3BD350 E00C05F0 C6000030 */ lwc1 $f0, 0x30($s0) +/* 3BD354 E00C05F4 4600A500 */ add.s $f20, $f20, $f0 +/* 3BD358 E00C05F8 44820000 */ mtc1 $v0, $f0 +/* 3BD35C E00C05FC 00000000 */ nop +/* 3BD360 E00C0600 46800020 */ cvt.s.w $f0, $f0 +/* 3BD364 E00C0604 4600A500 */ add.s $f20, $f20, $f0 +/* 3BD368 E00C0608 3C0141F0 */ lui $at, 0x41f0 +/* 3BD36C E00C060C 44810000 */ mtc1 $at, $f0 +/* 3BD370 E00C0610 24040064 */ addiu $a0, $zero, 0x64 +/* 3BD374 E00C0614 0C080138 */ jal func_E02004E0 +/* 3BD378 E00C0618 4600A501 */ sub.s $f20, $f20, $f0 +/* 3BD37C E00C061C C602000C */ lwc1 $f2, 0xc($s0) +/* 3BD380 E00C0620 C6000038 */ lwc1 $f0, 0x38($s0) +/* 3BD384 E00C0624 46001080 */ add.s $f2, $f2, $f0 +/* 3BD388 E00C0628 C6000034 */ lwc1 $f0, 0x34($s0) +/* 3BD38C E00C062C 44071000 */ mfc1 $a3, $f2 +/* 3BD390 E00C0630 C6020008 */ lwc1 $f2, 8($s0) +/* 3BD394 E00C0634 46001080 */ add.s $f2, $f2, $f0 +/* 3BD398 E00C0638 44820000 */ mtc1 $v0, $f0 +/* 3BD39C E00C063C 00000000 */ nop +/* 3BD3A0 E00C0640 46800020 */ cvt.s.w $f0, $f0 +/* 3BD3A4 E00C0644 46001080 */ add.s $f2, $f2, $f0 +/* 3BD3A8 E00C0648 3C014248 */ lui $at, 0x4248 +/* 3BD3AC E00C064C 44810000 */ mtc1 $at, $f0 +/* 3BD3B0 E00C0650 24040002 */ addiu $a0, $zero, 2 +/* 3BD3B4 E00C0654 46001080 */ add.s $f2, $f2, $f0 +/* 3BD3B8 E00C0658 4405A000 */ mfc1 $a1, $f20 +/* 3BD3BC E00C065C 3C014080 */ lui $at, 0x4080 +/* 3BD3C0 E00C0660 44810000 */ mtc1 $at, $f0 +/* 3BD3C4 E00C0664 44061000 */ mfc1 $a2, $f2 +/* 3BD3C8 E00C0668 24020028 */ addiu $v0, $zero, 0x28 +/* 3BD3CC E00C066C AFA20014 */ sw $v0, 0x14($sp) +/* 3BD3D0 E00C0670 0C037800 */ jal func_E00DE000 +/* 3BD3D4 E00C0674 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3BD3D8 E00C0678 0C080150 */ jal func_E0200540 +/* 3BD3DC E00C067C 24040072 */ addiu $a0, $zero, 0x72 +/* 3BD3E0 E00C0680 C6020004 */ lwc1 $f2, 4($s0) +/* 3BD3E4 E00C0684 C6000030 */ lwc1 $f0, 0x30($s0) +/* 3BD3E8 E00C0688 46001080 */ add.s $f2, $f2, $f0 +/* 3BD3EC E00C068C 24040001 */ addiu $a0, $zero, 1 +/* 3BD3F0 E00C0690 C6000034 */ lwc1 $f0, 0x34($s0) +/* 3BD3F4 E00C0694 44051000 */ mfc1 $a1, $f2 +/* 3BD3F8 E00C0698 C6020008 */ lwc1 $f2, 8($s0) +/* 3BD3FC E00C069C C6080038 */ lwc1 $f8, 0x38($s0) +/* 3BD400 E00C06A0 46001080 */ add.s $f2, $f2, $f0 +/* 3BD404 E00C06A4 C600000C */ lwc1 $f0, 0xc($s0) +/* 3BD408 E00C06A8 2402000A */ addiu $v0, $zero, 0xa +/* 3BD40C E00C06AC 46080000 */ add.s $f0, $f0, $f8 +/* 3BD410 E00C06B0 3C014120 */ lui $at, 0x4120 +/* 3BD414 E00C06B4 44812000 */ mtc1 $at, $f4 +/* 3BD418 E00C06B8 3C014270 */ lui $at, 0x4270 +/* 3BD41C E00C06BC 44813000 */ mtc1 $at, $f6 +/* 3BD420 E00C06C0 46041080 */ add.s $f2, $f2, $f4 +/* 3BD424 E00C06C4 AFA2001C */ sw $v0, 0x1c($sp) +/* 3BD428 E00C06C8 3C014000 */ lui $at, 0x4000 +/* 3BD42C E00C06CC 44812000 */ mtc1 $at, $f4 +/* 3BD430 E00C06D0 46060000 */ add.s $f0, $f0, $f6 +/* 3BD434 E00C06D4 44061000 */ mfc1 $a2, $f2 +/* 3BD438 E00C06D8 3C0142C8 */ lui $at, 0x42c8 +/* 3BD43C E00C06DC 44811000 */ mtc1 $at, $f2 +/* 3BD440 E00C06E0 44070000 */ mfc1 $a3, $f0 +/* 3BD444 E00C06E4 2402001E */ addiu $v0, $zero, 0x1e +/* 3BD448 E00C06E8 AFA20020 */ sw $v0, 0x20($sp) +/* 3BD44C E00C06EC E7A60010 */ swc1 $f6, 0x10($sp) +/* 3BD450 E00C06F0 E7A40018 */ swc1 $f4, 0x18($sp) +/* 3BD454 E00C06F4 0C039000 */ jal func_E00E4000 +/* 3BD458 E00C06F8 E7A20014 */ swc1 $f2, 0x14($sp) +.LE00C06FC: +/* 3BD45C E00C06FC 8FBF002C */ lw $ra, 0x2c($sp) +/* 3BD460 E00C0700 8FB00028 */ lw $s0, 0x28($sp) +/* 3BD464 E00C0704 D7B40030 */ ldc1 $f20, 0x30($sp) +/* 3BD468 E00C0708 03E00008 */ jr $ra +/* 3BD46C E00C070C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_3BCD60/func_E00C0710.s b/asm/nonmatchings/code_3BCD60/func_E00C0710.s new file mode 100644 index 0000000000..27391f7a8a --- /dev/null +++ b/asm/nonmatchings/code_3BCD60/func_E00C0710.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C0710 +/* 3BD470 E00C0710 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3BD474 E00C0714 3C02E00C */ lui $v0, %hi(D_E00C0760) +/* 3BD478 E00C0718 24420760 */ addiu $v0, $v0, %lo(D_E00C0760) +/* 3BD47C E00C071C AFA2001C */ sw $v0, 0x1c($sp) +/* 3BD480 E00C0720 2402FFF6 */ addiu $v0, $zero, -0xa +/* 3BD484 E00C0724 AFA20014 */ sw $v0, 0x14($sp) +/* 3BD488 E00C0728 24020028 */ addiu $v0, $zero, 0x28 +/* 3BD48C E00C072C AFA40018 */ sw $a0, 0x18($sp) +/* 3BD490 E00C0730 27A40010 */ addiu $a0, $sp, 0x10 +/* 3BD494 E00C0734 AFBF0020 */ sw $ra, 0x20($sp) +/* 3BD498 E00C0738 0C080120 */ jal func_E0200480 +/* 3BD49C E00C073C AFA20010 */ sw $v0, 0x10($sp) +/* 3BD4A0 E00C0740 8C430000 */ lw $v1, ($v0) +/* 3BD4A4 E00C0744 34630002 */ ori $v1, $v1, 2 +/* 3BD4A8 E00C0748 AC430000 */ sw $v1, ($v0) +/* 3BD4AC E00C074C 8FBF0020 */ lw $ra, 0x20($sp) +/* 3BD4B0 E00C0750 03E00008 */ jr $ra +/* 3BD4B4 E00C0754 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3BCD60/func_E00C0758.s b/asm/nonmatchings/code_3BCD60/func_E00C0758.s new file mode 100644 index 0000000000..58a36412d2 --- /dev/null +++ b/asm/nonmatchings/code_3BCD60/func_E00C0758.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C0758 +/* 3BD4B8 E00C0758 03E00008 */ jr $ra +/* 3BD4BC E00C075C 00000000 */ nop diff --git a/asm/nonmatchings/code_3BCD60/func_E00C0760.s b/asm/nonmatchings/code_3BCD60/func_E00C0760.s new file mode 100644 index 0000000000..53a82f8fce --- /dev/null +++ b/asm/nonmatchings/code_3BCD60/func_E00C0760.s @@ -0,0 +1,176 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C0760 +/* 3BD4C0 E00C0760 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 3BD4C4 E00C0764 0080282D */ daddu $a1, $a0, $zero +/* 3BD4C8 E00C0768 3C06DB06 */ lui $a2, 0xdb06 +/* 3BD4CC E00C076C 34C60024 */ ori $a2, $a2, 0x24 +/* 3BD4D0 E00C0770 27A40018 */ addiu $a0, $sp, 0x18 +/* 3BD4D4 E00C0774 AFB1009C */ sw $s1, 0x9c($sp) +/* 3BD4D8 E00C0778 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 3BD4DC E00C077C 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 3BD4E0 E00C0780 AFB500AC */ sw $s5, 0xac($sp) +/* 3BD4E4 E00C0784 3C150001 */ lui $s5, 1 +/* 3BD4E8 E00C0788 3C02E700 */ lui $v0, 0xe700 +/* 3BD4EC E00C078C AFBF00B4 */ sw $ra, 0xb4($sp) +/* 3BD4F0 E00C0790 AFB600B0 */ sw $s6, 0xb0($sp) +/* 3BD4F4 E00C0794 AFB400A8 */ sw $s4, 0xa8($sp) +/* 3BD4F8 E00C0798 AFB300A4 */ sw $s3, 0xa4($sp) +/* 3BD4FC E00C079C AFB200A0 */ sw $s2, 0xa0($sp) +/* 3BD500 E00C07A0 AFB00098 */ sw $s0, 0x98($sp) +/* 3BD504 E00C07A4 8E280000 */ lw $t0, ($s1) +/* 3BD508 E00C07A8 8CB0000C */ lw $s0, 0xc($a1) +/* 3BD50C E00C07AC 0100182D */ daddu $v1, $t0, $zero +/* 3BD510 E00C07B0 8E160024 */ lw $s6, 0x24($s0) +/* 3BD514 E00C07B4 25080008 */ addiu $t0, $t0, 8 +/* 3BD518 E00C07B8 AC620000 */ sw $v0, ($v1) +/* 3BD51C E00C07BC AC600004 */ sw $zero, 4($v1) +/* 3BD520 E00C07C0 AD060000 */ sw $a2, ($t0) +/* 3BD524 E00C07C4 8CA20010 */ lw $v0, 0x10($a1) +/* 3BD528 E00C07C8 36B51630 */ ori $s5, $s5, 0x1630 +/* 3BD52C E00C07CC AE280000 */ sw $t0, ($s1) +/* 3BD530 E00C07D0 8C42001C */ lw $v0, 0x1c($v0) +/* 3BD534 E00C07D4 3C038000 */ lui $v1, 0x8000 +/* 3BD538 E00C07D8 00431021 */ addu $v0, $v0, $v1 +/* 3BD53C E00C07DC AD020004 */ sw $v0, 4($t0) +/* 3BD540 E00C07E0 8E050004 */ lw $a1, 4($s0) +/* 3BD544 E00C07E4 8E060008 */ lw $a2, 8($s0) +/* 3BD548 E00C07E8 8E07000C */ lw $a3, 0xc($s0) +/* 3BD54C E00C07EC 25080008 */ addiu $t0, $t0, 8 +/* 3BD550 E00C07F0 0C080108 */ jal func_E0200420 +/* 3BD554 E00C07F4 AE280000 */ sw $t0, ($s1) +/* 3BD558 E00C07F8 27B20058 */ addiu $s2, $sp, 0x58 +/* 3BD55C E00C07FC 8E050028 */ lw $a1, 0x28($s0) +/* 3BD560 E00C0800 0240202D */ daddu $a0, $s2, $zero +/* 3BD564 E00C0804 00A0302D */ daddu $a2, $a1, $zero +/* 3BD568 E00C0808 0C080110 */ jal func_E0200440 +/* 3BD56C E00C080C 00A0382D */ daddu $a3, $a1, $zero +/* 3BD570 E00C0810 0240202D */ daddu $a0, $s2, $zero +/* 3BD574 E00C0814 27A50018 */ addiu $a1, $sp, 0x18 +/* 3BD578 E00C0818 0C080114 */ jal func_E0200450 +/* 3BD57C E00C081C 00A0302D */ daddu $a2, $a1, $zero +/* 3BD580 E00C0820 27A40018 */ addiu $a0, $sp, 0x18 +/* 3BD584 E00C0824 3C138007 */ lui $s3, %hi(D_800741F0) +/* 3BD588 E00C0828 267341F0 */ addiu $s3, $s3, %lo(D_800741F0) +/* 3BD58C E00C082C 3C14800A */ lui $s4, %hi(D_8009A674) +/* 3BD590 E00C0830 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 3BD594 E00C0834 96650000 */ lhu $a1, ($s3) +/* 3BD598 E00C0838 8E820000 */ lw $v0, ($s4) +/* 3BD59C E00C083C 00052980 */ sll $a1, $a1, 6 +/* 3BD5A0 E00C0840 00B52821 */ addu $a1, $a1, $s5 +/* 3BD5A4 E00C0844 0C080118 */ jal func_E0200460 +/* 3BD5A8 E00C0848 00452821 */ addu $a1, $v0, $a1 +/* 3BD5AC E00C084C 3C02DA38 */ lui $v0, 0xda38 +/* 3BD5B0 E00C0850 34420002 */ ori $v0, $v0, 2 +/* 3BD5B4 E00C0854 27A40018 */ addiu $a0, $sp, 0x18 +/* 3BD5B8 E00C0858 8E280000 */ lw $t0, ($s1) +/* 3BD5BC E00C085C 96690000 */ lhu $t1, ($s3) +/* 3BD5C0 E00C0860 0100282D */ daddu $a1, $t0, $zero +/* 3BD5C4 E00C0864 ACA20000 */ sw $v0, ($a1) +/* 3BD5C8 E00C0868 3122FFFF */ andi $v0, $t1, 0xffff +/* 3BD5CC E00C086C 00021180 */ sll $v0, $v0, 6 +/* 3BD5D0 E00C0870 00551021 */ addu $v0, $v0, $s5 +/* 3BD5D4 E00C0874 8E830000 */ lw $v1, ($s4) +/* 3BD5D8 E00C0878 25080008 */ addiu $t0, $t0, 8 +/* 3BD5DC E00C087C 00621821 */ addu $v1, $v1, $v0 +/* 3BD5E0 E00C0880 ACA30004 */ sw $v1, 4($a1) +/* 3BD5E4 E00C0884 8E050030 */ lw $a1, 0x30($s0) +/* 3BD5E8 E00C0888 8E060034 */ lw $a2, 0x34($s0) +/* 3BD5EC E00C088C 8E070038 */ lw $a3, 0x38($s0) +/* 3BD5F0 E00C0890 25290001 */ addiu $t1, $t1, 1 +/* 3BD5F4 E00C0894 AE280000 */ sw $t0, ($s1) +/* 3BD5F8 E00C0898 0C080108 */ jal func_E0200420 +/* 3BD5FC E00C089C A6690000 */ sh $t1, ($s3) +/* 3BD600 E00C08A0 0240202D */ daddu $a0, $s2, $zero +/* 3BD604 E00C08A4 8E050048 */ lw $a1, 0x48($s0) +/* 3BD608 E00C08A8 8E06004C */ lw $a2, 0x4c($s0) +/* 3BD60C E00C08AC 0C080110 */ jal func_E0200440 +/* 3BD610 E00C08B0 00A0382D */ daddu $a3, $a1, $zero +/* 3BD614 E00C08B4 0240202D */ daddu $a0, $s2, $zero +/* 3BD618 E00C08B8 27A50018 */ addiu $a1, $sp, 0x18 +/* 3BD61C E00C08BC 0C080114 */ jal func_E0200450 +/* 3BD620 E00C08C0 00A0302D */ daddu $a2, $a1, $zero +/* 3BD624 E00C08C4 44800000 */ mtc1 $zero, $f0 +/* 3BD628 E00C08C8 3C073F80 */ lui $a3, 0x3f80 +/* 3BD62C E00C08CC E7A00010 */ swc1 $f0, 0x10($sp) +/* 3BD630 E00C08D0 8E05002C */ lw $a1, 0x2c($s0) +/* 3BD634 E00C08D4 44060000 */ mfc1 $a2, $f0 +/* 3BD638 E00C08D8 0C080104 */ jal func_E0200410 +/* 3BD63C E00C08DC 0240202D */ daddu $a0, $s2, $zero +/* 3BD640 E00C08E0 0240202D */ daddu $a0, $s2, $zero +/* 3BD644 E00C08E4 27A50018 */ addiu $a1, $sp, 0x18 +/* 3BD648 E00C08E8 0C080114 */ jal func_E0200450 +/* 3BD64C E00C08EC 00A0302D */ daddu $a2, $a1, $zero +/* 3BD650 E00C08F0 27A40018 */ addiu $a0, $sp, 0x18 +/* 3BD654 E00C08F4 96650000 */ lhu $a1, ($s3) +/* 3BD658 E00C08F8 8E820000 */ lw $v0, ($s4) +/* 3BD65C E00C08FC 00052980 */ sll $a1, $a1, 6 +/* 3BD660 E00C0900 00B52821 */ addu $a1, $a1, $s5 +/* 3BD664 E00C0904 0C080118 */ jal func_E0200460 +/* 3BD668 E00C0908 00452821 */ addu $a1, $v0, $a1 +/* 3BD66C E00C090C 3C08D838 */ lui $t0, 0xd838 +/* 3BD670 E00C0910 35080002 */ ori $t0, $t0, 2 +/* 3BD674 E00C0914 8E240000 */ lw $a0, ($s1) +/* 3BD678 E00C0918 3C03DA38 */ lui $v1, 0xda38 +/* 3BD67C E00C091C 0080282D */ daddu $a1, $a0, $zero +/* 3BD680 E00C0920 24840008 */ addiu $a0, $a0, 8 +/* 3BD684 E00C0924 AE240000 */ sw $a0, ($s1) +/* 3BD688 E00C0928 96620000 */ lhu $v0, ($s3) +/* 3BD68C E00C092C 32D600FF */ andi $s6, $s6, 0xff +/* 3BD690 E00C0930 ACA30000 */ sw $v1, ($a1) +/* 3BD694 E00C0934 24430001 */ addiu $v1, $v0, 1 +/* 3BD698 E00C0938 3042FFFF */ andi $v0, $v0, 0xffff +/* 3BD69C E00C093C 00021180 */ sll $v0, $v0, 6 +/* 3BD6A0 E00C0940 A6630000 */ sh $v1, ($s3) +/* 3BD6A4 E00C0944 8E830000 */ lw $v1, ($s4) +/* 3BD6A8 E00C0948 00551021 */ addu $v0, $v0, $s5 +/* 3BD6AC E00C094C 00621821 */ addu $v1, $v1, $v0 +/* 3BD6B0 E00C0950 24820008 */ addiu $v0, $a0, 8 +/* 3BD6B4 E00C0954 ACA30004 */ sw $v1, 4($a1) +/* 3BD6B8 E00C0958 AE220000 */ sw $v0, ($s1) +/* 3BD6BC E00C095C 3C02FA00 */ lui $v0, 0xfa00 +/* 3BD6C0 E00C0960 AC820000 */ sw $v0, ($a0) +/* 3BD6C4 E00C0964 24820010 */ addiu $v0, $a0, 0x10 +/* 3BD6C8 E00C0968 9203001B */ lbu $v1, 0x1b($s0) +/* 3BD6CC E00C096C 9206001F */ lbu $a2, 0x1f($s0) +/* 3BD6D0 E00C0970 92070023 */ lbu $a3, 0x23($s0) +/* 3BD6D4 E00C0974 3C05DE00 */ lui $a1, 0xde00 +/* 3BD6D8 E00C0978 AE220000 */ sw $v0, ($s1) +/* 3BD6DC E00C097C 3C020900 */ lui $v0, 0x900 +/* 3BD6E0 E00C0980 244237A8 */ addiu $v0, $v0, 0x37a8 +/* 3BD6E4 E00C0984 AC82000C */ sw $v0, 0xc($a0) +/* 3BD6E8 E00C0988 24820018 */ addiu $v0, $a0, 0x18 +/* 3BD6EC E00C098C AC850008 */ sw $a1, 8($a0) +/* 3BD6F0 E00C0990 AE220000 */ sw $v0, ($s1) +/* 3BD6F4 E00C0994 3C020900 */ lui $v0, 0x900 +/* 3BD6F8 E00C0998 24423818 */ addiu $v0, $v0, 0x3818 +/* 3BD6FC E00C099C AC820014 */ sw $v0, 0x14($a0) +/* 3BD700 E00C09A0 24820020 */ addiu $v0, $a0, 0x20 +/* 3BD704 E00C09A4 AC850010 */ sw $a1, 0x10($a0) +/* 3BD708 E00C09A8 24050040 */ addiu $a1, $zero, 0x40 +/* 3BD70C E00C09AC AE220000 */ sw $v0, ($s1) +/* 3BD710 E00C09B0 24820028 */ addiu $v0, $a0, 0x28 +/* 3BD714 E00C09B4 AC880018 */ sw $t0, 0x18($a0) +/* 3BD718 E00C09B8 AC85001C */ sw $a1, 0x1c($a0) +/* 3BD71C E00C09BC AE220000 */ sw $v0, ($s1) +/* 3BD720 E00C09C0 AC880020 */ sw $t0, 0x20($a0) +/* 3BD724 E00C09C4 AC850024 */ sw $a1, 0x24($a0) +/* 3BD728 E00C09C8 00031E00 */ sll $v1, $v1, 0x18 +/* 3BD72C E00C09CC 00063400 */ sll $a2, $a2, 0x10 +/* 3BD730 E00C09D0 00661825 */ or $v1, $v1, $a2 +/* 3BD734 E00C09D4 00073A00 */ sll $a3, $a3, 8 +/* 3BD738 E00C09D8 00671825 */ or $v1, $v1, $a3 +/* 3BD73C E00C09DC 00761825 */ or $v1, $v1, $s6 +/* 3BD740 E00C09E0 AC830004 */ sw $v1, 4($a0) +/* 3BD744 E00C09E4 8FBF00B4 */ lw $ra, 0xb4($sp) +/* 3BD748 E00C09E8 8FB600B0 */ lw $s6, 0xb0($sp) +/* 3BD74C E00C09EC 8FB500AC */ lw $s5, 0xac($sp) +/* 3BD750 E00C09F0 8FB400A8 */ lw $s4, 0xa8($sp) +/* 3BD754 E00C09F4 8FB300A4 */ lw $s3, 0xa4($sp) +/* 3BD758 E00C09F8 8FB200A0 */ lw $s2, 0xa0($sp) +/* 3BD75C E00C09FC 8FB1009C */ lw $s1, 0x9c($sp) +/* 3BD760 E00C0A00 8FB00098 */ lw $s0, 0x98($sp) +/* 3BD764 E00C0A04 03E00008 */ jr $ra +/* 3BD768 E00C0A08 27BD00B8 */ addiu $sp, $sp, 0xb8 +/* 3BD76C E00C0A0C 00000000 */ nop diff --git a/asm/nonmatchings/code_3C11D0/func_E00C2000.s b/asm/nonmatchings/code_3C11D0/func_E00C2000.s new file mode 100644 index 0000000000..d314774e36 --- /dev/null +++ b/asm/nonmatchings/code_3C11D0/func_E00C2000.s @@ -0,0 +1,81 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C2000 +/* 3C11D0 E00C2000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3C11D4 E00C2004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3C11D8 E00C2008 4485A000 */ mtc1 $a1, $f20 +/* 3C11DC E00C200C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3C11E0 E00C2010 4486B000 */ mtc1 $a2, $f22 +/* 3C11E4 E00C2014 AFB20030 */ sw $s2, 0x30($sp) +/* 3C11E8 E00C2018 0080902D */ daddu $s2, $a0, $zero +/* 3C11EC E00C201C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3C11F0 E00C2020 4487C000 */ mtc1 $a3, $f24 +/* 3C11F4 E00C2024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3C11F8 E00C2028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3C11FC E00C202C 8FB10064 */ lw $s1, 0x64($sp) +/* 3C1200 E00C2030 3C02E00C */ lui $v0, %hi(D_E00C2124) +/* 3C1204 E00C2034 24422124 */ addiu $v0, $v0, %lo(D_E00C2124) +/* 3C1208 E00C2038 AFA20018 */ sw $v0, 0x18($sp) +/* 3C120C E00C203C 3C02E00C */ lui $v0, %hi(D_E00C212C) +/* 3C1210 E00C2040 2442212C */ addiu $v0, $v0, %lo(D_E00C212C) +/* 3C1214 E00C2044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3C1218 E00C2048 3C02E00C */ lui $v0, %hi(D_E00C21CC) +/* 3C121C E00C204C 244221CC */ addiu $v0, $v0, %lo(D_E00C21CC) +/* 3C1220 E00C2050 AFA20020 */ sw $v0, 0x20($sp) +/* 3C1224 E00C2054 24020061 */ addiu $v0, $zero, 0x61 +/* 3C1228 E00C2058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3C122C E00C205C AFB00028 */ sw $s0, 0x28($sp) +/* 3C1230 E00C2060 AFA00010 */ sw $zero, 0x10($sp) +/* 3C1234 E00C2064 AFA00024 */ sw $zero, 0x24($sp) +/* 3C1238 E00C2068 0C080124 */ jal func_E0200490 +/* 3C123C E00C206C AFA20014 */ sw $v0, 0x14($sp) +/* 3C1240 E00C2070 2404002C */ addiu $a0, $zero, 0x2c +/* 3C1244 E00C2074 24030001 */ addiu $v1, $zero, 1 +/* 3C1248 E00C2078 0040802D */ daddu $s0, $v0, $zero +/* 3C124C E00C207C 0C08012C */ jal func_E02004B0 +/* 3C1250 E00C2080 AE030008 */ sw $v1, 8($s0) +/* 3C1254 E00C2084 0040202D */ daddu $a0, $v0, $zero +/* 3C1258 E00C2088 14800003 */ bnez $a0, .LE00C2098 +/* 3C125C E00C208C AE02000C */ sw $v0, 0xc($s0) +.LE00C2090: +/* 3C1260 E00C2090 08030824 */ j .LE00C2090 +/* 3C1264 E00C2094 00000000 */ nop +.LE00C2098: +/* 3C1268 E00C2098 AC920000 */ sw $s2, ($a0) +/* 3C126C E00C209C 1E200004 */ bgtz $s1, .LE00C20B0 +/* 3C1270 E00C20A0 AC800014 */ sw $zero, 0x14($a0) +/* 3C1274 E00C20A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3C1278 E00C20A8 0803082D */ j .LE00C20B4 +/* 3C127C E00C20AC AC820010 */ sw $v0, 0x10($a0) +.LE00C20B0: +/* 3C1280 E00C20B0 AC910010 */ sw $s1, 0x10($a0) +.LE00C20B4: +/* 3C1284 E00C20B4 0200102D */ daddu $v0, $s0, $zero +/* 3C1288 E00C20B8 AC800024 */ sw $zero, 0x24($a0) +/* 3C128C E00C20BC E4940004 */ swc1 $f20, 4($a0) +/* 3C1290 E00C20C0 E4960008 */ swc1 $f22, 8($a0) +/* 3C1294 E00C20C4 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3C1298 E00C20C8 3C01E00C */ lui $at, %hi(D_E00C29A0) +/* 3C129C E00C20CC D42229A0 */ ldc1 $f2, %lo(D_E00C29A0)($at) +/* 3C12A0 E00C20D0 46000021 */ cvt.d.s $f0, $f0 +/* 3C12A4 E00C20D4 46220002 */ mul.d $f0, $f0, $f2 +/* 3C12A8 E00C20D8 00000000 */ nop +/* 3C12AC E00C20DC 24030046 */ addiu $v1, $zero, 0x46 +/* 3C12B0 E00C20E0 AC830018 */ sw $v1, 0x18($a0) +/* 3C12B4 E00C20E4 240300B4 */ addiu $v1, $zero, 0xb4 +/* 3C12B8 E00C20E8 AC83001C */ sw $v1, 0x1c($a0) +/* 3C12BC E00C20EC 24030078 */ addiu $v1, $zero, 0x78 +/* 3C12C0 E00C20F0 E498000C */ swc1 $f24, 0xc($a0) +/* 3C12C4 E00C20F4 AC830020 */ sw $v1, 0x20($a0) +/* 3C12C8 E00C20F8 46200020 */ cvt.s.d $f0, $f0 +/* 3C12CC E00C20FC E4800028 */ swc1 $f0, 0x28($a0) +/* 3C12D0 E00C2100 8FBF0034 */ lw $ra, 0x34($sp) +/* 3C12D4 E00C2104 8FB20030 */ lw $s2, 0x30($sp) +/* 3C12D8 E00C2108 8FB1002C */ lw $s1, 0x2c($sp) +/* 3C12DC E00C210C 8FB00028 */ lw $s0, 0x28($sp) +/* 3C12E0 E00C2110 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3C12E4 E00C2114 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3C12E8 E00C2118 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3C12EC E00C211C 03E00008 */ jr $ra +/* 3C12F0 E00C2120 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3C11D0/func_E00C2124.s b/asm/nonmatchings/code_3C11D0/func_E00C2124.s new file mode 100644 index 0000000000..ff269125d3 --- /dev/null +++ b/asm/nonmatchings/code_3C11D0/func_E00C2124.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C2124 +/* 3C12F4 E00C2124 03E00008 */ jr $ra +/* 3C12F8 E00C2128 00000000 */ nop diff --git a/asm/nonmatchings/code_3C11D0/func_E00C212C.s b/asm/nonmatchings/code_3C11D0/func_E00C212C.s new file mode 100644 index 0000000000..6fa74f19a8 --- /dev/null +++ b/asm/nonmatchings/code_3C11D0/func_E00C212C.s @@ -0,0 +1,50 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C212C +/* 3C12FC E00C212C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3C1300 E00C2130 AFBF0010 */ sw $ra, 0x10($sp) +/* 3C1304 E00C2134 8C830000 */ lw $v1, ($a0) +/* 3C1308 E00C2138 8C85000C */ lw $a1, 0xc($a0) +/* 3C130C E00C213C 30620010 */ andi $v0, $v1, 0x10 +/* 3C1310 E00C2140 10400005 */ beqz $v0, .LE00C2158 +/* 3C1314 E00C2144 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3C1318 E00C2148 00621024 */ and $v0, $v1, $v0 +/* 3C131C E00C214C AC820000 */ sw $v0, ($a0) +/* 3C1320 E00C2150 24020010 */ addiu $v0, $zero, 0x10 +/* 3C1324 E00C2154 ACA20010 */ sw $v0, 0x10($a1) +.LE00C2158: +/* 3C1328 E00C2158 8CA30010 */ lw $v1, 0x10($a1) +/* 3C132C E00C215C 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3C1330 E00C2160 10400002 */ beqz $v0, .LE00C216C +/* 3C1334 E00C2164 2462FFFF */ addiu $v0, $v1, -1 +/* 3C1338 E00C2168 ACA20010 */ sw $v0, 0x10($a1) +.LE00C216C: +/* 3C133C E00C216C 8CA20014 */ lw $v0, 0x14($a1) +/* 3C1340 E00C2170 8CA60010 */ lw $a2, 0x10($a1) +/* 3C1344 E00C2174 24430001 */ addiu $v1, $v0, 1 +/* 3C1348 E00C2178 04C10005 */ bgez $a2, .LE00C2190 +/* 3C134C E00C217C ACA30014 */ sw $v1, 0x14($a1) +/* 3C1350 E00C2180 0C080128 */ jal func_E02004A0 +/* 3C1354 E00C2184 00000000 */ nop +/* 3C1358 E00C2188 08030870 */ j .LE00C21C0 +/* 3C135C E00C218C 00000000 */ nop +.LE00C2190: +/* 3C1360 E00C2190 28620010 */ slti $v0, $v1, 0x10 +/* 3C1364 E00C2194 10400004 */ beqz $v0, .LE00C21A8 +/* 3C1368 E00C2198 00C0202D */ daddu $a0, $a2, $zero +/* 3C136C E00C219C 00031100 */ sll $v0, $v1, 4 +/* 3C1370 E00C21A0 0803086B */ j .LE00C21AC +/* 3C1374 E00C21A4 2442000F */ addiu $v0, $v0, 0xf +.LE00C21A8: +/* 3C1378 E00C21A8 240200FF */ addiu $v0, $zero, 0xff +.LE00C21AC: +/* 3C137C E00C21AC ACA20024 */ sw $v0, 0x24($a1) +/* 3C1380 E00C21B0 28820010 */ slti $v0, $a0, 0x10 +/* 3C1384 E00C21B4 10400002 */ beqz $v0, .LE00C21C0 +/* 3C1388 E00C21B8 00041100 */ sll $v0, $a0, 4 +/* 3C138C E00C21BC ACA20024 */ sw $v0, 0x24($a1) +.LE00C21C0: +/* 3C1390 E00C21C0 8FBF0010 */ lw $ra, 0x10($sp) +/* 3C1394 E00C21C4 03E00008 */ jr $ra +/* 3C1398 E00C21C8 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3C11D0/func_E00C21CC.s b/asm/nonmatchings/code_3C11D0/func_E00C21CC.s new file mode 100644 index 0000000000..f5c186b09d --- /dev/null +++ b/asm/nonmatchings/code_3C11D0/func_E00C21CC.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C21CC +/* 3C139C E00C21CC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3C13A0 E00C21D0 3C02E00C */ lui $v0, %hi(D_E00C221C) +/* 3C13A4 E00C21D4 2442221C */ addiu $v0, $v0, %lo(D_E00C221C) +/* 3C13A8 E00C21D8 AFA2001C */ sw $v0, 0x1c($sp) +/* 3C13AC E00C21DC 2402000A */ addiu $v0, $zero, 0xa +/* 3C13B0 E00C21E0 AFA20014 */ sw $v0, 0x14($sp) +/* 3C13B4 E00C21E4 2402002D */ addiu $v0, $zero, 0x2d +/* 3C13B8 E00C21E8 AFA40018 */ sw $a0, 0x18($sp) +/* 3C13BC E00C21EC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3C13C0 E00C21F0 AFBF0020 */ sw $ra, 0x20($sp) +/* 3C13C4 E00C21F4 0C080120 */ jal func_E0200480 +/* 3C13C8 E00C21F8 AFA20010 */ sw $v0, 0x10($sp) +/* 3C13CC E00C21FC 8C430000 */ lw $v1, ($v0) +/* 3C13D0 E00C2200 34630002 */ ori $v1, $v1, 2 +/* 3C13D4 E00C2204 AC430000 */ sw $v1, ($v0) +/* 3C13D8 E00C2208 8FBF0020 */ lw $ra, 0x20($sp) +/* 3C13DC E00C220C 03E00008 */ jr $ra +/* 3C13E0 E00C2210 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3C11D0/func_E00C2214.s b/asm/nonmatchings/code_3C11D0/func_E00C2214.s new file mode 100644 index 0000000000..710c70c669 --- /dev/null +++ b/asm/nonmatchings/code_3C11D0/func_E00C2214.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C2214 +/* 3C13E4 E00C2214 03E00008 */ jr $ra +/* 3C13E8 E00C2218 00000000 */ nop diff --git a/asm/nonmatchings/code_3C11D0/func_E00C221C.s b/asm/nonmatchings/code_3C11D0/func_E00C221C.s new file mode 100644 index 0000000000..ad682e75fa --- /dev/null +++ b/asm/nonmatchings/code_3C11D0/func_E00C221C.s @@ -0,0 +1,494 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C221C +/* 3C13EC E00C221C 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 3C13F0 E00C2220 0080302D */ daddu $a2, $a0, $zero +/* 3C13F4 E00C2224 3C07DB06 */ lui $a3, 0xdb06 +/* 3C13F8 E00C2228 34E70024 */ ori $a3, $a3, 0x24 +/* 3C13FC E00C222C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3C1400 E00C2230 AFB300A4 */ sw $s3, 0xa4($sp) +/* 3C1404 E00C2234 3C130001 */ lui $s3, 1 +/* 3C1408 E00C2238 AFB400A8 */ sw $s4, 0xa8($sp) +/* 3C140C E00C223C 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 3C1410 E00C2240 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 3C1414 E00C2244 AFBF00B8 */ sw $ra, 0xb8($sp) +/* 3C1418 E00C2248 AFB700B4 */ sw $s7, 0xb4($sp) +/* 3C141C E00C224C AFB600B0 */ sw $s6, 0xb0($sp) +/* 3C1420 E00C2250 AFB500AC */ sw $s5, 0xac($sp) +/* 3C1424 E00C2254 AFB200A0 */ sw $s2, 0xa0($sp) +/* 3C1428 E00C2258 AFB1009C */ sw $s1, 0x9c($sp) +/* 3C142C E00C225C AFB00098 */ sw $s0, 0x98($sp) +/* 3C1430 E00C2260 8E850000 */ lw $a1, ($s4) +/* 3C1434 E00C2264 8CD6000C */ lw $s6, 0xc($a2) +/* 3C1438 E00C2268 00A0182D */ daddu $v1, $a1, $zero +/* 3C143C E00C226C 24A50008 */ addiu $a1, $a1, 8 +/* 3C1440 E00C2270 AE850000 */ sw $a1, ($s4) +/* 3C1444 E00C2274 8ED50014 */ lw $s5, 0x14($s6) +/* 3C1448 E00C2278 8ED70024 */ lw $s7, 0x24($s6) +/* 3C144C E00C227C 3C02E700 */ lui $v0, 0xe700 +/* 3C1450 E00C2280 AFB70090 */ sw $s7, 0x90($sp) +/* 3C1454 E00C2284 AC620000 */ sw $v0, ($v1) +/* 3C1458 E00C2288 AC600004 */ sw $zero, 4($v1) +/* 3C145C E00C228C ACA70000 */ sw $a3, ($a1) +/* 3C1460 E00C2290 8CC30010 */ lw $v1, 0x10($a2) +/* 3C1464 E00C2294 24A20008 */ addiu $v0, $a1, 8 +/* 3C1468 E00C2298 AE820000 */ sw $v0, ($s4) +/* 3C146C E00C229C 8C62001C */ lw $v0, 0x1c($v1) +/* 3C1470 E00C22A0 3C038000 */ lui $v1, 0x8000 +/* 3C1474 E00C22A4 00431021 */ addu $v0, $v0, $v1 +/* 3C1478 E00C22A8 3C03800B */ lui $v1, %hi(gCameras) +/* 3C147C E00C22AC 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3C1480 E00C22B0 ACA20004 */ sw $v0, 4($a1) +/* 3C1484 E00C22B4 8EC50004 */ lw $a1, 4($s6) +/* 3C1488 E00C22B8 8EC60008 */ lw $a2, 8($s6) +/* 3C148C E00C22BC 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3C1490 E00C22C0 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3C1494 E00C22C4 8EC7000C */ lw $a3, 0xc($s6) +/* 3C1498 E00C22C8 00028080 */ sll $s0, $v0, 2 +/* 3C149C E00C22CC 02028021 */ addu $s0, $s0, $v0 +/* 3C14A0 E00C22D0 00108080 */ sll $s0, $s0, 2 +/* 3C14A4 E00C22D4 02028023 */ subu $s0, $s0, $v0 +/* 3C14A8 E00C22D8 001010C0 */ sll $v0, $s0, 3 +/* 3C14AC E00C22DC 02028021 */ addu $s0, $s0, $v0 +/* 3C14B0 E00C22E0 001080C0 */ sll $s0, $s0, 3 +/* 3C14B4 E00C22E4 0C080108 */ jal func_E0200420 +/* 3C14B8 E00C22E8 02038021 */ addu $s0, $s0, $v1 +/* 3C14BC E00C22EC C6C00028 */ lwc1 $f0, 0x28($s6) +/* 3C14C0 E00C22F0 36731630 */ ori $s3, $s3, 0x1630 +/* 3C14C4 E00C22F4 44060000 */ mfc1 $a2, $f0 +/* 3C14C8 E00C22F8 27B10050 */ addiu $s1, $sp, 0x50 +/* 3C14CC E00C22FC 44867000 */ mtc1 $a2, $f14 +/* 3C14D0 E00C2300 0220202D */ daddu $a0, $s1, $zero +/* 3C14D4 E00C2304 46007387 */ neg.s $f14, $f14 +/* 3C14D8 E00C2308 44057000 */ mfc1 $a1, $f14 +/* 3C14DC E00C230C 0C080110 */ jal func_E0200440 +/* 3C14E0 E00C2310 00C0382D */ daddu $a3, $a2, $zero +/* 3C14E4 E00C2314 0220202D */ daddu $a0, $s1, $zero +/* 3C14E8 E00C2318 27A50010 */ addiu $a1, $sp, 0x10 +/* 3C14EC E00C231C 0C080114 */ jal func_E0200450 +/* 3C14F0 E00C2320 00A0302D */ daddu $a2, $a1, $zero +/* 3C14F4 E00C2324 27A40010 */ addiu $a0, $sp, 0x10 +/* 3C14F8 E00C2328 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3C14FC E00C232C 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3C1500 E00C2330 3C12800A */ lui $s2, %hi(D_8009A674) +/* 3C1504 E00C2334 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 3C1508 E00C2338 96250000 */ lhu $a1, ($s1) +/* 3C150C E00C233C 8E420000 */ lw $v0, ($s2) +/* 3C1510 E00C2340 00052980 */ sll $a1, $a1, 6 +/* 3C1514 E00C2344 00B32821 */ addu $a1, $a1, $s3 +/* 3C1518 E00C2348 0C080118 */ jal func_E0200460 +/* 3C151C E00C234C 00452821 */ addu $a1, $v0, $a1 +/* 3C1520 E00C2350 3C03DA38 */ lui $v1, 0xda38 +/* 3C1524 E00C2354 34630002 */ ori $v1, $v1, 2 +/* 3C1528 E00C2358 3C05DA38 */ lui $a1, 0xda38 +/* 3C152C E00C235C 34A50001 */ ori $a1, $a1, 1 +/* 3C1530 E00C2360 24020036 */ addiu $v0, $zero, 0x36 +/* 3C1534 E00C2364 00553823 */ subu $a3, $v0, $s5 +/* 3C1538 E00C2368 8E860000 */ lw $a2, ($s4) +/* 3C153C E00C236C 96220000 */ lhu $v0, ($s1) +/* 3C1540 E00C2370 00C0202D */ daddu $a0, $a2, $zero +/* 3C1544 E00C2374 24C60008 */ addiu $a2, $a2, 8 +/* 3C1548 E00C2378 AE860000 */ sw $a2, ($s4) +/* 3C154C E00C237C AC830000 */ sw $v1, ($a0) +/* 3C1550 E00C2380 24430001 */ addiu $v1, $v0, 1 +/* 3C1554 E00C2384 3042FFFF */ andi $v0, $v0, 0xffff +/* 3C1558 E00C2388 00021180 */ sll $v0, $v0, 6 +/* 3C155C E00C238C A6230000 */ sh $v1, ($s1) +/* 3C1560 E00C2390 8E430000 */ lw $v1, ($s2) +/* 3C1564 E00C2394 00531021 */ addu $v0, $v0, $s3 +/* 3C1568 E00C2398 00621821 */ addu $v1, $v1, $v0 +/* 3C156C E00C239C 24C20008 */ addiu $v0, $a2, 8 +/* 3C1570 E00C23A0 AC830004 */ sw $v1, 4($a0) +/* 3C1574 E00C23A4 AE820000 */ sw $v0, ($s4) +/* 3C1578 E00C23A8 24C20010 */ addiu $v0, $a2, 0x10 +/* 3C157C E00C23AC ACC50000 */ sw $a1, ($a2) +/* 3C1580 E00C23B0 AE820000 */ sw $v0, ($s4) +/* 3C1584 E00C23B4 8E030204 */ lw $v1, 0x204($s0) +/* 3C1588 E00C23B8 3C02DE00 */ lui $v0, 0xde00 +/* 3C158C E00C23BC ACC20008 */ sw $v0, 8($a2) +/* 3C1590 E00C23C0 3C020901 */ lui $v0, 0x901 +/* 3C1594 E00C23C4 24428BE0 */ addiu $v0, $v0, -0x7420 +/* 3C1598 E00C23C8 ACC2000C */ sw $v0, 0xc($a2) +/* 3C159C E00C23CC 04E10002 */ bgez $a3, .LE00C23D8 +/* 3C15A0 E00C23D0 ACC30004 */ sw $v1, 4($a2) +/* 3C15A4 E00C23D4 0000382D */ daddu $a3, $zero, $zero +.LE00C23D8: +/* 3C15A8 E00C23D8 3C030101 */ lui $v1, 0x101 +/* 3C15AC E00C23DC 3463602C */ ori $v1, $v1, 0x602c +/* 3C15B0 E00C23E0 02A0202D */ daddu $a0, $s5, $zero +/* 3C15B4 E00C23E4 24C20018 */ addiu $v0, $a2, 0x18 +/* 3C15B8 E00C23E8 AE820000 */ sw $v0, ($s4) +/* 3C15BC E00C23EC ACC30010 */ sw $v1, 0x10($a2) +/* 3C15C0 E00C23F0 3C030900 */ lui $v1, 0x900 +/* 3C15C4 E00C23F4 24634040 */ addiu $v1, $v1, 0x4040 +/* 3C15C8 E00C23F8 00071040 */ sll $v0, $a3, 1 +/* 3C15CC E00C23FC 00471021 */ addu $v0, $v0, $a3 +/* 3C15D0 E00C2400 00021080 */ sll $v0, $v0, 2 +/* 3C15D4 E00C2404 00471023 */ subu $v0, $v0, $a3 +/* 3C15D8 E00C2408 00021140 */ sll $v0, $v0, 5 +/* 3C15DC E00C240C 00431021 */ addu $v0, $v0, $v1 +/* 3C15E0 E00C2410 06A10002 */ bgez $s5, .LE00C241C +/* 3C15E4 E00C2414 ACC20014 */ sw $v0, 0x14($a2) +/* 3C15E8 E00C2418 26A4000F */ addiu $a0, $s5, 0xf +.LE00C241C: +/* 3C15EC E00C241C 0000602D */ daddu $t4, $zero, $zero +/* 3C15F0 E00C2420 0280482D */ daddu $t1, $s4, $zero +/* 3C15F4 E00C2424 3C148000 */ lui $s4, 0x8000 +/* 3C15F8 E00C2428 3C12FD48 */ lui $s2, 0xfd48 +/* 3C15FC E00C242C 3652003F */ ori $s2, $s2, 0x3f +/* 3C1600 E00C2430 3C110709 */ lui $s1, 0x709 +/* 3C1604 E00C2434 3631FA7E */ ori $s1, $s1, 0xfa7e +/* 3C1608 E00C2438 3C19E600 */ lui $t9, 0xe600 +/* 3C160C E00C243C 3C18F400 */ lui $t8, 0xf400 +/* 3C1610 E00C2440 3C10070F */ lui $s0, 0x70f +/* 3C1614 E00C2444 3610E000 */ ori $s0, $s0, 0xe000 +/* 3C1618 E00C2448 3C13E700 */ lui $s3, 0xe700 +/* 3C161C E00C244C 3C0FF200 */ lui $t7, 0xf200 +/* 3C1620 E00C2450 0180702D */ daddu $t6, $t4, $zero +/* 3C1624 E00C2454 0180682D */ daddu $t5, $t4, $zero +/* 3C1628 E00C2458 00041103 */ sra $v0, $a0, 4 +/* 3C162C E00C245C 00021100 */ sll $v0, $v0, 4 +/* 3C1630 E00C2460 02A21023 */ subu $v0, $s5, $v0 +/* 3C1634 E00C2464 3C03E00C */ lui $v1, %hi(D_E00C2990) +/* 3C1638 E00C2468 24632990 */ addiu $v1, $v1, %lo(D_E00C2990) +/* 3C163C E00C246C 00431021 */ addu $v0, $v0, $v1 +/* 3C1640 E00C2470 3C01437F */ lui $at, 0x437f +/* 3C1644 E00C2474 44816000 */ mtc1 $at, $f12 +/* 3C1648 E00C2478 3C014F00 */ lui $at, 0x4f00 +/* 3C164C E00C247C 44813000 */ mtc1 $at, $f6 +/* 3C1650 E00C2480 3C014300 */ lui $at, 0x4300 +/* 3C1654 E00C2484 44815000 */ mtc1 $at, $f10 +/* 3C1658 E00C2488 3C014080 */ lui $at, 0x4080 +/* 3C165C E00C248C 44814000 */ mtc1 $at, $f8 +/* 3C1660 E00C2490 90430000 */ lbu $v1, ($v0) +/* 3C1664 E00C2494 24C20020 */ addiu $v0, $a2, 0x20 +/* 3C1668 E00C2498 AD220000 */ sw $v0, ($t1) +/* 3C166C E00C249C 3C02FB00 */ lui $v0, 0xfb00 +/* 3C1670 E00C24A0 ACC20018 */ sw $v0, 0x18($a2) +/* 3C1674 E00C24A4 ACC3001C */ sw $v1, 0x1c($a2) +.LE00C24A8: +/* 3C1678 E00C24A8 29820005 */ slti $v0, $t4, 5 +/* 3C167C E00C24AC 14400002 */ bnez $v0, .LE00C24B8 +/* 3C1680 E00C24B0 000D5880 */ sll $t3, $t5, 2 +/* 3C1684 E00C24B4 25CB0004 */ addiu $t3, $t6, 4 +.LE00C24B8: +/* 3C1688 E00C24B8 3C013DCC */ lui $at, 0x3dcc +/* 3C168C E00C24BC 3421CCCD */ ori $at, $at, 0xcccd +/* 3C1690 E00C24C0 44811000 */ mtc1 $at, $f2 +/* 3C1694 E00C24C4 448C0000 */ mtc1 $t4, $f0 +/* 3C1698 E00C24C8 00000000 */ nop +/* 3C169C E00C24CC 46800020 */ cvt.s.w $f0, $f0 +/* 3C16A0 E00C24D0 46020102 */ mul.s $f4, $f0, $f2 +/* 3C16A4 E00C24D4 00000000 */ nop +/* 3C16A8 E00C24D8 3C013F80 */ lui $at, 0x3f80 +/* 3C16AC E00C24DC 44811000 */ mtc1 $at, $f2 +/* 3C16B0 E00C24E0 00000000 */ nop +/* 3C16B4 E00C24E4 46041081 */ sub.s $f2, $f2, $f4 +/* 3C16B8 E00C24E8 C7A00090 */ lwc1 $f0, 0x90($sp) +/* 3C16BC E00C24EC 46800020 */ cvt.s.w $f0, $f0 +/* 3C16C0 E00C24F0 46020002 */ mul.s $f0, $f0, $f2 +/* 3C16C4 E00C24F4 00000000 */ nop +/* 3C16C8 E00C24F8 46000000 */ add.s $f0, $f0, $f0 +/* 3C16CC E00C24FC 4600603C */ c.lt.s $f12, $f0 +/* 3C16D0 E00C2500 00000000 */ nop +/* 3C16D4 E00C2504 45030001 */ bc1tl .LE00C250C +/* 3C16D8 E00C2508 46006006 */ mov.s $f0, $f12 +.LE00C250C: +/* 3C16DC E00C250C 8D220000 */ lw $v0, ($t1) +/* 3C16E0 E00C2510 4600303E */ c.le.s $f6, $f0 +/* 3C16E4 E00C2514 0040182D */ daddu $v1, $v0, $zero +/* 3C16E8 E00C2518 24420008 */ addiu $v0, $v0, 8 +/* 3C16EC E00C251C AD220000 */ sw $v0, ($t1) +/* 3C16F0 E00C2520 3C02FA00 */ lui $v0, 0xfa00 +/* 3C16F4 E00C2524 246A0004 */ addiu $t2, $v1, 4 +/* 3C16F8 E00C2528 AC620000 */ sw $v0, ($v1) +/* 3C16FC E00C252C 92C4001B */ lbu $a0, 0x1b($s6) +/* 3C1700 E00C2530 92C3001F */ lbu $v1, 0x1f($s6) +/* 3C1704 E00C2534 92C20023 */ lbu $v0, 0x23($s6) +/* 3C1708 E00C2538 00042600 */ sll $a0, $a0, 0x18 +/* 3C170C E00C253C 00031C00 */ sll $v1, $v1, 0x10 +/* 3C1710 E00C2540 00832025 */ or $a0, $a0, $v1 +/* 3C1714 E00C2544 00021200 */ sll $v0, $v0, 8 +/* 3C1718 E00C2548 45010005 */ bc1t .LE00C2560 +/* 3C171C E00C254C 00822025 */ or $a0, $a0, $v0 +/* 3C1720 E00C2550 4600038D */ trunc.w.s $f14, $f0 +/* 3C1724 E00C2554 44027000 */ mfc1 $v0, $f14 +/* 3C1728 E00C2558 0803095E */ j .LE00C2578 +/* 3C172C E00C255C 3C05F548 */ lui $a1, 0xf548 +.LE00C2560: +/* 3C1730 E00C2560 46060001 */ sub.s $f0, $f0, $f6 +/* 3C1734 E00C2564 4600038D */ trunc.w.s $f14, $f0 +/* 3C1738 E00C2568 44027000 */ mfc1 $v0, $f14 +/* 3C173C E00C256C 00000000 */ nop +/* 3C1740 E00C2570 00541025 */ or $v0, $v0, $s4 +/* 3C1744 E00C2574 3C05F548 */ lui $a1, 0xf548 +.LE00C2578: +/* 3C1748 E00C2578 34A51000 */ ori $a1, $a1, 0x1000 +/* 3C174C E00C257C 3C07F540 */ lui $a3, 0xf540 +/* 3C1750 E00C2580 34E71000 */ ori $a3, $a3, 0x1000 +/* 3C1754 E00C2584 3C060009 */ lui $a2, 9 +/* 3C1758 E00C2588 34C6FA7E */ ori $a2, $a2, 0xfa7e +/* 3C175C E00C258C 3C08001F */ lui $t0, 0x1f +/* 3C1760 E00C2590 3508C000 */ ori $t0, $t0, 0xc000 +/* 3C1764 E00C2594 304200FF */ andi $v0, $v0, 0xff +/* 3C1768 E00C2598 8D230000 */ lw $v1, ($t1) +/* 3C176C E00C259C 00821025 */ or $v0, $a0, $v0 +/* 3C1770 E00C25A0 AD420000 */ sw $v0, ($t2) +/* 3C1774 E00C25A4 3C020900 */ lui $v0, 0x900 +/* 3C1778 E00C25A8 24422020 */ addiu $v0, $v0, 0x2020 +/* 3C177C E00C25AC 460A2002 */ mul.s $f0, $f4, $f10 +/* 3C1780 E00C25B0 00000000 */ nop +/* 3C1784 E00C25B4 0060202D */ daddu $a0, $v1, $zero +/* 3C1788 E00C25B8 24630008 */ addiu $v1, $v1, 8 +/* 3C178C E00C25BC AD230000 */ sw $v1, ($t1) +/* 3C1790 E00C25C0 AC820004 */ sw $v0, 4($a0) +/* 3C1794 E00C25C4 24620008 */ addiu $v0, $v1, 8 +/* 3C1798 E00C25C8 AC920000 */ sw $s2, ($a0) +/* 3C179C E00C25CC AD220000 */ sw $v0, ($t1) +/* 3C17A0 E00C25D0 24620010 */ addiu $v0, $v1, 0x10 +/* 3C17A4 E00C25D4 AC650000 */ sw $a1, ($v1) +/* 3C17A8 E00C25D8 AC710004 */ sw $s1, 4($v1) +/* 3C17AC E00C25DC AD220000 */ sw $v0, ($t1) +/* 3C17B0 E00C25E0 24620018 */ addiu $v0, $v1, 0x18 +/* 3C17B4 E00C25E4 000B2880 */ sll $a1, $t3, 2 +/* 3C17B8 E00C25E8 30A50FFF */ andi $a1, $a1, 0xfff +/* 3C17BC E00C25EC AC790008 */ sw $t9, 8($v1) +/* 3C17C0 E00C25F0 AC60000C */ sw $zero, 0xc($v1) +/* 3C17C4 E00C25F4 AD220000 */ sw $v0, ($t1) +/* 3C17C8 E00C25F8 00B81025 */ or $v0, $a1, $t8 +/* 3C17CC E00C25FC 2564000F */ addiu $a0, $t3, 0xf +/* 3C17D0 E00C2600 00042080 */ sll $a0, $a0, 2 +/* 3C17D4 E00C2604 30840FFF */ andi $a0, $a0, 0xfff +/* 3C17D8 E00C2608 AC620010 */ sw $v0, 0x10($v1) +/* 3C17DC E00C260C 00901025 */ or $v0, $a0, $s0 +/* 3C17E0 E00C2610 AC620014 */ sw $v0, 0x14($v1) +/* 3C17E4 E00C2614 24620020 */ addiu $v0, $v1, 0x20 +/* 3C17E8 E00C2618 AD220000 */ sw $v0, ($t1) +/* 3C17EC E00C261C 24620028 */ addiu $v0, $v1, 0x28 +/* 3C17F0 E00C2620 AC730018 */ sw $s3, 0x18($v1) +/* 3C17F4 E00C2624 AC60001C */ sw $zero, 0x1c($v1) +/* 3C17F8 E00C2628 AD220000 */ sw $v0, ($t1) +/* 3C17FC E00C262C 24620030 */ addiu $v0, $v1, 0x30 +/* 3C1800 E00C2630 00AF2825 */ or $a1, $a1, $t7 +/* 3C1804 E00C2634 00882025 */ or $a0, $a0, $t0 +/* 3C1808 E00C2638 AC670020 */ sw $a3, 0x20($v1) +/* 3C180C E00C263C AC660024 */ sw $a2, 0x24($v1) +/* 3C1810 E00C2640 AD220000 */ sw $v0, ($t1) +/* 3C1814 E00C2644 AC650028 */ sw $a1, 0x28($v1) +/* 3C1818 E00C2648 46080002 */ mul.s $f0, $f0, $f8 +/* 3C181C E00C264C 00000000 */ nop +/* 3C1820 E00C2650 AC64002C */ sw $a0, 0x2c($v1) +/* 3C1824 E00C2654 24630038 */ addiu $v1, $v1, 0x38 +/* 3C1828 E00C2658 0040502D */ daddu $t2, $v0, $zero +/* 3C182C E00C265C 4600303E */ c.le.s $f6, $f0 +/* 3C1830 E00C2660 00000000 */ nop +/* 3C1834 E00C2664 45010005 */ bc1t .LE00C267C +/* 3C1838 E00C2668 AD230000 */ sw $v1, ($t1) +/* 3C183C E00C266C 4600038D */ trunc.w.s $f14, $f0 +/* 3C1840 E00C2670 44027000 */ mfc1 $v0, $f14 +/* 3C1844 E00C2674 080309A5 */ j .LE00C2694 +/* 3C1848 E00C2678 3C04007D */ lui $a0, 0x7d +.LE00C267C: +/* 3C184C E00C267C 46060001 */ sub.s $f0, $f0, $f6 +/* 3C1850 E00C2680 4600038D */ trunc.w.s $f14, $f0 +/* 3C1854 E00C2684 44027000 */ mfc1 $v0, $f14 +/* 3C1858 E00C2688 00000000 */ nop +/* 3C185C E00C268C 00541025 */ or $v0, $v0, $s4 +/* 3C1860 E00C2690 3C04007D */ lui $a0, 0x7d +.LE00C2694: +/* 3C1864 E00C2694 348407D0 */ ori $a0, $a0, 0x7d0 +/* 3C1868 E00C2698 3C05F548 */ lui $a1, 0xf548 +/* 3C186C E00C269C 34A51080 */ ori $a1, $a1, 0x1080 +/* 3C1870 E00C26A0 3C07F540 */ lui $a3, 0xf540 +/* 3C1874 E00C26A4 34E71080 */ ori $a3, $a3, 0x1080 +/* 3C1878 E00C26A8 3C060119 */ lui $a2, 0x119 +/* 3C187C E00C26AC 34C6FA7E */ ori $a2, $a2, 0xfa7e +/* 3C1880 E00C26B0 3C08011F */ lui $t0, 0x11f +/* 3C1884 E00C26B4 3508C000 */ ori $t0, $t0, 0xc000 +/* 3C1888 E00C26B8 30420FFF */ andi $v0, $v0, 0xfff +/* 3C188C E00C26BC 8D230000 */ lw $v1, ($t1) +/* 3C1890 E00C26C0 004F1025 */ or $v0, $v0, $t7 +/* 3C1894 E00C26C4 AD420000 */ sw $v0, ($t2) +/* 3C1898 E00C26C8 3C020900 */ lui $v0, 0x900 +/* 3C189C E00C26CC 24420000 */ addiu $v0, $v0, 0 +/* 3C18A0 E00C26D0 460A2002 */ mul.s $f0, $f4, $f10 +/* 3C18A4 E00C26D4 00000000 */ nop +/* 3C18A8 E00C26D8 AD440004 */ sw $a0, 4($t2) +/* 3C18AC E00C26DC 0060202D */ daddu $a0, $v1, $zero +/* 3C18B0 E00C26E0 24630008 */ addiu $v1, $v1, 8 +/* 3C18B4 E00C26E4 AD230000 */ sw $v1, ($t1) +/* 3C18B8 E00C26E8 AC820004 */ sw $v0, 4($a0) +/* 3C18BC E00C26EC 24620008 */ addiu $v0, $v1, 8 +/* 3C18C0 E00C26F0 AC920000 */ sw $s2, ($a0) +/* 3C18C4 E00C26F4 AD220000 */ sw $v0, ($t1) +/* 3C18C8 E00C26F8 24620010 */ addiu $v0, $v1, 0x10 +/* 3C18CC E00C26FC AC650000 */ sw $a1, ($v1) +/* 3C18D0 E00C2700 AC710004 */ sw $s1, 4($v1) +/* 3C18D4 E00C2704 AD220000 */ sw $v0, ($t1) +/* 3C18D8 E00C2708 24620018 */ addiu $v0, $v1, 0x18 +/* 3C18DC E00C270C 000B2880 */ sll $a1, $t3, 2 +/* 3C18E0 E00C2710 30A50FFF */ andi $a1, $a1, 0xfff +/* 3C18E4 E00C2714 AC790008 */ sw $t9, 8($v1) +/* 3C18E8 E00C2718 AC60000C */ sw $zero, 0xc($v1) +/* 3C18EC E00C271C AD220000 */ sw $v0, ($t1) +/* 3C18F0 E00C2720 00B81025 */ or $v0, $a1, $t8 +/* 3C18F4 E00C2724 2564000F */ addiu $a0, $t3, 0xf +/* 3C18F8 E00C2728 00042080 */ sll $a0, $a0, 2 +/* 3C18FC E00C272C 30840FFF */ andi $a0, $a0, 0xfff +/* 3C1900 E00C2730 AC620010 */ sw $v0, 0x10($v1) +/* 3C1904 E00C2734 00901025 */ or $v0, $a0, $s0 +/* 3C1908 E00C2738 AC620014 */ sw $v0, 0x14($v1) +/* 3C190C E00C273C 24620020 */ addiu $v0, $v1, 0x20 +/* 3C1910 E00C2740 AD220000 */ sw $v0, ($t1) +/* 3C1914 E00C2744 24620028 */ addiu $v0, $v1, 0x28 +/* 3C1918 E00C2748 AC730018 */ sw $s3, 0x18($v1) +/* 3C191C E00C274C AC60001C */ sw $zero, 0x1c($v1) +/* 3C1920 E00C2750 AD220000 */ sw $v0, ($t1) +/* 3C1924 E00C2754 24620030 */ addiu $v0, $v1, 0x30 +/* 3C1928 E00C2758 00AF2825 */ or $a1, $a1, $t7 +/* 3C192C E00C275C 00882025 */ or $a0, $a0, $t0 +/* 3C1930 E00C2760 AC670020 */ sw $a3, 0x20($v1) +/* 3C1934 E00C2764 AC660024 */ sw $a2, 0x24($v1) +/* 3C1938 E00C2768 AD220000 */ sw $v0, ($t1) +/* 3C193C E00C276C AC650028 */ sw $a1, 0x28($v1) +/* 3C1940 E00C2770 46080002 */ mul.s $f0, $f0, $f8 +/* 3C1944 E00C2774 00000000 */ nop +/* 3C1948 E00C2778 AC64002C */ sw $a0, 0x2c($v1) +/* 3C194C E00C277C 24630038 */ addiu $v1, $v1, 0x38 +/* 3C1950 E00C2780 0040202D */ daddu $a0, $v0, $zero +/* 3C1954 E00C2784 4600303E */ c.le.s $f6, $f0 +/* 3C1958 E00C2788 00000000 */ nop +/* 3C195C E00C278C 45010005 */ bc1t .LE00C27A4 +/* 3C1960 E00C2790 AD230000 */ sw $v1, ($t1) +/* 3C1964 E00C2794 4600038D */ trunc.w.s $f14, $f0 +/* 3C1968 E00C2798 44037000 */ mfc1 $v1, $f14 +/* 3C196C E00C279C 080309EF */ j .LE00C27BC +/* 3C1970 E00C27A0 3C02017D */ lui $v0, 0x17d +.LE00C27A4: +/* 3C1974 E00C27A4 46060001 */ sub.s $f0, $f0, $f6 +/* 3C1978 E00C27A8 4600038D */ trunc.w.s $f14, $f0 +/* 3C197C E00C27AC 44037000 */ mfc1 $v1, $f14 +/* 3C1980 E00C27B0 00000000 */ nop +/* 3C1984 E00C27B4 00741825 */ or $v1, $v1, $s4 +/* 3C1988 E00C27B8 3C02017D */ lui $v0, 0x17d +.LE00C27BC: +/* 3C198C E00C27BC 344207D0 */ ori $v0, $v0, 0x7d0 +/* 3C1990 E00C27C0 30630FFF */ andi $v1, $v1, 0xfff +/* 3C1994 E00C27C4 006F1825 */ or $v1, $v1, $t7 +/* 3C1998 E00C27C8 AC820004 */ sw $v0, 4($a0) +/* 3C199C E00C27CC 2D82000A */ sltiu $v0, $t4, 0xa +/* 3C19A0 E00C27D0 1040004B */ beqz $v0, .LE00C2900 +/* 3C19A4 E00C27D4 AC830000 */ sw $v1, ($a0) +/* 3C19A8 E00C27D8 000C1080 */ sll $v0, $t4, 2 +/* 3C19AC E00C27DC 3C01E00C */ lui $at, %hi(D_E00C29A8) +/* 3C19B0 E00C27E0 00220821 */ addu $at, $at, $v0 +/* 3C19B4 E00C27E4 8C2229A8 */ lw $v0, %lo(D_E00C29A8)($at) +/* 3C19B8 E00C27E8 00400008 */ jr $v0 +/* 3C19BC E00C27EC 00000000 */ nop +/* 3C19C0 E00C27F0 3C040600 */ lui $a0, 0x600 +/* 3C19C4 E00C27F4 8D220000 */ lw $v0, ($t1) +/* 3C19C8 E00C27F8 34840204 */ ori $a0, $a0, 0x204 +/* 3C19CC E00C27FC 0040182D */ daddu $v1, $v0, $zero +/* 3C19D0 E00C2800 24420008 */ addiu $v0, $v0, 8 +/* 3C19D4 E00C2804 AD220000 */ sw $v0, ($t1) +/* 3C19D8 E00C2808 24020406 */ addiu $v0, $zero, 0x406 +/* 3C19DC E00C280C AC640000 */ sw $a0, ($v1) +/* 3C19E0 E00C2810 08030A40 */ j .LE00C2900 +/* 3C19E4 E00C2814 AC620004 */ sw $v0, 4($v1) +/* 3C19E8 E00C2818 3C050602 */ lui $a1, 0x602 +/* 3C19EC E00C281C 34A5080A */ ori $a1, $a1, 0x80a +/* 3C19F0 E00C2820 3C040002 */ lui $a0, 2 +/* 3C19F4 E00C2824 8D220000 */ lw $v0, ($t1) +/* 3C19F8 E00C2828 08030A3B */ j .LE00C28EC +/* 3C19FC E00C282C 34840A04 */ ori $a0, $a0, 0xa04 +/* 3C1A00 E00C2830 3C050608 */ lui $a1, 0x608 +/* 3C1A04 E00C2834 34A50C0E */ ori $a1, $a1, 0xc0e +/* 3C1A08 E00C2838 3C040008 */ lui $a0, 8 +/* 3C1A0C E00C283C 8D220000 */ lw $v0, ($t1) +/* 3C1A10 E00C2840 08030A3B */ j .LE00C28EC +/* 3C1A14 E00C2844 34840E0A */ ori $a0, $a0, 0xe0a +/* 3C1A18 E00C2848 3C05060C */ lui $a1, 0x60c +/* 3C1A1C E00C284C 34A51012 */ ori $a1, $a1, 0x1012 +/* 3C1A20 E00C2850 3C04000C */ lui $a0, 0xc +/* 3C1A24 E00C2854 8D220000 */ lw $v0, ($t1) +/* 3C1A28 E00C2858 08030A3B */ j .LE00C28EC +/* 3C1A2C E00C285C 3484120E */ ori $a0, $a0, 0x120e +/* 3C1A30 E00C2860 3C050610 */ lui $a1, 0x610 +/* 3C1A34 E00C2864 34A51416 */ ori $a1, $a1, 0x1416 +/* 3C1A38 E00C2868 3C040010 */ lui $a0, 0x10 +/* 3C1A3C E00C286C 8D220000 */ lw $v0, ($t1) +/* 3C1A40 E00C2870 08030A3B */ j .LE00C28EC +/* 3C1A44 E00C2874 34841612 */ ori $a0, $a0, 0x1612 +/* 3C1A48 E00C2878 3C050614 */ lui $a1, 0x614 +/* 3C1A4C E00C287C 34A5181A */ ori $a1, $a1, 0x181a +/* 3C1A50 E00C2880 3C040014 */ lui $a0, 0x14 +/* 3C1A54 E00C2884 8D220000 */ lw $v0, ($t1) +/* 3C1A58 E00C2888 08030A3B */ j .LE00C28EC +/* 3C1A5C E00C288C 34841A16 */ ori $a0, $a0, 0x1a16 +/* 3C1A60 E00C2890 3C050618 */ lui $a1, 0x618 +/* 3C1A64 E00C2894 34A51C1E */ ori $a1, $a1, 0x1c1e +/* 3C1A68 E00C2898 3C040018 */ lui $a0, 0x18 +/* 3C1A6C E00C289C 8D220000 */ lw $v0, ($t1) +/* 3C1A70 E00C28A0 08030A3B */ j .LE00C28EC +/* 3C1A74 E00C28A4 34841E1A */ ori $a0, $a0, 0x1e1a +/* 3C1A78 E00C28A8 3C05061C */ lui $a1, 0x61c +/* 3C1A7C E00C28AC 34A52022 */ ori $a1, $a1, 0x2022 +/* 3C1A80 E00C28B0 3C04001C */ lui $a0, 0x1c +/* 3C1A84 E00C28B4 8D220000 */ lw $v0, ($t1) +/* 3C1A88 E00C28B8 08030A3B */ j .LE00C28EC +/* 3C1A8C E00C28BC 3484221E */ ori $a0, $a0, 0x221e +/* 3C1A90 E00C28C0 3C050620 */ lui $a1, 0x620 +/* 3C1A94 E00C28C4 34A52426 */ ori $a1, $a1, 0x2426 +/* 3C1A98 E00C28C8 3C040020 */ lui $a0, 0x20 +/* 3C1A9C E00C28CC 8D220000 */ lw $v0, ($t1) +/* 3C1AA0 E00C28D0 08030A3B */ j .LE00C28EC +/* 3C1AA4 E00C28D4 34842622 */ ori $a0, $a0, 0x2622 +/* 3C1AA8 E00C28D8 3C050624 */ lui $a1, 0x624 +/* 3C1AAC E00C28DC 34A5282A */ ori $a1, $a1, 0x282a +/* 3C1AB0 E00C28E0 3C040024 */ lui $a0, 0x24 +/* 3C1AB4 E00C28E4 8D220000 */ lw $v0, ($t1) +/* 3C1AB8 E00C28E8 34842A26 */ ori $a0, $a0, 0x2a26 +.LE00C28EC: +/* 3C1ABC E00C28EC 0040182D */ daddu $v1, $v0, $zero +/* 3C1AC0 E00C28F0 24420008 */ addiu $v0, $v0, 8 +/* 3C1AC4 E00C28F4 AD220000 */ sw $v0, ($t1) +/* 3C1AC8 E00C28F8 AC650000 */ sw $a1, ($v1) +/* 3C1ACC E00C28FC AC640004 */ sw $a0, 4($v1) +.LE00C2900: +/* 3C1AD0 E00C2900 25CE000C */ addiu $t6, $t6, 0xc +/* 3C1AD4 E00C2904 25AD0003 */ addiu $t5, $t5, 3 +/* 3C1AD8 E00C2908 8D220000 */ lw $v0, ($t1) +/* 3C1ADC E00C290C 258C0001 */ addiu $t4, $t4, 1 +/* 3C1AE0 E00C2910 0040182D */ daddu $v1, $v0, $zero +/* 3C1AE4 E00C2914 24420008 */ addiu $v0, $v0, 8 +/* 3C1AE8 E00C2918 AD220000 */ sw $v0, ($t1) +/* 3C1AEC E00C291C 2982000A */ slti $v0, $t4, 0xa +/* 3C1AF0 E00C2920 AC730000 */ sw $s3, ($v1) +/* 3C1AF4 E00C2924 1440FEE0 */ bnez $v0, .LE00C24A8 +/* 3C1AF8 E00C2928 AC600004 */ sw $zero, 4($v1) +/* 3C1AFC E00C292C 3C05D838 */ lui $a1, 0xd838 +/* 3C1B00 E00C2930 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3C1B04 E00C2934 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3C1B08 E00C2938 8C620000 */ lw $v0, ($v1) +/* 3C1B0C E00C293C 34A50002 */ ori $a1, $a1, 2 +/* 3C1B10 E00C2940 0040202D */ daddu $a0, $v0, $zero +/* 3C1B14 E00C2944 24420008 */ addiu $v0, $v0, 8 +/* 3C1B18 E00C2948 AC620000 */ sw $v0, ($v1) +/* 3C1B1C E00C294C 24020040 */ addiu $v0, $zero, 0x40 +/* 3C1B20 E00C2950 AC850000 */ sw $a1, ($a0) +/* 3C1B24 E00C2954 AC820004 */ sw $v0, 4($a0) +/* 3C1B28 E00C2958 8FBF00B8 */ lw $ra, 0xb8($sp) +/* 3C1B2C E00C295C 8FB700B4 */ lw $s7, 0xb4($sp) +/* 3C1B30 E00C2960 8FB600B0 */ lw $s6, 0xb0($sp) +/* 3C1B34 E00C2964 8FB500AC */ lw $s5, 0xac($sp) +/* 3C1B38 E00C2968 8FB400A8 */ lw $s4, 0xa8($sp) +/* 3C1B3C E00C296C 8FB300A4 */ lw $s3, 0xa4($sp) +/* 3C1B40 E00C2970 8FB200A0 */ lw $s2, 0xa0($sp) +/* 3C1B44 E00C2974 8FB1009C */ lw $s1, 0x9c($sp) +/* 3C1B48 E00C2978 8FB00098 */ lw $s0, 0x98($sp) +/* 3C1B4C E00C297C 03E00008 */ jr $ra +/* 3C1B50 E00C2980 27BD00C0 */ addiu $sp, $sp, 0xc0 +/* 3C1B54 E00C2984 00000000 */ nop +/* 3C1B58 E00C2988 00000000 */ nop +/* 3C1B5C E00C298C 00000000 */ nop diff --git a/asm/nonmatchings/code_3CADF0/func_E00C4000.s b/asm/nonmatchings/code_3CADF0/func_E00C4000.s new file mode 100644 index 0000000000..3c9208d224 --- /dev/null +++ b/asm/nonmatchings/code_3CADF0/func_E00C4000.s @@ -0,0 +1,101 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C4000 +/* 3CADF0 E00C4000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3CADF4 E00C4004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3CADF8 E00C4008 4485A000 */ mtc1 $a1, $f20 +/* 3CADFC E00C400C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3CAE00 E00C4010 4486B000 */ mtc1 $a2, $f22 +/* 3CAE04 E00C4014 AFB20030 */ sw $s2, 0x30($sp) +/* 3CAE08 E00C4018 0080902D */ daddu $s2, $a0, $zero +/* 3CAE0C E00C401C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3CAE10 E00C4020 4487C000 */ mtc1 $a3, $f24 +/* 3CAE14 E00C4024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3CAE18 E00C4028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3CAE1C E00C402C 8FB10064 */ lw $s1, 0x64($sp) +/* 3CAE20 E00C4030 3C02E00C */ lui $v0, %hi(D_E00C4170) +/* 3CAE24 E00C4034 24424170 */ addiu $v0, $v0, %lo(D_E00C4170) +/* 3CAE28 E00C4038 AFA20018 */ sw $v0, 0x18($sp) +/* 3CAE2C E00C403C 3C02E00C */ lui $v0, %hi(D_E00C4178) +/* 3CAE30 E00C4040 24424178 */ addiu $v0, $v0, %lo(D_E00C4178) +/* 3CAE34 E00C4044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3CAE38 E00C4048 3C02E00C */ lui $v0, %hi(D_E00C42C4) +/* 3CAE3C E00C404C 244242C4 */ addiu $v0, $v0, %lo(D_E00C42C4) +/* 3CAE40 E00C4050 AFA20020 */ sw $v0, 0x20($sp) +/* 3CAE44 E00C4054 24020062 */ addiu $v0, $zero, 0x62 +/* 3CAE48 E00C4058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3CAE4C E00C405C AFB00028 */ sw $s0, 0x28($sp) +/* 3CAE50 E00C4060 AFA00010 */ sw $zero, 0x10($sp) +/* 3CAE54 E00C4064 AFA00024 */ sw $zero, 0x24($sp) +/* 3CAE58 E00C4068 0C080124 */ jal func_E0200490 +/* 3CAE5C E00C406C AFA20014 */ sw $v0, 0x14($sp) +/* 3CAE60 E00C4070 24040174 */ addiu $a0, $zero, 0x174 +/* 3CAE64 E00C4074 24030001 */ addiu $v1, $zero, 1 +/* 3CAE68 E00C4078 0040802D */ daddu $s0, $v0, $zero +/* 3CAE6C E00C407C 0C08012C */ jal func_E02004B0 +/* 3CAE70 E00C4080 AE030008 */ sw $v1, 8($s0) +/* 3CAE74 E00C4084 0040182D */ daddu $v1, $v0, $zero +/* 3CAE78 E00C4088 14600003 */ bnez $v1, .LE00C4098 +/* 3CAE7C E00C408C AE02000C */ sw $v0, 0xc($s0) +.LE00C4090: +/* 3CAE80 E00C4090 08031024 */ j .LE00C4090 +/* 3CAE84 E00C4094 00000000 */ nop +.LE00C4098: +/* 3CAE88 E00C4098 AC720000 */ sw $s2, ($v1) +/* 3CAE8C E00C409C 1E200004 */ bgtz $s1, .LE00C40B0 +/* 3CAE90 E00C40A0 AC600014 */ sw $zero, 0x14($v1) +/* 3CAE94 E00C40A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3CAE98 E00C40A8 0803102D */ j .LE00C40B4 +/* 3CAE9C E00C40AC AC620010 */ sw $v0, 0x10($v1) +.LE00C40B0: +/* 3CAEA0 E00C40B0 AC710010 */ sw $s1, 0x10($v1) +.LE00C40B4: +/* 3CAEA4 E00C40B4 0000282D */ daddu $a1, $zero, $zero +/* 3CAEA8 E00C40B8 3C04E00C */ lui $a0, %hi(D_E00C4A10) +/* 3CAEAC E00C40BC 24844A10 */ addiu $a0, $a0, %lo(D_E00C4A10) +/* 3CAEB0 E00C40C0 AC600024 */ sw $zero, 0x24($v1) +/* 3CAEB4 E00C40C4 E4740004 */ swc1 $f20, 4($v1) +/* 3CAEB8 E00C40C8 E4760008 */ swc1 $f22, 8($v1) +/* 3CAEBC E00C40CC E478000C */ swc1 $f24, 0xc($v1) +/* 3CAEC0 E00C40D0 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3CAEC4 E00C40D4 24020046 */ addiu $v0, $zero, 0x46 +/* 3CAEC8 E00C40D8 AC620018 */ sw $v0, 0x18($v1) +/* 3CAECC E00C40DC 240200B4 */ addiu $v0, $zero, 0xb4 +/* 3CAED0 E00C40E0 AC62001C */ sw $v0, 0x1c($v1) +/* 3CAED4 E00C40E4 E4600028 */ swc1 $f0, 0x28($v1) +/* 3CAED8 E00C40E8 3C013F80 */ lui $at, 0x3f80 +/* 3CAEDC E00C40EC 44810000 */ mtc1 $at, $f0 +/* 3CAEE0 E00C40F0 24020078 */ addiu $v0, $zero, 0x78 +/* 3CAEE4 E00C40F4 AC620020 */ sw $v0, 0x20($v1) +/* 3CAEE8 E00C40F8 AC60002C */ sw $zero, 0x2c($v1) +/* 3CAEEC E00C40FC E4600030 */ swc1 $f0, 0x30($v1) +.LE00C4100: +/* 3CAEF0 E00C4100 C4800000 */ lwc1 $f0, ($a0) +/* 3CAEF4 E00C4104 46800020 */ cvt.s.w $f0, $f0 +/* 3CAEF8 E00C4108 E4600034 */ swc1 $f0, 0x34($v1) +/* 3CAEFC E00C410C C4800004 */ lwc1 $f0, 4($a0) +/* 3CAF00 E00C4110 46800020 */ cvt.s.w $f0, $f0 +/* 3CAF04 E00C4114 E460005C */ swc1 $f0, 0x5c($v1) +/* 3CAF08 E00C4118 AC600084 */ sw $zero, 0x84($v1) +/* 3CAF0C E00C411C AC6000AC */ sw $zero, 0xac($v1) +/* 3CAF10 E00C4120 AC6000D4 */ sw $zero, 0xd4($v1) +/* 3CAF14 E00C4124 AC6000FC */ sw $zero, 0xfc($v1) +/* 3CAF18 E00C4128 AC600124 */ sw $zero, 0x124($v1) +/* 3CAF1C E00C412C 8C820008 */ lw $v0, 8($a0) +/* 3CAF20 E00C4130 2484000C */ addiu $a0, $a0, 0xc +/* 3CAF24 E00C4134 24A50001 */ addiu $a1, $a1, 1 +/* 3CAF28 E00C4138 AC62014C */ sw $v0, 0x14c($v1) +/* 3CAF2C E00C413C 28A2000A */ slti $v0, $a1, 0xa +/* 3CAF30 E00C4140 1440FFEF */ bnez $v0, .LE00C4100 +/* 3CAF34 E00C4144 24630004 */ addiu $v1, $v1, 4 +/* 3CAF38 E00C4148 0200102D */ daddu $v0, $s0, $zero +/* 3CAF3C E00C414C 8FBF0034 */ lw $ra, 0x34($sp) +/* 3CAF40 E00C4150 8FB20030 */ lw $s2, 0x30($sp) +/* 3CAF44 E00C4154 8FB1002C */ lw $s1, 0x2c($sp) +/* 3CAF48 E00C4158 8FB00028 */ lw $s0, 0x28($sp) +/* 3CAF4C E00C415C D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3CAF50 E00C4160 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3CAF54 E00C4164 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3CAF58 E00C4168 03E00008 */ jr $ra +/* 3CAF5C E00C416C 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3CADF0/func_E00C4170.s b/asm/nonmatchings/code_3CADF0/func_E00C4170.s new file mode 100644 index 0000000000..148e18998e --- /dev/null +++ b/asm/nonmatchings/code_3CADF0/func_E00C4170.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C4170 +/* 3CAF60 E00C4170 03E00008 */ jr $ra +/* 3CAF64 E00C4174 00000000 */ nop diff --git a/asm/nonmatchings/code_3CADF0/func_E00C4178.s b/asm/nonmatchings/code_3CADF0/func_E00C4178.s new file mode 100644 index 0000000000..6d53975cd7 --- /dev/null +++ b/asm/nonmatchings/code_3CADF0/func_E00C4178.s @@ -0,0 +1,99 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C4178 +/* 3CAF68 E00C4178 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3CAF6C E00C417C AFBF0010 */ sw $ra, 0x10($sp) +/* 3CAF70 E00C4180 8C850000 */ lw $a1, ($a0) +/* 3CAF74 E00C4184 8C83000C */ lw $v1, 0xc($a0) +/* 3CAF78 E00C4188 30A20010 */ andi $v0, $a1, 0x10 +/* 3CAF7C E00C418C 10400005 */ beqz $v0, .LE00C41A4 +/* 3CAF80 E00C4190 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3CAF84 E00C4194 00A21024 */ and $v0, $a1, $v0 +/* 3CAF88 E00C4198 AC820000 */ sw $v0, ($a0) +/* 3CAF8C E00C419C 24020040 */ addiu $v0, $zero, 0x40 +/* 3CAF90 E00C41A0 AC620010 */ sw $v0, 0x10($v1) +.LE00C41A4: +/* 3CAF94 E00C41A4 8C650010 */ lw $a1, 0x10($v1) +/* 3CAF98 E00C41A8 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3CAF9C E00C41AC 10400002 */ beqz $v0, .LE00C41B8 +/* 3CAFA0 E00C41B0 24A2FFFF */ addiu $v0, $a1, -1 +/* 3CAFA4 E00C41B4 AC620010 */ sw $v0, 0x10($v1) +.LE00C41B8: +/* 3CAFA8 E00C41B8 8C620014 */ lw $v0, 0x14($v1) +/* 3CAFAC E00C41BC 8C650010 */ lw $a1, 0x10($v1) +/* 3CAFB0 E00C41C0 24420001 */ addiu $v0, $v0, 1 +/* 3CAFB4 E00C41C4 04A10005 */ bgez $a1, .LE00C41DC +/* 3CAFB8 E00C41C8 AC620014 */ sw $v0, 0x14($v1) +/* 3CAFBC E00C41CC 0C080128 */ jal func_E02004A0 +/* 3CAFC0 E00C41D0 00000000 */ nop +/* 3CAFC4 E00C41D4 080310AE */ j .LE00C42B8 +/* 3CAFC8 E00C41D8 00000000 */ nop +.LE00C41DC: +/* 3CAFCC E00C41DC 00A0202D */ daddu $a0, $a1, $zero +/* 3CAFD0 E00C41E0 0040282D */ daddu $a1, $v0, $zero +/* 3CAFD4 E00C41E4 28820040 */ slti $v0, $a0, 0x40 +/* 3CAFD8 E00C41E8 1040000E */ beqz $v0, .LE00C4224 +/* 3CAFDC E00C41EC 28820020 */ slti $v0, $a0, 0x20 +/* 3CAFE0 E00C41F0 C4600030 */ lwc1 $f0, 0x30($v1) +/* 3CAFE4 E00C41F4 3C01E00C */ lui $at, %hi(D_E00C4A90) +/* 3CAFE8 E00C41F8 D4224A90 */ ldc1 $f2, %lo(D_E00C4A90)($at) +/* 3CAFEC E00C41FC 46000021 */ cvt.d.s $f0, $f0 +/* 3CAFF0 E00C4200 46220001 */ sub.d $f0, $f0, $f2 +/* 3CAFF4 E00C4204 44801000 */ mtc1 $zero, $f2 +/* 3CAFF8 E00C4208 46200020 */ cvt.s.d $f0, $f0 +/* 3CAFFC E00C420C 4602003C */ c.lt.s $f0, $f2 +/* 3CB000 E00C4210 00000000 */ nop +/* 3CB004 E00C4214 45000003 */ bc1f .LE00C4224 +/* 3CB008 E00C4218 E4600030 */ swc1 $f0, 0x30($v1) +/* 3CB00C E00C421C E4620030 */ swc1 $f2, 0x30($v1) +/* 3CB010 E00C4220 28820020 */ slti $v0, $a0, 0x20 +.LE00C4224: +/* 3CB014 E00C4224 1040000B */ beqz $v0, .LE00C4254 +/* 3CB018 E00C4228 28820010 */ slti $v0, $a0, 0x10 +/* 3CB01C E00C422C 8C62002C */ lw $v0, 0x2c($v1) +/* 3CB020 E00C4230 24420080 */ addiu $v0, $v0, 0x80 +/* 3CB024 E00C4234 AC62002C */ sw $v0, 0x2c($v1) +/* 3CB028 E00C4238 28420100 */ slti $v0, $v0, 0x100 +/* 3CB02C E00C423C 54400004 */ bnel $v0, $zero, .LE00C4250 +/* 3CB030 E00C4240 AC600030 */ sw $zero, 0x30($v1) +/* 3CB034 E00C4244 240200FF */ addiu $v0, $zero, 0xff +/* 3CB038 E00C4248 AC62002C */ sw $v0, 0x2c($v1) +/* 3CB03C E00C424C AC600030 */ sw $zero, 0x30($v1) +.LE00C4250: +/* 3CB040 E00C4250 28820010 */ slti $v0, $a0, 0x10 +.LE00C4254: +/* 3CB044 E00C4254 10400002 */ beqz $v0, .LE00C4260 +/* 3CB048 E00C4258 00041100 */ sll $v0, $a0, 4 +/* 3CB04C E00C425C AC620024 */ sw $v0, 0x24($v1) +.LE00C4260: +/* 3CB050 E00C4260 28A20010 */ slti $v0, $a1, 0x10 +/* 3CB054 E00C4264 10400003 */ beqz $v0, .LE00C4274 +/* 3CB058 E00C4268 00051100 */ sll $v0, $a1, 4 +/* 3CB05C E00C426C 2442000F */ addiu $v0, $v0, 0xf +/* 3CB060 E00C4270 AC620024 */ sw $v0, 0x24($v1) +.LE00C4274: +/* 3CB064 E00C4274 0000202D */ daddu $a0, $zero, $zero +/* 3CB068 E00C4278 240500FF */ addiu $a1, $zero, 0xff +.LE00C427C: +/* 3CB06C E00C427C 8C62014C */ lw $v0, 0x14c($v1) +/* 3CB070 E00C4280 10400003 */ beqz $v0, .LE00C4290 +/* 3CB074 E00C4284 2442FFFF */ addiu $v0, $v0, -1 +/* 3CB078 E00C4288 14400007 */ bnez $v0, .LE00C42A8 +/* 3CB07C E00C428C AC62014C */ sw $v0, 0x14c($v1) +.LE00C4290: +/* 3CB080 E00C4290 8C620124 */ lw $v0, 0x124($v1) +/* 3CB084 E00C4294 24420008 */ addiu $v0, $v0, 8 +/* 3CB088 E00C4298 AC620124 */ sw $v0, 0x124($v1) +/* 3CB08C E00C429C 28420100 */ slti $v0, $v0, 0x100 +/* 3CB090 E00C42A0 50400001 */ beql $v0, $zero, .LE00C42A8 +/* 3CB094 E00C42A4 AC650124 */ sw $a1, 0x124($v1) +.LE00C42A8: +/* 3CB098 E00C42A8 24840001 */ addiu $a0, $a0, 1 +/* 3CB09C E00C42AC 2882000A */ slti $v0, $a0, 0xa +/* 3CB0A0 E00C42B0 1440FFF2 */ bnez $v0, .LE00C427C +/* 3CB0A4 E00C42B4 24630004 */ addiu $v1, $v1, 4 +.LE00C42B8: +/* 3CB0A8 E00C42B8 8FBF0010 */ lw $ra, 0x10($sp) +/* 3CB0AC E00C42BC 03E00008 */ jr $ra +/* 3CB0B0 E00C42C0 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3CADF0/func_E00C42C4.s b/asm/nonmatchings/code_3CADF0/func_E00C42C4.s new file mode 100644 index 0000000000..58b1de5426 --- /dev/null +++ b/asm/nonmatchings/code_3CADF0/func_E00C42C4.s @@ -0,0 +1,19 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C42C4 +/* 3CB0B4 E00C42C4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3CB0B8 E00C42C8 3C02E00C */ lui $v0, %hi(D_E00C4308) +/* 3CB0BC E00C42CC 24424308 */ addiu $v0, $v0, %lo(D_E00C4308) +/* 3CB0C0 E00C42D0 AFA2001C */ sw $v0, 0x1c($sp) +/* 3CB0C4 E00C42D4 2402000A */ addiu $v0, $zero, 0xa +/* 3CB0C8 E00C42D8 AFA20014 */ sw $v0, 0x14($sp) +/* 3CB0CC E00C42DC 2402002D */ addiu $v0, $zero, 0x2d +/* 3CB0D0 E00C42E0 AFA40018 */ sw $a0, 0x18($sp) +/* 3CB0D4 E00C42E4 27A40010 */ addiu $a0, $sp, 0x10 +/* 3CB0D8 E00C42E8 AFBF0020 */ sw $ra, 0x20($sp) +/* 3CB0DC E00C42EC 0C080120 */ jal func_E0200480 +/* 3CB0E0 E00C42F0 AFA20010 */ sw $v0, 0x10($sp) +/* 3CB0E4 E00C42F4 8FBF0020 */ lw $ra, 0x20($sp) +/* 3CB0E8 E00C42F8 03E00008 */ jr $ra +/* 3CB0EC E00C42FC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3CADF0/func_E00C4300.s b/asm/nonmatchings/code_3CADF0/func_E00C4300.s new file mode 100644 index 0000000000..6657e27e54 --- /dev/null +++ b/asm/nonmatchings/code_3CADF0/func_E00C4300.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C4300 +/* 3CB0F0 E00C4300 03E00008 */ jr $ra +/* 3CB0F4 E00C4304 00000000 */ nop diff --git a/asm/nonmatchings/code_3CADF0/func_E00C4308.s b/asm/nonmatchings/code_3CADF0/func_E00C4308.s new file mode 100644 index 0000000000..f55d487e65 --- /dev/null +++ b/asm/nonmatchings/code_3CADF0/func_E00C4308.s @@ -0,0 +1,449 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C4308 +/* 3CB0F8 E00C4308 27BDFF20 */ addiu $sp, $sp, -0xe0 +/* 3CB0FC E00C430C 0080302D */ daddu $a2, $a0, $zero +/* 3CB100 E00C4310 3C07DB06 */ lui $a3, 0xdb06 +/* 3CB104 E00C4314 34E70024 */ ori $a3, $a3, 0x24 +/* 3CB108 E00C4318 27A40020 */ addiu $a0, $sp, 0x20 +/* 3CB10C E00C431C 3C0F0001 */ lui $t7, 1 +/* 3CB110 E00C4320 35EF1630 */ ori $t7, $t7, 0x1630 +/* 3CB114 E00C4324 AFB600C8 */ sw $s6, 0xc8($sp) +/* 3CB118 E00C4328 0000B02D */ daddu $s6, $zero, $zero +/* 3CB11C E00C432C AFB200B8 */ sw $s2, 0xb8($sp) +/* 3CB120 E00C4330 3C12800A */ lui $s2, %hi(D_8009A66C) +/* 3CB124 E00C4334 2652A66C */ addiu $s2, $s2, %lo(D_8009A66C) +/* 3CB128 E00C4338 AFB500C4 */ sw $s5, 0xc4($sp) +/* 3CB12C E00C433C 02C0A82D */ daddu $s5, $s6, $zero +/* 3CB130 E00C4340 AFBF00D4 */ sw $ra, 0xd4($sp) +/* 3CB134 E00C4344 AFBE00D0 */ sw $fp, 0xd0($sp) +/* 3CB138 E00C4348 AFB700CC */ sw $s7, 0xcc($sp) +/* 3CB13C E00C434C AFB400C0 */ sw $s4, 0xc0($sp) +/* 3CB140 E00C4350 AFB300BC */ sw $s3, 0xbc($sp) +/* 3CB144 E00C4354 AFB100B4 */ sw $s1, 0xb4($sp) +/* 3CB148 E00C4358 AFB000B0 */ sw $s0, 0xb0($sp) +/* 3CB14C E00C435C F7B400D8 */ sdc1 $f20, 0xd8($sp) +/* 3CB150 E00C4360 AFAF00A8 */ sw $t7, 0xa8($sp) +/* 3CB154 E00C4364 8E450000 */ lw $a1, ($s2) +/* 3CB158 E00C4368 8CDE000C */ lw $fp, 0xc($a2) +/* 3CB15C E00C436C 00A0182D */ daddu $v1, $a1, $zero +/* 3CB160 E00C4370 24A50008 */ addiu $a1, $a1, 8 +/* 3CB164 E00C4374 AE450000 */ sw $a1, ($s2) +/* 3CB168 E00C4378 8FD40014 */ lw $s4, 0x14($fp) +/* 3CB16C E00C437C 8FCF0024 */ lw $t7, 0x24($fp) +/* 3CB170 E00C4380 3C02E700 */ lui $v0, 0xe700 +/* 3CB174 E00C4384 AFAF00A0 */ sw $t7, 0xa0($sp) +/* 3CB178 E00C4388 AC620000 */ sw $v0, ($v1) +/* 3CB17C E00C438C AC600004 */ sw $zero, 4($v1) +/* 3CB180 E00C4390 ACA70000 */ sw $a3, ($a1) +/* 3CB184 E00C4394 8CC30010 */ lw $v1, 0x10($a2) +/* 3CB188 E00C4398 24A20008 */ addiu $v0, $a1, 8 +/* 3CB18C E00C439C AE420000 */ sw $v0, ($s2) +/* 3CB190 E00C43A0 8C62001C */ lw $v0, 0x1c($v1) +/* 3CB194 E00C43A4 3C038000 */ lui $v1, 0x8000 +/* 3CB198 E00C43A8 00431021 */ addu $v0, $v0, $v1 +/* 3CB19C E00C43AC 3C03800B */ lui $v1, %hi(gCameras) +/* 3CB1A0 E00C43B0 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3CB1A4 E00C43B4 ACA20004 */ sw $v0, 4($a1) +/* 3CB1A8 E00C43B8 8FC50004 */ lw $a1, 4($fp) +/* 3CB1AC E00C43BC 8FC60008 */ lw $a2, 8($fp) +/* 3CB1B0 E00C43C0 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3CB1B4 E00C43C4 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3CB1B8 E00C43C8 8FC7000C */ lw $a3, 0xc($fp) +/* 3CB1BC E00C43CC 00028080 */ sll $s0, $v0, 2 +/* 3CB1C0 E00C43D0 02028021 */ addu $s0, $s0, $v0 +/* 3CB1C4 E00C43D4 00108080 */ sll $s0, $s0, 2 +/* 3CB1C8 E00C43D8 02028023 */ subu $s0, $s0, $v0 +/* 3CB1CC E00C43DC 001010C0 */ sll $v0, $s0, 3 +/* 3CB1D0 E00C43E0 02028021 */ addu $s0, $s0, $v0 +/* 3CB1D4 E00C43E4 001080C0 */ sll $s0, $s0, 3 +/* 3CB1D8 E00C43E8 0C080108 */ jal func_E0200420 +/* 3CB1DC E00C43EC 02038021 */ addu $s0, $s0, $v1 +/* 3CB1E0 E00C43F0 27B10060 */ addiu $s1, $sp, 0x60 +/* 3CB1E4 E00C43F4 8FC50028 */ lw $a1, 0x28($fp) +/* 3CB1E8 E00C43F8 0220202D */ daddu $a0, $s1, $zero +/* 3CB1EC E00C43FC 00A0302D */ daddu $a2, $a1, $zero +/* 3CB1F0 E00C4400 0C080110 */ jal func_E0200440 +/* 3CB1F4 E00C4404 00A0382D */ daddu $a3, $a1, $zero +/* 3CB1F8 E00C4408 0220202D */ daddu $a0, $s1, $zero +/* 3CB1FC E00C440C 27A50020 */ addiu $a1, $sp, 0x20 +/* 3CB200 E00C4410 0C080114 */ jal func_E0200450 +/* 3CB204 E00C4414 00A0302D */ daddu $a2, $a1, $zero +/* 3CB208 E00C4418 27A40020 */ addiu $a0, $sp, 0x20 +/* 3CB20C E00C441C 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3CB210 E00C4420 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3CB214 E00C4424 3C13800A */ lui $s3, %hi(D_8009A674) +/* 3CB218 E00C4428 2673A674 */ addiu $s3, $s3, %lo(D_8009A674) +/* 3CB21C E00C442C 96250000 */ lhu $a1, ($s1) +/* 3CB220 E00C4430 8E620000 */ lw $v0, ($s3) +/* 3CB224 E00C4434 8FAF00A8 */ lw $t7, 0xa8($sp) +/* 3CB228 E00C4438 00052980 */ sll $a1, $a1, 6 +/* 3CB22C E00C443C 00AF2821 */ addu $a1, $a1, $t7 +/* 3CB230 E00C4440 0C080118 */ jal func_E0200460 +/* 3CB234 E00C4444 00452821 */ addu $a1, $v0, $a1 +/* 3CB238 E00C4448 3C03DA38 */ lui $v1, 0xda38 +/* 3CB23C E00C444C 34630002 */ ori $v1, $v1, 2 +/* 3CB240 E00C4450 3C06DA38 */ lui $a2, 0xda38 +/* 3CB244 E00C4454 34C60001 */ ori $a2, $a2, 1 +/* 3CB248 E00C4458 00141080 */ sll $v0, $s4, 2 +/* 3CB24C E00C445C 00541021 */ addu $v0, $v0, $s4 +/* 3CB250 E00C4460 0002A040 */ sll $s4, $v0, 1 +/* 3CB254 E00C4464 0280B82D */ daddu $s7, $s4, $zero +/* 3CB258 E00C4468 8E440000 */ lw $a0, ($s2) +/* 3CB25C E00C446C 96220000 */ lhu $v0, ($s1) +/* 3CB260 E00C4470 0080282D */ daddu $a1, $a0, $zero +/* 3CB264 E00C4474 24840008 */ addiu $a0, $a0, 8 +/* 3CB268 E00C4478 248F0020 */ addiu $t7, $a0, 0x20 +/* 3CB26C E00C447C AFAF00A4 */ sw $t7, 0xa4($sp) +/* 3CB270 E00C4480 AE440000 */ sw $a0, ($s2) +/* 3CB274 E00C4484 ACA30000 */ sw $v1, ($a1) +/* 3CB278 E00C4488 24430001 */ addiu $v1, $v0, 1 +/* 3CB27C E00C448C 3042FFFF */ andi $v0, $v0, 0xffff +/* 3CB280 E00C4490 00021180 */ sll $v0, $v0, 6 +/* 3CB284 E00C4494 A6230000 */ sh $v1, ($s1) +/* 3CB288 E00C4498 8FAF00A8 */ lw $t7, 0xa8($sp) +/* 3CB28C E00C449C 8E630000 */ lw $v1, ($s3) +/* 3CB290 E00C44A0 004F1021 */ addu $v0, $v0, $t7 +/* 3CB294 E00C44A4 00621821 */ addu $v1, $v1, $v0 +/* 3CB298 E00C44A8 24820008 */ addiu $v0, $a0, 8 +/* 3CB29C E00C44AC ACA30004 */ sw $v1, 4($a1) +/* 3CB2A0 E00C44B0 AE420000 */ sw $v0, ($s2) +/* 3CB2A4 E00C44B4 24820010 */ addiu $v0, $a0, 0x10 +/* 3CB2A8 E00C44B8 AC860000 */ sw $a2, ($a0) +/* 3CB2AC E00C44BC AE420000 */ sw $v0, ($s2) +/* 3CB2B0 E00C44C0 8E030204 */ lw $v1, 0x204($s0) +/* 3CB2B4 E00C44C4 3C02DE00 */ lui $v0, 0xde00 +/* 3CB2B8 E00C44C8 AC820008 */ sw $v0, 8($a0) +/* 3CB2BC E00C44CC 3C020900 */ lui $v0, 0x900 +/* 3CB2C0 E00C44D0 24421000 */ addiu $v0, $v0, 0x1000 +/* 3CB2C4 E00C44D4 AC82000C */ sw $v0, 0xc($a0) +/* 3CB2C8 E00C44D8 24820018 */ addiu $v0, $a0, 0x18 +/* 3CB2CC E00C44DC AE420000 */ sw $v0, ($s2) +/* 3CB2D0 E00C44E0 3C02FB00 */ lui $v0, 0xfb00 +/* 3CB2D4 E00C44E4 AC820010 */ sw $v0, 0x10($a0) +/* 3CB2D8 E00C44E8 AC830004 */ sw $v1, 4($a0) +/* 3CB2DC E00C44EC 93C3002F */ lbu $v1, 0x2f($fp) +/* 3CB2E0 E00C44F0 3C02DE01 */ lui $v0, 0xde01 +/* 3CB2E4 E00C44F4 AC820018 */ sw $v0, 0x18($a0) +/* 3CB2E8 E00C44F8 24820220 */ addiu $v0, $a0, 0x220 +/* 3CB2EC E00C44FC AC82001C */ sw $v0, 0x1c($a0) +/* 3CB2F0 E00C4500 AE420000 */ sw $v0, ($s2) +/* 3CB2F4 E00C4504 AC830014 */ sw $v1, 0x14($a0) +.LE00C4508: +/* 3CB2F8 E00C4508 00168140 */ sll $s0, $s6, 5 +/* 3CB2FC E00C450C 44976000 */ mtc1 $s7, $f12 +/* 3CB300 E00C4510 00000000 */ nop +/* 3CB304 E00C4514 46806320 */ cvt.s.w $f12, $f12 +/* 3CB308 E00C4518 8FAF00A4 */ lw $t7, 0xa4($sp) +/* 3CB30C E00C451C C7D40030 */ lwc1 $f20, 0x30($fp) +/* 3CB310 E00C4520 0C080140 */ jal func_E0200500 +/* 3CB314 E00C4524 01F08021 */ addu $s0, $t7, $s0 +/* 3CB318 E00C4528 3C0143FA */ lui $at, 0x43fa +/* 3CB31C E00C452C 44811000 */ mtc1 $at, $f2 +/* 3CB320 E00C4530 00000000 */ nop +/* 3CB324 E00C4534 46020002 */ mul.s $f0, $f0, $f2 +/* 3CB328 E00C4538 00000000 */ nop +/* 3CB32C E00C453C 46140002 */ mul.s $f0, $f0, $f20 +/* 3CB330 E00C4540 00000000 */ nop +/* 3CB334 E00C4544 44946000 */ mtc1 $s4, $f12 +/* 3CB338 E00C4548 00000000 */ nop +/* 3CB33C E00C454C 46806320 */ cvt.s.w $f12, $f12 +/* 3CB340 E00C4550 4600010D */ trunc.w.s $f4, $f0 +/* 3CB344 E00C4554 44112000 */ mfc1 $s1, $f4 +/* 3CB348 E00C4558 0C080140 */ jal func_E0200500 +/* 3CB34C E00C455C 26940006 */ addiu $s4, $s4, 6 +/* 3CB350 E00C4560 3C014348 */ lui $at, 0x4348 +/* 3CB354 E00C4564 44811000 */ mtc1 $at, $f2 +/* 3CB358 E00C4568 26F7003C */ addiu $s7, $s7, 0x3c +/* 3CB35C E00C456C 46020002 */ mul.s $f0, $f0, $f2 +/* 3CB360 E00C4570 00000000 */ nop +/* 3CB364 E00C4574 001619C0 */ sll $v1, $s6, 7 +/* 3CB368 E00C4578 26D60001 */ addiu $s6, $s6, 1 +/* 3CB36C E00C457C 2622F380 */ addiu $v0, $s1, -0xc80 +/* 3CB370 E00C4580 26310C80 */ addiu $s1, $s1, 0xc80 +/* 3CB374 E00C4584 46140002 */ mul.s $f0, $f0, $f20 +/* 3CB378 E00C4588 00000000 */ nop +/* 3CB37C E00C458C A6020000 */ sh $v0, ($s0) +/* 3CB380 E00C4590 A6000004 */ sh $zero, 4($s0) +/* 3CB384 E00C4594 A6000008 */ sh $zero, 8($s0) +/* 3CB388 E00C4598 A603000A */ sh $v1, 0xa($s0) +/* 3CB38C E00C459C 4600010D */ trunc.w.s $f4, $f0 +/* 3CB390 E00C45A0 44022000 */ mfc1 $v0, $f4 +/* 3CB394 E00C45A4 00000000 */ nop +/* 3CB398 E00C45A8 02A21021 */ addu $v0, $s5, $v0 +/* 3CB39C E00C45AC 2442F448 */ addiu $v0, $v0, -0xbb8 +/* 3CB3A0 E00C45B0 A6020002 */ sh $v0, 2($s0) +/* 3CB3A4 E00C45B4 26100010 */ addiu $s0, $s0, 0x10 +/* 3CB3A8 E00C45B8 26B50190 */ addiu $s5, $s5, 0x190 +/* 3CB3AC E00C45BC A6020002 */ sh $v0, 2($s0) +/* 3CB3B0 E00C45C0 24020800 */ addiu $v0, $zero, 0x800 +/* 3CB3B4 E00C45C4 A6020008 */ sh $v0, 8($s0) +/* 3CB3B8 E00C45C8 2AC20010 */ slti $v0, $s6, 0x10 +/* 3CB3BC E00C45CC A6110000 */ sh $s1, ($s0) +/* 3CB3C0 E00C45D0 A6000004 */ sh $zero, 4($s0) +/* 3CB3C4 E00C45D4 1440FFCC */ bnez $v0, .LE00C4508 +/* 3CB3C8 E00C45D8 A603000A */ sh $v1, 0xa($s0) +/* 3CB3CC E00C45DC 27A40020 */ addiu $a0, $sp, 0x20 +/* 3CB3D0 E00C45E0 3C130001 */ lui $s3, 1 +/* 3CB3D4 E00C45E4 36731630 */ ori $s3, $s3, 0x1630 +/* 3CB3D8 E00C45E8 0000B02D */ daddu $s6, $zero, $zero +/* 3CB3DC E00C45EC 3C10800A */ lui $s0, %hi(D_8009A66C) +/* 3CB3E0 E00C45F0 2610A66C */ addiu $s0, $s0, %lo(D_8009A66C) +/* 3CB3E4 E00C45F4 3C013C23 */ lui $at, 0x3c23 +/* 3CB3E8 E00C45F8 3421D70A */ ori $at, $at, 0xd70a +/* 3CB3EC E00C45FC 44810000 */ mtc1 $at, $f0 +/* 3CB3F0 E00C4600 8E020000 */ lw $v0, ($s0) +/* 3CB3F4 E00C4604 3C03DE01 */ lui $v1, 0xde01 +/* 3CB3F8 E00C4608 AC430000 */ sw $v1, ($v0) +/* 3CB3FC E00C460C 244300A0 */ addiu $v1, $v0, 0xa0 +/* 3CB400 E00C4610 AC430004 */ sw $v1, 4($v0) +/* 3CB404 E00C4614 24420008 */ addiu $v0, $v0, 8 +/* 3CB408 E00C4618 44050000 */ mfc1 $a1, $f0 +/* 3CB40C E00C461C 0040A82D */ daddu $s5, $v0, $zero +/* 3CB410 E00C4620 AE020000 */ sw $v0, ($s0) +/* 3CB414 E00C4624 00A0302D */ daddu $a2, $a1, $zero +/* 3CB418 E00C4628 0C080110 */ jal func_E0200440 +/* 3CB41C E00C462C 00A0382D */ daddu $a3, $a1, $zero +/* 3CB420 E00C4630 27A40020 */ addiu $a0, $sp, 0x20 +/* 3CB424 E00C4634 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3CB428 E00C4638 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3CB42C E00C463C 3C12800A */ lui $s2, %hi(D_8009A674) +/* 3CB430 E00C4640 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 3CB434 E00C4644 96250000 */ lhu $a1, ($s1) +/* 3CB438 E00C4648 8E420000 */ lw $v0, ($s2) +/* 3CB43C E00C464C 00052980 */ sll $a1, $a1, 6 +/* 3CB440 E00C4650 00B32821 */ addu $a1, $a1, $s3 +/* 3CB444 E00C4654 0C080118 */ jal func_E0200460 +/* 3CB448 E00C4658 00452821 */ addu $a1, $v0, $a1 +/* 3CB44C E00C465C 3C060102 */ lui $a2, 0x102 +/* 3CB450 E00C4660 34C60040 */ ori $a2, $a2, 0x40 +/* 3CB454 E00C4664 3C0B0600 */ lui $t3, 0x600 +/* 3CB458 E00C4668 240A0001 */ addiu $t2, $zero, 1 +/* 3CB45C E00C466C 3C0E0606 */ lui $t6, 0x606 +/* 3CB460 E00C4670 35CE0402 */ ori $t6, $t6, 0x402 +/* 3CB464 E00C4674 3C0D0002 */ lui $t5, 2 +/* 3CB468 E00C4678 35AD0406 */ ori $t5, $t5, 0x406 +/* 3CB46C E00C467C 3C0C0006 */ lui $t4, 6 +/* 3CB470 E00C4680 358C0804 */ ori $t4, $t4, 0x804 +/* 3CB474 E00C4684 24080004 */ addiu $t0, $zero, 4 +/* 3CB478 E00C4688 8E040000 */ lw $a0, ($s0) +/* 3CB47C E00C468C 24090006 */ addiu $t1, $zero, 6 +/* 3CB480 E00C4690 0080282D */ daddu $a1, $a0, $zero +/* 3CB484 E00C4694 24840008 */ addiu $a0, $a0, 8 +/* 3CB488 E00C4698 AE040000 */ sw $a0, ($s0) +/* 3CB48C E00C469C 96220000 */ lhu $v0, ($s1) +/* 3CB490 E00C46A0 3C03DA38 */ lui $v1, 0xda38 +/* 3CB494 E00C46A4 ACA30000 */ sw $v1, ($a1) +/* 3CB498 E00C46A8 004A1821 */ addu $v1, $v0, $t2 +/* 3CB49C E00C46AC 3042FFFF */ andi $v0, $v0, 0xffff +/* 3CB4A0 E00C46B0 01221004 */ sllv $v0, $v0, $t1 +/* 3CB4A4 E00C46B4 A6230000 */ sh $v1, ($s1) +/* 3CB4A8 E00C46B8 8E430000 */ lw $v1, ($s2) +/* 3CB4AC E00C46BC 00531021 */ addu $v0, $v0, $s3 +/* 3CB4B0 E00C46C0 00621821 */ addu $v1, $v1, $v0 +/* 3CB4B4 E00C46C4 24820008 */ addiu $v0, $a0, 8 +/* 3CB4B8 E00C46C8 ACA30004 */ sw $v1, 4($a1) +/* 3CB4BC E00C46CC AE020000 */ sw $v0, ($s0) +/* 3CB4C0 E00C46D0 AC860000 */ sw $a2, ($a0) +/* 3CB4C4 E00C46D4 8FAF00A4 */ lw $t7, 0xa4($sp) +/* 3CB4C8 E00C46D8 24070002 */ addiu $a3, $zero, 2 +/* 3CB4CC E00C46DC AC8F0004 */ sw $t7, 4($a0) +.LE00C46E0: +/* 3CB4D0 E00C46E0 8E040000 */ lw $a0, ($s0) +/* 3CB4D4 E00C46E4 00162840 */ sll $a1, $s6, 1 +/* 3CB4D8 E00C46E8 24820008 */ addiu $v0, $a0, 8 +/* 3CB4DC E00C46EC 14A00004 */ bnez $a1, .LE00C4700 +/* 3CB4E0 E00C46F0 AE020000 */ sw $v0, ($s0) +/* 3CB4E4 E00C46F4 00161440 */ sll $v0, $s6, 0x11 +/* 3CB4E8 E00C46F8 080311CA */ j .LE00C4728 +/* 3CB4EC E00C46FC 34420402 */ ori $v0, $v0, 0x402 +.LE00C4700: +/* 3CB4F0 E00C4700 14AA0003 */ bne $a1, $t2, .LE00C4710 +/* 3CB4F4 E00C4704 30E200FF */ andi $v0, $a3, 0xff +/* 3CB4F8 E00C4708 080311CC */ j .LE00C4730 +/* 3CB4FC E00C470C AC8E0000 */ sw $t6, ($a0) +.LE00C4710: +/* 3CB500 E00C4710 00021400 */ sll $v0, $v0, 0x10 +/* 3CB504 E00C4714 00161A80 */ sll $v1, $s6, 0xa +/* 3CB508 E00C4718 3063FC00 */ andi $v1, $v1, 0xfc00 +/* 3CB50C E00C471C 00431025 */ or $v0, $v0, $v1 +/* 3CB510 E00C4720 310300FF */ andi $v1, $t0, 0xff +/* 3CB514 E00C4724 00431025 */ or $v0, $v0, $v1 +.LE00C4728: +/* 3CB518 E00C4728 004B1025 */ or $v0, $v0, $t3 +/* 3CB51C E00C472C AC820000 */ sw $v0, ($a0) +.LE00C4730: +/* 3CB520 E00C4730 14A00003 */ bnez $a1, .LE00C4740 +/* 3CB524 E00C4734 00000000 */ nop +/* 3CB528 E00C4738 080311DB */ j .LE00C476C +/* 3CB52C E00C473C AC8D0004 */ sw $t5, 4($a0) +.LE00C4740: +/* 3CB530 E00C4740 14AA0003 */ bne $a1, $t2, .LE00C4750 +/* 3CB534 E00C4744 312200FF */ andi $v0, $t1, 0xff +/* 3CB538 E00C4748 080311DB */ j .LE00C476C +/* 3CB53C E00C474C AC8C0004 */ sw $t4, 4($a0) +.LE00C4750: +/* 3CB540 E00C4750 00021400 */ sll $v0, $v0, 0x10 +/* 3CB544 E00C4754 30E300FF */ andi $v1, $a3, 0xff +/* 3CB548 E00C4758 00031A00 */ sll $v1, $v1, 8 +/* 3CB54C E00C475C 00431025 */ or $v0, $v0, $v1 +/* 3CB550 E00C4760 310300FF */ andi $v1, $t0, 0xff +/* 3CB554 E00C4764 00431025 */ or $v0, $v0, $v1 +/* 3CB558 E00C4768 AC820004 */ sw $v0, 4($a0) +.LE00C476C: +/* 3CB55C E00C476C 25080004 */ addiu $t0, $t0, 4 +/* 3CB560 E00C4770 24E70004 */ addiu $a3, $a3, 4 +/* 3CB564 E00C4774 26D60001 */ addiu $s6, $s6, 1 +/* 3CB568 E00C4778 2AC2000F */ slti $v0, $s6, 0xf +/* 3CB56C E00C477C 1440FFD8 */ bnez $v0, .LE00C46E0 +/* 3CB570 E00C4780 25290004 */ addiu $t1, $t1, 4 +/* 3CB574 E00C4784 3C03D838 */ lui $v1, 0xd838 +/* 3CB578 E00C4788 34630002 */ ori $v1, $v1, 2 +/* 3CB57C E00C478C 0000B02D */ daddu $s6, $zero, $zero +/* 3CB580 E00C4790 3C17E00C */ lui $s7, %hi(D_E00C49D0) +/* 3CB584 E00C4794 26F749D0 */ addiu $s7, $s7, %lo(D_E00C49D0) +/* 3CB588 E00C4798 3C14800A */ lui $s4, %hi(D_8009A674) +/* 3CB58C E00C479C 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 3CB590 E00C47A0 3C138007 */ lui $s3, %hi(D_800741F0) +/* 3CB594 E00C47A4 267341F0 */ addiu $s3, $s3, %lo(D_800741F0) +/* 3CB598 E00C47A8 3C120001 */ lui $s2, 1 +/* 3CB59C E00C47AC 36521630 */ ori $s2, $s2, 0x1630 +/* 3CB5A0 E00C47B0 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3CB5A4 E00C47B4 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3CB5A8 E00C47B8 0040882D */ daddu $s1, $v0, $zero +/* 3CB5AC E00C47BC 8E220000 */ lw $v0, ($s1) +/* 3CB5B0 E00C47C0 03C0802D */ daddu $s0, $fp, $zero +/* 3CB5B4 E00C47C4 0040202D */ daddu $a0, $v0, $zero +/* 3CB5B8 E00C47C8 24420008 */ addiu $v0, $v0, 8 +/* 3CB5BC E00C47CC AE220000 */ sw $v0, ($s1) +/* 3CB5C0 E00C47D0 AC830000 */ sw $v1, ($a0) +/* 3CB5C4 E00C47D4 24030040 */ addiu $v1, $zero, 0x40 +/* 3CB5C8 E00C47D8 AC830004 */ sw $v1, 4($a0) +/* 3CB5CC E00C47DC 24430008 */ addiu $v1, $v0, 8 +/* 3CB5D0 E00C47E0 AE230000 */ sw $v1, ($s1) +/* 3CB5D4 E00C47E4 3C03DF00 */ lui $v1, 0xdf00 +/* 3CB5D8 E00C47E8 AC430000 */ sw $v1, ($v0) +/* 3CB5DC E00C47EC AC400004 */ sw $zero, 4($v0) +.LE00C47F0: +/* 3CB5E0 E00C47F0 06C10002 */ bgez $s6, .LE00C47FC +/* 3CB5E4 E00C47F4 02C0102D */ daddu $v0, $s6, $zero +/* 3CB5E8 E00C47F8 26C20003 */ addiu $v0, $s6, 3 +.LE00C47FC: +/* 3CB5EC E00C47FC 00021083 */ sra $v0, $v0, 2 +/* 3CB5F0 E00C4800 00021080 */ sll $v0, $v0, 2 +/* 3CB5F4 E00C4804 02C21023 */ subu $v0, $s6, $v0 +/* 3CB5F8 E00C4808 00571021 */ addu $v0, $v0, $s7 +/* 3CB5FC E00C480C 90420000 */ lbu $v0, ($v0) +/* 3CB600 E00C4810 3C01E00C */ lui $at, %hi(D_E00C4A98) +/* 3CB604 E00C4814 D4224A98 */ ldc1 $f2, %lo(D_E00C4A98)($at) +/* 3CB608 E00C4818 44820000 */ mtc1 $v0, $f0 +/* 3CB60C E00C481C 00000000 */ nop +/* 3CB610 E00C4820 46800021 */ cvt.d.w $f0, $f0 +/* 3CB614 E00C4824 46220002 */ mul.d $f0, $f0, $f2 +/* 3CB618 E00C4828 00000000 */ nop +/* 3CB61C E00C482C 46200020 */ cvt.s.d $f0, $f0 +/* 3CB620 E00C4830 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3CB624 E00C4834 C6000034 */ lwc1 $f0, 0x34($s0) +/* 3CB628 E00C4838 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3CB62C E00C483C C600005C */ lwc1 $f0, 0x5c($s0) +/* 3CB630 E00C4840 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3CB634 E00C4844 C6000084 */ lwc1 $f0, 0x84($s0) +/* 3CB638 E00C4848 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3CB63C E00C484C 8E0500AC */ lw $a1, 0xac($s0) +/* 3CB640 E00C4850 8E0600D4 */ lw $a2, 0xd4($s0) +/* 3CB644 E00C4854 8E0700FC */ lw $a3, 0xfc($s0) +/* 3CB648 E00C4858 0C080180 */ jal func_E0200600 +/* 3CB64C E00C485C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3CB650 E00C4860 27A40020 */ addiu $a0, $sp, 0x20 +/* 3CB654 E00C4864 96650000 */ lhu $a1, ($s3) +/* 3CB658 E00C4868 8E820000 */ lw $v0, ($s4) +/* 3CB65C E00C486C 00052980 */ sll $a1, $a1, 6 +/* 3CB660 E00C4870 00B22821 */ addu $a1, $a1, $s2 +/* 3CB664 E00C4874 0C080118 */ jal func_E0200460 +/* 3CB668 E00C4878 00452821 */ addu $a1, $v0, $a1 +/* 3CB66C E00C487C 3C088080 */ lui $t0, 0x8080 +/* 3CB670 E00C4880 35088081 */ ori $t0, $t0, 0x8081 +/* 3CB674 E00C4884 3C0AD838 */ lui $t2, 0xd838 +/* 3CB678 E00C4888 3C02DA38 */ lui $v0, 0xda38 +/* 3CB67C E00C488C 8E240000 */ lw $a0, ($s1) +/* 3CB680 E00C4890 96660000 */ lhu $a2, ($s3) +/* 3CB684 E00C4894 0080282D */ daddu $a1, $a0, $zero +/* 3CB688 E00C4898 24840008 */ addiu $a0, $a0, 8 +/* 3CB68C E00C489C ACA20000 */ sw $v0, ($a1) +/* 3CB690 E00C48A0 30C2FFFF */ andi $v0, $a2, 0xffff +/* 3CB694 E00C48A4 00021180 */ sll $v0, $v0, 6 +/* 3CB698 E00C48A8 00521021 */ addu $v0, $v0, $s2 +/* 3CB69C E00C48AC 8E830000 */ lw $v1, ($s4) +/* 3CB6A0 E00C48B0 24C60001 */ addiu $a2, $a2, 1 +/* 3CB6A4 E00C48B4 00621821 */ addu $v1, $v1, $v0 +/* 3CB6A8 E00C48B8 3C02FA00 */ lui $v0, 0xfa00 +/* 3CB6AC E00C48BC ACA30004 */ sw $v1, 4($a1) +/* 3CB6B0 E00C48C0 AC820000 */ sw $v0, ($a0) +/* 3CB6B4 E00C48C4 8E050124 */ lw $a1, 0x124($s0) +/* 3CB6B8 E00C48C8 24820008 */ addiu $v0, $a0, 8 +/* 3CB6BC E00C48CC AE240000 */ sw $a0, ($s1) +/* 3CB6C0 E00C48D0 A6660000 */ sh $a2, ($s3) +/* 3CB6C4 E00C48D4 AE220000 */ sw $v0, ($s1) +/* 3CB6C8 E00C48D8 3C03E00C */ lui $v1, %hi(D_E00C49D4) +/* 3CB6CC E00C48DC 00761821 */ addu $v1, $v1, $s6 +/* 3CB6D0 E00C48E0 906349D4 */ lbu $v1, %lo(D_E00C49D4)($v1) +/* 3CB6D4 E00C48E4 3C06E00C */ lui $a2, %hi(D_E00C49E8) +/* 3CB6D8 E00C48E8 00D63021 */ addu $a2, $a2, $s6 +/* 3CB6DC E00C48EC 90C649E8 */ lbu $a2, %lo(D_E00C49E8)($a2) +/* 3CB6E0 E00C48F0 3C07E00C */ lui $a3, %hi(D_E00C49FC) +/* 3CB6E4 E00C48F4 00F63821 */ addu $a3, $a3, $s6 +/* 3CB6E8 E00C48F8 90E749FC */ lbu $a3, %lo(D_E00C49FC)($a3) +/* 3CB6EC E00C48FC 24820010 */ addiu $v0, $a0, 0x10 +/* 3CB6F0 E00C4900 AE220000 */ sw $v0, ($s1) +/* 3CB6F4 E00C4904 3C02DE00 */ lui $v0, 0xde00 +/* 3CB6F8 E00C4908 AC820008 */ sw $v0, 8($a0) +/* 3CB6FC E00C490C 24820018 */ addiu $v0, $a0, 0x18 +/* 3CB700 E00C4910 AC95000C */ sw $s5, 0xc($a0) +/* 3CB704 E00C4914 AE220000 */ sw $v0, ($s1) +/* 3CB708 E00C4918 8FAF00A0 */ lw $t7, 0xa0($sp) +/* 3CB70C E00C491C 354A0002 */ ori $t2, $t2, 2 +/* 3CB710 E00C4920 01E50018 */ mult $t7, $a1 +/* 3CB714 E00C4924 24090040 */ addiu $t1, $zero, 0x40 +/* 3CB718 E00C4928 26100004 */ addiu $s0, $s0, 4 +/* 3CB71C E00C492C 26D60001 */ addiu $s6, $s6, 1 +/* 3CB720 E00C4930 AC8A0010 */ sw $t2, 0x10($a0) +/* 3CB724 E00C4934 00002812 */ mflo $a1 +/* 3CB728 E00C4938 AC890014 */ sw $t1, 0x14($a0) +/* 3CB72C E00C493C 00031E00 */ sll $v1, $v1, 0x18 +/* 3CB730 E00C4940 00A80018 */ mult $a1, $t0 +/* 3CB734 E00C4944 00063400 */ sll $a2, $a2, 0x10 +/* 3CB738 E00C4948 00661825 */ or $v1, $v1, $a2 +/* 3CB73C E00C494C 00073A00 */ sll $a3, $a3, 8 +/* 3CB740 E00C4950 00671825 */ or $v1, $v1, $a3 +/* 3CB744 E00C4954 00001010 */ mfhi $v0 +/* 3CB748 E00C4958 00451021 */ addu $v0, $v0, $a1 +/* 3CB74C E00C495C 000211C3 */ sra $v0, $v0, 7 +/* 3CB750 E00C4960 00052FC3 */ sra $a1, $a1, 0x1f +/* 3CB754 E00C4964 00451023 */ subu $v0, $v0, $a1 +/* 3CB758 E00C4968 304200FF */ andi $v0, $v0, 0xff +/* 3CB75C E00C496C 00621825 */ or $v1, $v1, $v0 +/* 3CB760 E00C4970 2AC2000A */ slti $v0, $s6, 0xa +/* 3CB764 E00C4974 1440FF9E */ bnez $v0, .LE00C47F0 +/* 3CB768 E00C4978 AC830004 */ sw $v1, 4($a0) +/* 3CB76C E00C497C 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3CB770 E00C4980 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3CB774 E00C4984 8C430000 */ lw $v1, ($v0) +/* 3CB778 E00C4988 0060202D */ daddu $a0, $v1, $zero +/* 3CB77C E00C498C 24630008 */ addiu $v1, $v1, 8 +/* 3CB780 E00C4990 AC430000 */ sw $v1, ($v0) +/* 3CB784 E00C4994 AC8A0000 */ sw $t2, ($a0) +/* 3CB788 E00C4998 AC890004 */ sw $t1, 4($a0) +/* 3CB78C E00C499C 8FBF00D4 */ lw $ra, 0xd4($sp) +/* 3CB790 E00C49A0 8FBE00D0 */ lw $fp, 0xd0($sp) +/* 3CB794 E00C49A4 8FB700CC */ lw $s7, 0xcc($sp) +/* 3CB798 E00C49A8 8FB600C8 */ lw $s6, 0xc8($sp) +/* 3CB79C E00C49AC 8FB500C4 */ lw $s5, 0xc4($sp) +/* 3CB7A0 E00C49B0 8FB400C0 */ lw $s4, 0xc0($sp) +/* 3CB7A4 E00C49B4 8FB300BC */ lw $s3, 0xbc($sp) +/* 3CB7A8 E00C49B8 8FB200B8 */ lw $s2, 0xb8($sp) +/* 3CB7AC E00C49BC 8FB100B4 */ lw $s1, 0xb4($sp) +/* 3CB7B0 E00C49C0 8FB000B0 */ lw $s0, 0xb0($sp) +/* 3CB7B4 E00C49C4 D7B400D8 */ ldc1 $f20, 0xd8($sp) +/* 3CB7B8 E00C49C8 03E00008 */ jr $ra +/* 3CB7BC E00C49CC 27BD00E0 */ addiu $sp, $sp, 0xe0 diff --git a/asm/nonmatchings/code_3CC9E0/func_E00C6000.s b/asm/nonmatchings/code_3CC9E0/func_E00C6000.s new file mode 100644 index 0000000000..00be5b6c63 --- /dev/null +++ b/asm/nonmatchings/code_3CC9E0/func_E00C6000.s @@ -0,0 +1,240 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C6000 +/* 3CC9E0 E00C6000 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 3CC9E4 E00C6004 AFB1002C */ sw $s1, 0x2c($sp) +/* 3CC9E8 E00C6008 0080882D */ daddu $s1, $a0, $zero +/* 3CC9EC E00C600C AFB30034 */ sw $s3, 0x34($sp) +/* 3CC9F0 E00C6010 24130001 */ addiu $s3, $zero, 1 +/* 3CC9F4 E00C6014 AFB5003C */ sw $s5, 0x3c($sp) +/* 3CC9F8 E00C6018 8FB50098 */ lw $s5, 0x98($sp) +/* 3CC9FC E00C601C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3CCA00 E00C6020 AFB20030 */ sw $s2, 0x30($sp) +/* 3CCA04 E00C6024 8FB2009C */ lw $s2, 0x9c($sp) +/* 3CCA08 E00C6028 24020002 */ addiu $v0, $zero, 2 +/* 3CCA0C E00C602C AFBF0040 */ sw $ra, 0x40($sp) +/* 3CCA10 E00C6030 AFB40038 */ sw $s4, 0x38($sp) +/* 3CCA14 E00C6034 AFB00028 */ sw $s0, 0x28($sp) +/* 3CCA18 E00C6038 F7BE0070 */ sdc1 $f30, 0x70($sp) +/* 3CCA1C E00C603C F7BC0068 */ sdc1 $f28, 0x68($sp) +/* 3CCA20 E00C6040 F7BA0060 */ sdc1 $f26, 0x60($sp) +/* 3CCA24 E00C6044 F7B80058 */ sdc1 $f24, 0x58($sp) +/* 3CCA28 E00C6048 F7B60050 */ sdc1 $f22, 0x50($sp) +/* 3CCA2C E00C604C F7B40048 */ sdc1 $f20, 0x48($sp) +/* 3CCA30 E00C6050 AFA5007C */ sw $a1, 0x7c($sp) +/* 3CCA34 E00C6054 AFA60080 */ sw $a2, 0x80($sp) +/* 3CCA38 E00C6058 16220002 */ bne $s1, $v0, .LE00C6064 +/* 3CCA3C E00C605C AFA70084 */ sw $a3, 0x84($sp) +/* 3CCA40 E00C6060 24130008 */ addiu $s3, $zero, 8 +.LE00C6064: +/* 3CCA44 E00C6064 3C02E00C */ lui $v0, %hi(D_E00C6394) +/* 3CCA48 E00C6068 24426394 */ addiu $v0, $v0, %lo(D_E00C6394) +/* 3CCA4C E00C606C AFA20018 */ sw $v0, 0x18($sp) +/* 3CCA50 E00C6070 3C02E00C */ lui $v0, %hi(D_E00C639C) +/* 3CCA54 E00C6074 2442639C */ addiu $v0, $v0, %lo(D_E00C639C) +/* 3CCA58 E00C6078 AFA2001C */ sw $v0, 0x1c($sp) +/* 3CCA5C E00C607C 3C02E00C */ lui $v0, %hi(D_E00C6768) +/* 3CCA60 E00C6080 24426768 */ addiu $v0, $v0, %lo(D_E00C6768) +/* 3CCA64 E00C6084 AFA20020 */ sw $v0, 0x20($sp) +/* 3CCA68 E00C6088 24020063 */ addiu $v0, $zero, 0x63 +/* 3CCA6C E00C608C AFA00010 */ sw $zero, 0x10($sp) +/* 3CCA70 E00C6090 AFA00024 */ sw $zero, 0x24($sp) +/* 3CCA74 E00C6094 0C080124 */ jal func_E0200490 +/* 3CCA78 E00C6098 AFA20014 */ sw $v0, 0x14($sp) +/* 3CCA7C E00C609C 00132140 */ sll $a0, $s3, 5 +/* 3CCA80 E00C60A0 00932023 */ subu $a0, $a0, $s3 +/* 3CCA84 E00C60A4 00042080 */ sll $a0, $a0, 2 +/* 3CCA88 E00C60A8 0040A02D */ daddu $s4, $v0, $zero +/* 3CCA8C E00C60AC 0C08012C */ jal func_E02004B0 +/* 3CCA90 E00C60B0 AE930008 */ sw $s3, 8($s4) +/* 3CCA94 E00C60B4 0040802D */ daddu $s0, $v0, $zero +/* 3CCA98 E00C60B8 16000003 */ bnez $s0, .LE00C60C8 +/* 3CCA9C E00C60BC AE82000C */ sw $v0, 0xc($s4) +.LE00C60C0: +/* 3CCAA0 E00C60C0 08031830 */ j .LE00C60C0 +/* 3CCAA4 E00C60C4 00000000 */ nop +.LE00C60C8: +/* 3CCAA8 E00C60C8 5E400003 */ bgtzl $s2, .LE00C60D8 +/* 3CCAAC E00C60CC AE120020 */ sw $s2, 0x20($s0) +/* 3CCAB0 E00C60D0 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3CCAB4 E00C60D4 AE020020 */ sw $v0, 0x20($s0) +.LE00C60D8: +/* 3CCAB8 E00C60D8 C7AA007C */ lwc1 $f10, 0x7c($sp) +/* 3CCABC E00C60DC E60A0004 */ swc1 $f10, 4($s0) +/* 3CCAC0 E00C60E0 C7A00088 */ lwc1 $f0, 0x88($sp) +/* 3CCAC4 E00C60E4 46005086 */ mov.s $f2, $f10 +/* 3CCAC8 E00C60E8 AE110000 */ sw $s1, ($s0) +/* 3CCACC E00C60EC AE000024 */ sw $zero, 0x24($s0) +/* 3CCAD0 E00C60F0 AE15001C */ sw $s5, 0x1c($s0) +/* 3CCAD4 E00C60F4 AE000034 */ sw $zero, 0x34($s0) +/* 3CCAD8 E00C60F8 E6000010 */ swc1 $f0, 0x10($s0) +/* 3CCADC E00C60FC C7AA0080 */ lwc1 $f10, 0x80($sp) +/* 3CCAE0 E00C6100 E60A0008 */ swc1 $f10, 8($s0) +/* 3CCAE4 E00C6104 C7AA0084 */ lwc1 $f10, 0x84($sp) +/* 3CCAE8 E00C6108 46000206 */ mov.s $f8, $f0 +/* 3CCAEC E00C610C E60A000C */ swc1 $f10, 0xc($s0) +/* 3CCAF0 E00C6110 C7A0008C */ lwc1 $f0, 0x8c($sp) +/* 3CCAF4 E00C6114 46024201 */ sub.s $f8, $f8, $f2 +/* 3CCAF8 E00C6118 E6000014 */ swc1 $f0, 0x14($s0) +/* 3CCAFC E00C611C C7A00090 */ lwc1 $f0, 0x90($sp) +/* 3CCB00 E00C6120 C6020014 */ lwc1 $f2, 0x14($s0) +/* 3CCB04 E00C6124 E6000018 */ swc1 $f0, 0x18($s0) +/* 3CCB08 E00C6128 C7A00094 */ lwc1 $f0, 0x94($sp) +/* 3CCB0C E00C612C 44952000 */ mtc1 $s5, $f4 +/* 3CCB10 E00C6130 00000000 */ nop +/* 3CCB14 E00C6134 46802120 */ cvt.s.w $f4, $f4 +/* 3CCB18 E00C6138 E6000048 */ swc1 $f0, 0x48($s0) +/* 3CCB1C E00C613C C6000008 */ lwc1 $f0, 8($s0) +/* 3CCB20 E00C6140 46005186 */ mov.s $f6, $f10 +/* 3CCB24 E00C6144 46001081 */ sub.s $f2, $f2, $f0 +/* 3CCB28 E00C6148 C6000018 */ lwc1 $f0, 0x18($s0) +/* 3CCB2C E00C614C 46044203 */ div.s $f8, $f8, $f4 +/* 3CCB30 E00C6150 E6080060 */ swc1 $f8, 0x60($s0) +/* 3CCB34 E00C6154 46060001 */ sub.s $f0, $f0, $f6 +/* 3CCB38 E00C6158 46041083 */ div.s $f2, $f2, $f4 +/* 3CCB3C E00C615C E6020064 */ swc1 $f2, 0x64($s0) +/* 3CCB40 E00C6160 46040003 */ div.s $f0, $f0, $f4 +/* 3CCB44 E00C6164 1220007B */ beqz $s1, .LE00C6354 +/* 3CCB48 E00C6168 E6000068 */ swc1 $f0, 0x68($s0) +/* 3CCB4C E00C616C 24020001 */ addiu $v0, $zero, 1 +/* 3CCB50 E00C6170 1622002B */ bne $s1, $v0, .LE00C6220 +/* 3CCB54 E00C6174 24040168 */ addiu $a0, $zero, 0x168 +/* 3CCB58 E00C6178 24040040 */ addiu $a0, $zero, 0x40 +/* 3CCB5C E00C617C 240300FF */ addiu $v1, $zero, 0xff +/* 3CCB60 E00C6180 24020058 */ addiu $v0, $zero, 0x58 +/* 3CCB64 E00C6184 AE02002C */ sw $v0, 0x2c($s0) +/* 3CCB68 E00C6188 24020046 */ addiu $v0, $zero, 0x46 +/* 3CCB6C E00C618C AE020030 */ sw $v0, 0x30($s0) +/* 3CCB70 E00C6190 24020037 */ addiu $v0, $zero, 0x37 +/* 3CCB74 E00C6194 AE020034 */ sw $v0, 0x34($s0) +/* 3CCB78 E00C6198 2402000B */ addiu $v0, $zero, 0xb +/* 3CCB7C E00C619C AE020038 */ sw $v0, 0x38($s0) +/* 3CCB80 E00C61A0 24020033 */ addiu $v0, $zero, 0x33 +/* 3CCB84 E00C61A4 AE02003C */ sw $v0, 0x3c($s0) +/* 3CCB88 E00C61A8 2402007B */ addiu $v0, $zero, 0x7b +/* 3CCB8C E00C61AC AE030028 */ sw $v1, 0x28($s0) +/* 3CCB90 E00C61B0 AE020040 */ sw $v0, 0x40($s0) +/* 3CCB94 E00C61B4 0C080138 */ jal func_E02004E0 +/* 3CCB98 E00C61B8 AE030044 */ sw $v1, 0x44($s0) +/* 3CCB9C E00C61BC 24040040 */ addiu $a0, $zero, 0x40 +/* 3CCBA0 E00C61C0 44820000 */ mtc1 $v0, $f0 +/* 3CCBA4 E00C61C4 00000000 */ nop +/* 3CCBA8 E00C61C8 46800020 */ cvt.s.w $f0, $f0 +/* 3CCBAC E00C61CC 0C080138 */ jal func_E02004E0 +/* 3CCBB0 E00C61D0 E600004C */ swc1 $f0, 0x4c($s0) +/* 3CCBB4 E00C61D4 3C013E4C */ lui $at, 0x3e4c +/* 3CCBB8 E00C61D8 3421CCCD */ ori $at, $at, 0xcccd +/* 3CCBBC E00C61DC 44811000 */ mtc1 $at, $f2 +/* 3CCBC0 E00C61E0 3C013E99 */ lui $at, 0x3e99 +/* 3CCBC4 E00C61E4 3421999A */ ori $at, $at, 0x999a +/* 3CCBC8 E00C61E8 44812000 */ mtc1 $at, $f4 +/* 3CCBCC E00C61EC 3C01C120 */ lui $at, 0xc120 +/* 3CCBD0 E00C61F0 44813000 */ mtc1 $at, $f6 +/* 3CCBD4 E00C61F4 44820000 */ mtc1 $v0, $f0 +/* 3CCBD8 E00C61F8 00000000 */ nop +/* 3CCBDC E00C61FC 46800020 */ cvt.s.w $f0, $f0 +/* 3CCBE0 E00C6200 E6000050 */ swc1 $f0, 0x50($s0) +/* 3CCBE4 E00C6204 AE000054 */ sw $zero, 0x54($s0) +/* 3CCBE8 E00C6208 AE000058 */ sw $zero, 0x58($s0) +/* 3CCBEC E00C620C AE000074 */ sw $zero, 0x74($s0) +/* 3CCBF0 E00C6210 E6020070 */ swc1 $f2, 0x70($s0) +/* 3CCBF4 E00C6214 E604006C */ swc1 $f4, 0x6c($s0) +/* 3CCBF8 E00C6218 080318D5 */ j .LE00C6354 +/* 3CCBFC E00C621C E6060078 */ swc1 $f6, 0x78($s0) +.LE00C6220: +/* 3CCC00 E00C6220 240300FF */ addiu $v1, $zero, 0xff +/* 3CCC04 E00C6224 24020058 */ addiu $v0, $zero, 0x58 +/* 3CCC08 E00C6228 AE02002C */ sw $v0, 0x2c($s0) +/* 3CCC0C E00C622C 24020046 */ addiu $v0, $zero, 0x46 +/* 3CCC10 E00C6230 AE020030 */ sw $v0, 0x30($s0) +/* 3CCC14 E00C6234 24020037 */ addiu $v0, $zero, 0x37 +/* 3CCC18 E00C6238 AE020034 */ sw $v0, 0x34($s0) +/* 3CCC1C E00C623C 2402000B */ addiu $v0, $zero, 0xb +/* 3CCC20 E00C6240 AE020038 */ sw $v0, 0x38($s0) +/* 3CCC24 E00C6244 24020033 */ addiu $v0, $zero, 0x33 +/* 3CCC28 E00C6248 AE02003C */ sw $v0, 0x3c($s0) +/* 3CCC2C E00C624C 2402007B */ addiu $v0, $zero, 0x7b +/* 3CCC30 E00C6250 AE030028 */ sw $v1, 0x28($s0) +/* 3CCC34 E00C6254 AE020040 */ sw $v0, 0x40($s0) +/* 3CCC38 E00C6258 0C080138 */ jal func_E02004E0 +/* 3CCC3C E00C625C AE030044 */ sw $v1, 0x44($s0) +/* 3CCC40 E00C6260 4482C000 */ mtc1 $v0, $f24 +/* 3CCC44 E00C6264 00000000 */ nop +/* 3CCC48 E00C6268 4680C620 */ cvt.s.w $f24, $f24 +/* 3CCC4C E00C626C 12600039 */ beqz $s3, .LE00C6354 +/* 3CCC50 E00C6270 0000882D */ daddu $s1, $zero, $zero +/* 3CCC54 E00C6274 26100078 */ addiu $s0, $s0, 0x78 +/* 3CCC58 E00C6278 0220902D */ daddu $s2, $s1, $zero +/* 3CCC5C E00C627C 3C014040 */ lui $at, 0x4040 +/* 3CCC60 E00C6280 4481F000 */ mtc1 $at, $f30 +/* 3CCC64 E00C6284 3C013F80 */ lui $at, 0x3f80 +/* 3CCC68 E00C6288 4481B000 */ mtc1 $at, $f22 +/* 3CCC6C E00C628C 3C01C234 */ lui $at, 0xc234 +/* 3CCC70 E00C6290 4481E000 */ mtc1 $at, $f28 +/* 3CCC74 E00C6294 3C01C120 */ lui $at, 0xc120 +/* 3CCC78 E00C6298 4481D000 */ mtc1 $at, $f26 +.LE00C629C: +/* 3CCC7C E00C629C C7AA007C */ lwc1 $f10, 0x7c($sp) +/* 3CCC80 E00C62A0 4492A000 */ mtc1 $s2, $f20 +/* 3CCC84 E00C62A4 00000000 */ nop +/* 3CCC88 E00C62A8 4680A520 */ cvt.s.w $f20, $f20 +/* 3CCC8C E00C62AC E60AFF8C */ swc1 $f10, -0x74($s0) +/* 3CCC90 E00C62B0 C7AA0080 */ lwc1 $f10, 0x80($sp) +/* 3CCC94 E00C62B4 4618A500 */ add.s $f20, $f20, $f24 +/* 3CCC98 E00C62B8 E60AFF90 */ swc1 $f10, -0x70($s0) +/* 3CCC9C E00C62BC C7AA0084 */ lwc1 $f10, 0x84($sp) +/* 3CCCA0 E00C62C0 4600A306 */ mov.s $f12, $f20 +/* 3CCCA4 E00C62C4 0C080140 */ jal func_E0200500 +/* 3CCCA8 E00C62C8 E60AFF94 */ swc1 $f10, -0x6c($s0) +/* 3CCCAC E00C62CC 3C0140A0 */ lui $at, 0x40a0 +/* 3CCCB0 E00C62D0 44815000 */ mtc1 $at, $f10 +/* 3CCCB4 E00C62D4 00000000 */ nop +/* 3CCCB8 E00C62D8 460A0002 */ mul.s $f0, $f0, $f10 +/* 3CCCBC E00C62DC 00000000 */ nop +/* 3CCCC0 E00C62E0 4600A306 */ mov.s $f12, $f20 +/* 3CCCC4 E00C62E4 0C080144 */ jal func_E0200510 +/* 3CCCC8 E00C62E8 E600FFE8 */ swc1 $f0, -0x18($s0) +/* 3CCCCC E00C62EC 46000000 */ add.s $f0, $f0, $f0 +/* 3CCCD0 E00C62F0 2652002D */ addiu $s2, $s2, 0x2d +/* 3CCCD4 E00C62F4 461E0000 */ add.s $f0, $f0, $f30 +/* 3CCCD8 E00C62F8 26310001 */ addiu $s1, $s1, 1 +/* 3CCCDC E00C62FC 24040040 */ addiu $a0, $zero, 0x40 +/* 3CCCE0 E00C6300 0C080138 */ jal func_E02004E0 +/* 3CCCE4 E00C6304 E600FFEC */ swc1 $f0, -0x14($s0) +/* 3CCCE8 E00C6308 24040040 */ addiu $a0, $zero, 0x40 +/* 3CCCEC E00C630C 44820000 */ mtc1 $v0, $f0 +/* 3CCCF0 E00C6310 00000000 */ nop +/* 3CCCF4 E00C6314 46800020 */ cvt.s.w $f0, $f0 +/* 3CCCF8 E00C6318 0C080138 */ jal func_E02004E0 +/* 3CCCFC E00C631C E600FFD4 */ swc1 $f0, -0x2c($s0) +/* 3CCD00 E00C6320 44820000 */ mtc1 $v0, $f0 +/* 3CCD04 E00C6324 00000000 */ nop +/* 3CCD08 E00C6328 46800020 */ cvt.s.w $f0, $f0 +/* 3CCD0C E00C632C E600FFD8 */ swc1 $f0, -0x28($s0) +/* 3CCD10 E00C6330 E616FFF8 */ swc1 $f22, -8($s0) +/* 3CCD14 E00C6334 E616FFF4 */ swc1 $f22, -0xc($s0) +/* 3CCD18 E00C6338 AE00FFDC */ sw $zero, -0x24($s0) +/* 3CCD1C E00C633C AE00FFE0 */ sw $zero, -0x20($s0) +/* 3CCD20 E00C6340 E61CFFFC */ swc1 $f28, -4($s0) +/* 3CCD24 E00C6344 E61A0000 */ swc1 $f26, ($s0) +/* 3CCD28 E00C6348 0233102A */ slt $v0, $s1, $s3 +/* 3CCD2C E00C634C 1440FFD3 */ bnez $v0, .LE00C629C +/* 3CCD30 E00C6350 2610007C */ addiu $s0, $s0, 0x7c +.LE00C6354: +/* 3CCD34 E00C6354 0280102D */ daddu $v0, $s4, $zero +/* 3CCD38 E00C6358 8FBF0040 */ lw $ra, 0x40($sp) +/* 3CCD3C E00C635C 8FB5003C */ lw $s5, 0x3c($sp) +/* 3CCD40 E00C6360 8FB40038 */ lw $s4, 0x38($sp) +/* 3CCD44 E00C6364 8FB30034 */ lw $s3, 0x34($sp) +/* 3CCD48 E00C6368 8FB20030 */ lw $s2, 0x30($sp) +/* 3CCD4C E00C636C 8FB1002C */ lw $s1, 0x2c($sp) +/* 3CCD50 E00C6370 8FB00028 */ lw $s0, 0x28($sp) +/* 3CCD54 E00C6374 D7BE0070 */ ldc1 $f30, 0x70($sp) +/* 3CCD58 E00C6378 D7BC0068 */ ldc1 $f28, 0x68($sp) +/* 3CCD5C E00C637C D7BA0060 */ ldc1 $f26, 0x60($sp) +/* 3CCD60 E00C6380 D7B80058 */ ldc1 $f24, 0x58($sp) +/* 3CCD64 E00C6384 D7B60050 */ ldc1 $f22, 0x50($sp) +/* 3CCD68 E00C6388 D7B40048 */ ldc1 $f20, 0x48($sp) +/* 3CCD6C E00C638C 03E00008 */ jr $ra +/* 3CCD70 E00C6390 27BD0078 */ addiu $sp, $sp, 0x78 diff --git a/asm/nonmatchings/code_3CC9E0/func_E00C6394.s b/asm/nonmatchings/code_3CC9E0/func_E00C6394.s new file mode 100644 index 0000000000..78eaa49489 --- /dev/null +++ b/asm/nonmatchings/code_3CC9E0/func_E00C6394.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C6394 +/* 3CCD74 E00C6394 03E00008 */ jr $ra +/* 3CCD78 E00C6398 00000000 */ nop diff --git a/asm/nonmatchings/code_3CC9E0/func_E00C639C.s b/asm/nonmatchings/code_3CC9E0/func_E00C639C.s new file mode 100644 index 0000000000..4980ccca8b --- /dev/null +++ b/asm/nonmatchings/code_3CC9E0/func_E00C639C.s @@ -0,0 +1,258 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C639C +/* 3CCD7C E00C639C 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 3CCD80 E00C63A0 AFB20030 */ sw $s2, 0x30($sp) +/* 3CCD84 E00C63A4 0080902D */ daddu $s2, $a0, $zero +/* 3CCD88 E00C63A8 AFBF0034 */ sw $ra, 0x34($sp) +/* 3CCD8C E00C63AC AFB1002C */ sw $s1, 0x2c($sp) +/* 3CCD90 E00C63B0 AFB00028 */ sw $s0, 0x28($sp) +/* 3CCD94 E00C63B4 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3CCD98 E00C63B8 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3CCD9C E00C63BC 8E430000 */ lw $v1, ($s2) +/* 3CCDA0 E00C63C0 8E50000C */ lw $s0, 0xc($s2) +/* 3CCDA4 E00C63C4 30620010 */ andi $v0, $v1, 0x10 +/* 3CCDA8 E00C63C8 8E110000 */ lw $s1, ($s0) +/* 3CCDAC E00C63CC 10400005 */ beqz $v0, .LE00C63E4 +/* 3CCDB0 E00C63D0 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3CCDB4 E00C63D4 00621024 */ and $v0, $v1, $v0 +/* 3CCDB8 E00C63D8 AE420000 */ sw $v0, ($s2) +/* 3CCDBC E00C63DC 24020010 */ addiu $v0, $zero, 0x10 +/* 3CCDC0 E00C63E0 AE020020 */ sw $v0, 0x20($s0) +.LE00C63E4: +/* 3CCDC4 E00C63E4 8E030020 */ lw $v1, 0x20($s0) +/* 3CCDC8 E00C63E8 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3CCDCC E00C63EC 10400002 */ beqz $v0, .LE00C63F8 +/* 3CCDD0 E00C63F0 2462FFFF */ addiu $v0, $v1, -1 +/* 3CCDD4 E00C63F4 AE020020 */ sw $v0, 0x20($s0) +.LE00C63F8: +/* 3CCDD8 E00C63F8 8E020024 */ lw $v0, 0x24($s0) +/* 3CCDDC E00C63FC 8E030020 */ lw $v1, 0x20($s0) +/* 3CCDE0 E00C6400 24420001 */ addiu $v0, $v0, 1 +/* 3CCDE4 E00C6404 AE020024 */ sw $v0, 0x24($s0) +/* 3CCDE8 E00C6408 24020001 */ addiu $v0, $zero, 1 +/* 3CCDEC E00C640C 14620016 */ bne $v1, $v0, .LE00C6468 +/* 3CCDF0 E00C6410 00000000 */ nop +/* 3CCDF4 E00C6414 16230014 */ bne $s1, $v1, .LE00C6468 +/* 3CCDF8 E00C6418 00000000 */ nop +/* 3CCDFC E00C641C 0C080150 */ jal func_E0200540 +/* 3CCE00 E00C6420 24040063 */ addiu $a0, $zero, 0x63 +/* 3CCE04 E00C6424 C6000010 */ lwc1 $f0, 0x10($s0) +/* 3CCE08 E00C6428 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3CCE0C E00C642C C6000014 */ lwc1 $f0, 0x14($s0) +/* 3CCE10 E00C6430 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3CCE14 E00C6434 3C013F80 */ lui $at, 0x3f80 +/* 3CCE18 E00C6438 44810000 */ mtc1 $at, $f0 +/* 3CCE1C E00C643C C6020018 */ lwc1 $f2, 0x18($s0) +/* 3CCE20 E00C6440 24020020 */ addiu $v0, $zero, 0x20 +/* 3CCE24 E00C6444 AFA20020 */ sw $v0, 0x20($sp) +/* 3CCE28 E00C6448 AFA20024 */ sw $v0, 0x24($sp) +/* 3CCE2C E00C644C E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3CCE30 E00C6450 E7A20018 */ swc1 $f2, 0x18($sp) +/* 3CCE34 E00C6454 8E050004 */ lw $a1, 4($s0) +/* 3CCE38 E00C6458 8E060008 */ lw $a2, 8($s0) +/* 3CCE3C E00C645C 8E07000C */ lw $a3, 0xc($s0) +/* 3CCE40 E00C6460 0C031800 */ jal func_E00C6000 +/* 3CCE44 E00C6464 24040002 */ addiu $a0, $zero, 2 +.LE00C6468: +/* 3CCE48 E00C6468 8E020020 */ lw $v0, 0x20($s0) +/* 3CCE4C E00C646C 04410005 */ bgez $v0, .LE00C6484 +/* 3CCE50 E00C6470 24020001 */ addiu $v0, $zero, 1 +/* 3CCE54 E00C6474 0C080128 */ jal func_E02004A0 +/* 3CCE58 E00C6478 0240202D */ daddu $a0, $s2, $zero +/* 3CCE5C E00C647C 080319D2 */ j .LE00C6748 +/* 3CCE60 E00C6480 00000000 */ nop +.LE00C6484: +/* 3CCE64 E00C6484 8E030024 */ lw $v1, 0x24($s0) +/* 3CCE68 E00C6488 12220023 */ beq $s1, $v0, .LE00C6518 +/* 3CCE6C E00C648C 2A220002 */ slti $v0, $s1, 2 +/* 3CCE70 E00C6490 50400005 */ beql $v0, $zero, .LE00C64A8 +/* 3CCE74 E00C6494 24020002 */ addiu $v0, $zero, 2 +/* 3CCE78 E00C6498 12200007 */ beqz $s1, .LE00C64B8 +/* 3CCE7C E00C649C 30620003 */ andi $v0, $v1, 3 +/* 3CCE80 E00C64A0 080319D2 */ j .LE00C6748 +/* 3CCE84 E00C64A4 00000000 */ nop +.LE00C64A8: +/* 3CCE88 E00C64A8 1222005F */ beq $s1, $v0, .LE00C6628 +/* 3CCE8C E00C64AC 00000000 */ nop +/* 3CCE90 E00C64B0 080319D2 */ j .LE00C6748 +/* 3CCE94 E00C64B4 00000000 */ nop +.LE00C64B8: +/* 3CCE98 E00C64B8 144000A3 */ bnez $v0, .LE00C6748 +/* 3CCE9C E00C64BC 00000000 */ nop +/* 3CCEA0 E00C64C0 0C080150 */ jal func_E0200540 +/* 3CCEA4 E00C64C4 24040063 */ addiu $a0, $zero, 0x63 +/* 3CCEA8 E00C64C8 C6000010 */ lwc1 $f0, 0x10($s0) +/* 3CCEAC E00C64CC E7A00010 */ swc1 $f0, 0x10($sp) +/* 3CCEB0 E00C64D0 C6000014 */ lwc1 $f0, 0x14($s0) +/* 3CCEB4 E00C64D4 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3CCEB8 E00C64D8 3C013F80 */ lui $at, 0x3f80 +/* 3CCEBC E00C64DC 44810000 */ mtc1 $at, $f0 +/* 3CCEC0 E00C64E0 C6020018 */ lwc1 $f2, 0x18($s0) +/* 3CCEC4 E00C64E4 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3CCEC8 E00C64E8 E7A20018 */ swc1 $f2, 0x18($sp) +/* 3CCECC E00C64EC 8E02001C */ lw $v0, 0x1c($s0) +/* 3CCED0 E00C64F0 AFA20020 */ sw $v0, 0x20($sp) +/* 3CCED4 E00C64F4 8E02001C */ lw $v0, 0x1c($s0) +/* 3CCED8 E00C64F8 AFA20024 */ sw $v0, 0x24($sp) +/* 3CCEDC E00C64FC 8E050004 */ lw $a1, 4($s0) +/* 3CCEE0 E00C6500 8E060008 */ lw $a2, 8($s0) +/* 3CCEE4 E00C6504 8E07000C */ lw $a3, 0xc($s0) +/* 3CCEE8 E00C6508 0C031800 */ jal func_E00C6000 +/* 3CCEEC E00C650C 24040001 */ addiu $a0, $zero, 1 +/* 3CCEF0 E00C6510 080319D2 */ j .LE00C6748 +/* 3CCEF4 E00C6514 00000000 */ nop +.LE00C6518: +/* 3CCEF8 E00C6518 C6040060 */ lwc1 $f4, 0x60($s0) +/* 3CCEFC E00C651C 3C01E00C */ lui $at, %hi(D_E00C6CB0) +/* 3CCF00 E00C6520 D4206CB0 */ ldc1 $f0, %lo(D_E00C6CB0)($at) +/* 3CCF04 E00C6524 46002121 */ cvt.d.s $f4, $f4 +/* 3CCF08 E00C6528 46202102 */ mul.d $f4, $f4, $f0 +/* 3CCF0C E00C652C 00000000 */ nop +/* 3CCF10 E00C6530 C6020068 */ lwc1 $f2, 0x68($s0) +/* 3CCF14 E00C6534 460010A1 */ cvt.d.s $f2, $f2 +/* 3CCF18 E00C6538 46201082 */ mul.d $f2, $f2, $f0 +/* 3CCF1C E00C653C 00000000 */ nop +/* 3CCF20 E00C6540 C60A0064 */ lwc1 $f10, 0x64($s0) +/* 3CCF24 E00C6544 3C013F80 */ lui $at, 0x3f80 +/* 3CCF28 E00C6548 44814000 */ mtc1 $at, $f8 +/* 3CCF2C E00C654C 00000000 */ nop +/* 3CCF30 E00C6550 460A4201 */ sub.s $f8, $f8, $f10 +/* 3CCF34 E00C6554 3C01E00C */ lui $at, %hi(D_E00C6CB8) +/* 3CCF38 E00C6558 D4206CB8 */ ldc1 $f0, %lo(D_E00C6CB8)($at) +/* 3CCF3C E00C655C 46004221 */ cvt.d.s $f8, $f8 +/* 3CCF40 E00C6560 46204202 */ mul.d $f8, $f8, $f0 +/* 3CCF44 E00C6564 00000000 */ nop +/* 3CCF48 E00C6568 C60C0070 */ lwc1 $f12, 0x70($s0) +/* 3CCF4C E00C656C 3C013FF0 */ lui $at, 0x3ff0 +/* 3CCF50 E00C6570 44817800 */ mtc1 $at, $f15 +/* 3CCF54 E00C6574 44807000 */ mtc1 $zero, $f14 +/* 3CCF58 E00C6578 46006321 */ cvt.d.s $f12, $f12 +/* 3CCF5C E00C657C 462C7481 */ sub.d $f18, $f14, $f12 +/* 3CCF60 E00C6580 3C01E00C */ lui $at, %hi(D_E00C6CC0) +/* 3CCF64 E00C6584 D4206CC0 */ ldc1 $f0, %lo(D_E00C6CC0)($at) +/* 3CCF68 E00C6588 46209482 */ mul.d $f18, $f18, $f0 +/* 3CCF6C E00C658C 00000000 */ nop +/* 3CCF70 E00C6590 C606006C */ lwc1 $f6, 0x6c($s0) +/* 3CCF74 E00C6594 460031A1 */ cvt.d.s $f6, $f6 +/* 3CCF78 E00C6598 46267381 */ sub.d $f14, $f14, $f6 +/* 3CCF7C E00C659C 3C01E00C */ lui $at, %hi(D_E00C6CC8) +/* 3CCF80 E00C65A0 D4206CC8 */ ldc1 $f0, %lo(D_E00C6CC8)($at) +/* 3CCF84 E00C65A4 46207382 */ mul.d $f14, $f14, $f0 +/* 3CCF88 E00C65A8 00000000 */ nop +/* 3CCF8C E00C65AC C6100004 */ lwc1 $f16, 4($s0) +/* 3CCF90 E00C65B0 46202120 */ cvt.s.d $f4, $f4 +/* 3CCF94 E00C65B4 462010A0 */ cvt.s.d $f2, $f2 +/* 3CCF98 E00C65B8 E6040060 */ swc1 $f4, 0x60($s0) +/* 3CCF9C E00C65BC 46002006 */ mov.s $f0, $f4 +/* 3CCFA0 E00C65C0 E6020068 */ swc1 $f2, 0x68($s0) +/* 3CCFA4 E00C65C4 C6020074 */ lwc1 $f2, 0x74($s0) +/* 3CCFA8 E00C65C8 46008400 */ add.s $f16, $f16, $f0 +/* 3CCFAC E00C65CC C6000078 */ lwc1 $f0, 0x78($s0) +/* 3CCFB0 E00C65D0 C604000C */ lwc1 $f4, 0xc($s0) +/* 3CCFB4 E00C65D4 46001080 */ add.s $f2, $f2, $f0 +/* 3CCFB8 E00C65D8 C6000068 */ lwc1 $f0, 0x68($s0) +/* 3CCFBC E00C65DC 46002100 */ add.s $f4, $f4, $f0 +/* 3CCFC0 E00C65E0 460052A1 */ cvt.d.s $f10, $f10 +/* 3CCFC4 E00C65E4 C6000008 */ lwc1 $f0, 8($s0) +/* 3CCFC8 E00C65E8 46285280 */ add.d $f10, $f10, $f8 +/* 3CCFCC E00C65EC E6100004 */ swc1 $f16, 4($s0) +/* 3CCFD0 E00C65F0 E6020074 */ swc1 $f2, 0x74($s0) +/* 3CCFD4 E00C65F4 46326300 */ add.d $f12, $f12, $f18 +/* 3CCFD8 E00C65F8 462052A0 */ cvt.s.d $f10, $f10 +/* 3CCFDC E00C65FC E60A0064 */ swc1 $f10, 0x64($s0) +/* 3CCFE0 E00C6600 462E3180 */ add.d $f6, $f6, $f14 +/* 3CCFE4 E00C6604 46005086 */ mov.s $f2, $f10 +/* 3CCFE8 E00C6608 E604000C */ swc1 $f4, 0xc($s0) +/* 3CCFEC E00C660C 46020000 */ add.s $f0, $f0, $f2 +/* 3CCFF0 E00C6610 46206320 */ cvt.s.d $f12, $f12 +/* 3CCFF4 E00C6614 E60C0070 */ swc1 $f12, 0x70($s0) +/* 3CCFF8 E00C6618 462031A0 */ cvt.s.d $f6, $f6 +/* 3CCFFC E00C661C E606006C */ swc1 $f6, 0x6c($s0) +/* 3CD000 E00C6620 080319D2 */ j .LE00C6748 +/* 3CD004 E00C6624 E6000008 */ swc1 $f0, 8($s0) +.LE00C6628: +/* 3CD008 E00C6628 8E420008 */ lw $v0, 8($s2) +/* 3CD00C E00C662C 18400046 */ blez $v0, .LE00C6748 +/* 3CD010 E00C6630 0000202D */ daddu $a0, $zero, $zero +/* 3CD014 E00C6634 26030074 */ addiu $v1, $s0, 0x74 +/* 3CD018 E00C6638 3C01E00C */ lui $at, %hi(D_E00C6CD0) +/* 3CD01C E00C663C D4366CD0 */ ldc1 $f22, %lo(D_E00C6CD0)($at) +/* 3CD020 E00C6640 3C01E00C */ lui $at, %hi(D_E00C6CD8) +/* 3CD024 E00C6644 D4346CD8 */ ldc1 $f20, %lo(D_E00C6CD8)($at) +/* 3CD028 E00C6648 44806000 */ mtc1 $zero, $f12 +/* 3CD02C E00C664C 3C01E00C */ lui $at, %hi(D_E00C6CE0) +/* 3CD030 E00C6650 D4326CE0 */ ldc1 $f18, %lo(D_E00C6CE0)($at) +/* 3CD034 E00C6654 3C01E00C */ lui $at, %hi(D_E00C6CE8) +/* 3CD038 E00C6658 D4306CE8 */ ldc1 $f16, %lo(D_E00C6CE8)($at) +/* 3CD03C E00C665C 3C01E00C */ lui $at, %hi(D_E00C6CF0) +/* 3CD040 E00C6660 D42E6CF0 */ ldc1 $f14, %lo(D_E00C6CF0)($at) +.LE00C6664: +/* 3CD044 E00C6664 C462FFEC */ lwc1 $f2, -0x14($v1) +/* 3CD048 E00C6668 460010A1 */ cvt.d.s $f2, $f2 +/* 3CD04C E00C666C 46361082 */ mul.d $f2, $f2, $f22 +/* 3CD050 E00C6670 00000000 */ nop +/* 3CD054 E00C6674 C460FFF0 */ lwc1 $f0, -0x10($v1) +/* 3CD058 E00C6678 46000021 */ cvt.d.s $f0, $f0 +/* 3CD05C E00C667C 46340001 */ sub.d $f0, $f0, $f20 +/* 3CD060 E00C6680 C464FF94 */ lwc1 $f4, -0x6c($v1) +/* 3CD064 E00C6684 46200020 */ cvt.s.d $f0, $f0 +/* 3CD068 E00C6688 46002100 */ add.s $f4, $f4, $f0 +/* 3CD06C E00C668C E460FFF0 */ swc1 $f0, -0x10($v1) +/* 3CD070 E00C6690 462010A0 */ cvt.s.d $f2, $f2 +/* 3CD074 E00C6694 E462FFEC */ swc1 $f2, -0x14($v1) +/* 3CD078 E00C6698 C462FF90 */ lwc1 $f2, -0x70($v1) +/* 3CD07C E00C669C C460FFEC */ lwc1 $f0, -0x14($v1) +/* 3CD080 E00C66A0 46001080 */ add.s $f2, $f2, $f0 +/* 3CD084 E00C66A4 460C203C */ c.lt.s $f4, $f12 +/* 3CD088 E00C66A8 E464FF94 */ swc1 $f4, -0x6c($v1) +/* 3CD08C E00C66AC 4500000B */ bc1f .LE00C66DC +/* 3CD090 E00C66B0 E462FF90 */ swc1 $f2, -0x70($v1) +/* 3CD094 E00C66B4 C460FFF0 */ lwc1 $f0, -0x10($v1) +/* 3CD098 E00C66B8 460C003C */ c.lt.s $f0, $f12 +/* 3CD09C E00C66BC 00000000 */ nop +/* 3CD0A0 E00C66C0 45000006 */ bc1f .LE00C66DC +/* 3CD0A4 E00C66C4 E46CFF94 */ swc1 $f12, -0x6c($v1) +/* 3CD0A8 E00C66C8 46000021 */ cvt.d.s $f0, $f0 +/* 3CD0AC E00C66CC 46320002 */ mul.d $f0, $f0, $f18 +/* 3CD0B0 E00C66D0 00000000 */ nop +/* 3CD0B4 E00C66D4 46200020 */ cvt.s.d $f0, $f0 +/* 3CD0B8 E00C66D8 E460FFF0 */ swc1 $f0, -0x10($v1) +.LE00C66DC: +/* 3CD0BC E00C66DC C462FFFC */ lwc1 $f2, -4($v1) +/* 3CD0C0 E00C66E0 46026201 */ sub.s $f8, $f12, $f2 +/* 3CD0C4 E00C66E4 46004221 */ cvt.d.s $f8, $f8 +/* 3CD0C8 E00C66E8 46304202 */ mul.d $f8, $f8, $f16 +/* 3CD0CC E00C66EC 00000000 */ nop +/* 3CD0D0 E00C66F0 C460FFF8 */ lwc1 $f0, -8($v1) +/* 3CD0D4 E00C66F4 46006181 */ sub.s $f6, $f12, $f0 +/* 3CD0D8 E00C66F8 460031A1 */ cvt.d.s $f6, $f6 +/* 3CD0DC E00C66FC 462E3182 */ mul.d $f6, $f6, $f14 +/* 3CD0E0 E00C6700 00000000 */ nop +/* 3CD0E4 E00C6704 C46A0000 */ lwc1 $f10, ($v1) +/* 3CD0E8 E00C6708 C4640004 */ lwc1 $f4, 4($v1) +/* 3CD0EC E00C670C 46045280 */ add.s $f10, $f10, $f4 +/* 3CD0F0 E00C6710 460010A1 */ cvt.d.s $f2, $f2 +/* 3CD0F4 E00C6714 46281080 */ add.d $f2, $f2, $f8 +/* 3CD0F8 E00C6718 24840001 */ addiu $a0, $a0, 1 +/* 3CD0FC E00C671C 46000021 */ cvt.d.s $f0, $f0 +/* 3CD100 E00C6720 46260000 */ add.d $f0, $f0, $f6 +/* 3CD104 E00C6724 E46A0000 */ swc1 $f10, ($v1) +/* 3CD108 E00C6728 462010A0 */ cvt.s.d $f2, $f2 +/* 3CD10C E00C672C 46200020 */ cvt.s.d $f0, $f0 +/* 3CD110 E00C6730 E462FFFC */ swc1 $f2, -4($v1) +/* 3CD114 E00C6734 E460FFF8 */ swc1 $f0, -8($v1) +/* 3CD118 E00C6738 8E420008 */ lw $v0, 8($s2) +/* 3CD11C E00C673C 0082102A */ slt $v0, $a0, $v0 +/* 3CD120 E00C6740 1440FFC8 */ bnez $v0, .LE00C6664 +/* 3CD124 E00C6744 2463007C */ addiu $v1, $v1, 0x7c +.LE00C6748: +/* 3CD128 E00C6748 8FBF0034 */ lw $ra, 0x34($sp) +/* 3CD12C E00C674C 8FB20030 */ lw $s2, 0x30($sp) +/* 3CD130 E00C6750 8FB1002C */ lw $s1, 0x2c($sp) +/* 3CD134 E00C6754 8FB00028 */ lw $s0, 0x28($sp) +/* 3CD138 E00C6758 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3CD13C E00C675C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3CD140 E00C6760 03E00008 */ jr $ra +/* 3CD144 E00C6764 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_3CC9E0/func_E00C6768.s b/asm/nonmatchings/code_3CC9E0/func_E00C6768.s new file mode 100644 index 0000000000..67bfe2ab5b --- /dev/null +++ b/asm/nonmatchings/code_3CC9E0/func_E00C6768.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C6768 +/* 3CD148 E00C6768 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3CD14C E00C676C 3C02E00C */ lui $v0, %hi(D_E00C67B0) +/* 3CD150 E00C6770 244267B0 */ addiu $v0, $v0, %lo(D_E00C67B0) +/* 3CD154 E00C6774 AFA2001C */ sw $v0, 0x1c($sp) +/* 3CD158 E00C6778 2402000A */ addiu $v0, $zero, 0xa +/* 3CD15C E00C677C AFA20014 */ sw $v0, 0x14($sp) +/* 3CD160 E00C6780 2402002D */ addiu $v0, $zero, 0x2d +/* 3CD164 E00C6784 AFA40018 */ sw $a0, 0x18($sp) +/* 3CD168 E00C6788 27A40010 */ addiu $a0, $sp, 0x10 +/* 3CD16C E00C678C AFBF0020 */ sw $ra, 0x20($sp) +/* 3CD170 E00C6790 0C080120 */ jal func_E0200480 +/* 3CD174 E00C6794 AFA20010 */ sw $v0, 0x10($sp) +/* 3CD178 E00C6798 8C430000 */ lw $v1, ($v0) +/* 3CD17C E00C679C 34630002 */ ori $v1, $v1, 2 +/* 3CD180 E00C67A0 AC430000 */ sw $v1, ($v0) +/* 3CD184 E00C67A4 8FBF0020 */ lw $ra, 0x20($sp) +/* 3CD188 E00C67A8 03E00008 */ jr $ra +/* 3CD18C E00C67AC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3CC9E0/func_E00C67B0.s b/asm/nonmatchings/code_3CC9E0/func_E00C67B0.s new file mode 100644 index 0000000000..a822b5bc7d --- /dev/null +++ b/asm/nonmatchings/code_3CC9E0/func_E00C67B0.s @@ -0,0 +1,320 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C67B0 +/* 3CD190 E00C67B0 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3CD194 E00C67B4 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3CD198 E00C67B8 27BDFF00 */ addiu $sp, $sp, -0x100 +/* 3CD19C E00C67BC AFA40100 */ sw $a0, 0x100($sp) +/* 3CD1A0 E00C67C0 8FAA0100 */ lw $t2, 0x100($sp) +/* 3CD1A4 E00C67C4 3C04800B */ lui $a0, %hi(gCameras) +/* 3CD1A8 E00C67C8 24841D80 */ addiu $a0, $a0, %lo(gCameras) +/* 3CD1AC E00C67CC AFBF00CC */ sw $ra, 0xcc($sp) +/* 3CD1B0 E00C67D0 AFBE00C8 */ sw $fp, 0xc8($sp) +/* 3CD1B4 E00C67D4 AFB700C4 */ sw $s7, 0xc4($sp) +/* 3CD1B8 E00C67D8 AFB600C0 */ sw $s6, 0xc0($sp) +/* 3CD1BC E00C67DC AFB500BC */ sw $s5, 0xbc($sp) +/* 3CD1C0 E00C67E0 AFB400B8 */ sw $s4, 0xb8($sp) +/* 3CD1C4 E00C67E4 AFB300B4 */ sw $s3, 0xb4($sp) +/* 3CD1C8 E00C67E8 AFB200B0 */ sw $s2, 0xb0($sp) +/* 3CD1CC E00C67EC AFB100AC */ sw $s1, 0xac($sp) +/* 3CD1D0 E00C67F0 AFB000A8 */ sw $s0, 0xa8($sp) +/* 3CD1D4 E00C67F4 F7BE00F8 */ sdc1 $f30, 0xf8($sp) +/* 3CD1D8 E00C67F8 F7BC00F0 */ sdc1 $f28, 0xf0($sp) +/* 3CD1DC E00C67FC F7BA00E8 */ sdc1 $f26, 0xe8($sp) +/* 3CD1E0 E00C6800 F7B800E0 */ sdc1 $f24, 0xe0($sp) +/* 3CD1E4 E00C6804 F7B600D8 */ sdc1 $f22, 0xd8($sp) +/* 3CD1E8 E00C6808 F7B400D0 */ sdc1 $f20, 0xd0($sp) +/* 3CD1EC E00C680C 00031080 */ sll $v0, $v1, 2 +/* 3CD1F0 E00C6810 00431021 */ addu $v0, $v0, $v1 +/* 3CD1F4 E00C6814 00021080 */ sll $v0, $v0, 2 +/* 3CD1F8 E00C6818 00431023 */ subu $v0, $v0, $v1 +/* 3CD1FC E00C681C 000218C0 */ sll $v1, $v0, 3 +/* 3CD200 E00C6820 00431021 */ addu $v0, $v0, $v1 +/* 3CD204 E00C6824 000210C0 */ sll $v0, $v0, 3 +/* 3CD208 E00C6828 8D49000C */ lw $t1, 0xc($t2) +/* 3CD20C E00C682C 00441021 */ addu $v0, $v0, $a0 +/* 3CD210 E00C6830 AFA20098 */ sw $v0, 0x98($sp) +/* 3CD214 E00C6834 8D2A0000 */ lw $t2, ($t1) +/* 3CD218 E00C6838 8D270034 */ lw $a3, 0x34($t1) +/* 3CD21C E00C683C AFAA009C */ sw $t2, 0x9c($sp) +/* 3CD220 E00C6840 C5380048 */ lwc1 $f24, 0x48($t1) +/* 3CD224 E00C6844 114000FD */ beqz $t2, .LE00C6C3C +/* 3CD228 E00C6848 3C02E700 */ lui $v0, 0xe700 +/* 3CD22C E00C684C 3C05DB06 */ lui $a1, 0xdb06 +/* 3CD230 E00C6850 3C08800A */ lui $t0, %hi(D_8009A66C) +/* 3CD234 E00C6854 2508A66C */ addiu $t0, $t0, %lo(D_8009A66C) +/* 3CD238 E00C6858 34A50024 */ ori $a1, $a1, 0x24 +/* 3CD23C E00C685C 8D040000 */ lw $a0, ($t0) +/* 3CD240 E00C6860 0080182D */ daddu $v1, $a0, $zero +/* 3CD244 E00C6864 24840008 */ addiu $a0, $a0, 8 +/* 3CD248 E00C6868 AD040000 */ sw $a0, ($t0) +/* 3CD24C E00C686C AC620000 */ sw $v0, ($v1) +/* 3CD250 E00C6870 24820008 */ addiu $v0, $a0, 8 +/* 3CD254 E00C6874 AC600004 */ sw $zero, 4($v1) +/* 3CD258 E00C6878 AD020000 */ sw $v0, ($t0) +/* 3CD25C E00C687C AC850000 */ sw $a1, ($a0) +/* 3CD260 E00C6880 8FAA0100 */ lw $t2, 0x100($sp) +/* 3CD264 E00C6884 8D430010 */ lw $v1, 0x10($t2) +/* 3CD268 E00C6888 24820010 */ addiu $v0, $a0, 0x10 +/* 3CD26C E00C688C AD020000 */ sw $v0, ($t0) +/* 3CD270 E00C6890 8C63001C */ lw $v1, 0x1c($v1) +/* 3CD274 E00C6894 3C02FA00 */ lui $v0, 0xfa00 +/* 3CD278 E00C6898 AC820008 */ sw $v0, 8($a0) +/* 3CD27C E00C689C 3C028000 */ lui $v0, 0x8000 +/* 3CD280 E00C68A0 00621821 */ addu $v1, $v1, $v0 +/* 3CD284 E00C68A4 AC830004 */ sw $v1, 4($a0) +/* 3CD288 E00C68A8 9122002B */ lbu $v0, 0x2b($t1) +/* 3CD28C E00C68AC 9125002F */ lbu $a1, 0x2f($t1) +/* 3CD290 E00C68B0 91260033 */ lbu $a2, 0x33($t1) +/* 3CD294 E00C68B4 24830018 */ addiu $v1, $a0, 0x18 +/* 3CD298 E00C68B8 AD030000 */ sw $v1, ($t0) +/* 3CD29C E00C68BC 3C03FB00 */ lui $v1, 0xfb00 +/* 3CD2A0 E00C68C0 AC830010 */ sw $v1, 0x10($a0) +/* 3CD2A4 E00C68C4 30E300FF */ andi $v1, $a3, 0xff +/* 3CD2A8 E00C68C8 00021600 */ sll $v0, $v0, 0x18 +/* 3CD2AC E00C68CC 00052C00 */ sll $a1, $a1, 0x10 +/* 3CD2B0 E00C68D0 00451025 */ or $v0, $v0, $a1 +/* 3CD2B4 E00C68D4 00063200 */ sll $a2, $a2, 8 +/* 3CD2B8 E00C68D8 00461025 */ or $v0, $v0, $a2 +/* 3CD2BC E00C68DC 00431025 */ or $v0, $v0, $v1 +/* 3CD2C0 E00C68E0 AC82000C */ sw $v0, 0xc($a0) +/* 3CD2C4 E00C68E4 9122003B */ lbu $v0, 0x3b($t1) +/* 3CD2C8 E00C68E8 9125003F */ lbu $a1, 0x3f($t1) +/* 3CD2CC E00C68EC 91260043 */ lbu $a2, 0x43($t1) +/* 3CD2D0 E00C68F0 91270047 */ lbu $a3, 0x47($t1) +/* 3CD2D4 E00C68F4 3C03DE00 */ lui $v1, 0xde00 +/* 3CD2D8 E00C68F8 AC830018 */ sw $v1, 0x18($a0) +/* 3CD2DC E00C68FC 00021600 */ sll $v0, $v0, 0x18 +/* 3CD2E0 E00C6900 00052C00 */ sll $a1, $a1, 0x10 +/* 3CD2E4 E00C6904 00451025 */ or $v0, $v0, $a1 +/* 3CD2E8 E00C6908 00063200 */ sll $a2, $a2, 8 +/* 3CD2EC E00C690C 00461025 */ or $v0, $v0, $a2 +/* 3CD2F0 E00C6910 00471025 */ or $v0, $v0, $a3 +/* 3CD2F4 E00C6914 AC820014 */ sw $v0, 0x14($a0) +/* 3CD2F8 E00C6918 8FAA009C */ lw $t2, 0x9c($sp) +/* 3CD2FC E00C691C 000A1080 */ sll $v0, $t2, 2 +/* 3CD300 E00C6920 3C01E00C */ lui $at, %hi(D_E00C6C9C) +/* 3CD304 E00C6924 00220821 */ addu $at, $at, $v0 +/* 3CD308 E00C6928 8C226C9C */ lw $v0, %lo(D_E00C6C9C)($at) +/* 3CD30C E00C692C AC82001C */ sw $v0, 0x1c($a0) +/* 3CD310 E00C6930 8FAA0100 */ lw $t2, 0x100($sp) +/* 3CD314 E00C6934 0000B02D */ daddu $s6, $zero, $zero +/* 3CD318 E00C6938 8D420008 */ lw $v0, 8($t2) +/* 3CD31C E00C693C 24840020 */ addiu $a0, $a0, 0x20 +/* 3CD320 E00C6940 184000BE */ blez $v0, .LE00C6C3C +/* 3CD324 E00C6944 AD040000 */ sw $a0, ($t0) +/* 3CD328 E00C6948 27B50058 */ addiu $s5, $sp, 0x58 +/* 3CD32C E00C694C 3C1E800A */ lui $fp, %hi(D_8009A674) +/* 3CD330 E00C6950 27DEA674 */ addiu $fp, $fp, %lo(D_8009A674) +/* 3CD334 E00C6954 3C178007 */ lui $s7, %hi(D_800741F0) +/* 3CD338 E00C6958 26F741F0 */ addiu $s7, $s7, %lo(D_800741F0) +/* 3CD33C E00C695C 3C140001 */ lui $s4, 1 +/* 3CD340 E00C6960 36941630 */ ori $s4, $s4, 0x1630 +/* 3CD344 E00C6964 0100982D */ daddu $s3, $t0, $zero +/* 3CD348 E00C6968 3C0ADA38 */ lui $t2, 0xda38 +/* 3CD34C E00C696C 354A0001 */ ori $t2, $t2, 1 +/* 3CD350 E00C6970 4480B000 */ mtc1 $zero, $f22 +/* 3CD354 E00C6974 3C014300 */ lui $at, 0x4300 +/* 3CD358 E00C6978 4481D000 */ mtc1 $at, $f26 +/* 3CD35C E00C697C 3C014080 */ lui $at, 0x4080 +/* 3CD360 E00C6980 4481F000 */ mtc1 $at, $f30 +/* 3CD364 E00C6984 3C013F80 */ lui $at, 0x3f80 +/* 3CD368 E00C6988 4481E000 */ mtc1 $at, $f28 +/* 3CD36C E00C698C 25320074 */ addiu $s2, $t1, 0x74 +/* 3CD370 E00C6990 AFAA00A0 */ sw $t2, 0xa0($sp) +.LE00C6994: +/* 3CD374 E00C6994 4600B306 */ mov.s $f12, $f22 +/* 3CD378 E00C6998 C644FFD8 */ lwc1 $f4, -0x28($s2) +/* 3CD37C E00C699C C640FFE0 */ lwc1 $f0, -0x20($s2) +/* 3CD380 E00C69A0 8E46FFEC */ lw $a2, -0x14($s2) +/* 3CD384 E00C69A4 C642FFE4 */ lwc1 $f2, -0x1c($s2) +/* 3CD388 E00C69A8 46002100 */ add.s $f4, $f4, $f0 +/* 3CD38C E00C69AC C640FFDC */ lwc1 $f0, -0x24($s2) +/* 3CD390 E00C69B0 8E47FFF0 */ lw $a3, -0x10($s2) +/* 3CD394 E00C69B4 46020000 */ add.s $f0, $f0, $f2 +/* 3CD398 E00C69B8 4600B386 */ mov.s $f14, $f22 +/* 3CD39C E00C69BC E644FFD8 */ swc1 $f4, -0x28($s2) +/* 3CD3A0 E00C69C0 0C080148 */ jal func_E0200520 +/* 3CD3A4 E00C69C4 E640FFDC */ swc1 $f0, -0x24($s2) +/* 3CD3A8 E00C69C8 C6420000 */ lwc1 $f2, ($s2) +/* 3CD3AC E00C69CC 46000507 */ neg.s $f20, $f0 +/* 3CD3B0 E00C69D0 4602A500 */ add.s $f20, $f20, $f2 +/* 3CD3B4 E00C69D4 0C080140 */ jal func_E0200500 +/* 3CD3B8 E00C69D8 4600A306 */ mov.s $f12, $f20 +/* 3CD3BC E00C69DC 4600A306 */ mov.s $f12, $f20 +/* 3CD3C0 E00C69E0 0C080144 */ jal func_E0200510 +/* 3CD3C4 E00C69E4 E640FFE0 */ swc1 $f0, -0x20($s2) +/* 3CD3C8 E00C69E8 C642FFD8 */ lwc1 $f2, -0x28($s2) +/* 3CD3CC E00C69EC 4616103C */ c.lt.s $f2, $f22 +/* 3CD3D0 E00C69F0 00000000 */ nop +/* 3CD3D4 E00C69F4 45000003 */ bc1f .LE00C6A04 +/* 3CD3D8 E00C69F8 E640FFE4 */ swc1 $f0, -0x1c($s2) +/* 3CD3DC E00C69FC 461A1000 */ add.s $f0, $f2, $f26 +/* 3CD3E0 E00C6A00 E640FFD8 */ swc1 $f0, -0x28($s2) +.LE00C6A04: +/* 3CD3E4 E00C6A04 C640FFDC */ lwc1 $f0, -0x24($s2) +/* 3CD3E8 E00C6A08 4600D03C */ c.lt.s $f26, $f0 +/* 3CD3EC E00C6A0C 00000000 */ nop +/* 3CD3F0 E00C6A10 45000003 */ bc1f .LE00C6A20 +/* 3CD3F4 E00C6A14 00000000 */ nop +/* 3CD3F8 E00C6A18 461A0001 */ sub.s $f0, $f0, $f26 +/* 3CD3FC E00C6A1C E640FFDC */ swc1 $f0, -0x24($s2) +.LE00C6A20: +/* 3CD400 E00C6A20 C642FFD8 */ lwc1 $f2, -0x28($s2) +/* 3CD404 E00C6A24 461E1082 */ mul.s $f2, $f2, $f30 +/* 3CD408 E00C6A28 00000000 */ nop +/* 3CD40C E00C6A2C 27A40018 */ addiu $a0, $sp, 0x18 +/* 3CD410 E00C6A30 C640FFDC */ lwc1 $f0, -0x24($s2) +/* 3CD414 E00C6A34 461E0002 */ mul.s $f0, $f0, $f30 +/* 3CD418 E00C6A38 00000000 */ nop +/* 3CD41C E00C6A3C 8E45FF90 */ lw $a1, -0x70($s2) +/* 3CD420 E00C6A40 8E46FF94 */ lw $a2, -0x6c($s2) +/* 3CD424 E00C6A44 8E47FF98 */ lw $a3, -0x68($s2) +/* 3CD428 E00C6A48 4600118D */ trunc.w.s $f6, $f2 +/* 3CD42C E00C6A4C 44103000 */ mfc1 $s0, $f6 +/* 3CD430 E00C6A50 4600018D */ trunc.w.s $f6, $f0 +/* 3CD434 E00C6A54 44113000 */ mfc1 $s1, $f6 +/* 3CD438 E00C6A58 0C080108 */ jal func_E0200420 +/* 3CD43C E00C6A5C 26D60001 */ addiu $s6, $s6, 1 +/* 3CD440 E00C6A60 4405C000 */ mfc1 $a1, $f24 +/* 3CD444 E00C6A64 4406C000 */ mfc1 $a2, $f24 +/* 3CD448 E00C6A68 4407C000 */ mfc1 $a3, $f24 +/* 3CD44C E00C6A6C 0C080110 */ jal func_E0200440 +/* 3CD450 E00C6A70 02A0202D */ daddu $a0, $s5, $zero +/* 3CD454 E00C6A74 02A0202D */ daddu $a0, $s5, $zero +/* 3CD458 E00C6A78 27A50018 */ addiu $a1, $sp, 0x18 +/* 3CD45C E00C6A7C 0C080114 */ jal func_E0200450 +/* 3CD460 E00C6A80 00A0302D */ daddu $a2, $a1, $zero +/* 3CD464 E00C6A84 27A40018 */ addiu $a0, $sp, 0x18 +/* 3CD468 E00C6A88 96E50000 */ lhu $a1, ($s7) +/* 3CD46C E00C6A8C 8FC20000 */ lw $v0, ($fp) +/* 3CD470 E00C6A90 00052980 */ sll $a1, $a1, 6 +/* 3CD474 E00C6A94 00B42821 */ addu $a1, $a1, $s4 +/* 3CD478 E00C6A98 0C080118 */ jal func_E0200460 +/* 3CD47C E00C6A9C 00452821 */ addu $a1, $v0, $a1 +/* 3CD480 E00C6AA0 3C02DA38 */ lui $v0, 0xda38 +/* 3CD484 E00C6AA4 34420002 */ ori $v0, $v0, 2 +/* 3CD488 E00C6AA8 8E680000 */ lw $t0, ($s3) +/* 3CD48C E00C6AAC 96E50000 */ lhu $a1, ($s7) +/* 3CD490 E00C6AB0 0100302D */ daddu $a2, $t0, $zero +/* 3CD494 E00C6AB4 25080008 */ addiu $t0, $t0, 8 +/* 3CD498 E00C6AB8 AE680000 */ sw $t0, ($s3) +/* 3CD49C E00C6ABC ACC20000 */ sw $v0, ($a2) +/* 3CD4A0 E00C6AC0 30A2FFFF */ andi $v0, $a1, 0xffff +/* 3CD4A4 E00C6AC4 00021180 */ sll $v0, $v0, 6 +/* 3CD4A8 E00C6AC8 8FC30000 */ lw $v1, ($fp) +/* 3CD4AC E00C6ACC 00541021 */ addu $v0, $v0, $s4 +/* 3CD4B0 E00C6AD0 00621821 */ addu $v1, $v1, $v0 +/* 3CD4B4 E00C6AD4 ACC30004 */ sw $v1, 4($a2) +/* 3CD4B8 E00C6AD8 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 3CD4BC E00C6ADC 27A40018 */ addiu $a0, $sp, 0x18 +/* 3CD4C0 E00C6AE0 AD0A0000 */ sw $t2, ($t0) +/* 3CD4C4 E00C6AE4 8FAA0098 */ lw $t2, 0x98($sp) +/* 3CD4C8 E00C6AE8 4407E000 */ mfc1 $a3, $f28 +/* 3CD4CC E00C6AEC 8D420204 */ lw $v0, 0x204($t2) +/* 3CD4D0 E00C6AF0 24A50001 */ addiu $a1, $a1, 1 +/* 3CD4D4 E00C6AF4 A6E50000 */ sh $a1, ($s7) +/* 3CD4D8 E00C6AF8 AD020004 */ sw $v0, 4($t0) +/* 3CD4DC E00C6AFC 8E45FFFC */ lw $a1, -4($s2) +/* 3CD4E0 E00C6B00 8E46FFF8 */ lw $a2, -8($s2) +/* 3CD4E4 E00C6B04 25080008 */ addiu $t0, $t0, 8 +/* 3CD4E8 E00C6B08 0C080110 */ jal func_E0200440 +/* 3CD4EC E00C6B0C AE680000 */ sw $t0, ($s3) +/* 3CD4F0 E00C6B10 E7BC0010 */ swc1 $f28, 0x10($sp) +/* 3CD4F4 E00C6B14 8E450000 */ lw $a1, ($s2) +/* 3CD4F8 E00C6B18 4406B000 */ mfc1 $a2, $f22 +/* 3CD4FC E00C6B1C 4407B000 */ mfc1 $a3, $f22 +/* 3CD500 E00C6B20 0C080104 */ jal func_E0200410 +/* 3CD504 E00C6B24 02A0202D */ daddu $a0, $s5, $zero +/* 3CD508 E00C6B28 02A0202D */ daddu $a0, $s5, $zero +/* 3CD50C E00C6B2C 27A50018 */ addiu $a1, $sp, 0x18 +/* 3CD510 E00C6B30 0C080114 */ jal func_E0200450 +/* 3CD514 E00C6B34 00A0302D */ daddu $a2, $a1, $zero +/* 3CD518 E00C6B38 27A40018 */ addiu $a0, $sp, 0x18 +/* 3CD51C E00C6B3C 96E50000 */ lhu $a1, ($s7) +/* 3CD520 E00C6B40 8FC20000 */ lw $v0, ($fp) +/* 3CD524 E00C6B44 00052980 */ sll $a1, $a1, 6 +/* 3CD528 E00C6B48 00B42821 */ addu $a1, $a1, $s4 +/* 3CD52C E00C6B4C 0C080118 */ jal func_E0200460 +/* 3CD530 E00C6B50 00452821 */ addu $a1, $v0, $a1 +/* 3CD534 E00C6B54 3C06D838 */ lui $a2, 0xd838 +/* 3CD538 E00C6B58 8E650000 */ lw $a1, ($s3) +/* 3CD53C E00C6B5C 96E30000 */ lhu $v1, ($s7) +/* 3CD540 E00C6B60 00A0202D */ daddu $a0, $a1, $zero +/* 3CD544 E00C6B64 24A50008 */ addiu $a1, $a1, 8 +/* 3CD548 E00C6B68 24620001 */ addiu $v0, $v1, 1 +/* 3CD54C E00C6B6C 3063FFFF */ andi $v1, $v1, 0xffff +/* 3CD550 E00C6B70 AE650000 */ sw $a1, ($s3) +/* 3CD554 E00C6B74 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 3CD558 E00C6B78 00031980 */ sll $v1, $v1, 6 +/* 3CD55C E00C6B7C AC8A0000 */ sw $t2, ($a0) +/* 3CD560 E00C6B80 A6E20000 */ sh $v0, ($s7) +/* 3CD564 E00C6B84 8FC20000 */ lw $v0, ($fp) +/* 3CD568 E00C6B88 00741821 */ addu $v1, $v1, $s4 +/* 3CD56C E00C6B8C 00431021 */ addu $v0, $v0, $v1 +/* 3CD570 E00C6B90 AC820004 */ sw $v0, 4($a0) +/* 3CD574 E00C6B94 24A20008 */ addiu $v0, $a1, 8 +/* 3CD578 E00C6B98 32040FFF */ andi $a0, $s0, 0xfff +/* 3CD57C E00C6B9C 00042300 */ sll $a0, $a0, 0xc +/* 3CD580 E00C6BA0 AE620000 */ sw $v0, ($s3) +/* 3CD584 E00C6BA4 32220FFF */ andi $v0, $s1, 0xfff +/* 3CD588 E00C6BA8 3C03F200 */ lui $v1, 0xf200 +/* 3CD58C E00C6BAC 00431025 */ or $v0, $v0, $v1 +/* 3CD590 E00C6BB0 00822025 */ or $a0, $a0, $v0 +/* 3CD594 E00C6BB4 2610003F */ addiu $s0, $s0, 0x3f +/* 3CD598 E00C6BB8 00108080 */ sll $s0, $s0, 2 +/* 3CD59C E00C6BBC 32100FFF */ andi $s0, $s0, 0xfff +/* 3CD5A0 E00C6BC0 00108300 */ sll $s0, $s0, 0xc +/* 3CD5A4 E00C6BC4 2631000F */ addiu $s1, $s1, 0xf +/* 3CD5A8 E00C6BC8 00118880 */ sll $s1, $s1, 2 +/* 3CD5AC E00C6BCC 32310FFF */ andi $s1, $s1, 0xfff +/* 3CD5B0 E00C6BD0 3C020100 */ lui $v0, 0x100 +/* 3CD5B4 E00C6BD4 02228825 */ or $s1, $s1, $v0 +/* 3CD5B8 E00C6BD8 02118025 */ or $s0, $s0, $s1 +/* 3CD5BC E00C6BDC 3C02DE00 */ lui $v0, 0xde00 +/* 3CD5C0 E00C6BE0 ACA40000 */ sw $a0, ($a1) +/* 3CD5C4 E00C6BE4 ACB00004 */ sw $s0, 4($a1) +/* 3CD5C8 E00C6BE8 ACA20008 */ sw $v0, 8($a1) +/* 3CD5CC E00C6BEC 8FAA009C */ lw $t2, 0x9c($sp) +/* 3CD5D0 E00C6BF0 34C60002 */ ori $a2, $a2, 2 +/* 3CD5D4 E00C6BF4 000A1080 */ sll $v0, $t2, 2 +/* 3CD5D8 E00C6BF8 3C0AE00C */ lui $t2, %hi(D_E00C6C90) +/* 3CD5DC E00C6BFC 254A6C90 */ addiu $t2, $t2, %lo(D_E00C6C90) +/* 3CD5E0 E00C6C00 004A1021 */ addu $v0, $v0, $t2 +/* 3CD5E4 E00C6C04 8C430000 */ lw $v1, ($v0) +/* 3CD5E8 E00C6C08 24A20010 */ addiu $v0, $a1, 0x10 +/* 3CD5EC E00C6C0C AE620000 */ sw $v0, ($s3) +/* 3CD5F0 E00C6C10 24020040 */ addiu $v0, $zero, 0x40 +/* 3CD5F4 E00C6C14 ACA60010 */ sw $a2, 0x10($a1) +/* 3CD5F8 E00C6C18 ACA20014 */ sw $v0, 0x14($a1) +/* 3CD5FC E00C6C1C ACA3000C */ sw $v1, 0xc($a1) +/* 3CD600 E00C6C20 8FAA0100 */ lw $t2, 0x100($sp) +/* 3CD604 E00C6C24 2652007C */ addiu $s2, $s2, 0x7c +/* 3CD608 E00C6C28 8D420008 */ lw $v0, 8($t2) +/* 3CD60C E00C6C2C 24A50018 */ addiu $a1, $a1, 0x18 +/* 3CD610 E00C6C30 02C2102A */ slt $v0, $s6, $v0 +/* 3CD614 E00C6C34 1440FF57 */ bnez $v0, .LE00C6994 +/* 3CD618 E00C6C38 AE650000 */ sw $a1, ($s3) +.LE00C6C3C: +/* 3CD61C E00C6C3C 8FBF00CC */ lw $ra, 0xcc($sp) +/* 3CD620 E00C6C40 8FBE00C8 */ lw $fp, 0xc8($sp) +/* 3CD624 E00C6C44 8FB700C4 */ lw $s7, 0xc4($sp) +/* 3CD628 E00C6C48 8FB600C0 */ lw $s6, 0xc0($sp) +/* 3CD62C E00C6C4C 8FB500BC */ lw $s5, 0xbc($sp) +/* 3CD630 E00C6C50 8FB400B8 */ lw $s4, 0xb8($sp) +/* 3CD634 E00C6C54 8FB300B4 */ lw $s3, 0xb4($sp) +/* 3CD638 E00C6C58 8FB200B0 */ lw $s2, 0xb0($sp) +/* 3CD63C E00C6C5C 8FB100AC */ lw $s1, 0xac($sp) +/* 3CD640 E00C6C60 8FB000A8 */ lw $s0, 0xa8($sp) +/* 3CD644 E00C6C64 D7BE00F8 */ ldc1 $f30, 0xf8($sp) +/* 3CD648 E00C6C68 D7BC00F0 */ ldc1 $f28, 0xf0($sp) +/* 3CD64C E00C6C6C D7BA00E8 */ ldc1 $f26, 0xe8($sp) +/* 3CD650 E00C6C70 D7B800E0 */ ldc1 $f24, 0xe0($sp) +/* 3CD654 E00C6C74 D7B600D8 */ ldc1 $f22, 0xd8($sp) +/* 3CD658 E00C6C78 D7B400D0 */ ldc1 $f20, 0xd0($sp) +/* 3CD65C E00C6C7C 03E00008 */ jr $ra +/* 3CD660 E00C6C80 27BD0100 */ addiu $sp, $sp, 0x100 +/* 3CD664 E00C6C84 00000000 */ nop +/* 3CD668 E00C6C88 00000000 */ nop +/* 3CD66C E00C6C8C 00000000 */ nop diff --git a/asm/nonmatchings/code_3CF3A0/func_E00C8000.s b/asm/nonmatchings/code_3CF3A0/func_E00C8000.s new file mode 100644 index 0000000000..8932efa917 --- /dev/null +++ b/asm/nonmatchings/code_3CF3A0/func_E00C8000.s @@ -0,0 +1,144 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C8000 +/* 3CF3A0 E00C8000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 3CF3A4 E00C8004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3CF3A8 E00C8008 4485A000 */ mtc1 $a1, $f20 +/* 3CF3AC E00C800C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3CF3B0 E00C8010 4486B000 */ mtc1 $a2, $f22 +/* 3CF3B4 E00C8014 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3CF3B8 E00C8018 4487C000 */ mtc1 $a3, $f24 +/* 3CF3BC E00C801C F7BA0058 */ sdc1 $f26, 0x58($sp) +/* 3CF3C0 E00C8020 C7BA0080 */ lwc1 $f26, 0x80($sp) +/* 3CF3C4 E00C8024 F7BC0060 */ sdc1 $f28, 0x60($sp) +/* 3CF3C8 E00C8028 C7BC0084 */ lwc1 $f28, 0x84($sp) +/* 3CF3CC E00C802C AFB30034 */ sw $s3, 0x34($sp) +/* 3CF3D0 E00C8030 0080982D */ daddu $s3, $a0, $zero +/* 3CF3D4 E00C8034 F7BE0068 */ sdc1 $f30, 0x68($sp) +/* 3CF3D8 E00C8038 C7BE0088 */ lwc1 $f30, 0x88($sp) +/* 3CF3DC E00C803C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3CF3E0 E00C8040 AFB1002C */ sw $s1, 0x2c($sp) +/* 3CF3E4 E00C8044 8FB10090 */ lw $s1, 0x90($sp) +/* 3CF3E8 E00C8048 3C02E00D */ lui $v0, %hi(D_E00C8218) +/* 3CF3EC E00C804C 24428218 */ addiu $v0, $v0, %lo(D_E00C8218) +/* 3CF3F0 E00C8050 AFA20018 */ sw $v0, 0x18($sp) +/* 3CF3F4 E00C8054 3C02E00D */ lui $v0, %hi(D_E00C8220) +/* 3CF3F8 E00C8058 24428220 */ addiu $v0, $v0, %lo(D_E00C8220) +/* 3CF3FC E00C805C AFA2001C */ sw $v0, 0x1c($sp) +/* 3CF400 E00C8060 3C02E00D */ lui $v0, %hi(D_E00C8404) +/* 3CF404 E00C8064 24428404 */ addiu $v0, $v0, %lo(D_E00C8404) +/* 3CF408 E00C8068 AFA20020 */ sw $v0, 0x20($sp) +/* 3CF40C E00C806C 24020064 */ addiu $v0, $zero, 0x64 +/* 3CF410 E00C8070 AFBF0038 */ sw $ra, 0x38($sp) +/* 3CF414 E00C8074 AFB20030 */ sw $s2, 0x30($sp) +/* 3CF418 E00C8078 AFB00028 */ sw $s0, 0x28($sp) +/* 3CF41C E00C807C AFA00010 */ sw $zero, 0x10($sp) +/* 3CF420 E00C8080 AFA00024 */ sw $zero, 0x24($sp) +/* 3CF424 E00C8084 0C080124 */ jal func_E0200490 +/* 3CF428 E00C8088 AFA20014 */ sw $v0, 0x14($sp) +/* 3CF42C E00C808C 2404006C */ addiu $a0, $zero, 0x6c +/* 3CF430 E00C8090 24030001 */ addiu $v1, $zero, 1 +/* 3CF434 E00C8094 0040902D */ daddu $s2, $v0, $zero +/* 3CF438 E00C8098 0C08012C */ jal func_E02004B0 +/* 3CF43C E00C809C AE430008 */ sw $v1, 8($s2) +/* 3CF440 E00C80A0 0040802D */ daddu $s0, $v0, $zero +/* 3CF444 E00C80A4 16000003 */ bnez $s0, .LE00C80B4 +/* 3CF448 E00C80A8 AE42000C */ sw $v0, 0xc($s2) +.LE00C80AC: +/* 3CF44C E00C80AC 0803202B */ j .LE00C80AC +/* 3CF450 E00C80B0 00000000 */ nop +.LE00C80B4: +/* 3CF454 E00C80B4 AE130000 */ sw $s3, ($s0) +/* 3CF458 E00C80B8 1E200003 */ bgtz $s1, .LE00C80C8 +/* 3CF45C E00C80BC AE00002C */ sw $zero, 0x2c($s0) +/* 3CF460 E00C80C0 08032033 */ j .LE00C80CC +/* 3CF464 E00C80C4 240203E8 */ addiu $v0, $zero, 0x3e8 +.LE00C80C8: +/* 3CF468 E00C80C8 2622003C */ addiu $v0, $s1, 0x3c +.LE00C80CC: +/* 3CF46C E00C80CC AE020028 */ sw $v0, 0x28($s0) +/* 3CF470 E00C80D0 240200FF */ addiu $v0, $zero, 0xff +/* 3CF474 E00C80D4 44913000 */ mtc1 $s1, $f6 +/* 3CF478 E00C80D8 00000000 */ nop +/* 3CF47C E00C80DC 468031A1 */ cvt.d.w $f6, $f6 +/* 3CF480 E00C80E0 4616E201 */ sub.s $f8, $f28, $f22 +/* 3CF484 E00C80E4 44912000 */ mtc1 $s1, $f4 +/* 3CF488 E00C80E8 00000000 */ nop +/* 3CF48C E00C80EC 46802120 */ cvt.s.w $f4, $f4 +/* 3CF490 E00C80F0 3C01E00D */ lui $at, %hi(D_E00C8730) +/* 3CF494 E00C80F4 D4208730 */ ldc1 $f0, %lo(D_E00C8730)($at) +/* 3CF498 E00C80F8 4618F081 */ sub.s $f2, $f30, $f24 +/* 3CF49C E00C80FC AE110068 */ sw $s1, 0x68($s0) +/* 3CF4A0 E00C8100 AE02003C */ sw $v0, 0x3c($s0) +/* 3CF4A4 E00C8104 46203182 */ mul.d $f6, $f6, $f0 +/* 3CF4A8 E00C8108 00000000 */ nop +/* 3CF4AC E00C810C E6140010 */ swc1 $f20, 0x10($s0) +/* 3CF4B0 E00C8110 E6160014 */ swc1 $f22, 0x14($s0) +/* 3CF4B4 E00C8114 E6180018 */ swc1 $f24, 0x18($s0) +/* 3CF4B8 E00C8118 E61A001C */ swc1 $f26, 0x1c($s0) +/* 3CF4BC E00C811C E61C0020 */ swc1 $f28, 0x20($s0) +/* 3CF4C0 E00C8120 E61E0024 */ swc1 $f30, 0x24($s0) +/* 3CF4C4 E00C8124 E6140004 */ swc1 $f20, 4($s0) +/* 3CF4C8 E00C8128 4614D001 */ sub.s $f0, $f26, $f20 +/* 3CF4CC E00C812C 46041083 */ div.s $f2, $f2, $f4 +/* 3CF4D0 E00C8130 E602004C */ swc1 $f2, 0x4c($s0) +/* 3CF4D4 E00C8134 44801000 */ mtc1 $zero, $f2 +/* 3CF4D8 E00C8138 46040003 */ div.s $f0, $f0, $f4 +/* 3CF4DC E00C813C E6000044 */ swc1 $f0, 0x44($s0) +/* 3CF4E0 E00C8140 46044003 */ div.s $f0, $f8, $f4 +/* 3CF4E4 E00C8144 46000021 */ cvt.d.s $f0, $f0 +/* 3CF4E8 E00C8148 46260001 */ sub.d $f0, $f0, $f6 +/* 3CF4EC E00C814C E6160008 */ swc1 $f22, 8($s0) +/* 3CF4F0 E00C8150 E618000C */ swc1 $f24, 0xc($s0) +/* 3CF4F4 E00C8154 4602403C */ c.lt.s $f8, $f2 +/* 3CF4F8 E00C8158 46200020 */ cvt.s.d $f0, $f0 +/* 3CF4FC E00C815C 45000004 */ bc1f .LE00C8170 +/* 3CF500 E00C8160 E6000048 */ swc1 $f0, 0x48($s0) +/* 3CF504 E00C8164 24020001 */ addiu $v0, $zero, 1 +/* 3CF508 E00C8168 0803205D */ j .LE00C8174 +/* 3CF50C E00C816C AE020064 */ sw $v0, 0x64($s0) +.LE00C8170: +/* 3CF510 E00C8170 AE000064 */ sw $zero, 0x64($s0) +.LE00C8174: +/* 3CF514 E00C8174 24040168 */ addiu $a0, $zero, 0x168 +/* 3CF518 E00C8178 C7A0008C */ lwc1 $f0, 0x8c($sp) +/* 3CF51C E00C817C 24020046 */ addiu $v0, $zero, 0x46 +/* 3CF520 E00C8180 AE020030 */ sw $v0, 0x30($s0) +/* 3CF524 E00C8184 240200B4 */ addiu $v0, $zero, 0xb4 +/* 3CF528 E00C8188 AE020034 */ sw $v0, 0x34($s0) +/* 3CF52C E00C818C 24020078 */ addiu $v0, $zero, 0x78 +/* 3CF530 E00C8190 AE020038 */ sw $v0, 0x38($s0) +/* 3CF534 E00C8194 0C080138 */ jal func_E02004E0 +/* 3CF538 E00C8198 E6000040 */ swc1 $f0, 0x40($s0) +/* 3CF53C E00C819C 2404000A */ addiu $a0, $zero, 0xa +/* 3CF540 E00C81A0 44820000 */ mtc1 $v0, $f0 +/* 3CF544 E00C81A4 00000000 */ nop +/* 3CF548 E00C81A8 46800020 */ cvt.s.w $f0, $f0 +/* 3CF54C E00C81AC 0C080138 */ jal func_E02004E0 +/* 3CF550 E00C81B0 E6000050 */ swc1 $f0, 0x50($s0) +/* 3CF554 E00C81B4 24430005 */ addiu $v1, $v0, 5 +/* 3CF558 E00C81B8 0240102D */ daddu $v0, $s2, $zero +/* 3CF55C E00C81BC 44830000 */ mtc1 $v1, $f0 +/* 3CF560 E00C81C0 00000000 */ nop +/* 3CF564 E00C81C4 46800020 */ cvt.s.w $f0, $f0 +/* 3CF568 E00C81C8 E6000054 */ swc1 $f0, 0x54($s0) +/* 3CF56C E00C81CC 3C013F80 */ lui $at, 0x3f80 +/* 3CF570 E00C81D0 44810000 */ mtc1 $at, $f0 +/* 3CF574 E00C81D4 2403FFFF */ addiu $v1, $zero, -1 +/* 3CF578 E00C81D8 AE030060 */ sw $v1, 0x60($s0) +/* 3CF57C E00C81DC E6000058 */ swc1 $f0, 0x58($s0) +/* 3CF580 E00C81E0 E600005C */ swc1 $f0, 0x5c($s0) +/* 3CF584 E00C81E4 8FBF0038 */ lw $ra, 0x38($sp) +/* 3CF588 E00C81E8 8FB30034 */ lw $s3, 0x34($sp) +/* 3CF58C E00C81EC 8FB20030 */ lw $s2, 0x30($sp) +/* 3CF590 E00C81F0 8FB1002C */ lw $s1, 0x2c($sp) +/* 3CF594 E00C81F4 8FB00028 */ lw $s0, 0x28($sp) +/* 3CF598 E00C81F8 D7BE0068 */ ldc1 $f30, 0x68($sp) +/* 3CF59C E00C81FC D7BC0060 */ ldc1 $f28, 0x60($sp) +/* 3CF5A0 E00C8200 D7BA0058 */ ldc1 $f26, 0x58($sp) +/* 3CF5A4 E00C8204 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3CF5A8 E00C8208 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3CF5AC E00C820C D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3CF5B0 E00C8210 03E00008 */ jr $ra +/* 3CF5B4 E00C8214 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_3CF3A0/func_E00C8218.s b/asm/nonmatchings/code_3CF3A0/func_E00C8218.s new file mode 100644 index 0000000000..b29647ca1e --- /dev/null +++ b/asm/nonmatchings/code_3CF3A0/func_E00C8218.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C8218 +/* 3CF5B8 E00C8218 03E00008 */ jr $ra +/* 3CF5BC E00C821C 00000000 */ nop diff --git a/asm/nonmatchings/code_3CF3A0/func_E00C8220.s b/asm/nonmatchings/code_3CF3A0/func_E00C8220.s new file mode 100644 index 0000000000..fe17e65e8e --- /dev/null +++ b/asm/nonmatchings/code_3CF3A0/func_E00C8220.s @@ -0,0 +1,132 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C8220 +/* 3CF5C0 E00C8220 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3CF5C4 E00C8224 AFBF0010 */ sw $ra, 0x10($sp) +/* 3CF5C8 E00C8228 8C830000 */ lw $v1, ($a0) +/* 3CF5CC E00C822C 8C85000C */ lw $a1, 0xc($a0) +/* 3CF5D0 E00C8230 30620010 */ andi $v0, $v1, 0x10 +/* 3CF5D4 E00C8234 10400005 */ beqz $v0, .LE00C824C +/* 3CF5D8 E00C8238 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3CF5DC E00C823C 00621024 */ and $v0, $v1, $v0 +/* 3CF5E0 E00C8240 AC820000 */ sw $v0, ($a0) +/* 3CF5E4 E00C8244 24020010 */ addiu $v0, $zero, 0x10 +/* 3CF5E8 E00C8248 ACA20028 */ sw $v0, 0x28($a1) +.LE00C824C: +/* 3CF5EC E00C824C 8CA30028 */ lw $v1, 0x28($a1) +/* 3CF5F0 E00C8250 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3CF5F4 E00C8254 10400002 */ beqz $v0, .LE00C8260 +/* 3CF5F8 E00C8258 2462FFFF */ addiu $v0, $v1, -1 +/* 3CF5FC E00C825C ACA20028 */ sw $v0, 0x28($a1) +.LE00C8260: +/* 3CF600 E00C8260 8CA2002C */ lw $v0, 0x2c($a1) +/* 3CF604 E00C8264 8CA30028 */ lw $v1, 0x28($a1) +/* 3CF608 E00C8268 24420001 */ addiu $v0, $v0, 1 +/* 3CF60C E00C826C 04610005 */ bgez $v1, .LE00C8284 +/* 3CF610 E00C8270 ACA2002C */ sw $v0, 0x2c($a1) +/* 3CF614 E00C8274 0C080128 */ jal func_E02004A0 +/* 3CF618 E00C8278 00000000 */ nop +/* 3CF61C E00C827C 080320FE */ j .LE00C83F8 +/* 3CF620 E00C8280 00000000 */ nop +.LE00C8284: +/* 3CF624 E00C8284 8CA30060 */ lw $v1, 0x60($a1) +/* 3CF628 E00C8288 0040202D */ daddu $a0, $v0, $zero +/* 3CF62C E00C828C 2C620007 */ sltiu $v0, $v1, 7 +/* 3CF630 E00C8290 1040001F */ beqz $v0, .LE00C8310 +/* 3CF634 E00C8294 00000000 */ nop +/* 3CF638 E00C8298 3C02E00D */ lui $v0, %hi(D_E00C8718) +/* 3CF63C E00C829C 00431021 */ addu $v0, $v0, $v1 +/* 3CF640 E00C82A0 90428718 */ lbu $v0, %lo(D_E00C8718)($v0) +/* 3CF644 E00C82A4 3C013C23 */ lui $at, 0x3c23 +/* 3CF648 E00C82A8 3421D70A */ ori $at, $at, 0xd70a +/* 3CF64C E00C82AC 44811000 */ mtc1 $at, $f2 +/* 3CF650 E00C82B0 44820000 */ mtc1 $v0, $f0 +/* 3CF654 E00C82B4 00000000 */ nop +/* 3CF658 E00C82B8 46800020 */ cvt.s.w $f0, $f0 +/* 3CF65C E00C82BC 46020002 */ mul.s $f0, $f0, $f2 +/* 3CF660 E00C82C0 00000000 */ nop +/* 3CF664 E00C82C4 E4A00058 */ swc1 $f0, 0x58($a1) +/* 3CF668 E00C82C8 3C02E00D */ lui $v0, %hi(D_E00C8720) +/* 3CF66C E00C82CC 00431021 */ addu $v0, $v0, $v1 +/* 3CF670 E00C82D0 90428720 */ lbu $v0, %lo(D_E00C8720)($v0) +/* 3CF674 E00C82D4 44822000 */ mtc1 $v0, $f4 +/* 3CF678 E00C82D8 00000000 */ nop +/* 3CF67C E00C82DC 46802120 */ cvt.s.w $f4, $f4 +/* 3CF680 E00C82E0 46022102 */ mul.s $f4, $f4, $f2 +/* 3CF684 E00C82E4 00000000 */ nop +/* 3CF688 E00C82E8 C4A00050 */ lwc1 $f0, 0x50($a1) +/* 3CF68C E00C82EC 3C014220 */ lui $at, 0x4220 +/* 3CF690 E00C82F0 44811000 */ mtc1 $at, $f2 +/* 3CF694 E00C82F4 0060102D */ daddu $v0, $v1, $zero +/* 3CF698 E00C82F8 46020001 */ sub.s $f0, $f0, $f2 +/* 3CF69C E00C82FC 24420001 */ addiu $v0, $v0, 1 +/* 3CF6A0 E00C8300 ACA20060 */ sw $v0, 0x60($a1) +/* 3CF6A4 E00C8304 E4A00050 */ swc1 $f0, 0x50($a1) +/* 3CF6A8 E00C8308 080320D9 */ j .LE00C8364 +/* 3CF6AC E00C830C E4A4005C */ swc1 $f4, 0x5c($a1) +.LE00C8310: +/* 3CF6B0 E00C8310 C4A20048 */ lwc1 $f2, 0x48($a1) +/* 3CF6B4 E00C8314 3C01BE4C */ lui $at, 0xbe4c +/* 3CF6B8 E00C8318 3421CCCD */ ori $at, $at, 0xcccd +/* 3CF6BC E00C831C 44810000 */ mtc1 $at, $f0 +/* 3CF6C0 E00C8320 C4A80004 */ lwc1 $f8, 4($a1) +/* 3CF6C4 E00C8324 46001080 */ add.s $f2, $f2, $f0 +/* 3CF6C8 E00C8328 C4A00044 */ lwc1 $f0, 0x44($a1) +/* 3CF6CC E00C832C C4A6000C */ lwc1 $f6, 0xc($a1) +/* 3CF6D0 E00C8330 46004200 */ add.s $f8, $f8, $f0 +/* 3CF6D4 E00C8334 C4A0004C */ lwc1 $f0, 0x4c($a1) +/* 3CF6D8 E00C8338 C4A40050 */ lwc1 $f4, 0x50($a1) +/* 3CF6DC E00C833C 46003180 */ add.s $f6, $f6, $f0 +/* 3CF6E0 E00C8340 C4A00054 */ lwc1 $f0, 0x54($a1) +/* 3CF6E4 E00C8344 46002100 */ add.s $f4, $f4, $f0 +/* 3CF6E8 E00C8348 C4A00008 */ lwc1 $f0, 8($a1) +/* 3CF6EC E00C834C E4A20048 */ swc1 $f2, 0x48($a1) +/* 3CF6F0 E00C8350 E4A80004 */ swc1 $f8, 4($a1) +/* 3CF6F4 E00C8354 46020000 */ add.s $f0, $f0, $f2 +/* 3CF6F8 E00C8358 E4A6000C */ swc1 $f6, 0xc($a1) +/* 3CF6FC E00C835C E4A40050 */ swc1 $f4, 0x50($a1) +/* 3CF700 E00C8360 E4A00008 */ swc1 $f0, 8($a1) +.LE00C8364: +/* 3CF704 E00C8364 8CA30068 */ lw $v1, 0x68($a1) +/* 3CF708 E00C8368 2482FFFF */ addiu $v0, $a0, -1 +/* 3CF70C E00C836C 1443000A */ bne $v0, $v1, .LE00C8398 +/* 3CF710 E00C8370 00000000 */ nop +/* 3CF714 E00C8374 C4A00048 */ lwc1 $f0, 0x48($a1) +/* 3CF718 E00C8378 C4A20044 */ lwc1 $f2, 0x44($a1) +/* 3CF71C E00C837C 3C01C080 */ lui $at, 0xc080 +/* 3CF720 E00C8380 44812000 */ mtc1 $at, $f4 +/* 3CF724 E00C8384 ACA00060 */ sw $zero, 0x60($a1) +/* 3CF728 E00C8388 46000007 */ neg.s $f0, $f0 +/* 3CF72C E00C838C E4A00048 */ swc1 $f0, 0x48($a1) +/* 3CF730 E00C8390 080320FE */ j .LE00C83F8 +/* 3CF734 E00C8394 E4A40054 */ swc1 $f4, 0x54($a1) +.LE00C8398: +/* 3CF738 E00C8398 C4A40048 */ lwc1 $f4, 0x48($a1) +/* 3CF73C E00C839C 44800000 */ mtc1 $zero, $f0 +/* 3CF740 E00C83A0 00000000 */ nop +/* 3CF744 E00C83A4 4600203C */ c.lt.s $f4, $f0 +/* 3CF748 E00C83A8 00000000 */ nop +/* 3CF74C E00C83AC 45000012 */ bc1f .LE00C83F8 +/* 3CF750 E00C83B0 00000000 */ nop +/* 3CF754 E00C83B4 C4A00008 */ lwc1 $f0, 8($a1) +/* 3CF758 E00C83B8 3C01E00D */ lui $at, %hi(D_E00C8738) +/* 3CF75C E00C83BC D4228738 */ ldc1 $f2, %lo(D_E00C8738)($at) +/* 3CF760 E00C83C0 46000021 */ cvt.d.s $f0, $f0 +/* 3CF764 E00C83C4 4622003C */ c.lt.d $f0, $f2 +/* 3CF768 E00C83C8 00000000 */ nop +/* 3CF76C E00C83CC 4500000A */ bc1f .LE00C83F8 +/* 3CF770 E00C83D0 00000000 */ nop +/* 3CF774 E00C83D4 3C014164 */ lui $at, 0x4164 +/* 3CF778 E00C83D8 34219249 */ ori $at, $at, 0x9249 +/* 3CF77C E00C83DC 44810000 */ mtc1 $at, $f0 +/* 3CF780 E00C83E0 3C01C1A0 */ lui $at, 0xc1a0 +/* 3CF784 E00C83E4 44811000 */ mtc1 $at, $f2 +/* 3CF788 E00C83E8 46042101 */ sub.s $f4, $f4, $f4 +/* 3CF78C E00C83EC E4A00008 */ swc1 $f0, 8($a1) +/* 3CF790 E00C83F0 E4A20054 */ swc1 $f2, 0x54($a1) +/* 3CF794 E00C83F4 E4A40048 */ swc1 $f4, 0x48($a1) +.LE00C83F8: +/* 3CF798 E00C83F8 8FBF0010 */ lw $ra, 0x10($sp) +/* 3CF79C E00C83FC 03E00008 */ jr $ra +/* 3CF7A0 E00C8400 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3CF3A0/func_E00C8404.s b/asm/nonmatchings/code_3CF3A0/func_E00C8404.s new file mode 100644 index 0000000000..dde426e19a --- /dev/null +++ b/asm/nonmatchings/code_3CF3A0/func_E00C8404.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C8404 +/* 3CF7A4 E00C8404 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3CF7A8 E00C8408 3C02E00D */ lui $v0, %hi(D_E00C8454) +/* 3CF7AC E00C840C 24428454 */ addiu $v0, $v0, %lo(D_E00C8454) +/* 3CF7B0 E00C8410 AFA2001C */ sw $v0, 0x1c($sp) +/* 3CF7B4 E00C8414 2402000A */ addiu $v0, $zero, 0xa +/* 3CF7B8 E00C8418 AFA20014 */ sw $v0, 0x14($sp) +/* 3CF7BC E00C841C 2402002D */ addiu $v0, $zero, 0x2d +/* 3CF7C0 E00C8420 AFA40018 */ sw $a0, 0x18($sp) +/* 3CF7C4 E00C8424 27A40010 */ addiu $a0, $sp, 0x10 +/* 3CF7C8 E00C8428 AFBF0020 */ sw $ra, 0x20($sp) +/* 3CF7CC E00C842C 0C080120 */ jal func_E0200480 +/* 3CF7D0 E00C8430 AFA20010 */ sw $v0, 0x10($sp) +/* 3CF7D4 E00C8434 8C430000 */ lw $v1, ($v0) +/* 3CF7D8 E00C8438 34630002 */ ori $v1, $v1, 2 +/* 3CF7DC E00C843C AC430000 */ sw $v1, ($v0) +/* 3CF7E0 E00C8440 8FBF0020 */ lw $ra, 0x20($sp) +/* 3CF7E4 E00C8444 03E00008 */ jr $ra +/* 3CF7E8 E00C8448 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3CF3A0/func_E00C844C.s b/asm/nonmatchings/code_3CF3A0/func_E00C844C.s new file mode 100644 index 0000000000..321a53cb46 --- /dev/null +++ b/asm/nonmatchings/code_3CF3A0/func_E00C844C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C844C +/* 3CF7EC E00C844C 03E00008 */ jr $ra +/* 3CF7F0 E00C8450 00000000 */ nop diff --git a/asm/nonmatchings/code_3CF3A0/func_E00C8454.s b/asm/nonmatchings/code_3CF3A0/func_E00C8454.s new file mode 100644 index 0000000000..3da24428ba --- /dev/null +++ b/asm/nonmatchings/code_3CF3A0/func_E00C8454.s @@ -0,0 +1,179 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00C8454 +/* 3CF7F4 E00C8454 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 3CF7F8 E00C8458 0080302D */ daddu $a2, $a0, $zero +/* 3CF7FC E00C845C 3C07DB06 */ lui $a3, 0xdb06 +/* 3CF800 E00C8460 34E70024 */ ori $a3, $a3, 0x24 +/* 3CF804 E00C8464 AFB300A4 */ sw $s3, 0xa4($sp) +/* 3CF808 E00C8468 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3CF80C E00C846C 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3CF810 E00C8470 27A40018 */ addiu $a0, $sp, 0x18 +/* 3CF814 E00C8474 AFBF00B8 */ sw $ra, 0xb8($sp) +/* 3CF818 E00C8478 AFB700B4 */ sw $s7, 0xb4($sp) +/* 3CF81C E00C847C AFB600B0 */ sw $s6, 0xb0($sp) +/* 3CF820 E00C8480 AFB500AC */ sw $s5, 0xac($sp) +/* 3CF824 E00C8484 AFB400A8 */ sw $s4, 0xa8($sp) +/* 3CF828 E00C8488 AFB200A0 */ sw $s2, 0xa0($sp) +/* 3CF82C E00C848C AFB1009C */ sw $s1, 0x9c($sp) +/* 3CF830 E00C8490 AFB00098 */ sw $s0, 0x98($sp) +/* 3CF834 E00C8494 F7B400C0 */ sdc1 $f20, 0xc0($sp) +/* 3CF838 E00C8498 8E650000 */ lw $a1, ($s3) +/* 3CF83C E00C849C 8CD2000C */ lw $s2, 0xc($a2) +/* 3CF840 E00C84A0 3C01E00D */ lui $at, %hi(D_E00C8740) +/* 3CF844 E00C84A4 D4208740 */ ldc1 $f0, %lo(D_E00C8740)($at) +/* 3CF848 E00C84A8 00A0182D */ daddu $v1, $a1, $zero +/* 3CF84C E00C84AC 24A50008 */ addiu $a1, $a1, 8 +/* 3CF850 E00C84B0 AE650000 */ sw $a1, ($s3) +/* 3CF854 E00C84B4 8E55003C */ lw $s5, 0x3c($s2) +/* 3CF858 E00C84B8 8E560000 */ lw $s6, ($s2) +/* 3CF85C E00C84BC C6540040 */ lwc1 $f20, 0x40($s2) +/* 3CF860 E00C84C0 3C02E700 */ lui $v0, 0xe700 +/* 3CF864 E00C84C4 AC620000 */ sw $v0, ($v1) +/* 3CF868 E00C84C8 AC600004 */ sw $zero, 4($v1) +/* 3CF86C E00C84CC ACA70000 */ sw $a3, ($a1) +/* 3CF870 E00C84D0 8CC30010 */ lw $v1, 0x10($a2) +/* 3CF874 E00C84D4 24A20008 */ addiu $v0, $a1, 8 +/* 3CF878 E00C84D8 AE620000 */ sw $v0, ($s3) +/* 3CF87C E00C84DC 8C62001C */ lw $v0, 0x1c($v1) +/* 3CF880 E00C84E0 3C038000 */ lui $v1, 0x8000 +/* 3CF884 E00C84E4 4600A521 */ cvt.d.s $f20, $f20 +/* 3CF888 E00C84E8 4620A502 */ mul.d $f20, $f20, $f0 +/* 3CF88C E00C84EC 00000000 */ nop +/* 3CF890 E00C84F0 00431021 */ addu $v0, $v0, $v1 +/* 3CF894 E00C84F4 3C03800B */ lui $v1, %hi(gCameras) +/* 3CF898 E00C84F8 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3CF89C E00C84FC ACA20004 */ sw $v0, 4($a1) +/* 3CF8A0 E00C8500 8E450004 */ lw $a1, 4($s2) +/* 3CF8A4 E00C8504 8E460008 */ lw $a2, 8($s2) +/* 3CF8A8 E00C8508 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3CF8AC E00C850C 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3CF8B0 E00C8510 8E47000C */ lw $a3, 0xc($s2) +/* 3CF8B4 E00C8514 00028880 */ sll $s1, $v0, 2 +/* 3CF8B8 E00C8518 02228821 */ addu $s1, $s1, $v0 +/* 3CF8BC E00C851C 00118880 */ sll $s1, $s1, 2 +/* 3CF8C0 E00C8520 02228823 */ subu $s1, $s1, $v0 +/* 3CF8C4 E00C8524 001110C0 */ sll $v0, $s1, 3 +/* 3CF8C8 E00C8528 02228821 */ addu $s1, $s1, $v0 +/* 3CF8CC E00C852C 001188C0 */ sll $s1, $s1, 3 +/* 3CF8D0 E00C8530 02238821 */ addu $s1, $s1, $v1 +/* 3CF8D4 E00C8534 0C080108 */ jal func_E0200420 +/* 3CF8D8 E00C8538 4620A520 */ cvt.s.d $f20, $f20 +/* 3CF8DC E00C853C C6400058 */ lwc1 $f0, 0x58($s2) +/* 3CF8E0 E00C8540 4600A002 */ mul.s $f0, $f20, $f0 +/* 3CF8E4 E00C8544 00000000 */ nop +/* 3CF8E8 E00C8548 44050000 */ mfc1 $a1, $f0 +/* 3CF8EC E00C854C C640005C */ lwc1 $f0, 0x5c($s2) +/* 3CF8F0 E00C8550 4600A002 */ mul.s $f0, $f20, $f0 +/* 3CF8F4 E00C8554 00000000 */ nop +/* 3CF8F8 E00C8558 3C170001 */ lui $s7, 1 +/* 3CF8FC E00C855C 27B00058 */ addiu $s0, $sp, 0x58 +/* 3CF900 E00C8560 4407A000 */ mfc1 $a3, $f20 +/* 3CF904 E00C8564 44060000 */ mfc1 $a2, $f0 +/* 3CF908 E00C8568 0C080110 */ jal func_E0200440 +/* 3CF90C E00C856C 0200202D */ daddu $a0, $s0, $zero +/* 3CF910 E00C8570 0200202D */ daddu $a0, $s0, $zero +/* 3CF914 E00C8574 27A50018 */ addiu $a1, $sp, 0x18 +/* 3CF918 E00C8578 0C080114 */ jal func_E0200450 +/* 3CF91C E00C857C 00A0302D */ daddu $a2, $a1, $zero +/* 3CF920 E00C8580 3C013F80 */ lui $at, 0x3f80 +/* 3CF924 E00C8584 44810000 */ mtc1 $at, $f0 +/* 3CF928 E00C8588 36F71630 */ ori $s7, $s7, 0x1630 +/* 3CF92C E00C858C E7A00010 */ swc1 $f0, 0x10($sp) +/* 3CF930 E00C8590 44800000 */ mtc1 $zero, $f0 +/* 3CF934 E00C8594 0200202D */ daddu $a0, $s0, $zero +/* 3CF938 E00C8598 44060000 */ mfc1 $a2, $f0 +/* 3CF93C E00C859C 8E450050 */ lw $a1, 0x50($s2) +/* 3CF940 E00C85A0 0C080104 */ jal func_E0200410 +/* 3CF944 E00C85A4 00C0382D */ daddu $a3, $a2, $zero +/* 3CF948 E00C85A8 0200202D */ daddu $a0, $s0, $zero +/* 3CF94C E00C85AC 27A50018 */ addiu $a1, $sp, 0x18 +/* 3CF950 E00C85B0 0C080114 */ jal func_E0200450 +/* 3CF954 E00C85B4 00A0302D */ daddu $a2, $a1, $zero +/* 3CF958 E00C85B8 27A40018 */ addiu $a0, $sp, 0x18 +/* 3CF95C E00C85BC 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3CF960 E00C85C0 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3CF964 E00C85C4 3C14800A */ lui $s4, %hi(D_8009A674) +/* 3CF968 E00C85C8 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 3CF96C E00C85CC 96050000 */ lhu $a1, ($s0) +/* 3CF970 E00C85D0 8E820000 */ lw $v0, ($s4) +/* 3CF974 E00C85D4 00052980 */ sll $a1, $a1, 6 +/* 3CF978 E00C85D8 00B72821 */ addu $a1, $a1, $s7 +/* 3CF97C E00C85DC 0C080118 */ jal func_E0200460 +/* 3CF980 E00C85E0 00452821 */ addu $a1, $v0, $a1 +/* 3CF984 E00C85E4 3C03DA38 */ lui $v1, 0xda38 +/* 3CF988 E00C85E8 34630002 */ ori $v1, $v1, 2 +/* 3CF98C E00C85EC 3C06DA38 */ lui $a2, 0xda38 +/* 3CF990 E00C85F0 34C60001 */ ori $a2, $a2, 1 +/* 3CF994 E00C85F4 3C08D838 */ lui $t0, 0xd838 +/* 3CF998 E00C85F8 35080002 */ ori $t0, $t0, 2 +/* 3CF99C E00C85FC 3C07DE00 */ lui $a3, 0xde00 +/* 3CF9A0 E00C8600 32B500FF */ andi $s5, $s5, 0xff +/* 3CF9A4 E00C8604 0016B080 */ sll $s6, $s6, 2 +/* 3CF9A8 E00C8608 8E640000 */ lw $a0, ($s3) +/* 3CF9AC E00C860C 96020000 */ lhu $v0, ($s0) +/* 3CF9B0 E00C8610 0080282D */ daddu $a1, $a0, $zero +/* 3CF9B4 E00C8614 24840008 */ addiu $a0, $a0, 8 +/* 3CF9B8 E00C8618 AE640000 */ sw $a0, ($s3) +/* 3CF9BC E00C861C ACA30000 */ sw $v1, ($a1) +/* 3CF9C0 E00C8620 24430001 */ addiu $v1, $v0, 1 +/* 3CF9C4 E00C8624 3042FFFF */ andi $v0, $v0, 0xffff +/* 3CF9C8 E00C8628 00021180 */ sll $v0, $v0, 6 +/* 3CF9CC E00C862C A6030000 */ sh $v1, ($s0) +/* 3CF9D0 E00C8630 8E830000 */ lw $v1, ($s4) +/* 3CF9D4 E00C8634 00571021 */ addu $v0, $v0, $s7 +/* 3CF9D8 E00C8638 00621821 */ addu $v1, $v1, $v0 +/* 3CF9DC E00C863C 24820008 */ addiu $v0, $a0, 8 +/* 3CF9E0 E00C8640 ACA30004 */ sw $v1, 4($a1) +/* 3CF9E4 E00C8644 AE620000 */ sw $v0, ($s3) +/* 3CF9E8 E00C8648 24820010 */ addiu $v0, $a0, 0x10 +/* 3CF9EC E00C864C AC860000 */ sw $a2, ($a0) +/* 3CF9F0 E00C8650 AE620000 */ sw $v0, ($s3) +/* 3CF9F4 E00C8654 8E230204 */ lw $v1, 0x204($s1) +/* 3CF9F8 E00C8658 3C02FA00 */ lui $v0, 0xfa00 +/* 3CF9FC E00C865C AC820008 */ sw $v0, 8($a0) +/* 3CFA00 E00C8660 AC830004 */ sw $v1, 4($a0) +/* 3CFA04 E00C8664 92430033 */ lbu $v1, 0x33($s2) +/* 3CFA08 E00C8668 92450037 */ lbu $a1, 0x37($s2) +/* 3CFA0C E00C866C 9246003B */ lbu $a2, 0x3b($s2) +/* 3CFA10 E00C8670 24820018 */ addiu $v0, $a0, 0x18 +/* 3CFA14 E00C8674 AE620000 */ sw $v0, ($s3) +/* 3CFA18 E00C8678 24820020 */ addiu $v0, $a0, 0x20 +/* 3CFA1C E00C867C AC870010 */ sw $a3, 0x10($a0) +/* 3CFA20 E00C8680 AE620000 */ sw $v0, ($s3) +/* 3CFA24 E00C8684 00031E00 */ sll $v1, $v1, 0x18 +/* 3CFA28 E00C8688 00052C00 */ sll $a1, $a1, 0x10 +/* 3CFA2C E00C868C 00651825 */ or $v1, $v1, $a1 +/* 3CFA30 E00C8690 00063200 */ sll $a2, $a2, 8 +/* 3CFA34 E00C8694 00661825 */ or $v1, $v1, $a2 +/* 3CFA38 E00C8698 00751825 */ or $v1, $v1, $s5 +/* 3CFA3C E00C869C AC83000C */ sw $v1, 0xc($a0) +/* 3CFA40 E00C86A0 3C03E00D */ lui $v1, %hi(D_E00C8710) +/* 3CFA44 E00C86A4 00761821 */ addu $v1, $v1, $s6 +/* 3CFA48 E00C86A8 8C638710 */ lw $v1, %lo(D_E00C8710)($v1) +/* 3CFA4C E00C86AC 24820028 */ addiu $v0, $a0, 0x28 +/* 3CFA50 E00C86B0 AE620000 */ sw $v0, ($s3) +/* 3CFA54 E00C86B4 3C020900 */ lui $v0, 0x900 +/* 3CFA58 E00C86B8 244209F0 */ addiu $v0, $v0, 0x9f0 +/* 3CFA5C E00C86BC AC82001C */ sw $v0, 0x1c($a0) +/* 3CFA60 E00C86C0 24020040 */ addiu $v0, $zero, 0x40 +/* 3CFA64 E00C86C4 AC870018 */ sw $a3, 0x18($a0) +/* 3CFA68 E00C86C8 AC880020 */ sw $t0, 0x20($a0) +/* 3CFA6C E00C86CC AC820024 */ sw $v0, 0x24($a0) +/* 3CFA70 E00C86D0 AC830014 */ sw $v1, 0x14($a0) +/* 3CFA74 E00C86D4 8FBF00B8 */ lw $ra, 0xb8($sp) +/* 3CFA78 E00C86D8 8FB700B4 */ lw $s7, 0xb4($sp) +/* 3CFA7C E00C86DC 8FB600B0 */ lw $s6, 0xb0($sp) +/* 3CFA80 E00C86E0 8FB500AC */ lw $s5, 0xac($sp) +/* 3CFA84 E00C86E4 8FB400A8 */ lw $s4, 0xa8($sp) +/* 3CFA88 E00C86E8 8FB300A4 */ lw $s3, 0xa4($sp) +/* 3CFA8C E00C86EC 8FB200A0 */ lw $s2, 0xa0($sp) +/* 3CFA90 E00C86F0 8FB1009C */ lw $s1, 0x9c($sp) +/* 3CFA94 E00C86F4 8FB00098 */ lw $s0, 0x98($sp) +/* 3CFA98 E00C86F8 D7B400C0 */ ldc1 $f20, 0xc0($sp) +/* 3CFA9C E00C86FC 03E00008 */ jr $ra +/* 3CFAA0 E00C8700 27BD00C8 */ addiu $sp, $sp, 0xc8 +/* 3CFAA4 E00C8704 00000000 */ nop +/* 3CFAA8 E00C8708 00000000 */ nop +/* 3CFAAC E00C870C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D0500/func_E00CA000.s b/asm/nonmatchings/code_3D0500/func_E00CA000.s new file mode 100644 index 0000000000..8e90846c65 --- /dev/null +++ b/asm/nonmatchings/code_3D0500/func_E00CA000.s @@ -0,0 +1,162 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CA000 +/* 3D0500 E00CA000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3D0504 E00CA004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3D0508 E00CA008 4485A000 */ mtc1 $a1, $f20 +/* 3D050C E00CA00C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3D0510 E00CA010 4486B000 */ mtc1 $a2, $f22 +/* 3D0514 E00CA014 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D0518 E00CA018 0080882D */ daddu $s1, $a0, $zero +/* 3D051C E00CA01C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3D0520 E00CA020 4487C000 */ mtc1 $a3, $f24 +/* 3D0524 E00CA024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D0528 E00CA028 AFB30034 */ sw $s3, 0x34($sp) +/* 3D052C E00CA02C 8FB3006C */ lw $s3, 0x6c($sp) +/* 3D0530 E00CA030 3C02E00D */ lui $v0, %hi(D_E00CA240) +/* 3D0534 E00CA034 2442A240 */ addiu $v0, $v0, %lo(D_E00CA240) +/* 3D0538 E00CA038 AFA20018 */ sw $v0, 0x18($sp) +/* 3D053C E00CA03C 3C02E00D */ lui $v0, %hi(D_E00CA248) +/* 3D0540 E00CA040 2442A248 */ addiu $v0, $v0, %lo(D_E00CA248) +/* 3D0544 E00CA044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D0548 E00CA048 3C02E00D */ lui $v0, %hi(D_E00CA484) +/* 3D054C E00CA04C 2442A484 */ addiu $v0, $v0, %lo(D_E00CA484) +/* 3D0550 E00CA050 AFA20020 */ sw $v0, 0x20($sp) +/* 3D0554 E00CA054 24020065 */ addiu $v0, $zero, 0x65 +/* 3D0558 E00CA058 AFBF0038 */ sw $ra, 0x38($sp) +/* 3D055C E00CA05C AFB20030 */ sw $s2, 0x30($sp) +/* 3D0560 E00CA060 AFB00028 */ sw $s0, 0x28($sp) +/* 3D0564 E00CA064 AFA00010 */ sw $zero, 0x10($sp) +/* 3D0568 E00CA068 AFA00024 */ sw $zero, 0x24($sp) +/* 3D056C E00CA06C 0C080124 */ jal func_E0200490 +/* 3D0570 E00CA070 AFA20014 */ sw $v0, 0x14($sp) +/* 3D0574 E00CA074 24040324 */ addiu $a0, $zero, 0x324 +/* 3D0578 E00CA078 24030001 */ addiu $v1, $zero, 1 +/* 3D057C E00CA07C 0040902D */ daddu $s2, $v0, $zero +/* 3D0580 E00CA080 0C08012C */ jal func_E02004B0 +/* 3D0584 E00CA084 AE430008 */ sw $v1, 8($s2) +/* 3D0588 E00CA088 0040802D */ daddu $s0, $v0, $zero +/* 3D058C E00CA08C 16000003 */ bnez $s0, .LE00CA09C +/* 3D0590 E00CA090 AE42000C */ sw $v0, 0xc($s2) +.LE00CA094: +/* 3D0594 E00CA094 08032825 */ j .LE00CA094 +/* 3D0598 E00CA098 00000000 */ nop +.LE00CA09C: +/* 3D059C E00CA09C AE110000 */ sw $s1, ($s0) +/* 3D05A0 E00CA0A0 1E600004 */ bgtz $s3, .LE00CA0B4 +/* 3D05A4 E00CA0A4 AE000014 */ sw $zero, 0x14($s0) +/* 3D05A8 E00CA0A8 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D05AC E00CA0AC 0803282E */ j .LE00CA0B8 +/* 3D05B0 E00CA0B0 AE020010 */ sw $v0, 0x10($s0) +.LE00CA0B4: +/* 3D05B4 E00CA0B4 AE130010 */ sw $s3, 0x10($s0) +.LE00CA0B8: +/* 3D05B8 E00CA0B8 E6140004 */ swc1 $f20, 4($s0) +/* 3D05BC E00CA0BC E6160008 */ swc1 $f22, 8($s0) +/* 3D05C0 E00CA0C0 E618000C */ swc1 $f24, 0xc($s0) +/* 3D05C4 E00CA0C4 C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3D05C8 E00CA0C8 24020001 */ addiu $v0, $zero, 1 +/* 3D05CC E00CA0CC 12220017 */ beq $s1, $v0, .LE00CA12C +/* 3D05D0 E00CA0D0 E6000034 */ swc1 $f0, 0x34($s0) +/* 3D05D4 E00CA0D4 2A220002 */ slti $v0, $s1, 2 +/* 3D05D8 E00CA0D8 50400005 */ beql $v0, $zero, .LE00CA0F0 +/* 3D05DC E00CA0DC 24020002 */ addiu $v0, $zero, 2 +/* 3D05E0 E00CA0E0 1220000A */ beqz $s1, .LE00CA10C +/* 3D05E4 E00CA0E4 2403001D */ addiu $v1, $zero, 0x1d +/* 3D05E8 E00CA0E8 0803286D */ j .LE00CA1B4 +/* 3D05EC E00CA0EC 26020074 */ addiu $v0, $s0, 0x74 +.LE00CA0F0: +/* 3D05F0 E00CA0F0 1222001C */ beq $s1, $v0, .LE00CA164 +/* 3D05F4 E00CA0F4 240200FF */ addiu $v0, $zero, 0xff +/* 3D05F8 E00CA0F8 24020003 */ addiu $v0, $zero, 3 +/* 3D05FC E00CA0FC 12220021 */ beq $s1, $v0, .LE00CA184 +/* 3D0600 E00CA100 2403001D */ addiu $v1, $zero, 0x1d +/* 3D0604 E00CA104 0803286D */ j .LE00CA1B4 +/* 3D0608 E00CA108 26020074 */ addiu $v0, $s0, 0x74 +.LE00CA10C: +/* 3D060C E00CA10C 240300FF */ addiu $v1, $zero, 0xff +/* 3D0610 E00CA110 240200E1 */ addiu $v0, $zero, 0xe1 +/* 3D0614 E00CA114 AE030018 */ sw $v1, 0x18($s0) +/* 3D0618 E00CA118 AE03001C */ sw $v1, 0x1c($s0) +/* 3D061C E00CA11C AE030020 */ sw $v1, 0x20($s0) +/* 3D0620 E00CA120 AE020028 */ sw $v0, 0x28($s0) +/* 3D0624 E00CA124 08032856 */ j .LE00CA158 +/* 3D0628 E00CA128 AE02002C */ sw $v0, 0x2c($s0) +.LE00CA12C: +/* 3D062C E00CA12C 240300FF */ addiu $v1, $zero, 0xff +/* 3D0630 E00CA130 240200F5 */ addiu $v0, $zero, 0xf5 +/* 3D0634 E00CA134 AE02001C */ sw $v0, 0x1c($s0) +/* 3D0638 E00CA138 240200E6 */ addiu $v0, $zero, 0xe6 +/* 3D063C E00CA13C AE020020 */ sw $v0, 0x20($s0) +/* 3D0640 E00CA140 2402002D */ addiu $v0, $zero, 0x2d +/* 3D0644 E00CA144 AE020028 */ sw $v0, 0x28($s0) +/* 3D0648 E00CA148 24020023 */ addiu $v0, $zero, 0x23 +/* 3D064C E00CA14C AE02002C */ sw $v0, 0x2c($s0) +/* 3D0650 E00CA150 2402000F */ addiu $v0, $zero, 0xf +/* 3D0654 E00CA154 AE030018 */ sw $v1, 0x18($s0) +.LE00CA158: +/* 3D0658 E00CA158 AE020030 */ sw $v0, 0x30($s0) +/* 3D065C E00CA15C 0803286B */ j .LE00CA1AC +/* 3D0660 E00CA160 AE030024 */ sw $v1, 0x24($s0) +.LE00CA164: +/* 3D0664 E00CA164 2403009B */ addiu $v1, $zero, 0x9b +/* 3D0668 E00CA168 AE030028 */ sw $v1, 0x28($s0) +/* 3D066C E00CA16C 2403007D */ addiu $v1, $zero, 0x7d +/* 3D0670 E00CA170 AE020018 */ sw $v0, 0x18($s0) +/* 3D0674 E00CA174 AE00001C */ sw $zero, 0x1c($s0) +/* 3D0678 E00CA178 AE000020 */ sw $zero, 0x20($s0) +/* 3D067C E00CA17C 08032869 */ j .LE00CA1A4 +/* 3D0680 E00CA180 AE03002C */ sw $v1, 0x2c($s0) +.LE00CA184: +/* 3D0684 E00CA184 240200FF */ addiu $v0, $zero, 0xff +/* 3D0688 E00CA188 24030041 */ addiu $v1, $zero, 0x41 +/* 3D068C E00CA18C AE03002C */ sw $v1, 0x2c($s0) +/* 3D0690 E00CA190 24030014 */ addiu $v1, $zero, 0x14 +/* 3D0694 E00CA194 AE020018 */ sw $v0, 0x18($s0) +/* 3D0698 E00CA198 AE02001C */ sw $v0, 0x1c($s0) +/* 3D069C E00CA19C AE020020 */ sw $v0, 0x20($s0) +/* 3D06A0 E00CA1A0 AE020028 */ sw $v0, 0x28($s0) +.LE00CA1A4: +/* 3D06A4 E00CA1A4 AE030030 */ sw $v1, 0x30($s0) +/* 3D06A8 E00CA1A8 AE020024 */ sw $v0, 0x24($s0) +.LE00CA1AC: +/* 3D06AC E00CA1AC 2403001D */ addiu $v1, $zero, 0x1d +/* 3D06B0 E00CA1B0 26020074 */ addiu $v0, $s0, 0x74 +.LE00CA1B4: +/* 3D06B4 E00CA1B4 E6140038 */ swc1 $f20, 0x38($s0) +/* 3D06B8 E00CA1B8 E616003C */ swc1 $f22, 0x3c($s0) +/* 3D06BC E00CA1BC E6180040 */ swc1 $f24, 0x40($s0) +.LE00CA1C0: +/* 3D06C0 E00CA1C0 AC400230 */ sw $zero, 0x230($v0) +/* 3D06C4 E00CA1C4 2463FFFF */ addiu $v1, $v1, -1 +/* 3D06C8 E00CA1C8 0461FFFD */ bgez $v1, .LE00CA1C0 +/* 3D06CC E00CA1CC 2442FFFC */ addiu $v0, $v0, -4 +/* 3D06D0 E00CA1D0 2404001E */ addiu $a0, $zero, 0x1e +/* 3D06D4 E00CA1D4 24020001 */ addiu $v0, $zero, 1 +/* 3D06D8 E00CA1D8 AE0002A8 */ sw $zero, 0x2a8($s0) +/* 3D06DC E00CA1DC E6140050 */ swc1 $f20, 0x50($s0) +/* 3D06E0 E00CA1E0 E61600C8 */ swc1 $f22, 0xc8($s0) +/* 3D06E4 E00CA1E4 E6180140 */ swc1 $f24, 0x140($s0) +/* 3D06E8 E00CA1E8 AE020230 */ sw $v0, 0x230($s0) +/* 3D06EC E00CA1EC AE0001B8 */ sw $zero, 0x1b8($s0) +/* 3D06F0 E00CA1F0 0C080138 */ jal func_E02004E0 +/* 3D06F4 E00CA1F4 AE0002AC */ sw $zero, 0x2ac($s0) +/* 3D06F8 E00CA1F8 2443000A */ addiu $v1, $v0, 0xa +/* 3D06FC E00CA1FC 0240102D */ daddu $v0, $s2, $zero +/* 3D0700 E00CA200 44830000 */ mtc1 $v1, $f0 +/* 3D0704 E00CA204 00000000 */ nop +/* 3D0708 E00CA208 46800020 */ cvt.s.w $f0, $f0 +/* 3D070C E00CA20C E6000044 */ swc1 $f0, 0x44($s0) +/* 3D0710 E00CA210 AE000048 */ sw $zero, 0x48($s0) +/* 3D0714 E00CA214 AE00004C */ sw $zero, 0x4c($s0) +/* 3D0718 E00CA218 8FBF0038 */ lw $ra, 0x38($sp) +/* 3D071C E00CA21C 8FB30034 */ lw $s3, 0x34($sp) +/* 3D0720 E00CA220 8FB20030 */ lw $s2, 0x30($sp) +/* 3D0724 E00CA224 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D0728 E00CA228 8FB00028 */ lw $s0, 0x28($sp) +/* 3D072C E00CA22C D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3D0730 E00CA230 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3D0734 E00CA234 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3D0738 E00CA238 03E00008 */ jr $ra +/* 3D073C E00CA23C 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3D0500/func_E00CA240.s b/asm/nonmatchings/code_3D0500/func_E00CA240.s new file mode 100644 index 0000000000..c07c93f51d --- /dev/null +++ b/asm/nonmatchings/code_3D0500/func_E00CA240.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CA240 +/* 3D0740 E00CA240 03E00008 */ jr $ra +/* 3D0744 E00CA244 00000000 */ nop diff --git a/asm/nonmatchings/code_3D0500/func_E00CA248.s b/asm/nonmatchings/code_3D0500/func_E00CA248.s new file mode 100644 index 0000000000..490837f70e --- /dev/null +++ b/asm/nonmatchings/code_3D0500/func_E00CA248.s @@ -0,0 +1,156 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CA248 +/* 3D0748 E00CA248 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D074C E00CA24C AFBF0018 */ sw $ra, 0x18($sp) +/* 3D0750 E00CA250 AFB10014 */ sw $s1, 0x14($sp) +/* 3D0754 E00CA254 AFB00010 */ sw $s0, 0x10($sp) +/* 3D0758 E00CA258 F7B40020 */ sdc1 $f20, 0x20($sp) +/* 3D075C E00CA25C 8C830000 */ lw $v1, ($a0) +/* 3D0760 E00CA260 8C90000C */ lw $s0, 0xc($a0) +/* 3D0764 E00CA264 30620010 */ andi $v0, $v1, 0x10 +/* 3D0768 E00CA268 8E050000 */ lw $a1, ($s0) +/* 3D076C E00CA26C 10400005 */ beqz $v0, .LE00CA284 +/* 3D0770 E00CA270 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D0774 E00CA274 00621024 */ and $v0, $v1, $v0 +/* 3D0778 E00CA278 AC820000 */ sw $v0, ($a0) +/* 3D077C E00CA27C 24020010 */ addiu $v0, $zero, 0x10 +/* 3D0780 E00CA280 AE020010 */ sw $v0, 0x10($s0) +.LE00CA284: +/* 3D0784 E00CA284 8E030010 */ lw $v1, 0x10($s0) +/* 3D0788 E00CA288 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3D078C E00CA28C 10400002 */ beqz $v0, .LE00CA298 +/* 3D0790 E00CA290 2462FFFF */ addiu $v0, $v1, -1 +/* 3D0794 E00CA294 AE020010 */ sw $v0, 0x10($s0) +.LE00CA298: +/* 3D0798 E00CA298 8E020014 */ lw $v0, 0x14($s0) +/* 3D079C E00CA29C 8E030010 */ lw $v1, 0x10($s0) +/* 3D07A0 E00CA2A0 24420001 */ addiu $v0, $v0, 1 +/* 3D07A4 E00CA2A4 04610005 */ bgez $v1, .LE00CA2BC +/* 3D07A8 E00CA2A8 AE020014 */ sw $v0, 0x14($s0) +/* 3D07AC E00CA2AC 0C080128 */ jal func_E02004A0 +/* 3D07B0 E00CA2B0 00000000 */ nop +/* 3D07B4 E00CA2B4 0803291B */ j .LE00CA46C +/* 3D07B8 E00CA2B8 00000000 */ nop +.LE00CA2BC: +/* 3D07BC E00CA2BC 0040882D */ daddu $s1, $v0, $zero +/* 3D07C0 E00CA2C0 28620010 */ slti $v0, $v1, 0x10 +/* 3D07C4 E00CA2C4 10400002 */ beqz $v0, .LE00CA2D0 +/* 3D07C8 E00CA2C8 00031100 */ sll $v0, $v1, 4 +/* 3D07CC E00CA2CC AE020024 */ sw $v0, 0x24($s0) +.LE00CA2D0: +/* 3D07D0 E00CA2D0 24020003 */ addiu $v0, $zero, 3 +/* 3D07D4 E00CA2D4 14A20020 */ bne $a1, $v0, .LE00CA358 +/* 3D07D8 E00CA2D8 3C028888 */ lui $v0, %hi(D_8887FFFB) +/* 3D07DC E00CA2DC 0C080138 */ jal func_E02004E0 +/* 3D07E0 E00CA2E0 2404000A */ addiu $a0, $zero, 0xa +/* 3D07E4 E00CA2E4 2442FFFB */ addiu $v0, $v0, %lo(D_8887FFFB) +/* 3D07E8 E00CA2E8 C6000044 */ lwc1 $f0, 0x44($s0) +/* 3D07EC E00CA2EC 44821000 */ mtc1 $v0, $f2 +/* 3D07F0 E00CA2F0 00000000 */ nop +/* 3D07F4 E00CA2F4 468010A0 */ cvt.s.w $f2, $f2 +/* 3D07F8 E00CA2F8 46020000 */ add.s $f0, $f0, $f2 +/* 3D07FC E00CA2FC 2404000A */ addiu $a0, $zero, 0xa +/* 3D0800 E00CA300 0C080138 */ jal func_E02004E0 +/* 3D0804 E00CA304 E6000044 */ swc1 $f0, 0x44($s0) +/* 3D0808 E00CA308 2442FFFB */ addiu $v0, $v0, -5 +/* 3D080C E00CA30C 44820000 */ mtc1 $v0, $f0 +/* 3D0810 E00CA310 00000000 */ nop +/* 3D0814 E00CA314 46800020 */ cvt.s.w $f0, $f0 +/* 3D0818 E00CA318 C6020048 */ lwc1 $f2, 0x48($s0) +/* 3D081C E00CA31C C6060038 */ lwc1 $f6, 0x38($s0) +/* 3D0820 E00CA320 46001080 */ add.s $f2, $f2, $f0 +/* 3D0824 E00CA324 C6000044 */ lwc1 $f0, 0x44($s0) +/* 3D0828 E00CA328 C6040040 */ lwc1 $f4, 0x40($s0) +/* 3D082C E00CA32C 46003180 */ add.s $f6, $f6, $f0 +/* 3D0830 E00CA330 C600004C */ lwc1 $f0, 0x4c($s0) +/* 3D0834 E00CA334 46002100 */ add.s $f4, $f4, $f0 +/* 3D0838 E00CA338 E6020048 */ swc1 $f2, 0x48($s0) +/* 3D083C E00CA33C C602003C */ lwc1 $f2, 0x3c($s0) +/* 3D0840 E00CA340 C6000048 */ lwc1 $f0, 0x48($s0) +/* 3D0844 E00CA344 46001080 */ add.s $f2, $f2, $f0 +/* 3D0848 E00CA348 E6060038 */ swc1 $f6, 0x38($s0) +/* 3D084C E00CA34C E6040040 */ swc1 $f4, 0x40($s0) +/* 3D0850 E00CA350 E602003C */ swc1 $f2, 0x3c($s0) +/* 3D0854 E00CA354 3C028888 */ lui $v0, 0x8888 +.LE00CA358: +/* 3D0858 E00CA358 8E0402A8 */ lw $a0, 0x2a8($s0) +/* 3D085C E00CA35C 34428889 */ ori $v0, $v0, 0x8889 +/* 3D0860 E00CA360 00820018 */ mult $a0, $v0 +/* 3D0864 E00CA364 C6080038 */ lwc1 $f8, 0x38($s0) +/* 3D0868 E00CA368 C606003C */ lwc1 $f6, 0x3c($s0) +/* 3D086C E00CA36C C60A0040 */ lwc1 $f10, 0x40($s0) +/* 3D0870 E00CA370 00041FC3 */ sra $v1, $a0, 0x1f +/* 3D0874 E00CA374 00003010 */ mfhi $a2 +/* 3D0878 E00CA378 00C41021 */ addu $v0, $a2, $a0 +/* 3D087C E00CA37C 00021103 */ sra $v0, $v0, 4 +/* 3D0880 E00CA380 00431823 */ subu $v1, $v0, $v1 +/* 3D0884 E00CA384 00031100 */ sll $v0, $v1, 4 +/* 3D0888 E00CA388 00431023 */ subu $v0, $v0, $v1 +/* 3D088C E00CA38C 00021040 */ sll $v0, $v0, 1 +/* 3D0890 E00CA390 00821823 */ subu $v1, $a0, $v0 +/* 3D0894 E00CA394 00031080 */ sll $v0, $v1, 2 +/* 3D0898 E00CA398 02021021 */ addu $v0, $s0, $v0 +/* 3D089C E00CA39C C4420050 */ lwc1 $f2, 0x50($v0) +/* 3D08A0 E00CA3A0 C44000C8 */ lwc1 $f0, 0xc8($v0) +/* 3D08A4 E00CA3A4 C44C0140 */ lwc1 $f12, 0x140($v0) +/* 3D08A8 E00CA3A8 46024032 */ c.eq.s $f8, $f2 +/* 3D08AC E00CA3AC 00000000 */ nop +/* 3D08B0 E00CA3B0 45000009 */ bc1f .LE00CA3D8 +/* 3D08B4 E00CA3B4 00031880 */ sll $v1, $v1, 2 +/* 3D08B8 E00CA3B8 46003032 */ c.eq.s $f6, $f0 +/* 3D08BC E00CA3BC 00000000 */ nop +/* 3D08C0 E00CA3C0 45000005 */ bc1f .LE00CA3D8 +/* 3D08C4 E00CA3C4 00000000 */ nop +/* 3D08C8 E00CA3C8 460C5032 */ c.eq.s $f10, $f12 +/* 3D08CC E00CA3CC 00000000 */ nop +/* 3D08D0 E00CA3D0 45010026 */ bc1t .LE00CA46C +/* 3D08D4 E00CA3D4 00000000 */ nop +.LE00CA3D8: +/* 3D08D8 E00CA3D8 02031821 */ addu $v1, $s0, $v1 +/* 3D08DC E00CA3DC 8E0202A8 */ lw $v0, 0x2a8($s0) +/* 3D08E0 E00CA3E0 C47402AC */ lwc1 $f20, 0x2ac($v1) +/* 3D08E4 E00CA3E4 24420001 */ addiu $v0, $v0, 1 +/* 3D08E8 E00CA3E8 AE0202A8 */ sw $v0, 0x2a8($s0) +/* 3D08EC E00CA3EC 2842001E */ slti $v0, $v0, 0x1e +/* 3D08F0 E00CA3F0 50400001 */ beql $v0, $zero, .LE00CA3F8 +/* 3D08F4 E00CA3F4 AE0002A8 */ sw $zero, 0x2a8($s0) +.LE00CA3F8: +/* 3D08F8 E00CA3F8 46024101 */ sub.s $f4, $f8, $f2 +/* 3D08FC E00CA3FC 46042102 */ mul.s $f4, $f4, $f4 +/* 3D0900 E00CA400 00000000 */ nop +/* 3D0904 E00CA404 46003001 */ sub.s $f0, $f6, $f0 +/* 3D0908 E00CA408 46000002 */ mul.s $f0, $f0, $f0 +/* 3D090C E00CA40C 00000000 */ nop +/* 3D0910 E00CA410 8E0302A8 */ lw $v1, 0x2a8($s0) +/* 3D0914 E00CA414 460C5081 */ sub.s $f2, $f10, $f12 +/* 3D0918 E00CA418 00031080 */ sll $v0, $v1, 2 +/* 3D091C E00CA41C 46021082 */ mul.s $f2, $f2, $f2 +/* 3D0920 E00CA420 00000000 */ nop +/* 3D0924 E00CA424 02028021 */ addu $s0, $s0, $v0 +/* 3D0928 E00CA428 24020001 */ addiu $v0, $zero, 1 +/* 3D092C E00CA42C AE020230 */ sw $v0, 0x230($s0) +/* 3D0930 E00CA430 E6080050 */ swc1 $f8, 0x50($s0) +/* 3D0934 E00CA434 46002100 */ add.s $f4, $f4, $f0 +/* 3D0938 E00CA438 E60600C8 */ swc1 $f6, 0xc8($s0) +/* 3D093C E00CA43C 44800000 */ mtc1 $zero, $f0 +/* 3D0940 E00CA440 46022300 */ add.s $f12, $f4, $f2 +/* 3D0944 E00CA444 E60A0140 */ swc1 $f10, 0x140($s0) +/* 3D0948 E00CA448 46006032 */ c.eq.s $f12, $f0 +/* 3D094C E00CA44C 00000000 */ nop +/* 3D0950 E00CA450 45010004 */ bc1t .LE00CA464 +/* 3D0954 E00CA454 AE1101B8 */ sw $s1, 0x1b8($s0) +/* 3D0958 E00CA458 0C080154 */ jal func_E0200550 +/* 3D095C E00CA45C 00000000 */ nop +/* 3D0960 E00CA460 46000306 */ mov.s $f12, $f0 +.LE00CA464: +/* 3D0964 E00CA464 460CA000 */ add.s $f0, $f20, $f12 +/* 3D0968 E00CA468 E60002AC */ swc1 $f0, 0x2ac($s0) +.LE00CA46C: +/* 3D096C E00CA46C 8FBF0018 */ lw $ra, 0x18($sp) +/* 3D0970 E00CA470 8FB10014 */ lw $s1, 0x14($sp) +/* 3D0974 E00CA474 8FB00010 */ lw $s0, 0x10($sp) +/* 3D0978 E00CA478 D7B40020 */ ldc1 $f20, 0x20($sp) +/* 3D097C E00CA47C 03E00008 */ jr $ra +/* 3D0980 E00CA480 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D0500/func_E00CA484.s b/asm/nonmatchings/code_3D0500/func_E00CA484.s new file mode 100644 index 0000000000..bc30638606 --- /dev/null +++ b/asm/nonmatchings/code_3D0500/func_E00CA484.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CA484 +/* 3D0984 E00CA484 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D0988 E00CA488 3C02E00D */ lui $v0, %hi(D_E00CA4CC) +/* 3D098C E00CA48C 2442A4CC */ addiu $v0, $v0, %lo(D_E00CA4CC) +/* 3D0990 E00CA490 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D0994 E00CA494 2402000A */ addiu $v0, $zero, 0xa +/* 3D0998 E00CA498 AFA20014 */ sw $v0, 0x14($sp) +/* 3D099C E00CA49C 2402002D */ addiu $v0, $zero, 0x2d +/* 3D09A0 E00CA4A0 AFA40018 */ sw $a0, 0x18($sp) +/* 3D09A4 E00CA4A4 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D09A8 E00CA4A8 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D09AC E00CA4AC 0C080120 */ jal func_E0200480 +/* 3D09B0 E00CA4B0 AFA20010 */ sw $v0, 0x10($sp) +/* 3D09B4 E00CA4B4 8C430000 */ lw $v1, ($v0) +/* 3D09B8 E00CA4B8 34630002 */ ori $v1, $v1, 2 +/* 3D09BC E00CA4BC AC430000 */ sw $v1, ($v0) +/* 3D09C0 E00CA4C0 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D09C4 E00CA4C4 03E00008 */ jr $ra +/* 3D09C8 E00CA4C8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D0500/func_E00CA4CC.s b/asm/nonmatchings/code_3D0500/func_E00CA4CC.s new file mode 100644 index 0000000000..12f0cd1cec --- /dev/null +++ b/asm/nonmatchings/code_3D0500/func_E00CA4CC.s @@ -0,0 +1,528 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CA4CC +/* 3D09CC E00CA4CC 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 3D09D0 E00CA4D0 0080482D */ daddu $t1, $a0, $zero +/* 3D09D4 E00CA4D4 3C0ADB06 */ lui $t2, 0xdb06 +/* 3D09D8 E00CA4D8 354A0024 */ ori $t2, $t2, 0x24 +/* 3D09DC E00CA4DC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D09E0 E00CA4E0 AFB20078 */ sw $s2, 0x78($sp) +/* 3D09E4 E00CA4E4 3C120001 */ lui $s2, 1 +/* 3D09E8 E00CA4E8 44800000 */ mtc1 $zero, $f0 +/* 3D09EC E00CA4EC 36521630 */ ori $s2, $s2, 0x1630 +/* 3D09F0 E00CA4F0 AFB3007C */ sw $s3, 0x7c($sp) +/* 3D09F4 E00CA4F4 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3D09F8 E00CA4F8 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3D09FC E00CA4FC AFBF0094 */ sw $ra, 0x94($sp) +/* 3D0A00 E00CA500 AFBE0090 */ sw $fp, 0x90($sp) +/* 3D0A04 E00CA504 AFB7008C */ sw $s7, 0x8c($sp) +/* 3D0A08 E00CA508 AFB60088 */ sw $s6, 0x88($sp) +/* 3D0A0C E00CA50C AFB50084 */ sw $s5, 0x84($sp) +/* 3D0A10 E00CA510 AFB40080 */ sw $s4, 0x80($sp) +/* 3D0A14 E00CA514 AFB10074 */ sw $s1, 0x74($sp) +/* 3D0A18 E00CA518 AFB00070 */ sw $s0, 0x70($sp) +/* 3D0A1C E00CA51C F7BE00C0 */ sdc1 $f30, 0xc0($sp) +/* 3D0A20 E00CA520 F7BC00B8 */ sdc1 $f28, 0xb8($sp) +/* 3D0A24 E00CA524 F7BA00B0 */ sdc1 $f26, 0xb0($sp) +/* 3D0A28 E00CA528 F7B800A8 */ sdc1 $f24, 0xa8($sp) +/* 3D0A2C E00CA52C F7B600A0 */ sdc1 $f22, 0xa0($sp) +/* 3D0A30 E00CA530 F7B40098 */ sdc1 $f20, 0x98($sp) +/* 3D0A34 E00CA534 8E680000 */ lw $t0, ($s3) +/* 3D0A38 E00CA538 8D36000C */ lw $s6, 0xc($t1) +/* 3D0A3C E00CA53C 0100182D */ daddu $v1, $t0, $zero +/* 3D0A40 E00CA540 44050000 */ mfc1 $a1, $f0 +/* 3D0A44 E00CA544 25080008 */ addiu $t0, $t0, 8 +/* 3D0A48 E00CA548 AE680000 */ sw $t0, ($s3) +/* 3D0A4C E00CA54C 8ECB0014 */ lw $t3, 0x14($s6) +/* 3D0A50 E00CA550 3C02E700 */ lui $v0, 0xe700 +/* 3D0A54 E00CA554 AFAB0050 */ sw $t3, 0x50($sp) +/* 3D0A58 E00CA558 8ED50024 */ lw $s5, 0x24($s6) +/* 3D0A5C E00CA55C 8ECB0000 */ lw $t3, ($s6) +/* 3D0A60 E00CA560 00A0302D */ daddu $a2, $a1, $zero +/* 3D0A64 E00CA564 AFAB0054 */ sw $t3, 0x54($sp) +/* 3D0A68 E00CA568 C6C60034 */ lwc1 $f6, 0x34($s6) +/* 3D0A6C E00CA56C 00A0382D */ daddu $a3, $a1, $zero +/* 3D0A70 E00CA570 E7A60058 */ swc1 $f6, 0x58($sp) +/* 3D0A74 E00CA574 AC620000 */ sw $v0, ($v1) +/* 3D0A78 E00CA578 AC600004 */ sw $zero, 4($v1) +/* 3D0A7C E00CA57C AD0A0000 */ sw $t2, ($t0) +/* 3D0A80 E00CA580 8D230010 */ lw $v1, 0x10($t1) +/* 3D0A84 E00CA584 25020008 */ addiu $v0, $t0, 8 +/* 3D0A88 E00CA588 AE620000 */ sw $v0, ($s3) +/* 3D0A8C E00CA58C 8C62001C */ lw $v0, 0x1c($v1) +/* 3D0A90 E00CA590 3C038000 */ lui $v1, 0x8000 +/* 3D0A94 E00CA594 00431021 */ addu $v0, $v0, $v1 +/* 3D0A98 E00CA598 0C080108 */ jal func_E0200420 +/* 3D0A9C E00CA59C AD020004 */ sw $v0, 4($t0) +/* 3D0AA0 E00CA5A0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D0AA4 E00CA5A4 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3D0AA8 E00CA5A8 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3D0AAC E00CA5AC 3C11800A */ lui $s1, %hi(D_8009A674) +/* 3D0AB0 E00CA5B0 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 3D0AB4 E00CA5B4 96050000 */ lhu $a1, ($s0) +/* 3D0AB8 E00CA5B8 8E220000 */ lw $v0, ($s1) +/* 3D0ABC E00CA5BC 00052980 */ sll $a1, $a1, 6 +/* 3D0AC0 E00CA5C0 00B22821 */ addu $a1, $a1, $s2 +/* 3D0AC4 E00CA5C4 0C080118 */ jal func_E0200460 +/* 3D0AC8 E00CA5C8 00452821 */ addu $a1, $v0, $a1 +/* 3D0ACC E00CA5CC 3C03DA38 */ lui $v1, 0xda38 +/* 3D0AD0 E00CA5D0 34630002 */ ori $v1, $v1, 2 +/* 3D0AD4 E00CA5D4 8E650000 */ lw $a1, ($s3) +/* 3D0AD8 E00CA5D8 96020000 */ lhu $v0, ($s0) +/* 3D0ADC E00CA5DC 00A0202D */ daddu $a0, $a1, $zero +/* 3D0AE0 E00CA5E0 24A50008 */ addiu $a1, $a1, 8 +/* 3D0AE4 E00CA5E4 AE650000 */ sw $a1, ($s3) +/* 3D0AE8 E00CA5E8 AC830000 */ sw $v1, ($a0) +/* 3D0AEC E00CA5EC 24430001 */ addiu $v1, $v0, 1 +/* 3D0AF0 E00CA5F0 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D0AF4 E00CA5F4 00021180 */ sll $v0, $v0, 6 +/* 3D0AF8 E00CA5F8 A6030000 */ sh $v1, ($s0) +/* 3D0AFC E00CA5FC 8E230000 */ lw $v1, ($s1) +/* 3D0B00 E00CA600 00521021 */ addu $v0, $v0, $s2 +/* 3D0B04 E00CA604 00621821 */ addu $v1, $v1, $v0 +/* 3D0B08 E00CA608 3C02DE00 */ lui $v0, 0xde00 +/* 3D0B0C E00CA60C AC830004 */ sw $v1, 4($a0) +/* 3D0B10 E00CA610 ACA20000 */ sw $v0, ($a1) +/* 3D0B14 E00CA614 8FAB0054 */ lw $t3, 0x54($sp) +/* 3D0B18 E00CA618 000B1080 */ sll $v0, $t3, 2 +/* 3D0B1C E00CA61C 3C03E00D */ lui $v1, %hi(D_E00CACB0) +/* 3D0B20 E00CA620 00621821 */ addu $v1, $v1, $v0 +/* 3D0B24 E00CA624 8C63ACB0 */ lw $v1, %lo(D_E00CACB0)($v1) +/* 3D0B28 E00CA628 24A20008 */ addiu $v0, $a1, 8 +/* 3D0B2C E00CA62C AE620000 */ sw $v0, ($s3) +/* 3D0B30 E00CA630 29620002 */ slti $v0, $t3, 2 +/* 3D0B34 E00CA634 14400009 */ bnez $v0, .LE00CA65C +/* 3D0B38 E00CA638 ACA30004 */ sw $v1, 4($a1) +/* 3D0B3C E00CA63C 3C04FC40 */ lui $a0, 0xfc40 +/* 3D0B40 E00CA640 348499FF */ ori $a0, $a0, 0x99ff +/* 3D0B44 E00CA644 3C035F0E */ lui $v1, 0x5f0e +/* 3D0B48 E00CA648 3463FE3F */ ori $v1, $v1, 0xfe3f +/* 3D0B4C E00CA64C 24A20010 */ addiu $v0, $a1, 0x10 +/* 3D0B50 E00CA650 AE620000 */ sw $v0, ($s3) +/* 3D0B54 E00CA654 ACA40008 */ sw $a0, 8($a1) +/* 3D0B58 E00CA658 ACA3000C */ sw $v1, 0xc($a1) +.LE00CA65C: +/* 3D0B5C E00CA65C 240BFFFF */ addiu $t3, $zero, -1 +/* 3D0B60 E00CA660 0000F02D */ daddu $fp, $zero, $zero +/* 3D0B64 E00CA664 03C0A02D */ daddu $s4, $fp, $zero +/* 3D0B68 E00CA668 3C088888 */ lui $t0, 0x8888 +/* 3D0B6C E00CA66C AFAB0060 */ sw $t3, 0x60($sp) +/* 3D0B70 E00CA670 8FAB0050 */ lw $t3, 0x50($sp) +/* 3D0B74 E00CA674 35088889 */ ori $t0, $t0, 0x8889 +/* 3D0B78 E00CA678 3162003F */ andi $v0, $t3, 0x3f +/* 3D0B7C E00CA67C 00021140 */ sll $v0, $v0, 5 +/* 3D0B80 E00CA680 AFA20064 */ sw $v0, 0x64($sp) +/* 3D0B84 E00CA684 8E660000 */ lw $a2, ($s3) +/* 3D0B88 E00CA688 3C02FA00 */ lui $v0, 0xfa00 +/* 3D0B8C E00CA68C 00C0382D */ daddu $a3, $a2, $zero +/* 3D0B90 E00CA690 24C60008 */ addiu $a2, $a2, 8 +/* 3D0B94 E00CA694 24CB0010 */ addiu $t3, $a2, 0x10 +/* 3D0B98 E00CA698 AFAB005C */ sw $t3, 0x5c($sp) +/* 3D0B9C E00CA69C AE660000 */ sw $a2, ($s3) +/* 3D0BA0 E00CA6A0 ACE20000 */ sw $v0, ($a3) +/* 3D0BA4 E00CA6A4 92C2001B */ lbu $v0, 0x1b($s6) +/* 3D0BA8 E00CA6A8 92C4001F */ lbu $a0, 0x1f($s6) +/* 3D0BAC E00CA6AC 92C50023 */ lbu $a1, 0x23($s6) +/* 3D0BB0 E00CA6B0 24C30008 */ addiu $v1, $a2, 8 +/* 3D0BB4 E00CA6B4 AE630000 */ sw $v1, ($s3) +/* 3D0BB8 E00CA6B8 32A300FF */ andi $v1, $s5, 0xff +/* 3D0BBC E00CA6BC 00021600 */ sll $v0, $v0, 0x18 +/* 3D0BC0 E00CA6C0 00042400 */ sll $a0, $a0, 0x10 +/* 3D0BC4 E00CA6C4 00441025 */ or $v0, $v0, $a0 +/* 3D0BC8 E00CA6C8 00052A00 */ sll $a1, $a1, 8 +/* 3D0BCC E00CA6CC 00451025 */ or $v0, $v0, $a1 +/* 3D0BD0 E00CA6D0 00431025 */ or $v0, $v0, $v1 +/* 3D0BD4 E00CA6D4 ACE20004 */ sw $v0, 4($a3) +/* 3D0BD8 E00CA6D8 3C02FB00 */ lui $v0, 0xfb00 +/* 3D0BDC E00CA6DC ACC20000 */ sw $v0, ($a2) +/* 3D0BE0 E00CA6E0 92C3002B */ lbu $v1, 0x2b($s6) +/* 3D0BE4 E00CA6E4 92C4002F */ lbu $a0, 0x2f($s6) +/* 3D0BE8 E00CA6E8 92C50033 */ lbu $a1, 0x33($s6) +/* 3D0BEC E00CA6EC 3C02DE01 */ lui $v0, 0xde01 +/* 3D0BF0 E00CA6F0 ACC20008 */ sw $v0, 8($a2) +/* 3D0BF4 E00CA6F4 24C203D0 */ addiu $v0, $a2, 0x3d0 +/* 3D0BF8 E00CA6F8 ACC2000C */ sw $v0, 0xc($a2) +/* 3D0BFC E00CA6FC AE620000 */ sw $v0, ($s3) +/* 3D0C00 E00CA700 00031E00 */ sll $v1, $v1, 0x18 +/* 3D0C04 E00CA704 00042400 */ sll $a0, $a0, 0x10 +/* 3D0C08 E00CA708 00641825 */ or $v1, $v1, $a0 +/* 3D0C0C E00CA70C 00052A00 */ sll $a1, $a1, 8 +/* 3D0C10 E00CA710 00651825 */ or $v1, $v1, $a1 +/* 3D0C14 E00CA714 ACC30004 */ sw $v1, 4($a2) +/* 3D0C18 E00CA718 8EC602A8 */ lw $a2, 0x2a8($s6) +/* 3D0C1C E00CA71C 26850001 */ addiu $a1, $s4, 1 +.LE00CA720: +/* 3D0C20 E00CA720 00C52021 */ addu $a0, $a2, $a1 +/* 3D0C24 E00CA724 00880018 */ mult $a0, $t0 +/* 3D0C28 E00CA728 00041FC3 */ sra $v1, $a0, 0x1f +/* 3D0C2C E00CA72C 00005810 */ mfhi $t3 +/* 3D0C30 E00CA730 01641021 */ addu $v0, $t3, $a0 +/* 3D0C34 E00CA734 00021103 */ sra $v0, $v0, 4 +/* 3D0C38 E00CA738 00431823 */ subu $v1, $v0, $v1 +/* 3D0C3C E00CA73C 00031100 */ sll $v0, $v1, 4 +/* 3D0C40 E00CA740 00431023 */ subu $v0, $v0, $v1 +/* 3D0C44 E00CA744 00021040 */ sll $v0, $v0, 1 +/* 3D0C48 E00CA748 00821823 */ subu $v1, $a0, $v0 +/* 3D0C4C E00CA74C 00031080 */ sll $v0, $v1, 2 +/* 3D0C50 E00CA750 02C21021 */ addu $v0, $s6, $v0 +/* 3D0C54 E00CA754 8C420230 */ lw $v0, 0x230($v0) +/* 3D0C58 E00CA758 54400001 */ bnel $v0, $zero, .LE00CA760 +/* 3D0C5C E00CA75C 27DE0001 */ addiu $fp, $fp, 1 +.LE00CA760: +/* 3D0C60 E00CA760 00A0A02D */ daddu $s4, $a1, $zero +/* 3D0C64 E00CA764 2A82001E */ slti $v0, $s4, 0x1e +/* 3D0C68 E00CA768 1440FFED */ bnez $v0, .LE00CA720 +/* 3D0C6C E00CA76C 26850001 */ addiu $a1, $s4, 1 +/* 3D0C70 E00CA770 27DEFFFF */ addiu $fp, $fp, -1 +/* 3D0C74 E00CA774 1BC00130 */ blez $fp, .LE00CAC38 +/* 3D0C78 E00CA778 0000A02D */ daddu $s4, $zero, $zero +/* 3D0C7C E00CA77C AFA00068 */ sw $zero, 0x68($sp) +.LE00CA780: +/* 3D0C80 E00CA780 8FAB0068 */ lw $t3, 0x68($sp) +/* 3D0C84 E00CA784 17C00002 */ bnez $fp, .LE00CA790 +/* 3D0C88 E00CA788 017E001A */ div $zero, $t3, $fp +/* 3D0C8C E00CA78C 0007000D */ break 7 +.LE00CA790: +/* 3D0C90 E00CA790 2401FFFF */ addiu $at, $zero, -1 +/* 3D0C94 E00CA794 17C10004 */ bne $fp, $at, .LE00CA7A8 +/* 3D0C98 E00CA798 3C018000 */ lui $at, 0x8000 +/* 3D0C9C E00CA79C 15610002 */ bne $t3, $at, .LE00CA7A8 +/* 3D0CA0 E00CA7A0 00000000 */ nop +/* 3D0CA4 E00CA7A4 0006000D */ break 6 +.LE00CA7A8: +/* 3D0CA8 E00CA7A8 00002812 */ mflo $a1 +/* 3D0CAC E00CA7AC 3C038888 */ lui $v1, 0x8888 +/* 3D0CB0 E00CA7B0 34638889 */ ori $v1, $v1, 0x8889 +/* 3D0CB4 E00CA7B4 8EC402A8 */ lw $a0, 0x2a8($s6) +/* 3D0CB8 E00CA7B8 26820001 */ addiu $v0, $s4, 1 +/* 3D0CBC E00CA7BC 00822021 */ addu $a0, $a0, $v0 +/* 3D0CC0 E00CA7C0 00830018 */ mult $a0, $v1 +/* 3D0CC4 E00CA7C4 8FAB005C */ lw $t3, 0x5c($sp) +/* 3D0CC8 E00CA7C8 00141140 */ sll $v0, $s4, 5 +/* 3D0CCC E00CA7CC 01629021 */ addu $s2, $t3, $v0 +/* 3D0CD0 E00CA7D0 00001810 */ mfhi $v1 +/* 3D0CD4 E00CA7D4 00641021 */ addu $v0, $v1, $a0 +/* 3D0CD8 E00CA7D8 00021103 */ sra $v0, $v0, 4 +/* 3D0CDC E00CA7DC 00041FC3 */ sra $v1, $a0, 0x1f +/* 3D0CE0 E00CA7E0 00439823 */ subu $s3, $v0, $v1 +/* 3D0CE4 E00CA7E4 00131100 */ sll $v0, $s3, 4 +/* 3D0CE8 E00CA7E8 00531023 */ subu $v0, $v0, $s3 +/* 3D0CEC E00CA7EC 00021040 */ sll $v0, $v0, 1 +/* 3D0CF0 E00CA7F0 44856000 */ mtc1 $a1, $f12 +/* 3D0CF4 E00CA7F4 00000000 */ nop +/* 3D0CF8 E00CA7F8 46806320 */ cvt.s.w $f12, $f12 +/* 3D0CFC E00CA7FC 0C080140 */ jal func_E0200500 +/* 3D0D00 E00CA800 00829823 */ subu $s3, $a0, $v0 +/* 3D0D04 E00CA804 3C01437F */ lui $at, 0x437f +/* 3D0D08 E00CA808 44811000 */ mtc1 $at, $f2 +/* 3D0D0C E00CA80C 00000000 */ nop +/* 3D0D10 E00CA810 46020002 */ mul.s $f0, $f0, $f2 +/* 3D0D14 E00CA814 00000000 */ nop +/* 3D0D18 E00CA818 4600018D */ trunc.w.s $f6, $f0 +/* 3D0D1C E00CA81C 44173000 */ mfc1 $s7, $f6 +/* 3D0D20 E00CA820 00000000 */ nop +/* 3D0D24 E00CA824 2AE200C9 */ slti $v0, $s7, 0xc9 +/* 3D0D28 E00CA828 50400001 */ beql $v0, $zero, .LE00CA830 +/* 3D0D2C E00CA82C 241700C8 */ addiu $s7, $zero, 0xc8 +.LE00CA830: +/* 3D0D30 E00CA830 00131080 */ sll $v0, $s3, 2 +/* 3D0D34 E00CA834 02C28021 */ addu $s0, $s6, $v0 +/* 3D0D38 E00CA838 8E020230 */ lw $v0, 0x230($s0) +/* 3D0D3C E00CA83C 504000DF */ beql $v0, $zero, .LE00CABBC +/* 3D0D40 E00CA840 26940001 */ addiu $s4, $s4, 1 +/* 3D0D44 E00CA844 8FAB0060 */ lw $t3, 0x60($sp) +/* 3D0D48 E00CA848 2402FFFF */ addiu $v0, $zero, -1 +/* 3D0D4C E00CA84C 15620012 */ bne $t3, $v0, .LE00CA898 +/* 3D0D50 E00CA850 2402001D */ addiu $v0, $zero, 0x1d +/* 3D0D54 E00CA854 26630001 */ addiu $v1, $s3, 1 +/* 3D0D58 E00CA858 2862001E */ slti $v0, $v1, 0x1e +/* 3D0D5C E00CA85C 50400001 */ beql $v0, $zero, .LE00CA864 +/* 3D0D60 E00CA860 0000182D */ daddu $v1, $zero, $zero +.LE00CA864: +/* 3D0D64 E00CA864 00031080 */ sll $v0, $v1, 2 +/* 3D0D68 E00CA868 02C21021 */ addu $v0, $s6, $v0 +/* 3D0D6C E00CA86C AFB40060 */ sw $s4, 0x60($sp) +/* 3D0D70 E00CA870 C44C00C8 */ lwc1 $f12, 0xc8($v0) +/* 3D0D74 E00CA874 8E0600C8 */ lw $a2, 0xc8($s0) +/* 3D0D78 E00CA878 C6000050 */ lwc1 $f0, 0x50($s0) +/* 3D0D7C E00CA87C C44E0050 */ lwc1 $f14, 0x50($v0) +/* 3D0D80 E00CA880 46000007 */ neg.s $f0, $f0 +/* 3D0D84 E00CA884 44070000 */ mfc1 $a3, $f0 +/* 3D0D88 E00CA888 0C080148 */ jal func_E0200520 +/* 3D0D8C E00CA88C 46007387 */ neg.s $f14, $f14 +/* 3D0D90 E00CA890 08032A63 */ j .LE00CA98C +/* 3D0D94 E00CA894 46000787 */ neg.s $f30, $f0 +.LE00CA898: +/* 3D0D98 E00CA898 1282003C */ beq $s4, $v0, .LE00CA98C +/* 3D0D9C E00CA89C 26630001 */ addiu $v1, $s3, 1 +/* 3D0DA0 E00CA8A0 2862001E */ slti $v0, $v1, 0x1e +/* 3D0DA4 E00CA8A4 14400002 */ bnez $v0, .LE00CA8B0 +/* 3D0DA8 E00CA8A8 2671FFFF */ addiu $s1, $s3, -1 +/* 3D0DAC E00CA8AC 0000182D */ daddu $v1, $zero, $zero +.LE00CA8B0: +/* 3D0DB0 E00CA8B0 06220001 */ bltzl $s1, .LE00CA8B8 +/* 3D0DB4 E00CA8B4 2411001D */ addiu $s1, $zero, 0x1d +.LE00CA8B8: +/* 3D0DB8 E00CA8B8 00031080 */ sll $v0, $v1, 2 +/* 3D0DBC E00CA8BC 02C21021 */ addu $v0, $s6, $v0 +/* 3D0DC0 E00CA8C0 C44C00C8 */ lwc1 $f12, 0xc8($v0) +/* 3D0DC4 E00CA8C4 8E0600C8 */ lw $a2, 0xc8($s0) +/* 3D0DC8 E00CA8C8 C6000050 */ lwc1 $f0, 0x50($s0) +/* 3D0DCC E00CA8CC C44E0050 */ lwc1 $f14, 0x50($v0) +/* 3D0DD0 E00CA8D0 46000007 */ neg.s $f0, $f0 +/* 3D0DD4 E00CA8D4 44070000 */ mfc1 $a3, $f0 +/* 3D0DD8 E00CA8D8 0C080148 */ jal func_E0200520 +/* 3D0DDC E00CA8DC 46007387 */ neg.s $f14, $f14 +/* 3D0DE0 E00CA8E0 00111080 */ sll $v0, $s1, 2 +/* 3D0DE4 E00CA8E4 02C21021 */ addu $v0, $s6, $v0 +/* 3D0DE8 E00CA8E8 C60C00C8 */ lwc1 $f12, 0xc8($s0) +/* 3D0DEC E00CA8EC 8C4600C8 */ lw $a2, 0xc8($v0) +/* 3D0DF0 E00CA8F0 46000507 */ neg.s $f20, $f0 +/* 3D0DF4 E00CA8F4 C4400050 */ lwc1 $f0, 0x50($v0) +/* 3D0DF8 E00CA8F8 C60E0050 */ lwc1 $f14, 0x50($s0) +/* 3D0DFC E00CA8FC 46000007 */ neg.s $f0, $f0 +/* 3D0E00 E00CA900 44070000 */ mfc1 $a3, $f0 +/* 3D0E04 E00CA904 0C080148 */ jal func_E0200520 +/* 3D0E08 E00CA908 46007387 */ neg.s $f14, $f14 +/* 3D0E0C E00CA90C 46000307 */ neg.s $f12, $f0 +/* 3D0E10 E00CA910 46146081 */ sub.s $f2, $f12, $f20 +/* 3D0E14 E00CA914 3C014334 */ lui $at, 0x4334 +/* 3D0E18 E00CA918 44810000 */ mtc1 $at, $f0 +/* 3D0E1C E00CA91C 00000000 */ nop +/* 3D0E20 E00CA920 4602003C */ c.lt.s $f0, $f2 +/* 3D0E24 E00CA924 00000000 */ nop +/* 3D0E28 E00CA928 45000005 */ bc1f .LE00CA940 +/* 3D0E2C E00CA92C 00000000 */ nop +/* 3D0E30 E00CA930 3C0143B4 */ lui $at, 0x43b4 +/* 3D0E34 E00CA934 44813000 */ mtc1 $at, $f6 +/* 3D0E38 E00CA938 08032A5B */ j .LE00CA96C +/* 3D0E3C E00CA93C 4606A500 */ add.s $f20, $f20, $f6 +.LE00CA940: +/* 3D0E40 E00CA940 3C01C334 */ lui $at, 0xc334 +/* 3D0E44 E00CA944 44810000 */ mtc1 $at, $f0 +/* 3D0E48 E00CA948 00000000 */ nop +/* 3D0E4C E00CA94C 4600103C */ c.lt.s $f2, $f0 +/* 3D0E50 E00CA950 00000000 */ nop +/* 3D0E54 E00CA954 45020006 */ bc1fl .LE00CA970 +/* 3D0E58 E00CA958 460CA780 */ add.s $f30, $f20, $f12 +/* 3D0E5C E00CA95C 3C0143B4 */ lui $at, 0x43b4 +/* 3D0E60 E00CA960 44813000 */ mtc1 $at, $f6 +/* 3D0E64 E00CA964 00000000 */ nop +/* 3D0E68 E00CA968 46066300 */ add.s $f12, $f12, $f6 +.LE00CA96C: +/* 3D0E6C E00CA96C 460CA780 */ add.s $f30, $f20, $f12 +.LE00CA970: +/* 3D0E70 E00CA970 3C013FE0 */ lui $at, 0x3fe0 +/* 3D0E74 E00CA974 44811800 */ mtc1 $at, $f3 +/* 3D0E78 E00CA978 44801000 */ mtc1 $zero, $f2 +/* 3D0E7C E00CA97C 4600F021 */ cvt.d.s $f0, $f30 +/* 3D0E80 E00CA980 46220002 */ mul.d $f0, $f0, $f2 +/* 3D0E84 E00CA984 00000000 */ nop +/* 3D0E88 E00CA988 462007A0 */ cvt.s.d $f30, $f0 +.LE00CA98C: +/* 3D0E8C E00CA98C 00131080 */ sll $v0, $s3, 2 +/* 3D0E90 E00CA990 02C28021 */ addu $s0, $s6, $v0 +/* 3D0E94 E00CA994 8E0301B8 */ lw $v1, 0x1b8($s0) +/* 3D0E98 E00CA998 8FAB0050 */ lw $t3, 0x50($sp) +/* 3D0E9C E00CA99C C6180050 */ lwc1 $f24, 0x50($s0) +/* 3D0EA0 E00CA9A0 C61A00C8 */ lwc1 $f26, 0xc8($s0) +/* 3D0EA4 E00CA9A4 C61C0140 */ lwc1 $f28, 0x140($s0) +/* 3D0EA8 E00CA9A8 00031080 */ sll $v0, $v1, 2 +/* 3D0EAC E00CA9AC 00431021 */ addu $v0, $v0, $v1 +/* 3D0EB0 E00CA9B0 00021100 */ sll $v0, $v0, 4 +/* 3D0EB4 E00CA9B4 01621023 */ subu $v0, $t3, $v0 +/* 3D0EB8 E00CA9B8 00021080 */ sll $v0, $v0, 2 +/* 3D0EBC E00CA9BC 44826000 */ mtc1 $v0, $f12 +/* 3D0EC0 E00CA9C0 00000000 */ nop +/* 3D0EC4 E00CA9C4 46806320 */ cvt.s.w $f12, $f12 +/* 3D0EC8 E00CA9C8 0C080140 */ jal func_E0200500 +/* 3D0ECC E00CA9CC 01638823 */ subu $s1, $t3, $v1 +/* 3D0ED0 E00CA9D0 3C014040 */ lui $at, 0x4040 +/* 3D0ED4 E00CA9D4 44811000 */ mtc1 $at, $f2 +/* 3D0ED8 E00CA9D8 00000000 */ nop +/* 3D0EDC E00CA9DC 46020002 */ mul.s $f0, $f0, $f2 +/* 3D0EE0 E00CA9E0 00000000 */ nop +/* 3D0EE4 E00CA9E4 3C014180 */ lui $at, 0x4180 +/* 3D0EE8 E00CA9E8 44811000 */ mtc1 $at, $f2 +/* 3D0EEC E00CA9EC 00000000 */ nop +/* 3D0EF0 E00CA9F0 46020000 */ add.s $f0, $f0, $f2 +/* 3D0EF4 E00CA9F4 44911000 */ mtc1 $s1, $f2 +/* 3D0EF8 E00CA9F8 00000000 */ nop +/* 3D0EFC E00CA9FC 468010A0 */ cvt.s.w $f2, $f2 +/* 3D0F00 E00CAA00 46020580 */ add.s $f22, $f0, $f2 +/* 3D0F04 E00CAA04 C7A60058 */ lwc1 $f6, 0x58($sp) +/* 3D0F08 E00CAA08 8FAB0054 */ lw $t3, 0x54($sp) +/* 3D0F0C E00CAA0C 4606B582 */ mul.s $f22, $f22, $f6 +/* 3D0F10 E00CAA10 00000000 */ nop +/* 3D0F14 E00CAA14 C60002AC */ lwc1 $f0, 0x2ac($s0) +/* 3D0F18 E00CAA18 3C0141C0 */ lui $at, 0x41c0 +/* 3D0F1C E00CAA1C 44813000 */ mtc1 $at, $f6 +/* 3D0F20 E00CAA20 00000000 */ nop +/* 3D0F24 E00CAA24 46060002 */ mul.s $f0, $f0, $f6 +/* 3D0F28 E00CAA28 00000000 */ nop +/* 3D0F2C E00CAA2C C7A20064 */ lwc1 $f2, 0x64($sp) +/* 3D0F30 E00CAA30 468010A0 */ cvt.s.w $f2, $f2 +/* 3D0F34 E00CAA34 46020000 */ add.s $f0, $f0, $f2 +/* 3D0F38 E00CAA38 4600018D */ trunc.w.s $f6, $f0 +/* 3D0F3C E00CAA3C 44153000 */ mfc1 $s5, $f6 +/* 3D0F40 E00CAA40 241300FF */ addiu $s3, $zero, 0xff +/* 3D0F44 E00CAA44 0260802D */ daddu $s0, $s3, $zero +/* 3D0F48 E00CAA48 00111040 */ sll $v0, $s1, 1 +/* 3D0F4C E00CAA4C 00511021 */ addu $v0, $v0, $s1 +/* 3D0F50 E00CAA50 000210C0 */ sll $v0, $v0, 3 +/* 3D0F54 E00CAA54 00511021 */ addu $v0, $v0, $s1 +/* 3D0F58 E00CAA58 00021080 */ sll $v0, $v0, 2 +/* 3D0F5C E00CAA5C 02028823 */ subu $s1, $s0, $v0 +/* 3D0F60 E00CAA60 06210022 */ bgez $s1, .LE00CAAEC +/* 3D0F64 E00CAA64 00000000 */ nop +/* 3D0F68 E00CAA68 44910000 */ mtc1 $s1, $f0 +/* 3D0F6C E00CAA6C 00000000 */ nop +/* 3D0F70 E00CAA70 46800020 */ cvt.s.w $f0, $f0 +/* 3D0F74 E00CAA74 3C01E00D */ lui $at, %hi(D_E00CACC0) +/* 3D0F78 E00CAA78 D422ACC0 */ ldc1 $f2, %lo(D_E00CACC0)($at) +/* 3D0F7C E00CAA7C 46000021 */ cvt.d.s $f0, $f0 +/* 3D0F80 E00CAA80 46220002 */ mul.d $f0, $f0, $f2 +/* 3D0F84 E00CAA84 00000000 */ nop +/* 3D0F88 E00CAA88 3C01E00D */ lui $at, %hi(D_E00CACC8) +/* 3D0F8C E00CAA8C D426ACC8 */ ldc1 $f6, %lo(D_E00CACC8)($at) +/* 3D0F90 E00CAA90 46260000 */ add.d $f0, $f0, $f6 +/* 3D0F94 E00CAA94 4620018D */ trunc.w.d $f6, $f0 +/* 3D0F98 E00CAA98 44103000 */ mfc1 $s0, $f6 +/* 3D0F9C E00CAA9C 00000000 */ nop +/* 3D0FA0 E00CAAA0 06010012 */ bgez $s0, .LE00CAAEC +/* 3D0FA4 E00CAAA4 0000882D */ daddu $s1, $zero, $zero +/* 3D0FA8 E00CAAA8 44900000 */ mtc1 $s0, $f0 +/* 3D0FAC E00CAAAC 00000000 */ nop +/* 3D0FB0 E00CAAB0 46800020 */ cvt.s.w $f0, $f0 +/* 3D0FB4 E00CAAB4 3C01E00D */ lui $at, %hi(D_E00CACD0) +/* 3D0FB8 E00CAAB8 D422ACD0 */ ldc1 $f2, %lo(D_E00CACD0)($at) +/* 3D0FBC E00CAABC 46000021 */ cvt.d.s $f0, $f0 +/* 3D0FC0 E00CAAC0 46220002 */ mul.d $f0, $f0, $f2 +/* 3D0FC4 E00CAAC4 00000000 */ nop +/* 3D0FC8 E00CAAC8 3C01E00D */ lui $at, %hi(D_E00CACD8) +/* 3D0FCC E00CAACC D426ACD8 */ ldc1 $f6, %lo(D_E00CACD8)($at) +/* 3D0FD0 E00CAAD0 46260000 */ add.d $f0, $f0, $f6 +/* 3D0FD4 E00CAAD4 4620018D */ trunc.w.d $f6, $f0 +/* 3D0FD8 E00CAAD8 44133000 */ mfc1 $s3, $f6 +/* 3D0FDC E00CAADC 00000000 */ nop +/* 3D0FE0 E00CAAE0 06610002 */ bgez $s3, .LE00CAAEC +/* 3D0FE4 E00CAAE4 0220802D */ daddu $s0, $s1, $zero +/* 3D0FE8 E00CAAE8 0220982D */ daddu $s3, $s1, $zero +.LE00CAAEC: +/* 3D0FEC E00CAAEC 0C080140 */ jal func_E0200500 +/* 3D0FF0 E00CAAF0 4600F306 */ mov.s $f12, $f30 +/* 3D0FF4 E00CAAF4 4600B502 */ mul.s $f20, $f22, $f0 +/* 3D0FF8 E00CAAF8 00000000 */ nop +/* 3D0FFC E00CAAFC 0C080144 */ jal func_E0200510 +/* 3D1000 E00CAB00 4600F306 */ mov.s $f12, $f30 +/* 3D1004 E00CAB04 4600B002 */ mul.s $f0, $f22, $f0 +/* 3D1008 E00CAB08 00000000 */ nop +/* 3D100C E00CAB0C 24020400 */ addiu $v0, $zero, 0x400 +/* 3D1010 E00CAB10 8FAB0068 */ lw $t3, 0x68($sp) +/* 3D1014 E00CAB14 44803000 */ mtc1 $zero, $f6 +/* 3D1018 E00CAB18 256B00B4 */ addiu $t3, $t3, 0xb4 +/* 3D101C E00CAB1C 4606E080 */ add.s $f2, $f28, $f6 +/* 3D1020 E00CAB20 AFAB0068 */ sw $t3, 0x68($sp) +/* 3D1024 E00CAB24 A6550008 */ sh $s5, 8($s2) +/* 3D1028 E00CAB28 A642000A */ sh $v0, 0xa($s2) +/* 3D102C E00CAB2C 4614C100 */ add.s $f4, $f24, $f20 +/* 3D1030 E00CAB30 A253000C */ sb $s3, 0xc($s2) +/* 3D1034 E00CAB34 4600118D */ trunc.w.s $f6, $f2 +/* 3D1038 E00CAB38 44033000 */ mfc1 $v1, $f6 +/* 3D103C E00CAB3C 4600D080 */ add.s $f2, $f26, $f0 +/* 3D1040 E00CAB40 A250000D */ sb $s0, 0xd($s2) +/* 3D1044 E00CAB44 A251000E */ sb $s1, 0xe($s2) +/* 3D1048 E00CAB48 4614C501 */ sub.s $f20, $f24, $f20 +/* 3D104C E00CAB4C A257000F */ sb $s7, 0xf($s2) +/* 3D1050 E00CAB50 A6430004 */ sh $v1, 4($s2) +/* 3D1054 E00CAB54 4600D001 */ sub.s $f0, $f26, $f0 +/* 3D1058 E00CAB58 4600218D */ trunc.w.s $f6, $f4 +/* 3D105C E00CAB5C 44023000 */ mfc1 $v0, $f6 +/* 3D1060 E00CAB60 00000000 */ nop +/* 3D1064 E00CAB64 A6420000 */ sh $v0, ($s2) +/* 3D1068 E00CAB68 4600118D */ trunc.w.s $f6, $f2 +/* 3D106C E00CAB6C 44023000 */ mfc1 $v0, $f6 +/* 3D1070 E00CAB70 00000000 */ nop +/* 3D1074 E00CAB74 A6420002 */ sh $v0, 2($s2) +/* 3D1078 E00CAB78 26520010 */ addiu $s2, $s2, 0x10 +/* 3D107C E00CAB7C 4600A18D */ trunc.w.s $f6, $f20 +/* 3D1080 E00CAB80 44023000 */ mfc1 $v0, $f6 +/* 3D1084 E00CAB84 00000000 */ nop +/* 3D1088 E00CAB88 A6420000 */ sh $v0, ($s2) +/* 3D108C E00CAB8C 4600018D */ trunc.w.s $f6, $f0 +/* 3D1090 E00CAB90 44023000 */ mfc1 $v0, $f6 +/* 3D1094 E00CAB94 00000000 */ nop +/* 3D1098 E00CAB98 A6420002 */ sh $v0, 2($s2) +/* 3D109C E00CAB9C A6430004 */ sh $v1, 4($s2) +/* 3D10A0 E00CABA0 A6550008 */ sh $s5, 8($s2) +/* 3D10A4 E00CABA4 A640000A */ sh $zero, 0xa($s2) +/* 3D10A8 E00CABA8 A253000C */ sb $s3, 0xc($s2) +/* 3D10AC E00CABAC A250000D */ sb $s0, 0xd($s2) +/* 3D10B0 E00CABB0 A251000E */ sb $s1, 0xe($s2) +/* 3D10B4 E00CABB4 A257000F */ sb $s7, 0xf($s2) +/* 3D10B8 E00CABB8 26940001 */ addiu $s4, $s4, 1 +.LE00CABBC: +/* 3D10BC E00CABBC 2A82001E */ slti $v0, $s4, 0x1e +/* 3D10C0 E00CABC0 1440FEEF */ bnez $v0, .LE00CA780 +/* 3D10C4 E00CABC4 00000000 */ nop +/* 3D10C8 E00CABC8 8FB40060 */ lw $s4, 0x60($sp) +/* 3D10CC E00CABCC 2A82001D */ slti $v0, $s4, 0x1d +/* 3D10D0 E00CABD0 10400019 */ beqz $v0, .LE00CAC38 +/* 3D10D4 E00CABD4 3C050002 */ lui $a1, 2 +/* 3D10D8 E00CABD8 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 3D10DC E00CABDC 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 3D10E0 E00CABE0 3C080100 */ lui $t0, 0x100 +/* 3D10E4 E00CABE4 35084008 */ ori $t0, $t0, 0x4008 +/* 3D10E8 E00CABE8 3C070600 */ lui $a3, 0x600 +/* 3D10EC E00CABEC 34E70402 */ ori $a3, $a3, 0x402 +/* 3D10F0 E00CABF0 34A50406 */ ori $a1, $a1, 0x406 +/* 3D10F4 E00CABF4 8FAB005C */ lw $t3, 0x5c($sp) +/* 3D10F8 E00CABF8 00141140 */ sll $v0, $s4, 5 +/* 3D10FC E00CABFC 004B3021 */ addu $a2, $v0, $t3 +.LE00CAC00: +/* 3D1100 E00CAC00 8C830000 */ lw $v1, ($a0) +/* 3D1104 E00CAC04 26940001 */ addiu $s4, $s4, 1 +/* 3D1108 E00CAC08 0060102D */ daddu $v0, $v1, $zero +/* 3D110C E00CAC0C 24630008 */ addiu $v1, $v1, 8 +/* 3D1110 E00CAC10 AC460004 */ sw $a2, 4($v0) +/* 3D1114 E00CAC14 24C60020 */ addiu $a2, $a2, 0x20 +/* 3D1118 E00CAC18 AC830000 */ sw $v1, ($a0) +/* 3D111C E00CAC1C AC480000 */ sw $t0, ($v0) +/* 3D1120 E00CAC20 24620008 */ addiu $v0, $v1, 8 +/* 3D1124 E00CAC24 AC820000 */ sw $v0, ($a0) +/* 3D1128 E00CAC28 2A82001D */ slti $v0, $s4, 0x1d +/* 3D112C E00CAC2C AC670000 */ sw $a3, ($v1) +/* 3D1130 E00CAC30 1440FFF3 */ bnez $v0, .LE00CAC00 +/* 3D1134 E00CAC34 AC650004 */ sw $a1, 4($v1) +.LE00CAC38: +/* 3D1138 E00CAC38 3C05D838 */ lui $a1, 0xd838 +/* 3D113C E00CAC3C 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3D1140 E00CAC40 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3D1144 E00CAC44 8C620000 */ lw $v0, ($v1) +/* 3D1148 E00CAC48 34A50002 */ ori $a1, $a1, 2 +/* 3D114C E00CAC4C 0040202D */ daddu $a0, $v0, $zero +/* 3D1150 E00CAC50 24420008 */ addiu $v0, $v0, 8 +/* 3D1154 E00CAC54 AC620000 */ sw $v0, ($v1) +/* 3D1158 E00CAC58 24020040 */ addiu $v0, $zero, 0x40 +/* 3D115C E00CAC5C AC850000 */ sw $a1, ($a0) +/* 3D1160 E00CAC60 AC820004 */ sw $v0, 4($a0) +/* 3D1164 E00CAC64 8FBF0094 */ lw $ra, 0x94($sp) +/* 3D1168 E00CAC68 8FBE0090 */ lw $fp, 0x90($sp) +/* 3D116C E00CAC6C 8FB7008C */ lw $s7, 0x8c($sp) +/* 3D1170 E00CAC70 8FB60088 */ lw $s6, 0x88($sp) +/* 3D1174 E00CAC74 8FB50084 */ lw $s5, 0x84($sp) +/* 3D1178 E00CAC78 8FB40080 */ lw $s4, 0x80($sp) +/* 3D117C E00CAC7C 8FB3007C */ lw $s3, 0x7c($sp) +/* 3D1180 E00CAC80 8FB20078 */ lw $s2, 0x78($sp) +/* 3D1184 E00CAC84 8FB10074 */ lw $s1, 0x74($sp) +/* 3D1188 E00CAC88 8FB00070 */ lw $s0, 0x70($sp) +/* 3D118C E00CAC8C D7BE00C0 */ ldc1 $f30, 0xc0($sp) +/* 3D1190 E00CAC90 D7BC00B8 */ ldc1 $f28, 0xb8($sp) +/* 3D1194 E00CAC94 D7BA00B0 */ ldc1 $f26, 0xb0($sp) +/* 3D1198 E00CAC98 D7B800A8 */ ldc1 $f24, 0xa8($sp) +/* 3D119C E00CAC9C D7B600A0 */ ldc1 $f22, 0xa0($sp) +/* 3D11A0 E00CACA0 D7B40098 */ ldc1 $f20, 0x98($sp) +/* 3D11A4 E00CACA4 03E00008 */ jr $ra +/* 3D11A8 E00CACA8 27BD00C8 */ addiu $sp, $sp, 0xc8 +/* 3D11AC E00CACAC 00000000 */ nop diff --git a/asm/nonmatchings/code_3D1690/func_E00CC000.s b/asm/nonmatchings/code_3D1690/func_E00CC000.s new file mode 100644 index 0000000000..c25582b536 --- /dev/null +++ b/asm/nonmatchings/code_3D1690/func_E00CC000.s @@ -0,0 +1,157 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CC000 +/* 3D1690 E00CC000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 3D1694 E00CC004 F7B40048 */ sdc1 $f20, 0x48($sp) +/* 3D1698 E00CC008 4485A000 */ mtc1 $a1, $f20 +/* 3D169C E00CC00C F7B60050 */ sdc1 $f22, 0x50($sp) +/* 3D16A0 E00CC010 4486B000 */ mtc1 $a2, $f22 +/* 3D16A4 E00CC014 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D16A8 E00CC018 0080882D */ daddu $s1, $a0, $zero +/* 3D16AC E00CC01C F7BC0068 */ sdc1 $f28, 0x68($sp) +/* 3D16B0 E00CC020 4487E000 */ mtc1 $a3, $f28 +/* 3D16B4 E00CC024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D16B8 E00CC028 AFB00028 */ sw $s0, 0x28($sp) +/* 3D16BC E00CC02C 8FB00084 */ lw $s0, 0x84($sp) +/* 3D16C0 E00CC030 3C02E00D */ lui $v0, %hi(D_E00CC250) +/* 3D16C4 E00CC034 2442C250 */ addiu $v0, $v0, %lo(D_E00CC250) +/* 3D16C8 E00CC038 AFA20018 */ sw $v0, 0x18($sp) +/* 3D16CC E00CC03C 3C02E00D */ lui $v0, %hi(D_E00CC258) +/* 3D16D0 E00CC040 2442C258 */ addiu $v0, $v0, %lo(D_E00CC258) +/* 3D16D4 E00CC044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D16D8 E00CC048 3C02E00D */ lui $v0, %hi(D_E00CC980) +/* 3D16DC E00CC04C 2442C980 */ addiu $v0, $v0, %lo(D_E00CC980) +/* 3D16E0 E00CC050 AFA20020 */ sw $v0, 0x20($sp) +/* 3D16E4 E00CC054 24020066 */ addiu $v0, $zero, 0x66 +/* 3D16E8 E00CC058 AFBF0040 */ sw $ra, 0x40($sp) +/* 3D16EC E00CC05C AFB5003C */ sw $s5, 0x3c($sp) +/* 3D16F0 E00CC060 AFB40038 */ sw $s4, 0x38($sp) +/* 3D16F4 E00CC064 AFB30034 */ sw $s3, 0x34($sp) +/* 3D16F8 E00CC068 AFB20030 */ sw $s2, 0x30($sp) +/* 3D16FC E00CC06C F7BA0060 */ sdc1 $f26, 0x60($sp) +/* 3D1700 E00CC070 F7B80058 */ sdc1 $f24, 0x58($sp) +/* 3D1704 E00CC074 AFA00010 */ sw $zero, 0x10($sp) +/* 3D1708 E00CC078 AFA00024 */ sw $zero, 0x24($sp) +/* 3D170C E00CC07C 0C080124 */ jal func_E0200490 +/* 3D1710 E00CC080 AFA20014 */ sw $v0, 0x14($sp) +/* 3D1714 E00CC084 24040798 */ addiu $a0, $zero, 0x798 +/* 3D1718 E00CC088 24030001 */ addiu $v1, $zero, 1 +/* 3D171C E00CC08C 0040A02D */ daddu $s4, $v0, $zero +/* 3D1720 E00CC090 0C08012C */ jal func_E02004B0 +/* 3D1724 E00CC094 AE830008 */ sw $v1, 8($s4) +/* 3D1728 E00CC098 0040182D */ daddu $v1, $v0, $zero +/* 3D172C E00CC09C 14600003 */ bnez $v1, .LE00CC0AC +/* 3D1730 E00CC0A0 AE82000C */ sw $v0, 0xc($s4) +.LE00CC0A4: +/* 3D1734 E00CC0A4 08033029 */ j .LE00CC0A4 +/* 3D1738 E00CC0A8 00000000 */ nop +.LE00CC0AC: +/* 3D173C E00CC0AC AC710000 */ sw $s1, ($v1) +/* 3D1740 E00CC0B0 1E000004 */ bgtz $s0, .LE00CC0C4 +/* 3D1744 E00CC0B4 AC600014 */ sw $zero, 0x14($v1) +/* 3D1748 E00CC0B8 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D174C E00CC0BC 08033032 */ j .LE00CC0C8 +/* 3D1750 E00CC0C0 AC620010 */ sw $v0, 0x10($v1) +.LE00CC0C4: +/* 3D1754 E00CC0C4 AC700010 */ sw $s0, 0x10($v1) +.LE00CC0C8: +/* 3D1758 E00CC0C8 0000902D */ daddu $s2, $zero, $zero +/* 3D175C E00CC0CC 3C1551EB */ lui $s5, 0x51eb +/* 3D1760 E00CC0D0 36B5851F */ ori $s5, $s5, 0x851f +/* 3D1764 E00CC0D4 24130001 */ addiu $s3, $zero, 1 +/* 3D1768 E00CC0D8 0060802D */ daddu $s0, $v1, $zero +/* 3D176C E00CC0DC 0240882D */ daddu $s1, $s2, $zero +/* 3D1770 E00CC0E0 3C014170 */ lui $at, 0x4170 +/* 3D1774 E00CC0E4 4481D000 */ mtc1 $at, $f26 +/* 3D1778 E00CC0E8 3C0142F0 */ lui $at, 0x42f0 +/* 3D177C E00CC0EC 4481C000 */ mtc1 $at, $f24 +/* 3D1780 E00CC0F0 240200FF */ addiu $v0, $zero, 0xff +/* 3D1784 E00CC0F4 AE020024 */ sw $v0, 0x24($s0) +/* 3D1788 E00CC0F8 E6140004 */ swc1 $f20, 4($s0) +/* 3D178C E00CC0FC E6160008 */ swc1 $f22, 8($s0) +/* 3D1790 E00CC100 E61C000C */ swc1 $f28, 0xc($s0) +/* 3D1794 E00CC104 C7A00080 */ lwc1 $f0, 0x80($sp) +/* 3D1798 E00CC108 24020046 */ addiu $v0, $zero, 0x46 +/* 3D179C E00CC10C AE020018 */ sw $v0, 0x18($s0) +/* 3D17A0 E00CC110 240200B4 */ addiu $v0, $zero, 0xb4 +/* 3D17A4 E00CC114 AE02001C */ sw $v0, 0x1c($s0) +/* 3D17A8 E00CC118 24020078 */ addiu $v0, $zero, 0x78 +/* 3D17AC E00CC11C AE020020 */ sw $v0, 0x20($s0) +/* 3D17B0 E00CC120 E6000028 */ swc1 $f0, 0x28($s0) +.LE00CC124: +/* 3D17B4 E00CC124 02350018 */ mult $s1, $s5 +/* 3D17B8 E00CC128 00111FC3 */ sra $v1, $s1, 0x1f +/* 3D17BC E00CC12C 00004010 */ mfhi $t0 +/* 3D17C0 E00CC130 000810C3 */ sra $v0, $t0, 3 +/* 3D17C4 E00CC134 00431023 */ subu $v0, $v0, $v1 +/* 3D17C8 E00CC138 4482A000 */ mtc1 $v0, $f20 +/* 3D17CC E00CC13C 00000000 */ nop +/* 3D17D0 E00CC140 4680A520 */ cvt.s.w $f20, $f20 +/* 3D17D4 E00CC144 0C080140 */ jal func_E0200500 +/* 3D17D8 E00CC148 4600A306 */ mov.s $f12, $f20 +/* 3D17DC E00CC14C 4600A306 */ mov.s $f12, $f20 +/* 3D17E0 E00CC150 0C080144 */ jal func_E0200510 +/* 3D17E4 E00CC154 46000506 */ mov.s $f20, $f0 +/* 3D17E8 E00CC158 24040167 */ addiu $a0, $zero, 0x167 +/* 3D17EC E00CC15C 0C080138 */ jal func_E02004E0 +/* 3D17F0 E00CC160 46000586 */ mov.s $f22, $f0 +/* 3D17F4 E00CC164 461AA082 */ mul.s $f2, $f20, $f26 +/* 3D17F8 E00CC168 00000000 */ nop +/* 3D17FC E00CC16C 461AB102 */ mul.s $f4, $f22, $f26 +/* 3D1800 E00CC170 00000000 */ nop +/* 3D1804 E00CC174 2442FF4C */ addiu $v0, $v0, -0xb4 +/* 3D1808 E00CC178 44820000 */ mtc1 $v0, $f0 +/* 3D180C E00CC17C 00000000 */ nop +/* 3D1810 E00CC180 46800020 */ cvt.s.w $f0, $f0 +/* 3D1814 E00CC184 3C03E00D */ lui $v1, %hi(D_E00CCE4C) +/* 3D1818 E00CC188 2463CE4C */ addiu $v1, $v1, %lo(D_E00CCE4C) +/* 3D181C E00CC18C 02431821 */ addu $v1, $s2, $v1 +/* 3D1820 E00CC190 4618A502 */ mul.s $f20, $f20, $f24 +/* 3D1824 E00CC194 00000000 */ nop +/* 3D1828 E00CC198 26310438 */ addiu $s1, $s1, 0x438 +/* 3D182C E00CC19C E6000478 */ swc1 $f0, 0x478($s0) +/* 3D1830 E00CC1A0 E6020284 */ swc1 $f2, 0x284($s0) +/* 3D1834 E00CC1A4 80620000 */ lb $v0, ($v1) +/* 3D1838 E00CC1A8 4618B582 */ mul.s $f22, $f22, $f24 +/* 3D183C E00CC1AC 00000000 */ nop +/* 3D1840 E00CC1B0 E604034C */ swc1 $f4, 0x34c($s0) +/* 3D1844 E00CC1B4 E6140158 */ swc1 $f20, 0x158($s0) +/* 3D1848 E00CC1B8 2442000A */ addiu $v0, $v0, 0xa +/* 3D184C E00CC1BC 44820000 */ mtc1 $v0, $f0 +/* 3D1850 E00CC1C0 00000000 */ nop +/* 3D1854 E00CC1C4 46800020 */ cvt.s.w $f0, $f0 +/* 3D1858 E00CC1C8 E60002E8 */ swc1 $f0, 0x2e8($s0) +/* 3D185C E00CC1CC 80620000 */ lb $v0, ($v1) +/* 3D1860 E00CC1D0 26520001 */ addiu $s2, $s2, 1 +/* 3D1864 E00CC1D4 AE13066C */ sw $s3, 0x66c($s0) +/* 3D1868 E00CC1D8 26730002 */ addiu $s3, $s3, 2 +/* 3D186C E00CC1DC E6160220 */ swc1 $f22, 0x220($s0) +/* 3D1870 E00CC1E0 AE0005A4 */ sw $zero, 0x5a4($s0) +/* 3D1874 E00CC1E4 AE0006D0 */ sw $zero, 0x6d0($s0) +/* 3D1878 E00CC1E8 AE000734 */ sw $zero, 0x734($s0) +/* 3D187C E00CC1EC AE0004DC */ sw $zero, 0x4dc($s0) +/* 3D1880 E00CC1F0 000210C0 */ sll $v0, $v0, 3 +/* 3D1884 E00CC1F4 24420028 */ addiu $v0, $v0, 0x28 +/* 3D1888 E00CC1F8 44820000 */ mtc1 $v0, $f0 +/* 3D188C E00CC1FC 00000000 */ nop +/* 3D1890 E00CC200 46800020 */ cvt.s.w $f0, $f0 +/* 3D1894 E00CC204 E60001BC */ swc1 $f0, 0x1bc($s0) +/* 3D1898 E00CC208 2A420019 */ slti $v0, $s2, 0x19 +/* 3D189C E00CC20C 1440FFC5 */ bnez $v0, .LE00CC124 +/* 3D18A0 E00CC210 26100004 */ addiu $s0, $s0, 4 +/* 3D18A4 E00CC214 0280102D */ daddu $v0, $s4, $zero +/* 3D18A8 E00CC218 8FBF0040 */ lw $ra, 0x40($sp) +/* 3D18AC E00CC21C 8FB5003C */ lw $s5, 0x3c($sp) +/* 3D18B0 E00CC220 8FB40038 */ lw $s4, 0x38($sp) +/* 3D18B4 E00CC224 8FB30034 */ lw $s3, 0x34($sp) +/* 3D18B8 E00CC228 8FB20030 */ lw $s2, 0x30($sp) +/* 3D18BC E00CC22C 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D18C0 E00CC230 8FB00028 */ lw $s0, 0x28($sp) +/* 3D18C4 E00CC234 D7BC0068 */ ldc1 $f28, 0x68($sp) +/* 3D18C8 E00CC238 D7BA0060 */ ldc1 $f26, 0x60($sp) +/* 3D18CC E00CC23C D7B80058 */ ldc1 $f24, 0x58($sp) +/* 3D18D0 E00CC240 D7B60050 */ ldc1 $f22, 0x50($sp) +/* 3D18D4 E00CC244 D7B40048 */ ldc1 $f20, 0x48($sp) +/* 3D18D8 E00CC248 03E00008 */ jr $ra +/* 3D18DC E00CC24C 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_3D1690/func_E00CC250.s b/asm/nonmatchings/code_3D1690/func_E00CC250.s new file mode 100644 index 0000000000..f1ee90e656 --- /dev/null +++ b/asm/nonmatchings/code_3D1690/func_E00CC250.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CC250 +/* 3D18E0 E00CC250 03E00008 */ jr $ra +/* 3D18E4 E00CC254 00000000 */ nop diff --git a/asm/nonmatchings/code_3D1690/func_E00CC258.s b/asm/nonmatchings/code_3D1690/func_E00CC258.s new file mode 100644 index 0000000000..2cea8fa804 --- /dev/null +++ b/asm/nonmatchings/code_3D1690/func_E00CC258.s @@ -0,0 +1,474 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CC258 +/* 3D18E8 E00CC258 27BDFF10 */ addiu $sp, $sp, -0xf0 +/* 3D18EC E00CC25C AFBF00BC */ sw $ra, 0xbc($sp) +/* 3D18F0 E00CC260 AFBE00B8 */ sw $fp, 0xb8($sp) +/* 3D18F4 E00CC264 AFB700B4 */ sw $s7, 0xb4($sp) +/* 3D18F8 E00CC268 AFB600B0 */ sw $s6, 0xb0($sp) +/* 3D18FC E00CC26C AFB500AC */ sw $s5, 0xac($sp) +/* 3D1900 E00CC270 AFB400A8 */ sw $s4, 0xa8($sp) +/* 3D1904 E00CC274 AFB300A4 */ sw $s3, 0xa4($sp) +/* 3D1908 E00CC278 AFB200A0 */ sw $s2, 0xa0($sp) +/* 3D190C E00CC27C AFB1009C */ sw $s1, 0x9c($sp) +/* 3D1910 E00CC280 AFB00098 */ sw $s0, 0x98($sp) +/* 3D1914 E00CC284 F7BE00E8 */ sdc1 $f30, 0xe8($sp) +/* 3D1918 E00CC288 F7BC00E0 */ sdc1 $f28, 0xe0($sp) +/* 3D191C E00CC28C F7BA00D8 */ sdc1 $f26, 0xd8($sp) +/* 3D1920 E00CC290 F7B800D0 */ sdc1 $f24, 0xd0($sp) +/* 3D1924 E00CC294 F7B600C8 */ sdc1 $f22, 0xc8($sp) +/* 3D1928 E00CC298 F7B400C0 */ sdc1 $f20, 0xc0($sp) +/* 3D192C E00CC29C 8C830000 */ lw $v1, ($a0) +/* 3D1930 E00CC2A0 8C92000C */ lw $s2, 0xc($a0) +/* 3D1934 E00CC2A4 30620010 */ andi $v0, $v1, 0x10 +/* 3D1938 E00CC2A8 8E5E0000 */ lw $fp, ($s2) +/* 3D193C E00CC2AC 10400005 */ beqz $v0, .LE00CC2C4 +/* 3D1940 E00CC2B0 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D1944 E00CC2B4 00621024 */ and $v0, $v1, $v0 +/* 3D1948 E00CC2B8 AC820000 */ sw $v0, ($a0) +/* 3D194C E00CC2BC 24020040 */ addiu $v0, $zero, 0x40 +/* 3D1950 E00CC2C0 AE420010 */ sw $v0, 0x10($s2) +.LE00CC2C4: +/* 3D1954 E00CC2C4 8E430010 */ lw $v1, 0x10($s2) +/* 3D1958 E00CC2C8 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3D195C E00CC2CC 10400002 */ beqz $v0, .LE00CC2D8 +/* 3D1960 E00CC2D0 2462FFFF */ addiu $v0, $v1, -1 +/* 3D1964 E00CC2D4 AE420010 */ sw $v0, 0x10($s2) +.LE00CC2D8: +/* 3D1968 E00CC2D8 8E420014 */ lw $v0, 0x14($s2) +/* 3D196C E00CC2DC 8E430010 */ lw $v1, 0x10($s2) +/* 3D1970 E00CC2E0 24420001 */ addiu $v0, $v0, 1 +/* 3D1974 E00CC2E4 04610005 */ bgez $v1, .LE00CC2FC +/* 3D1978 E00CC2E8 AE420014 */ sw $v0, 0x14($s2) +/* 3D197C E00CC2EC 0C080128 */ jal func_E02004A0 +/* 3D1980 E00CC2F0 00000000 */ nop +/* 3D1984 E00CC2F4 0803324E */ j .LE00CC938 +/* 3D1988 E00CC2F8 00000000 */ nop +.LE00CC2FC: +/* 3D198C E00CC2FC 0040B02D */ daddu $s6, $v0, $zero +/* 3D1990 E00CC300 0000982D */ daddu $s3, $zero, $zero +/* 3D1994 E00CC304 3C17E00D */ lui $s7, %hi(D_E00CCDD8) +/* 3D1998 E00CC308 26F7CDD8 */ addiu $s7, $s7, %lo(D_E00CCDD8) +/* 3D199C E00CC30C 0240882D */ daddu $s1, $s2, $zero +/* 3D19A0 E00CC310 0260A82D */ daddu $s5, $s3, $zero +/* 3D19A4 E00CC314 0260A02D */ daddu $s4, $s3, $zero +/* 3D19A8 E00CC318 4480F000 */ mtc1 $zero, $f30 +/* 3D19AC E00CC31C 3C01E00D */ lui $at, %hi(D_E00CCE70) +/* 3D19B0 E00CC320 D43ACE70 */ ldc1 $f26, %lo(D_E00CCE70)($at) +/* 3D19B4 E00CC324 3C013F80 */ lui $at, 0x3f80 +/* 3D19B8 E00CC328 4481E000 */ mtc1 $at, $f28 +/* 3D19BC E00CC32C 3C013FE0 */ lui $at, 0x3fe0 +/* 3D19C0 E00CC330 4481C800 */ mtc1 $at, $f25 +/* 3D19C4 E00CC334 4480C000 */ mtc1 $zero, $f24 +.LE00CC338: +/* 3D19C8 E00CC338 3C029249 */ lui $v0, 0x9249 +/* 3D19CC E00CC33C 34422493 */ ori $v0, $v0, 0x2493 +/* 3D19D0 E00CC340 02C20018 */ mult $s6, $v0 +/* 3D19D4 E00CC344 001617C3 */ sra $v0, $s6, 0x1f +/* 3D19D8 E00CC348 3C013C23 */ lui $at, 0x3c23 +/* 3D19DC E00CC34C 3421D70A */ ori $at, $at, 0xd70a +/* 3D19E0 E00CC350 44811000 */ mtc1 $at, $f2 +/* 3D19E4 E00CC354 00004010 */ mfhi $t0 +/* 3D19E8 E00CC358 01161821 */ addu $v1, $t0, $s6 +/* 3D19EC E00CC35C 00031883 */ sra $v1, $v1, 2 +/* 3D19F0 E00CC360 00621823 */ subu $v1, $v1, $v0 +/* 3D19F4 E00CC364 000310C0 */ sll $v0, $v1, 3 +/* 3D19F8 E00CC368 00431023 */ subu $v0, $v0, $v1 +/* 3D19FC E00CC36C 02C21023 */ subu $v0, $s6, $v0 +/* 3D1A00 E00CC370 3C08E00D */ lui $t0, %hi(D_E00CCDD0) +/* 3D1A04 E00CC374 2508CDD0 */ addiu $t0, $t0, %lo(D_E00CCDD0) +/* 3D1A08 E00CC378 00481021 */ addu $v0, $v0, $t0 +/* 3D1A0C E00CC37C 90420000 */ lbu $v0, ($v0) +/* 3D1A10 E00CC380 C6260158 */ lwc1 $f6, 0x158($s1) +/* 3D1A14 E00CC384 44820000 */ mtc1 $v0, $f0 +/* 3D1A18 E00CC388 00000000 */ nop +/* 3D1A1C E00CC38C 46800020 */ cvt.s.w $f0, $f0 +/* 3D1A20 E00CC390 46020002 */ mul.s $f0, $f0, $f2 +/* 3D1A24 E00CC394 00000000 */ nop +/* 3D1A28 E00CC398 C62801BC */ lwc1 $f8, 0x1bc($s1) +/* 3D1A2C E00CC39C C62A0220 */ lwc1 $f10, 0x220($s1) +/* 3D1A30 E00CC3A0 3C014000 */ lui $at, 0x4000 +/* 3D1A34 E00CC3A4 44811000 */ mtc1 $at, $f2 +/* 3D1A38 E00CC3A8 8E2306D0 */ lw $v1, 0x6d0($s1) +/* 3D1A3C E00CC3AC 46001081 */ sub.s $f2, $f2, $f0 +/* 3D1A40 E00CC3B0 2C620015 */ sltiu $v0, $v1, 0x15 +/* 3D1A44 E00CC3B4 E6200414 */ swc1 $f0, 0x414($s1) +/* 3D1A48 E00CC3B8 10400159 */ beqz $v0, .LE00CC920 +/* 3D1A4C E00CC3BC E62203B0 */ swc1 $f2, 0x3b0($s1) +/* 3D1A50 E00CC3C0 00031080 */ sll $v0, $v1, 2 +/* 3D1A54 E00CC3C4 3C01E00D */ lui $at, %hi(D_E00CCE78) +/* 3D1A58 E00CC3C8 00220821 */ addu $at, $at, $v0 +/* 3D1A5C E00CC3CC 8C22CE78 */ lw $v0, %lo(D_E00CCE78)($at) +/* 3D1A60 E00CC3D0 00400008 */ jr $v0 +/* 3D1A64 E00CC3D4 00000000 */ nop +/* 3D1A68 E00CC3D8 C62004DC */ lwc1 $f0, 0x4dc($s1) +/* 3D1A6C E00CC3DC 8E22066C */ lw $v0, 0x66c($s1) +/* 3D1A70 E00CC3E0 E626002C */ swc1 $f6, 0x2c($s1) +/* 3D1A74 E00CC3E4 461E0000 */ add.s $f0, $f0, $f30 +/* 3D1A78 E00CC3E8 E6280090 */ swc1 $f8, 0x90($s1) +/* 3D1A7C E00CC3EC E62A00F4 */ swc1 $f10, 0xf4($s1) +/* 3D1A80 E00CC3F0 10400004 */ beqz $v0, .LE00CC404 +/* 3D1A84 E00CC3F4 E62004DC */ swc1 $f0, 0x4dc($s1) +/* 3D1A88 E00CC3F8 2442FFFF */ addiu $v0, $v0, -1 +/* 3D1A8C E00CC3FC 08033248 */ j .LE00CC920 +/* 3D1A90 E00CC400 AE22066C */ sw $v0, 0x66c($s1) +.LE00CC404: +/* 3D1A94 E00CC404 8E230734 */ lw $v1, 0x734($s1) +/* 3D1A98 E00CC408 24020001 */ addiu $v0, $zero, 1 +/* 3D1A9C E00CC40C AE2206D0 */ sw $v0, 0x6d0($s1) +/* 3D1AA0 E00CC410 00771821 */ addu $v1, $v1, $s7 +/* 3D1AA4 E00CC414 90620000 */ lbu $v0, ($v1) +/* 3D1AA8 E00CC418 44820000 */ mtc1 $v0, $f0 +/* 3D1AAC E00CC41C 00000000 */ nop +/* 3D1AB0 E00CC420 46800021 */ cvt.d.w $f0, $f0 +/* 3D1AB4 E00CC424 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D1AB8 E00CC428 00000000 */ nop +/* 3D1ABC E00CC42C 8E220734 */ lw $v0, 0x734($s1) +/* 3D1AC0 E00CC430 24420001 */ addiu $v0, $v0, 1 +/* 3D1AC4 E00CC434 AE220734 */ sw $v0, 0x734($s1) +/* 3D1AC8 E00CC438 46200020 */ cvt.s.d $f0, $f0 +/* 3D1ACC E00CC43C E6200414 */ swc1 $f0, 0x414($s1) +/* 3D1AD0 E00CC440 08033248 */ j .LE00CC920 +/* 3D1AD4 E00CC444 E62003B0 */ swc1 $f0, 0x3b0($s1) +/* 3D1AD8 E00CC448 8E220734 */ lw $v0, 0x734($s1) +/* 3D1ADC E00CC44C 00571021 */ addu $v0, $v0, $s7 +/* 3D1AE0 E00CC450 90420000 */ lbu $v0, ($v0) +/* 3D1AE4 E00CC454 44820000 */ mtc1 $v0, $f0 +/* 3D1AE8 E00CC458 00000000 */ nop +/* 3D1AEC E00CC45C 46800021 */ cvt.d.w $f0, $f0 +/* 3D1AF0 E00CC460 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D1AF4 E00CC464 00000000 */ nop +/* 3D1AF8 E00CC468 C62204DC */ lwc1 $f2, 0x4dc($s1) +/* 3D1AFC E00CC46C 8E220734 */ lw $v0, 0x734($s1) +/* 3D1B00 E00CC470 461E1080 */ add.s $f2, $f2, $f30 +/* 3D1B04 E00CC474 24420001 */ addiu $v0, $v0, 1 +/* 3D1B08 E00CC478 AE220734 */ sw $v0, 0x734($s1) +/* 3D1B0C E00CC47C 28420008 */ slti $v0, $v0, 8 +/* 3D1B10 E00CC480 E62204DC */ swc1 $f2, 0x4dc($s1) +/* 3D1B14 E00CC484 46200020 */ cvt.s.d $f0, $f0 +/* 3D1B18 E00CC488 E6200414 */ swc1 $f0, 0x414($s1) +/* 3D1B1C E00CC48C 14400124 */ bnez $v0, .LE00CC920 +/* 3D1B20 E00CC490 E62003B0 */ swc1 $f0, 0x3b0($s1) +/* 3D1B24 E00CC494 17C00050 */ bnez $fp, .LE00CC5D8 +/* 3D1B28 E00CC498 24020014 */ addiu $v0, $zero, 0x14 +/* 3D1B2C E00CC49C 08033176 */ j .LE00CC5D8 +/* 3D1B30 E00CC4A0 24020002 */ addiu $v0, $zero, 2 +/* 3D1B34 E00CC4A4 C62004DC */ lwc1 $f0, 0x4dc($s1) +/* 3D1B38 E00CC4A8 461E0000 */ add.s $f0, $f0, $f30 +/* 3D1B3C E00CC4AC 8E220734 */ lw $v0, 0x734($s1) +/* 3D1B40 E00CC4B0 E62004DC */ swc1 $f0, 0x4dc($s1) +/* 3D1B44 E00CC4B4 3C01E00D */ lui $at, %hi(D_E00CCDF0) +/* 3D1B48 E00CC4B8 00220821 */ addu $at, $at, $v0 +/* 3D1B4C E00CC4BC 9022CDF0 */ lbu $v0, %lo(D_E00CCDF0)($at) +/* 3D1B50 E00CC4C0 44820000 */ mtc1 $v0, $f0 +/* 3D1B54 E00CC4C4 00000000 */ nop +/* 3D1B58 E00CC4C8 46800021 */ cvt.d.w $f0, $f0 +/* 3D1B5C E00CC4CC 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D1B60 E00CC4D0 00000000 */ nop +/* 3D1B64 E00CC4D4 C6240284 */ lwc1 $f4, 0x284($s1) +/* 3D1B68 E00CC4D8 46062101 */ sub.s $f4, $f4, $f6 +/* 3D1B6C E00CC4DC 462005A0 */ cvt.s.d $f22, $f0 +/* 3D1B70 E00CC4E0 46162102 */ mul.s $f4, $f4, $f22 +/* 3D1B74 E00CC4E4 00000000 */ nop +/* 3D1B78 E00CC4E8 C62202E8 */ lwc1 $f2, 0x2e8($s1) +/* 3D1B7C E00CC4EC 46081081 */ sub.s $f2, $f2, $f8 +/* 3D1B80 E00CC4F0 46161082 */ mul.s $f2, $f2, $f22 +/* 3D1B84 E00CC4F4 00000000 */ nop +/* 3D1B88 E00CC4F8 C620034C */ lwc1 $f0, 0x34c($s1) +/* 3D1B8C E00CC4FC 460A0001 */ sub.s $f0, $f0, $f10 +/* 3D1B90 E00CC500 46160002 */ mul.s $f0, $f0, $f22 +/* 3D1B94 E00CC504 00000000 */ nop +/* 3D1B98 E00CC508 E63C0414 */ swc1 $f28, 0x414($s1) +/* 3D1B9C E00CC50C 8E220734 */ lw $v0, 0x734($s1) +/* 3D1BA0 E00CC510 46043100 */ add.s $f4, $f6, $f4 +/* 3D1BA4 E00CC514 E63C03B0 */ swc1 $f28, 0x3b0($s1) +/* 3D1BA8 E00CC518 24420001 */ addiu $v0, $v0, 1 +/* 3D1BAC E00CC51C 46024080 */ add.s $f2, $f8, $f2 +/* 3D1BB0 E00CC520 AE220734 */ sw $v0, 0x734($s1) +/* 3D1BB4 E00CC524 28420014 */ slti $v0, $v0, 0x14 +/* 3D1BB8 E00CC528 46005000 */ add.s $f0, $f10, $f0 +/* 3D1BBC E00CC52C E624002C */ swc1 $f4, 0x2c($s1) +/* 3D1BC0 E00CC530 E6220090 */ swc1 $f2, 0x90($s1) +/* 3D1BC4 E00CC534 080331CC */ j .LE00CC730 +/* 3D1BC8 E00CC538 E62000F4 */ swc1 $f0, 0xf4($s1) +/* 3D1BCC E00CC53C C62004DC */ lwc1 $f0, 0x4dc($s1) +/* 3D1BD0 E00CC540 461E0000 */ add.s $f0, $f0, $f30 +/* 3D1BD4 E00CC544 8E220734 */ lw $v0, 0x734($s1) +/* 3D1BD8 E00CC548 E62004DC */ swc1 $f0, 0x4dc($s1) +/* 3D1BDC E00CC54C 3C01E00D */ lui $at, %hi(D_E00CCDE0) +/* 3D1BE0 E00CC550 00220821 */ addu $at, $at, $v0 +/* 3D1BE4 E00CC554 9022CDE0 */ lbu $v0, %lo(D_E00CCDE0)($at) +/* 3D1BE8 E00CC558 44820000 */ mtc1 $v0, $f0 +/* 3D1BEC E00CC55C 00000000 */ nop +/* 3D1BF0 E00CC560 46800021 */ cvt.d.w $f0, $f0 +/* 3D1BF4 E00CC564 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D1BF8 E00CC568 00000000 */ nop +/* 3D1BFC E00CC56C C6240284 */ lwc1 $f4, 0x284($s1) +/* 3D1C00 E00CC570 46062101 */ sub.s $f4, $f4, $f6 +/* 3D1C04 E00CC574 462005A0 */ cvt.s.d $f22, $f0 +/* 3D1C08 E00CC578 46162102 */ mul.s $f4, $f4, $f22 +/* 3D1C0C E00CC57C 00000000 */ nop +/* 3D1C10 E00CC580 C62202E8 */ lwc1 $f2, 0x2e8($s1) +/* 3D1C14 E00CC584 46081081 */ sub.s $f2, $f2, $f8 +/* 3D1C18 E00CC588 46161082 */ mul.s $f2, $f2, $f22 +/* 3D1C1C E00CC58C 00000000 */ nop +/* 3D1C20 E00CC590 C620034C */ lwc1 $f0, 0x34c($s1) +/* 3D1C24 E00CC594 460A0001 */ sub.s $f0, $f0, $f10 +/* 3D1C28 E00CC598 46160002 */ mul.s $f0, $f0, $f22 +/* 3D1C2C E00CC59C 00000000 */ nop +/* 3D1C30 E00CC5A0 E63C0414 */ swc1 $f28, 0x414($s1) +/* 3D1C34 E00CC5A4 8E220734 */ lw $v0, 0x734($s1) +/* 3D1C38 E00CC5A8 46043100 */ add.s $f4, $f6, $f4 +/* 3D1C3C E00CC5AC E63C03B0 */ swc1 $f28, 0x3b0($s1) +/* 3D1C40 E00CC5B0 24420001 */ addiu $v0, $v0, 1 +/* 3D1C44 E00CC5B4 46024080 */ add.s $f2, $f8, $f2 +/* 3D1C48 E00CC5B8 AE220734 */ sw $v0, 0x734($s1) +/* 3D1C4C E00CC5BC 2842000F */ slti $v0, $v0, 0xf +/* 3D1C50 E00CC5C0 46005000 */ add.s $f0, $f10, $f0 +/* 3D1C54 E00CC5C4 E624002C */ swc1 $f4, 0x2c($s1) +/* 3D1C58 E00CC5C8 E6220090 */ swc1 $f2, 0x90($s1) +/* 3D1C5C E00CC5CC 144000D4 */ bnez $v0, .LE00CC920 +/* 3D1C60 E00CC5D0 E62000F4 */ swc1 $f0, 0xf4($s1) +/* 3D1C64 E00CC5D4 24020003 */ addiu $v0, $zero, 3 +.LE00CC5D8: +/* 3D1C68 E00CC5D8 AE2206D0 */ sw $v0, 0x6d0($s1) +/* 3D1C6C E00CC5DC 08033248 */ j .LE00CC920 +/* 3D1C70 E00CC5E0 AE200734 */ sw $zero, 0x734($s1) +/* 3D1C74 E00CC5E4 24020018 */ addiu $v0, $zero, 0x18 +/* 3D1C78 E00CC5E8 566200CE */ bnel $s3, $v0, .LE00CC924 +/* 3D1C7C E00CC5EC 26310004 */ addiu $s1, $s1, 4 +/* 3D1C80 E00CC5F0 24040004 */ addiu $a0, $zero, 4 +/* 3D1C84 E00CC5F4 0040182D */ daddu $v1, $v0, $zero +/* 3D1C88 E00CC5F8 26420060 */ addiu $v0, $s2, 0x60 +.LE00CC5FC: +/* 3D1C8C E00CC5FC AC4406D0 */ sw $a0, 0x6d0($v0) +/* 3D1C90 E00CC600 2463FFFF */ addiu $v1, $v1, -1 +/* 3D1C94 E00CC604 0461FFFD */ bgez $v1, .LE00CC5FC +/* 3D1C98 E00CC608 2442FFFC */ addiu $v0, $v0, -4 +/* 3D1C9C E00CC60C 08033249 */ j .LE00CC924 +/* 3D1CA0 E00CC610 26310004 */ addiu $s1, $s1, 4 +/* 3D1CA4 E00CC614 8E220734 */ lw $v0, 0x734($s1) +/* 3D1CA8 E00CC618 3C01E00D */ lui $at, %hi(D_E00CCE04) +/* 3D1CAC E00CC61C 00220821 */ addu $at, $at, $v0 +/* 3D1CB0 E00CC620 9022CE04 */ lbu $v0, %lo(D_E00CCE04)($at) +/* 3D1CB4 E00CC624 44820000 */ mtc1 $v0, $f0 +/* 3D1CB8 E00CC628 00000000 */ nop +/* 3D1CBC E00CC62C 46800021 */ cvt.d.w $f0, $f0 +/* 3D1CC0 E00CC630 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D1CC4 E00CC634 00000000 */ nop +/* 3D1CC8 E00CC638 3C1051EB */ lui $s0, 0x51eb +/* 3D1CCC E00CC63C 3610851F */ ori $s0, $s0, 0x851f +/* 3D1CD0 E00CC640 02900018 */ mult $s4, $s0 +/* 3D1CD4 E00CC644 00141FC3 */ sra $v1, $s4, 0x1f +/* 3D1CD8 E00CC648 00004010 */ mfhi $t0 +/* 3D1CDC E00CC64C 000810C3 */ sra $v0, $t0, 3 +/* 3D1CE0 E00CC650 00431023 */ subu $v0, $v0, $v1 +/* 3D1CE4 E00CC654 44826000 */ mtc1 $v0, $f12 +/* 3D1CE8 E00CC658 00000000 */ nop +/* 3D1CEC E00CC65C 46806320 */ cvt.s.w $f12, $f12 +/* 3D1CF0 E00CC660 0C080144 */ jal func_E0200510 +/* 3D1CF4 E00CC664 462005A0 */ cvt.s.d $f22, $f0 +/* 3D1CF8 E00CC668 4616E081 */ sub.s $f2, $f28, $f22 +/* 3D1CFC E00CC66C 3C014487 */ lui $at, 0x4487 +/* 3D1D00 E00CC670 44812000 */ mtc1 $at, $f4 +/* 3D1D04 E00CC674 00000000 */ nop +/* 3D1D08 E00CC678 46041082 */ mul.s $f2, $f2, $f4 +/* 3D1D0C E00CC67C 00000000 */ nop +/* 3D1D10 E00CC680 460010A1 */ cvt.d.s $f2, $f2 +/* 3D1D14 E00CC684 46381082 */ mul.d $f2, $f2, $f24 +/* 3D1D18 E00CC688 00000000 */ nop +/* 3D1D1C E00CC68C 46000021 */ cvt.d.s $f0, $f0 +/* 3D1D20 E00CC690 46201082 */ mul.d $f2, $f2, $f0 +/* 3D1D24 E00CC694 00000000 */ nop +/* 3D1D28 E00CC698 02B00018 */ mult $s5, $s0 +/* 3D1D2C E00CC69C 00151FC3 */ sra $v1, $s5, 0x1f +/* 3D1D30 E00CC6A0 00004010 */ mfhi $t0 +/* 3D1D34 E00CC6A4 000810C3 */ sra $v0, $t0, 3 +/* 3D1D38 E00CC6A8 00431023 */ subu $v0, $v0, $v1 +/* 3D1D3C E00CC6AC 4482A000 */ mtc1 $v0, $f20 +/* 3D1D40 E00CC6B0 00000000 */ nop +/* 3D1D44 E00CC6B4 4680A521 */ cvt.d.w $f20, $f20 +/* 3D1D48 E00CC6B8 4622A500 */ add.d $f20, $f20, $f2 +/* 3D1D4C E00CC6BC 4620A520 */ cvt.s.d $f20, $f20 +/* 3D1D50 E00CC6C0 0C080140 */ jal func_E0200500 +/* 3D1D54 E00CC6C4 4600A306 */ mov.s $f12, $f20 +/* 3D1D58 E00CC6C8 4600A306 */ mov.s $f12, $f20 +/* 3D1D5C E00CC6CC 0C080144 */ jal func_E0200510 +/* 3D1D60 E00CC6D0 46000506 */ mov.s $f20, $f0 +/* 3D1D64 E00CC6D4 3C014170 */ lui $at, 0x4170 +/* 3D1D68 E00CC6D8 44811000 */ mtc1 $at, $f2 +/* 3D1D6C E00CC6DC 00000000 */ nop +/* 3D1D70 E00CC6E0 46161083 */ div.s $f2, $f2, $f22 +/* 3D1D74 E00CC6E4 46161083 */ div.s $f2, $f2, $f22 +/* 3D1D78 E00CC6E8 46141502 */ mul.s $f20, $f2, $f20 +/* 3D1D7C E00CC6EC 00000000 */ nop +/* 3D1D80 E00CC6F0 8E220734 */ lw $v0, 0x734($s1) +/* 3D1D84 E00CC6F4 46001082 */ mul.s $f2, $f2, $f0 +/* 3D1D88 E00CC6F8 00000000 */ nop +/* 3D1D8C E00CC6FC E634002C */ swc1 $f20, 0x2c($s1) +/* 3D1D90 E00CC700 3C03E00D */ lui $v1, %hi(D_E00CCE4C) +/* 3D1D94 E00CC704 00731821 */ addu $v1, $v1, $s3 +/* 3D1D98 E00CC708 8063CE4C */ lb $v1, %lo(D_E00CCE4C)($v1) +/* 3D1D9C E00CC70C 24420001 */ addiu $v0, $v0, 1 +/* 3D1DA0 E00CC710 AE220734 */ sw $v0, 0x734($s1) +/* 3D1DA4 E00CC714 28420046 */ slti $v0, $v0, 0x46 +/* 3D1DA8 E00CC718 E62200F4 */ swc1 $f2, 0xf4($s1) +/* 3D1DAC E00CC71C 2463000A */ addiu $v1, $v1, 0xa +/* 3D1DB0 E00CC720 44830000 */ mtc1 $v1, $f0 +/* 3D1DB4 E00CC724 00000000 */ nop +/* 3D1DB8 E00CC728 46800020 */ cvt.s.w $f0, $f0 +/* 3D1DBC E00CC72C E6200090 */ swc1 $f0, 0x90($s1) +.LE00CC730: +/* 3D1DC0 E00CC730 5440007C */ bnel $v0, $zero, .LE00CC924 +/* 3D1DC4 E00CC734 26310004 */ addiu $s1, $s1, 4 +/* 3D1DC8 E00CC738 C6240284 */ lwc1 $f4, 0x284($s1) +/* 3D1DCC E00CC73C 46002121 */ cvt.d.s $f4, $f4 +/* 3D1DD0 E00CC740 46382102 */ mul.d $f4, $f4, $f24 +/* 3D1DD4 E00CC744 00000000 */ nop +/* 3D1DD8 E00CC748 C62202E8 */ lwc1 $f2, 0x2e8($s1) +/* 3D1DDC E00CC74C 460010A1 */ cvt.d.s $f2, $f2 +/* 3D1DE0 E00CC750 46381082 */ mul.d $f2, $f2, $f24 +/* 3D1DE4 E00CC754 00000000 */ nop +/* 3D1DE8 E00CC758 C620034C */ lwc1 $f0, 0x34c($s1) +/* 3D1DEC E00CC75C 46000021 */ cvt.d.s $f0, $f0 +/* 3D1DF0 E00CC760 46380002 */ mul.d $f0, $f0, $f24 +/* 3D1DF4 E00CC764 00000000 */ nop +/* 3D1DF8 E00CC768 24020005 */ addiu $v0, $zero, 5 +/* 3D1DFC E00CC76C AE2206D0 */ sw $v0, 0x6d0($s1) +/* 3D1E00 E00CC770 AE200734 */ sw $zero, 0x734($s1) +/* 3D1E04 E00CC774 46202120 */ cvt.s.d $f4, $f4 +/* 3D1E08 E00CC778 462010A0 */ cvt.s.d $f2, $f2 +/* 3D1E0C E00CC77C 46200020 */ cvt.s.d $f0, $f0 +/* 3D1E10 E00CC780 E6240540 */ swc1 $f4, 0x540($s1) +/* 3D1E14 E00CC784 E62205A4 */ swc1 $f2, 0x5a4($s1) +/* 3D1E18 E00CC788 08033248 */ j .LE00CC920 +/* 3D1E1C E00CC78C E6200608 */ swc1 $f0, 0x608($s1) +/* 3D1E20 E00CC790 C6260540 */ lwc1 $f6, 0x540($s1) +/* 3D1E24 E00CC794 3C01E00D */ lui $at, %hi(D_E00CCED0) +/* 3D1E28 E00CC798 D42CCED0 */ ldc1 $f12, %lo(D_E00CCED0)($at) +/* 3D1E2C E00CC79C 460031A1 */ cvt.d.s $f6, $f6 +/* 3D1E30 E00CC7A0 462C3182 */ mul.d $f6, $f6, $f12 +/* 3D1E34 E00CC7A4 00000000 */ nop +/* 3D1E38 E00CC7A8 C62405A4 */ lwc1 $f4, 0x5a4($s1) +/* 3D1E3C E00CC7AC 46002121 */ cvt.d.s $f4, $f4 +/* 3D1E40 E00CC7B0 462C2102 */ mul.d $f4, $f4, $f12 +/* 3D1E44 E00CC7B4 00000000 */ nop +/* 3D1E48 E00CC7B8 C6280608 */ lwc1 $f8, 0x608($s1) +/* 3D1E4C E00CC7BC 46004086 */ mov.s $f2, $f8 +/* 3D1E50 E00CC7C0 460010A1 */ cvt.d.s $f2, $f2 +/* 3D1E54 E00CC7C4 462C1082 */ mul.d $f2, $f2, $f12 +/* 3D1E58 E00CC7C8 00000000 */ nop +/* 3D1E5C E00CC7CC C62E002C */ lwc1 $f14, 0x2c($s1) +/* 3D1E60 E00CC7D0 C6200540 */ lwc1 $f0, 0x540($s1) +/* 3D1E64 E00CC7D4 C62A0090 */ lwc1 $f10, 0x90($s1) +/* 3D1E68 E00CC7D8 8E220734 */ lw $v0, 0x734($s1) +/* 3D1E6C E00CC7DC 46007380 */ add.s $f14, $f14, $f0 +/* 3D1E70 E00CC7E0 C62005A4 */ lwc1 $f0, 0x5a4($s1) +/* 3D1E74 E00CC7E4 24420001 */ addiu $v0, $v0, 1 +/* 3D1E78 E00CC7E8 AE220734 */ sw $v0, 0x734($s1) +/* 3D1E7C E00CC7EC 46005280 */ add.s $f10, $f10, $f0 +/* 3D1E80 E00CC7F0 C62000F4 */ lwc1 $f0, 0xf4($s1) +/* 3D1E84 E00CC7F4 28420011 */ slti $v0, $v0, 0x11 +/* 3D1E88 E00CC7F8 46080000 */ add.s $f0, $f0, $f8 +/* 3D1E8C E00CC7FC E62E002C */ swc1 $f14, 0x2c($s1) +/* 3D1E90 E00CC800 E62A0090 */ swc1 $f10, 0x90($s1) +/* 3D1E94 E00CC804 E62000F4 */ swc1 $f0, 0xf4($s1) +/* 3D1E98 E00CC808 462031A0 */ cvt.s.d $f6, $f6 +/* 3D1E9C E00CC80C 46202120 */ cvt.s.d $f4, $f4 +/* 3D1EA0 E00CC810 E62405A4 */ swc1 $f4, 0x5a4($s1) +/* 3D1EA4 E00CC814 46002006 */ mov.s $f0, $f4 +/* 3D1EA8 E00CC818 46000021 */ cvt.d.s $f0, $f0 +/* 3D1EAC E00CC81C 3C01E00D */ lui $at, %hi(D_E00CCED8) +/* 3D1EB0 E00CC820 D424CED8 */ ldc1 $f4, %lo(D_E00CCED8)($at) +/* 3D1EB4 E00CC824 462010A0 */ cvt.s.d $f2, $f2 +/* 3D1EB8 E00CC828 46240000 */ add.d $f0, $f0, $f4 +/* 3D1EBC E00CC82C E6260540 */ swc1 $f6, 0x540($s1) +/* 3D1EC0 E00CC830 E6220608 */ swc1 $f2, 0x608($s1) +/* 3D1EC4 E00CC834 46200020 */ cvt.s.d $f0, $f0 +/* 3D1EC8 E00CC838 14400004 */ bnez $v0, .LE00CC84C +/* 3D1ECC E00CC83C E62005A4 */ swc1 $f0, 0x5a4($s1) +/* 3D1ED0 E00CC840 24020006 */ addiu $v0, $zero, 6 +/* 3D1ED4 E00CC844 AE200734 */ sw $zero, 0x734($s1) +/* 3D1ED8 E00CC848 AE2206D0 */ sw $v0, 0x6d0($s1) +.LE00CC84C: +/* 3D1EDC E00CC84C C6200478 */ lwc1 $f0, 0x478($s1) +/* 3D1EE0 E00CC850 3C01E00D */ lui $at, %hi(D_E00CCEE0) +/* 3D1EE4 E00CC854 D422CEE0 */ ldc1 $f2, %lo(D_E00CCEE0)($at) +/* 3D1EE8 E00CC858 46000021 */ cvt.d.s $f0, $f0 +/* 3D1EEC E00CC85C 46220002 */ mul.d $f0, $f0, $f2 +/* 3D1EF0 E00CC860 00000000 */ nop +/* 3D1EF4 E00CC864 46200020 */ cvt.s.d $f0, $f0 +/* 3D1EF8 E00CC868 08033248 */ j .LE00CC920 +/* 3D1EFC E00CC86C E6200478 */ swc1 $f0, 0x478($s1) +/* 3D1F00 E00CC870 0C080150 */ jal func_E0200540 +/* 3D1F04 E00CC874 24040069 */ addiu $a0, $zero, 0x69 +/* 3D1F08 E00CC878 E7BE0010 */ swc1 $f30, 0x10($sp) +/* 3D1F0C E00CC87C 8E2504DC */ lw $a1, 0x4dc($s1) +/* 3D1F10 E00CC880 4406F000 */ mfc1 $a2, $f30 +/* 3D1F14 E00CC884 4407E000 */ mfc1 $a3, $f28 +/* 3D1F18 E00CC888 0C080104 */ jal func_E0200410 +/* 3D1F1C E00CC88C 27A40018 */ addiu $a0, $sp, 0x18 +/* 3D1F20 E00CC890 27B00058 */ addiu $s0, $sp, 0x58 +/* 3D1F24 E00CC894 8E25002C */ lw $a1, 0x2c($s1) +/* 3D1F28 E00CC898 8E260090 */ lw $a2, 0x90($s1) +/* 3D1F2C E00CC89C 8E2700F4 */ lw $a3, 0xf4($s1) +/* 3D1F30 E00CC8A0 0C080108 */ jal func_E0200420 +/* 3D1F34 E00CC8A4 0200202D */ daddu $a0, $s0, $zero +/* 3D1F38 E00CC8A8 0200202D */ daddu $a0, $s0, $zero +/* 3D1F3C E00CC8AC 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D1F40 E00CC8B0 0C080114 */ jal func_E0200450 +/* 3D1F44 E00CC8B4 00A0302D */ daddu $a2, $a1, $zero +/* 3D1F48 E00CC8B8 C6420004 */ lwc1 $f2, 4($s2) +/* 3D1F4C E00CC8BC C7A00048 */ lwc1 $f0, 0x48($sp) +/* 3D1F50 E00CC8C0 46001080 */ add.s $f2, $f2, $f0 +/* 3D1F54 E00CC8C4 C7A0004C */ lwc1 $f0, 0x4c($sp) +/* 3D1F58 E00CC8C8 44051000 */ mfc1 $a1, $f2 +/* 3D1F5C E00CC8CC C6420008 */ lwc1 $f2, 8($s2) +/* 3D1F60 E00CC8D0 46001080 */ add.s $f2, $f2, $f0 +/* 3D1F64 E00CC8D4 C7A00050 */ lwc1 $f0, 0x50($sp) +/* 3D1F68 E00CC8D8 44061000 */ mfc1 $a2, $f2 +/* 3D1F6C E00CC8DC C642000C */ lwc1 $f2, 0xc($s2) +/* 3D1F70 E00CC8E0 46001080 */ add.s $f2, $f2, $f0 +/* 3D1F74 E00CC8E4 0000202D */ daddu $a0, $zero, $zero +/* 3D1F78 E00CC8E8 44071000 */ mfc1 $a3, $f2 +/* 3D1F7C E00CC8EC 24020010 */ addiu $v0, $zero, 0x10 +/* 3D1F80 E00CC8F0 E7BC0010 */ swc1 $f28, 0x10($sp) +/* 3D1F84 E00CC8F4 0C034800 */ jal func_E00D2000 +/* 3D1F88 E00CC8F8 AFA20014 */ sw $v0, 0x14($sp) +/* 3D1F8C E00CC8FC 8C44000C */ lw $a0, 0xc($v0) +/* 3D1F90 E00CC900 24030064 */ addiu $v1, $zero, 0x64 +/* 3D1F94 E00CC904 AC830028 */ sw $v1, 0x28($a0) +/* 3D1F98 E00CC908 8C43000C */ lw $v1, 0xc($v0) +/* 3D1F9C E00CC90C AC60002C */ sw $zero, 0x2c($v1) +/* 3D1FA0 E00CC910 8C42000C */ lw $v0, 0xc($v0) +/* 3D1FA4 E00CC914 AC400030 */ sw $zero, 0x30($v0) +/* 3D1FA8 E00CC918 24020007 */ addiu $v0, $zero, 7 +/* 3D1FAC E00CC91C AE2206D0 */ sw $v0, 0x6d0($s1) +.LE00CC920: +/* 3D1FB0 E00CC920 26310004 */ addiu $s1, $s1, 4 +.LE00CC924: +/* 3D1FB4 E00CC924 26B50438 */ addiu $s5, $s5, 0x438 +/* 3D1FB8 E00CC928 26730001 */ addiu $s3, $s3, 1 +/* 3D1FBC E00CC92C 2A620019 */ slti $v0, $s3, 0x19 +/* 3D1FC0 E00CC930 1440FE81 */ bnez $v0, .LE00CC338 +/* 3D1FC4 E00CC934 269400B4 */ addiu $s4, $s4, 0xb4 +.LE00CC938: +/* 3D1FC8 E00CC938 8FBF00BC */ lw $ra, 0xbc($sp) +/* 3D1FCC E00CC93C 8FBE00B8 */ lw $fp, 0xb8($sp) +/* 3D1FD0 E00CC940 8FB700B4 */ lw $s7, 0xb4($sp) +/* 3D1FD4 E00CC944 8FB600B0 */ lw $s6, 0xb0($sp) +/* 3D1FD8 E00CC948 8FB500AC */ lw $s5, 0xac($sp) +/* 3D1FDC E00CC94C 8FB400A8 */ lw $s4, 0xa8($sp) +/* 3D1FE0 E00CC950 8FB300A4 */ lw $s3, 0xa4($sp) +/* 3D1FE4 E00CC954 8FB200A0 */ lw $s2, 0xa0($sp) +/* 3D1FE8 E00CC958 8FB1009C */ lw $s1, 0x9c($sp) +/* 3D1FEC E00CC95C 8FB00098 */ lw $s0, 0x98($sp) +/* 3D1FF0 E00CC960 D7BE00E8 */ ldc1 $f30, 0xe8($sp) +/* 3D1FF4 E00CC964 D7BC00E0 */ ldc1 $f28, 0xe0($sp) +/* 3D1FF8 E00CC968 D7BA00D8 */ ldc1 $f26, 0xd8($sp) +/* 3D1FFC E00CC96C D7B800D0 */ ldc1 $f24, 0xd0($sp) +/* 3D2000 E00CC970 D7B600C8 */ ldc1 $f22, 0xc8($sp) +/* 3D2004 E00CC974 D7B400C0 */ ldc1 $f20, 0xc0($sp) +/* 3D2008 E00CC978 03E00008 */ jr $ra +/* 3D200C E00CC97C 27BD00F0 */ addiu $sp, $sp, 0xf0 diff --git a/asm/nonmatchings/code_3D1690/func_E00CC980.s b/asm/nonmatchings/code_3D1690/func_E00CC980.s new file mode 100644 index 0000000000..3565efe78d --- /dev/null +++ b/asm/nonmatchings/code_3D1690/func_E00CC980.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CC980 +/* 3D2010 E00CC980 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D2014 E00CC984 3C02E00D */ lui $v0, %hi(D_E00CC9D0) +/* 3D2018 E00CC988 2442C9D0 */ addiu $v0, $v0, %lo(D_E00CC9D0) +/* 3D201C E00CC98C AFA2001C */ sw $v0, 0x1c($sp) +/* 3D2020 E00CC990 2402000A */ addiu $v0, $zero, 0xa +/* 3D2024 E00CC994 AFA20014 */ sw $v0, 0x14($sp) +/* 3D2028 E00CC998 2402002D */ addiu $v0, $zero, 0x2d +/* 3D202C E00CC99C AFA40018 */ sw $a0, 0x18($sp) +/* 3D2030 E00CC9A0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D2034 E00CC9A4 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D2038 E00CC9A8 0C080120 */ jal func_E0200480 +/* 3D203C E00CC9AC AFA20010 */ sw $v0, 0x10($sp) +/* 3D2040 E00CC9B0 8C430000 */ lw $v1, ($v0) +/* 3D2044 E00CC9B4 34630002 */ ori $v1, $v1, 2 +/* 3D2048 E00CC9B8 AC430000 */ sw $v1, ($v0) +/* 3D204C E00CC9BC 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D2050 E00CC9C0 03E00008 */ jr $ra +/* 3D2054 E00CC9C4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D1690/func_E00CC9C8.s b/asm/nonmatchings/code_3D1690/func_E00CC9C8.s new file mode 100644 index 0000000000..63cf07f0fc --- /dev/null +++ b/asm/nonmatchings/code_3D1690/func_E00CC9C8.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CC9C8 +/* 3D2058 E00CC9C8 03E00008 */ jr $ra +/* 3D205C E00CC9CC 00000000 */ nop diff --git a/asm/nonmatchings/code_3D1690/func_E00CC9D0.s b/asm/nonmatchings/code_3D1690/func_E00CC9D0.s new file mode 100644 index 0000000000..d868d00937 --- /dev/null +++ b/asm/nonmatchings/code_3D1690/func_E00CC9D0.s @@ -0,0 +1,262 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CC9D0 +/* 3D2060 E00CC9D0 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 3D2064 E00CC9D4 0080302D */ daddu $a2, $a0, $zero +/* 3D2068 E00CC9D8 3C07DB06 */ lui $a3, 0xdb06 +/* 3D206C E00CC9DC 34E70024 */ ori $a3, $a3, 0x24 +/* 3D2070 E00CC9E0 27A40018 */ addiu $a0, $sp, 0x18 +/* 3D2074 E00CC9E4 AFB100A4 */ sw $s1, 0xa4($sp) +/* 3D2078 E00CC9E8 3C110001 */ lui $s1, 1 +/* 3D207C E00CC9EC 36311630 */ ori $s1, $s1, 0x1630 +/* 3D2080 E00CC9F0 AFB600B8 */ sw $s6, 0xb8($sp) +/* 3D2084 E00CC9F4 0000B02D */ daddu $s6, $zero, $zero +/* 3D2088 E00CC9F8 27A20058 */ addiu $v0, $sp, 0x58 +/* 3D208C E00CC9FC AFB300AC */ sw $s3, 0xac($sp) +/* 3D2090 E00CCA00 0040982D */ daddu $s3, $v0, $zero +/* 3D2094 E00CCA04 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3D2098 E00CCA08 2442A674 */ addiu $v0, $v0, %lo(D_8009A674) +/* 3D209C E00CCA0C AFBE00C0 */ sw $fp, 0xc0($sp) +/* 3D20A0 E00CCA10 0040F02D */ daddu $fp, $v0, $zero +/* 3D20A4 E00CCA14 3C028007 */ lui $v0, %hi(D_800741F0) +/* 3D20A8 E00CCA18 244241F0 */ addiu $v0, $v0, %lo(D_800741F0) +/* 3D20AC E00CCA1C AFB500B4 */ sw $s5, 0xb4($sp) +/* 3D20B0 E00CCA20 0040A82D */ daddu $s5, $v0, $zero +/* 3D20B4 E00CCA24 AFB700BC */ sw $s7, 0xbc($sp) +/* 3D20B8 E00CCA28 3C170001 */ lui $s7, 1 +/* 3D20BC E00CCA2C 36F71630 */ ori $s7, $s7, 0x1630 +/* 3D20C0 E00CCA30 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3D20C4 E00CCA34 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3D20C8 E00CCA38 AFB400B0 */ sw $s4, 0xb0($sp) +/* 3D20CC E00CCA3C 0040A02D */ daddu $s4, $v0, $zero +/* 3D20D0 E00CCA40 3C08800B */ lui $t0, %hi(gCameras) +/* 3D20D4 E00CCA44 25081D80 */ addiu $t0, $t0, %lo(gCameras) +/* 3D20D8 E00CCA48 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 3D20DC E00CCA4C AFB200A8 */ sw $s2, 0xa8($sp) +/* 3D20E0 E00CCA50 AFB000A0 */ sw $s0, 0xa0($sp) +/* 3D20E4 E00CCA54 F7B600D0 */ sdc1 $f22, 0xd0($sp) +/* 3D20E8 E00CCA58 F7B400C8 */ sdc1 $f20, 0xc8($sp) +/* 3D20EC E00CCA5C 8E850000 */ lw $a1, ($s4) +/* 3D20F0 E00CCA60 4480A000 */ mtc1 $zero, $f20 +/* 3D20F4 E00CCA64 3C013F80 */ lui $at, 0x3f80 +/* 3D20F8 E00CCA68 4481B000 */ mtc1 $at, $f22 +/* 3D20FC E00CCA6C 8CC2000C */ lw $v0, 0xc($a2) +/* 3D2100 E00CCA70 00A0182D */ daddu $v1, $a1, $zero +/* 3D2104 E00CCA74 24A50008 */ addiu $a1, $a1, 8 +/* 3D2108 E00CCA78 0040902D */ daddu $s2, $v0, $zero +/* 3D210C E00CCA7C AE850000 */ sw $a1, ($s4) +/* 3D2110 E00CCA80 8E500024 */ lw $s0, 0x24($s2) +/* 3D2114 E00CCA84 3C02E700 */ lui $v0, 0xe700 +/* 3D2118 E00CCA88 AC620000 */ sw $v0, ($v1) +/* 3D211C E00CCA8C AC600004 */ sw $zero, 4($v1) +/* 3D2120 E00CCA90 ACA70000 */ sw $a3, ($a1) +/* 3D2124 E00CCA94 8CC30010 */ lw $v1, 0x10($a2) +/* 3D2128 E00CCA98 24A20008 */ addiu $v0, $a1, 8 +/* 3D212C E00CCA9C AE820000 */ sw $v0, ($s4) +/* 3D2130 E00CCAA0 8C62001C */ lw $v0, 0x1c($v1) +/* 3D2134 E00CCAA4 3C038000 */ lui $v1, 0x8000 +/* 3D2138 E00CCAA8 00431021 */ addu $v0, $v0, $v1 +/* 3D213C E00CCAAC ACA20004 */ sw $v0, 4($a1) +/* 3D2140 E00CCAB0 8E450004 */ lw $a1, 4($s2) +/* 3D2144 E00CCAB4 8E460008 */ lw $a2, 8($s2) +/* 3D2148 E00CCAB8 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3D214C E00CCABC 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3D2150 E00CCAC0 8E47000C */ lw $a3, 0xc($s2) +/* 3D2154 E00CCAC4 00031080 */ sll $v0, $v1, 2 +/* 3D2158 E00CCAC8 00431021 */ addu $v0, $v0, $v1 +/* 3D215C E00CCACC 00021080 */ sll $v0, $v0, 2 +/* 3D2160 E00CCAD0 00431023 */ subu $v0, $v0, $v1 +/* 3D2164 E00CCAD4 000218C0 */ sll $v1, $v0, 3 +/* 3D2168 E00CCAD8 00431021 */ addu $v0, $v0, $v1 +/* 3D216C E00CCADC 000210C0 */ sll $v0, $v0, 3 +/* 3D2170 E00CCAE0 00481021 */ addu $v0, $v0, $t0 +/* 3D2174 E00CCAE4 0C080108 */ jal func_E0200420 +/* 3D2178 E00CCAE8 AFA20098 */ sw $v0, 0x98($sp) +/* 3D217C E00CCAEC 8E450028 */ lw $a1, 0x28($s2) +/* 3D2180 E00CCAF0 0260202D */ daddu $a0, $s3, $zero +/* 3D2184 E00CCAF4 00A0302D */ daddu $a2, $a1, $zero +/* 3D2188 E00CCAF8 0C080110 */ jal func_E0200440 +/* 3D218C E00CCAFC 00A0382D */ daddu $a3, $a1, $zero +/* 3D2190 E00CCB00 0260202D */ daddu $a0, $s3, $zero +/* 3D2194 E00CCB04 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D2198 E00CCB08 0C080114 */ jal func_E0200450 +/* 3D219C E00CCB0C 00A0302D */ daddu $a2, $a1, $zero +/* 3D21A0 E00CCB10 27A40018 */ addiu $a0, $sp, 0x18 +/* 3D21A4 E00CCB14 96A50000 */ lhu $a1, ($s5) +/* 3D21A8 E00CCB18 8FC20000 */ lw $v0, ($fp) +/* 3D21AC E00CCB1C 00052980 */ sll $a1, $a1, 6 +/* 3D21B0 E00CCB20 00B12821 */ addu $a1, $a1, $s1 +/* 3D21B4 E00CCB24 0C080118 */ jal func_E0200460 +/* 3D21B8 E00CCB28 00452821 */ addu $a1, $v0, $a1 +/* 3D21BC E00CCB2C 3C03DA38 */ lui $v1, 0xda38 +/* 3D21C0 E00CCB30 34630002 */ ori $v1, $v1, 2 +/* 3D21C4 E00CCB34 321000FF */ andi $s0, $s0, 0xff +/* 3D21C8 E00CCB38 8E840000 */ lw $a0, ($s4) +/* 3D21CC E00CCB3C 96A20000 */ lhu $v0, ($s5) +/* 3D21D0 E00CCB40 0080282D */ daddu $a1, $a0, $zero +/* 3D21D4 E00CCB44 24840008 */ addiu $a0, $a0, 8 +/* 3D21D8 E00CCB48 AE840000 */ sw $a0, ($s4) +/* 3D21DC E00CCB4C ACA30000 */ sw $v1, ($a1) +/* 3D21E0 E00CCB50 24430001 */ addiu $v1, $v0, 1 +/* 3D21E4 E00CCB54 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D21E8 E00CCB58 00021180 */ sll $v0, $v0, 6 +/* 3D21EC E00CCB5C A6A30000 */ sh $v1, ($s5) +/* 3D21F0 E00CCB60 8FC30000 */ lw $v1, ($fp) +/* 3D21F4 E00CCB64 00511021 */ addu $v0, $v0, $s1 +/* 3D21F8 E00CCB68 00621821 */ addu $v1, $v1, $v0 +/* 3D21FC E00CCB6C 24820008 */ addiu $v0, $a0, 8 +/* 3D2200 E00CCB70 ACA30004 */ sw $v1, 4($a1) +/* 3D2204 E00CCB74 AE820000 */ sw $v0, ($s4) +/* 3D2208 E00CCB78 3C02FA00 */ lui $v0, 0xfa00 +/* 3D220C E00CCB7C AC820000 */ sw $v0, ($a0) +/* 3D2210 E00CCB80 9243001B */ lbu $v1, 0x1b($s2) +/* 3D2214 E00CCB84 9245001F */ lbu $a1, 0x1f($s2) +/* 3D2218 E00CCB88 92460023 */ lbu $a2, 0x23($s2) +/* 3D221C E00CCB8C 24820010 */ addiu $v0, $a0, 0x10 +/* 3D2220 E00CCB90 AE820000 */ sw $v0, ($s4) +/* 3D2224 E00CCB94 3C02FB00 */ lui $v0, 0xfb00 +/* 3D2228 E00CCB98 AC820008 */ sw $v0, 8($a0) +/* 3D222C E00CCB9C 24820018 */ addiu $v0, $a0, 0x18 +/* 3D2230 E00CCBA0 AC80000C */ sw $zero, 0xc($a0) +/* 3D2234 E00CCBA4 AE820000 */ sw $v0, ($s4) +/* 3D2238 E00CCBA8 3C02DE00 */ lui $v0, 0xde00 +/* 3D223C E00CCBAC AC820010 */ sw $v0, 0x10($a0) +/* 3D2240 E00CCBB0 3C020900 */ lui $v0, 0x900 +/* 3D2244 E00CCBB4 24420400 */ addiu $v0, $v0, 0x400 +/* 3D2248 E00CCBB8 AC820014 */ sw $v0, 0x14($a0) +/* 3D224C E00CCBBC 00031E00 */ sll $v1, $v1, 0x18 +/* 3D2250 E00CCBC0 00052C00 */ sll $a1, $a1, 0x10 +/* 3D2254 E00CCBC4 00651825 */ or $v1, $v1, $a1 +/* 3D2258 E00CCBC8 00063200 */ sll $a2, $a2, 8 +/* 3D225C E00CCBCC 00661825 */ or $v1, $v1, $a2 +/* 3D2260 E00CCBD0 00701825 */ or $v1, $v1, $s0 +/* 3D2264 E00CCBD4 AC830004 */ sw $v1, 4($a0) +.LE00CCBD8: +/* 3D2268 E00CCBD8 8E4306D0 */ lw $v1, 0x6d0($s2) +/* 3D226C E00CCBDC 5060005F */ beql $v1, $zero, .LE00CCD5C +/* 3D2270 E00CCBE0 26D60001 */ addiu $s6, $s6, 1 +/* 3D2274 E00CCBE4 24020007 */ addiu $v0, $zero, 7 +/* 3D2278 E00CCBE8 5062005C */ beql $v1, $v0, .LE00CCD5C +/* 3D227C E00CCBEC 26D60001 */ addiu $s6, $s6, 1 +/* 3D2280 E00CCBF0 E7B40010 */ swc1 $f20, 0x10($sp) +/* 3D2284 E00CCBF4 8E4504DC */ lw $a1, 0x4dc($s2) +/* 3D2288 E00CCBF8 4406A000 */ mfc1 $a2, $f20 +/* 3D228C E00CCBFC 4407B000 */ mfc1 $a3, $f22 +/* 3D2290 E00CCC00 0C080104 */ jal func_E0200410 +/* 3D2294 E00CCC04 27A40018 */ addiu $a0, $sp, 0x18 +/* 3D2298 E00CCC08 8E45002C */ lw $a1, 0x2c($s2) +/* 3D229C E00CCC0C 8E460090 */ lw $a2, 0x90($s2) +/* 3D22A0 E00CCC10 8E4700F4 */ lw $a3, 0xf4($s2) +/* 3D22A4 E00CCC14 0C080108 */ jal func_E0200420 +/* 3D22A8 E00CCC18 0260202D */ daddu $a0, $s3, $zero +/* 3D22AC E00CCC1C 0260202D */ daddu $a0, $s3, $zero +/* 3D22B0 E00CCC20 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D22B4 E00CCC24 0C080114 */ jal func_E0200450 +/* 3D22B8 E00CCC28 00A0302D */ daddu $a2, $a1, $zero +/* 3D22BC E00CCC2C 4406A000 */ mfc1 $a2, $f20 +/* 3D22C0 E00CCC30 C64004DC */ lwc1 $f0, 0x4dc($s2) +/* 3D22C4 E00CCC34 4407B000 */ mfc1 $a3, $f22 +/* 3D22C8 E00CCC38 46000007 */ neg.s $f0, $f0 +/* 3D22CC E00CCC3C 44050000 */ mfc1 $a1, $f0 +/* 3D22D0 E00CCC40 0260202D */ daddu $a0, $s3, $zero +/* 3D22D4 E00CCC44 0C080104 */ jal func_E0200410 +/* 3D22D8 E00CCC48 E7B40010 */ swc1 $f20, 0x10($sp) +/* 3D22DC E00CCC4C 0260202D */ daddu $a0, $s3, $zero +/* 3D22E0 E00CCC50 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D22E4 E00CCC54 0C080114 */ jal func_E0200450 +/* 3D22E8 E00CCC58 00A0302D */ daddu $a2, $a1, $zero +/* 3D22EC E00CCC5C E7B60010 */ swc1 $f22, 0x10($sp) +/* 3D22F0 E00CCC60 8E450478 */ lw $a1, 0x478($s2) +/* 3D22F4 E00CCC64 4406A000 */ mfc1 $a2, $f20 +/* 3D22F8 E00CCC68 4407A000 */ mfc1 $a3, $f20 +/* 3D22FC E00CCC6C 0C080104 */ jal func_E0200410 +/* 3D2300 E00CCC70 0260202D */ daddu $a0, $s3, $zero +/* 3D2304 E00CCC74 0260202D */ daddu $a0, $s3, $zero +/* 3D2308 E00CCC78 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D230C E00CCC7C 0C080114 */ jal func_E0200450 +/* 3D2310 E00CCC80 00A0302D */ daddu $a2, $a1, $zero +/* 3D2314 E00CCC84 8E4503B0 */ lw $a1, 0x3b0($s2) +/* 3D2318 E00CCC88 8E460414 */ lw $a2, 0x414($s2) +/* 3D231C E00CCC8C 4407B000 */ mfc1 $a3, $f22 +/* 3D2320 E00CCC90 0C080110 */ jal func_E0200440 +/* 3D2324 E00CCC94 0260202D */ daddu $a0, $s3, $zero +/* 3D2328 E00CCC98 0260202D */ daddu $a0, $s3, $zero +/* 3D232C E00CCC9C 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D2330 E00CCCA0 0C080114 */ jal func_E0200450 +/* 3D2334 E00CCCA4 00A0302D */ daddu $a2, $a1, $zero +/* 3D2338 E00CCCA8 27A40018 */ addiu $a0, $sp, 0x18 +/* 3D233C E00CCCAC 96A50000 */ lhu $a1, ($s5) +/* 3D2340 E00CCCB0 8FC20000 */ lw $v0, ($fp) +/* 3D2344 E00CCCB4 00052980 */ sll $a1, $a1, 6 +/* 3D2348 E00CCCB8 00B72821 */ addu $a1, $a1, $s7 +/* 3D234C E00CCCBC 0C080118 */ jal func_E0200460 +/* 3D2350 E00CCCC0 00452821 */ addu $a1, $v0, $a1 +/* 3D2354 E00CCCC4 3C06DA38 */ lui $a2, 0xda38 +/* 3D2358 E00CCCC8 34C60001 */ ori $a2, $a2, 1 +/* 3D235C E00CCCCC 8E840000 */ lw $a0, ($s4) +/* 3D2360 E00CCCD0 3C07D838 */ lui $a3, 0xd838 +/* 3D2364 E00CCCD4 0080282D */ daddu $a1, $a0, $zero +/* 3D2368 E00CCCD8 24840008 */ addiu $a0, $a0, 8 +/* 3D236C E00CCCDC AE840000 */ sw $a0, ($s4) +/* 3D2370 E00CCCE0 96A20000 */ lhu $v0, ($s5) +/* 3D2374 E00CCCE4 3C03DA38 */ lui $v1, 0xda38 +/* 3D2378 E00CCCE8 ACA30000 */ sw $v1, ($a1) +/* 3D237C E00CCCEC 24430001 */ addiu $v1, $v0, 1 +/* 3D2380 E00CCCF0 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D2384 E00CCCF4 00021180 */ sll $v0, $v0, 6 +/* 3D2388 E00CCCF8 A6A30000 */ sh $v1, ($s5) +/* 3D238C E00CCCFC 8FC30000 */ lw $v1, ($fp) +/* 3D2390 E00CCD00 00571021 */ addu $v0, $v0, $s7 +/* 3D2394 E00CCD04 00621821 */ addu $v1, $v1, $v0 +/* 3D2398 E00CCD08 24820008 */ addiu $v0, $a0, 8 +/* 3D239C E00CCD0C ACA30004 */ sw $v1, 4($a1) +/* 3D23A0 E00CCD10 AE820000 */ sw $v0, ($s4) +/* 3D23A4 E00CCD14 24820010 */ addiu $v0, $a0, 0x10 +/* 3D23A8 E00CCD18 AC860000 */ sw $a2, ($a0) +/* 3D23AC E00CCD1C AE820000 */ sw $v0, ($s4) +/* 3D23B0 E00CCD20 8FA90098 */ lw $t1, 0x98($sp) +/* 3D23B4 E00CCD24 34E70002 */ ori $a3, $a3, 2 +/* 3D23B8 E00CCD28 8D230204 */ lw $v1, 0x204($t1) +/* 3D23BC E00CCD2C 3C02DE00 */ lui $v0, 0xde00 +/* 3D23C0 E00CCD30 AC820008 */ sw $v0, 8($a0) +/* 3D23C4 E00CCD34 3C020900 */ lui $v0, 0x900 +/* 3D23C8 E00CCD38 24420518 */ addiu $v0, $v0, 0x518 +/* 3D23CC E00CCD3C AC82000C */ sw $v0, 0xc($a0) +/* 3D23D0 E00CCD40 24820018 */ addiu $v0, $a0, 0x18 +/* 3D23D4 E00CCD44 AE820000 */ sw $v0, ($s4) +/* 3D23D8 E00CCD48 24020040 */ addiu $v0, $zero, 0x40 +/* 3D23DC E00CCD4C AC870010 */ sw $a3, 0x10($a0) +/* 3D23E0 E00CCD50 AC820014 */ sw $v0, 0x14($a0) +/* 3D23E4 E00CCD54 AC830004 */ sw $v1, 4($a0) +/* 3D23E8 E00CCD58 26D60001 */ addiu $s6, $s6, 1 +.LE00CCD5C: +/* 3D23EC E00CCD5C 2AC20019 */ slti $v0, $s6, 0x19 +/* 3D23F0 E00CCD60 1440FF9D */ bnez $v0, .LE00CCBD8 +/* 3D23F4 E00CCD64 26520004 */ addiu $s2, $s2, 4 +/* 3D23F8 E00CCD68 3C05D838 */ lui $a1, 0xd838 +/* 3D23FC E00CCD6C 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3D2400 E00CCD70 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3D2404 E00CCD74 8C620000 */ lw $v0, ($v1) +/* 3D2408 E00CCD78 34A50002 */ ori $a1, $a1, 2 +/* 3D240C E00CCD7C 0040202D */ daddu $a0, $v0, $zero +/* 3D2410 E00CCD80 24420008 */ addiu $v0, $v0, 8 +/* 3D2414 E00CCD84 AC620000 */ sw $v0, ($v1) +/* 3D2418 E00CCD88 24020040 */ addiu $v0, $zero, 0x40 +/* 3D241C E00CCD8C AC850000 */ sw $a1, ($a0) +/* 3D2420 E00CCD90 AC820004 */ sw $v0, 4($a0) +/* 3D2424 E00CCD94 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 3D2428 E00CCD98 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 3D242C E00CCD9C 8FB700BC */ lw $s7, 0xbc($sp) +/* 3D2430 E00CCDA0 8FB600B8 */ lw $s6, 0xb8($sp) +/* 3D2434 E00CCDA4 8FB500B4 */ lw $s5, 0xb4($sp) +/* 3D2438 E00CCDA8 8FB400B0 */ lw $s4, 0xb0($sp) +/* 3D243C E00CCDAC 8FB300AC */ lw $s3, 0xac($sp) +/* 3D2440 E00CCDB0 8FB200A8 */ lw $s2, 0xa8($sp) +/* 3D2444 E00CCDB4 8FB100A4 */ lw $s1, 0xa4($sp) +/* 3D2448 E00CCDB8 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3D244C E00CCDBC D7B600D0 */ ldc1 $f22, 0xd0($sp) +/* 3D2450 E00CCDC0 D7B400C8 */ ldc1 $f20, 0xc8($sp) +/* 3D2454 E00CCDC4 03E00008 */ jr $ra +/* 3D2458 E00CCDC8 27BD00D8 */ addiu $sp, $sp, 0xd8 +/* 3D245C E00CCDCC 00000000 */ nop diff --git a/asm/nonmatchings/code_3D2AC0/func_E00CE000.s b/asm/nonmatchings/code_3D2AC0/func_E00CE000.s new file mode 100644 index 0000000000..bff376e564 --- /dev/null +++ b/asm/nonmatchings/code_3D2AC0/func_E00CE000.s @@ -0,0 +1,144 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CE000 +/* 3D2AC0 E00CE000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 3D2AC4 E00CE004 F7BC0060 */ sdc1 $f28, 0x60($sp) +/* 3D2AC8 E00CE008 4485E000 */ mtc1 $a1, $f28 +/* 3D2ACC E00CE00C AFB20030 */ sw $s2, 0x30($sp) +/* 3D2AD0 E00CE010 0080902D */ daddu $s2, $a0, $zero +/* 3D2AD4 E00CE014 F7BE0068 */ sdc1 $f30, 0x68($sp) +/* 3D2AD8 E00CE018 4486F000 */ mtc1 $a2, $f30 +/* 3D2ADC E00CE01C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D2AE0 E00CE020 AFB00028 */ sw $s0, 0x28($sp) +/* 3D2AE4 E00CE024 8FB00084 */ lw $s0, 0x84($sp) +/* 3D2AE8 E00CE028 3C02E00D */ lui $v0, %hi(D_E00CE21C) +/* 3D2AEC E00CE02C 2442E21C */ addiu $v0, $v0, %lo(D_E00CE21C) +/* 3D2AF0 E00CE030 AFA20018 */ sw $v0, 0x18($sp) +/* 3D2AF4 E00CE034 3C02E00D */ lui $v0, %hi(D_E00CE224) +/* 3D2AF8 E00CE038 2442E224 */ addiu $v0, $v0, %lo(D_E00CE224) +/* 3D2AFC E00CE03C AFA2001C */ sw $v0, 0x1c($sp) +/* 3D2B00 E00CE040 3C02E00D */ lui $v0, %hi(D_E00CE428) +/* 3D2B04 E00CE044 2442E428 */ addiu $v0, $v0, %lo(D_E00CE428) +/* 3D2B08 E00CE048 AFA20020 */ sw $v0, 0x20($sp) +/* 3D2B0C E00CE04C 24020067 */ addiu $v0, $zero, 0x67 +/* 3D2B10 E00CE050 AFBF0038 */ sw $ra, 0x38($sp) +/* 3D2B14 E00CE054 AFB30034 */ sw $s3, 0x34($sp) +/* 3D2B18 E00CE058 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D2B1C E00CE05C F7BA0058 */ sdc1 $f26, 0x58($sp) +/* 3D2B20 E00CE060 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3D2B24 E00CE064 F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3D2B28 E00CE068 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3D2B2C E00CE06C AFA7007C */ sw $a3, 0x7c($sp) +/* 3D2B30 E00CE070 AFA00010 */ sw $zero, 0x10($sp) +/* 3D2B34 E00CE074 AFA00024 */ sw $zero, 0x24($sp) +/* 3D2B38 E00CE078 0C080124 */ jal func_E0200490 +/* 3D2B3C E00CE07C AFA20014 */ sw $v0, 0x14($sp) +/* 3D2B40 E00CE080 24040144 */ addiu $a0, $zero, 0x144 +/* 3D2B44 E00CE084 24030001 */ addiu $v1, $zero, 1 +/* 3D2B48 E00CE088 0040982D */ daddu $s3, $v0, $zero +/* 3D2B4C E00CE08C 0C08012C */ jal func_E02004B0 +/* 3D2B50 E00CE090 AE630008 */ sw $v1, 8($s3) +/* 3D2B54 E00CE094 0040882D */ daddu $s1, $v0, $zero +/* 3D2B58 E00CE098 16200003 */ bnez $s1, .LE00CE0A8 +/* 3D2B5C E00CE09C AE62000C */ sw $v0, 0xc($s3) +.LE00CE0A0: +/* 3D2B60 E00CE0A0 08033828 */ j .LE00CE0A0 +/* 3D2B64 E00CE0A4 00000000 */ nop +.LE00CE0A8: +/* 3D2B68 E00CE0A8 AE320000 */ sw $s2, ($s1) +/* 3D2B6C E00CE0AC 1E000004 */ bgtz $s0, .LE00CE0C0 +/* 3D2B70 E00CE0B0 AE200014 */ sw $zero, 0x14($s1) +/* 3D2B74 E00CE0B4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D2B78 E00CE0B8 08033831 */ j .LE00CE0C4 +/* 3D2B7C E00CE0BC AE220010 */ sw $v0, 0x10($s1) +.LE00CE0C0: +/* 3D2B80 E00CE0C0 AE300010 */ sw $s0, 0x10($s1) +.LE00CE0C4: +/* 3D2B84 E00CE0C4 3C01E00D */ lui $at, %hi(D_E00CEE50) +/* 3D2B88 E00CE0C8 D43AEE50 */ ldc1 $f26, %lo(D_E00CEE50)($at) +/* 3D2B8C E00CE0CC 3C013FF0 */ lui $at, 0x3ff0 +/* 3D2B90 E00CE0D0 4481C800 */ mtc1 $at, $f25 +/* 3D2B94 E00CE0D4 4480C000 */ mtc1 $zero, $f24 +/* 3D2B98 E00CE0D8 3C01E00D */ lui $at, %hi(D_E00CEE58) +/* 3D2B9C E00CE0DC D434EE58 */ ldc1 $f20, %lo(D_E00CEE58)($at) +/* 3D2BA0 E00CE0E0 3C014000 */ lui $at, 0x4000 +/* 3D2BA4 E00CE0E4 4481B800 */ mtc1 $at, $f23 +/* 3D2BA8 E00CE0E8 4480B000 */ mtc1 $zero, $f22 +/* 3D2BAC E00CE0EC 0000902D */ daddu $s2, $zero, $zero +/* 3D2BB0 E00CE0F0 AE200024 */ sw $zero, 0x24($s1) +/* 3D2BB4 E00CE0F4 E63C0004 */ swc1 $f28, 4($s1) +/* 3D2BB8 E00CE0F8 E63E0008 */ swc1 $f30, 8($s1) +/* 3D2BBC E00CE0FC C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 3D2BC0 E00CE100 0220802D */ daddu $s0, $s1, $zero +/* 3D2BC4 E00CE104 E622000C */ swc1 $f2, 0xc($s1) +/* 3D2BC8 E00CE108 C7A00080 */ lwc1 $f0, 0x80($sp) +/* 3D2BCC E00CE10C 240200FF */ addiu $v0, $zero, 0xff +/* 3D2BD0 E00CE110 AE220018 */ sw $v0, 0x18($s1) +/* 3D2BD4 E00CE114 AE22001C */ sw $v0, 0x1c($s1) +/* 3D2BD8 E00CE118 AE220020 */ sw $v0, 0x20($s1) +/* 3D2BDC E00CE11C AE220028 */ sw $v0, 0x28($s1) +/* 3D2BE0 E00CE120 AE22002C */ sw $v0, 0x2c($s1) +/* 3D2BE4 E00CE124 240200EB */ addiu $v0, $zero, 0xeb +/* 3D2BE8 E00CE128 AE220030 */ sw $v0, 0x30($s1) +/* 3D2BEC E00CE12C E6200034 */ swc1 $f0, 0x34($s1) +.LE00CE130: +/* 3D2BF0 E00CE130 44920000 */ mtc1 $s2, $f0 +/* 3D2BF4 E00CE134 00000000 */ nop +/* 3D2BF8 E00CE138 46800021 */ cvt.d.w $f0, $f0 +/* 3D2BFC E00CE13C 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D2C00 E00CE140 00000000 */ nop +/* 3D2C04 E00CE144 E61C0038 */ swc1 $f28, 0x38($s0) +/* 3D2C08 E00CE148 E61E0058 */ swc1 $f30, 0x58($s0) +/* 3D2C0C E00CE14C C7A2007C */ lwc1 $f2, 0x7c($sp) +/* 3D2C10 E00CE150 46380000 */ add.d $f0, $f0, $f24 +/* 3D2C14 E00CE154 24040168 */ addiu $a0, $zero, 0x168 +/* 3D2C18 E00CE158 E6020078 */ swc1 $f2, 0x78($s0) +/* 3D2C1C E00CE15C 46200020 */ cvt.s.d $f0, $f0 +/* 3D2C20 E00CE160 0C080138 */ jal func_E02004E0 +/* 3D2C24 E00CE164 E6000098 */ swc1 $f0, 0x98($s0) +/* 3D2C28 E00CE168 24040064 */ addiu $a0, $zero, 0x64 +/* 3D2C2C E00CE16C 44820000 */ mtc1 $v0, $f0 +/* 3D2C30 E00CE170 00000000 */ nop +/* 3D2C34 E00CE174 46800020 */ cvt.s.w $f0, $f0 +/* 3D2C38 E00CE178 0C080138 */ jal func_E02004E0 +/* 3D2C3C E00CE17C E60000B8 */ swc1 $f0, 0xb8($s0) +/* 3D2C40 E00CE180 44820000 */ mtc1 $v0, $f0 +/* 3D2C44 E00CE184 00000000 */ nop +/* 3D2C48 E00CE188 46800021 */ cvt.d.w $f0, $f0 +/* 3D2C4C E00CE18C 46340002 */ mul.d $f0, $f0, $f20 +/* 3D2C50 E00CE190 00000000 */ nop +/* 3D2C54 E00CE194 46360000 */ add.d $f0, $f0, $f22 +/* 3D2C58 E00CE198 2404001E */ addiu $a0, $zero, 0x1e +/* 3D2C5C E00CE19C 46200020 */ cvt.s.d $f0, $f0 +/* 3D2C60 E00CE1A0 0C080138 */ jal func_E02004E0 +/* 3D2C64 E00CE1A4 E60000D8 */ swc1 $f0, 0xd8($s0) +/* 3D2C68 E00CE1A8 44820000 */ mtc1 $v0, $f0 +/* 3D2C6C E00CE1AC 00000000 */ nop +/* 3D2C70 E00CE1B0 46800021 */ cvt.d.w $f0, $f0 +/* 3D2C74 E00CE1B4 46340002 */ mul.d $f0, $f0, $f20 +/* 3D2C78 E00CE1B8 00000000 */ nop +/* 3D2C7C E00CE1BC 26520001 */ addiu $s2, $s2, 1 +/* 3D2C80 E00CE1C0 2A420008 */ slti $v0, $s2, 8 +/* 3D2C84 E00CE1C4 AE000118 */ sw $zero, 0x118($s0) +/* 3D2C88 E00CE1C8 46200020 */ cvt.s.d $f0, $f0 +/* 3D2C8C E00CE1CC E60000F8 */ swc1 $f0, 0xf8($s0) +/* 3D2C90 E00CE1D0 1440FFD7 */ bnez $v0, .LE00CE130 +/* 3D2C94 E00CE1D4 26100004 */ addiu $s0, $s0, 4 +/* 3D2C98 E00CE1D8 0260102D */ daddu $v0, $s3, $zero +/* 3D2C9C E00CE1DC AE200138 */ sw $zero, 0x138($s1) +/* 3D2CA0 E00CE1E0 AE20013C */ sw $zero, 0x13c($s1) +/* 3D2CA4 E00CE1E4 AE200140 */ sw $zero, 0x140($s1) +/* 3D2CA8 E00CE1E8 8FBF0038 */ lw $ra, 0x38($sp) +/* 3D2CAC E00CE1EC 8FB30034 */ lw $s3, 0x34($sp) +/* 3D2CB0 E00CE1F0 8FB20030 */ lw $s2, 0x30($sp) +/* 3D2CB4 E00CE1F4 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D2CB8 E00CE1F8 8FB00028 */ lw $s0, 0x28($sp) +/* 3D2CBC E00CE1FC D7BE0068 */ ldc1 $f30, 0x68($sp) +/* 3D2CC0 E00CE200 D7BC0060 */ ldc1 $f28, 0x60($sp) +/* 3D2CC4 E00CE204 D7BA0058 */ ldc1 $f26, 0x58($sp) +/* 3D2CC8 E00CE208 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3D2CCC E00CE20C D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3D2CD0 E00CE210 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3D2CD4 E00CE214 03E00008 */ jr $ra +/* 3D2CD8 E00CE218 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_3D2AC0/func_E00CE21C.s b/asm/nonmatchings/code_3D2AC0/func_E00CE21C.s new file mode 100644 index 0000000000..ec495153d3 --- /dev/null +++ b/asm/nonmatchings/code_3D2AC0/func_E00CE21C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CE21C +/* 3D2CDC E00CE21C 03E00008 */ jr $ra +/* 3D2CE0 E00CE220 00000000 */ nop diff --git a/asm/nonmatchings/code_3D2AC0/func_E00CE224.s b/asm/nonmatchings/code_3D2AC0/func_E00CE224.s new file mode 100644 index 0000000000..3e8c6fc114 --- /dev/null +++ b/asm/nonmatchings/code_3D2AC0/func_E00CE224.s @@ -0,0 +1,145 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CE224 +/* 3D2CE4 E00CE224 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3D2CE8 E00CE228 AFBF0010 */ sw $ra, 0x10($sp) +/* 3D2CEC E00CE22C 8C830000 */ lw $v1, ($a0) +/* 3D2CF0 E00CE230 8C85000C */ lw $a1, 0xc($a0) +/* 3D2CF4 E00CE234 30620010 */ andi $v0, $v1, 0x10 +/* 3D2CF8 E00CE238 10400005 */ beqz $v0, .LE00CE250 +/* 3D2CFC E00CE23C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D2D00 E00CE240 00621024 */ and $v0, $v1, $v0 +/* 3D2D04 E00CE244 AC820000 */ sw $v0, ($a0) +/* 3D2D08 E00CE248 24020010 */ addiu $v0, $zero, 0x10 +/* 3D2D0C E00CE24C ACA20010 */ sw $v0, 0x10($a1) +.LE00CE250: +/* 3D2D10 E00CE250 8CA30010 */ lw $v1, 0x10($a1) +/* 3D2D14 E00CE254 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3D2D18 E00CE258 10400002 */ beqz $v0, .LE00CE264 +/* 3D2D1C E00CE25C 2462FFFF */ addiu $v0, $v1, -1 +/* 3D2D20 E00CE260 ACA20010 */ sw $v0, 0x10($a1) +.LE00CE264: +/* 3D2D24 E00CE264 8CA20014 */ lw $v0, 0x14($a1) +/* 3D2D28 E00CE268 8CA30010 */ lw $v1, 0x10($a1) +/* 3D2D2C E00CE26C 24460001 */ addiu $a2, $v0, 1 +/* 3D2D30 E00CE270 04610005 */ bgez $v1, .LE00CE288 +/* 3D2D34 E00CE274 ACA60014 */ sw $a2, 0x14($a1) +/* 3D2D38 E00CE278 0C080128 */ jal func_E02004A0 +/* 3D2D3C E00CE27C 00000000 */ nop +/* 3D2D40 E00CE280 08033907 */ j .LE00CE41C +/* 3D2D44 E00CE284 00000000 */ nop +.LE00CE288: +/* 3D2D48 E00CE288 C4AC0034 */ lwc1 $f12, 0x34($a1) +/* 3D2D4C E00CE28C 28620010 */ slti $v0, $v1, 0x10 +/* 3D2D50 E00CE290 10400002 */ beqz $v0, .LE00CE29C +/* 3D2D54 E00CE294 00031100 */ sll $v0, $v1, 4 +/* 3D2D58 E00CE298 ACA20024 */ sw $v0, 0x24($a1) +.LE00CE29C: +/* 3D2D5C E00CE29C 28C20010 */ slti $v0, $a2, 0x10 +/* 3D2D60 E00CE2A0 10400003 */ beqz $v0, .LE00CE2B0 +/* 3D2D64 E00CE2A4 00061100 */ sll $v0, $a2, 4 +/* 3D2D68 E00CE2A8 2442000F */ addiu $v0, $v0, 0xf +/* 3D2D6C E00CE2AC ACA20024 */ sw $v0, 0x24($a1) +.LE00CE2B0: +/* 3D2D70 E00CE2B0 24040007 */ addiu $a0, $zero, 7 +/* 3D2D74 E00CE2B4 24060018 */ addiu $a2, $zero, 0x18 +/* 3D2D78 E00CE2B8 24A3001C */ addiu $v1, $a1, 0x1c +/* 3D2D7C E00CE2BC 3C014080 */ lui $at, 0x4080 +/* 3D2D80 E00CE2C0 44817000 */ mtc1 $at, $f14 +/* 3D2D84 E00CE2C4 3C0142B4 */ lui $at, 0x42b4 +/* 3D2D88 E00CE2C8 44815000 */ mtc1 $at, $f10 +/* 3D2D8C E00CE2CC 3C01C2B4 */ lui $at, 0xc2b4 +/* 3D2D90 E00CE2D0 44814000 */ mtc1 $at, $f8 +/* 3D2D94 E00CE2D4 C4A40004 */ lwc1 $f4, 4($a1) +/* 3D2D98 E00CE2D8 C4A60008 */ lwc1 $f6, 8($a1) +/* 3D2D9C E00CE2DC 3C0140A0 */ lui $at, 0x40a0 +/* 3D2DA0 E00CE2E0 44810000 */ mtc1 $at, $f0 +/* 3D2DA4 E00CE2E4 C4A2000C */ lwc1 $f2, 0xc($a1) +/* 3D2DA8 E00CE2E8 46006302 */ mul.s $f12, $f12, $f0 +/* 3D2DAC E00CE2EC 00000000 */ nop +/* 3D2DB0 E00CE2F0 E4A40038 */ swc1 $f4, 0x38($a1) +/* 3D2DB4 E00CE2F4 E4A60058 */ swc1 $f6, 0x58($a1) +/* 3D2DB8 E00CE2F8 E4A20078 */ swc1 $f2, 0x78($a1) +.LE00CE2FC: +/* 3D2DBC E00CE2FC 00A61021 */ addu $v0, $a1, $a2 +/* 3D2DC0 E00CE300 C4400038 */ lwc1 $f0, 0x38($v0) +/* 3D2DC4 E00CE304 C4620038 */ lwc1 $f2, 0x38($v1) +/* 3D2DC8 E00CE308 46020001 */ sub.s $f0, $f0, $f2 +/* 3D2DCC E00CE30C 460E0002 */ mul.s $f0, $f0, $f14 +/* 3D2DD0 E00CE310 00000000 */ nop +/* 3D2DD4 E00CE314 E4600118 */ swc1 $f0, 0x118($v1) +/* 3D2DD8 E00CE318 C4400038 */ lwc1 $f0, 0x38($v0) +/* 3D2DDC E00CE31C E4600038 */ swc1 $f0, 0x38($v1) +/* 3D2DE0 E00CE320 C4400058 */ lwc1 $f0, 0x58($v0) +/* 3D2DE4 E00CE324 460C0000 */ add.s $f0, $f0, $f12 +/* 3D2DE8 E00CE328 C4620118 */ lwc1 $f2, 0x118($v1) +/* 3D2DEC E00CE32C E4600058 */ swc1 $f0, 0x58($v1) +/* 3D2DF0 E00CE330 C4400078 */ lwc1 $f0, 0x78($v0) +/* 3D2DF4 E00CE334 4602503C */ c.lt.s $f10, $f2 +/* 3D2DF8 E00CE338 00000000 */ nop +/* 3D2DFC E00CE33C 45000003 */ bc1f .LE00CE34C +/* 3D2E00 E00CE340 E4600078 */ swc1 $f0, 0x78($v1) +/* 3D2E04 E00CE344 080338D7 */ j .LE00CE35C +/* 3D2E08 E00CE348 E46A0118 */ swc1 $f10, 0x118($v1) +.LE00CE34C: +/* 3D2E0C E00CE34C 4608103C */ c.lt.s $f2, $f8 +/* 3D2E10 E00CE350 00000000 */ nop +/* 3D2E14 E00CE354 45030001 */ bc1tl .LE00CE35C +/* 3D2E18 E00CE358 E4680118 */ swc1 $f8, 0x118($v1) +.LE00CE35C: +/* 3D2E1C E00CE35C 24C6FFFC */ addiu $a2, $a2, -4 +/* 3D2E20 E00CE360 2484FFFF */ addiu $a0, $a0, -1 +/* 3D2E24 E00CE364 1C80FFE5 */ bgtz $a0, .LE00CE2FC +/* 3D2E28 E00CE368 2463FFFC */ addiu $v1, $v1, -4 +/* 3D2E2C E00CE36C C4A40138 */ lwc1 $f4, 0x138($a1) +/* 3D2E30 E00CE370 3C014120 */ lui $at, 0x4120 +/* 3D2E34 E00CE374 44810000 */ mtc1 $at, $f0 +/* 3D2E38 E00CE378 00000000 */ nop +/* 3D2E3C E00CE37C 46002100 */ add.s $f4, $f4, $f0 +/* 3D2E40 E00CE380 C4A0013C */ lwc1 $f0, 0x13c($a1) +/* 3D2E44 E00CE384 3C01E00D */ lui $at, %hi(D_E00CEE60) +/* 3D2E48 E00CE388 D422EE60 */ ldc1 $f2, %lo(D_E00CEE60)($at) +/* 3D2E4C E00CE38C 46000021 */ cvt.d.s $f0, $f0 +/* 3D2E50 E00CE390 46220000 */ add.d $f0, $f0, $f2 +/* 3D2E54 E00CE394 3C01E00D */ lui $at, %hi(D_E00CEE68) +/* 3D2E58 E00CE398 D422EE68 */ ldc1 $f2, %lo(D_E00CEE68)($at) +/* 3D2E5C E00CE39C E4A40138 */ swc1 $f4, 0x138($a1) +/* 3D2E60 E00CE3A0 46200020 */ cvt.s.d $f0, $f0 +/* 3D2E64 E00CE3A4 E4A0013C */ swc1 $f0, 0x13c($a1) +/* 3D2E68 E00CE3A8 C4A00140 */ lwc1 $f0, 0x140($a1) +/* 3D2E6C E00CE3AC C4A4013C */ lwc1 $f4, 0x13c($a1) +/* 3D2E70 E00CE3B0 46000021 */ cvt.d.s $f0, $f0 +/* 3D2E74 E00CE3B4 46220000 */ add.d $f0, $f0, $f2 +/* 3D2E78 E00CE3B8 3C014280 */ lui $at, 0x4280 +/* 3D2E7C E00CE3BC 44811000 */ mtc1 $at, $f2 +/* 3D2E80 E00CE3C0 00000000 */ nop +/* 3D2E84 E00CE3C4 4604103C */ c.lt.s $f2, $f4 +/* 3D2E88 E00CE3C8 46200020 */ cvt.s.d $f0, $f0 +/* 3D2E8C E00CE3CC 45000003 */ bc1f .LE00CE3DC +/* 3D2E90 E00CE3D0 E4A00140 */ swc1 $f0, 0x140($a1) +/* 3D2E94 E00CE3D4 46022001 */ sub.s $f0, $f4, $f2 +/* 3D2E98 E00CE3D8 E4A0013C */ swc1 $f0, 0x13c($a1) +.LE00CE3DC: +/* 3D2E9C E00CE3DC C4A00140 */ lwc1 $f0, 0x140($a1) +/* 3D2EA0 E00CE3E0 4600103C */ c.lt.s $f2, $f0 +/* 3D2EA4 E00CE3E4 00000000 */ nop +/* 3D2EA8 E00CE3E8 45000003 */ bc1f .LE00CE3F8 +/* 3D2EAC E00CE3EC 0000202D */ daddu $a0, $zero, $zero +/* 3D2EB0 E00CE3F0 46020001 */ sub.s $f0, $f0, $f2 +/* 3D2EB4 E00CE3F4 E4A00140 */ swc1 $f0, 0x140($a1) +.LE00CE3F8: +/* 3D2EB8 E00CE3F8 00A0182D */ daddu $v1, $a1, $zero +.LE00CE3FC: +/* 3D2EBC E00CE3FC C46000B8 */ lwc1 $f0, 0xb8($v1) +/* 3D2EC0 E00CE400 C46200D8 */ lwc1 $f2, 0xd8($v1) +/* 3D2EC4 E00CE404 46020000 */ add.s $f0, $f0, $f2 +/* 3D2EC8 E00CE408 24840001 */ addiu $a0, $a0, 1 +/* 3D2ECC E00CE40C 28820008 */ slti $v0, $a0, 8 +/* 3D2ED0 E00CE410 E46000B8 */ swc1 $f0, 0xb8($v1) +/* 3D2ED4 E00CE414 1440FFF9 */ bnez $v0, .LE00CE3FC +/* 3D2ED8 E00CE418 24630004 */ addiu $v1, $v1, 4 +.LE00CE41C: +/* 3D2EDC E00CE41C 8FBF0010 */ lw $ra, 0x10($sp) +/* 3D2EE0 E00CE420 03E00008 */ jr $ra +/* 3D2EE4 E00CE424 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3D2AC0/func_E00CE428.s b/asm/nonmatchings/code_3D2AC0/func_E00CE428.s new file mode 100644 index 0000000000..1c174d99d8 --- /dev/null +++ b/asm/nonmatchings/code_3D2AC0/func_E00CE428.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CE428 +/* 3D2EE8 E00CE428 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D2EEC E00CE42C 3C02E00D */ lui $v0, %hi(D_E00CE478) +/* 3D2EF0 E00CE430 2442E478 */ addiu $v0, $v0, %lo(D_E00CE478) +/* 3D2EF4 E00CE434 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D2EF8 E00CE438 2402000A */ addiu $v0, $zero, 0xa +/* 3D2EFC E00CE43C AFA20014 */ sw $v0, 0x14($sp) +/* 3D2F00 E00CE440 2402002D */ addiu $v0, $zero, 0x2d +/* 3D2F04 E00CE444 AFA40018 */ sw $a0, 0x18($sp) +/* 3D2F08 E00CE448 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D2F0C E00CE44C AFBF0020 */ sw $ra, 0x20($sp) +/* 3D2F10 E00CE450 0C080120 */ jal func_E0200480 +/* 3D2F14 E00CE454 AFA20010 */ sw $v0, 0x10($sp) +/* 3D2F18 E00CE458 8C430000 */ lw $v1, ($v0) +/* 3D2F1C E00CE45C 34630002 */ ori $v1, $v1, 2 +/* 3D2F20 E00CE460 AC430000 */ sw $v1, ($v0) +/* 3D2F24 E00CE464 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D2F28 E00CE468 03E00008 */ jr $ra +/* 3D2F2C E00CE46C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D2AC0/func_E00CE470.s b/asm/nonmatchings/code_3D2AC0/func_E00CE470.s new file mode 100644 index 0000000000..db14521606 --- /dev/null +++ b/asm/nonmatchings/code_3D2AC0/func_E00CE470.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CE470 +/* 3D2F30 E00CE470 03E00008 */ jr $ra +/* 3D2F34 E00CE474 00000000 */ nop diff --git a/asm/nonmatchings/code_3D2AC0/func_E00CE478.s b/asm/nonmatchings/code_3D2AC0/func_E00CE478.s new file mode 100644 index 0000000000..6d0fdd1ef2 --- /dev/null +++ b/asm/nonmatchings/code_3D2AC0/func_E00CE478.s @@ -0,0 +1,638 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00CE478 +/* 3D2F38 E00CE478 27BDFEE0 */ addiu $sp, $sp, -0x120 +/* 3D2F3C E00CE47C 0080502D */ daddu $t2, $a0, $zero +/* 3D2F40 E00CE480 3C0BDB06 */ lui $t3, 0xdb06 +/* 3D2F44 E00CE484 356B0024 */ ori $t3, $t3, 0x24 +/* 3D2F48 E00CE488 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D2F4C E00CE48C AFB300D4 */ sw $s3, 0xd4($sp) +/* 3D2F50 E00CE490 3C130001 */ lui $s3, 1 +/* 3D2F54 E00CE494 36731630 */ ori $s3, $s3, 0x1630 +/* 3D2F58 E00CE498 AFB400D8 */ sw $s4, 0xd8($sp) +/* 3D2F5C E00CE49C 0000A02D */ daddu $s4, $zero, $zero +/* 3D2F60 E00CE4A0 AFBE00E8 */ sw $fp, 0xe8($sp) +/* 3D2F64 E00CE4A4 241E0400 */ addiu $fp, $zero, 0x400 +/* 3D2F68 E00CE4A8 AFB700E4 */ sw $s7, 0xe4($sp) +/* 3D2F6C E00CE4AC 24170100 */ addiu $s7, $zero, 0x100 +/* 3D2F70 E00CE4B0 AFB500DC */ sw $s5, 0xdc($sp) +/* 3D2F74 E00CE4B4 0280A82D */ daddu $s5, $s4, $zero +/* 3D2F78 E00CE4B8 AFB100CC */ sw $s1, 0xcc($sp) +/* 3D2F7C E00CE4BC 3C11800A */ lui $s1, %hi(D_8009A66C) +/* 3D2F80 E00CE4C0 2631A66C */ addiu $s1, $s1, %lo(D_8009A66C) +/* 3D2F84 E00CE4C4 AFBF00EC */ sw $ra, 0xec($sp) +/* 3D2F88 E00CE4C8 AFB600E0 */ sw $s6, 0xe0($sp) +/* 3D2F8C E00CE4CC AFB200D0 */ sw $s2, 0xd0($sp) +/* 3D2F90 E00CE4D0 AFB000C8 */ sw $s0, 0xc8($sp) +/* 3D2F94 E00CE4D4 F7BE0118 */ sdc1 $f30, 0x118($sp) +/* 3D2F98 E00CE4D8 F7BC0110 */ sdc1 $f28, 0x110($sp) +/* 3D2F9C E00CE4DC F7BA0108 */ sdc1 $f26, 0x108($sp) +/* 3D2FA0 E00CE4E0 F7B80100 */ sdc1 $f24, 0x100($sp) +/* 3D2FA4 E00CE4E4 F7B600F8 */ sdc1 $f22, 0xf8($sp) +/* 3D2FA8 E00CE4E8 F7B400F0 */ sdc1 $f20, 0xf0($sp) +/* 3D2FAC E00CE4EC 8E230000 */ lw $v1, ($s1) +/* 3D2FB0 E00CE4F0 44800000 */ mtc1 $zero, $f0 +/* 3D2FB4 E00CE4F4 3C0142C8 */ lui $at, 0x42c8 +/* 3D2FB8 E00CE4F8 4481B000 */ mtc1 $at, $f22 +/* 3D2FBC E00CE4FC 8D56000C */ lw $s6, 0xc($t2) +/* 3D2FC0 E00CE500 3C014080 */ lui $at, 0x4080 +/* 3D2FC4 E00CE504 44812000 */ mtc1 $at, $f4 +/* 3D2FC8 E00CE508 0060402D */ daddu $t0, $v1, $zero +/* 3D2FCC E00CE50C 44050000 */ mfc1 $a1, $f0 +/* 3D2FD0 E00CE510 24630008 */ addiu $v1, $v1, 8 +/* 3D2FD4 E00CE514 AE230000 */ sw $v1, ($s1) +/* 3D2FD8 E00CE518 8ECC0010 */ lw $t4, 0x10($s6) +/* 3D2FDC E00CE51C 3C02E700 */ lui $v0, 0xe700 +/* 3D2FE0 E00CE520 AFAC00A0 */ sw $t4, 0xa0($sp) +/* 3D2FE4 E00CE524 8EC90024 */ lw $t1, 0x24($s6) +/* 3D2FE8 E00CE528 C6C60034 */ lwc1 $f6, 0x34($s6) +/* 3D2FEC E00CE52C 00A0302D */ daddu $a2, $a1, $zero +/* 3D2FF0 E00CE530 E7A600B8 */ swc1 $f6, 0xb8($sp) +/* 3D2FF4 E00CE534 C6C0013C */ lwc1 $f0, 0x13c($s6) +/* 3D2FF8 E00CE538 C6C20140 */ lwc1 $f2, 0x140($s6) +/* 3D2FFC E00CE53C AD020000 */ sw $v0, ($t0) +/* 3D3000 E00CE540 24620008 */ addiu $v0, $v1, 8 +/* 3D3004 E00CE544 AD000004 */ sw $zero, 4($t0) +/* 3D3008 E00CE548 3C088000 */ lui $t0, 0x8000 +/* 3D300C E00CE54C AE220000 */ sw $v0, ($s1) +/* 3D3010 E00CE550 46040002 */ mul.s $f0, $f0, $f4 +/* 3D3014 E00CE554 00000000 */ nop +/* 3D3018 E00CE558 AC6B0000 */ sw $t3, ($v1) +/* 3D301C E00CE55C 8D420010 */ lw $v0, 0x10($t2) +/* 3D3020 E00CE560 00094843 */ sra $t1, $t1, 1 +/* 3D3024 E00CE564 8C42001C */ lw $v0, 0x1c($v0) +/* 3D3028 E00CE568 46041082 */ mul.s $f2, $f2, $f4 +/* 3D302C E00CE56C 00000000 */ nop +/* 3D3030 E00CE570 00481021 */ addu $v0, $v0, $t0 +/* 3D3034 E00CE574 AC620004 */ sw $v0, 4($v1) +/* 3D3038 E00CE578 AFA900A4 */ sw $t1, 0xa4($sp) +/* 3D303C E00CE57C 4600018D */ trunc.w.s $f6, $f0 +/* 3D3040 E00CE580 E7A600B0 */ swc1 $f6, 0xb0($sp) +/* 3D3044 E00CE584 4600118D */ trunc.w.s $f6, $f2 +/* 3D3048 E00CE588 E7A600B4 */ swc1 $f6, 0xb4($sp) +/* 3D304C E00CE58C 0C080108 */ jal func_E0200420 +/* 3D3050 E00CE590 00A0382D */ daddu $a3, $a1, $zero +/* 3D3054 E00CE594 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D3058 E00CE598 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3D305C E00CE59C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3D3060 E00CE5A0 3C12800A */ lui $s2, %hi(D_8009A674) +/* 3D3064 E00CE5A4 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 3D3068 E00CE5A8 96050000 */ lhu $a1, ($s0) +/* 3D306C E00CE5AC 8E420000 */ lw $v0, ($s2) +/* 3D3070 E00CE5B0 00052980 */ sll $a1, $a1, 6 +/* 3D3074 E00CE5B4 00B32821 */ addu $a1, $a1, $s3 +/* 3D3078 E00CE5B8 0C080118 */ jal func_E0200460 +/* 3D307C E00CE5BC 00452821 */ addu $a1, $v0, $a1 +/* 3D3080 E00CE5C0 3C03DA38 */ lui $v1, 0xda38 +/* 3D3084 E00CE5C4 34630002 */ ori $v1, $v1, 2 +/* 3D3088 E00CE5C8 8E240000 */ lw $a0, ($s1) +/* 3D308C E00CE5CC 96020000 */ lhu $v0, ($s0) +/* 3D3090 E00CE5D0 0080282D */ daddu $a1, $a0, $zero +/* 3D3094 E00CE5D4 24840008 */ addiu $a0, $a0, 8 +/* 3D3098 E00CE5D8 248C0010 */ addiu $t4, $a0, 0x10 +/* 3D309C E00CE5DC AFAC00AC */ sw $t4, 0xac($sp) +/* 3D30A0 E00CE5E0 AE240000 */ sw $a0, ($s1) +/* 3D30A4 E00CE5E4 ACA30000 */ sw $v1, ($a1) +/* 3D30A8 E00CE5E8 24430001 */ addiu $v1, $v0, 1 +/* 3D30AC E00CE5EC 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D30B0 E00CE5F0 00021180 */ sll $v0, $v0, 6 +/* 3D30B4 E00CE5F4 A6030000 */ sh $v1, ($s0) +/* 3D30B8 E00CE5F8 8E430000 */ lw $v1, ($s2) +/* 3D30BC E00CE5FC 00531021 */ addu $v0, $v0, $s3 +/* 3D30C0 E00CE600 00621821 */ addu $v1, $v1, $v0 +/* 3D30C4 E00CE604 24820008 */ addiu $v0, $a0, 8 +/* 3D30C8 E00CE608 ACA30004 */ sw $v1, 4($a1) +/* 3D30CC E00CE60C AE220000 */ sw $v0, ($s1) +/* 3D30D0 E00CE610 3C02DE00 */ lui $v0, 0xde00 +/* 3D30D4 E00CE614 AC820000 */ sw $v0, ($a0) +/* 3D30D8 E00CE618 3C020900 */ lui $v0, 0x900 +/* 3D30DC E00CE61C 24420400 */ addiu $v0, $v0, 0x400 +/* 3D30E0 E00CE620 AC820004 */ sw $v0, 4($a0) +/* 3D30E4 E00CE624 3C02DE01 */ lui $v0, 0xde01 +/* 3D30E8 E00CE628 AC820008 */ sw $v0, 8($a0) +/* 3D30EC E00CE62C 24820210 */ addiu $v0, $a0, 0x210 +/* 3D30F0 E00CE630 AC82000C */ sw $v0, 0xc($a0) +/* 3D30F4 E00CE634 AE220000 */ sw $v0, ($s1) +/* 3D30F8 E00CE638 00141100 */ sll $v0, $s4, 4 +.LE00CE63C: +/* 3D30FC E00CE63C 4495A000 */ mtc1 $s5, $f20 +/* 3D3100 E00CE640 00000000 */ nop +/* 3D3104 E00CE644 4680A520 */ cvt.s.w $f20, $f20 +/* 3D3108 E00CE648 8FAC00AC */ lw $t4, 0xac($sp) +/* 3D310C E00CE64C 4600A306 */ mov.s $f12, $f20 +/* 3D3110 E00CE650 0C080144 */ jal func_E0200510 +/* 3D3114 E00CE654 01828021 */ addu $s0, $t4, $v0 +/* 3D3118 E00CE658 46160002 */ mul.s $f0, $f0, $f22 +/* 3D311C E00CE65C 00000000 */ nop +/* 3D3120 E00CE660 4600A306 */ mov.s $f12, $f20 +/* 3D3124 E00CE664 26B50018 */ addiu $s5, $s5, 0x18 +/* 3D3128 E00CE668 A6000002 */ sh $zero, 2($s0) +/* 3D312C E00CE66C 4600018D */ trunc.w.s $f6, $f0 +/* 3D3130 E00CE670 44023000 */ mfc1 $v0, $f6 +/* 3D3134 E00CE674 0C080140 */ jal func_E0200500 +/* 3D3138 E00CE678 A6020000 */ sh $v0, ($s0) +/* 3D313C E00CE67C 46160002 */ mul.s $f0, $f0, $f22 +/* 3D3140 E00CE680 00000000 */ nop +/* 3D3144 E00CE684 4600A306 */ mov.s $f12, $f20 +/* 3D3148 E00CE688 001411C0 */ sll $v0, $s4, 7 +/* 3D314C E00CE68C A6020008 */ sh $v0, 8($s0) +/* 3D3150 E00CE690 A600000A */ sh $zero, 0xa($s0) +/* 3D3154 E00CE694 4600018D */ trunc.w.s $f6, $f0 +/* 3D3158 E00CE698 44023000 */ mfc1 $v0, $f6 +/* 3D315C E00CE69C 0C080144 */ jal func_E0200510 +/* 3D3160 E00CE6A0 A6020004 */ sh $v0, 4($s0) +/* 3D3164 E00CE6A4 46160002 */ mul.s $f0, $f0, $f22 +/* 3D3168 E00CE6A8 00000000 */ nop +/* 3D316C E00CE6AC 8FAC00AC */ lw $t4, 0xac($sp) +/* 3D3170 E00CE6B0 4600A306 */ mov.s $f12, $f20 +/* 3D3174 E00CE6B4 01978021 */ addu $s0, $t4, $s7 +/* 3D3178 E00CE6B8 26F70010 */ addiu $s7, $s7, 0x10 +/* 3D317C E00CE6BC A6000002 */ sh $zero, 2($s0) +/* 3D3180 E00CE6C0 4600018D */ trunc.w.s $f6, $f0 +/* 3D3184 E00CE6C4 44023000 */ mfc1 $v0, $f6 +/* 3D3188 E00CE6C8 0C080140 */ jal func_E0200500 +/* 3D318C E00CE6CC A6020000 */ sh $v0, ($s0) +/* 3D3190 E00CE6D0 46160002 */ mul.s $f0, $f0, $f22 +/* 3D3194 E00CE6D4 00000000 */ nop +/* 3D3198 E00CE6D8 00141240 */ sll $v0, $s4, 9 +/* 3D319C E00CE6DC 26940001 */ addiu $s4, $s4, 1 +/* 3D31A0 E00CE6E0 A6020008 */ sh $v0, 8($s0) +/* 3D31A4 E00CE6E4 A61E000A */ sh $fp, 0xa($s0) +/* 3D31A8 E00CE6E8 4600018D */ trunc.w.s $f6, $f0 +/* 3D31AC E00CE6EC 44023000 */ mfc1 $v0, $f6 +/* 3D31B0 E00CE6F0 00000000 */ nop +/* 3D31B4 E00CE6F4 A6020004 */ sh $v0, 4($s0) +/* 3D31B8 E00CE6F8 2A820010 */ slti $v0, $s4, 0x10 +/* 3D31BC E00CE6FC 1440FFCF */ bnez $v0, .LE00CE63C +/* 3D31C0 E00CE700 00141100 */ sll $v0, $s4, 4 +/* 3D31C4 E00CE704 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3D31C8 E00CE708 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3D31CC E00CE70C 0040402D */ daddu $t0, $v0, $zero +/* 3D31D0 E00CE710 8D030000 */ lw $v1, ($t0) +/* 3D31D4 E00CE714 0000A02D */ daddu $s4, $zero, $zero +/* 3D31D8 E00CE718 24620008 */ addiu $v0, $v1, 8 +/* 3D31DC E00CE71C AFA200A8 */ sw $v0, 0xa8($sp) +/* 3D31E0 E00CE720 3C02DE01 */ lui $v0, 0xde01 +/* 3D31E4 E00CE724 AC620000 */ sw $v0, ($v1) +/* 3D31E8 E00CE728 24620088 */ addiu $v0, $v1, 0x88 +/* 3D31EC E00CE72C AC620004 */ sw $v0, 4($v1) +/* 3D31F0 E00CE730 8FAC00A8 */ lw $t4, 0xa8($sp) +/* 3D31F4 E00CE734 3C090600 */ lui $t1, 0x600 +/* 3D31F8 E00CE738 AD0C0000 */ sw $t4, ($t0) +.LE00CE73C: +/* 3D31FC E00CE73C 26830010 */ addiu $v1, $s4, 0x10 +/* 3D3200 E00CE740 26840001 */ addiu $a0, $s4, 1 +/* 3D3204 E00CE744 00143040 */ sll $a2, $s4, 1 +/* 3D3208 E00CE748 26850011 */ addiu $a1, $s4, 0x11 +/* 3D320C E00CE74C 0080A02D */ daddu $s4, $a0, $zero +/* 3D3210 E00CE750 00031840 */ sll $v1, $v1, 1 +/* 3D3214 E00CE754 306300FF */ andi $v1, $v1, 0xff +/* 3D3218 E00CE758 00031C00 */ sll $v1, $v1, 0x10 +/* 3D321C E00CE75C 00142040 */ sll $a0, $s4, 1 +/* 3D3220 E00CE760 308400FF */ andi $a0, $a0, 0xff +/* 3D3224 E00CE764 30C600FF */ andi $a2, $a2, 0xff +/* 3D3228 E00CE768 00052A40 */ sll $a1, $a1, 9 +/* 3D322C E00CE76C 8D020000 */ lw $v0, ($t0) +/* 3D3230 E00CE770 30A5FE00 */ andi $a1, $a1, 0xfe00 +/* 3D3234 E00CE774 0040382D */ daddu $a3, $v0, $zero +/* 3D3238 E00CE778 24420008 */ addiu $v0, $v0, 8 +/* 3D323C E00CE77C AD020000 */ sw $v0, ($t0) +/* 3D3240 E00CE780 00041200 */ sll $v0, $a0, 8 +/* 3D3244 E00CE784 00621025 */ or $v0, $v1, $v0 +/* 3D3248 E00CE788 00461025 */ or $v0, $v0, $a2 +/* 3D324C E00CE78C 00491025 */ or $v0, $v0, $t1 +/* 3D3250 E00CE790 00651825 */ or $v1, $v1, $a1 +/* 3D3254 E00CE794 00641825 */ or $v1, $v1, $a0 +/* 3D3258 E00CE798 ACE20000 */ sw $v0, ($a3) +/* 3D325C E00CE79C 2A82000F */ slti $v0, $s4, 0xf +/* 3D3260 E00CE7A0 1440FFE6 */ bnez $v0, .LE00CE73C +/* 3D3264 E00CE7A4 ACE30004 */ sw $v1, 4($a3) +/* 3D3268 E00CE7A8 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D326C E00CE7AC 3C100001 */ lui $s0, 1 +/* 3D3270 E00CE7B0 36101630 */ ori $s0, $s0, 0x1630 +/* 3D3274 E00CE7B4 0000A02D */ daddu $s4, $zero, $zero +/* 3D3278 E00CE7B8 27B30060 */ addiu $s3, $sp, 0x60 +/* 3D327C E00CE7BC 3C028007 */ lui $v0, %hi(D_800741F0) +/* 3D3280 E00CE7C0 244241F0 */ addiu $v0, $v0, %lo(D_800741F0) +/* 3D3284 E00CE7C4 0040B82D */ daddu $s7, $v0, $zero +/* 3D3288 E00CE7C8 3C1E0001 */ lui $fp, 1 +/* 3D328C E00CE7CC 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3D3290 E00CE7D0 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3D3294 E00CE7D4 0040A82D */ daddu $s5, $v0, $zero +/* 3D3298 E00CE7D8 3C0CD838 */ lui $t4, 0xd838 +/* 3D329C E00CE7DC 358C0002 */ ori $t4, $t4, 2 +/* 3D32A0 E00CE7E0 AFAC00C4 */ sw $t4, 0xc4($sp) +/* 3D32A4 E00CE7E4 8EA20000 */ lw $v0, ($s5) +/* 3D32A8 E00CE7E8 4480F000 */ mtc1 $zero, $f30 +/* 3D32AC E00CE7EC 3C013DCC */ lui $at, 0x3dcc +/* 3D32B0 E00CE7F0 3421CCCD */ ori $at, $at, 0xcccd +/* 3D32B4 E00CE7F4 44810000 */ mtc1 $at, $f0 +/* 3D32B8 E00CE7F8 0040182D */ daddu $v1, $v0, $zero +/* 3D32BC E00CE7FC 44050000 */ mfc1 $a1, $f0 +/* 3D32C0 E00CE800 24420008 */ addiu $v0, $v0, 8 +/* 3D32C4 E00CE804 AEA20000 */ sw $v0, ($s5) +/* 3D32C8 E00CE808 3C02DF00 */ lui $v0, 0xdf00 +/* 3D32CC E00CE80C AC620000 */ sw $v0, ($v1) +/* 3D32D0 E00CE810 AC600004 */ sw $zero, 4($v1) +/* 3D32D4 E00CE814 00A0302D */ daddu $a2, $a1, $zero +/* 3D32D8 E00CE818 0C080110 */ jal func_E0200440 +/* 3D32DC E00CE81C 00A0382D */ daddu $a3, $a1, $zero +/* 3D32E0 E00CE820 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D32E4 E00CE824 96E50000 */ lhu $a1, ($s7) +/* 3D32E8 E00CE828 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3D32EC E00CE82C 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3D32F0 E00CE830 00052980 */ sll $a1, $a1, 6 +/* 3D32F4 E00CE834 00B02821 */ addu $a1, $a1, $s0 +/* 3D32F8 E00CE838 0C080118 */ jal func_E0200460 +/* 3D32FC E00CE83C 00452821 */ addu $a1, $v0, $a1 +/* 3D3300 E00CE840 8EA20000 */ lw $v0, ($s5) +/* 3D3304 E00CE844 3C014120 */ lui $at, 0x4120 +/* 3D3308 E00CE848 4481D000 */ mtc1 $at, $f26 +/* 3D330C E00CE84C 0040202D */ daddu $a0, $v0, $zero +/* 3D3310 E00CE850 24420008 */ addiu $v0, $v0, 8 +/* 3D3314 E00CE854 AFA200C0 */ sw $v0, 0xc0($sp) +/* 3D3318 E00CE858 8FAC00C0 */ lw $t4, 0xc0($sp) +/* 3D331C E00CE85C 24420008 */ addiu $v0, $v0, 8 +/* 3D3320 E00CE860 AFA200BC */ sw $v0, 0xbc($sp) +/* 3D3324 E00CE864 AEAC0000 */ sw $t4, ($s5) +/* 3D3328 E00CE868 96E20000 */ lhu $v0, ($s7) +/* 3D332C E00CE86C 3C03DA38 */ lui $v1, 0xda38 +/* 3D3330 E00CE870 AC830000 */ sw $v1, ($a0) +/* 3D3334 E00CE874 24430001 */ addiu $v1, $v0, 1 +/* 3D3338 E00CE878 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D333C E00CE87C 00021180 */ sll $v0, $v0, 6 +/* 3D3340 E00CE880 A6E30000 */ sh $v1, ($s7) +/* 3D3344 E00CE884 3C03800A */ lui $v1, %hi(D_8009A674) +/* 3D3348 E00CE888 8C63A674 */ lw $v1, %lo(D_8009A674)($v1) +/* 3D334C E00CE88C 00501021 */ addu $v0, $v0, $s0 +/* 3D3350 E00CE890 00621821 */ addu $v1, $v1, $v0 +/* 3D3354 E00CE894 AC830004 */ sw $v1, 4($a0) +/* 3D3358 E00CE898 8FAC00BC */ lw $t4, 0xbc($sp) +/* 3D335C E00CE89C 37DE1630 */ ori $fp, $fp, 0x1630 +/* 3D3360 E00CE8A0 AEAC0000 */ sw $t4, ($s5) +.LE00CE8A4: +/* 3D3364 E00CE8A4 00141080 */ sll $v0, $s4, 2 +/* 3D3368 E00CE8A8 3C013F80 */ lui $at, 0x3f80 +/* 3D336C E00CE8AC 44813000 */ mtc1 $at, $f6 +/* 3D3370 E00CE8B0 02C29021 */ addu $s2, $s6, $v0 +/* 3D3374 E00CE8B4 E7A60010 */ swc1 $f6, 0x10($sp) +/* 3D3378 E00CE8B8 C6400038 */ lwc1 $f0, 0x38($s2) +/* 3D337C E00CE8BC 461A0002 */ mul.s $f0, $f0, $f26 +/* 3D3380 E00CE8C0 00000000 */ nop +/* 3D3384 E00CE8C4 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3D3388 E00CE8C8 C6400058 */ lwc1 $f0, 0x58($s2) +/* 3D338C E00CE8CC 461A0002 */ mul.s $f0, $f0, $f26 +/* 3D3390 E00CE8D0 00000000 */ nop +/* 3D3394 E00CE8D4 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3D3398 E00CE8D8 C6400078 */ lwc1 $f0, 0x78($s2) +/* 3D339C E00CE8DC 461A0002 */ mul.s $f0, $f0, $f26 +/* 3D33A0 E00CE8E0 00000000 */ nop +/* 3D33A4 E00CE8E4 4405F000 */ mfc1 $a1, $f30 +/* 3D33A8 E00CE8E8 4406F000 */ mfc1 $a2, $f30 +/* 3D33AC E00CE8EC E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3D33B0 E00CE8F0 8E470118 */ lw $a3, 0x118($s2) +/* 3D33B4 E00CE8F4 0C080180 */ jal func_E0200600 +/* 3D33B8 E00CE8F8 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D33BC E00CE8FC 02940018 */ mult $s4, $s4 +/* 3D33C0 E00CE900 00006012 */ mflo $t4 +/* 3D33C4 E00CE904 C6C00138 */ lwc1 $f0, 0x138($s6) +/* 3D33C8 E00CE908 448CE000 */ mtc1 $t4, $f28 +/* 3D33CC E00CE90C 00000000 */ nop +/* 3D33D0 E00CE910 4680E720 */ cvt.s.w $f28, $f28 +/* 3D33D4 E00CE914 461C0000 */ add.s $f0, $f0, $f28 +/* 3D33D8 E00CE918 3C06BCF5 */ lui $a2, 0xbcf5 +/* 3D33DC E00CE91C 34C6C28F */ ori $a2, $a2, 0xc28f +/* 3D33E0 E00CE920 3C073F80 */ lui $a3, 0x3f80 +/* 3D33E4 E00CE924 44050000 */ mfc1 $a1, $f0 +/* 3D33E8 E00CE928 3C013DCC */ lui $at, 0x3dcc +/* 3D33EC E00CE92C 3421CCCD */ ori $at, $at, 0xcccd +/* 3D33F0 E00CE930 44810000 */ mtc1 $at, $f0 +/* 3D33F4 E00CE934 0260202D */ daddu $a0, $s3, $zero +/* 3D33F8 E00CE938 0C080104 */ jal func_E0200410 +/* 3D33FC E00CE93C E7A00010 */ swc1 $f0, 0x10($sp) +/* 3D3400 E00CE940 0260202D */ daddu $a0, $s3, $zero +/* 3D3404 E00CE944 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D3408 E00CE948 0C080114 */ jal func_E0200450 +/* 3D340C E00CE94C 00A0302D */ daddu $a2, $a1, $zero +/* 3D3410 E00CE950 C6400098 */ lwc1 $f0, 0x98($s2) +/* 3D3414 E00CE954 8FAC00A0 */ lw $t4, 0xa0($sp) +/* 3D3418 E00CE958 C7A600B8 */ lwc1 $f6, 0xb8($sp) +/* 3D341C E00CE95C 29820010 */ slti $v0, $t4, 0x10 +/* 3D3420 E00CE960 46060102 */ mul.s $f4, $f0, $f6 +/* 3D3424 E00CE964 00000000 */ nop +/* 3D3428 E00CE968 1040000C */ beqz $v0, .LE00CE99C +/* 3D342C E00CE96C 2402007F */ addiu $v0, $zero, 0x7f +/* 3D3430 E00CE970 8FAC00A4 */ lw $t4, 0xa4($sp) +/* 3D3434 E00CE974 3C013CA3 */ lui $at, 0x3ca3 +/* 3D3438 E00CE978 3421D70A */ ori $at, $at, 0xd70a +/* 3D343C E00CE97C 44811000 */ mtc1 $at, $f2 +/* 3D3440 E00CE980 004C1023 */ subu $v0, $v0, $t4 +/* 3D3444 E00CE984 44820000 */ mtc1 $v0, $f0 +/* 3D3448 E00CE988 00000000 */ nop +/* 3D344C E00CE98C 46800020 */ cvt.s.w $f0, $f0 +/* 3D3450 E00CE990 46020002 */ mul.s $f0, $f0, $f2 +/* 3D3454 E00CE994 00000000 */ nop +/* 3D3458 E00CE998 46002100 */ add.s $f4, $f4, $f0 +.LE00CE99C: +/* 3D345C E00CE99C 0260202D */ daddu $a0, $s3, $zero +/* 3D3460 E00CE9A0 44052000 */ mfc1 $a1, $f4 +/* 3D3464 E00CE9A4 8FA600B8 */ lw $a2, 0xb8($sp) +/* 3D3468 E00CE9A8 0C080110 */ jal func_E0200440 +/* 3D346C E00CE9AC 00A0382D */ daddu $a3, $a1, $zero +/* 3D3470 E00CE9B0 0260202D */ daddu $a0, $s3, $zero +/* 3D3474 E00CE9B4 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D3478 E00CE9B8 0C080114 */ jal func_E0200450 +/* 3D347C E00CE9BC 00A0302D */ daddu $a2, $a1, $zero +/* 3D3480 E00CE9C0 C65400F8 */ lwc1 $f20, 0xf8($s2) +/* 3D3484 E00CE9C4 461AA502 */ mul.s $f20, $f20, $f26 +/* 3D3488 E00CE9C8 00000000 */ nop +/* 3D348C E00CE9CC C65600B8 */ lwc1 $f22, 0xb8($s2) +/* 3D3490 E00CE9D0 0C080140 */ jal func_E0200500 +/* 3D3494 E00CE9D4 4600B306 */ mov.s $f12, $f22 +/* 3D3498 E00CE9D8 4600A602 */ mul.s $f24, $f20, $f0 +/* 3D349C E00CE9DC 00000000 */ nop +/* 3D34A0 E00CE9E0 0C080144 */ jal func_E0200510 +/* 3D34A4 E00CE9E4 4600B306 */ mov.s $f12, $f22 +/* 3D34A8 E00CE9E8 4600A502 */ mul.s $f20, $f20, $f0 +/* 3D34AC E00CE9EC 00000000 */ nop +/* 3D34B0 E00CE9F0 4406F000 */ mfc1 $a2, $f30 +/* 3D34B4 E00CE9F4 4407A000 */ mfc1 $a3, $f20 +/* 3D34B8 E00CE9F8 4405C000 */ mfc1 $a1, $f24 +/* 3D34BC E00CE9FC 0C080108 */ jal func_E0200420 +/* 3D34C0 E00CEA00 0260202D */ daddu $a0, $s3, $zero +/* 3D34C4 E00CEA04 0260202D */ daddu $a0, $s3, $zero +/* 3D34C8 E00CEA08 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D34CC E00CEA0C 0C080114 */ jal func_E0200450 +/* 3D34D0 E00CEA10 00A0302D */ daddu $a2, $a1, $zero +/* 3D34D4 E00CEA14 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D34D8 E00CEA18 96E50000 */ lhu $a1, ($s7) +/* 3D34DC E00CEA1C 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3D34E0 E00CEA20 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3D34E4 E00CEA24 00052980 */ sll $a1, $a1, 6 +/* 3D34E8 E00CEA28 00BE2821 */ addu $a1, $a1, $fp +/* 3D34EC E00CEA2C 0C080118 */ jal func_E0200460 +/* 3D34F0 E00CEA30 00452821 */ addu $a1, $v0, $a1 +/* 3D34F4 E00CEA34 3C050101 */ lui $a1, 0x101 +/* 3D34F8 E00CEA38 34A50020 */ ori $a1, $a1, 0x20 +/* 3D34FC E00CEA3C 8EA80000 */ lw $t0, ($s5) +/* 3D3500 E00CEA40 96E70000 */ lhu $a3, ($s7) +/* 3D3504 E00CEA44 3C03800A */ lui $v1, %hi(D_8009A674) +/* 3D3508 E00CEA48 8C63A674 */ lw $v1, %lo(D_8009A674)($v1) +/* 3D350C E00CEA4C 0100202D */ daddu $a0, $t0, $zero +/* 3D3510 E00CEA50 25080008 */ addiu $t0, $t0, 8 +/* 3D3514 E00CEA54 3C0CDA38 */ lui $t4, 0xda38 +/* 3D3518 E00CEA58 30E2FFFF */ andi $v0, $a3, 0xffff +/* 3D351C E00CEA5C 00021180 */ sll $v0, $v0, 6 +/* 3D3520 E00CEA60 005E1021 */ addu $v0, $v0, $fp +/* 3D3524 E00CEA64 00621821 */ addu $v1, $v1, $v0 +/* 3D3528 E00CEA68 AC8C0000 */ sw $t4, ($a0) +/* 3D352C E00CEA6C AC830004 */ sw $v1, 4($a0) +/* 3D3530 E00CEA70 AD050000 */ sw $a1, ($t0) +/* 3D3534 E00CEA74 8FAC00AC */ lw $t4, 0xac($sp) +/* 3D3538 E00CEA78 26910001 */ addiu $s1, $s4, 1 +/* 3D353C E00CEA7C AD0C0004 */ sw $t4, 4($t0) +/* 3D3540 E00CEA80 8FAC00C4 */ lw $t4, 0xc4($sp) +/* 3D3544 E00CEA84 00118080 */ sll $s0, $s1, 2 +/* 3D3548 E00CEA88 AD0C0008 */ sw $t4, 8($t0) +/* 3D354C E00CEA8C 240C0040 */ addiu $t4, $zero, 0x40 +/* 3D3550 E00CEA90 3C013F80 */ lui $at, 0x3f80 +/* 3D3554 E00CEA94 44813000 */ mtc1 $at, $f6 +/* 3D3558 E00CEA98 02D08021 */ addu $s0, $s6, $s0 +/* 3D355C E00CEA9C AD0C000C */ sw $t4, 0xc($t0) +/* 3D3560 E00CEAA0 E7A60010 */ swc1 $f6, 0x10($sp) +/* 3D3564 E00CEAA4 C6000038 */ lwc1 $f0, 0x38($s0) +/* 3D3568 E00CEAA8 461A0002 */ mul.s $f0, $f0, $f26 +/* 3D356C E00CEAAC 00000000 */ nop +/* 3D3570 E00CEAB0 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3D3574 E00CEAB4 C6000058 */ lwc1 $f0, 0x58($s0) +/* 3D3578 E00CEAB8 461A0002 */ mul.s $f0, $f0, $f26 +/* 3D357C E00CEABC 00000000 */ nop +/* 3D3580 E00CEAC0 4406F000 */ mfc1 $a2, $f30 +/* 3D3584 E00CEAC4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D3588 E00CEAC8 24E70001 */ addiu $a3, $a3, 1 +/* 3D358C E00CEACC E7A00018 */ swc1 $f0, 0x18($sp) +/* 3D3590 E00CEAD0 C6000078 */ lwc1 $f0, 0x78($s0) +/* 3D3594 E00CEAD4 4405F000 */ mfc1 $a1, $f30 +/* 3D3598 E00CEAD8 461A0002 */ mul.s $f0, $f0, $f26 +/* 3D359C E00CEADC 00000000 */ nop +/* 3D35A0 E00CEAE0 25020008 */ addiu $v0, $t0, 8 +/* 3D35A4 E00CEAE4 AEA80000 */ sw $t0, ($s5) +/* 3D35A8 E00CEAE8 A6E70000 */ sh $a3, ($s7) +/* 3D35AC E00CEAEC AEA20000 */ sw $v0, ($s5) +/* 3D35B0 E00CEAF0 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3D35B4 E00CEAF4 8E070118 */ lw $a3, 0x118($s0) +/* 3D35B8 E00CEAF8 25080010 */ addiu $t0, $t0, 0x10 +/* 3D35BC E00CEAFC 0C080180 */ jal func_E0200600 +/* 3D35C0 E00CEB00 AEA80000 */ sw $t0, ($s5) +/* 3D35C4 E00CEB04 C6C00138 */ lwc1 $f0, 0x138($s6) +/* 3D35C8 E00CEB08 461C0000 */ add.s $f0, $f0, $f28 +/* 3D35CC E00CEB0C 3C063CF5 */ lui $a2, 0x3cf5 +/* 3D35D0 E00CEB10 34C6C28F */ ori $a2, $a2, 0xc28f +/* 3D35D4 E00CEB14 3C073F80 */ lui $a3, 0x3f80 +/* 3D35D8 E00CEB18 44050000 */ mfc1 $a1, $f0 +/* 3D35DC E00CEB1C 0260202D */ daddu $a0, $s3, $zero +/* 3D35E0 E00CEB20 0C080104 */ jal func_E0200410 +/* 3D35E4 E00CEB24 E7BE0010 */ swc1 $f30, 0x10($sp) +/* 3D35E8 E00CEB28 0260202D */ daddu $a0, $s3, $zero +/* 3D35EC E00CEB2C 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D35F0 E00CEB30 0C080114 */ jal func_E0200450 +/* 3D35F4 E00CEB34 00A0302D */ daddu $a2, $a1, $zero +/* 3D35F8 E00CEB38 C6000098 */ lwc1 $f0, 0x98($s0) +/* 3D35FC E00CEB3C C7A600B8 */ lwc1 $f6, 0xb8($sp) +/* 3D3600 E00CEB40 46060002 */ mul.s $f0, $f0, $f6 +/* 3D3604 E00CEB44 00000000 */ nop +/* 3D3608 E00CEB48 0260202D */ daddu $a0, $s3, $zero +/* 3D360C E00CEB4C 44050000 */ mfc1 $a1, $f0 +/* 3D3610 E00CEB50 44063000 */ mfc1 $a2, $f6 +/* 3D3614 E00CEB54 0C080110 */ jal func_E0200440 +/* 3D3618 E00CEB58 00A0382D */ daddu $a3, $a1, $zero +/* 3D361C E00CEB5C 0260202D */ daddu $a0, $s3, $zero +/* 3D3620 E00CEB60 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D3624 E00CEB64 0C080114 */ jal func_E0200450 +/* 3D3628 E00CEB68 00A0302D */ daddu $a2, $a1, $zero +/* 3D362C E00CEB6C C65400F8 */ lwc1 $f20, 0xf8($s2) +/* 3D3630 E00CEB70 461AA502 */ mul.s $f20, $f20, $f26 +/* 3D3634 E00CEB74 00000000 */ nop +/* 3D3638 E00CEB78 0C080140 */ jal func_E0200500 +/* 3D363C E00CEB7C C64C00B8 */ lwc1 $f12, 0xb8($s2) +/* 3D3640 E00CEB80 4600A582 */ mul.s $f22, $f20, $f0 +/* 3D3644 E00CEB84 00000000 */ nop +/* 3D3648 E00CEB88 0C080144 */ jal func_E0200510 +/* 3D364C E00CEB8C C64C00B8 */ lwc1 $f12, 0xb8($s2) +/* 3D3650 E00CEB90 4600A502 */ mul.s $f20, $f20, $f0 +/* 3D3654 E00CEB94 00000000 */ nop +/* 3D3658 E00CEB98 4406F000 */ mfc1 $a2, $f30 +/* 3D365C E00CEB9C 4407A000 */ mfc1 $a3, $f20 +/* 3D3660 E00CEBA0 4405B000 */ mfc1 $a1, $f22 +/* 3D3664 E00CEBA4 0C080108 */ jal func_E0200420 +/* 3D3668 E00CEBA8 0260202D */ daddu $a0, $s3, $zero +/* 3D366C E00CEBAC 0260202D */ daddu $a0, $s3, $zero +/* 3D3670 E00CEBB0 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D3674 E00CEBB4 0C080114 */ jal func_E0200450 +/* 3D3678 E00CEBB8 00A0302D */ daddu $a2, $a1, $zero +/* 3D367C E00CEBBC 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D3680 E00CEBC0 96E50000 */ lhu $a1, ($s7) +/* 3D3684 E00CEBC4 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3D3688 E00CEBC8 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3D368C E00CEBCC 00052980 */ sll $a1, $a1, 6 +/* 3D3690 E00CEBD0 00BE2821 */ addu $a1, $a1, $fp +/* 3D3694 E00CEBD4 0C080118 */ jal func_E0200460 +/* 3D3698 E00CEBD8 00452821 */ addu $a1, $v0, $a1 +/* 3D369C E00CEBDC 3C080101 */ lui $t0, 0x101 +/* 3D36A0 E00CEBE0 35080040 */ ori $t0, $t0, 0x40 +/* 3D36A4 E00CEBE4 3C090100 */ lui $t1, 0x100 +/* 3D36A8 E00CEBE8 3529007C */ ori $t1, $t1, 0x7c +/* 3D36AC E00CEBEC 00142900 */ sll $a1, $s4, 4 +/* 3D36B0 E00CEBF0 8EA40000 */ lw $a0, ($s5) +/* 3D36B4 E00CEBF4 96E30000 */ lhu $v1, ($s7) +/* 3D36B8 E00CEBF8 0080382D */ daddu $a3, $a0, $zero +/* 3D36BC E00CEBFC 24840008 */ addiu $a0, $a0, 8 +/* 3D36C0 E00CEC00 3C0CDA38 */ lui $t4, 0xda38 +/* 3D36C4 E00CEC04 24620001 */ addiu $v0, $v1, 1 +/* 3D36C8 E00CEC08 3063FFFF */ andi $v1, $v1, 0xffff +/* 3D36CC E00CEC0C 00031980 */ sll $v1, $v1, 6 +/* 3D36D0 E00CEC10 AEA40000 */ sw $a0, ($s5) +/* 3D36D4 E00CEC14 ACEC0000 */ sw $t4, ($a3) +/* 3D36D8 E00CEC18 A6E20000 */ sh $v0, ($s7) +/* 3D36DC E00CEC1C 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3D36E0 E00CEC20 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3D36E4 E00CEC24 007E1821 */ addu $v1, $v1, $fp +/* 3D36E8 E00CEC28 00431021 */ addu $v0, $v0, $v1 +/* 3D36EC E00CEC2C ACE20004 */ sw $v0, 4($a3) +/* 3D36F0 E00CEC30 24820008 */ addiu $v0, $a0, 8 +/* 3D36F4 E00CEC34 AEA20000 */ sw $v0, ($s5) +/* 3D36F8 E00CEC38 AC880000 */ sw $t0, ($a0) +/* 3D36FC E00CEC3C 8FAC00AC */ lw $t4, 0xac($sp) +/* 3D3700 E00CEC40 001430C0 */ sll $a2, $s4, 3 +/* 3D3704 E00CEC44 25820100 */ addiu $v0, $t4, 0x100 +/* 3D3708 E00CEC48 AC820004 */ sw $v0, 4($a0) +/* 3D370C E00CEC4C 24820010 */ addiu $v0, $a0, 0x10 +/* 3D3710 E00CEC50 AEA20000 */ sw $v0, ($s5) +/* 3D3714 E00CEC54 8FAC00C4 */ lw $t4, 0xc4($sp) +/* 3D3718 E00CEC58 24820018 */ addiu $v0, $a0, 0x18 +/* 3D371C E00CEC5C AC8C0008 */ sw $t4, 8($a0) +/* 3D3720 E00CEC60 240C0040 */ addiu $t4, $zero, 0x40 +/* 3D3724 E00CEC64 AC8C000C */ sw $t4, 0xc($a0) +/* 3D3728 E00CEC68 AEA20000 */ sw $v0, ($s5) +/* 3D372C E00CEC6C 8FAC00B0 */ lw $t4, 0xb0($sp) +/* 3D3730 E00CEC70 0220A02D */ daddu $s4, $s1, $zero +/* 3D3734 E00CEC74 01852821 */ addu $a1, $t4, $a1 +/* 3D3738 E00CEC78 30A20FFF */ andi $v0, $a1, 0xfff +/* 3D373C E00CEC7C 00021300 */ sll $v0, $v0, 0xc +/* 3D3740 E00CEC80 3C0CF200 */ lui $t4, 0xf200 +/* 3D3744 E00CEC84 004C1025 */ or $v0, $v0, $t4 +/* 3D3748 E00CEC88 24A5003F */ addiu $a1, $a1, 0x3f +/* 3D374C E00CEC8C 00052880 */ sll $a1, $a1, 2 +/* 3D3750 E00CEC90 30A50FFF */ andi $a1, $a1, 0xfff +/* 3D3754 E00CEC94 00052B00 */ sll $a1, $a1, 0xc +/* 3D3758 E00CEC98 34A5007C */ ori $a1, $a1, 0x7c +/* 3D375C E00CEC9C AC820010 */ sw $v0, 0x10($a0) +/* 3D3760 E00CECA0 24820020 */ addiu $v0, $a0, 0x20 +/* 3D3764 E00CECA4 AC850014 */ sw $a1, 0x14($a0) +/* 3D3768 E00CECA8 AEA20000 */ sw $v0, ($s5) +/* 3D376C E00CECAC 8FAC00B4 */ lw $t4, 0xb4($sp) +/* 3D3770 E00CECB0 3C0ADE00 */ lui $t2, 0xde00 +/* 3D3774 E00CECB4 01863021 */ addu $a2, $t4, $a2 +/* 3D3778 E00CECB8 30C20FFF */ andi $v0, $a2, 0xfff +/* 3D377C E00CECBC 00021300 */ sll $v0, $v0, 0xc +/* 3D3780 E00CECC0 3C0CF200 */ lui $t4, 0xf200 +/* 3D3784 E00CECC4 004C1025 */ or $v0, $v0, $t4 +/* 3D3788 E00CECC8 24C6003F */ addiu $a2, $a2, 0x3f +/* 3D378C E00CECCC 00063080 */ sll $a2, $a2, 2 +/* 3D3790 E00CECD0 30C60FFF */ andi $a2, $a2, 0xfff +/* 3D3794 E00CECD4 00063300 */ sll $a2, $a2, 0xc +/* 3D3798 E00CECD8 00C93025 */ or $a2, $a2, $t1 +/* 3D379C E00CECDC AC820018 */ sw $v0, 0x18($a0) +/* 3D37A0 E00CECE0 24820028 */ addiu $v0, $a0, 0x28 +/* 3D37A4 E00CECE4 AC86001C */ sw $a2, 0x1c($a0) +/* 3D37A8 E00CECE8 AEA20000 */ sw $v0, ($s5) +/* 3D37AC E00CECEC AC8A0020 */ sw $t2, 0x20($a0) +/* 3D37B0 E00CECF0 8FAC00A8 */ lw $t4, 0xa8($sp) +/* 3D37B4 E00CECF4 2A820007 */ slti $v0, $s4, 7 +/* 3D37B8 E00CECF8 1440FEEA */ bnez $v0, .LE00CE8A4 +/* 3D37BC E00CECFC AC8C0024 */ sw $t4, 0x24($a0) +/* 3D37C0 E00CED00 3C05D9FF */ lui $a1, 0xd9ff +/* 3D37C4 E00CED04 34A5F9FF */ ori $a1, $a1, 0xf9ff +/* 3D37C8 E00CED08 3C09D838 */ lui $t1, 0xd838 +/* 3D37CC E00CED0C 3C07800A */ lui $a3, %hi(D_8009A66C) +/* 3D37D0 E00CED10 24E7A66C */ addiu $a3, $a3, %lo(D_8009A66C) +/* 3D37D4 E00CED14 35290002 */ ori $t1, $t1, 2 +/* 3D37D8 E00CED18 8CE40000 */ lw $a0, ($a3) +/* 3D37DC E00CED1C 3C02DF00 */ lui $v0, 0xdf00 +/* 3D37E0 E00CED20 0080182D */ daddu $v1, $a0, $zero +/* 3D37E4 E00CED24 24840008 */ addiu $a0, $a0, 8 +/* 3D37E8 E00CED28 ACE40000 */ sw $a0, ($a3) +/* 3D37EC E00CED2C AC620000 */ sw $v0, ($v1) +/* 3D37F0 E00CED30 AC600004 */ sw $zero, 4($v1) +/* 3D37F4 E00CED34 8FAC00C0 */ lw $t4, 0xc0($sp) +/* 3D37F8 E00CED38 3C02DE01 */ lui $v0, 0xde01 +/* 3D37FC E00CED3C AD820000 */ sw $v0, ($t4) +/* 3D3800 E00CED40 24820008 */ addiu $v0, $a0, 8 +/* 3D3804 E00CED44 AD840004 */ sw $a0, 4($t4) +/* 3D3808 E00CED48 ACE20000 */ sw $v0, ($a3) +/* 3D380C E00CED4C 24820010 */ addiu $v0, $a0, 0x10 +/* 3D3810 E00CED50 AC850000 */ sw $a1, ($a0) +/* 3D3814 E00CED54 AC800004 */ sw $zero, 4($a0) +/* 3D3818 E00CED58 ACE20000 */ sw $v0, ($a3) +/* 3D381C E00CED5C 3C02FA00 */ lui $v0, 0xfa00 +/* 3D3820 E00CED60 AC820008 */ sw $v0, 8($a0) +/* 3D3824 E00CED64 92C2001B */ lbu $v0, 0x1b($s6) +/* 3D3828 E00CED68 92C5001F */ lbu $a1, 0x1f($s6) +/* 3D382C E00CED6C 92C60023 */ lbu $a2, 0x23($s6) +/* 3D3830 E00CED70 24830018 */ addiu $v1, $a0, 0x18 +/* 3D3834 E00CED74 ACE30000 */ sw $v1, ($a3) +/* 3D3838 E00CED78 3C03FB00 */ lui $v1, 0xfb00 +/* 3D383C E00CED7C AC830010 */ sw $v1, 0x10($a0) +/* 3D3840 E00CED80 8FAC00A4 */ lw $t4, 0xa4($sp) +/* 3D3844 E00CED84 00021600 */ sll $v0, $v0, 0x18 +/* 3D3848 E00CED88 00052C00 */ sll $a1, $a1, 0x10 +/* 3D384C E00CED8C 00451025 */ or $v0, $v0, $a1 +/* 3D3850 E00CED90 00063200 */ sll $a2, $a2, 8 +/* 3D3854 E00CED94 00461025 */ or $v0, $v0, $a2 +/* 3D3858 E00CED98 318300FF */ andi $v1, $t4, 0xff +/* 3D385C E00CED9C 00431025 */ or $v0, $v0, $v1 +/* 3D3860 E00CEDA0 AC82000C */ sw $v0, 0xc($a0) +/* 3D3864 E00CEDA4 92C3002B */ lbu $v1, 0x2b($s6) +/* 3D3868 E00CEDA8 92C6002F */ lbu $a2, 0x2f($s6) +/* 3D386C E00CEDAC 92C80033 */ lbu $t0, 0x33($s6) +/* 3D3870 E00CEDB0 24820020 */ addiu $v0, $a0, 0x20 +/* 3D3874 E00CEDB4 ACE20000 */ sw $v0, ($a3) +/* 3D3878 E00CEDB8 24820028 */ addiu $v0, $a0, 0x28 +/* 3D387C E00CEDBC AC8A0018 */ sw $t2, 0x18($a0) +/* 3D3880 E00CEDC0 8FAC00BC */ lw $t4, 0xbc($sp) +/* 3D3884 E00CEDC4 24050040 */ addiu $a1, $zero, 0x40 +/* 3D3888 E00CEDC8 AC8C001C */ sw $t4, 0x1c($a0) +/* 3D388C E00CEDCC ACE20000 */ sw $v0, ($a3) +/* 3D3890 E00CEDD0 24820030 */ addiu $v0, $a0, 0x30 +/* 3D3894 E00CEDD4 00031E00 */ sll $v1, $v1, 0x18 +/* 3D3898 E00CEDD8 00063400 */ sll $a2, $a2, 0x10 +/* 3D389C E00CEDDC 00661825 */ or $v1, $v1, $a2 +/* 3D38A0 E00CEDE0 00084200 */ sll $t0, $t0, 8 +/* 3D38A4 E00CEDE4 00681825 */ or $v1, $v1, $t0 +/* 3D38A8 E00CEDE8 34630020 */ ori $v1, $v1, 0x20 +/* 3D38AC E00CEDEC AC890020 */ sw $t1, 0x20($a0) +/* 3D38B0 E00CEDF0 AC850024 */ sw $a1, 0x24($a0) +/* 3D38B4 E00CEDF4 ACE20000 */ sw $v0, ($a3) +/* 3D38B8 E00CEDF8 AC890028 */ sw $t1, 0x28($a0) +/* 3D38BC E00CEDFC AC85002C */ sw $a1, 0x2c($a0) +/* 3D38C0 E00CEE00 AC830014 */ sw $v1, 0x14($a0) +/* 3D38C4 E00CEE04 8FBF00EC */ lw $ra, 0xec($sp) +/* 3D38C8 E00CEE08 8FBE00E8 */ lw $fp, 0xe8($sp) +/* 3D38CC E00CEE0C 8FB700E4 */ lw $s7, 0xe4($sp) +/* 3D38D0 E00CEE10 8FB600E0 */ lw $s6, 0xe0($sp) +/* 3D38D4 E00CEE14 8FB500DC */ lw $s5, 0xdc($sp) +/* 3D38D8 E00CEE18 8FB400D8 */ lw $s4, 0xd8($sp) +/* 3D38DC E00CEE1C 8FB300D4 */ lw $s3, 0xd4($sp) +/* 3D38E0 E00CEE20 8FB200D0 */ lw $s2, 0xd0($sp) +/* 3D38E4 E00CEE24 8FB100CC */ lw $s1, 0xcc($sp) +/* 3D38E8 E00CEE28 8FB000C8 */ lw $s0, 0xc8($sp) +/* 3D38EC E00CEE2C D7BE0118 */ ldc1 $f30, 0x118($sp) +/* 3D38F0 E00CEE30 D7BC0110 */ ldc1 $f28, 0x110($sp) +/* 3D38F4 E00CEE34 D7BA0108 */ ldc1 $f26, 0x108($sp) +/* 3D38F8 E00CEE38 D7B80100 */ ldc1 $f24, 0x100($sp) +/* 3D38FC E00CEE3C D7B600F8 */ ldc1 $f22, 0xf8($sp) +/* 3D3900 E00CEE40 D7B400F0 */ ldc1 $f20, 0xf0($sp) +/* 3D3904 E00CEE44 03E00008 */ jr $ra +/* 3D3908 E00CEE48 27BD0120 */ addiu $sp, $sp, 0x120 +/* 3D390C E00CEE4C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D3E20/func_E00D0000.s b/asm/nonmatchings/code_3D3E20/func_E00D0000.s new file mode 100644 index 0000000000..58d1968c64 --- /dev/null +++ b/asm/nonmatchings/code_3D3E20/func_E00D0000.s @@ -0,0 +1,108 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D0000 +/* 3D3E20 E00D0000 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 3D3E24 E00D0004 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3D3E28 E00D0008 4485B000 */ mtc1 $a1, $f22 +/* 3D3E2C E00D000C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3D3E30 E00D0010 4486C000 */ mtc1 $a2, $f24 +/* 3D3E34 E00D0014 F7BA0050 */ sdc1 $f26, 0x50($sp) +/* 3D3E38 E00D0018 4487D000 */ mtc1 $a3, $f26 +/* 3D3E3C E00D001C F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3D3E40 E00D0020 C7B40070 */ lwc1 $f20, 0x70($sp) +/* 3D3E44 E00D0024 AFB20030 */ sw $s2, 0x30($sp) +/* 3D3E48 E00D0028 0080902D */ daddu $s2, $a0, $zero +/* 3D3E4C E00D002C AFB00028 */ sw $s0, 0x28($sp) +/* 3D3E50 E00D0030 24100003 */ addiu $s0, $zero, 3 +/* 3D3E54 E00D0034 F7BC0058 */ sdc1 $f28, 0x58($sp) +/* 3D3E58 E00D0038 4480E000 */ mtc1 $zero, $f28 +/* 3D3E5C E00D003C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D3E60 E00D0040 AFBF0034 */ sw $ra, 0x34($sp) +/* 3D3E64 E00D0044 16400002 */ bnez $s2, .LE00D0050 +/* 3D3E68 E00D0048 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D3E6C E00D004C 24100007 */ addiu $s0, $zero, 7 +.LE00D0050: +/* 3D3E70 E00D0050 26100001 */ addiu $s0, $s0, 1 +/* 3D3E74 E00D0054 3C02E00D */ lui $v0, %hi(D_E00D018C) +/* 3D3E78 E00D0058 2442018C */ addiu $v0, $v0, %lo(D_E00D018C) +/* 3D3E7C E00D005C AFA00010 */ sw $zero, 0x10($sp) +/* 3D3E80 E00D0060 AC820008 */ sw $v0, 8($a0) +/* 3D3E84 E00D0064 3C02E00D */ lui $v0, %hi(D_E00D0194) +/* 3D3E88 E00D0068 24420194 */ addiu $v0, $v0, %lo(D_E00D0194) +/* 3D3E8C E00D006C AC82000C */ sw $v0, 0xc($a0) +/* 3D3E90 E00D0070 3C02E00D */ lui $v0, %hi(D_E00D0448) +/* 3D3E94 E00D0074 24420448 */ addiu $v0, $v0, %lo(D_E00D0448) +/* 3D3E98 E00D0078 AC820010 */ sw $v0, 0x10($a0) +/* 3D3E9C E00D007C 24020068 */ addiu $v0, $zero, 0x68 +/* 3D3EA0 E00D0080 AC800014 */ sw $zero, 0x14($a0) +/* 3D3EA4 E00D0084 0C080124 */ jal func_E0200490 +/* 3D3EA8 E00D0088 AC820004 */ sw $v0, 4($a0) +/* 3D3EAC E00D008C 00102040 */ sll $a0, $s0, 1 +/* 3D3EB0 E00D0090 00902021 */ addu $a0, $a0, $s0 +/* 3D3EB4 E00D0094 00042080 */ sll $a0, $a0, 2 +/* 3D3EB8 E00D0098 00902023 */ subu $a0, $a0, $s0 +/* 3D3EBC E00D009C 000420C0 */ sll $a0, $a0, 3 +/* 3D3EC0 E00D00A0 0040882D */ daddu $s1, $v0, $zero +/* 3D3EC4 E00D00A4 0C08012C */ jal func_E02004B0 +/* 3D3EC8 E00D00A8 AE300008 */ sw $s0, 8($s1) +/* 3D3ECC E00D00AC 0040182D */ daddu $v1, $v0, $zero +/* 3D3ED0 E00D00B0 14600003 */ bnez $v1, .LE00D00C0 +/* 3D3ED4 E00D00B4 AE23000C */ sw $v1, 0xc($s1) +.LE00D00B8: +/* 3D3ED8 E00D00B8 0803402E */ j .LE00D00B8 +/* 3D3EDC E00D00BC 00000000 */ nop +.LE00D00C0: +/* 3D3EE0 E00D00C0 2402003C */ addiu $v0, $zero, 0x3c +/* 3D3EE4 E00D00C4 AC620028 */ sw $v0, 0x28($v1) +/* 3D3EE8 E00D00C8 240200FF */ addiu $v0, $zero, 0xff +/* 3D3EEC E00D00CC AC620038 */ sw $v0, 0x38($v1) +/* 3D3EF0 E00D00D0 A0620050 */ sb $v0, 0x50($v1) +/* 3D3EF4 E00D00D4 A0620053 */ sb $v0, 0x53($v1) +/* 3D3EF8 E00D00D8 240200C8 */ addiu $v0, $zero, 0xc8 +/* 3D3EFC E00D00DC A0620054 */ sb $v0, 0x54($v1) +/* 3D3F00 E00D00E0 24020064 */ addiu $v0, $zero, 0x64 +/* 3D3F04 E00D00E4 AC60002C */ sw $zero, 0x2c($v1) +/* 3D3F08 E00D00E8 A4720000 */ sh $s2, ($v1) +/* 3D3F0C E00D00EC E4760004 */ swc1 $f22, 4($v1) +/* 3D3F10 E00D00F0 E4780008 */ swc1 $f24, 8($v1) +/* 3D3F14 E00D00F4 E47A000C */ swc1 $f26, 0xc($v1) +/* 3D3F18 E00D00F8 E4740024 */ swc1 $f20, 0x24($v1) +/* 3D3F1C E00D00FC E4740020 */ swc1 $f20, 0x20($v1) +/* 3D3F20 E00D0100 E474001C */ swc1 $f20, 0x1c($v1) +/* 3D3F24 E00D0104 A0600051 */ sb $zero, 0x51($v1) +/* 3D3F28 E00D0108 A0600052 */ sb $zero, 0x52($v1) +/* 3D3F2C E00D010C A0620055 */ sb $v0, 0x55($v1) +/* 3D3F30 E00D0110 24040001 */ addiu $a0, $zero, 1 +/* 3D3F34 E00D0114 0090102A */ slt $v0, $a0, $s0 +/* 3D3F38 E00D0118 10400010 */ beqz $v0, .LE00D015C +/* 3D3F3C E00D011C 24630058 */ addiu $v1, $v1, 0x58 +/* 3D3F40 E00D0120 24630030 */ addiu $v1, $v1, 0x30 +/* 3D3F44 E00D0124 2406001E */ addiu $a2, $zero, 0x1e +/* 3D3F48 E00D0128 2405FFFF */ addiu $a1, $zero, -1 +.LE00D012C: +/* 3D3F4C E00D012C 44860000 */ mtc1 $a2, $f0 +/* 3D3F50 E00D0130 00000000 */ nop +/* 3D3F54 E00D0134 46800020 */ cvt.s.w $f0, $f0 +/* 3D3F58 E00D0138 24C6001E */ addiu $a2, $a2, 0x1e +/* 3D3F5C E00D013C AC65001C */ sw $a1, 0x1c($v1) +/* 3D3F60 E00D0140 24A5FFFE */ addiu $a1, $a1, -2 +/* 3D3F64 E00D0144 24840001 */ addiu $a0, $a0, 1 +/* 3D3F68 E00D0148 E47C0004 */ swc1 $f28, 4($v1) +/* 3D3F6C E00D014C E4600000 */ swc1 $f0, ($v1) +/* 3D3F70 E00D0150 0090102A */ slt $v0, $a0, $s0 +/* 3D3F74 E00D0154 1440FFF5 */ bnez $v0, .LE00D012C +/* 3D3F78 E00D0158 24630058 */ addiu $v1, $v1, 0x58 +.LE00D015C: +/* 3D3F7C E00D015C 0220102D */ daddu $v0, $s1, $zero +/* 3D3F80 E00D0160 8FBF0034 */ lw $ra, 0x34($sp) +/* 3D3F84 E00D0164 8FB20030 */ lw $s2, 0x30($sp) +/* 3D3F88 E00D0168 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D3F8C E00D016C 8FB00028 */ lw $s0, 0x28($sp) +/* 3D3F90 E00D0170 D7BC0058 */ ldc1 $f28, 0x58($sp) +/* 3D3F94 E00D0174 D7BA0050 */ ldc1 $f26, 0x50($sp) +/* 3D3F98 E00D0178 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3D3F9C E00D017C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3D3FA0 E00D0180 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3D3FA4 E00D0184 03E00008 */ jr $ra +/* 3D3FA8 E00D0188 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_3D3E20/func_E00D018C.s b/asm/nonmatchings/code_3D3E20/func_E00D018C.s new file mode 100644 index 0000000000..baf683f1fb --- /dev/null +++ b/asm/nonmatchings/code_3D3E20/func_E00D018C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D018C +/* 3D3FAC E00D018C 03E00008 */ jr $ra +/* 3D3FB0 E00D0190 00000000 */ nop diff --git a/asm/nonmatchings/code_3D3E20/func_E00D0194.s b/asm/nonmatchings/code_3D3E20/func_E00D0194.s new file mode 100644 index 0000000000..50e7982e39 --- /dev/null +++ b/asm/nonmatchings/code_3D3E20/func_E00D0194.s @@ -0,0 +1,185 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D0194 +/* 3D3FB4 E00D0194 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 3D3FB8 E00D0198 AFB3001C */ sw $s3, 0x1c($sp) +/* 3D3FBC E00D019C 0080982D */ daddu $s3, $a0, $zero +/* 3D3FC0 E00D01A0 AFBF0024 */ sw $ra, 0x24($sp) +/* 3D3FC4 E00D01A4 AFB40020 */ sw $s4, 0x20($sp) +/* 3D3FC8 E00D01A8 AFB20018 */ sw $s2, 0x18($sp) +/* 3D3FCC E00D01AC AFB10014 */ sw $s1, 0x14($sp) +/* 3D3FD0 E00D01B0 AFB00010 */ sw $s0, 0x10($sp) +/* 3D3FD4 E00D01B4 F7BA0040 */ sdc1 $f26, 0x40($sp) +/* 3D3FD8 E00D01B8 F7B80038 */ sdc1 $f24, 0x38($sp) +/* 3D3FDC E00D01BC F7B60030 */ sdc1 $f22, 0x30($sp) +/* 3D3FE0 E00D01C0 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 3D3FE4 E00D01C4 8E64000C */ lw $a0, 0xc($s3) +/* 3D3FE8 E00D01C8 8C82002C */ lw $v0, 0x2c($a0) +/* 3D3FEC E00D01CC 8C830028 */ lw $v1, 0x28($a0) +/* 3D3FF0 E00D01D0 24420001 */ addiu $v0, $v0, 1 +/* 3D3FF4 E00D01D4 2463FFFF */ addiu $v1, $v1, -1 +/* 3D3FF8 E00D01D8 AC82002C */ sw $v0, 0x2c($a0) +/* 3D3FFC E00D01DC 04610005 */ bgez $v1, .LE00D01F4 +/* 3D4000 E00D01E0 AC830028 */ sw $v1, 0x28($a0) +/* 3D4004 E00D01E4 0C080128 */ jal func_E02004A0 +/* 3D4008 E00D01E8 0260202D */ daddu $a0, $s3, $zero +/* 3D400C E00D01EC 08034106 */ j .LE00D0418 +/* 3D4010 E00D01F0 00000000 */ nop +.LE00D01F4: +/* 3D4014 E00D01F4 8C82002C */ lw $v0, 0x2c($a0) +/* 3D4018 E00D01F8 94940000 */ lhu $s4, ($a0) +/* 3D401C E00D01FC 28420008 */ slti $v0, $v0, 8 +/* 3D4020 E00D0200 14400009 */ bnez $v0, .LE00D0228 +/* 3D4024 E00D0204 00000000 */ nop +/* 3D4028 E00D0208 3C01E00D */ lui $at, %hi(D_E00D0B20) +/* 3D402C E00D020C D4220B20 */ ldc1 $f2, %lo(D_E00D0B20)($at) +/* 3D4030 E00D0210 C4800038 */ lwc1 $f0, 0x38($a0) +/* 3D4034 E00D0214 46800021 */ cvt.d.w $f0, $f0 +/* 3D4038 E00D0218 46220002 */ mul.d $f0, $f0, $f2 +/* 3D403C E00D021C 00000000 */ nop +/* 3D4040 E00D0220 4620028D */ trunc.w.d $f10, $f0 +/* 3D4044 E00D0224 E48A0038 */ swc1 $f10, 0x38($a0) +.LE00D0228: +/* 3D4048 E00D0228 8E620008 */ lw $v0, 8($s3) +/* 3D404C E00D022C 24110001 */ addiu $s1, $zero, 1 +/* 3D4050 E00D0230 0222102A */ slt $v0, $s1, $v0 +/* 3D4054 E00D0234 10400078 */ beqz $v0, .LE00D0418 +/* 3D4058 E00D0238 24840058 */ addiu $a0, $a0, 0x58 +/* 3D405C E00D023C 2490003C */ addiu $s0, $a0, 0x3c +/* 3D4060 E00D0240 24120004 */ addiu $s2, $zero, 4 +/* 3D4064 E00D0244 3C013FE0 */ lui $at, 0x3fe0 +/* 3D4068 E00D0248 4481A800 */ mtc1 $at, $f21 +/* 3D406C E00D024C 4480A000 */ mtc1 $zero, $f20 +/* 3D4070 E00D0250 3C014200 */ lui $at, 0x4200 +/* 3D4074 E00D0254 4481B000 */ mtc1 $at, $f22 +/* 3D4078 E00D0258 3C01E00D */ lui $at, %hi(D_E00D0B28) +/* 3D407C E00D025C D4380B28 */ ldc1 $f24, %lo(D_E00D0B28)($at) +/* 3D4080 E00D0260 3C014300 */ lui $at, 0x4300 +/* 3D4084 E00D0264 4481D000 */ mtc1 $at, $f26 +.LE00D0268: +/* 3D4088 E00D0268 8E020010 */ lw $v0, 0x10($s0) +/* 3D408C E00D026C 24420001 */ addiu $v0, $v0, 1 +/* 3D4090 E00D0270 04400063 */ bltz $v0, .LE00D0400 +/* 3D4094 E00D0274 AE020010 */ sw $v0, 0x10($s0) +/* 3D4098 E00D0278 14400041 */ bnez $v0, .LE00D0380 +/* 3D409C E00D027C 00000000 */ nop +/* 3D40A0 E00D0280 C60CFFF8 */ lwc1 $f12, -8($s0) +/* 3D40A4 E00D0284 AE00FFC8 */ sw $zero, -0x38($s0) +/* 3D40A8 E00D0288 AE00FFCC */ sw $zero, -0x34($s0) +/* 3D40AC E00D028C 0C080140 */ jal func_E0200500 +/* 3D40B0 E00D0290 AE00FFD0 */ sw $zero, -0x30($s0) +/* 3D40B4 E00D0294 46000007 */ neg.s $f0, $f0 +/* 3D40B8 E00D0298 46000021 */ cvt.d.s $f0, $f0 +/* 3D40BC E00D029C 46340002 */ mul.d $f0, $f0, $f20 +/* 3D40C0 E00D02A0 00000000 */ nop +/* 3D40C4 E00D02A4 C60CFFF8 */ lwc1 $f12, -8($s0) +/* 3D40C8 E00D02A8 46200020 */ cvt.s.d $f0, $f0 +/* 3D40CC E00D02AC 0C080144 */ jal func_E0200510 +/* 3D40D0 E00D02B0 E600FFD4 */ swc1 $f0, -0x2c($s0) +/* 3D40D4 E00D02B4 46000021 */ cvt.d.s $f0, $f0 +/* 3D40D8 E00D02B8 46340002 */ mul.d $f0, $f0, $f20 +/* 3D40DC E00D02BC 00000000 */ nop +/* 3D40E0 E00D02C0 44911000 */ mtc1 $s1, $f2 +/* 3D40E4 E00D02C4 00000000 */ nop +/* 3D40E8 E00D02C8 468010A0 */ cvt.s.w $f2, $f2 +/* 3D40EC E00D02CC 3C014020 */ lui $at, 0x4020 +/* 3D40F0 E00D02D0 44812800 */ mtc1 $at, $f5 +/* 3D40F4 E00D02D4 44802000 */ mtc1 $zero, $f4 +/* 3D40F8 E00D02D8 460010A1 */ cvt.d.s $f2, $f2 +/* 3D40FC E00D02DC AE00FFDC */ sw $zero, -0x24($s0) +/* 3D4100 E00D02E0 E6160000 */ swc1 $f22, ($s0) +/* 3D4104 E00D02E4 46222101 */ sub.d $f4, $f4, $f2 +/* 3D4108 E00D02E8 E6160004 */ swc1 $f22, 4($s0) +/* 3D410C E00D02EC E616000C */ swc1 $f22, 0xc($s0) +/* 3D4110 E00D02F0 46202120 */ cvt.s.d $f4, $f4 +/* 3D4114 E00D02F4 E604FFE4 */ swc1 $f4, -0x1c($s0) +/* 3D4118 E00D02F8 46200020 */ cvt.s.d $f0, $f0 +/* 3D411C E00D02FC 1680000D */ bnez $s4, .LE00D0334 +/* 3D4120 E00D0300 E600FFD8 */ swc1 $f0, -0x28($s0) +/* 3D4124 E00D0304 44920000 */ mtc1 $s2, $f0 +/* 3D4128 E00D0308 00000000 */ nop +/* 3D412C E00D030C 46800021 */ cvt.d.w $f0, $f0 +/* 3D4130 E00D0310 46340002 */ mul.d $f0, $f0, $f20 +/* 3D4134 E00D0314 00000000 */ nop +/* 3D4138 E00D0318 44921000 */ mtc1 $s2, $f2 +/* 3D413C E00D031C 00000000 */ nop +/* 3D4140 E00D0320 468010A0 */ cvt.s.w $f2, $f2 +/* 3D4144 E00D0324 E602FFE0 */ swc1 $f2, -0x20($s0) +/* 3D4148 E00D0328 46200020 */ cvt.s.d $f0, $f0 +/* 3D414C E00D032C 080340DF */ j .LE00D037C +/* 3D4150 E00D0330 E600FFE8 */ swc1 $f0, -0x18($s0) +.LE00D0334: +/* 3D4154 E00D0334 C602FFE4 */ lwc1 $f2, -0x1c($s0) +/* 3D4158 E00D0338 3C01E00D */ lui $at, %hi(D_E00D0B30) +/* 3D415C E00D033C D4200B30 */ ldc1 $f0, %lo(D_E00D0B30)($at) +/* 3D4160 E00D0340 460010A1 */ cvt.d.s $f2, $f2 +/* 3D4164 E00D0344 46201082 */ mul.d $f2, $f2, $f0 +/* 3D4168 E00D0348 00000000 */ nop +/* 3D416C E00D034C 44910000 */ mtc1 $s1, $f0 +/* 3D4170 E00D0350 00000000 */ nop +/* 3D4174 E00D0354 46800021 */ cvt.d.w $f0, $f0 +/* 3D4178 E00D0358 46340000 */ add.d $f0, $f0, $f20 +/* 3D417C E00D035C 46340102 */ mul.d $f4, $f0, $f20 +/* 3D4180 E00D0360 00000000 */ nop +/* 3D4184 E00D0364 46200020 */ cvt.s.d $f0, $f0 +/* 3D4188 E00D0368 E600FFE0 */ swc1 $f0, -0x20($s0) +/* 3D418C E00D036C 462010A0 */ cvt.s.d $f2, $f2 +/* 3D4190 E00D0370 E602FFE4 */ swc1 $f2, -0x1c($s0) +/* 3D4194 E00D0374 46202120 */ cvt.s.d $f4, $f4 +/* 3D4198 E00D0378 E604FFE8 */ swc1 $f4, -0x18($s0) +.LE00D037C: +/* 3D419C E00D037C E6160008 */ swc1 $f22, 8($s0) +.LE00D0380: +/* 3D41A0 E00D0380 C6040004 */ lwc1 $f4, 4($s0) +/* 3D41A4 E00D0384 3C01E00D */ lui $at, %hi(D_E00D0B38) +/* 3D41A8 E00D0388 D4200B38 */ ldc1 $f0, %lo(D_E00D0B38)($at) +/* 3D41AC E00D038C 46002121 */ cvt.d.s $f4, $f4 +/* 3D41B0 E00D0390 46202102 */ mul.d $f4, $f4, $f0 +/* 3D41B4 E00D0394 00000000 */ nop +/* 3D41B8 E00D0398 C602FFE0 */ lwc1 $f2, -0x20($s0) +/* 3D41BC E00D039C 460010A1 */ cvt.d.s $f2, $f2 +/* 3D41C0 E00D03A0 46381082 */ mul.d $f2, $f2, $f24 +/* 3D41C4 E00D03A4 00000000 */ nop +/* 3D41C8 E00D03A8 C6080000 */ lwc1 $f8, ($s0) +/* 3D41CC E00D03AC C6000004 */ lwc1 $f0, 4($s0) +/* 3D41D0 E00D03B0 C6060008 */ lwc1 $f6, 8($s0) +/* 3D41D4 E00D03B4 46004200 */ add.s $f8, $f8, $f0 +/* 3D41D8 E00D03B8 C600000C */ lwc1 $f0, 0xc($s0) +/* 3D41DC E00D03BC 46003180 */ add.s $f6, $f6, $f0 +/* 3D41E0 E00D03C0 C600FFE8 */ lwc1 $f0, -0x18($s0) +/* 3D41E4 E00D03C4 46000021 */ cvt.d.s $f0, $f0 +/* 3D41E8 E00D03C8 46380002 */ mul.d $f0, $f0, $f24 +/* 3D41EC E00D03CC 00000000 */ nop +/* 3D41F0 E00D03D0 E6080000 */ swc1 $f8, ($s0) +/* 3D41F4 E00D03D4 E6060008 */ swc1 $f6, 8($s0) +/* 3D41F8 E00D03D8 46202120 */ cvt.s.d $f4, $f4 +/* 3D41FC E00D03DC 462010A0 */ cvt.s.d $f2, $f2 +/* 3D4200 E00D03E0 E602FFE0 */ swc1 $f2, -0x20($s0) +/* 3D4204 E00D03E4 46004086 */ mov.s $f2, $f8 +/* 3D4208 E00D03E8 4602D03C */ c.lt.s $f26, $f2 +/* 3D420C E00D03EC E6040004 */ swc1 $f4, 4($s0) +/* 3D4210 E00D03F0 46200020 */ cvt.s.d $f0, $f0 +/* 3D4214 E00D03F4 45000002 */ bc1f .LE00D0400 +/* 3D4218 E00D03F8 E600FFE8 */ swc1 $f0, -0x18($s0) +/* 3D421C E00D03FC E61A0000 */ swc1 $f26, ($s0) +.LE00D0400: +/* 3D4220 E00D0400 26520002 */ addiu $s2, $s2, 2 +/* 3D4224 E00D0404 26310001 */ addiu $s1, $s1, 1 +/* 3D4228 E00D0408 8E620008 */ lw $v0, 8($s3) +/* 3D422C E00D040C 0222102A */ slt $v0, $s1, $v0 +/* 3D4230 E00D0410 1440FF95 */ bnez $v0, .LE00D0268 +/* 3D4234 E00D0414 26100058 */ addiu $s0, $s0, 0x58 +.LE00D0418: +/* 3D4238 E00D0418 8FBF0024 */ lw $ra, 0x24($sp) +/* 3D423C E00D041C 8FB40020 */ lw $s4, 0x20($sp) +/* 3D4240 E00D0420 8FB3001C */ lw $s3, 0x1c($sp) +/* 3D4244 E00D0424 8FB20018 */ lw $s2, 0x18($sp) +/* 3D4248 E00D0428 8FB10014 */ lw $s1, 0x14($sp) +/* 3D424C E00D042C 8FB00010 */ lw $s0, 0x10($sp) +/* 3D4250 E00D0430 D7BA0040 */ ldc1 $f26, 0x40($sp) +/* 3D4254 E00D0434 D7B80038 */ ldc1 $f24, 0x38($sp) +/* 3D4258 E00D0438 D7B60030 */ ldc1 $f22, 0x30($sp) +/* 3D425C E00D043C D7B40028 */ ldc1 $f20, 0x28($sp) +/* 3D4260 E00D0440 03E00008 */ jr $ra +/* 3D4264 E00D0444 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_3D3E20/func_E00D0448.s b/asm/nonmatchings/code_3D3E20/func_E00D0448.s new file mode 100644 index 0000000000..4be906ab4d --- /dev/null +++ b/asm/nonmatchings/code_3D3E20/func_E00D0448.s @@ -0,0 +1,21 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D0448 +/* 3D4268 E00D0448 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D426C E00D044C 3C02E00D */ lui $v0, %hi(D_E00D048C) +/* 3D4270 E00D0450 2442048C */ addiu $v0, $v0, %lo(D_E00D048C) +/* 3D4274 E00D0454 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D4278 E00D0458 24020028 */ addiu $v0, $zero, 0x28 +/* 3D427C E00D045C AFA40018 */ sw $a0, 0x18($sp) +/* 3D4280 E00D0460 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D4284 E00D0464 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D4288 E00D0468 AFA00014 */ sw $zero, 0x14($sp) +/* 3D428C E00D046C 0C080120 */ jal func_E0200480 +/* 3D4290 E00D0470 AFA20010 */ sw $v0, 0x10($sp) +/* 3D4294 E00D0474 8C430000 */ lw $v1, ($v0) +/* 3D4298 E00D0478 34630002 */ ori $v1, $v1, 2 +/* 3D429C E00D047C AC430000 */ sw $v1, ($v0) +/* 3D42A0 E00D0480 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D42A4 E00D0484 03E00008 */ jr $ra +/* 3D42A8 E00D0488 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D3E20/func_E00D048C.s b/asm/nonmatchings/code_3D3E20/func_E00D048C.s new file mode 100644 index 0000000000..a64625dffe --- /dev/null +++ b/asm/nonmatchings/code_3D3E20/func_E00D048C.s @@ -0,0 +1,424 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D048C +/* 3D42AC E00D048C 27BDFED8 */ addiu $sp, $sp, -0x128 +/* 3D42B0 E00D0490 3C07DB06 */ lui $a3, 0xdb06 +/* 3D42B4 E00D0494 34E70024 */ ori $a3, $a3, 0x24 +/* 3D42B8 E00D0498 AFA40128 */ sw $a0, 0x128($sp) +/* 3D42BC E00D049C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D42C0 E00D04A0 AFB000D8 */ sw $s0, 0xd8($sp) +/* 3D42C4 E00D04A4 3C100001 */ lui $s0, 1 +/* 3D42C8 E00D04A8 AFB300E4 */ sw $s3, 0xe4($sp) +/* 3D42CC E00D04AC 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3D42D0 E00D04B0 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3D42D4 E00D04B4 36101630 */ ori $s0, $s0, 0x1630 +/* 3D42D8 E00D04B8 AFBF00FC */ sw $ra, 0xfc($sp) +/* 3D42DC E00D04BC AFBE00F8 */ sw $fp, 0xf8($sp) +/* 3D42E0 E00D04C0 AFB700F4 */ sw $s7, 0xf4($sp) +/* 3D42E4 E00D04C4 AFB600F0 */ sw $s6, 0xf0($sp) +/* 3D42E8 E00D04C8 AFB500EC */ sw $s5, 0xec($sp) +/* 3D42EC E00D04CC AFB400E8 */ sw $s4, 0xe8($sp) +/* 3D42F0 E00D04D0 AFB200E0 */ sw $s2, 0xe0($sp) +/* 3D42F4 E00D04D4 AFB100DC */ sw $s1, 0xdc($sp) +/* 3D42F8 E00D04D8 F7BC0120 */ sdc1 $f28, 0x120($sp) +/* 3D42FC E00D04DC F7BA0118 */ sdc1 $f26, 0x118($sp) +/* 3D4300 E00D04E0 F7B80110 */ sdc1 $f24, 0x110($sp) +/* 3D4304 E00D04E4 F7B60108 */ sdc1 $f22, 0x108($sp) +/* 3D4308 E00D04E8 F7B40100 */ sdc1 $f20, 0x100($sp) +/* 3D430C E00D04EC 8E660000 */ lw $a2, ($s3) +/* 3D4310 E00D04F0 8FAD0128 */ lw $t5, 0x128($sp) +/* 3D4314 E00D04F4 4480A000 */ mtc1 $zero, $f20 +/* 3D4318 E00D04F8 3C01E00D */ lui $at, %hi(D_E00D0B40) +/* 3D431C E00D04FC D4200B40 */ ldc1 $f0, %lo(D_E00D0B40)($at) +/* 3D4320 E00D0500 3C013F80 */ lui $at, 0x3f80 +/* 3D4324 E00D0504 4481B000 */ mtc1 $at, $f22 +/* 3D4328 E00D0508 00C0182D */ daddu $v1, $a2, $zero +/* 3D432C E00D050C 24C60008 */ addiu $a2, $a2, 8 +/* 3D4330 E00D0510 8DB1000C */ lw $s1, 0xc($t5) +/* 3D4334 E00D0514 4405A000 */ mfc1 $a1, $f20 +/* 3D4338 E00D0518 96220000 */ lhu $v0, ($s1) +/* 3D433C E00D051C C624001C */ lwc1 $f4, 0x1c($s1) +/* 3D4340 E00D0520 C6260020 */ lwc1 $f6, 0x20($s1) +/* 3D4344 E00D0524 C6280024 */ lwc1 $f8, 0x24($s1) +/* 3D4348 E00D0528 922D0050 */ lbu $t5, 0x50($s1) +/* 3D434C E00D052C 00021080 */ sll $v0, $v0, 2 +/* 3D4350 E00D0530 3C08E00D */ lui $t0, %hi(D_E00D0B10) +/* 3D4354 E00D0534 01024021 */ addu $t0, $t0, $v0 +/* 3D4358 E00D0538 8D080B10 */ lw $t0, %lo(D_E00D0B10)($t0) +/* 3D435C E00D053C 46002121 */ cvt.d.s $f4, $f4 +/* 3D4360 E00D0540 AFAD00A4 */ sw $t5, 0xa4($sp) +/* 3D4364 E00D0544 922D0051 */ lbu $t5, 0x51($s1) +/* 3D4368 E00D0548 46202102 */ mul.d $f4, $f4, $f0 +/* 3D436C E00D054C 00000000 */ nop +/* 3D4370 E00D0550 AFAD00A8 */ sw $t5, 0xa8($sp) +/* 3D4374 E00D0554 922D0052 */ lbu $t5, 0x52($s1) +/* 3D4378 E00D0558 3C02E700 */ lui $v0, 0xe700 +/* 3D437C E00D055C AFAD00AC */ sw $t5, 0xac($sp) +/* 3D4380 E00D0560 922D0053 */ lbu $t5, 0x53($s1) +/* 3D4384 E00D0564 460031A1 */ cvt.d.s $f6, $f6 +/* 3D4388 E00D0568 AFAD00B0 */ sw $t5, 0xb0($sp) +/* 3D438C E00D056C 922D0054 */ lbu $t5, 0x54($s1) +/* 3D4390 E00D0570 46203182 */ mul.d $f6, $f6, $f0 +/* 3D4394 E00D0574 00000000 */ nop +/* 3D4398 E00D0578 AFAD00B4 */ sw $t5, 0xb4($sp) +/* 3D439C E00D057C 922D0055 */ lbu $t5, 0x55($s1) +/* 3D43A0 E00D0580 46004221 */ cvt.d.s $f8, $f8 +/* 3D43A4 E00D0584 AFAD00B8 */ sw $t5, 0xb8($sp) +/* 3D43A8 E00D0588 AC620000 */ sw $v0, ($v1) +/* 3D43AC E00D058C AC600004 */ sw $zero, 4($v1) +/* 3D43B0 E00D0590 ACC70000 */ sw $a3, ($a2) +/* 3D43B4 E00D0594 8FAD0128 */ lw $t5, 0x128($sp) +/* 3D43B8 E00D0598 46204202 */ mul.d $f8, $f8, $f0 +/* 3D43BC E00D059C 00000000 */ nop +/* 3D43C0 E00D05A0 8DA20010 */ lw $v0, 0x10($t5) +/* 3D43C4 E00D05A4 4407A000 */ mfc1 $a3, $f20 +/* 3D43C8 E00D05A8 8C43001C */ lw $v1, 0x1c($v0) +/* 3D43CC E00D05AC 3C02DE00 */ lui $v0, 0xde00 +/* 3D43D0 E00D05B0 ACC20008 */ sw $v0, 8($a2) +/* 3D43D4 E00D05B4 3C028000 */ lui $v0, 0x8000 +/* 3D43D8 E00D05B8 00621821 */ addu $v1, $v1, $v0 +/* 3D43DC E00D05BC ACC30004 */ sw $v1, 4($a2) +/* 3D43E0 E00D05C0 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3D43E4 E00D05C4 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3D43E8 E00D05C8 46202720 */ cvt.s.d $f28, $f4 +/* 3D43EC E00D05CC ACC8000C */ sw $t0, 0xc($a2) +/* 3D43F0 E00D05D0 00031080 */ sll $v0, $v1, 2 +/* 3D43F4 E00D05D4 00431021 */ addu $v0, $v0, $v1 +/* 3D43F8 E00D05D8 00021080 */ sll $v0, $v0, 2 +/* 3D43FC E00D05DC 00431023 */ subu $v0, $v0, $v1 +/* 3D4400 E00D05E0 000218C0 */ sll $v1, $v0, 3 +/* 3D4404 E00D05E4 00431021 */ addu $v0, $v0, $v1 +/* 3D4408 E00D05E8 000210C0 */ sll $v0, $v0, 3 +/* 3D440C E00D05EC 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3D4410 E00D05F0 00220821 */ addu $at, $at, $v0 +/* 3D4414 E00D05F4 C42A1DEC */ lwc1 $f10, %lo(D_800B1DEC)($at) +/* 3D4418 E00D05F8 24C20008 */ addiu $v0, $a2, 8 +/* 3D441C E00D05FC AE660000 */ sw $a2, ($s3) +/* 3D4420 E00D0600 E7B60010 */ swc1 $f22, 0x10($sp) +/* 3D4424 E00D0604 C6220004 */ lwc1 $f2, 4($s1) +/* 3D4428 E00D0608 24C60010 */ addiu $a2, $a2, 0x10 +/* 3D442C E00D060C AE620000 */ sw $v0, ($s3) +/* 3D4430 E00D0610 E7A20014 */ swc1 $f2, 0x14($sp) +/* 3D4434 E00D0614 C6200008 */ lwc1 $f0, 8($s1) +/* 3D4438 E00D0618 46005287 */ neg.s $f10, $f10 +/* 3D443C E00D061C AE660000 */ sw $a2, ($s3) +/* 3D4440 E00D0620 44065000 */ mfc1 $a2, $f10 +/* 3D4444 E00D0624 462036A0 */ cvt.s.d $f26, $f6 +/* 3D4448 E00D0628 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3D444C E00D062C C620000C */ lwc1 $f0, 0xc($s1) +/* 3D4450 E00D0630 46204620 */ cvt.s.d $f24, $f8 +/* 3D4454 E00D0634 0C080180 */ jal func_E0200600 +/* 3D4458 E00D0638 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3D445C E00D063C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D4460 E00D0640 3C158007 */ lui $s5, %hi(D_800741F0) +/* 3D4464 E00D0644 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 3D4468 E00D0648 3C16800A */ lui $s6, %hi(D_8009A674) +/* 3D446C E00D064C 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 3D4470 E00D0650 96A50000 */ lhu $a1, ($s5) +/* 3D4474 E00D0654 8EC20000 */ lw $v0, ($s6) +/* 3D4478 E00D0658 00052980 */ sll $a1, $a1, 6 +/* 3D447C E00D065C 00B02821 */ addu $a1, $a1, $s0 +/* 3D4480 E00D0660 0C080118 */ jal func_E0200460 +/* 3D4484 E00D0664 00452821 */ addu $a1, $v0, $a1 +/* 3D4488 E00D0668 24140001 */ addiu $s4, $zero, 1 +/* 3D448C E00D066C 3C02DA38 */ lui $v0, 0xda38 +/* 3D4490 E00D0670 8E650000 */ lw $a1, ($s3) +/* 3D4494 E00D0674 96A40000 */ lhu $a0, ($s5) +/* 3D4498 E00D0678 00A0302D */ daddu $a2, $a1, $zero +/* 3D449C E00D067C 24A50008 */ addiu $a1, $a1, 8 +/* 3D44A0 E00D0680 ACC20000 */ sw $v0, ($a2) +/* 3D44A4 E00D0684 3082FFFF */ andi $v0, $a0, 0xffff +/* 3D44A8 E00D0688 00021180 */ sll $v0, $v0, 6 +/* 3D44AC E00D068C 00501021 */ addu $v0, $v0, $s0 +/* 3D44B0 E00D0690 00942021 */ addu $a0, $a0, $s4 +/* 3D44B4 E00D0694 8EC30000 */ lw $v1, ($s6) +/* 3D44B8 E00D0698 00A0B82D */ daddu $s7, $a1, $zero +/* 3D44BC E00D069C 00621821 */ addu $v1, $v1, $v0 +/* 3D44C0 E00D06A0 ACC30004 */ sw $v1, 4($a2) +/* 3D44C4 E00D06A4 8E2D0038 */ lw $t5, 0x38($s1) +/* 3D44C8 E00D06A8 26E30008 */ addiu $v1, $s7, 8 +/* 3D44CC E00D06AC AFAD00A0 */ sw $t5, 0xa0($sp) +/* 3D44D0 E00D06B0 AE650000 */ sw $a1, ($s3) +/* 3D44D4 E00D06B4 A6A40000 */ sh $a0, ($s5) +/* 3D44D8 E00D06B8 AE630000 */ sw $v1, ($s3) +/* 3D44DC E00D06BC 8FAD00A4 */ lw $t5, 0xa4($sp) +/* 3D44E0 E00D06C0 AFAD00BC */ sw $t5, 0xbc($sp) +/* 3D44E4 E00D06C4 8FAD00A8 */ lw $t5, 0xa8($sp) +/* 3D44E8 E00D06C8 AFAD00C0 */ sw $t5, 0xc0($sp) +/* 3D44EC E00D06CC 8FAD00AC */ lw $t5, 0xac($sp) +/* 3D44F0 E00D06D0 AFAD00C4 */ sw $t5, 0xc4($sp) +/* 3D44F4 E00D06D4 8FAD00B0 */ lw $t5, 0xb0($sp) +/* 3D44F8 E00D06D8 AFAD00C8 */ sw $t5, 0xc8($sp) +/* 3D44FC E00D06DC 8FAD00B4 */ lw $t5, 0xb4($sp) +/* 3D4500 E00D06E0 AFAD00CC */ sw $t5, 0xcc($sp) +/* 3D4504 E00D06E4 8FAD00B8 */ lw $t5, 0xb8($sp) +/* 3D4508 E00D06E8 AFAD00D0 */ sw $t5, 0xd0($sp) +/* 3D450C E00D06EC 8FAD0128 */ lw $t5, 0x128($sp) +/* 3D4510 E00D06F0 8DA20008 */ lw $v0, 8($t5) +/* 3D4514 E00D06F4 26310058 */ addiu $s1, $s1, 0x58 +/* 3D4518 E00D06F8 0282102A */ slt $v0, $s4, $v0 +/* 3D451C E00D06FC 10400087 */ beqz $v0, .LE00D091C +/* 3D4520 E00D0700 AFA300D4 */ sw $v1, 0xd4($sp) +/* 3D4524 E00D0704 27B20060 */ addiu $s2, $sp, 0x60 +/* 3D4528 E00D0708 02A0B02D */ daddu $s6, $s5, $zero +/* 3D452C E00D070C 3C150001 */ lui $s5, 1 +/* 3D4530 E00D0710 36B51630 */ ori $s5, $s5, 0x1630 +/* 3D4534 E00D0714 3C1EF200 */ lui $fp, 0xf200 +/* 3D4538 E00D0718 26300044 */ addiu $s0, $s1, 0x44 +.LE00D071C: +/* 3D453C E00D071C 8E020008 */ lw $v0, 8($s0) +/* 3D4540 E00D0720 04400078 */ bltz $v0, .LE00D0904 +/* 3D4544 E00D0724 00000000 */ nop +/* 3D4548 E00D0728 8E05FFC0 */ lw $a1, -0x40($s0) +/* 3D454C E00D072C 8E06FFC4 */ lw $a2, -0x3c($s0) +/* 3D4550 E00D0730 8E07FFC8 */ lw $a3, -0x38($s0) +/* 3D4554 E00D0734 0C080108 */ jal func_E0200420 +/* 3D4558 E00D0738 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D455C E00D073C E7B60010 */ swc1 $f22, 0x10($sp) +/* 3D4560 E00D0740 8E05FFF0 */ lw $a1, -0x10($s0) +/* 3D4564 E00D0744 4406A000 */ mfc1 $a2, $f20 +/* 3D4568 E00D0748 4407A000 */ mfc1 $a3, $f20 +/* 3D456C E00D074C 0C080104 */ jal func_E0200410 +/* 3D4570 E00D0750 0240202D */ daddu $a0, $s2, $zero +/* 3D4574 E00D0754 0240202D */ daddu $a0, $s2, $zero +/* 3D4578 E00D0758 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D457C E00D075C 0C080114 */ jal func_E0200450 +/* 3D4580 E00D0760 00A0302D */ daddu $a2, $a1, $zero +/* 3D4584 E00D0764 C600FFD8 */ lwc1 $f0, -0x28($s0) +/* 3D4588 E00D0768 461C0002 */ mul.s $f0, $f0, $f28 +/* 3D458C E00D076C 00000000 */ nop +/* 3D4590 E00D0770 44050000 */ mfc1 $a1, $f0 +/* 3D4594 E00D0774 C600FFDC */ lwc1 $f0, -0x24($s0) +/* 3D4598 E00D0778 461A0002 */ mul.s $f0, $f0, $f26 +/* 3D459C E00D077C 00000000 */ nop +/* 3D45A0 E00D0780 44060000 */ mfc1 $a2, $f0 +/* 3D45A4 E00D0784 C600FFE0 */ lwc1 $f0, -0x20($s0) +/* 3D45A8 E00D0788 46180002 */ mul.s $f0, $f0, $f24 +/* 3D45AC E00D078C 00000000 */ nop +/* 3D45B0 E00D0790 44070000 */ mfc1 $a3, $f0 +/* 3D45B4 E00D0794 0C080110 */ jal func_E0200440 +/* 3D45B8 E00D0798 0240202D */ daddu $a0, $s2, $zero +/* 3D45BC E00D079C 0240202D */ daddu $a0, $s2, $zero +/* 3D45C0 E00D07A0 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D45C4 E00D07A4 0C080114 */ jal func_E0200450 +/* 3D45C8 E00D07A8 00A0302D */ daddu $a2, $a1, $zero +/* 3D45CC E00D07AC E7B40010 */ swc1 $f20, 0x10($sp) +/* 3D45D0 E00D07B0 8E05FFEC */ lw $a1, -0x14($s0) +/* 3D45D4 E00D07B4 4406A000 */ mfc1 $a2, $f20 +/* 3D45D8 E00D07B8 4407B000 */ mfc1 $a3, $f22 +/* 3D45DC E00D07BC 0C080104 */ jal func_E0200410 +/* 3D45E0 E00D07C0 0240202D */ daddu $a0, $s2, $zero +/* 3D45E4 E00D07C4 0240202D */ daddu $a0, $s2, $zero +/* 3D45E8 E00D07C8 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D45EC E00D07CC 0C080114 */ jal func_E0200450 +/* 3D45F0 E00D07D0 00A0302D */ daddu $a2, $a1, $zero +/* 3D45F4 E00D07D4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D45F8 E00D07D8 96C50000 */ lhu $a1, ($s6) +/* 3D45FC E00D07DC 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3D4600 E00D07E0 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3D4604 E00D07E4 00052980 */ sll $a1, $a1, 6 +/* 3D4608 E00D07E8 00B52821 */ addu $a1, $a1, $s5 +/* 3D460C E00D07EC 0C080118 */ jal func_E0200460 +/* 3D4610 E00D07F0 00452821 */ addu $a1, $v0, $a1 +/* 3D4614 E00D07F4 3C06000F */ lui $a2, 0xf +/* 3D4618 E00D07F8 34C6C000 */ ori $a2, $a2, 0xc000 +/* 3D461C E00D07FC 3C080107 */ lui $t0, 0x107 +/* 3D4620 E00D0800 3508C000 */ ori $t0, $t0, 0xc000 +/* 3D4624 E00D0804 3C07D838 */ lui $a3, 0xd838 +/* 3D4628 E00D0808 34E70002 */ ori $a3, $a3, 2 +/* 3D462C E00D080C 8E630000 */ lw $v1, ($s3) +/* 3D4630 E00D0810 C600FFF8 */ lwc1 $f0, -8($s0) +/* 3D4634 E00D0814 0060282D */ daddu $a1, $v1, $zero +/* 3D4638 E00D0818 24630008 */ addiu $v1, $v1, 8 +/* 3D463C E00D081C 4600030D */ trunc.w.s $f12, $f0 +/* 3D4640 E00D0820 44026000 */ mfc1 $v0, $f12 +/* 3D4644 E00D0824 00000000 */ nop +/* 3D4648 E00D0828 30420FFF */ andi $v0, $v0, 0xfff +/* 3D464C E00D082C 005E1025 */ or $v0, $v0, $fp +/* 3D4650 E00D0830 AE630000 */ sw $v1, ($s3) +/* 3D4654 E00D0834 ACA20000 */ sw $v0, ($a1) +/* 3D4658 E00D0838 24620008 */ addiu $v0, $v1, 8 +/* 3D465C E00D083C AE620000 */ sw $v0, ($s3) +/* 3D4660 E00D0840 96C40000 */ lhu $a0, ($s6) +/* 3D4664 E00D0844 24620010 */ addiu $v0, $v1, 0x10 +/* 3D4668 E00D0848 AE620000 */ sw $v0, ($s3) +/* 3D466C E00D084C 24820001 */ addiu $v0, $a0, 1 +/* 3D4670 E00D0850 A6C20000 */ sh $v0, ($s6) +/* 3D4674 E00D0854 24620018 */ addiu $v0, $v1, 0x18 +/* 3D4678 E00D0858 3084FFFF */ andi $a0, $a0, 0xffff +/* 3D467C E00D085C 00042180 */ sll $a0, $a0, 6 +/* 3D4680 E00D0860 C600FFF8 */ lwc1 $f0, -8($s0) +/* 3D4684 E00D0864 00952021 */ addu $a0, $a0, $s5 +/* 3D4688 E00D0868 AE620000 */ sw $v0, ($s3) +/* 3D468C E00D086C 4600030D */ trunc.w.s $f12, $f0 +/* 3D4690 E00D0870 44026000 */ mfc1 $v0, $f12 +/* 3D4694 E00D0874 00000000 */ nop +/* 3D4698 E00D0878 2442007C */ addiu $v0, $v0, 0x7c +/* 3D469C E00D087C 30420FFF */ andi $v0, $v0, 0xfff +/* 3D46A0 E00D0880 00461025 */ or $v0, $v0, $a2 +/* 3D46A4 E00D0884 ACA20004 */ sw $v0, 4($a1) +/* 3D46A8 E00D0888 C6000000 */ lwc1 $f0, ($s0) +/* 3D46AC E00D088C 24620020 */ addiu $v0, $v1, 0x20 +/* 3D46B0 E00D0890 AE620000 */ sw $v0, ($s3) +/* 3D46B4 E00D0894 4600030D */ trunc.w.s $f12, $f0 +/* 3D46B8 E00D0898 44026000 */ mfc1 $v0, $f12 +/* 3D46BC E00D089C 00000000 */ nop +/* 3D46C0 E00D08A0 30420FFF */ andi $v0, $v0, 0xfff +/* 3D46C4 E00D08A4 005E1025 */ or $v0, $v0, $fp +/* 3D46C8 E00D08A8 AC620000 */ sw $v0, ($v1) +/* 3D46CC E00D08AC C6000000 */ lwc1 $f0, ($s0) +/* 3D46D0 E00D08B0 3C02DA38 */ lui $v0, 0xda38 +/* 3D46D4 E00D08B4 AC620008 */ sw $v0, 8($v1) +/* 3D46D8 E00D08B8 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3D46DC E00D08BC 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3D46E0 E00D08C0 3C0D0900 */ lui $t5, 0x900 +/* 3D46E4 E00D08C4 25AD0940 */ addiu $t5, $t5, 0x940 +/* 3D46E8 E00D08C8 AC6D0014 */ sw $t5, 0x14($v1) +/* 3D46EC E00D08CC AC670018 */ sw $a3, 0x18($v1) +/* 3D46F0 E00D08D0 00441021 */ addu $v0, $v0, $a0 +/* 3D46F4 E00D08D4 AC62000C */ sw $v0, 0xc($v1) +/* 3D46F8 E00D08D8 3C02DE00 */ lui $v0, 0xde00 +/* 3D46FC E00D08DC AC620010 */ sw $v0, 0x10($v1) +/* 3D4700 E00D08E0 24020040 */ addiu $v0, $zero, 0x40 +/* 3D4704 E00D08E4 AC62001C */ sw $v0, 0x1c($v1) +/* 3D4708 E00D08E8 4600030D */ trunc.w.s $f12, $f0 +/* 3D470C E00D08EC 44026000 */ mfc1 $v0, $f12 +/* 3D4710 E00D08F0 00000000 */ nop +/* 3D4714 E00D08F4 2442007C */ addiu $v0, $v0, 0x7c +/* 3D4718 E00D08F8 30420FFF */ andi $v0, $v0, 0xfff +/* 3D471C E00D08FC 00481025 */ or $v0, $v0, $t0 +/* 3D4720 E00D0900 AC620004 */ sw $v0, 4($v1) +.LE00D0904: +/* 3D4724 E00D0904 8FAD0128 */ lw $t5, 0x128($sp) +/* 3D4728 E00D0908 26940001 */ addiu $s4, $s4, 1 +/* 3D472C E00D090C 8DA20008 */ lw $v0, 8($t5) +/* 3D4730 E00D0910 0282102A */ slt $v0, $s4, $v0 +/* 3D4734 E00D0914 1440FF81 */ bnez $v0, .LE00D071C +/* 3D4738 E00D0918 26100058 */ addiu $s0, $s0, 0x58 +.LE00D091C: +/* 3D473C E00D091C 3C0AD9FF */ lui $t2, 0xd9ff +/* 3D4740 E00D0920 354AF9FF */ ori $t2, $t2, 0xf9ff +/* 3D4744 E00D0924 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 3D4748 E00D0928 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 3D474C E00D092C 3C02DF00 */ lui $v0, 0xdf00 +/* 3D4750 E00D0930 8CA30000 */ lw $v1, ($a1) +/* 3D4754 E00D0934 3C09FA00 */ lui $t1, 0xfa00 +/* 3D4758 E00D0938 0060202D */ daddu $a0, $v1, $zero +/* 3D475C E00D093C 24630008 */ addiu $v1, $v1, 8 +/* 3D4760 E00D0940 ACA30000 */ sw $v1, ($a1) +/* 3D4764 E00D0944 AC820000 */ sw $v0, ($a0) +/* 3D4768 E00D0948 3C02DE01 */ lui $v0, 0xde01 +/* 3D476C E00D094C AC800004 */ sw $zero, 4($a0) +/* 3D4770 E00D0950 AEE20000 */ sw $v0, ($s7) +/* 3D4774 E00D0954 24620008 */ addiu $v0, $v1, 8 +/* 3D4778 E00D0958 AEE30004 */ sw $v1, 4($s7) +/* 3D477C E00D095C ACA20000 */ sw $v0, ($a1) +/* 3D4780 E00D0960 AC690000 */ sw $t1, ($v1) +/* 3D4784 E00D0964 8FAD00BC */ lw $t5, 0xbc($sp) +/* 3D4788 E00D0968 3C0BD9FF */ lui $t3, 0xd9ff +/* 3D478C E00D096C 000D1600 */ sll $v0, $t5, 0x18 +/* 3D4790 E00D0970 8FAD00C0 */ lw $t5, 0xc0($sp) +/* 3D4794 E00D0974 3C07FB00 */ lui $a3, 0xfb00 +/* 3D4798 E00D0978 000D2400 */ sll $a0, $t5, 0x10 +/* 3D479C E00D097C 8FAD00C4 */ lw $t5, 0xc4($sp) +/* 3D47A0 E00D0980 00441025 */ or $v0, $v0, $a0 +/* 3D47A4 E00D0984 000D2200 */ sll $a0, $t5, 8 +/* 3D47A8 E00D0988 8FAD00A0 */ lw $t5, 0xa0($sp) +/* 3D47AC E00D098C 00441025 */ or $v0, $v0, $a0 +/* 3D47B0 E00D0990 31A800FF */ andi $t0, $t5, 0xff +/* 3D47B4 E00D0994 00481025 */ or $v0, $v0, $t0 +/* 3D47B8 E00D0998 AC620004 */ sw $v0, 4($v1) +/* 3D47BC E00D099C 24620010 */ addiu $v0, $v1, 0x10 +/* 3D47C0 E00D09A0 ACA20000 */ sw $v0, ($a1) +/* 3D47C4 E00D09A4 AC670008 */ sw $a3, 8($v1) +/* 3D47C8 E00D09A8 8FAD00C8 */ lw $t5, 0xc8($sp) +/* 3D47CC E00D09AC 356BFFFF */ ori $t3, $t3, 0xffff +/* 3D47D0 E00D09B0 000D1600 */ sll $v0, $t5, 0x18 +/* 3D47D4 E00D09B4 8FAD00CC */ lw $t5, 0xcc($sp) +/* 3D47D8 E00D09B8 3C06DE00 */ lui $a2, 0xde00 +/* 3D47DC E00D09BC 000D2400 */ sll $a0, $t5, 0x10 +/* 3D47E0 E00D09C0 8FAD00D0 */ lw $t5, 0xd0($sp) +/* 3D47E4 E00D09C4 00441025 */ or $v0, $v0, $a0 +/* 3D47E8 E00D09C8 000D2200 */ sll $a0, $t5, 8 +/* 3D47EC E00D09CC 00441025 */ or $v0, $v0, $a0 +/* 3D47F0 E00D09D0 AC62000C */ sw $v0, 0xc($v1) +/* 3D47F4 E00D09D4 24620018 */ addiu $v0, $v1, 0x18 +/* 3D47F8 E00D09D8 ACA20000 */ sw $v0, ($a1) +/* 3D47FC E00D09DC 24620020 */ addiu $v0, $v1, 0x20 +/* 3D4800 E00D09E0 AC6A0010 */ sw $t2, 0x10($v1) +/* 3D4804 E00D09E4 AC600014 */ sw $zero, 0x14($v1) +/* 3D4808 E00D09E8 ACA20000 */ sw $v0, ($a1) +/* 3D480C E00D09EC 24020200 */ addiu $v0, $zero, 0x200 +/* 3D4810 E00D09F0 AC62001C */ sw $v0, 0x1c($v1) +/* 3D4814 E00D09F4 24620028 */ addiu $v0, $v1, 0x28 +/* 3D4818 E00D09F8 AC6B0018 */ sw $t3, 0x18($v1) +/* 3D481C E00D09FC ACA20000 */ sw $v0, ($a1) +/* 3D4820 E00D0A00 AC660020 */ sw $a2, 0x20($v1) +/* 3D4824 E00D0A04 8FAD00D4 */ lw $t5, 0xd4($sp) +/* 3D4828 E00D0A08 24620030 */ addiu $v0, $v1, 0x30 +/* 3D482C E00D0A0C AC6D0024 */ sw $t5, 0x24($v1) +/* 3D4830 E00D0A10 ACA20000 */ sw $v0, ($a1) +/* 3D4834 E00D0A14 AC690028 */ sw $t1, 0x28($v1) +/* 3D4838 E00D0A18 8FAD00A4 */ lw $t5, 0xa4($sp) +/* 3D483C E00D0A1C 000D1600 */ sll $v0, $t5, 0x18 +/* 3D4840 E00D0A20 8FAD00A8 */ lw $t5, 0xa8($sp) +/* 3D4844 E00D0A24 000D2400 */ sll $a0, $t5, 0x10 +/* 3D4848 E00D0A28 8FAD00AC */ lw $t5, 0xac($sp) +/* 3D484C E00D0A2C 00441025 */ or $v0, $v0, $a0 +/* 3D4850 E00D0A30 000D2200 */ sll $a0, $t5, 8 +/* 3D4854 E00D0A34 00441025 */ or $v0, $v0, $a0 +/* 3D4858 E00D0A38 00481025 */ or $v0, $v0, $t0 +/* 3D485C E00D0A3C AC62002C */ sw $v0, 0x2c($v1) +/* 3D4860 E00D0A40 24620038 */ addiu $v0, $v1, 0x38 +/* 3D4864 E00D0A44 ACA20000 */ sw $v0, ($a1) +/* 3D4868 E00D0A48 AC670030 */ sw $a3, 0x30($v1) +/* 3D486C E00D0A4C 8FAD00B0 */ lw $t5, 0xb0($sp) +/* 3D4870 E00D0A50 3C0CD838 */ lui $t4, 0xd838 +/* 3D4874 E00D0A54 000D1600 */ sll $v0, $t5, 0x18 +/* 3D4878 E00D0A58 8FAD00B4 */ lw $t5, 0xb4($sp) +/* 3D487C E00D0A5C 358C0002 */ ori $t4, $t4, 2 +/* 3D4880 E00D0A60 000D2400 */ sll $a0, $t5, 0x10 +/* 3D4884 E00D0A64 8FAD00B8 */ lw $t5, 0xb8($sp) +/* 3D4888 E00D0A68 00441025 */ or $v0, $v0, $a0 +/* 3D488C E00D0A6C 000D2200 */ sll $a0, $t5, 8 +/* 3D4890 E00D0A70 00441025 */ or $v0, $v0, $a0 +/* 3D4894 E00D0A74 AC620034 */ sw $v0, 0x34($v1) +/* 3D4898 E00D0A78 24620040 */ addiu $v0, $v1, 0x40 +/* 3D489C E00D0A7C ACA20000 */ sw $v0, ($a1) +/* 3D48A0 E00D0A80 24620048 */ addiu $v0, $v1, 0x48 +/* 3D48A4 E00D0A84 AC6A0038 */ sw $t2, 0x38($v1) +/* 3D48A8 E00D0A88 AC60003C */ sw $zero, 0x3c($v1) +/* 3D48AC E00D0A8C ACA20000 */ sw $v0, ($a1) +/* 3D48B0 E00D0A90 24020400 */ addiu $v0, $zero, 0x400 +/* 3D48B4 E00D0A94 AC620044 */ sw $v0, 0x44($v1) +/* 3D48B8 E00D0A98 24620050 */ addiu $v0, $v1, 0x50 +/* 3D48BC E00D0A9C AC6B0040 */ sw $t3, 0x40($v1) +/* 3D48C0 E00D0AA0 ACA20000 */ sw $v0, ($a1) +/* 3D48C4 E00D0AA4 AC660048 */ sw $a2, 0x48($v1) +/* 3D48C8 E00D0AA8 8FAD00D4 */ lw $t5, 0xd4($sp) +/* 3D48CC E00D0AAC 24620058 */ addiu $v0, $v1, 0x58 +/* 3D48D0 E00D0AB0 AC6D004C */ sw $t5, 0x4c($v1) +/* 3D48D4 E00D0AB4 ACA20000 */ sw $v0, ($a1) +/* 3D48D8 E00D0AB8 24020040 */ addiu $v0, $zero, 0x40 +/* 3D48DC E00D0ABC AC6C0050 */ sw $t4, 0x50($v1) +/* 3D48E0 E00D0AC0 AC620054 */ sw $v0, 0x54($v1) +/* 3D48E4 E00D0AC4 8FBF00FC */ lw $ra, 0xfc($sp) +/* 3D48E8 E00D0AC8 8FBE00F8 */ lw $fp, 0xf8($sp) +/* 3D48EC E00D0ACC 8FB700F4 */ lw $s7, 0xf4($sp) +/* 3D48F0 E00D0AD0 8FB600F0 */ lw $s6, 0xf0($sp) +/* 3D48F4 E00D0AD4 8FB500EC */ lw $s5, 0xec($sp) +/* 3D48F8 E00D0AD8 8FB400E8 */ lw $s4, 0xe8($sp) +/* 3D48FC E00D0ADC 8FB300E4 */ lw $s3, 0xe4($sp) +/* 3D4900 E00D0AE0 8FB200E0 */ lw $s2, 0xe0($sp) +/* 3D4904 E00D0AE4 8FB100DC */ lw $s1, 0xdc($sp) +/* 3D4908 E00D0AE8 8FB000D8 */ lw $s0, 0xd8($sp) +/* 3D490C E00D0AEC D7BC0120 */ ldc1 $f28, 0x120($sp) +/* 3D4910 E00D0AF0 D7BA0118 */ ldc1 $f26, 0x118($sp) +/* 3D4914 E00D0AF4 D7B80110 */ ldc1 $f24, 0x110($sp) +/* 3D4918 E00D0AF8 D7B60108 */ ldc1 $f22, 0x108($sp) +/* 3D491C E00D0AFC D7B40100 */ ldc1 $f20, 0x100($sp) +/* 3D4920 E00D0B00 03E00008 */ jr $ra +/* 3D4924 E00D0B04 27BD0128 */ addiu $sp, $sp, 0x128 +/* 3D4928 E00D0B08 00000000 */ nop +/* 3D492C E00D0B0C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D4970/func_E00D2000.s b/asm/nonmatchings/code_3D4970/func_E00D2000.s new file mode 100644 index 0000000000..e15f7ac834 --- /dev/null +++ b/asm/nonmatchings/code_3D4970/func_E00D2000.s @@ -0,0 +1,78 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D2000 +/* 3D4970 E00D2000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3D4974 E00D2004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3D4978 E00D2008 4485A000 */ mtc1 $a1, $f20 +/* 3D497C E00D200C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3D4980 E00D2010 4486B000 */ mtc1 $a2, $f22 +/* 3D4984 E00D2014 AFB20030 */ sw $s2, 0x30($sp) +/* 3D4988 E00D2018 0080902D */ daddu $s2, $a0, $zero +/* 3D498C E00D201C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3D4990 E00D2020 4487C000 */ mtc1 $a3, $f24 +/* 3D4994 E00D2024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D4998 E00D2028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D499C E00D202C 8FB10064 */ lw $s1, 0x64($sp) +/* 3D49A0 E00D2030 3C02E00D */ lui $v0, %hi(D_E00D2118) +/* 3D49A4 E00D2034 24422118 */ addiu $v0, $v0, %lo(D_E00D2118) +/* 3D49A8 E00D2038 AFA20018 */ sw $v0, 0x18($sp) +/* 3D49AC E00D203C 3C02E00D */ lui $v0, %hi(D_E00D2120) +/* 3D49B0 E00D2040 24422120 */ addiu $v0, $v0, %lo(D_E00D2120) +/* 3D49B4 E00D2044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D49B8 E00D2048 3C02E00D */ lui $v0, %hi(D_E00D2234) +/* 3D49BC E00D204C 24422234 */ addiu $v0, $v0, %lo(D_E00D2234) +/* 3D49C0 E00D2050 AFA20020 */ sw $v0, 0x20($sp) +/* 3D49C4 E00D2054 24020069 */ addiu $v0, $zero, 0x69 +/* 3D49C8 E00D2058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3D49CC E00D205C AFB00028 */ sw $s0, 0x28($sp) +/* 3D49D0 E00D2060 AFA00010 */ sw $zero, 0x10($sp) +/* 3D49D4 E00D2064 AFA00024 */ sw $zero, 0x24($sp) +/* 3D49D8 E00D2068 0C080124 */ jal func_E0200490 +/* 3D49DC E00D206C AFA20014 */ sw $v0, 0x14($sp) +/* 3D49E0 E00D2070 2404003C */ addiu $a0, $zero, 0x3c +/* 3D49E4 E00D2074 24030001 */ addiu $v1, $zero, 1 +/* 3D49E8 E00D2078 0040802D */ daddu $s0, $v0, $zero +/* 3D49EC E00D207C 0C08012C */ jal func_E02004B0 +/* 3D49F0 E00D2080 AE030008 */ sw $v1, 8($s0) +/* 3D49F4 E00D2084 0040202D */ daddu $a0, $v0, $zero +/* 3D49F8 E00D2088 14800003 */ bnez $a0, .LE00D2098 +/* 3D49FC E00D208C AE02000C */ sw $v0, 0xc($s0) +.LE00D2090: +/* 3D4A00 E00D2090 08034824 */ j .LE00D2090 +/* 3D4A04 E00D2094 00000000 */ nop +.LE00D2098: +/* 3D4A08 E00D2098 AC920000 */ sw $s2, ($a0) +/* 3D4A0C E00D209C 1E200004 */ bgtz $s1, .LE00D20B0 +/* 3D4A10 E00D20A0 AC800014 */ sw $zero, 0x14($a0) +/* 3D4A14 E00D20A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D4A18 E00D20A8 0803482D */ j .LE00D20B4 +/* 3D4A1C E00D20AC AC820010 */ sw $v0, 0x10($a0) +.LE00D20B0: +/* 3D4A20 E00D20B0 AC910010 */ sw $s1, 0x10($a0) +.LE00D20B4: +/* 3D4A24 E00D20B4 240300FF */ addiu $v1, $zero, 0xff +/* 3D4A28 E00D20B8 AC830024 */ sw $v1, 0x24($a0) +/* 3D4A2C E00D20BC E4940004 */ swc1 $f20, 4($a0) +/* 3D4A30 E00D20C0 E4960008 */ swc1 $f22, 8($a0) +/* 3D4A34 E00D20C4 E498000C */ swc1 $f24, 0xc($a0) +/* 3D4A38 E00D20C8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3D4A3C E00D20CC 0200102D */ daddu $v0, $s0, $zero +/* 3D4A40 E00D20D0 AC830018 */ sw $v1, 0x18($a0) +/* 3D4A44 E00D20D4 AC83001C */ sw $v1, 0x1c($a0) +/* 3D4A48 E00D20D8 AC830020 */ sw $v1, 0x20($a0) +/* 3D4A4C E00D20DC 2403000A */ addiu $v1, $zero, 0xa +/* 3D4A50 E00D20E0 AC830028 */ sw $v1, 0x28($a0) +/* 3D4A54 E00D20E4 AC83002C */ sw $v1, 0x2c($a0) +/* 3D4A58 E00D20E8 24030078 */ addiu $v1, $zero, 0x78 +/* 3D4A5C E00D20EC AC830030 */ sw $v1, 0x30($a0) +/* 3D4A60 E00D20F0 E4800034 */ swc1 $f0, 0x34($a0) +/* 3D4A64 E00D20F4 8FBF0034 */ lw $ra, 0x34($sp) +/* 3D4A68 E00D20F8 8FB20030 */ lw $s2, 0x30($sp) +/* 3D4A6C E00D20FC 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D4A70 E00D2100 8FB00028 */ lw $s0, 0x28($sp) +/* 3D4A74 E00D2104 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3D4A78 E00D2108 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3D4A7C E00D210C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3D4A80 E00D2110 03E00008 */ jr $ra +/* 3D4A84 E00D2114 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3D4970/func_E00D2118.s b/asm/nonmatchings/code_3D4970/func_E00D2118.s new file mode 100644 index 0000000000..cebadc8e1c --- /dev/null +++ b/asm/nonmatchings/code_3D4970/func_E00D2118.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D2118 +/* 3D4A88 E00D2118 03E00008 */ jr $ra +/* 3D4A8C E00D211C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D4970/func_E00D2120.s b/asm/nonmatchings/code_3D4970/func_E00D2120.s new file mode 100644 index 0000000000..a284c0dbd9 --- /dev/null +++ b/asm/nonmatchings/code_3D4970/func_E00D2120.s @@ -0,0 +1,80 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D2120 +/* 3D4A90 E00D2120 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3D4A94 E00D2124 AFBF0010 */ sw $ra, 0x10($sp) +/* 3D4A98 E00D2128 8C830000 */ lw $v1, ($a0) +/* 3D4A9C E00D212C 8C85000C */ lw $a1, 0xc($a0) +/* 3D4AA0 E00D2130 30620010 */ andi $v0, $v1, 0x10 +/* 3D4AA4 E00D2134 10400005 */ beqz $v0, .LE00D214C +/* 3D4AA8 E00D2138 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D4AAC E00D213C 00621024 */ and $v0, $v1, $v0 +/* 3D4AB0 E00D2140 AC820000 */ sw $v0, ($a0) +/* 3D4AB4 E00D2144 24020010 */ addiu $v0, $zero, 0x10 +/* 3D4AB8 E00D2148 ACA20010 */ sw $v0, 0x10($a1) +.LE00D214C: +/* 3D4ABC E00D214C 8CA30010 */ lw $v1, 0x10($a1) +/* 3D4AC0 E00D2150 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3D4AC4 E00D2154 10400002 */ beqz $v0, .LE00D2160 +/* 3D4AC8 E00D2158 2462FFFF */ addiu $v0, $v1, -1 +/* 3D4ACC E00D215C ACA20010 */ sw $v0, 0x10($a1) +.LE00D2160: +/* 3D4AD0 E00D2160 8CA70014 */ lw $a3, 0x14($a1) +/* 3D4AD4 E00D2164 8CA30010 */ lw $v1, 0x10($a1) +/* 3D4AD8 E00D2168 24E60001 */ addiu $a2, $a3, 1 +/* 3D4ADC E00D216C 04610005 */ bgez $v1, .LE00D2184 +/* 3D4AE0 E00D2170 ACA60014 */ sw $a2, 0x14($a1) +/* 3D4AE4 E00D2174 0C080128 */ jal func_E02004A0 +/* 3D4AE8 E00D2178 00000000 */ nop +/* 3D4AEC E00D217C 0803488A */ j .LE00D2228 +/* 3D4AF0 E00D2180 00000000 */ nop +.LE00D2184: +/* 3D4AF4 E00D2184 28620010 */ slti $v0, $v1, 0x10 +/* 3D4AF8 E00D2188 10400002 */ beqz $v0, .LE00D2194 +/* 3D4AFC E00D218C 00031100 */ sll $v0, $v1, 4 +/* 3D4B00 E00D2190 ACA20024 */ sw $v0, 0x24($a1) +.LE00D2194: +/* 3D4B04 E00D2194 C4A00008 */ lwc1 $f0, 8($a1) +/* 3D4B08 E00D2198 3C01E00D */ lui $at, %hi(D_E00D2510) +/* 3D4B0C E00D219C D4222510 */ ldc1 $f2, %lo(D_E00D2510)($at) +/* 3D4B10 E00D21A0 46000021 */ cvt.d.s $f0, $f0 +/* 3D4B14 E00D21A4 46220000 */ add.d $f0, $f0, $f2 +/* 3D4B18 E00D21A8 28C20007 */ slti $v0, $a2, 7 +/* 3D4B1C E00D21AC 46200020 */ cvt.s.d $f0, $f0 +/* 3D4B20 E00D21B0 10400005 */ beqz $v0, .LE00D21C8 +/* 3D4B24 E00D21B4 E4A00008 */ swc1 $f0, 8($a1) +/* 3D4B28 E00D21B8 3C02E00D */ lui $v0, %hi(D_E00D2500) +/* 3D4B2C E00D21BC 00461021 */ addu $v0, $v0, $a2 +/* 3D4B30 E00D21C0 08034881 */ j .LE00D2204 +/* 3D4B34 E00D21C4 90422500 */ lbu $v0, %lo(D_E00D2500)($v0) +.LE00D21C8: +/* 3D4B38 E00D21C8 3C029249 */ lui $v0, 0x9249 +/* 3D4B3C E00D21CC 34422493 */ ori $v0, $v0, 0x2493 +/* 3D4B40 E00D21D0 24E4FFFA */ addiu $a0, $a3, -6 +/* 3D4B44 E00D21D4 00820018 */ mult $a0, $v0 +/* 3D4B48 E00D21D8 000417C3 */ sra $v0, $a0, 0x1f +/* 3D4B4C E00D21DC 00004010 */ mfhi $t0 +/* 3D4B50 E00D21E0 01041821 */ addu $v1, $t0, $a0 +/* 3D4B54 E00D21E4 00031883 */ sra $v1, $v1, 2 +/* 3D4B58 E00D21E8 00621823 */ subu $v1, $v1, $v0 +/* 3D4B5C E00D21EC 000310C0 */ sll $v0, $v1, 3 +/* 3D4B60 E00D21F0 00431023 */ subu $v0, $v0, $v1 +/* 3D4B64 E00D21F4 00822023 */ subu $a0, $a0, $v0 +/* 3D4B68 E00D21F8 3C02E00D */ lui $v0, %hi(D_E00D2508) +/* 3D4B6C E00D21FC 00441021 */ addu $v0, $v0, $a0 +/* 3D4B70 E00D2200 90422508 */ lbu $v0, %lo(D_E00D2508)($v0) +.LE00D2204: +/* 3D4B74 E00D2204 3C01E00D */ lui $at, %hi(D_E00D2518) +/* 3D4B78 E00D2208 D4222518 */ ldc1 $f2, %lo(D_E00D2518)($at) +/* 3D4B7C E00D220C 44820000 */ mtc1 $v0, $f0 +/* 3D4B80 E00D2210 00000000 */ nop +/* 3D4B84 E00D2214 46800021 */ cvt.d.w $f0, $f0 +/* 3D4B88 E00D2218 46220002 */ mul.d $f0, $f0, $f2 +/* 3D4B8C E00D221C 00000000 */ nop +/* 3D4B90 E00D2220 46200020 */ cvt.s.d $f0, $f0 +/* 3D4B94 E00D2224 E4A00038 */ swc1 $f0, 0x38($a1) +.LE00D2228: +/* 3D4B98 E00D2228 8FBF0010 */ lw $ra, 0x10($sp) +/* 3D4B9C E00D222C 03E00008 */ jr $ra +/* 3D4BA0 E00D2230 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3D4970/func_E00D2234.s b/asm/nonmatchings/code_3D4970/func_E00D2234.s new file mode 100644 index 0000000000..df04e23e9d --- /dev/null +++ b/asm/nonmatchings/code_3D4970/func_E00D2234.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D2234 +/* 3D4BA4 E00D2234 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D4BA8 E00D2238 3C02E00D */ lui $v0, %hi(D_E00D2284) +/* 3D4BAC E00D223C 24422284 */ addiu $v0, $v0, %lo(D_E00D2284) +/* 3D4BB0 E00D2240 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D4BB4 E00D2244 2402000A */ addiu $v0, $zero, 0xa +/* 3D4BB8 E00D2248 AFA20014 */ sw $v0, 0x14($sp) +/* 3D4BBC E00D224C 2402002D */ addiu $v0, $zero, 0x2d +/* 3D4BC0 E00D2250 AFA40018 */ sw $a0, 0x18($sp) +/* 3D4BC4 E00D2254 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D4BC8 E00D2258 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D4BCC E00D225C 0C080120 */ jal func_E0200480 +/* 3D4BD0 E00D2260 AFA20010 */ sw $v0, 0x10($sp) +/* 3D4BD4 E00D2264 8C430000 */ lw $v1, ($v0) +/* 3D4BD8 E00D2268 34630002 */ ori $v1, $v1, 2 +/* 3D4BDC E00D226C AC430000 */ sw $v1, ($v0) +/* 3D4BE0 E00D2270 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D4BE4 E00D2274 03E00008 */ jr $ra +/* 3D4BE8 E00D2278 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D4970/func_E00D227C.s b/asm/nonmatchings/code_3D4970/func_E00D227C.s new file mode 100644 index 0000000000..c86576a067 --- /dev/null +++ b/asm/nonmatchings/code_3D4970/func_E00D227C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D227C +/* 3D4BEC E00D227C 03E00008 */ jr $ra +/* 3D4BF0 E00D2280 00000000 */ nop diff --git a/asm/nonmatchings/code_3D4970/func_E00D2284.s b/asm/nonmatchings/code_3D4970/func_E00D2284.s new file mode 100644 index 0000000000..49e389d168 --- /dev/null +++ b/asm/nonmatchings/code_3D4970/func_E00D2284.s @@ -0,0 +1,163 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D2284 +/* 3D4BF4 E00D2284 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 3D4BF8 E00D2288 0080302D */ daddu $a2, $a0, $zero +/* 3D4BFC E00D228C 3C07DB06 */ lui $a3, 0xdb06 +/* 3D4C00 E00D2290 34E70024 */ ori $a3, $a3, 0x24 +/* 3D4C04 E00D2294 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D4C08 E00D2298 AFB600A8 */ sw $s6, 0xa8($sp) +/* 3D4C0C E00D229C 3C160001 */ lui $s6, 1 +/* 3D4C10 E00D22A0 AFB3009C */ sw $s3, 0x9c($sp) +/* 3D4C14 E00D22A4 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3D4C18 E00D22A8 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3D4C1C E00D22AC 36D61630 */ ori $s6, $s6, 0x1630 +/* 3D4C20 E00D22B0 AFBF00AC */ sw $ra, 0xac($sp) +/* 3D4C24 E00D22B4 AFB500A4 */ sw $s5, 0xa4($sp) +/* 3D4C28 E00D22B8 AFB400A0 */ sw $s4, 0xa0($sp) +/* 3D4C2C E00D22BC AFB20098 */ sw $s2, 0x98($sp) +/* 3D4C30 E00D22C0 AFB10094 */ sw $s1, 0x94($sp) +/* 3D4C34 E00D22C4 AFB00090 */ sw $s0, 0x90($sp) +/* 3D4C38 E00D22C8 F7B400B0 */ sdc1 $f20, 0xb0($sp) +/* 3D4C3C E00D22CC 8E650000 */ lw $a1, ($s3) +/* 3D4C40 E00D22D0 8CD2000C */ lw $s2, 0xc($a2) +/* 3D4C44 E00D22D4 00A0182D */ daddu $v1, $a1, $zero +/* 3D4C48 E00D22D8 24A50008 */ addiu $a1, $a1, 8 +/* 3D4C4C E00D22DC AE650000 */ sw $a1, ($s3) +/* 3D4C50 E00D22E0 8E550024 */ lw $s5, 0x24($s2) +/* 3D4C54 E00D22E4 C6540034 */ lwc1 $f20, 0x34($s2) +/* 3D4C58 E00D22E8 C6400038 */ lwc1 $f0, 0x38($s2) +/* 3D4C5C E00D22EC 3C02E700 */ lui $v0, 0xe700 +/* 3D4C60 E00D22F0 AC620000 */ sw $v0, ($v1) +/* 3D4C64 E00D22F4 AC600004 */ sw $zero, 4($v1) +/* 3D4C68 E00D22F8 ACA70000 */ sw $a3, ($a1) +/* 3D4C6C E00D22FC 8CC30010 */ lw $v1, 0x10($a2) +/* 3D4C70 E00D2300 24A20008 */ addiu $v0, $a1, 8 +/* 3D4C74 E00D2304 AE620000 */ sw $v0, ($s3) +/* 3D4C78 E00D2308 8C62001C */ lw $v0, 0x1c($v1) +/* 3D4C7C E00D230C 3C038000 */ lui $v1, 0x8000 +/* 3D4C80 E00D2310 4600A502 */ mul.s $f20, $f20, $f0 +/* 3D4C84 E00D2314 00000000 */ nop +/* 3D4C88 E00D2318 00431021 */ addu $v0, $v0, $v1 +/* 3D4C8C E00D231C 3C03800B */ lui $v1, %hi(gCameras) +/* 3D4C90 E00D2320 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3D4C94 E00D2324 ACA20004 */ sw $v0, 4($a1) +/* 3D4C98 E00D2328 8E450004 */ lw $a1, 4($s2) +/* 3D4C9C E00D232C 8E460008 */ lw $a2, 8($s2) +/* 3D4CA0 E00D2330 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3D4CA4 E00D2334 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3D4CA8 E00D2338 8E47000C */ lw $a3, 0xc($s2) +/* 3D4CAC E00D233C 00028880 */ sll $s1, $v0, 2 +/* 3D4CB0 E00D2340 02228821 */ addu $s1, $s1, $v0 +/* 3D4CB4 E00D2344 00118880 */ sll $s1, $s1, 2 +/* 3D4CB8 E00D2348 02228823 */ subu $s1, $s1, $v0 +/* 3D4CBC E00D234C 001110C0 */ sll $v0, $s1, 3 +/* 3D4CC0 E00D2350 02228821 */ addu $s1, $s1, $v0 +/* 3D4CC4 E00D2354 001188C0 */ sll $s1, $s1, 3 +/* 3D4CC8 E00D2358 0C080108 */ jal func_E0200420 +/* 3D4CCC E00D235C 02238821 */ addu $s1, $s1, $v1 +/* 3D4CD0 E00D2360 27B00050 */ addiu $s0, $sp, 0x50 +/* 3D4CD4 E00D2364 4405A000 */ mfc1 $a1, $f20 +/* 3D4CD8 E00D2368 0200202D */ daddu $a0, $s0, $zero +/* 3D4CDC E00D236C 00A0302D */ daddu $a2, $a1, $zero +/* 3D4CE0 E00D2370 0C080110 */ jal func_E0200440 +/* 3D4CE4 E00D2374 00A0382D */ daddu $a3, $a1, $zero +/* 3D4CE8 E00D2378 0200202D */ daddu $a0, $s0, $zero +/* 3D4CEC E00D237C 27A50010 */ addiu $a1, $sp, 0x10 +/* 3D4CF0 E00D2380 0C080114 */ jal func_E0200450 +/* 3D4CF4 E00D2384 00A0302D */ daddu $a2, $a1, $zero +/* 3D4CF8 E00D2388 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D4CFC E00D238C 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3D4D00 E00D2390 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3D4D04 E00D2394 3C14800A */ lui $s4, %hi(D_8009A674) +/* 3D4D08 E00D2398 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 3D4D0C E00D239C 96050000 */ lhu $a1, ($s0) +/* 3D4D10 E00D23A0 8E820000 */ lw $v0, ($s4) +/* 3D4D14 E00D23A4 00052980 */ sll $a1, $a1, 6 +/* 3D4D18 E00D23A8 00B62821 */ addu $a1, $a1, $s6 +/* 3D4D1C E00D23AC 0C080118 */ jal func_E0200460 +/* 3D4D20 E00D23B0 00452821 */ addu $a1, $v0, $a1 +/* 3D4D24 E00D23B4 3C03DA38 */ lui $v1, 0xda38 +/* 3D4D28 E00D23B8 34630002 */ ori $v1, $v1, 2 +/* 3D4D2C E00D23BC 3C06DA38 */ lui $a2, 0xda38 +/* 3D4D30 E00D23C0 34C60001 */ ori $a2, $a2, 1 +/* 3D4D34 E00D23C4 3C08D838 */ lui $t0, 0xd838 +/* 3D4D38 E00D23C8 35080002 */ ori $t0, $t0, 2 +/* 3D4D3C E00D23CC 32B500FF */ andi $s5, $s5, 0xff +/* 3D4D40 E00D23D0 8E640000 */ lw $a0, ($s3) +/* 3D4D44 E00D23D4 96020000 */ lhu $v0, ($s0) +/* 3D4D48 E00D23D8 0080282D */ daddu $a1, $a0, $zero +/* 3D4D4C E00D23DC 24840008 */ addiu $a0, $a0, 8 +/* 3D4D50 E00D23E0 AE640000 */ sw $a0, ($s3) +/* 3D4D54 E00D23E4 ACA30000 */ sw $v1, ($a1) +/* 3D4D58 E00D23E8 24430001 */ addiu $v1, $v0, 1 +/* 3D4D5C E00D23EC 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D4D60 E00D23F0 00021180 */ sll $v0, $v0, 6 +/* 3D4D64 E00D23F4 A6030000 */ sh $v1, ($s0) +/* 3D4D68 E00D23F8 8E830000 */ lw $v1, ($s4) +/* 3D4D6C E00D23FC 00561021 */ addu $v0, $v0, $s6 +/* 3D4D70 E00D2400 00621821 */ addu $v1, $v1, $v0 +/* 3D4D74 E00D2404 24820008 */ addiu $v0, $a0, 8 +/* 3D4D78 E00D2408 ACA30004 */ sw $v1, 4($a1) +/* 3D4D7C E00D240C AE620000 */ sw $v0, ($s3) +/* 3D4D80 E00D2410 24820010 */ addiu $v0, $a0, 0x10 +/* 3D4D84 E00D2414 AC860000 */ sw $a2, ($a0) +/* 3D4D88 E00D2418 AE620000 */ sw $v0, ($s3) +/* 3D4D8C E00D241C 8E230204 */ lw $v1, 0x204($s1) +/* 3D4D90 E00D2420 3C02FA00 */ lui $v0, 0xfa00 +/* 3D4D94 E00D2424 AC820008 */ sw $v0, 8($a0) +/* 3D4D98 E00D2428 AC830004 */ sw $v1, 4($a0) +/* 3D4D9C E00D242C 9242001B */ lbu $v0, 0x1b($s2) +/* 3D4DA0 E00D2430 9245001F */ lbu $a1, 0x1f($s2) +/* 3D4DA4 E00D2434 92460023 */ lbu $a2, 0x23($s2) +/* 3D4DA8 E00D2438 24830018 */ addiu $v1, $a0, 0x18 +/* 3D4DAC E00D243C AE630000 */ sw $v1, ($s3) +/* 3D4DB0 E00D2440 3C03FB00 */ lui $v1, 0xfb00 +/* 3D4DB4 E00D2444 AC830010 */ sw $v1, 0x10($a0) +/* 3D4DB8 E00D2448 00021600 */ sll $v0, $v0, 0x18 +/* 3D4DBC E00D244C 00052C00 */ sll $a1, $a1, 0x10 +/* 3D4DC0 E00D2450 00451025 */ or $v0, $v0, $a1 +/* 3D4DC4 E00D2454 00063200 */ sll $a2, $a2, 8 +/* 3D4DC8 E00D2458 00461025 */ or $v0, $v0, $a2 +/* 3D4DCC E00D245C 00551025 */ or $v0, $v0, $s5 +/* 3D4DD0 E00D2460 AC82000C */ sw $v0, 0xc($a0) +/* 3D4DD4 E00D2464 24820020 */ addiu $v0, $a0, 0x20 +/* 3D4DD8 E00D2468 9243002B */ lbu $v1, 0x2b($s2) +/* 3D4DDC E00D246C 9246002F */ lbu $a2, 0x2f($s2) +/* 3D4DE0 E00D2470 92470033 */ lbu $a3, 0x33($s2) +/* 3D4DE4 E00D2474 3C05DE00 */ lui $a1, 0xde00 +/* 3D4DE8 E00D2478 AE620000 */ sw $v0, ($s3) +/* 3D4DEC E00D247C 3C020900 */ lui $v0, 0x900 +/* 3D4DF0 E00D2480 24420080 */ addiu $v0, $v0, 0x80 +/* 3D4DF4 E00D2484 AC82001C */ sw $v0, 0x1c($a0) +/* 3D4DF8 E00D2488 24820028 */ addiu $v0, $a0, 0x28 +/* 3D4DFC E00D248C AC850018 */ sw $a1, 0x18($a0) +/* 3D4E00 E00D2490 AE620000 */ sw $v0, ($s3) +/* 3D4E04 E00D2494 3C020900 */ lui $v0, 0x900 +/* 3D4E08 E00D2498 24420168 */ addiu $v0, $v0, 0x168 +/* 3D4E0C E00D249C AC820024 */ sw $v0, 0x24($a0) +/* 3D4E10 E00D24A0 24820030 */ addiu $v0, $a0, 0x30 +/* 3D4E14 E00D24A4 AC850020 */ sw $a1, 0x20($a0) +/* 3D4E18 E00D24A8 AE620000 */ sw $v0, ($s3) +/* 3D4E1C E00D24AC 24020040 */ addiu $v0, $zero, 0x40 +/* 3D4E20 E00D24B0 AC880028 */ sw $t0, 0x28($a0) +/* 3D4E24 E00D24B4 AC82002C */ sw $v0, 0x2c($a0) +/* 3D4E28 E00D24B8 00031E00 */ sll $v1, $v1, 0x18 +/* 3D4E2C E00D24BC 00063400 */ sll $a2, $a2, 0x10 +/* 3D4E30 E00D24C0 00661825 */ or $v1, $v1, $a2 +/* 3D4E34 E00D24C4 00073A00 */ sll $a3, $a3, 8 +/* 3D4E38 E00D24C8 00671825 */ or $v1, $v1, $a3 +/* 3D4E3C E00D24CC AC830014 */ sw $v1, 0x14($a0) +/* 3D4E40 E00D24D0 8FBF00AC */ lw $ra, 0xac($sp) +/* 3D4E44 E00D24D4 8FB600A8 */ lw $s6, 0xa8($sp) +/* 3D4E48 E00D24D8 8FB500A4 */ lw $s5, 0xa4($sp) +/* 3D4E4C E00D24DC 8FB400A0 */ lw $s4, 0xa0($sp) +/* 3D4E50 E00D24E0 8FB3009C */ lw $s3, 0x9c($sp) +/* 3D4E54 E00D24E4 8FB20098 */ lw $s2, 0x98($sp) +/* 3D4E58 E00D24E8 8FB10094 */ lw $s1, 0x94($sp) +/* 3D4E5C E00D24EC 8FB00090 */ lw $s0, 0x90($sp) +/* 3D4E60 E00D24F0 D7B400B0 */ ldc1 $f20, 0xb0($sp) +/* 3D4E64 E00D24F4 03E00008 */ jr $ra +/* 3D4E68 E00D24F8 27BD00B8 */ addiu $sp, $sp, 0xb8 +/* 3D4E6C E00D24FC 00000000 */ nop diff --git a/asm/nonmatchings/code_3D5020/func_E00D6000.s b/asm/nonmatchings/code_3D5020/func_E00D6000.s new file mode 100644 index 0000000000..8b9d2dfa20 --- /dev/null +++ b/asm/nonmatchings/code_3D5020/func_E00D6000.s @@ -0,0 +1,471 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D6000 +/* 3D5020 E00D6000 27BDFF78 */ addiu $sp, $sp, -0x88 +/* 3D5024 E00D6004 F7B40060 */ sdc1 $f20, 0x60($sp) +/* 3D5028 E00D6008 4485A000 */ mtc1 $a1, $f20 +/* 3D502C E00D600C F7B60068 */ sdc1 $f22, 0x68($sp) +/* 3D5030 E00D6010 4486B000 */ mtc1 $a2, $f22 +/* 3D5034 E00D6014 F7B80070 */ sdc1 $f24, 0x70($sp) +/* 3D5038 E00D6018 4487C000 */ mtc1 $a3, $f24 +/* 3D503C E00D601C AFB70054 */ sw $s7, 0x54($sp) +/* 3D5040 E00D6020 0080B82D */ daddu $s7, $a0, $zero +/* 3D5044 E00D6024 AFB00038 */ sw $s0, 0x38($sp) +/* 3D5048 E00D6028 8FB0009C */ lw $s0, 0x9c($sp) +/* 3D504C E00D602C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D5050 E00D6030 AFBF005C */ sw $ra, 0x5c($sp) +/* 3D5054 E00D6034 AFBE0058 */ sw $fp, 0x58($sp) +/* 3D5058 E00D6038 AFB60050 */ sw $s6, 0x50($sp) +/* 3D505C E00D603C AFB5004C */ sw $s5, 0x4c($sp) +/* 3D5060 E00D6040 AFB40048 */ sw $s4, 0x48($sp) +/* 3D5064 E00D6044 AFB30044 */ sw $s3, 0x44($sp) +/* 3D5068 E00D6048 AFB20040 */ sw $s2, 0x40($sp) +/* 3D506C E00D604C AFB1003C */ sw $s1, 0x3c($sp) +/* 3D5070 E00D6050 F7BC0080 */ sdc1 $f28, 0x80($sp) +/* 3D5074 E00D6054 F7BA0078 */ sdc1 $f26, 0x78($sp) +/* 3D5078 E00D6058 3C08E00D */ lui $t0, %hi(D_E00D6E74) +/* 3D507C E00D605C 01174021 */ addu $t0, $t0, $s7 +/* 3D5080 E00D6060 91086E74 */ lbu $t0, %lo(D_E00D6E74)($t0) +/* 3D5084 E00D6064 3C02E00D */ lui $v0, %hi(D_E00D6718) +/* 3D5088 E00D6068 24426718 */ addiu $v0, $v0, %lo(D_E00D6718) +/* 3D508C E00D606C AFA20018 */ sw $v0, 0x18($sp) +/* 3D5090 E00D6070 3C02E00D */ lui $v0, %hi(D_E00D6720) +/* 3D5094 E00D6074 24426720 */ addiu $v0, $v0, %lo(D_E00D6720) +/* 3D5098 E00D6078 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D509C E00D607C 3C02E00D */ lui $v0, %hi(D_E00D693C) +/* 3D50A0 E00D6080 2442693C */ addiu $v0, $v0, %lo(D_E00D693C) +/* 3D50A4 E00D6084 AFA20020 */ sw $v0, 0x20($sp) +/* 3D50A8 E00D6088 2402006B */ addiu $v0, $zero, 0x6b +/* 3D50AC E00D608C AFA00010 */ sw $zero, 0x10($sp) +/* 3D50B0 E00D6090 AFA00024 */ sw $zero, 0x24($sp) +/* 3D50B4 E00D6094 AFA20014 */ sw $v0, 0x14($sp) +/* 3D50B8 E00D6098 0C080124 */ jal func_E0200490 +/* 3D50BC E00D609C AFA8002C */ sw $t0, 0x2c($sp) +/* 3D50C0 E00D60A0 8FA9002C */ lw $t1, 0x2c($sp) +/* 3D50C4 E00D60A4 AFA20028 */ sw $v0, 0x28($sp) +/* 3D50C8 E00D60A8 000920C0 */ sll $a0, $t1, 3 +/* 3D50CC E00D60AC 00892021 */ addu $a0, $a0, $t1 +/* 3D50D0 E00D60B0 000420C0 */ sll $a0, $a0, 3 +/* 3D50D4 E00D60B4 0C08012C */ jal func_E02004B0 +/* 3D50D8 E00D60B8 AC490008 */ sw $t1, 8($v0) +/* 3D50DC E00D60BC 0040902D */ daddu $s2, $v0, $zero +/* 3D50E0 E00D60C0 8FA80028 */ lw $t0, 0x28($sp) +/* 3D50E4 E00D60C4 0240A02D */ daddu $s4, $s2, $zero +/* 3D50E8 E00D60C8 16400003 */ bnez $s2, .LE00D60D8 +/* 3D50EC E00D60CC AD12000C */ sw $s2, 0xc($t0) +.LE00D60D0: +/* 3D50F0 E00D60D0 08035834 */ j .LE00D60D0 +/* 3D50F4 E00D60D4 00000000 */ nop +.LE00D60D8: +/* 3D50F8 E00D60D8 AE570000 */ sw $s7, ($s2) +/* 3D50FC E00D60DC 1E000004 */ bgtz $s0, .LE00D60F0 +/* 3D5100 E00D60E0 AE400014 */ sw $zero, 0x14($s2) +/* 3D5104 E00D60E4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D5108 E00D60E8 0803583D */ j .LE00D60F4 +/* 3D510C E00D60EC AE420010 */ sw $v0, 0x10($s2) +.LE00D60F0: +/* 3D5110 E00D60F0 AE500010 */ sw $s0, 0x10($s2) +.LE00D60F4: +/* 3D5114 E00D60F4 24040168 */ addiu $a0, $zero, 0x168 +/* 3D5118 E00D60F8 AE400024 */ sw $zero, 0x24($s2) +/* 3D511C E00D60FC E6540004 */ swc1 $f20, 4($s2) +/* 3D5120 E00D6100 E6560008 */ swc1 $f22, 8($s2) +/* 3D5124 E00D6104 E658000C */ swc1 $f24, 0xc($s2) +/* 3D5128 E00D6108 C7A00098 */ lwc1 $f0, 0x98($sp) +/* 3D512C E00D610C 240200FF */ addiu $v0, $zero, 0xff +/* 3D5130 E00D6110 AE420018 */ sw $v0, 0x18($s2) +/* 3D5134 E00D6114 AE42001C */ sw $v0, 0x1c($s2) +/* 3D5138 E00D6118 AE420020 */ sw $v0, 0x20($s2) +/* 3D513C E00D611C AE420028 */ sw $v0, 0x28($s2) +/* 3D5140 E00D6120 E6400034 */ swc1 $f0, 0x34($s2) +/* 3D5144 E00D6124 3C013F80 */ lui $at, 0x3f80 +/* 3D5148 E00D6128 44810000 */ mtc1 $at, $f0 +/* 3D514C E00D612C 240200F5 */ addiu $v0, $zero, 0xf5 +/* 3D5150 E00D6130 AE42002C */ sw $v0, 0x2c($s2) +/* 3D5154 E00D6134 AE400030 */ sw $zero, 0x30($s2) +/* 3D5158 E00D6138 E6400044 */ swc1 $f0, 0x44($s2) +/* 3D515C E00D613C 3C02E00D */ lui $v0, %hi(D_E00D6E84) +/* 3D5160 E00D6140 00571021 */ addu $v0, $v0, $s7 +/* 3D5164 E00D6144 90426E84 */ lbu $v0, %lo(D_E00D6E84)($v0) +/* 3D5168 E00D6148 24110001 */ addiu $s1, $zero, 1 +/* 3D516C E00D614C 44820000 */ mtc1 $v0, $f0 +/* 3D5170 E00D6150 00000000 */ nop +/* 3D5174 E00D6154 46800020 */ cvt.s.w $f0, $f0 +/* 3D5178 E00D6158 0C080138 */ jal func_E02004E0 +/* 3D517C E00D615C E6400038 */ swc1 $f0, 0x38($s2) +/* 3D5180 E00D6160 8FA90028 */ lw $t1, 0x28($sp) +/* 3D5184 E00D6164 8D230008 */ lw $v1, 8($t1) +/* 3D5188 E00D6168 4482E000 */ mtc1 $v0, $f28 +/* 3D518C E00D616C 00000000 */ nop +/* 3D5190 E00D6170 4680E720 */ cvt.s.w $f28, $f28 +/* 3D5194 E00D6174 0223182A */ slt $v1, $s1, $v1 +/* 3D5198 E00D6178 10600155 */ beqz $v1, .LE00D66D0 +/* 3D519C E00D617C 26520048 */ addiu $s2, $s2, 0x48 +/* 3D51A0 E00D6180 3C135555 */ lui $s3, 0x5555 +/* 3D51A4 E00D6184 36735556 */ ori $s3, $s3, 0x5556 +/* 3D51A8 E00D6188 24160014 */ addiu $s6, $zero, 0x14 +/* 3D51AC E00D618C 241E000A */ addiu $fp, $zero, 0xa +/* 3D51B0 E00D6190 2650003C */ addiu $s0, $s2, 0x3c +/* 3D51B4 E00D6194 0000A82D */ daddu $s5, $zero, $zero +/* 3D51B8 E00D6198 001717C3 */ sra $v0, $s7, 0x1f +/* 3D51BC E00D619C 02F30018 */ mult $s7, $s3 +/* 3D51C0 E00D61A0 3C01E00D */ lui $at, %hi(D_E00D6EA0) +/* 3D51C4 E00D61A4 D4366EA0 */ ldc1 $f22, %lo(D_E00D6EA0)($at) +/* 3D51C8 E00D61A8 3C01E00D */ lui $at, %hi(D_E00D6EA8) +/* 3D51CC E00D61AC D43A6EA8 */ ldc1 $f26, %lo(D_E00D6EA8)($at) +/* 3D51D0 E00D61B0 3C013FF0 */ lui $at, 0x3ff0 +/* 3D51D4 E00D61B4 4481A800 */ mtc1 $at, $f21 +/* 3D51D8 E00D61B8 4480A000 */ mtc1 $zero, $f20 +/* 3D51DC E00D61BC 3C01E00D */ lui $at, %hi(D_E00D6EB0) +/* 3D51E0 E00D61C0 D4386EB0 */ ldc1 $f24, %lo(D_E00D6EB0)($at) +/* 3D51E4 E00D61C4 00004010 */ mfhi $t0 +/* 3D51E8 E00D61C8 01024023 */ subu $t0, $t0, $v0 +/* 3D51EC E00D61CC AFA80030 */ sw $t0, 0x30($sp) +.LE00D61D0: +/* 3D51F0 E00D61D0 8FA90030 */ lw $t1, 0x30($sp) +/* 3D51F4 E00D61D4 00091040 */ sll $v0, $t1, 1 +/* 3D51F8 E00D61D8 00491021 */ addu $v0, $v0, $t1 +/* 3D51FC E00D61DC 02E21023 */ subu $v0, $s7, $v0 +/* 3D5200 E00D61E0 AE420000 */ sw $v0, ($s2) +/* 3D5204 E00D61E4 2EE2000D */ sltiu $v0, $s7, 0xd +/* 3D5208 E00D61E8 1040010C */ beqz $v0, .LE00D661C +/* 3D520C E00D61EC 00171080 */ sll $v0, $s7, 2 +/* 3D5210 E00D61F0 3C01E00D */ lui $at, %hi(D_E00D6EB8) +/* 3D5214 E00D61F4 00220821 */ addu $at, $at, $v0 +/* 3D5218 E00D61F8 8C226EB8 */ lw $v0, %lo(D_E00D6EB8)($at) +/* 3D521C E00D61FC 00400008 */ jr $v0 +/* 3D5220 E00D6200 00000000 */ nop +/* 3D5224 E00D6204 0C080138 */ jal func_E02004E0 +/* 3D5228 E00D6208 2404000A */ addiu $a0, $zero, 0xa +/* 3D522C E00D620C 44821000 */ mtc1 $v0, $f2 +/* 3D5230 E00D6210 00000000 */ nop +/* 3D5234 E00D6214 468010A1 */ cvt.d.w $f2, $f2 +/* 3D5238 E00D6218 46361082 */ mul.d $f2, $f2, $f22 +/* 3D523C E00D621C 00000000 */ nop +/* 3D5240 E00D6220 02330018 */ mult $s1, $s3 +/* 3D5244 E00D6224 00111FC3 */ sra $v1, $s1, 0x1f +/* 3D5248 E00D6228 00004010 */ mfhi $t0 +/* 3D524C E00D622C 01031823 */ subu $v1, $t0, $v1 +/* 3D5250 E00D6230 00031040 */ sll $v0, $v1, 1 +/* 3D5254 E00D6234 00431021 */ addu $v0, $v0, $v1 +/* 3D5258 E00D6238 02221023 */ subu $v0, $s1, $v0 +/* 3D525C E00D623C 44820000 */ mtc1 $v0, $f0 +/* 3D5260 E00D6240 00000000 */ nop +/* 3D5264 E00D6244 46800021 */ cvt.d.w $f0, $f0 +/* 3D5268 E00D6248 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D526C E00D624C 00000000 */ nop +/* 3D5270 E00D6250 46361080 */ add.d $f2, $f2, $f22 +/* 3D5274 E00D6254 AE16FFD4 */ sw $s6, -0x2c($s0) +/* 3D5278 E00D6258 AE000004 */ sw $zero, 4($s0) +/* 3D527C E00D625C 08035982 */ j .LE00D6608 +/* 3D5280 E00D6260 46201087 */ neg.d $f2, $f2 +/* 3D5284 E00D6264 0C080138 */ jal func_E02004E0 +/* 3D5288 E00D6268 2404000A */ addiu $a0, $zero, 0xa +/* 3D528C E00D626C 44821000 */ mtc1 $v0, $f2 +/* 3D5290 E00D6270 00000000 */ nop +/* 3D5294 E00D6274 468010A1 */ cvt.d.w $f2, $f2 +/* 3D5298 E00D6278 46361082 */ mul.d $f2, $f2, $f22 +/* 3D529C E00D627C 00000000 */ nop +/* 3D52A0 E00D6280 02330018 */ mult $s1, $s3 +/* 3D52A4 E00D6284 00111FC3 */ sra $v1, $s1, 0x1f +/* 3D52A8 E00D6288 00004010 */ mfhi $t0 +/* 3D52AC E00D628C 01031823 */ subu $v1, $t0, $v1 +/* 3D52B0 E00D6290 00031040 */ sll $v0, $v1, 1 +/* 3D52B4 E00D6294 00431021 */ addu $v0, $v0, $v1 +/* 3D52B8 E00D6298 02221023 */ subu $v0, $s1, $v0 +/* 3D52BC E00D629C 44820000 */ mtc1 $v0, $f0 +/* 3D52C0 E00D62A0 00000000 */ nop +/* 3D52C4 E00D62A4 46800021 */ cvt.d.w $f0, $f0 +/* 3D52C8 E00D62A8 463A0002 */ mul.d $f0, $f0, $f26 +/* 3D52CC E00D62AC 00000000 */ nop +/* 3D52D0 E00D62B0 46361080 */ add.d $f2, $f2, $f22 +/* 3D52D4 E00D62B4 AE16FFD4 */ sw $s6, -0x2c($s0) +/* 3D52D8 E00D62B8 08035982 */ j .LE00D6608 +/* 3D52DC E00D62BC AE000004 */ sw $zero, 4($s0) +/* 3D52E0 E00D62C0 0C080138 */ jal func_E02004E0 +/* 3D52E4 E00D62C4 2404000A */ addiu $a0, $zero, 0xa +/* 3D52E8 E00D62C8 02330018 */ mult $s1, $s3 +/* 3D52EC E00D62CC 001127C3 */ sra $a0, $s1, 0x1f +/* 3D52F0 E00D62D0 00004010 */ mfhi $t0 +/* 3D52F4 E00D62D4 01042023 */ subu $a0, $t0, $a0 +/* 3D52F8 E00D62D8 00041840 */ sll $v1, $a0, 1 +/* 3D52FC E00D62DC 00641821 */ addu $v1, $v1, $a0 +/* 3D5300 E00D62E0 02231823 */ subu $v1, $s1, $v1 +/* 3D5304 E00D62E4 44830000 */ mtc1 $v1, $f0 +/* 3D5308 E00D62E8 00000000 */ nop +/* 3D530C E00D62EC 46800021 */ cvt.d.w $f0, $f0 +/* 3D5310 E00D62F0 46380002 */ mul.d $f0, $f0, $f24 +/* 3D5314 E00D62F4 00000000 */ nop +/* 3D5318 E00D62F8 24420004 */ addiu $v0, $v0, 4 +/* 3D531C E00D62FC 00021023 */ negu $v0, $v0 +/* 3D5320 E00D6300 44821000 */ mtc1 $v0, $f2 +/* 3D5324 E00D6304 00000000 */ nop +/* 3D5328 E00D6308 468010A0 */ cvt.s.w $f2, $f2 +/* 3D532C E00D630C E602FFFC */ swc1 $f2, -4($s0) +/* 3D5330 E00D6310 4620A001 */ sub.d $f0, $f20, $f0 +/* 3D5334 E00D6314 AE1EFFD4 */ sw $fp, -0x2c($s0) +/* 3D5338 E00D6318 08035985 */ j .LE00D6614 +/* 3D533C E00D631C AE000004 */ sw $zero, 4($s0) +/* 3D5340 E00D6320 0C080138 */ jal func_E02004E0 +/* 3D5344 E00D6324 2404000A */ addiu $a0, $zero, 0xa +/* 3D5348 E00D6328 02330018 */ mult $s1, $s3 +/* 3D534C E00D632C 001127C3 */ sra $a0, $s1, 0x1f +/* 3D5350 E00D6330 00004010 */ mfhi $t0 +/* 3D5354 E00D6334 01042023 */ subu $a0, $t0, $a0 +/* 3D5358 E00D6338 00041840 */ sll $v1, $a0, 1 +/* 3D535C E00D633C 00641821 */ addu $v1, $v1, $a0 +/* 3D5360 E00D6340 02231823 */ subu $v1, $s1, $v1 +/* 3D5364 E00D6344 44830000 */ mtc1 $v1, $f0 +/* 3D5368 E00D6348 00000000 */ nop +/* 3D536C E00D634C 46800021 */ cvt.d.w $f0, $f0 +/* 3D5370 E00D6350 46380002 */ mul.d $f0, $f0, $f24 +/* 3D5374 E00D6354 00000000 */ nop +/* 3D5378 E00D6358 24420004 */ addiu $v0, $v0, 4 +/* 3D537C E00D635C 00021023 */ negu $v0, $v0 +/* 3D5380 E00D6360 44821000 */ mtc1 $v0, $f2 +/* 3D5384 E00D6364 00000000 */ nop +/* 3D5388 E00D6368 468010A0 */ cvt.s.w $f2, $f2 +/* 3D538C E00D636C E602FFFC */ swc1 $f2, -4($s0) +/* 3D5390 E00D6370 4620A001 */ sub.d $f0, $f20, $f0 +/* 3D5394 E00D6374 AE1EFFD4 */ sw $fp, -0x2c($s0) +/* 3D5398 E00D6378 08035985 */ j .LE00D6614 +/* 3D539C E00D637C AE000004 */ sw $zero, 4($s0) +/* 3D53A0 E00D6380 0C080138 */ jal func_E02004E0 +/* 3D53A4 E00D6384 2404000A */ addiu $a0, $zero, 0xa +/* 3D53A8 E00D6388 44821000 */ mtc1 $v0, $f2 +/* 3D53AC E00D638C 00000000 */ nop +/* 3D53B0 E00D6390 468010A1 */ cvt.d.w $f2, $f2 +/* 3D53B4 E00D6394 46361082 */ mul.d $f2, $f2, $f22 +/* 3D53B8 E00D6398 00000000 */ nop +/* 3D53BC E00D639C 02330018 */ mult $s1, $s3 +/* 3D53C0 E00D63A0 00111FC3 */ sra $v1, $s1, 0x1f +/* 3D53C4 E00D63A4 00004010 */ mfhi $t0 +/* 3D53C8 E00D63A8 01031823 */ subu $v1, $t0, $v1 +/* 3D53CC E00D63AC 00031040 */ sll $v0, $v1, 1 +/* 3D53D0 E00D63B0 00431021 */ addu $v0, $v0, $v1 +/* 3D53D4 E00D63B4 02221023 */ subu $v0, $s1, $v0 +/* 3D53D8 E00D63B8 44820000 */ mtc1 $v0, $f0 +/* 3D53DC E00D63BC 00000000 */ nop +/* 3D53E0 E00D63C0 46800021 */ cvt.d.w $f0, $f0 +/* 3D53E4 E00D63C4 46380002 */ mul.d $f0, $f0, $f24 +/* 3D53E8 E00D63C8 00000000 */ nop +/* 3D53EC E00D63CC 3C01E00D */ lui $at, %hi(D_E00D6EF0) +/* 3D53F0 E00D63D0 D4246EF0 */ ldc1 $f4, %lo(D_E00D6EF0)($at) +/* 3D53F4 E00D63D4 3C01BF80 */ lui $at, 0xbf80 +/* 3D53F8 E00D63D8 44813000 */ mtc1 $at, $f6 +/* 3D53FC E00D63DC 08035980 */ j .LE00D6600 +/* 3D5400 E00D63E0 46241080 */ add.d $f2, $f2, $f4 +/* 3D5404 E00D63E4 0C080138 */ jal func_E02004E0 +/* 3D5408 E00D63E8 2404000A */ addiu $a0, $zero, 0xa +/* 3D540C E00D63EC 44821000 */ mtc1 $v0, $f2 +/* 3D5410 E00D63F0 00000000 */ nop +/* 3D5414 E00D63F4 468010A1 */ cvt.d.w $f2, $f2 +/* 3D5418 E00D63F8 46361082 */ mul.d $f2, $f2, $f22 +/* 3D541C E00D63FC 00000000 */ nop +/* 3D5420 E00D6400 02330018 */ mult $s1, $s3 +/* 3D5424 E00D6404 00111FC3 */ sra $v1, $s1, 0x1f +/* 3D5428 E00D6408 00004010 */ mfhi $t0 +/* 3D542C E00D640C 01031823 */ subu $v1, $t0, $v1 +/* 3D5430 E00D6410 00031040 */ sll $v0, $v1, 1 +/* 3D5434 E00D6414 00431021 */ addu $v0, $v0, $v1 +/* 3D5438 E00D6418 02221023 */ subu $v0, $s1, $v0 +/* 3D543C E00D641C 44820000 */ mtc1 $v0, $f0 +/* 3D5440 E00D6420 00000000 */ nop +/* 3D5444 E00D6424 46800021 */ cvt.d.w $f0, $f0 +/* 3D5448 E00D6428 46380002 */ mul.d $f0, $f0, $f24 +/* 3D544C E00D642C 00000000 */ nop +/* 3D5450 E00D6430 3C01E00D */ lui $at, %hi(D_E00D6EF8) +/* 3D5454 E00D6434 D4246EF8 */ ldc1 $f4, %lo(D_E00D6EF8)($at) +/* 3D5458 E00D6438 3C01C000 */ lui $at, 0xc000 +/* 3D545C E00D643C 44813000 */ mtc1 $at, $f6 +/* 3D5460 E00D6440 AE16FFD4 */ sw $s6, -0x2c($s0) +/* 3D5464 E00D6444 46241080 */ add.d $f2, $f2, $f4 +/* 3D5468 E00D6448 E6060004 */ swc1 $f6, 4($s0) +/* 3D546C E00D644C 240200FF */ addiu $v0, $zero, 0xff +/* 3D5470 E00D6450 46201087 */ neg.d $f2, $f2 +/* 3D5474 E00D6454 4620A001 */ sub.d $f0, $f20, $f0 +/* 3D5478 E00D6458 462010A0 */ cvt.s.d $f2, $f2 +/* 3D547C E00D645C E602FFFC */ swc1 $f2, -4($s0) +/* 3D5480 E00D6460 46200020 */ cvt.s.d $f0, $f0 +/* 3D5484 E00D6464 E600FFF8 */ swc1 $f0, -8($s0) +/* 3D5488 E00D6468 AE820018 */ sw $v0, 0x18($s4) +/* 3D548C E00D646C 240200F5 */ addiu $v0, $zero, 0xf5 +/* 3D5490 E00D6470 AE82001C */ sw $v0, 0x1c($s4) +/* 3D5494 E00D6474 240200D7 */ addiu $v0, $zero, 0xd7 +/* 3D5498 E00D6478 AE820020 */ sw $v0, 0x20($s4) +/* 3D549C E00D647C 240200DC */ addiu $v0, $zero, 0xdc +/* 3D54A0 E00D6480 AE820028 */ sw $v0, 0x28($s4) +/* 3D54A4 E00D6484 2402003C */ addiu $v0, $zero, 0x3c +/* 3D54A8 E00D6488 AE82002C */ sw $v0, 0x2c($s4) +/* 3D54AC E00D648C 08035987 */ j .LE00D661C +/* 3D54B0 E00D6490 AE9E0030 */ sw $fp, 0x30($s4) +/* 3D54B4 E00D6494 0C080138 */ jal func_E02004E0 +/* 3D54B8 E00D6498 2404000A */ addiu $a0, $zero, 0xa +/* 3D54BC E00D649C 44821000 */ mtc1 $v0, $f2 +/* 3D54C0 E00D64A0 00000000 */ nop +/* 3D54C4 E00D64A4 468010A1 */ cvt.d.w $f2, $f2 +/* 3D54C8 E00D64A8 463A1082 */ mul.d $f2, $f2, $f26 +/* 3D54CC E00D64AC 00000000 */ nop +/* 3D54D0 E00D64B0 02330018 */ mult $s1, $s3 +/* 3D54D4 E00D64B4 001127C3 */ sra $a0, $s1, 0x1f +/* 3D54D8 E00D64B8 00004010 */ mfhi $t0 +/* 3D54DC E00D64BC 01042023 */ subu $a0, $t0, $a0 +/* 3D54E0 E00D64C0 00041840 */ sll $v1, $a0, 1 +/* 3D54E4 E00D64C4 00641821 */ addu $v1, $v1, $a0 +/* 3D54E8 E00D64C8 02231823 */ subu $v1, $s1, $v1 +/* 3D54EC E00D64CC 44832000 */ mtc1 $v1, $f4 +/* 3D54F0 E00D64D0 00000000 */ nop +/* 3D54F4 E00D64D4 46802121 */ cvt.d.w $f4, $f4 +/* 3D54F8 E00D64D8 46382102 */ mul.d $f4, $f4, $f24 +/* 3D54FC E00D64DC 00000000 */ nop +/* 3D5500 E00D64E0 4624A101 */ sub.d $f4, $f20, $f4 +/* 3D5504 E00D64E4 3C013FE0 */ lui $at, 0x3fe0 +/* 3D5508 E00D64E8 44810800 */ mtc1 $at, $f1 +/* 3D550C E00D64EC 44800000 */ mtc1 $zero, $f0 +/* 3D5510 E00D64F0 00000000 */ nop +/* 3D5514 E00D64F4 46202102 */ mul.d $f4, $f4, $f0 +/* 3D5518 E00D64F8 00000000 */ nop +/* 3D551C E00D64FC 3C014000 */ lui $at, 0x4000 +/* 3D5520 E00D6500 44810800 */ mtc1 $at, $f1 +/* 3D5524 E00D6504 44800000 */ mtc1 $zero, $f0 +/* 3D5528 E00D6508 00000000 */ nop +/* 3D552C E00D650C 46201080 */ add.d $f2, $f2, $f0 +/* 3D5530 E00D6510 AE1EFFD4 */ sw $fp, -0x2c($s0) +/* 3D5534 E00D6514 AE000004 */ sw $zero, 4($s0) +/* 3D5538 E00D6518 462010A0 */ cvt.s.d $f2, $f2 +/* 3D553C E00D651C E602FFFC */ swc1 $f2, -4($s0) +/* 3D5540 E00D6520 46202120 */ cvt.s.d $f4, $f4 +/* 3D5544 E00D6524 08035987 */ j .LE00D661C +/* 3D5548 E00D6528 E604FFF8 */ swc1 $f4, -8($s0) +/* 3D554C E00D652C 0C080138 */ jal func_E02004E0 +/* 3D5550 E00D6530 2404000A */ addiu $a0, $zero, 0xa +/* 3D5554 E00D6534 3C01E00D */ lui $at, %hi(D_E00D6F00) +/* 3D5558 E00D6538 D4206F00 */ ldc1 $f0, %lo(D_E00D6F00)($at) +/* 3D555C E00D653C 44821000 */ mtc1 $v0, $f2 +/* 3D5560 E00D6540 00000000 */ nop +/* 3D5564 E00D6544 468010A1 */ cvt.d.w $f2, $f2 +/* 3D5568 E00D6548 46201082 */ mul.d $f2, $f2, $f0 +/* 3D556C E00D654C 00000000 */ nop +/* 3D5570 E00D6550 02330018 */ mult $s1, $s3 +/* 3D5574 E00D6554 00111FC3 */ sra $v1, $s1, 0x1f +/* 3D5578 E00D6558 00004010 */ mfhi $t0 +/* 3D557C E00D655C 01031823 */ subu $v1, $t0, $v1 +/* 3D5580 E00D6560 00031040 */ sll $v0, $v1, 1 +/* 3D5584 E00D6564 00431021 */ addu $v0, $v0, $v1 +/* 3D5588 E00D6568 02221023 */ subu $v0, $s1, $v0 +/* 3D558C E00D656C 44820000 */ mtc1 $v0, $f0 +/* 3D5590 E00D6570 00000000 */ nop +/* 3D5594 E00D6574 46800021 */ cvt.d.w $f0, $f0 +/* 3D5598 E00D6578 46380002 */ mul.d $f0, $f0, $f24 +/* 3D559C E00D657C 00000000 */ nop +/* 3D55A0 E00D6580 3C01BF80 */ lui $at, 0xbf80 +/* 3D55A4 E00D6584 44812000 */ mtc1 $at, $f4 +/* 3D55A8 E00D6588 00000000 */ nop +/* 3D55AC E00D658C E6040004 */ swc1 $f4, 4($s0) +/* 3D55B0 E00D6590 46361080 */ add.d $f2, $f2, $f22 +/* 3D55B4 E00D6594 2402001E */ addiu $v0, $zero, 0x1e +/* 3D55B8 E00D6598 08035982 */ j .LE00D6608 +/* 3D55BC E00D659C AE02FFD4 */ sw $v0, -0x2c($s0) +/* 3D55C0 E00D65A0 0C080138 */ jal func_E02004E0 +/* 3D55C4 E00D65A4 2404000A */ addiu $a0, $zero, 0xa +/* 3D55C8 E00D65A8 44821000 */ mtc1 $v0, $f2 +/* 3D55CC E00D65AC 00000000 */ nop +/* 3D55D0 E00D65B0 468010A1 */ cvt.d.w $f2, $f2 +/* 3D55D4 E00D65B4 46361082 */ mul.d $f2, $f2, $f22 +/* 3D55D8 E00D65B8 00000000 */ nop +/* 3D55DC E00D65BC 02330018 */ mult $s1, $s3 +/* 3D55E0 E00D65C0 00111FC3 */ sra $v1, $s1, 0x1f +/* 3D55E4 E00D65C4 00004010 */ mfhi $t0 +/* 3D55E8 E00D65C8 01031823 */ subu $v1, $t0, $v1 +/* 3D55EC E00D65CC 00031040 */ sll $v0, $v1, 1 +/* 3D55F0 E00D65D0 00431021 */ addu $v0, $v0, $v1 +/* 3D55F4 E00D65D4 02221023 */ subu $v0, $s1, $v0 +/* 3D55F8 E00D65D8 44820000 */ mtc1 $v0, $f0 +/* 3D55FC E00D65DC 00000000 */ nop +/* 3D5600 E00D65E0 46800021 */ cvt.d.w $f0, $f0 +/* 3D5604 E00D65E4 46380002 */ mul.d $f0, $f0, $f24 +/* 3D5608 E00D65E8 00000000 */ nop +/* 3D560C E00D65EC 3C01E00D */ lui $at, %hi(D_E00D6F08) +/* 3D5610 E00D65F0 D4246F08 */ ldc1 $f4, %lo(D_E00D6F08)($at) +/* 3D5614 E00D65F4 3C01C000 */ lui $at, 0xc000 +/* 3D5618 E00D65F8 44813000 */ mtc1 $at, $f6 +/* 3D561C E00D65FC 46241080 */ add.d $f2, $f2, $f4 +.LE00D6600: +/* 3D5620 E00D6600 AE16FFD4 */ sw $s6, -0x2c($s0) +/* 3D5624 E00D6604 E6060004 */ swc1 $f6, 4($s0) +.LE00D6608: +/* 3D5628 E00D6608 4620A001 */ sub.d $f0, $f20, $f0 +/* 3D562C E00D660C 462010A0 */ cvt.s.d $f2, $f2 +/* 3D5630 E00D6610 E602FFFC */ swc1 $f2, -4($s0) +.LE00D6614: +/* 3D5634 E00D6614 46200020 */ cvt.s.d $f0, $f0 +/* 3D5638 E00D6618 E600FFF8 */ swc1 $f0, -8($s0) +.LE00D661C: +/* 3D563C E00D661C 0C080138 */ jal func_E02004E0 +/* 3D5640 E00D6620 8E04FFD4 */ lw $a0, -0x2c($s0) +/* 3D5644 E00D6624 C602FFFC */ lwc1 $f2, -4($s0) +/* 3D5648 E00D6628 44800000 */ mtc1 $zero, $f0 +/* 3D564C E00D662C 00021823 */ negu $v1, $v0 +/* 3D5650 E00D6630 4600103C */ c.lt.s $f2, $f0 +/* 3D5654 E00D6634 00000000 */ nop +/* 3D5658 E00D6638 45000004 */ bc1f .LE00D664C +/* 3D565C E00D663C AE03FFD8 */ sw $v1, -0x28($s0) +/* 3D5660 E00D6640 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3D5664 E00D6644 46001087 */ neg.s $f2, $f2 +/* 3D5668 E00D6648 00431023 */ subu $v0, $v0, $v1 +.LE00D664C: +/* 3D566C E00D664C 44820000 */ mtc1 $v0, $f0 +/* 3D5670 E00D6650 00000000 */ nop +/* 3D5674 E00D6654 46800020 */ cvt.s.w $f0, $f0 +/* 3D5678 E00D6658 46020002 */ mul.s $f0, $f0, $f2 +/* 3D567C E00D665C 00000000 */ nop +/* 3D5680 E00D6660 E600FFC8 */ swc1 $f0, -0x38($s0) +/* 3D5684 E00D6664 8FA9002C */ lw $t1, 0x2c($sp) +/* 3D5688 E00D6668 2522FFFF */ addiu $v0, $t1, -1 +/* 3D568C E00D666C 14400002 */ bnez $v0, .LE00D6678 +/* 3D5690 E00D6670 02A2001A */ div $zero, $s5, $v0 +/* 3D5694 E00D6674 0007000D */ break 7 +.LE00D6678: +/* 3D5698 E00D6678 2401FFFF */ addiu $at, $zero, -1 +/* 3D569C E00D667C 14410004 */ bne $v0, $at, .LE00D6690 +/* 3D56A0 E00D6680 3C018000 */ lui $at, 0x8000 +/* 3D56A4 E00D6684 16A10002 */ bne $s5, $at, .LE00D6690 +/* 3D56A8 E00D6688 00000000 */ nop +/* 3D56AC E00D668C 0006000D */ break 6 +.LE00D6690: +/* 3D56B0 E00D6690 00001012 */ mflo $v0 +/* 3D56B4 E00D6694 26310001 */ addiu $s1, $s1, 1 +/* 3D56B8 E00D6698 26520048 */ addiu $s2, $s2, 0x48 +/* 3D56BC E00D669C 44820000 */ mtc1 $v0, $f0 +/* 3D56C0 E00D66A0 00000000 */ nop +/* 3D56C4 E00D66A4 46800020 */ cvt.s.w $f0, $f0 +/* 3D56C8 E00D66A8 461C0000 */ add.s $f0, $f0, $f28 +/* 3D56CC E00D66AC AE00FFCC */ sw $zero, -0x34($s0) +/* 3D56D0 E00D66B0 AE00FFD0 */ sw $zero, -0x30($s0) +/* 3D56D4 E00D66B4 E6000000 */ swc1 $f0, ($s0) +/* 3D56D8 E00D66B8 8FA80028 */ lw $t0, 0x28($sp) +/* 3D56DC E00D66BC 26B50168 */ addiu $s5, $s5, 0x168 +/* 3D56E0 E00D66C0 8D020008 */ lw $v0, 8($t0) +/* 3D56E4 E00D66C4 0222102A */ slt $v0, $s1, $v0 +/* 3D56E8 E00D66C8 1440FEC1 */ bnez $v0, .LE00D61D0 +/* 3D56EC E00D66CC 26100048 */ addiu $s0, $s0, 0x48 +.LE00D66D0: +/* 3D56F0 E00D66D0 8FA20028 */ lw $v0, 0x28($sp) +/* 3D56F4 E00D66D4 8FBF005C */ lw $ra, 0x5c($sp) +/* 3D56F8 E00D66D8 8FBE0058 */ lw $fp, 0x58($sp) +/* 3D56FC E00D66DC 8FB70054 */ lw $s7, 0x54($sp) +/* 3D5700 E00D66E0 8FB60050 */ lw $s6, 0x50($sp) +/* 3D5704 E00D66E4 8FB5004C */ lw $s5, 0x4c($sp) +/* 3D5708 E00D66E8 8FB40048 */ lw $s4, 0x48($sp) +/* 3D570C E00D66EC 8FB30044 */ lw $s3, 0x44($sp) +/* 3D5710 E00D66F0 8FB20040 */ lw $s2, 0x40($sp) +/* 3D5714 E00D66F4 8FB1003C */ lw $s1, 0x3c($sp) +/* 3D5718 E00D66F8 8FB00038 */ lw $s0, 0x38($sp) +/* 3D571C E00D66FC D7BC0080 */ ldc1 $f28, 0x80($sp) +/* 3D5720 E00D6700 D7BA0078 */ ldc1 $f26, 0x78($sp) +/* 3D5724 E00D6704 D7B80070 */ ldc1 $f24, 0x70($sp) +/* 3D5728 E00D6708 D7B60068 */ ldc1 $f22, 0x68($sp) +/* 3D572C E00D670C D7B40060 */ ldc1 $f20, 0x60($sp) +/* 3D5730 E00D6710 03E00008 */ jr $ra +/* 3D5734 E00D6714 27BD0088 */ addiu $sp, $sp, 0x88 diff --git a/asm/nonmatchings/code_3D5020/func_E00D6718.s b/asm/nonmatchings/code_3D5020/func_E00D6718.s new file mode 100644 index 0000000000..d4b33c5b30 --- /dev/null +++ b/asm/nonmatchings/code_3D5020/func_E00D6718.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D6718 +/* 3D5738 E00D6718 03E00008 */ jr $ra +/* 3D573C E00D671C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D5020/func_E00D6720.s b/asm/nonmatchings/code_3D5020/func_E00D6720.s new file mode 100644 index 0000000000..044fd95f14 --- /dev/null +++ b/asm/nonmatchings/code_3D5020/func_E00D6720.s @@ -0,0 +1,154 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D6720 +/* 3D5740 E00D6720 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D5744 E00D6724 AFB20018 */ sw $s2, 0x18($sp) +/* 3D5748 E00D6728 0080902D */ daddu $s2, $a0, $zero +/* 3D574C E00D672C AFBF001C */ sw $ra, 0x1c($sp) +/* 3D5750 E00D6730 AFB10014 */ sw $s1, 0x14($sp) +/* 3D5754 E00D6734 AFB00010 */ sw $s0, 0x10($sp) +/* 3D5758 E00D6738 F7B40020 */ sdc1 $f20, 0x20($sp) +/* 3D575C E00D673C 8E430000 */ lw $v1, ($s2) +/* 3D5760 E00D6740 8E44000C */ lw $a0, 0xc($s2) +/* 3D5764 E00D6744 30620010 */ andi $v0, $v1, 0x10 +/* 3D5768 E00D6748 10400005 */ beqz $v0, .LE00D6760 +/* 3D576C E00D674C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D5770 E00D6750 00621024 */ and $v0, $v1, $v0 +/* 3D5774 E00D6754 AE420000 */ sw $v0, ($s2) +/* 3D5778 E00D6758 24020010 */ addiu $v0, $zero, 0x10 +/* 3D577C E00D675C AC820010 */ sw $v0, 0x10($a0) +.LE00D6760: +/* 3D5780 E00D6760 8C830010 */ lw $v1, 0x10($a0) +/* 3D5784 E00D6764 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3D5788 E00D6768 10400002 */ beqz $v0, .LE00D6774 +/* 3D578C E00D676C 2462FFFF */ addiu $v0, $v1, -1 +/* 3D5790 E00D6770 AC820010 */ sw $v0, 0x10($a0) +.LE00D6774: +/* 3D5794 E00D6774 8C820014 */ lw $v0, 0x14($a0) +/* 3D5798 E00D6778 8C830010 */ lw $v1, 0x10($a0) +/* 3D579C E00D677C 24450001 */ addiu $a1, $v0, 1 +/* 3D57A0 E00D6780 04610005 */ bgez $v1, .LE00D6798 +/* 3D57A4 E00D6784 AC850014 */ sw $a1, 0x14($a0) +/* 3D57A8 E00D6788 0C080128 */ jal func_E02004A0 +/* 3D57AC E00D678C 0240202D */ daddu $a0, $s2, $zero +/* 3D57B0 E00D6790 08035A48 */ j .LE00D6920 +/* 3D57B4 E00D6794 00000000 */ nop +.LE00D6798: +/* 3D57B8 E00D6798 28620010 */ slti $v0, $v1, 0x10 +/* 3D57BC E00D679C 10400002 */ beqz $v0, .LE00D67A8 +/* 3D57C0 E00D67A0 00031100 */ sll $v0, $v1, 4 +/* 3D57C4 E00D67A4 AC820024 */ sw $v0, 0x24($a0) +.LE00D67A8: +/* 3D57C8 E00D67A8 28A20010 */ slti $v0, $a1, 0x10 +/* 3D57CC E00D67AC 10400003 */ beqz $v0, .LE00D67BC +/* 3D57D0 E00D67B0 00051100 */ sll $v0, $a1, 4 +/* 3D57D4 E00D67B4 2442000F */ addiu $v0, $v0, 0xf +/* 3D57D8 E00D67B8 AC820024 */ sw $v0, 0x24($a0) +.LE00D67BC: +/* 3D57DC E00D67BC 8E420008 */ lw $v0, 8($s2) +/* 3D57E0 E00D67C0 24110001 */ addiu $s1, $zero, 1 +/* 3D57E4 E00D67C4 0222102A */ slt $v0, $s1, $v0 +/* 3D57E8 E00D67C8 10400055 */ beqz $v0, .LE00D6920 +/* 3D57EC E00D67CC 24840048 */ addiu $a0, $a0, 0x48 +/* 3D57F0 E00D67D0 4480A000 */ mtc1 $zero, $f20 +/* 3D57F4 E00D67D4 24900024 */ addiu $s0, $a0, 0x24 +.LE00D67D8: +/* 3D57F8 E00D67D8 8E02FFF0 */ lw $v0, -0x10($s0) +/* 3D57FC E00D67DC 8E03FFEC */ lw $v1, -0x14($s0) +/* 3D5800 E00D67E0 24420001 */ addiu $v0, $v0, 1 +/* 3D5804 E00D67E4 AE02FFF0 */ sw $v0, -0x10($s0) +/* 3D5808 E00D67E8 0043102A */ slt $v0, $v0, $v1 +/* 3D580C E00D67EC 14400016 */ bnez $v0, .LE00D6848 +/* 3D5810 E00D67F0 00000000 */ nop +/* 3D5814 E00D67F4 C6020014 */ lwc1 $f2, 0x14($s0) +/* 3D5818 E00D67F8 4614103C */ c.lt.s $f2, $f20 +/* 3D581C E00D67FC 00000000 */ nop +/* 3D5820 E00D6800 4500000A */ bc1f .LE00D682C +/* 3D5824 E00D6804 AE00FFF0 */ sw $zero, -0x10($s0) +/* 3D5828 E00D6808 0060102D */ daddu $v0, $v1, $zero +/* 3D582C E00D680C 00021023 */ negu $v0, $v0 +/* 3D5830 E00D6810 44820000 */ mtc1 $v0, $f0 +/* 3D5834 E00D6814 00000000 */ nop +/* 3D5838 E00D6818 46800020 */ cvt.s.w $f0, $f0 +/* 3D583C E00D681C 46020002 */ mul.s $f0, $f0, $f2 +/* 3D5840 E00D6820 00000000 */ nop +/* 3D5844 E00D6824 08035A0C */ j .LE00D6830 +/* 3D5848 E00D6828 E600FFE0 */ swc1 $f0, -0x20($s0) +.LE00D682C: +/* 3D584C E00D682C E614FFE0 */ swc1 $f20, -0x20($s0) +.LE00D6830: +/* 3D5850 E00D6830 0C080138 */ jal func_E02004E0 +/* 3D5854 E00D6834 24040167 */ addiu $a0, $zero, 0x167 +/* 3D5858 E00D6838 44820000 */ mtc1 $v0, $f0 +/* 3D585C E00D683C 00000000 */ nop +/* 3D5860 E00D6840 46800020 */ cvt.s.w $f0, $f0 +/* 3D5864 E00D6844 E6000018 */ swc1 $f0, 0x18($s0) +.LE00D6848: +/* 3D5868 E00D6848 8E03FFF0 */ lw $v1, -0x10($s0) +/* 3D586C E00D684C 00031040 */ sll $v0, $v1, 1 +/* 3D5870 E00D6850 00431021 */ addu $v0, $v0, $v1 +/* 3D5874 E00D6854 00021900 */ sll $v1, $v0, 4 +/* 3D5878 E00D6858 00621823 */ subu $v1, $v1, $v0 +/* 3D587C E00D685C 8E02FFEC */ lw $v0, -0x14($s0) +/* 3D5880 E00D6860 00031880 */ sll $v1, $v1, 2 +/* 3D5884 E00D6864 14400002 */ bnez $v0, .LE00D6870 +/* 3D5888 E00D6868 0062001A */ div $zero, $v1, $v0 +/* 3D588C E00D686C 0007000D */ break 7 +.LE00D6870: +/* 3D5890 E00D6870 2401FFFF */ addiu $at, $zero, -1 +/* 3D5894 E00D6874 14410004 */ bne $v0, $at, .LE00D6888 +/* 3D5898 E00D6878 3C018000 */ lui $at, 0x8000 +/* 3D589C E00D687C 14610002 */ bne $v1, $at, .LE00D6888 +/* 3D58A0 E00D6880 00000000 */ nop +/* 3D58A4 E00D6884 0006000D */ break 6 +.LE00D6888: +/* 3D58A8 E00D6888 00001812 */ mflo $v1 +/* 3D58AC E00D688C C604FFE0 */ lwc1 $f4, -0x20($s0) +/* 3D58B0 E00D6890 C6000014 */ lwc1 $f0, 0x14($s0) +/* 3D58B4 E00D6894 C6020018 */ lwc1 $f2, 0x18($s0) +/* 3D58B8 E00D6898 46002100 */ add.s $f4, $f4, $f0 +/* 3D58BC E00D689C C600001C */ lwc1 $f0, 0x1c($s0) +/* 3D58C0 E00D68A0 46001080 */ add.s $f2, $f2, $f0 +/* 3D58C4 E00D68A4 E604FFE0 */ swc1 $f4, -0x20($s0) +/* 3D58C8 E00D68A8 44836000 */ mtc1 $v1, $f12 +/* 3D58CC E00D68AC 00000000 */ nop +/* 3D58D0 E00D68B0 46806320 */ cvt.s.w $f12, $f12 +/* 3D58D4 E00D68B4 4614603C */ c.lt.s $f12, $f20 +/* 3D58D8 E00D68B8 00000000 */ nop +/* 3D58DC E00D68BC 45010008 */ bc1t .LE00D68E0 +/* 3D58E0 E00D68C0 E6020018 */ swc1 $f2, 0x18($s0) +/* 3D58E4 E00D68C4 3C014334 */ lui $at, 0x4334 +/* 3D58E8 E00D68C8 44810000 */ mtc1 $at, $f0 +/* 3D58EC E00D68CC 00000000 */ nop +/* 3D58F0 E00D68D0 460C003C */ c.lt.s $f0, $f12 +/* 3D58F4 E00D68D4 00000000 */ nop +/* 3D58F8 E00D68D8 45000003 */ bc1f .LE00D68E8 +/* 3D58FC E00D68DC 00000000 */ nop +.LE00D68E0: +/* 3D5900 E00D68E0 08035A43 */ j .LE00D690C +/* 3D5904 E00D68E4 AE000000 */ sw $zero, ($s0) +.LE00D68E8: +/* 3D5908 E00D68E8 0C080140 */ jal func_E0200500 +/* 3D590C E00D68EC 00000000 */ nop +/* 3D5910 E00D68F0 3C01437F */ lui $at, 0x437f +/* 3D5914 E00D68F4 44811000 */ mtc1 $at, $f2 +/* 3D5918 E00D68F8 00000000 */ nop +/* 3D591C E00D68FC 46020002 */ mul.s $f0, $f0, $f2 +/* 3D5920 E00D6900 00000000 */ nop +/* 3D5924 E00D6904 4600018D */ trunc.w.s $f6, $f0 +/* 3D5928 E00D6908 E6060000 */ swc1 $f6, ($s0) +.LE00D690C: +/* 3D592C E00D690C 26310001 */ addiu $s1, $s1, 1 +/* 3D5930 E00D6910 8E420008 */ lw $v0, 8($s2) +/* 3D5934 E00D6914 0222102A */ slt $v0, $s1, $v0 +/* 3D5938 E00D6918 1440FFAF */ bnez $v0, .LE00D67D8 +/* 3D593C E00D691C 26100048 */ addiu $s0, $s0, 0x48 +.LE00D6920: +/* 3D5940 E00D6920 8FBF001C */ lw $ra, 0x1c($sp) +/* 3D5944 E00D6924 8FB20018 */ lw $s2, 0x18($sp) +/* 3D5948 E00D6928 8FB10014 */ lw $s1, 0x14($sp) +/* 3D594C E00D692C 8FB00010 */ lw $s0, 0x10($sp) +/* 3D5950 E00D6930 D7B40020 */ ldc1 $f20, 0x20($sp) +/* 3D5954 E00D6934 03E00008 */ jr $ra +/* 3D5958 E00D6938 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D5020/func_E00D693C.s b/asm/nonmatchings/code_3D5020/func_E00D693C.s new file mode 100644 index 0000000000..3dd15e0c0d --- /dev/null +++ b/asm/nonmatchings/code_3D5020/func_E00D693C.s @@ -0,0 +1,19 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D693C +/* 3D595C E00D693C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D5960 E00D6940 3C02E00D */ lui $v0, %hi(D_E00D6980) +/* 3D5964 E00D6944 24426980 */ addiu $v0, $v0, %lo(D_E00D6980) +/* 3D5968 E00D6948 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D596C E00D694C 2402000A */ addiu $v0, $zero, 0xa +/* 3D5970 E00D6950 AFA20014 */ sw $v0, 0x14($sp) +/* 3D5974 E00D6954 2402002D */ addiu $v0, $zero, 0x2d +/* 3D5978 E00D6958 AFA40018 */ sw $a0, 0x18($sp) +/* 3D597C E00D695C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D5980 E00D6960 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D5984 E00D6964 0C080120 */ jal func_E0200480 +/* 3D5988 E00D6968 AFA20010 */ sw $v0, 0x10($sp) +/* 3D598C E00D696C 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D5990 E00D6970 03E00008 */ jr $ra +/* 3D5994 E00D6974 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D5020/func_E00D6978.s b/asm/nonmatchings/code_3D5020/func_E00D6978.s new file mode 100644 index 0000000000..2934b34f03 --- /dev/null +++ b/asm/nonmatchings/code_3D5020/func_E00D6978.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D6978 +/* 3D5998 E00D6978 03E00008 */ jr $ra +/* 3D599C E00D697C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D5020/func_E00D6980.s b/asm/nonmatchings/code_3D5020/func_E00D6980.s new file mode 100644 index 0000000000..adb5912e6c --- /dev/null +++ b/asm/nonmatchings/code_3D5020/func_E00D6980.s @@ -0,0 +1,313 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D6980 +/* 3D59A0 E00D6980 27BDFF08 */ addiu $sp, $sp, -0xf8 +/* 3D59A4 E00D6984 3C08DB06 */ lui $t0, 0xdb06 +/* 3D59A8 E00D6988 AFB200B8 */ sw $s2, 0xb8($sp) +/* 3D59AC E00D698C 3C12800A */ lui $s2, %hi(D_8009A66C) +/* 3D59B0 E00D6990 2652A66C */ addiu $s2, $s2, %lo(D_8009A66C) +/* 3D59B4 E00D6994 AFBF00D4 */ sw $ra, 0xd4($sp) +/* 3D59B8 E00D6998 AFBE00D0 */ sw $fp, 0xd0($sp) +/* 3D59BC E00D699C AFB700CC */ sw $s7, 0xcc($sp) +/* 3D59C0 E00D69A0 AFB600C8 */ sw $s6, 0xc8($sp) +/* 3D59C4 E00D69A4 AFB500C4 */ sw $s5, 0xc4($sp) +/* 3D59C8 E00D69A8 AFB400C0 */ sw $s4, 0xc0($sp) +/* 3D59CC E00D69AC AFB300BC */ sw $s3, 0xbc($sp) +/* 3D59D0 E00D69B0 AFB100B4 */ sw $s1, 0xb4($sp) +/* 3D59D4 E00D69B4 AFB000B0 */ sw $s0, 0xb0($sp) +/* 3D59D8 E00D69B8 F7BA00F0 */ sdc1 $f26, 0xf0($sp) +/* 3D59DC E00D69BC F7B800E8 */ sdc1 $f24, 0xe8($sp) +/* 3D59E0 E00D69C0 F7B600E0 */ sdc1 $f22, 0xe0($sp) +/* 3D59E4 E00D69C4 F7B400D8 */ sdc1 $f20, 0xd8($sp) +/* 3D59E8 E00D69C8 AFA400F8 */ sw $a0, 0xf8($sp) +/* 3D59EC E00D69CC 8E460000 */ lw $a2, ($s2) +/* 3D59F0 E00D69D0 8FA900F8 */ lw $t1, 0xf8($sp) +/* 3D59F4 E00D69D4 4480A000 */ mtc1 $zero, $f20 +/* 3D59F8 E00D69D8 8D31000C */ lw $s1, 0xc($t1) +/* 3D59FC E00D69DC 4405A000 */ mfc1 $a1, $f20 +/* 3D5A00 E00D69E0 4407A000 */ mfc1 $a3, $f20 +/* 3D5A04 E00D69E4 8E290024 */ lw $t1, 0x24($s1) +/* 3D5A08 E00D69E8 35080024 */ ori $t0, $t0, 0x24 +/* 3D5A0C E00D69EC AFA900A0 */ sw $t1, 0xa0($sp) +/* 3D5A10 E00D69F0 8E290000 */ lw $t1, ($s1) +/* 3D5A14 E00D69F4 3C02E700 */ lui $v0, 0xe700 +/* 3D5A18 E00D69F8 AFA900A4 */ sw $t1, 0xa4($sp) +/* 3D5A1C E00D69FC C6200034 */ lwc1 $f0, 0x34($s1) +/* 3D5A20 E00D6A00 C6220044 */ lwc1 $f2, 0x44($s1) +/* 3D5A24 E00D6A04 8E360018 */ lw $s6, 0x18($s1) +/* 3D5A28 E00D6A08 8E3E001C */ lw $fp, 0x1c($s1) +/* 3D5A2C E00D6A0C 8E290020 */ lw $t1, 0x20($s1) +/* 3D5A30 E00D6A10 00C0182D */ daddu $v1, $a2, $zero +/* 3D5A34 E00D6A14 AFA900A8 */ sw $t1, 0xa8($sp) +/* 3D5A38 E00D6A18 C63A0038 */ lwc1 $f26, 0x38($s1) +/* 3D5A3C E00D6A1C 24C60008 */ addiu $a2, $a2, 8 +/* 3D5A40 E00D6A20 AC620000 */ sw $v0, ($v1) +/* 3D5A44 E00D6A24 AC600004 */ sw $zero, 4($v1) +/* 3D5A48 E00D6A28 ACC80000 */ sw $t0, ($a2) +/* 3D5A4C E00D6A2C 8FA900F8 */ lw $t1, 0xf8($sp) +/* 3D5A50 E00D6A30 3C088000 */ lui $t0, 0x8000 +/* 3D5A54 E00D6A34 8D220010 */ lw $v0, 0x10($t1) +/* 3D5A58 E00D6A38 46020002 */ mul.s $f0, $f0, $f2 +/* 3D5A5C E00D6A3C 00000000 */ nop +/* 3D5A60 E00D6A40 8C42001C */ lw $v0, 0x1c($v0) +/* 3D5A64 E00D6A44 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3D5A68 E00D6A48 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3D5A6C E00D6A4C 00481021 */ addu $v0, $v0, $t0 +/* 3D5A70 E00D6A50 ACC20004 */ sw $v0, 4($a2) +/* 3D5A74 E00D6A54 00031080 */ sll $v0, $v1, 2 +/* 3D5A78 E00D6A58 00431021 */ addu $v0, $v0, $v1 +/* 3D5A7C E00D6A5C 00021080 */ sll $v0, $v0, 2 +/* 3D5A80 E00D6A60 00431023 */ subu $v0, $v0, $v1 +/* 3D5A84 E00D6A64 000218C0 */ sll $v1, $v0, 3 +/* 3D5A88 E00D6A68 00431021 */ addu $v0, $v0, $v1 +/* 3D5A8C E00D6A6C 000210C0 */ sll $v0, $v0, 3 +/* 3D5A90 E00D6A70 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3D5A94 E00D6A74 00220821 */ addu $at, $at, $v0 +/* 3D5A98 E00D6A78 C4221DEC */ lwc1 $f2, %lo(D_800B1DEC)($at) +/* 3D5A9C E00D6A7C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D5AA0 E00D6A80 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3D5AA4 E00D6A84 C6200004 */ lwc1 $f0, 4($s1) +/* 3D5AA8 E00D6A88 3C100001 */ lui $s0, 1 +/* 3D5AAC E00D6A8C AE460000 */ sw $a2, ($s2) +/* 3D5AB0 E00D6A90 24C60008 */ addiu $a2, $a2, 8 +/* 3D5AB4 E00D6A94 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3D5AB8 E00D6A98 C6200008 */ lwc1 $f0, 8($s1) +/* 3D5ABC E00D6A9C 46001087 */ neg.s $f2, $f2 +/* 3D5AC0 E00D6AA0 AE460000 */ sw $a2, ($s2) +/* 3D5AC4 E00D6AA4 44061000 */ mfc1 $a2, $f2 +/* 3D5AC8 E00D6AA8 36101630 */ ori $s0, $s0, 0x1630 +/* 3D5ACC E00D6AAC E7A00018 */ swc1 $f0, 0x18($sp) +/* 3D5AD0 E00D6AB0 C620000C */ lwc1 $f0, 0xc($s1) +/* 3D5AD4 E00D6AB4 24140001 */ addiu $s4, $zero, 1 +/* 3D5AD8 E00D6AB8 0C080180 */ jal func_E0200600 +/* 3D5ADC E00D6ABC E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3D5AE0 E00D6AC0 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D5AE4 E00D6AC4 3C158007 */ lui $s5, %hi(D_800741F0) +/* 3D5AE8 E00D6AC8 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 3D5AEC E00D6ACC 3C17800A */ lui $s7, %hi(D_8009A674) +/* 3D5AF0 E00D6AD0 26F7A674 */ addiu $s7, $s7, %lo(D_8009A674) +/* 3D5AF4 E00D6AD4 96A50000 */ lhu $a1, ($s5) +/* 3D5AF8 E00D6AD8 8EE20000 */ lw $v0, ($s7) +/* 3D5AFC E00D6ADC 00052980 */ sll $a1, $a1, 6 +/* 3D5B00 E00D6AE0 00B02821 */ addu $a1, $a1, $s0 +/* 3D5B04 E00D6AE4 0C080118 */ jal func_E0200460 +/* 3D5B08 E00D6AE8 00452821 */ addu $a1, $v0, $a1 +/* 3D5B0C E00D6AEC 3C03DA38 */ lui $v1, 0xda38 +/* 3D5B10 E00D6AF0 34630002 */ ori $v1, $v1, 2 +/* 3D5B14 E00D6AF4 8E440000 */ lw $a0, ($s2) +/* 3D5B18 E00D6AF8 96A20000 */ lhu $v0, ($s5) +/* 3D5B1C E00D6AFC 0080282D */ daddu $a1, $a0, $zero +/* 3D5B20 E00D6B00 24840008 */ addiu $a0, $a0, 8 +/* 3D5B24 E00D6B04 AE440000 */ sw $a0, ($s2) +/* 3D5B28 E00D6B08 ACA30000 */ sw $v1, ($a1) +/* 3D5B2C E00D6B0C 00541821 */ addu $v1, $v0, $s4 +/* 3D5B30 E00D6B10 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D5B34 E00D6B14 00021180 */ sll $v0, $v0, 6 +/* 3D5B38 E00D6B18 A6A30000 */ sh $v1, ($s5) +/* 3D5B3C E00D6B1C 8EE30000 */ lw $v1, ($s7) +/* 3D5B40 E00D6B20 00501021 */ addu $v0, $v0, $s0 +/* 3D5B44 E00D6B24 00621821 */ addu $v1, $v1, $v0 +/* 3D5B48 E00D6B28 24820008 */ addiu $v0, $a0, 8 +/* 3D5B4C E00D6B2C ACA30004 */ sw $v1, 4($a1) +/* 3D5B50 E00D6B30 AE420000 */ sw $v0, ($s2) +/* 3D5B54 E00D6B34 3C02FA00 */ lui $v0, 0xfa00 +/* 3D5B58 E00D6B38 AC820000 */ sw $v0, ($a0) +/* 3D5B5C E00D6B3C 9222001B */ lbu $v0, 0x1b($s1) +/* 3D5B60 E00D6B40 9225001F */ lbu $a1, 0x1f($s1) +/* 3D5B64 E00D6B44 92260023 */ lbu $a2, 0x23($s1) +/* 3D5B68 E00D6B48 24830010 */ addiu $v1, $a0, 0x10 +/* 3D5B6C E00D6B4C AE430000 */ sw $v1, ($s2) +/* 3D5B70 E00D6B50 3C03FB00 */ lui $v1, 0xfb00 +/* 3D5B74 E00D6B54 AC830008 */ sw $v1, 8($a0) +/* 3D5B78 E00D6B58 8FA900A0 */ lw $t1, 0xa0($sp) +/* 3D5B7C E00D6B5C 00021600 */ sll $v0, $v0, 0x18 +/* 3D5B80 E00D6B60 00052C00 */ sll $a1, $a1, 0x10 +/* 3D5B84 E00D6B64 00451025 */ or $v0, $v0, $a1 +/* 3D5B88 E00D6B68 00063200 */ sll $a2, $a2, 8 +/* 3D5B8C E00D6B6C 00461025 */ or $v0, $v0, $a2 +/* 3D5B90 E00D6B70 312300FF */ andi $v1, $t1, 0xff +/* 3D5B94 E00D6B74 00431025 */ or $v0, $v0, $v1 +/* 3D5B98 E00D6B78 AC820004 */ sw $v0, 4($a0) +/* 3D5B9C E00D6B7C 9223002B */ lbu $v1, 0x2b($s1) +/* 3D5BA0 E00D6B80 9225002F */ lbu $a1, 0x2f($s1) +/* 3D5BA4 E00D6B84 92260033 */ lbu $a2, 0x33($s1) +/* 3D5BA8 E00D6B88 3C02DE00 */ lui $v0, 0xde00 +/* 3D5BAC E00D6B8C AC820010 */ sw $v0, 0x10($a0) +/* 3D5BB0 E00D6B90 3C020900 */ lui $v0, 0x900 +/* 3D5BB4 E00D6B94 24420200 */ addiu $v0, $v0, 0x200 +/* 3D5BB8 E00D6B98 AC820014 */ sw $v0, 0x14($a0) +/* 3D5BBC E00D6B9C 00031E00 */ sll $v1, $v1, 0x18 +/* 3D5BC0 E00D6BA0 00052C00 */ sll $a1, $a1, 0x10 +/* 3D5BC4 E00D6BA4 00651825 */ or $v1, $v1, $a1 +/* 3D5BC8 E00D6BA8 00063200 */ sll $a2, $a2, 8 +/* 3D5BCC E00D6BAC 00661825 */ or $v1, $v1, $a2 +/* 3D5BD0 E00D6BB0 AC83000C */ sw $v1, 0xc($a0) +/* 3D5BD4 E00D6BB4 8FA900F8 */ lw $t1, 0xf8($sp) +/* 3D5BD8 E00D6BB8 26310048 */ addiu $s1, $s1, 0x48 +/* 3D5BDC E00D6BBC 8D220008 */ lw $v0, 8($t1) +/* 3D5BE0 E00D6BC0 24840018 */ addiu $a0, $a0, 0x18 +/* 3D5BE4 E00D6BC4 0282102A */ slt $v0, $s4, $v0 +/* 3D5BE8 E00D6BC8 10400080 */ beqz $v0, .LE00D6DCC +/* 3D5BEC E00D6BCC AE440000 */ sw $a0, ($s2) +/* 3D5BF0 E00D6BD0 0240982D */ daddu $s3, $s2, $zero +/* 3D5BF4 E00D6BD4 00161E00 */ sll $v1, $s6, 0x18 +/* 3D5BF8 E00D6BD8 33C200FF */ andi $v0, $fp, 0xff +/* 3D5BFC E00D6BDC 00021400 */ sll $v0, $v0, 0x10 +/* 3D5C00 E00D6BE0 00621825 */ or $v1, $v1, $v0 +/* 3D5C04 E00D6BE4 4600A606 */ mov.s $f24, $f20 +/* 3D5C08 E00D6BE8 27B20060 */ addiu $s2, $sp, 0x60 +/* 3D5C0C E00D6BEC 02E0F02D */ daddu $fp, $s7, $zero +/* 3D5C10 E00D6BF0 02A0B82D */ daddu $s7, $s5, $zero +/* 3D5C14 E00D6BF4 3C150001 */ lui $s5, 1 +/* 3D5C18 E00D6BF8 36B51630 */ ori $s5, $s5, 0x1630 +/* 3D5C1C E00D6BFC 26300004 */ addiu $s0, $s1, 4 +/* 3D5C20 E00D6C00 8FA900A8 */ lw $t1, 0xa8($sp) +/* 3D5C24 E00D6C04 3C013F80 */ lui $at, 0x3f80 +/* 3D5C28 E00D6C08 4481B000 */ mtc1 $at, $f22 +/* 3D5C2C E00D6C0C 312200FF */ andi $v0, $t1, 0xff +/* 3D5C30 E00D6C10 00021200 */ sll $v0, $v0, 8 +/* 3D5C34 E00D6C14 8FA900A4 */ lw $t1, 0xa4($sp) +/* 3D5C38 E00D6C18 00621825 */ or $v1, $v1, $v0 +/* 3D5C3C E00D6C1C AFA300AC */ sw $v1, 0xac($sp) +/* 3D5C40 E00D6C20 3C03E00D */ lui $v1, %hi(D_E00D6E40) +/* 3D5C44 E00D6C24 24636E40 */ addiu $v1, $v1, %lo(D_E00D6E40) +/* 3D5C48 E00D6C28 00091080 */ sll $v0, $t1, 2 +/* 3D5C4C E00D6C2C 0043B021 */ addu $s6, $v0, $v1 +.LE00D6C30: +/* 3D5C50 E00D6C30 3C02FA00 */ lui $v0, 0xfa00 +/* 3D5C54 E00D6C34 8E680000 */ lw $t0, ($s3) +/* 3D5C58 E00D6C38 C6140030 */ lwc1 $f20, 0x30($s0) +/* 3D5C5C E00D6C3C 0100282D */ daddu $a1, $t0, $zero +/* 3D5C60 E00D6C40 ACA20000 */ sw $v0, ($a1) +/* 3D5C64 E00D6C44 8E030020 */ lw $v1, 0x20($s0) +/* 3D5C68 E00D6C48 8FA900A0 */ lw $t1, 0xa0($sp) +/* 3D5C6C E00D6C4C 01230018 */ mult $t1, $v1 +/* 3D5C70 E00D6C50 00001812 */ mflo $v1 +/* 3D5C74 E00D6C54 3C028080 */ lui $v0, 0x8080 +/* 3D5C78 E00D6C58 34428081 */ ori $v0, $v0, 0x8081 +/* 3D5C7C E00D6C5C 00620018 */ mult $v1, $v0 +/* 3D5C80 E00D6C60 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D5C84 E00D6C64 4406C000 */ mfc1 $a2, $f24 +/* 3D5C88 E00D6C68 4407C000 */ mfc1 $a3, $f24 +/* 3D5C8C E00D6C6C 8FA900AC */ lw $t1, 0xac($sp) +/* 3D5C90 E00D6C70 00001010 */ mfhi $v0 +/* 3D5C94 E00D6C74 00431021 */ addu $v0, $v0, $v1 +/* 3D5C98 E00D6C78 000211C3 */ sra $v0, $v0, 7 +/* 3D5C9C E00D6C7C 00031FC3 */ sra $v1, $v1, 0x1f +/* 3D5CA0 E00D6C80 00431023 */ subu $v0, $v0, $v1 +/* 3D5CA4 E00D6C84 304200FF */ andi $v0, $v0, 0xff +/* 3D5CA8 E00D6C88 01221025 */ or $v0, $t1, $v0 +/* 3D5CAC E00D6C8C ACA20004 */ sw $v0, 4($a1) +/* 3D5CB0 E00D6C90 E7B60010 */ swc1 $f22, 0x10($sp) +/* 3D5CB4 E00D6C94 8E050038 */ lw $a1, 0x38($s0) +/* 3D5CB8 E00D6C98 25080008 */ addiu $t0, $t0, 8 +/* 3D5CBC E00D6C9C 0C080104 */ jal func_E0200410 +/* 3D5CC0 E00D6CA0 AE680000 */ sw $t0, ($s3) +/* 3D5CC4 E00D6CA4 C6000000 */ lwc1 $f0, ($s0) +/* 3D5CC8 E00D6CA8 461A0000 */ add.s $f0, $f0, $f26 +/* 3D5CCC E00D6CAC 4406C000 */ mfc1 $a2, $f24 +/* 3D5CD0 E00D6CB0 4407C000 */ mfc1 $a3, $f24 +/* 3D5CD4 E00D6CB4 44050000 */ mfc1 $a1, $f0 +/* 3D5CD8 E00D6CB8 0C080108 */ jal func_E0200420 +/* 3D5CDC E00D6CBC 0240202D */ daddu $a0, $s2, $zero +/* 3D5CE0 E00D6CC0 0240202D */ daddu $a0, $s2, $zero +/* 3D5CE4 E00D6CC4 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D5CE8 E00D6CC8 0C080114 */ jal func_E0200450 +/* 3D5CEC E00D6CCC 00A0302D */ daddu $a2, $a1, $zero +/* 3D5CF0 E00D6CD0 8EC30000 */ lw $v1, ($s6) +/* 3D5CF4 E00D6CD4 3C020900 */ lui $v0, 0x900 +/* 3D5CF8 E00D6CD8 24420688 */ addiu $v0, $v0, 0x688 +/* 3D5CFC E00D6CDC 10620005 */ beq $v1, $v0, .LE00D6CF4 +/* 3D5D00 E00D6CE0 00000000 */ nop +/* 3D5D04 E00D6CE4 3C020900 */ lui $v0, 0x900 +/* 3D5D08 E00D6CE8 24420808 */ addiu $v0, $v0, 0x808 +/* 3D5D0C E00D6CEC 14620006 */ bne $v1, $v0, .LE00D6D08 +/* 3D5D10 E00D6CF0 0240202D */ daddu $a0, $s2, $zero +.LE00D6CF4: +/* 3D5D14 E00D6CF4 4405A000 */ mfc1 $a1, $f20 +/* 3D5D18 E00D6CF8 4406B000 */ mfc1 $a2, $f22 +/* 3D5D1C E00D6CFC 4407B000 */ mfc1 $a3, $f22 +/* 3D5D20 E00D6D00 08035B45 */ j .LE00D6D14 +/* 3D5D24 E00D6D04 0240202D */ daddu $a0, $s2, $zero +.LE00D6D08: +/* 3D5D28 E00D6D08 4405A000 */ mfc1 $a1, $f20 +/* 3D5D2C E00D6D0C 4407B000 */ mfc1 $a3, $f22 +/* 3D5D30 E00D6D10 00A0302D */ daddu $a2, $a1, $zero +.LE00D6D14: +/* 3D5D34 E00D6D14 0C080110 */ jal func_E0200440 +/* 3D5D38 E00D6D18 26940001 */ addiu $s4, $s4, 1 +/* 3D5D3C E00D6D1C 27A40060 */ addiu $a0, $sp, 0x60 +/* 3D5D40 E00D6D20 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D5D44 E00D6D24 0C080114 */ jal func_E0200450 +/* 3D5D48 E00D6D28 00A0302D */ daddu $a2, $a1, $zero +/* 3D5D4C E00D6D2C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D5D50 E00D6D30 96E50000 */ lhu $a1, ($s7) +/* 3D5D54 E00D6D34 8FC20000 */ lw $v0, ($fp) +/* 3D5D58 E00D6D38 00052980 */ sll $a1, $a1, 6 +/* 3D5D5C E00D6D3C 00B52821 */ addu $a1, $a1, $s5 +/* 3D5D60 E00D6D40 0C080118 */ jal func_E0200460 +/* 3D5D64 E00D6D44 00452821 */ addu $a1, $v0, $a1 +/* 3D5D68 E00D6D48 3C06D838 */ lui $a2, 0xd838 +/* 3D5D6C E00D6D4C 8E640000 */ lw $a0, ($s3) +/* 3D5D70 E00D6D50 34C60002 */ ori $a2, $a2, 2 +/* 3D5D74 E00D6D54 0080282D */ daddu $a1, $a0, $zero +/* 3D5D78 E00D6D58 24840008 */ addiu $a0, $a0, 8 +/* 3D5D7C E00D6D5C AE640000 */ sw $a0, ($s3) +/* 3D5D80 E00D6D60 96E20000 */ lhu $v0, ($s7) +/* 3D5D84 E00D6D64 3C03DA38 */ lui $v1, 0xda38 +/* 3D5D88 E00D6D68 ACA30000 */ sw $v1, ($a1) +/* 3D5D8C E00D6D6C 24430001 */ addiu $v1, $v0, 1 +/* 3D5D90 E00D6D70 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D5D94 E00D6D74 00021180 */ sll $v0, $v0, 6 +/* 3D5D98 E00D6D78 A6E30000 */ sh $v1, ($s7) +/* 3D5D9C E00D6D7C 8FC30000 */ lw $v1, ($fp) +/* 3D5DA0 E00D6D80 00551021 */ addu $v0, $v0, $s5 +/* 3D5DA4 E00D6D84 00621821 */ addu $v1, $v1, $v0 +/* 3D5DA8 E00D6D88 3C02DE00 */ lui $v0, 0xde00 +/* 3D5DAC E00D6D8C ACA30004 */ sw $v1, 4($a1) +/* 3D5DB0 E00D6D90 AC820000 */ sw $v0, ($a0) +/* 3D5DB4 E00D6D94 8EC30000 */ lw $v1, ($s6) +/* 3D5DB8 E00D6D98 24820008 */ addiu $v0, $a0, 8 +/* 3D5DBC E00D6D9C AE620000 */ sw $v0, ($s3) +/* 3D5DC0 E00D6DA0 24020040 */ addiu $v0, $zero, 0x40 +/* 3D5DC4 E00D6DA4 AC860008 */ sw $a2, 8($a0) +/* 3D5DC8 E00D6DA8 AC82000C */ sw $v0, 0xc($a0) +/* 3D5DCC E00D6DAC AC830004 */ sw $v1, 4($a0) +/* 3D5DD0 E00D6DB0 8FA900F8 */ lw $t1, 0xf8($sp) +/* 3D5DD4 E00D6DB4 26100048 */ addiu $s0, $s0, 0x48 +/* 3D5DD8 E00D6DB8 8D220008 */ lw $v0, 8($t1) +/* 3D5DDC E00D6DBC 24840010 */ addiu $a0, $a0, 0x10 +/* 3D5DE0 E00D6DC0 0282102A */ slt $v0, $s4, $v0 +/* 3D5DE4 E00D6DC4 1440FF9A */ bnez $v0, .LE00D6C30 +/* 3D5DE8 E00D6DC8 AE640000 */ sw $a0, ($s3) +.LE00D6DCC: +/* 3D5DEC E00D6DCC 3C05D838 */ lui $a1, 0xd838 +/* 3D5DF0 E00D6DD0 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3D5DF4 E00D6DD4 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3D5DF8 E00D6DD8 8C620000 */ lw $v0, ($v1) +/* 3D5DFC E00D6DDC 34A50002 */ ori $a1, $a1, 2 +/* 3D5E00 E00D6DE0 0040202D */ daddu $a0, $v0, $zero +/* 3D5E04 E00D6DE4 24420008 */ addiu $v0, $v0, 8 +/* 3D5E08 E00D6DE8 AC620000 */ sw $v0, ($v1) +/* 3D5E0C E00D6DEC 24020040 */ addiu $v0, $zero, 0x40 +/* 3D5E10 E00D6DF0 AC850000 */ sw $a1, ($a0) +/* 3D5E14 E00D6DF4 AC820004 */ sw $v0, 4($a0) +/* 3D5E18 E00D6DF8 8FBF00D4 */ lw $ra, 0xd4($sp) +/* 3D5E1C E00D6DFC 8FBE00D0 */ lw $fp, 0xd0($sp) +/* 3D5E20 E00D6E00 8FB700CC */ lw $s7, 0xcc($sp) +/* 3D5E24 E00D6E04 8FB600C8 */ lw $s6, 0xc8($sp) +/* 3D5E28 E00D6E08 8FB500C4 */ lw $s5, 0xc4($sp) +/* 3D5E2C E00D6E0C 8FB400C0 */ lw $s4, 0xc0($sp) +/* 3D5E30 E00D6E10 8FB300BC */ lw $s3, 0xbc($sp) +/* 3D5E34 E00D6E14 8FB200B8 */ lw $s2, 0xb8($sp) +/* 3D5E38 E00D6E18 8FB100B4 */ lw $s1, 0xb4($sp) +/* 3D5E3C E00D6E1C 8FB000B0 */ lw $s0, 0xb0($sp) +/* 3D5E40 E00D6E20 D7BA00F0 */ ldc1 $f26, 0xf0($sp) +/* 3D5E44 E00D6E24 D7B800E8 */ ldc1 $f24, 0xe8($sp) +/* 3D5E48 E00D6E28 D7B600E0 */ ldc1 $f22, 0xe0($sp) +/* 3D5E4C E00D6E2C D7B400D8 */ ldc1 $f20, 0xd8($sp) +/* 3D5E50 E00D6E30 03E00008 */ jr $ra +/* 3D5E54 E00D6E34 27BD00F8 */ addiu $sp, $sp, 0xf8 +/* 3D5E58 E00D6E38 00000000 */ nop +/* 3D5E5C E00D6E3C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8000.s b/asm/nonmatchings/code_3D67C0/func_E00D8000.s new file mode 100644 index 0000000000..7e0483f549 --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8000.s @@ -0,0 +1,80 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8000 +/* 3D67C0 E00D8000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3D67C4 E00D8004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3D67C8 E00D8008 4485A000 */ mtc1 $a1, $f20 +/* 3D67CC E00D800C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3D67D0 E00D8010 4486B000 */ mtc1 $a2, $f22 +/* 3D67D4 E00D8014 AFB20030 */ sw $s2, 0x30($sp) +/* 3D67D8 E00D8018 0080902D */ daddu $s2, $a0, $zero +/* 3D67DC E00D801C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3D67E0 E00D8020 4487C000 */ mtc1 $a3, $f24 +/* 3D67E4 E00D8024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D67E8 E00D8028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D67EC E00D802C 8FB10064 */ lw $s1, 0x64($sp) +/* 3D67F0 E00D8030 3C02E00E */ lui $v0, %hi(D_E00D8120) +/* 3D67F4 E00D8034 24428120 */ addiu $v0, $v0, %lo(D_E00D8120) +/* 3D67F8 E00D8038 AFA20018 */ sw $v0, 0x18($sp) +/* 3D67FC E00D803C 3C02E00E */ lui $v0, %hi(D_E00D8128) +/* 3D6800 E00D8040 24428128 */ addiu $v0, $v0, %lo(D_E00D8128) +/* 3D6804 E00D8044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D6808 E00D8048 3C02E00E */ lui $v0, %hi(D_E00D825C) +/* 3D680C E00D804C 2442825C */ addiu $v0, $v0, %lo(D_E00D825C) +/* 3D6810 E00D8050 AFA20020 */ sw $v0, 0x20($sp) +/* 3D6814 E00D8054 3C02E00E */ lui $v0, %hi(D_E00D8264) +/* 3D6818 E00D8058 24428264 */ addiu $v0, $v0, %lo(D_E00D8264) +/* 3D681C E00D805C AFA20024 */ sw $v0, 0x24($sp) +/* 3D6820 E00D8060 2402006C */ addiu $v0, $zero, 0x6c +/* 3D6824 E00D8064 AFBF0034 */ sw $ra, 0x34($sp) +/* 3D6828 E00D8068 AFB00028 */ sw $s0, 0x28($sp) +/* 3D682C E00D806C AFA00010 */ sw $zero, 0x10($sp) +/* 3D6830 E00D8070 0C080124 */ jal func_E0200490 +/* 3D6834 E00D8074 AFA20014 */ sw $v0, 0x14($sp) +/* 3D6838 E00D8078 24040038 */ addiu $a0, $zero, 0x38 +/* 3D683C E00D807C 24030001 */ addiu $v1, $zero, 1 +/* 3D6840 E00D8080 0040802D */ daddu $s0, $v0, $zero +/* 3D6844 E00D8084 0C08012C */ jal func_E02004B0 +/* 3D6848 E00D8088 AE030008 */ sw $v1, 8($s0) +/* 3D684C E00D808C 0040202D */ daddu $a0, $v0, $zero +/* 3D6850 E00D8090 14800003 */ bnez $a0, .LE00D80A0 +/* 3D6854 E00D8094 AE02000C */ sw $v0, 0xc($s0) +.LE00D8098: +/* 3D6858 E00D8098 08036026 */ j .LE00D8098 +/* 3D685C E00D809C 00000000 */ nop +.LE00D80A0: +/* 3D6860 E00D80A0 AC920000 */ sw $s2, ($a0) +/* 3D6864 E00D80A4 1E200004 */ bgtz $s1, .LE00D80B8 +/* 3D6868 E00D80A8 AC800014 */ sw $zero, 0x14($a0) +/* 3D686C E00D80AC 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D6870 E00D80B0 0803602F */ j .LE00D80BC +/* 3D6874 E00D80B4 AC820010 */ sw $v0, 0x10($a0) +.LE00D80B8: +/* 3D6878 E00D80B8 AC910010 */ sw $s1, 0x10($a0) +.LE00D80BC: +/* 3D687C E00D80BC E4940004 */ swc1 $f20, 4($a0) +/* 3D6880 E00D80C0 E4960008 */ swc1 $f22, 8($a0) +/* 3D6884 E00D80C4 E498000C */ swc1 $f24, 0xc($a0) +/* 3D6888 E00D80C8 AC80001C */ sw $zero, 0x1c($a0) +/* 3D688C E00D80CC C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3D6890 E00D80D0 0200102D */ daddu $v0, $s0, $zero +/* 3D6894 E00D80D4 AC800028 */ sw $zero, 0x28($a0) +/* 3D6898 E00D80D8 E4800018 */ swc1 $f0, 0x18($a0) +/* 3D689C E00D80DC C4800028 */ lwc1 $f0, 0x28($a0) +/* 3D68A0 E00D80E0 240300FF */ addiu $v1, $zero, 0xff +/* 3D68A4 E00D80E4 AC800020 */ sw $zero, 0x20($a0) +/* 3D68A8 E00D80E8 AC800024 */ sw $zero, 0x24($a0) +/* 3D68AC E00D80EC A0830034 */ sb $v1, 0x34($a0) +/* 3D68B0 E00D80F0 A0830035 */ sb $v1, 0x35($a0) +/* 3D68B4 E00D80F4 E4800030 */ swc1 $f0, 0x30($a0) +/* 3D68B8 E00D80F8 E480002C */ swc1 $f0, 0x2c($a0) +/* 3D68BC E00D80FC 8FBF0034 */ lw $ra, 0x34($sp) +/* 3D68C0 E00D8100 8FB20030 */ lw $s2, 0x30($sp) +/* 3D68C4 E00D8104 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D68C8 E00D8108 8FB00028 */ lw $s0, 0x28($sp) +/* 3D68CC E00D810C D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3D68D0 E00D8110 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3D68D4 E00D8114 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3D68D8 E00D8118 03E00008 */ jr $ra +/* 3D68DC E00D811C 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8120.s b/asm/nonmatchings/code_3D67C0/func_E00D8120.s new file mode 100644 index 0000000000..fd99e732f3 --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8120.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8120 +/* 3D68E0 E00D8120 03E00008 */ jr $ra +/* 3D68E4 E00D8124 00000000 */ nop diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8128.s b/asm/nonmatchings/code_3D67C0/func_E00D8128.s new file mode 100644 index 0000000000..0b541947bb --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8128.s @@ -0,0 +1,87 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8128 +/* 3D68E8 E00D8128 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3D68EC E00D812C AFBF0010 */ sw $ra, 0x10($sp) +/* 3D68F0 E00D8130 8C830000 */ lw $v1, ($a0) +/* 3D68F4 E00D8134 8C85000C */ lw $a1, 0xc($a0) +/* 3D68F8 E00D8138 30620010 */ andi $v0, $v1, 0x10 +/* 3D68FC E00D813C 10400005 */ beqz $v0, .LE00D8154 +/* 3D6900 E00D8140 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D6904 E00D8144 00621024 */ and $v0, $v1, $v0 +/* 3D6908 E00D8148 AC820000 */ sw $v0, ($a0) +/* 3D690C E00D814C 24020017 */ addiu $v0, $zero, 0x17 +/* 3D6910 E00D8150 ACA20010 */ sw $v0, 0x10($a1) +.LE00D8154: +/* 3D6914 E00D8154 8CA30010 */ lw $v1, 0x10($a1) +/* 3D6918 E00D8158 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3D691C E00D815C 10400002 */ beqz $v0, .LE00D8168 +/* 3D6920 E00D8160 2462FFFF */ addiu $v0, $v1, -1 +/* 3D6924 E00D8164 ACA20010 */ sw $v0, 0x10($a1) +.LE00D8168: +/* 3D6928 E00D8168 8CA30014 */ lw $v1, 0x14($a1) +/* 3D692C E00D816C 8CA60010 */ lw $a2, 0x10($a1) +/* 3D6930 E00D8170 24620001 */ addiu $v0, $v1, 1 +/* 3D6934 E00D8174 04C10005 */ bgez $a2, .LE00D818C +/* 3D6938 E00D8178 ACA20014 */ sw $v0, 0x14($a1) +/* 3D693C E00D817C 0C080128 */ jal func_E02004A0 +/* 3D6940 E00D8180 00000000 */ nop +/* 3D6944 E00D8184 08036094 */ j .LE00D8250 +/* 3D6948 E00D8188 00000000 */ nop +.LE00D818C: +/* 3D694C E00D818C 00C0202D */ daddu $a0, $a2, $zero +/* 3D6950 E00D8190 C4A00018 */ lwc1 $f0, 0x18($a1) +/* 3D6954 E00D8194 28620017 */ slti $v0, $v1, 0x17 +/* 3D6958 E00D8198 ACA00028 */ sw $zero, 0x28($a1) +/* 3D695C E00D819C ACA0002C */ sw $zero, 0x2c($a1) +/* 3D6960 E00D81A0 1040000F */ beqz $v0, .LE00D81E0 +/* 3D6964 E00D81A4 E4A0001C */ swc1 $f0, 0x1c($a1) +/* 3D6968 E00D81A8 3C02E00E */ lui $v0, %hi(D_E00D8818) +/* 3D696C E00D81AC 24428818 */ addiu $v0, $v0, %lo(D_E00D8818) +/* 3D6970 E00D81B0 00031880 */ sll $v1, $v1, 2 +/* 3D6974 E00D81B4 00621821 */ addu $v1, $v1, $v0 +/* 3D6978 E00D81B8 84620000 */ lh $v0, ($v1) +/* 3D697C E00D81BC 44820000 */ mtc1 $v0, $f0 +/* 3D6980 E00D81C0 00000000 */ nop +/* 3D6984 E00D81C4 46800020 */ cvt.s.w $f0, $f0 +/* 3D6988 E00D81C8 E4A00030 */ swc1 $f0, 0x30($a1) +/* 3D698C E00D81CC 90620002 */ lbu $v0, 2($v1) +/* 3D6990 E00D81D0 A0A20034 */ sb $v0, 0x34($a1) +/* 3D6994 E00D81D4 90620003 */ lbu $v0, 3($v1) +/* 3D6998 E00D81D8 08036085 */ j .LE00D8214 +/* 3D699C E00D81DC A0A20035 */ sb $v0, 0x35($a1) +.LE00D81E0: +/* 3D69A0 E00D81E0 3C03E00E */ lui $v1, %hi(D_E00D8818) +/* 3D69A4 E00D81E4 24638818 */ addiu $v1, $v1, %lo(D_E00D8818) +/* 3D69A8 E00D81E8 84620058 */ lh $v0, 0x58($v1) +/* 3D69AC E00D81EC 44820000 */ mtc1 $v0, $f0 +/* 3D69B0 E00D81F0 00000000 */ nop +/* 3D69B4 E00D81F4 46800020 */ cvt.s.w $f0, $f0 +/* 3D69B8 E00D81F8 E4A00030 */ swc1 $f0, 0x30($a1) +/* 3D69BC E00D81FC 9062005A */ lbu $v0, 0x5a($v1) +/* 3D69C0 E00D8200 A0A20034 */ sb $v0, 0x34($a1) +/* 3D69C4 E00D8204 9063005B */ lbu $v1, 0x5b($v1) +/* 3D69C8 E00D8208 24020018 */ addiu $v0, $zero, 0x18 +/* 3D69CC E00D820C ACA20014 */ sw $v0, 0x14($a1) +/* 3D69D0 E00D8210 A0A30035 */ sb $v1, 0x35($a1) +.LE00D8214: +/* 3D69D4 E00D8214 28820017 */ slti $v0, $a0, 0x17 +/* 3D69D8 E00D8218 1040000D */ beqz $v0, .LE00D8250 +/* 3D69DC E00D821C 00041880 */ sll $v1, $a0, 2 +/* 3D69E0 E00D8220 3C02E00E */ lui $v0, %hi(D_E00D8818) +/* 3D69E4 E00D8224 24428818 */ addiu $v0, $v0, %lo(D_E00D8818) +/* 3D69E8 E00D8228 00621821 */ addu $v1, $v1, $v0 +/* 3D69EC E00D822C 84620000 */ lh $v0, ($v1) +/* 3D69F0 E00D8230 44820000 */ mtc1 $v0, $f0 +/* 3D69F4 E00D8234 00000000 */ nop +/* 3D69F8 E00D8238 46800020 */ cvt.s.w $f0, $f0 +/* 3D69FC E00D823C E4A00030 */ swc1 $f0, 0x30($a1) +/* 3D6A00 E00D8240 90620002 */ lbu $v0, 2($v1) +/* 3D6A04 E00D8244 A0A20034 */ sb $v0, 0x34($a1) +/* 3D6A08 E00D8248 90620003 */ lbu $v0, 3($v1) +/* 3D6A0C E00D824C A0A20035 */ sb $v0, 0x35($a1) +.LE00D8250: +/* 3D6A10 E00D8250 8FBF0010 */ lw $ra, 0x10($sp) +/* 3D6A14 E00D8254 03E00008 */ jr $ra +/* 3D6A18 E00D8258 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3D67C0/func_E00D825C.s b/asm/nonmatchings/code_3D67C0/func_E00D825C.s new file mode 100644 index 0000000000..7084fe4a8a --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D825C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D825C +/* 3D6A1C E00D825C 03E00008 */ jr $ra +/* 3D6A20 E00D8260 00000000 */ nop diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8264.s b/asm/nonmatchings/code_3D67C0/func_E00D8264.s new file mode 100644 index 0000000000..960fb31bf2 --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8264.s @@ -0,0 +1,11 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8264 +/* 3D6A24 E00D8264 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3D6A28 E00D8268 AFBF0010 */ sw $ra, 0x10($sp) +/* 3D6A2C E00D826C 0C03618C */ jal func_E00D8630 +/* 3D6A30 E00D8270 00000000 */ nop +/* 3D6A34 E00D8274 8FBF0010 */ lw $ra, 0x10($sp) +/* 3D6A38 E00D8278 03E00008 */ jr $ra +/* 3D6A3C E00D827C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8280.s b/asm/nonmatchings/code_3D67C0/func_E00D8280.s new file mode 100644 index 0000000000..811b995825 --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8280.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8280 +/* 3D6A40 E00D8280 03E00008 */ jr $ra +/* 3D6A44 E00D8284 00000000 */ nop diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8288.s b/asm/nonmatchings/code_3D67C0/func_E00D8288.s new file mode 100644 index 0000000000..a0d3a3f004 --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8288.s @@ -0,0 +1,55 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8288 +/* 3D6A48 E00D8288 0080402D */ daddu $t0, $a0, $zero +/* 3D6A4C E00D828C 05010002 */ bgez $t0, .LE00D8298 +/* 3D6A50 E00D8290 00A0482D */ daddu $t1, $a1, $zero +/* 3D6A54 E00D8294 0000402D */ daddu $t0, $zero, $zero +.LE00D8298: +/* 3D6A58 E00D8298 05220001 */ bltzl $t1, .LE00D82A0 +/* 3D6A5C E00D829C 0000482D */ daddu $t1, $zero, $zero +.LE00D82A0: +/* 3D6A60 E00D82A0 04C20001 */ bltzl $a2, .LE00D82A8 +/* 3D6A64 E00D82A4 0000302D */ daddu $a2, $zero, $zero +.LE00D82A8: +/* 3D6A68 E00D82A8 04E20001 */ bltzl $a3, .LE00D82B0 +/* 3D6A6C E00D82AC 0000382D */ daddu $a3, $zero, $zero +.LE00D82B0: +/* 3D6A70 E00D82B0 29020140 */ slti $v0, $t0, 0x140 +/* 3D6A74 E00D82B4 50400001 */ beql $v0, $zero, .LE00D82BC +/* 3D6A78 E00D82B8 2408013F */ addiu $t0, $zero, 0x13f +.LE00D82BC: +/* 3D6A7C E00D82BC 292200F0 */ slti $v0, $t1, 0xf0 +/* 3D6A80 E00D82C0 50400001 */ beql $v0, $zero, .LE00D82C8 +/* 3D6A84 E00D82C4 240900EF */ addiu $t1, $zero, 0xef +.LE00D82C8: +/* 3D6A88 E00D82C8 28C20140 */ slti $v0, $a2, 0x140 +/* 3D6A8C E00D82CC 50400001 */ beql $v0, $zero, .LE00D82D4 +/* 3D6A90 E00D82D0 2406013F */ addiu $a2, $zero, 0x13f +.LE00D82D4: +/* 3D6A94 E00D82D4 28E200F0 */ slti $v0, $a3, 0xf0 +/* 3D6A98 E00D82D8 50400001 */ beql $v0, $zero, .LE00D82E0 +/* 3D6A9C E00D82DC 240700EF */ addiu $a3, $zero, 0xef +.LE00D82E0: +/* 3D6AA0 E00D82E0 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3D6AA4 E00D82E4 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3D6AA8 E00D82E8 30C403FF */ andi $a0, $a2, 0x3ff +/* 3D6AAC E00D82EC 8C620000 */ lw $v0, ($v1) +/* 3D6AB0 E00D82F0 00042380 */ sll $a0, $a0, 0xe +/* 3D6AB4 E00D82F4 0040282D */ daddu $a1, $v0, $zero +/* 3D6AB8 E00D82F8 24420008 */ addiu $v0, $v0, 8 +/* 3D6ABC E00D82FC AC620000 */ sw $v0, ($v1) +/* 3D6AC0 E00D8300 30E203FF */ andi $v0, $a3, 0x3ff +/* 3D6AC4 E00D8304 00021080 */ sll $v0, $v0, 2 +/* 3D6AC8 E00D8308 3C03F600 */ lui $v1, 0xf600 +/* 3D6ACC E00D830C 00431025 */ or $v0, $v0, $v1 +/* 3D6AD0 E00D8310 00822025 */ or $a0, $a0, $v0 +/* 3D6AD4 E00D8314 310303FF */ andi $v1, $t0, 0x3ff +/* 3D6AD8 E00D8318 00031B80 */ sll $v1, $v1, 0xe +/* 3D6ADC E00D831C 312203FF */ andi $v0, $t1, 0x3ff +/* 3D6AE0 E00D8320 00021080 */ sll $v0, $v0, 2 +/* 3D6AE4 E00D8324 00621825 */ or $v1, $v1, $v0 +/* 3D6AE8 E00D8328 ACA40000 */ sw $a0, ($a1) +/* 3D6AEC E00D832C 03E00008 */ jr $ra +/* 3D6AF0 E00D8330 ACA30004 */ sw $v1, 4($a1) diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8334.s b/asm/nonmatchings/code_3D67C0/func_E00D8334.s new file mode 100644 index 0000000000..4798b432cd --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8334.s @@ -0,0 +1,196 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8334 +/* 3D6AF4 E00D8334 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 3D6AF8 E00D8338 00A0C02D */ daddu $t8, $a1, $zero +/* 3D6AFC E00D833C 3C03FFFF */ lui $v1, 0xffff +/* 3D6B00 E00D8340 AFBF0030 */ sw $ra, 0x30($sp) +/* 3D6B04 E00D8344 AFB7002C */ sw $s7, 0x2c($sp) +/* 3D6B08 E00D8348 AFB60028 */ sw $s6, 0x28($sp) +/* 3D6B0C E00D834C AFB50024 */ sw $s5, 0x24($sp) +/* 3D6B10 E00D8350 AFB40020 */ sw $s4, 0x20($sp) +/* 3D6B14 E00D8354 AFB3001C */ sw $s3, 0x1c($sp) +/* 3D6B18 E00D8358 AFB20018 */ sw $s2, 0x18($sp) +/* 3D6B1C E00D835C AFB10014 */ sw $s1, 0x14($sp) +/* 3D6B20 E00D8360 AFB00010 */ sw $s0, 0x10($sp) +/* 3D6B24 E00D8364 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3D6B28 E00D8368 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3D6B2C E00D836C AFA70054 */ sw $a3, 0x54($sp) +/* 3D6B30 E00D8370 90820034 */ lbu $v0, 0x34($a0) +/* 3D6B34 E00D8374 3C01437F */ lui $at, 0x437f +/* 3D6B38 E00D8378 44811000 */ mtc1 $at, $f2 +/* 3D6B3C E00D837C 44820000 */ mtc1 $v0, $f0 +/* 3D6B40 E00D8380 00000000 */ nop +/* 3D6B44 E00D8384 46800020 */ cvt.s.w $f0, $f0 +/* 3D6B48 E00D8388 90820035 */ lbu $v0, 0x35($a0) +/* 3D6B4C E00D838C 46020103 */ div.s $f4, $f0, $f2 +/* 3D6B50 E00D8390 44820000 */ mtc1 $v0, $f0 +/* 3D6B54 E00D8394 00000000 */ nop +/* 3D6B58 E00D8398 46800020 */ cvt.s.w $f0, $f0 +/* 3D6B5C E00D839C 8C820034 */ lw $v0, 0x34($a0) +/* 3D6B60 E00D83A0 00431024 */ and $v0, $v0, $v1 +/* 3D6B64 E00D83A4 10400095 */ beqz $v0, .LE00D85FC +/* 3D6B68 E00D83A8 46020583 */ div.s $f22, $f0, $f2 +/* 3D6B6C E00D83AC 3C09E300 */ lui $t1, 0xe300 +/* 3D6B70 E00D83B0 35290A01 */ ori $t1, $t1, 0xa01 +/* 3D6B74 E00D83B4 3C0AE300 */ lui $t2, 0xe300 +/* 3D6B78 E00D83B8 354A0C00 */ ori $t2, $t2, 0xc00 +/* 3D6B7C E00D83BC 3C0BE300 */ lui $t3, 0xe300 +/* 3D6B80 E00D83C0 356B0D01 */ ori $t3, $t3, 0xd01 +/* 3D6B84 E00D83C4 3C0CE300 */ lui $t4, 0xe300 +/* 3D6B88 E00D83C8 358C0F00 */ ori $t4, $t4, 0xf00 +/* 3D6B8C E00D83CC 3C0DE300 */ lui $t5, 0xe300 +/* 3D6B90 E00D83D0 35AD1001 */ ori $t5, $t5, 0x1001 +/* 3D6B94 E00D83D4 3C0EE300 */ lui $t6, 0xe300 +/* 3D6B98 E00D83D8 35CE1201 */ ori $t6, $t6, 0x1201 +/* 3D6B9C E00D83DC 3C0FE300 */ lui $t7, 0xe300 +/* 3D6BA0 E00D83E0 35EF1402 */ ori $t7, $t7, 0x1402 +/* 3D6BA4 E00D83E4 3C15E200 */ lui $s5, 0xe200 +/* 3D6BA8 E00D83E8 36B5001C */ ori $s5, $s5, 0x1c +/* 3D6BAC E00D83EC 3C100050 */ lui $s0, 0x50 +/* 3D6BB0 E00D83F0 36104340 */ ori $s0, $s0, 0x4340 +/* 3D6BB4 E00D83F4 3C16FCFF */ lui $s6, 0xfcff +/* 3D6BB8 E00D83F8 36D6FFFF */ ori $s6, $s6, 0xffff +/* 3D6BBC E00D83FC 3C11FFFD */ lui $s1, 0xfffd +/* 3D6BC0 E00D8400 3631F6FB */ ori $s1, $s1, 0xf6fb +/* 3D6BC4 E00D8404 3C171830 */ lui $s7, 0x1830 +/* 3D6BC8 E00D8408 36F760FF */ ori $s7, $s7, 0x60ff +/* 3D6BCC E00D840C 27140004 */ addiu $s4, $t8, 4 +/* 3D6BD0 E00D8410 0280202D */ daddu $a0, $s4, $zero +/* 3D6BD4 E00D8414 24D30004 */ addiu $s3, $a2, 4 +/* 3D6BD8 E00D8418 0260282D */ daddu $a1, $s3, $zero +/* 3D6BDC E00D841C 3C08800A */ lui $t0, %hi(D_8009A66C) +/* 3D6BE0 E00D8420 2508A66C */ addiu $t0, $t0, %lo(D_8009A66C) +/* 3D6BE4 E00D8424 3C02E700 */ lui $v0, 0xe700 +/* 3D6BE8 E00D8428 44940000 */ mtc1 $s4, $f0 +/* 3D6BEC E00D842C 00000000 */ nop +/* 3D6BF0 E00D8430 46800020 */ cvt.s.w $f0, $f0 +/* 3D6BF4 E00D8434 8FB20058 */ lw $s2, 0x58($sp) +/* 3D6BF8 E00D8438 8D030000 */ lw $v1, ($t0) +/* 3D6BFC E00D843C 00D29021 */ addu $s2, $a2, $s2 +/* 3D6C00 E00D8440 2652FFFC */ addiu $s2, $s2, -4 +/* 3D6C04 E00D8444 0240382D */ daddu $a3, $s2, $zero +/* 3D6C08 E00D8448 0060302D */ daddu $a2, $v1, $zero +/* 3D6C0C E00D844C 24630008 */ addiu $v1, $v1, 8 +/* 3D6C10 E00D8450 AD030000 */ sw $v1, ($t0) +/* 3D6C14 E00D8454 ACC20000 */ sw $v0, ($a2) +/* 3D6C18 E00D8458 24620008 */ addiu $v0, $v1, 8 +/* 3D6C1C E00D845C ACC00004 */ sw $zero, 4($a2) +/* 3D6C20 E00D8460 AD020000 */ sw $v0, ($t0) +/* 3D6C24 E00D8464 3C02D700 */ lui $v0, 0xd700 +/* 3D6C28 E00D8468 AC620000 */ sw $v0, ($v1) +/* 3D6C2C E00D846C 2402FFFF */ addiu $v0, $zero, -1 +/* 3D6C30 E00D8470 AC620004 */ sw $v0, 4($v1) +/* 3D6C34 E00D8474 24620010 */ addiu $v0, $v1, 0x10 +/* 3D6C38 E00D8478 AD020000 */ sw $v0, ($t0) +/* 3D6C3C E00D847C 24620018 */ addiu $v0, $v1, 0x18 +/* 3D6C40 E00D8480 AC690008 */ sw $t1, 8($v1) +/* 3D6C44 E00D8484 AC60000C */ sw $zero, 0xc($v1) +/* 3D6C48 E00D8488 AD020000 */ sw $v0, ($t0) +/* 3D6C4C E00D848C 24620020 */ addiu $v0, $v1, 0x20 +/* 3D6C50 E00D8490 AC6A0010 */ sw $t2, 0x10($v1) +/* 3D6C54 E00D8494 AC600014 */ sw $zero, 0x14($v1) +/* 3D6C58 E00D8498 AD020000 */ sw $v0, ($t0) +/* 3D6C5C E00D849C 24620028 */ addiu $v0, $v1, 0x28 +/* 3D6C60 E00D84A0 AC6B0018 */ sw $t3, 0x18($v1) +/* 3D6C64 E00D84A4 AC60001C */ sw $zero, 0x1c($v1) +/* 3D6C68 E00D84A8 AD020000 */ sw $v0, ($t0) +/* 3D6C6C E00D84AC 24620030 */ addiu $v0, $v1, 0x30 +/* 3D6C70 E00D84B0 AC6C0020 */ sw $t4, 0x20($v1) +/* 3D6C74 E00D84B4 AC600024 */ sw $zero, 0x24($v1) +/* 3D6C78 E00D84B8 AD020000 */ sw $v0, ($t0) +/* 3D6C7C E00D84BC 24620038 */ addiu $v0, $v1, 0x38 +/* 3D6C80 E00D84C0 AC6D0028 */ sw $t5, 0x28($v1) +/* 3D6C84 E00D84C4 AC60002C */ sw $zero, 0x2c($v1) +/* 3D6C88 E00D84C8 AD020000 */ sw $v0, ($t0) +/* 3D6C8C E00D84CC 24023000 */ addiu $v0, $zero, 0x3000 +/* 3D6C90 E00D84D0 AC620034 */ sw $v0, 0x34($v1) +/* 3D6C94 E00D84D4 24620040 */ addiu $v0, $v1, 0x40 +/* 3D6C98 E00D84D8 AC6E0030 */ sw $t6, 0x30($v1) +/* 3D6C9C E00D84DC AD020000 */ sw $v0, ($t0) +/* 3D6CA0 E00D84E0 24020C00 */ addiu $v0, $zero, 0xc00 +/* 3D6CA4 E00D84E4 AC62003C */ sw $v0, 0x3c($v1) +/* 3D6CA8 E00D84E8 24620048 */ addiu $v0, $v1, 0x48 +/* 3D6CAC E00D84EC AC6F0038 */ sw $t7, 0x38($v1) +/* 3D6CB0 E00D84F0 AD020000 */ sw $v0, ($t0) +/* 3D6CB4 E00D84F4 24620050 */ addiu $v0, $v1, 0x50 +/* 3D6CB8 E00D84F8 AC750040 */ sw $s5, 0x40($v1) +/* 3D6CBC E00D84FC AC700044 */ sw $s0, 0x44($v1) +/* 3D6CC0 E00D8500 AD020000 */ sw $v0, ($t0) +/* 3D6CC4 E00D8504 AC760048 */ sw $s6, 0x48($v1) +/* 3D6CC8 E00D8508 AC71004C */ sw $s1, 0x4c($v1) +/* 3D6CCC E00D850C 8FB90054 */ lw $t9, 0x54($sp) +/* 3D6CD0 E00D8510 02538023 */ subu $s0, $s2, $s3 +/* 3D6CD4 E00D8514 03198821 */ addu $s1, $t8, $t9 +/* 3D6CD8 E00D8518 2631FFFC */ addiu $s1, $s1, -4 +/* 3D6CDC E00D851C 02341023 */ subu $v0, $s1, $s4 +/* 3D6CE0 E00D8520 000237C2 */ srl $a2, $v0, 0x1f +/* 3D6CE4 E00D8524 00461021 */ addu $v0, $v0, $a2 +/* 3D6CE8 E00D8528 00021043 */ sra $v0, $v0, 1 +/* 3D6CEC E00D852C 4482A000 */ mtc1 $v0, $f20 +/* 3D6CF0 E00D8530 00000000 */ nop +/* 3D6CF4 E00D8534 4680A520 */ cvt.s.w $f20, $f20 +/* 3D6CF8 E00D8538 24620058 */ addiu $v0, $v1, 0x58 +/* 3D6CFC E00D853C 4604A502 */ mul.s $f20, $f20, $f4 +/* 3D6D00 E00D8540 00000000 */ nop +/* 3D6D04 E00D8544 AD020000 */ sw $v0, ($t0) +/* 3D6D08 E00D8548 3C02FA00 */ lui $v0, 0xfa00 +/* 3D6D0C E00D854C AC620050 */ sw $v0, 0x50($v1) +/* 3D6D10 E00D8550 001017C2 */ srl $v0, $s0, 0x1f +/* 3D6D14 E00D8554 02028021 */ addu $s0, $s0, $v0 +/* 3D6D18 E00D8558 46140000 */ add.s $f0, $f0, $f20 +/* 3D6D1C E00D855C 00108043 */ sra $s0, $s0, 1 +/* 3D6D20 E00D8560 4600018D */ trunc.w.s $f6, $f0 +/* 3D6D24 E00D8564 44063000 */ mfc1 $a2, $f6 +/* 3D6D28 E00D8568 0C0360A2 */ jal func_E00D8288 +/* 3D6D2C E00D856C AC770054 */ sw $s7, 0x54($v1) +/* 3D6D30 E00D8570 0260282D */ daddu $a1, $s3, $zero +/* 3D6D34 E00D8574 44910000 */ mtc1 $s1, $f0 +/* 3D6D38 E00D8578 00000000 */ nop +/* 3D6D3C E00D857C 46800020 */ cvt.s.w $f0, $f0 +/* 3D6D40 E00D8580 46140001 */ sub.s $f0, $f0, $f20 +/* 3D6D44 E00D8584 0220302D */ daddu $a2, $s1, $zero +/* 3D6D48 E00D8588 4600018D */ trunc.w.s $f6, $f0 +/* 3D6D4C E00D858C 44043000 */ mfc1 $a0, $f6 +/* 3D6D50 E00D8590 0C0360A2 */ jal func_E00D8288 +/* 3D6D54 E00D8594 0240382D */ daddu $a3, $s2, $zero +/* 3D6D58 E00D8598 4490A000 */ mtc1 $s0, $f20 +/* 3D6D5C E00D859C 00000000 */ nop +/* 3D6D60 E00D85A0 4680A520 */ cvt.s.w $f20, $f20 +/* 3D6D64 E00D85A4 4616A502 */ mul.s $f20, $f20, $f22 +/* 3D6D68 E00D85A8 00000000 */ nop +/* 3D6D6C E00D85AC 0280202D */ daddu $a0, $s4, $zero +/* 3D6D70 E00D85B0 44930000 */ mtc1 $s3, $f0 +/* 3D6D74 E00D85B4 00000000 */ nop +/* 3D6D78 E00D85B8 46800020 */ cvt.s.w $f0, $f0 +/* 3D6D7C E00D85BC 46140000 */ add.s $f0, $f0, $f20 +/* 3D6D80 E00D85C0 0260282D */ daddu $a1, $s3, $zero +/* 3D6D84 E00D85C4 4600018D */ trunc.w.s $f6, $f0 +/* 3D6D88 E00D85C8 44073000 */ mfc1 $a3, $f6 +/* 3D6D8C E00D85CC 0C0360A2 */ jal func_E00D8288 +/* 3D6D90 E00D85D0 0220302D */ daddu $a2, $s1, $zero +/* 3D6D94 E00D85D4 0280202D */ daddu $a0, $s4, $zero +/* 3D6D98 E00D85D8 44920000 */ mtc1 $s2, $f0 +/* 3D6D9C E00D85DC 00000000 */ nop +/* 3D6DA0 E00D85E0 46800020 */ cvt.s.w $f0, $f0 +/* 3D6DA4 E00D85E4 46140001 */ sub.s $f0, $f0, $f20 +/* 3D6DA8 E00D85E8 0220302D */ daddu $a2, $s1, $zero +/* 3D6DAC E00D85EC 4600018D */ trunc.w.s $f6, $f0 +/* 3D6DB0 E00D85F0 44053000 */ mfc1 $a1, $f6 +/* 3D6DB4 E00D85F4 0C0360A2 */ jal func_E00D8288 +/* 3D6DB8 E00D85F8 0240382D */ daddu $a3, $s2, $zero +.LE00D85FC: +/* 3D6DBC E00D85FC 8FBF0030 */ lw $ra, 0x30($sp) +/* 3D6DC0 E00D8600 8FB7002C */ lw $s7, 0x2c($sp) +/* 3D6DC4 E00D8604 8FB60028 */ lw $s6, 0x28($sp) +/* 3D6DC8 E00D8608 8FB50024 */ lw $s5, 0x24($sp) +/* 3D6DCC E00D860C 8FB40020 */ lw $s4, 0x20($sp) +/* 3D6DD0 E00D8610 8FB3001C */ lw $s3, 0x1c($sp) +/* 3D6DD4 E00D8614 8FB20018 */ lw $s2, 0x18($sp) +/* 3D6DD8 E00D8618 8FB10014 */ lw $s1, 0x14($sp) +/* 3D6DDC E00D861C 8FB00010 */ lw $s0, 0x10($sp) +/* 3D6DE0 E00D8620 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3D6DE4 E00D8624 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3D6DE8 E00D8628 03E00008 */ jr $ra +/* 3D6DEC E00D862C 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_3D67C0/func_E00D8630.s b/asm/nonmatchings/code_3D67C0/func_E00D8630.s new file mode 100644 index 0000000000..ec22e205e5 --- /dev/null +++ b/asm/nonmatchings/code_3D67C0/func_E00D8630.s @@ -0,0 +1,113 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00D8630 +/* 3D6DF0 E00D8630 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3D6DF4 E00D8634 3C07DB06 */ lui $a3, 0xdb06 +/* 3D6DF8 E00D8638 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 3D6DFC E00D863C 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 3D6E00 E00D8640 34E70024 */ ori $a3, $a3, 0x24 +/* 3D6E04 E00D8644 3C02E700 */ lui $v0, 0xe700 +/* 3D6E08 E00D8648 AFBF0050 */ sw $ra, 0x50($sp) +/* 3D6E0C E00D864C 8CC50000 */ lw $a1, ($a2) +/* 3D6E10 E00D8650 8C88000C */ lw $t0, 0xc($a0) +/* 3D6E14 E00D8654 3C013F80 */ lui $at, 0x3f80 +/* 3D6E18 E00D8658 44810000 */ mtc1 $at, $f0 +/* 3D6E1C E00D865C 00A0182D */ daddu $v1, $a1, $zero +/* 3D6E20 E00D8660 24A50008 */ addiu $a1, $a1, 8 +/* 3D6E24 E00D8664 AC620000 */ sw $v0, ($v1) +/* 3D6E28 E00D8668 AC600004 */ sw $zero, 4($v1) +/* 3D6E2C E00D866C ACA70000 */ sw $a3, ($a1) +/* 3D6E30 E00D8670 8C820010 */ lw $v0, 0x10($a0) +/* 3D6E34 E00D8674 24040001 */ addiu $a0, $zero, 1 +/* 3D6E38 E00D8678 ACC50000 */ sw $a1, ($a2) +/* 3D6E3C E00D867C 8C42001C */ lw $v0, 0x1c($v0) +/* 3D6E40 E00D8680 3C038000 */ lui $v1, 0x8000 +/* 3D6E44 E00D8684 00431021 */ addu $v0, $v0, $v1 +/* 3D6E48 E00D8688 ACA20004 */ sw $v0, 4($a1) +/* 3D6E4C E00D868C C502001C */ lwc1 $f2, 0x1c($t0) +/* 3D6E50 E00D8690 24A50008 */ addiu $a1, $a1, 8 +/* 3D6E54 E00D8694 46001032 */ c.eq.s $f2, $f0 +/* 3D6E58 E00D8698 00000000 */ nop +/* 3D6E5C E00D869C 45000012 */ bc1f .LE00D86E8 +/* 3D6E60 E00D86A0 ACC50000 */ sw $a1, ($a2) +/* 3D6E64 E00D86A4 C5000020 */ lwc1 $f0, 0x20($t0) +/* 3D6E68 E00D86A8 44801000 */ mtc1 $zero, $f2 +/* 3D6E6C E00D86AC 00000000 */ nop +/* 3D6E70 E00D86B0 46020032 */ c.eq.s $f0, $f2 +/* 3D6E74 E00D86B4 00000000 */ nop +/* 3D6E78 E00D86B8 4500000B */ bc1f .LE00D86E8 +/* 3D6E7C E00D86BC 00000000 */ nop +/* 3D6E80 E00D86C0 C5000024 */ lwc1 $f0, 0x24($t0) +/* 3D6E84 E00D86C4 46020032 */ c.eq.s $f0, $f2 +/* 3D6E88 E00D86C8 00000000 */ nop +/* 3D6E8C E00D86CC 45000006 */ bc1f .LE00D86E8 +/* 3D6E90 E00D86D0 00000000 */ nop +/* 3D6E94 E00D86D4 C5000028 */ lwc1 $f0, 0x28($t0) +/* 3D6E98 E00D86D8 46020032 */ c.eq.s $f0, $f2 +/* 3D6E9C E00D86DC 00000000 */ nop +/* 3D6EA0 E00D86E0 45030001 */ bc1tl .LE00D86E8 +/* 3D6EA4 E00D86E4 0000202D */ daddu $a0, $zero, $zero +.LE00D86E8: +/* 3D6EA8 E00D86E8 C5040004 */ lwc1 $f4, 4($t0) +/* 3D6EAC E00D86EC C508002C */ lwc1 $f8, 0x2c($t0) +/* 3D6EB0 E00D86F0 C5020008 */ lwc1 $f2, 8($t0) +/* 3D6EB4 E00D86F4 C50A0030 */ lwc1 $f10, 0x30($t0) +/* 3D6EB8 E00D86F8 C500000C */ lwc1 $f0, 0xc($t0) +/* 3D6EBC E00D86FC 24020096 */ addiu $v0, $zero, 0x96 +/* 3D6EC0 E00D8700 AFA20014 */ sw $v0, 0x14($sp) +/* 3D6EC4 E00D8704 2402006B */ addiu $v0, $zero, 0x6b +/* 3D6EC8 E00D8708 AFA20018 */ sw $v0, 0x18($sp) +/* 3D6ECC E00D870C 240200FF */ addiu $v0, $zero, 0xff +/* 3D6ED0 E00D8710 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D6ED4 E00D8714 AFA00020 */ sw $zero, 0x20($sp) +/* 3D6ED8 E00D8718 4600030D */ trunc.w.s $f12, $f0 +/* 3D6EDC E00D871C E7AC0010 */ swc1 $f12, 0x10($sp) +/* 3D6EE0 E00D8720 C500001C */ lwc1 $f0, 0x1c($t0) +/* 3D6EE4 E00D8724 E7A00024 */ swc1 $f0, 0x24($sp) +/* 3D6EE8 E00D8728 C500001C */ lwc1 $f0, 0x1c($t0) +/* 3D6EEC E00D872C 3C02E00E */ lui $v0, %hi(D_E00D8334) +/* 3D6EF0 E00D8730 24428334 */ addiu $v0, $v0, %lo(D_E00D8334) +/* 3D6EF4 E00D8734 E7A00028 */ swc1 $f0, 0x28($sp) +/* 3D6EF8 E00D8738 C5000020 */ lwc1 $f0, 0x20($t0) +/* 3D6EFC E00D873C 3C05E00E */ lui $a1, %hi(D_E00D87E0) +/* 3D6F00 E00D8740 24A587E0 */ addiu $a1, $a1, %lo(D_E00D87E0) +/* 3D6F04 E00D8744 E7A0002C */ swc1 $f0, 0x2c($sp) +/* 3D6F08 E00D8748 C5000024 */ lwc1 $f0, 0x24($t0) +/* 3D6F0C E00D874C 46082100 */ add.s $f4, $f4, $f8 +/* 3D6F10 E00D8750 E7A00030 */ swc1 $f0, 0x30($sp) +/* 3D6F14 E00D8754 C5060028 */ lwc1 $f6, 0x28($t0) +/* 3D6F18 E00D8758 3C014296 */ lui $at, 0x4296 +/* 3D6F1C E00D875C 44810000 */ mtc1 $at, $f0 +/* 3D6F20 E00D8760 460A1080 */ add.s $f2, $f2, $f10 +/* 3D6F24 E00D8764 AFA20038 */ sw $v0, 0x38($sp) +/* 3D6F28 E00D8768 24020140 */ addiu $v0, $zero, 0x140 +/* 3D6F2C E00D876C AFA20044 */ sw $v0, 0x44($sp) +/* 3D6F30 E00D8770 46002101 */ sub.s $f4, $f4, $f0 +/* 3D6F34 E00D8774 3C014254 */ lui $at, 0x4254 +/* 3D6F38 E00D8778 44810000 */ mtc1 $at, $f0 +/* 3D6F3C E00D877C 240200F0 */ addiu $v0, $zero, 0xf0 +/* 3D6F40 E00D8780 AFA8003C */ sw $t0, 0x3c($sp) +/* 3D6F44 E00D8784 AFA00040 */ sw $zero, 0x40($sp) +/* 3D6F48 E00D8788 AFA20048 */ sw $v0, 0x48($sp) +/* 3D6F4C E00D878C AFA0004C */ sw $zero, 0x4c($sp) +/* 3D6F50 E00D8790 46001081 */ sub.s $f2, $f2, $f0 +/* 3D6F54 E00D8794 4600230D */ trunc.w.s $f12, $f4 +/* 3D6F58 E00D8798 44066000 */ mfc1 $a2, $f12 +/* 3D6F5C E00D879C 4600130D */ trunc.w.s $f12, $f2 +/* 3D6F60 E00D87A0 44076000 */ mfc1 $a3, $f12 +/* 3D6F64 E00D87A4 0C080190 */ jal func_E0200640 +/* 3D6F68 E00D87A8 E7A60034 */ swc1 $f6, 0x34($sp) +/* 3D6F6C E00D87AC 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3D6F70 E00D87B0 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3D6F74 E00D87B4 8C620000 */ lw $v0, ($v1) +/* 3D6F78 E00D87B8 0040202D */ daddu $a0, $v0, $zero +/* 3D6F7C E00D87BC 24420008 */ addiu $v0, $v0, 8 +/* 3D6F80 E00D87C0 AC620000 */ sw $v0, ($v1) +/* 3D6F84 E00D87C4 3C02E700 */ lui $v0, 0xe700 +/* 3D6F88 E00D87C8 AC820000 */ sw $v0, ($a0) +/* 3D6F8C E00D87CC AC800004 */ sw $zero, 4($a0) +/* 3D6F90 E00D87D0 8FBF0050 */ lw $ra, 0x50($sp) +/* 3D6F94 E00D87D4 03E00008 */ jr $ra +/* 3D6F98 E00D87D8 27BD0058 */ addiu $sp, $sp, 0x58 +/* 3D6F9C E00D87DC 00000000 */ nop diff --git a/asm/nonmatchings/code_3D7240/func_E00DA000.s b/asm/nonmatchings/code_3D7240/func_E00DA000.s new file mode 100644 index 0000000000..69af733551 --- /dev/null +++ b/asm/nonmatchings/code_3D7240/func_E00DA000.s @@ -0,0 +1,69 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DA000 +/* 3D7240 E00DA000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3D7244 E00DA004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3D7248 E00DA008 4485A000 */ mtc1 $a1, $f20 +/* 3D724C E00DA00C AFB1002C */ sw $s1, 0x2c($sp) +/* 3D7250 E00DA010 0080882D */ daddu $s1, $a0, $zero +/* 3D7254 E00DA014 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3D7258 E00DA018 4486B000 */ mtc1 $a2, $f22 +/* 3D725C E00DA01C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D7260 E00DA020 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3D7264 E00DA024 4487C000 */ mtc1 $a3, $f24 +/* 3D7268 E00DA028 3C02E00E */ lui $v0, %hi(D_E00DA0FC) +/* 3D726C E00DA02C 2442A0FC */ addiu $v0, $v0, %lo(D_E00DA0FC) +/* 3D7270 E00DA030 AFA20018 */ sw $v0, 0x18($sp) +/* 3D7274 E00DA034 3C02E00E */ lui $v0, %hi(D_E00DA104) +/* 3D7278 E00DA038 2442A104 */ addiu $v0, $v0, %lo(D_E00DA104) +/* 3D727C E00DA03C AFA2001C */ sw $v0, 0x1c($sp) +/* 3D7280 E00DA040 3C02E00E */ lui $v0, %hi(D_E00DA1E0) +/* 3D7284 E00DA044 2442A1E0 */ addiu $v0, $v0, %lo(D_E00DA1E0) +/* 3D7288 E00DA048 AFA20020 */ sw $v0, 0x20($sp) +/* 3D728C E00DA04C 2402006D */ addiu $v0, $zero, 0x6d +/* 3D7290 E00DA050 AFBF0030 */ sw $ra, 0x30($sp) +/* 3D7294 E00DA054 AFB00028 */ sw $s0, 0x28($sp) +/* 3D7298 E00DA058 AFA00010 */ sw $zero, 0x10($sp) +/* 3D729C E00DA05C AFA00024 */ sw $zero, 0x24($sp) +/* 3D72A0 E00DA060 0C080124 */ jal func_E0200490 +/* 3D72A4 E00DA064 AFA20014 */ sw $v0, 0x14($sp) +/* 3D72A8 E00DA068 24040030 */ addiu $a0, $zero, 0x30 +/* 3D72AC E00DA06C 24030001 */ addiu $v1, $zero, 1 +/* 3D72B0 E00DA070 0040802D */ daddu $s0, $v0, $zero +/* 3D72B4 E00DA074 0C08012C */ jal func_E02004B0 +/* 3D72B8 E00DA078 AE030008 */ sw $v1, 8($s0) +/* 3D72BC E00DA07C 0040202D */ daddu $a0, $v0, $zero +/* 3D72C0 E00DA080 14800003 */ bnez $a0, .LE00DA090 +/* 3D72C4 E00DA084 AE02000C */ sw $v0, 0xc($s0) +.LE00DA088: +/* 3D72C8 E00DA088 08036822 */ j .LE00DA088 +/* 3D72CC E00DA08C 00000000 */ nop +.LE00DA090: +/* 3D72D0 E00DA090 0200102D */ daddu $v0, $s0, $zero +/* 3D72D4 E00DA094 2403000A */ addiu $v1, $zero, 0xa +/* 3D72D8 E00DA098 AC830010 */ sw $v1, 0x10($a0) +/* 3D72DC E00DA09C 240300FF */ addiu $v1, $zero, 0xff +/* 3D72E0 E00DA0A0 AC910000 */ sw $s1, ($a0) +/* 3D72E4 E00DA0A4 AC800014 */ sw $zero, 0x14($a0) +/* 3D72E8 E00DA0A8 AC830024 */ sw $v1, 0x24($a0) +/* 3D72EC E00DA0AC E4940004 */ swc1 $f20, 4($a0) +/* 3D72F0 E00DA0B0 E4960008 */ swc1 $f22, 8($a0) +/* 3D72F4 E00DA0B4 E498000C */ swc1 $f24, 0xc($a0) +/* 3D72F8 E00DA0B8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3D72FC E00DA0BC 24030046 */ addiu $v1, $zero, 0x46 +/* 3D7300 E00DA0C0 AC830018 */ sw $v1, 0x18($a0) +/* 3D7304 E00DA0C4 240300B4 */ addiu $v1, $zero, 0xb4 +/* 3D7308 E00DA0C8 AC83001C */ sw $v1, 0x1c($a0) +/* 3D730C E00DA0CC 24030078 */ addiu $v1, $zero, 0x78 +/* 3D7310 E00DA0D0 AC830020 */ sw $v1, 0x20($a0) +/* 3D7314 E00DA0D4 AC80002C */ sw $zero, 0x2c($a0) +/* 3D7318 E00DA0D8 E4800028 */ swc1 $f0, 0x28($a0) +/* 3D731C E00DA0DC 8FBF0030 */ lw $ra, 0x30($sp) +/* 3D7320 E00DA0E0 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D7324 E00DA0E4 8FB00028 */ lw $s0, 0x28($sp) +/* 3D7328 E00DA0E8 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3D732C E00DA0EC D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3D7330 E00DA0F0 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3D7334 E00DA0F4 03E00008 */ jr $ra +/* 3D7338 E00DA0F8 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3D7240/func_E00DA0FC.s b/asm/nonmatchings/code_3D7240/func_E00DA0FC.s new file mode 100644 index 0000000000..f3c8c33db2 --- /dev/null +++ b/asm/nonmatchings/code_3D7240/func_E00DA0FC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DA0FC +/* 3D733C E00DA0FC 03E00008 */ jr $ra +/* 3D7340 E00DA100 00000000 */ nop diff --git a/asm/nonmatchings/code_3D7240/func_E00DA104.s b/asm/nonmatchings/code_3D7240/func_E00DA104.s new file mode 100644 index 0000000000..15c24934f0 --- /dev/null +++ b/asm/nonmatchings/code_3D7240/func_E00DA104.s @@ -0,0 +1,64 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DA104 +/* 3D7344 E00DA104 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3D7348 E00DA108 AFBF0010 */ sw $ra, 0x10($sp) +/* 3D734C E00DA10C 8C850000 */ lw $a1, ($a0) +/* 3D7350 E00DA110 8C83000C */ lw $v1, 0xc($a0) +/* 3D7354 E00DA114 30A20010 */ andi $v0, $a1, 0x10 +/* 3D7358 E00DA118 10400005 */ beqz $v0, .LE00DA130 +/* 3D735C E00DA11C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D7360 E00DA120 00A21024 */ and $v0, $a1, $v0 +/* 3D7364 E00DA124 AC820000 */ sw $v0, ($a0) +/* 3D7368 E00DA128 2402000A */ addiu $v0, $zero, 0xa +/* 3D736C E00DA12C AC620010 */ sw $v0, 0x10($v1) +.LE00DA130: +/* 3D7370 E00DA130 8C650010 */ lw $a1, 0x10($v1) +/* 3D7374 E00DA134 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3D7378 E00DA138 10400002 */ beqz $v0, .LE00DA144 +/* 3D737C E00DA13C 24A2FFFF */ addiu $v0, $a1, -1 +/* 3D7380 E00DA140 AC620010 */ sw $v0, 0x10($v1) +.LE00DA144: +/* 3D7384 E00DA144 8C620014 */ lw $v0, 0x14($v1) +/* 3D7388 E00DA148 8C650010 */ lw $a1, 0x10($v1) +/* 3D738C E00DA14C 24460001 */ addiu $a2, $v0, 1 +/* 3D7390 E00DA150 04A10005 */ bgez $a1, .LE00DA168 +/* 3D7394 E00DA154 AC660014 */ sw $a2, 0x14($v1) +/* 3D7398 E00DA158 0C080128 */ jal func_E02004A0 +/* 3D739C E00DA15C 00000000 */ nop +/* 3D73A0 E00DA160 08036875 */ j .LE00DA1D4 +/* 3D73A4 E00DA164 00000000 */ nop +.LE00DA168: +/* 3D73A8 E00DA168 28A20004 */ slti $v0, $a1, 4 +/* 3D73AC E00DA16C 1040000B */ beqz $v0, .LE00DA19C +/* 3D73B0 E00DA170 00000000 */ nop +/* 3D73B4 E00DA174 C460002C */ lwc1 $f0, 0x2c($v1) +/* 3D73B8 E00DA178 3C013FE0 */ lui $at, 0x3fe0 +/* 3D73BC E00DA17C 44811800 */ mtc1 $at, $f3 +/* 3D73C0 E00DA180 44801000 */ mtc1 $zero, $f2 +/* 3D73C4 E00DA184 46000021 */ cvt.d.s $f0, $f0 +/* 3D73C8 E00DA188 46220002 */ mul.d $f0, $f0, $f2 +/* 3D73CC E00DA18C 00000000 */ nop +/* 3D73D0 E00DA190 46200020 */ cvt.s.d $f0, $f0 +/* 3D73D4 E00DA194 08036875 */ j .LE00DA1D4 +/* 3D73D8 E00DA198 E460002C */ swc1 $f0, 0x2c($v1) +.LE00DA19C: +/* 3D73DC E00DA19C 3C013E4C */ lui $at, 0x3e4c +/* 3D73E0 E00DA1A0 3421CCCD */ ori $at, $at, 0xcccd +/* 3D73E4 E00DA1A4 44810000 */ mtc1 $at, $f0 +/* 3D73E8 E00DA1A8 44861000 */ mtc1 $a2, $f2 +/* 3D73EC E00DA1AC 00000000 */ nop +/* 3D73F0 E00DA1B0 468010A0 */ cvt.s.w $f2, $f2 +/* 3D73F4 E00DA1B4 46001082 */ mul.s $f2, $f2, $f0 +/* 3D73F8 E00DA1B8 00000000 */ nop +/* 3D73FC E00DA1BC 3C01E00E */ lui $at, %hi(D_E00DA520) +/* 3D7400 E00DA1C0 D420A520 */ ldc1 $f0, %lo(D_E00DA520)($at) +/* 3D7404 E00DA1C4 460010A1 */ cvt.d.s $f2, $f2 +/* 3D7408 E00DA1C8 46201080 */ add.d $f2, $f2, $f0 +/* 3D740C E00DA1CC 462010A0 */ cvt.s.d $f2, $f2 +/* 3D7410 E00DA1D0 E462002C */ swc1 $f2, 0x2c($v1) +.LE00DA1D4: +/* 3D7414 E00DA1D4 8FBF0010 */ lw $ra, 0x10($sp) +/* 3D7418 E00DA1D8 03E00008 */ jr $ra +/* 3D741C E00DA1DC 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3D7240/func_E00DA1E0.s b/asm/nonmatchings/code_3D7240/func_E00DA1E0.s new file mode 100644 index 0000000000..ed1fcecf43 --- /dev/null +++ b/asm/nonmatchings/code_3D7240/func_E00DA1E0.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DA1E0 +/* 3D7420 E00DA1E0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D7424 E00DA1E4 3C02E00E */ lui $v0, %hi(D_E00DA230) +/* 3D7428 E00DA1E8 2442A230 */ addiu $v0, $v0, %lo(D_E00DA230) +/* 3D742C E00DA1EC AFA2001C */ sw $v0, 0x1c($sp) +/* 3D7430 E00DA1F0 2402000A */ addiu $v0, $zero, 0xa +/* 3D7434 E00DA1F4 AFA20014 */ sw $v0, 0x14($sp) +/* 3D7438 E00DA1F8 2402002D */ addiu $v0, $zero, 0x2d +/* 3D743C E00DA1FC AFA40018 */ sw $a0, 0x18($sp) +/* 3D7440 E00DA200 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D7444 E00DA204 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D7448 E00DA208 0C080120 */ jal func_E0200480 +/* 3D744C E00DA20C AFA20010 */ sw $v0, 0x10($sp) +/* 3D7450 E00DA210 8C430000 */ lw $v1, ($v0) +/* 3D7454 E00DA214 34630002 */ ori $v1, $v1, 2 +/* 3D7458 E00DA218 AC430000 */ sw $v1, ($v0) +/* 3D745C E00DA21C 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D7460 E00DA220 03E00008 */ jr $ra +/* 3D7464 E00DA224 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D7240/func_E00DA228.s b/asm/nonmatchings/code_3D7240/func_E00DA228.s new file mode 100644 index 0000000000..3ea978fe75 --- /dev/null +++ b/asm/nonmatchings/code_3D7240/func_E00DA228.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DA228 +/* 3D7468 E00DA228 03E00008 */ jr $ra +/* 3D746C E00DA22C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D7240/func_E00DA230.s b/asm/nonmatchings/code_3D7240/func_E00DA230.s new file mode 100644 index 0000000000..89885100cf --- /dev/null +++ b/asm/nonmatchings/code_3D7240/func_E00DA230.s @@ -0,0 +1,184 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DA230 +/* 3D7470 E00DA230 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 3D7474 E00DA234 0080302D */ daddu $a2, $a0, $zero +/* 3D7478 E00DA238 3C07DB06 */ lui $a3, 0xdb06 +/* 3D747C E00DA23C 34E70024 */ ori $a3, $a3, 0x24 +/* 3D7480 E00DA240 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D7484 E00DA244 AFB600A8 */ sw $s6, 0xa8($sp) +/* 3D7488 E00DA248 3C160001 */ lui $s6, 1 +/* 3D748C E00DA24C AFB3009C */ sw $s3, 0x9c($sp) +/* 3D7490 E00DA250 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3D7494 E00DA254 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3D7498 E00DA258 36D61630 */ ori $s6, $s6, 0x1630 +/* 3D749C E00DA25C AFBF00AC */ sw $ra, 0xac($sp) +/* 3D74A0 E00DA260 AFB500A4 */ sw $s5, 0xa4($sp) +/* 3D74A4 E00DA264 AFB400A0 */ sw $s4, 0xa0($sp) +/* 3D74A8 E00DA268 AFB20098 */ sw $s2, 0x98($sp) +/* 3D74AC E00DA26C AFB10094 */ sw $s1, 0x94($sp) +/* 3D74B0 E00DA270 AFB00090 */ sw $s0, 0x90($sp) +/* 3D74B4 E00DA274 F7B400B0 */ sdc1 $f20, 0xb0($sp) +/* 3D74B8 E00DA278 8E650000 */ lw $a1, ($s3) +/* 3D74BC E00DA27C 8CD2000C */ lw $s2, 0xc($a2) +/* 3D74C0 E00DA280 00A0182D */ daddu $v1, $a1, $zero +/* 3D74C4 E00DA284 24A50008 */ addiu $a1, $a1, 8 +/* 3D74C8 E00DA288 AE650000 */ sw $a1, ($s3) +/* 3D74CC E00DA28C 8E550024 */ lw $s5, 0x24($s2) +/* 3D74D0 E00DA290 C6540028 */ lwc1 $f20, 0x28($s2) +/* 3D74D4 E00DA294 C640002C */ lwc1 $f0, 0x2c($s2) +/* 3D74D8 E00DA298 3C02E700 */ lui $v0, 0xe700 +/* 3D74DC E00DA29C AC620000 */ sw $v0, ($v1) +/* 3D74E0 E00DA2A0 AC600004 */ sw $zero, 4($v1) +/* 3D74E4 E00DA2A4 ACA70000 */ sw $a3, ($a1) +/* 3D74E8 E00DA2A8 8CC30010 */ lw $v1, 0x10($a2) +/* 3D74EC E00DA2AC 24A20008 */ addiu $v0, $a1, 8 +/* 3D74F0 E00DA2B0 AE620000 */ sw $v0, ($s3) +/* 3D74F4 E00DA2B4 8C62001C */ lw $v0, 0x1c($v1) +/* 3D74F8 E00DA2B8 3C038000 */ lui $v1, 0x8000 +/* 3D74FC E00DA2BC 4600A502 */ mul.s $f20, $f20, $f0 +/* 3D7500 E00DA2C0 00000000 */ nop +/* 3D7504 E00DA2C4 00431021 */ addu $v0, $v0, $v1 +/* 3D7508 E00DA2C8 3C03800B */ lui $v1, %hi(gCameras) +/* 3D750C E00DA2CC 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3D7510 E00DA2D0 ACA20004 */ sw $v0, 4($a1) +/* 3D7514 E00DA2D4 8E450004 */ lw $a1, 4($s2) +/* 3D7518 E00DA2D8 8E460008 */ lw $a2, 8($s2) +/* 3D751C E00DA2DC 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3D7520 E00DA2E0 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3D7524 E00DA2E4 8E47000C */ lw $a3, 0xc($s2) +/* 3D7528 E00DA2E8 00028880 */ sll $s1, $v0, 2 +/* 3D752C E00DA2EC 02228821 */ addu $s1, $s1, $v0 +/* 3D7530 E00DA2F0 00118880 */ sll $s1, $s1, 2 +/* 3D7534 E00DA2F4 02228823 */ subu $s1, $s1, $v0 +/* 3D7538 E00DA2F8 001110C0 */ sll $v0, $s1, 3 +/* 3D753C E00DA2FC 02228821 */ addu $s1, $s1, $v0 +/* 3D7540 E00DA300 001188C0 */ sll $s1, $s1, 3 +/* 3D7544 E00DA304 0C080108 */ jal func_E0200420 +/* 3D7548 E00DA308 02238821 */ addu $s1, $s1, $v1 +/* 3D754C E00DA30C 27B00050 */ addiu $s0, $sp, 0x50 +/* 3D7550 E00DA310 4405A000 */ mfc1 $a1, $f20 +/* 3D7554 E00DA314 0200202D */ daddu $a0, $s0, $zero +/* 3D7558 E00DA318 00A0302D */ daddu $a2, $a1, $zero +/* 3D755C E00DA31C 0C080110 */ jal func_E0200440 +/* 3D7560 E00DA320 00A0382D */ daddu $a3, $a1, $zero +/* 3D7564 E00DA324 0200202D */ daddu $a0, $s0, $zero +/* 3D7568 E00DA328 27A50010 */ addiu $a1, $sp, 0x10 +/* 3D756C E00DA32C 0C080114 */ jal func_E0200450 +/* 3D7570 E00DA330 00A0302D */ daddu $a2, $a1, $zero +/* 3D7574 E00DA334 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D7578 E00DA338 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3D757C E00DA33C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3D7580 E00DA340 3C14800A */ lui $s4, %hi(D_8009A674) +/* 3D7584 E00DA344 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 3D7588 E00DA348 96050000 */ lhu $a1, ($s0) +/* 3D758C E00DA34C 8E820000 */ lw $v0, ($s4) +/* 3D7590 E00DA350 00052980 */ sll $a1, $a1, 6 +/* 3D7594 E00DA354 00B62821 */ addu $a1, $a1, $s6 +/* 3D7598 E00DA358 0C080118 */ jal func_E0200460 +/* 3D759C E00DA35C 00452821 */ addu $a1, $v0, $a1 +/* 3D75A0 E00DA360 3C03DA38 */ lui $v1, 0xda38 +/* 3D75A4 E00DA364 34630002 */ ori $v1, $v1, 2 +/* 3D75A8 E00DA368 3C06DA38 */ lui $a2, 0xda38 +/* 3D75AC E00DA36C 34C60001 */ ori $a2, $a2, 1 +/* 3D75B0 E00DA370 3C092AAA */ lui $t1, 0x2aaa +/* 3D75B4 E00DA374 3529AAAB */ ori $t1, $t1, 0xaaab +/* 3D75B8 E00DA378 3C08DE00 */ lui $t0, 0xde00 +/* 3D75BC E00DA37C 32B500FF */ andi $s5, $s5, 0xff +/* 3D75C0 E00DA380 3C07D838 */ lui $a3, 0xd838 +/* 3D75C4 E00DA384 8E650000 */ lw $a1, ($s3) +/* 3D75C8 E00DA388 96020000 */ lhu $v0, ($s0) +/* 3D75CC E00DA38C 00A0202D */ daddu $a0, $a1, $zero +/* 3D75D0 E00DA390 24A50008 */ addiu $a1, $a1, 8 +/* 3D75D4 E00DA394 AE650000 */ sw $a1, ($s3) +/* 3D75D8 E00DA398 AC830000 */ sw $v1, ($a0) +/* 3D75DC E00DA39C 24430001 */ addiu $v1, $v0, 1 +/* 3D75E0 E00DA3A0 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D75E4 E00DA3A4 00021180 */ sll $v0, $v0, 6 +/* 3D75E8 E00DA3A8 A6030000 */ sh $v1, ($s0) +/* 3D75EC E00DA3AC 8E830000 */ lw $v1, ($s4) +/* 3D75F0 E00DA3B0 00561021 */ addu $v0, $v0, $s6 +/* 3D75F4 E00DA3B4 00621821 */ addu $v1, $v1, $v0 +/* 3D75F8 E00DA3B8 24A20008 */ addiu $v0, $a1, 8 +/* 3D75FC E00DA3BC AC830004 */ sw $v1, 4($a0) +/* 3D7600 E00DA3C0 AE620000 */ sw $v0, ($s3) +/* 3D7604 E00DA3C4 24A20010 */ addiu $v0, $a1, 0x10 +/* 3D7608 E00DA3C8 ACA60000 */ sw $a2, ($a1) +/* 3D760C E00DA3CC AE620000 */ sw $v0, ($s3) +/* 3D7610 E00DA3D0 8E230204 */ lw $v1, 0x204($s1) +/* 3D7614 E00DA3D4 3C020900 */ lui $v0, 0x900 +/* 3D7618 E00DA3D8 24420240 */ addiu $v0, $v0, 0x240 +/* 3D761C E00DA3DC ACA2000C */ sw $v0, 0xc($a1) +/* 3D7620 E00DA3E0 24A20018 */ addiu $v0, $a1, 0x18 +/* 3D7624 E00DA3E4 3C06FA00 */ lui $a2, 0xfa00 +/* 3D7628 E00DA3E8 ACA80008 */ sw $t0, 8($a1) +/* 3D762C E00DA3EC AE620000 */ sw $v0, ($s3) +/* 3D7630 E00DA3F0 ACA60010 */ sw $a2, 0x10($a1) +/* 3D7634 E00DA3F4 ACA30004 */ sw $v1, 4($a1) +/* 3D7638 E00DA3F8 9242001B */ lbu $v0, 0x1b($s2) +/* 3D763C E00DA3FC 9244001F */ lbu $a0, 0x1f($s2) +/* 3D7640 E00DA400 92430023 */ lbu $v1, 0x23($s2) +/* 3D7644 E00DA404 00021600 */ sll $v0, $v0, 0x18 +/* 3D7648 E00DA408 00042400 */ sll $a0, $a0, 0x10 +/* 3D764C E00DA40C 00441025 */ or $v0, $v0, $a0 +/* 3D7650 E00DA410 00031A00 */ sll $v1, $v1, 8 +/* 3D7654 E00DA414 00431025 */ or $v0, $v0, $v1 +/* 3D7658 E00DA418 00551025 */ or $v0, $v0, $s5 +/* 3D765C E00DA41C ACA20014 */ sw $v0, 0x14($a1) +/* 3D7660 E00DA420 8E420014 */ lw $v0, 0x14($s2) +/* 3D7664 E00DA424 34E70002 */ ori $a3, $a3, 2 +/* 3D7668 E00DA428 00022040 */ sll $a0, $v0, 1 +/* 3D766C E00DA42C 00822021 */ addu $a0, $a0, $v0 +/* 3D7670 E00DA430 00890018 */ mult $a0, $t1 +/* 3D7674 E00DA434 24A20020 */ addiu $v0, $a1, 0x20 +/* 3D7678 E00DA438 AE620000 */ sw $v0, ($s3) +/* 3D767C E00DA43C 000417C3 */ sra $v0, $a0, 0x1f +/* 3D7680 E00DA440 ACA60018 */ sw $a2, 0x18($a1) +/* 3D7684 E00DA444 00005010 */ mfhi $t2 +/* 3D7688 E00DA448 000A1883 */ sra $v1, $t2, 2 +/* 3D768C E00DA44C 00621823 */ subu $v1, $v1, $v0 +/* 3D7690 E00DA450 00031040 */ sll $v0, $v1, 1 +/* 3D7694 E00DA454 00431021 */ addu $v0, $v0, $v1 +/* 3D7698 E00DA458 000210C0 */ sll $v0, $v0, 3 +/* 3D769C E00DA45C 00822023 */ subu $a0, $a0, $v0 +/* 3D76A0 E00DA460 3C03E00E */ lui $v1, %hi(D_E00DA500) +/* 3D76A4 E00DA464 00641821 */ addu $v1, $v1, $a0 +/* 3D76A8 E00DA468 9063A500 */ lbu $v1, %lo(D_E00DA500)($v1) +/* 3D76AC E00DA46C 3C06E00E */ lui $a2, %hi(D_E00DA501) +/* 3D76B0 E00DA470 00C43021 */ addu $a2, $a2, $a0 +/* 3D76B4 E00DA474 90C6A501 */ lbu $a2, %lo(D_E00DA501)($a2) +/* 3D76B8 E00DA478 3C01E00E */ lui $at, %hi(D_E00DA502) +/* 3D76BC E00DA47C 00240821 */ addu $at, $at, $a0 +/* 3D76C0 E00DA480 9024A502 */ lbu $a0, %lo(D_E00DA502)($at) +/* 3D76C4 E00DA484 24A20028 */ addiu $v0, $a1, 0x28 +/* 3D76C8 E00DA488 AE620000 */ sw $v0, ($s3) +/* 3D76CC E00DA48C 3C020900 */ lui $v0, 0x900 +/* 3D76D0 E00DA490 244202E0 */ addiu $v0, $v0, 0x2e0 +/* 3D76D4 E00DA494 ACA20024 */ sw $v0, 0x24($a1) +/* 3D76D8 E00DA498 24A20030 */ addiu $v0, $a1, 0x30 +/* 3D76DC E00DA49C ACA80020 */ sw $t0, 0x20($a1) +/* 3D76E0 E00DA4A0 AE620000 */ sw $v0, ($s3) +/* 3D76E4 E00DA4A4 24020040 */ addiu $v0, $zero, 0x40 +/* 3D76E8 E00DA4A8 ACA70028 */ sw $a3, 0x28($a1) +/* 3D76EC E00DA4AC ACA2002C */ sw $v0, 0x2c($a1) +/* 3D76F0 E00DA4B0 00031E00 */ sll $v1, $v1, 0x18 +/* 3D76F4 E00DA4B4 00063400 */ sll $a2, $a2, 0x10 +/* 3D76F8 E00DA4B8 00661825 */ or $v1, $v1, $a2 +/* 3D76FC E00DA4BC 00042200 */ sll $a0, $a0, 8 +/* 3D7700 E00DA4C0 00641825 */ or $v1, $v1, $a0 +/* 3D7704 E00DA4C4 00751825 */ or $v1, $v1, $s5 +/* 3D7708 E00DA4C8 ACA3001C */ sw $v1, 0x1c($a1) +/* 3D770C E00DA4CC 8FBF00AC */ lw $ra, 0xac($sp) +/* 3D7710 E00DA4D0 8FB600A8 */ lw $s6, 0xa8($sp) +/* 3D7714 E00DA4D4 8FB500A4 */ lw $s5, 0xa4($sp) +/* 3D7718 E00DA4D8 8FB400A0 */ lw $s4, 0xa0($sp) +/* 3D771C E00DA4DC 8FB3009C */ lw $s3, 0x9c($sp) +/* 3D7720 E00DA4E0 8FB20098 */ lw $s2, 0x98($sp) +/* 3D7724 E00DA4E4 8FB10094 */ lw $s1, 0x94($sp) +/* 3D7728 E00DA4E8 8FB00090 */ lw $s0, 0x90($sp) +/* 3D772C E00DA4EC D7B400B0 */ ldc1 $f20, 0xb0($sp) +/* 3D7730 E00DA4F0 03E00008 */ jr $ra +/* 3D7734 E00DA4F4 27BD00B8 */ addiu $sp, $sp, 0xb8 +/* 3D7738 E00DA4F8 00000000 */ nop +/* 3D773C E00DA4FC 00000000 */ nop diff --git a/asm/nonmatchings/code_3D7A70/func_E00DC000.s b/asm/nonmatchings/code_3D7A70/func_E00DC000.s new file mode 100644 index 0000000000..ab2ed4ea2f --- /dev/null +++ b/asm/nonmatchings/code_3D7A70/func_E00DC000.s @@ -0,0 +1,108 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DC000 +/* 3D7A70 E00DC000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3D7A74 E00DC004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3D7A78 E00DC008 4485A000 */ mtc1 $a1, $f20 +/* 3D7A7C E00DC00C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3D7A80 E00DC010 4486B000 */ mtc1 $a2, $f22 +/* 3D7A84 E00DC014 AFB30034 */ sw $s3, 0x34($sp) +/* 3D7A88 E00DC018 0080982D */ daddu $s3, $a0, $zero +/* 3D7A8C E00DC01C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3D7A90 E00DC020 4487C000 */ mtc1 $a3, $f24 +/* 3D7A94 E00DC024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D7A98 E00DC028 AFB00028 */ sw $s0, 0x28($sp) +/* 3D7A9C E00DC02C 8FB00074 */ lw $s0, 0x74($sp) +/* 3D7AA0 E00DC030 3C02E00E */ lui $v0, %hi(D_E00DC190) +/* 3D7AA4 E00DC034 2442C190 */ addiu $v0, $v0, %lo(D_E00DC190) +/* 3D7AA8 E00DC038 AFA20018 */ sw $v0, 0x18($sp) +/* 3D7AAC E00DC03C 3C02E00E */ lui $v0, %hi(D_E00DC198) +/* 3D7AB0 E00DC040 2442C198 */ addiu $v0, $v0, %lo(D_E00DC198) +/* 3D7AB4 E00DC044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D7AB8 E00DC048 3C02E00E */ lui $v0, %hi(D_E00DC2C0) +/* 3D7ABC E00DC04C 2442C2C0 */ addiu $v0, $v0, %lo(D_E00DC2C0) +/* 3D7AC0 E00DC050 AFA20020 */ sw $v0, 0x20($sp) +/* 3D7AC4 E00DC054 2402006E */ addiu $v0, $zero, 0x6e +/* 3D7AC8 E00DC058 AFBF0038 */ sw $ra, 0x38($sp) +/* 3D7ACC E00DC05C AFB20030 */ sw $s2, 0x30($sp) +/* 3D7AD0 E00DC060 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D7AD4 E00DC064 AFA00010 */ sw $zero, 0x10($sp) +/* 3D7AD8 E00DC068 AFA00024 */ sw $zero, 0x24($sp) +/* 3D7ADC E00DC06C 0C080124 */ jal func_E0200490 +/* 3D7AE0 E00DC070 AFA20014 */ sw $v0, 0x14($sp) +/* 3D7AE4 E00DC074 24040050 */ addiu $a0, $zero, 0x50 +/* 3D7AE8 E00DC078 24030001 */ addiu $v1, $zero, 1 +/* 3D7AEC E00DC07C 0040902D */ daddu $s2, $v0, $zero +/* 3D7AF0 E00DC080 0C08012C */ jal func_E02004B0 +/* 3D7AF4 E00DC084 AE430008 */ sw $v1, 8($s2) +/* 3D7AF8 E00DC088 0040882D */ daddu $s1, $v0, $zero +/* 3D7AFC E00DC08C 16200003 */ bnez $s1, .LE00DC09C +/* 3D7B00 E00DC090 AE42000C */ sw $v0, 0xc($s2) +.LE00DC094: +/* 3D7B04 E00DC094 08037025 */ j .LE00DC094 +/* 3D7B08 E00DC098 00000000 */ nop +.LE00DC09C: +/* 3D7B0C E00DC09C AE330000 */ sw $s3, ($s1) +/* 3D7B10 E00DC0A0 1E000004 */ bgtz $s0, .LE00DC0B4 +/* 3D7B14 E00DC0A4 AE200014 */ sw $zero, 0x14($s1) +/* 3D7B18 E00DC0A8 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D7B1C E00DC0AC 0803702E */ j .LE00DC0B8 +/* 3D7B20 E00DC0B0 AE220010 */ sw $v0, 0x10($s1) +.LE00DC0B4: +/* 3D7B24 E00DC0B4 AE300010 */ sw $s0, 0x10($s1) +.LE00DC0B8: +/* 3D7B28 E00DC0B8 241000FF */ addiu $s0, $zero, 0xff +/* 3D7B2C E00DC0BC AE200024 */ sw $zero, 0x24($s1) +/* 3D7B30 E00DC0C0 E6340004 */ swc1 $f20, 4($s1) +/* 3D7B34 E00DC0C4 E6360008 */ swc1 $f22, 8($s1) +/* 3D7B38 E00DC0C8 E638000C */ swc1 $f24, 0xc($s1) +/* 3D7B3C E00DC0CC C7A00070 */ lwc1 $f0, 0x70($sp) +/* 3D7B40 E00DC0D0 240200E6 */ addiu $v0, $zero, 0xe6 +/* 3D7B44 E00DC0D4 AE22002C */ sw $v0, 0x2c($s1) +/* 3D7B48 E00DC0D8 24020032 */ addiu $v0, $zero, 0x32 +/* 3D7B4C E00DC0DC AE300018 */ sw $s0, 0x18($s1) +/* 3D7B50 E00DC0E0 AE30001C */ sw $s0, 0x1c($s1) +/* 3D7B54 E00DC0E4 AE300020 */ sw $s0, 0x20($s1) +/* 3D7B58 E00DC0E8 AE300028 */ sw $s0, 0x28($s1) +/* 3D7B5C E00DC0EC AE220030 */ sw $v0, 0x30($s1) +/* 3D7B60 E00DC0F0 AE300034 */ sw $s0, 0x34($s1) +/* 3D7B64 E00DC0F4 E620004C */ swc1 $f0, 0x4c($s1) +/* 3D7B68 E00DC0F8 C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3D7B6C E00DC0FC AE200044 */ sw $zero, 0x44($s1) +/* 3D7B70 E00DC100 E6200048 */ swc1 $f0, 0x48($s1) +/* 3D7B74 E00DC104 C7A0006C */ lwc1 $f0, 0x6c($sp) +/* 3D7B78 E00DC108 24040020 */ addiu $a0, $zero, 0x20 +/* 3D7B7C E00DC10C 0C080138 */ jal func_E02004E0 +/* 3D7B80 E00DC110 E620003C */ swc1 $f0, 0x3c($s1) +/* 3D7B84 E00DC114 24040010 */ addiu $a0, $zero, 0x10 +/* 3D7B88 E00DC118 44820000 */ mtc1 $v0, $f0 +/* 3D7B8C E00DC11C 00000000 */ nop +/* 3D7B90 E00DC120 46800020 */ cvt.s.w $f0, $f0 +/* 3D7B94 E00DC124 0C080138 */ jal func_E02004E0 +/* 3D7B98 E00DC128 E6200038 */ swc1 $f0, 0x38($s1) +/* 3D7B9C E00DC12C 44820000 */ mtc1 $v0, $f0 +/* 3D7BA0 E00DC130 00000000 */ nop +/* 3D7BA4 E00DC134 46800020 */ cvt.s.w $f0, $f0 +/* 3D7BA8 E00DC138 0240102D */ daddu $v0, $s2, $zero +/* 3D7BAC E00DC13C 24030096 */ addiu $v1, $zero, 0x96 +/* 3D7BB0 E00DC140 AE230020 */ sw $v1, 0x20($s1) +/* 3D7BB4 E00DC144 240300D7 */ addiu $v1, $zero, 0xd7 +/* 3D7BB8 E00DC148 AE230028 */ sw $v1, 0x28($s1) +/* 3D7BBC E00DC14C 240300D2 */ addiu $v1, $zero, 0xd2 +/* 3D7BC0 E00DC150 AE23002C */ sw $v1, 0x2c($s1) +/* 3D7BC4 E00DC154 2403000A */ addiu $v1, $zero, 0xa +/* 3D7BC8 E00DC158 E6200040 */ swc1 $f0, 0x40($s1) +/* 3D7BCC E00DC15C AE300018 */ sw $s0, 0x18($s1) +/* 3D7BD0 E00DC160 AE30001C */ sw $s0, 0x1c($s1) +/* 3D7BD4 E00DC164 AE230030 */ sw $v1, 0x30($s1) +/* 3D7BD8 E00DC168 8FBF0038 */ lw $ra, 0x38($sp) +/* 3D7BDC E00DC16C 8FB30034 */ lw $s3, 0x34($sp) +/* 3D7BE0 E00DC170 8FB20030 */ lw $s2, 0x30($sp) +/* 3D7BE4 E00DC174 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D7BE8 E00DC178 8FB00028 */ lw $s0, 0x28($sp) +/* 3D7BEC E00DC17C D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3D7BF0 E00DC180 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3D7BF4 E00DC184 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3D7BF8 E00DC188 03E00008 */ jr $ra +/* 3D7BFC E00DC18C 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3D7A70/func_E00DC190.s b/asm/nonmatchings/code_3D7A70/func_E00DC190.s new file mode 100644 index 0000000000..2f5c19d343 --- /dev/null +++ b/asm/nonmatchings/code_3D7A70/func_E00DC190.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DC190 +/* 3D7C00 E00DC190 03E00008 */ jr $ra +/* 3D7C04 E00DC194 00000000 */ nop diff --git a/asm/nonmatchings/code_3D7A70/func_E00DC198.s b/asm/nonmatchings/code_3D7A70/func_E00DC198.s new file mode 100644 index 0000000000..2749899bba --- /dev/null +++ b/asm/nonmatchings/code_3D7A70/func_E00DC198.s @@ -0,0 +1,87 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DC198 +/* 3D7C08 E00DC198 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3D7C0C E00DC19C AFBF0010 */ sw $ra, 0x10($sp) +/* 3D7C10 E00DC1A0 8C850000 */ lw $a1, ($a0) +/* 3D7C14 E00DC1A4 8C83000C */ lw $v1, 0xc($a0) +/* 3D7C18 E00DC1A8 30A20010 */ andi $v0, $a1, 0x10 +/* 3D7C1C E00DC1AC 10400005 */ beqz $v0, .LE00DC1C4 +/* 3D7C20 E00DC1B0 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D7C24 E00DC1B4 00A21024 */ and $v0, $a1, $v0 +/* 3D7C28 E00DC1B8 AC820000 */ sw $v0, ($a0) +/* 3D7C2C E00DC1BC 24020010 */ addiu $v0, $zero, 0x10 +/* 3D7C30 E00DC1C0 AC620010 */ sw $v0, 0x10($v1) +.LE00DC1C4: +/* 3D7C34 E00DC1C4 8C650010 */ lw $a1, 0x10($v1) +/* 3D7C38 E00DC1C8 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3D7C3C E00DC1CC 10400002 */ beqz $v0, .LE00DC1D8 +/* 3D7C40 E00DC1D0 24A2FFFF */ addiu $v0, $a1, -1 +/* 3D7C44 E00DC1D4 AC620010 */ sw $v0, 0x10($v1) +.LE00DC1D8: +/* 3D7C48 E00DC1D8 8C620014 */ lw $v0, 0x14($v1) +/* 3D7C4C E00DC1DC 8C650010 */ lw $a1, 0x10($v1) +/* 3D7C50 E00DC1E0 24460001 */ addiu $a2, $v0, 1 +/* 3D7C54 E00DC1E4 04A10005 */ bgez $a1, .LE00DC1FC +/* 3D7C58 E00DC1E8 AC660014 */ sw $a2, 0x14($v1) +/* 3D7C5C E00DC1EC 0C080128 */ jal func_E02004A0 +/* 3D7C60 E00DC1F0 00000000 */ nop +/* 3D7C64 E00DC1F4 080370AD */ j .LE00DC2B4 +/* 3D7C68 E00DC1F8 00000000 */ nop +.LE00DC1FC: +/* 3D7C6C E00DC1FC 28A20010 */ slti $v0, $a1, 0x10 +/* 3D7C70 E00DC200 10400002 */ beqz $v0, .LE00DC20C +/* 3D7C74 E00DC204 00051100 */ sll $v0, $a1, 4 +/* 3D7C78 E00DC208 AC620024 */ sw $v0, 0x24($v1) +.LE00DC20C: +/* 3D7C7C E00DC20C 28C20010 */ slti $v0, $a2, 0x10 +/* 3D7C80 E00DC210 10400003 */ beqz $v0, .LE00DC220 +/* 3D7C84 E00DC214 00061100 */ sll $v0, $a2, 4 +/* 3D7C88 E00DC218 2442000F */ addiu $v0, $v0, 0xf +/* 3D7C8C E00DC21C AC620024 */ sw $v0, 0x24($v1) +.LE00DC220: +/* 3D7C90 E00DC220 C4620038 */ lwc1 $f2, 0x38($v1) +/* 3D7C94 E00DC224 C460003C */ lwc1 $f0, 0x3c($v1) +/* 3D7C98 E00DC228 46001000 */ add.s $f0, $f2, $f0 +/* 3D7C9C E00DC22C 3C014380 */ lui $at, 0x4380 +/* 3D7CA0 E00DC230 44812000 */ mtc1 $at, $f4 +/* 3D7CA4 E00DC234 00000000 */ nop +/* 3D7CA8 E00DC238 4600203E */ c.le.s $f4, $f0 +/* 3D7CAC E00DC23C 00000000 */ nop +/* 3D7CB0 E00DC240 45000003 */ bc1f .LE00DC250 +/* 3D7CB4 E00DC244 E4600038 */ swc1 $f0, 0x38($v1) +/* 3D7CB8 E00DC248 46040001 */ sub.s $f0, $f0, $f4 +/* 3D7CBC E00DC24C E4600038 */ swc1 $f0, 0x38($v1) +.LE00DC250: +/* 3D7CC0 E00DC250 C4600038 */ lwc1 $f0, 0x38($v1) +/* 3D7CC4 E00DC254 44803000 */ mtc1 $zero, $f6 +/* 3D7CC8 E00DC258 00000000 */ nop +/* 3D7CCC E00DC25C 4606003C */ c.lt.s $f0, $f6 +/* 3D7CD0 E00DC260 00000000 */ nop +/* 3D7CD4 E00DC264 45000003 */ bc1f .LE00DC274 +/* 3D7CD8 E00DC268 00000000 */ nop +/* 3D7CDC E00DC26C 46040000 */ add.s $f0, $f0, $f4 +/* 3D7CE0 E00DC270 E4600038 */ swc1 $f0, 0x38($v1) +.LE00DC274: +/* 3D7CE4 E00DC274 C4620040 */ lwc1 $f2, 0x40($v1) +/* 3D7CE8 E00DC278 C4600044 */ lwc1 $f0, 0x44($v1) +/* 3D7CEC E00DC27C 46001000 */ add.s $f0, $f2, $f0 +/* 3D7CF0 E00DC280 4600203E */ c.le.s $f4, $f0 +/* 3D7CF4 E00DC284 00000000 */ nop +/* 3D7CF8 E00DC288 45000003 */ bc1f .LE00DC298 +/* 3D7CFC E00DC28C E4600040 */ swc1 $f0, 0x40($v1) +/* 3D7D00 E00DC290 46040001 */ sub.s $f0, $f0, $f4 +/* 3D7D04 E00DC294 E4600040 */ swc1 $f0, 0x40($v1) +.LE00DC298: +/* 3D7D08 E00DC298 C4600040 */ lwc1 $f0, 0x40($v1) +/* 3D7D0C E00DC29C 4606003C */ c.lt.s $f0, $f6 +/* 3D7D10 E00DC2A0 00000000 */ nop +/* 3D7D14 E00DC2A4 45000003 */ bc1f .LE00DC2B4 +/* 3D7D18 E00DC2A8 00000000 */ nop +/* 3D7D1C E00DC2AC 46040000 */ add.s $f0, $f0, $f4 +/* 3D7D20 E00DC2B0 E4600040 */ swc1 $f0, 0x40($v1) +.LE00DC2B4: +/* 3D7D24 E00DC2B4 8FBF0010 */ lw $ra, 0x10($sp) +/* 3D7D28 E00DC2B8 03E00008 */ jr $ra +/* 3D7D2C E00DC2BC 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3D7A70/func_E00DC2C0.s b/asm/nonmatchings/code_3D7A70/func_E00DC2C0.s new file mode 100644 index 0000000000..6ee6c87162 --- /dev/null +++ b/asm/nonmatchings/code_3D7A70/func_E00DC2C0.s @@ -0,0 +1,19 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DC2C0 +/* 3D7D30 E00DC2C0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D7D34 E00DC2C4 3C02E00E */ lui $v0, %hi(D_E00DC304) +/* 3D7D38 E00DC2C8 2442C304 */ addiu $v0, $v0, %lo(D_E00DC304) +/* 3D7D3C E00DC2CC AFA2001C */ sw $v0, 0x1c($sp) +/* 3D7D40 E00DC2D0 2402000A */ addiu $v0, $zero, 0xa +/* 3D7D44 E00DC2D4 AFA20014 */ sw $v0, 0x14($sp) +/* 3D7D48 E00DC2D8 2402002D */ addiu $v0, $zero, 0x2d +/* 3D7D4C E00DC2DC AFA40018 */ sw $a0, 0x18($sp) +/* 3D7D50 E00DC2E0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D7D54 E00DC2E4 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D7D58 E00DC2E8 0C080120 */ jal func_E0200480 +/* 3D7D5C E00DC2EC AFA20010 */ sw $v0, 0x10($sp) +/* 3D7D60 E00DC2F0 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D7D64 E00DC2F4 03E00008 */ jr $ra +/* 3D7D68 E00DC2F8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D7A70/func_E00DC2FC.s b/asm/nonmatchings/code_3D7A70/func_E00DC2FC.s new file mode 100644 index 0000000000..76b32542ca --- /dev/null +++ b/asm/nonmatchings/code_3D7A70/func_E00DC2FC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DC2FC +/* 3D7D6C E00DC2FC 03E00008 */ jr $ra +/* 3D7D70 E00DC300 00000000 */ nop diff --git a/asm/nonmatchings/code_3D7A70/func_E00DC304.s b/asm/nonmatchings/code_3D7A70/func_E00DC304.s new file mode 100644 index 0000000000..fd5df43e53 --- /dev/null +++ b/asm/nonmatchings/code_3D7A70/func_E00DC304.s @@ -0,0 +1,211 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DC304 +/* 3D7D74 E00DC304 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 3D7D78 E00DC308 0080302D */ daddu $a2, $a0, $zero +/* 3D7D7C E00DC30C 3C07DB06 */ lui $a3, 0xdb06 +/* 3D7D80 E00DC310 34E70024 */ ori $a3, $a3, 0x24 +/* 3D7D84 E00DC314 27A40018 */ addiu $a0, $sp, 0x18 +/* 3D7D88 E00DC318 AFB400B0 */ sw $s4, 0xb0($sp) +/* 3D7D8C E00DC31C 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 3D7D90 E00DC320 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 3D7D94 E00DC324 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 3D7D98 E00DC328 AFBE00C0 */ sw $fp, 0xc0($sp) +/* 3D7D9C E00DC32C AFB700BC */ sw $s7, 0xbc($sp) +/* 3D7DA0 E00DC330 AFB600B8 */ sw $s6, 0xb8($sp) +/* 3D7DA4 E00DC334 AFB500B4 */ sw $s5, 0xb4($sp) +/* 3D7DA8 E00DC338 AFB300AC */ sw $s3, 0xac($sp) +/* 3D7DAC E00DC33C AFB200A8 */ sw $s2, 0xa8($sp) +/* 3D7DB0 E00DC340 AFB100A4 */ sw $s1, 0xa4($sp) +/* 3D7DB4 E00DC344 AFB000A0 */ sw $s0, 0xa0($sp) +/* 3D7DB8 E00DC348 8E850000 */ lw $a1, ($s4) +/* 3D7DBC E00DC34C 8CD2000C */ lw $s2, 0xc($a2) +/* 3D7DC0 E00DC350 3C014080 */ lui $at, 0x4080 +/* 3D7DC4 E00DC354 44810000 */ mtc1 $at, $f0 +/* 3D7DC8 E00DC358 00A0182D */ daddu $v1, $a1, $zero +/* 3D7DCC E00DC35C 24A50008 */ addiu $a1, $a1, 8 +/* 3D7DD0 E00DC360 AE850000 */ sw $a1, ($s4) +/* 3D7DD4 E00DC364 8E570024 */ lw $s7, 0x24($s2) +/* 3D7DD8 E00DC368 8E4A0000 */ lw $t2, ($s2) +/* 3D7DDC E00DC36C 3C1E0001 */ lui $fp, 1 +/* 3D7DE0 E00DC370 AFAA0098 */ sw $t2, 0x98($sp) +/* 3D7DE4 E00DC374 C6420038 */ lwc1 $f2, 0x38($s2) +/* 3D7DE8 E00DC378 C6440040 */ lwc1 $f4, 0x40($s2) +/* 3D7DEC E00DC37C 3C02E700 */ lui $v0, 0xe700 +/* 3D7DF0 E00DC380 AC620000 */ sw $v0, ($v1) +/* 3D7DF4 E00DC384 AC600004 */ sw $zero, 4($v1) +/* 3D7DF8 E00DC388 ACA70000 */ sw $a3, ($a1) +/* 3D7DFC E00DC38C 8CC30010 */ lw $v1, 0x10($a2) +/* 3D7E00 E00DC390 46001082 */ mul.s $f2, $f2, $f0 +/* 3D7E04 E00DC394 00000000 */ nop +/* 3D7E08 E00DC398 24A20008 */ addiu $v0, $a1, 8 +/* 3D7E0C E00DC39C AE820000 */ sw $v0, ($s4) +/* 3D7E10 E00DC3A0 8C62001C */ lw $v0, 0x1c($v1) +/* 3D7E14 E00DC3A4 3C038000 */ lui $v1, 0x8000 +/* 3D7E18 E00DC3A8 46002102 */ mul.s $f4, $f4, $f0 +/* 3D7E1C E00DC3AC 00000000 */ nop +/* 3D7E20 E00DC3B0 00431021 */ addu $v0, $v0, $v1 +/* 3D7E24 E00DC3B4 3C03800B */ lui $v1, %hi(gCameras) +/* 3D7E28 E00DC3B8 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3D7E2C E00DC3BC ACA20004 */ sw $v0, 4($a1) +/* 3D7E30 E00DC3C0 8E450004 */ lw $a1, 4($s2) +/* 3D7E34 E00DC3C4 8E460008 */ lw $a2, 8($s2) +/* 3D7E38 E00DC3C8 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3D7E3C E00DC3CC 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3D7E40 E00DC3D0 8E47000C */ lw $a3, 0xc($s2) +/* 3D7E44 E00DC3D4 00028880 */ sll $s1, $v0, 2 +/* 3D7E48 E00DC3D8 02228821 */ addu $s1, $s1, $v0 +/* 3D7E4C E00DC3DC 00118880 */ sll $s1, $s1, 2 +/* 3D7E50 E00DC3E0 02228823 */ subu $s1, $s1, $v0 +/* 3D7E54 E00DC3E4 001110C0 */ sll $v0, $s1, 3 +/* 3D7E58 E00DC3E8 02228821 */ addu $s1, $s1, $v0 +/* 3D7E5C E00DC3EC 001188C0 */ sll $s1, $s1, 3 +/* 3D7E60 E00DC3F0 4600118D */ trunc.w.s $f6, $f2 +/* 3D7E64 E00DC3F4 44133000 */ mfc1 $s3, $f6 +/* 3D7E68 E00DC3F8 4600218D */ trunc.w.s $f6, $f4 +/* 3D7E6C E00DC3FC 44163000 */ mfc1 $s6, $f6 +/* 3D7E70 E00DC400 0C080108 */ jal func_E0200420 +/* 3D7E74 E00DC404 02238821 */ addu $s1, $s1, $v1 +/* 3D7E78 E00DC408 37DE1630 */ ori $fp, $fp, 0x1630 +/* 3D7E7C E00DC40C 3C013F80 */ lui $at, 0x3f80 +/* 3D7E80 E00DC410 44810000 */ mtc1 $at, $f0 +/* 3D7E84 E00DC414 27B00058 */ addiu $s0, $sp, 0x58 +/* 3D7E88 E00DC418 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3D7E8C E00DC41C 44800000 */ mtc1 $zero, $f0 +/* 3D7E90 E00DC420 0200202D */ daddu $a0, $s0, $zero +/* 3D7E94 E00DC424 44060000 */ mfc1 $a2, $f0 +/* 3D7E98 E00DC428 8E450048 */ lw $a1, 0x48($s2) +/* 3D7E9C E00DC42C 0C080104 */ jal func_E0200410 +/* 3D7EA0 E00DC430 00C0382D */ daddu $a3, $a2, $zero +/* 3D7EA4 E00DC434 0200202D */ daddu $a0, $s0, $zero +/* 3D7EA8 E00DC438 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D7EAC E00DC43C 0C080114 */ jal func_E0200450 +/* 3D7EB0 E00DC440 00A0302D */ daddu $a2, $a1, $zero +/* 3D7EB4 E00DC444 8E45004C */ lw $a1, 0x4c($s2) +/* 3D7EB8 E00DC448 0200202D */ daddu $a0, $s0, $zero +/* 3D7EBC E00DC44C 00A0302D */ daddu $a2, $a1, $zero +/* 3D7EC0 E00DC450 0C080110 */ jal func_E0200440 +/* 3D7EC4 E00DC454 00A0382D */ daddu $a3, $a1, $zero +/* 3D7EC8 E00DC458 0200202D */ daddu $a0, $s0, $zero +/* 3D7ECC E00DC45C 27A50018 */ addiu $a1, $sp, 0x18 +/* 3D7ED0 E00DC460 0C080114 */ jal func_E0200450 +/* 3D7ED4 E00DC464 00A0302D */ daddu $a2, $a1, $zero +/* 3D7ED8 E00DC468 27A40018 */ addiu $a0, $sp, 0x18 +/* 3D7EDC E00DC46C 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3D7EE0 E00DC470 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3D7EE4 E00DC474 3C15800A */ lui $s5, %hi(D_8009A674) +/* 3D7EE8 E00DC478 26B5A674 */ addiu $s5, $s5, %lo(D_8009A674) +/* 3D7EEC E00DC47C 96050000 */ lhu $a1, ($s0) +/* 3D7EF0 E00DC480 8EA20000 */ lw $v0, ($s5) +/* 3D7EF4 E00DC484 00052980 */ sll $a1, $a1, 6 +/* 3D7EF8 E00DC488 00BE2821 */ addu $a1, $a1, $fp +/* 3D7EFC E00DC48C 0C080118 */ jal func_E0200460 +/* 3D7F00 E00DC490 00452821 */ addu $a1, $v0, $a1 +/* 3D7F04 E00DC494 3C03DA38 */ lui $v1, 0xda38 +/* 3D7F08 E00DC498 34630002 */ ori $v1, $v1, 2 +/* 3D7F0C E00DC49C 3C06DA38 */ lui $a2, 0xda38 +/* 3D7F10 E00DC4A0 34C60001 */ ori $a2, $a2, 1 +/* 3D7F14 E00DC4A4 3C09D838 */ lui $t1, 0xd838 +/* 3D7F18 E00DC4A8 35290002 */ ori $t1, $t1, 2 +/* 3D7F1C E00DC4AC 32F700FF */ andi $s7, $s7, 0xff +/* 3D7F20 E00DC4B0 3C08DE00 */ lui $t0, 0xde00 +/* 3D7F24 E00DC4B4 8E850000 */ lw $a1, ($s4) +/* 3D7F28 E00DC4B8 96020000 */ lhu $v0, ($s0) +/* 3D7F2C E00DC4BC 00A0202D */ daddu $a0, $a1, $zero +/* 3D7F30 E00DC4C0 24A50008 */ addiu $a1, $a1, 8 +/* 3D7F34 E00DC4C4 AE850000 */ sw $a1, ($s4) +/* 3D7F38 E00DC4C8 AC830000 */ sw $v1, ($a0) +/* 3D7F3C E00DC4CC 24430001 */ addiu $v1, $v0, 1 +/* 3D7F40 E00DC4D0 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D7F44 E00DC4D4 00021180 */ sll $v0, $v0, 6 +/* 3D7F48 E00DC4D8 A6030000 */ sh $v1, ($s0) +/* 3D7F4C E00DC4DC 8EA30000 */ lw $v1, ($s5) +/* 3D7F50 E00DC4E0 005E1021 */ addu $v0, $v0, $fp +/* 3D7F54 E00DC4E4 00621821 */ addu $v1, $v1, $v0 +/* 3D7F58 E00DC4E8 24A20008 */ addiu $v0, $a1, 8 +/* 3D7F5C E00DC4EC AC830004 */ sw $v1, 4($a0) +/* 3D7F60 E00DC4F0 AE820000 */ sw $v0, ($s4) +/* 3D7F64 E00DC4F4 24A20010 */ addiu $v0, $a1, 0x10 +/* 3D7F68 E00DC4F8 ACA60000 */ sw $a2, ($a1) +/* 3D7F6C E00DC4FC AE820000 */ sw $v0, ($s4) +/* 3D7F70 E00DC500 8E230204 */ lw $v1, 0x204($s1) +/* 3D7F74 E00DC504 3C02FA00 */ lui $v0, 0xfa00 +/* 3D7F78 E00DC508 ACA20008 */ sw $v0, 8($a1) +/* 3D7F7C E00DC50C ACA30004 */ sw $v1, 4($a1) +/* 3D7F80 E00DC510 9242001B */ lbu $v0, 0x1b($s2) +/* 3D7F84 E00DC514 9244001F */ lbu $a0, 0x1f($s2) +/* 3D7F88 E00DC518 92460023 */ lbu $a2, 0x23($s2) +/* 3D7F8C E00DC51C 24A30018 */ addiu $v1, $a1, 0x18 +/* 3D7F90 E00DC520 AE830000 */ sw $v1, ($s4) +/* 3D7F94 E00DC524 3C03FB00 */ lui $v1, 0xfb00 +/* 3D7F98 E00DC528 ACA30010 */ sw $v1, 0x10($a1) +/* 3D7F9C E00DC52C 00021600 */ sll $v0, $v0, 0x18 +/* 3D7FA0 E00DC530 00042400 */ sll $a0, $a0, 0x10 +/* 3D7FA4 E00DC534 00441025 */ or $v0, $v0, $a0 +/* 3D7FA8 E00DC538 00063200 */ sll $a2, $a2, 8 +/* 3D7FAC E00DC53C 00461025 */ or $v0, $v0, $a2 +/* 3D7FB0 E00DC540 00571025 */ or $v0, $v0, $s7 +/* 3D7FB4 E00DC544 ACA2000C */ sw $v0, 0xc($a1) +/* 3D7FB8 E00DC548 9243002B */ lbu $v1, 0x2b($s2) +/* 3D7FBC E00DC54C 9244002F */ lbu $a0, 0x2f($s2) +/* 3D7FC0 E00DC550 92460033 */ lbu $a2, 0x33($s2) +/* 3D7FC4 E00DC554 92470037 */ lbu $a3, 0x37($s2) +/* 3D7FC8 E00DC558 24A20020 */ addiu $v0, $a1, 0x20 +/* 3D7FCC E00DC55C AE820000 */ sw $v0, ($s4) +/* 3D7FD0 E00DC560 24A20028 */ addiu $v0, $a1, 0x28 +/* 3D7FD4 E00DC564 ACA80018 */ sw $t0, 0x18($a1) +/* 3D7FD8 E00DC568 AE820000 */ sw $v0, ($s4) +/* 3D7FDC E00DC56C 32C20FFF */ andi $v0, $s6, 0xfff +/* 3D7FE0 E00DC570 26D6003C */ addiu $s6, $s6, 0x3c +/* 3D7FE4 E00DC574 32D60FFF */ andi $s6, $s6, 0xfff +/* 3D7FE8 E00DC578 00031E00 */ sll $v1, $v1, 0x18 +/* 3D7FEC E00DC57C 00042400 */ sll $a0, $a0, 0x10 +/* 3D7FF0 E00DC580 00641825 */ or $v1, $v1, $a0 +/* 3D7FF4 E00DC584 00063200 */ sll $a2, $a2, 8 +/* 3D7FF8 E00DC588 00661825 */ or $v1, $v1, $a2 +/* 3D7FFC E00DC58C 00671825 */ or $v1, $v1, $a3 +/* 3D8000 E00DC590 32640FFF */ andi $a0, $s3, 0xfff +/* 3D8004 E00DC594 00042300 */ sll $a0, $a0, 0xc +/* 3D8008 E00DC598 ACA30014 */ sw $v1, 0x14($a1) +/* 3D800C E00DC59C 3C03F200 */ lui $v1, 0xf200 +/* 3D8010 E00DC5A0 00431025 */ or $v0, $v0, $v1 +/* 3D8014 E00DC5A4 00822025 */ or $a0, $a0, $v0 +/* 3D8018 E00DC5A8 2673007C */ addiu $s3, $s3, 0x7c +/* 3D801C E00DC5AC 32730FFF */ andi $s3, $s3, 0xfff +/* 3D8020 E00DC5B0 8FAA0098 */ lw $t2, 0x98($sp) +/* 3D8024 E00DC5B4 00139B00 */ sll $s3, $s3, 0xc +/* 3D8028 E00DC5B8 000A9080 */ sll $s2, $t2, 2 +/* 3D802C E00DC5BC 3C03E00E */ lui $v1, %hi(D_E00DC648) +/* 3D8030 E00DC5C0 00721821 */ addu $v1, $v1, $s2 +/* 3D8034 E00DC5C4 8C63C648 */ lw $v1, %lo(D_E00DC648)($v1) +/* 3D8038 E00DC5C8 02769825 */ or $s3, $s3, $s6 +/* 3D803C E00DC5CC ACA40020 */ sw $a0, 0x20($a1) +/* 3D8040 E00DC5D0 ACB30024 */ sw $s3, 0x24($a1) +/* 3D8044 E00DC5D4 ACA80028 */ sw $t0, 0x28($a1) +/* 3D8048 E00DC5D8 ACA3001C */ sw $v1, 0x1c($a1) +/* 3D804C E00DC5DC 3C03E00E */ lui $v1, %hi(D_E00DC640) +/* 3D8050 E00DC5E0 00721821 */ addu $v1, $v1, $s2 +/* 3D8054 E00DC5E4 8C63C640 */ lw $v1, %lo(D_E00DC640)($v1) +/* 3D8058 E00DC5E8 24A20030 */ addiu $v0, $a1, 0x30 +/* 3D805C E00DC5EC AE820000 */ sw $v0, ($s4) +/* 3D8060 E00DC5F0 24A20038 */ addiu $v0, $a1, 0x38 +/* 3D8064 E00DC5F4 ACA3002C */ sw $v1, 0x2c($a1) +/* 3D8068 E00DC5F8 AE820000 */ sw $v0, ($s4) +/* 3D806C E00DC5FC 24020040 */ addiu $v0, $zero, 0x40 +/* 3D8070 E00DC600 ACA90030 */ sw $t1, 0x30($a1) +/* 3D8074 E00DC604 ACA20034 */ sw $v0, 0x34($a1) +/* 3D8078 E00DC608 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 3D807C E00DC60C 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 3D8080 E00DC610 8FB700BC */ lw $s7, 0xbc($sp) +/* 3D8084 E00DC614 8FB600B8 */ lw $s6, 0xb8($sp) +/* 3D8088 E00DC618 8FB500B4 */ lw $s5, 0xb4($sp) +/* 3D808C E00DC61C 8FB400B0 */ lw $s4, 0xb0($sp) +/* 3D8090 E00DC620 8FB300AC */ lw $s3, 0xac($sp) +/* 3D8094 E00DC624 8FB200A8 */ lw $s2, 0xa8($sp) +/* 3D8098 E00DC628 8FB100A4 */ lw $s1, 0xa4($sp) +/* 3D809C E00DC62C 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3D80A0 E00DC630 03E00008 */ jr $ra +/* 3D80A4 E00DC634 27BD00C8 */ addiu $sp, $sp, 0xc8 +/* 3D80A8 E00DC638 00000000 */ nop +/* 3D80AC E00DC63C 00000000 */ nop diff --git a/asm/nonmatchings/code_3D8720/func_E00DE000.s b/asm/nonmatchings/code_3D8720/func_E00DE000.s new file mode 100644 index 0000000000..37d2358482 --- /dev/null +++ b/asm/nonmatchings/code_3D8720/func_E00DE000.s @@ -0,0 +1,79 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DE000 +/* 3D8720 E00DE000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3D8724 E00DE004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3D8728 E00DE008 4485A000 */ mtc1 $a1, $f20 +/* 3D872C E00DE00C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3D8730 E00DE010 4486B000 */ mtc1 $a2, $f22 +/* 3D8734 E00DE014 AFB20030 */ sw $s2, 0x30($sp) +/* 3D8738 E00DE018 0080902D */ daddu $s2, $a0, $zero +/* 3D873C E00DE01C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3D8740 E00DE020 4487C000 */ mtc1 $a3, $f24 +/* 3D8744 E00DE024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D8748 E00DE028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3D874C E00DE02C 8FB10064 */ lw $s1, 0x64($sp) +/* 3D8750 E00DE030 3C02E00E */ lui $v0, %hi(D_E00DE11C) +/* 3D8754 E00DE034 2442E11C */ addiu $v0, $v0, %lo(D_E00DE11C) +/* 3D8758 E00DE038 AFA20018 */ sw $v0, 0x18($sp) +/* 3D875C E00DE03C 3C02E00E */ lui $v0, %hi(D_E00DE124) +/* 3D8760 E00DE040 2442E124 */ addiu $v0, $v0, %lo(D_E00DE124) +/* 3D8764 E00DE044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3D8768 E00DE048 3C02E00E */ lui $v0, %hi(D_E00DE260) +/* 3D876C E00DE04C 2442E260 */ addiu $v0, $v0, %lo(D_E00DE260) +/* 3D8770 E00DE050 AFA20020 */ sw $v0, 0x20($sp) +/* 3D8774 E00DE054 2402006F */ addiu $v0, $zero, 0x6f +/* 3D8778 E00DE058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3D877C E00DE05C AFB00028 */ sw $s0, 0x28($sp) +/* 3D8780 E00DE060 AFA00010 */ sw $zero, 0x10($sp) +/* 3D8784 E00DE064 AFA00024 */ sw $zero, 0x24($sp) +/* 3D8788 E00DE068 0C080124 */ jal func_E0200490 +/* 3D878C E00DE06C AFA20014 */ sw $v0, 0x14($sp) +/* 3D8790 E00DE070 24040044 */ addiu $a0, $zero, 0x44 +/* 3D8794 E00DE074 24030001 */ addiu $v1, $zero, 1 +/* 3D8798 E00DE078 0040802D */ daddu $s0, $v0, $zero +/* 3D879C E00DE07C 0C08012C */ jal func_E02004B0 +/* 3D87A0 E00DE080 AE030008 */ sw $v1, 8($s0) +/* 3D87A4 E00DE084 0040202D */ daddu $a0, $v0, $zero +/* 3D87A8 E00DE088 14800003 */ bnez $a0, .LE00DE098 +/* 3D87AC E00DE08C AE02000C */ sw $v0, 0xc($s0) +.LE00DE090: +/* 3D87B0 E00DE090 08037824 */ j .LE00DE090 +/* 3D87B4 E00DE094 00000000 */ nop +.LE00DE098: +/* 3D87B8 E00DE098 AC920000 */ sw $s2, ($a0) +/* 3D87BC E00DE09C 1E200004 */ bgtz $s1, .LE00DE0B0 +/* 3D87C0 E00DE0A0 AC800014 */ sw $zero, 0x14($a0) +/* 3D87C4 E00DE0A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3D87C8 E00DE0A8 0803782D */ j .LE00DE0B4 +/* 3D87CC E00DE0AC AC820010 */ sw $v0, 0x10($a0) +.LE00DE0B0: +/* 3D87D0 E00DE0B0 AC910010 */ sw $s1, 0x10($a0) +.LE00DE0B4: +/* 3D87D4 E00DE0B4 240300FF */ addiu $v1, $zero, 0xff +/* 3D87D8 E00DE0B8 AC830024 */ sw $v1, 0x24($a0) +/* 3D87DC E00DE0BC E4940004 */ swc1 $f20, 4($a0) +/* 3D87E0 E00DE0C0 E4960008 */ swc1 $f22, 8($a0) +/* 3D87E4 E00DE0C4 E498000C */ swc1 $f24, 0xc($a0) +/* 3D87E8 E00DE0C8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3D87EC E00DE0CC 0200102D */ daddu $v0, $s0, $zero +/* 3D87F0 E00DE0D0 AC830018 */ sw $v1, 0x18($a0) +/* 3D87F4 E00DE0D4 AC83001C */ sw $v1, 0x1c($a0) +/* 3D87F8 E00DE0D8 AC830020 */ sw $v1, 0x20($a0) +/* 3D87FC E00DE0DC AC830028 */ sw $v1, 0x28($a0) +/* 3D8800 E00DE0E0 AC83002C */ sw $v1, 0x2c($a0) +/* 3D8804 E00DE0E4 AC830030 */ sw $v1, 0x30($a0) +/* 3D8808 E00DE0E8 AC830034 */ sw $v1, 0x34($a0) +/* 3D880C E00DE0EC AC800038 */ sw $zero, 0x38($a0) +/* 3D8810 E00DE0F0 AC80003C */ sw $zero, 0x3c($a0) +/* 3D8814 E00DE0F4 E4800040 */ swc1 $f0, 0x40($a0) +/* 3D8818 E00DE0F8 8FBF0034 */ lw $ra, 0x34($sp) +/* 3D881C E00DE0FC 8FB20030 */ lw $s2, 0x30($sp) +/* 3D8820 E00DE100 8FB1002C */ lw $s1, 0x2c($sp) +/* 3D8824 E00DE104 8FB00028 */ lw $s0, 0x28($sp) +/* 3D8828 E00DE108 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3D882C E00DE10C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3D8830 E00DE110 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3D8834 E00DE114 03E00008 */ jr $ra +/* 3D8838 E00DE118 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3D8720/func_E00DE11C.s b/asm/nonmatchings/code_3D8720/func_E00DE11C.s new file mode 100644 index 0000000000..ec398639db --- /dev/null +++ b/asm/nonmatchings/code_3D8720/func_E00DE11C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DE11C +/* 3D883C E00DE11C 03E00008 */ jr $ra +/* 3D8840 E00DE120 00000000 */ nop diff --git a/asm/nonmatchings/code_3D8720/func_E00DE124.s b/asm/nonmatchings/code_3D8720/func_E00DE124.s new file mode 100644 index 0000000000..d4db72e950 --- /dev/null +++ b/asm/nonmatchings/code_3D8720/func_E00DE124.s @@ -0,0 +1,91 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DE124 +/* 3D8844 E00DE124 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3D8848 E00DE128 AFBF0010 */ sw $ra, 0x10($sp) +/* 3D884C E00DE12C 8C850000 */ lw $a1, ($a0) +/* 3D8850 E00DE130 8C83000C */ lw $v1, 0xc($a0) +/* 3D8854 E00DE134 30A20010 */ andi $v0, $a1, 0x10 +/* 3D8858 E00DE138 8C660000 */ lw $a2, ($v1) +/* 3D885C E00DE13C 10400005 */ beqz $v0, .LE00DE154 +/* 3D8860 E00DE140 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3D8864 E00DE144 00A21024 */ and $v0, $a1, $v0 +/* 3D8868 E00DE148 AC820000 */ sw $v0, ($a0) +/* 3D886C E00DE14C 24020010 */ addiu $v0, $zero, 0x10 +/* 3D8870 E00DE150 AC620010 */ sw $v0, 0x10($v1) +.LE00DE154: +/* 3D8874 E00DE154 8C650010 */ lw $a1, 0x10($v1) +/* 3D8878 E00DE158 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3D887C E00DE15C 10400002 */ beqz $v0, .LE00DE168 +/* 3D8880 E00DE160 24A2FFFF */ addiu $v0, $a1, -1 +/* 3D8884 E00DE164 AC620010 */ sw $v0, 0x10($v1) +.LE00DE168: +/* 3D8888 E00DE168 8C620014 */ lw $v0, 0x14($v1) +/* 3D888C E00DE16C 8C650010 */ lw $a1, 0x10($v1) +/* 3D8890 E00DE170 24420001 */ addiu $v0, $v0, 1 +/* 3D8894 E00DE174 04A10005 */ bgez $a1, .LE00DE18C +/* 3D8898 E00DE178 AC620014 */ sw $v0, 0x14($v1) +/* 3D889C E00DE17C 0C080128 */ jal func_E02004A0 +/* 3D88A0 E00DE180 00000000 */ nop +/* 3D88A4 E00DE184 08037895 */ j .LE00DE254 +/* 3D88A8 E00DE188 00000000 */ nop +.LE00DE18C: +/* 3D88AC E00DE18C 28A20010 */ slti $v0, $a1, 0x10 +/* 3D88B0 E00DE190 10400002 */ beqz $v0, .LE00DE19C +/* 3D88B4 E00DE194 00051100 */ sll $v0, $a1, 4 +/* 3D88B8 E00DE198 AC620024 */ sw $v0, 0x24($v1) +.LE00DE19C: +/* 3D88BC E00DE19C 28C20002 */ slti $v0, $a2, 2 +/* 3D88C0 E00DE1A0 1040000A */ beqz $v0, .LE00DE1CC +/* 3D88C4 E00DE1A4 00000000 */ nop +/* 3D88C8 E00DE1A8 04C00008 */ bltz $a2, .LE00DE1CC +/* 3D88CC E00DE1AC 00000000 */ nop +/* 3D88D0 E00DE1B0 C460003C */ lwc1 $f0, 0x3c($v1) +/* 3D88D4 E00DE1B4 3C01E00E */ lui $at, %hi(D_E00DE9D0) +/* 3D88D8 E00DE1B8 D422E9D0 */ ldc1 $f2, %lo(D_E00DE9D0)($at) +/* 3D88DC E00DE1BC 46000021 */ cvt.d.s $f0, $f0 +/* 3D88E0 E00DE1C0 46220000 */ add.d $f0, $f0, $f2 +/* 3D88E4 E00DE1C4 46200020 */ cvt.s.d $f0, $f0 +/* 3D88E8 E00DE1C8 E460003C */ swc1 $f0, 0x3c($v1) +.LE00DE1CC: +/* 3D88EC E00DE1CC C4640008 */ lwc1 $f4, 8($v1) +/* 3D88F0 E00DE1D0 C460003C */ lwc1 $f0, 0x3c($v1) +/* 3D88F4 E00DE1D4 46002100 */ add.s $f4, $f4, $f0 +/* 3D88F8 E00DE1D8 3C013FE0 */ lui $at, 0x3fe0 +/* 3D88FC E00DE1DC 44811800 */ mtc1 $at, $f3 +/* 3D8900 E00DE1E0 44801000 */ mtc1 $zero, $f2 +/* 3D8904 E00DE1E4 46000021 */ cvt.d.s $f0, $f0 +/* 3D8908 E00DE1E8 4620103C */ c.lt.d $f2, $f0 +/* 3D890C E00DE1EC 00000000 */ nop +/* 3D8910 E00DE1F0 45000005 */ bc1f .LE00DE208 +/* 3D8914 E00DE1F4 E4640008 */ swc1 $f4, 8($v1) +/* 3D8918 E00DE1F8 3C013F00 */ lui $at, 0x3f00 +/* 3D891C E00DE1FC 44810000 */ mtc1 $at, $f0 +/* 3D8920 E00DE200 00000000 */ nop +/* 3D8924 E00DE204 E460003C */ swc1 $f0, 0x3c($v1) +.LE00DE208: +/* 3D8928 E00DE208 C460003C */ lwc1 $f0, 0x3c($v1) +/* 3D892C E00DE20C 3C01BFF8 */ lui $at, 0xbff8 +/* 3D8930 E00DE210 44811800 */ mtc1 $at, $f3 +/* 3D8934 E00DE214 44801000 */ mtc1 $zero, $f2 +/* 3D8938 E00DE218 46000021 */ cvt.d.s $f0, $f0 +/* 3D893C E00DE21C 4622003C */ c.lt.d $f0, $f2 +/* 3D8940 E00DE220 00000000 */ nop +/* 3D8944 E00DE224 45000005 */ bc1f .LE00DE23C +/* 3D8948 E00DE228 00000000 */ nop +/* 3D894C E00DE22C 3C01BFC0 */ lui $at, 0xbfc0 +/* 3D8950 E00DE230 44810000 */ mtc1 $at, $f0 +/* 3D8954 E00DE234 00000000 */ nop +/* 3D8958 E00DE238 E460003C */ swc1 $f0, 0x3c($v1) +.LE00DE23C: +/* 3D895C E00DE23C C4600038 */ lwc1 $f0, 0x38($v1) +/* 3D8960 E00DE240 3C013F80 */ lui $at, 0x3f80 +/* 3D8964 E00DE244 44811000 */ mtc1 $at, $f2 +/* 3D8968 E00DE248 00000000 */ nop +/* 3D896C E00DE24C 46020000 */ add.s $f0, $f0, $f2 +/* 3D8970 E00DE250 E4600038 */ swc1 $f0, 0x38($v1) +.LE00DE254: +/* 3D8974 E00DE254 8FBF0010 */ lw $ra, 0x10($sp) +/* 3D8978 E00DE258 03E00008 */ jr $ra +/* 3D897C E00DE25C 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3D8720/func_E00DE260.s b/asm/nonmatchings/code_3D8720/func_E00DE260.s new file mode 100644 index 0000000000..29429bc726 --- /dev/null +++ b/asm/nonmatchings/code_3D8720/func_E00DE260.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DE260 +/* 3D8980 E00DE260 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3D8984 E00DE264 3C02E00E */ lui $v0, %hi(D_E00DE2A8) +/* 3D8988 E00DE268 2442E2A8 */ addiu $v0, $v0, %lo(D_E00DE2A8) +/* 3D898C E00DE26C AFA2001C */ sw $v0, 0x1c($sp) +/* 3D8990 E00DE270 24020006 */ addiu $v0, $zero, 6 +/* 3D8994 E00DE274 AFA20014 */ sw $v0, 0x14($sp) +/* 3D8998 E00DE278 2402002D */ addiu $v0, $zero, 0x2d +/* 3D899C E00DE27C AFA40018 */ sw $a0, 0x18($sp) +/* 3D89A0 E00DE280 27A40010 */ addiu $a0, $sp, 0x10 +/* 3D89A4 E00DE284 AFBF0020 */ sw $ra, 0x20($sp) +/* 3D89A8 E00DE288 0C080120 */ jal func_E0200480 +/* 3D89AC E00DE28C AFA20010 */ sw $v0, 0x10($sp) +/* 3D89B0 E00DE290 8C430000 */ lw $v1, ($v0) +/* 3D89B4 E00DE294 34630002 */ ori $v1, $v1, 2 +/* 3D89B8 E00DE298 AC430000 */ sw $v1, ($v0) +/* 3D89BC E00DE29C 8FBF0020 */ lw $ra, 0x20($sp) +/* 3D89C0 E00DE2A0 03E00008 */ jr $ra +/* 3D89C4 E00DE2A4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3D8720/func_E00DE2A8.s b/asm/nonmatchings/code_3D8720/func_E00DE2A8.s new file mode 100644 index 0000000000..cdd5064350 --- /dev/null +++ b/asm/nonmatchings/code_3D8720/func_E00DE2A8.s @@ -0,0 +1,356 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00DE2A8 +/* 3D89C8 E00DE2A8 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 3D89CC E00DE2AC 0080302D */ daddu $a2, $a0, $zero +/* 3D89D0 E00DE2B0 3C07DB06 */ lui $a3, 0xdb06 +/* 3D89D4 E00DE2B4 34E70024 */ ori $a3, $a3, 0x24 +/* 3D89D8 E00DE2B8 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D89DC E00DE2BC AFB400B0 */ sw $s4, 0xb0($sp) +/* 3D89E0 E00DE2C0 3C140001 */ lui $s4, 1 +/* 3D89E4 E00DE2C4 AFB200A8 */ sw $s2, 0xa8($sp) +/* 3D89E8 E00DE2C8 3C12800A */ lui $s2, %hi(D_8009A66C) +/* 3D89EC E00DE2CC 2652A66C */ addiu $s2, $s2, %lo(D_8009A66C) +/* 3D89F0 E00DE2D0 36941630 */ ori $s4, $s4, 0x1630 +/* 3D89F4 E00DE2D4 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 3D89F8 E00DE2D8 AFBE00C0 */ sw $fp, 0xc0($sp) +/* 3D89FC E00DE2DC AFB700BC */ sw $s7, 0xbc($sp) +/* 3D8A00 E00DE2E0 AFB600B8 */ sw $s6, 0xb8($sp) +/* 3D8A04 E00DE2E4 AFB500B4 */ sw $s5, 0xb4($sp) +/* 3D8A08 E00DE2E8 AFB300AC */ sw $s3, 0xac($sp) +/* 3D8A0C E00DE2EC AFB100A4 */ sw $s1, 0xa4($sp) +/* 3D8A10 E00DE2F0 AFB000A0 */ sw $s0, 0xa0($sp) +/* 3D8A14 E00DE2F4 8E430000 */ lw $v1, ($s2) +/* 3D8A18 E00DE2F8 8CD6000C */ lw $s6, 0xc($a2) +/* 3D8A1C E00DE2FC 0060282D */ daddu $a1, $v1, $zero +/* 3D8A20 E00DE300 24630008 */ addiu $v1, $v1, 8 +/* 3D8A24 E00DE304 AE430000 */ sw $v1, ($s2) +/* 3D8A28 E00DE308 8EDE0014 */ lw $fp, 0x14($s6) +/* 3D8A2C E00DE30C 8ED50024 */ lw $s5, 0x24($s6) +/* 3D8A30 E00DE310 8ED70000 */ lw $s7, ($s6) +/* 3D8A34 E00DE314 3C02E700 */ lui $v0, 0xe700 +/* 3D8A38 E00DE318 ACA20000 */ sw $v0, ($a1) +/* 3D8A3C E00DE31C ACA00004 */ sw $zero, 4($a1) +/* 3D8A40 E00DE320 AC670000 */ sw $a3, ($v1) +/* 3D8A44 E00DE324 8CC50010 */ lw $a1, 0x10($a2) +/* 3D8A48 E00DE328 24620008 */ addiu $v0, $v1, 8 +/* 3D8A4C E00DE32C AE420000 */ sw $v0, ($s2) +/* 3D8A50 E00DE330 8CA2001C */ lw $v0, 0x1c($a1) +/* 3D8A54 E00DE334 3C0A8000 */ lui $t2, 0x8000 +/* 3D8A58 E00DE338 004A1021 */ addu $v0, $v0, $t2 +/* 3D8A5C E00DE33C AC620004 */ sw $v0, 4($v1) +/* 3D8A60 E00DE340 3C03800B */ lui $v1, %hi(gCameras) +/* 3D8A64 E00DE344 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3D8A68 E00DE348 8EC50004 */ lw $a1, 4($s6) +/* 3D8A6C E00DE34C 8EC60008 */ lw $a2, 8($s6) +/* 3D8A70 E00DE350 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3D8A74 E00DE354 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3D8A78 E00DE358 8EC7000C */ lw $a3, 0xc($s6) +/* 3D8A7C E00DE35C 00028080 */ sll $s0, $v0, 2 +/* 3D8A80 E00DE360 02028021 */ addu $s0, $s0, $v0 +/* 3D8A84 E00DE364 00108080 */ sll $s0, $s0, 2 +/* 3D8A88 E00DE368 02028023 */ subu $s0, $s0, $v0 +/* 3D8A8C E00DE36C 001010C0 */ sll $v0, $s0, 3 +/* 3D8A90 E00DE370 02028021 */ addu $s0, $s0, $v0 +/* 3D8A94 E00DE374 001080C0 */ sll $s0, $s0, 3 +/* 3D8A98 E00DE378 0C080108 */ jal func_E0200420 +/* 3D8A9C E00DE37C 02038021 */ addu $s0, $s0, $v1 +/* 3D8AA0 E00DE380 27B10060 */ addiu $s1, $sp, 0x60 +/* 3D8AA4 E00DE384 8EC50040 */ lw $a1, 0x40($s6) +/* 3D8AA8 E00DE388 0220202D */ daddu $a0, $s1, $zero +/* 3D8AAC E00DE38C 00A0302D */ daddu $a2, $a1, $zero +/* 3D8AB0 E00DE390 0C080110 */ jal func_E0200440 +/* 3D8AB4 E00DE394 00A0382D */ daddu $a3, $a1, $zero +/* 3D8AB8 E00DE398 0220202D */ daddu $a0, $s1, $zero +/* 3D8ABC E00DE39C 27A50020 */ addiu $a1, $sp, 0x20 +/* 3D8AC0 E00DE3A0 0C080114 */ jal func_E0200450 +/* 3D8AC4 E00DE3A4 00A0302D */ daddu $a2, $a1, $zero +/* 3D8AC8 E00DE3A8 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D8ACC E00DE3AC 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3D8AD0 E00DE3B0 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3D8AD4 E00DE3B4 3C13800A */ lui $s3, %hi(D_8009A674) +/* 3D8AD8 E00DE3B8 2673A674 */ addiu $s3, $s3, %lo(D_8009A674) +/* 3D8ADC E00DE3BC 96250000 */ lhu $a1, ($s1) +/* 3D8AE0 E00DE3C0 8E620000 */ lw $v0, ($s3) +/* 3D8AE4 E00DE3C4 00052980 */ sll $a1, $a1, 6 +/* 3D8AE8 E00DE3C8 00B42821 */ addu $a1, $a1, $s4 +/* 3D8AEC E00DE3CC 0C080118 */ jal func_E0200460 +/* 3D8AF0 E00DE3D0 00452821 */ addu $a1, $v0, $a1 +/* 3D8AF4 E00DE3D4 3C03DA38 */ lui $v1, 0xda38 +/* 3D8AF8 E00DE3D8 34630002 */ ori $v1, $v1, 2 +/* 3D8AFC E00DE3DC 3C06DA38 */ lui $a2, 0xda38 +/* 3D8B00 E00DE3E0 34C60001 */ ori $a2, $a2, 1 +/* 3D8B04 E00DE3E4 44950000 */ mtc1 $s5, $f0 +/* 3D8B08 E00DE3E8 00000000 */ nop +/* 3D8B0C E00DE3EC 46800021 */ cvt.d.w $f0, $f0 +/* 3D8B10 E00DE3F0 8E440000 */ lw $a0, ($s2) +/* 3D8B14 E00DE3F4 96220000 */ lhu $v0, ($s1) +/* 3D8B18 E00DE3F8 3C013FE0 */ lui $at, 0x3fe0 +/* 3D8B1C E00DE3FC 44811800 */ mtc1 $at, $f3 +/* 3D8B20 E00DE400 44801000 */ mtc1 $zero, $f2 +/* 3D8B24 E00DE404 0080282D */ daddu $a1, $a0, $zero +/* 3D8B28 E00DE408 24840008 */ addiu $a0, $a0, 8 +/* 3D8B2C E00DE40C AE440000 */ sw $a0, ($s2) +/* 3D8B30 E00DE410 ACA30000 */ sw $v1, ($a1) +/* 3D8B34 E00DE414 24430001 */ addiu $v1, $v0, 1 +/* 3D8B38 E00DE418 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D8B3C E00DE41C 00021180 */ sll $v0, $v0, 6 +/* 3D8B40 E00DE420 00541021 */ addu $v0, $v0, $s4 +/* 3D8B44 E00DE424 2487000C */ addiu $a3, $a0, 0xc +/* 3D8B48 E00DE428 46220002 */ mul.d $f0, $f0, $f2 +/* 3D8B4C E00DE42C 00000000 */ nop +/* 3D8B50 E00DE430 A6230000 */ sh $v1, ($s1) +/* 3D8B54 E00DE434 8E630000 */ lw $v1, ($s3) +/* 3D8B58 E00DE438 3C0141E0 */ lui $at, 0x41e0 +/* 3D8B5C E00DE43C 44811800 */ mtc1 $at, $f3 +/* 3D8B60 E00DE440 44801000 */ mtc1 $zero, $f2 +/* 3D8B64 E00DE444 00621821 */ addu $v1, $v1, $v0 +/* 3D8B68 E00DE448 24820008 */ addiu $v0, $a0, 8 +/* 3D8B6C E00DE44C ACA30004 */ sw $v1, 4($a1) +/* 3D8B70 E00DE450 AE420000 */ sw $v0, ($s2) +/* 3D8B74 E00DE454 24820010 */ addiu $v0, $a0, 0x10 +/* 3D8B78 E00DE458 AC860000 */ sw $a2, ($a0) +/* 3D8B7C E00DE45C AE420000 */ sw $v0, ($s2) +/* 3D8B80 E00DE460 8E030204 */ lw $v1, 0x204($s0) +/* 3D8B84 E00DE464 3C02FA00 */ lui $v0, 0xfa00 +/* 3D8B88 E00DE468 AC820008 */ sw $v0, 8($a0) +/* 3D8B8C E00DE46C AC830004 */ sw $v1, 4($a0) +/* 3D8B90 E00DE470 92C4001B */ lbu $a0, 0x1b($s6) +/* 3D8B94 E00DE474 92C2001F */ lbu $v0, 0x1f($s6) +/* 3D8B98 E00DE478 92C30023 */ lbu $v1, 0x23($s6) +/* 3D8B9C E00DE47C 00042600 */ sll $a0, $a0, 0x18 +/* 3D8BA0 E00DE480 00021400 */ sll $v0, $v0, 0x10 +/* 3D8BA4 E00DE484 00822025 */ or $a0, $a0, $v0 +/* 3D8BA8 E00DE488 00031A00 */ sll $v1, $v1, 8 +/* 3D8BAC E00DE48C 4620103E */ c.le.d $f2, $f0 +/* 3D8BB0 E00DE490 00000000 */ nop +/* 3D8BB4 E00DE494 45010005 */ bc1t .LE00DE4AC +/* 3D8BB8 E00DE498 00832025 */ or $a0, $a0, $v1 +/* 3D8BBC E00DE49C 4620010D */ trunc.w.d $f4, $f0 +/* 3D8BC0 E00DE4A0 44022000 */ mfc1 $v0, $f4 +/* 3D8BC4 E00DE4A4 08037931 */ j .LE00DE4C4 +/* 3D8BC8 E00DE4A8 3C05E300 */ lui $a1, 0xe300 +.LE00DE4AC: +/* 3D8BCC E00DE4AC 46220001 */ sub.d $f0, $f0, $f2 +/* 3D8BD0 E00DE4B0 4620010D */ trunc.w.d $f4, $f0 +/* 3D8BD4 E00DE4B4 44022000 */ mfc1 $v0, $f4 +/* 3D8BD8 E00DE4B8 3C0A8000 */ lui $t2, 0x8000 +/* 3D8BDC E00DE4BC 004A1025 */ or $v0, $v0, $t2 +/* 3D8BE0 E00DE4C0 3C05E300 */ lui $a1, 0xe300 +.LE00DE4C4: +/* 3D8BE4 E00DE4C4 34A51A01 */ ori $a1, $a1, 0x1a01 +/* 3D8BE8 E00DE4C8 03C0302D */ daddu $a2, $fp, $zero +/* 3D8BEC E00DE4CC 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 3D8BF0 E00DE4D0 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 3D8BF4 E00DE4D4 304200FF */ andi $v0, $v0, 0xff +/* 3D8BF8 E00DE4D8 8E830000 */ lw $v1, ($s4) +/* 3D8BFC E00DE4DC 00821025 */ or $v0, $a0, $v0 +/* 3D8C00 E00DE4E0 ACE20000 */ sw $v0, ($a3) +/* 3D8C04 E00DE4E4 24020020 */ addiu $v0, $zero, 0x20 +/* 3D8C08 E00DE4E8 0060202D */ daddu $a0, $v1, $zero +/* 3D8C0C E00DE4EC 24630008 */ addiu $v1, $v1, 8 +/* 3D8C10 E00DE4F0 AE830000 */ sw $v1, ($s4) +/* 3D8C14 E00DE4F4 AC820004 */ sw $v0, 4($a0) +/* 3D8C18 E00DE4F8 3C02DE00 */ lui $v0, 0xde00 +/* 3D8C1C E00DE4FC AC850000 */ sw $a1, ($a0) +/* 3D8C20 E00DE500 AC620000 */ sw $v0, ($v1) +/* 3D8C24 E00DE504 00171080 */ sll $v0, $s7, 2 +/* 3D8C28 E00DE508 3C04E00E */ lui $a0, %hi(D_E00DE84C) +/* 3D8C2C E00DE50C 00822021 */ addu $a0, $a0, $v0 +/* 3D8C30 E00DE510 8C84E84C */ lw $a0, %lo(D_E00DE84C)($a0) +/* 3D8C34 E00DE514 24620008 */ addiu $v0, $v1, 8 +/* 3D8C38 E00DE518 AE820000 */ sw $v0, ($s4) +/* 3D8C3C E00DE51C 28C2001E */ slti $v0, $a2, 0x1e +/* 3D8C40 E00DE520 14400002 */ bnez $v0, .LE00DE52C +/* 3D8C44 E00DE524 AC640004 */ sw $a0, 4($v1) +/* 3D8C48 E00DE528 2406001D */ addiu $a2, $zero, 0x1d +.LE00DE52C: +/* 3D8C4C E00DE52C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D8C50 E00DE530 3C130001 */ lui $s3, 1 +/* 3D8C54 E00DE534 00178100 */ sll $s0, $s7, 4 +/* 3D8C58 E00DE538 02178023 */ subu $s0, $s0, $s7 +/* 3D8C5C E00DE53C 00108040 */ sll $s0, $s0, 1 +/* 3D8C60 E00DE540 00D08021 */ addu $s0, $a2, $s0 +/* 3D8C64 E00DE544 36731630 */ ori $s3, $s3, 0x1630 +/* 3D8C68 E00DE548 3C02E00E */ lui $v0, %hi(D_E00DE96C) +/* 3D8C6C E00DE54C 00501021 */ addu $v0, $v0, $s0 +/* 3D8C70 E00DE550 9042E96C */ lbu $v0, %lo(D_E00DE96C)($v0) +/* 3D8C74 E00DE554 44801000 */ mtc1 $zero, $f2 +/* 3D8C78 E00DE558 44820000 */ mtc1 $v0, $f0 +/* 3D8C7C E00DE55C 00000000 */ nop +/* 3D8C80 E00DE560 46800020 */ cvt.s.w $f0, $f0 +/* 3D8C84 E00DE564 46000007 */ neg.s $f0, $f0 +/* 3D8C88 E00DE568 44070000 */ mfc1 $a3, $f0 +/* 3D8C8C E00DE56C 44051000 */ mfc1 $a1, $f2 +/* 3D8C90 E00DE570 3C02E00E */ lui $v0, %hi(D_E00DE8B4) +/* 3D8C94 E00DE574 00501021 */ addu $v0, $v0, $s0 +/* 3D8C98 E00DE578 9042E8B4 */ lbu $v0, %lo(D_E00DE8B4)($v0) +/* 3D8C9C E00DE57C 3C013C23 */ lui $at, 0x3c23 +/* 3D8CA0 E00DE580 3421D70A */ ori $at, $at, 0xd70a +/* 3D8CA4 E00DE584 44810000 */ mtc1 $at, $f0 +/* 3D8CA8 E00DE588 00A0302D */ daddu $a2, $a1, $zero +/* 3D8CAC E00DE58C 44821000 */ mtc1 $v0, $f2 +/* 3D8CB0 E00DE590 00000000 */ nop +/* 3D8CB4 E00DE594 468010A0 */ cvt.s.w $f2, $f2 +/* 3D8CB8 E00DE598 3C02E00E */ lui $v0, %hi(D_E00DE858) +/* 3D8CBC E00DE59C 00501021 */ addu $v0, $v0, $s0 +/* 3D8CC0 E00DE5A0 8042E858 */ lb $v0, %lo(D_E00DE858)($v0) +/* 3D8CC4 E00DE5A4 46001082 */ mul.s $f2, $f2, $f0 +/* 3D8CC8 E00DE5A8 00000000 */ nop +/* 3D8CCC E00DE5AC AFA50018 */ sw $a1, 0x18($sp) +/* 3D8CD0 E00DE5B0 AFA5001C */ sw $a1, 0x1c($sp) +/* 3D8CD4 E00DE5B4 44820000 */ mtc1 $v0, $f0 +/* 3D8CD8 E00DE5B8 00000000 */ nop +/* 3D8CDC E00DE5BC 46800020 */ cvt.s.w $f0, $f0 +/* 3D8CE0 E00DE5C0 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3D8CE4 E00DE5C4 0C080180 */ jal func_E0200600 +/* 3D8CE8 E00DE5C8 E7A20010 */ swc1 $f2, 0x10($sp) +/* 3D8CEC E00DE5CC 27A40020 */ addiu $a0, $sp, 0x20 +/* 3D8CF0 E00DE5D0 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3D8CF4 E00DE5D4 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3D8CF8 E00DE5D8 3C12800A */ lui $s2, %hi(D_8009A674) +/* 3D8CFC E00DE5DC 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 3D8D00 E00DE5E0 96250000 */ lhu $a1, ($s1) +/* 3D8D04 E00DE5E4 8E420000 */ lw $v0, ($s2) +/* 3D8D08 E00DE5E8 00052980 */ sll $a1, $a1, 6 +/* 3D8D0C E00DE5EC 00B32821 */ addu $a1, $a1, $s3 +/* 3D8D10 E00DE5F0 0C080118 */ jal func_E0200460 +/* 3D8D14 E00DE5F4 00452821 */ addu $a1, $v0, $a1 +/* 3D8D18 E00DE5F8 8E850000 */ lw $a1, ($s4) +/* 3D8D1C E00DE5FC 00A0202D */ daddu $a0, $a1, $zero +/* 3D8D20 E00DE600 24A50008 */ addiu $a1, $a1, 8 +/* 3D8D24 E00DE604 AE850000 */ sw $a1, ($s4) +/* 3D8D28 E00DE608 96220000 */ lhu $v0, ($s1) +/* 3D8D2C E00DE60C 3C03DA38 */ lui $v1, 0xda38 +/* 3D8D30 E00DE610 AC830000 */ sw $v1, ($a0) +/* 3D8D34 E00DE614 24430001 */ addiu $v1, $v0, 1 +/* 3D8D38 E00DE618 3042FFFF */ andi $v0, $v0, 0xffff +/* 3D8D3C E00DE61C 00021180 */ sll $v0, $v0, 6 +/* 3D8D40 E00DE620 A6230000 */ sh $v1, ($s1) +/* 3D8D44 E00DE624 8E430000 */ lw $v1, ($s2) +/* 3D8D48 E00DE628 00531021 */ addu $v0, $v0, $s3 +/* 3D8D4C E00DE62C 00621821 */ addu $v1, $v1, $v0 +/* 3D8D50 E00DE630 AC830004 */ sw $v1, 4($a0) +/* 3D8D54 E00DE634 3C02E00E */ lui $v0, %hi(D_E00DE910) +/* 3D8D58 E00DE638 00501021 */ addu $v0, $v0, $s0 +/* 3D8D5C E00DE63C 9042E910 */ lbu $v0, %lo(D_E00DE910)($v0) +/* 3D8D60 E00DE640 3C0140A0 */ lui $at, 0x40a0 +/* 3D8D64 E00DE644 44811000 */ mtc1 $at, $f2 +/* 3D8D68 E00DE648 44820000 */ mtc1 $v0, $f0 +/* 3D8D6C E00DE64C 00000000 */ nop +/* 3D8D70 E00DE650 46800020 */ cvt.s.w $f0, $f0 +/* 3D8D74 E00DE654 46020002 */ mul.s $f0, $f0, $f2 +/* 3D8D78 E00DE658 00000000 */ nop +/* 3D8D7C E00DE65C 3C013B80 */ lui $at, 0x3b80 +/* 3D8D80 E00DE660 44811000 */ mtc1 $at, $f2 +/* 3D8D84 E00DE664 00000000 */ nop +/* 3D8D88 E00DE668 46020002 */ mul.s $f0, $f0, $f2 +/* 3D8D8C E00DE66C 00000000 */ nop +/* 3D8D90 E00DE670 4600010D */ trunc.w.s $f4, $f0 +/* 3D8D94 E00DE674 44082000 */ mfc1 $t0, $f4 +/* 3D8D98 E00DE678 00000000 */ nop +/* 3D8D9C E00DE67C 44881000 */ mtc1 $t0, $f2 +/* 3D8DA0 E00DE680 00000000 */ nop +/* 3D8DA4 E00DE684 468010A0 */ cvt.s.w $f2, $f2 +/* 3D8DA8 E00DE688 46020001 */ sub.s $f0, $f0, $f2 +/* 3D8DAC E00DE68C 3C014380 */ lui $at, 0x4380 +/* 3D8DB0 E00DE690 44811000 */ mtc1 $at, $f2 +/* 3D8DB4 E00DE694 00000000 */ nop +/* 3D8DB8 E00DE698 46020002 */ mul.s $f0, $f0, $f2 +/* 3D8DBC E00DE69C 00000000 */ nop +/* 3D8DC0 E00DE6A0 29020004 */ slti $v0, $t0, 4 +/* 3D8DC4 E00DE6A4 38430001 */ xori $v1, $v0, 1 +/* 3D8DC8 E00DE6A8 29020005 */ slti $v0, $t0, 5 +/* 3D8DCC E00DE6AC 4600010D */ trunc.w.s $f4, $f0 +/* 3D8DD0 E00DE6B0 44092000 */ mfc1 $t1, $f4 +/* 3D8DD4 E00DE6B4 1040002F */ beqz $v0, .LE00DE774 +/* 3D8DD8 E00DE6B8 3C06D838 */ lui $a2, 0xd838 +/* 3D8DDC E00DE6BC 10600006 */ beqz $v1, .LE00DE6D8 +/* 3D8DE0 E00DE6C0 24A20008 */ addiu $v0, $a1, 8 +/* 3D8DE4 E00DE6C4 AE820000 */ sw $v0, ($s4) +/* 3D8DE8 E00DE6C8 3C02F200 */ lui $v0, 0xf200 +/* 3D8DEC E00DE6CC ACA20000 */ sw $v0, ($a1) +/* 3D8DF0 E00DE6D0 080379BC */ j .LE00DE6F0 +/* 3D8DF4 E00DE6D4 3C020100 */ lui $v0, 0x100 +.LE00DE6D8: +/* 3D8DF8 E00DE6D8 3C020107 */ lui $v0, 0x107 +/* 3D8DFC E00DE6DC 3442C1FC */ ori $v0, $v0, 0xc1fc +/* 3D8E00 E00DE6E0 24A30008 */ addiu $v1, $a1, 8 +/* 3D8E04 E00DE6E4 AE830000 */ sw $v1, ($s4) +/* 3D8E08 E00DE6E8 3C03F200 */ lui $v1, 0xf200 +/* 3D8E0C E00DE6EC ACA30000 */ sw $v1, ($a1) +.LE00DE6F0: +/* 3D8E10 E00DE6F0 ACA20004 */ sw $v0, 4($a1) +/* 3D8E14 E00DE6F4 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 3D8E18 E00DE6F8 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 3D8E1C E00DE6FC 8CC50000 */ lw $a1, ($a2) +/* 3D8E20 E00DE700 3C02FB00 */ lui $v0, 0xfb00 +/* 3D8E24 E00DE704 00A0382D */ daddu $a3, $a1, $zero +/* 3D8E28 E00DE708 24A50008 */ addiu $a1, $a1, 8 +/* 3D8E2C E00DE70C ACC50000 */ sw $a1, ($a2) +/* 3D8E30 E00DE710 ACE20000 */ sw $v0, ($a3) +/* 3D8E34 E00DE714 92C2002B */ lbu $v0, 0x2b($s6) +/* 3D8E38 E00DE718 92C4002F */ lbu $a0, 0x2f($s6) +/* 3D8E3C E00DE71C 92C30033 */ lbu $v1, 0x33($s6) +/* 3D8E40 E00DE720 00021600 */ sll $v0, $v0, 0x18 +/* 3D8E44 E00DE724 00042400 */ sll $a0, $a0, 0x10 +/* 3D8E48 E00DE728 00441025 */ or $v0, $v0, $a0 +/* 3D8E4C E00DE72C 00031A00 */ sll $v1, $v1, 8 +/* 3D8E50 E00DE730 00431025 */ or $v0, $v0, $v1 +/* 3D8E54 E00DE734 312300FF */ andi $v1, $t1, 0xff +/* 3D8E58 E00DE738 00431025 */ or $v0, $v0, $v1 +/* 3D8E5C E00DE73C ACE20004 */ sw $v0, 4($a3) +/* 3D8E60 E00DE740 3C02DE00 */ lui $v0, 0xde00 +/* 3D8E64 E00DE744 ACA20000 */ sw $v0, ($a1) +/* 3D8E68 E00DE748 00171080 */ sll $v0, $s7, 2 +/* 3D8E6C E00DE74C 00571021 */ addu $v0, $v0, $s7 +/* 3D8E70 E00DE750 00481021 */ addu $v0, $v0, $t0 +/* 3D8E74 E00DE754 00021080 */ sll $v0, $v0, 2 +/* 3D8E78 E00DE758 3C03E00E */ lui $v1, %hi(D_E00DE810) +/* 3D8E7C E00DE75C 00621821 */ addu $v1, $v1, $v0 +/* 3D8E80 E00DE760 8C63E810 */ lw $v1, %lo(D_E00DE810)($v1) +/* 3D8E84 E00DE764 24A20008 */ addiu $v0, $a1, 8 +/* 3D8E88 E00DE768 ACC20000 */ sw $v0, ($a2) +/* 3D8E8C E00DE76C ACA30004 */ sw $v1, 4($a1) +/* 3D8E90 E00DE770 3C06D838 */ lui $a2, 0xd838 +.LE00DE774: +/* 3D8E94 E00DE774 34C60002 */ ori $a2, $a2, 2 +/* 3D8E98 E00DE778 3C07E300 */ lui $a3, 0xe300 +/* 3D8E9C E00DE77C 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 3D8EA0 E00DE780 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 3D8EA4 E00DE784 34E71A01 */ ori $a3, $a3, 0x1a01 +/* 3D8EA8 E00DE788 8C820000 */ lw $v0, ($a0) +/* 3D8EAC E00DE78C 24050040 */ addiu $a1, $zero, 0x40 +/* 3D8EB0 E00DE790 0040182D */ daddu $v1, $v0, $zero +/* 3D8EB4 E00DE794 24420008 */ addiu $v0, $v0, 8 +/* 3D8EB8 E00DE798 AC820000 */ sw $v0, ($a0) +/* 3D8EBC E00DE79C AC660000 */ sw $a2, ($v1) +/* 3D8EC0 E00DE7A0 AC650004 */ sw $a1, 4($v1) +/* 3D8EC4 E00DE7A4 24430008 */ addiu $v1, $v0, 8 +/* 3D8EC8 E00DE7A8 AC830000 */ sw $v1, ($a0) +/* 3D8ECC E00DE7AC 24430010 */ addiu $v1, $v0, 0x10 +/* 3D8ED0 E00DE7B0 AC460000 */ sw $a2, ($v0) +/* 3D8ED4 E00DE7B4 AC450004 */ sw $a1, 4($v0) +/* 3D8ED8 E00DE7B8 AC830000 */ sw $v1, ($a0) +/* 3D8EDC E00DE7BC 24030030 */ addiu $v1, $zero, 0x30 +/* 3D8EE0 E00DE7C0 AC43000C */ sw $v1, 0xc($v0) +/* 3D8EE4 E00DE7C4 24430018 */ addiu $v1, $v0, 0x18 +/* 3D8EE8 E00DE7C8 AC470008 */ sw $a3, 8($v0) +/* 3D8EEC E00DE7CC AC830000 */ sw $v1, ($a0) +/* 3D8EF0 E00DE7D0 3C03E700 */ lui $v1, 0xe700 +/* 3D8EF4 E00DE7D4 AC430010 */ sw $v1, 0x10($v0) +/* 3D8EF8 E00DE7D8 AC400014 */ sw $zero, 0x14($v0) +/* 3D8EFC E00DE7DC 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 3D8F00 E00DE7E0 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 3D8F04 E00DE7E4 8FB700BC */ lw $s7, 0xbc($sp) +/* 3D8F08 E00DE7E8 8FB600B8 */ lw $s6, 0xb8($sp) +/* 3D8F0C E00DE7EC 8FB500B4 */ lw $s5, 0xb4($sp) +/* 3D8F10 E00DE7F0 8FB400B0 */ lw $s4, 0xb0($sp) +/* 3D8F14 E00DE7F4 8FB300AC */ lw $s3, 0xac($sp) +/* 3D8F18 E00DE7F8 8FB200A8 */ lw $s2, 0xa8($sp) +/* 3D8F1C E00DE7FC 8FB100A4 */ lw $s1, 0xa4($sp) +/* 3D8F20 E00DE800 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3D8F24 E00DE804 03E00008 */ jr $ra +/* 3D8F28 E00DE808 27BD00C8 */ addiu $sp, $sp, 0xc8 +/* 3D8F2C E00DE80C 00000000 */ nop diff --git a/asm/nonmatchings/code_3DB460/func_E00E0000.s b/asm/nonmatchings/code_3DB460/func_E00E0000.s new file mode 100644 index 0000000000..fc1c395311 --- /dev/null +++ b/asm/nonmatchings/code_3DB460/func_E00E0000.s @@ -0,0 +1,126 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E0000 +/* 3DB460 E00E0000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3DB464 E00E0004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3DB468 E00E0008 4485A000 */ mtc1 $a1, $f20 +/* 3DB46C E00E000C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3DB470 E00E0010 4486B000 */ mtc1 $a2, $f22 +/* 3DB474 E00E0014 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3DB478 E00E0018 4487C000 */ mtc1 $a3, $f24 +/* 3DB47C E00E001C AFB30034 */ sw $s3, 0x34($sp) +/* 3DB480 E00E0020 0080982D */ daddu $s3, $a0, $zero +/* 3DB484 E00E0024 AFB00028 */ sw $s0, 0x28($sp) +/* 3DB488 E00E0028 8FB00074 */ lw $s0, 0x74($sp) +/* 3DB48C E00E002C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DB490 E00E0030 AFB20030 */ sw $s2, 0x30($sp) +/* 3DB494 E00E0034 8FB20078 */ lw $s2, 0x78($sp) +/* 3DB498 E00E0038 3C02E00E */ lui $v0, %hi(D_E00E01D0) +/* 3DB49C E00E003C 244201D0 */ addiu $v0, $v0, %lo(D_E00E01D0) +/* 3DB4A0 E00E0040 AFA20018 */ sw $v0, 0x18($sp) +/* 3DB4A4 E00E0044 3C02E00E */ lui $v0, %hi(D_E00E01D8) +/* 3DB4A8 E00E0048 244201D8 */ addiu $v0, $v0, %lo(D_E00E01D8) +/* 3DB4AC E00E004C AFA2001C */ sw $v0, 0x1c($sp) +/* 3DB4B0 E00E0050 3C02E00E */ lui $v0, %hi(D_E00E05B0) +/* 3DB4B4 E00E0054 244205B0 */ addiu $v0, $v0, %lo(D_E00E05B0) +/* 3DB4B8 E00E0058 AFA20020 */ sw $v0, 0x20($sp) +/* 3DB4BC E00E005C 24020070 */ addiu $v0, $zero, 0x70 +/* 3DB4C0 E00E0060 AFBF0038 */ sw $ra, 0x38($sp) +/* 3DB4C4 E00E0064 AFB1002C */ sw $s1, 0x2c($sp) +/* 3DB4C8 E00E0068 AFA00010 */ sw $zero, 0x10($sp) +/* 3DB4CC E00E006C AFA00024 */ sw $zero, 0x24($sp) +/* 3DB4D0 E00E0070 AFA20014 */ sw $v0, 0x14($sp) +/* 3DB4D4 E00E0074 0C080124 */ jal func_E0200490 +/* 3DB4D8 E00E0078 26100001 */ addiu $s0, $s0, 1 +/* 3DB4DC E00E007C 001020C0 */ sll $a0, $s0, 3 +/* 3DB4E0 E00E0080 00902023 */ subu $a0, $a0, $s0 +/* 3DB4E4 E00E0084 00042100 */ sll $a0, $a0, 4 +/* 3DB4E8 E00E0088 0040882D */ daddu $s1, $v0, $zero +/* 3DB4EC E00E008C 0C08012C */ jal func_E02004B0 +/* 3DB4F0 E00E0090 AE300008 */ sw $s0, 8($s1) +/* 3DB4F4 E00E0094 0040202D */ daddu $a0, $v0, $zero +/* 3DB4F8 E00E0098 14800003 */ bnez $a0, .LE00E00A8 +/* 3DB4FC E00E009C AE24000C */ sw $a0, 0xc($s1) +.LE00E00A0: +/* 3DB500 E00E00A0 08038028 */ j .LE00E00A0 +/* 3DB504 E00E00A4 00000000 */ nop +.LE00E00A8: +/* 3DB508 E00E00A8 AC930000 */ sw $s3, ($a0) +/* 3DB50C E00E00AC 1E400004 */ bgtz $s2, .LE00E00C0 +/* 3DB510 E00E00B0 AC80001C */ sw $zero, 0x1c($a0) +/* 3DB514 E00E00B4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3DB518 E00E00B8 08038031 */ j .LE00E00C4 +/* 3DB51C E00E00BC AC820018 */ sw $v0, 0x18($a0) +.LE00E00C0: +/* 3DB520 E00E00C0 AC920018 */ sw $s2, 0x18($a0) +.LE00E00C4: +/* 3DB524 E00E00C4 AC80002C */ sw $zero, 0x2c($a0) +/* 3DB528 E00E00C8 E4940004 */ swc1 $f20, 4($a0) +/* 3DB52C E00E00CC E4960008 */ swc1 $f22, 8($a0) +/* 3DB530 E00E00D0 E498000C */ swc1 $f24, 0xc($a0) +/* 3DB534 E00E00D4 C7A00070 */ lwc1 $f0, 0x70($sp) +/* 3DB538 E00E00D8 3C0141F0 */ lui $at, 0x41f0 +/* 3DB53C E00E00DC 44811000 */ mtc1 $at, $f2 +/* 3DB540 E00E00E0 E4800040 */ swc1 $f0, 0x40($a0) +/* 3DB544 E00E00E4 C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3DB548 E00E00E8 E4800010 */ swc1 $f0, 0x10($a0) +/* 3DB54C E00E00EC C7A0006C */ lwc1 $f0, 0x6c($sp) +/* 3DB550 E00E00F0 E4800014 */ swc1 $f0, 0x14($a0) +/* 3DB554 E00E00F4 C7A0007C */ lwc1 $f0, 0x7c($sp) +/* 3DB558 E00E00F8 2403007F */ addiu $v1, $zero, 0x7f +/* 3DB55C E00E00FC E4800068 */ swc1 $f0, 0x68($a0) +/* 3DB560 E00E0100 C7A00080 */ lwc1 $f0, 0x80($sp) +/* 3DB564 E00E0104 2602FFFF */ addiu $v0, $s0, -1 +/* 3DB568 E00E0108 AC830020 */ sw $v1, 0x20($a0) +/* 3DB56C E00E010C AC830030 */ sw $v1, 0x30($a0) +/* 3DB570 E00E0110 AC830034 */ sw $v1, 0x34($a0) +/* 3DB574 E00E0114 24030001 */ addiu $v1, $zero, 1 +/* 3DB578 E00E0118 E480006C */ swc1 $f0, 0x6c($a0) +/* 3DB57C E00E011C 44820000 */ mtc1 $v0, $f0 +/* 3DB580 E00E0120 00000000 */ nop +/* 3DB584 E00E0124 46800020 */ cvt.s.w $f0, $f0 +/* 3DB588 E00E0128 46001083 */ div.s $f2, $f2, $f0 +/* 3DB58C E00E012C 3C013FE0 */ lui $at, 0x3fe0 +/* 3DB590 E00E0130 44810800 */ mtc1 $at, $f1 +/* 3DB594 E00E0134 44800000 */ mtc1 $zero, $f0 +/* 3DB598 E00E0138 460010A1 */ cvt.d.s $f2, $f2 +/* 3DB59C E00E013C 46201082 */ mul.d $f2, $f2, $f0 +/* 3DB5A0 E00E0140 00000000 */ nop +/* 3DB5A4 E00E0144 AC800024 */ sw $zero, 0x24($a0) +/* 3DB5A8 E00E0148 AC800028 */ sw $zero, 0x28($a0) +/* 3DB5AC E00E014C AC800038 */ sw $zero, 0x38($a0) +/* 3DB5B0 E00E0150 240200FF */ addiu $v0, $zero, 0xff +/* 3DB5B4 E00E0154 AC82003C */ sw $v0, 0x3c($a0) +/* 3DB5B8 E00E0158 24840070 */ addiu $a0, $a0, 0x70 +/* 3DB5BC E00E015C 0070102A */ slt $v0, $v1, $s0 +/* 3DB5C0 E00E0160 10400010 */ beqz $v0, .LE00E01A4 +/* 3DB5C4 E00E0164 462010A0 */ cvt.s.d $f2, $f2 +.LE00E0168: +/* 3DB5C8 E00E0168 44830000 */ mtc1 $v1, $f0 +/* 3DB5CC E00E016C 00000000 */ nop +/* 3DB5D0 E00E0170 46800020 */ cvt.s.w $f0, $f0 +/* 3DB5D4 E00E0174 46000007 */ neg.s $f0, $f0 +/* 3DB5D8 E00E0178 46020002 */ mul.s $f0, $f0, $f2 +/* 3DB5DC E00E017C 00000000 */ nop +/* 3DB5E0 E00E0180 24630001 */ addiu $v1, $v1, 1 +/* 3DB5E4 E00E0184 4600010D */ trunc.w.s $f4, $f0 +/* 3DB5E8 E00E0188 44022000 */ mfc1 $v0, $f4 +/* 3DB5EC E00E018C 00000000 */ nop +/* 3DB5F0 E00E0190 2442FFFF */ addiu $v0, $v0, -1 +/* 3DB5F4 E00E0194 AC820064 */ sw $v0, 0x64($a0) +/* 3DB5F8 E00E0198 0070102A */ slt $v0, $v1, $s0 +/* 3DB5FC E00E019C 1440FFF2 */ bnez $v0, .LE00E0168 +/* 3DB600 E00E01A0 24840070 */ addiu $a0, $a0, 0x70 +.LE00E01A4: +/* 3DB604 E00E01A4 0220102D */ daddu $v0, $s1, $zero +/* 3DB608 E00E01A8 8FBF0038 */ lw $ra, 0x38($sp) +/* 3DB60C E00E01AC 8FB30034 */ lw $s3, 0x34($sp) +/* 3DB610 E00E01B0 8FB20030 */ lw $s2, 0x30($sp) +/* 3DB614 E00E01B4 8FB1002C */ lw $s1, 0x2c($sp) +/* 3DB618 E00E01B8 8FB00028 */ lw $s0, 0x28($sp) +/* 3DB61C E00E01BC D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3DB620 E00E01C0 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3DB624 E00E01C4 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3DB628 E00E01C8 03E00008 */ jr $ra +/* 3DB62C E00E01CC 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3DB460/func_E00E01D0.s b/asm/nonmatchings/code_3DB460/func_E00E01D0.s new file mode 100644 index 0000000000..2aa6d2a10d --- /dev/null +++ b/asm/nonmatchings/code_3DB460/func_E00E01D0.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E01D0 +/* 3DB630 E00E01D0 03E00008 */ jr $ra +/* 3DB634 E00E01D4 00000000 */ nop diff --git a/asm/nonmatchings/code_3DB460/func_E00E01D8.s b/asm/nonmatchings/code_3DB460/func_E00E01D8.s new file mode 100644 index 0000000000..cd3debbb7d --- /dev/null +++ b/asm/nonmatchings/code_3DB460/func_E00E01D8.s @@ -0,0 +1,261 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E01D8 +/* 3DB638 E00E01D8 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 3DB63C E00E01DC AFB20020 */ sw $s2, 0x20($sp) +/* 3DB640 E00E01E0 0080902D */ daddu $s2, $a0, $zero +/* 3DB644 E00E01E4 AFBF0028 */ sw $ra, 0x28($sp) +/* 3DB648 E00E01E8 AFB30024 */ sw $s3, 0x24($sp) +/* 3DB64C E00E01EC AFB1001C */ sw $s1, 0x1c($sp) +/* 3DB650 E00E01F0 AFB00018 */ sw $s0, 0x18($sp) +/* 3DB654 E00E01F4 F7BE0058 */ sdc1 $f30, 0x58($sp) +/* 3DB658 E00E01F8 F7BC0050 */ sdc1 $f28, 0x50($sp) +/* 3DB65C E00E01FC F7BA0048 */ sdc1 $f26, 0x48($sp) +/* 3DB660 E00E0200 F7B80040 */ sdc1 $f24, 0x40($sp) +/* 3DB664 E00E0204 F7B60038 */ sdc1 $f22, 0x38($sp) +/* 3DB668 E00E0208 F7B40030 */ sdc1 $f20, 0x30($sp) +/* 3DB66C E00E020C 8E430000 */ lw $v1, ($s2) +/* 3DB670 E00E0210 8E44000C */ lw $a0, 0xc($s2) +/* 3DB674 E00E0214 30620010 */ andi $v0, $v1, 0x10 +/* 3DB678 E00E0218 10400005 */ beqz $v0, .LE00E0230 +/* 3DB67C E00E021C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3DB680 E00E0220 00621024 */ and $v0, $v1, $v0 +/* 3DB684 E00E0224 AE420000 */ sw $v0, ($s2) +/* 3DB688 E00E0228 24020010 */ addiu $v0, $zero, 0x10 +/* 3DB68C E00E022C AC820018 */ sw $v0, 0x18($a0) +.LE00E0230: +/* 3DB690 E00E0230 8C830018 */ lw $v1, 0x18($a0) +/* 3DB694 E00E0234 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3DB698 E00E0238 10400002 */ beqz $v0, .LE00E0244 +/* 3DB69C E00E023C 2462FFFF */ addiu $v0, $v1, -1 +/* 3DB6A0 E00E0240 AC820018 */ sw $v0, 0x18($a0) +.LE00E0244: +/* 3DB6A4 E00E0244 3C030004 */ lui $v1, 4 +/* 3DB6A8 E00E0248 8C82001C */ lw $v0, 0x1c($a0) +/* 3DB6AC E00E024C 3463F1A0 */ ori $v1, $v1, 0xf1a0 +/* 3DB6B0 E00E0250 24420001 */ addiu $v0, $v0, 1 +/* 3DB6B4 E00E0254 0062182A */ slt $v1, $v1, $v0 +/* 3DB6B8 E00E0258 10600003 */ beqz $v1, .LE00E0268 +/* 3DB6BC E00E025C AC82001C */ sw $v0, 0x1c($a0) +/* 3DB6C0 E00E0260 24020100 */ addiu $v0, $zero, 0x100 +/* 3DB6C4 E00E0264 AC82001C */ sw $v0, 0x1c($a0) +.LE00E0268: +/* 3DB6C8 E00E0268 8C830018 */ lw $v1, 0x18($a0) +/* 3DB6CC E00E026C 04610005 */ bgez $v1, .LE00E0284 +/* 3DB6D0 E00E0270 28620010 */ slti $v0, $v1, 0x10 +/* 3DB6D4 E00E0274 0C080128 */ jal func_E02004A0 +/* 3DB6D8 E00E0278 0240202D */ daddu $a0, $s2, $zero +/* 3DB6DC E00E027C 0803815F */ j .LE00E057C +/* 3DB6E0 E00E0280 00000000 */ nop +.LE00E0284: +/* 3DB6E4 E00E0284 8C85001C */ lw $a1, 0x1c($a0) +/* 3DB6E8 E00E0288 10400002 */ beqz $v0, .LE00E0294 +/* 3DB6EC E00E028C 00031100 */ sll $v0, $v1, 4 +/* 3DB6F0 E00E0290 AC82002C */ sw $v0, 0x2c($a0) +.LE00E0294: +/* 3DB6F4 E00E0294 28A20010 */ slti $v0, $a1, 0x10 +/* 3DB6F8 E00E0298 10400003 */ beqz $v0, .LE00E02A8 +/* 3DB6FC E00E029C 00051100 */ sll $v0, $a1, 4 +/* 3DB700 E00E02A0 2442000F */ addiu $v0, $v0, 0xf +/* 3DB704 E00E02A4 AC82002C */ sw $v0, 0x2c($a0) +.LE00E02A8: +/* 3DB708 E00E02A8 C4980010 */ lwc1 $f24, 0x10($a0) +/* 3DB70C E00E02AC C49E0014 */ lwc1 $f30, 0x14($a0) +/* 3DB710 E00E02B0 C49C0068 */ lwc1 $f28, 0x68($a0) +/* 3DB714 E00E02B4 C49A006C */ lwc1 $f26, 0x6c($a0) +/* 3DB718 E00E02B8 E7BA0010 */ swc1 $f26, 0x10($sp) +/* 3DB71C E00E02BC 8E420008 */ lw $v0, 8($s2) +/* 3DB720 E00E02C0 24110001 */ addiu $s1, $zero, 1 +/* 3DB724 E00E02C4 0222102A */ slt $v0, $s1, $v0 +/* 3DB728 E00E02C8 104000AC */ beqz $v0, .LE00E057C +/* 3DB72C E00E02CC 24840070 */ addiu $a0, $a0, 0x70 +/* 3DB730 E00E02D0 3C13E00E */ lui $s3, %hi(D_E00E0A48) +/* 3DB734 E00E02D4 26730A48 */ addiu $s3, $s3, %lo(D_E00E0A48) +/* 3DB738 E00E02D8 2490004C */ addiu $s0, $a0, 0x4c +/* 3DB73C E00E02DC 3C01E00E */ lui $at, %hi(D_E00E0AC0) +/* 3DB740 E00E02E0 D4340AC0 */ ldc1 $f20, %lo(D_E00E0AC0)($at) +/* 3DB744 E00E02E4 3C01E00E */ lui $at, %hi(D_E00E0AC8) +/* 3DB748 E00E02E8 D4360AC8 */ ldc1 $f22, %lo(D_E00E0AC8)($at) +.LE00E02EC: +/* 3DB74C E00E02EC 8E020018 */ lw $v0, 0x18($s0) +/* 3DB750 E00E02F0 24420001 */ addiu $v0, $v0, 1 +/* 3DB754 E00E02F4 AE020018 */ sw $v0, 0x18($s0) +/* 3DB758 E00E02F8 2842001E */ slti $v0, $v0, 0x1e +/* 3DB75C E00E02FC 50400001 */ beql $v0, $zero, .LE00E0304 +/* 3DB760 E00E0300 AE000018 */ sw $zero, 0x18($s0) +.LE00E0304: +/* 3DB764 E00E0304 8E020018 */ lw $v0, 0x18($s0) +/* 3DB768 E00E0308 04420098 */ bltzl $v0, .LE00E056C +/* 3DB76C E00E030C 26310001 */ addiu $s1, $s1, 1 +/* 3DB770 E00E0310 14400058 */ bnez $v0, .LE00E0474 +/* 3DB774 E00E0314 00000000 */ nop +/* 3DB778 E00E0318 4600C68D */ trunc.w.s $f26, $f24 +/* 3DB77C E00E031C 4404D000 */ mfc1 $a0, $f26 +/* 3DB780 E00E0320 0C080138 */ jal func_E02004E0 +/* 3DB784 E00E0324 00000000 */ nop +/* 3DB788 E00E0328 3C013FE0 */ lui $at, 0x3fe0 +/* 3DB78C E00E032C 44810800 */ mtc1 $at, $f1 +/* 3DB790 E00E0330 44800000 */ mtc1 $zero, $f0 +/* 3DB794 E00E0334 4600C0A1 */ cvt.d.s $f2, $f24 +/* 3DB798 E00E0338 46201082 */ mul.d $f2, $f2, $f0 +/* 3DB79C E00E033C 00000000 */ nop +/* 3DB7A0 E00E0340 44820000 */ mtc1 $v0, $f0 +/* 3DB7A4 E00E0344 00000000 */ nop +/* 3DB7A8 E00E0348 46800021 */ cvt.d.w $f0, $f0 +/* 3DB7AC E00E034C 46220001 */ sub.d $f0, $f0, $f2 +/* 3DB7B0 E00E0350 4600F68D */ trunc.w.s $f26, $f30 +/* 3DB7B4 E00E0354 4404D000 */ mfc1 $a0, $f26 +/* 3DB7B8 E00E0358 46200020 */ cvt.s.d $f0, $f0 +/* 3DB7BC E00E035C 0C080138 */ jal func_E02004E0 +/* 3DB7C0 E00E0360 E600FFB8 */ swc1 $f0, -0x48($s0) +/* 3DB7C4 E00E0364 24040014 */ addiu $a0, $zero, 0x14 +/* 3DB7C8 E00E0368 44820000 */ mtc1 $v0, $f0 +/* 3DB7CC E00E036C 00000000 */ nop +/* 3DB7D0 E00E0370 46800020 */ cvt.s.w $f0, $f0 +/* 3DB7D4 E00E0374 E600FFBC */ swc1 $f0, -0x44($s0) +/* 3DB7D8 E00E0378 0C080138 */ jal func_E02004E0 +/* 3DB7DC E00E037C AE00FFC0 */ sw $zero, -0x40($s0) +/* 3DB7E0 E00E0380 2442FFF6 */ addiu $v0, $v0, -0xa +/* 3DB7E4 E00E0384 44820000 */ mtc1 $v0, $f0 +/* 3DB7E8 E00E0388 00000000 */ nop +/* 3DB7EC E00E038C 46800020 */ cvt.s.w $f0, $f0 +/* 3DB7F0 E00E0390 46000021 */ cvt.d.s $f0, $f0 +/* 3DB7F4 E00E0394 46340002 */ mul.d $f0, $f0, $f20 +/* 3DB7F8 E00E0398 00000000 */ nop +/* 3DB7FC E00E039C 24040028 */ addiu $a0, $zero, 0x28 +/* 3DB800 E00E03A0 46200020 */ cvt.s.d $f0, $f0 +/* 3DB804 E00E03A4 0C080138 */ jal func_E02004E0 +/* 3DB808 E00E03A8 E600FFF8 */ swc1 $f0, -8($s0) +/* 3DB80C E00E03AC 2442FFFF */ addiu $v0, $v0, -1 +/* 3DB810 E00E03B0 44820000 */ mtc1 $v0, $f0 +/* 3DB814 E00E03B4 00000000 */ nop +/* 3DB818 E00E03B8 46800020 */ cvt.s.w $f0, $f0 +/* 3DB81C E00E03BC 461C0002 */ mul.s $f0, $f0, $f28 +/* 3DB820 E00E03C0 00000000 */ nop +/* 3DB824 E00E03C4 46000021 */ cvt.d.s $f0, $f0 +/* 3DB828 E00E03C8 46340002 */ mul.d $f0, $f0, $f20 +/* 3DB82C E00E03CC 00000000 */ nop +/* 3DB830 E00E03D0 24040014 */ addiu $a0, $zero, 0x14 +/* 3DB834 E00E03D4 AE000000 */ sw $zero, ($s0) +/* 3DB838 E00E03D8 46200020 */ cvt.s.d $f0, $f0 +/* 3DB83C E00E03DC 0C080138 */ jal func_E02004E0 +/* 3DB840 E00E03E0 E600FFFC */ swc1 $f0, -4($s0) +/* 3DB844 E00E03E4 2442FFF6 */ addiu $v0, $v0, -0xa +/* 3DB848 E00E03E8 44820000 */ mtc1 $v0, $f0 +/* 3DB84C E00E03EC 00000000 */ nop +/* 3DB850 E00E03F0 46800020 */ cvt.s.w $f0, $f0 +/* 3DB854 E00E03F4 46000021 */ cvt.d.s $f0, $f0 +/* 3DB858 E00E03F8 46340002 */ mul.d $f0, $f0, $f20 +/* 3DB85C E00E03FC 00000000 */ nop +/* 3DB860 E00E0400 2404001E */ addiu $a0, $zero, 0x1e +/* 3DB864 E00E0404 46200020 */ cvt.s.d $f0, $f0 +/* 3DB868 E00E0408 0C080138 */ jal func_E02004E0 +/* 3DB86C E00E040C E6000004 */ swc1 $f0, 4($s0) +/* 3DB870 E00E0410 2442FFFF */ addiu $v0, $v0, -1 +/* 3DB874 E00E0414 C7BA0010 */ lwc1 $f26, 0x10($sp) +/* 3DB878 E00E0418 44820000 */ mtc1 $v0, $f0 +/* 3DB87C E00E041C 00000000 */ nop +/* 3DB880 E00E0420 46800020 */ cvt.s.w $f0, $f0 +/* 3DB884 E00E0424 461A0002 */ mul.s $f0, $f0, $f26 +/* 3DB888 E00E0428 00000000 */ nop +/* 3DB88C E00E042C 46000021 */ cvt.d.s $f0, $f0 +/* 3DB890 E00E0430 46340002 */ mul.d $f0, $f0, $f20 +/* 3DB894 E00E0434 00000000 */ nop +/* 3DB898 E00E0438 2404000F */ addiu $a0, $zero, 0xf +/* 3DB89C E00E043C AE00000C */ sw $zero, 0xc($s0) +/* 3DB8A0 E00E0440 46200020 */ cvt.s.d $f0, $f0 +/* 3DB8A4 E00E0444 0C080138 */ jal func_E02004E0 +/* 3DB8A8 E00E0448 E6000008 */ swc1 $f0, 8($s0) +/* 3DB8AC E00E044C 2404000F */ addiu $a0, $zero, 0xf +/* 3DB8B0 E00E0450 44820000 */ mtc1 $v0, $f0 +/* 3DB8B4 E00E0454 00000000 */ nop +/* 3DB8B8 E00E0458 46800020 */ cvt.s.w $f0, $f0 +/* 3DB8BC E00E045C 0C080138 */ jal func_E02004E0 +/* 3DB8C0 E00E0460 E6000010 */ swc1 $f0, 0x10($s0) +/* 3DB8C4 E00E0464 44820000 */ mtc1 $v0, $f0 +/* 3DB8C8 E00E0468 00000000 */ nop +/* 3DB8CC E00E046C 46800020 */ cvt.s.w $f0, $f0 +/* 3DB8D0 E00E0470 E6000014 */ swc1 $f0, 0x14($s0) +.LE00E0474: +/* 3DB8D4 E00E0474 C610FFF8 */ lwc1 $f16, -8($s0) +/* 3DB8D8 E00E0478 C60A0004 */ lwc1 $f10, 4($s0) +/* 3DB8DC E00E047C 46105281 */ sub.s $f10, $f10, $f16 +/* 3DB8E0 E00E0480 460052A1 */ cvt.d.s $f10, $f10 +/* 3DB8E4 E00E0484 46365282 */ mul.d $f10, $f10, $f22 +/* 3DB8E8 E00E0488 00000000 */ nop +/* 3DB8EC E00E048C C60EFFFC */ lwc1 $f14, -4($s0) +/* 3DB8F0 E00E0490 C60C0008 */ lwc1 $f12, 8($s0) +/* 3DB8F4 E00E0494 460E6301 */ sub.s $f12, $f12, $f14 +/* 3DB8F8 E00E0498 46006321 */ cvt.d.s $f12, $f12 +/* 3DB8FC E00E049C 46366302 */ mul.d $f12, $f12, $f22 +/* 3DB900 E00E04A0 00000000 */ nop +/* 3DB904 E00E04A4 C6060000 */ lwc1 $f6, ($s0) +/* 3DB908 E00E04A8 C608000C */ lwc1 $f8, 0xc($s0) +/* 3DB90C E00E04AC 46064201 */ sub.s $f8, $f8, $f6 +/* 3DB910 E00E04B0 46004221 */ cvt.d.s $f8, $f8 +/* 3DB914 E00E04B4 46364202 */ mul.d $f8, $f8, $f22 +/* 3DB918 E00E04B8 00000000 */ nop +/* 3DB91C E00E04BC 8E020018 */ lw $v0, 0x18($s0) +/* 3DB920 E00E04C0 C600FFB8 */ lwc1 $f0, -0x48($s0) +/* 3DB924 E00E04C4 C612FFBC */ lwc1 $f18, -0x44($s0) +/* 3DB928 E00E04C8 00021080 */ sll $v0, $v0, 2 +/* 3DB92C E00E04CC 00531021 */ addu $v0, $v0, $s3 +/* 3DB930 E00E04D0 46008086 */ mov.s $f2, $f16 +/* 3DB934 E00E04D4 C4440000 */ lwc1 $f4, ($v0) +/* 3DB938 E00E04D8 46020000 */ add.s $f0, $f0, $f2 +/* 3DB93C E00E04DC C6020010 */ lwc1 $f2, 0x10($s0) +/* 3DB940 E00E04E0 46008421 */ cvt.d.s $f16, $f16 +/* 3DB944 E00E04E4 E604FFF4 */ swc1 $f4, -0xc($s0) +/* 3DB948 E00E04E8 E600FFB8 */ swc1 $f0, -0x48($s0) +/* 3DB94C E00E04EC 46007006 */ mov.s $f0, $f14 +/* 3DB950 E00E04F0 46009480 */ add.s $f18, $f18, $f0 +/* 3DB954 E00E04F4 C604FFC0 */ lwc1 $f4, -0x40($s0) +/* 3DB958 E00E04F8 46003006 */ mov.s $f0, $f6 +/* 3DB95C E00E04FC 46002100 */ add.s $f4, $f4, $f0 +/* 3DB960 E00E0500 3C01E00E */ lui $at, %hi(D_E00E0AD0) +/* 3DB964 E00E0504 D4200AD0 */ ldc1 $f0, %lo(D_E00E0AD0)($at) +/* 3DB968 E00E0508 460010A1 */ cvt.d.s $f2, $f2 +/* 3DB96C E00E050C 46201080 */ add.d $f2, $f2, $f0 +/* 3DB970 E00E0510 C6000014 */ lwc1 $f0, 0x14($s0) +/* 3DB974 E00E0514 460073A1 */ cvt.d.s $f14, $f14 +/* 3DB978 E00E0518 E604FFC0 */ swc1 $f4, -0x40($s0) +/* 3DB97C E00E051C 3C01E00E */ lui $at, %hi(D_E00E0AD8) +/* 3DB980 E00E0520 D4240AD8 */ ldc1 $f4, %lo(D_E00E0AD8)($at) +/* 3DB984 E00E0524 46000021 */ cvt.d.s $f0, $f0 +/* 3DB988 E00E0528 46240000 */ add.d $f0, $f0, $f4 +/* 3DB98C E00E052C 460031A1 */ cvt.d.s $f6, $f6 +/* 3DB990 E00E0530 E612FFBC */ swc1 $f18, -0x44($s0) +/* 3DB994 E00E0534 462A8400 */ add.d $f16, $f16, $f10 +/* 3DB998 E00E0538 462010A0 */ cvt.s.d $f2, $f2 +/* 3DB99C E00E053C E6020010 */ swc1 $f2, 0x10($s0) +/* 3DB9A0 E00E0540 462C7380 */ add.d $f14, $f14, $f12 +/* 3DB9A4 E00E0544 46200020 */ cvt.s.d $f0, $f0 +/* 3DB9A8 E00E0548 E6000014 */ swc1 $f0, 0x14($s0) +/* 3DB9AC E00E054C 46283180 */ add.d $f6, $f6, $f8 +/* 3DB9B0 E00E0550 46208420 */ cvt.s.d $f16, $f16 +/* 3DB9B4 E00E0554 462073A0 */ cvt.s.d $f14, $f14 +/* 3DB9B8 E00E0558 462031A0 */ cvt.s.d $f6, $f6 +/* 3DB9BC E00E055C E610FFF8 */ swc1 $f16, -8($s0) +/* 3DB9C0 E00E0560 E60EFFFC */ swc1 $f14, -4($s0) +/* 3DB9C4 E00E0564 E6060000 */ swc1 $f6, ($s0) +/* 3DB9C8 E00E0568 26310001 */ addiu $s1, $s1, 1 +.LE00E056C: +/* 3DB9CC E00E056C 8E420008 */ lw $v0, 8($s2) +/* 3DB9D0 E00E0570 0222102A */ slt $v0, $s1, $v0 +/* 3DB9D4 E00E0574 1440FF5D */ bnez $v0, .LE00E02EC +/* 3DB9D8 E00E0578 26100070 */ addiu $s0, $s0, 0x70 +.LE00E057C: +/* 3DB9DC E00E057C 8FBF0028 */ lw $ra, 0x28($sp) +/* 3DB9E0 E00E0580 8FB30024 */ lw $s3, 0x24($sp) +/* 3DB9E4 E00E0584 8FB20020 */ lw $s2, 0x20($sp) +/* 3DB9E8 E00E0588 8FB1001C */ lw $s1, 0x1c($sp) +/* 3DB9EC E00E058C 8FB00018 */ lw $s0, 0x18($sp) +/* 3DB9F0 E00E0590 D7BE0058 */ ldc1 $f30, 0x58($sp) +/* 3DB9F4 E00E0594 D7BC0050 */ ldc1 $f28, 0x50($sp) +/* 3DB9F8 E00E0598 D7BA0048 */ ldc1 $f26, 0x48($sp) +/* 3DB9FC E00E059C D7B80040 */ ldc1 $f24, 0x40($sp) +/* 3DBA00 E00E05A0 D7B60038 */ ldc1 $f22, 0x38($sp) +/* 3DBA04 E00E05A4 D7B40030 */ ldc1 $f20, 0x30($sp) +/* 3DBA08 E00E05A8 03E00008 */ jr $ra +/* 3DBA0C E00E05AC 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_3DB460/func_E00E05B0.s b/asm/nonmatchings/code_3DB460/func_E00E05B0.s new file mode 100644 index 0000000000..1f070534a2 --- /dev/null +++ b/asm/nonmatchings/code_3DB460/func_E00E05B0.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E05B0 +/* 3DBA10 E00E05B0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3DBA14 E00E05B4 3C02E00E */ lui $v0, %hi(D_E00E0600) +/* 3DBA18 E00E05B8 24420600 */ addiu $v0, $v0, %lo(D_E00E0600) +/* 3DBA1C E00E05BC AFA2001C */ sw $v0, 0x1c($sp) +/* 3DBA20 E00E05C0 2402000A */ addiu $v0, $zero, 0xa +/* 3DBA24 E00E05C4 AFA20014 */ sw $v0, 0x14($sp) +/* 3DBA28 E00E05C8 2402002D */ addiu $v0, $zero, 0x2d +/* 3DBA2C E00E05CC AFA40018 */ sw $a0, 0x18($sp) +/* 3DBA30 E00E05D0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DBA34 E00E05D4 AFBF0020 */ sw $ra, 0x20($sp) +/* 3DBA38 E00E05D8 0C080120 */ jal func_E0200480 +/* 3DBA3C E00E05DC AFA20010 */ sw $v0, 0x10($sp) +/* 3DBA40 E00E05E0 8C430000 */ lw $v1, ($v0) +/* 3DBA44 E00E05E4 34630002 */ ori $v1, $v1, 2 +/* 3DBA48 E00E05E8 AC430000 */ sw $v1, ($v0) +/* 3DBA4C E00E05EC 8FBF0020 */ lw $ra, 0x20($sp) +/* 3DBA50 E00E05F0 03E00008 */ jr $ra +/* 3DBA54 E00E05F4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3DB460/func_E00E05F8.s b/asm/nonmatchings/code_3DB460/func_E00E05F8.s new file mode 100644 index 0000000000..8a424a0dbe --- /dev/null +++ b/asm/nonmatchings/code_3DB460/func_E00E05F8.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E05F8 +/* 3DBA58 E00E05F8 03E00008 */ jr $ra +/* 3DBA5C E00E05FC 00000000 */ nop diff --git a/asm/nonmatchings/code_3DB460/func_E00E0600.s b/asm/nonmatchings/code_3DB460/func_E00E0600.s new file mode 100644 index 0000000000..fd2908ed37 --- /dev/null +++ b/asm/nonmatchings/code_3DB460/func_E00E0600.s @@ -0,0 +1,280 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E0600 +/* 3DBA60 E00E0600 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 3DBA64 E00E0604 AFBE00B0 */ sw $fp, 0xb0($sp) +/* 3DBA68 E00E0608 0080F02D */ daddu $fp, $a0, $zero +/* 3DBA6C E00E060C 3C06DB06 */ lui $a2, 0xdb06 +/* 3DBA70 E00E0610 34C60024 */ ori $a2, $a2, 0x24 +/* 3DBA74 E00E0614 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DBA78 E00E0618 AFB3009C */ sw $s3, 0x9c($sp) +/* 3DBA7C E00E061C 3C130001 */ lui $s3, 1 +/* 3DBA80 E00E0620 36731630 */ ori $s3, $s3, 0x1630 +/* 3DBA84 E00E0624 AFB500A4 */ sw $s5, 0xa4($sp) +/* 3DBA88 E00E0628 24150001 */ addiu $s5, $zero, 1 +/* 3DBA8C E00E062C AFB600A8 */ sw $s6, 0xa8($sp) +/* 3DBA90 E00E0630 3C16800A */ lui $s6, %hi(D_8009A66C) +/* 3DBA94 E00E0634 26D6A66C */ addiu $s6, $s6, %lo(D_8009A66C) +/* 3DBA98 E00E0638 AFBF00B4 */ sw $ra, 0xb4($sp) +/* 3DBA9C E00E063C AFB700AC */ sw $s7, 0xac($sp) +/* 3DBAA0 E00E0640 AFB400A0 */ sw $s4, 0xa0($sp) +/* 3DBAA4 E00E0644 AFB20098 */ sw $s2, 0x98($sp) +/* 3DBAA8 E00E0648 AFB10094 */ sw $s1, 0x94($sp) +/* 3DBAAC E00E064C AFB00090 */ sw $s0, 0x90($sp) +/* 3DBAB0 E00E0650 8EC50000 */ lw $a1, ($s6) +/* 3DBAB4 E00E0654 8FD4000C */ lw $s4, 0xc($fp) +/* 3DBAB8 E00E0658 00A0182D */ daddu $v1, $a1, $zero +/* 3DBABC E00E065C 24A50008 */ addiu $a1, $a1, 8 +/* 3DBAC0 E00E0660 AEC50000 */ sw $a1, ($s6) +/* 3DBAC4 E00E0664 8E92002C */ lw $s2, 0x2c($s4) +/* 3DBAC8 E00E0668 3C02E700 */ lui $v0, 0xe700 +/* 3DBACC E00E066C AC620000 */ sw $v0, ($v1) +/* 3DBAD0 E00E0670 AC600004 */ sw $zero, 4($v1) +/* 3DBAD4 E00E0674 ACA60000 */ sw $a2, ($a1) +/* 3DBAD8 E00E0678 8FC30010 */ lw $v1, 0x10($fp) +/* 3DBADC E00E067C 24A20008 */ addiu $v0, $a1, 8 +/* 3DBAE0 E00E0680 AEC20000 */ sw $v0, ($s6) +/* 3DBAE4 E00E0684 8C62001C */ lw $v0, 0x1c($v1) +/* 3DBAE8 E00E0688 3C038000 */ lui $v1, 0x8000 +/* 3DBAEC E00E068C 00431021 */ addu $v0, $v0, $v1 +/* 3DBAF0 E00E0690 3C03800B */ lui $v1, %hi(gCameras) +/* 3DBAF4 E00E0694 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3DBAF8 E00E0698 ACA20004 */ sw $v0, 4($a1) +/* 3DBAFC E00E069C 8E850004 */ lw $a1, 4($s4) +/* 3DBB00 E00E06A0 8E860008 */ lw $a2, 8($s4) +/* 3DBB04 E00E06A4 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3DBB08 E00E06A8 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3DBB0C E00E06AC 8E87000C */ lw $a3, 0xc($s4) +/* 3DBB10 E00E06B0 00028080 */ sll $s0, $v0, 2 +/* 3DBB14 E00E06B4 02028021 */ addu $s0, $s0, $v0 +/* 3DBB18 E00E06B8 00108080 */ sll $s0, $s0, 2 +/* 3DBB1C E00E06BC 02028023 */ subu $s0, $s0, $v0 +/* 3DBB20 E00E06C0 001010C0 */ sll $v0, $s0, 3 +/* 3DBB24 E00E06C4 02028021 */ addu $s0, $s0, $v0 +/* 3DBB28 E00E06C8 001080C0 */ sll $s0, $s0, 3 +/* 3DBB2C E00E06CC 0C080108 */ jal func_E0200420 +/* 3DBB30 E00E06D0 02038021 */ addu $s0, $s0, $v1 +/* 3DBB34 E00E06D4 27B10050 */ addiu $s1, $sp, 0x50 +/* 3DBB38 E00E06D8 8E850040 */ lw $a1, 0x40($s4) +/* 3DBB3C E00E06DC 0220202D */ daddu $a0, $s1, $zero +/* 3DBB40 E00E06E0 00A0302D */ daddu $a2, $a1, $zero +/* 3DBB44 E00E06E4 0C080110 */ jal func_E0200440 +/* 3DBB48 E00E06E8 00A0382D */ daddu $a3, $a1, $zero +/* 3DBB4C E00E06EC 0220202D */ daddu $a0, $s1, $zero +/* 3DBB50 E00E06F0 27A50010 */ addiu $a1, $sp, 0x10 +/* 3DBB54 E00E06F4 0C080114 */ jal func_E0200450 +/* 3DBB58 E00E06F8 00A0302D */ daddu $a2, $a1, $zero +/* 3DBB5C E00E06FC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DBB60 E00E0700 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3DBB64 E00E0704 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3DBB68 E00E0708 3C17800A */ lui $s7, %hi(D_8009A674) +/* 3DBB6C E00E070C 26F7A674 */ addiu $s7, $s7, %lo(D_8009A674) +/* 3DBB70 E00E0710 96250000 */ lhu $a1, ($s1) +/* 3DBB74 E00E0714 8EE20000 */ lw $v0, ($s7) +/* 3DBB78 E00E0718 00052980 */ sll $a1, $a1, 6 +/* 3DBB7C E00E071C 00B32821 */ addu $a1, $a1, $s3 +/* 3DBB80 E00E0720 0C080118 */ jal func_E0200460 +/* 3DBB84 E00E0724 00452821 */ addu $a1, $v0, $a1 +/* 3DBB88 E00E0728 3C03DA38 */ lui $v1, 0xda38 +/* 3DBB8C E00E072C 34630002 */ ori $v1, $v1, 2 +/* 3DBB90 E00E0730 3C06DA38 */ lui $a2, 0xda38 +/* 3DBB94 E00E0734 00D53025 */ or $a2, $a2, $s5 +/* 3DBB98 E00E0738 325200FF */ andi $s2, $s2, 0xff +/* 3DBB9C E00E073C 8EC40000 */ lw $a0, ($s6) +/* 3DBBA0 E00E0740 96220000 */ lhu $v0, ($s1) +/* 3DBBA4 E00E0744 0080282D */ daddu $a1, $a0, $zero +/* 3DBBA8 E00E0748 24840008 */ addiu $a0, $a0, 8 +/* 3DBBAC E00E074C AEC40000 */ sw $a0, ($s6) +/* 3DBBB0 E00E0750 ACA30000 */ sw $v1, ($a1) +/* 3DBBB4 E00E0754 00551821 */ addu $v1, $v0, $s5 +/* 3DBBB8 E00E0758 3042FFFF */ andi $v0, $v0, 0xffff +/* 3DBBBC E00E075C 00021180 */ sll $v0, $v0, 6 +/* 3DBBC0 E00E0760 A6230000 */ sh $v1, ($s1) +/* 3DBBC4 E00E0764 8EE30000 */ lw $v1, ($s7) +/* 3DBBC8 E00E0768 00531021 */ addu $v0, $v0, $s3 +/* 3DBBCC E00E076C 00621821 */ addu $v1, $v1, $v0 +/* 3DBBD0 E00E0770 24820008 */ addiu $v0, $a0, 8 +/* 3DBBD4 E00E0774 ACA30004 */ sw $v1, 4($a1) +/* 3DBBD8 E00E0778 AEC20000 */ sw $v0, ($s6) +/* 3DBBDC E00E077C 24820010 */ addiu $v0, $a0, 0x10 +/* 3DBBE0 E00E0780 AC860000 */ sw $a2, ($a0) +/* 3DBBE4 E00E0784 AEC20000 */ sw $v0, ($s6) +/* 3DBBE8 E00E0788 8E030204 */ lw $v1, 0x204($s0) +/* 3DBBEC E00E078C 3C02FA00 */ lui $v0, 0xfa00 +/* 3DBBF0 E00E0790 AC820008 */ sw $v0, 8($a0) +/* 3DBBF4 E00E0794 AC830004 */ sw $v1, 4($a0) +/* 3DBBF8 E00E0798 92820023 */ lbu $v0, 0x23($s4) +/* 3DBBFC E00E079C 92850027 */ lbu $a1, 0x27($s4) +/* 3DBC00 E00E07A0 9286002B */ lbu $a2, 0x2b($s4) +/* 3DBC04 E00E07A4 24830018 */ addiu $v1, $a0, 0x18 +/* 3DBC08 E00E07A8 AEC30000 */ sw $v1, ($s6) +/* 3DBC0C E00E07AC 3C03FB00 */ lui $v1, 0xfb00 +/* 3DBC10 E00E07B0 AC830010 */ sw $v1, 0x10($a0) +/* 3DBC14 E00E07B4 00021600 */ sll $v0, $v0, 0x18 +/* 3DBC18 E00E07B8 00052C00 */ sll $a1, $a1, 0x10 +/* 3DBC1C E00E07BC 00451025 */ or $v0, $v0, $a1 +/* 3DBC20 E00E07C0 00063200 */ sll $a2, $a2, 8 +/* 3DBC24 E00E07C4 00461025 */ or $v0, $v0, $a2 +/* 3DBC28 E00E07C8 00521025 */ or $v0, $v0, $s2 +/* 3DBC2C E00E07CC AC82000C */ sw $v0, 0xc($a0) +/* 3DBC30 E00E07D0 92820033 */ lbu $v0, 0x33($s4) +/* 3DBC34 E00E07D4 92850037 */ lbu $a1, 0x37($s4) +/* 3DBC38 E00E07D8 9286003B */ lbu $a2, 0x3b($s4) +/* 3DBC3C E00E07DC 9287003F */ lbu $a3, 0x3f($s4) +/* 3DBC40 E00E07E0 3C03DE00 */ lui $v1, 0xde00 +/* 3DBC44 E00E07E4 AC830018 */ sw $v1, 0x18($a0) +/* 3DBC48 E00E07E8 00021600 */ sll $v0, $v0, 0x18 +/* 3DBC4C E00E07EC 00052C00 */ sll $a1, $a1, 0x10 +/* 3DBC50 E00E07F0 00451025 */ or $v0, $v0, $a1 +/* 3DBC54 E00E07F4 00063200 */ sll $a2, $a2, 8 +/* 3DBC58 E00E07F8 00461025 */ or $v0, $v0, $a2 +/* 3DBC5C E00E07FC 00471025 */ or $v0, $v0, $a3 +/* 3DBC60 E00E0800 AC820014 */ sw $v0, 0x14($a0) +/* 3DBC64 E00E0804 3C02E00E */ lui $v0, %hi(D_E00E0A44) +/* 3DBC68 E00E0808 8C420A44 */ lw $v0, %lo(D_E00E0A44)($v0) +/* 3DBC6C E00E080C 26940070 */ addiu $s4, $s4, 0x70 +/* 3DBC70 E00E0810 AC82001C */ sw $v0, 0x1c($a0) +/* 3DBC74 E00E0814 8FC20008 */ lw $v0, 8($fp) +/* 3DBC78 E00E0818 24840020 */ addiu $a0, $a0, 0x20 +/* 3DBC7C E00E081C 02A2102A */ slt $v0, $s5, $v0 +/* 3DBC80 E00E0820 10400070 */ beqz $v0, .LE00E09E4 +/* 3DBC84 E00E0824 AEC40000 */ sw $a0, ($s6) +/* 3DBC88 E00E0828 0220982D */ daddu $s3, $s1, $zero +/* 3DBC8C E00E082C 3C120001 */ lui $s2, 1 +/* 3DBC90 E00E0830 36521630 */ ori $s2, $s2, 0x1630 +/* 3DBC94 E00E0834 02C0882D */ daddu $s1, $s6, $zero +/* 3DBC98 E00E0838 3C16F200 */ lui $s6, 0xf200 +/* 3DBC9C E00E083C 26900060 */ addiu $s0, $s4, 0x60 +.LE00E0840: +/* 3DBCA0 E00E0840 8E020004 */ lw $v0, 4($s0) +/* 3DBCA4 E00E0844 04420063 */ bltzl $v0, .LE00E09D4 +/* 3DBCA8 E00E0848 26B50001 */ addiu $s5, $s5, 1 +/* 3DBCAC E00E084C 8E05FFA4 */ lw $a1, -0x5c($s0) +/* 3DBCB0 E00E0850 8E06FFA8 */ lw $a2, -0x58($s0) +/* 3DBCB4 E00E0854 8E07FFAC */ lw $a3, -0x54($s0) +/* 3DBCB8 E00E0858 0C080108 */ jal func_E0200420 +/* 3DBCBC E00E085C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DBCC0 E00E0860 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DBCC4 E00E0864 96650000 */ lhu $a1, ($s3) +/* 3DBCC8 E00E0868 8EE20000 */ lw $v0, ($s7) +/* 3DBCCC E00E086C 00052980 */ sll $a1, $a1, 6 +/* 3DBCD0 E00E0870 00B22821 */ addu $a1, $a1, $s2 +/* 3DBCD4 E00E0874 0C080118 */ jal func_E0200460 +/* 3DBCD8 E00E0878 00452821 */ addu $a1, $v0, $a1 +/* 3DBCDC E00E087C 8E260000 */ lw $a2, ($s1) +/* 3DBCE0 E00E0880 02A0382D */ daddu $a3, $s5, $zero +/* 3DBCE4 E00E0884 00C0202D */ daddu $a0, $a2, $zero +/* 3DBCE8 E00E0888 24C60008 */ addiu $a2, $a2, 8 +/* 3DBCEC E00E088C AE260000 */ sw $a2, ($s1) +/* 3DBCF0 E00E0890 96620000 */ lhu $v0, ($s3) +/* 3DBCF4 E00E0894 3C03DA38 */ lui $v1, 0xda38 +/* 3DBCF8 E00E0898 AC830000 */ sw $v1, ($a0) +/* 3DBCFC E00E089C 24430001 */ addiu $v1, $v0, 1 +/* 3DBD00 E00E08A0 3042FFFF */ andi $v0, $v0, 0xffff +/* 3DBD04 E00E08A4 00021180 */ sll $v0, $v0, 6 +/* 3DBD08 E00E08A8 A6630000 */ sh $v1, ($s3) +/* 3DBD0C E00E08AC 8EE30000 */ lw $v1, ($s7) +/* 3DBD10 E00E08B0 00521021 */ addu $v0, $v0, $s2 +/* 3DBD14 E00E08B4 00621821 */ addu $v1, $v1, $v0 +/* 3DBD18 E00E08B8 24C20008 */ addiu $v0, $a2, 8 +/* 3DBD1C E00E08BC AC830004 */ sw $v1, 4($a0) +/* 3DBD20 E00E08C0 06A10002 */ bgez $s5, .LE00E08CC +/* 3DBD24 E00E08C4 AE220000 */ sw $v0, ($s1) +/* 3DBD28 E00E08C8 26A70003 */ addiu $a3, $s5, 3 +.LE00E08CC: +/* 3DBD2C E00E08CC 3C040003 */ lui $a0, 3 +/* 3DBD30 E00E08D0 3484C000 */ ori $a0, $a0, 0xc000 +/* 3DBD34 E00E08D4 3C05D838 */ lui $a1, 0xd838 +/* 3DBD38 E00E08D8 34A50002 */ ori $a1, $a1, 2 +/* 3DBD3C E00E08DC 00071883 */ sra $v1, $a3, 2 +/* 3DBD40 E00E08E0 00031880 */ sll $v1, $v1, 2 +/* 3DBD44 E00E08E4 02A31823 */ subu $v1, $s5, $v1 +/* 3DBD48 E00E08E8 00031180 */ sll $v0, $v1, 6 +/* 3DBD4C E00E08EC 30420FFF */ andi $v0, $v0, 0xfff +/* 3DBD50 E00E08F0 00561025 */ or $v0, $v0, $s6 +/* 3DBD54 E00E08F4 00031980 */ sll $v1, $v1, 6 +/* 3DBD58 E00E08F8 3463003C */ ori $v1, $v1, 0x3c +/* 3DBD5C E00E08FC 30630FFF */ andi $v1, $v1, 0xfff +/* 3DBD60 E00E0900 00641825 */ or $v1, $v1, $a0 +/* 3DBD64 E00E0904 ACC20000 */ sw $v0, ($a2) +/* 3DBD68 E00E0908 24C20010 */ addiu $v0, $a2, 0x10 +/* 3DBD6C E00E090C ACC30004 */ sw $v1, 4($a2) +/* 3DBD70 E00E0910 AE220000 */ sw $v0, ($s1) +/* 3DBD74 E00E0914 24C20018 */ addiu $v0, $a2, 0x18 +/* 3DBD78 E00E0918 C600FFFC */ lwc1 $f0, -4($s0) +/* 3DBD7C E00E091C 3C040100 */ lui $a0, 0x100 +/* 3DBD80 E00E0920 AE220000 */ sw $v0, ($s1) +/* 3DBD84 E00E0924 4600010D */ trunc.w.s $f4, $f0 +/* 3DBD88 E00E0928 44032000 */ mfc1 $v1, $f4 +/* 3DBD8C E00E092C 00000000 */ nop +/* 3DBD90 E00E0930 00031880 */ sll $v1, $v1, 2 +/* 3DBD94 E00E0934 30630FFF */ andi $v1, $v1, 0xfff +/* 3DBD98 E00E0938 C6000000 */ lwc1 $f0, ($s0) +/* 3DBD9C E00E093C 00031B00 */ sll $v1, $v1, 0xc +/* 3DBDA0 E00E0940 4600010D */ trunc.w.s $f4, $f0 +/* 3DBDA4 E00E0944 44022000 */ mfc1 $v0, $f4 +/* 3DBDA8 E00E0948 00000000 */ nop +/* 3DBDAC E00E094C 00021080 */ sll $v0, $v0, 2 +/* 3DBDB0 E00E0950 30420FFF */ andi $v0, $v0, 0xfff +/* 3DBDB4 E00E0954 00561025 */ or $v0, $v0, $s6 +/* 3DBDB8 E00E0958 00621825 */ or $v1, $v1, $v0 +/* 3DBDBC E00E095C ACC30008 */ sw $v1, 8($a2) +/* 3DBDC0 E00E0960 C600FFFC */ lwc1 $f0, -4($s0) +/* 3DBDC4 E00E0964 C6020000 */ lwc1 $f2, ($s0) +/* 3DBDC8 E00E0968 3C02DE00 */ lui $v0, 0xde00 +/* 3DBDCC E00E096C ACC20010 */ sw $v0, 0x10($a2) +/* 3DBDD0 E00E0970 4600010D */ trunc.w.s $f4, $f0 +/* 3DBDD4 E00E0974 44032000 */ mfc1 $v1, $f4 +/* 3DBDD8 E00E0978 00000000 */ nop +/* 3DBDDC E00E097C 2463000F */ addiu $v1, $v1, 0xf +/* 3DBDE0 E00E0980 00031880 */ sll $v1, $v1, 2 +/* 3DBDE4 E00E0984 30630FFF */ andi $v1, $v1, 0xfff +/* 3DBDE8 E00E0988 00031B00 */ sll $v1, $v1, 0xc +/* 3DBDEC E00E098C 4600110D */ trunc.w.s $f4, $f2 +/* 3DBDF0 E00E0990 44022000 */ mfc1 $v0, $f4 +/* 3DBDF4 E00E0994 00000000 */ nop +/* 3DBDF8 E00E0998 2442000F */ addiu $v0, $v0, 0xf +/* 3DBDFC E00E099C 00021080 */ sll $v0, $v0, 2 +/* 3DBE00 E00E09A0 30420FFF */ andi $v0, $v0, 0xfff +/* 3DBE04 E00E09A4 00441025 */ or $v0, $v0, $a0 +/* 3DBE08 E00E09A8 00621825 */ or $v1, $v1, $v0 +/* 3DBE0C E00E09AC ACC3000C */ sw $v1, 0xc($a2) +/* 3DBE10 E00E09B0 3C03E00E */ lui $v1, %hi(D_E00E0A40) +/* 3DBE14 E00E09B4 8C630A40 */ lw $v1, %lo(D_E00E0A40)($v1) +/* 3DBE18 E00E09B8 24C20020 */ addiu $v0, $a2, 0x20 +/* 3DBE1C E00E09BC AE220000 */ sw $v0, ($s1) +/* 3DBE20 E00E09C0 24020040 */ addiu $v0, $zero, 0x40 +/* 3DBE24 E00E09C4 ACC50018 */ sw $a1, 0x18($a2) +/* 3DBE28 E00E09C8 ACC2001C */ sw $v0, 0x1c($a2) +/* 3DBE2C E00E09CC ACC30014 */ sw $v1, 0x14($a2) +/* 3DBE30 E00E09D0 26B50001 */ addiu $s5, $s5, 1 +.LE00E09D4: +/* 3DBE34 E00E09D4 8FC20008 */ lw $v0, 8($fp) +/* 3DBE38 E00E09D8 02A2102A */ slt $v0, $s5, $v0 +/* 3DBE3C E00E09DC 1440FF98 */ bnez $v0, .LE00E0840 +/* 3DBE40 E00E09E0 26100070 */ addiu $s0, $s0, 0x70 +.LE00E09E4: +/* 3DBE44 E00E09E4 3C05D838 */ lui $a1, 0xd838 +/* 3DBE48 E00E09E8 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3DBE4C E00E09EC 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3DBE50 E00E09F0 8C620000 */ lw $v0, ($v1) +/* 3DBE54 E00E09F4 34A50002 */ ori $a1, $a1, 2 +/* 3DBE58 E00E09F8 0040202D */ daddu $a0, $v0, $zero +/* 3DBE5C E00E09FC 24420008 */ addiu $v0, $v0, 8 +/* 3DBE60 E00E0A00 AC620000 */ sw $v0, ($v1) +/* 3DBE64 E00E0A04 24020040 */ addiu $v0, $zero, 0x40 +/* 3DBE68 E00E0A08 AC850000 */ sw $a1, ($a0) +/* 3DBE6C E00E0A0C AC820004 */ sw $v0, 4($a0) +/* 3DBE70 E00E0A10 8FBF00B4 */ lw $ra, 0xb4($sp) +/* 3DBE74 E00E0A14 8FBE00B0 */ lw $fp, 0xb0($sp) +/* 3DBE78 E00E0A18 8FB700AC */ lw $s7, 0xac($sp) +/* 3DBE7C E00E0A1C 8FB600A8 */ lw $s6, 0xa8($sp) +/* 3DBE80 E00E0A20 8FB500A4 */ lw $s5, 0xa4($sp) +/* 3DBE84 E00E0A24 8FB400A0 */ lw $s4, 0xa0($sp) +/* 3DBE88 E00E0A28 8FB3009C */ lw $s3, 0x9c($sp) +/* 3DBE8C E00E0A2C 8FB20098 */ lw $s2, 0x98($sp) +/* 3DBE90 E00E0A30 8FB10094 */ lw $s1, 0x94($sp) +/* 3DBE94 E00E0A34 8FB00090 */ lw $s0, 0x90($sp) +/* 3DBE98 E00E0A38 03E00008 */ jr $ra +/* 3DBE9C E00E0A3C 27BD00B8 */ addiu $sp, $sp, 0xb8 diff --git a/asm/nonmatchings/code_3DC310/func_E00E2000.s b/asm/nonmatchings/code_3DC310/func_E00E2000.s new file mode 100644 index 0000000000..027c189fb8 --- /dev/null +++ b/asm/nonmatchings/code_3DC310/func_E00E2000.s @@ -0,0 +1,83 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E2000 +/* 3DC310 E00E2000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3DC314 E00E2004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3DC318 E00E2008 4485A000 */ mtc1 $a1, $f20 +/* 3DC31C E00E200C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3DC320 E00E2010 4486B000 */ mtc1 $a2, $f22 +/* 3DC324 E00E2014 AFB20030 */ sw $s2, 0x30($sp) +/* 3DC328 E00E2018 0080902D */ daddu $s2, $a0, $zero +/* 3DC32C E00E201C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3DC330 E00E2020 4487C000 */ mtc1 $a3, $f24 +/* 3DC334 E00E2024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DC338 E00E2028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3DC33C E00E202C 8FB10064 */ lw $s1, 0x64($sp) +/* 3DC340 E00E2030 3C02E00E */ lui $v0, %hi(D_E00E212C) +/* 3DC344 E00E2034 2442212C */ addiu $v0, $v0, %lo(D_E00E212C) +/* 3DC348 E00E2038 AFA20018 */ sw $v0, 0x18($sp) +/* 3DC34C E00E203C 3C02E00E */ lui $v0, %hi(D_E00E2134) +/* 3DC350 E00E2040 24422134 */ addiu $v0, $v0, %lo(D_E00E2134) +/* 3DC354 E00E2044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3DC358 E00E2048 3C02E00E */ lui $v0, %hi(D_E00E21C8) +/* 3DC35C E00E204C 244221C8 */ addiu $v0, $v0, %lo(D_E00E21C8) +/* 3DC360 E00E2050 AFA20020 */ sw $v0, 0x20($sp) +/* 3DC364 E00E2054 24020071 */ addiu $v0, $zero, 0x71 +/* 3DC368 E00E2058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3DC36C E00E205C AFB00028 */ sw $s0, 0x28($sp) +/* 3DC370 E00E2060 AFA00010 */ sw $zero, 0x10($sp) +/* 3DC374 E00E2064 AFA00024 */ sw $zero, 0x24($sp) +/* 3DC378 E00E2068 0C080124 */ jal func_E0200490 +/* 3DC37C E00E206C AFA20014 */ sw $v0, 0x14($sp) +/* 3DC380 E00E2070 2404003C */ addiu $a0, $zero, 0x3c +/* 3DC384 E00E2074 24030001 */ addiu $v1, $zero, 1 +/* 3DC388 E00E2078 0040802D */ daddu $s0, $v0, $zero +/* 3DC38C E00E207C 0C08012C */ jal func_E02004B0 +/* 3DC390 E00E2080 AE030008 */ sw $v1, 8($s0) +/* 3DC394 E00E2084 0040202D */ daddu $a0, $v0, $zero +/* 3DC398 E00E2088 14800003 */ bnez $a0, .LE00E2098 +/* 3DC39C E00E208C AE02000C */ sw $v0, 0xc($s0) +.LE00E2090: +/* 3DC3A0 E00E2090 08038824 */ j .LE00E2090 +/* 3DC3A4 E00E2094 00000000 */ nop +.LE00E2098: +/* 3DC3A8 E00E2098 AC920000 */ sw $s2, ($a0) +/* 3DC3AC E00E209C 1E200004 */ bgtz $s1, .LE00E20B0 +/* 3DC3B0 E00E20A0 AC800014 */ sw $zero, 0x14($a0) +/* 3DC3B4 E00E20A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3DC3B8 E00E20A8 0803882D */ j .LE00E20B4 +/* 3DC3BC E00E20AC AC820010 */ sw $v0, 0x10($a0) +.LE00E20B0: +/* 3DC3C0 E00E20B0 AC910010 */ sw $s1, 0x10($a0) +.LE00E20B4: +/* 3DC3C4 E00E20B4 0200102D */ daddu $v0, $s0, $zero +/* 3DC3C8 E00E20B8 AC800024 */ sw $zero, 0x24($a0) +/* 3DC3CC E00E20BC E4940004 */ swc1 $f20, 4($a0) +/* 3DC3D0 E00E20C0 E4960008 */ swc1 $f22, 8($a0) +/* 3DC3D4 E00E20C4 E498000C */ swc1 $f24, 0xc($a0) +/* 3DC3D8 E00E20C8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3DC3DC E00E20CC 24030046 */ addiu $v1, $zero, 0x46 +/* 3DC3E0 E00E20D0 AC830018 */ sw $v1, 0x18($a0) +/* 3DC3E4 E00E20D4 240300B4 */ addiu $v1, $zero, 0xb4 +/* 3DC3E8 E00E20D8 AC83001C */ sw $v1, 0x1c($a0) +/* 3DC3EC E00E20DC 24030078 */ addiu $v1, $zero, 0x78 +/* 3DC3F0 E00E20E0 AC830020 */ sw $v1, 0x20($a0) +/* 3DC3F4 E00E20E4 24030014 */ addiu $v1, $zero, 0x14 +/* 3DC3F8 E00E20E8 AC830028 */ sw $v1, 0x28($a0) +/* 3DC3FC E00E20EC 240300E6 */ addiu $v1, $zero, 0xe6 +/* 3DC400 E00E20F0 AC83002C */ sw $v1, 0x2c($a0) +/* 3DC404 E00E20F4 24030032 */ addiu $v1, $zero, 0x32 +/* 3DC408 E00E20F8 AC830030 */ sw $v1, 0x30($a0) +/* 3DC40C E00E20FC 240300FF */ addiu $v1, $zero, 0xff +/* 3DC410 E00E2100 AC830034 */ sw $v1, 0x34($a0) +/* 3DC414 E00E2104 E4800038 */ swc1 $f0, 0x38($a0) +/* 3DC418 E00E2108 8FBF0034 */ lw $ra, 0x34($sp) +/* 3DC41C E00E210C 8FB20030 */ lw $s2, 0x30($sp) +/* 3DC420 E00E2110 8FB1002C */ lw $s1, 0x2c($sp) +/* 3DC424 E00E2114 8FB00028 */ lw $s0, 0x28($sp) +/* 3DC428 E00E2118 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3DC42C E00E211C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3DC430 E00E2120 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3DC434 E00E2124 03E00008 */ jr $ra +/* 3DC438 E00E2128 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3DC310/func_E00E212C.s b/asm/nonmatchings/code_3DC310/func_E00E212C.s new file mode 100644 index 0000000000..885c596fd9 --- /dev/null +++ b/asm/nonmatchings/code_3DC310/func_E00E212C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E212C +/* 3DC43C E00E212C 03E00008 */ jr $ra +/* 3DC440 E00E2130 00000000 */ nop diff --git a/asm/nonmatchings/code_3DC310/func_E00E2134.s b/asm/nonmatchings/code_3DC310/func_E00E2134.s new file mode 100644 index 0000000000..0ecbb6feb6 --- /dev/null +++ b/asm/nonmatchings/code_3DC310/func_E00E2134.s @@ -0,0 +1,46 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E2134 +/* 3DC444 E00E2134 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3DC448 E00E2138 AFBF0010 */ sw $ra, 0x10($sp) +/* 3DC44C E00E213C 8C830000 */ lw $v1, ($a0) +/* 3DC450 E00E2140 8C85000C */ lw $a1, 0xc($a0) +/* 3DC454 E00E2144 30620010 */ andi $v0, $v1, 0x10 +/* 3DC458 E00E2148 10400005 */ beqz $v0, .LE00E2160 +/* 3DC45C E00E214C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3DC460 E00E2150 00621024 */ and $v0, $v1, $v0 +/* 3DC464 E00E2154 AC820000 */ sw $v0, ($a0) +/* 3DC468 E00E2158 24020010 */ addiu $v0, $zero, 0x10 +/* 3DC46C E00E215C ACA20010 */ sw $v0, 0x10($a1) +.LE00E2160: +/* 3DC470 E00E2160 8CA30010 */ lw $v1, 0x10($a1) +/* 3DC474 E00E2164 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3DC478 E00E2168 10400002 */ beqz $v0, .LE00E2174 +/* 3DC47C E00E216C 2462FFFF */ addiu $v0, $v1, -1 +/* 3DC480 E00E2170 ACA20010 */ sw $v0, 0x10($a1) +.LE00E2174: +/* 3DC484 E00E2174 8CA20014 */ lw $v0, 0x14($a1) +/* 3DC488 E00E2178 8CA30010 */ lw $v1, 0x10($a1) +/* 3DC48C E00E217C 24460001 */ addiu $a2, $v0, 1 +/* 3DC490 E00E2180 04610005 */ bgez $v1, .LE00E2198 +/* 3DC494 E00E2184 ACA60014 */ sw $a2, 0x14($a1) +/* 3DC498 E00E2188 0C080128 */ jal func_E02004A0 +/* 3DC49C E00E218C 00000000 */ nop +/* 3DC4A0 E00E2190 0803886F */ j .LE00E21BC +/* 3DC4A4 E00E2194 00000000 */ nop +.LE00E2198: +/* 3DC4A8 E00E2198 28620010 */ slti $v0, $v1, 0x10 +/* 3DC4AC E00E219C 10400002 */ beqz $v0, .LE00E21A8 +/* 3DC4B0 E00E21A0 00031100 */ sll $v0, $v1, 4 +/* 3DC4B4 E00E21A4 ACA20024 */ sw $v0, 0x24($a1) +.LE00E21A8: +/* 3DC4B8 E00E21A8 28C20010 */ slti $v0, $a2, 0x10 +/* 3DC4BC E00E21AC 10400003 */ beqz $v0, .LE00E21BC +/* 3DC4C0 E00E21B0 00061100 */ sll $v0, $a2, 4 +/* 3DC4C4 E00E21B4 2442000F */ addiu $v0, $v0, 0xf +/* 3DC4C8 E00E21B8 ACA20024 */ sw $v0, 0x24($a1) +.LE00E21BC: +/* 3DC4CC E00E21BC 8FBF0010 */ lw $ra, 0x10($sp) +/* 3DC4D0 E00E21C0 03E00008 */ jr $ra +/* 3DC4D4 E00E21C4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3DC310/func_E00E21C8.s b/asm/nonmatchings/code_3DC310/func_E00E21C8.s new file mode 100644 index 0000000000..72721e3cab --- /dev/null +++ b/asm/nonmatchings/code_3DC310/func_E00E21C8.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E21C8 +/* 3DC4D8 E00E21C8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3DC4DC E00E21CC 3C02E00E */ lui $v0, %hi(D_E00E2218) +/* 3DC4E0 E00E21D0 24422218 */ addiu $v0, $v0, %lo(D_E00E2218) +/* 3DC4E4 E00E21D4 AFA2001C */ sw $v0, 0x1c($sp) +/* 3DC4E8 E00E21D8 2402000A */ addiu $v0, $zero, 0xa +/* 3DC4EC E00E21DC AFA20014 */ sw $v0, 0x14($sp) +/* 3DC4F0 E00E21E0 2402002D */ addiu $v0, $zero, 0x2d +/* 3DC4F4 E00E21E4 AFA40018 */ sw $a0, 0x18($sp) +/* 3DC4F8 E00E21E8 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DC4FC E00E21EC AFBF0020 */ sw $ra, 0x20($sp) +/* 3DC500 E00E21F0 0C080120 */ jal func_E0200480 +/* 3DC504 E00E21F4 AFA20010 */ sw $v0, 0x10($sp) +/* 3DC508 E00E21F8 8C430000 */ lw $v1, ($v0) +/* 3DC50C E00E21FC 34630002 */ ori $v1, $v1, 2 +/* 3DC510 E00E2200 AC430000 */ sw $v1, ($v0) +/* 3DC514 E00E2204 8FBF0020 */ lw $ra, 0x20($sp) +/* 3DC518 E00E2208 03E00008 */ jr $ra +/* 3DC51C E00E220C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3DC310/func_E00E2210.s b/asm/nonmatchings/code_3DC310/func_E00E2210.s new file mode 100644 index 0000000000..1cae24ecf8 --- /dev/null +++ b/asm/nonmatchings/code_3DC310/func_E00E2210.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E2210 +/* 3DC520 E00E2210 03E00008 */ jr $ra +/* 3DC524 E00E2214 00000000 */ nop diff --git a/asm/nonmatchings/code_3DC310/func_E00E2218.s b/asm/nonmatchings/code_3DC310/func_E00E2218.s new file mode 100644 index 0000000000..a05372f81f --- /dev/null +++ b/asm/nonmatchings/code_3DC310/func_E00E2218.s @@ -0,0 +1,516 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E2218 +/* 3DC528 E00E2218 27BDFF18 */ addiu $sp, $sp, -0xe8 +/* 3DC52C E00E221C 0080302D */ daddu $a2, $a0, $zero +/* 3DC530 E00E2220 3C07DB06 */ lui $a3, 0xdb06 +/* 3DC534 E00E2224 34E70024 */ ori $a3, $a3, 0x24 +/* 3DC538 E00E2228 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DC53C E00E222C AFB300BC */ sw $s3, 0xbc($sp) +/* 3DC540 E00E2230 3C130001 */ lui $s3, 1 +/* 3DC544 E00E2234 3C028007 */ lui $v0, %hi(D_800741F0) +/* 3DC548 E00E2238 244241F0 */ addiu $v0, $v0, %lo(D_800741F0) +/* 3DC54C E00E223C AFB700CC */ sw $s7, 0xcc($sp) +/* 3DC550 E00E2240 0040B82D */ daddu $s7, $v0, $zero +/* 3DC554 E00E2244 3C0F0001 */ lui $t7, 1 +/* 3DC558 E00E2248 35EF1630 */ ori $t7, $t7, 0x1630 +/* 3DC55C E00E224C 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3DC560 E00E2250 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3DC564 E00E2254 AFB600C8 */ sw $s6, 0xc8($sp) +/* 3DC568 E00E2258 0040B02D */ daddu $s6, $v0, $zero +/* 3DC56C E00E225C AFBF00D4 */ sw $ra, 0xd4($sp) +/* 3DC570 E00E2260 AFBE00D0 */ sw $fp, 0xd0($sp) +/* 3DC574 E00E2264 AFB500C4 */ sw $s5, 0xc4($sp) +/* 3DC578 E00E2268 AFB400C0 */ sw $s4, 0xc0($sp) +/* 3DC57C E00E226C AFB200B8 */ sw $s2, 0xb8($sp) +/* 3DC580 E00E2270 AFB100B4 */ sw $s1, 0xb4($sp) +/* 3DC584 E00E2274 AFB000B0 */ sw $s0, 0xb0($sp) +/* 3DC588 E00E2278 F7B600E0 */ sdc1 $f22, 0xe0($sp) +/* 3DC58C E00E227C F7B400D8 */ sdc1 $f20, 0xd8($sp) +/* 3DC590 E00E2280 AFAF00A8 */ sw $t7, 0xa8($sp) +/* 3DC594 E00E2284 8EC50000 */ lw $a1, ($s6) +/* 3DC598 E00E2288 8CD5000C */ lw $s5, 0xc($a2) +/* 3DC59C E00E228C 00A0182D */ daddu $v1, $a1, $zero +/* 3DC5A0 E00E2290 24A50008 */ addiu $a1, $a1, 8 +/* 3DC5A4 E00E2294 AEC50000 */ sw $a1, ($s6) +/* 3DC5A8 E00E2298 8EAF0014 */ lw $t7, 0x14($s5) +/* 3DC5AC E00E229C 36731630 */ ori $s3, $s3, 0x1630 +/* 3DC5B0 E00E22A0 AFAF00A0 */ sw $t7, 0xa0($sp) +/* 3DC5B4 E00E22A4 8EB10024 */ lw $s1, 0x24($s5) +/* 3DC5B8 E00E22A8 3C02E700 */ lui $v0, 0xe700 +/* 3DC5BC E00E22AC AC620000 */ sw $v0, ($v1) +/* 3DC5C0 E00E22B0 AC600004 */ sw $zero, 4($v1) +/* 3DC5C4 E00E22B4 ACA70000 */ sw $a3, ($a1) +/* 3DC5C8 E00E22B8 8CC30010 */ lw $v1, 0x10($a2) +/* 3DC5CC E00E22BC 24A20008 */ addiu $v0, $a1, 8 +/* 3DC5D0 E00E22C0 AEC20000 */ sw $v0, ($s6) +/* 3DC5D4 E00E22C4 8C62001C */ lw $v0, 0x1c($v1) +/* 3DC5D8 E00E22C8 3C038000 */ lui $v1, 0x8000 +/* 3DC5DC E00E22CC 00431021 */ addu $v0, $v0, $v1 +/* 3DC5E0 E00E22D0 3C03800B */ lui $v1, %hi(gCameras) +/* 3DC5E4 E00E22D4 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3DC5E8 E00E22D8 ACA20004 */ sw $v0, 4($a1) +/* 3DC5EC E00E22DC 8EA50004 */ lw $a1, 4($s5) +/* 3DC5F0 E00E22E0 8EA60008 */ lw $a2, 8($s5) +/* 3DC5F4 E00E22E4 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3DC5F8 E00E22E8 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3DC5FC E00E22EC 8EA7000C */ lw $a3, 0xc($s5) +/* 3DC600 E00E22F0 00028080 */ sll $s0, $v0, 2 +/* 3DC604 E00E22F4 02028021 */ addu $s0, $s0, $v0 +/* 3DC608 E00E22F8 00108080 */ sll $s0, $s0, 2 +/* 3DC60C E00E22FC 02028023 */ subu $s0, $s0, $v0 +/* 3DC610 E00E2300 001010C0 */ sll $v0, $s0, 3 +/* 3DC614 E00E2304 02028021 */ addu $s0, $s0, $v0 +/* 3DC618 E00E2308 001080C0 */ sll $s0, $s0, 3 +/* 3DC61C E00E230C 0C080108 */ jal func_E0200420 +/* 3DC620 E00E2310 02038021 */ addu $s0, $s0, $v1 +/* 3DC624 E00E2314 27B20060 */ addiu $s2, $sp, 0x60 +/* 3DC628 E00E2318 8EA50038 */ lw $a1, 0x38($s5) +/* 3DC62C E00E231C 0240202D */ daddu $a0, $s2, $zero +/* 3DC630 E00E2320 00A0302D */ daddu $a2, $a1, $zero +/* 3DC634 E00E2324 0C080110 */ jal func_E0200440 +/* 3DC638 E00E2328 00A0382D */ daddu $a3, $a1, $zero +/* 3DC63C E00E232C 0240202D */ daddu $a0, $s2, $zero +/* 3DC640 E00E2330 27A50020 */ addiu $a1, $sp, 0x20 +/* 3DC644 E00E2334 0C080114 */ jal func_E0200450 +/* 3DC648 E00E2338 00A0302D */ daddu $a2, $a1, $zero +/* 3DC64C E00E233C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DC650 E00E2340 96E50000 */ lhu $a1, ($s7) +/* 3DC654 E00E2344 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3DC658 E00E2348 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3DC65C E00E234C 00052980 */ sll $a1, $a1, 6 +/* 3DC660 E00E2350 00B32821 */ addu $a1, $a1, $s3 +/* 3DC664 E00E2354 0C080118 */ jal func_E0200460 +/* 3DC668 E00E2358 00452821 */ addu $a1, $v0, $a1 +/* 3DC66C E00E235C 3C03DA38 */ lui $v1, 0xda38 +/* 3DC670 E00E2360 34630002 */ ori $v1, $v1, 2 +/* 3DC674 E00E2364 3C0ADA38 */ lui $t2, 0xda38 +/* 3DC678 E00E2368 354A0001 */ ori $t2, $t2, 1 +/* 3DC67C E00E236C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DC680 E00E2370 323100FF */ andi $s1, $s1, 0xff +/* 3DC684 E00E2374 8EC80000 */ lw $t0, ($s6) +/* 3DC688 E00E2378 3C0541A0 */ lui $a1, 0x41a0 +/* 3DC68C E00E237C 3C013F80 */ lui $at, 0x3f80 +/* 3DC690 E00E2380 4481B000 */ mtc1 $at, $f22 +/* 3DC694 E00E2384 4480A000 */ mtc1 $zero, $f20 +/* 3DC698 E00E2388 96E20000 */ lhu $v0, ($s7) +/* 3DC69C E00E238C 0100482D */ daddu $t1, $t0, $zero +/* 3DC6A0 E00E2390 25080008 */ addiu $t0, $t0, 8 +/* 3DC6A4 E00E2394 AEC80000 */ sw $t0, ($s6) +/* 3DC6A8 E00E2398 AD230000 */ sw $v1, ($t1) +/* 3DC6AC E00E239C 24430001 */ addiu $v1, $v0, 1 +/* 3DC6B0 E00E23A0 3042FFFF */ andi $v0, $v0, 0xffff +/* 3DC6B4 E00E23A4 00021180 */ sll $v0, $v0, 6 +/* 3DC6B8 E00E23A8 4406B000 */ mfc1 $a2, $f22 +/* 3DC6BC E00E23AC 00531021 */ addu $v0, $v0, $s3 +/* 3DC6C0 E00E23B0 A6E30000 */ sh $v1, ($s7) +/* 3DC6C4 E00E23B4 3C03800A */ lui $v1, %hi(D_8009A674) +/* 3DC6C8 E00E23B8 8C63A674 */ lw $v1, %lo(D_8009A674)($v1) +/* 3DC6CC E00E23BC 4407A000 */ mfc1 $a3, $f20 +/* 3DC6D0 E00E23C0 00621821 */ addu $v1, $v1, $v0 +/* 3DC6D4 E00E23C4 25020008 */ addiu $v0, $t0, 8 +/* 3DC6D8 E00E23C8 AD230004 */ sw $v1, 4($t1) +/* 3DC6DC E00E23CC AEC20000 */ sw $v0, ($s6) +/* 3DC6E0 E00E23D0 25020010 */ addiu $v0, $t0, 0x10 +/* 3DC6E4 E00E23D4 AD0A0000 */ sw $t2, ($t0) +/* 3DC6E8 E00E23D8 AEC20000 */ sw $v0, ($s6) +/* 3DC6EC E00E23DC 8E030204 */ lw $v1, 0x204($s0) +/* 3DC6F0 E00E23E0 3C02FA00 */ lui $v0, 0xfa00 +/* 3DC6F4 E00E23E4 AD020008 */ sw $v0, 8($t0) +/* 3DC6F8 E00E23E8 AD030004 */ sw $v1, 4($t0) +/* 3DC6FC E00E23EC 92A2001B */ lbu $v0, 0x1b($s5) +/* 3DC700 E00E23F0 92A9001F */ lbu $t1, 0x1f($s5) +/* 3DC704 E00E23F4 92AA0023 */ lbu $t2, 0x23($s5) +/* 3DC708 E00E23F8 25030018 */ addiu $v1, $t0, 0x18 +/* 3DC70C E00E23FC AEC30000 */ sw $v1, ($s6) +/* 3DC710 E00E2400 3C03FB00 */ lui $v1, 0xfb00 +/* 3DC714 E00E2404 AD030010 */ sw $v1, 0x10($t0) +/* 3DC718 E00E2408 00021600 */ sll $v0, $v0, 0x18 +/* 3DC71C E00E240C 00094C00 */ sll $t1, $t1, 0x10 +/* 3DC720 E00E2410 00491025 */ or $v0, $v0, $t1 +/* 3DC724 E00E2414 000A5200 */ sll $t2, $t2, 8 +/* 3DC728 E00E2418 004A1025 */ or $v0, $v0, $t2 +/* 3DC72C E00E241C 00511025 */ or $v0, $v0, $s1 +/* 3DC730 E00E2420 AD02000C */ sw $v0, 0xc($t0) +/* 3DC734 E00E2424 92A3002B */ lbu $v1, 0x2b($s5) +/* 3DC738 E00E2428 92A9002F */ lbu $t1, 0x2f($s5) +/* 3DC73C E00E242C 92AA0033 */ lbu $t2, 0x33($s5) +/* 3DC740 E00E2430 92AB0037 */ lbu $t3, 0x37($s5) +/* 3DC744 E00E2434 25020020 */ addiu $v0, $t0, 0x20 +/* 3DC748 E00E2438 AEC20000 */ sw $v0, ($s6) +/* 3DC74C E00E243C 3C02DE00 */ lui $v0, 0xde00 +/* 3DC750 E00E2440 AD020018 */ sw $v0, 0x18($t0) +/* 3DC754 E00E2444 25020030 */ addiu $v0, $t0, 0x30 +/* 3DC758 E00E2448 AEC20000 */ sw $v0, ($s6) +/* 3DC75C E00E244C 00031E00 */ sll $v1, $v1, 0x18 +/* 3DC760 E00E2450 00094C00 */ sll $t1, $t1, 0x10 +/* 3DC764 E00E2454 00691825 */ or $v1, $v1, $t1 +/* 3DC768 E00E2458 000A5200 */ sll $t2, $t2, 8 +/* 3DC76C E00E245C 006A1825 */ or $v1, $v1, $t2 +/* 3DC770 E00E2460 006B1825 */ or $v1, $v1, $t3 +/* 3DC774 E00E2464 AD030014 */ sw $v1, 0x14($t0) +/* 3DC778 E00E2468 3C09E00E */ lui $t1, %hi(D_E00E29F0) +/* 3DC77C E00E246C 8D2929F0 */ lw $t1, %lo(D_E00E29F0)($t1) +/* 3DC780 E00E2470 3C02DE01 */ lui $v0, 0xde01 +/* 3DC784 E00E2474 AD020020 */ sw $v0, 0x20($t0) +/* 3DC788 E00E2478 250201C0 */ addiu $v0, $t0, 0x1c0 +/* 3DC78C E00E247C AD020024 */ sw $v0, 0x24($t0) +/* 3DC790 E00E2480 8FAF00A0 */ lw $t7, 0xa0($sp) +/* 3DC794 E00E2484 3C03F200 */ lui $v1, 0xf200 +/* 3DC798 E00E2488 000F80C0 */ sll $s0, $t7, 3 +/* 3DC79C E00E248C 32020FFF */ andi $v0, $s0, 0xfff +/* 3DC7A0 E00E2490 00021300 */ sll $v0, $v0, 0xc +/* 3DC7A4 E00E2494 00431025 */ or $v0, $v0, $v1 +/* 3DC7A8 E00E2498 AD020028 */ sw $v0, 0x28($t0) +/* 3DC7AC E00E249C 0200102D */ daddu $v0, $s0, $zero +/* 3DC7B0 E00E24A0 244201FC */ addiu $v0, $v0, 0x1fc +/* 3DC7B4 E00E24A4 30420FFF */ andi $v0, $v0, 0xfff +/* 3DC7B8 E00E24A8 00021300 */ sll $v0, $v0, 0xc +/* 3DC7BC E00E24AC 3442007C */ ori $v0, $v0, 0x7c +/* 3DC7C0 E00E24B0 AD02002C */ sw $v0, 0x2c($t0) +/* 3DC7C4 E00E24B4 AD09001C */ sw $t1, 0x1c($t0) +/* 3DC7C8 E00E24B8 25080028 */ addiu $t0, $t0, 0x28 +/* 3DC7CC E00E24BC E7B40010 */ swc1 $f20, 0x10($sp) +/* 3DC7D0 E00E24C0 0C080104 */ jal func_E0200410 +/* 3DC7D4 E00E24C4 AFA800A4 */ sw $t0, 0xa4($sp) +/* 3DC7D8 E00E24C8 3C01E00E */ lui $at, %hi(D_E00E2A30) +/* 3DC7DC E00E24CC D4202A30 */ ldc1 $f0, %lo(D_E00E2A30)($at) +/* 3DC7E0 E00E24D0 44906000 */ mtc1 $s0, $f12 +/* 3DC7E4 E00E24D4 00000000 */ nop +/* 3DC7E8 E00E24D8 46806321 */ cvt.d.w $f12, $f12 +/* 3DC7EC E00E24DC 46206300 */ add.d $f12, $f12, $f0 +/* 3DC7F0 E00E24E0 0000A02D */ daddu $s4, $zero, $zero +/* 3DC7F4 E00E24E4 0C080140 */ jal func_E0200500 +/* 3DC7F8 E00E24E8 46206320 */ cvt.s.d $f12, $f12 +/* 3DC7FC E00E24EC 3C01C1F0 */ lui $at, 0xc1f0 +/* 3DC800 E00E24F0 44811000 */ mtc1 $at, $f2 +/* 3DC804 E00E24F4 3C1E0900 */ lui $fp, 0x900 +/* 3DC808 E00E24F8 27DE10A8 */ addiu $fp, $fp, 0x10a8 +/* 3DC80C E00E24FC 46020002 */ mul.s $f0, $f0, $f2 +/* 3DC810 E00E2500 00000000 */ nop +/* 3DC814 E00E2504 24110002 */ addiu $s1, $zero, 2 +/* 3DC818 E00E2508 4405A000 */ mfc1 $a1, $f20 +/* 3DC81C E00E250C 4407A000 */ mfc1 $a3, $f20 +/* 3DC820 E00E2510 3C0140C0 */ lui $at, 0x40c0 +/* 3DC824 E00E2514 44812000 */ mtc1 $at, $f4 +/* 3DC828 E00E2518 44060000 */ mfc1 $a2, $f0 +/* 3DC82C E00E251C 0240202D */ daddu $a0, $s2, $zero +/* 3DC830 E00E2520 E7B60010 */ swc1 $f22, 0x10($sp) +/* 3DC834 E00E2524 E7B40018 */ swc1 $f20, 0x18($sp) +/* 3DC838 E00E2528 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 3DC83C E00E252C 0C080180 */ jal func_E0200600 +/* 3DC840 E00E2530 E7A40014 */ swc1 $f4, 0x14($sp) +/* 3DC844 E00E2534 0240202D */ daddu $a0, $s2, $zero +/* 3DC848 E00E2538 27A50020 */ addiu $a1, $sp, 0x20 +/* 3DC84C E00E253C 0C080114 */ jal func_E0200450 +/* 3DC850 E00E2540 00A0302D */ daddu $a2, $a1, $zero +/* 3DC854 E00E2544 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DC858 E00E2548 96E50000 */ lhu $a1, ($s7) +/* 3DC85C E00E254C 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3DC860 E00E2550 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3DC864 E00E2554 00052980 */ sll $a1, $a1, 6 +/* 3DC868 E00E2558 00B32821 */ addu $a1, $a1, $s3 +/* 3DC86C E00E255C 0C080118 */ jal func_E0200460 +/* 3DC870 E00E2560 00452821 */ addu $a1, $v0, $a1 +/* 3DC874 E00E2564 8EC20000 */ lw $v0, ($s6) +/* 3DC878 E00E2568 0280802D */ daddu $s0, $s4, $zero +/* 3DC87C E00E256C 0040202D */ daddu $a0, $v0, $zero +/* 3DC880 E00E2570 24420008 */ addiu $v0, $v0, 8 +/* 3DC884 E00E2574 AEC20000 */ sw $v0, ($s6) +/* 3DC888 E00E2578 96E20000 */ lhu $v0, ($s7) +/* 3DC88C E00E257C 3C03DA38 */ lui $v1, 0xda38 +/* 3DC890 E00E2580 AC830000 */ sw $v1, ($a0) +/* 3DC894 E00E2584 24430001 */ addiu $v1, $v0, 1 +/* 3DC898 E00E2588 3042FFFF */ andi $v0, $v0, 0xffff +/* 3DC89C E00E258C 00021180 */ sll $v0, $v0, 6 +/* 3DC8A0 E00E2590 A6E30000 */ sh $v1, ($s7) +/* 3DC8A4 E00E2594 3C03800A */ lui $v1, %hi(D_8009A674) +/* 3DC8A8 E00E2598 8C63A674 */ lw $v1, %lo(D_8009A674)($v1) +/* 3DC8AC E00E259C 00531021 */ addu $v0, $v0, $s3 +/* 3DC8B0 E00E25A0 00621821 */ addu $v1, $v1, $v0 +/* 3DC8B4 E00E25A4 AC830004 */ sw $v1, 4($a0) +.LE00E25A8: +/* 3DC8B8 E00E25A8 8FAF00A0 */ lw $t7, 0xa0($sp) +/* 3DC8BC E00E25AC 000F10C0 */ sll $v0, $t7, 3 +/* 3DC8C0 E00E25B0 02021021 */ addu $v0, $s0, $v0 +/* 3DC8C4 E00E25B4 44826000 */ mtc1 $v0, $f12 +/* 3DC8C8 E00E25B8 00000000 */ nop +/* 3DC8CC E00E25BC 46806320 */ cvt.s.w $f12, $f12 +/* 3DC8D0 E00E25C0 0C080140 */ jal func_E0200500 +/* 3DC8D4 E00E25C4 26100030 */ addiu $s0, $s0, 0x30 +/* 3DC8D8 E00E25C8 44941000 */ mtc1 $s4, $f2 +/* 3DC8DC E00E25CC 00000000 */ nop +/* 3DC8E0 E00E25D0 468010A0 */ cvt.s.w $f2, $f2 +/* 3DC8E4 E00E25D4 3C01E00E */ lui $at, %hi(D_E00E2A38) +/* 3DC8E8 E00E25D8 D4242A38 */ ldc1 $f4, %lo(D_E00E2A38)($at) +/* 3DC8EC E00E25DC 460010A1 */ cvt.d.s $f2, $f2 +/* 3DC8F0 E00E25E0 46241082 */ mul.d $f2, $f2, $f4 +/* 3DC8F4 E00E25E4 00000000 */ nop +/* 3DC8F8 E00E25E8 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DC8FC E00E25EC 3C0141F0 */ lui $at, 0x41f0 +/* 3DC900 E00E25F0 44812000 */ mtc1 $at, $f4 +/* 3DC904 E00E25F4 00000000 */ nop +/* 3DC908 E00E25F8 46040002 */ mul.s $f0, $f0, $f4 +/* 3DC90C E00E25FC 00000000 */ nop +/* 3DC910 E00E2600 4405A000 */ mfc1 $a1, $f20 +/* 3DC914 E00E2604 3C0740C0 */ lui $a3, 0x40c0 +/* 3DC918 E00E2608 26940001 */ addiu $s4, $s4, 1 +/* 3DC91C E00E260C E7B40018 */ swc1 $f20, 0x18($sp) +/* 3DC920 E00E2610 44060000 */ mfc1 $a2, $f0 +/* 3DC924 E00E2614 3C013FF0 */ lui $at, 0x3ff0 +/* 3DC928 E00E2618 44810800 */ mtc1 $at, $f1 +/* 3DC92C E00E261C 44800000 */ mtc1 $zero, $f0 +/* 3DC930 E00E2620 3C014100 */ lui $at, 0x4100 +/* 3DC934 E00E2624 44812000 */ mtc1 $at, $f4 +/* 3DC938 E00E2628 46201080 */ add.d $f2, $f2, $f0 +/* 3DC93C E00E262C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 3DC940 E00E2630 E7A40014 */ swc1 $f4, 0x14($sp) +/* 3DC944 E00E2634 462010A0 */ cvt.s.d $f2, $f2 +/* 3DC948 E00E2638 0C080180 */ jal func_E0200600 +/* 3DC94C E00E263C E7A20010 */ swc1 $f2, 0x10($sp) +/* 3DC950 E00E2640 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DC954 E00E2644 96E50000 */ lhu $a1, ($s7) +/* 3DC958 E00E2648 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3DC95C E00E264C 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 3DC960 E00E2650 8FAF00A8 */ lw $t7, 0xa8($sp) +/* 3DC964 E00E2654 00052980 */ sll $a1, $a1, 6 +/* 3DC968 E00E2658 00AF2821 */ addu $a1, $a1, $t7 +/* 3DC96C E00E265C 0C080118 */ jal func_E0200460 +/* 3DC970 E00E2660 00452821 */ addu $a1, $v0, $a1 +/* 3DC974 E00E2664 3C02DA38 */ lui $v0, 0xda38 +/* 3DC978 E00E2668 34420001 */ ori $v0, $v0, 1 +/* 3DC97C E00E266C 3C080100 */ lui $t0, 0x100 +/* 3DC980 E00E2670 35082000 */ ori $t0, $t0, 0x2000 +/* 3DC984 E00E2674 3226007F */ andi $a2, $s1, 0x7f +/* 3DC988 E00E2678 26310002 */ addiu $s1, $s1, 2 +/* 3DC98C E00E267C 00063040 */ sll $a2, $a2, 1 +/* 3DC990 E00E2680 00C83025 */ or $a2, $a2, $t0 +/* 3DC994 E00E2684 8EC40000 */ lw $a0, ($s6) +/* 3DC998 E00E2688 96E50000 */ lhu $a1, ($s7) +/* 3DC99C E00E268C 3C03800A */ lui $v1, %hi(D_8009A674) +/* 3DC9A0 E00E2690 8C63A674 */ lw $v1, %lo(D_8009A674)($v1) +/* 3DC9A4 E00E2694 0080382D */ daddu $a3, $a0, $zero +/* 3DC9A8 E00E2698 24840008 */ addiu $a0, $a0, 8 +/* 3DC9AC E00E269C ACE20000 */ sw $v0, ($a3) +/* 3DC9B0 E00E26A0 30A2FFFF */ andi $v0, $a1, 0xffff +/* 3DC9B4 E00E26A4 00021180 */ sll $v0, $v0, 6 +/* 3DC9B8 E00E26A8 8FAF00A8 */ lw $t7, 0xa8($sp) +/* 3DC9BC E00E26AC 24A50001 */ addiu $a1, $a1, 1 +/* 3DC9C0 E00E26B0 004F1021 */ addu $v0, $v0, $t7 +/* 3DC9C4 E00E26B4 00621821 */ addu $v1, $v1, $v0 +/* 3DC9C8 E00E26B8 ACE30004 */ sw $v1, 4($a3) +/* 3DC9CC E00E26BC AC9E0004 */ sw $fp, 4($a0) +/* 3DC9D0 E00E26C0 27DE0020 */ addiu $fp, $fp, 0x20 +/* 3DC9D4 E00E26C4 24820008 */ addiu $v0, $a0, 8 +/* 3DC9D8 E00E26C8 AEC40000 */ sw $a0, ($s6) +/* 3DC9DC E00E26CC A6E50000 */ sh $a1, ($s7) +/* 3DC9E0 E00E26D0 AEC20000 */ sw $v0, ($s6) +/* 3DC9E4 E00E26D4 2A820010 */ slti $v0, $s4, 0x10 +/* 3DC9E8 E00E26D8 1440FFB3 */ bnez $v0, .LE00E25A8 +/* 3DC9EC E00E26DC AC860000 */ sw $a2, ($a0) +/* 3DC9F0 E00E26E0 0000A02D */ daddu $s4, $zero, $zero +/* 3DC9F4 E00E26E4 3C0B800A */ lui $t3, %hi(D_8009A66C) +/* 3DC9F8 E00E26E8 256BA66C */ addiu $t3, $t3, %lo(D_8009A66C) +/* 3DC9FC E00E26EC 3C0A0600 */ lui $t2, 0x600 +/* 3DCA00 E00E26F0 24090001 */ addiu $t1, $zero, 1 +/* 3DCA04 E00E26F4 3C0E0606 */ lui $t6, 0x606 +/* 3DCA08 E00E26F8 35CE0402 */ ori $t6, $t6, 0x402 +/* 3DCA0C E00E26FC 3C0D0002 */ lui $t5, 2 +/* 3DCA10 E00E2700 35AD0406 */ ori $t5, $t5, 0x406 +/* 3DCA14 E00E2704 3C0C0006 */ lui $t4, 6 +/* 3DCA18 E00E2708 358C0804 */ ori $t4, $t4, 0x804 +/* 3DCA1C E00E270C 24070004 */ addiu $a3, $zero, 4 +/* 3DCA20 E00E2710 24060002 */ addiu $a2, $zero, 2 +/* 3DCA24 E00E2714 24080006 */ addiu $t0, $zero, 6 +.LE00E2718: +/* 3DCA28 E00E2718 8D640000 */ lw $a0, ($t3) +/* 3DCA2C E00E271C 00142840 */ sll $a1, $s4, 1 +/* 3DCA30 E00E2720 24820008 */ addiu $v0, $a0, 8 +/* 3DCA34 E00E2724 14A00004 */ bnez $a1, .LE00E2738 +/* 3DCA38 E00E2728 AD620000 */ sw $v0, ($t3) +/* 3DCA3C E00E272C 00141440 */ sll $v0, $s4, 0x11 +/* 3DCA40 E00E2730 080389D8 */ j .LE00E2760 +/* 3DCA44 E00E2734 34420402 */ ori $v0, $v0, 0x402 +.LE00E2738: +/* 3DCA48 E00E2738 14A90003 */ bne $a1, $t1, .LE00E2748 +/* 3DCA4C E00E273C 30C200FF */ andi $v0, $a2, 0xff +/* 3DCA50 E00E2740 080389DA */ j .LE00E2768 +/* 3DCA54 E00E2744 AC8E0000 */ sw $t6, ($a0) +.LE00E2748: +/* 3DCA58 E00E2748 00021400 */ sll $v0, $v0, 0x10 +/* 3DCA5C E00E274C 00141A80 */ sll $v1, $s4, 0xa +/* 3DCA60 E00E2750 3063FC00 */ andi $v1, $v1, 0xfc00 +/* 3DCA64 E00E2754 00431025 */ or $v0, $v0, $v1 +/* 3DCA68 E00E2758 30E300FF */ andi $v1, $a3, 0xff +/* 3DCA6C E00E275C 00431025 */ or $v0, $v0, $v1 +.LE00E2760: +/* 3DCA70 E00E2760 004A1025 */ or $v0, $v0, $t2 +/* 3DCA74 E00E2764 AC820000 */ sw $v0, ($a0) +.LE00E2768: +/* 3DCA78 E00E2768 14A00003 */ bnez $a1, .LE00E2778 +/* 3DCA7C E00E276C 00000000 */ nop +/* 3DCA80 E00E2770 080389E9 */ j .LE00E27A4 +/* 3DCA84 E00E2774 AC8D0004 */ sw $t5, 4($a0) +.LE00E2778: +/* 3DCA88 E00E2778 14A90003 */ bne $a1, $t1, .LE00E2788 +/* 3DCA8C E00E277C 310200FF */ andi $v0, $t0, 0xff +/* 3DCA90 E00E2780 080389E9 */ j .LE00E27A4 +/* 3DCA94 E00E2784 AC8C0004 */ sw $t4, 4($a0) +.LE00E2788: +/* 3DCA98 E00E2788 00021400 */ sll $v0, $v0, 0x10 +/* 3DCA9C E00E278C 30C300FF */ andi $v1, $a2, 0xff +/* 3DCAA0 E00E2790 00031A00 */ sll $v1, $v1, 8 +/* 3DCAA4 E00E2794 00431025 */ or $v0, $v0, $v1 +/* 3DCAA8 E00E2798 30E300FF */ andi $v1, $a3, 0xff +/* 3DCAAC E00E279C 00431025 */ or $v0, $v0, $v1 +/* 3DCAB0 E00E27A0 AC820004 */ sw $v0, 4($a0) +.LE00E27A4: +/* 3DCAB4 E00E27A4 24E70004 */ addiu $a3, $a3, 4 +/* 3DCAB8 E00E27A8 24C60004 */ addiu $a2, $a2, 4 +/* 3DCABC E00E27AC 26940001 */ addiu $s4, $s4, 1 +/* 3DCAC0 E00E27B0 2A82000F */ slti $v0, $s4, 0xf +/* 3DCAC4 E00E27B4 1440FFD8 */ bnez $v0, .LE00E2718 +/* 3DCAC8 E00E27B8 25080004 */ addiu $t0, $t0, 4 +/* 3DCACC E00E27BC 3C03D838 */ lui $v1, 0xd838 +/* 3DCAD0 E00E27C0 34630002 */ ori $v1, $v1, 2 +/* 3DCAD4 E00E27C4 0000A02D */ daddu $s4, $zero, $zero +/* 3DCAD8 E00E27C8 3C1E800A */ lui $fp, %hi(D_8009A674) +/* 3DCADC E00E27CC 27DEA674 */ addiu $fp, $fp, %lo(D_8009A674) +/* 3DCAE0 E00E27D0 3C178007 */ lui $s7, %hi(D_800741F0) +/* 3DCAE4 E00E27D4 26F741F0 */ addiu $s7, $s7, %lo(D_800741F0) +/* 3DCAE8 E00E27D8 3C160001 */ lui $s6, 1 +/* 3DCAEC E00E27DC 36D61630 */ ori $s6, $s6, 0x1630 +/* 3DCAF0 E00E27E0 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3DCAF4 E00E27E4 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3DCAF8 E00E27E8 0040902D */ daddu $s2, $v0, $zero +/* 3DCAFC E00E27EC 2413FEE6 */ addiu $s3, $zero, -0x11a +/* 3DCB00 E00E27F0 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3DCB04 E00E27F4 8E420000 */ lw $v0, ($s2) +/* 3DCB08 E00E27F8 4480A000 */ mtc1 $zero, $f20 +/* 3DCB0C E00E27FC 0040202D */ daddu $a0, $v0, $zero +/* 3DCB10 E00E2800 24420008 */ addiu $v0, $v0, 8 +/* 3DCB14 E00E2804 AE420000 */ sw $v0, ($s2) +/* 3DCB18 E00E2808 AC830000 */ sw $v1, ($a0) +/* 3DCB1C E00E280C 24030040 */ addiu $v1, $zero, 0x40 +/* 3DCB20 E00E2810 AC830004 */ sw $v1, 4($a0) +/* 3DCB24 E00E2814 24430008 */ addiu $v1, $v0, 8 +/* 3DCB28 E00E2818 AE430000 */ sw $v1, ($s2) +/* 3DCB2C E00E281C 3C03DF00 */ lui $v1, 0xdf00 +/* 3DCB30 E00E2820 AC430000 */ sw $v1, ($v0) +/* 3DCB34 E00E2824 AC400004 */ sw $zero, 4($v0) +.LE00E2828: +/* 3DCB38 E00E2828 3C027878 */ lui $v0, 0x7878 +/* 3DCB3C E00E282C 34427879 */ ori $v0, $v0, 0x7879 +/* 3DCB40 E00E2830 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DCB44 E00E2834 44933000 */ mtc1 $s3, $f6 +/* 3DCB48 E00E2838 00000000 */ nop +/* 3DCB4C E00E283C 468031A0 */ cvt.s.w $f6, $f6 +/* 3DCB50 E00E2840 26730024 */ addiu $s3, $s3, 0x24 +/* 3DCB54 E00E2844 26940001 */ addiu $s4, $s4, 1 +/* 3DCB58 E00E2848 02020018 */ mult $s0, $v0 +/* 3DCB5C E00E284C 44073000 */ mfc1 $a3, $f6 +/* 3DCB60 E00E2850 4405A000 */ mfc1 $a1, $f20 +/* 3DCB64 E00E2854 4406A000 */ mfc1 $a2, $f20 +/* 3DCB68 E00E2858 3C013F80 */ lui $at, 0x3f80 +/* 3DCB6C E00E285C 44810000 */ mtc1 $at, $f0 +/* 3DCB70 E00E2860 001017C3 */ sra $v0, $s0, 0x1f +/* 3DCB74 E00E2864 E7B40014 */ swc1 $f20, 0x14($sp) +/* 3DCB78 E00E2868 E7B40018 */ swc1 $f20, 0x18($sp) +/* 3DCB7C E00E286C E7B4001C */ swc1 $f20, 0x1c($sp) +/* 3DCB80 E00E2870 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3DCB84 E00E2874 00007810 */ mfhi $t7 +/* 3DCB88 E00E2878 000F18C3 */ sra $v1, $t7, 3 +/* 3DCB8C E00E287C 00628823 */ subu $s1, $v1, $v0 +/* 3DCB90 E00E2880 00111100 */ sll $v0, $s1, 4 +/* 3DCB94 E00E2884 00511021 */ addu $v0, $v0, $s1 +/* 3DCB98 E00E2888 0C080180 */ jal func_E0200600 +/* 3DCB9C E00E288C 02028823 */ subu $s1, $s0, $v0 +/* 3DCBA0 E00E2890 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DCBA4 E00E2894 26100004 */ addiu $s0, $s0, 4 +/* 3DCBA8 E00E2898 96E50000 */ lhu $a1, ($s7) +/* 3DCBAC E00E289C 8FC20000 */ lw $v0, ($fp) +/* 3DCBB0 E00E28A0 00052980 */ sll $a1, $a1, 6 +/* 3DCBB4 E00E28A4 00B62821 */ addu $a1, $a1, $s6 +/* 3DCBB8 E00E28A8 0C080118 */ jal func_E0200460 +/* 3DCBBC E00E28AC 00452821 */ addu $a1, $v0, $a1 +/* 3DCBC0 E00E28B0 3C09D838 */ lui $t1, 0xd838 +/* 3DCBC4 E00E28B4 35290002 */ ori $t1, $t1, 2 +/* 3DCBC8 E00E28B8 8E440000 */ lw $a0, ($s2) +/* 3DCBCC E00E28BC 3C03DA38 */ lui $v1, 0xda38 +/* 3DCBD0 E00E28C0 0080282D */ daddu $a1, $a0, $zero +/* 3DCBD4 E00E28C4 24840008 */ addiu $a0, $a0, 8 +/* 3DCBD8 E00E28C8 AE440000 */ sw $a0, ($s2) +/* 3DCBDC E00E28CC 96E20000 */ lhu $v0, ($s7) +/* 3DCBE0 E00E28D0 24080040 */ addiu $t0, $zero, 0x40 +/* 3DCBE4 E00E28D4 ACA30000 */ sw $v1, ($a1) +/* 3DCBE8 E00E28D8 24430001 */ addiu $v1, $v0, 1 +/* 3DCBEC E00E28DC 3042FFFF */ andi $v0, $v0, 0xffff +/* 3DCBF0 E00E28E0 00021180 */ sll $v0, $v0, 6 +/* 3DCBF4 E00E28E4 A6E30000 */ sh $v1, ($s7) +/* 3DCBF8 E00E28E8 8FC30000 */ lw $v1, ($fp) +/* 3DCBFC E00E28EC 00561021 */ addu $v0, $v0, $s6 +/* 3DCC00 E00E28F0 00621821 */ addu $v1, $v1, $v0 +/* 3DCC04 E00E28F4 24820008 */ addiu $v0, $a0, 8 +/* 3DCC08 E00E28F8 ACA30004 */ sw $v1, 4($a1) +/* 3DCC0C E00E28FC AE420000 */ sw $v0, ($s2) +/* 3DCC10 E00E2900 3C02FA00 */ lui $v0, 0xfa00 +/* 3DCC14 E00E2904 AC820000 */ sw $v0, ($a0) +/* 3DCC18 E00E2908 3C03E00E */ lui $v1, %hi(D_E00E29F4) +/* 3DCC1C E00E290C 00711821 */ addu $v1, $v1, $s1 +/* 3DCC20 E00E2910 906329F4 */ lbu $v1, %lo(D_E00E29F4)($v1) +/* 3DCC24 E00E2914 3C05E00E */ lui $a1, %hi(D_E00E2A08) +/* 3DCC28 E00E2918 00B12821 */ addu $a1, $a1, $s1 +/* 3DCC2C E00E291C 90A52A08 */ lbu $a1, %lo(D_E00E2A08)($a1) +/* 3DCC30 E00E2920 3C06E00E */ lui $a2, %hi(D_E00E2A1C) +/* 3DCC34 E00E2924 00D13021 */ addu $a2, $a2, $s1 +/* 3DCC38 E00E2928 90C62A1C */ lbu $a2, %lo(D_E00E2A1C)($a2) +/* 3DCC3C E00E292C 92A70027 */ lbu $a3, 0x27($s5) +/* 3DCC40 E00E2930 24820010 */ addiu $v0, $a0, 0x10 +/* 3DCC44 E00E2934 AE420000 */ sw $v0, ($s2) +/* 3DCC48 E00E2938 3C02FB00 */ lui $v0, 0xfb00 +/* 3DCC4C E00E293C AC820008 */ sw $v0, 8($a0) +/* 3DCC50 E00E2940 2402FF00 */ addiu $v0, $zero, -0x100 +/* 3DCC54 E00E2944 AC82000C */ sw $v0, 0xc($a0) +/* 3DCC58 E00E2948 24820018 */ addiu $v0, $a0, 0x18 +/* 3DCC5C E00E294C AE420000 */ sw $v0, ($s2) +/* 3DCC60 E00E2950 3C02DE00 */ lui $v0, 0xde00 +/* 3DCC64 E00E2954 AC820010 */ sw $v0, 0x10($a0) +/* 3DCC68 E00E2958 24820020 */ addiu $v0, $a0, 0x20 +/* 3DCC6C E00E295C 8FAF00A4 */ lw $t7, 0xa4($sp) +/* 3DCC70 E00E2960 00031E00 */ sll $v1, $v1, 0x18 +/* 3DCC74 E00E2964 00052C00 */ sll $a1, $a1, 0x10 +/* 3DCC78 E00E2968 00651825 */ or $v1, $v1, $a1 +/* 3DCC7C E00E296C 00063200 */ sll $a2, $a2, 8 +/* 3DCC80 E00E2970 00661825 */ or $v1, $v1, $a2 +/* 3DCC84 E00E2974 00671825 */ or $v1, $v1, $a3 +/* 3DCC88 E00E2978 AC8F0014 */ sw $t7, 0x14($a0) +/* 3DCC8C E00E297C AE420000 */ sw $v0, ($s2) +/* 3DCC90 E00E2980 2A820002 */ slti $v0, $s4, 2 +/* 3DCC94 E00E2984 AC890018 */ sw $t1, 0x18($a0) +/* 3DCC98 E00E2988 AC88001C */ sw $t0, 0x1c($a0) +/* 3DCC9C E00E298C 1440FFA6 */ bnez $v0, .LE00E2828 +/* 3DCCA0 E00E2990 AC830004 */ sw $v1, 4($a0) +/* 3DCCA4 E00E2994 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3DCCA8 E00E2998 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3DCCAC E00E299C 8C430000 */ lw $v1, ($v0) +/* 3DCCB0 E00E29A0 0060202D */ daddu $a0, $v1, $zero +/* 3DCCB4 E00E29A4 24630008 */ addiu $v1, $v1, 8 +/* 3DCCB8 E00E29A8 AC430000 */ sw $v1, ($v0) +/* 3DCCBC E00E29AC AC890000 */ sw $t1, ($a0) +/* 3DCCC0 E00E29B0 AC880004 */ sw $t0, 4($a0) +/* 3DCCC4 E00E29B4 8FBF00D4 */ lw $ra, 0xd4($sp) +/* 3DCCC8 E00E29B8 8FBE00D0 */ lw $fp, 0xd0($sp) +/* 3DCCCC E00E29BC 8FB700CC */ lw $s7, 0xcc($sp) +/* 3DCCD0 E00E29C0 8FB600C8 */ lw $s6, 0xc8($sp) +/* 3DCCD4 E00E29C4 8FB500C4 */ lw $s5, 0xc4($sp) +/* 3DCCD8 E00E29C8 8FB400C0 */ lw $s4, 0xc0($sp) +/* 3DCCDC E00E29CC 8FB300BC */ lw $s3, 0xbc($sp) +/* 3DCCE0 E00E29D0 8FB200B8 */ lw $s2, 0xb8($sp) +/* 3DCCE4 E00E29D4 8FB100B4 */ lw $s1, 0xb4($sp) +/* 3DCCE8 E00E29D8 8FB000B0 */ lw $s0, 0xb0($sp) +/* 3DCCEC E00E29DC D7B600E0 */ ldc1 $f22, 0xe0($sp) +/* 3DCCF0 E00E29E0 D7B400D8 */ ldc1 $f20, 0xd8($sp) +/* 3DCCF4 E00E29E4 03E00008 */ jr $ra +/* 3DCCF8 E00E29E8 27BD00E8 */ addiu $sp, $sp, 0xe8 +/* 3DCCFC E00E29EC 00000000 */ nop diff --git a/asm/nonmatchings/code_3DE000/func_E00E4000.s b/asm/nonmatchings/code_3DE000/func_E00E4000.s new file mode 100644 index 0000000000..555ad094f7 --- /dev/null +++ b/asm/nonmatchings/code_3DE000/func_E00E4000.s @@ -0,0 +1,181 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E4000 +/* 3DE000 E00E4000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3DE004 E00E4004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3DE008 E00E4008 4485A000 */ mtc1 $a1, $f20 +/* 3DE00C E00E400C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3DE010 E00E4010 4486B000 */ mtc1 $a2, $f22 +/* 3DE014 E00E4014 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3DE018 E00E4018 4487C000 */ mtc1 $a3, $f24 +/* 3DE01C E00E401C AFB20030 */ sw $s2, 0x30($sp) +/* 3DE020 E00E4020 0080902D */ daddu $s2, $a0, $zero +/* 3DE024 E00E4024 AFB1002C */ sw $s1, 0x2c($sp) +/* 3DE028 E00E4028 8FB10074 */ lw $s1, 0x74($sp) +/* 3DE02C E00E402C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DE030 E00E4030 AFB40038 */ sw $s4, 0x38($sp) +/* 3DE034 E00E4034 8FB40078 */ lw $s4, 0x78($sp) +/* 3DE038 E00E4038 3C02E00E */ lui $v0, %hi(D_E00E4288) +/* 3DE03C E00E403C 24424288 */ addiu $v0, $v0, %lo(D_E00E4288) +/* 3DE040 E00E4040 AFA20018 */ sw $v0, 0x18($sp) +/* 3DE044 E00E4044 3C02E00E */ lui $v0, %hi(D_E00E4290) +/* 3DE048 E00E4048 24424290 */ addiu $v0, $v0, %lo(D_E00E4290) +/* 3DE04C E00E404C AFA2001C */ sw $v0, 0x1c($sp) +/* 3DE050 E00E4050 3C02E00E */ lui $v0, %hi(D_E00E490C) +/* 3DE054 E00E4054 2442490C */ addiu $v0, $v0, %lo(D_E00E490C) +/* 3DE058 E00E4058 AFA20020 */ sw $v0, 0x20($sp) +/* 3DE05C E00E405C 24020072 */ addiu $v0, $zero, 0x72 +/* 3DE060 E00E4060 AFBF003C */ sw $ra, 0x3c($sp) +/* 3DE064 E00E4064 AFB30034 */ sw $s3, 0x34($sp) +/* 3DE068 E00E4068 AFB00028 */ sw $s0, 0x28($sp) +/* 3DE06C E00E406C AFA00010 */ sw $zero, 0x10($sp) +/* 3DE070 E00E4070 AFA00024 */ sw $zero, 0x24($sp) +/* 3DE074 E00E4074 AFA20014 */ sw $v0, 0x14($sp) +/* 3DE078 E00E4078 0C080124 */ jal func_E0200490 +/* 3DE07C E00E407C 26310001 */ addiu $s1, $s1, 1 +/* 3DE080 E00E4080 00112040 */ sll $a0, $s1, 1 +/* 3DE084 E00E4084 00912021 */ addu $a0, $a0, $s1 +/* 3DE088 E00E4088 000420C0 */ sll $a0, $a0, 3 +/* 3DE08C E00E408C 00912021 */ addu $a0, $a0, $s1 +/* 3DE090 E00E4090 00042080 */ sll $a0, $a0, 2 +/* 3DE094 E00E4094 0040982D */ daddu $s3, $v0, $zero +/* 3DE098 E00E4098 0C08012C */ jal func_E02004B0 +/* 3DE09C E00E409C AE710008 */ sw $s1, 8($s3) +/* 3DE0A0 E00E40A0 0040802D */ daddu $s0, $v0, $zero +/* 3DE0A4 E00E40A4 16000003 */ bnez $s0, .LE00E40B4 +/* 3DE0A8 E00E40A8 AE70000C */ sw $s0, 0xc($s3) +.LE00E40AC: +/* 3DE0AC E00E40AC 0803902B */ j .LE00E40AC +/* 3DE0B0 E00E40B0 00000000 */ nop +.LE00E40B4: +/* 3DE0B4 E00E40B4 AE120000 */ sw $s2, ($s0) +/* 3DE0B8 E00E40B8 1E800004 */ bgtz $s4, .LE00E40CC +/* 3DE0BC E00E40BC AE000034 */ sw $zero, 0x34($s0) +/* 3DE0C0 E00E40C0 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3DE0C4 E00E40C4 08039034 */ j .LE00E40D0 +/* 3DE0C8 E00E40C8 AE020030 */ sw $v0, 0x30($s0) +.LE00E40CC: +/* 3DE0CC E00E40CC AE140030 */ sw $s4, 0x30($s0) +.LE00E40D0: +/* 3DE0D0 E00E40D0 240300FF */ addiu $v1, $zero, 0xff +/* 3DE0D4 E00E40D4 AE030044 */ sw $v1, 0x44($s0) +/* 3DE0D8 E00E40D8 E6140004 */ swc1 $f20, 4($s0) +/* 3DE0DC E00E40DC E6160008 */ swc1 $f22, 8($s0) +/* 3DE0E0 E00E40E0 E618000C */ swc1 $f24, 0xc($s0) +/* 3DE0E4 E00E40E4 C7A00070 */ lwc1 $f0, 0x70($sp) +/* 3DE0E8 E00E40E8 E6000058 */ swc1 $f0, 0x58($s0) +/* 3DE0EC E00E40EC C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3DE0F0 E00E40F0 E6000010 */ swc1 $f0, 0x10($s0) +/* 3DE0F4 E00E40F4 C7A0006C */ lwc1 $f0, 0x6c($sp) +/* 3DE0F8 E00E40F8 24020001 */ addiu $v0, $zero, 1 +/* 3DE0FC E00E40FC AE030038 */ sw $v1, 0x38($s0) +/* 3DE100 E00E4100 AE03003C */ sw $v1, 0x3c($s0) +/* 3DE104 E00E4104 AE030040 */ sw $v1, 0x40($s0) +/* 3DE108 E00E4108 1242000E */ beq $s2, $v0, .LE00E4144 +/* 3DE10C E00E410C E6000014 */ swc1 $f0, 0x14($s0) +/* 3DE110 E00E4110 2A420002 */ slti $v0, $s2, 2 +/* 3DE114 E00E4114 10400005 */ beqz $v0, .LE00E412C +/* 3DE118 E00E4118 2A420004 */ slti $v0, $s2, 4 +/* 3DE11C E00E411C 52400007 */ beql $s2, $zero, .LE00E413C +/* 3DE120 E00E4120 AE030048 */ sw $v1, 0x48($s0) +/* 3DE124 E00E4124 0803905C */ j .LE00E4170 +/* 3DE128 E00E4128 00000000 */ nop +.LE00E412C: +/* 3DE12C E00E412C 10400010 */ beqz $v0, .LE00E4170 +/* 3DE130 E00E4130 240300FF */ addiu $v1, $zero, 0xff +/* 3DE134 E00E4134 08039057 */ j .LE00E415C +/* 3DE138 E00E4138 24020080 */ addiu $v0, $zero, 0x80 +.LE00E413C: +/* 3DE13C E00E413C 08039054 */ j .LE00E4150 +/* 3DE140 E00E4140 AE03004C */ sw $v1, 0x4c($s0) +.LE00E4144: +/* 3DE144 E00E4144 2402007F */ addiu $v0, $zero, 0x7f +/* 3DE148 E00E4148 AE000048 */ sw $zero, 0x48($s0) +/* 3DE14C E00E414C AE02004C */ sw $v0, 0x4c($s0) +.LE00E4150: +/* 3DE150 E00E4150 AE030050 */ sw $v1, 0x50($s0) +/* 3DE154 E00E4154 08039071 */ j .LE00E41C4 +/* 3DE158 E00E4158 AE030054 */ sw $v1, 0x54($s0) +.LE00E415C: +/* 3DE15C E00E415C AE030048 */ sw $v1, 0x48($s0) +/* 3DE160 E00E4160 AE03004C */ sw $v1, 0x4c($s0) +/* 3DE164 E00E4164 AE020050 */ sw $v0, 0x50($s0) +/* 3DE168 E00E4168 08039071 */ j .LE00E41C4 +/* 3DE16C E00E416C AE030054 */ sw $v1, 0x54($s0) +.LE00E4170: +/* 3DE170 E00E4170 0C080138 */ jal func_E02004E0 +/* 3DE174 E00E4174 2404007F */ addiu $a0, $zero, 0x7f +/* 3DE178 E00E4178 24420080 */ addiu $v0, $v0, 0x80 +/* 3DE17C E00E417C 240400FF */ addiu $a0, $zero, 0xff +/* 3DE180 E00E4180 00822023 */ subu $a0, $a0, $v0 +/* 3DE184 E00E4184 0C080138 */ jal func_E02004E0 +/* 3DE188 E00E4188 AE020038 */ sw $v0, 0x38($s0) +/* 3DE18C E00E418C 24420080 */ addiu $v0, $v0, 0x80 +/* 3DE190 E00E4190 2404017F */ addiu $a0, $zero, 0x17f +/* 3DE194 E00E4194 8E030038 */ lw $v1, 0x38($s0) +/* 3DE198 E00E4198 00822023 */ subu $a0, $a0, $v0 +/* 3DE19C E00E419C AE02003C */ sw $v0, 0x3c($s0) +/* 3DE1A0 E00E41A0 0C080138 */ jal func_E02004E0 +/* 3DE1A4 E00E41A4 00832023 */ subu $a0, $a0, $v1 +/* 3DE1A8 E00E41A8 24420080 */ addiu $v0, $v0, 0x80 +/* 3DE1AC E00E41AC AE020040 */ sw $v0, 0x40($s0) +/* 3DE1B0 E00E41B0 2402007F */ addiu $v0, $zero, 0x7f +/* 3DE1B4 E00E41B4 AE020048 */ sw $v0, 0x48($s0) +/* 3DE1B8 E00E41B8 AE02004C */ sw $v0, 0x4c($s0) +/* 3DE1BC E00E41BC AE020050 */ sw $v0, 0x50($s0) +/* 3DE1C0 E00E41C0 AE020054 */ sw $v0, 0x54($s0) +.LE00E41C4: +/* 3DE1C4 E00E41C4 8E030030 */ lw $v1, 0x30($s0) +/* 3DE1C8 E00E41C8 2862001E */ slti $v0, $v1, 0x1e +/* 3DE1CC E00E41CC 10400009 */ beqz $v0, .LE00E41F4 +/* 3DE1D0 E00E41D0 2622FFFF */ addiu $v0, $s1, -1 +/* 3DE1D4 E00E41D4 44830000 */ mtc1 $v1, $f0 +/* 3DE1D8 E00E41D8 00000000 */ nop +/* 3DE1DC E00E41DC 46800020 */ cvt.s.w $f0, $f0 +/* 3DE1E0 E00E41E0 44821000 */ mtc1 $v0, $f2 +/* 3DE1E4 E00E41E4 00000000 */ nop +/* 3DE1E8 E00E41E8 468010A0 */ cvt.s.w $f2, $f2 +/* 3DE1EC E00E41EC 08039083 */ j .LE00E420C +/* 3DE1F0 E00E41F0 46020083 */ div.s $f2, $f0, $f2 +.LE00E41F4: +/* 3DE1F4 E00E41F4 3C0141F0 */ lui $at, 0x41f0 +/* 3DE1F8 E00E41F8 44811000 */ mtc1 $at, $f2 +/* 3DE1FC E00E41FC 44820000 */ mtc1 $v0, $f0 +/* 3DE200 E00E4200 00000000 */ nop +/* 3DE204 E00E4204 46800020 */ cvt.s.w $f0, $f0 +/* 3DE208 E00E4208 46001083 */ div.s $f2, $f2, $f0 +.LE00E420C: +/* 3DE20C E00E420C 24030001 */ addiu $v1, $zero, 1 +/* 3DE210 E00E4210 0071102A */ slt $v0, $v1, $s1 +/* 3DE214 E00E4214 10400010 */ beqz $v0, .LE00E4258 +/* 3DE218 E00E4218 26100064 */ addiu $s0, $s0, 0x64 +.LE00E421C: +/* 3DE21C E00E421C 44830000 */ mtc1 $v1, $f0 +/* 3DE220 E00E4220 00000000 */ nop +/* 3DE224 E00E4224 46800020 */ cvt.s.w $f0, $f0 +/* 3DE228 E00E4228 46000007 */ neg.s $f0, $f0 +/* 3DE22C E00E422C 46020002 */ mul.s $f0, $f0, $f2 +/* 3DE230 E00E4230 00000000 */ nop +/* 3DE234 E00E4234 24630001 */ addiu $v1, $v1, 1 +/* 3DE238 E00E4238 4600010D */ trunc.w.s $f4, $f0 +/* 3DE23C E00E423C 44022000 */ mfc1 $v0, $f4 +/* 3DE240 E00E4240 00000000 */ nop +/* 3DE244 E00E4244 2442FFFF */ addiu $v0, $v0, -1 +/* 3DE248 E00E4248 AE02002C */ sw $v0, 0x2c($s0) +/* 3DE24C E00E424C 0071102A */ slt $v0, $v1, $s1 +/* 3DE250 E00E4250 1440FFF2 */ bnez $v0, .LE00E421C +/* 3DE254 E00E4254 26100064 */ addiu $s0, $s0, 0x64 +.LE00E4258: +/* 3DE258 E00E4258 0260102D */ daddu $v0, $s3, $zero +/* 3DE25C E00E425C 8FBF003C */ lw $ra, 0x3c($sp) +/* 3DE260 E00E4260 8FB40038 */ lw $s4, 0x38($sp) +/* 3DE264 E00E4264 8FB30034 */ lw $s3, 0x34($sp) +/* 3DE268 E00E4268 8FB20030 */ lw $s2, 0x30($sp) +/* 3DE26C E00E426C 8FB1002C */ lw $s1, 0x2c($sp) +/* 3DE270 E00E4270 8FB00028 */ lw $s0, 0x28($sp) +/* 3DE274 E00E4274 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3DE278 E00E4278 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3DE27C E00E427C D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3DE280 E00E4280 03E00008 */ jr $ra +/* 3DE284 E00E4284 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3DE000/func_E00E4288.s b/asm/nonmatchings/code_3DE000/func_E00E4288.s new file mode 100644 index 0000000000..dfbb2f33a9 --- /dev/null +++ b/asm/nonmatchings/code_3DE000/func_E00E4288.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E4288 +/* 3DE288 E00E4288 03E00008 */ jr $ra +/* 3DE28C E00E428C 00000000 */ nop diff --git a/asm/nonmatchings/code_3DE000/func_E00E4290.s b/asm/nonmatchings/code_3DE000/func_E00E4290.s new file mode 100644 index 0000000000..9c28c1d2b2 --- /dev/null +++ b/asm/nonmatchings/code_3DE000/func_E00E4290.s @@ -0,0 +1,441 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E4290 +/* 3DE290 E00E4290 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 3DE294 E00E4294 AFB40038 */ sw $s4, 0x38($sp) +/* 3DE298 E00E4298 0080A02D */ daddu $s4, $a0, $zero +/* 3DE29C E00E429C AFBF004C */ sw $ra, 0x4c($sp) +/* 3DE2A0 E00E42A0 AFBE0048 */ sw $fp, 0x48($sp) +/* 3DE2A4 E00E42A4 AFB70044 */ sw $s7, 0x44($sp) +/* 3DE2A8 E00E42A8 AFB60040 */ sw $s6, 0x40($sp) +/* 3DE2AC E00E42AC AFB5003C */ sw $s5, 0x3c($sp) +/* 3DE2B0 E00E42B0 AFB30034 */ sw $s3, 0x34($sp) +/* 3DE2B4 E00E42B4 AFB20030 */ sw $s2, 0x30($sp) +/* 3DE2B8 E00E42B8 AFB1002C */ sw $s1, 0x2c($sp) +/* 3DE2BC E00E42BC AFB00028 */ sw $s0, 0x28($sp) +/* 3DE2C0 E00E42C0 F7BE0078 */ sdc1 $f30, 0x78($sp) +/* 3DE2C4 E00E42C4 F7BC0070 */ sdc1 $f28, 0x70($sp) +/* 3DE2C8 E00E42C8 F7BA0068 */ sdc1 $f26, 0x68($sp) +/* 3DE2CC E00E42CC F7B80060 */ sdc1 $f24, 0x60($sp) +/* 3DE2D0 E00E42D0 F7B60058 */ sdc1 $f22, 0x58($sp) +/* 3DE2D4 E00E42D4 F7B40050 */ sdc1 $f20, 0x50($sp) +/* 3DE2D8 E00E42D8 8E830000 */ lw $v1, ($s4) +/* 3DE2DC E00E42DC 8E91000C */ lw $s1, 0xc($s4) +/* 3DE2E0 E00E42E0 30620010 */ andi $v0, $v1, 0x10 +/* 3DE2E4 E00E42E4 8E320000 */ lw $s2, ($s1) +/* 3DE2E8 E00E42E8 10400005 */ beqz $v0, .LE00E4300 +/* 3DE2EC E00E42EC 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3DE2F0 E00E42F0 00621024 */ and $v0, $v1, $v0 +/* 3DE2F4 E00E42F4 AE820000 */ sw $v0, ($s4) +/* 3DE2F8 E00E42F8 24020010 */ addiu $v0, $zero, 0x10 +/* 3DE2FC E00E42FC AE220030 */ sw $v0, 0x30($s1) +.LE00E4300: +/* 3DE300 E00E4300 8E230030 */ lw $v1, 0x30($s1) +/* 3DE304 E00E4304 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3DE308 E00E4308 10400002 */ beqz $v0, .LE00E4314 +/* 3DE30C E00E430C 2462FFFF */ addiu $v0, $v1, -1 +/* 3DE310 E00E4310 AE220030 */ sw $v0, 0x30($s1) +.LE00E4314: +/* 3DE314 E00E4314 8E220034 */ lw $v0, 0x34($s1) +/* 3DE318 E00E4318 8E230030 */ lw $v1, 0x30($s1) +/* 3DE31C E00E431C 24420001 */ addiu $v0, $v0, 1 +/* 3DE320 E00E4320 04610005 */ bgez $v1, .LE00E4338 +/* 3DE324 E00E4324 AE220034 */ sw $v0, 0x34($s1) +/* 3DE328 E00E4328 0C080128 */ jal func_E02004A0 +/* 3DE32C E00E432C 0280202D */ daddu $a0, $s4, $zero +/* 3DE330 E00E4330 08039231 */ j .LE00E48C4 +/* 3DE334 E00E4334 00000000 */ nop +.LE00E4338: +/* 3DE338 E00E4338 0060A82D */ daddu $s5, $v1, $zero +/* 3DE33C E00E433C 2AA20008 */ slti $v0, $s5, 8 +/* 3DE340 E00E4340 10400002 */ beqz $v0, .LE00E434C +/* 3DE344 E00E4344 00151140 */ sll $v0, $s5, 5 +/* 3DE348 E00E4348 AE220044 */ sw $v0, 0x44($s1) +.LE00E434C: +/* 3DE34C E00E434C 3C108007 */ lui $s0, %hi(gCurrentCameraID) +/* 3DE350 E00E4350 26107410 */ addiu $s0, $s0, %lo(gCurrentCameraID) +/* 3DE354 E00E4354 8E030000 */ lw $v1, ($s0) +/* 3DE358 E00E4358 C6300014 */ lwc1 $f16, 0x14($s1) +/* 3DE35C E00E435C C63E0010 */ lwc1 $f30, 0x10($s1) +/* 3DE360 E00E4360 00031080 */ sll $v0, $v1, 2 +/* 3DE364 E00E4364 00431021 */ addu $v0, $v0, $v1 +/* 3DE368 E00E4368 00021080 */ sll $v0, $v0, 2 +/* 3DE36C E00E436C 00431023 */ subu $v0, $v0, $v1 +/* 3DE370 E00E4370 000218C0 */ sll $v1, $v0, 3 +/* 3DE374 E00E4374 00431021 */ addu $v0, $v0, $v1 +/* 3DE378 E00E4378 000210C0 */ sll $v0, $v0, 3 +/* 3DE37C E00E437C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3DE380 E00E4380 00220821 */ addu $at, $at, $v0 +/* 3DE384 E00E4384 C42C1DEC */ lwc1 $f12, %lo(D_800B1DEC)($at) +/* 3DE388 E00E4388 E7B00010 */ swc1 $f16, 0x10($sp) +/* 3DE38C E00E438C C6300004 */ lwc1 $f16, 4($s1) +/* 3DE390 E00E4390 E7B00014 */ swc1 $f16, 0x14($sp) +/* 3DE394 E00E4394 C6300008 */ lwc1 $f16, 8($s1) +/* 3DE398 E00E4398 E7B00018 */ swc1 $f16, 0x18($sp) +/* 3DE39C E00E439C C630000C */ lwc1 $f16, 0xc($s1) +/* 3DE3A0 E00E43A0 0C080144 */ jal func_E0200510 +/* 3DE3A4 E00E43A4 E7B0001C */ swc1 $f16, 0x1c($sp) +/* 3DE3A8 E00E43A8 8E030000 */ lw $v1, ($s0) +/* 3DE3AC E00E43AC 00031080 */ sll $v0, $v1, 2 +/* 3DE3B0 E00E43B0 00431021 */ addu $v0, $v0, $v1 +/* 3DE3B4 E00E43B4 00021080 */ sll $v0, $v0, 2 +/* 3DE3B8 E00E43B8 00431023 */ subu $v0, $v0, $v1 +/* 3DE3BC E00E43BC 000218C0 */ sll $v1, $v0, 3 +/* 3DE3C0 E00E43C0 00431021 */ addu $v0, $v0, $v1 +/* 3DE3C4 E00E43C4 000210C0 */ sll $v0, $v0, 3 +/* 3DE3C8 E00E43C8 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3DE3CC E00E43CC 00220821 */ addu $at, $at, $v0 +/* 3DE3D0 E00E43D0 C42C1DEC */ lwc1 $f12, %lo(D_800B1DEC)($at) +/* 3DE3D4 E00E43D4 0C080140 */ jal func_E0200500 +/* 3DE3D8 E00E43D8 46000706 */ mov.s $f28, $f0 +/* 3DE3DC E00E43DC 8E250038 */ lw $a1, 0x38($s1) +/* 3DE3E0 E00E43E0 24130001 */ addiu $s3, $zero, 1 +/* 3DE3E4 E00E43E4 AFA50020 */ sw $a1, 0x20($sp) +/* 3DE3E8 E00E43E8 8E3E003C */ lw $fp, 0x3c($s1) +/* 3DE3EC E00E43EC 8E250040 */ lw $a1, 0x40($s1) +/* 3DE3F0 E00E43F0 46000686 */ mov.s $f26, $f0 +/* 3DE3F4 E00E43F4 AFA50024 */ sw $a1, 0x24($sp) +/* 3DE3F8 E00E43F8 8E820008 */ lw $v0, 8($s4) +/* 3DE3FC E00E43FC 0262102A */ slt $v0, $s3, $v0 +/* 3DE400 E00E4400 10400130 */ beqz $v0, .LE00E48C4 +/* 3DE404 E00E4404 26310064 */ addiu $s1, $s1, 0x64 +/* 3DE408 E00E4408 241600FF */ addiu $s6, $zero, 0xff +/* 3DE40C E00E440C 3C17E00E */ lui $s7, %hi(D_E00E4DC0) +/* 3DE410 E00E4410 26F74DC0 */ addiu $s7, $s7, %lo(D_E00E4DC0) +/* 3DE414 E00E4414 26300058 */ addiu $s0, $s1, 0x58 +/* 3DE418 E00E4418 3C01E00E */ lui $at, %hi(D_E00E4E20) +/* 3DE41C E00E441C D4384E20 */ ldc1 $f24, %lo(D_E00E4E20)($at) +/* 3DE420 E00E4420 3C01E00E */ lui $at, %hi(D_E00E4E28) +/* 3DE424 E00E4424 D4364E28 */ ldc1 $f22, %lo(D_E00E4E28)($at) +.LE00E4428: +/* 3DE428 E00E4428 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE42C E00E442C 24420001 */ addiu $v0, $v0, 1 +/* 3DE430 E00E4430 AE02FFD4 */ sw $v0, -0x2c($s0) +/* 3DE434 E00E4434 2842001E */ slti $v0, $v0, 0x1e +/* 3DE438 E00E4438 14400006 */ bnez $v0, .LE00E4454 +/* 3DE43C E00E443C 2AA2001E */ slti $v0, $s5, 0x1e +/* 3DE440 E00E4440 10400003 */ beqz $v0, .LE00E4450 +/* 3DE444 E00E4444 24020014 */ addiu $v0, $zero, 0x14 +/* 3DE448 E00E4448 08039115 */ j .LE00E4454 +/* 3DE44C E00E444C AE02FFD4 */ sw $v0, -0x2c($s0) +.LE00E4450: +/* 3DE450 E00E4450 AE00FFD4 */ sw $zero, -0x2c($s0) +.LE00E4454: +/* 3DE454 E00E4454 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE458 E00E4458 04420116 */ bltzl $v0, .LE00E48B4 +/* 3DE45C E00E445C 26730001 */ addiu $s3, $s3, 1 +/* 3DE460 E00E4460 1440002B */ bnez $v0, .LE00E4510 +/* 3DE464 E00E4464 00000000 */ nop +/* 3DE468 E00E4468 4600F40D */ trunc.w.s $f16, $f30 +/* 3DE46C E00E446C 44048000 */ mfc1 $a0, $f16 +/* 3DE470 E00E4470 0C080138 */ jal func_E02004E0 +/* 3DE474 E00E4474 00000000 */ nop +/* 3DE478 E00E4478 3C013FE0 */ lui $at, 0x3fe0 +/* 3DE47C E00E447C 44811800 */ mtc1 $at, $f3 +/* 3DE480 E00E4480 44801000 */ mtc1 $zero, $f2 +/* 3DE484 E00E4484 4600F021 */ cvt.d.s $f0, $f30 +/* 3DE488 E00E4488 46220002 */ mul.d $f0, $f0, $f2 +/* 3DE48C E00E448C 00000000 */ nop +/* 3DE490 E00E4490 4482A000 */ mtc1 $v0, $f20 +/* 3DE494 E00E4494 00000000 */ nop +/* 3DE498 E00E4498 4680A521 */ cvt.d.w $f20, $f20 +/* 3DE49C E00E449C 4620A501 */ sub.d $f20, $f20, $f0 +/* 3DE4A0 E00E44A0 4620A520 */ cvt.s.d $f20, $f20 +/* 3DE4A4 E00E44A4 461CA002 */ mul.s $f0, $f20, $f28 +/* 3DE4A8 E00E44A8 00000000 */ nop +/* 3DE4AC E00E44AC C7B00014 */ lwc1 $f16, 0x14($sp) +/* 3DE4B0 E00E44B0 46008000 */ add.s $f0, $f16, $f0 +/* 3DE4B4 E00E44B4 C7B00010 */ lwc1 $f16, 0x10($sp) +/* 3DE4B8 E00E44B8 461A0001 */ sub.s $f0, $f0, $f26 +/* 3DE4BC E00E44BC 4600840D */ trunc.w.s $f16, $f16 +/* 3DE4C0 E00E44C0 44048000 */ mfc1 $a0, $f16 +/* 3DE4C4 E00E44C4 0C080138 */ jal func_E02004E0 +/* 3DE4C8 E00E44C8 E600FFAC */ swc1 $f0, -0x54($s0) +/* 3DE4CC E00E44CC 461AA502 */ mul.s $f20, $f20, $f26 +/* 3DE4D0 E00E44D0 00000000 */ nop +/* 3DE4D4 E00E44D4 44820000 */ mtc1 $v0, $f0 +/* 3DE4D8 E00E44D8 00000000 */ nop +/* 3DE4DC E00E44DC 46800020 */ cvt.s.w $f0, $f0 +/* 3DE4E0 E00E44E0 C7B00018 */ lwc1 $f16, 0x18($sp) +/* 3DE4E4 E00E44E4 8FA50020 */ lw $a1, 0x20($sp) +/* 3DE4E8 E00E44E8 46008000 */ add.s $f0, $f16, $f0 +/* 3DE4EC E00E44EC C7B0001C */ lwc1 $f16, 0x1c($sp) +/* 3DE4F0 E00E44F0 AE05FFE0 */ sw $a1, -0x20($s0) +/* 3DE4F4 E00E44F4 46148500 */ add.s $f20, $f16, $f20 +/* 3DE4F8 E00E44F8 AE1EFFE4 */ sw $fp, -0x1c($s0) +/* 3DE4FC E00E44FC 8FA50024 */ lw $a1, 0x24($sp) +/* 3DE500 E00E4500 461CA500 */ add.s $f20, $f20, $f28 +/* 3DE504 E00E4504 AE05FFE8 */ sw $a1, -0x18($s0) +/* 3DE508 E00E4508 E600FFB0 */ swc1 $f0, -0x50($s0) +/* 3DE50C E00E450C E614FFB4 */ swc1 $f20, -0x4c($s0) +.LE00E4510: +/* 3DE510 E00E4510 064000BA */ bltz $s2, .LE00E47FC +/* 3DE514 E00E4514 2A420002 */ slti $v0, $s2, 2 +/* 3DE518 E00E4518 14400005 */ bnez $v0, .LE00E4530 +/* 3DE51C E00E451C 2A420004 */ slti $v0, $s2, 4 +/* 3DE520 E00E4520 104000B6 */ beqz $v0, .LE00E47FC +/* 3DE524 E00E4524 00000000 */ nop +/* 3DE528 E00E4528 0803919A */ j .LE00E4668 +/* 3DE52C E00E452C 00000000 */ nop +.LE00E4530: +/* 3DE530 E00E4530 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE534 E00E4534 14400020 */ bnez $v0, .LE00E45B8 +/* 3DE538 E00E4538 2404000A */ addiu $a0, $zero, 0xa +/* 3DE53C E00E453C AE00FFC0 */ sw $zero, -0x40($s0) +/* 3DE540 E00E4540 AE00FFC4 */ sw $zero, -0x3c($s0) +/* 3DE544 E00E4544 0C080138 */ jal func_E02004E0 +/* 3DE548 E00E4548 AE00FFCC */ sw $zero, -0x34($s0) +/* 3DE54C E00E454C 00021023 */ negu $v0, $v0 +/* 3DE550 E00E4550 2442FFFE */ addiu $v0, $v0, -2 +/* 3DE554 E00E4554 44820000 */ mtc1 $v0, $f0 +/* 3DE558 E00E4558 00000000 */ nop +/* 3DE55C E00E455C 46800020 */ cvt.s.w $f0, $f0 +/* 3DE560 E00E4560 46000021 */ cvt.d.s $f0, $f0 +/* 3DE564 E00E4564 46380002 */ mul.d $f0, $f0, $f24 +/* 3DE568 E00E4568 00000000 */ nop +/* 3DE56C E00E456C 2404000A */ addiu $a0, $zero, 0xa +/* 3DE570 E00E4570 AE000004 */ sw $zero, 4($s0) +/* 3DE574 E00E4574 AE000008 */ sw $zero, 8($s0) +/* 3DE578 E00E4578 46200020 */ cvt.s.d $f0, $f0 +/* 3DE57C E00E457C 0C080138 */ jal func_E02004E0 +/* 3DE580 E00E4580 E600FFD0 */ swc1 $f0, -0x30($s0) +/* 3DE584 E00E4584 44820000 */ mtc1 $v0, $f0 +/* 3DE588 E00E4588 00000000 */ nop +/* 3DE58C E00E458C 46800020 */ cvt.s.w $f0, $f0 +/* 3DE590 E00E4590 46000021 */ cvt.d.s $f0, $f0 +/* 3DE594 E00E4594 46380002 */ mul.d $f0, $f0, $f24 +/* 3DE598 E00E4598 00000000 */ nop +/* 3DE59C E00E459C 3C013FE0 */ lui $at, 0x3fe0 +/* 3DE5A0 E00E45A0 44811800 */ mtc1 $at, $f3 +/* 3DE5A4 E00E45A4 44801000 */ mtc1 $zero, $f2 +/* 3DE5A8 E00E45A8 00000000 */ nop +/* 3DE5AC E00E45AC 46220000 */ add.d $f0, $f0, $f2 +/* 3DE5B0 E00E45B0 46200020 */ cvt.s.d $f0, $f0 +/* 3DE5B4 E00E45B4 E6000000 */ swc1 $f0, ($s0) +.LE00E45B8: +/* 3DE5B8 E00E45B8 C60CFFC0 */ lwc1 $f12, -0x40($s0) +/* 3DE5BC E00E45BC C60AFFCC */ lwc1 $f10, -0x34($s0) +/* 3DE5C0 E00E45C0 460C5281 */ sub.s $f10, $f10, $f12 +/* 3DE5C4 E00E45C4 460052A1 */ cvt.d.s $f10, $f10 +/* 3DE5C8 E00E45C8 46365282 */ mul.d $f10, $f10, $f22 +/* 3DE5CC E00E45CC 00000000 */ nop +/* 3DE5D0 E00E45D0 C608FFC4 */ lwc1 $f8, -0x3c($s0) +/* 3DE5D4 E00E45D4 C606FFD0 */ lwc1 $f6, -0x30($s0) +/* 3DE5D8 E00E45D8 C604FFAC */ lwc1 $f4, -0x54($s0) +/* 3DE5DC E00E45DC 46083181 */ sub.s $f6, $f6, $f8 +/* 3DE5E0 E00E45E0 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE5E4 E00E45E4 46006006 */ mov.s $f0, $f12 +/* 3DE5E8 E00E45E8 46002100 */ add.s $f4, $f4, $f0 +/* 3DE5EC E00E45EC C600FFB0 */ lwc1 $f0, -0x50($s0) +/* 3DE5F0 E00E45F0 46004086 */ mov.s $f2, $f8 +/* 3DE5F4 E00E45F4 46020000 */ add.s $f0, $f0, $f2 +/* 3DE5F8 E00E45F8 3C01E00E */ lui $at, %hi(D_E00E4E00) +/* 3DE5FC E00E45FC 00220821 */ addu $at, $at, $v0 +/* 3DE600 E00E4600 90224E00 */ lbu $v0, %lo(D_E00E4E00)($at) +/* 3DE604 E00E4604 460031A1 */ cvt.d.s $f6, $f6 +/* 3DE608 E00E4608 46363182 */ mul.d $f6, $f6, $f22 +/* 3DE60C E00E460C 00000000 */ nop +/* 3DE610 E00E4610 3C01E00E */ lui $at, %hi(D_E00E4E30) +/* 3DE614 E00E4614 D4224E30 */ ldc1 $f2, %lo(D_E00E4E30)($at) +/* 3DE618 E00E4618 46006321 */ cvt.d.s $f12, $f12 +/* 3DE61C E00E461C E600FFB0 */ swc1 $f0, -0x50($s0) +/* 3DE620 E00E4620 C6000004 */ lwc1 $f0, 4($s0) +/* 3DE624 E00E4624 46004221 */ cvt.d.s $f8, $f8 +/* 3DE628 E00E4628 E604FFAC */ swc1 $f4, -0x54($s0) +/* 3DE62C E00E462C 46000021 */ cvt.d.s $f0, $f0 +/* 3DE630 E00E4630 46220000 */ add.d $f0, $f0, $f2 +/* 3DE634 E00E4634 C6020008 */ lwc1 $f2, 8($s0) +/* 3DE638 E00E4638 3C01E00E */ lui $at, %hi(D_E00E4E38) +/* 3DE63C E00E463C D4244E38 */ ldc1 $f4, %lo(D_E00E4E38)($at) +/* 3DE640 E00E4640 460010A1 */ cvt.d.s $f2, $f2 +/* 3DE644 E00E4644 46241080 */ add.d $f2, $f2, $f4 +/* 3DE648 E00E4648 AE02FFEC */ sw $v0, -0x14($s0) +/* 3DE64C E00E464C 46200020 */ cvt.s.d $f0, $f0 +/* 3DE650 E00E4650 462A6300 */ add.d $f12, $f12, $f10 +/* 3DE654 E00E4654 E6000004 */ swc1 $f0, 4($s0) +/* 3DE658 E00E4658 462010A0 */ cvt.s.d $f2, $f2 +/* 3DE65C E00E465C 46264200 */ add.d $f8, $f8, $f6 +/* 3DE660 E00E4660 080391FA */ j .LE00E47E8 +/* 3DE664 E00E4664 E6020008 */ swc1 $f2, 8($s0) +.LE00E4668: +/* 3DE668 E00E4668 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE66C E00E466C 1440002D */ bnez $v0, .LE00E4724 +/* 3DE670 E00E4670 00571021 */ addu $v0, $v0, $s7 +/* 3DE674 E00E4674 24020002 */ addiu $v0, $zero, 2 +/* 3DE678 E00E4678 56420018 */ bnel $s2, $v0, .LE00E46DC +/* 3DE67C E00E467C AE00FFC0 */ sw $zero, -0x40($s0) +/* 3DE680 E00E4680 0C080138 */ jal func_E02004E0 +/* 3DE684 E00E4684 24040014 */ addiu $a0, $zero, 0x14 +/* 3DE688 E00E4688 2442FFF6 */ addiu $v0, $v0, -0xa +/* 3DE68C E00E468C 44820000 */ mtc1 $v0, $f0 +/* 3DE690 E00E4690 00000000 */ nop +/* 3DE694 E00E4694 46800020 */ cvt.s.w $f0, $f0 +/* 3DE698 E00E4698 46000021 */ cvt.d.s $f0, $f0 +/* 3DE69C E00E469C 46380002 */ mul.d $f0, $f0, $f24 +/* 3DE6A0 E00E46A0 00000000 */ nop +/* 3DE6A4 E00E46A4 24040014 */ addiu $a0, $zero, 0x14 +/* 3DE6A8 E00E46A8 46200020 */ cvt.s.d $f0, $f0 +/* 3DE6AC E00E46AC 0C080138 */ jal func_E02004E0 +/* 3DE6B0 E00E46B0 E600FFC0 */ swc1 $f0, -0x40($s0) +/* 3DE6B4 E00E46B4 2442FFF6 */ addiu $v0, $v0, -0xa +/* 3DE6B8 E00E46B8 44820000 */ mtc1 $v0, $f0 +/* 3DE6BC E00E46BC 00000000 */ nop +/* 3DE6C0 E00E46C0 46800020 */ cvt.s.w $f0, $f0 +/* 3DE6C4 E00E46C4 46000021 */ cvt.d.s $f0, $f0 +/* 3DE6C8 E00E46C8 46380002 */ mul.d $f0, $f0, $f24 +/* 3DE6CC E00E46CC 00000000 */ nop +/* 3DE6D0 E00E46D0 46200020 */ cvt.s.d $f0, $f0 +/* 3DE6D4 E00E46D4 080391B8 */ j .LE00E46E0 +/* 3DE6D8 E00E46D8 E600FFC4 */ swc1 $f0, -0x3c($s0) +.LE00E46DC: +/* 3DE6DC E00E46DC AE00FFC4 */ sw $zero, -0x3c($s0) +.LE00E46E0: +/* 3DE6E0 E00E46E0 2404000F */ addiu $a0, $zero, 0xf +/* 3DE6E4 E00E46E4 AE00FFCC */ sw $zero, -0x34($s0) +/* 3DE6E8 E00E46E8 0C080138 */ jal func_E02004E0 +/* 3DE6EC E00E46EC AE00FFD0 */ sw $zero, -0x30($s0) +/* 3DE6F0 E00E46F0 2404000F */ addiu $a0, $zero, 0xf +/* 3DE6F4 E00E46F4 44820000 */ mtc1 $v0, $f0 +/* 3DE6F8 E00E46F8 00000000 */ nop +/* 3DE6FC E00E46FC 46800020 */ cvt.s.w $f0, $f0 +/* 3DE700 E00E4700 0C080138 */ jal func_E02004E0 +/* 3DE704 E00E4704 E6000004 */ swc1 $f0, 4($s0) +/* 3DE708 E00E4708 44820000 */ mtc1 $v0, $f0 +/* 3DE70C E00E470C 00000000 */ nop +/* 3DE710 E00E4710 46800020 */ cvt.s.w $f0, $f0 +/* 3DE714 E00E4714 E6000008 */ swc1 $f0, 8($s0) +/* 3DE718 E00E4718 AE16FFEC */ sw $s6, -0x14($s0) +/* 3DE71C E00E471C 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE720 E00E4720 00571021 */ addu $v0, $v0, $s7 +.LE00E4724: +/* 3DE724 E00E4724 90420000 */ lbu $v0, ($v0) +/* 3DE728 E00E4728 3C01E00E */ lui $at, %hi(D_E00E4E40) +/* 3DE72C E00E472C D4204E40 */ ldc1 $f0, %lo(D_E00E4E40)($at) +/* 3DE730 E00E4730 44827000 */ mtc1 $v0, $f14 +/* 3DE734 E00E4734 00000000 */ nop +/* 3DE738 E00E4738 468073A0 */ cvt.s.w $f14, $f14 +/* 3DE73C E00E473C 460073A1 */ cvt.d.s $f14, $f14 +/* 3DE740 E00E4740 46207382 */ mul.d $f14, $f14, $f0 +/* 3DE744 E00E4744 00000000 */ nop +/* 3DE748 E00E4748 C60CFFC0 */ lwc1 $f12, -0x40($s0) +/* 3DE74C E00E474C C60AFFCC */ lwc1 $f10, -0x34($s0) +/* 3DE750 E00E4750 460C5281 */ sub.s $f10, $f10, $f12 +/* 3DE754 E00E4754 460052A1 */ cvt.d.s $f10, $f10 +/* 3DE758 E00E4758 46365282 */ mul.d $f10, $f10, $f22 +/* 3DE75C E00E475C 00000000 */ nop +/* 3DE760 E00E4760 C608FFC4 */ lwc1 $f8, -0x3c($s0) +/* 3DE764 E00E4764 C606FFD0 */ lwc1 $f6, -0x30($s0) +/* 3DE768 E00E4768 46083181 */ sub.s $f6, $f6, $f8 +/* 3DE76C E00E476C C604FFAC */ lwc1 $f4, -0x54($s0) +/* 3DE770 E00E4770 46006006 */ mov.s $f0, $f12 +/* 3DE774 E00E4774 46002100 */ add.s $f4, $f4, $f0 +/* 3DE778 E00E4778 C602FFB0 */ lwc1 $f2, -0x50($s0) +/* 3DE77C E00E477C 46004006 */ mov.s $f0, $f8 +/* 3DE780 E00E4780 46001080 */ add.s $f2, $f2, $f0 +/* 3DE784 E00E4784 460031A1 */ cvt.d.s $f6, $f6 +/* 3DE788 E00E4788 46363182 */ mul.d $f6, $f6, $f22 +/* 3DE78C E00E478C 00000000 */ nop +/* 3DE790 E00E4790 3C01E00E */ lui $at, %hi(D_E00E4E48) +/* 3DE794 E00E4794 D4204E48 */ ldc1 $f0, %lo(D_E00E4E48)($at) +/* 3DE798 E00E4798 46006321 */ cvt.d.s $f12, $f12 +/* 3DE79C E00E479C E602FFB0 */ swc1 $f2, -0x50($s0) +/* 3DE7A0 E00E47A0 C6020004 */ lwc1 $f2, 4($s0) +/* 3DE7A4 E00E47A4 46004221 */ cvt.d.s $f8, $f8 +/* 3DE7A8 E00E47A8 E604FFAC */ swc1 $f4, -0x54($s0) +/* 3DE7AC E00E47AC 460010A1 */ cvt.d.s $f2, $f2 +/* 3DE7B0 E00E47B0 46201080 */ add.d $f2, $f2, $f0 +/* 3DE7B4 E00E47B4 C6000008 */ lwc1 $f0, 8($s0) +/* 3DE7B8 E00E47B8 3C01E00E */ lui $at, %hi(D_E00E4E50) +/* 3DE7BC E00E47BC D4244E50 */ ldc1 $f4, %lo(D_E00E4E50)($at) +/* 3DE7C0 E00E47C0 46000021 */ cvt.d.s $f0, $f0 +/* 3DE7C4 E00E47C4 46240000 */ add.d $f0, $f0, $f4 +/* 3DE7C8 E00E47C8 462010A0 */ cvt.s.d $f2, $f2 +/* 3DE7CC E00E47CC E6020004 */ swc1 $f2, 4($s0) +/* 3DE7D0 E00E47D0 46200020 */ cvt.s.d $f0, $f0 +/* 3DE7D4 E00E47D4 462A6300 */ add.d $f12, $f12, $f10 +/* 3DE7D8 E00E47D8 E6000008 */ swc1 $f0, 8($s0) +/* 3DE7DC E00E47DC 462073A0 */ cvt.s.d $f14, $f14 +/* 3DE7E0 E00E47E0 46264200 */ add.d $f8, $f8, $f6 +/* 3DE7E4 E00E47E4 E60E0000 */ swc1 $f14, ($s0) +.LE00E47E8: +/* 3DE7E8 E00E47E8 46206320 */ cvt.s.d $f12, $f12 +/* 3DE7EC E00E47EC 46204220 */ cvt.s.d $f8, $f8 +/* 3DE7F0 E00E47F0 E60CFFC0 */ swc1 $f12, -0x40($s0) +/* 3DE7F4 E00E47F4 0803922C */ j .LE00E48B0 +/* 3DE7F8 E00E47F8 E608FFC4 */ swc1 $f8, -0x3c($s0) +.LE00E47FC: +/* 3DE7FC E00E47FC 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE800 E00E4800 14400017 */ bnez $v0, .LE00E4860 +/* 3DE804 E00E4804 24020004 */ addiu $v0, $zero, 4 +/* 3DE808 E00E4808 3C013F80 */ lui $at, 0x3f80 +/* 3DE80C E00E480C 44810000 */ mtc1 $at, $f0 +/* 3DE810 E00E4810 2404007F */ addiu $a0, $zero, 0x7f +/* 3DE814 E00E4814 AE000004 */ sw $zero, 4($s0) +/* 3DE818 E00E4818 AE000008 */ sw $zero, 8($s0) +/* 3DE81C E00E481C AE16FFEC */ sw $s6, -0x14($s0) +/* 3DE820 E00E4820 0C080138 */ jal func_E02004E0 +/* 3DE824 E00E4824 E6000000 */ swc1 $f0, ($s0) +/* 3DE828 E00E4828 24420080 */ addiu $v0, $v0, 0x80 +/* 3DE82C E00E482C 02C22023 */ subu $a0, $s6, $v0 +/* 3DE830 E00E4830 0C080138 */ jal func_E02004E0 +/* 3DE834 E00E4834 AE02FFE0 */ sw $v0, -0x20($s0) +/* 3DE838 E00E4838 24420080 */ addiu $v0, $v0, 0x80 +/* 3DE83C E00E483C 2404017F */ addiu $a0, $zero, 0x17f +/* 3DE840 E00E4840 8E03FFE0 */ lw $v1, -0x20($s0) +/* 3DE844 E00E4844 00822023 */ subu $a0, $a0, $v0 +/* 3DE848 E00E4848 AE02FFE4 */ sw $v0, -0x1c($s0) +/* 3DE84C E00E484C 0C080138 */ jal func_E02004E0 +/* 3DE850 E00E4850 00832023 */ subu $a0, $a0, $v1 +/* 3DE854 E00E4854 24420080 */ addiu $v0, $v0, 0x80 +/* 3DE858 E00E4858 AE02FFE8 */ sw $v0, -0x18($s0) +/* 3DE85C E00E485C 24020004 */ addiu $v0, $zero, 4 +.LE00E4860: +/* 3DE860 E00E4860 16420006 */ bne $s2, $v0, .LE00E487C +/* 3DE864 E00E4864 00000000 */ nop +/* 3DE868 E00E4868 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE86C E00E486C 3C01E00E */ lui $at, %hi(D_E00E4DE0) +/* 3DE870 E00E4870 00220821 */ addu $at, $at, $v0 +/* 3DE874 E00E4874 08039222 */ j .LE00E4888 +/* 3DE878 E00E4878 90224DE0 */ lbu $v0, %lo(D_E00E4DE0)($at) +.LE00E487C: +/* 3DE87C E00E487C 8E02FFD4 */ lw $v0, -0x2c($s0) +/* 3DE880 E00E4880 00571021 */ addu $v0, $v0, $s7 +/* 3DE884 E00E4884 90420000 */ lbu $v0, ($v0) +.LE00E4888: +/* 3DE888 E00E4888 3C01E00E */ lui $at, %hi(D_E00E4E58) +/* 3DE88C E00E488C D4224E58 */ ldc1 $f2, %lo(D_E00E4E58)($at) +/* 3DE890 E00E4890 44820000 */ mtc1 $v0, $f0 +/* 3DE894 E00E4894 00000000 */ nop +/* 3DE898 E00E4898 46800020 */ cvt.s.w $f0, $f0 +/* 3DE89C E00E489C 46000021 */ cvt.d.s $f0, $f0 +/* 3DE8A0 E00E48A0 46220002 */ mul.d $f0, $f0, $f2 +/* 3DE8A4 E00E48A4 00000000 */ nop +/* 3DE8A8 E00E48A8 46200020 */ cvt.s.d $f0, $f0 +/* 3DE8AC E00E48AC E6000000 */ swc1 $f0, ($s0) +.LE00E48B0: +/* 3DE8B0 E00E48B0 26730001 */ addiu $s3, $s3, 1 +.LE00E48B4: +/* 3DE8B4 E00E48B4 8E820008 */ lw $v0, 8($s4) +/* 3DE8B8 E00E48B8 0262102A */ slt $v0, $s3, $v0 +/* 3DE8BC E00E48BC 1440FEDA */ bnez $v0, .LE00E4428 +/* 3DE8C0 E00E48C0 26100064 */ addiu $s0, $s0, 0x64 +.LE00E48C4: +/* 3DE8C4 E00E48C4 8FBF004C */ lw $ra, 0x4c($sp) +/* 3DE8C8 E00E48C8 8FBE0048 */ lw $fp, 0x48($sp) +/* 3DE8CC E00E48CC 8FB70044 */ lw $s7, 0x44($sp) +/* 3DE8D0 E00E48D0 8FB60040 */ lw $s6, 0x40($sp) +/* 3DE8D4 E00E48D4 8FB5003C */ lw $s5, 0x3c($sp) +/* 3DE8D8 E00E48D8 8FB40038 */ lw $s4, 0x38($sp) +/* 3DE8DC E00E48DC 8FB30034 */ lw $s3, 0x34($sp) +/* 3DE8E0 E00E48E0 8FB20030 */ lw $s2, 0x30($sp) +/* 3DE8E4 E00E48E4 8FB1002C */ lw $s1, 0x2c($sp) +/* 3DE8E8 E00E48E8 8FB00028 */ lw $s0, 0x28($sp) +/* 3DE8EC E00E48EC D7BE0078 */ ldc1 $f30, 0x78($sp) +/* 3DE8F0 E00E48F0 D7BC0070 */ ldc1 $f28, 0x70($sp) +/* 3DE8F4 E00E48F4 D7BA0068 */ ldc1 $f26, 0x68($sp) +/* 3DE8F8 E00E48F8 D7B80060 */ ldc1 $f24, 0x60($sp) +/* 3DE8FC E00E48FC D7B60058 */ ldc1 $f22, 0x58($sp) +/* 3DE900 E00E4900 D7B40050 */ ldc1 $f20, 0x50($sp) +/* 3DE904 E00E4904 03E00008 */ jr $ra +/* 3DE908 E00E4908 27BD0080 */ addiu $sp, $sp, 0x80 diff --git a/asm/nonmatchings/code_3DE000/func_E00E490C.s b/asm/nonmatchings/code_3DE000/func_E00E490C.s new file mode 100644 index 0000000000..03ced74fd2 --- /dev/null +++ b/asm/nonmatchings/code_3DE000/func_E00E490C.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E490C +/* 3DE90C E00E490C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3DE910 E00E4910 3C02E00E */ lui $v0, %hi(D_E00E495C) +/* 3DE914 E00E4914 2442495C */ addiu $v0, $v0, %lo(D_E00E495C) +/* 3DE918 E00E4918 AFA2001C */ sw $v0, 0x1c($sp) +/* 3DE91C E00E491C 24020007 */ addiu $v0, $zero, 7 +/* 3DE920 E00E4920 AFA20014 */ sw $v0, 0x14($sp) +/* 3DE924 E00E4924 2402002D */ addiu $v0, $zero, 0x2d +/* 3DE928 E00E4928 AFA40018 */ sw $a0, 0x18($sp) +/* 3DE92C E00E492C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3DE930 E00E4930 AFBF0020 */ sw $ra, 0x20($sp) +/* 3DE934 E00E4934 0C080120 */ jal func_E0200480 +/* 3DE938 E00E4938 AFA20010 */ sw $v0, 0x10($sp) +/* 3DE93C E00E493C 8C430000 */ lw $v1, ($v0) +/* 3DE940 E00E4940 34630002 */ ori $v1, $v1, 2 +/* 3DE944 E00E4944 AC430000 */ sw $v1, ($v0) +/* 3DE948 E00E4948 8FBF0020 */ lw $ra, 0x20($sp) +/* 3DE94C E00E494C 03E00008 */ jr $ra +/* 3DE950 E00E4950 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3DE000/func_E00E4954.s b/asm/nonmatchings/code_3DE000/func_E00E4954.s new file mode 100644 index 0000000000..83c00fab5b --- /dev/null +++ b/asm/nonmatchings/code_3DE000/func_E00E4954.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E4954 +/* 3DE954 E00E4954 03E00008 */ jr $ra +/* 3DE958 E00E4958 00000000 */ nop diff --git a/asm/nonmatchings/code_3DE000/func_E00E495C.s b/asm/nonmatchings/code_3DE000/func_E00E495C.s new file mode 100644 index 0000000000..97618dd327 --- /dev/null +++ b/asm/nonmatchings/code_3DE000/func_E00E495C.s @@ -0,0 +1,279 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E495C +/* 3DE95C E00E495C 27BDFF20 */ addiu $sp, $sp, -0xe0 +/* 3DE960 E00E4960 AFB700BC */ sw $s7, 0xbc($sp) +/* 3DE964 E00E4964 0080B82D */ daddu $s7, $a0, $zero +/* 3DE968 E00E4968 3C05DB06 */ lui $a1, 0xdb06 +/* 3DE96C E00E496C 34A50024 */ ori $a1, $a1, 0x24 +/* 3DE970 E00E4970 AFB200A8 */ sw $s2, 0xa8($sp) +/* 3DE974 E00E4974 24120001 */ addiu $s2, $zero, 1 +/* 3DE978 E00E4978 3C09800A */ lui $t1, %hi(D_8009A66C) +/* 3DE97C E00E497C 2529A66C */ addiu $t1, $t1, %lo(D_8009A66C) +/* 3DE980 E00E4980 3C02E700 */ lui $v0, 0xe700 +/* 3DE984 E00E4984 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 3DE988 E00E4988 AFBE00C0 */ sw $fp, 0xc0($sp) +/* 3DE98C E00E498C AFB600B8 */ sw $s6, 0xb8($sp) +/* 3DE990 E00E4990 AFB500B4 */ sw $s5, 0xb4($sp) +/* 3DE994 E00E4994 AFB400B0 */ sw $s4, 0xb0($sp) +/* 3DE998 E00E4998 AFB300AC */ sw $s3, 0xac($sp) +/* 3DE99C E00E499C AFB100A4 */ sw $s1, 0xa4($sp) +/* 3DE9A0 E00E49A0 AFB000A0 */ sw $s0, 0xa0($sp) +/* 3DE9A4 E00E49A4 F7B800D8 */ sdc1 $f24, 0xd8($sp) +/* 3DE9A8 E00E49A8 F7B600D0 */ sdc1 $f22, 0xd0($sp) +/* 3DE9AC E00E49AC F7B400C8 */ sdc1 $f20, 0xc8($sp) +/* 3DE9B0 E00E49B0 8D240000 */ lw $a0, ($t1) +/* 3DE9B4 E00E49B4 8EE8000C */ lw $t0, 0xc($s7) +/* 3DE9B8 E00E49B8 3C01437F */ lui $at, 0x437f +/* 3DE9BC E00E49BC 44810000 */ mtc1 $at, $f0 +/* 3DE9C0 E00E49C0 0080182D */ daddu $v1, $a0, $zero +/* 3DE9C4 E00E49C4 24840008 */ addiu $a0, $a0, 8 +/* 3DE9C8 E00E49C8 AD240000 */ sw $a0, ($t1) +/* 3DE9CC E00E49CC 8D140000 */ lw $s4, ($t0) +/* 3DE9D0 E00E49D0 C5040058 */ lwc1 $f4, 0x58($t0) +/* 3DE9D4 E00E49D4 C5020044 */ lwc1 $f2, 0x44($t0) +/* 3DE9D8 E00E49D8 468010A0 */ cvt.s.w $f2, $f2 +/* 3DE9DC E00E49DC AC620000 */ sw $v0, ($v1) +/* 3DE9E0 E00E49E0 24820008 */ addiu $v0, $a0, 8 +/* 3DE9E4 E00E49E4 AC600004 */ sw $zero, 4($v1) +/* 3DE9E8 E00E49E8 AD220000 */ sw $v0, ($t1) +/* 3DE9EC E00E49EC AC850000 */ sw $a1, ($a0) +/* 3DE9F0 E00E49F0 8EE30010 */ lw $v1, 0x10($s7) +/* 3DE9F4 E00E49F4 24820010 */ addiu $v0, $a0, 0x10 +/* 3DE9F8 E00E49F8 AD220000 */ sw $v0, ($t1) +/* 3DE9FC E00E49FC 3C02FB00 */ lui $v0, 0xfb00 +/* 3DEA00 E00E4A00 8C63001C */ lw $v1, 0x1c($v1) +/* 3DEA04 E00E4A04 46001083 */ div.s $f2, $f2, $f0 +/* 3DEA08 E00E4A08 AC820008 */ sw $v0, 8($a0) +/* 3DEA0C E00E4A0C 3C028000 */ lui $v0, 0x8000 +/* 3DEA10 E00E4A10 46041502 */ mul.s $f20, $f2, $f4 +/* 3DEA14 E00E4A14 00000000 */ nop +/* 3DEA18 E00E4A18 00621821 */ addu $v1, $v1, $v0 +/* 3DEA1C E00E4A1C AC830004 */ sw $v1, 4($a0) +/* 3DEA20 E00E4A20 9102004B */ lbu $v0, 0x4b($t0) +/* 3DEA24 E00E4A24 9105004F */ lbu $a1, 0x4f($t0) +/* 3DEA28 E00E4A28 91060053 */ lbu $a2, 0x53($t0) +/* 3DEA2C E00E4A2C 91070057 */ lbu $a3, 0x57($t0) +/* 3DEA30 E00E4A30 3C03DE00 */ lui $v1, 0xde00 +/* 3DEA34 E00E4A34 AC830010 */ sw $v1, 0x10($a0) +/* 3DEA38 E00E4A38 00021600 */ sll $v0, $v0, 0x18 +/* 3DEA3C E00E4A3C 00052C00 */ sll $a1, $a1, 0x10 +/* 3DEA40 E00E4A40 00451025 */ or $v0, $v0, $a1 +/* 3DEA44 E00E4A44 00063200 */ sll $a2, $a2, 8 +/* 3DEA48 E00E4A48 00461025 */ or $v0, $v0, $a2 +/* 3DEA4C E00E4A4C 00471025 */ or $v0, $v0, $a3 +/* 3DEA50 E00E4A50 AC82000C */ sw $v0, 0xc($a0) +/* 3DEA54 E00E4A54 00141080 */ sll $v0, $s4, 2 +/* 3DEA58 E00E4A58 3C03E00E */ lui $v1, %hi(D_E00E4DA8) +/* 3DEA5C E00E4A5C 00621821 */ addu $v1, $v1, $v0 +/* 3DEA60 E00E4A60 8C634DA8 */ lw $v1, %lo(D_E00E4DA8)($v1) +/* 3DEA64 E00E4A64 24820018 */ addiu $v0, $a0, 0x18 +/* 3DEA68 E00E4A68 AD220000 */ sw $v0, ($t1) +/* 3DEA6C E00E4A6C AC830014 */ sw $v1, 0x14($a0) +/* 3DEA70 E00E4A70 8EE20008 */ lw $v0, 8($s7) +/* 3DEA74 E00E4A74 0242102A */ slt $v0, $s2, $v0 +/* 3DEA78 E00E4A78 104000B6 */ beqz $v0, .LE00E4D54 +/* 3DEA7C E00E4A7C 25080064 */ addiu $t0, $t0, 0x64 +/* 3DEA80 E00E4A80 3C16800A */ lui $s6, %hi(D_8009A674) +/* 3DEA84 E00E4A84 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 3DEA88 E00E4A88 3C158007 */ lui $s5, %hi(D_800741F0) +/* 3DEA8C E00E4A8C 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 3DEA90 E00E4A90 3C130001 */ lui $s3, 1 +/* 3DEA94 E00E4A94 36731630 */ ori $s3, $s3, 0x1630 +/* 3DEA98 E00E4A98 0120882D */ daddu $s1, $t1, $zero +/* 3DEA9C E00E4A9C 3C1EE00E */ lui $fp, %hi(D_E00E4D90) +/* 3DEAA0 E00E4AA0 27DE4D90 */ addiu $fp, $fp, %lo(D_E00E4D90) +/* 3DEAA4 E00E4AA4 25100060 */ addiu $s0, $t0, 0x60 +/* 3DEAA8 E00E4AA8 4480C000 */ mtc1 $zero, $f24 +/* 3DEAAC E00E4AAC 3C014F00 */ lui $at, 0x4f00 +/* 3DEAB0 E00E4AB0 4481B000 */ mtc1 $at, $f22 +.LE00E4AB4: +/* 3DEAB4 E00E4AB4 8E02FFCC */ lw $v0, -0x34($s0) +/* 3DEAB8 E00E4AB8 044000A1 */ bltz $v0, .LE00E4D40 +/* 3DEABC E00E4ABC 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DEAC0 E00E4AC0 3C0A800B */ lui $t2, %hi(gCameras) +/* 3DEAC4 E00E4AC4 254A1D80 */ addiu $t2, $t2, %lo(gCameras) +/* 3DEAC8 E00E4AC8 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3DEACC E00E4ACC 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3DEAD0 E00E4AD0 4405C000 */ mfc1 $a1, $f24 +/* 3DEAD4 E00E4AD4 C600FFF8 */ lwc1 $f0, -8($s0) +/* 3DEAD8 E00E4AD8 00031080 */ sll $v0, $v1, 2 +/* 3DEADC E00E4ADC 00431021 */ addu $v0, $v0, $v1 +/* 3DEAE0 E00E4AE0 00021080 */ sll $v0, $v0, 2 +/* 3DEAE4 E00E4AE4 00431023 */ subu $v0, $v0, $v1 +/* 3DEAE8 E00E4AE8 000218C0 */ sll $v1, $v0, 3 +/* 3DEAEC E00E4AEC 00431021 */ addu $v0, $v0, $v1 +/* 3DEAF0 E00E4AF0 46140002 */ mul.s $f0, $f0, $f20 +/* 3DEAF4 E00E4AF4 00000000 */ nop +/* 3DEAF8 E00E4AF8 000210C0 */ sll $v0, $v0, 3 +/* 3DEAFC E00E4AFC 004A1021 */ addu $v0, $v0, $t2 +/* 3DEB00 E00E4B00 C442006C */ lwc1 $f2, 0x6c($v0) +/* 3DEB04 E00E4B04 4407C000 */ mfc1 $a3, $f24 +/* 3DEB08 E00E4B08 46001087 */ neg.s $f2, $f2 +/* 3DEB0C E00E4B0C 44061000 */ mfc1 $a2, $f2 +/* 3DEB10 E00E4B10 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3DEB14 E00E4B14 C600FFA4 */ lwc1 $f0, -0x5c($s0) +/* 3DEB18 E00E4B18 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3DEB1C E00E4B1C C600FFA8 */ lwc1 $f0, -0x58($s0) +/* 3DEB20 E00E4B20 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3DEB24 E00E4B24 C600FFAC */ lwc1 $f0, -0x54($s0) +/* 3DEB28 E00E4B28 0C080180 */ jal func_E0200600 +/* 3DEB2C E00E4B2C E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3DEB30 E00E4B30 27A40020 */ addiu $a0, $sp, 0x20 +/* 3DEB34 E00E4B34 96A50000 */ lhu $a1, ($s5) +/* 3DEB38 E00E4B38 8EC20000 */ lw $v0, ($s6) +/* 3DEB3C E00E4B3C 00052980 */ sll $a1, $a1, 6 +/* 3DEB40 E00E4B40 00B32821 */ addu $a1, $a1, $s3 +/* 3DEB44 E00E4B44 0C080118 */ jal func_E0200460 +/* 3DEB48 E00E4B48 00452821 */ addu $a1, $v0, $a1 +/* 3DEB4C E00E4B4C 8E240000 */ lw $a0, ($s1) +/* 3DEB50 E00E4B50 0080282D */ daddu $a1, $a0, $zero +/* 3DEB54 E00E4B54 24840008 */ addiu $a0, $a0, 8 +/* 3DEB58 E00E4B58 AE240000 */ sw $a0, ($s1) +/* 3DEB5C E00E4B5C 96A20000 */ lhu $v0, ($s5) +/* 3DEB60 E00E4B60 3C03DA38 */ lui $v1, 0xda38 +/* 3DEB64 E00E4B64 ACA30000 */ sw $v1, ($a1) +/* 3DEB68 E00E4B68 24430001 */ addiu $v1, $v0, 1 +/* 3DEB6C E00E4B6C 3042FFFF */ andi $v0, $v0, 0xffff +/* 3DEB70 E00E4B70 00021180 */ sll $v0, $v0, 6 +/* 3DEB74 E00E4B74 A6A30000 */ sh $v1, ($s5) +/* 3DEB78 E00E4B78 8EC30000 */ lw $v1, ($s6) +/* 3DEB7C E00E4B7C 00531021 */ addu $v0, $v0, $s3 +/* 3DEB80 E00E4B80 00621821 */ addu $v1, $v1, $v0 +/* 3DEB84 E00E4B84 24820008 */ addiu $v0, $a0, 8 +/* 3DEB88 E00E4B88 ACA30004 */ sw $v1, 4($a1) +/* 3DEB8C E00E4B8C AE220000 */ sw $v0, ($s1) +/* 3DEB90 E00E4B90 24020050 */ addiu $v0, $zero, 0x50 +/* 3DEB94 E00E4B94 8E03FFCC */ lw $v1, -0x34($s0) +/* 3DEB98 E00E4B98 24850004 */ addiu $a1, $a0, 4 +/* 3DEB9C E00E4B9C 00431023 */ subu $v0, $v0, $v1 +/* 3DEBA0 E00E4BA0 304200FF */ andi $v0, $v0, 0xff +/* 3DEBA4 E00E4BA4 3C03FA00 */ lui $v1, 0xfa00 +/* 3DEBA8 E00E4BA8 00431025 */ or $v0, $v0, $v1 +/* 3DEBAC E00E4BAC AC820000 */ sw $v0, ($a0) +/* 3DEBB0 E00E4BB0 C600FFE4 */ lwc1 $f0, -0x1c($s0) +/* 3DEBB4 E00E4BB4 46800020 */ cvt.s.w $f0, $f0 +/* 3DEBB8 E00E4BB8 4600A002 */ mul.s $f0, $f20, $f0 +/* 3DEBBC E00E4BBC 00000000 */ nop +/* 3DEBC0 E00E4BC0 9203FFDB */ lbu $v1, -0x25($s0) +/* 3DEBC4 E00E4BC4 9204FFDF */ lbu $a0, -0x21($s0) +/* 3DEBC8 E00E4BC8 9202FFE3 */ lbu $v0, -0x1d($s0) +/* 3DEBCC E00E4BCC 00031E00 */ sll $v1, $v1, 0x18 +/* 3DEBD0 E00E4BD0 00042400 */ sll $a0, $a0, 0x10 +/* 3DEBD4 E00E4BD4 00641825 */ or $v1, $v1, $a0 +/* 3DEBD8 E00E4BD8 00021200 */ sll $v0, $v0, 8 +/* 3DEBDC E00E4BDC 4600B03E */ c.le.s $f22, $f0 +/* 3DEBE0 E00E4BE0 00000000 */ nop +/* 3DEBE4 E00E4BE4 45010005 */ bc1t .LE00E4BFC +/* 3DEBE8 E00E4BE8 00621825 */ or $v1, $v1, $v0 +/* 3DEBEC E00E4BEC 4600018D */ trunc.w.s $f6, $f0 +/* 3DEBF0 E00E4BF0 44043000 */ mfc1 $a0, $f6 +/* 3DEBF4 E00E4BF4 08039306 */ j .LE00E4C18 +/* 3DEBF8 E00E4BF8 308200FF */ andi $v0, $a0, 0xff +.LE00E4BFC: +/* 3DEBFC E00E4BFC 46160001 */ sub.s $f0, $f0, $f22 +/* 3DEC00 E00E4C00 3C028000 */ lui $v0, 0x8000 +/* 3DEC04 E00E4C04 4600018D */ trunc.w.s $f6, $f0 +/* 3DEC08 E00E4C08 44043000 */ mfc1 $a0, $f6 +/* 3DEC0C E00E4C0C 00000000 */ nop +/* 3DEC10 E00E4C10 00822025 */ or $a0, $a0, $v0 +/* 3DEC14 E00E4C14 308200FF */ andi $v0, $a0, 0xff +.LE00E4C18: +/* 3DEC18 E00E4C18 00621025 */ or $v0, $v1, $v0 +/* 3DEC1C E00E4C1C 8E260000 */ lw $a2, ($s1) +/* 3DEC20 E00E4C20 3C03F200 */ lui $v1, 0xf200 +/* 3DEC24 E00E4C24 ACA20000 */ sw $v0, ($a1) +/* 3DEC28 E00E4C28 C600FFFC */ lwc1 $f0, -4($s0) +/* 3DEC2C E00E4C2C 00C0282D */ daddu $a1, $a2, $zero +/* 3DEC30 E00E4C30 4600018D */ trunc.w.s $f6, $f0 +/* 3DEC34 E00E4C34 44043000 */ mfc1 $a0, $f6 +/* 3DEC38 E00E4C38 00000000 */ nop +/* 3DEC3C E00E4C3C 00042080 */ sll $a0, $a0, 2 +/* 3DEC40 E00E4C40 30840FFF */ andi $a0, $a0, 0xfff +/* 3DEC44 E00E4C44 00042300 */ sll $a0, $a0, 0xc +/* 3DEC48 E00E4C48 C6000000 */ lwc1 $f0, ($s0) +/* 3DEC4C E00E4C4C 24C60008 */ addiu $a2, $a2, 8 +/* 3DEC50 E00E4C50 4600018D */ trunc.w.s $f6, $f0 +/* 3DEC54 E00E4C54 44023000 */ mfc1 $v0, $f6 +/* 3DEC58 E00E4C58 00000000 */ nop +/* 3DEC5C E00E4C5C 00021080 */ sll $v0, $v0, 2 +/* 3DEC60 E00E4C60 30420FFF */ andi $v0, $v0, 0xfff +/* 3DEC64 E00E4C64 00431025 */ or $v0, $v0, $v1 +/* 3DEC68 E00E4C68 00822025 */ or $a0, $a0, $v0 +/* 3DEC6C E00E4C6C ACA40000 */ sw $a0, ($a1) +/* 3DEC70 E00E4C70 C600FFFC */ lwc1 $f0, -4($s0) +/* 3DEC74 E00E4C74 3C030100 */ lui $v1, 0x100 +/* 3DEC78 E00E4C78 AE260000 */ sw $a2, ($s1) +/* 3DEC7C E00E4C7C 4600018D */ trunc.w.s $f6, $f0 +/* 3DEC80 E00E4C80 44043000 */ mfc1 $a0, $f6 +/* 3DEC84 E00E4C84 00000000 */ nop +/* 3DEC88 E00E4C88 2484000F */ addiu $a0, $a0, 0xf +/* 3DEC8C E00E4C8C 00042080 */ sll $a0, $a0, 2 +/* 3DEC90 E00E4C90 30840FFF */ andi $a0, $a0, 0xfff +/* 3DEC94 E00E4C94 C6000000 */ lwc1 $f0, ($s0) +/* 3DEC98 E00E4C98 00042300 */ sll $a0, $a0, 0xc +/* 3DEC9C E00E4C9C 4600018D */ trunc.w.s $f6, $f0 +/* 3DECA0 E00E4CA0 44023000 */ mfc1 $v0, $f6 +/* 3DECA4 E00E4CA4 00000000 */ nop +/* 3DECA8 E00E4CA8 2442000F */ addiu $v0, $v0, 0xf +/* 3DECAC E00E4CAC 00021080 */ sll $v0, $v0, 2 +/* 3DECB0 E00E4CB0 30420FFF */ andi $v0, $v0, 0xfff +/* 3DECB4 E00E4CB4 00431025 */ or $v0, $v0, $v1 +/* 3DECB8 E00E4CB8 00822025 */ or $a0, $a0, $v0 +/* 3DECBC E00E4CBC 24020002 */ addiu $v0, $zero, 2 +/* 3DECC0 E00E4CC0 1682000E */ bne $s4, $v0, .LE00E4CFC +/* 3DECC4 E00E4CC4 ACA40004 */ sw $a0, 4($a1) +/* 3DECC8 E00E4CC8 3C04F200 */ lui $a0, 0xf200 +/* 3DECCC E00E4CCC 3484007C */ ori $a0, $a0, 0x7c +/* 3DECD0 E00E4CD0 24C20008 */ addiu $v0, $a2, 8 +/* 3DECD4 E00E4CD4 3243001F */ andi $v1, $s2, 0x1f +/* 3DECD8 E00E4CD8 AE220000 */ sw $v0, ($s1) +/* 3DECDC E00E4CDC 000314C0 */ sll $v0, $v1, 0x13 +/* 3DECE0 E00E4CE0 00441025 */ or $v0, $v0, $a0 +/* 3DECE4 E00E4CE4 000319C0 */ sll $v1, $v1, 7 +/* 3DECE8 E00E4CE8 3463007C */ ori $v1, $v1, 0x7c +/* 3DECEC E00E4CEC 00031B00 */ sll $v1, $v1, 0xc +/* 3DECF0 E00E4CF0 3463007C */ ori $v1, $v1, 0x7c +/* 3DECF4 E00E4CF4 ACC20000 */ sw $v0, ($a2) +/* 3DECF8 E00E4CF8 ACC30004 */ sw $v1, 4($a2) +.LE00E4CFC: +/* 3DECFC E00E4CFC 3C06D838 */ lui $a2, 0xd838 +/* 3DED00 E00E4D00 34C60002 */ ori $a2, $a2, 2 +/* 3DED04 E00E4D04 8E230000 */ lw $v1, ($s1) +/* 3DED08 E00E4D08 3C02DE00 */ lui $v0, 0xde00 +/* 3DED0C E00E4D0C 0060282D */ daddu $a1, $v1, $zero +/* 3DED10 E00E4D10 24630008 */ addiu $v1, $v1, 8 +/* 3DED14 E00E4D14 AE230000 */ sw $v1, ($s1) +/* 3DED18 E00E4D18 ACA20000 */ sw $v0, ($a1) +/* 3DED1C E00E4D1C 00141080 */ sll $v0, $s4, 2 +/* 3DED20 E00E4D20 005E1021 */ addu $v0, $v0, $fp +/* 3DED24 E00E4D24 8C440000 */ lw $a0, ($v0) +/* 3DED28 E00E4D28 24620008 */ addiu $v0, $v1, 8 +/* 3DED2C E00E4D2C AE220000 */ sw $v0, ($s1) +/* 3DED30 E00E4D30 24020040 */ addiu $v0, $zero, 0x40 +/* 3DED34 E00E4D34 ACA40004 */ sw $a0, 4($a1) +/* 3DED38 E00E4D38 AC660000 */ sw $a2, ($v1) +/* 3DED3C E00E4D3C AC620004 */ sw $v0, 4($v1) +.LE00E4D40: +/* 3DED40 E00E4D40 26520001 */ addiu $s2, $s2, 1 +/* 3DED44 E00E4D44 8EE20008 */ lw $v0, 8($s7) +/* 3DED48 E00E4D48 0242102A */ slt $v0, $s2, $v0 +/* 3DED4C E00E4D4C 1440FF59 */ bnez $v0, .LE00E4AB4 +/* 3DED50 E00E4D50 26100064 */ addiu $s0, $s0, 0x64 +.LE00E4D54: +/* 3DED54 E00E4D54 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 3DED58 E00E4D58 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 3DED5C E00E4D5C 8FB700BC */ lw $s7, 0xbc($sp) +/* 3DED60 E00E4D60 8FB600B8 */ lw $s6, 0xb8($sp) +/* 3DED64 E00E4D64 8FB500B4 */ lw $s5, 0xb4($sp) +/* 3DED68 E00E4D68 8FB400B0 */ lw $s4, 0xb0($sp) +/* 3DED6C E00E4D6C 8FB300AC */ lw $s3, 0xac($sp) +/* 3DED70 E00E4D70 8FB200A8 */ lw $s2, 0xa8($sp) +/* 3DED74 E00E4D74 8FB100A4 */ lw $s1, 0xa4($sp) +/* 3DED78 E00E4D78 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3DED7C E00E4D7C D7B800D8 */ ldc1 $f24, 0xd8($sp) +/* 3DED80 E00E4D80 D7B600D0 */ ldc1 $f22, 0xd0($sp) +/* 3DED84 E00E4D84 D7B400C8 */ ldc1 $f20, 0xc8($sp) +/* 3DED88 E00E4D88 03E00008 */ jr $ra +/* 3DED8C E00E4D8C 27BD00E0 */ addiu $sp, $sp, 0xe0 diff --git a/asm/nonmatchings/code_3E0930/func_E00E6000.s b/asm/nonmatchings/code_3E0930/func_E00E6000.s new file mode 100644 index 0000000000..990a33de44 --- /dev/null +++ b/asm/nonmatchings/code_3E0930/func_E00E6000.s @@ -0,0 +1,105 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E6000 +/* 3E0930 E00E6000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3E0934 E00E6004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3E0938 E00E6008 4485A000 */ mtc1 $a1, $f20 +/* 3E093C E00E600C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3E0940 E00E6010 4486B000 */ mtc1 $a2, $f22 +/* 3E0944 E00E6014 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3E0948 E00E6018 4487C000 */ mtc1 $a3, $f24 +/* 3E094C E00E601C AFB30034 */ sw $s3, 0x34($sp) +/* 3E0950 E00E6020 0080982D */ daddu $s3, $a0, $zero +/* 3E0954 E00E6024 AFB00028 */ sw $s0, 0x28($sp) +/* 3E0958 E00E6028 8FB0006C */ lw $s0, 0x6c($sp) +/* 3E095C E00E602C 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E0960 E00E6030 AFB20030 */ sw $s2, 0x30($sp) +/* 3E0964 E00E6034 8FB20070 */ lw $s2, 0x70($sp) +/* 3E0968 E00E6038 3C02E00E */ lui $v0, %hi(D_E00E617C) +/* 3E096C E00E603C 2442617C */ addiu $v0, $v0, %lo(D_E00E617C) +/* 3E0970 E00E6040 AFA20018 */ sw $v0, 0x18($sp) +/* 3E0974 E00E6044 3C02E00E */ lui $v0, %hi(D_E00E6184) +/* 3E0978 E00E6048 24426184 */ addiu $v0, $v0, %lo(D_E00E6184) +/* 3E097C E00E604C AFA2001C */ sw $v0, 0x1c($sp) +/* 3E0980 E00E6050 3C02E00E */ lui $v0, %hi(D_E00E64D4) +/* 3E0984 E00E6054 244264D4 */ addiu $v0, $v0, %lo(D_E00E64D4) +/* 3E0988 E00E6058 AFA20020 */ sw $v0, 0x20($sp) +/* 3E098C E00E605C 24020073 */ addiu $v0, $zero, 0x73 +/* 3E0990 E00E6060 AFBF0038 */ sw $ra, 0x38($sp) +/* 3E0994 E00E6064 AFB1002C */ sw $s1, 0x2c($sp) +/* 3E0998 E00E6068 AFA00010 */ sw $zero, 0x10($sp) +/* 3E099C E00E606C AFA00024 */ sw $zero, 0x24($sp) +/* 3E09A0 E00E6070 AFA20014 */ sw $v0, 0x14($sp) +/* 3E09A4 E00E6074 0C080124 */ jal func_E0200490 +/* 3E09A8 E00E6078 26100001 */ addiu $s0, $s0, 1 +/* 3E09AC E00E607C 001020C0 */ sll $a0, $s0, 3 +/* 3E09B0 E00E6080 00902023 */ subu $a0, $a0, $s0 +/* 3E09B4 E00E6084 000420C0 */ sll $a0, $a0, 3 +/* 3E09B8 E00E6088 0040882D */ daddu $s1, $v0, $zero +/* 3E09BC E00E608C 0C08012C */ jal func_E02004B0 +/* 3E09C0 E00E6090 AE300008 */ sw $s0, 8($s1) +/* 3E09C4 E00E6094 0040182D */ daddu $v1, $v0, $zero +/* 3E09C8 E00E6098 14600003 */ bnez $v1, .LE00E60A8 +/* 3E09CC E00E609C AE23000C */ sw $v1, 0xc($s1) +.LE00E60A0: +/* 3E09D0 E00E60A0 08039828 */ j .LE00E60A0 +/* 3E09D4 E00E60A4 00000000 */ nop +.LE00E60A8: +/* 3E09D8 E00E60A8 AC730000 */ sw $s3, ($v1) +/* 3E09DC E00E60AC 1E400004 */ bgtz $s2, .LE00E60C0 +/* 3E09E0 E00E60B0 AC60002C */ sw $zero, 0x2c($v1) +/* 3E09E4 E00E60B4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3E09E8 E00E60B8 08039831 */ j .LE00E60C4 +/* 3E09EC E00E60BC AC620028 */ sw $v0, 0x28($v1) +.LE00E60C0: +/* 3E09F0 E00E60C0 AC720028 */ sw $s2, 0x28($v1) +.LE00E60C4: +/* 3E09F4 E00E60C4 240200FF */ addiu $v0, $zero, 0xff +/* 3E09F8 E00E60C8 24040001 */ addiu $a0, $zero, 1 +/* 3E09FC E00E60CC AC620030 */ sw $v0, 0x30($v1) +/* 3E0A00 E00E60D0 E4740004 */ swc1 $f20, 4($v1) +/* 3E0A04 E00E60D4 E4760008 */ swc1 $f22, 8($v1) +/* 3E0A08 E00E60D8 E478000C */ swc1 $f24, 0xc($v1) +/* 3E0A0C E00E60DC C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3E0A10 E00E60E0 00131080 */ sll $v0, $s3, 2 +/* 3E0A14 E00E60E4 E4600034 */ swc1 $f0, 0x34($v1) +/* 3E0A18 E00E60E8 3C01E00E */ lui $at, %hi(D_E00E6890) +/* 3E0A1C E00E60EC 00220821 */ addu $at, $at, $v0 +/* 3E0A20 E00E60F0 C4226890 */ lwc1 $f2, %lo(D_E00E6890)($at) +/* 3E0A24 E00E60F4 468010A0 */ cvt.s.w $f2, $f2 +/* 3E0A28 E00E60F8 3C013F00 */ lui $at, 0x3f00 +/* 3E0A2C E00E60FC 44810000 */ mtc1 $at, $f0 +/* 3E0A30 E00E6100 0090102A */ slt $v0, $a0, $s0 +/* 3E0A34 E00E6104 46001082 */ mul.s $f2, $f2, $f0 +/* 3E0A38 E00E6108 00000000 */ nop +/* 3E0A3C E00E610C 10400010 */ beqz $v0, .LE00E6150 +/* 3E0A40 E00E6110 24630038 */ addiu $v1, $v1, 0x38 +/* 3E0A44 E00E6114 3C01BF80 */ lui $at, 0xbf80 +/* 3E0A48 E00E6118 44812000 */ mtc1 $at, $f4 +.LE00E611C: +/* 3E0A4C E00E611C 30820001 */ andi $v0, $a0, 1 +/* 3E0A50 E00E6120 44820000 */ mtc1 $v0, $f0 +/* 3E0A54 E00E6124 00000000 */ nop +/* 3E0A58 E00E6128 46800020 */ cvt.s.w $f0, $f0 +/* 3E0A5C E00E612C 46001002 */ mul.s $f0, $f2, $f0 +/* 3E0A60 E00E6130 00000000 */ nop +/* 3E0A64 E00E6134 46002001 */ sub.s $f0, $f4, $f0 +/* 3E0A68 E00E6138 24840001 */ addiu $a0, $a0, 1 +/* 3E0A6C E00E613C 0090102A */ slt $v0, $a0, $s0 +/* 3E0A70 E00E6140 4600018D */ trunc.w.s $f6, $f0 +/* 3E0A74 E00E6144 E4660020 */ swc1 $f6, 0x20($v1) +/* 3E0A78 E00E6148 1440FFF4 */ bnez $v0, .LE00E611C +/* 3E0A7C E00E614C 24630038 */ addiu $v1, $v1, 0x38 +.LE00E6150: +/* 3E0A80 E00E6150 0220102D */ daddu $v0, $s1, $zero +/* 3E0A84 E00E6154 8FBF0038 */ lw $ra, 0x38($sp) +/* 3E0A88 E00E6158 8FB30034 */ lw $s3, 0x34($sp) +/* 3E0A8C E00E615C 8FB20030 */ lw $s2, 0x30($sp) +/* 3E0A90 E00E6160 8FB1002C */ lw $s1, 0x2c($sp) +/* 3E0A94 E00E6164 8FB00028 */ lw $s0, 0x28($sp) +/* 3E0A98 E00E6168 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3E0A9C E00E616C D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3E0AA0 E00E6170 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3E0AA4 E00E6174 03E00008 */ jr $ra +/* 3E0AA8 E00E6178 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3E0930/func_E00E617C.s b/asm/nonmatchings/code_3E0930/func_E00E617C.s new file mode 100644 index 0000000000..24de3efb90 --- /dev/null +++ b/asm/nonmatchings/code_3E0930/func_E00E617C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E617C +/* 3E0AAC E00E617C 03E00008 */ jr $ra +/* 3E0AB0 E00E6180 00000000 */ nop diff --git a/asm/nonmatchings/code_3E0930/func_E00E6184.s b/asm/nonmatchings/code_3E0930/func_E00E6184.s new file mode 100644 index 0000000000..829cb6f3cb --- /dev/null +++ b/asm/nonmatchings/code_3E0930/func_E00E6184.s @@ -0,0 +1,231 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E6184 +/* 3E0AB4 E00E6184 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 3E0AB8 E00E6188 AFB20018 */ sw $s2, 0x18($sp) +/* 3E0ABC E00E618C 0080902D */ daddu $s2, $a0, $zero +/* 3E0AC0 E00E6190 AFBF0030 */ sw $ra, 0x30($sp) +/* 3E0AC4 E00E6194 AFB7002C */ sw $s7, 0x2c($sp) +/* 3E0AC8 E00E6198 AFB60028 */ sw $s6, 0x28($sp) +/* 3E0ACC E00E619C AFB50024 */ sw $s5, 0x24($sp) +/* 3E0AD0 E00E61A0 AFB40020 */ sw $s4, 0x20($sp) +/* 3E0AD4 E00E61A4 AFB3001C */ sw $s3, 0x1c($sp) +/* 3E0AD8 E00E61A8 AFB10014 */ sw $s1, 0x14($sp) +/* 3E0ADC E00E61AC AFB00010 */ sw $s0, 0x10($sp) +/* 3E0AE0 E00E61B0 F7BC0058 */ sdc1 $f28, 0x58($sp) +/* 3E0AE4 E00E61B4 F7BA0050 */ sdc1 $f26, 0x50($sp) +/* 3E0AE8 E00E61B8 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3E0AEC E00E61BC F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3E0AF0 E00E61C0 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3E0AF4 E00E61C4 8E430000 */ lw $v1, ($s2) +/* 3E0AF8 E00E61C8 8E45000C */ lw $a1, 0xc($s2) +/* 3E0AFC E00E61CC 30620010 */ andi $v0, $v1, 0x10 +/* 3E0B00 E00E61D0 8CB30000 */ lw $s3, ($a1) +/* 3E0B04 E00E61D4 10400005 */ beqz $v0, .LE00E61EC +/* 3E0B08 E00E61D8 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3E0B0C E00E61DC 00621024 */ and $v0, $v1, $v0 +/* 3E0B10 E00E61E0 AE420000 */ sw $v0, ($s2) +/* 3E0B14 E00E61E4 24020010 */ addiu $v0, $zero, 0x10 +/* 3E0B18 E00E61E8 ACA20028 */ sw $v0, 0x28($a1) +.LE00E61EC: +/* 3E0B1C E00E61EC 8CA30028 */ lw $v1, 0x28($a1) +/* 3E0B20 E00E61F0 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3E0B24 E00E61F4 10400002 */ beqz $v0, .LE00E6200 +/* 3E0B28 E00E61F8 2462FFFF */ addiu $v0, $v1, -1 +/* 3E0B2C E00E61FC ACA20028 */ sw $v0, 0x28($a1) +.LE00E6200: +/* 3E0B30 E00E6200 8CA2002C */ lw $v0, 0x2c($a1) +/* 3E0B34 E00E6204 8CA40028 */ lw $a0, 0x28($a1) +/* 3E0B38 E00E6208 24420001 */ addiu $v0, $v0, 1 +/* 3E0B3C E00E620C 04810005 */ bgez $a0, .LE00E6224 +/* 3E0B40 E00E6210 ACA2002C */ sw $v0, 0x2c($a1) +/* 3E0B44 E00E6214 0C080128 */ jal func_E02004A0 +/* 3E0B48 E00E6218 0240202D */ daddu $a0, $s2, $zero +/* 3E0B4C E00E621C 08039925 */ j .LE00E6494 +/* 3E0B50 E00E6220 00000000 */ nop +.LE00E6224: +/* 3E0B54 E00E6224 0040A82D */ daddu $s5, $v0, $zero +/* 3E0B58 E00E6228 28820010 */ slti $v0, $a0, 0x10 +/* 3E0B5C E00E622C 10400002 */ beqz $v0, .LE00E6238 +/* 3E0B60 E00E6230 00041100 */ sll $v0, $a0, 4 +/* 3E0B64 E00E6234 ACA20030 */ sw $v0, 0x30($a1) +.LE00E6238: +/* 3E0B68 E00E6238 16600009 */ bnez $s3, .LE00E6260 +/* 3E0B6C E00E623C 24A50038 */ addiu $a1, $a1, 0x38 +/* 3E0B70 E00E6240 3C013DCC */ lui $at, 0x3dcc +/* 3E0B74 E00E6244 3421CCCD */ ori $at, $at, 0xcccd +/* 3E0B78 E00E6248 4481C000 */ mtc1 $at, $f24 +/* 3E0B7C E00E624C 3C013E4C */ lui $at, 0x3e4c +/* 3E0B80 E00E6250 3421CCCD */ ori $at, $at, 0xcccd +/* 3E0B84 E00E6254 4481B000 */ mtc1 $at, $f22 +/* 3E0B88 E00E6258 0803989D */ j .LE00E6274 +/* 3E0B8C E00E625C 00000000 */ nop +.LE00E6260: +/* 3E0B90 E00E6260 3C013E4C */ lui $at, 0x3e4c +/* 3E0B94 E00E6264 3421CCCD */ ori $at, $at, 0xcccd +/* 3E0B98 E00E6268 4481B000 */ mtc1 $at, $f22 +/* 3E0B9C E00E626C 00000000 */ nop +/* 3E0BA0 E00E6270 4600B606 */ mov.s $f24, $f22 +.LE00E6274: +/* 3E0BA4 E00E6274 8E420008 */ lw $v0, 8($s2) +/* 3E0BA8 E00E6278 24110001 */ addiu $s1, $zero, 1 +/* 3E0BAC E00E627C 0222102A */ slt $v0, $s1, $v0 +/* 3E0BB0 E00E6280 10400084 */ beqz $v0, .LE00E6494 +/* 3E0BB4 E00E6284 00131080 */ sll $v0, $s3, 2 +/* 3E0BB8 E00E6288 3C03E00E */ lui $v1, %hi(D_E00E6890) +/* 3E0BBC E00E628C 24636890 */ addiu $v1, $v1, %lo(D_E00E6890) +/* 3E0BC0 E00E6290 0043A021 */ addu $s4, $v0, $v1 +/* 3E0BC4 E00E6294 3C17E00E */ lui $s7, %hi(D_E00E6898) +/* 3E0BC8 E00E6298 26F76898 */ addiu $s7, $s7, %lo(D_E00E6898) +/* 3E0BCC E00E629C 3C16E00E */ lui $s6, %hi(D_E00E6910) +/* 3E0BD0 E00E62A0 26D66910 */ addiu $s6, $s6, %lo(D_E00E6910) +/* 3E0BD4 E00E62A4 24B00014 */ addiu $s0, $a1, 0x14 +/* 3E0BD8 E00E62A8 3C014180 */ lui $at, 0x4180 +/* 3E0BDC E00E62AC 4481E000 */ mtc1 $at, $f28 +/* 3E0BE0 E00E62B0 3C01E00E */ lui $at, %hi(D_E00E6990) +/* 3E0BE4 E00E62B4 D43A6990 */ ldc1 $f26, %lo(D_E00E6990)($at) +.LE00E62B8: +/* 3E0BE8 E00E62B8 8E02000C */ lw $v0, 0xc($s0) +/* 3E0BEC E00E62BC 24420001 */ addiu $v0, $v0, 1 +/* 3E0BF0 E00E62C0 AE02000C */ sw $v0, 0xc($s0) +/* 3E0BF4 E00E62C4 8E830000 */ lw $v1, ($s4) +/* 3E0BF8 E00E62C8 0043102A */ slt $v0, $v0, $v1 +/* 3E0BFC E00E62CC 50400001 */ beql $v0, $zero, .LE00E62D4 +/* 3E0C00 E00E62D0 AE00000C */ sw $zero, 0xc($s0) +.LE00E62D4: +/* 3E0C04 E00E62D4 8E02000C */ lw $v0, 0xc($s0) +/* 3E0C08 E00E62D8 0442006A */ bltzl $v0, .LE00E6484 +/* 3E0C0C E00E62DC 26310001 */ addiu $s1, $s1, 1 +/* 3E0C10 E00E62E0 1440002A */ bnez $v0, .LE00E638C +/* 3E0C14 E00E62E4 00000000 */ nop +/* 3E0C18 E00E62E8 3C0143B4 */ lui $at, 0x43b4 +/* 3E0C1C E00E62EC 44810000 */ mtc1 $at, $f0 +/* 3E0C20 E00E62F0 4491A000 */ mtc1 $s1, $f20 +/* 3E0C24 E00E62F4 00000000 */ nop +/* 3E0C28 E00E62F8 4680A520 */ cvt.s.w $f20, $f20 +/* 3E0C2C E00E62FC 4600A502 */ mul.s $f20, $f20, $f0 +/* 3E0C30 E00E6300 00000000 */ nop +/* 3E0C34 E00E6304 8E420008 */ lw $v0, 8($s2) +/* 3E0C38 E00E6308 2442FFFF */ addiu $v0, $v0, -1 +/* 3E0C3C E00E630C 44820000 */ mtc1 $v0, $f0 +/* 3E0C40 E00E6310 00000000 */ nop +/* 3E0C44 E00E6314 46800020 */ cvt.s.w $f0, $f0 +/* 3E0C48 E00E6318 4600A503 */ div.s $f20, $f20, $f0 +/* 3E0C4C E00E631C 0C080140 */ jal func_E0200500 +/* 3E0C50 E00E6320 4600A306 */ mov.s $f12, $f20 +/* 3E0C54 E00E6324 461C0002 */ mul.s $f0, $f0, $f28 +/* 3E0C58 E00E6328 00000000 */ nop +/* 3E0C5C E00E632C 4600A306 */ mov.s $f12, $f20 +/* 3E0C60 E00E6330 0C080144 */ jal func_E0200510 +/* 3E0C64 E00E6334 E600FFF0 */ swc1 $f0, -0x10($s0) +/* 3E0C68 E00E6338 461C0002 */ mul.s $f0, $f0, $f28 +/* 3E0C6C E00E633C 00000000 */ nop +/* 3E0C70 E00E6340 C606FFF0 */ lwc1 $f6, -0x10($s0) +/* 3E0C74 E00E6344 46183182 */ mul.s $f6, $f6, $f24 +/* 3E0C78 E00E6348 00000000 */ nop +/* 3E0C7C E00E634C E600FFF4 */ swc1 $f0, -0xc($s0) +/* 3E0C80 E00E6350 46000106 */ mov.s $f4, $f0 +/* 3E0C84 E00E6354 46182102 */ mul.s $f4, $f4, $f24 +/* 3E0C88 E00E6358 00000000 */ nop +/* 3E0C8C E00E635C 3C013F80 */ lui $at, 0x3f80 +/* 3E0C90 E00E6360 44811000 */ mtc1 $at, $f2 +/* 3E0C94 E00E6364 3C014234 */ lui $at, 0x4234 +/* 3E0C98 E00E6368 44810000 */ mtc1 $at, $f0 +/* 3E0C9C E00E636C 4600A507 */ neg.s $f20, $f20 +/* 3E0CA0 E00E6370 AE000004 */ sw $zero, 4($s0) +/* 3E0CA4 E00E6374 AE000008 */ sw $zero, 8($s0) +/* 3E0CA8 E00E6378 4600A501 */ sub.s $f20, $f20, $f0 +/* 3E0CAC E00E637C E6020020 */ swc1 $f2, 0x20($s0) +/* 3E0CB0 E00E6380 E606FFFC */ swc1 $f6, -4($s0) +/* 3E0CB4 E00E6384 E6140010 */ swc1 $f20, 0x10($s0) +/* 3E0CB8 E00E6388 E6040000 */ swc1 $f4, ($s0) +.LE00E638C: +/* 3E0CBC E00E638C 16600008 */ bnez $s3, .LE00E63B0 +/* 3E0CC0 E00E6390 00000000 */ nop +/* 3E0CC4 E00E6394 8E02000C */ lw $v0, 0xc($s0) +/* 3E0CC8 E00E6398 3C03E00E */ lui $v1, %hi(D_E00E68F8) +/* 3E0CCC E00E639C 00621821 */ addu $v1, $v1, $v0 +/* 3E0CD0 E00E63A0 906368F8 */ lbu $v1, %lo(D_E00E68F8)($v1) +/* 3E0CD4 E00E63A4 00021080 */ sll $v0, $v0, 2 +/* 3E0CD8 E00E63A8 080398F2 */ j .LE00E63C8 +/* 3E0CDC E00E63AC 00571021 */ addu $v0, $v0, $s7 +.LE00E63B0: +/* 3E0CE0 E00E63B0 8E02000C */ lw $v0, 0xc($s0) +/* 3E0CE4 E00E63B4 3C03E00E */ lui $v1, %hi(D_E00E6970) +/* 3E0CE8 E00E63B8 00621821 */ addu $v1, $v1, $v0 +/* 3E0CEC E00E63BC 90636970 */ lbu $v1, %lo(D_E00E6970)($v1) +/* 3E0CF0 E00E63C0 00021080 */ sll $v0, $v0, 2 +/* 3E0CF4 E00E63C4 00561021 */ addu $v0, $v0, $s6 +.LE00E63C8: +/* 3E0CF8 E00E63C8 AE03001C */ sw $v1, 0x1c($s0) +/* 3E0CFC E00E63CC C4400000 */ lwc1 $f0, ($v0) +/* 3E0D00 E00E63D0 32A30001 */ andi $v1, $s5, 1 +/* 3E0D04 E00E63D4 32220001 */ andi $v0, $s1, 1 +/* 3E0D08 E00E63D8 14620009 */ bne $v1, $v0, .LE00E6400 +/* 3E0D0C E00E63DC E6000020 */ swc1 $f0, 0x20($s0) +/* 3E0D10 E00E63E0 C604FFF0 */ lwc1 $f4, -0x10($s0) +/* 3E0D14 E00E63E4 C600FFFC */ lwc1 $f0, -4($s0) +/* 3E0D18 E00E63E8 C602FFF4 */ lwc1 $f2, -0xc($s0) +/* 3E0D1C E00E63EC 46002100 */ add.s $f4, $f4, $f0 +/* 3E0D20 E00E63F0 C6000000 */ lwc1 $f0, ($s0) +/* 3E0D24 E00E63F4 46001080 */ add.s $f2, $f2, $f0 +/* 3E0D28 E00E63F8 08039911 */ j .LE00E6444 +/* 3E0D2C E00E63FC E604FFF0 */ swc1 $f4, -0x10($s0) +.LE00E6400: +/* 3E0D30 E00E6400 C606FFFC */ lwc1 $f6, -4($s0) +/* 3E0D34 E00E6404 460031A1 */ cvt.d.s $f6, $f6 +/* 3E0D38 E00E6408 463A3182 */ mul.d $f6, $f6, $f26 +/* 3E0D3C E00E640C 00000000 */ nop +/* 3E0D40 E00E6410 C6040000 */ lwc1 $f4, ($s0) +/* 3E0D44 E00E6414 46002121 */ cvt.d.s $f4, $f4 +/* 3E0D48 E00E6418 463A2102 */ mul.d $f4, $f4, $f26 +/* 3E0D4C E00E641C 00000000 */ nop +/* 3E0D50 E00E6420 C600FFF0 */ lwc1 $f0, -0x10($s0) +/* 3E0D54 E00E6424 C602FFF4 */ lwc1 $f2, -0xc($s0) +/* 3E0D58 E00E6428 46000021 */ cvt.d.s $f0, $f0 +/* 3E0D5C E00E642C 46260000 */ add.d $f0, $f0, $f6 +/* 3E0D60 E00E6430 460010A1 */ cvt.d.s $f2, $f2 +/* 3E0D64 E00E6434 46241080 */ add.d $f2, $f2, $f4 +/* 3E0D68 E00E6438 46200020 */ cvt.s.d $f0, $f0 +/* 3E0D6C E00E643C 462010A0 */ cvt.s.d $f2, $f2 +/* 3E0D70 E00E6440 E600FFF0 */ swc1 $f0, -0x10($s0) +.LE00E6444: +/* 3E0D74 E00E6444 E602FFF4 */ swc1 $f2, -0xc($s0) +/* 3E0D78 E00E6448 C6040004 */ lwc1 $f4, 4($s0) +/* 3E0D7C E00E644C C606FFFC */ lwc1 $f6, -4($s0) +/* 3E0D80 E00E6450 46062101 */ sub.s $f4, $f4, $f6 +/* 3E0D84 E00E6454 46162102 */ mul.s $f4, $f4, $f22 +/* 3E0D88 E00E6458 00000000 */ nop +/* 3E0D8C E00E645C C6000008 */ lwc1 $f0, 8($s0) +/* 3E0D90 E00E6460 C6020000 */ lwc1 $f2, ($s0) +/* 3E0D94 E00E6464 46020001 */ sub.s $f0, $f0, $f2 +/* 3E0D98 E00E6468 46160002 */ mul.s $f0, $f0, $f22 +/* 3E0D9C E00E646C 00000000 */ nop +/* 3E0DA0 E00E6470 46043180 */ add.s $f6, $f6, $f4 +/* 3E0DA4 E00E6474 46001080 */ add.s $f2, $f2, $f0 +/* 3E0DA8 E00E6478 E606FFFC */ swc1 $f6, -4($s0) +/* 3E0DAC E00E647C E6020000 */ swc1 $f2, ($s0) +/* 3E0DB0 E00E6480 26310001 */ addiu $s1, $s1, 1 +.LE00E6484: +/* 3E0DB4 E00E6484 8E420008 */ lw $v0, 8($s2) +/* 3E0DB8 E00E6488 0222102A */ slt $v0, $s1, $v0 +/* 3E0DBC E00E648C 1440FF8A */ bnez $v0, .LE00E62B8 +/* 3E0DC0 E00E6490 26100038 */ addiu $s0, $s0, 0x38 +.LE00E6494: +/* 3E0DC4 E00E6494 8FBF0030 */ lw $ra, 0x30($sp) +/* 3E0DC8 E00E6498 8FB7002C */ lw $s7, 0x2c($sp) +/* 3E0DCC E00E649C 8FB60028 */ lw $s6, 0x28($sp) +/* 3E0DD0 E00E64A0 8FB50024 */ lw $s5, 0x24($sp) +/* 3E0DD4 E00E64A4 8FB40020 */ lw $s4, 0x20($sp) +/* 3E0DD8 E00E64A8 8FB3001C */ lw $s3, 0x1c($sp) +/* 3E0DDC E00E64AC 8FB20018 */ lw $s2, 0x18($sp) +/* 3E0DE0 E00E64B0 8FB10014 */ lw $s1, 0x14($sp) +/* 3E0DE4 E00E64B4 8FB00010 */ lw $s0, 0x10($sp) +/* 3E0DE8 E00E64B8 D7BC0058 */ ldc1 $f28, 0x58($sp) +/* 3E0DEC E00E64BC D7BA0050 */ ldc1 $f26, 0x50($sp) +/* 3E0DF0 E00E64C0 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3E0DF4 E00E64C4 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3E0DF8 E00E64C8 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3E0DFC E00E64CC 03E00008 */ jr $ra +/* 3E0E00 E00E64D0 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_3E0930/func_E00E64D4.s b/asm/nonmatchings/code_3E0930/func_E00E64D4.s new file mode 100644 index 0000000000..5a4a7b93f8 --- /dev/null +++ b/asm/nonmatchings/code_3E0930/func_E00E64D4.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E64D4 +/* 3E0E04 E00E64D4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3E0E08 E00E64D8 3C02E00E */ lui $v0, %hi(D_E00E6524) +/* 3E0E0C E00E64DC 24426524 */ addiu $v0, $v0, %lo(D_E00E6524) +/* 3E0E10 E00E64E0 AFA2001C */ sw $v0, 0x1c($sp) +/* 3E0E14 E00E64E4 2402000A */ addiu $v0, $zero, 0xa +/* 3E0E18 E00E64E8 AFA20014 */ sw $v0, 0x14($sp) +/* 3E0E1C E00E64EC 24020001 */ addiu $v0, $zero, 1 +/* 3E0E20 E00E64F0 AFA40018 */ sw $a0, 0x18($sp) +/* 3E0E24 E00E64F4 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E0E28 E00E64F8 AFBF0020 */ sw $ra, 0x20($sp) +/* 3E0E2C E00E64FC 0C080120 */ jal func_E0200480 +/* 3E0E30 E00E6500 AFA20010 */ sw $v0, 0x10($sp) +/* 3E0E34 E00E6504 8C430000 */ lw $v1, ($v0) +/* 3E0E38 E00E6508 34630002 */ ori $v1, $v1, 2 +/* 3E0E3C E00E650C AC430000 */ sw $v1, ($v0) +/* 3E0E40 E00E6510 8FBF0020 */ lw $ra, 0x20($sp) +/* 3E0E44 E00E6514 03E00008 */ jr $ra +/* 3E0E48 E00E6518 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3E0930/func_E00E651C.s b/asm/nonmatchings/code_3E0930/func_E00E651C.s new file mode 100644 index 0000000000..3d8f181e70 --- /dev/null +++ b/asm/nonmatchings/code_3E0930/func_E00E651C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E651C +/* 3E0E4C E00E651C 03E00008 */ jr $ra +/* 3E0E50 E00E6520 00000000 */ nop diff --git a/asm/nonmatchings/code_3E0930/func_E00E6524.s b/asm/nonmatchings/code_3E0930/func_E00E6524.s new file mode 100644 index 0000000000..9f325c8713 --- /dev/null +++ b/asm/nonmatchings/code_3E0930/func_E00E6524.s @@ -0,0 +1,222 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E6524 +/* 3E0E54 E00E6524 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 3E0E58 E00E6528 AFBE00C8 */ sw $fp, 0xc8($sp) +/* 3E0E5C E00E652C 0080F02D */ daddu $fp, $a0, $zero +/* 3E0E60 E00E6530 3C06DB06 */ lui $a2, 0xdb06 +/* 3E0E64 E00E6534 34C60024 */ ori $a2, $a2, 0x24 +/* 3E0E68 E00E6538 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E0E6C E00E653C AFB200B0 */ sw $s2, 0xb0($sp) +/* 3E0E70 E00E6540 3C120001 */ lui $s2, 1 +/* 3E0E74 E00E6544 36521630 */ ori $s2, $s2, 0x1630 +/* 3E0E78 E00E6548 AFB600C0 */ sw $s6, 0xc0($sp) +/* 3E0E7C E00E654C 3C16800A */ lui $s6, %hi(D_8009A66C) +/* 3E0E80 E00E6550 26D6A66C */ addiu $s6, $s6, %lo(D_8009A66C) +/* 3E0E84 E00E6554 AFBF00CC */ sw $ra, 0xcc($sp) +/* 3E0E88 E00E6558 AFB700C4 */ sw $s7, 0xc4($sp) +/* 3E0E8C E00E655C AFB500BC */ sw $s5, 0xbc($sp) +/* 3E0E90 E00E6560 AFB400B8 */ sw $s4, 0xb8($sp) +/* 3E0E94 E00E6564 AFB300B4 */ sw $s3, 0xb4($sp) +/* 3E0E98 E00E6568 AFB100AC */ sw $s1, 0xac($sp) +/* 3E0E9C E00E656C AFB000A8 */ sw $s0, 0xa8($sp) +/* 3E0EA0 E00E6570 F7B400D0 */ sdc1 $f20, 0xd0($sp) +/* 3E0EA4 E00E6574 8EC50000 */ lw $a1, ($s6) +/* 3E0EA8 E00E6578 8FD4000C */ lw $s4, 0xc($fp) +/* 3E0EAC E00E657C 00A0182D */ daddu $v1, $a1, $zero +/* 3E0EB0 E00E6580 24A50008 */ addiu $a1, $a1, 8 +/* 3E0EB4 E00E6584 AEC50000 */ sw $a1, ($s6) +/* 3E0EB8 E00E6588 8E880030 */ lw $t0, 0x30($s4) +/* 3E0EBC E00E658C 24150001 */ addiu $s5, $zero, 1 +/* 3E0EC0 E00E6590 AFA800A0 */ sw $t0, 0xa0($sp) +/* 3E0EC4 E00E6594 8E930000 */ lw $s3, ($s4) +/* 3E0EC8 E00E6598 3C02E700 */ lui $v0, 0xe700 +/* 3E0ECC E00E659C AC620000 */ sw $v0, ($v1) +/* 3E0ED0 E00E65A0 AC600004 */ sw $zero, 4($v1) +/* 3E0ED4 E00E65A4 ACA60000 */ sw $a2, ($a1) +/* 3E0ED8 E00E65A8 8FC30010 */ lw $v1, 0x10($fp) +/* 3E0EDC E00E65AC 24A20008 */ addiu $v0, $a1, 8 +/* 3E0EE0 E00E65B0 AEC20000 */ sw $v0, ($s6) +/* 3E0EE4 E00E65B4 8C62001C */ lw $v0, 0x1c($v1) +/* 3E0EE8 E00E65B8 3C038000 */ lui $v1, 0x8000 +/* 3E0EEC E00E65BC 00431021 */ addu $v0, $v0, $v1 +/* 3E0EF0 E00E65C0 3C03800B */ lui $v1, %hi(gCameras) +/* 3E0EF4 E00E65C4 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3E0EF8 E00E65C8 ACA20004 */ sw $v0, 4($a1) +/* 3E0EFC E00E65CC 8E850004 */ lw $a1, 4($s4) +/* 3E0F00 E00E65D0 8E860008 */ lw $a2, 8($s4) +/* 3E0F04 E00E65D4 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3E0F08 E00E65D8 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3E0F0C E00E65DC 8E87000C */ lw $a3, 0xc($s4) +/* 3E0F10 E00E65E0 00028080 */ sll $s0, $v0, 2 +/* 3E0F14 E00E65E4 02028021 */ addu $s0, $s0, $v0 +/* 3E0F18 E00E65E8 00108080 */ sll $s0, $s0, 2 +/* 3E0F1C E00E65EC 02028023 */ subu $s0, $s0, $v0 +/* 3E0F20 E00E65F0 001010C0 */ sll $v0, $s0, 3 +/* 3E0F24 E00E65F4 02028021 */ addu $s0, $s0, $v0 +/* 3E0F28 E00E65F8 001080C0 */ sll $s0, $s0, 3 +/* 3E0F2C E00E65FC 0C080108 */ jal func_E0200420 +/* 3E0F30 E00E6600 02038021 */ addu $s0, $s0, $v1 +/* 3E0F34 E00E6604 27B10060 */ addiu $s1, $sp, 0x60 +/* 3E0F38 E00E6608 0220202D */ daddu $a0, $s1, $zero +/* 3E0F3C E00E660C 8E850034 */ lw $a1, 0x34($s4) +/* 3E0F40 E00E6610 26940038 */ addiu $s4, $s4, 0x38 +/* 3E0F44 E00E6614 00A0302D */ daddu $a2, $a1, $zero +/* 3E0F48 E00E6618 0C080110 */ jal func_E0200440 +/* 3E0F4C E00E661C 00A0382D */ daddu $a3, $a1, $zero +/* 3E0F50 E00E6620 0220202D */ daddu $a0, $s1, $zero +/* 3E0F54 E00E6624 27A50020 */ addiu $a1, $sp, 0x20 +/* 3E0F58 E00E6628 0C080114 */ jal func_E0200450 +/* 3E0F5C E00E662C 00A0302D */ daddu $a2, $a1, $zero +/* 3E0F60 E00E6630 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E0F64 E00E6634 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3E0F68 E00E6638 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3E0F6C E00E663C 3C17800A */ lui $s7, %hi(D_8009A674) +/* 3E0F70 E00E6640 26F7A674 */ addiu $s7, $s7, %lo(D_8009A674) +/* 3E0F74 E00E6644 96250000 */ lhu $a1, ($s1) +/* 3E0F78 E00E6648 8EE20000 */ lw $v0, ($s7) +/* 3E0F7C E00E664C 00052980 */ sll $a1, $a1, 6 +/* 3E0F80 E00E6650 00B22821 */ addu $a1, $a1, $s2 +/* 3E0F84 E00E6654 0C080118 */ jal func_E0200460 +/* 3E0F88 E00E6658 00452821 */ addu $a1, $v0, $a1 +/* 3E0F8C E00E665C 3C03DA38 */ lui $v1, 0xda38 +/* 3E0F90 E00E6660 34630002 */ ori $v1, $v1, 2 +/* 3E0F94 E00E6664 3C06DA38 */ lui $a2, 0xda38 +/* 3E0F98 E00E6668 00D53025 */ or $a2, $a2, $s5 +/* 3E0F9C E00E666C 00139880 */ sll $s3, $s3, 2 +/* 3E0FA0 E00E6670 8EC40000 */ lw $a0, ($s6) +/* 3E0FA4 E00E6674 96220000 */ lhu $v0, ($s1) +/* 3E0FA8 E00E6678 0080282D */ daddu $a1, $a0, $zero +/* 3E0FAC E00E667C 24840008 */ addiu $a0, $a0, 8 +/* 3E0FB0 E00E6680 AEC40000 */ sw $a0, ($s6) +/* 3E0FB4 E00E6684 ACA30000 */ sw $v1, ($a1) +/* 3E0FB8 E00E6688 00551821 */ addu $v1, $v0, $s5 +/* 3E0FBC E00E668C 3042FFFF */ andi $v0, $v0, 0xffff +/* 3E0FC0 E00E6690 00021180 */ sll $v0, $v0, 6 +/* 3E0FC4 E00E6694 A6230000 */ sh $v1, ($s1) +/* 3E0FC8 E00E6698 8EE30000 */ lw $v1, ($s7) +/* 3E0FCC E00E669C 00521021 */ addu $v0, $v0, $s2 +/* 3E0FD0 E00E66A0 00621821 */ addu $v1, $v1, $v0 +/* 3E0FD4 E00E66A4 ACA30004 */ sw $v1, 4($a1) +/* 3E0FD8 E00E66A8 AC860000 */ sw $a2, ($a0) +/* 3E0FDC E00E66AC 8E030204 */ lw $v1, 0x204($s0) +/* 3E0FE0 E00E66B0 3C02DE00 */ lui $v0, 0xde00 +/* 3E0FE4 E00E66B4 AC820008 */ sw $v0, 8($a0) +/* 3E0FE8 E00E66B8 AC830004 */ sw $v1, 4($a0) +/* 3E0FEC E00E66BC 3C03E00E */ lui $v1, %hi(D_E00E6888) +/* 3E0FF0 E00E66C0 00731821 */ addu $v1, $v1, $s3 +/* 3E0FF4 E00E66C4 8C636888 */ lw $v1, %lo(D_E00E6888)($v1) +/* 3E0FF8 E00E66C8 24820008 */ addiu $v0, $a0, 8 +/* 3E0FFC E00E66CC AEC20000 */ sw $v0, ($s6) +/* 3E1000 E00E66D0 AC83000C */ sw $v1, 0xc($a0) +/* 3E1004 E00E66D4 8FC20008 */ lw $v0, 8($fp) +/* 3E1008 E00E66D8 24840010 */ addiu $a0, $a0, 0x10 +/* 3E100C E00E66DC 02A2102A */ slt $v0, $s5, $v0 +/* 3E1010 E00E66E0 1040004C */ beqz $v0, .LE00E6814 +/* 3E1014 E00E66E4 AEC40000 */ sw $a0, ($s6) +/* 3E1018 E00E66E8 4480A000 */ mtc1 $zero, $f20 +/* 3E101C E00E66EC 0220902D */ daddu $s2, $s1, $zero +/* 3E1020 E00E66F0 3C110001 */ lui $s1, 1 +/* 3E1024 E00E66F4 36311630 */ ori $s1, $s1, 0x1630 +/* 3E1028 E00E66F8 02C0802D */ daddu $s0, $s6, $zero +/* 3E102C E00E66FC 3C02E00E */ lui $v0, %hi(D_E00E6880) +/* 3E1030 E00E6700 24426880 */ addiu $v0, $v0, %lo(D_E00E6880) +/* 3E1034 E00E6704 0262B021 */ addu $s6, $s3, $v0 +/* 3E1038 E00E6708 26930030 */ addiu $s3, $s4, 0x30 +.LE00E670C: +/* 3E103C E00E670C 8E62FFF0 */ lw $v0, -0x10($s3) +/* 3E1040 E00E6710 0442003C */ bltzl $v0, .LE00E6804 +/* 3E1044 E00E6714 26B50001 */ addiu $s5, $s5, 1 +/* 3E1048 E00E6718 C6600004 */ lwc1 $f0, 4($s3) +/* 3E104C E00E671C 4405A000 */ mfc1 $a1, $f20 +/* 3E1050 E00E6720 4406A000 */ mfc1 $a2, $f20 +/* 3E1054 E00E6724 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3E1058 E00E6728 C660FFD4 */ lwc1 $f0, -0x2c($s3) +/* 3E105C E00E672C E7A00014 */ swc1 $f0, 0x14($sp) +/* 3E1060 E00E6730 C660FFD8 */ lwc1 $f0, -0x28($s3) +/* 3E1064 E00E6734 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 3E1068 E00E6738 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3E106C E00E673C 8E67FFF4 */ lw $a3, -0xc($s3) +/* 3E1070 E00E6740 0C080180 */ jal func_E0200600 +/* 3E1074 E00E6744 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E1078 E00E6748 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E107C E00E674C 96450000 */ lhu $a1, ($s2) +/* 3E1080 E00E6750 8EE20000 */ lw $v0, ($s7) +/* 3E1084 E00E6754 00052980 */ sll $a1, $a1, 6 +/* 3E1088 E00E6758 00B12821 */ addu $a1, $a1, $s1 +/* 3E108C E00E675C 0C080118 */ jal func_E0200460 +/* 3E1090 E00E6760 00452821 */ addu $a1, $v0, $a1 +/* 3E1094 E00E6764 8E040000 */ lw $a0, ($s0) +/* 3E1098 E00E6768 3C06D838 */ lui $a2, 0xd838 +/* 3E109C E00E676C 0080282D */ daddu $a1, $a0, $zero +/* 3E10A0 E00E6770 24840008 */ addiu $a0, $a0, 8 +/* 3E10A4 E00E6774 AE040000 */ sw $a0, ($s0) +/* 3E10A8 E00E6778 96420000 */ lhu $v0, ($s2) +/* 3E10AC E00E677C 3C03DA38 */ lui $v1, 0xda38 +/* 3E10B0 E00E6780 ACA30000 */ sw $v1, ($a1) +/* 3E10B4 E00E6784 24430001 */ addiu $v1, $v0, 1 +/* 3E10B8 E00E6788 3042FFFF */ andi $v0, $v0, 0xffff +/* 3E10BC E00E678C 00021180 */ sll $v0, $v0, 6 +/* 3E10C0 E00E6790 A6430000 */ sh $v1, ($s2) +/* 3E10C4 E00E6794 8EE30000 */ lw $v1, ($s7) +/* 3E10C8 E00E6798 00511021 */ addu $v0, $v0, $s1 +/* 3E10CC E00E679C 00621821 */ addu $v1, $v1, $v0 +/* 3E10D0 E00E67A0 3C02FA00 */ lui $v0, 0xfa00 +/* 3E10D4 E00E67A4 ACA30004 */ sw $v1, 4($a1) +/* 3E10D8 E00E67A8 AC820000 */ sw $v0, ($a0) +/* 3E10DC E00E67AC 8E630000 */ lw $v1, ($s3) +/* 3E10E0 E00E67B0 24820008 */ addiu $v0, $a0, 8 +/* 3E10E4 E00E67B4 AE020000 */ sw $v0, ($s0) +/* 3E10E8 E00E67B8 8FA800A0 */ lw $t0, 0xa0($sp) +/* 3E10EC E00E67BC 34C60002 */ ori $a2, $a2, 2 +/* 3E10F0 E00E67C0 01030018 */ mult $t0, $v1 +/* 3E10F4 E00E67C4 24820010 */ addiu $v0, $a0, 0x10 +/* 3E10F8 E00E67C8 AE020000 */ sw $v0, ($s0) +/* 3E10FC E00E67CC 3C02DE00 */ lui $v0, 0xde00 +/* 3E1100 E00E67D0 AC820008 */ sw $v0, 8($a0) +/* 3E1104 E00E67D4 00004012 */ mflo $t0 +/* 3E1108 E00E67D8 00081203 */ sra $v0, $t0, 8 +/* 3E110C E00E67DC 304200FF */ andi $v0, $v0, 0xff +/* 3E1110 E00E67E0 AC820004 */ sw $v0, 4($a0) +/* 3E1114 E00E67E4 8EC30000 */ lw $v1, ($s6) +/* 3E1118 E00E67E8 24820018 */ addiu $v0, $a0, 0x18 +/* 3E111C E00E67EC AE020000 */ sw $v0, ($s0) +/* 3E1120 E00E67F0 24020040 */ addiu $v0, $zero, 0x40 +/* 3E1124 E00E67F4 AC860010 */ sw $a2, 0x10($a0) +/* 3E1128 E00E67F8 AC820014 */ sw $v0, 0x14($a0) +/* 3E112C E00E67FC AC83000C */ sw $v1, 0xc($a0) +/* 3E1130 E00E6800 26B50001 */ addiu $s5, $s5, 1 +.LE00E6804: +/* 3E1134 E00E6804 8FC20008 */ lw $v0, 8($fp) +/* 3E1138 E00E6808 02A2102A */ slt $v0, $s5, $v0 +/* 3E113C E00E680C 1440FFBF */ bnez $v0, .LE00E670C +/* 3E1140 E00E6810 26730038 */ addiu $s3, $s3, 0x38 +.LE00E6814: +/* 3E1144 E00E6814 3C05D838 */ lui $a1, 0xd838 +/* 3E1148 E00E6818 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3E114C E00E681C 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3E1150 E00E6820 8C620000 */ lw $v0, ($v1) +/* 3E1154 E00E6824 34A50002 */ ori $a1, $a1, 2 +/* 3E1158 E00E6828 0040202D */ daddu $a0, $v0, $zero +/* 3E115C E00E682C 24420008 */ addiu $v0, $v0, 8 +/* 3E1160 E00E6830 AC620000 */ sw $v0, ($v1) +/* 3E1164 E00E6834 24020040 */ addiu $v0, $zero, 0x40 +/* 3E1168 E00E6838 AC850000 */ sw $a1, ($a0) +/* 3E116C E00E683C AC820004 */ sw $v0, 4($a0) +/* 3E1170 E00E6840 8FBF00CC */ lw $ra, 0xcc($sp) +/* 3E1174 E00E6844 8FBE00C8 */ lw $fp, 0xc8($sp) +/* 3E1178 E00E6848 8FB700C4 */ lw $s7, 0xc4($sp) +/* 3E117C E00E684C 8FB600C0 */ lw $s6, 0xc0($sp) +/* 3E1180 E00E6850 8FB500BC */ lw $s5, 0xbc($sp) +/* 3E1184 E00E6854 8FB400B8 */ lw $s4, 0xb8($sp) +/* 3E1188 E00E6858 8FB300B4 */ lw $s3, 0xb4($sp) +/* 3E118C E00E685C 8FB200B0 */ lw $s2, 0xb0($sp) +/* 3E1190 E00E6860 8FB100AC */ lw $s1, 0xac($sp) +/* 3E1194 E00E6864 8FB000A8 */ lw $s0, 0xa8($sp) +/* 3E1198 E00E6868 D7B400D0 */ ldc1 $f20, 0xd0($sp) +/* 3E119C E00E686C 03E00008 */ jr $ra +/* 3E11A0 E00E6870 27BD00D8 */ addiu $sp, $sp, 0xd8 +/* 3E11A4 E00E6874 00000000 */ nop +/* 3E11A8 E00E6878 00000000 */ nop +/* 3E11AC E00E687C 00000000 */ nop diff --git a/asm/nonmatchings/code_3E1690/func_E00E8000.s b/asm/nonmatchings/code_3E1690/func_E00E8000.s new file mode 100644 index 0000000000..2725b891d6 --- /dev/null +++ b/asm/nonmatchings/code_3E1690/func_E00E8000.s @@ -0,0 +1,168 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E8000 +/* 3E1690 E00E8000 27BDFF98 */ addiu $sp, $sp, -0x68 +/* 3E1694 E00E8004 AFB20030 */ sw $s2, 0x30($sp) +/* 3E1698 E00E8008 0080902D */ daddu $s2, $a0, $zero +/* 3E169C E00E800C F7BE0060 */ sdc1 $f30, 0x60($sp) +/* 3E16A0 E00E8010 4485F000 */ mtc1 $a1, $f30 +/* 3E16A4 E00E8014 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E16A8 E00E8018 F7BC0058 */ sdc1 $f28, 0x58($sp) +/* 3E16AC E00E801C C7BC0084 */ lwc1 $f28, 0x84($sp) +/* 3E16B0 E00E8020 3C02E00F */ lui $v0, %hi(D_E00E825C) +/* 3E16B4 E00E8024 2442825C */ addiu $v0, $v0, %lo(D_E00E825C) +/* 3E16B8 E00E8028 AFA20018 */ sw $v0, 0x18($sp) +/* 3E16BC E00E802C 3C02E00F */ lui $v0, %hi(D_E00E8264) +/* 3E16C0 E00E8030 24428264 */ addiu $v0, $v0, %lo(D_E00E8264) +/* 3E16C4 E00E8034 AFA2001C */ sw $v0, 0x1c($sp) +/* 3E16C8 E00E8038 3C02E00F */ lui $v0, %hi(D_E00E8374) +/* 3E16CC E00E803C 24428374 */ addiu $v0, $v0, %lo(D_E00E8374) +/* 3E16D0 E00E8040 AFA20020 */ sw $v0, 0x20($sp) +/* 3E16D4 E00E8044 24020074 */ addiu $v0, $zero, 0x74 +/* 3E16D8 E00E8048 AFBF0034 */ sw $ra, 0x34($sp) +/* 3E16DC E00E804C AFB1002C */ sw $s1, 0x2c($sp) +/* 3E16E0 E00E8050 AFB00028 */ sw $s0, 0x28($sp) +/* 3E16E4 E00E8054 F7BA0050 */ sdc1 $f26, 0x50($sp) +/* 3E16E8 E00E8058 F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3E16EC E00E805C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3E16F0 E00E8060 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3E16F4 E00E8064 AFA60070 */ sw $a2, 0x70($sp) +/* 3E16F8 E00E8068 AFA70074 */ sw $a3, 0x74($sp) +/* 3E16FC E00E806C AFA00010 */ sw $zero, 0x10($sp) +/* 3E1700 E00E8070 AFA00024 */ sw $zero, 0x24($sp) +/* 3E1704 E00E8074 0C080124 */ jal func_E0200490 +/* 3E1708 E00E8078 AFA20014 */ sw $v0, 0x14($sp) +/* 3E170C E00E807C 24040048 */ addiu $a0, $zero, 0x48 +/* 3E1710 E00E8080 24030001 */ addiu $v1, $zero, 1 +/* 3E1714 E00E8084 0040882D */ daddu $s1, $v0, $zero +/* 3E1718 E00E8088 0C08012C */ jal func_E02004B0 +/* 3E171C E00E808C AE230008 */ sw $v1, 8($s1) +/* 3E1720 E00E8090 0040802D */ daddu $s0, $v0, $zero +/* 3E1724 E00E8094 16000003 */ bnez $s0, .LE00E80A4 +/* 3E1728 E00E8098 AE22000C */ sw $v0, 0xc($s1) +.LE00E809C: +/* 3E172C E00E809C 0803A027 */ j .LE00E809C +/* 3E1730 E00E80A0 00000000 */ nop +.LE00E80A4: +/* 3E1734 E00E80A4 C7A00078 */ lwc1 $f0, 0x78($sp) +/* 3E1738 E00E80A8 461E0601 */ sub.s $f24, $f0, $f30 +/* 3E173C E00E80AC 4618C082 */ mul.s $f2, $f24, $f24 +/* 3E1740 E00E80B0 00000000 */ nop +/* 3E1744 E00E80B4 C7A60070 */ lwc1 $f6, 0x70($sp) +/* 3E1748 E00E80B8 C7A0007C */ lwc1 $f0, 0x7c($sp) +/* 3E174C E00E80BC 46060581 */ sub.s $f22, $f0, $f6 +/* 3E1750 E00E80C0 4616B102 */ mul.s $f4, $f22, $f22 +/* 3E1754 E00E80C4 00000000 */ nop +/* 3E1758 E00E80C8 C7A00080 */ lwc1 $f0, 0x80($sp) +/* 3E175C E00E80CC C7A60074 */ lwc1 $f6, 0x74($sp) +/* 3E1760 E00E80D0 46060501 */ sub.s $f20, $f0, $f6 +/* 3E1764 E00E80D4 4614A002 */ mul.s $f0, $f20, $f20 +/* 3E1768 E00E80D8 00000000 */ nop +/* 3E176C E00E80DC 46041080 */ add.s $f2, $f2, $f4 +/* 3E1770 E00E80E0 4480D000 */ mtc1 $zero, $f26 +/* 3E1774 E00E80E4 46001300 */ add.s $f12, $f2, $f0 +/* 3E1778 E00E80E8 AE120000 */ sw $s2, ($s0) +/* 3E177C E00E80EC 461A6032 */ c.eq.s $f12, $f26 +/* 3E1780 E00E80F0 00000000 */ nop +/* 3E1784 E00E80F4 45010004 */ bc1t .LE00E8108 +/* 3E1788 E00E80F8 AE000020 */ sw $zero, 0x20($s0) +/* 3E178C E00E80FC 0C080154 */ jal func_E0200550 +/* 3E1790 E00E8100 00000000 */ nop +/* 3E1794 E00E8104 46000306 */ mov.s $f12, $f0 +.LE00E8108: +/* 3E1798 E00E8108 461CD03C */ c.lt.s $f26, $f28 +/* 3E179C E00E810C 00000000 */ nop +/* 3E17A0 E00E8110 45000005 */ bc1f .LE00E8128 +/* 3E17A4 E00E8114 0000102D */ daddu $v0, $zero, $zero +/* 3E17A8 E00E8118 461C6003 */ div.s $f0, $f12, $f28 +/* 3E17AC E00E811C 4600018D */ trunc.w.s $f6, $f0 +/* 3E17B0 E00E8120 44023000 */ mfc1 $v0, $f6 +/* 3E17B4 E00E8124 00000000 */ nop +.LE00E8128: +/* 3E17B8 E00E8128 50400011 */ beql $v0, $zero, .LE00E8170 +/* 3E17BC E00E812C AE000010 */ sw $zero, 0x10($s0) +/* 3E17C0 E00E8130 3C013F80 */ lui $at, 0x3f80 +/* 3E17C4 E00E8134 44811000 */ mtc1 $at, $f2 +/* 3E17C8 E00E8138 44820000 */ mtc1 $v0, $f0 +/* 3E17CC E00E813C 00000000 */ nop +/* 3E17D0 E00E8140 46800020 */ cvt.s.w $f0, $f0 +/* 3E17D4 E00E8144 46001303 */ div.s $f12, $f2, $f0 +/* 3E17D8 E00E8148 460CC002 */ mul.s $f0, $f24, $f12 +/* 3E17DC E00E814C 00000000 */ nop +/* 3E17E0 E00E8150 460CB082 */ mul.s $f2, $f22, $f12 +/* 3E17E4 E00E8154 00000000 */ nop +/* 3E17E8 E00E8158 460CA102 */ mul.s $f4, $f20, $f12 +/* 3E17EC E00E815C 00000000 */ nop +/* 3E17F0 E00E8160 E6000010 */ swc1 $f0, 0x10($s0) +/* 3E17F4 E00E8164 E6020014 */ swc1 $f2, 0x14($s0) +/* 3E17F8 E00E8168 0803A05E */ j .LE00E8178 +/* 3E17FC E00E816C E6040018 */ swc1 $f4, 0x18($s0) +.LE00E8170: +/* 3E1800 E00E8170 AE000014 */ sw $zero, 0x14($s0) +/* 3E1804 E00E8174 AE000018 */ sw $zero, 0x18($s0) +.LE00E8178: +/* 3E1808 E00E8178 04420001 */ bltzl $v0, .LE00E8180 +/* 3E180C E00E817C 240203E8 */ addiu $v0, $zero, 0x3e8 +.LE00E8180: +/* 3E1810 E00E8180 AE02001C */ sw $v0, 0x1c($s0) +/* 3E1814 E00E8184 AE000030 */ sw $zero, 0x30($s0) +/* 3E1818 E00E8188 E61E0004 */ swc1 $f30, 4($s0) +/* 3E181C E00E818C C7A60070 */ lwc1 $f6, 0x70($sp) +/* 3E1820 E00E8190 E6060008 */ swc1 $f6, 8($s0) +/* 3E1824 E00E8194 C7A60074 */ lwc1 $f6, 0x74($sp) +/* 3E1828 E00E8198 E606000C */ swc1 $f6, 0xc($s0) +/* 3E182C E00E819C C7A00088 */ lwc1 $f0, 0x88($sp) +/* 3E1830 E00E81A0 24020001 */ addiu $v0, $zero, 1 +/* 3E1834 E00E81A4 12420016 */ beq $s2, $v0, .LE00E8200 +/* 3E1838 E00E81A8 E6000044 */ swc1 $f0, 0x44($s0) +/* 3E183C E00E81AC 2A420002 */ slti $v0, $s2, 2 +/* 3E1840 E00E81B0 10400005 */ beqz $v0, .LE00E81C8 +/* 3E1844 E00E81B4 24020002 */ addiu $v0, $zero, 2 +/* 3E1848 E00E81B8 12400005 */ beqz $s2, .LE00E81D0 +/* 3E184C E00E81BC 240200FF */ addiu $v0, $zero, 0xff +/* 3E1850 E00E81C0 0803A082 */ j .LE00E8208 +/* 3E1854 E00E81C4 240300DC */ addiu $v1, $zero, 0xdc +.LE00E81C8: +/* 3E1858 E00E81C8 1642000E */ bne $s2, $v0, .LE00E8204 +/* 3E185C E00E81CC 240200FF */ addiu $v0, $zero, 0xff +.LE00E81D0: +/* 3E1860 E00E81D0 240300D7 */ addiu $v1, $zero, 0xd7 +/* 3E1864 E00E81D4 240200B9 */ addiu $v0, $zero, 0xb9 +/* 3E1868 E00E81D8 AE02002C */ sw $v0, 0x2c($s0) +/* 3E186C E00E81DC 240200C8 */ addiu $v0, $zero, 0xc8 +/* 3E1870 E00E81E0 AE020038 */ sw $v0, 0x38($s0) +/* 3E1874 E00E81E4 24020064 */ addiu $v0, $zero, 0x64 +/* 3E1878 E00E81E8 AE02003C */ sw $v0, 0x3c($s0) +/* 3E187C E00E81EC 240200FF */ addiu $v0, $zero, 0xff +/* 3E1880 E00E81F0 AE030024 */ sw $v1, 0x24($s0) +/* 3E1884 E00E81F4 AE030028 */ sw $v1, 0x28($s0) +/* 3E1888 E00E81F8 0803A089 */ j .LE00E8224 +/* 3E188C E00E81FC AE030034 */ sw $v1, 0x34($s0) +.LE00E8200: +/* 3E1890 E00E8200 240200FF */ addiu $v0, $zero, 0xff +.LE00E8204: +/* 3E1894 E00E8204 240300DC */ addiu $v1, $zero, 0xdc +.LE00E8208: +/* 3E1898 E00E8208 AE030034 */ sw $v1, 0x34($s0) +/* 3E189C E00E820C 240300F5 */ addiu $v1, $zero, 0xf5 +/* 3E18A0 E00E8210 AE020024 */ sw $v0, 0x24($s0) +/* 3E18A4 E00E8214 AE020028 */ sw $v0, 0x28($s0) +/* 3E18A8 E00E8218 AE02002C */ sw $v0, 0x2c($s0) +/* 3E18AC E00E821C AE030038 */ sw $v1, 0x38($s0) +/* 3E18B0 E00E8220 AE02003C */ sw $v0, 0x3c($s0) +.LE00E8224: +/* 3E18B4 E00E8224 AE020040 */ sw $v0, 0x40($s0) +/* 3E18B8 E00E8228 0220102D */ daddu $v0, $s1, $zero +/* 3E18BC E00E822C 8FBF0034 */ lw $ra, 0x34($sp) +/* 3E18C0 E00E8230 8FB20030 */ lw $s2, 0x30($sp) +/* 3E18C4 E00E8234 8FB1002C */ lw $s1, 0x2c($sp) +/* 3E18C8 E00E8238 8FB00028 */ lw $s0, 0x28($sp) +/* 3E18CC E00E823C D7BE0060 */ ldc1 $f30, 0x60($sp) +/* 3E18D0 E00E8240 D7BC0058 */ ldc1 $f28, 0x58($sp) +/* 3E18D4 E00E8244 D7BA0050 */ ldc1 $f26, 0x50($sp) +/* 3E18D8 E00E8248 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3E18DC E00E824C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3E18E0 E00E8250 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3E18E4 E00E8254 03E00008 */ jr $ra +/* 3E18E8 E00E8258 27BD0068 */ addiu $sp, $sp, 0x68 diff --git a/asm/nonmatchings/code_3E1690/func_E00E825C.s b/asm/nonmatchings/code_3E1690/func_E00E825C.s new file mode 100644 index 0000000000..67f2b765a5 --- /dev/null +++ b/asm/nonmatchings/code_3E1690/func_E00E825C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E825C +/* 3E18EC E00E825C 03E00008 */ jr $ra +/* 3E18F0 E00E8260 00000000 */ nop diff --git a/asm/nonmatchings/code_3E1690/func_E00E8264.s b/asm/nonmatchings/code_3E1690/func_E00E8264.s new file mode 100644 index 0000000000..6f1ec6d512 --- /dev/null +++ b/asm/nonmatchings/code_3E1690/func_E00E8264.s @@ -0,0 +1,83 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E8264 +/* 3E18F4 E00E8264 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3E18F8 E00E8268 AFBF0010 */ sw $ra, 0x10($sp) +/* 3E18FC E00E826C 8C850000 */ lw $a1, ($a0) +/* 3E1900 E00E8270 8C83000C */ lw $v1, 0xc($a0) +/* 3E1904 E00E8274 30A20010 */ andi $v0, $a1, 0x10 +/* 3E1908 E00E8278 8C670000 */ lw $a3, ($v1) +/* 3E190C E00E827C 10400005 */ beqz $v0, .LE00E8294 +/* 3E1910 E00E8280 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3E1914 E00E8284 00A21024 */ and $v0, $a1, $v0 +/* 3E1918 E00E8288 AC820000 */ sw $v0, ($a0) +/* 3E191C E00E828C 24020010 */ addiu $v0, $zero, 0x10 +/* 3E1920 E00E8290 AC62001C */ sw $v0, 0x1c($v1) +.LE00E8294: +/* 3E1924 E00E8294 8C65001C */ lw $a1, 0x1c($v1) +/* 3E1928 E00E8298 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3E192C E00E829C 10400002 */ beqz $v0, .LE00E82A8 +/* 3E1930 E00E82A0 24A2FFFF */ addiu $v0, $a1, -1 +/* 3E1934 E00E82A4 AC62001C */ sw $v0, 0x1c($v1) +.LE00E82A8: +/* 3E1938 E00E82A8 8C620020 */ lw $v0, 0x20($v1) +/* 3E193C E00E82AC 8C66001C */ lw $a2, 0x1c($v1) +/* 3E1940 E00E82B0 24450001 */ addiu $a1, $v0, 1 +/* 3E1944 E00E82B4 04C10005 */ bgez $a2, .LE00E82CC +/* 3E1948 E00E82B8 AC650020 */ sw $a1, 0x20($v1) +/* 3E194C E00E82BC 0C080128 */ jal func_E02004A0 +/* 3E1950 E00E82C0 00000000 */ nop +/* 3E1954 E00E82C4 0803A0DA */ j .LE00E8368 +/* 3E1958 E00E82C8 00000000 */ nop +.LE00E82CC: +/* 3E195C E00E82CC 10E00004 */ beqz $a3, .LE00E82E0 +/* 3E1960 E00E82D0 00C0202D */ daddu $a0, $a2, $zero +/* 3E1964 E00E82D4 24020002 */ addiu $v0, $zero, 2 +/* 3E1968 E00E82D8 14E2000D */ bne $a3, $v0, .LE00E8310 +/* 3E196C E00E82DC 28A20004 */ slti $v0, $a1, 4 +.LE00E82E0: +/* 3E1970 E00E82E0 28A20010 */ slti $v0, $a1, 0x10 +/* 3E1974 E00E82E4 10400003 */ beqz $v0, .LE00E82F4 +/* 3E1978 E00E82E8 00051100 */ sll $v0, $a1, 4 +/* 3E197C E00E82EC 0803A0BE */ j .LE00E82F8 +/* 3E1980 E00E82F0 2442000F */ addiu $v0, $v0, 0xf +.LE00E82F4: +/* 3E1984 E00E82F4 240200FF */ addiu $v0, $zero, 0xff +.LE00E82F8: +/* 3E1988 E00E82F8 AC620030 */ sw $v0, 0x30($v1) +/* 3E198C E00E82FC 28820010 */ slti $v0, $a0, 0x10 +/* 3E1990 E00E8300 1040000D */ beqz $v0, .LE00E8338 +/* 3E1994 E00E8304 00041100 */ sll $v0, $a0, 4 +/* 3E1998 E00E8308 0803A0CE */ j .LE00E8338 +/* 3E199C E00E830C AC620030 */ sw $v0, 0x30($v1) +.LE00E8310: +/* 3E19A0 E00E8310 10400003 */ beqz $v0, .LE00E8320 +/* 3E19A4 E00E8314 00051180 */ sll $v0, $a1, 6 +/* 3E19A8 E00E8318 0803A0C9 */ j .LE00E8324 +/* 3E19AC E00E831C 2442003F */ addiu $v0, $v0, 0x3f +.LE00E8320: +/* 3E19B0 E00E8320 240200FF */ addiu $v0, $zero, 0xff +.LE00E8324: +/* 3E19B4 E00E8324 AC620030 */ sw $v0, 0x30($v1) +/* 3E19B8 E00E8328 28820004 */ slti $v0, $a0, 4 +/* 3E19BC E00E832C 10400002 */ beqz $v0, .LE00E8338 +/* 3E19C0 E00E8330 00041180 */ sll $v0, $a0, 6 +/* 3E19C4 E00E8334 AC620030 */ sw $v0, 0x30($v1) +.LE00E8338: +/* 3E19C8 E00E8338 C4660004 */ lwc1 $f6, 4($v1) +/* 3E19CC E00E833C C4600010 */ lwc1 $f0, 0x10($v1) +/* 3E19D0 E00E8340 C4640008 */ lwc1 $f4, 8($v1) +/* 3E19D4 E00E8344 46003180 */ add.s $f6, $f6, $f0 +/* 3E19D8 E00E8348 C4600014 */ lwc1 $f0, 0x14($v1) +/* 3E19DC E00E834C C462000C */ lwc1 $f2, 0xc($v1) +/* 3E19E0 E00E8350 46002100 */ add.s $f4, $f4, $f0 +/* 3E19E4 E00E8354 C4600018 */ lwc1 $f0, 0x18($v1) +/* 3E19E8 E00E8358 46001080 */ add.s $f2, $f2, $f0 +/* 3E19EC E00E835C E4660004 */ swc1 $f6, 4($v1) +/* 3E19F0 E00E8360 E4640008 */ swc1 $f4, 8($v1) +/* 3E19F4 E00E8364 E462000C */ swc1 $f2, 0xc($v1) +.LE00E8368: +/* 3E19F8 E00E8368 8FBF0010 */ lw $ra, 0x10($sp) +/* 3E19FC E00E836C 03E00008 */ jr $ra +/* 3E1A00 E00E8370 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3E1690/func_E00E8374.s b/asm/nonmatchings/code_3E1690/func_E00E8374.s new file mode 100644 index 0000000000..5b8a15a129 --- /dev/null +++ b/asm/nonmatchings/code_3E1690/func_E00E8374.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E8374 +/* 3E1A04 E00E8374 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3E1A08 E00E8378 3C02E00F */ lui $v0, %hi(D_E00E83BC) +/* 3E1A0C E00E837C 244283BC */ addiu $v0, $v0, %lo(D_E00E83BC) +/* 3E1A10 E00E8380 AFA2001C */ sw $v0, 0x1c($sp) +/* 3E1A14 E00E8384 2402000A */ addiu $v0, $zero, 0xa +/* 3E1A18 E00E8388 AFA20014 */ sw $v0, 0x14($sp) +/* 3E1A1C E00E838C 2402002D */ addiu $v0, $zero, 0x2d +/* 3E1A20 E00E8390 AFA40018 */ sw $a0, 0x18($sp) +/* 3E1A24 E00E8394 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E1A28 E00E8398 AFBF0020 */ sw $ra, 0x20($sp) +/* 3E1A2C E00E839C 0C080120 */ jal func_E0200480 +/* 3E1A30 E00E83A0 AFA20010 */ sw $v0, 0x10($sp) +/* 3E1A34 E00E83A4 8C430000 */ lw $v1, ($v0) +/* 3E1A38 E00E83A8 34630002 */ ori $v1, $v1, 2 +/* 3E1A3C E00E83AC AC430000 */ sw $v1, ($v0) +/* 3E1A40 E00E83B0 8FBF0020 */ lw $ra, 0x20($sp) +/* 3E1A44 E00E83B4 03E00008 */ jr $ra +/* 3E1A48 E00E83B8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3E1690/func_E00E83BC.s b/asm/nonmatchings/code_3E1690/func_E00E83BC.s new file mode 100644 index 0000000000..2119504687 --- /dev/null +++ b/asm/nonmatchings/code_3E1690/func_E00E83BC.s @@ -0,0 +1,161 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00E83BC +/* 3E1A4C E00E83BC 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 3E1A50 E00E83C0 0080302D */ daddu $a2, $a0, $zero +/* 3E1A54 E00E83C4 3C07DB06 */ lui $a3, 0xdb06 +/* 3E1A58 E00E83C8 34E70024 */ ori $a3, $a3, 0x24 +/* 3E1A5C E00E83CC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E1A60 E00E83D0 AFB600A8 */ sw $s6, 0xa8($sp) +/* 3E1A64 E00E83D4 3C160001 */ lui $s6, 1 +/* 3E1A68 E00E83D8 AFB3009C */ sw $s3, 0x9c($sp) +/* 3E1A6C E00E83DC 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 3E1A70 E00E83E0 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 3E1A74 E00E83E4 36D61630 */ ori $s6, $s6, 0x1630 +/* 3E1A78 E00E83E8 AFBF00AC */ sw $ra, 0xac($sp) +/* 3E1A7C E00E83EC AFB500A4 */ sw $s5, 0xa4($sp) +/* 3E1A80 E00E83F0 AFB400A0 */ sw $s4, 0xa0($sp) +/* 3E1A84 E00E83F4 AFB20098 */ sw $s2, 0x98($sp) +/* 3E1A88 E00E83F8 AFB10094 */ sw $s1, 0x94($sp) +/* 3E1A8C E00E83FC AFB00090 */ sw $s0, 0x90($sp) +/* 3E1A90 E00E8400 8E650000 */ lw $a1, ($s3) +/* 3E1A94 E00E8404 8CD2000C */ lw $s2, 0xc($a2) +/* 3E1A98 E00E8408 00A0182D */ daddu $v1, $a1, $zero +/* 3E1A9C E00E840C 24A50008 */ addiu $a1, $a1, 8 +/* 3E1AA0 E00E8410 AE650000 */ sw $a1, ($s3) +/* 3E1AA4 E00E8414 8E550030 */ lw $s5, 0x30($s2) +/* 3E1AA8 E00E8418 3C02E700 */ lui $v0, 0xe700 +/* 3E1AAC E00E841C AC620000 */ sw $v0, ($v1) +/* 3E1AB0 E00E8420 AC600004 */ sw $zero, 4($v1) +/* 3E1AB4 E00E8424 ACA70000 */ sw $a3, ($a1) +/* 3E1AB8 E00E8428 8CC30010 */ lw $v1, 0x10($a2) +/* 3E1ABC E00E842C 24A20008 */ addiu $v0, $a1, 8 +/* 3E1AC0 E00E8430 AE620000 */ sw $v0, ($s3) +/* 3E1AC4 E00E8434 8C62001C */ lw $v0, 0x1c($v1) +/* 3E1AC8 E00E8438 3C038000 */ lui $v1, 0x8000 +/* 3E1ACC E00E843C 00431021 */ addu $v0, $v0, $v1 +/* 3E1AD0 E00E8440 3C03800B */ lui $v1, %hi(gCameras) +/* 3E1AD4 E00E8444 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 3E1AD8 E00E8448 ACA20004 */ sw $v0, 4($a1) +/* 3E1ADC E00E844C 8E450004 */ lw $a1, 4($s2) +/* 3E1AE0 E00E8450 8E460008 */ lw $a2, 8($s2) +/* 3E1AE4 E00E8454 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3E1AE8 E00E8458 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3E1AEC E00E845C 8E47000C */ lw $a3, 0xc($s2) +/* 3E1AF0 E00E8460 00028080 */ sll $s0, $v0, 2 +/* 3E1AF4 E00E8464 02028021 */ addu $s0, $s0, $v0 +/* 3E1AF8 E00E8468 00108080 */ sll $s0, $s0, 2 +/* 3E1AFC E00E846C 02028023 */ subu $s0, $s0, $v0 +/* 3E1B00 E00E8470 001010C0 */ sll $v0, $s0, 3 +/* 3E1B04 E00E8474 02028021 */ addu $s0, $s0, $v0 +/* 3E1B08 E00E8478 001080C0 */ sll $s0, $s0, 3 +/* 3E1B0C E00E847C 0C080108 */ jal func_E0200420 +/* 3E1B10 E00E8480 02038021 */ addu $s0, $s0, $v1 +/* 3E1B14 E00E8484 27B10050 */ addiu $s1, $sp, 0x50 +/* 3E1B18 E00E8488 8E450044 */ lw $a1, 0x44($s2) +/* 3E1B1C E00E848C 0220202D */ daddu $a0, $s1, $zero +/* 3E1B20 E00E8490 00A0302D */ daddu $a2, $a1, $zero +/* 3E1B24 E00E8494 0C080110 */ jal func_E0200440 +/* 3E1B28 E00E8498 00A0382D */ daddu $a3, $a1, $zero +/* 3E1B2C E00E849C 0220202D */ daddu $a0, $s1, $zero +/* 3E1B30 E00E84A0 27A50010 */ addiu $a1, $sp, 0x10 +/* 3E1B34 E00E84A4 0C080114 */ jal func_E0200450 +/* 3E1B38 E00E84A8 00A0302D */ daddu $a2, $a1, $zero +/* 3E1B3C E00E84AC 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E1B40 E00E84B0 3C118007 */ lui $s1, %hi(D_800741F0) +/* 3E1B44 E00E84B4 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 3E1B48 E00E84B8 3C14800A */ lui $s4, %hi(D_8009A674) +/* 3E1B4C E00E84BC 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 3E1B50 E00E84C0 96250000 */ lhu $a1, ($s1) +/* 3E1B54 E00E84C4 8E820000 */ lw $v0, ($s4) +/* 3E1B58 E00E84C8 00052980 */ sll $a1, $a1, 6 +/* 3E1B5C E00E84CC 00B62821 */ addu $a1, $a1, $s6 +/* 3E1B60 E00E84D0 0C080118 */ jal func_E0200460 +/* 3E1B64 E00E84D4 00452821 */ addu $a1, $v0, $a1 +/* 3E1B68 E00E84D8 3C03DA38 */ lui $v1, 0xda38 +/* 3E1B6C E00E84DC 34630002 */ ori $v1, $v1, 2 +/* 3E1B70 E00E84E0 3C06DA38 */ lui $a2, 0xda38 +/* 3E1B74 E00E84E4 34C60001 */ ori $a2, $a2, 1 +/* 3E1B78 E00E84E8 3C09D838 */ lui $t1, 0xd838 +/* 3E1B7C E00E84EC 35290002 */ ori $t1, $t1, 2 +/* 3E1B80 E00E84F0 32B500FF */ andi $s5, $s5, 0xff +/* 3E1B84 E00E84F4 3C07DE00 */ lui $a3, 0xde00 +/* 3E1B88 E00E84F8 8E640000 */ lw $a0, ($s3) +/* 3E1B8C E00E84FC 96220000 */ lhu $v0, ($s1) +/* 3E1B90 E00E8500 0080282D */ daddu $a1, $a0, $zero +/* 3E1B94 E00E8504 24840008 */ addiu $a0, $a0, 8 +/* 3E1B98 E00E8508 AE640000 */ sw $a0, ($s3) +/* 3E1B9C E00E850C ACA30000 */ sw $v1, ($a1) +/* 3E1BA0 E00E8510 24430001 */ addiu $v1, $v0, 1 +/* 3E1BA4 E00E8514 3042FFFF */ andi $v0, $v0, 0xffff +/* 3E1BA8 E00E8518 00021180 */ sll $v0, $v0, 6 +/* 3E1BAC E00E851C A6230000 */ sh $v1, ($s1) +/* 3E1BB0 E00E8520 8E830000 */ lw $v1, ($s4) +/* 3E1BB4 E00E8524 00561021 */ addu $v0, $v0, $s6 +/* 3E1BB8 E00E8528 00621821 */ addu $v1, $v1, $v0 +/* 3E1BBC E00E852C 24820008 */ addiu $v0, $a0, 8 +/* 3E1BC0 E00E8530 ACA30004 */ sw $v1, 4($a1) +/* 3E1BC4 E00E8534 AE620000 */ sw $v0, ($s3) +/* 3E1BC8 E00E8538 24820010 */ addiu $v0, $a0, 0x10 +/* 3E1BCC E00E853C AC860000 */ sw $a2, ($a0) +/* 3E1BD0 E00E8540 AE620000 */ sw $v0, ($s3) +/* 3E1BD4 E00E8544 8E030204 */ lw $v1, 0x204($s0) +/* 3E1BD8 E00E8548 3C02FA00 */ lui $v0, 0xfa00 +/* 3E1BDC E00E854C AC820008 */ sw $v0, 8($a0) +/* 3E1BE0 E00E8550 AC830004 */ sw $v1, 4($a0) +/* 3E1BE4 E00E8554 92420027 */ lbu $v0, 0x27($s2) +/* 3E1BE8 E00E8558 9245002B */ lbu $a1, 0x2b($s2) +/* 3E1BEC E00E855C 9246002F */ lbu $a2, 0x2f($s2) +/* 3E1BF0 E00E8560 24830018 */ addiu $v1, $a0, 0x18 +/* 3E1BF4 E00E8564 AE630000 */ sw $v1, ($s3) +/* 3E1BF8 E00E8568 3C03FB00 */ lui $v1, 0xfb00 +/* 3E1BFC E00E856C AC830010 */ sw $v1, 0x10($a0) +/* 3E1C00 E00E8570 00021600 */ sll $v0, $v0, 0x18 +/* 3E1C04 E00E8574 00052C00 */ sll $a1, $a1, 0x10 +/* 3E1C08 E00E8578 00451025 */ or $v0, $v0, $a1 +/* 3E1C0C E00E857C 00063200 */ sll $a2, $a2, 8 +/* 3E1C10 E00E8580 00461025 */ or $v0, $v0, $a2 +/* 3E1C14 E00E8584 00551025 */ or $v0, $v0, $s5 +/* 3E1C18 E00E8588 AC82000C */ sw $v0, 0xc($a0) +/* 3E1C1C E00E858C 92420037 */ lbu $v0, 0x37($s2) +/* 3E1C20 E00E8590 9245003B */ lbu $a1, 0x3b($s2) +/* 3E1C24 E00E8594 9246003F */ lbu $a2, 0x3f($s2) +/* 3E1C28 E00E8598 92480043 */ lbu $t0, 0x43($s2) +/* 3E1C2C E00E859C 24830020 */ addiu $v1, $a0, 0x20 +/* 3E1C30 E00E85A0 AE630000 */ sw $v1, ($s3) +/* 3E1C34 E00E85A4 AC870018 */ sw $a3, 0x18($a0) +/* 3E1C38 E00E85A8 00021600 */ sll $v0, $v0, 0x18 +/* 3E1C3C E00E85AC 00052C00 */ sll $a1, $a1, 0x10 +/* 3E1C40 E00E85B0 00451025 */ or $v0, $v0, $a1 +/* 3E1C44 E00E85B4 00063200 */ sll $a2, $a2, 8 +/* 3E1C48 E00E85B8 00461025 */ or $v0, $v0, $a2 +/* 3E1C4C E00E85BC 00481025 */ or $v0, $v0, $t0 +/* 3E1C50 E00E85C0 AC820014 */ sw $v0, 0x14($a0) +/* 3E1C54 E00E85C4 3C03E00F */ lui $v1, %hi(D_E00E8634) +/* 3E1C58 E00E85C8 8C638634 */ lw $v1, %lo(D_E00E8634)($v1) +/* 3E1C5C E00E85CC 24820028 */ addiu $v0, $a0, 0x28 +/* 3E1C60 E00E85D0 AE620000 */ sw $v0, ($s3) +/* 3E1C64 E00E85D4 AC870020 */ sw $a3, 0x20($a0) +/* 3E1C68 E00E85D8 AC83001C */ sw $v1, 0x1c($a0) +/* 3E1C6C E00E85DC 3C03E00F */ lui $v1, %hi(D_E00E8630) +/* 3E1C70 E00E85E0 8C638630 */ lw $v1, %lo(D_E00E8630)($v1) +/* 3E1C74 E00E85E4 24820030 */ addiu $v0, $a0, 0x30 +/* 3E1C78 E00E85E8 AE620000 */ sw $v0, ($s3) +/* 3E1C7C E00E85EC 24020040 */ addiu $v0, $zero, 0x40 +/* 3E1C80 E00E85F0 AC830024 */ sw $v1, 0x24($a0) +/* 3E1C84 E00E85F4 AC890028 */ sw $t1, 0x28($a0) +/* 3E1C88 E00E85F8 AC82002C */ sw $v0, 0x2c($a0) +/* 3E1C8C E00E85FC 8FBF00AC */ lw $ra, 0xac($sp) +/* 3E1C90 E00E8600 8FB600A8 */ lw $s6, 0xa8($sp) +/* 3E1C94 E00E8604 8FB500A4 */ lw $s5, 0xa4($sp) +/* 3E1C98 E00E8608 8FB400A0 */ lw $s4, 0xa0($sp) +/* 3E1C9C E00E860C 8FB3009C */ lw $s3, 0x9c($sp) +/* 3E1CA0 E00E8610 8FB20098 */ lw $s2, 0x98($sp) +/* 3E1CA4 E00E8614 8FB10094 */ lw $s1, 0x94($sp) +/* 3E1CA8 E00E8618 8FB00090 */ lw $s0, 0x90($sp) +/* 3E1CAC E00E861C 03E00008 */ jr $ra +/* 3E1CB0 E00E8620 27BD00B0 */ addiu $sp, $sp, 0xb0 +/* 3E1CB4 E00E8624 00000000 */ nop +/* 3E1CB8 E00E8628 00000000 */ nop +/* 3E1CBC E00E862C 00000000 */ nop diff --git a/asm/nonmatchings/code_3E1EE0/func_E00EA000.s b/asm/nonmatchings/code_3E1EE0/func_E00EA000.s new file mode 100644 index 0000000000..6a95bd7b60 --- /dev/null +++ b/asm/nonmatchings/code_3E1EE0/func_E00EA000.s @@ -0,0 +1,108 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00EA000 +/* 3E1EE0 E00EA000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3E1EE4 E00EA004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3E1EE8 E00EA008 4485A000 */ mtc1 $a1, $f20 +/* 3E1EEC E00EA00C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3E1EF0 E00EA010 4486B000 */ mtc1 $a2, $f22 +/* 3E1EF4 E00EA014 AFB20030 */ sw $s2, 0x30($sp) +/* 3E1EF8 E00EA018 0080902D */ daddu $s2, $a0, $zero +/* 3E1EFC E00EA01C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3E1F00 E00EA020 4487C000 */ mtc1 $a3, $f24 +/* 3E1F04 E00EA024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E1F08 E00EA028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3E1F0C E00EA02C 8FB10064 */ lw $s1, 0x64($sp) +/* 3E1F10 E00EA030 3C02E00F */ lui $v0, %hi(D_E00EA190) +/* 3E1F14 E00EA034 2442A190 */ addiu $v0, $v0, %lo(D_E00EA190) +/* 3E1F18 E00EA038 AFA20018 */ sw $v0, 0x18($sp) +/* 3E1F1C E00EA03C 3C02E00F */ lui $v0, %hi(D_E00EA198) +/* 3E1F20 E00EA040 2442A198 */ addiu $v0, $v0, %lo(D_E00EA198) +/* 3E1F24 E00EA044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3E1F28 E00EA048 3C02E00F */ lui $v0, %hi(D_E00EA520) +/* 3E1F2C E00EA04C 2442A520 */ addiu $v0, $v0, %lo(D_E00EA520) +/* 3E1F30 E00EA050 AFA20020 */ sw $v0, 0x20($sp) +/* 3E1F34 E00EA054 24020075 */ addiu $v0, $zero, 0x75 +/* 3E1F38 E00EA058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3E1F3C E00EA05C AFB00028 */ sw $s0, 0x28($sp) +/* 3E1F40 E00EA060 AFA00010 */ sw $zero, 0x10($sp) +/* 3E1F44 E00EA064 AFA00024 */ sw $zero, 0x24($sp) +/* 3E1F48 E00EA068 0C080124 */ jal func_E0200490 +/* 3E1F4C E00EA06C AFA20014 */ sw $v0, 0x14($sp) +/* 3E1F50 E00EA070 24040080 */ addiu $a0, $zero, 0x80 +/* 3E1F54 E00EA074 24030001 */ addiu $v1, $zero, 1 +/* 3E1F58 E00EA078 0040802D */ daddu $s0, $v0, $zero +/* 3E1F5C E00EA07C 0C08012C */ jal func_E02004B0 +/* 3E1F60 E00EA080 AE030008 */ sw $v1, 8($s0) +/* 3E1F64 E00EA084 0040202D */ daddu $a0, $v0, $zero +/* 3E1F68 E00EA088 14800003 */ bnez $a0, .LE00EA098 +/* 3E1F6C E00EA08C AE02000C */ sw $v0, 0xc($s0) +.LE00EA090: +/* 3E1F70 E00EA090 0803A824 */ j .LE00EA090 +/* 3E1F74 E00EA094 00000000 */ nop +.LE00EA098: +/* 3E1F78 E00EA098 AC920000 */ sw $s2, ($a0) +/* 3E1F7C E00EA09C 1E200004 */ bgtz $s1, .LE00EA0B0 +/* 3E1F80 E00EA0A0 AC800014 */ sw $zero, 0x14($a0) +/* 3E1F84 E00EA0A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3E1F88 E00EA0A8 0803A82D */ j .LE00EA0B4 +/* 3E1F8C E00EA0AC AC820010 */ sw $v0, 0x10($a0) +.LE00EA0B0: +/* 3E1F90 E00EA0B0 AC910010 */ sw $s1, 0x10($a0) +.LE00EA0B4: +/* 3E1F94 E00EA0B4 0200102D */ daddu $v0, $s0, $zero +/* 3E1F98 E00EA0B8 AC800024 */ sw $zero, 0x24($a0) +/* 3E1F9C E00EA0BC E4940004 */ swc1 $f20, 4($a0) +/* 3E1FA0 E00EA0C0 E4960008 */ swc1 $f22, 8($a0) +/* 3E1FA4 E00EA0C4 E498000C */ swc1 $f24, 0xc($a0) +/* 3E1FA8 E00EA0C8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3E1FAC E00EA0CC 3C013F66 */ lui $at, 0x3f66 +/* 3E1FB0 E00EA0D0 34216666 */ ori $at, $at, 0x6666 +/* 3E1FB4 E00EA0D4 44811000 */ mtc1 $at, $f2 +/* 3E1FB8 E00EA0D8 3C01C000 */ lui $at, 0xc000 +/* 3E1FBC E00EA0DC 44812000 */ mtc1 $at, $f4 +/* 3E1FC0 E00EA0E0 3C013FA0 */ lui $at, 0x3fa0 +/* 3E1FC4 E00EA0E4 44813000 */ mtc1 $at, $f6 +/* 3E1FC8 E00EA0E8 3C01433E */ lui $at, 0x433e +/* 3E1FCC E00EA0EC 44814000 */ mtc1 $at, $f8 +/* 3E1FD0 E00EA0F0 3C01435C */ lui $at, 0x435c +/* 3E1FD4 E00EA0F4 44815000 */ mtc1 $at, $f10 +/* 3E1FD8 E00EA0F8 240300B4 */ addiu $v1, $zero, 0xb4 +/* 3E1FDC E00EA0FC AC83001C */ sw $v1, 0x1c($a0) +/* 3E1FE0 E00EA100 E480003C */ swc1 $f0, 0x3c($a0) +/* 3E1FE4 E00EA104 3C013F80 */ lui $at, 0x3f80 +/* 3E1FE8 E00EA108 44810000 */ mtc1 $at, $f0 +/* 3E1FEC E00EA10C 240300DC */ addiu $v1, $zero, 0xdc +/* 3E1FF0 E00EA110 AC800018 */ sw $zero, 0x18($a0) +/* 3E1FF4 E00EA114 AC830020 */ sw $v1, 0x20($a0) +/* 3E1FF8 E00EA118 AC800028 */ sw $zero, 0x28($a0) +/* 3E1FFC E00EA11C AC80002C */ sw $zero, 0x2c($a0) +/* 3E2000 E00EA120 AC800030 */ sw $zero, 0x30($a0) +/* 3E2004 E00EA124 AC800034 */ sw $zero, 0x34($a0) +/* 3E2008 E00EA128 AC800038 */ sw $zero, 0x38($a0) +/* 3E200C E00EA12C AC800040 */ sw $zero, 0x40($a0) +/* 3E2010 E00EA130 AC800044 */ sw $zero, 0x44($a0) +/* 3E2014 E00EA134 AC800050 */ sw $zero, 0x50($a0) +/* 3E2018 E00EA138 AC800054 */ sw $zero, 0x54($a0) +/* 3E201C E00EA13C E482004C */ swc1 $f2, 0x4c($a0) +/* 3E2020 E00EA140 E482006C */ swc1 $f2, 0x6c($a0) +/* 3E2024 E00EA144 E4840058 */ swc1 $f4, 0x58($a0) +/* 3E2028 E00EA148 E4840070 */ swc1 $f4, 0x70($a0) +/* 3E202C E00EA14C E486005C */ swc1 $f6, 0x5c($a0) +/* 3E2030 E00EA150 E4860074 */ swc1 $f6, 0x74($a0) +/* 3E2034 E00EA154 E4880060 */ swc1 $f8, 0x60($a0) +/* 3E2038 E00EA158 E4880078 */ swc1 $f8, 0x78($a0) +/* 3E203C E00EA15C E48A0064 */ swc1 $f10, 0x64($a0) +/* 3E2040 E00EA160 E48A007C */ swc1 $f10, 0x7c($a0) +/* 3E2044 E00EA164 E4800048 */ swc1 $f0, 0x48($a0) +/* 3E2048 E00EA168 E4800068 */ swc1 $f0, 0x68($a0) +/* 3E204C E00EA16C 8FBF0034 */ lw $ra, 0x34($sp) +/* 3E2050 E00EA170 8FB20030 */ lw $s2, 0x30($sp) +/* 3E2054 E00EA174 8FB1002C */ lw $s1, 0x2c($sp) +/* 3E2058 E00EA178 8FB00028 */ lw $s0, 0x28($sp) +/* 3E205C E00EA17C D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3E2060 E00EA180 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3E2064 E00EA184 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3E2068 E00EA188 03E00008 */ jr $ra +/* 3E206C E00EA18C 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3E1EE0/func_E00EA190.s b/asm/nonmatchings/code_3E1EE0/func_E00EA190.s new file mode 100644 index 0000000000..183cba5e96 --- /dev/null +++ b/asm/nonmatchings/code_3E1EE0/func_E00EA190.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00EA190 +/* 3E2070 E00EA190 03E00008 */ jr $ra +/* 3E2074 E00EA194 00000000 */ nop diff --git a/asm/nonmatchings/code_3E1EE0/func_E00EA198.s b/asm/nonmatchings/code_3E1EE0/func_E00EA198.s new file mode 100644 index 0000000000..b10e77ae81 --- /dev/null +++ b/asm/nonmatchings/code_3E1EE0/func_E00EA198.s @@ -0,0 +1,245 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00EA198 +/* 3E2078 E00EA198 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 3E207C E00EA19C AFBF0014 */ sw $ra, 0x14($sp) +/* 3E2080 E00EA1A0 AFB00010 */ sw $s0, 0x10($sp) +/* 3E2084 E00EA1A4 F7BA0030 */ sdc1 $f26, 0x30($sp) +/* 3E2088 E00EA1A8 F7B80028 */ sdc1 $f24, 0x28($sp) +/* 3E208C E00EA1AC F7B60020 */ sdc1 $f22, 0x20($sp) +/* 3E2090 E00EA1B0 F7B40018 */ sdc1 $f20, 0x18($sp) +/* 3E2094 E00EA1B4 8C830000 */ lw $v1, ($a0) +/* 3E2098 E00EA1B8 8C90000C */ lw $s0, 0xc($a0) +/* 3E209C E00EA1BC 30620010 */ andi $v0, $v1, 0x10 +/* 3E20A0 E00EA1C0 10400005 */ beqz $v0, .LE00EA1D8 +/* 3E20A4 E00EA1C4 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3E20A8 E00EA1C8 00621024 */ and $v0, $v1, $v0 +/* 3E20AC E00EA1CC AC820000 */ sw $v0, ($a0) +/* 3E20B0 E00EA1D0 24020010 */ addiu $v0, $zero, 0x10 +/* 3E20B4 E00EA1D4 AE020010 */ sw $v0, 0x10($s0) +.LE00EA1D8: +/* 3E20B8 E00EA1D8 8E030010 */ lw $v1, 0x10($s0) +/* 3E20BC E00EA1DC 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3E20C0 E00EA1E0 10400002 */ beqz $v0, .LE00EA1EC +/* 3E20C4 E00EA1E4 2462FFFF */ addiu $v0, $v1, -1 +/* 3E20C8 E00EA1E8 AE020010 */ sw $v0, 0x10($s0) +.LE00EA1EC: +/* 3E20CC E00EA1EC 3C030001 */ lui $v1, 1 +/* 3E20D0 E00EA1F0 8E020014 */ lw $v0, 0x14($s0) +/* 3E20D4 E00EA1F4 3463A5E0 */ ori $v1, $v1, 0xa5e0 +/* 3E20D8 E00EA1F8 24420001 */ addiu $v0, $v0, 1 +/* 3E20DC E00EA1FC 0062182A */ slt $v1, $v1, $v0 +/* 3E20E0 E00EA200 10600002 */ beqz $v1, .LE00EA20C +/* 3E20E4 E00EA204 AE020014 */ sw $v0, 0x14($s0) +/* 3E20E8 E00EA208 AE000014 */ sw $zero, 0x14($s0) +.LE00EA20C: +/* 3E20EC E00EA20C 8E030010 */ lw $v1, 0x10($s0) +/* 3E20F0 E00EA210 04610005 */ bgez $v1, .LE00EA228 +/* 3E20F4 E00EA214 28620010 */ slti $v0, $v1, 0x10 +/* 3E20F8 E00EA218 0C080128 */ jal func_E02004A0 +/* 3E20FC E00EA21C 00000000 */ nop +/* 3E2100 E00EA220 0803A940 */ j .LE00EA500 +/* 3E2104 E00EA224 00000000 */ nop +.LE00EA228: +/* 3E2108 E00EA228 8E040014 */ lw $a0, 0x14($s0) +/* 3E210C E00EA22C 10400002 */ beqz $v0, .LE00EA238 +/* 3E2110 E00EA230 00031100 */ sll $v0, $v1, 4 +/* 3E2114 E00EA234 AE020024 */ sw $v0, 0x24($s0) +.LE00EA238: +/* 3E2118 E00EA238 28820010 */ slti $v0, $a0, 0x10 +/* 3E211C E00EA23C 10400003 */ beqz $v0, .LE00EA24C +/* 3E2120 E00EA240 00041100 */ sll $v0, $a0, 4 +/* 3E2124 E00EA244 2442000F */ addiu $v0, $v0, 0xf +/* 3E2128 E00EA248 AE020024 */ sw $v0, 0x24($s0) +.LE00EA24C: +/* 3E212C E00EA24C C6120048 */ lwc1 $f18, 0x48($s0) +/* 3E2130 E00EA250 C60E0068 */ lwc1 $f14, 0x68($s0) +/* 3E2134 E00EA254 46127381 */ sub.s $f14, $f14, $f18 +/* 3E2138 E00EA258 3C01E00F */ lui $at, %hi(D_E00EAA60) +/* 3E213C E00EA25C D438AA60 */ ldc1 $f24, %lo(D_E00EAA60)($at) +/* 3E2140 E00EA260 460073A1 */ cvt.d.s $f14, $f14 +/* 3E2144 E00EA264 46387382 */ mul.d $f14, $f14, $f24 +/* 3E2148 E00EA268 00000000 */ nop +/* 3E214C E00EA26C C60C004C */ lwc1 $f12, 0x4c($s0) +/* 3E2150 E00EA270 C608006C */ lwc1 $f8, 0x6c($s0) +/* 3E2154 E00EA274 460C4201 */ sub.s $f8, $f8, $f12 +/* 3E2158 E00EA278 46004221 */ cvt.d.s $f8, $f8 +/* 3E215C E00EA27C 46384202 */ mul.d $f8, $f8, $f24 +/* 3E2160 E00EA280 00000000 */ nop +/* 3E2164 E00EA284 C60A0058 */ lwc1 $f10, 0x58($s0) +/* 3E2168 E00EA288 C6040070 */ lwc1 $f4, 0x70($s0) +/* 3E216C E00EA28C 460A2101 */ sub.s $f4, $f4, $f10 +/* 3E2170 E00EA290 46002121 */ cvt.d.s $f4, $f4 +/* 3E2174 E00EA294 46382102 */ mul.d $f4, $f4, $f24 +/* 3E2178 E00EA298 00000000 */ nop +/* 3E217C E00EA29C C610005C */ lwc1 $f16, 0x5c($s0) +/* 3E2180 E00EA2A0 C6060074 */ lwc1 $f6, 0x74($s0) +/* 3E2184 E00EA2A4 46103181 */ sub.s $f6, $f6, $f16 +/* 3E2188 E00EA2A8 460031A1 */ cvt.d.s $f6, $f6 +/* 3E218C E00EA2AC 46383182 */ mul.d $f6, $f6, $f24 +/* 3E2190 E00EA2B0 00000000 */ nop +/* 3E2194 E00EA2B4 C6140060 */ lwc1 $f20, 0x60($s0) +/* 3E2198 E00EA2B8 C6020078 */ lwc1 $f2, 0x78($s0) +/* 3E219C E00EA2BC 46141081 */ sub.s $f2, $f2, $f20 +/* 3E21A0 E00EA2C0 460010A1 */ cvt.d.s $f2, $f2 +/* 3E21A4 E00EA2C4 46381082 */ mul.d $f2, $f2, $f24 +/* 3E21A8 E00EA2C8 00000000 */ nop +/* 3E21AC E00EA2CC C6160064 */ lwc1 $f22, 0x64($s0) +/* 3E21B0 E00EA2D0 C600007C */ lwc1 $f0, 0x7c($s0) +/* 3E21B4 E00EA2D4 46160001 */ sub.s $f0, $f0, $f22 +/* 3E21B8 E00EA2D8 46000021 */ cvt.d.s $f0, $f0 +/* 3E21BC E00EA2DC 46380002 */ mul.d $f0, $f0, $f24 +/* 3E21C0 E00EA2E0 00000000 */ nop +/* 3E21C4 E00EA2E4 460094A1 */ cvt.d.s $f18, $f18 +/* 3E21C8 E00EA2E8 462E9480 */ add.d $f18, $f18, $f14 +/* 3E21CC E00EA2EC 46006321 */ cvt.d.s $f12, $f12 +/* 3E21D0 E00EA2F0 46286300 */ add.d $f12, $f12, $f8 +/* 3E21D4 E00EA2F4 460052A1 */ cvt.d.s $f10, $f10 +/* 3E21D8 E00EA2F8 46245280 */ add.d $f10, $f10, $f4 +/* 3E21DC E00EA2FC 46008421 */ cvt.d.s $f16, $f16 +/* 3E21E0 E00EA300 4600A521 */ cvt.d.s $f20, $f20 +/* 3E21E4 E00EA304 46268400 */ add.d $f16, $f16, $f6 +/* 3E21E8 E00EA308 4600B5A1 */ cvt.d.s $f22, $f22 +/* 3E21EC E00EA30C C6060040 */ lwc1 $f6, 0x40($s0) +/* 3E21F0 E00EA310 4622A500 */ add.d $f20, $f20, $f2 +/* 3E21F4 E00EA314 C6080044 */ lwc1 $f8, 0x44($s0) +/* 3E21F8 E00EA318 C6040050 */ lwc1 $f4, 0x50($s0) +/* 3E21FC E00EA31C 4620B580 */ add.d $f22, $f22, $f0 +/* 3E2200 E00EA320 462094A0 */ cvt.s.d $f18, $f18 +/* 3E2204 E00EA324 46206320 */ cvt.s.d $f12, $f12 +/* 3E2208 E00EA328 E6120048 */ swc1 $f18, 0x48($s0) +/* 3E220C E00EA32C 46009086 */ mov.s $f2, $f18 +/* 3E2210 E00EA330 46021080 */ add.s $f2, $f2, $f2 +/* 3E2214 E00EA334 E60C004C */ swc1 $f12, 0x4c($s0) +/* 3E2218 E00EA338 46006006 */ mov.s $f0, $f12 +/* 3E221C E00EA33C 46000000 */ add.s $f0, $f0, $f0 +/* 3E2220 E00EA340 462052A0 */ cvt.s.d $f10, $f10 +/* 3E2224 E00EA344 46208420 */ cvt.s.d $f16, $f16 +/* 3E2228 E00EA348 46023180 */ add.s $f6, $f6, $f2 +/* 3E222C E00EA34C 4620A520 */ cvt.s.d $f20, $f20 +/* 3E2230 E00EA350 4620B5A0 */ cvt.s.d $f22, $f22 +/* 3E2234 E00EA354 46004200 */ add.s $f8, $f8, $f0 +/* 3E2238 E00EA358 E60A0058 */ swc1 $f10, 0x58($s0) +/* 3E223C E00EA35C 46005006 */ mov.s $f0, $f10 +/* 3E2240 E00EA360 46000000 */ add.s $f0, $f0, $f0 +/* 3E2244 E00EA364 E610005C */ swc1 $f16, 0x5c($s0) +/* 3E2248 E00EA368 E6140060 */ swc1 $f20, 0x60($s0) +/* 3E224C E00EA36C 46002100 */ add.s $f4, $f4, $f0 +/* 3E2250 E00EA370 E6160064 */ swc1 $f22, 0x64($s0) +/* 3E2254 E00EA374 46008006 */ mov.s $f0, $f16 +/* 3E2258 E00EA378 46000000 */ add.s $f0, $f0, $f0 +/* 3E225C E00EA37C C6020054 */ lwc1 $f2, 0x54($s0) +/* 3E2260 E00EA380 44805000 */ mtc1 $zero, $f10 +/* 3E2264 E00EA384 46001080 */ add.s $f2, $f2, $f0 +/* 3E2268 E00EA388 E6060040 */ swc1 $f6, 0x40($s0) +/* 3E226C E00EA38C E6080044 */ swc1 $f8, 0x44($s0) +/* 3E2270 E00EA390 460A303C */ c.lt.s $f6, $f10 +/* 3E2274 E00EA394 E6040050 */ swc1 $f4, 0x50($s0) +/* 3E2278 E00EA398 45000006 */ bc1f .LE00EA3B4 +/* 3E227C E00EA39C E6020054 */ swc1 $f2, 0x54($s0) +/* 3E2280 E00EA3A0 3C014380 */ lui $at, 0x4380 +/* 3E2284 E00EA3A4 44810000 */ mtc1 $at, $f0 +/* 3E2288 E00EA3A8 00000000 */ nop +/* 3E228C E00EA3AC 46003000 */ add.s $f0, $f6, $f0 +/* 3E2290 E00EA3B0 E6000040 */ swc1 $f0, 0x40($s0) +.LE00EA3B4: +/* 3E2294 E00EA3B4 C6020044 */ lwc1 $f2, 0x44($s0) +/* 3E2298 E00EA3B8 460A103C */ c.lt.s $f2, $f10 +/* 3E229C E00EA3BC 00000000 */ nop +/* 3E22A0 E00EA3C0 45000006 */ bc1f .LE00EA3DC +/* 3E22A4 E00EA3C4 00000000 */ nop +/* 3E22A8 E00EA3C8 3C014380 */ lui $at, 0x4380 +/* 3E22AC E00EA3CC 44810000 */ mtc1 $at, $f0 +/* 3E22B0 E00EA3D0 00000000 */ nop +/* 3E22B4 E00EA3D4 46001000 */ add.s $f0, $f2, $f0 +/* 3E22B8 E00EA3D8 E6000044 */ swc1 $f0, 0x44($s0) +.LE00EA3DC: +/* 3E22BC E00EA3DC C6020050 */ lwc1 $f2, 0x50($s0) +/* 3E22C0 E00EA3E0 460A103C */ c.lt.s $f2, $f10 +/* 3E22C4 E00EA3E4 00000000 */ nop +/* 3E22C8 E00EA3E8 45000006 */ bc1f .LE00EA404 +/* 3E22CC E00EA3EC 00000000 */ nop +/* 3E22D0 E00EA3F0 3C014380 */ lui $at, 0x4380 +/* 3E22D4 E00EA3F4 44810000 */ mtc1 $at, $f0 +/* 3E22D8 E00EA3F8 00000000 */ nop +/* 3E22DC E00EA3FC 46001000 */ add.s $f0, $f2, $f0 +/* 3E22E0 E00EA400 E6000050 */ swc1 $f0, 0x50($s0) +.LE00EA404: +/* 3E22E4 E00EA404 C6020054 */ lwc1 $f2, 0x54($s0) +/* 3E22E8 E00EA408 460A103C */ c.lt.s $f2, $f10 +/* 3E22EC E00EA40C 00000000 */ nop +/* 3E22F0 E00EA410 45000006 */ bc1f .LE00EA42C +/* 3E22F4 E00EA414 00000000 */ nop +/* 3E22F8 E00EA418 3C014380 */ lui $at, 0x4380 +/* 3E22FC E00EA41C 44810000 */ mtc1 $at, $f0 +/* 3E2300 E00EA420 00000000 */ nop +/* 3E2304 E00EA424 46001000 */ add.s $f0, $f2, $f0 +/* 3E2308 E00EA428 E6000054 */ swc1 $f0, 0x54($s0) +.LE00EA42C: +/* 3E230C E00EA42C C6000040 */ lwc1 $f0, 0x40($s0) +/* 3E2310 E00EA430 3C014380 */ lui $at, 0x4380 +/* 3E2314 E00EA434 44811000 */ mtc1 $at, $f2 +/* 3E2318 E00EA438 00000000 */ nop +/* 3E231C E00EA43C 4600103C */ c.lt.s $f2, $f0 +/* 3E2320 E00EA440 00000000 */ nop +/* 3E2324 E00EA444 45000003 */ bc1f .LE00EA454 +/* 3E2328 E00EA448 00000000 */ nop +/* 3E232C E00EA44C 46020001 */ sub.s $f0, $f0, $f2 +/* 3E2330 E00EA450 E6000040 */ swc1 $f0, 0x40($s0) +.LE00EA454: +/* 3E2334 E00EA454 C6000044 */ lwc1 $f0, 0x44($s0) +/* 3E2338 E00EA458 4600103C */ c.lt.s $f2, $f0 +/* 3E233C E00EA45C 00000000 */ nop +/* 3E2340 E00EA460 45000003 */ bc1f .LE00EA470 +/* 3E2344 E00EA464 00000000 */ nop +/* 3E2348 E00EA468 46020001 */ sub.s $f0, $f0, $f2 +/* 3E234C E00EA46C E6000044 */ swc1 $f0, 0x44($s0) +.LE00EA470: +/* 3E2350 E00EA470 C6000050 */ lwc1 $f0, 0x50($s0) +/* 3E2354 E00EA474 4600103C */ c.lt.s $f2, $f0 +/* 3E2358 E00EA478 00000000 */ nop +/* 3E235C E00EA47C 45000003 */ bc1f .LE00EA48C +/* 3E2360 E00EA480 00000000 */ nop +/* 3E2364 E00EA484 46020001 */ sub.s $f0, $f0, $f2 +/* 3E2368 E00EA488 E6000050 */ swc1 $f0, 0x50($s0) +.LE00EA48C: +/* 3E236C E00EA48C C6000054 */ lwc1 $f0, 0x54($s0) +/* 3E2370 E00EA490 4600103C */ c.lt.s $f2, $f0 +/* 3E2374 E00EA494 00000000 */ nop +/* 3E2378 E00EA498 45000003 */ bc1f .LE00EA4A8 +/* 3E237C E00EA49C 00041080 */ sll $v0, $a0, 2 +/* 3E2380 E00EA4A0 46020001 */ sub.s $f0, $f0, $f2 +/* 3E2384 E00EA4A4 E6000054 */ swc1 $f0, 0x54($s0) +.LE00EA4A8: +/* 3E2388 E00EA4A8 00441021 */ addu $v0, $v0, $a0 +/* 3E238C E00EA4AC 00021080 */ sll $v0, $v0, 2 +/* 3E2390 E00EA4B0 44826000 */ mtc1 $v0, $f12 +/* 3E2394 E00EA4B4 00000000 */ nop +/* 3E2398 E00EA4B8 0C080140 */ jal func_E0200500 +/* 3E239C E00EA4BC 46806320 */ cvt.s.w $f12, $f12 +/* 3E23A0 E00EA4C0 C6040060 */ lwc1 $f4, 0x60($s0) +/* 3E23A4 E00EA4C4 C6020064 */ lwc1 $f2, 0x64($s0) +/* 3E23A8 E00EA4C8 46041081 */ sub.s $f2, $f2, $f4 +/* 3E23AC E00EA4CC 46020002 */ mul.s $f0, $f0, $f2 +/* 3E23B0 E00EA4D0 00000000 */ nop +/* 3E23B4 E00EA4D4 46020000 */ add.s $f0, $f0, $f2 +/* 3E23B8 E00EA4D8 3C013FE0 */ lui $at, 0x3fe0 +/* 3E23BC E00EA4DC 44811800 */ mtc1 $at, $f3 +/* 3E23C0 E00EA4E0 44801000 */ mtc1 $zero, $f2 +/* 3E23C4 E00EA4E4 46000021 */ cvt.d.s $f0, $f0 +/* 3E23C8 E00EA4E8 46220002 */ mul.d $f0, $f0, $f2 +/* 3E23CC E00EA4EC 00000000 */ nop +/* 3E23D0 E00EA4F0 46002121 */ cvt.d.s $f4, $f4 +/* 3E23D4 E00EA4F4 46202100 */ add.d $f4, $f4, $f0 +/* 3E23D8 E00EA4F8 4620268D */ trunc.w.d $f26, $f4 +/* 3E23DC E00EA4FC E61A0034 */ swc1 $f26, 0x34($s0) +.LE00EA500: +/* 3E23E0 E00EA500 8FBF0014 */ lw $ra, 0x14($sp) +/* 3E23E4 E00EA504 8FB00010 */ lw $s0, 0x10($sp) +/* 3E23E8 E00EA508 D7BA0030 */ ldc1 $f26, 0x30($sp) +/* 3E23EC E00EA50C D7B80028 */ ldc1 $f24, 0x28($sp) +/* 3E23F0 E00EA510 D7B60020 */ ldc1 $f22, 0x20($sp) +/* 3E23F4 E00EA514 D7B40018 */ ldc1 $f20, 0x18($sp) +/* 3E23F8 E00EA518 03E00008 */ jr $ra +/* 3E23FC E00EA51C 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_3E1EE0/func_E00EA520.s b/asm/nonmatchings/code_3E1EE0/func_E00EA520.s new file mode 100644 index 0000000000..057a035779 --- /dev/null +++ b/asm/nonmatchings/code_3E1EE0/func_E00EA520.s @@ -0,0 +1,88 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00EA520 +/* 3E2400 E00EA520 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3E2404 E00EA524 AFB1004C */ sw $s1, 0x4c($sp) +/* 3E2408 E00EA528 0080882D */ daddu $s1, $a0, $zero +/* 3E240C E00EA52C AFBF0050 */ sw $ra, 0x50($sp) +/* 3E2410 E00EA530 AFB00048 */ sw $s0, 0x48($sp) +/* 3E2414 E00EA534 8E27000C */ lw $a3, 0xc($s1) +/* 3E2418 E00EA538 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3E241C E00EA53C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3E2420 E00EA540 3C013F80 */ lui $at, 0x3f80 +/* 3E2424 E00EA544 44810000 */ mtc1 $at, $f0 +/* 3E2428 E00EA548 27A20038 */ addiu $v0, $sp, 0x38 +/* 3E242C E00EA54C AFA20014 */ sw $v0, 0x14($sp) +/* 3E2430 E00EA550 27A2003C */ addiu $v0, $sp, 0x3c +/* 3E2434 E00EA554 AFA20018 */ sw $v0, 0x18($sp) +/* 3E2438 E00EA558 27A20040 */ addiu $v0, $sp, 0x40 +/* 3E243C E00EA55C AFA2001C */ sw $v0, 0x1c($sp) +/* 3E2440 E00EA560 27A20044 */ addiu $v0, $sp, 0x44 +/* 3E2444 E00EA564 AFA20020 */ sw $v0, 0x20($sp) +/* 3E2448 E00EA568 00032080 */ sll $a0, $v1, 2 +/* 3E244C E00EA56C 00832021 */ addu $a0, $a0, $v1 +/* 3E2450 E00EA570 00042080 */ sll $a0, $a0, 2 +/* 3E2454 E00EA574 00832023 */ subu $a0, $a0, $v1 +/* 3E2458 E00EA578 000410C0 */ sll $v0, $a0, 3 +/* 3E245C E00EA57C 00822021 */ addu $a0, $a0, $v0 +/* 3E2460 E00EA580 000420C0 */ sll $a0, $a0, 3 +/* 3E2464 E00EA584 3C02800B */ lui $v0, %hi(D_800B1E54) +/* 3E2468 E00EA588 24421E54 */ addiu $v0, $v0, %lo(D_800B1E54) +/* 3E246C E00EA58C E7A00010 */ swc1 $f0, 0x10($sp) +/* 3E2470 E00EA590 8CE50004 */ lw $a1, 4($a3) +/* 3E2474 E00EA594 8CE60008 */ lw $a2, 8($a3) +/* 3E2478 E00EA598 8CE7000C */ lw $a3, 0xc($a3) +/* 3E247C E00EA59C 0C080168 */ jal func_E02005A0 +/* 3E2480 E00EA5A0 00822021 */ addu $a0, $a0, $v0 +/* 3E2484 E00EA5A4 C7A00040 */ lwc1 $f0, 0x40($sp) +/* 3E2488 E00EA5A8 3C01459C */ lui $at, 0x459c +/* 3E248C E00EA5AC 34214000 */ ori $at, $at, 0x4000 +/* 3E2490 E00EA5B0 44811000 */ mtc1 $at, $f2 +/* 3E2494 E00EA5B4 00000000 */ nop +/* 3E2498 E00EA5B8 46020000 */ add.s $f0, $f0, $f2 +/* 3E249C E00EA5BC 4600010D */ trunc.w.s $f4, $f0 +/* 3E24A0 E00EA5C0 44032000 */ mfc1 $v1, $f4 +/* 3E24A4 E00EA5C4 00000000 */ nop +/* 3E24A8 E00EA5C8 04610003 */ bgez $v1, .LE00EA5D8 +/* 3E24AC E00EA5CC 27B00028 */ addiu $s0, $sp, 0x28 +/* 3E24B0 E00EA5D0 0803A979 */ j .LE00EA5E4 +/* 3E24B4 E00EA5D4 0000182D */ daddu $v1, $zero, $zero +.LE00EA5D8: +/* 3E24B8 E00EA5D8 28622711 */ slti $v0, $v1, 0x2711 +/* 3E24BC E00EA5DC 50400001 */ beql $v0, $zero, .LE00EA5E4 +/* 3E24C0 E00EA5E0 24032710 */ addiu $v1, $zero, 0x2710 +.LE00EA5E4: +/* 3E24C4 E00EA5E4 C7A20044 */ lwc1 $f2, 0x44($sp) +/* 3E24C8 E00EA5E8 3C01E00F */ lui $at, %hi(D_E00EAA68) +/* 3E24CC E00EA5EC D420AA68 */ ldc1 $f0, %lo(D_E00EAA68)($at) +/* 3E24D0 E00EA5F0 460010A1 */ cvt.d.s $f2, $f2 +/* 3E24D4 E00EA5F4 4620103C */ c.lt.d $f2, $f0 +/* 3E24D8 E00EA5F8 00000000 */ nop +/* 3E24DC E00EA5FC 45000008 */ bc1f .LE00EA620 +/* 3E24E0 E00EA600 0200202D */ daddu $a0, $s0, $zero +/* 3E24E4 E00EA604 3C01E00F */ lui $at, %hi(D_E00EAA70) +/* 3E24E8 E00EA608 D420AA70 */ ldc1 $f0, %lo(D_E00EAA70)($at) +/* 3E24EC E00EA60C 4622003C */ c.lt.d $f0, $f2 +/* 3E24F0 E00EA610 00000000 */ nop +/* 3E24F4 E00EA614 45030002 */ bc1tl .LE00EA620 +/* 3E24F8 E00EA618 0000182D */ daddu $v1, $zero, $zero +/* 3E24FC E00EA61C 0200202D */ daddu $a0, $s0, $zero +.LE00EA620: +/* 3E2500 E00EA620 3C02E00F */ lui $v0, %hi(D_E00EA66C) +/* 3E2504 E00EA624 2442A66C */ addiu $v0, $v0, %lo(D_E00EA66C) +/* 3E2508 E00EA628 AC82000C */ sw $v0, 0xc($a0) +/* 3E250C E00EA62C 00031023 */ negu $v0, $v1 +/* 3E2510 E00EA630 AC820004 */ sw $v0, 4($a0) +/* 3E2514 E00EA634 24020011 */ addiu $v0, $zero, 0x11 +/* 3E2518 E00EA638 AC910008 */ sw $s1, 8($a0) +/* 3E251C E00EA63C 0C080120 */ jal func_E0200480 +/* 3E2520 E00EA640 AC820000 */ sw $v0, ($a0) +/* 3E2524 E00EA644 8C430000 */ lw $v1, ($v0) +/* 3E2528 E00EA648 34630002 */ ori $v1, $v1, 2 +/* 3E252C E00EA64C AC430000 */ sw $v1, ($v0) +/* 3E2530 E00EA650 8FBF0050 */ lw $ra, 0x50($sp) +/* 3E2534 E00EA654 8FB1004C */ lw $s1, 0x4c($sp) +/* 3E2538 E00EA658 8FB00048 */ lw $s0, 0x48($sp) +/* 3E253C E00EA65C 03E00008 */ jr $ra +/* 3E2540 E00EA660 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3E1EE0/func_E00EA664.s b/asm/nonmatchings/code_3E1EE0/func_E00EA664.s new file mode 100644 index 0000000000..eab7982fd8 --- /dev/null +++ b/asm/nonmatchings/code_3E1EE0/func_E00EA664.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00EA664 +/* 3E2544 E00EA664 03E00008 */ jr $ra +/* 3E2548 E00EA668 00000000 */ nop diff --git a/asm/nonmatchings/code_3E1EE0/func_E00EA66C.s b/asm/nonmatchings/code_3E1EE0/func_E00EA66C.s new file mode 100644 index 0000000000..01a1ab30cf --- /dev/null +++ b/asm/nonmatchings/code_3E1EE0/func_E00EA66C.s @@ -0,0 +1,254 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E00EA66C +/* 3E254C E00EA66C 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 3E2550 E00EA670 0080302D */ daddu $a2, $a0, $zero +/* 3E2554 E00EA674 3C07DB06 */ lui $a3, 0xdb06 +/* 3E2558 E00EA678 34E70024 */ ori $a3, $a3, 0x24 +/* 3E255C E00EA67C AFB400B0 */ sw $s4, 0xb0($sp) +/* 3E2560 E00EA680 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 3E2564 E00EA684 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 3E2568 E00EA688 AFBF00C4 */ sw $ra, 0xc4($sp) +/* 3E256C E00EA68C AFBE00C0 */ sw $fp, 0xc0($sp) +/* 3E2570 E00EA690 AFB700BC */ sw $s7, 0xbc($sp) +/* 3E2574 E00EA694 AFB600B8 */ sw $s6, 0xb8($sp) +/* 3E2578 E00EA698 AFB500B4 */ sw $s5, 0xb4($sp) +/* 3E257C E00EA69C AFB300AC */ sw $s3, 0xac($sp) +/* 3E2580 E00EA6A0 AFB200A8 */ sw $s2, 0xa8($sp) +/* 3E2584 E00EA6A4 AFB100A4 */ sw $s1, 0xa4($sp) +/* 3E2588 E00EA6A8 AFB000A0 */ sw $s0, 0xa0($sp) +/* 3E258C E00EA6AC 8E830000 */ lw $v1, ($s4) +/* 3E2590 E00EA6B0 8CD3000C */ lw $s3, 0xc($a2) +/* 3E2594 E00EA6B4 3C014080 */ lui $at, 0x4080 +/* 3E2598 E00EA6B8 44810000 */ mtc1 $at, $f0 +/* 3E259C E00EA6BC 0060282D */ daddu $a1, $v1, $zero +/* 3E25A0 E00EA6C0 24630008 */ addiu $v1, $v1, 8 +/* 3E25A4 E00EA6C4 AE830000 */ sw $v1, ($s4) +/* 3E25A8 E00EA6C8 8E6B0000 */ lw $t3, ($s3) +/* 3E25AC E00EA6CC 27A40018 */ addiu $a0, $sp, 0x18 +/* 3E25B0 E00EA6D0 AFAB0098 */ sw $t3, 0x98($sp) +/* 3E25B4 E00EA6D4 C6620040 */ lwc1 $f2, 0x40($s3) +/* 3E25B8 E00EA6D8 3C02E700 */ lui $v0, 0xe700 +/* 3E25BC E00EA6DC 46001082 */ mul.s $f2, $f2, $f0 +/* 3E25C0 E00EA6E0 00000000 */ nop +/* 3E25C4 E00EA6E4 3C08800B */ lui $t0, %hi(gCameras) +/* 3E25C8 E00EA6E8 25081D80 */ addiu $t0, $t0, %lo(gCameras) +/* 3E25CC E00EA6EC C6640044 */ lwc1 $f4, 0x44($s3) +/* 3E25D0 E00EA6F0 C6660050 */ lwc1 $f6, 0x50($s3) +/* 3E25D4 E00EA6F4 C6680054 */ lwc1 $f8, 0x54($s3) +/* 3E25D8 E00EA6F8 46002102 */ mul.s $f4, $f4, $f0 +/* 3E25DC E00EA6FC 00000000 */ nop +/* 3E25E0 E00EA700 ACA20000 */ sw $v0, ($a1) +/* 3E25E4 E00EA704 24620008 */ addiu $v0, $v1, 8 +/* 3E25E8 E00EA708 ACA00004 */ sw $zero, 4($a1) +/* 3E25EC E00EA70C AE820000 */ sw $v0, ($s4) +/* 3E25F0 E00EA710 46003182 */ mul.s $f6, $f6, $f0 +/* 3E25F4 E00EA714 00000000 */ nop +/* 3E25F8 E00EA718 AC670000 */ sw $a3, ($v1) +/* 3E25FC E00EA71C 8CC20010 */ lw $v0, 0x10($a2) +/* 3E2600 E00EA720 3C058000 */ lui $a1, 0x8000 +/* 3E2604 E00EA724 8C42001C */ lw $v0, 0x1c($v0) +/* 3E2608 E00EA728 46004202 */ mul.s $f8, $f8, $f0 +/* 3E260C E00EA72C 00000000 */ nop +/* 3E2610 E00EA730 00451021 */ addu $v0, $v0, $a1 +/* 3E2614 E00EA734 AC620004 */ sw $v0, 4($v1) +/* 3E2618 E00EA738 8E650004 */ lw $a1, 4($s3) +/* 3E261C E00EA73C 8E660008 */ lw $a2, 8($s3) +/* 3E2620 E00EA740 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3E2624 E00EA744 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3E2628 E00EA748 8E67000C */ lw $a3, 0xc($s3) +/* 3E262C E00EA74C 00031080 */ sll $v0, $v1, 2 +/* 3E2630 E00EA750 00431021 */ addu $v0, $v0, $v1 +/* 3E2634 E00EA754 00021080 */ sll $v0, $v0, 2 +/* 3E2638 E00EA758 00431023 */ subu $v0, $v0, $v1 +/* 3E263C E00EA75C 000218C0 */ sll $v1, $v0, 3 +/* 3E2640 E00EA760 00431021 */ addu $v0, $v0, $v1 +/* 3E2644 E00EA764 000210C0 */ sll $v0, $v0, 3 +/* 3E2648 E00EA768 4600128D */ trunc.w.s $f10, $f2 +/* 3E264C E00EA76C 44165000 */ mfc1 $s6, $f10 +/* 3E2650 E00EA770 4600228D */ trunc.w.s $f10, $f4 +/* 3E2654 E00EA774 44175000 */ mfc1 $s7, $f10 +/* 3E2658 E00EA778 4600328D */ trunc.w.s $f10, $f6 +/* 3E265C E00EA77C 441E5000 */ mfc1 $fp, $f10 +/* 3E2660 E00EA780 4600428D */ trunc.w.s $f10, $f8 +/* 3E2664 E00EA784 E7AA009C */ swc1 $f10, 0x9c($sp) +/* 3E2668 E00EA788 0C080108 */ jal func_E0200420 +/* 3E266C E00EA78C 0048A821 */ addu $s5, $v0, $t0 +/* 3E2670 E00EA790 27B00058 */ addiu $s0, $sp, 0x58 +/* 3E2674 E00EA794 8E65003C */ lw $a1, 0x3c($s3) +/* 3E2678 E00EA798 0200202D */ daddu $a0, $s0, $zero +/* 3E267C E00EA79C 00A0302D */ daddu $a2, $a1, $zero +/* 3E2680 E00EA7A0 0C080110 */ jal func_E0200440 +/* 3E2684 E00EA7A4 00A0382D */ daddu $a3, $a1, $zero +/* 3E2688 E00EA7A8 0200202D */ daddu $a0, $s0, $zero +/* 3E268C E00EA7AC 27A50018 */ addiu $a1, $sp, 0x18 +/* 3E2690 E00EA7B0 0C080114 */ jal func_E0200450 +/* 3E2694 E00EA7B4 00A0302D */ daddu $a2, $a1, $zero +/* 3E2698 E00EA7B8 8FAB0098 */ lw $t3, 0x98($sp) +/* 3E269C E00EA7BC 24020001 */ addiu $v0, $zero, 1 +/* 3E26A0 E00EA7C0 1562000F */ bne $t3, $v0, .LE00EA800 +/* 3E26A4 E00EA7C4 3C120001 */ lui $s2, 1 +/* 3E26A8 E00EA7C8 0200202D */ daddu $a0, $s0, $zero +/* 3E26AC E00EA7CC 44800000 */ mtc1 $zero, $f0 +/* 3E26B0 E00EA7D0 3C054334 */ lui $a1, 0x4334 +/* 3E26B4 E00EA7D4 44060000 */ mfc1 $a2, $f0 +/* 3E26B8 E00EA7D8 3C013F80 */ lui $at, 0x3f80 +/* 3E26BC E00EA7DC 44810000 */ mtc1 $at, $f0 +/* 3E26C0 E00EA7E0 00C0382D */ daddu $a3, $a2, $zero +/* 3E26C4 E00EA7E4 0C080104 */ jal func_E0200410 +/* 3E26C8 E00EA7E8 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3E26CC E00EA7EC 0200202D */ daddu $a0, $s0, $zero +/* 3E26D0 E00EA7F0 27A50018 */ addiu $a1, $sp, 0x18 +/* 3E26D4 E00EA7F4 0C080114 */ jal func_E0200450 +/* 3E26D8 E00EA7F8 00A0302D */ daddu $a2, $a1, $zero +/* 3E26DC E00EA7FC 3C120001 */ lui $s2, 1 +.LE00EA800: +/* 3E26E0 E00EA800 36521630 */ ori $s2, $s2, 0x1630 +/* 3E26E4 E00EA804 27A40018 */ addiu $a0, $sp, 0x18 +/* 3E26E8 E00EA808 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3E26EC E00EA80C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3E26F0 E00EA810 3C11800A */ lui $s1, %hi(D_8009A674) +/* 3E26F4 E00EA814 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 3E26F8 E00EA818 96050000 */ lhu $a1, ($s0) +/* 3E26FC E00EA81C 8E220000 */ lw $v0, ($s1) +/* 3E2700 E00EA820 00052980 */ sll $a1, $a1, 6 +/* 3E2704 E00EA824 00B22821 */ addu $a1, $a1, $s2 +/* 3E2708 E00EA828 0C080118 */ jal func_E0200460 +/* 3E270C E00EA82C 00452821 */ addu $a1, $v0, $a1 +/* 3E2710 E00EA830 3C03DA38 */ lui $v1, 0xda38 +/* 3E2714 E00EA834 34630002 */ ori $v1, $v1, 2 +/* 3E2718 E00EA838 3C06DA38 */ lui $a2, 0xda38 +/* 3E271C E00EA83C 34C60001 */ ori $a2, $a2, 1 +/* 3E2720 E00EA840 3C098080 */ lui $t1, 0x8080 +/* 3E2724 E00EA844 35298081 */ ori $t1, $t1, 0x8081 +/* 3E2728 E00EA848 8E850000 */ lw $a1, ($s4) +/* 3E272C E00EA84C 96020000 */ lhu $v0, ($s0) +/* 3E2730 E00EA850 00A0202D */ daddu $a0, $a1, $zero +/* 3E2734 E00EA854 24A50008 */ addiu $a1, $a1, 8 +/* 3E2738 E00EA858 AE850000 */ sw $a1, ($s4) +/* 3E273C E00EA85C AC830000 */ sw $v1, ($a0) +/* 3E2740 E00EA860 24430001 */ addiu $v1, $v0, 1 +/* 3E2744 E00EA864 3042FFFF */ andi $v0, $v0, 0xffff +/* 3E2748 E00EA868 00021180 */ sll $v0, $v0, 6 +/* 3E274C E00EA86C A6030000 */ sh $v1, ($s0) +/* 3E2750 E00EA870 8E230000 */ lw $v1, ($s1) +/* 3E2754 E00EA874 00521021 */ addu $v0, $v0, $s2 +/* 3E2758 E00EA878 00621821 */ addu $v1, $v1, $v0 +/* 3E275C E00EA87C 24A20008 */ addiu $v0, $a1, 8 +/* 3E2760 E00EA880 AC830004 */ sw $v1, 4($a0) +/* 3E2764 E00EA884 AE820000 */ sw $v0, ($s4) +/* 3E2768 E00EA888 24A20010 */ addiu $v0, $a1, 0x10 +/* 3E276C E00EA88C ACA60000 */ sw $a2, ($a1) +/* 3E2770 E00EA890 AE820000 */ sw $v0, ($s4) +/* 3E2774 E00EA894 8EA30204 */ lw $v1, 0x204($s5) +/* 3E2778 E00EA898 3C02FA00 */ lui $v0, 0xfa00 +/* 3E277C E00EA89C ACA20008 */ sw $v0, 8($a1) +/* 3E2780 E00EA8A0 ACA30004 */ sw $v1, 4($a1) +/* 3E2784 E00EA8A4 9262001B */ lbu $v0, 0x1b($s3) +/* 3E2788 E00EA8A8 9264001F */ lbu $a0, 0x1f($s3) +/* 3E278C E00EA8AC 92660023 */ lbu $a2, 0x23($s3) +/* 3E2790 E00EA8B0 92670037 */ lbu $a3, 0x37($s3) +/* 3E2794 E00EA8B4 24A30018 */ addiu $v1, $a1, 0x18 +/* 3E2798 E00EA8B8 AE830000 */ sw $v1, ($s4) +/* 3E279C E00EA8BC 3C03FB00 */ lui $v1, 0xfb00 +/* 3E27A0 E00EA8C0 ACA30010 */ sw $v1, 0x10($a1) +/* 3E27A4 E00EA8C4 00021600 */ sll $v0, $v0, 0x18 +/* 3E27A8 E00EA8C8 00042400 */ sll $a0, $a0, 0x10 +/* 3E27AC E00EA8CC 00441025 */ or $v0, $v0, $a0 +/* 3E27B0 E00EA8D0 00063200 */ sll $a2, $a2, 8 +/* 3E27B4 E00EA8D4 00461025 */ or $v0, $v0, $a2 +/* 3E27B8 E00EA8D8 00471025 */ or $v0, $v0, $a3 +/* 3E27BC E00EA8DC ACA2000C */ sw $v0, 0xc($a1) +/* 3E27C0 E00EA8E0 9264002B */ lbu $a0, 0x2b($s3) +/* 3E27C4 E00EA8E4 9266002F */ lbu $a2, 0x2f($s3) +/* 3E27C8 E00EA8E8 92670033 */ lbu $a3, 0x33($s3) +/* 3E27CC E00EA8EC 24A20020 */ addiu $v0, $a1, 0x20 +/* 3E27D0 E00EA8F0 AE820000 */ sw $v0, ($s4) +/* 3E27D4 E00EA8F4 8E630024 */ lw $v1, 0x24($s3) +/* 3E27D8 E00EA8F8 8E620038 */ lw $v0, 0x38($s3) +/* 3E27DC E00EA8FC 3C0AD838 */ lui $t2, 0xd838 +/* 3E27E0 E00EA900 00620018 */ mult $v1, $v0 +/* 3E27E4 E00EA904 3C08DE00 */ lui $t0, 0xde00 +/* 3E27E8 E00EA908 ACA80018 */ sw $t0, 0x18($a1) +/* 3E27EC E00EA90C 24A20028 */ addiu $v0, $a1, 0x28 +/* 3E27F0 E00EA910 00042600 */ sll $a0, $a0, 0x18 +/* 3E27F4 E00EA914 00001812 */ mflo $v1 +/* 3E27F8 E00EA918 00063400 */ sll $a2, $a2, 0x10 +/* 3E27FC E00EA91C 00862025 */ or $a0, $a0, $a2 +/* 3E2800 E00EA920 00690018 */ mult $v1, $t1 +/* 3E2804 E00EA924 00073A00 */ sll $a3, $a3, 8 +/* 3E2808 E00EA928 00872025 */ or $a0, $a0, $a3 +/* 3E280C E00EA92C 3C06F200 */ lui $a2, 0xf200 +/* 3E2810 E00EA930 AE820000 */ sw $v0, ($s4) +/* 3E2814 E00EA934 00001010 */ mfhi $v0 +/* 3E2818 E00EA938 00431021 */ addu $v0, $v0, $v1 +/* 3E281C E00EA93C 000211C3 */ sra $v0, $v0, 7 +/* 3E2820 E00EA940 00031FC3 */ sra $v1, $v1, 0x1f +/* 3E2824 E00EA944 00431023 */ subu $v0, $v0, $v1 +/* 3E2828 E00EA948 304200FF */ andi $v0, $v0, 0xff +/* 3E282C E00EA94C 00822025 */ or $a0, $a0, $v0 +/* 3E2830 E00EA950 32C30FFF */ andi $v1, $s6, 0xfff +/* 3E2834 E00EA954 00031B00 */ sll $v1, $v1, 0xc +/* 3E2838 E00EA958 32E20FFF */ andi $v0, $s7, 0xfff +/* 3E283C E00EA95C 00461025 */ or $v0, $v0, $a2 +/* 3E2840 E00EA960 00621825 */ or $v1, $v1, $v0 +/* 3E2844 E00EA964 26C200FC */ addiu $v0, $s6, 0xfc +/* 3E2848 E00EA968 30420FFF */ andi $v0, $v0, 0xfff +/* 3E284C E00EA96C ACA40014 */ sw $a0, 0x14($a1) +/* 3E2850 E00EA970 3C04E00F */ lui $a0, %hi(D_E00EAA58) +/* 3E2854 E00EA974 8C84AA58 */ lw $a0, %lo(D_E00EAA58)($a0) +/* 3E2858 E00EA978 00021300 */ sll $v0, $v0, 0xc +/* 3E285C E00EA97C ACA30020 */ sw $v1, 0x20($a1) +/* 3E2860 E00EA980 26E300FC */ addiu $v1, $s7, 0xfc +/* 3E2864 E00EA984 30630FFF */ andi $v1, $v1, 0xfff +/* 3E2868 E00EA988 00431025 */ or $v0, $v0, $v1 +/* 3E286C E00EA98C ACA20024 */ sw $v0, 0x24($a1) +/* 3E2870 E00EA990 24A20030 */ addiu $v0, $a1, 0x30 +/* 3E2874 E00EA994 33C30FFF */ andi $v1, $fp, 0xfff +/* 3E2878 E00EA998 00031B00 */ sll $v1, $v1, 0xc +/* 3E287C E00EA99C ACA4001C */ sw $a0, 0x1c($a1) +/* 3E2880 E00EA9A0 AE820000 */ sw $v0, ($s4) +/* 3E2884 E00EA9A4 8FAB009C */ lw $t3, 0x9c($sp) +/* 3E2888 E00EA9A8 3C040100 */ lui $a0, 0x100 +/* 3E288C E00EA9AC 31620FFF */ andi $v0, $t3, 0xfff +/* 3E2890 E00EA9B0 00461025 */ or $v0, $v0, $a2 +/* 3E2894 E00EA9B4 00621825 */ or $v1, $v1, $v0 +/* 3E2898 E00EA9B8 27C200FC */ addiu $v0, $fp, 0xfc +/* 3E289C E00EA9BC 30420FFF */ andi $v0, $v0, 0xfff +/* 3E28A0 E00EA9C0 00021300 */ sll $v0, $v0, 0xc +/* 3E28A4 E00EA9C4 ACA30028 */ sw $v1, 0x28($a1) +/* 3E28A8 E00EA9C8 256300FC */ addiu $v1, $t3, 0xfc +/* 3E28AC E00EA9CC 30630FFF */ andi $v1, $v1, 0xfff +/* 3E28B0 E00EA9D0 00641825 */ or $v1, $v1, $a0 +/* 3E28B4 E00EA9D4 00431025 */ or $v0, $v0, $v1 +/* 3E28B8 E00EA9D8 ACA2002C */ sw $v0, 0x2c($a1) +/* 3E28BC E00EA9DC 24A20038 */ addiu $v0, $a1, 0x38 +/* 3E28C0 E00EA9E0 AE820000 */ sw $v0, ($s4) +/* 3E28C4 E00EA9E4 ACA80030 */ sw $t0, 0x30($a1) +/* 3E28C8 E00EA9E8 8FAB0098 */ lw $t3, 0x98($sp) +/* 3E28CC E00EA9EC 354A0002 */ ori $t2, $t2, 2 +/* 3E28D0 E00EA9F0 000B1080 */ sll $v0, $t3, 2 +/* 3E28D4 E00EA9F4 3C03E00F */ lui $v1, %hi(D_E00EAA50) +/* 3E28D8 E00EA9F8 00621821 */ addu $v1, $v1, $v0 +/* 3E28DC E00EA9FC 8C63AA50 */ lw $v1, %lo(D_E00EAA50)($v1) +/* 3E28E0 E00EAA00 24A20040 */ addiu $v0, $a1, 0x40 +/* 3E28E4 E00EAA04 AE820000 */ sw $v0, ($s4) +/* 3E28E8 E00EAA08 24020040 */ addiu $v0, $zero, 0x40 +/* 3E28EC E00EAA0C ACAA0038 */ sw $t2, 0x38($a1) +/* 3E28F0 E00EAA10 ACA2003C */ sw $v0, 0x3c($a1) +/* 3E28F4 E00EAA14 ACA30034 */ sw $v1, 0x34($a1) +/* 3E28F8 E00EAA18 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 3E28FC E00EAA1C 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 3E2900 E00EAA20 8FB700BC */ lw $s7, 0xbc($sp) +/* 3E2904 E00EAA24 8FB600B8 */ lw $s6, 0xb8($sp) +/* 3E2908 E00EAA28 8FB500B4 */ lw $s5, 0xb4($sp) +/* 3E290C E00EAA2C 8FB400B0 */ lw $s4, 0xb0($sp) +/* 3E2910 E00EAA30 8FB300AC */ lw $s3, 0xac($sp) +/* 3E2914 E00EAA34 8FB200A8 */ lw $s2, 0xa8($sp) +/* 3E2918 E00EAA38 8FB100A4 */ lw $s1, 0xa4($sp) +/* 3E291C E00EAA3C 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3E2920 E00EAA40 03E00008 */ jr $ra +/* 3E2924 E00EAA44 27BD00C8 */ addiu $sp, $sp, 0xc8 +/* 3E2928 E00EAA48 00000000 */ nop +/* 3E292C E00EAA4C 00000000 */ nop diff --git a/asm/nonmatchings/code_3E43A0/func_E010A000.s b/asm/nonmatchings/code_3E43A0/func_E010A000.s new file mode 100644 index 0000000000..89b39b4075 --- /dev/null +++ b/asm/nonmatchings/code_3E43A0/func_E010A000.s @@ -0,0 +1,106 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010A000 +/* 3E43A0 E010A000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3E43A4 E010A004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3E43A8 E010A008 4485A000 */ mtc1 $a1, $f20 +/* 3E43AC E010A00C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3E43B0 E010A010 4486B000 */ mtc1 $a2, $f22 +/* 3E43B4 E010A014 AFB20030 */ sw $s2, 0x30($sp) +/* 3E43B8 E010A018 0080902D */ daddu $s2, $a0, $zero +/* 3E43BC E010A01C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3E43C0 E010A020 4487C000 */ mtc1 $a3, $f24 +/* 3E43C4 E010A024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E43C8 E010A028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3E43CC E010A02C 8FB10070 */ lw $s1, 0x70($sp) +/* 3E43D0 E010A030 3C02E011 */ lui $v0, %hi(D_E010A184) +/* 3E43D4 E010A034 2442A184 */ addiu $v0, $v0, %lo(D_E010A184) +/* 3E43D8 E010A038 AFA20018 */ sw $v0, 0x18($sp) +/* 3E43DC E010A03C 3C02E011 */ lui $v0, %hi(D_E010A18C) +/* 3E43E0 E010A040 2442A18C */ addiu $v0, $v0, %lo(D_E010A18C) +/* 3E43E4 E010A044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3E43E8 E010A048 3C02E011 */ lui $v0, %hi(D_E010A4A0) +/* 3E43EC E010A04C 2442A4A0 */ addiu $v0, $v0, %lo(D_E010A4A0) +/* 3E43F0 E010A050 AFA20020 */ sw $v0, 0x20($sp) +/* 3E43F4 E010A054 24020077 */ addiu $v0, $zero, 0x77 +/* 3E43F8 E010A058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3E43FC E010A05C AFB00028 */ sw $s0, 0x28($sp) +/* 3E4400 E010A060 AFA00010 */ sw $zero, 0x10($sp) +/* 3E4404 E010A064 AFA00024 */ sw $zero, 0x24($sp) +/* 3E4408 E010A068 0C080124 */ jal func_E0200490 +/* 3E440C E010A06C AFA20014 */ sw $v0, 0x14($sp) +/* 3E4410 E010A070 240400B0 */ addiu $a0, $zero, 0xb0 +/* 3E4414 E010A074 24030001 */ addiu $v1, $zero, 1 +/* 3E4418 E010A078 0040802D */ daddu $s0, $v0, $zero +/* 3E441C E010A07C 0C08012C */ jal func_E02004B0 +/* 3E4420 E010A080 AE030008 */ sw $v1, 8($s0) +/* 3E4424 E010A084 0040202D */ daddu $a0, $v0, $zero +/* 3E4428 E010A088 14800003 */ bnez $a0, .LE010A098 +/* 3E442C E010A08C AE02000C */ sw $v0, 0xc($s0) +.LE010A090: +/* 3E4430 E010A090 08042824 */ j .LE010A090 +/* 3E4434 E010A094 00000000 */ nop +.LE010A098: +/* 3E4438 E010A098 AC920000 */ sw $s2, ($a0) +/* 3E443C E010A09C 1E200003 */ bgtz $s1, .LE010A0AC +/* 3E4440 E010A0A0 AC800020 */ sw $zero, 0x20($a0) +/* 3E4444 E010A0A4 0804282C */ j .LE010A0B0 +/* 3E4448 E010A0A8 240203E8 */ addiu $v0, $zero, 0x3e8 +.LE010A0AC: +/* 3E444C E010A0AC 26220020 */ addiu $v0, $s1, 0x20 +.LE010A0B0: +/* 3E4450 E010A0B0 AC82001C */ sw $v0, 0x1c($a0) +/* 3E4454 E010A0B4 240300FF */ addiu $v1, $zero, 0xff +/* 3E4458 E010A0B8 AC80004C */ sw $zero, 0x4c($a0) +/* 3E445C E010A0BC AC830030 */ sw $v1, 0x30($a0) +/* 3E4460 E010A0C0 E4940004 */ swc1 $f20, 4($a0) +/* 3E4464 E010A0C4 E4960008 */ swc1 $f22, 8($a0) +/* 3E4468 E010A0C8 E498000C */ swc1 $f24, 0xc($a0) +/* 3E446C E010A0CC AC800044 */ sw $zero, 0x44($a0) +/* 3E4470 E010A0D0 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3E4474 E010A0D4 3C01447A */ lui $at, 0x447a +/* 3E4478 E010A0D8 44811000 */ mtc1 $at, $f2 +/* 3E447C E010A0DC E4800010 */ swc1 $f0, 0x10($a0) +/* 3E4480 E010A0E0 C7A00064 */ lwc1 $f0, 0x64($sp) +/* 3E4484 E010A0E4 0000302D */ daddu $a2, $zero, $zero +/* 3E4488 E010A0E8 E4800014 */ swc1 $f0, 0x14($a0) +/* 3E448C E010A0EC C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3E4490 E010A0F0 0080282D */ daddu $a1, $a0, $zero +/* 3E4494 E010A0F4 E4800018 */ swc1 $f0, 0x18($a0) +/* 3E4498 E010A0F8 C7A0006C */ lwc1 $f0, 0x6c($sp) +/* 3E449C E010A0FC 24020064 */ addiu $v0, $zero, 0x64 +/* 3E44A0 E010A100 AC82002C */ sw $v0, 0x2c($a0) +/* 3E44A4 E010A104 AC820038 */ sw $v0, 0x38($a0) +/* 3E44A8 E010A108 24020096 */ addiu $v0, $zero, 0x96 +/* 3E44AC E010A10C AC830024 */ sw $v1, 0x24($a0) +/* 3E44B0 E010A110 AC830028 */ sw $v1, 0x28($a0) +/* 3E44B4 E010A114 AC830034 */ sw $v1, 0x34($a0) +/* 3E44B8 E010A118 AC82003C */ sw $v0, 0x3c($a0) +/* 3E44BC E010A11C AC830040 */ sw $v1, 0x40($a0) +/* 3E44C0 E010A120 E4800048 */ swc1 $f0, 0x48($a0) +.LE010A124: +/* 3E44C4 E010A124 C4800004 */ lwc1 $f0, 4($a0) +/* 3E44C8 E010A128 E4A00050 */ swc1 $f0, 0x50($a1) +/* 3E44CC E010A12C C4800008 */ lwc1 $f0, 8($a0) +/* 3E44D0 E010A130 46020001 */ sub.s $f0, $f0, $f2 +/* 3E44D4 E010A134 24C60001 */ addiu $a2, $a2, 1 +/* 3E44D8 E010A138 E4A00060 */ swc1 $f0, 0x60($a1) +/* 3E44DC E010A13C C480000C */ lwc1 $f0, 0xc($a0) +/* 3E44E0 E010A140 28C20004 */ slti $v0, $a2, 4 +/* 3E44E4 E010A144 ACA00080 */ sw $zero, 0x80($a1) +/* 3E44E8 E010A148 ACA00090 */ sw $zero, 0x90($a1) +/* 3E44EC E010A14C ACA000A0 */ sw $zero, 0xa0($a1) +/* 3E44F0 E010A150 E4A00070 */ swc1 $f0, 0x70($a1) +/* 3E44F4 E010A154 1440FFF3 */ bnez $v0, .LE010A124 +/* 3E44F8 E010A158 24A50004 */ addiu $a1, $a1, 4 +/* 3E44FC E010A15C 0200102D */ daddu $v0, $s0, $zero +/* 3E4500 E010A160 8FBF0034 */ lw $ra, 0x34($sp) +/* 3E4504 E010A164 8FB20030 */ lw $s2, 0x30($sp) +/* 3E4508 E010A168 8FB1002C */ lw $s1, 0x2c($sp) +/* 3E450C E010A16C 8FB00028 */ lw $s0, 0x28($sp) +/* 3E4510 E010A170 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3E4514 E010A174 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3E4518 E010A178 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3E451C E010A17C 03E00008 */ jr $ra +/* 3E4520 E010A180 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3E43A0/func_E010A184.s b/asm/nonmatchings/code_3E43A0/func_E010A184.s new file mode 100644 index 0000000000..80ad7d21bd --- /dev/null +++ b/asm/nonmatchings/code_3E43A0/func_E010A184.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010A184 +/* 3E4524 E010A184 03E00008 */ jr $ra +/* 3E4528 E010A188 00000000 */ nop diff --git a/asm/nonmatchings/code_3E43A0/func_E010A18C.s b/asm/nonmatchings/code_3E43A0/func_E010A18C.s new file mode 100644 index 0000000000..3f7ff26a77 --- /dev/null +++ b/asm/nonmatchings/code_3E43A0/func_E010A18C.s @@ -0,0 +1,209 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010A18C +/* 3E452C E010A18C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3E4530 E010A190 AFBF001C */ sw $ra, 0x1c($sp) +/* 3E4534 E010A194 AFB20018 */ sw $s2, 0x18($sp) +/* 3E4538 E010A198 AFB10014 */ sw $s1, 0x14($sp) +/* 3E453C E010A19C AFB00010 */ sw $s0, 0x10($sp) +/* 3E4540 E010A1A0 F7B40020 */ sdc1 $f20, 0x20($sp) +/* 3E4544 E010A1A4 8C830000 */ lw $v1, ($a0) +/* 3E4548 E010A1A8 8C91000C */ lw $s1, 0xc($a0) +/* 3E454C E010A1AC 30620010 */ andi $v0, $v1, 0x10 +/* 3E4550 E010A1B0 10400005 */ beqz $v0, .LE010A1C8 +/* 3E4554 E010A1B4 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3E4558 E010A1B8 00621024 */ and $v0, $v1, $v0 +/* 3E455C E010A1BC AC820000 */ sw $v0, ($a0) +/* 3E4560 E010A1C0 24020010 */ addiu $v0, $zero, 0x10 +/* 3E4564 E010A1C4 AE22001C */ sw $v0, 0x1c($s1) +.LE010A1C8: +/* 3E4568 E010A1C8 8E23001C */ lw $v1, 0x1c($s1) +/* 3E456C E010A1CC 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3E4570 E010A1D0 10400002 */ beqz $v0, .LE010A1DC +/* 3E4574 E010A1D4 2462FFFF */ addiu $v0, $v1, -1 +/* 3E4578 E010A1D8 AE22001C */ sw $v0, 0x1c($s1) +.LE010A1DC: +/* 3E457C E010A1DC 8E220020 */ lw $v0, 0x20($s1) +/* 3E4580 E010A1E0 8E25001C */ lw $a1, 0x1c($s1) +/* 3E4584 E010A1E4 24420001 */ addiu $v0, $v0, 1 +/* 3E4588 E010A1E8 04A10005 */ bgez $a1, .LE010A200 +/* 3E458C E010A1EC AE220020 */ sw $v0, 0x20($s1) +/* 3E4590 E010A1F0 0C080128 */ jal func_E02004A0 +/* 3E4594 E010A1F4 00000000 */ nop +/* 3E4598 E010A1F8 08042921 */ j .LE010A484 +/* 3E459C E010A1FC 00000000 */ nop +.LE010A200: +/* 3E45A0 E010A200 0040902D */ daddu $s2, $v0, $zero +/* 3E45A4 E010A204 28A20020 */ slti $v0, $a1, 0x20 +/* 3E45A8 E010A208 10400002 */ beqz $v0, .LE010A214 +/* 3E45AC E010A20C 000510C0 */ sll $v0, $a1, 3 +/* 3E45B0 E010A210 AE220030 */ sw $v0, 0x30($s1) +.LE010A214: +/* 3E45B4 E010A214 8E23004C */ lw $v1, 0x4c($s1) +/* 3E45B8 E010A218 24020001 */ addiu $v0, $zero, 1 +/* 3E45BC E010A21C 1462002F */ bne $v1, $v0, .LE010A2DC +/* 3E45C0 E010A220 24020020 */ addiu $v0, $zero, 0x20 +/* 3E45C4 E010A224 C6260044 */ lwc1 $f6, 0x44($s1) +/* 3E45C8 E010A228 C6240048 */ lwc1 $f4, 0x48($s1) +/* 3E45CC E010A22C 46062101 */ sub.s $f4, $f4, $f6 +/* 3E45D0 E010A230 3C01E011 */ lui $at, %hi(D_E010AF90) +/* 3E45D4 E010A234 D420AF90 */ ldc1 $f0, %lo(D_E010AF90)($at) +/* 3E45D8 E010A238 46002121 */ cvt.d.s $f4, $f4 +/* 3E45DC E010A23C 46202102 */ mul.d $f4, $f4, $f0 +/* 3E45E0 E010A240 00000000 */ nop +/* 3E45E4 E010A244 3C013F73 */ lui $at, 0x3f73 +/* 3E45E8 E010A248 34213333 */ ori $at, $at, 0x3333 +/* 3E45EC E010A24C 44818000 */ mtc1 $at, $f16 +/* 3E45F0 E010A250 C62E0010 */ lwc1 $f14, 0x10($s1) +/* 3E45F4 E010A254 46107382 */ mul.s $f14, $f14, $f16 +/* 3E45F8 E010A258 00000000 */ nop +/* 3E45FC E010A25C C62C0018 */ lwc1 $f12, 0x18($s1) +/* 3E4600 E010A260 46106302 */ mul.s $f12, $f12, $f16 +/* 3E4604 E010A264 00000000 */ nop +/* 3E4608 E010A268 C62A0004 */ lwc1 $f10, 4($s1) +/* 3E460C E010A26C C6200010 */ lwc1 $f0, 0x10($s1) +/* 3E4610 E010A270 C6280008 */ lwc1 $f8, 8($s1) +/* 3E4614 E010A274 46005280 */ add.s $f10, $f10, $f0 +/* 3E4618 E010A278 C6200014 */ lwc1 $f0, 0x14($s1) +/* 3E461C E010A27C C622000C */ lwc1 $f2, 0xc($s1) +/* 3E4620 E010A280 46004200 */ add.s $f8, $f8, $f0 +/* 3E4624 E010A284 C6200018 */ lwc1 $f0, 0x18($s1) +/* 3E4628 E010A288 46001080 */ add.s $f2, $f2, $f0 +/* 3E462C E010A28C C6200014 */ lwc1 $f0, 0x14($s1) +/* 3E4630 E010A290 460031A1 */ cvt.d.s $f6, $f6 +/* 3E4634 E010A294 E62E0010 */ swc1 $f14, 0x10($s1) +/* 3E4638 E010A298 E62C0018 */ swc1 $f12, 0x18($s1) +/* 3E463C E010A29C 46100002 */ mul.s $f0, $f0, $f16 +/* 3E4640 E010A2A0 00000000 */ nop +/* 3E4644 E010A2A4 E62A0004 */ swc1 $f10, 4($s1) +/* 3E4648 E010A2A8 E6280008 */ swc1 $f8, 8($s1) +/* 3E464C E010A2AC E622000C */ swc1 $f2, 0xc($s1) +/* 3E4650 E010A2B0 3C01E011 */ lui $at, %hi(D_E010AF98) +/* 3E4654 E010A2B4 D422AF98 */ ldc1 $f2, %lo(D_E010AF98)($at) +/* 3E4658 E010A2B8 46243180 */ add.d $f6, $f6, $f4 +/* 3E465C E010A2BC E6200014 */ swc1 $f0, 0x14($s1) +/* 3E4660 E010A2C0 46000021 */ cvt.d.s $f0, $f0 +/* 3E4664 E010A2C4 46220001 */ sub.d $f0, $f0, $f2 +/* 3E4668 E010A2C8 462031A0 */ cvt.s.d $f6, $f6 +/* 3E466C E010A2CC E6260044 */ swc1 $f6, 0x44($s1) +/* 3E4670 E010A2D0 46200020 */ cvt.s.d $f0, $f0 +/* 3E4674 E010A2D4 08042921 */ j .LE010A484 +/* 3E4678 E010A2D8 E6200014 */ swc1 $f0, 0x14($s1) +.LE010A2DC: +/* 3E467C E010A2DC 00521023 */ subu $v0, $v0, $s2 +/* 3E4680 E010A2E0 4482A000 */ mtc1 $v0, $f20 +/* 3E4684 E010A2E4 00000000 */ nop +/* 3E4688 E010A2E8 4680A520 */ cvt.s.w $f20, $f20 +/* 3E468C E010A2EC 32440003 */ andi $a0, $s2, 3 +/* 3E4690 E010A2F0 00048080 */ sll $s0, $a0, 2 +/* 3E4694 E010A2F4 02308021 */ addu $s0, $s1, $s0 +/* 3E4698 E010A2F8 00121840 */ sll $v1, $s2, 1 +/* 3E469C E010A2FC C6200010 */ lwc1 $f0, 0x10($s1) +/* 3E46A0 E010A300 00721821 */ addu $v1, $v1, $s2 +/* 3E46A4 E010A304 46140002 */ mul.s $f0, $f0, $f20 +/* 3E46A8 E010A308 00000000 */ nop +/* 3E46AC E010A30C 00031100 */ sll $v0, $v1, 4 +/* 3E46B0 E010A310 00431023 */ subu $v0, $v0, $v1 +/* 3E46B4 E010A314 C6220004 */ lwc1 $f2, 4($s1) +/* 3E46B8 E010A318 00021040 */ sll $v0, $v0, 1 +/* 3E46BC E010A31C 46001081 */ sub.s $f2, $f2, $f0 +/* 3E46C0 E010A320 00021143 */ sra $v0, $v0, 5 +/* 3E46C4 E010A324 44826000 */ mtc1 $v0, $f12 +/* 3E46C8 E010A328 00000000 */ nop +/* 3E46CC E010A32C 46806320 */ cvt.s.w $f12, $f12 +/* 3E46D0 E010A330 0C080140 */ jal func_E0200500 +/* 3E46D4 E010A334 E6020050 */ swc1 $f2, 0x50($s0) +/* 3E46D8 E010A338 C6260014 */ lwc1 $f6, 0x14($s1) +/* 3E46DC E010A33C 46143182 */ mul.s $f6, $f6, $f20 +/* 3E46E0 E010A340 00000000 */ nop +/* 3E46E4 E010A344 3C0142A0 */ lui $at, 0x42a0 +/* 3E46E8 E010A348 44812000 */ mtc1 $at, $f4 +/* 3E46EC E010A34C 00000000 */ nop +/* 3E46F0 E010A350 46040002 */ mul.s $f0, $f0, $f4 +/* 3E46F4 E010A354 00000000 */ nop +/* 3E46F8 E010A358 C6220008 */ lwc1 $f2, 8($s1) +/* 3E46FC E010A35C 46061081 */ sub.s $f2, $f2, $f6 +/* 3E4700 E010A360 46002101 */ sub.s $f4, $f4, $f0 +/* 3E4704 E010A364 46041081 */ sub.s $f2, $f2, $f4 +/* 3E4708 E010A368 E6020060 */ swc1 $f2, 0x60($s0) +/* 3E470C E010A36C C6200018 */ lwc1 $f0, 0x18($s1) +/* 3E4710 E010A370 46140002 */ mul.s $f0, $f0, $f20 +/* 3E4714 E010A374 00000000 */ nop +/* 3E4718 E010A378 C622000C */ lwc1 $f2, 0xc($s1) +/* 3E471C E010A37C 46001081 */ sub.s $f2, $f2, $f0 +/* 3E4720 E010A380 2404000A */ addiu $a0, $zero, 0xa +/* 3E4724 E010A384 0C080138 */ jal func_E02004E0 +/* 3E4728 E010A388 E6020070 */ swc1 $f2, 0x70($s0) +/* 3E472C E010A38C 2442FFFB */ addiu $v0, $v0, -5 +/* 3E4730 E010A390 3C013DCC */ lui $at, 0x3dcc +/* 3E4734 E010A394 3421CCCD */ ori $at, $at, 0xcccd +/* 3E4738 E010A398 4481A000 */ mtc1 $at, $f20 +/* 3E473C E010A39C 44820000 */ mtc1 $v0, $f0 +/* 3E4740 E010A3A0 00000000 */ nop +/* 3E4744 E010A3A4 46800020 */ cvt.s.w $f0, $f0 +/* 3E4748 E010A3A8 46140002 */ mul.s $f0, $f0, $f20 +/* 3E474C E010A3AC 00000000 */ nop +/* 3E4750 E010A3B0 2404000A */ addiu $a0, $zero, 0xa +/* 3E4754 E010A3B4 0C080138 */ jal func_E02004E0 +/* 3E4758 E010A3B8 E6000080 */ swc1 $f0, 0x80($s0) +/* 3E475C E010A3BC 2442FFFB */ addiu $v0, $v0, -5 +/* 3E4760 E010A3C0 44820000 */ mtc1 $v0, $f0 +/* 3E4764 E010A3C4 00000000 */ nop +/* 3E4768 E010A3C8 46800020 */ cvt.s.w $f0, $f0 +/* 3E476C E010A3CC 46140002 */ mul.s $f0, $f0, $f20 +/* 3E4770 E010A3D0 00000000 */ nop +/* 3E4774 E010A3D4 2404000A */ addiu $a0, $zero, 0xa +/* 3E4778 E010A3D8 0C080138 */ jal func_E02004E0 +/* 3E477C E010A3DC E6000090 */ swc1 $f0, 0x90($s0) +/* 3E4780 E010A3E0 0000202D */ daddu $a0, $zero, $zero +/* 3E4784 E010A3E4 2442FFFB */ addiu $v0, $v0, -5 +/* 3E4788 E010A3E8 44820000 */ mtc1 $v0, $f0 +/* 3E478C E010A3EC 00000000 */ nop +/* 3E4790 E010A3F0 46800020 */ cvt.s.w $f0, $f0 +/* 3E4794 E010A3F4 46140002 */ mul.s $f0, $f0, $f20 +/* 3E4798 E010A3F8 00000000 */ nop +/* 3E479C E010A3FC 2A45001B */ slti $a1, $s2, 0x1b +/* 3E47A0 E010A400 3C01E011 */ lui $at, %hi(D_E010AFA0) +/* 3E47A4 E010A404 D42AAFA0 */ ldc1 $f10, %lo(D_E010AFA0)($at) +/* 3E47A8 E010A408 3C01C47A */ lui $at, 0xc47a +/* 3E47AC E010A40C 44816000 */ mtc1 $at, $f12 +/* 3E47B0 E010A410 0220182D */ daddu $v1, $s1, $zero +/* 3E47B4 E010A414 E60000A0 */ swc1 $f0, 0xa0($s0) +.LE010A418: +/* 3E47B8 E010A418 C4660050 */ lwc1 $f6, 0x50($v1) +/* 3E47BC E010A41C C4600080 */ lwc1 $f0, 0x80($v1) +/* 3E47C0 E010A420 C4640070 */ lwc1 $f4, 0x70($v1) +/* 3E47C4 E010A424 46003180 */ add.s $f6, $f6, $f0 +/* 3E47C8 E010A428 C46200A0 */ lwc1 $f2, 0xa0($v1) +/* 3E47CC E010A42C C4680060 */ lwc1 $f8, 0x60($v1) +/* 3E47D0 E010A430 46022100 */ add.s $f4, $f4, $f2 +/* 3E47D4 E010A434 C4600090 */ lwc1 $f0, 0x90($v1) +/* 3E47D8 E010A438 46004200 */ add.s $f8, $f8, $f0 +/* 3E47DC E010A43C 46000021 */ cvt.d.s $f0, $f0 +/* 3E47E0 E010A440 462A0001 */ sub.d $f0, $f0, $f10 +/* 3E47E4 E010A444 E4660050 */ swc1 $f6, 0x50($v1) +/* 3E47E8 E010A448 E4640070 */ swc1 $f4, 0x70($v1) +/* 3E47EC E010A44C 46200020 */ cvt.s.d $f0, $f0 +/* 3E47F0 E010A450 E4680060 */ swc1 $f8, 0x60($v1) +/* 3E47F4 E010A454 14A00002 */ bnez $a1, .LE010A460 +/* 3E47F8 E010A458 E4600090 */ swc1 $f0, 0x90($v1) +/* 3E47FC E010A45C E46C0060 */ swc1 $f12, 0x60($v1) +.LE010A460: +/* 3E4800 E010A460 24840001 */ addiu $a0, $a0, 1 +/* 3E4804 E010A464 28820004 */ slti $v0, $a0, 4 +/* 3E4808 E010A468 1440FFEB */ bnez $v0, .LE010A418 +/* 3E480C E010A46C 24630004 */ addiu $v1, $v1, 4 +/* 3E4810 E010A470 2A420020 */ slti $v0, $s2, 0x20 +/* 3E4814 E010A474 14400003 */ bnez $v0, .LE010A484 +/* 3E4818 E010A478 24020001 */ addiu $v0, $zero, 1 +/* 3E481C E010A47C AE22004C */ sw $v0, 0x4c($s1) +/* 3E4820 E010A480 AE220020 */ sw $v0, 0x20($s1) +.LE010A484: +/* 3E4824 E010A484 8FBF001C */ lw $ra, 0x1c($sp) +/* 3E4828 E010A488 8FB20018 */ lw $s2, 0x18($sp) +/* 3E482C E010A48C 8FB10014 */ lw $s1, 0x14($sp) +/* 3E4830 E010A490 8FB00010 */ lw $s0, 0x10($sp) +/* 3E4834 E010A494 D7B40020 */ ldc1 $f20, 0x20($sp) +/* 3E4838 E010A498 03E00008 */ jr $ra +/* 3E483C E010A49C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3E43A0/func_E010A4A0.s b/asm/nonmatchings/code_3E43A0/func_E010A4A0.s new file mode 100644 index 0000000000..64e7aaedaa --- /dev/null +++ b/asm/nonmatchings/code_3E43A0/func_E010A4A0.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010A4A0 +/* 3E4840 E010A4A0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3E4844 E010A4A4 3C02E011 */ lui $v0, %hi(D_E010A4E8) +/* 3E4848 E010A4A8 2442A4E8 */ addiu $v0, $v0, %lo(D_E010A4E8) +/* 3E484C E010A4AC AFA2001C */ sw $v0, 0x1c($sp) +/* 3E4850 E010A4B0 240202BC */ addiu $v0, $zero, 0x2bc +/* 3E4854 E010A4B4 AFA20014 */ sw $v0, 0x14($sp) +/* 3E4858 E010A4B8 24020001 */ addiu $v0, $zero, 1 +/* 3E485C E010A4BC AFA40018 */ sw $a0, 0x18($sp) +/* 3E4860 E010A4C0 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E4864 E010A4C4 AFBF0020 */ sw $ra, 0x20($sp) +/* 3E4868 E010A4C8 0C080120 */ jal func_E0200480 +/* 3E486C E010A4CC AFA20010 */ sw $v0, 0x10($sp) +/* 3E4870 E010A4D0 8C430000 */ lw $v1, ($v0) +/* 3E4874 E010A4D4 34630002 */ ori $v1, $v1, 2 +/* 3E4878 E010A4D8 AC430000 */ sw $v1, ($v0) +/* 3E487C E010A4DC 8FBF0020 */ lw $ra, 0x20($sp) +/* 3E4880 E010A4E0 03E00008 */ jr $ra +/* 3E4884 E010A4E4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3E43A0/func_E010A4E8.s b/asm/nonmatchings/code_3E43A0/func_E010A4E8.s new file mode 100644 index 0000000000..0147de3d76 --- /dev/null +++ b/asm/nonmatchings/code_3E43A0/func_E010A4E8.s @@ -0,0 +1,527 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010A4E8 +/* 3E4888 E010A4E8 27BDFF30 */ addiu $sp, $sp, -0xd0 +/* 3E488C E010A4EC AFB70094 */ sw $s7, 0x94($sp) +/* 3E4890 E010A4F0 0080B82D */ daddu $s7, $a0, $zero +/* 3E4894 E010A4F4 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3E4898 E010A4F8 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3E489C E010A4FC 3C04800B */ lui $a0, %hi(gCameras) +/* 3E48A0 E010A500 24841D80 */ addiu $a0, $a0, %lo(gCameras) +/* 3E48A4 E010A504 AFBF009C */ sw $ra, 0x9c($sp) +/* 3E48A8 E010A508 AFBE0098 */ sw $fp, 0x98($sp) +/* 3E48AC E010A50C AFB60090 */ sw $s6, 0x90($sp) +/* 3E48B0 E010A510 AFB5008C */ sw $s5, 0x8c($sp) +/* 3E48B4 E010A514 AFB40088 */ sw $s4, 0x88($sp) +/* 3E48B8 E010A518 AFB30084 */ sw $s3, 0x84($sp) +/* 3E48BC E010A51C AFB20080 */ sw $s2, 0x80($sp) +/* 3E48C0 E010A520 AFB1007C */ sw $s1, 0x7c($sp) +/* 3E48C4 E010A524 AFB00078 */ sw $s0, 0x78($sp) +/* 3E48C8 E010A528 F7BE00C8 */ sdc1 $f30, 0xc8($sp) +/* 3E48CC E010A52C F7BC00C0 */ sdc1 $f28, 0xc0($sp) +/* 3E48D0 E010A530 F7BA00B8 */ sdc1 $f26, 0xb8($sp) +/* 3E48D4 E010A534 F7B800B0 */ sdc1 $f24, 0xb0($sp) +/* 3E48D8 E010A538 F7B600A8 */ sdc1 $f22, 0xa8($sp) +/* 3E48DC E010A53C F7B400A0 */ sdc1 $f20, 0xa0($sp) +/* 3E48E0 E010A540 8EF1000C */ lw $s1, 0xc($s7) +/* 3E48E4 E010A544 00031080 */ sll $v0, $v1, 2 +/* 3E48E8 E010A548 00431021 */ addu $v0, $v0, $v1 +/* 3E48EC E010A54C 00021080 */ sll $v0, $v0, 2 +/* 3E48F0 E010A550 00431023 */ subu $v0, $v0, $v1 +/* 3E48F4 E010A554 000218C0 */ sll $v1, $v0, 3 +/* 3E48F8 E010A558 00431021 */ addu $v0, $v0, $v1 +/* 3E48FC E010A55C 000210C0 */ sll $v0, $v0, 3 +/* 3E4900 E010A560 00449021 */ addu $s2, $v0, $a0 +/* 3E4904 E010A564 C654006C */ lwc1 $f20, 0x6c($s2) +/* 3E4908 E010A568 8E330030 */ lw $s3, 0x30($s1) +/* 3E490C E010A56C 8E360000 */ lw $s6, ($s1) +/* 3E4910 E010A570 4600A507 */ neg.s $f20, $f20 +/* 3E4914 E010A574 0C080140 */ jal func_E0200500 +/* 3E4918 E010A578 4600A306 */ mov.s $f12, $f20 +/* 3E491C E010A57C 4600A306 */ mov.s $f12, $f20 +/* 3E4920 E010A580 0C080144 */ jal func_E0200510 +/* 3E4924 E010A584 E7A00058 */ swc1 $f0, 0x58($sp) +/* 3E4928 E010A588 3C148007 */ lui $s4, %hi(gGameStatusPtr) +/* 3E492C E010A58C 2694419C */ addiu $s4, $s4, %lo(gGameStatusPtr) +/* 3E4930 E010A590 E7A0005C */ swc1 $f0, 0x5c($sp) +/* 3E4934 E010A594 8E820000 */ lw $v0, ($s4) +/* 3E4938 E010A598 3C15E011 */ lui $s5, %hi(D_E010AF80) +/* 3E493C E010A59C 26B5AF80 */ addiu $s5, $s5, %lo(D_E010AF80) +/* 3E4940 E010A5A0 94430134 */ lhu $v1, 0x134($v0) +/* 3E4944 E010A5A4 8EA20000 */ lw $v0, ($s5) +/* 3E4948 E010A5A8 8E3E004C */ lw $fp, 0x4c($s1) +/* 3E494C E010A5AC 10430013 */ beq $v0, $v1, .LE010A5FC +/* 3E4950 E010A5B0 2404000A */ addiu $a0, $zero, 0xa +/* 3E4954 E010A5B4 3C10E011 */ lui $s0, %hi(D_E010AF84) +/* 3E4958 E010A5B8 2610AF84 */ addiu $s0, $s0, %lo(D_E010AF84) +/* 3E495C E010A5BC 3C01E011 */ lui $at, %hi(D_E010AFA8) +/* 3E4960 E010A5C0 D422AFA8 */ ldc1 $f2, %lo(D_E010AFA8)($at) +/* 3E4964 E010A5C4 C6000000 */ lwc1 $f0, ($s0) +/* 3E4968 E010A5C8 46800021 */ cvt.d.w $f0, $f0 +/* 3E496C E010A5CC 46220002 */ mul.d $f0, $f0, $f2 +/* 3E4970 E010A5D0 00000000 */ nop +/* 3E4974 E010A5D4 0080282D */ daddu $a1, $a0, $zero +/* 3E4978 E010A5D8 24060136 */ addiu $a2, $zero, 0x136 +/* 3E497C E010A5DC 240700E6 */ addiu $a3, $zero, 0xe6 +/* 3E4980 E010A5E0 46200020 */ cvt.s.d $f0, $f0 +/* 3E4984 E010A5E4 0C08018C */ jal func_E0200630 +/* 3E4988 E010A5E8 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3E498C E010A5EC 8E820000 */ lw $v0, ($s4) +/* 3E4990 E010A5F0 94420134 */ lhu $v0, 0x134($v0) +/* 3E4994 E010A5F4 AE000000 */ sw $zero, ($s0) +/* 3E4998 E010A5F8 AEA20000 */ sw $v0, ($s5) +.LE010A5FC: +/* 3E499C E010A5FC 3C03E011 */ lui $v1, %hi(D_E010AF84) +/* 3E49A0 E010A600 2463AF84 */ addiu $v1, $v1, %lo(D_E010AF84) +/* 3E49A4 E010A604 8C620000 */ lw $v0, ($v1) +/* 3E49A8 E010A608 0053102A */ slt $v0, $v0, $s3 +/* 3E49AC E010A60C 54400001 */ bnel $v0, $zero, .LE010A614 +/* 3E49B0 E010A610 AC730000 */ sw $s3, ($v1) +.LE010A614: +/* 3E49B4 E010A614 3C04DB06 */ lui $a0, 0xdb06 +/* 3E49B8 E010A618 3C07800A */ lui $a3, %hi(D_8009A66C) +/* 3E49BC E010A61C 24E7A66C */ addiu $a3, $a3, %lo(D_8009A66C) +/* 3E49C0 E010A620 34840024 */ ori $a0, $a0, 0x24 +/* 3E49C4 E010A624 8CE50000 */ lw $a1, ($a3) +/* 3E49C8 E010A628 3C02E700 */ lui $v0, 0xe700 +/* 3E49CC E010A62C 00A0182D */ daddu $v1, $a1, $zero +/* 3E49D0 E010A630 24A50008 */ addiu $a1, $a1, 8 +/* 3E49D4 E010A634 ACE50000 */ sw $a1, ($a3) +/* 3E49D8 E010A638 AC620000 */ sw $v0, ($v1) +/* 3E49DC E010A63C AC600004 */ sw $zero, 4($v1) +/* 3E49E0 E010A640 ACA40000 */ sw $a0, ($a1) +/* 3E49E4 E010A644 8EE30010 */ lw $v1, 0x10($s7) +/* 3E49E8 E010A648 24A20008 */ addiu $v0, $a1, 8 +/* 3E49EC E010A64C ACE20000 */ sw $v0, ($a3) +/* 3E49F0 E010A650 8C62001C */ lw $v0, 0x1c($v1) +/* 3E49F4 E010A654 3C038000 */ lui $v1, 0x8000 +/* 3E49F8 E010A658 00431021 */ addu $v0, $v0, $v1 +/* 3E49FC E010A65C ACA20004 */ sw $v0, 4($a1) +/* 3E4A00 E010A660 C64E00D4 */ lwc1 $f14, 0xd4($s2) +/* 3E4A04 E010A664 E7AE0018 */ swc1 $f14, 0x18($sp) +/* 3E4A08 E010A668 C64E00D8 */ lwc1 $f14, 0xd8($s2) +/* 3E4A0C E010A66C E7AE001C */ swc1 $f14, 0x1c($sp) +/* 3E4A10 E010A670 C64E00DC */ lwc1 $f14, 0xdc($s2) +/* 3E4A14 E010A674 E7AE0020 */ swc1 $f14, 0x20($sp) +/* 3E4A18 E010A678 C64E00E0 */ lwc1 $f14, 0xe0($s2) +/* 3E4A1C E010A67C E7AE0024 */ swc1 $f14, 0x24($sp) +/* 3E4A20 E010A680 C64E00E4 */ lwc1 $f14, 0xe4($s2) +/* 3E4A24 E010A684 E7AE0028 */ swc1 $f14, 0x28($sp) +/* 3E4A28 E010A688 C64E00E8 */ lwc1 $f14, 0xe8($s2) +/* 3E4A2C E010A68C E7AE002C */ swc1 $f14, 0x2c($sp) +/* 3E4A30 E010A690 C64E00EC */ lwc1 $f14, 0xec($s2) +/* 3E4A34 E010A694 E7AE0030 */ swc1 $f14, 0x30($sp) +/* 3E4A38 E010A698 C64E00F0 */ lwc1 $f14, 0xf0($s2) +/* 3E4A3C E010A69C E7AE0034 */ swc1 $f14, 0x34($sp) +/* 3E4A40 E010A6A0 C64E00F4 */ lwc1 $f14, 0xf4($s2) +/* 3E4A44 E010A6A4 E7AE0038 */ swc1 $f14, 0x38($sp) +/* 3E4A48 E010A6A8 C64E00F8 */ lwc1 $f14, 0xf8($s2) +/* 3E4A4C E010A6AC E7AE003C */ swc1 $f14, 0x3c($sp) +/* 3E4A50 E010A6B0 C64E00FC */ lwc1 $f14, 0xfc($s2) +/* 3E4A54 E010A6B4 E7AE0040 */ swc1 $f14, 0x40($sp) +/* 3E4A58 E010A6B8 C64E0100 */ lwc1 $f14, 0x100($s2) +/* 3E4A5C E010A6BC E7AE0044 */ swc1 $f14, 0x44($sp) +/* 3E4A60 E010A6C0 C64E0104 */ lwc1 $f14, 0x104($s2) +/* 3E4A64 E010A6C4 E7AE0048 */ swc1 $f14, 0x48($sp) +/* 3E4A68 E010A6C8 C64E0108 */ lwc1 $f14, 0x108($s2) +/* 3E4A6C E010A6CC E7AE004C */ swc1 $f14, 0x4c($sp) +/* 3E4A70 E010A6D0 C64E010C */ lwc1 $f14, 0x10c($s2) +/* 3E4A74 E010A6D4 E7AE0050 */ swc1 $f14, 0x50($sp) +/* 3E4A78 E010A6D8 C64E0110 */ lwc1 $f14, 0x110($s2) +/* 3E4A7C E010A6DC 3C02DE00 */ lui $v0, 0xde00 +/* 3E4A80 E010A6E0 E7AE0054 */ swc1 $f14, 0x54($sp) +/* 3E4A84 E010A6E4 ACA20008 */ sw $v0, 8($a1) +/* 3E4A88 E010A6E8 00161080 */ sll $v0, $s6, 2 +/* 3E4A8C E010A6EC 3C03E011 */ lui $v1, %hi(D_E010ACCC) +/* 3E4A90 E010A6F0 00621821 */ addu $v1, $v1, $v0 +/* 3E4A94 E010A6F4 8C63ACCC */ lw $v1, %lo(D_E010ACCC)($v1) +/* 3E4A98 E010A6F8 24A20010 */ addiu $v0, $a1, 0x10 +/* 3E4A9C E010A6FC ACE20000 */ sw $v0, ($a3) +/* 3E4AA0 E010A700 ACA3000C */ sw $v1, 0xc($a1) +/* 3E4AA4 E010A704 C62E0004 */ lwc1 $f14, 4($s1) +/* 3E4AA8 E010A708 E7AE0060 */ swc1 $f14, 0x60($sp) +/* 3E4AAC E010A70C C62E0008 */ lwc1 $f14, 8($s1) +/* 3E4AB0 E010A710 E7AE0064 */ swc1 $f14, 0x64($sp) +/* 3E4AB4 E010A714 C62E000C */ lwc1 $f14, 0xc($s1) +/* 3E4AB8 E010A718 E7AE0068 */ swc1 $f14, 0x68($sp) +/* 3E4ABC E010A71C C63E0044 */ lwc1 $f30, 0x44($s1) +/* 3E4AC0 E010A720 24A20018 */ addiu $v0, $a1, 0x18 +/* 3E4AC4 E010A724 ACE20000 */ sw $v0, ($a3) +/* 3E4AC8 E010A728 3C02FA00 */ lui $v0, 0xfa00 +/* 3E4ACC E010A72C ACA20010 */ sw $v0, 0x10($a1) +/* 3E4AD0 E010A730 92220027 */ lbu $v0, 0x27($s1) +/* 3E4AD4 E010A734 9224002B */ lbu $a0, 0x2b($s1) +/* 3E4AD8 E010A738 9226002F */ lbu $a2, 0x2f($s1) +/* 3E4ADC E010A73C 24A30020 */ addiu $v1, $a1, 0x20 +/* 3E4AE0 E010A740 ACE30000 */ sw $v1, ($a3) +/* 3E4AE4 E010A744 3C03FB00 */ lui $v1, 0xfb00 +/* 3E4AE8 E010A748 ACA30018 */ sw $v1, 0x18($a1) +/* 3E4AEC E010A74C 326300FF */ andi $v1, $s3, 0xff +/* 3E4AF0 E010A750 00021600 */ sll $v0, $v0, 0x18 +/* 3E4AF4 E010A754 00042400 */ sll $a0, $a0, 0x10 +/* 3E4AF8 E010A758 00441025 */ or $v0, $v0, $a0 +/* 3E4AFC E010A75C 00063200 */ sll $a2, $a2, 8 +/* 3E4B00 E010A760 00461025 */ or $v0, $v0, $a2 +/* 3E4B04 E010A764 00431025 */ or $v0, $v0, $v1 +/* 3E4B08 E010A768 ACA20014 */ sw $v0, 0x14($a1) +/* 3E4B0C E010A76C 92220027 */ lbu $v0, 0x27($s1) +/* 3E4B10 E010A770 9224002B */ lbu $a0, 0x2b($s1) +/* 3E4B14 E010A774 9223002F */ lbu $v1, 0x2f($s1) +/* 3E4B18 E010A778 00021600 */ sll $v0, $v0, 0x18 +/* 3E4B1C E010A77C 00042400 */ sll $a0, $a0, 0x10 +/* 3E4B20 E010A780 00441025 */ or $v0, $v0, $a0 +/* 3E4B24 E010A784 00031A00 */ sll $v1, $v1, 8 +/* 3E4B28 E010A788 00431025 */ or $v0, $v0, $v1 +/* 3E4B2C E010A78C ACA2001C */ sw $v0, 0x1c($a1) +/* 3E4B30 E010A790 24020001 */ addiu $v0, $zero, 1 +/* 3E4B34 E010A794 17C20009 */ bne $fp, $v0, .LE010A7BC +/* 3E4B38 E010A798 0000A02D */ daddu $s4, $zero, $zero +/* 3E4B3C E010A79C 3C03E011 */ lui $v1, %hi(D_E010AF68) +/* 3E4B40 E010A7A0 2463AF68 */ addiu $v1, $v1, %lo(D_E010AF68) +/* 3E4B44 E010A7A4 001610C0 */ sll $v0, $s6, 3 +/* 3E4B48 E010A7A8 00431021 */ addu $v0, $v0, $v1 +/* 3E4B4C E010A7AC 8C540000 */ lw $s4, ($v0) +/* 3E4B50 E010A7B0 8C570004 */ lw $s7, 4($v0) +/* 3E4B54 E010A7B4 080429F1 */ j .LE010A7C4 +/* 3E4B58 E010A7B8 0000A82D */ daddu $s5, $zero, $zero +.LE010A7BC: +/* 3E4B5C E010A7BC 24170004 */ addiu $s7, $zero, 4 +/* 3E4B60 E010A7C0 0000A82D */ daddu $s5, $zero, $zero +.LE010A7C4: +/* 3E4B64 E010A7C4 1AE00129 */ blez $s7, .LE010AC6C +/* 3E4B68 E010A7C8 26930001 */ addiu $s3, $s4, 1 +/* 3E4B6C E010A7CC 3C16800A */ lui $s6, %hi(D_8009A66C) +/* 3E4B70 E010A7D0 26D6A66C */ addiu $s6, $s6, %lo(D_8009A66C) +/* 3E4B74 E010A7D4 0220802D */ daddu $s0, $s1, $zero +/* 3E4B78 E010A7D8 3C013F80 */ lui $at, 0x3f80 +/* 3E4B7C E010A7DC 4481E000 */ mtc1 $at, $f28 +.LE010A7E0: +/* 3E4B80 E010A7E0 24020001 */ addiu $v0, $zero, 1 +/* 3E4B84 E010A7E4 17C20030 */ bne $fp, $v0, .LE010A8A8 +/* 3E4B88 E010A7E8 00000000 */ nop +/* 3E4B8C E010A7EC 0C080138 */ jal func_E02004E0 +/* 3E4B90 E010A7F0 24040010 */ addiu $a0, $zero, 0x10 +/* 3E4B94 E010A7F4 28420006 */ slti $v0, $v0, 6 +/* 3E4B98 E010A7F8 54400117 */ bnel $v0, $zero, .LE010AC58 +/* 3E4B9C E010A7FC 26100004 */ addiu $s0, $s0, 4 +/* 3E4BA0 E010A800 82830000 */ lb $v1, ($s4) +/* 3E4BA4 E010A804 C7AE005C */ lwc1 $f14, 0x5c($sp) +/* 3E4BA8 E010A808 44832000 */ mtc1 $v1, $f4 +/* 3E4BAC E010A80C 00000000 */ nop +/* 3E4BB0 E010A810 46802120 */ cvt.s.w $f4, $f4 +/* 3E4BB4 E010A814 460E2102 */ mul.s $f4, $f4, $f14 +/* 3E4BB8 E010A818 00000000 */ nop +/* 3E4BBC E010A81C 82620001 */ lb $v0, 1($s3) +/* 3E4BC0 E010A820 C7AE0058 */ lwc1 $f14, 0x58($sp) +/* 3E4BC4 E010A824 44823000 */ mtc1 $v0, $f6 +/* 3E4BC8 E010A828 00000000 */ nop +/* 3E4BCC E010A82C 468031A0 */ cvt.s.w $f6, $f6 +/* 3E4BD0 E010A830 460E3002 */ mul.s $f0, $f6, $f14 +/* 3E4BD4 E010A834 00000000 */ nop +/* 3E4BD8 E010A838 82620000 */ lb $v0, ($s3) +/* 3E4BDC E010A83C 44821000 */ mtc1 $v0, $f2 +/* 3E4BE0 E010A840 00000000 */ nop +/* 3E4BE4 E010A844 468010A0 */ cvt.s.w $f2, $f2 +/* 3E4BE8 E010A848 461E1082 */ mul.s $f2, $f2, $f30 +/* 3E4BEC E010A84C 00000000 */ nop +/* 3E4BF0 E010A850 46002100 */ add.s $f4, $f4, $f0 +/* 3E4BF4 E010A854 00031823 */ negu $v1, $v1 +/* 3E4BF8 E010A858 44830000 */ mtc1 $v1, $f0 +/* 3E4BFC E010A85C 00000000 */ nop +/* 3E4C00 E010A860 46800020 */ cvt.s.w $f0, $f0 +/* 3E4C04 E010A864 460E0002 */ mul.s $f0, $f0, $f14 +/* 3E4C08 E010A868 00000000 */ nop +/* 3E4C0C E010A86C C7AE005C */ lwc1 $f14, 0x5c($sp) +/* 3E4C10 E010A870 460E3182 */ mul.s $f6, $f6, $f14 +/* 3E4C14 E010A874 00000000 */ nop +/* 3E4C18 E010A878 461E2102 */ mul.s $f4, $f4, $f30 +/* 3E4C1C E010A87C 00000000 */ nop +/* 3E4C20 E010A880 46060000 */ add.s $f0, $f0, $f6 +/* 3E4C24 E010A884 461E0002 */ mul.s $f0, $f0, $f30 +/* 3E4C28 E010A888 00000000 */ nop +/* 3E4C2C E010A88C C7AE0064 */ lwc1 $f14, 0x64($sp) +/* 3E4C30 E010A890 460E1680 */ add.s $f26, $f2, $f14 +/* 3E4C34 E010A894 C7AE0060 */ lwc1 $f14, 0x60($sp) +/* 3E4C38 E010A898 460E2600 */ add.s $f24, $f4, $f14 +/* 3E4C3C E010A89C C7AE0068 */ lwc1 $f14, 0x68($sp) +/* 3E4C40 E010A8A0 08042A2D */ j .LE010A8B4 +/* 3E4C44 E010A8A4 460E0100 */ add.s $f4, $f0, $f14 +.LE010A8A8: +/* 3E4C48 E010A8A8 C6180050 */ lwc1 $f24, 0x50($s0) +/* 3E4C4C E010A8AC C61A0060 */ lwc1 $f26, 0x60($s0) +/* 3E4C50 E010A8B0 C6040070 */ lwc1 $f4, 0x70($s0) +.LE010A8B4: +/* 3E4C54 E010A8B4 C7AE0018 */ lwc1 $f14, 0x18($sp) +/* 3E4C58 E010A8B8 46187182 */ mul.s $f6, $f14, $f24 +/* 3E4C5C E010A8BC 00000000 */ nop +/* 3E4C60 E010A8C0 C7AE0028 */ lwc1 $f14, 0x28($sp) +/* 3E4C64 E010A8C4 461A7402 */ mul.s $f16, $f14, $f26 +/* 3E4C68 E010A8C8 00000000 */ nop +/* 3E4C6C E010A8CC C7AE0038 */ lwc1 $f14, 0x38($sp) +/* 3E4C70 E010A8D0 46047482 */ mul.s $f18, $f14, $f4 +/* 3E4C74 E010A8D4 00000000 */ nop +/* 3E4C78 E010A8D8 C7AE001C */ lwc1 $f14, 0x1c($sp) +/* 3E4C7C E010A8DC 46187202 */ mul.s $f8, $f14, $f24 +/* 3E4C80 E010A8E0 00000000 */ nop +/* 3E4C84 E010A8E4 C7AE002C */ lwc1 $f14, 0x2c($sp) +/* 3E4C88 E010A8E8 461A7302 */ mul.s $f12, $f14, $f26 +/* 3E4C8C E010A8EC 00000000 */ nop +/* 3E4C90 E010A8F0 C7AE003C */ lwc1 $f14, 0x3c($sp) +/* 3E4C94 E010A8F4 46047502 */ mul.s $f20, $f14, $f4 +/* 3E4C98 E010A8F8 00000000 */ nop +/* 3E4C9C E010A8FC C7AE0020 */ lwc1 $f14, 0x20($sp) +/* 3E4CA0 E010A900 46187282 */ mul.s $f10, $f14, $f24 +/* 3E4CA4 E010A904 00000000 */ nop +/* 3E4CA8 E010A908 C7AE0030 */ lwc1 $f14, 0x30($sp) +/* 3E4CAC E010A90C 461A7382 */ mul.s $f14, $f14, $f26 +/* 3E4CB0 E010A910 00000000 */ nop +/* 3E4CB4 E010A914 E7AE0070 */ swc1 $f14, 0x70($sp) +/* 3E4CB8 E010A918 C7AE0040 */ lwc1 $f14, 0x40($sp) +/* 3E4CBC E010A91C 46047582 */ mul.s $f22, $f14, $f4 +/* 3E4CC0 E010A920 00000000 */ nop +/* 3E4CC4 E010A924 C7AE0024 */ lwc1 $f14, 0x24($sp) +/* 3E4CC8 E010A928 46187002 */ mul.s $f0, $f14, $f24 +/* 3E4CCC E010A92C 00000000 */ nop +/* 3E4CD0 E010A930 C7AE0034 */ lwc1 $f14, 0x34($sp) +/* 3E4CD4 E010A934 461A7082 */ mul.s $f2, $f14, $f26 +/* 3E4CD8 E010A938 00000000 */ nop +/* 3E4CDC E010A93C C7AE0044 */ lwc1 $f14, 0x44($sp) +/* 3E4CE0 E010A940 46047102 */ mul.s $f4, $f14, $f4 +/* 3E4CE4 E010A944 00000000 */ nop +/* 3E4CE8 E010A948 46103180 */ add.s $f6, $f6, $f16 +/* 3E4CEC E010A94C 46123180 */ add.s $f6, $f6, $f18 +/* 3E4CF0 E010A950 460C4200 */ add.s $f8, $f8, $f12 +/* 3E4CF4 E010A954 46144200 */ add.s $f8, $f8, $f20 +/* 3E4CF8 E010A958 46020000 */ add.s $f0, $f0, $f2 +/* 3E4CFC E010A95C 46040000 */ add.s $f0, $f0, $f4 +/* 3E4D00 E010A960 C7AE0054 */ lwc1 $f14, 0x54($sp) +/* 3E4D04 E010A964 460E0080 */ add.s $f2, $f0, $f14 +/* 3E4D08 E010A968 C7AE0048 */ lwc1 $f14, 0x48($sp) +/* 3E4D0C E010A96C 460E3100 */ add.s $f4, $f6, $f14 +/* 3E4D10 E010A970 C7AE0070 */ lwc1 $f14, 0x70($sp) +/* 3E4D14 E010A974 460E5280 */ add.s $f10, $f10, $f14 +/* 3E4D18 E010A978 C7AE004C */ lwc1 $f14, 0x4c($sp) +/* 3E4D1C E010A97C 460E4200 */ add.s $f8, $f8, $f14 +/* 3E4D20 E010A980 46165280 */ add.s $f10, $f10, $f22 +/* 3E4D24 E010A984 44807000 */ mtc1 $zero, $f14 +/* 3E4D28 E010A988 00000000 */ nop +/* 3E4D2C E010A98C 460E1032 */ c.eq.s $f2, $f14 +/* 3E4D30 E010A990 C7AE0050 */ lwc1 $f14, 0x50($sp) +/* 3E4D34 E010A994 450100AF */ bc1t .LE010AC54 +/* 3E4D38 E010A998 460E5000 */ add.s $f0, $f10, $f14 +/* 3E4D3C E010A99C 4602E083 */ div.s $f2, $f28, $f2 +/* 3E4D40 E010A9A0 46022602 */ mul.s $f24, $f4, $f2 +/* 3E4D44 E010A9A4 00000000 */ nop +/* 3E4D48 E010A9A8 46020102 */ mul.s $f4, $f0, $f2 +/* 3E4D4C E010A9AC 00000000 */ nop +/* 3E4D50 E010A9B0 46004007 */ neg.s $f0, $f8 +/* 3E4D54 E010A9B4 46020682 */ mul.s $f26, $f0, $f2 +/* 3E4D58 E010A9B8 00000000 */ nop +/* 3E4D5C E010A9BC 3C01BF80 */ lui $at, 0xbf80 +/* 3E4D60 E010A9C0 44817000 */ mtc1 $at, $f14 +/* 3E4D64 E010A9C4 00000000 */ nop +/* 3E4D68 E010A9C8 460E203E */ c.le.s $f4, $f14 +/* 3E4D6C E010A9CC 00000000 */ nop +/* 3E4D70 E010A9D0 450300A1 */ bc1tl .LE010AC58 +/* 3E4D74 E010A9D4 26100004 */ addiu $s0, $s0, 4 +/* 3E4D78 E010A9D8 460EC03E */ c.le.s $f24, $f14 +/* 3E4D7C E010A9DC 00000000 */ nop +/* 3E4D80 E010A9E0 4503009D */ bc1tl .LE010AC58 +/* 3E4D84 E010A9E4 26100004 */ addiu $s0, $s0, 4 +/* 3E4D88 E010A9E8 4618E03E */ c.le.s $f28, $f24 +/* 3E4D8C E010A9EC 00000000 */ nop +/* 3E4D90 E010A9F0 45030099 */ bc1tl .LE010AC58 +/* 3E4D94 E010A9F4 26100004 */ addiu $s0, $s0, 4 +/* 3E4D98 E010A9F8 460ED03E */ c.le.s $f26, $f14 +/* 3E4D9C E010A9FC 00000000 */ nop +/* 3E4DA0 E010AA00 45030095 */ bc1tl .LE010AC58 +/* 3E4DA4 E010AA04 26100004 */ addiu $s0, $s0, 4 +/* 3E4DA8 E010AA08 461AE03E */ c.le.s $f28, $f26 +/* 3E4DAC E010AA0C 00000000 */ nop +/* 3E4DB0 E010AA10 45030091 */ bc1tl .LE010AC58 +/* 3E4DB4 E010AA14 26100004 */ addiu $s0, $s0, 4 +/* 3E4DB8 E010AA18 8642000A */ lh $v0, 0xa($s2) +/* 3E4DBC E010AA1C 461CC000 */ add.s $f0, $f24, $f28 +/* 3E4DC0 E010AA20 44821000 */ mtc1 $v0, $f2 +/* 3E4DC4 E010AA24 00000000 */ nop +/* 3E4DC8 E010AA28 468010A0 */ cvt.s.w $f2, $f2 +/* 3E4DCC E010AA2C 46020002 */ mul.s $f0, $f0, $f2 +/* 3E4DD0 E010AA30 00000000 */ nop +/* 3E4DD4 E010AA34 3C013FE0 */ lui $at, 0x3fe0 +/* 3E4DD8 E010AA38 44817800 */ mtc1 $at, $f15 +/* 3E4DDC E010AA3C 44807000 */ mtc1 $zero, $f14 +/* 3E4DE0 E010AA40 46000021 */ cvt.d.s $f0, $f0 +/* 3E4DE4 E010AA44 462E0002 */ mul.d $f0, $f0, $f14 +/* 3E4DE8 E010AA48 00000000 */ nop +/* 3E4DEC E010AA4C 8642000C */ lh $v0, 0xc($s2) +/* 3E4DF0 E010AA50 461CD080 */ add.s $f2, $f26, $f28 +/* 3E4DF4 E010AA54 44822000 */ mtc1 $v0, $f4 +/* 3E4DF8 E010AA58 00000000 */ nop +/* 3E4DFC E010AA5C 46802120 */ cvt.s.w $f4, $f4 +/* 3E4E00 E010AA60 46041082 */ mul.s $f2, $f2, $f4 +/* 3E4E04 E010AA64 00000000 */ nop +/* 3E4E08 E010AA68 460010A1 */ cvt.d.s $f2, $f2 +/* 3E4E0C E010AA6C 462E1082 */ mul.d $f2, $f2, $f14 +/* 3E4E10 E010AA70 00000000 */ nop +/* 3E4E14 E010AA74 8642000E */ lh $v0, 0xe($s2) +/* 3E4E18 E010AA78 46200620 */ cvt.s.d $f24, $f0 +/* 3E4E1C E010AA7C 44820000 */ mtc1 $v0, $f0 +/* 3E4E20 E010AA80 00000000 */ nop +/* 3E4E24 E010AA84 46800020 */ cvt.s.w $f0, $f0 +/* 3E4E28 E010AA88 4600C600 */ add.s $f24, $f24, $f0 +/* 3E4E2C E010AA8C 3C014080 */ lui $at, 0x4080 +/* 3E4E30 E010AA90 44812000 */ mtc1 $at, $f4 +/* 3E4E34 E010AA94 00000000 */ nop +/* 3E4E38 E010AA98 4604C602 */ mul.s $f24, $f24, $f4 +/* 3E4E3C E010AA9C 00000000 */ nop +/* 3E4E40 E010AAA0 86420010 */ lh $v0, 0x10($s2) +/* 3E4E44 E010AAA4 44820000 */ mtc1 $v0, $f0 +/* 3E4E48 E010AAA8 00000000 */ nop +/* 3E4E4C E010AAAC 46800020 */ cvt.s.w $f0, $f0 +/* 3E4E50 E010AAB0 462016A0 */ cvt.s.d $f26, $f2 +/* 3E4E54 E010AAB4 4600D680 */ add.s $f26, $f26, $f0 +/* 3E4E58 E010AAB8 3C014100 */ lui $at, 0x4100 +/* 3E4E5C E010AABC 44810000 */ mtc1 $at, $f0 +/* 3E4E60 E010AAC0 8EC40000 */ lw $a0, ($s6) +/* 3E4E64 E010AAC4 4600C000 */ add.s $f0, $f24, $f0 +/* 3E4E68 E010AAC8 24820008 */ addiu $v0, $a0, 8 +/* 3E4E6C E010AACC AEC20000 */ sw $v0, ($s6) +/* 3E4E70 E010AAD0 4604D682 */ mul.s $f26, $f26, $f4 +/* 3E4E74 E010AAD4 00000000 */ nop +/* 3E4E78 E010AAD8 4600038D */ trunc.w.s $f14, $f0 +/* 3E4E7C E010AADC 44027000 */ mfc1 $v0, $f14 +/* 3E4E80 E010AAE0 00000000 */ nop +/* 3E4E84 E010AAE4 00021400 */ sll $v0, $v0, 0x10 +/* 3E4E88 E010AAE8 00021403 */ sra $v0, $v0, 0x10 +/* 3E4E8C E010AAEC 18400005 */ blez $v0, .LE010AB04 +/* 3E4E90 E010AAF0 30420FFF */ andi $v0, $v0, 0xfff +/* 3E4E94 E010AAF4 00021300 */ sll $v0, $v0, 0xc +/* 3E4E98 E010AAF8 3C03E400 */ lui $v1, 0xe400 +/* 3E4E9C E010AAFC 08042AC2 */ j .LE010AB08 +/* 3E4EA0 E010AB00 00431825 */ or $v1, $v0, $v1 +.LE010AB04: +/* 3E4EA4 E010AB04 3C03E400 */ lui $v1, 0xe400 +.LE010AB08: +/* 3E4EA8 E010AB08 3C014100 */ lui $at, 0x4100 +/* 3E4EAC E010AB0C 44810000 */ mtc1 $at, $f0 +/* 3E4EB0 E010AB10 00000000 */ nop +/* 3E4EB4 E010AB14 4600D000 */ add.s $f0, $f26, $f0 +/* 3E4EB8 E010AB18 4600038D */ trunc.w.s $f14, $f0 +/* 3E4EBC E010AB1C 44027000 */ mfc1 $v0, $f14 +/* 3E4EC0 E010AB20 00000000 */ nop +/* 3E4EC4 E010AB24 00021400 */ sll $v0, $v0, 0x10 +/* 3E4EC8 E010AB28 00021403 */ sra $v0, $v0, 0x10 +/* 3E4ECC E010AB2C 18400004 */ blez $v0, .LE010AB40 +/* 3E4ED0 E010AB30 AC830000 */ sw $v1, ($a0) +/* 3E4ED4 E010AB34 30420FFF */ andi $v0, $v0, 0xfff +/* 3E4ED8 E010AB38 00621025 */ or $v0, $v1, $v0 +/* 3E4EDC E010AB3C AC820000 */ sw $v0, ($a0) +.LE010AB40: +/* 3E4EE0 E010AB40 4600C38D */ trunc.w.s $f14, $f24 +/* 3E4EE4 E010AB44 44027000 */ mfc1 $v0, $f14 +/* 3E4EE8 E010AB48 00000000 */ nop +/* 3E4EEC E010AB4C 00021400 */ sll $v0, $v0, 0x10 +/* 3E4EF0 E010AB50 00021403 */ sra $v0, $v0, 0x10 +/* 3E4EF4 E010AB54 18400004 */ blez $v0, .LE010AB68 +/* 3E4EF8 E010AB58 24840004 */ addiu $a0, $a0, 4 +/* 3E4EFC E010AB5C 30420FFF */ andi $v0, $v0, 0xfff +/* 3E4F00 E010AB60 08042ADB */ j .LE010AB6C +/* 3E4F04 E010AB64 00021B00 */ sll $v1, $v0, 0xc +.LE010AB68: +/* 3E4F08 E010AB68 0000182D */ daddu $v1, $zero, $zero +.LE010AB6C: +/* 3E4F0C E010AB6C 4600D38D */ trunc.w.s $f14, $f26 +/* 3E4F10 E010AB70 44027000 */ mfc1 $v0, $f14 +/* 3E4F14 E010AB74 00000000 */ nop +/* 3E4F18 E010AB78 00021400 */ sll $v0, $v0, 0x10 +/* 3E4F1C E010AB7C 00021403 */ sra $v0, $v0, 0x10 +/* 3E4F20 E010AB80 18400004 */ blez $v0, .LE010AB94 +/* 3E4F24 E010AB84 AC830000 */ sw $v1, ($a0) +/* 3E4F28 E010AB88 30420FFF */ andi $v0, $v0, 0xfff +/* 3E4F2C E010AB8C 00621025 */ or $v0, $v1, $v0 +/* 3E4F30 E010AB90 AC820000 */ sw $v0, ($a0) +.LE010AB94: +/* 3E4F34 E010AB94 8EC20000 */ lw $v0, ($s6) +/* 3E4F38 E010AB98 0040182D */ daddu $v1, $v0, $zero +/* 3E4F3C E010AB9C 24420008 */ addiu $v0, $v0, 8 +/* 3E4F40 E010ABA0 AEC20000 */ sw $v0, ($s6) +/* 3E4F44 E010ABA4 3C02E100 */ lui $v0, 0xe100 +/* 3E4F48 E010ABA8 AC620000 */ sw $v0, ($v1) +/* 3E4F4C E010ABAC 4600C38D */ trunc.w.s $f14, $f24 +/* 3E4F50 E010ABB0 44027000 */ mfc1 $v0, $f14 +/* 3E4F54 E010ABB4 00000000 */ nop +/* 3E4F58 E010ABB8 00021400 */ sll $v0, $v0, 0x10 +/* 3E4F5C E010ABBC 00021403 */ sra $v0, $v0, 0x10 +/* 3E4F60 E010ABC0 04410008 */ bgez $v0, .LE010ABE4 +/* 3E4F64 E010ABC4 24630004 */ addiu $v1, $v1, 4 +/* 3E4F68 E010ABC8 000221C0 */ sll $a0, $v0, 7 +/* 3E4F6C E010ABCC 5C800001 */ bgtzl $a0, .LE010ABD4 +/* 3E4F70 E010ABD0 0000202D */ daddu $a0, $zero, $zero +.LE010ABD4: +/* 3E4F74 E010ABD4 24020080 */ addiu $v0, $zero, 0x80 +/* 3E4F78 E010ABD8 00441023 */ subu $v0, $v0, $a0 +/* 3E4F7C E010ABDC 08042AFA */ j .LE010ABE8 +/* 3E4F80 E010ABE0 00022C00 */ sll $a1, $v0, 0x10 +.LE010ABE4: +/* 3E4F84 E010ABE4 3C050080 */ lui $a1, 0x80 +.LE010ABE8: +/* 3E4F88 E010ABE8 44807000 */ mtc1 $zero, $f14 +/* 3E4F8C E010ABEC 00000000 */ nop +/* 3E4F90 E010ABF0 460ED03C */ c.lt.s $f26, $f14 +/* 3E4F94 E010ABF4 00000000 */ nop +/* 3E4F98 E010ABF8 4500000C */ bc1f .LE010AC2C +/* 3E4F9C E010ABFC 34A20080 */ ori $v0, $a1, 0x80 +/* 3E4FA0 E010AC00 4600D38D */ trunc.w.s $f14, $f26 +/* 3E4FA4 E010AC04 44027000 */ mfc1 $v0, $f14 +/* 3E4FA8 E010AC08 00000000 */ nop +/* 3E4FAC E010AC0C 00021400 */ sll $v0, $v0, 0x10 +/* 3E4FB0 E010AC10 00022243 */ sra $a0, $v0, 9 +/* 3E4FB4 E010AC14 5C800001 */ bgtzl $a0, .LE010AC1C +/* 3E4FB8 E010AC18 0000202D */ daddu $a0, $zero, $zero +.LE010AC1C: +/* 3E4FBC E010AC1C 24020080 */ addiu $v0, $zero, 0x80 +/* 3E4FC0 E010AC20 00441023 */ subu $v0, $v0, $a0 +/* 3E4FC4 E010AC24 3042FFFF */ andi $v0, $v0, 0xffff +/* 3E4FC8 E010AC28 00A21025 */ or $v0, $a1, $v0 +.LE010AC2C: +/* 3E4FCC E010AC2C AC620000 */ sw $v0, ($v1) +/* 3E4FD0 E010AC30 3C044000 */ lui $a0, 0x4000 +/* 3E4FD4 E010AC34 8EC20000 */ lw $v0, ($s6) +/* 3E4FD8 E010AC38 34844000 */ ori $a0, $a0, 0x4000 +/* 3E4FDC E010AC3C 0040182D */ daddu $v1, $v0, $zero +/* 3E4FE0 E010AC40 24420008 */ addiu $v0, $v0, 8 +/* 3E4FE4 E010AC44 AEC20000 */ sw $v0, ($s6) +/* 3E4FE8 E010AC48 3C02F100 */ lui $v0, 0xf100 +/* 3E4FEC E010AC4C AC620000 */ sw $v0, ($v1) +/* 3E4FF0 E010AC50 AC640004 */ sw $a0, 4($v1) +.LE010AC54: +/* 3E4FF4 E010AC54 26100004 */ addiu $s0, $s0, 4 +.LE010AC58: +/* 3E4FF8 E010AC58 26B50001 */ addiu $s5, $s5, 1 +/* 3E4FFC E010AC5C 26730003 */ addiu $s3, $s3, 3 +/* 3E5000 E010AC60 02B7102A */ slt $v0, $s5, $s7 +/* 3E5004 E010AC64 1440FEDE */ bnez $v0, .LE010A7E0 +/* 3E5008 E010AC68 26940003 */ addiu $s4, $s4, 3 +.LE010AC6C: +/* 3E500C E010AC6C 8FBF009C */ lw $ra, 0x9c($sp) +/* 3E5010 E010AC70 8FBE0098 */ lw $fp, 0x98($sp) +/* 3E5014 E010AC74 8FB70094 */ lw $s7, 0x94($sp) +/* 3E5018 E010AC78 8FB60090 */ lw $s6, 0x90($sp) +/* 3E501C E010AC7C 8FB5008C */ lw $s5, 0x8c($sp) +/* 3E5020 E010AC80 8FB40088 */ lw $s4, 0x88($sp) +/* 3E5024 E010AC84 8FB30084 */ lw $s3, 0x84($sp) +/* 3E5028 E010AC88 8FB20080 */ lw $s2, 0x80($sp) +/* 3E502C E010AC8C 8FB1007C */ lw $s1, 0x7c($sp) +/* 3E5030 E010AC90 8FB00078 */ lw $s0, 0x78($sp) +/* 3E5034 E010AC94 D7BE00C8 */ ldc1 $f30, 0xc8($sp) +/* 3E5038 E010AC98 D7BC00C0 */ ldc1 $f28, 0xc0($sp) +/* 3E503C E010AC9C D7BA00B8 */ ldc1 $f26, 0xb8($sp) +/* 3E5040 E010ACA0 D7B800B0 */ ldc1 $f24, 0xb0($sp) +/* 3E5044 E010ACA4 D7B600A8 */ ldc1 $f22, 0xa8($sp) +/* 3E5048 E010ACA8 D7B400A0 */ ldc1 $f20, 0xa0($sp) +/* 3E504C E010ACAC 03E00008 */ jr $ra +/* 3E5050 E010ACB0 27BD00D0 */ addiu $sp, $sp, 0xd0 +/* 3E5054 E010ACB4 00000000 */ nop +/* 3E5058 E010ACB8 00000000 */ nop +/* 3E505C E010ACBC 00000000 */ nop diff --git a/asm/nonmatchings/code_3E54C0/func_E010C000.s b/asm/nonmatchings/code_3E54C0/func_E010C000.s new file mode 100644 index 0000000000..8b92f3cfb8 --- /dev/null +++ b/asm/nonmatchings/code_3E54C0/func_E010C000.s @@ -0,0 +1,111 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010C000 +/* 3E54C0 E010C000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 3E54C4 E010C004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 3E54C8 E010C008 4485A000 */ mtc1 $a1, $f20 +/* 3E54CC E010C00C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 3E54D0 E010C010 4486C000 */ mtc1 $a2, $f24 +/* 3E54D4 E010C014 AFB20030 */ sw $s2, 0x30($sp) +/* 3E54D8 E010C018 0080902D */ daddu $s2, $a0, $zero +/* 3E54DC E010C01C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 3E54E0 E010C020 4487B000 */ mtc1 $a3, $f22 +/* 3E54E4 E010C024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E54E8 E010C028 AFB1002C */ sw $s1, 0x2c($sp) +/* 3E54EC E010C02C 8FB10064 */ lw $s1, 0x64($sp) +/* 3E54F0 E010C030 3C02E011 */ lui $v0, %hi(D_E010C190) +/* 3E54F4 E010C034 2442C190 */ addiu $v0, $v0, %lo(D_E010C190) +/* 3E54F8 E010C038 AFA20018 */ sw $v0, 0x18($sp) +/* 3E54FC E010C03C 3C02E011 */ lui $v0, %hi(D_E010C198) +/* 3E5500 E010C040 2442C198 */ addiu $v0, $v0, %lo(D_E010C198) +/* 3E5504 E010C044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3E5508 E010C048 3C02E011 */ lui $v0, %hi(D_E010C354) +/* 3E550C E010C04C 2442C354 */ addiu $v0, $v0, %lo(D_E010C354) +/* 3E5510 E010C050 AFA20020 */ sw $v0, 0x20($sp) +/* 3E5514 E010C054 24020078 */ addiu $v0, $zero, 0x78 +/* 3E5518 E010C058 AFBF0034 */ sw $ra, 0x34($sp) +/* 3E551C E010C05C AFB00028 */ sw $s0, 0x28($sp) +/* 3E5520 E010C060 AFA00010 */ sw $zero, 0x10($sp) +/* 3E5524 E010C064 AFA00024 */ sw $zero, 0x24($sp) +/* 3E5528 E010C068 0C080124 */ jal func_E0200490 +/* 3E552C E010C06C AFA20014 */ sw $v0, 0x14($sp) +/* 3E5530 E010C070 2404013C */ addiu $a0, $zero, 0x13c +/* 3E5534 E010C074 24030001 */ addiu $v1, $zero, 1 +/* 3E5538 E010C078 0040802D */ daddu $s0, $v0, $zero +/* 3E553C E010C07C 0C08012C */ jal func_E02004B0 +/* 3E5540 E010C080 AE030008 */ sw $v1, 8($s0) +/* 3E5544 E010C084 0040202D */ daddu $a0, $v0, $zero +/* 3E5548 E010C088 14800003 */ bnez $a0, .LE010C098 +/* 3E554C E010C08C AE02000C */ sw $v0, 0xc($s0) +.LE010C090: +/* 3E5550 E010C090 08043024 */ j .LE010C090 +/* 3E5554 E010C094 00000000 */ nop +.LE010C098: +/* 3E5558 E010C098 AC920000 */ sw $s2, ($a0) +/* 3E555C E010C09C 1E200004 */ bgtz $s1, .LE010C0B0 +/* 3E5560 E010C0A0 AC800014 */ sw $zero, 0x14($a0) +/* 3E5564 E010C0A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3E5568 E010C0A8 0804302D */ j .LE010C0B4 +/* 3E556C E010C0AC AC820010 */ sw $v0, 0x10($a0) +.LE010C0B0: +/* 3E5570 E010C0B0 AC910010 */ sw $s1, 0x10($a0) +.LE010C0B4: +/* 3E5574 E010C0B4 0000282D */ daddu $a1, $zero, $zero +/* 3E5578 E010C0B8 240200E0 */ addiu $v0, $zero, 0xe0 +/* 3E557C E010C0BC AC820024 */ sw $v0, 0x24($a0) +/* 3E5580 E010C0C0 240200FF */ addiu $v0, $zero, 0xff +/* 3E5584 E010C0C4 E4940004 */ swc1 $f20, 4($a0) +/* 3E5588 E010C0C8 E4980008 */ swc1 $f24, 8($a0) +/* 3E558C E010C0CC E496000C */ swc1 $f22, 0xc($a0) +/* 3E5590 E010C0D0 AC82003C */ sw $v0, 0x3c($a0) +/* 3E5594 E010C0D4 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 3E5598 E010C0D8 3C0140A0 */ lui $at, 0x40a0 +/* 3E559C E010C0DC 44811000 */ mtc1 $at, $f2 +/* 3E55A0 E010C0E0 24070001 */ addiu $a3, $zero, 1 +/* 3E55A4 E010C0E4 E4800038 */ swc1 $f0, 0x38($a0) +/* 3E55A8 E010C0E8 3C0142A0 */ lui $at, 0x42a0 +/* 3E55AC E010C0EC 44810000 */ mtc1 $at, $f0 +/* 3E55B0 E010C0F0 2406005C */ addiu $a2, $zero, 0x5c +/* 3E55B4 E010C0F4 E4800048 */ swc1 $f0, 0x48($a0) +/* 3E55B8 E010C0F8 3C014248 */ lui $at, 0x4248 +/* 3E55BC E010C0FC 44810000 */ mtc1 $at, $f0 +/* 3E55C0 E010C100 24030078 */ addiu $v1, $zero, 0x78 +/* 3E55C4 E010C104 AC820018 */ sw $v0, 0x18($a0) +/* 3E55C8 E010C108 AC82001C */ sw $v0, 0x1c($a0) +/* 3E55CC E010C10C AC830020 */ sw $v1, 0x20($a0) +/* 3E55D0 E010C110 AC820028 */ sw $v0, 0x28($a0) +/* 3E55D4 E010C114 AC82002C */ sw $v0, 0x2c($a0) +/* 3E55D8 E010C118 AC820030 */ sw $v0, 0x30($a0) +/* 3E55DC E010C11C AC820034 */ sw $v0, 0x34($a0) +/* 3E55E0 E010C120 AC800044 */ sw $zero, 0x44($a0) +/* 3E55E4 E010C124 E494004C */ swc1 $f20, 0x4c($a0) +/* 3E55E8 E010C128 E4960054 */ swc1 $f22, 0x54($a0) +/* 3E55EC E010C12C 4600C100 */ add.s $f4, $f24, $f0 +/* 3E55F0 E010C130 E4820040 */ swc1 $f2, 0x40($a0) +/* 3E55F4 E010C134 E4800058 */ swc1 $f0, 0x58($a0) +/* 3E55F8 E010C138 E4840050 */ swc1 $f4, 0x50($a0) +.LE010C13C: +/* 3E55FC E010C13C 16400005 */ bnez $s2, .LE010C154 +/* 3E5600 E010C140 00861021 */ addu $v0, $a0, $a2 +/* 3E5604 E010C144 54A00004 */ bnel $a1, $zero, .LE010C158 +/* 3E5608 E010C148 AC470000 */ sw $a3, ($v0) +/* 3E560C E010C14C 08043056 */ j .LE010C158 +/* 3E5610 E010C150 AC400000 */ sw $zero, ($v0) +.LE010C154: +/* 3E5614 E010C154 AC470000 */ sw $a3, ($v0) +.LE010C158: +/* 3E5618 E010C158 24A50001 */ addiu $a1, $a1, 1 +/* 3E561C E010C15C 28A20008 */ slti $v0, $a1, 8 +/* 3E5620 E010C160 1440FFF6 */ bnez $v0, .LE010C13C +/* 3E5624 E010C164 24C6001C */ addiu $a2, $a2, 0x1c +/* 3E5628 E010C168 0200102D */ daddu $v0, $s0, $zero +/* 3E562C E010C16C 8FBF0034 */ lw $ra, 0x34($sp) +/* 3E5630 E010C170 8FB20030 */ lw $s2, 0x30($sp) +/* 3E5634 E010C174 8FB1002C */ lw $s1, 0x2c($sp) +/* 3E5638 E010C178 8FB00028 */ lw $s0, 0x28($sp) +/* 3E563C E010C17C D7B80048 */ ldc1 $f24, 0x48($sp) +/* 3E5640 E010C180 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 3E5644 E010C184 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 3E5648 E010C188 03E00008 */ jr $ra +/* 3E564C E010C18C 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_3E54C0/func_E010C190.s b/asm/nonmatchings/code_3E54C0/func_E010C190.s new file mode 100644 index 0000000000..42271748e5 --- /dev/null +++ b/asm/nonmatchings/code_3E54C0/func_E010C190.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010C190 +/* 3E5650 E010C190 03E00008 */ jr $ra +/* 3E5654 E010C194 00000000 */ nop diff --git a/asm/nonmatchings/code_3E54C0/func_E010C198.s b/asm/nonmatchings/code_3E54C0/func_E010C198.s new file mode 100644 index 0000000000..bdd50ed516 --- /dev/null +++ b/asm/nonmatchings/code_3E54C0/func_E010C198.s @@ -0,0 +1,123 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010C198 +/* 3E5658 E010C198 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 3E565C E010C19C AFBF0028 */ sw $ra, 0x28($sp) +/* 3E5660 E010C1A0 AFB50024 */ sw $s5, 0x24($sp) +/* 3E5664 E010C1A4 AFB40020 */ sw $s4, 0x20($sp) +/* 3E5668 E010C1A8 AFB3001C */ sw $s3, 0x1c($sp) +/* 3E566C E010C1AC AFB20018 */ sw $s2, 0x18($sp) +/* 3E5670 E010C1B0 AFB10014 */ sw $s1, 0x14($sp) +/* 3E5674 E010C1B4 AFB00010 */ sw $s0, 0x10($sp) +/* 3E5678 E010C1B8 F7BE0058 */ sdc1 $f30, 0x58($sp) +/* 3E567C E010C1BC F7BC0050 */ sdc1 $f28, 0x50($sp) +/* 3E5680 E010C1C0 F7BA0048 */ sdc1 $f26, 0x48($sp) +/* 3E5684 E010C1C4 F7B80040 */ sdc1 $f24, 0x40($sp) +/* 3E5688 E010C1C8 F7B60038 */ sdc1 $f22, 0x38($sp) +/* 3E568C E010C1CC F7B40030 */ sdc1 $f20, 0x30($sp) +/* 3E5690 E010C1D0 8C830000 */ lw $v1, ($a0) +/* 3E5694 E010C1D4 8C91000C */ lw $s1, 0xc($a0) +/* 3E5698 E010C1D8 30620010 */ andi $v0, $v1, 0x10 +/* 3E569C E010C1DC 10400005 */ beqz $v0, .LE010C1F4 +/* 3E56A0 E010C1E0 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3E56A4 E010C1E4 00621024 */ and $v0, $v1, $v0 +/* 3E56A8 E010C1E8 AC820000 */ sw $v0, ($a0) +/* 3E56AC E010C1EC 24020010 */ addiu $v0, $zero, 0x10 +/* 3E56B0 E010C1F0 AE220010 */ sw $v0, 0x10($s1) +.LE010C1F4: +/* 3E56B4 E010C1F4 8E230010 */ lw $v1, 0x10($s1) +/* 3E56B8 E010C1F8 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3E56BC E010C1FC 10400002 */ beqz $v0, .LE010C208 +/* 3E56C0 E010C200 2462FFFF */ addiu $v0, $v1, -1 +/* 3E56C4 E010C204 AE220010 */ sw $v0, 0x10($s1) +.LE010C208: +/* 3E56C8 E010C208 8E220014 */ lw $v0, 0x14($s1) +/* 3E56CC E010C20C 8E230010 */ lw $v1, 0x10($s1) +/* 3E56D0 E010C210 24420001 */ addiu $v0, $v0, 1 +/* 3E56D4 E010C214 04610005 */ bgez $v1, .LE010C22C +/* 3E56D8 E010C218 AE220014 */ sw $v0, 0x14($s1) +/* 3E56DC E010C21C 0C080128 */ jal func_E02004A0 +/* 3E56E0 E010C220 00000000 */ nop +/* 3E56E4 E010C224 080430C6 */ j .LE010C318 +/* 3E56E8 E010C228 00000000 */ nop +.LE010C22C: +/* 3E56EC E010C22C 0000982D */ daddu $s3, $zero, $zero +/* 3E56F0 E010C230 3C159249 */ lui $s5, 0x9249 +/* 3E56F4 E010C234 36B52493 */ ori $s5, $s5, 0x2493 +/* 3E56F8 E010C238 2412FE98 */ addiu $s2, $zero, -0x168 +/* 3E56FC E010C23C 2414005C */ addiu $s4, $zero, 0x5c +/* 3E5700 E010C240 C63C0048 */ lwc1 $f28, 0x48($s1) +/* 3E5704 E010C244 C6200044 */ lwc1 $f0, 0x44($s1) +/* 3E5708 E010C248 C6220040 */ lwc1 $f2, 0x40($s1) +/* 3E570C E010C24C C63A004C */ lwc1 $f26, 0x4c($s1) +/* 3E5710 E010C250 46020000 */ add.s $f0, $f0, $f2 +/* 3E5714 E010C254 C6380050 */ lwc1 $f24, 0x50($s1) +/* 3E5718 E010C258 C6360054 */ lwc1 $f22, 0x54($s1) +/* 3E571C E010C25C 46000786 */ mov.s $f30, $f0 +/* 3E5720 E010C260 E63E0044 */ swc1 $f30, 0x44($s1) +.LE010C264: +/* 3E5724 E010C264 16600007 */ bnez $s3, .LE010C284 +/* 3E5728 E010C268 02348021 */ addu $s0, $s1, $s4 +/* 3E572C E010C26C E61A0004 */ swc1 $f26, 4($s0) +/* 3E5730 E010C270 C6200058 */ lwc1 $f0, 0x58($s1) +/* 3E5734 E010C274 4600C000 */ add.s $f0, $f24, $f0 +/* 3E5738 E010C278 E616000C */ swc1 $f22, 0xc($s0) +/* 3E573C E010C27C 080430B8 */ j .LE010C2E0 +/* 3E5740 E010C280 E6000008 */ swc1 $f0, 8($s0) +.LE010C284: +/* 3E5744 E010C284 02550018 */ mult $s2, $s5 +/* 3E5748 E010C288 00121FC3 */ sra $v1, $s2, 0x1f +/* 3E574C E010C28C 00002810 */ mfhi $a1 +/* 3E5750 E010C290 00B21021 */ addu $v0, $a1, $s2 +/* 3E5754 E010C294 00021083 */ sra $v0, $v0, 2 +/* 3E5758 E010C298 00431023 */ subu $v0, $v0, $v1 +/* 3E575C E010C29C 4482A000 */ mtc1 $v0, $f20 +/* 3E5760 E010C2A0 00000000 */ nop +/* 3E5764 E010C2A4 4680A520 */ cvt.s.w $f20, $f20 +/* 3E5768 E010C2A8 4614F500 */ add.s $f20, $f30, $f20 +/* 3E576C E010C2AC 0C080140 */ jal func_E0200500 +/* 3E5770 E010C2B0 4600A306 */ mov.s $f12, $f20 +/* 3E5774 E010C2B4 4600E002 */ mul.s $f0, $f28, $f0 +/* 3E5778 E010C2B8 00000000 */ nop +/* 3E577C E010C2BC 4600D000 */ add.s $f0, $f26, $f0 +/* 3E5780 E010C2C0 4600A306 */ mov.s $f12, $f20 +/* 3E5784 E010C2C4 E6180008 */ swc1 $f24, 8($s0) +/* 3E5788 E010C2C8 0C080144 */ jal func_E0200510 +/* 3E578C E010C2CC E6000004 */ swc1 $f0, 4($s0) +/* 3E5790 E010C2D0 4600E002 */ mul.s $f0, $f28, $f0 +/* 3E5794 E010C2D4 00000000 */ nop +/* 3E5798 E010C2D8 4600B000 */ add.s $f0, $f22, $f0 +/* 3E579C E010C2DC E600000C */ swc1 $f0, 0xc($s0) +.LE010C2E0: +/* 3E57A0 E010C2E0 8E020000 */ lw $v0, ($s0) +/* 3E57A4 E010C2E4 30420002 */ andi $v0, $v0, 2 +/* 3E57A8 E010C2E8 14400007 */ bnez $v0, .LE010C308 +/* 3E57AC E010C2EC 26520168 */ addiu $s2, $s2, 0x168 +/* 3E57B0 E010C2F0 C6000004 */ lwc1 $f0, 4($s0) +/* 3E57B4 E010C2F4 C6020008 */ lwc1 $f2, 8($s0) +/* 3E57B8 E010C2F8 C604000C */ lwc1 $f4, 0xc($s0) +/* 3E57BC E010C2FC E6000010 */ swc1 $f0, 0x10($s0) +/* 3E57C0 E010C300 E6020014 */ swc1 $f2, 0x14($s0) +/* 3E57C4 E010C304 E6040018 */ swc1 $f4, 0x18($s0) +.LE010C308: +/* 3E57C8 E010C308 26730001 */ addiu $s3, $s3, 1 +/* 3E57CC E010C30C 2A620008 */ slti $v0, $s3, 8 +/* 3E57D0 E010C310 1440FFD4 */ bnez $v0, .LE010C264 +/* 3E57D4 E010C314 2694001C */ addiu $s4, $s4, 0x1c +.LE010C318: +/* 3E57D8 E010C318 8FBF0028 */ lw $ra, 0x28($sp) +/* 3E57DC E010C31C 8FB50024 */ lw $s5, 0x24($sp) +/* 3E57E0 E010C320 8FB40020 */ lw $s4, 0x20($sp) +/* 3E57E4 E010C324 8FB3001C */ lw $s3, 0x1c($sp) +/* 3E57E8 E010C328 8FB20018 */ lw $s2, 0x18($sp) +/* 3E57EC E010C32C 8FB10014 */ lw $s1, 0x14($sp) +/* 3E57F0 E010C330 8FB00010 */ lw $s0, 0x10($sp) +/* 3E57F4 E010C334 D7BE0058 */ ldc1 $f30, 0x58($sp) +/* 3E57F8 E010C338 D7BC0050 */ ldc1 $f28, 0x50($sp) +/* 3E57FC E010C33C D7BA0048 */ ldc1 $f26, 0x48($sp) +/* 3E5800 E010C340 D7B80040 */ ldc1 $f24, 0x40($sp) +/* 3E5804 E010C344 D7B60038 */ ldc1 $f22, 0x38($sp) +/* 3E5808 E010C348 D7B40030 */ ldc1 $f20, 0x30($sp) +/* 3E580C E010C34C 03E00008 */ jr $ra +/* 3E5810 E010C350 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_3E54C0/func_E010C354.s b/asm/nonmatchings/code_3E54C0/func_E010C354.s new file mode 100644 index 0000000000..0f498f523c --- /dev/null +++ b/asm/nonmatchings/code_3E54C0/func_E010C354.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010C354 +/* 3E5814 E010C354 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3E5818 E010C358 3C02E011 */ lui $v0, %hi(D_E010C39C) +/* 3E581C E010C35C 2442C39C */ addiu $v0, $v0, %lo(D_E010C39C) +/* 3E5820 E010C360 AFA2001C */ sw $v0, 0x1c($sp) +/* 3E5824 E010C364 2402000A */ addiu $v0, $zero, 0xa +/* 3E5828 E010C368 AFA20014 */ sw $v0, 0x14($sp) +/* 3E582C E010C36C 2402002D */ addiu $v0, $zero, 0x2d +/* 3E5830 E010C370 AFA40018 */ sw $a0, 0x18($sp) +/* 3E5834 E010C374 27A40010 */ addiu $a0, $sp, 0x10 +/* 3E5838 E010C378 AFBF0020 */ sw $ra, 0x20($sp) +/* 3E583C E010C37C 0C080120 */ jal func_E0200480 +/* 3E5840 E010C380 AFA20010 */ sw $v0, 0x10($sp) +/* 3E5844 E010C384 8C430000 */ lw $v1, ($v0) +/* 3E5848 E010C388 34630002 */ ori $v1, $v1, 2 +/* 3E584C E010C38C AC430000 */ sw $v1, ($v0) +/* 3E5850 E010C390 8FBF0020 */ lw $ra, 0x20($sp) +/* 3E5854 E010C394 03E00008 */ jr $ra +/* 3E5858 E010C398 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3E54C0/func_E010C39C.s b/asm/nonmatchings/code_3E54C0/func_E010C39C.s new file mode 100644 index 0000000000..dcf5b45371 --- /dev/null +++ b/asm/nonmatchings/code_3E54C0/func_E010C39C.s @@ -0,0 +1,427 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E010C39C +/* 3E585C E010C39C 27BDFF28 */ addiu $sp, $sp, -0xd8 +/* 3E5860 E010C3A0 3C07DB06 */ lui $a3, 0xdb06 +/* 3E5864 E010C3A4 34E70024 */ ori $a3, $a3, 0x24 +/* 3E5868 E010C3A8 AFB300B4 */ sw $s3, 0xb4($sp) +/* 3E586C E010C3AC 0000982D */ daddu $s3, $zero, $zero +/* 3E5870 E010C3B0 AFB700C4 */ sw $s7, 0xc4($sp) +/* 3E5874 E010C3B4 3C17800A */ lui $s7, %hi(D_8009A674) +/* 3E5878 E010C3B8 26F7A674 */ addiu $s7, $s7, %lo(D_8009A674) +/* 3E587C E010C3BC AFB500BC */ sw $s5, 0xbc($sp) +/* 3E5880 E010C3C0 3C158007 */ lui $s5, %hi(D_800741F0) +/* 3E5884 E010C3C4 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 3E5888 E010C3C8 AFB400B8 */ sw $s4, 0xb8($sp) +/* 3E588C E010C3CC 3C140001 */ lui $s4, 1 +/* 3E5890 E010C3D0 36941630 */ ori $s4, $s4, 0x1630 +/* 3E5894 E010C3D4 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3E5898 E010C3D8 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3E589C E010C3DC AFB000A8 */ sw $s0, 0xa8($sp) +/* 3E58A0 E010C3E0 0040802D */ daddu $s0, $v0, $zero +/* 3E58A4 E010C3E4 AFB600C0 */ sw $s6, 0xc0($sp) +/* 3E58A8 E010C3E8 3C16DE00 */ lui $s6, 0xde00 +/* 3E58AC E010C3EC AFB100AC */ sw $s1, 0xac($sp) +/* 3E58B0 E010C3F0 2411005C */ addiu $s1, $zero, 0x5c +/* 3E58B4 E010C3F4 3C06800B */ lui $a2, %hi(gCameras) +/* 3E58B8 E010C3F8 24C61D80 */ addiu $a2, $a2, %lo(gCameras) +/* 3E58BC E010C3FC AFBF00CC */ sw $ra, 0xcc($sp) +/* 3E58C0 E010C400 AFBE00C8 */ sw $fp, 0xc8($sp) +/* 3E58C4 E010C404 AFB200B0 */ sw $s2, 0xb0($sp) +/* 3E58C8 E010C408 F7B400D0 */ sdc1 $f20, 0xd0($sp) +/* 3E58CC E010C40C 8E050000 */ lw $a1, ($s0) +/* 3E58D0 E010C410 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3E58D4 E010C414 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3E58D8 E010C418 4480A000 */ mtc1 $zero, $f20 +/* 3E58DC E010C41C 00031080 */ sll $v0, $v1, 2 +/* 3E58E0 E010C420 00431021 */ addu $v0, $v0, $v1 +/* 3E58E4 E010C424 00021080 */ sll $v0, $v0, 2 +/* 3E58E8 E010C428 00431023 */ subu $v0, $v0, $v1 +/* 3E58EC E010C42C 000218C0 */ sll $v1, $v0, 3 +/* 3E58F0 E010C430 00431021 */ addu $v0, $v0, $v1 +/* 3E58F4 E010C434 000210C0 */ sll $v0, $v0, 3 +/* 3E58F8 E010C438 00461021 */ addu $v0, $v0, $a2 +/* 3E58FC E010C43C 00A0182D */ daddu $v1, $a1, $zero +/* 3E5900 E010C440 AFA200A0 */ sw $v0, 0xa0($sp) +/* 3E5904 E010C444 8C92000C */ lw $s2, 0xc($a0) +/* 3E5908 E010C448 24A50008 */ addiu $a1, $a1, 8 +/* 3E590C E010C44C AE050000 */ sw $a1, ($s0) +/* 3E5910 E010C450 8E4A0024 */ lw $t2, 0x24($s2) +/* 3E5914 E010C454 3C02E700 */ lui $v0, 0xe700 +/* 3E5918 E010C458 AFAA00A4 */ sw $t2, 0xa4($sp) +/* 3E591C E010C45C AC620000 */ sw $v0, ($v1) +/* 3E5920 E010C460 24A20008 */ addiu $v0, $a1, 8 +/* 3E5924 E010C464 AC600004 */ sw $zero, 4($v1) +/* 3E5928 E010C468 AE020000 */ sw $v0, ($s0) +/* 3E592C E010C46C ACA70000 */ sw $a3, ($a1) +/* 3E5930 E010C470 8C830010 */ lw $v1, 0x10($a0) +/* 3E5934 E010C474 24A20010 */ addiu $v0, $a1, 0x10 +/* 3E5938 E010C478 AE020000 */ sw $v0, ($s0) +/* 3E593C E010C47C 8C63001C */ lw $v1, 0x1c($v1) +/* 3E5940 E010C480 02C0102D */ daddu $v0, $s6, $zero +/* 3E5944 E010C484 ACA20008 */ sw $v0, 8($a1) +/* 3E5948 E010C488 3C020900 */ lui $v0, 0x900 +/* 3E594C E010C48C 24425090 */ addiu $v0, $v0, 0x5090 +/* 3E5950 E010C490 ACA2000C */ sw $v0, 0xc($a1) +/* 3E5954 E010C494 3C028000 */ lui $v0, 0x8000 +/* 3E5958 E010C498 00621821 */ addu $v1, $v1, $v0 +/* 3E595C E010C49C ACA30004 */ sw $v1, 4($a1) +.LE010C4A0: +/* 3E5960 E010C4A0 02511821 */ addu $v1, $s2, $s1 +/* 3E5964 E010C4A4 8C640000 */ lw $a0, ($v1) +/* 3E5968 E010C4A8 30820001 */ andi $v0, $a0, 1 +/* 3E596C E010C4AC 10400056 */ beqz $v0, .LE010C608 +/* 3E5970 E010C4B0 30820002 */ andi $v0, $a0, 2 +/* 3E5974 E010C4B4 10400005 */ beqz $v0, .LE010C4CC +/* 3E5978 E010C4B8 00000000 */ nop +/* 3E597C E010C4BC C4660010 */ lwc1 $f6, 0x10($v1) +/* 3E5980 E010C4C0 C4640014 */ lwc1 $f4, 0x14($v1) +/* 3E5984 E010C4C4 08043136 */ j .LE010C4D8 +/* 3E5988 E010C4C8 C4620018 */ lwc1 $f2, 0x18($v1) +.LE010C4CC: +/* 3E598C E010C4CC C4660004 */ lwc1 $f6, 4($v1) +/* 3E5990 E010C4D0 C4640008 */ lwc1 $f4, 8($v1) +/* 3E5994 E010C4D4 C462000C */ lwc1 $f2, 0xc($v1) +.LE010C4D8: +/* 3E5998 E010C4D8 C640000C */ lwc1 $f0, 0xc($s2) +/* 3E599C E010C4DC 4602003C */ c.lt.s $f0, $f2 +/* 3E59A0 E010C4E0 00000000 */ nop +/* 3E59A4 E010C4E4 45030049 */ bc1tl .LE010C60C +/* 3E59A8 E010C4E8 26730001 */ addiu $s3, $s3, 1 +/* 3E59AC E010C4EC 4405A000 */ mfc1 $a1, $f20 +/* 3E59B0 E010C4F0 4406A000 */ mfc1 $a2, $f20 +/* 3E59B4 E010C4F4 4407A000 */ mfc1 $a3, $f20 +/* 3E59B8 E010C4F8 3C013F36 */ lui $at, 0x3f36 +/* 3E59BC E010C4FC 3421DB6E */ ori $at, $at, 0xdb6e +/* 3E59C0 E010C500 44810000 */ mtc1 $at, $f0 +/* 3E59C4 E010C504 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E59C8 E010C508 E7A60014 */ swc1 $f6, 0x14($sp) +/* 3E59CC E010C50C E7A40018 */ swc1 $f4, 0x18($sp) +/* 3E59D0 E010C510 E7A2001C */ swc1 $f2, 0x1c($sp) +/* 3E59D4 E010C514 0C080180 */ jal func_E0200600 +/* 3E59D8 E010C518 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3E59DC E010C51C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E59E0 E010C520 96A50000 */ lhu $a1, ($s5) +/* 3E59E4 E010C524 8EE20000 */ lw $v0, ($s7) +/* 3E59E8 E010C528 00052980 */ sll $a1, $a1, 6 +/* 3E59EC E010C52C 00B42821 */ addu $a1, $a1, $s4 +/* 3E59F0 E010C530 0C080118 */ jal func_E0200460 +/* 3E59F4 E010C534 00452821 */ addu $a1, $v0, $a1 +/* 3E59F8 E010C538 3C02DA38 */ lui $v0, 0xda38 +/* 3E59FC E010C53C 34420002 */ ori $v0, $v0, 2 +/* 3E5A00 E010C540 3C068080 */ lui $a2, 0x8080 +/* 3E5A04 E010C544 34C680FF */ ori $a2, $a2, 0x80ff +/* 3E5A08 E010C548 3C078080 */ lui $a3, 0x8080 +/* 3E5A0C E010C54C 34E7807F */ ori $a3, $a3, 0x807f +/* 3E5A10 E010C550 3C08D838 */ lui $t0, 0xd838 +/* 3E5A14 E010C554 35080002 */ ori $t0, $t0, 2 +/* 3E5A18 E010C558 8E040000 */ lw $a0, ($s0) +/* 3E5A1C E010C55C 96A30000 */ lhu $v1, ($s5) +/* 3E5A20 E010C560 0080282D */ daddu $a1, $a0, $zero +/* 3E5A24 E010C564 24840008 */ addiu $a0, $a0, 8 +/* 3E5A28 E010C568 AE040000 */ sw $a0, ($s0) +/* 3E5A2C E010C56C ACA20000 */ sw $v0, ($a1) +/* 3E5A30 E010C570 24620001 */ addiu $v0, $v1, 1 +/* 3E5A34 E010C574 3063FFFF */ andi $v1, $v1, 0xffff +/* 3E5A38 E010C578 00031980 */ sll $v1, $v1, 6 +/* 3E5A3C E010C57C A6A20000 */ sh $v0, ($s5) +/* 3E5A40 E010C580 8EE20000 */ lw $v0, ($s7) +/* 3E5A44 E010C584 00741821 */ addu $v1, $v1, $s4 +/* 3E5A48 E010C588 00431021 */ addu $v0, $v0, $v1 +/* 3E5A4C E010C58C ACA20004 */ sw $v0, 4($a1) +/* 3E5A50 E010C590 24820008 */ addiu $v0, $a0, 8 +/* 3E5A54 E010C594 AE020000 */ sw $v0, ($s0) +/* 3E5A58 E010C598 3C02FA00 */ lui $v0, 0xfa00 +/* 3E5A5C E010C59C AC820000 */ sw $v0, ($a0) +/* 3E5A60 E010C5A0 24820010 */ addiu $v0, $a0, 0x10 +/* 3E5A64 E010C5A4 AC860004 */ sw $a2, 4($a0) +/* 3E5A68 E010C5A8 AE020000 */ sw $v0, ($s0) +/* 3E5A6C E010C5AC 3C02FB00 */ lui $v0, 0xfb00 +/* 3E5A70 E010C5B0 AC820008 */ sw $v0, 8($a0) +/* 3E5A74 E010C5B4 24820018 */ addiu $v0, $a0, 0x18 +/* 3E5A78 E010C5B8 00131880 */ sll $v1, $s3, 2 +/* 3E5A7C E010C5BC AC87000C */ sw $a3, 0xc($a0) +/* 3E5A80 E010C5C0 AE020000 */ sw $v0, ($s0) +/* 3E5A84 E010C5C4 AC960010 */ sw $s6, 0x10($a0) +/* 3E5A88 E010C5C8 3C05E011 */ lui $a1, %hi(D_E010CA38) +/* 3E5A8C E010C5CC 00A32821 */ addu $a1, $a1, $v1 +/* 3E5A90 E010C5D0 8CA5CA38 */ lw $a1, %lo(D_E010CA38)($a1) +/* 3E5A94 E010C5D4 24820020 */ addiu $v0, $a0, 0x20 +/* 3E5A98 E010C5D8 AE020000 */ sw $v0, ($s0) +/* 3E5A9C E010C5DC AC960018 */ sw $s6, 0x18($a0) +/* 3E5AA0 E010C5E0 AC850014 */ sw $a1, 0x14($a0) +/* 3E5AA4 E010C5E4 3C01E011 */ lui $at, %hi(D_E010CA18) +/* 3E5AA8 E010C5E8 00230821 */ addu $at, $at, $v1 +/* 3E5AAC E010C5EC 8C23CA18 */ lw $v1, %lo(D_E010CA18)($at) +/* 3E5AB0 E010C5F0 24820028 */ addiu $v0, $a0, 0x28 +/* 3E5AB4 E010C5F4 AE020000 */ sw $v0, ($s0) +/* 3E5AB8 E010C5F8 24020040 */ addiu $v0, $zero, 0x40 +/* 3E5ABC E010C5FC AC880020 */ sw $t0, 0x20($a0) +/* 3E5AC0 E010C600 AC820024 */ sw $v0, 0x24($a0) +/* 3E5AC4 E010C604 AC83001C */ sw $v1, 0x1c($a0) +.LE010C608: +/* 3E5AC8 E010C608 26730001 */ addiu $s3, $s3, 1 +.LE010C60C: +/* 3E5ACC E010C60C 2A620008 */ slti $v0, $s3, 8 +/* 3E5AD0 E010C610 1440FFA3 */ bnez $v0, .LE010C4A0 +/* 3E5AD4 E010C614 2631001C */ addiu $s1, $s1, 0x1c +/* 3E5AD8 E010C618 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E5ADC E010C61C 240200FF */ addiu $v0, $zero, 0xff +/* 3E5AE0 E010C620 8E43003C */ lw $v1, 0x3c($s2) +/* 3E5AE4 E010C624 3C014079 */ lui $at, 0x4079 +/* 3E5AE8 E010C628 44811800 */ mtc1 $at, $f3 +/* 3E5AEC E010C62C 44801000 */ mtc1 $zero, $f2 +/* 3E5AF0 E010C630 00431023 */ subu $v0, $v0, $v1 +/* 3E5AF4 E010C634 44820000 */ mtc1 $v0, $f0 +/* 3E5AF8 E010C638 00000000 */ nop +/* 3E5AFC E010C63C 46800020 */ cvt.s.w $f0, $f0 +/* 3E5B00 E010C640 46000021 */ cvt.d.s $f0, $f0 +/* 3E5B04 E010C644 46220002 */ mul.d $f0, $f0, $f2 +/* 3E5B08 E010C648 00000000 */ nop +/* 3E5B0C E010C64C 3C110001 */ lui $s1, 1 +/* 3E5B10 E010C650 36311630 */ ori $s1, $s1, 0x1630 +/* 3E5B14 E010C654 0000982D */ daddu $s3, $zero, $zero +/* 3E5B18 E010C658 3C01E011 */ lui $at, %hi(D_E010CA60) +/* 3E5B1C E010C65C D424CA60 */ ldc1 $f4, %lo(D_E010CA60)($at) +/* 3E5B20 E010C660 C6420008 */ lwc1 $f2, 8($s2) +/* 3E5B24 E010C664 8E450004 */ lw $a1, 4($s2) +/* 3E5B28 E010C668 460010A1 */ cvt.d.s $f2, $f2 +/* 3E5B2C E010C66C 46240003 */ div.d $f0, $f0, $f4 +/* 3E5B30 E010C670 46201081 */ sub.d $f2, $f2, $f0 +/* 3E5B34 E010C674 8E47000C */ lw $a3, 0xc($s2) +/* 3E5B38 E010C678 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3E5B3C E010C67C 2442A674 */ addiu $v0, $v0, %lo(D_8009A674) +/* 3E5B40 E010C680 462010A0 */ cvt.s.d $f2, $f2 +/* 3E5B44 E010C684 44061000 */ mfc1 $a2, $f2 +/* 3E5B48 E010C688 0C080108 */ jal func_E0200420 +/* 3E5B4C E010C68C 0040B82D */ daddu $s7, $v0, $zero +/* 3E5B50 E010C690 3C028007 */ lui $v0, %hi(D_800741F0) +/* 3E5B54 E010C694 244241F0 */ addiu $v0, $v0, %lo(D_800741F0) +/* 3E5B58 E010C698 C6400038 */ lwc1 $f0, 0x38($s2) +/* 3E5B5C E010C69C 3C01E011 */ lui $at, %hi(D_E010CA68) +/* 3E5B60 E010C6A0 D422CA68 */ ldc1 $f2, %lo(D_E010CA68)($at) +/* 3E5B64 E010C6A4 46000021 */ cvt.d.s $f0, $f0 +/* 3E5B68 E010C6A8 46220002 */ mul.d $f0, $f0, $f2 +/* 3E5B6C E010C6AC 00000000 */ nop +/* 3E5B70 E010C6B0 0040A02D */ daddu $s4, $v0, $zero +/* 3E5B74 E010C6B4 3C160001 */ lui $s6, 1 +/* 3E5B78 E010C6B8 36D61630 */ ori $s6, $s6, 0x1630 +/* 3E5B7C E010C6BC 3C1EDE00 */ lui $fp, 0xde00 +/* 3E5B80 E010C6C0 2415005C */ addiu $s5, $zero, 0x5c +/* 3E5B84 E010C6C4 27B00060 */ addiu $s0, $sp, 0x60 +/* 3E5B88 E010C6C8 0200202D */ daddu $a0, $s0, $zero +/* 3E5B8C E010C6CC 46200020 */ cvt.s.d $f0, $f0 +/* 3E5B90 E010C6D0 44050000 */ mfc1 $a1, $f0 +/* 3E5B94 E010C6D4 4480A000 */ mtc1 $zero, $f20 +/* 3E5B98 E010C6D8 00A0302D */ daddu $a2, $a1, $zero +/* 3E5B9C E010C6DC 0C080110 */ jal func_E0200440 +/* 3E5BA0 E010C6E0 00A0382D */ daddu $a3, $a1, $zero +/* 3E5BA4 E010C6E4 0200202D */ daddu $a0, $s0, $zero +/* 3E5BA8 E010C6E8 27A50020 */ addiu $a1, $sp, 0x20 +/* 3E5BAC E010C6EC 0C080114 */ jal func_E0200450 +/* 3E5BB0 E010C6F0 00A0302D */ daddu $a2, $a1, $zero +/* 3E5BB4 E010C6F4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E5BB8 E010C6F8 96850000 */ lhu $a1, ($s4) +/* 3E5BBC E010C6FC 8EE20000 */ lw $v0, ($s7) +/* 3E5BC0 E010C700 00052980 */ sll $a1, $a1, 6 +/* 3E5BC4 E010C704 00B12821 */ addu $a1, $a1, $s1 +/* 3E5BC8 E010C708 0C080118 */ jal func_E0200460 +/* 3E5BCC E010C70C 00452821 */ addu $a1, $v0, $a1 +/* 3E5BD0 E010C710 3C03DA38 */ lui $v1, 0xda38 +/* 3E5BD4 E010C714 34630002 */ ori $v1, $v1, 2 +/* 3E5BD8 E010C718 3C06DA38 */ lui $a2, 0xda38 +/* 3E5BDC E010C71C 34C60001 */ ori $a2, $a2, 1 +/* 3E5BE0 E010C720 3C09D838 */ lui $t1, 0xd838 +/* 3E5BE4 E010C724 35290002 */ ori $t1, $t1, 2 +/* 3E5BE8 E010C728 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3E5BEC E010C72C 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3E5BF0 E010C730 0040802D */ daddu $s0, $v0, $zero +/* 3E5BF4 E010C734 8C440000 */ lw $a0, ($v0) +/* 3E5BF8 E010C738 96820000 */ lhu $v0, ($s4) +/* 3E5BFC E010C73C 0080282D */ daddu $a1, $a0, $zero +/* 3E5C00 E010C740 24840008 */ addiu $a0, $a0, 8 +/* 3E5C04 E010C744 AE040000 */ sw $a0, ($s0) +/* 3E5C08 E010C748 ACA30000 */ sw $v1, ($a1) +/* 3E5C0C E010C74C 24430001 */ addiu $v1, $v0, 1 +/* 3E5C10 E010C750 3042FFFF */ andi $v0, $v0, 0xffff +/* 3E5C14 E010C754 00021180 */ sll $v0, $v0, 6 +/* 3E5C18 E010C758 A6830000 */ sh $v1, ($s4) +/* 3E5C1C E010C75C 8EE30000 */ lw $v1, ($s7) +/* 3E5C20 E010C760 00511021 */ addu $v0, $v0, $s1 +/* 3E5C24 E010C764 00621821 */ addu $v1, $v1, $v0 +/* 3E5C28 E010C768 24820008 */ addiu $v0, $a0, 8 +/* 3E5C2C E010C76C ACA30004 */ sw $v1, 4($a1) +/* 3E5C30 E010C770 AE020000 */ sw $v0, ($s0) +/* 3E5C34 E010C774 24820010 */ addiu $v0, $a0, 0x10 +/* 3E5C38 E010C778 AC860000 */ sw $a2, ($a0) +/* 3E5C3C E010C77C AE020000 */ sw $v0, ($s0) +/* 3E5C40 E010C780 8FAA00A0 */ lw $t2, 0xa0($sp) +/* 3E5C44 E010C784 03C0382D */ daddu $a3, $fp, $zero +/* 3E5C48 E010C788 8D430204 */ lw $v1, 0x204($t2) +/* 3E5C4C E010C78C 3C02FA00 */ lui $v0, 0xfa00 +/* 3E5C50 E010C790 AC820008 */ sw $v0, 8($a0) +/* 3E5C54 E010C794 AC830004 */ sw $v1, 4($a0) +/* 3E5C58 E010C798 9242001B */ lbu $v0, 0x1b($s2) +/* 3E5C5C E010C79C 9245001F */ lbu $a1, 0x1f($s2) +/* 3E5C60 E010C7A0 92460023 */ lbu $a2, 0x23($s2) +/* 3E5C64 E010C7A4 24830018 */ addiu $v1, $a0, 0x18 +/* 3E5C68 E010C7A8 AE030000 */ sw $v1, ($s0) +/* 3E5C6C E010C7AC 3C03FB00 */ lui $v1, 0xfb00 +/* 3E5C70 E010C7B0 AC830010 */ sw $v1, 0x10($a0) +/* 3E5C74 E010C7B4 8FAA00A4 */ lw $t2, 0xa4($sp) +/* 3E5C78 E010C7B8 00021600 */ sll $v0, $v0, 0x18 +/* 3E5C7C E010C7BC 00052C00 */ sll $a1, $a1, 0x10 +/* 3E5C80 E010C7C0 00451025 */ or $v0, $v0, $a1 +/* 3E5C84 E010C7C4 00063200 */ sll $a2, $a2, 8 +/* 3E5C88 E010C7C8 00461025 */ or $v0, $v0, $a2 +/* 3E5C8C E010C7CC 314300FF */ andi $v1, $t2, 0xff +/* 3E5C90 E010C7D0 00431025 */ or $v0, $v0, $v1 +/* 3E5C94 E010C7D4 AC82000C */ sw $v0, 0xc($a0) +/* 3E5C98 E010C7D8 9242002B */ lbu $v0, 0x2b($s2) +/* 3E5C9C E010C7DC 9245002F */ lbu $a1, 0x2f($s2) +/* 3E5CA0 E010C7E0 92460033 */ lbu $a2, 0x33($s2) +/* 3E5CA4 E010C7E4 92480037 */ lbu $t0, 0x37($s2) +/* 3E5CA8 E010C7E8 24830020 */ addiu $v1, $a0, 0x20 +/* 3E5CAC E010C7EC AE030000 */ sw $v1, ($s0) +/* 3E5CB0 E010C7F0 AC870018 */ sw $a3, 0x18($a0) +/* 3E5CB4 E010C7F4 00021600 */ sll $v0, $v0, 0x18 +/* 3E5CB8 E010C7F8 00052C00 */ sll $a1, $a1, 0x10 +/* 3E5CBC E010C7FC 00451025 */ or $v0, $v0, $a1 +/* 3E5CC0 E010C800 00063200 */ sll $a2, $a2, 8 +/* 3E5CC4 E010C804 00461025 */ or $v0, $v0, $a2 +/* 3E5CC8 E010C808 00481025 */ or $v0, $v0, $t0 +/* 3E5CCC E010C80C AC820014 */ sw $v0, 0x14($a0) +/* 3E5CD0 E010C810 3C03E011 */ lui $v1, %hi(D_E010CA14) +/* 3E5CD4 E010C814 8C63CA14 */ lw $v1, %lo(D_E010CA14)($v1) +/* 3E5CD8 E010C818 24820028 */ addiu $v0, $a0, 0x28 +/* 3E5CDC E010C81C AE020000 */ sw $v0, ($s0) +/* 3E5CE0 E010C820 AC870020 */ sw $a3, 0x20($a0) +/* 3E5CE4 E010C824 AC83001C */ sw $v1, 0x1c($a0) +/* 3E5CE8 E010C828 3C03E011 */ lui $v1, %hi(D_E010CA10) +/* 3E5CEC E010C82C 8C63CA10 */ lw $v1, %lo(D_E010CA10)($v1) +/* 3E5CF0 E010C830 24820030 */ addiu $v0, $a0, 0x30 +/* 3E5CF4 E010C834 AE020000 */ sw $v0, ($s0) +/* 3E5CF8 E010C838 24020040 */ addiu $v0, $zero, 0x40 +/* 3E5CFC E010C83C AC830024 */ sw $v1, 0x24($a0) +/* 3E5D00 E010C840 AC890028 */ sw $t1, 0x28($a0) +/* 3E5D04 E010C844 AC82002C */ sw $v0, 0x2c($a0) +/* 3E5D08 E010C848 24820038 */ addiu $v0, $a0, 0x38 +/* 3E5D0C E010C84C AE020000 */ sw $v0, ($s0) +/* 3E5D10 E010C850 3C020900 */ lui $v0, 0x900 +/* 3E5D14 E010C854 24425090 */ addiu $v0, $v0, 0x5090 +/* 3E5D18 E010C858 AC870030 */ sw $a3, 0x30($a0) +/* 3E5D1C E010C85C AC820034 */ sw $v0, 0x34($a0) +.LE010C860: +/* 3E5D20 E010C860 02551821 */ addu $v1, $s2, $s5 +/* 3E5D24 E010C864 8C640000 */ lw $a0, ($v1) +/* 3E5D28 E010C868 30820001 */ andi $v0, $a0, 1 +/* 3E5D2C E010C86C 10400056 */ beqz $v0, .LE010C9C8 +/* 3E5D30 E010C870 30820002 */ andi $v0, $a0, 2 +/* 3E5D34 E010C874 10400005 */ beqz $v0, .LE010C88C +/* 3E5D38 E010C878 00000000 */ nop +/* 3E5D3C E010C87C C4660010 */ lwc1 $f6, 0x10($v1) +/* 3E5D40 E010C880 C4640014 */ lwc1 $f4, 0x14($v1) +/* 3E5D44 E010C884 08043226 */ j .LE010C898 +/* 3E5D48 E010C888 C4620018 */ lwc1 $f2, 0x18($v1) +.LE010C88C: +/* 3E5D4C E010C88C C4660004 */ lwc1 $f6, 4($v1) +/* 3E5D50 E010C890 C4640008 */ lwc1 $f4, 8($v1) +/* 3E5D54 E010C894 C462000C */ lwc1 $f2, 0xc($v1) +.LE010C898: +/* 3E5D58 E010C898 C640000C */ lwc1 $f0, 0xc($s2) +/* 3E5D5C E010C89C 4600103E */ c.le.s $f2, $f0 +/* 3E5D60 E010C8A0 00000000 */ nop +/* 3E5D64 E010C8A4 45030049 */ bc1tl .LE010C9CC +/* 3E5D68 E010C8A8 26730001 */ addiu $s3, $s3, 1 +/* 3E5D6C E010C8AC 4405A000 */ mfc1 $a1, $f20 +/* 3E5D70 E010C8B0 4406A000 */ mfc1 $a2, $f20 +/* 3E5D74 E010C8B4 4407A000 */ mfc1 $a3, $f20 +/* 3E5D78 E010C8B8 3C013F2B */ lui $at, 0x3f2b +/* 3E5D7C E010C8BC 3421851F */ ori $at, $at, 0x851f +/* 3E5D80 E010C8C0 44810000 */ mtc1 $at, $f0 +/* 3E5D84 E010C8C4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E5D88 E010C8C8 E7A60014 */ swc1 $f6, 0x14($sp) +/* 3E5D8C E010C8CC E7A40018 */ swc1 $f4, 0x18($sp) +/* 3E5D90 E010C8D0 E7A2001C */ swc1 $f2, 0x1c($sp) +/* 3E5D94 E010C8D4 0C080180 */ jal func_E0200600 +/* 3E5D98 E010C8D8 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3E5D9C E010C8DC 27A40020 */ addiu $a0, $sp, 0x20 +/* 3E5DA0 E010C8E0 96850000 */ lhu $a1, ($s4) +/* 3E5DA4 E010C8E4 8EE20000 */ lw $v0, ($s7) +/* 3E5DA8 E010C8E8 00052980 */ sll $a1, $a1, 6 +/* 3E5DAC E010C8EC 00B62821 */ addu $a1, $a1, $s6 +/* 3E5DB0 E010C8F0 0C080118 */ jal func_E0200460 +/* 3E5DB4 E010C8F4 00452821 */ addu $a1, $v0, $a1 +/* 3E5DB8 E010C8F8 3C02DA38 */ lui $v0, 0xda38 +/* 3E5DBC E010C8FC 34420002 */ ori $v0, $v0, 2 +/* 3E5DC0 E010C900 3C068080 */ lui $a2, 0x8080 +/* 3E5DC4 E010C904 34C680FF */ ori $a2, $a2, 0x80ff +/* 3E5DC8 E010C908 3C078080 */ lui $a3, 0x8080 +/* 3E5DCC E010C90C 34E7807F */ ori $a3, $a3, 0x807f +/* 3E5DD0 E010C910 3C08D838 */ lui $t0, 0xd838 +/* 3E5DD4 E010C914 35080002 */ ori $t0, $t0, 2 +/* 3E5DD8 E010C918 8E040000 */ lw $a0, ($s0) +/* 3E5DDC E010C91C 96830000 */ lhu $v1, ($s4) +/* 3E5DE0 E010C920 0080282D */ daddu $a1, $a0, $zero +/* 3E5DE4 E010C924 24840008 */ addiu $a0, $a0, 8 +/* 3E5DE8 E010C928 AE040000 */ sw $a0, ($s0) +/* 3E5DEC E010C92C ACA20000 */ sw $v0, ($a1) +/* 3E5DF0 E010C930 24620001 */ addiu $v0, $v1, 1 +/* 3E5DF4 E010C934 3063FFFF */ andi $v1, $v1, 0xffff +/* 3E5DF8 E010C938 00031980 */ sll $v1, $v1, 6 +/* 3E5DFC E010C93C A6820000 */ sh $v0, ($s4) +/* 3E5E00 E010C940 8EE20000 */ lw $v0, ($s7) +/* 3E5E04 E010C944 00761821 */ addu $v1, $v1, $s6 +/* 3E5E08 E010C948 00431021 */ addu $v0, $v0, $v1 +/* 3E5E0C E010C94C ACA20004 */ sw $v0, 4($a1) +/* 3E5E10 E010C950 24820008 */ addiu $v0, $a0, 8 +/* 3E5E14 E010C954 AE020000 */ sw $v0, ($s0) +/* 3E5E18 E010C958 3C02FA00 */ lui $v0, 0xfa00 +/* 3E5E1C E010C95C AC820000 */ sw $v0, ($a0) +/* 3E5E20 E010C960 24820010 */ addiu $v0, $a0, 0x10 +/* 3E5E24 E010C964 AC860004 */ sw $a2, 4($a0) +/* 3E5E28 E010C968 AE020000 */ sw $v0, ($s0) +/* 3E5E2C E010C96C 3C02FB00 */ lui $v0, 0xfb00 +/* 3E5E30 E010C970 AC820008 */ sw $v0, 8($a0) +/* 3E5E34 E010C974 24820018 */ addiu $v0, $a0, 0x18 +/* 3E5E38 E010C978 00131880 */ sll $v1, $s3, 2 +/* 3E5E3C E010C97C AC87000C */ sw $a3, 0xc($a0) +/* 3E5E40 E010C980 AE020000 */ sw $v0, ($s0) +/* 3E5E44 E010C984 AC9E0010 */ sw $fp, 0x10($a0) +/* 3E5E48 E010C988 3C05E011 */ lui $a1, %hi(D_E010CA38) +/* 3E5E4C E010C98C 00A32821 */ addu $a1, $a1, $v1 +/* 3E5E50 E010C990 8CA5CA38 */ lw $a1, %lo(D_E010CA38)($a1) +/* 3E5E54 E010C994 24820020 */ addiu $v0, $a0, 0x20 +/* 3E5E58 E010C998 AE020000 */ sw $v0, ($s0) +/* 3E5E5C E010C99C AC9E0018 */ sw $fp, 0x18($a0) +/* 3E5E60 E010C9A0 AC850014 */ sw $a1, 0x14($a0) +/* 3E5E64 E010C9A4 3C01E011 */ lui $at, %hi(D_E010CA18) +/* 3E5E68 E010C9A8 00230821 */ addu $at, $at, $v1 +/* 3E5E6C E010C9AC 8C23CA18 */ lw $v1, %lo(D_E010CA18)($at) +/* 3E5E70 E010C9B0 24820028 */ addiu $v0, $a0, 0x28 +/* 3E5E74 E010C9B4 AE020000 */ sw $v0, ($s0) +/* 3E5E78 E010C9B8 24020040 */ addiu $v0, $zero, 0x40 +/* 3E5E7C E010C9BC AC880020 */ sw $t0, 0x20($a0) +/* 3E5E80 E010C9C0 AC820024 */ sw $v0, 0x24($a0) +/* 3E5E84 E010C9C4 AC83001C */ sw $v1, 0x1c($a0) +.LE010C9C8: +/* 3E5E88 E010C9C8 26730001 */ addiu $s3, $s3, 1 +.LE010C9CC: +/* 3E5E8C E010C9CC 2A620008 */ slti $v0, $s3, 8 +/* 3E5E90 E010C9D0 1440FFA3 */ bnez $v0, .LE010C860 +/* 3E5E94 E010C9D4 26B5001C */ addiu $s5, $s5, 0x1c +/* 3E5E98 E010C9D8 8FBF00CC */ lw $ra, 0xcc($sp) +/* 3E5E9C E010C9DC 8FBE00C8 */ lw $fp, 0xc8($sp) +/* 3E5EA0 E010C9E0 8FB700C4 */ lw $s7, 0xc4($sp) +/* 3E5EA4 E010C9E4 8FB600C0 */ lw $s6, 0xc0($sp) +/* 3E5EA8 E010C9E8 8FB500BC */ lw $s5, 0xbc($sp) +/* 3E5EAC E010C9EC 8FB400B8 */ lw $s4, 0xb8($sp) +/* 3E5EB0 E010C9F0 8FB300B4 */ lw $s3, 0xb4($sp) +/* 3E5EB4 E010C9F4 8FB200B0 */ lw $s2, 0xb0($sp) +/* 3E5EB8 E010C9F8 8FB100AC */ lw $s1, 0xac($sp) +/* 3E5EBC E010C9FC 8FB000A8 */ lw $s0, 0xa8($sp) +/* 3E5EC0 E010CA00 D7B400D0 */ ldc1 $f20, 0xd0($sp) +/* 3E5EC4 E010CA04 03E00008 */ jr $ra +/* 3E5EC8 E010CA08 27BD00D8 */ addiu $sp, $sp, 0xd8 +/* 3E5ECC E010CA0C 00000000 */ nop diff --git a/asm/nonmatchings/code_3F83F0/func_E0110000.s b/asm/nonmatchings/code_3F83F0/func_E0110000.s new file mode 100644 index 0000000000..0f1f7c2932 --- /dev/null +++ b/asm/nonmatchings/code_3F83F0/func_E0110000.s @@ -0,0 +1,145 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0110000 +/* 3F83F0 E0110000 27BDFFA8 */ addiu $sp, $sp, -0x58 +/* 3F83F4 E0110004 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 3F83F8 E0110008 4485A000 */ mtc1 $a1, $f20 +/* 3F83FC E011000C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 3F8400 E0110010 4486B000 */ mtc1 $a2, $f22 +/* 3F8404 E0110014 AFB30034 */ sw $s3, 0x34($sp) +/* 3F8408 E0110018 0080982D */ daddu $s3, $a0, $zero +/* 3F840C E011001C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 3F8410 E0110020 4487C000 */ mtc1 $a3, $f24 +/* 3F8414 E0110024 27A40010 */ addiu $a0, $sp, 0x10 +/* 3F8418 E0110028 AFB00028 */ sw $s0, 0x28($sp) +/* 3F841C E011002C 8FB0006C */ lw $s0, 0x6c($sp) +/* 3F8420 E0110030 3C02E011 */ lui $v0, %hi(D_E0110224) +/* 3F8424 E0110034 24420224 */ addiu $v0, $v0, %lo(D_E0110224) +/* 3F8428 E0110038 AFA20018 */ sw $v0, 0x18($sp) +/* 3F842C E011003C 3C02E011 */ lui $v0, %hi(D_E011022C) +/* 3F8430 E0110040 2442022C */ addiu $v0, $v0, %lo(D_E011022C) +/* 3F8434 E0110044 AFA2001C */ sw $v0, 0x1c($sp) +/* 3F8438 E0110048 3C02E011 */ lui $v0, %hi(D_E01103A4) +/* 3F843C E011004C 244203A4 */ addiu $v0, $v0, %lo(D_E01103A4) +/* 3F8440 E0110050 AFA20020 */ sw $v0, 0x20($sp) +/* 3F8444 E0110054 2402007A */ addiu $v0, $zero, 0x7a +/* 3F8448 E0110058 AFBF0038 */ sw $ra, 0x38($sp) +/* 3F844C E011005C AFB20030 */ sw $s2, 0x30($sp) +/* 3F8450 E0110060 AFB1002C */ sw $s1, 0x2c($sp) +/* 3F8454 E0110064 AFA00010 */ sw $zero, 0x10($sp) +/* 3F8458 E0110068 AFA00024 */ sw $zero, 0x24($sp) +/* 3F845C E011006C 0C080124 */ jal func_E0200490 +/* 3F8460 E0110070 AFA20014 */ sw $v0, 0x14($sp) +/* 3F8464 E0110074 2404005C */ addiu $a0, $zero, 0x5c +/* 3F8468 E0110078 24030001 */ addiu $v1, $zero, 1 +/* 3F846C E011007C 0040902D */ daddu $s2, $v0, $zero +/* 3F8470 E0110080 0C08012C */ jal func_E02004B0 +/* 3F8474 E0110084 AE430008 */ sw $v1, 8($s2) +/* 3F8478 E0110088 0040882D */ daddu $s1, $v0, $zero +/* 3F847C E011008C 16200003 */ bnez $s1, .LE011009C +/* 3F8480 E0110090 AE42000C */ sw $v0, 0xc($s2) +.LE0110094: +/* 3F8484 E0110094 08044025 */ j .LE0110094 +/* 3F8488 E0110098 00000000 */ nop +.LE011009C: +/* 3F848C E011009C AE330000 */ sw $s3, ($s1) +/* 3F8490 E01100A0 1E000004 */ bgtz $s0, .LE01100B4 +/* 3F8494 E01100A4 AE200014 */ sw $zero, 0x14($s1) +/* 3F8498 E01100A8 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3F849C E01100AC 0804402E */ j .LE01100B8 +/* 3F84A0 E01100B0 AE220010 */ sw $v0, 0x10($s1) +.LE01100B4: +/* 3F84A4 E01100B4 AE300010 */ sw $s0, 0x10($s1) +.LE01100B8: +/* 3F84A8 E01100B8 240200FF */ addiu $v0, $zero, 0xff +/* 3F84AC E01100BC AE220024 */ sw $v0, 0x24($s1) +/* 3F84B0 E01100C0 E6340004 */ swc1 $f20, 4($s1) +/* 3F84B4 E01100C4 E6360008 */ swc1 $f22, 8($s1) +/* 3F84B8 E01100C8 E638000C */ swc1 $f24, 0xc($s1) +/* 3F84BC E01100CC C7A00068 */ lwc1 $f0, 0x68($sp) +/* 3F84C0 E01100D0 24040001 */ addiu $a0, $zero, 1 +/* 3F84C4 E01100D4 AE220018 */ sw $v0, 0x18($s1) +/* 3F84C8 E01100D8 AE22001C */ sw $v0, 0x1c($s1) +/* 3F84CC E01100DC AE220020 */ sw $v0, 0x20($s1) +/* 3F84D0 E01100E0 AE220028 */ sw $v0, 0x28($s1) +/* 3F84D4 E01100E4 AE22002C */ sw $v0, 0x2c($s1) +/* 3F84D8 E01100E8 AE220030 */ sw $v0, 0x30($s1) +/* 3F84DC E01100EC AE220034 */ sw $v0, 0x34($s1) +/* 3F84E0 E01100F0 AE200044 */ sw $zero, 0x44($s1) +/* 3F84E4 E01100F4 0C080138 */ jal func_E02004E0 +/* 3F84E8 E01100F8 E6200038 */ swc1 $f0, 0x38($s1) +/* 3F84EC E01100FC 24040004 */ addiu $a0, $zero, 4 +/* 3F84F0 E0110100 0C080138 */ jal func_E02004E0 +/* 3F84F4 E0110104 0040802D */ daddu $s0, $v0, $zero +/* 3F84F8 E0110108 3C01E011 */ lui $at, %hi(D_E01108C0) +/* 3F84FC E011010C D42608C0 */ ldc1 $f6, %lo(D_E01108C0)($at) +/* 3F8500 E0110110 44821000 */ mtc1 $v0, $f2 +/* 3F8504 E0110114 00000000 */ nop +/* 3F8508 E0110118 468010A1 */ cvt.d.w $f2, $f2 +/* 3F850C E011011C 46261082 */ mul.d $f2, $f2, $f6 +/* 3F8510 E0110120 00000000 */ nop +/* 3F8514 E0110124 00108040 */ sll $s0, $s0, 1 +/* 3F8518 E0110128 2610FFFF */ addiu $s0, $s0, -1 +/* 3F851C E011012C 3C013FD0 */ lui $at, 0x3fd0 +/* 3F8520 E0110130 44812800 */ mtc1 $at, $f5 +/* 3F8524 E0110134 44802000 */ mtc1 $zero, $f4 +/* 3F8528 E0110138 44900000 */ mtc1 $s0, $f0 +/* 3F852C E011013C 00000000 */ nop +/* 3F8530 E0110140 46800021 */ cvt.d.w $f0, $f0 +/* 3F8534 E0110144 46240002 */ mul.d $f0, $f0, $f4 +/* 3F8538 E0110148 00000000 */ nop +/* 3F853C E011014C 46261080 */ add.d $f2, $f2, $f6 +/* 3F8540 E0110150 46220002 */ mul.d $f0, $f0, $f2 +/* 3F8544 E0110154 00000000 */ nop +/* 3F8548 E0110158 24040167 */ addiu $a0, $zero, 0x167 +/* 3F854C E011015C 46200020 */ cvt.s.d $f0, $f0 +/* 3F8550 E0110160 0C080138 */ jal func_E02004E0 +/* 3F8554 E0110164 E6200048 */ swc1 $f0, 0x48($s1) +/* 3F8558 E0110168 2404000A */ addiu $a0, $zero, 0xa +/* 3F855C E011016C 44820000 */ mtc1 $v0, $f0 +/* 3F8560 E0110170 00000000 */ nop +/* 3F8564 E0110174 46800020 */ cvt.s.w $f0, $f0 +/* 3F8568 E0110178 0C080138 */ jal func_E02004E0 +/* 3F856C E011017C E620003C */ swc1 $f0, 0x3c($s1) +/* 3F8570 E0110180 2404000A */ addiu $a0, $zero, 0xa +/* 3F8574 E0110184 2442FFFB */ addiu $v0, $v0, -5 +/* 3F8578 E0110188 44820000 */ mtc1 $v0, $f0 +/* 3F857C E011018C 00000000 */ nop +/* 3F8580 E0110190 46800020 */ cvt.s.w $f0, $f0 +/* 3F8584 E0110194 0C080138 */ jal func_E02004E0 +/* 3F8588 E0110198 E620004C */ swc1 $f0, 0x4c($s1) +/* 3F858C E011019C 2404000A */ addiu $a0, $zero, 0xa +/* 3F8590 E01101A0 2442FFFB */ addiu $v0, $v0, -5 +/* 3F8594 E01101A4 44820000 */ mtc1 $v0, $f0 +/* 3F8598 E01101A8 00000000 */ nop +/* 3F859C E01101AC 46800020 */ cvt.s.w $f0, $f0 +/* 3F85A0 E01101B0 0C080138 */ jal func_E02004E0 +/* 3F85A4 E01101B4 E6200050 */ swc1 $f0, 0x50($s1) +/* 3F85A8 E01101B8 24040028 */ addiu $a0, $zero, 0x28 +/* 3F85AC E01101BC 2442FFFB */ addiu $v0, $v0, -5 +/* 3F85B0 E01101C0 44820000 */ mtc1 $v0, $f0 +/* 3F85B4 E01101C4 00000000 */ nop +/* 3F85B8 E01101C8 46800020 */ cvt.s.w $f0, $f0 +/* 3F85BC E01101CC 0C080138 */ jal func_E02004E0 +/* 3F85C0 E01101D0 E6200054 */ swc1 $f0, 0x54($s1) +/* 3F85C4 E01101D4 2443FFEC */ addiu $v1, $v0, -0x14 +/* 3F85C8 E01101D8 0240102D */ daddu $v0, $s2, $zero +/* 3F85CC E01101DC 3C01BDCC */ lui $at, 0xbdcc +/* 3F85D0 E01101E0 3421CCCD */ ori $at, $at, 0xcccd +/* 3F85D4 E01101E4 44811000 */ mtc1 $at, $f2 +/* 3F85D8 E01101E8 44830000 */ mtc1 $v1, $f0 +/* 3F85DC E01101EC 00000000 */ nop +/* 3F85E0 E01101F0 46800020 */ cvt.s.w $f0, $f0 +/* 3F85E4 E01101F4 E6200040 */ swc1 $f0, 0x40($s1) +/* 3F85E8 E01101F8 E6220058 */ swc1 $f2, 0x58($s1) +/* 3F85EC E01101FC 8FBF0038 */ lw $ra, 0x38($sp) +/* 3F85F0 E0110200 8FB30034 */ lw $s3, 0x34($sp) +/* 3F85F4 E0110204 8FB20030 */ lw $s2, 0x30($sp) +/* 3F85F8 E0110208 8FB1002C */ lw $s1, 0x2c($sp) +/* 3F85FC E011020C 8FB00028 */ lw $s0, 0x28($sp) +/* 3F8600 E0110210 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 3F8604 E0110214 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 3F8608 E0110218 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 3F860C E011021C 03E00008 */ jr $ra +/* 3F8610 E0110220 27BD0058 */ addiu $sp, $sp, 0x58 diff --git a/asm/nonmatchings/code_3F83F0/func_E0110224.s b/asm/nonmatchings/code_3F83F0/func_E0110224.s new file mode 100644 index 0000000000..a43fc435a7 --- /dev/null +++ b/asm/nonmatchings/code_3F83F0/func_E0110224.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0110224 +/* 3F8614 E0110224 03E00008 */ jr $ra +/* 3F8618 E0110228 00000000 */ nop diff --git a/asm/nonmatchings/code_3F83F0/func_E011022C.s b/asm/nonmatchings/code_3F83F0/func_E011022C.s new file mode 100644 index 0000000000..7decc8ed0f --- /dev/null +++ b/asm/nonmatchings/code_3F83F0/func_E011022C.s @@ -0,0 +1,105 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011022C +/* 3F861C E011022C 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3F8620 E0110230 AFBF0010 */ sw $ra, 0x10($sp) +/* 3F8624 E0110234 8C850000 */ lw $a1, ($a0) +/* 3F8628 E0110238 8C83000C */ lw $v1, 0xc($a0) +/* 3F862C E011023C 30A20010 */ andi $v0, $a1, 0x10 +/* 3F8630 E0110240 8C660000 */ lw $a2, ($v1) +/* 3F8634 E0110244 10400005 */ beqz $v0, .LE011025C +/* 3F8638 E0110248 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3F863C E011024C 00A21024 */ and $v0, $a1, $v0 +/* 3F8640 E0110250 AC820000 */ sw $v0, ($a0) +/* 3F8644 E0110254 24020010 */ addiu $v0, $zero, 0x10 +/* 3F8648 E0110258 AC620010 */ sw $v0, 0x10($v1) +.LE011025C: +/* 3F864C E011025C 8C650010 */ lw $a1, 0x10($v1) +/* 3F8650 E0110260 28A203E8 */ slti $v0, $a1, 0x3e8 +/* 3F8654 E0110264 10400002 */ beqz $v0, .LE0110270 +/* 3F8658 E0110268 24A2FFFF */ addiu $v0, $a1, -1 +/* 3F865C E011026C AC620010 */ sw $v0, 0x10($v1) +.LE0110270: +/* 3F8660 E0110270 8C620014 */ lw $v0, 0x14($v1) +/* 3F8664 E0110274 8C650010 */ lw $a1, 0x10($v1) +/* 3F8668 E0110278 24420001 */ addiu $v0, $v0, 1 +/* 3F866C E011027C 04A10005 */ bgez $a1, .LE0110294 +/* 3F8670 E0110280 AC620014 */ sw $v0, 0x14($v1) +/* 3F8674 E0110284 0C080128 */ jal func_E02004A0 +/* 3F8678 E0110288 00000000 */ nop +/* 3F867C E011028C 080440E6 */ j .LE0110398 +/* 3F8680 E0110290 00000000 */ nop +.LE0110294: +/* 3F8684 E0110294 28A20010 */ slti $v0, $a1, 0x10 +/* 3F8688 E0110298 10400002 */ beqz $v0, .LE01102A4 +/* 3F868C E011029C 00051100 */ sll $v0, $a1, 4 +/* 3F8690 E01102A0 AC620024 */ sw $v0, 0x24($v1) +.LE01102A4: +/* 3F8694 E01102A4 C4620044 */ lwc1 $f2, 0x44($v1) +/* 3F8698 E01102A8 C4600048 */ lwc1 $f0, 0x48($v1) +/* 3F869C E01102AC 46001080 */ add.s $f2, $f2, $f0 +/* 3F86A0 E01102B0 44805000 */ mtc1 $zero, $f10 +/* 3F86A4 E01102B4 00000000 */ nop +/* 3F86A8 E01102B8 460A103C */ c.lt.s $f2, $f10 +/* 3F86AC E01102BC 00000000 */ nop +/* 3F86B0 E01102C0 45000006 */ bc1f .LE01102DC +/* 3F86B4 E01102C4 E4620044 */ swc1 $f2, 0x44($v1) +/* 3F86B8 E01102C8 3C013F80 */ lui $at, 0x3f80 +/* 3F86BC E01102CC 44810000 */ mtc1 $at, $f0 +/* 3F86C0 E01102D0 00000000 */ nop +/* 3F86C4 E01102D4 46001000 */ add.s $f0, $f2, $f0 +/* 3F86C8 E01102D8 E4600044 */ swc1 $f0, 0x44($v1) +.LE01102DC: +/* 3F86CC E01102DC C4600044 */ lwc1 $f0, 0x44($v1) +/* 3F86D0 E01102E0 3C013F80 */ lui $at, 0x3f80 +/* 3F86D4 E01102E4 44811000 */ mtc1 $at, $f2 +/* 3F86D8 E01102E8 00000000 */ nop +/* 3F86DC E01102EC 4600103C */ c.lt.s $f2, $f0 +/* 3F86E0 E01102F0 00000000 */ nop +/* 3F86E4 E01102F4 45000003 */ bc1f .LE0110304 +/* 3F86E8 E01102F8 00000000 */ nop +/* 3F86EC E01102FC 46020001 */ sub.s $f0, $f0, $f2 +/* 3F86F0 E0110300 E4600044 */ swc1 $f0, 0x44($v1) +.LE0110304: +/* 3F86F4 E0110304 C4620050 */ lwc1 $f2, 0x50($v1) +/* 3F86F8 E0110308 C4600058 */ lwc1 $f0, 0x58($v1) +/* 3F86FC E011030C C4680004 */ lwc1 $f8, 4($v1) +/* 3F8700 E0110310 46001080 */ add.s $f2, $f2, $f0 +/* 3F8704 E0110314 C460004C */ lwc1 $f0, 0x4c($v1) +/* 3F8708 E0110318 C466000C */ lwc1 $f6, 0xc($v1) +/* 3F870C E011031C 46004200 */ add.s $f8, $f8, $f0 +/* 3F8710 E0110320 C4600054 */ lwc1 $f0, 0x54($v1) +/* 3F8714 E0110324 C464003C */ lwc1 $f4, 0x3c($v1) +/* 3F8718 E0110328 46003180 */ add.s $f6, $f6, $f0 +/* 3F871C E011032C C4600040 */ lwc1 $f0, 0x40($v1) +/* 3F8720 E0110330 46002100 */ add.s $f4, $f4, $f0 +/* 3F8724 E0110334 C4600008 */ lwc1 $f0, 8($v1) +/* 3F8728 E0110338 28C20002 */ slti $v0, $a2, 2 +/* 3F872C E011033C E4620050 */ swc1 $f2, 0x50($v1) +/* 3F8730 E0110340 E4680004 */ swc1 $f8, 4($v1) +/* 3F8734 E0110344 46020000 */ add.s $f0, $f0, $f2 +/* 3F8738 E0110348 E466000C */ swc1 $f6, 0xc($v1) +/* 3F873C E011034C E464003C */ swc1 $f4, 0x3c($v1) +/* 3F8740 E0110350 14400011 */ bnez $v0, .LE0110398 +/* 3F8744 E0110354 E4600008 */ swc1 $f0, 8($v1) +/* 3F8748 E0110358 460A003C */ c.lt.s $f0, $f10 +/* 3F874C E011035C 00000000 */ nop +/* 3F8750 E0110360 4500000D */ bc1f .LE0110398 +/* 3F8754 E0110364 46001006 */ mov.s $f0, $f2 +/* 3F8758 E0110368 460A003C */ c.lt.s $f0, $f10 +/* 3F875C E011036C 00000000 */ nop +/* 3F8760 E0110370 45000009 */ bc1f .LE0110398 +/* 3F8764 E0110374 00000000 */ nop +/* 3F8768 E0110378 3C01E011 */ lui $at, %hi(D_E01108C8) +/* 3F876C E011037C D42208C8 */ ldc1 $f2, %lo(D_E01108C8)($at) +/* 3F8770 E0110380 46000021 */ cvt.d.s $f0, $f0 +/* 3F8774 E0110384 46220002 */ mul.d $f0, $f0, $f2 +/* 3F8778 E0110388 00000000 */ nop +/* 3F877C E011038C E46A0008 */ swc1 $f10, 8($v1) +/* 3F8780 E0110390 46200020 */ cvt.s.d $f0, $f0 +/* 3F8784 E0110394 E4600050 */ swc1 $f0, 0x50($v1) +.LE0110398: +/* 3F8788 E0110398 8FBF0010 */ lw $ra, 0x10($sp) +/* 3F878C E011039C 03E00008 */ jr $ra +/* 3F8790 E01103A0 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3F83F0/func_E01103A4.s b/asm/nonmatchings/code_3F83F0/func_E01103A4.s new file mode 100644 index 0000000000..0b7cf2f88e --- /dev/null +++ b/asm/nonmatchings/code_3F83F0/func_E01103A4.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01103A4 +/* 3F8794 E01103A4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3F8798 E01103A8 3C02E011 */ lui $v0, %hi(D_E01103EC) +/* 3F879C E01103AC 244203EC */ addiu $v0, $v0, %lo(D_E01103EC) +/* 3F87A0 E01103B0 AFA2001C */ sw $v0, 0x1c($sp) +/* 3F87A4 E01103B4 2402000A */ addiu $v0, $zero, 0xa +/* 3F87A8 E01103B8 AFA20014 */ sw $v0, 0x14($sp) +/* 3F87AC E01103BC 2402002D */ addiu $v0, $zero, 0x2d +/* 3F87B0 E01103C0 AFA40018 */ sw $a0, 0x18($sp) +/* 3F87B4 E01103C4 27A40010 */ addiu $a0, $sp, 0x10 +/* 3F87B8 E01103C8 AFBF0020 */ sw $ra, 0x20($sp) +/* 3F87BC E01103CC 0C080120 */ jal func_E0200480 +/* 3F87C0 E01103D0 AFA20010 */ sw $v0, 0x10($sp) +/* 3F87C4 E01103D4 8C430000 */ lw $v1, ($v0) +/* 3F87C8 E01103D8 34630002 */ ori $v1, $v1, 2 +/* 3F87CC E01103DC AC430000 */ sw $v1, ($v0) +/* 3F87D0 E01103E0 8FBF0020 */ lw $ra, 0x20($sp) +/* 3F87D4 E01103E4 03E00008 */ jr $ra +/* 3F87D8 E01103E8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3F83F0/func_E01103EC.s b/asm/nonmatchings/code_3F83F0/func_E01103EC.s new file mode 100644 index 0000000000..7121aecf75 --- /dev/null +++ b/asm/nonmatchings/code_3F83F0/func_E01103EC.s @@ -0,0 +1,311 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01103EC +/* 3F87DC E01103EC 27BDFF38 */ addiu $sp, $sp, -0xc8 +/* 3F87E0 E01103F0 0080402D */ daddu $t0, $a0, $zero +/* 3F87E4 E01103F4 3C09DB06 */ lui $t1, 0xdb06 +/* 3F87E8 E01103F8 35290024 */ ori $t1, $t1, 0x24 +/* 3F87EC E01103FC AFB500B4 */ sw $s5, 0xb4($sp) +/* 3F87F0 E0110400 3C15800A */ lui $s5, %hi(D_8009A66C) +/* 3F87F4 E0110404 26B5A66C */ addiu $s5, $s5, %lo(D_8009A66C) +/* 3F87F8 E0110408 3C02E700 */ lui $v0, 0xe700 +/* 3F87FC E011040C AFBF00BC */ sw $ra, 0xbc($sp) +/* 3F8800 E0110410 AFB600B8 */ sw $s6, 0xb8($sp) +/* 3F8804 E0110414 AFB400B0 */ sw $s4, 0xb0($sp) +/* 3F8808 E0110418 AFB300AC */ sw $s3, 0xac($sp) +/* 3F880C E011041C AFB200A8 */ sw $s2, 0xa8($sp) +/* 3F8810 E0110420 AFB100A4 */ sw $s1, 0xa4($sp) +/* 3F8814 E0110424 AFB000A0 */ sw $s0, 0xa0($sp) +/* 3F8818 E0110428 F7B400C0 */ sdc1 $f20, 0xc0($sp) +/* 3F881C E011042C 8EA60000 */ lw $a2, ($s5) +/* 3F8820 E0110430 4480A000 */ mtc1 $zero, $f20 +/* 3F8824 E0110434 8D14000C */ lw $s4, 0xc($t0) +/* 3F8828 E0110438 00C0182D */ daddu $v1, $a2, $zero +/* 3F882C E011043C 8E960024 */ lw $s6, 0x24($s4) +/* 3F8830 E0110440 8E930000 */ lw $s3, ($s4) +/* 3F8834 E0110444 24C60008 */ addiu $a2, $a2, 8 +/* 3F8838 E0110448 AC620000 */ sw $v0, ($v1) +/* 3F883C E011044C AC600004 */ sw $zero, 4($v1) +/* 3F8840 E0110450 ACC90000 */ sw $t1, ($a2) +/* 3F8844 E0110454 8D020010 */ lw $v0, 0x10($t0) +/* 3F8848 E0110458 3C088000 */ lui $t0, 0x8000 +/* 3F884C E011045C 4405A000 */ mfc1 $a1, $f20 +/* 3F8850 E0110460 4407A000 */ mfc1 $a3, $f20 +/* 3F8854 E0110464 8C42001C */ lw $v0, 0x1c($v0) +/* 3F8858 E0110468 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 3F885C E011046C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 3F8860 E0110470 00481021 */ addu $v0, $v0, $t0 +/* 3F8864 E0110474 ACC20004 */ sw $v0, 4($a2) +/* 3F8868 E0110478 00031080 */ sll $v0, $v1, 2 +/* 3F886C E011047C 00431021 */ addu $v0, $v0, $v1 +/* 3F8870 E0110480 00021080 */ sll $v0, $v0, 2 +/* 3F8874 E0110484 00431023 */ subu $v0, $v0, $v1 +/* 3F8878 E0110488 000218C0 */ sll $v1, $v0, 3 +/* 3F887C E011048C 00431021 */ addu $v0, $v0, $v1 +/* 3F8880 E0110490 000210C0 */ sll $v0, $v0, 3 +/* 3F8884 E0110494 C6800038 */ lwc1 $f0, 0x38($s4) +/* 3F8888 E0110498 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3F888C E011049C 00220821 */ addu $at, $at, $v0 +/* 3F8890 E01104A0 C4221DEC */ lwc1 $f2, %lo(D_800B1DEC)($at) +/* 3F8894 E01104A4 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3F8898 E01104A8 C6800004 */ lwc1 $f0, 4($s4) +/* 3F889C E01104AC 27A40020 */ addiu $a0, $sp, 0x20 +/* 3F88A0 E01104B0 AEA60000 */ sw $a2, ($s5) +/* 3F88A4 E01104B4 24C60008 */ addiu $a2, $a2, 8 +/* 3F88A8 E01104B8 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3F88AC E01104BC C6800008 */ lwc1 $f0, 8($s4) +/* 3F88B0 E01104C0 46001087 */ neg.s $f2, $f2 +/* 3F88B4 E01104C4 AEA60000 */ sw $a2, ($s5) +/* 3F88B8 E01104C8 44061000 */ mfc1 $a2, $f2 +/* 3F88BC E01104CC 3C120001 */ lui $s2, 1 +/* 3F88C0 E01104D0 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3F88C4 E01104D4 C680000C */ lwc1 $f0, 0xc($s4) +/* 3F88C8 E01104D8 36521630 */ ori $s2, $s2, 0x1630 +/* 3F88CC E01104DC 0C080180 */ jal func_E0200600 +/* 3F88D0 E01104E0 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3F88D4 E01104E4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3F88D8 E01104E8 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3F88DC E01104EC 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3F88E0 E01104F0 3C11800A */ lui $s1, %hi(D_8009A674) +/* 3F88E4 E01104F4 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 3F88E8 E01104F8 96050000 */ lhu $a1, ($s0) +/* 3F88EC E01104FC 8E220000 */ lw $v0, ($s1) +/* 3F88F0 E0110500 00052980 */ sll $a1, $a1, 6 +/* 3F88F4 E0110504 00B22821 */ addu $a1, $a1, $s2 +/* 3F88F8 E0110508 0C080118 */ jal func_E0200460 +/* 3F88FC E011050C 00452821 */ addu $a1, $v0, $a1 +/* 3F8900 E0110510 3C02DA38 */ lui $v0, 0xda38 +/* 3F8904 E0110514 34420002 */ ori $v0, $v0, 2 +/* 3F8908 E0110518 27A40020 */ addiu $a0, $sp, 0x20 +/* 3F890C E011051C 8EA90000 */ lw $t1, ($s5) +/* 3F8910 E0110520 4406A000 */ mfc1 $a2, $f20 +/* 3F8914 E0110524 96080000 */ lhu $t0, ($s0) +/* 3F8918 E0110528 3C013F80 */ lui $at, 0x3f80 +/* 3F891C E011052C 44810000 */ mtc1 $at, $f0 +/* 3F8920 E0110530 00C0382D */ daddu $a3, $a2, $zero +/* 3F8924 E0110534 0120282D */ daddu $a1, $t1, $zero +/* 3F8928 E0110538 3103FFFF */ andi $v1, $t0, 0xffff +/* 3F892C E011053C 00031980 */ sll $v1, $v1, 6 +/* 3F8930 E0110540 00721821 */ addu $v1, $v1, $s2 +/* 3F8934 E0110544 ACA20000 */ sw $v0, ($a1) +/* 3F8938 E0110548 8E220000 */ lw $v0, ($s1) +/* 3F893C E011054C 25290008 */ addiu $t1, $t1, 8 +/* 3F8940 E0110550 00431021 */ addu $v0, $v0, $v1 +/* 3F8944 E0110554 ACA20004 */ sw $v0, 4($a1) +/* 3F8948 E0110558 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3F894C E011055C 8E85003C */ lw $a1, 0x3c($s4) +/* 3F8950 E0110560 25080001 */ addiu $t0, $t0, 1 +/* 3F8954 E0110564 AEA90000 */ sw $t1, ($s5) +/* 3F8958 E0110568 0C080104 */ jal func_E0200410 +/* 3F895C E011056C A6080000 */ sh $t0, ($s0) +/* 3F8960 E0110570 27A40020 */ addiu $a0, $sp, 0x20 +/* 3F8964 E0110574 96050000 */ lhu $a1, ($s0) +/* 3F8968 E0110578 8E220000 */ lw $v0, ($s1) +/* 3F896C E011057C 00052980 */ sll $a1, $a1, 6 +/* 3F8970 E0110580 00B22821 */ addu $a1, $a1, $s2 +/* 3F8974 E0110584 0C080118 */ jal func_E0200460 +/* 3F8978 E0110588 00452821 */ addu $a1, $v0, $a1 +/* 3F897C E011058C 3C07D838 */ lui $a3, 0xd838 +/* 3F8980 E0110590 3C03DA38 */ lui $v1, 0xda38 +/* 3F8984 E0110594 3C0BDE00 */ lui $t3, 0xde00 +/* 3F8988 E0110598 3C0CFA00 */ lui $t4, 0xfa00 +/* 3F898C E011059C 8EA90000 */ lw $t1, ($s5) +/* 3F8990 E01105A0 3C014080 */ lui $at, 0x4080 +/* 3F8994 E01105A4 44812000 */ mtc1 $at, $f4 +/* 3F8998 E01105A8 0120202D */ daddu $a0, $t1, $zero +/* 3F899C E01105AC 25290008 */ addiu $t1, $t1, 8 +/* 3F89A0 E01105B0 AEA90000 */ sw $t1, ($s5) +/* 3F89A4 E01105B4 96020000 */ lhu $v0, ($s0) +/* 3F89A8 E01105B8 3C06F200 */ lui $a2, 0xf200 +/* 3F89AC E01105BC AC830000 */ sw $v1, ($a0) +/* 3F89B0 E01105C0 24430001 */ addiu $v1, $v0, 1 +/* 3F89B4 E01105C4 3042FFFF */ andi $v0, $v0, 0xffff +/* 3F89B8 E01105C8 00021180 */ sll $v0, $v0, 6 +/* 3F89BC E01105CC A6030000 */ sh $v1, ($s0) +/* 3F89C0 E01105D0 8E230000 */ lw $v1, ($s1) +/* 3F89C4 E01105D4 00521021 */ addu $v0, $v0, $s2 +/* 3F89C8 E01105D8 00621821 */ addu $v1, $v1, $v0 +/* 3F89CC E01105DC 25220008 */ addiu $v0, $t1, 8 +/* 3F89D0 E01105E0 AC830004 */ sw $v1, 4($a0) +/* 3F89D4 E01105E4 AEA20000 */ sw $v0, ($s5) +/* 3F89D8 E01105E8 25220010 */ addiu $v0, $t1, 0x10 +/* 3F89DC E01105EC AD2B0000 */ sw $t3, ($t1) +/* 3F89E0 E01105F0 AEA20000 */ sw $v0, ($s5) +/* 3F89E4 E01105F4 25220018 */ addiu $v0, $t1, 0x18 +/* 3F89E8 E01105F8 AEA20000 */ sw $v0, ($s5) +/* 3F89EC E01105FC 3C03E011 */ lui $v1, %hi(D_E01108B4) +/* 3F89F0 E0110600 8C6308B4 */ lw $v1, %lo(D_E01108B4)($v1) +/* 3F89F4 E0110604 25220020 */ addiu $v0, $t1, 0x20 +/* 3F89F8 E0110608 AEA20000 */ sw $v0, ($s5) +/* 3F89FC E011060C 001317C2 */ srl $v0, $s3, 0x1f +/* 3F8A00 E0110610 02621021 */ addu $v0, $s3, $v0 +/* 3F8A04 E0110614 00021043 */ sra $v0, $v0, 1 +/* 3F8A08 E0110618 00021040 */ sll $v0, $v0, 1 +/* 3F8A0C E011061C 02629823 */ subu $s3, $s3, $v0 +/* 3F8A10 E0110620 001329C0 */ sll $a1, $s3, 7 +/* 3F8A14 E0110624 30A50FFF */ andi $a1, $a1, 0xfff +/* 3F8A18 E0110628 00052B00 */ sll $a1, $a1, 0xc +/* 3F8A1C E011062C AD230004 */ sw $v1, 4($t1) +/* 3F8A20 E0110630 C6800044 */ lwc1 $f0, 0x44($s4) +/* 3F8A24 E0110634 001319C0 */ sll $v1, $s3, 7 +/* 3F8A28 E0110638 46040082 */ mul.s $f2, $f0, $f4 +/* 3F8A2C E011063C 00000000 */ nop +/* 3F8A30 E0110640 3463007C */ ori $v1, $v1, 0x7c +/* 3F8A34 E0110644 30630FFF */ andi $v1, $v1, 0xfff +/* 3F8A38 E0110648 00031B00 */ sll $v1, $v1, 0xc +/* 3F8A3C E011064C AD2C0018 */ sw $t4, 0x18($t1) +/* 3F8A40 E0110650 4600118D */ trunc.w.s $f6, $f2 +/* 3F8A44 E0110654 44043000 */ mfc1 $a0, $f6 +/* 3F8A48 E0110658 00000000 */ nop +/* 3F8A4C E011065C 000411C0 */ sll $v0, $a0, 7 +/* 3F8A50 E0110660 30420FFF */ andi $v0, $v0, 0xfff +/* 3F8A54 E0110664 00461025 */ or $v0, $v0, $a2 +/* 3F8A58 E0110668 00A21025 */ or $v0, $a1, $v0 +/* 3F8A5C E011066C 00042140 */ sll $a0, $a0, 5 +/* 3F8A60 E0110670 AD220008 */ sw $v0, 8($t1) +/* 3F8A64 E0110674 2482001F */ addiu $v0, $a0, 0x1f +/* 3F8A68 E0110678 00021080 */ sll $v0, $v0, 2 +/* 3F8A6C E011067C 30420FFF */ andi $v0, $v0, 0xfff +/* 3F8A70 E0110680 00621025 */ or $v0, $v1, $v0 +/* 3F8A74 E0110684 AD22000C */ sw $v0, 0xc($t1) +/* 3F8A78 E0110688 24820020 */ addiu $v0, $a0, 0x20 +/* 3F8A7C E011068C 00021080 */ sll $v0, $v0, 2 +/* 3F8A80 E0110690 30420FFF */ andi $v0, $v0, 0xfff +/* 3F8A84 E0110694 00461025 */ or $v0, $v0, $a2 +/* 3F8A88 E0110698 00A22825 */ or $a1, $a1, $v0 +/* 3F8A8C E011069C 2484003F */ addiu $a0, $a0, 0x3f +/* 3F8A90 E01106A0 00042080 */ sll $a0, $a0, 2 +/* 3F8A94 E01106A4 30840FFF */ andi $a0, $a0, 0xfff +/* 3F8A98 E01106A8 3C020100 */ lui $v0, 0x100 +/* 3F8A9C E01106AC 00822025 */ or $a0, $a0, $v0 +/* 3F8AA0 E01106B0 00641825 */ or $v1, $v1, $a0 +/* 3F8AA4 E01106B4 AD250010 */ sw $a1, 0x10($t1) +/* 3F8AA8 E01106B8 AD230014 */ sw $v1, 0x14($t1) +/* 3F8AAC E01106BC 9283001B */ lbu $v1, 0x1b($s4) +/* 3F8AB0 E01106C0 9284001F */ lbu $a0, 0x1f($s4) +/* 3F8AB4 E01106C4 92850023 */ lbu $a1, 0x23($s4) +/* 3F8AB8 E01106C8 25220028 */ addiu $v0, $t1, 0x28 +/* 3F8ABC E01106CC AEA20000 */ sw $v0, ($s5) +/* 3F8AC0 E01106D0 3C02FB00 */ lui $v0, 0xfb00 +/* 3F8AC4 E01106D4 AD220020 */ sw $v0, 0x20($t1) +/* 3F8AC8 E01106D8 4600018D */ trunc.w.s $f6, $f0 +/* 3F8ACC E01106DC 44023000 */ mfc1 $v0, $f6 +/* 3F8AD0 E01106E0 00000000 */ nop +/* 3F8AD4 E01106E4 00021080 */ sll $v0, $v0, 2 +/* 3F8AD8 E01106E8 44820000 */ mtc1 $v0, $f0 +/* 3F8ADC E01106EC 00000000 */ nop +/* 3F8AE0 E01106F0 46800020 */ cvt.s.w $f0, $f0 +/* 3F8AE4 E01106F4 32C200FF */ andi $v0, $s6, 0xff +/* 3F8AE8 E01106F8 46001081 */ sub.s $f2, $f2, $f0 +/* 3F8AEC E01106FC 3C014380 */ lui $at, 0x4380 +/* 3F8AF0 E0110700 44810000 */ mtc1 $at, $f0 +/* 3F8AF4 E0110704 00031E00 */ sll $v1, $v1, 0x18 +/* 3F8AF8 E0110708 00042400 */ sll $a0, $a0, 0x10 +/* 3F8AFC E011070C 00641825 */ or $v1, $v1, $a0 +/* 3F8B00 E0110710 00052A00 */ sll $a1, $a1, 8 +/* 3F8B04 E0110714 00651825 */ or $v1, $v1, $a1 +/* 3F8B08 E0110718 00621825 */ or $v1, $v1, $v0 +/* 3F8B0C E011071C AD23001C */ sw $v1, 0x1c($t1) +/* 3F8B10 E0110720 9282002B */ lbu $v0, 0x2b($s4) +/* 3F8B14 E0110724 9283002F */ lbu $v1, 0x2f($s4) +/* 3F8B18 E0110728 92840033 */ lbu $a0, 0x33($s4) +/* 3F8B1C E011072C 34E70002 */ ori $a3, $a3, 2 +/* 3F8B20 E0110730 AD2B0028 */ sw $t3, 0x28($t1) +/* 3F8B24 E0110734 00021600 */ sll $v0, $v0, 0x18 +/* 3F8B28 E0110738 46001082 */ mul.s $f2, $f2, $f0 +/* 3F8B2C E011073C 00000000 */ nop +/* 3F8B30 E0110740 00031C00 */ sll $v1, $v1, 0x10 +/* 3F8B34 E0110744 00431025 */ or $v0, $v0, $v1 +/* 3F8B38 E0110748 00042200 */ sll $a0, $a0, 8 +/* 3F8B3C E011074C 00441025 */ or $v0, $v0, $a0 +/* 3F8B40 E0110750 4600118D */ trunc.w.s $f6, $f2 +/* 3F8B44 E0110754 440A3000 */ mfc1 $t2, $f6 +/* 3F8B48 E0110758 00000000 */ nop +/* 3F8B4C E011075C 314300FF */ andi $v1, $t2, 0xff +/* 3F8B50 E0110760 00431025 */ or $v0, $v0, $v1 +/* 3F8B54 E0110764 AD220024 */ sw $v0, 0x24($t1) +/* 3F8B58 E0110768 3C03E011 */ lui $v1, %hi(D_E01108B0) +/* 3F8B5C E011076C 8C6308B0 */ lw $v1, %lo(D_E01108B0)($v1) +/* 3F8B60 E0110770 25220030 */ addiu $v0, $t1, 0x30 +/* 3F8B64 E0110774 AEA20000 */ sw $v0, ($s5) +/* 3F8B68 E0110778 25220038 */ addiu $v0, $t1, 0x38 +/* 3F8B6C E011077C AD23002C */ sw $v1, 0x2c($t1) +/* 3F8B70 E0110780 AEA20000 */ sw $v0, ($s5) +/* 3F8B74 E0110784 24020040 */ addiu $v0, $zero, 0x40 +/* 3F8B78 E0110788 AD220034 */ sw $v0, 0x34($t1) +/* 3F8B7C E011078C 24020001 */ addiu $v0, $zero, 1 +/* 3F8B80 E0110790 16620030 */ bne $s3, $v0, .LE0110854 +/* 3F8B84 E0110794 AD270030 */ sw $a3, 0x30($t1) +/* 3F8B88 E0110798 C6800044 */ lwc1 $f0, 0x44($s4) +/* 3F8B8C E011079C 46040002 */ mul.s $f0, $f0, $f4 +/* 3F8B90 E01107A0 00000000 */ nop +/* 3F8B94 E01107A4 24020003 */ addiu $v0, $zero, 3 +/* 3F8B98 E01107A8 4600018D */ trunc.w.s $f6, $f0 +/* 3F8B9C E01107AC 44033000 */ mfc1 $v1, $f6 +/* 3F8BA0 E01107B0 00000000 */ nop +/* 3F8BA4 E01107B4 14620028 */ bne $v1, $v0, .LE0110858 +/* 3F8BA8 E01107B8 3C05D838 */ lui $a1, 0xd838 +/* 3F8BAC E01107BC 3C088080 */ lui $t0, 0x8080 +/* 3F8BB0 E01107C0 35088081 */ ori $t0, $t0, 0x8081 +/* 3F8BB4 E01107C4 3C07FCFF */ lui $a3, 0xfcff +/* 3F8BB8 E01107C8 34E7C7FF */ ori $a3, $a3, 0xc7ff +/* 3F8BBC E01107CC 3C04FF8D */ lui $a0, 0xff8d +/* 3F8BC0 E01107D0 3484FEFF */ ori $a0, $a0, 0xfeff +/* 3F8BC4 E01107D4 25220040 */ addiu $v0, $t1, 0x40 +/* 3F8BC8 E01107D8 AEA20000 */ sw $v0, ($s5) +/* 3F8BCC E01107DC AD2C0038 */ sw $t4, 0x38($t1) +/* 3F8BD0 E01107E0 9283001B */ lbu $v1, 0x1b($s4) +/* 3F8BD4 E01107E4 9285001F */ lbu $a1, 0x1f($s4) +/* 3F8BD8 E01107E8 92860023 */ lbu $a2, 0x23($s4) +/* 3F8BDC E01107EC 25220048 */ addiu $v0, $t1, 0x48 +/* 3F8BE0 E01107F0 AEA20000 */ sw $v0, ($s5) +/* 3F8BE4 E01107F4 25220050 */ addiu $v0, $t1, 0x50 +/* 3F8BE8 E01107F8 02CA0018 */ mult $s6, $t2 +/* 3F8BEC E01107FC AD270040 */ sw $a3, 0x40($t1) +/* 3F8BF0 E0110800 AD240044 */ sw $a0, 0x44($t1) +/* 3F8BF4 E0110804 AEA20000 */ sw $v0, ($s5) +/* 3F8BF8 E0110808 3C020900 */ lui $v0, 0x900 +/* 3F8BFC E011080C 24421168 */ addiu $v0, $v0, 0x1168 +/* 3F8C00 E0110810 AD2B0048 */ sw $t3, 0x48($t1) +/* 3F8C04 E0110814 00002012 */ mflo $a0 +/* 3F8C08 E0110818 AD22004C */ sw $v0, 0x4c($t1) +/* 3F8C0C E011081C 00031E00 */ sll $v1, $v1, 0x18 +/* 3F8C10 E0110820 00880018 */ mult $a0, $t0 +/* 3F8C14 E0110824 00052C00 */ sll $a1, $a1, 0x10 +/* 3F8C18 E0110828 00651825 */ or $v1, $v1, $a1 +/* 3F8C1C E011082C 00063200 */ sll $a2, $a2, 8 +/* 3F8C20 E0110830 00661825 */ or $v1, $v1, $a2 +/* 3F8C24 E0110834 00001010 */ mfhi $v0 +/* 3F8C28 E0110838 00441021 */ addu $v0, $v0, $a0 +/* 3F8C2C E011083C 000211C3 */ sra $v0, $v0, 7 +/* 3F8C30 E0110840 000427C3 */ sra $a0, $a0, 0x1f +/* 3F8C34 E0110844 00441023 */ subu $v0, $v0, $a0 +/* 3F8C38 E0110848 304200FF */ andi $v0, $v0, 0xff +/* 3F8C3C E011084C 00621825 */ or $v1, $v1, $v0 +/* 3F8C40 E0110850 AD23003C */ sw $v1, 0x3c($t1) +.LE0110854: +/* 3F8C44 E0110854 3C05D838 */ lui $a1, 0xd838 +.LE0110858: +/* 3F8C48 E0110858 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 3F8C4C E011085C 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 3F8C50 E0110860 8C620000 */ lw $v0, ($v1) +/* 3F8C54 E0110864 34A50002 */ ori $a1, $a1, 2 +/* 3F8C58 E0110868 0040202D */ daddu $a0, $v0, $zero +/* 3F8C5C E011086C 24420008 */ addiu $v0, $v0, 8 +/* 3F8C60 E0110870 AC620000 */ sw $v0, ($v1) +/* 3F8C64 E0110874 24020040 */ addiu $v0, $zero, 0x40 +/* 3F8C68 E0110878 AC850000 */ sw $a1, ($a0) +/* 3F8C6C E011087C AC820004 */ sw $v0, 4($a0) +/* 3F8C70 E0110880 8FBF00BC */ lw $ra, 0xbc($sp) +/* 3F8C74 E0110884 8FB600B8 */ lw $s6, 0xb8($sp) +/* 3F8C78 E0110888 8FB500B4 */ lw $s5, 0xb4($sp) +/* 3F8C7C E011088C 8FB400B0 */ lw $s4, 0xb0($sp) +/* 3F8C80 E0110890 8FB300AC */ lw $s3, 0xac($sp) +/* 3F8C84 E0110894 8FB200A8 */ lw $s2, 0xa8($sp) +/* 3F8C88 E0110898 8FB100A4 */ lw $s1, 0xa4($sp) +/* 3F8C8C E011089C 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3F8C90 E01108A0 D7B400C0 */ ldc1 $f20, 0xc0($sp) +/* 3F8C94 E01108A4 03E00008 */ jr $ra +/* 3F8C98 E01108A8 27BD00C8 */ addiu $sp, $sp, 0xc8 +/* 3F8C9C E01108AC 00000000 */ nop diff --git a/asm/nonmatchings/code_3F9E50/func_E0112000.s b/asm/nonmatchings/code_3F9E50/func_E0112000.s new file mode 100644 index 0000000000..fe13c7f1ae --- /dev/null +++ b/asm/nonmatchings/code_3F9E50/func_E0112000.s @@ -0,0 +1,120 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0112000 +/* 3F9E50 E0112000 27BDFF80 */ addiu $sp, $sp, -0x80 +/* 3F9E54 E0112004 F7B80068 */ sdc1 $f24, 0x68($sp) +/* 3F9E58 E0112008 4485C000 */ mtc1 $a1, $f24 +/* 3F9E5C E011200C F7BC0078 */ sdc1 $f28, 0x78($sp) +/* 3F9E60 E0112010 4486E000 */ mtc1 $a2, $f28 +/* 3F9E64 E0112014 F7BA0070 */ sdc1 $f26, 0x70($sp) +/* 3F9E68 E0112018 4487D000 */ mtc1 $a3, $f26 +/* 3F9E6C E011201C AFB20048 */ sw $s2, 0x48($sp) +/* 3F9E70 E0112020 0080902D */ daddu $s2, $a0, $zero +/* 3F9E74 E0112024 F7B40058 */ sdc1 $f20, 0x58($sp) +/* 3F9E78 E0112028 C7B40090 */ lwc1 $f20, 0x90($sp) +/* 3F9E7C E011202C 27A40028 */ addiu $a0, $sp, 0x28 +/* 3F9E80 E0112030 AFB3004C */ sw $s3, 0x4c($sp) +/* 3F9E84 E0112034 8FB30094 */ lw $s3, 0x94($sp) +/* 3F9E88 E0112038 3C02E011 */ lui $v0, %hi(D_E01121B8) +/* 3F9E8C E011203C 244221B8 */ addiu $v0, $v0, %lo(D_E01121B8) +/* 3F9E90 E0112040 AFA20030 */ sw $v0, 0x30($sp) +/* 3F9E94 E0112044 3C02E011 */ lui $v0, %hi(D_E01121C0) +/* 3F9E98 E0112048 244221C0 */ addiu $v0, $v0, %lo(D_E01121C0) +/* 3F9E9C E011204C AFA20034 */ sw $v0, 0x34($sp) +/* 3F9EA0 E0112050 3C02E011 */ lui $v0, %hi(D_E01122E8) +/* 3F9EA4 E0112054 244222E8 */ addiu $v0, $v0, %lo(D_E01122E8) +/* 3F9EA8 E0112058 AFA20038 */ sw $v0, 0x38($sp) +/* 3F9EAC E011205C 2402007B */ addiu $v0, $zero, 0x7b +/* 3F9EB0 E0112060 AFBF0050 */ sw $ra, 0x50($sp) +/* 3F9EB4 E0112064 AFB10044 */ sw $s1, 0x44($sp) +/* 3F9EB8 E0112068 AFB00040 */ sw $s0, 0x40($sp) +/* 3F9EBC E011206C F7B60060 */ sdc1 $f22, 0x60($sp) +/* 3F9EC0 E0112070 AFA00028 */ sw $zero, 0x28($sp) +/* 3F9EC4 E0112074 AFA0003C */ sw $zero, 0x3c($sp) +/* 3F9EC8 E0112078 0C080124 */ jal func_E0200490 +/* 3F9ECC E011207C AFA2002C */ sw $v0, 0x2c($sp) +/* 3F9ED0 E0112080 24040038 */ addiu $a0, $zero, 0x38 +/* 3F9ED4 E0112084 24030001 */ addiu $v1, $zero, 1 +/* 3F9ED8 E0112088 0040882D */ daddu $s1, $v0, $zero +/* 3F9EDC E011208C 0C08012C */ jal func_E02004B0 +/* 3F9EE0 E0112090 AE230008 */ sw $v1, 8($s1) +/* 3F9EE4 E0112094 0040802D */ daddu $s0, $v0, $zero +/* 3F9EE8 E0112098 16000003 */ bnez $s0, .LE01120A8 +/* 3F9EEC E011209C AE22000C */ sw $v0, 0xc($s1) +.LE01120A0: +/* 3F9EF0 E01120A0 08044828 */ j .LE01120A0 +/* 3F9EF4 E01120A4 00000000 */ nop +.LE01120A8: +/* 3F9EF8 E01120A8 AE120000 */ sw $s2, ($s0) +/* 3F9EFC E01120AC 1E600004 */ bgtz $s3, .LE01120C0 +/* 3F9F00 E01120B0 AE000014 */ sw $zero, 0x14($s0) +/* 3F9F04 E01120B4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3F9F08 E01120B8 08044831 */ j .LE01120C4 +/* 3F9F0C E01120BC AE020010 */ sw $v0, 0x10($s0) +.LE01120C0: +/* 3F9F10 E01120C0 AE130010 */ sw $s3, 0x10($s0) +.LE01120C4: +/* 3F9F14 E01120C4 3C0141F0 */ lui $at, 0x41f0 +/* 3F9F18 E01120C8 4481B000 */ mtc1 $at, $f22 +/* 3F9F1C E01120CC E6180004 */ swc1 $f24, 4($s0) +/* 3F9F20 E01120D0 E61C0008 */ swc1 $f28, 8($s0) +/* 3F9F24 E01120D4 E61A000C */ swc1 $f26, 0xc($s0) +/* 3F9F28 E01120D8 E6140018 */ swc1 $f20, 0x18($s0) +/* 3F9F2C E01120DC AE000024 */ sw $zero, 0x24($s0) +/* 3F9F30 E01120E0 A2000034 */ sb $zero, 0x34($s0) +/* 3F9F34 E01120E4 1640000D */ bnez $s2, .LE011211C +/* 3F9F38 E01120E8 E6160020 */ swc1 $f22, 0x20($s0) +/* 3F9F3C E01120EC 0C080150 */ jal func_E0200540 +/* 3F9F40 E01120F0 24040024 */ addiu $a0, $zero, 0x24 +/* 3F9F44 E01120F4 3C014040 */ lui $at, 0x4040 +/* 3F9F48 E01120F8 44810000 */ mtc1 $at, $f0 +/* 3F9F4C E01120FC 2402001E */ addiu $v0, $zero, 0x1e +/* 3F9F50 E0112100 AFA20014 */ sw $v0, 0x14($sp) +/* 3F9F54 E0112104 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3F9F58 E0112108 8E050004 */ lw $a1, 4($s0) +/* 3F9F5C E011210C 8E060008 */ lw $a2, 8($s0) +/* 3F9F60 E0112110 8E07000C */ lw $a3, 0xc($s0) +/* 3F9F64 E0112114 0C012000 */ jal func_E0048000 +/* 3F9F68 E0112118 24040001 */ addiu $a0, $zero, 1 +.LE011211C: +/* 3F9F6C E011211C 2A420002 */ slti $v0, $s2, 2 +/* 3F9F70 E0112120 50400018 */ beql $v0, $zero, .LE0112184 +/* 3F9F74 E0112124 AE00001C */ sw $zero, 0x1c($s0) +/* 3F9F78 E0112128 0C080150 */ jal func_E0200540 +/* 3F9F7C E011212C 24040072 */ addiu $a0, $zero, 0x72 +/* 3F9F80 E0112130 4616A102 */ mul.s $f4, $f20, $f22 +/* 3F9F84 E0112134 00000000 */ nop +/* 3F9F88 E0112138 24040003 */ addiu $a0, $zero, 3 +/* 3F9F8C E011213C 24020010 */ addiu $v0, $zero, 0x10 +/* 3F9F90 E0112140 4405C000 */ mfc1 $a1, $f24 +/* 3F9F94 E0112144 3C014248 */ lui $at, 0x4248 +/* 3F9F98 E0112148 44810000 */ mtc1 $at, $f0 +/* 3F9F9C E011214C 4604E701 */ sub.s $f28, $f28, $f4 +/* 3F9FA0 E0112150 4407D000 */ mfc1 $a3, $f26 +/* 3F9FA4 E0112154 3C013F80 */ lui $at, 0x3f80 +/* 3F9FA8 E0112158 44811000 */ mtc1 $at, $f2 +/* 3F9FAC E011215C 4406E000 */ mfc1 $a2, $f28 +/* 3F9FB0 E0112160 4600A002 */ mul.s $f0, $f20, $f0 +/* 3F9FB4 E0112164 00000000 */ nop +/* 3F9FB8 E0112168 AFA2001C */ sw $v0, 0x1c($sp) +/* 3F9FBC E011216C AFA00020 */ sw $zero, 0x20($sp) +/* 3F9FC0 E0112170 E7A20018 */ swc1 $f2, 0x18($sp) +/* 3F9FC4 E0112174 E7A40010 */ swc1 $f4, 0x10($sp) +/* 3F9FC8 E0112178 0C039000 */ jal func_E00E4000 +/* 3F9FCC E011217C E7A00014 */ swc1 $f0, 0x14($sp) +/* 3F9FD0 E0112180 AE02001C */ sw $v0, 0x1c($s0) +.LE0112184: +/* 3F9FD4 E0112184 0220102D */ daddu $v0, $s1, $zero +/* 3F9FD8 E0112188 8FBF0050 */ lw $ra, 0x50($sp) +/* 3F9FDC E011218C 8FB3004C */ lw $s3, 0x4c($sp) +/* 3F9FE0 E0112190 8FB20048 */ lw $s2, 0x48($sp) +/* 3F9FE4 E0112194 8FB10044 */ lw $s1, 0x44($sp) +/* 3F9FE8 E0112198 8FB00040 */ lw $s0, 0x40($sp) +/* 3F9FEC E011219C D7BC0078 */ ldc1 $f28, 0x78($sp) +/* 3F9FF0 E01121A0 D7BA0070 */ ldc1 $f26, 0x70($sp) +/* 3F9FF4 E01121A4 D7B80068 */ ldc1 $f24, 0x68($sp) +/* 3F9FF8 E01121A8 D7B60060 */ ldc1 $f22, 0x60($sp) +/* 3F9FFC E01121AC D7B40058 */ ldc1 $f20, 0x58($sp) +/* 3FA000 E01121B0 03E00008 */ jr $ra +/* 3FA004 E01121B4 27BD0080 */ addiu $sp, $sp, 0x80 diff --git a/asm/nonmatchings/code_3F9E50/func_E01121B8.s b/asm/nonmatchings/code_3F9E50/func_E01121B8.s new file mode 100644 index 0000000000..823b53e94e --- /dev/null +++ b/asm/nonmatchings/code_3F9E50/func_E01121B8.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01121B8 +/* 3FA008 E01121B8 03E00008 */ jr $ra +/* 3FA00C E01121BC 00000000 */ nop diff --git a/asm/nonmatchings/code_3F9E50/func_E01121C0.s b/asm/nonmatchings/code_3F9E50/func_E01121C0.s new file mode 100644 index 0000000000..fc9fc3a6e9 --- /dev/null +++ b/asm/nonmatchings/code_3F9E50/func_E01121C0.s @@ -0,0 +1,82 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01121C0 +/* 3FA010 E01121C0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 3FA014 E01121C4 AFBF0014 */ sw $ra, 0x14($sp) +/* 3FA018 E01121C8 AFB00010 */ sw $s0, 0x10($sp) +/* 3FA01C E01121CC 8C830000 */ lw $v1, ($a0) +/* 3FA020 E01121D0 8C90000C */ lw $s0, 0xc($a0) +/* 3FA024 E01121D4 30620010 */ andi $v0, $v1, 0x10 +/* 3FA028 E01121D8 10400005 */ beqz $v0, .LE01121F0 +/* 3FA02C E01121DC 2402FFEF */ addiu $v0, $zero, -0x11 +/* 3FA030 E01121E0 00621024 */ and $v0, $v1, $v0 +/* 3FA034 E01121E4 AC820000 */ sw $v0, ($a0) +/* 3FA038 E01121E8 24020010 */ addiu $v0, $zero, 0x10 +/* 3FA03C E01121EC AE020010 */ sw $v0, 0x10($s0) +.LE01121F0: +/* 3FA040 E01121F0 8E030010 */ lw $v1, 0x10($s0) +/* 3FA044 E01121F4 286203E8 */ slti $v0, $v1, 0x3e8 +/* 3FA048 E01121F8 10400002 */ beqz $v0, .LE0112204 +/* 3FA04C E01121FC 2462FFFF */ addiu $v0, $v1, -1 +/* 3FA050 E0112200 AE020010 */ sw $v0, 0x10($s0) +.LE0112204: +/* 3FA054 E0112204 8E020014 */ lw $v0, 0x14($s0) +/* 3FA058 E0112208 8E030010 */ lw $v1, 0x10($s0) +/* 3FA05C E011220C 24420001 */ addiu $v0, $v0, 1 +/* 3FA060 E0112210 0461000A */ bgez $v1, .LE011223C +/* 3FA064 E0112214 AE020014 */ sw $v0, 0x14($s0) +/* 3FA068 E0112218 0C080128 */ jal func_E02004A0 +/* 3FA06C E011221C 00000000 */ nop +/* 3FA070 E0112220 8E03001C */ lw $v1, 0x1c($s0) +/* 3FA074 E0112224 1060002C */ beqz $v1, .LE01122D8 +/* 3FA078 E0112228 00000000 */ nop +/* 3FA07C E011222C 8C620000 */ lw $v0, ($v1) +/* 3FA080 E0112230 34420010 */ ori $v0, $v0, 0x10 +/* 3FA084 E0112234 080448B6 */ j .LE01122D8 +/* 3FA088 E0112238 AC620000 */ sw $v0, ($v1) +.LE011223C: +/* 3FA08C E011223C 28620010 */ slti $v0, $v1, 0x10 +/* 3FA090 E0112240 14400025 */ bnez $v0, .LE01122D8 +/* 3FA094 E0112244 00000000 */ nop +/* 3FA098 E0112248 8E02001C */ lw $v0, 0x1c($s0) +/* 3FA09C E011224C 10400022 */ beqz $v0, .LE01122D8 +/* 3FA0A0 E0112250 00000000 */ nop +/* 3FA0A4 E0112254 C6000018 */ lwc1 $f0, 0x18($s0) +/* 3FA0A8 E0112258 3C0141F0 */ lui $at, 0x41f0 +/* 3FA0AC E011225C 44812000 */ mtc1 $at, $f4 +/* 3FA0B0 E0112260 00000000 */ nop +/* 3FA0B4 E0112264 46040002 */ mul.s $f0, $f0, $f4 +/* 3FA0B8 E0112268 00000000 */ nop +/* 3FA0BC E011226C 8C42000C */ lw $v0, 0xc($v0) +/* 3FA0C0 E0112270 E4400010 */ swc1 $f0, 0x10($v0) +/* 3FA0C4 E0112274 C6020018 */ lwc1 $f2, 0x18($s0) +/* 3FA0C8 E0112278 3C014248 */ lui $at, 0x4248 +/* 3FA0CC E011227C 44810000 */ mtc1 $at, $f0 +/* 3FA0D0 E0112280 00000000 */ nop +/* 3FA0D4 E0112284 46001082 */ mul.s $f2, $f2, $f0 +/* 3FA0D8 E0112288 00000000 */ nop +/* 3FA0DC E011228C 8E02001C */ lw $v0, 0x1c($s0) +/* 3FA0E0 E0112290 8C42000C */ lw $v0, 0xc($v0) +/* 3FA0E4 E0112294 E4420014 */ swc1 $f2, 0x14($v0) +/* 3FA0E8 E0112298 8E02001C */ lw $v0, 0x1c($s0) +/* 3FA0EC E011229C C6000004 */ lwc1 $f0, 4($s0) +/* 3FA0F0 E01122A0 8C42000C */ lw $v0, 0xc($v0) +/* 3FA0F4 E01122A4 E4400004 */ swc1 $f0, 4($v0) +/* 3FA0F8 E01122A8 C6000018 */ lwc1 $f0, 0x18($s0) +/* 3FA0FC E01122AC 46040002 */ mul.s $f0, $f0, $f4 +/* 3FA100 E01122B0 00000000 */ nop +/* 3FA104 E01122B4 C6020008 */ lwc1 $f2, 8($s0) +/* 3FA108 E01122B8 8E02001C */ lw $v0, 0x1c($s0) +/* 3FA10C E01122BC 46001081 */ sub.s $f2, $f2, $f0 +/* 3FA110 E01122C0 8C42000C */ lw $v0, 0xc($v0) +/* 3FA114 E01122C4 E4420008 */ swc1 $f2, 8($v0) +/* 3FA118 E01122C8 8E02001C */ lw $v0, 0x1c($s0) +/* 3FA11C E01122CC C600000C */ lwc1 $f0, 0xc($s0) +/* 3FA120 E01122D0 8C42000C */ lw $v0, 0xc($v0) +/* 3FA124 E01122D4 E440000C */ swc1 $f0, 0xc($v0) +.LE01122D8: +/* 3FA128 E01122D8 8FBF0014 */ lw $ra, 0x14($sp) +/* 3FA12C E01122DC 8FB00010 */ lw $s0, 0x10($sp) +/* 3FA130 E01122E0 03E00008 */ jr $ra +/* 3FA134 E01122E4 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_3F9E50/func_E01122E8.s b/asm/nonmatchings/code_3F9E50/func_E01122E8.s new file mode 100644 index 0000000000..29928d55ec --- /dev/null +++ b/asm/nonmatchings/code_3F9E50/func_E01122E8.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01122E8 +/* 3FA138 E01122E8 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3FA13C E01122EC 3C02E011 */ lui $v0, %hi(D_E01124CC) +/* 3FA140 E01122F0 244224CC */ addiu $v0, $v0, %lo(D_E01124CC) +/* 3FA144 E01122F4 AFA2001C */ sw $v0, 0x1c($sp) +/* 3FA148 E01122F8 2402000A */ addiu $v0, $zero, 0xa +/* 3FA14C E01122FC AFA20014 */ sw $v0, 0x14($sp) +/* 3FA150 E0112300 24020011 */ addiu $v0, $zero, 0x11 +/* 3FA154 E0112304 AFA40018 */ sw $a0, 0x18($sp) +/* 3FA158 E0112308 27A40010 */ addiu $a0, $sp, 0x10 +/* 3FA15C E011230C AFBF0020 */ sw $ra, 0x20($sp) +/* 3FA160 E0112310 0C080120 */ jal func_E0200480 +/* 3FA164 E0112314 AFA20010 */ sw $v0, 0x10($sp) +/* 3FA168 E0112318 8C430000 */ lw $v1, ($v0) +/* 3FA16C E011231C 34630002 */ ori $v1, $v1, 2 +/* 3FA170 E0112320 AC430000 */ sw $v1, ($v0) +/* 3FA174 E0112324 8FBF0020 */ lw $ra, 0x20($sp) +/* 3FA178 E0112328 03E00008 */ jr $ra +/* 3FA17C E011232C 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3F9E50/func_E0112330.s b/asm/nonmatchings/code_3F9E50/func_E0112330.s new file mode 100644 index 0000000000..24adbb1af1 --- /dev/null +++ b/asm/nonmatchings/code_3F9E50/func_E0112330.s @@ -0,0 +1,109 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0112330 +/* 3FA180 E0112330 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 3FA184 E0112334 AFB000A0 */ sw $s0, 0xa0($sp) +/* 3FA188 E0112338 AFBF00AC */ sw $ra, 0xac($sp) +/* 3FA18C E011233C AFB200A8 */ sw $s2, 0xa8($sp) +/* 3FA190 E0112340 AFB100A4 */ sw $s1, 0xa4($sp) +/* 3FA194 E0112344 F7B400B0 */ sdc1 $f20, 0xb0($sp) +/* 3FA198 E0112348 1480000F */ bnez $a0, .LE0112388 +/* 3FA19C E011234C 00A0802D */ daddu $s0, $a1, $zero +/* 3FA1A0 E0112350 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 3FA1A4 E0112354 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 3FA1A8 E0112358 00021880 */ sll $v1, $v0, 2 +/* 3FA1AC E011235C 00621821 */ addu $v1, $v1, $v0 +/* 3FA1B0 E0112360 00031880 */ sll $v1, $v1, 2 +/* 3FA1B4 E0112364 00621823 */ subu $v1, $v1, $v0 +/* 3FA1B8 E0112368 000310C0 */ sll $v0, $v1, 3 +/* 3FA1BC E011236C 00621821 */ addu $v1, $v1, $v0 +/* 3FA1C0 E0112370 000318C0 */ sll $v1, $v1, 3 +/* 3FA1C4 E0112374 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 3FA1C8 E0112378 00230821 */ addu $at, $at, $v1 +/* 3FA1CC E011237C C4261DEC */ lwc1 $f6, %lo(D_800B1DEC)($at) +/* 3FA1D0 E0112380 080448E3 */ j .LE011238C +/* 3FA1D4 E0112384 00000000 */ nop +.LE0112388: +/* 3FA1D8 E0112388 44803000 */ mtc1 $zero, $f6 +.LE011238C: +/* 3FA1DC E011238C C6000018 */ lwc1 $f0, 0x18($s0) +/* 3FA1E0 E0112390 C6040024 */ lwc1 $f4, 0x24($s0) +/* 3FA1E4 E0112394 3C014000 */ lui $at, 0x4000 +/* 3FA1E8 E0112398 44811000 */ mtc1 $at, $f2 +/* 3FA1EC E011239C E7A00010 */ swc1 $f0, 0x10($sp) +/* 3FA1F0 E01123A0 C6000004 */ lwc1 $f0, 4($s0) +/* 3FA1F4 E01123A4 4480A000 */ mtc1 $zero, $f20 +/* 3FA1F8 E01123A8 46020000 */ add.s $f0, $f0, $f2 +/* 3FA1FC E01123AC 4405A000 */ mfc1 $a1, $f20 +/* 3FA200 E01123B0 27A40020 */ addiu $a0, $sp, 0x20 +/* 3FA204 E01123B4 E7A00014 */ swc1 $f0, 0x14($sp) +/* 3FA208 E01123B8 C6000008 */ lwc1 $f0, 8($s0) +/* 3FA20C E01123BC 46062101 */ sub.s $f4, $f4, $f6 +/* 3FA210 E01123C0 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3FA214 E01123C4 C600000C */ lwc1 $f0, 0xc($s0) +/* 3FA218 E01123C8 4407A000 */ mfc1 $a3, $f20 +/* 3FA21C E01123CC 46020000 */ add.s $f0, $f0, $f2 +/* 3FA220 E01123D0 44062000 */ mfc1 $a2, $f4 +/* 3FA224 E01123D4 3C120001 */ lui $s2, 1 +/* 3FA228 E01123D8 0C080180 */ jal func_E0200600 +/* 3FA22C E01123DC E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3FA230 E01123E0 4406A000 */ mfc1 $a2, $f20 +/* 3FA234 E01123E4 4407A000 */ mfc1 $a3, $f20 +/* 3FA238 E01123E8 3C013F80 */ lui $at, 0x3f80 +/* 3FA23C E01123EC 44810000 */ mtc1 $at, $f0 +/* 3FA240 E01123F0 36521630 */ ori $s2, $s2, 0x1630 +/* 3FA244 E01123F4 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3FA248 E01123F8 8E050020 */ lw $a1, 0x20($s0) +/* 3FA24C E01123FC 27B00060 */ addiu $s0, $sp, 0x60 +/* 3FA250 E0112400 0C080104 */ jal func_E0200410 +/* 3FA254 E0112404 0200202D */ daddu $a0, $s0, $zero +/* 3FA258 E0112408 0200202D */ daddu $a0, $s0, $zero +/* 3FA25C E011240C 27A50020 */ addiu $a1, $sp, 0x20 +/* 3FA260 E0112410 0C080114 */ jal func_E0200450 +/* 3FA264 E0112414 00A0302D */ daddu $a2, $a1, $zero +/* 3FA268 E0112418 0200202D */ daddu $a0, $s0, $zero +/* 3FA26C E011241C 4405A000 */ mfc1 $a1, $f20 +/* 3FA270 E0112420 3C07C000 */ lui $a3, 0xc000 +/* 3FA274 E0112424 0C080108 */ jal func_E0200420 +/* 3FA278 E0112428 00A0302D */ daddu $a2, $a1, $zero +/* 3FA27C E011242C 0200202D */ daddu $a0, $s0, $zero +/* 3FA280 E0112430 27A50020 */ addiu $a1, $sp, 0x20 +/* 3FA284 E0112434 0C080114 */ jal func_E0200450 +/* 3FA288 E0112438 00A0302D */ daddu $a2, $a1, $zero +/* 3FA28C E011243C 27A40020 */ addiu $a0, $sp, 0x20 +/* 3FA290 E0112440 3C108007 */ lui $s0, %hi(D_800741F0) +/* 3FA294 E0112444 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 3FA298 E0112448 3C11800A */ lui $s1, %hi(D_8009A674) +/* 3FA29C E011244C 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 3FA2A0 E0112450 96050000 */ lhu $a1, ($s0) +/* 3FA2A4 E0112454 8E220000 */ lw $v0, ($s1) +/* 3FA2A8 E0112458 00052980 */ sll $a1, $a1, 6 +/* 3FA2AC E011245C 00B22821 */ addu $a1, $a1, $s2 +/* 3FA2B0 E0112460 0C080118 */ jal func_E0200460 +/* 3FA2B4 E0112464 00452821 */ addu $a1, $v0, $a1 +/* 3FA2B8 E0112468 3C05DA38 */ lui $a1, 0xda38 +/* 3FA2BC E011246C 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 3FA2C0 E0112470 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 3FA2C4 E0112474 34A50002 */ ori $a1, $a1, 2 +/* 3FA2C8 E0112478 8C830000 */ lw $v1, ($a0) +/* 3FA2CC E011247C 96020000 */ lhu $v0, ($s0) +/* 3FA2D0 E0112480 0060302D */ daddu $a2, $v1, $zero +/* 3FA2D4 E0112484 24630008 */ addiu $v1, $v1, 8 +/* 3FA2D8 E0112488 AC830000 */ sw $v1, ($a0) +/* 3FA2DC E011248C 24430001 */ addiu $v1, $v0, 1 +/* 3FA2E0 E0112490 3042FFFF */ andi $v0, $v0, 0xffff +/* 3FA2E4 E0112494 00021180 */ sll $v0, $v0, 6 +/* 3FA2E8 E0112498 ACC50000 */ sw $a1, ($a2) +/* 3FA2EC E011249C A6030000 */ sh $v1, ($s0) +/* 3FA2F0 E01124A0 8E230000 */ lw $v1, ($s1) +/* 3FA2F4 E01124A4 00521021 */ addu $v0, $v0, $s2 +/* 3FA2F8 E01124A8 00621821 */ addu $v1, $v1, $v0 +/* 3FA2FC E01124AC ACC30004 */ sw $v1, 4($a2) +/* 3FA300 E01124B0 8FBF00AC */ lw $ra, 0xac($sp) +/* 3FA304 E01124B4 8FB200A8 */ lw $s2, 0xa8($sp) +/* 3FA308 E01124B8 8FB100A4 */ lw $s1, 0xa4($sp) +/* 3FA30C E01124BC 8FB000A0 */ lw $s0, 0xa0($sp) +/* 3FA310 E01124C0 D7B400B0 */ ldc1 $f20, 0xb0($sp) +/* 3FA314 E01124C4 03E00008 */ jr $ra +/* 3FA318 E01124C8 27BD00B8 */ addiu $sp, $sp, 0xb8 diff --git a/asm/nonmatchings/code_3F9E50/func_E01124CC.s b/asm/nonmatchings/code_3F9E50/func_E01124CC.s new file mode 100644 index 0000000000..788b2531d7 --- /dev/null +++ b/asm/nonmatchings/code_3F9E50/func_E01124CC.s @@ -0,0 +1,94 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01124CC +/* 3FA31C E01124CC 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3FA320 E01124D0 3C06DB06 */ lui $a2, 0xdb06 +/* 3FA324 E01124D4 AFB00010 */ sw $s0, 0x10($sp) +/* 3FA328 E01124D8 3C10800A */ lui $s0, %hi(D_8009A66C) +/* 3FA32C E01124DC 2610A66C */ addiu $s0, $s0, %lo(D_8009A66C) +/* 3FA330 E01124E0 34C60024 */ ori $a2, $a2, 0x24 +/* 3FA334 E01124E4 AFB3001C */ sw $s3, 0x1c($sp) +/* 3FA338 E01124E8 3C13E700 */ lui $s3, 0xe700 +/* 3FA33C E01124EC AFBF0020 */ sw $ra, 0x20($sp) +/* 3FA340 E01124F0 AFB20018 */ sw $s2, 0x18($sp) +/* 3FA344 E01124F4 AFB10014 */ sw $s1, 0x14($sp) +/* 3FA348 E01124F8 8E030000 */ lw $v1, ($s0) +/* 3FA34C E01124FC 8C91000C */ lw $s1, 0xc($a0) +/* 3FA350 E0112500 0060102D */ daddu $v0, $v1, $zero +/* 3FA354 E0112504 24630008 */ addiu $v1, $v1, 8 +/* 3FA358 E0112508 AE030000 */ sw $v1, ($s0) +/* 3FA35C E011250C 8E250000 */ lw $a1, ($s1) +/* 3FA360 E0112510 3C12DE00 */ lui $s2, 0xde00 +/* 3FA364 E0112514 AC530000 */ sw $s3, ($v0) +/* 3FA368 E0112518 AC400004 */ sw $zero, 4($v0) +/* 3FA36C E011251C 24620008 */ addiu $v0, $v1, 8 +/* 3FA370 E0112520 AE020000 */ sw $v0, ($s0) +/* 3FA374 E0112524 24620010 */ addiu $v0, $v1, 0x10 +/* 3FA378 E0112528 AC660000 */ sw $a2, ($v1) +/* 3FA37C E011252C AE020000 */ sw $v0, ($s0) +/* 3FA380 E0112530 8C840010 */ lw $a0, 0x10($a0) +/* 3FA384 E0112534 24620018 */ addiu $v0, $v1, 0x18 +/* 3FA388 E0112538 AE020000 */ sw $v0, ($s0) +/* 3FA38C E011253C 8C84001C */ lw $a0, 0x1c($a0) +/* 3FA390 E0112540 3C020900 */ lui $v0, 0x900 +/* 3FA394 E0112544 244242E0 */ addiu $v0, $v0, 0x42e0 +/* 3FA398 E0112548 AC62000C */ sw $v0, 0xc($v1) +/* 3FA39C E011254C 3C02FB00 */ lui $v0, 0xfb00 +/* 3FA3A0 E0112550 AC620010 */ sw $v0, 0x10($v1) +/* 3FA3A4 E0112554 240200FF */ addiu $v0, $zero, 0xff +/* 3FA3A8 E0112558 AC620014 */ sw $v0, 0x14($v1) +/* 3FA3AC E011255C 3C028000 */ lui $v0, 0x8000 +/* 3FA3B0 E0112560 28A50002 */ slti $a1, $a1, 2 +/* 3FA3B4 E0112564 AC720008 */ sw $s2, 8($v1) +/* 3FA3B8 E0112568 00822021 */ addu $a0, $a0, $v0 +/* 3FA3BC E011256C 10A00022 */ beqz $a1, .LE01125F8 +/* 3FA3C0 E0112570 AC640004 */ sw $a0, 4($v1) +/* 3FA3C4 E0112574 0000202D */ daddu $a0, $zero, $zero +/* 3FA3C8 E0112578 0C0448CC */ jal func_E0112330 +/* 3FA3CC E011257C 0220282D */ daddu $a1, $s1, $zero +/* 3FA3D0 E0112580 8E030000 */ lw $v1, ($s0) +/* 3FA3D4 E0112584 3C06D838 */ lui $a2, 0xd838 +/* 3FA3D8 E0112588 0060282D */ daddu $a1, $v1, $zero +/* 3FA3DC E011258C 24630008 */ addiu $v1, $v1, 8 +/* 3FA3E0 E0112590 AE030000 */ sw $v1, ($s0) +/* 3FA3E4 E0112594 ACB20000 */ sw $s2, ($a1) +/* 3FA3E8 E0112598 3C04E011 */ lui $a0, %hi(D_E0112638) +/* 3FA3EC E011259C 8C842638 */ lw $a0, %lo(D_E0112638)($a0) +/* 3FA3F0 E01125A0 24620008 */ addiu $v0, $v1, 8 +/* 3FA3F4 E01125A4 AE020000 */ sw $v0, ($s0) +/* 3FA3F8 E01125A8 ACA40004 */ sw $a0, 4($a1) +/* 3FA3FC E01125AC AC720000 */ sw $s2, ($v1) +/* 3FA400 E01125B0 92220034 */ lbu $v0, 0x34($s1) +/* 3FA404 E01125B4 34C60002 */ ori $a2, $a2, 2 +/* 3FA408 E01125B8 00021080 */ sll $v0, $v0, 2 +/* 3FA40C E01125BC 3C04E011 */ lui $a0, %hi(D_E0112640) +/* 3FA410 E01125C0 00822021 */ addu $a0, $a0, $v0 +/* 3FA414 E01125C4 8C842640 */ lw $a0, %lo(D_E0112640)($a0) +/* 3FA418 E01125C8 24620010 */ addiu $v0, $v1, 0x10 +/* 3FA41C E01125CC AE020000 */ sw $v0, ($s0) +/* 3FA420 E01125D0 AC720008 */ sw $s2, 8($v1) +/* 3FA424 E01125D4 AC640004 */ sw $a0, 4($v1) +/* 3FA428 E01125D8 3C04E011 */ lui $a0, %hi(D_E0112630) +/* 3FA42C E01125DC 8C842630 */ lw $a0, %lo(D_E0112630)($a0) +/* 3FA430 E01125E0 24620018 */ addiu $v0, $v1, 0x18 +/* 3FA434 E01125E4 AE020000 */ sw $v0, ($s0) +/* 3FA438 E01125E8 24020040 */ addiu $v0, $zero, 0x40 +/* 3FA43C E01125EC AC660010 */ sw $a2, 0x10($v1) +/* 3FA440 E01125F0 AC620014 */ sw $v0, 0x14($v1) +/* 3FA444 E01125F4 AC64000C */ sw $a0, 0xc($v1) +.LE01125F8: +/* 3FA448 E01125F8 8E020000 */ lw $v0, ($s0) +/* 3FA44C E01125FC 0040182D */ daddu $v1, $v0, $zero +/* 3FA450 E0112600 24420008 */ addiu $v0, $v0, 8 +/* 3FA454 E0112604 AE020000 */ sw $v0, ($s0) +/* 3FA458 E0112608 AC730000 */ sw $s3, ($v1) +/* 3FA45C E011260C AC600004 */ sw $zero, 4($v1) +/* 3FA460 E0112610 8FBF0020 */ lw $ra, 0x20($sp) +/* 3FA464 E0112614 8FB3001C */ lw $s3, 0x1c($sp) +/* 3FA468 E0112618 8FB20018 */ lw $s2, 0x18($sp) +/* 3FA46C E011261C 8FB10014 */ lw $s1, 0x14($sp) +/* 3FA470 E0112620 8FB00010 */ lw $s0, 0x10($sp) +/* 3FA474 E0112624 03E00008 */ jr $ra +/* 3FA478 E0112628 27BD0028 */ addiu $sp, $sp, 0x28 +/* 3FA47C E011262C 00000000 */ nop diff --git a/asm/nonmatchings/code_3FEAE0/func_E0114000.s b/asm/nonmatchings/code_3FEAE0/func_E0114000.s new file mode 100644 index 0000000000..53239f38b3 --- /dev/null +++ b/asm/nonmatchings/code_3FEAE0/func_E0114000.s @@ -0,0 +1,60 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0114000 +/* 3FEAE0 E0114000 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 3FEAE4 E0114004 27A40010 */ addiu $a0, $sp, 0x10 +/* 3FEAE8 E0114008 3C02E011 */ lui $v0, %hi(D_E01140D4) +/* 3FEAEC E011400C 244240D4 */ addiu $v0, $v0, %lo(D_E01140D4) +/* 3FEAF0 E0114010 AFA20018 */ sw $v0, 0x18($sp) +/* 3FEAF4 E0114014 3C02E011 */ lui $v0, %hi(D_E01140DC) +/* 3FEAF8 E0114018 244240DC */ addiu $v0, $v0, %lo(D_E01140DC) +/* 3FEAFC E011401C AFA2001C */ sw $v0, 0x1c($sp) +/* 3FEB00 E0114020 3C02E011 */ lui $v0, %hi(D_E0114340) +/* 3FEB04 E0114024 24424340 */ addiu $v0, $v0, %lo(D_E0114340) +/* 3FEB08 E0114028 AFA20020 */ sw $v0, 0x20($sp) +/* 3FEB0C E011402C 2402007C */ addiu $v0, $zero, 0x7c +/* 3FEB10 E0114030 AFBF002C */ sw $ra, 0x2c($sp) +/* 3FEB14 E0114034 AFB00028 */ sw $s0, 0x28($sp) +/* 3FEB18 E0114038 AFA00010 */ sw $zero, 0x10($sp) +/* 3FEB1C E011403C AFA00024 */ sw $zero, 0x24($sp) +/* 3FEB20 E0114040 0C080124 */ jal func_E0200490 +/* 3FEB24 E0114044 AFA20014 */ sw $v0, 0x14($sp) +/* 3FEB28 E0114048 24040148 */ addiu $a0, $zero, 0x148 +/* 3FEB2C E011404C 24030001 */ addiu $v1, $zero, 1 +/* 3FEB30 E0114050 0040802D */ daddu $s0, $v0, $zero +/* 3FEB34 E0114054 0C08012C */ jal func_E02004B0 +/* 3FEB38 E0114058 AE030008 */ sw $v1, 8($s0) +/* 3FEB3C E011405C 0040282D */ daddu $a1, $v0, $zero +/* 3FEB40 E0114060 14A00003 */ bnez $a1, .LE0114070 +/* 3FEB44 E0114064 AE02000C */ sw $v0, 0xc($s0) +.LE0114068: +/* 3FEB48 E0114068 0804501A */ j .LE0114068 +/* 3FEB4C E011406C 00000000 */ nop +.LE0114070: +/* 3FEB50 E0114070 0000202D */ daddu $a0, $zero, $zero +/* 3FEB54 E0114074 24060001 */ addiu $a2, $zero, 1 +/* 3FEB58 E0114078 00A0182D */ daddu $v1, $a1, $zero +/* 3FEB5C E011407C 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 3FEB60 E0114080 ACA00004 */ sw $zero, 4($a1) +/* 3FEB64 E0114084 ACA20000 */ sw $v0, ($a1) +.LE0114088: +/* 3FEB68 E0114088 00A41021 */ addu $v0, $a1, $a0 +/* 3FEB6C E011408C AC600034 */ sw $zero, 0x34($v1) +/* 3FEB70 E0114090 AC600060 */ sw $zero, 0x60($v1) +/* 3FEB74 E0114094 AC60008C */ sw $zero, 0x8c($v1) +/* 3FEB78 E0114098 AC6000B8 */ sw $zero, 0xb8($v1) +/* 3FEB7C E011409C AC600008 */ sw $zero, 8($v1) +/* 3FEB80 E01140A0 A04600FA */ sb $a2, 0xfa($v0) +/* 3FEB84 E01140A4 A0460105 */ sb $a2, 0x105($v0) +/* 3FEB88 E01140A8 AC600110 */ sw $zero, 0x110($v1) +/* 3FEB8C E01140AC 24840001 */ addiu $a0, $a0, 1 +/* 3FEB90 E01140B0 A040013C */ sb $zero, 0x13c($v0) +/* 3FEB94 E01140B4 2882000B */ slti $v0, $a0, 0xb +/* 3FEB98 E01140B8 1440FFF3 */ bnez $v0, .LE0114088 +/* 3FEB9C E01140BC 24630004 */ addiu $v1, $v1, 4 +/* 3FEBA0 E01140C0 0200102D */ daddu $v0, $s0, $zero +/* 3FEBA4 E01140C4 8FBF002C */ lw $ra, 0x2c($sp) +/* 3FEBA8 E01140C8 8FB00028 */ lw $s0, 0x28($sp) +/* 3FEBAC E01140CC 03E00008 */ jr $ra +/* 3FEBB0 E01140D0 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/nonmatchings/code_3FEAE0/func_E01140D4.s b/asm/nonmatchings/code_3FEAE0/func_E01140D4.s new file mode 100644 index 0000000000..60346d4f60 --- /dev/null +++ b/asm/nonmatchings/code_3FEAE0/func_E01140D4.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01140D4 +/* 3FEBB4 E01140D4 03E00008 */ jr $ra +/* 3FEBB8 E01140D8 00000000 */ nop diff --git a/asm/nonmatchings/code_3FEAE0/func_E01140DC.s b/asm/nonmatchings/code_3FEAE0/func_E01140DC.s new file mode 100644 index 0000000000..e211b7ca25 --- /dev/null +++ b/asm/nonmatchings/code_3FEAE0/func_E01140DC.s @@ -0,0 +1,167 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01140DC +/* 3FEBBC E01140DC 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 3FEBC0 E01140E0 AFBF0028 */ sw $ra, 0x28($sp) +/* 3FEBC4 E01140E4 AFB50024 */ sw $s5, 0x24($sp) +/* 3FEBC8 E01140E8 AFB40020 */ sw $s4, 0x20($sp) +/* 3FEBCC E01140EC AFB3001C */ sw $s3, 0x1c($sp) +/* 3FEBD0 E01140F0 AFB20018 */ sw $s2, 0x18($sp) +/* 3FEBD4 E01140F4 AFB10014 */ sw $s1, 0x14($sp) +/* 3FEBD8 E01140F8 AFB00010 */ sw $s0, 0x10($sp) +/* 3FEBDC E01140FC 8C94000C */ lw $s4, 0xc($a0) +/* 3FEBE0 E0114100 3C15E011 */ lui $s5, %hi(D_E0114740) +/* 3FEBE4 E0114104 26B54740 */ addiu $s5, $s5, %lo(D_E0114740) +/* 3FEBE8 E0114108 0280902D */ daddu $s2, $s4, $zero +/* 3FEBEC E011410C 8E820004 */ lw $v0, 4($s4) +/* 3FEBF0 E0114110 0280882D */ daddu $s1, $s4, $zero +/* 3FEBF4 E0114114 24420001 */ addiu $v0, $v0, 1 +/* 3FEBF8 E0114118 AE820004 */ sw $v0, 4($s4) +.LE011411C: +/* 3FEBFC E011411C 922300FA */ lbu $v1, 0xfa($s1) +/* 3FEC00 E0114120 8230013C */ lb $s0, 0x13c($s1) +/* 3FEC04 E0114124 2C620006 */ sltiu $v0, $v1, 6 +/* 3FEC08 E0114128 10400050 */ beqz $v0, .LE011426C +/* 3FEC0C E011412C 0000982D */ daddu $s3, $zero, $zero +/* 3FEC10 E0114130 00031080 */ sll $v0, $v1, 2 +/* 3FEC14 E0114134 3C01E011 */ lui $at, %hi(D_E0114750) +/* 3FEC18 E0114138 00220821 */ addu $at, $at, $v0 +/* 3FEC1C E011413C 8C224750 */ lw $v0, %lo(D_E0114750)($at) +/* 3FEC20 E0114140 00400008 */ jr $v0 +/* 3FEC24 E0114144 00000000 */ nop +/* 3FEC28 E0114148 24020001 */ addiu $v0, $zero, 1 +/* 3FEC2C E011414C A2220105 */ sb $v0, 0x105($s1) +/* 3FEC30 E0114150 080450B5 */ j .LE01142D4 +/* 3FEC34 E0114154 24130001 */ addiu $s3, $zero, 1 +/* 3FEC38 E0114158 06010002 */ bgez $s0, .LE0114164 +/* 3FEC3C E011415C 0200102D */ daddu $v0, $s0, $zero +/* 3FEC40 E0114160 26020003 */ addiu $v0, $s0, 3 +.LE0114164: +/* 3FEC44 E0114164 00021083 */ sra $v0, $v0, 2 +/* 3FEC48 E0114168 00021080 */ sll $v0, $v0, 2 +/* 3FEC4C E011416C 02021023 */ subu $v0, $s0, $v0 +/* 3FEC50 E0114170 00551021 */ addu $v0, $v0, $s5 +/* 3FEC54 E0114174 00101880 */ sll $v1, $s0, 2 +/* 3FEC58 E0114178 00701821 */ addu $v1, $v1, $s0 +/* 3FEC5C E011417C 00031840 */ sll $v1, $v1, 1 +/* 3FEC60 E0114180 90420000 */ lbu $v0, ($v0) +/* 3FEC64 E0114184 44836000 */ mtc1 $v1, $f12 +/* 3FEC68 E0114188 00000000 */ nop +/* 3FEC6C E011418C 46806320 */ cvt.s.w $f12, $f12 +/* 3FEC70 E0114190 0C080140 */ jal func_E0200500 +/* 3FEC74 E0114194 A2220105 */ sb $v0, 0x105($s1) +/* 3FEC78 E0114198 C64200B8 */ lwc1 $f2, 0xb8($s2) +/* 3FEC7C E011419C 46001080 */ add.s $f2, $f2, $f0 +/* 3FEC80 E01141A0 2A020024 */ slti $v0, $s0, 0x24 +/* 3FEC84 E01141A4 1440004B */ bnez $v0, .LE01142D4 +/* 3FEC88 E01141A8 E64200B8 */ swc1 $f2, 0xb8($s2) +/* 3FEC8C E01141AC 080450B4 */ j .LE01142D0 +/* 3FEC90 E01141B0 24130001 */ addiu $s3, $zero, 1 +/* 3FEC94 E01141B4 06010002 */ bgez $s0, .LE01141C0 +/* 3FEC98 E01141B8 0200102D */ daddu $v0, $s0, $zero +/* 3FEC9C E01141BC 26020003 */ addiu $v0, $s0, 3 +.LE01141C0: +/* 3FECA0 E01141C0 00021083 */ sra $v0, $v0, 2 +/* 3FECA4 E01141C4 00021080 */ sll $v0, $v0, 2 +/* 3FECA8 E01141C8 02021023 */ subu $v0, $s0, $v0 +/* 3FECAC E01141CC 00551021 */ addu $v0, $v0, $s5 +/* 3FECB0 E01141D0 00101880 */ sll $v1, $s0, 2 +/* 3FECB4 E01141D4 00701821 */ addu $v1, $v1, $s0 +/* 3FECB8 E01141D8 00031880 */ sll $v1, $v1, 2 +/* 3FECBC E01141DC 90420000 */ lbu $v0, ($v0) +/* 3FECC0 E01141E0 44836000 */ mtc1 $v1, $f12 +/* 3FECC4 E01141E4 00000000 */ nop +/* 3FECC8 E01141E8 46806320 */ cvt.s.w $f12, $f12 +/* 3FECCC E01141EC 0C080140 */ jal func_E0200500 +/* 3FECD0 E01141F0 A2220105 */ sb $v0, 0x105($s1) +/* 3FECD4 E01141F4 46000000 */ add.s $f0, $f0, $f0 +/* 3FECD8 E01141F8 24130001 */ addiu $s3, $zero, 1 +/* 3FECDC E01141FC 2A020009 */ slti $v0, $s0, 9 +/* 3FECE0 E0114200 14400034 */ bnez $v0, .LE01142D4 +/* 3FECE4 E0114204 E6400110 */ swc1 $f0, 0x110($s2) +/* 3FECE8 E0114208 080450B4 */ j .LE01142D0 +/* 3FECEC E011420C AE400110 */ sw $zero, 0x110($s2) +/* 3FECF0 E0114210 06010002 */ bgez $s0, .LE011421C +/* 3FECF4 E0114214 0200102D */ daddu $v0, $s0, $zero +/* 3FECF8 E0114218 26020003 */ addiu $v0, $s0, 3 +.LE011421C: +/* 3FECFC E011421C 00021083 */ sra $v0, $v0, 2 +/* 3FED00 E0114220 00021080 */ sll $v0, $v0, 2 +/* 3FED04 E0114224 02021023 */ subu $v0, $s0, $v0 +/* 3FED08 E0114228 00551021 */ addu $v0, $v0, $s5 +/* 3FED0C E011422C 00101880 */ sll $v1, $s0, 2 +/* 3FED10 E0114230 00701821 */ addu $v1, $v1, $s0 +/* 3FED14 E0114234 00031880 */ sll $v1, $v1, 2 +/* 3FED18 E0114238 90420000 */ lbu $v0, ($v0) +/* 3FED1C E011423C 44836000 */ mtc1 $v1, $f12 +/* 3FED20 E0114240 00000000 */ nop +/* 3FED24 E0114244 46806320 */ cvt.s.w $f12, $f12 +/* 3FED28 E0114248 0C080140 */ jal func_E0200500 +/* 3FED2C E011424C A2220105 */ sb $v0, 0x105($s1) +/* 3FED30 E0114250 3C014080 */ lui $at, 0x4080 +/* 3FED34 E0114254 44811000 */ mtc1 $at, $f2 +/* 3FED38 E0114258 00000000 */ nop +/* 3FED3C E011425C 46020002 */ mul.s $f0, $f0, $f2 +/* 3FED40 E0114260 00000000 */ nop +/* 3FED44 E0114264 080450B0 */ j .LE01142C0 +/* 3FED48 E0114268 2A020009 */ slti $v0, $s0, 9 +.LE011426C: +/* 3FED4C E011426C 06010002 */ bgez $s0, .LE0114278 +/* 3FED50 E0114270 0200102D */ daddu $v0, $s0, $zero +/* 3FED54 E0114274 26020003 */ addiu $v0, $s0, 3 +.LE0114278: +/* 3FED58 E0114278 00021083 */ sra $v0, $v0, 2 +/* 3FED5C E011427C 00021080 */ sll $v0, $v0, 2 +/* 3FED60 E0114280 02021023 */ subu $v0, $s0, $v0 +/* 3FED64 E0114284 00551021 */ addu $v0, $v0, $s5 +/* 3FED68 E0114288 00101880 */ sll $v1, $s0, 2 +/* 3FED6C E011428C 00701821 */ addu $v1, $v1, $s0 +/* 3FED70 E0114290 90420000 */ lbu $v0, ($v0) +/* 3FED74 E0114294 44836000 */ mtc1 $v1, $f12 +/* 3FED78 E0114298 00000000 */ nop +/* 3FED7C E011429C 46806320 */ cvt.s.w $f12, $f12 +/* 3FED80 E01142A0 0C080140 */ jal func_E0200500 +/* 3FED84 E01142A4 A2220105 */ sb $v0, 0x105($s1) +/* 3FED88 E01142A8 3C014140 */ lui $at, 0x4140 +/* 3FED8C E01142AC 44811000 */ mtc1 $at, $f2 +/* 3FED90 E01142B0 00000000 */ nop +/* 3FED94 E01142B4 46020002 */ mul.s $f0, $f0, $f2 +/* 3FED98 E01142B8 00000000 */ nop +/* 3FED9C E01142BC 2A020024 */ slti $v0, $s0, 0x24 +.LE01142C0: +/* 3FEDA0 E01142C0 14400004 */ bnez $v0, .LE01142D4 +/* 3FEDA4 E01142C4 E6400110 */ swc1 $f0, 0x110($s2) +/* 3FEDA8 E01142C8 24130001 */ addiu $s3, $zero, 1 +/* 3FEDAC E01142CC AE400110 */ sw $zero, 0x110($s2) +.LE01142D0: +/* 3FEDB0 E01142D0 A220013C */ sb $zero, 0x13c($s1) +.LE01142D4: +/* 3FEDB4 E01142D4 9222013C */ lbu $v0, 0x13c($s1) +/* 3FEDB8 E01142D8 24420001 */ addiu $v0, $v0, 1 +/* 3FEDBC E01142DC 1260000A */ beqz $s3, .LE0114308 +/* 3FEDC0 E01142E0 A222013C */ sb $v0, 0x13c($s1) +/* 3FEDC4 E01142E4 8E430008 */ lw $v1, 8($s2) +/* 3FEDC8 E01142E8 30620002 */ andi $v0, $v1, 2 +/* 3FEDCC E01142EC 10400006 */ beqz $v0, .LE0114308 +/* 3FEDD0 E01142F0 2402FFFD */ addiu $v0, $zero, -3 +/* 3FEDD4 E01142F4 00621024 */ and $v0, $v1, $v0 +/* 3FEDD8 E01142F8 AE420008 */ sw $v0, 8($s2) +/* 3FEDDC E01142FC 922200EF */ lbu $v0, 0xef($s1) +/* 3FEDE0 E0114300 A220013C */ sb $zero, 0x13c($s1) +/* 3FEDE4 E0114304 A22200FA */ sb $v0, 0xfa($s1) +.LE0114308: +/* 3FEDE8 E0114308 26310001 */ addiu $s1, $s1, 1 +/* 3FEDEC E011430C 2682000B */ addiu $v0, $s4, 0xb +/* 3FEDF0 E0114310 0222102A */ slt $v0, $s1, $v0 +/* 3FEDF4 E0114314 1440FF81 */ bnez $v0, .LE011411C +/* 3FEDF8 E0114318 26520004 */ addiu $s2, $s2, 4 +/* 3FEDFC E011431C 8FBF0028 */ lw $ra, 0x28($sp) +/* 3FEE00 E0114320 8FB50024 */ lw $s5, 0x24($sp) +/* 3FEE04 E0114324 8FB40020 */ lw $s4, 0x20($sp) +/* 3FEE08 E0114328 8FB3001C */ lw $s3, 0x1c($sp) +/* 3FEE0C E011432C 8FB20018 */ lw $s2, 0x18($sp) +/* 3FEE10 E0114330 8FB10014 */ lw $s1, 0x14($sp) +/* 3FEE14 E0114334 8FB00010 */ lw $s0, 0x10($sp) +/* 3FEE18 E0114338 03E00008 */ jr $ra +/* 3FEE1C E011433C 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/nonmatchings/code_3FEAE0/func_E0114340.s b/asm/nonmatchings/code_3FEAE0/func_E0114340.s new file mode 100644 index 0000000000..ee7dc55308 --- /dev/null +++ b/asm/nonmatchings/code_3FEAE0/func_E0114340.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0114340 +/* 3FEE20 E0114340 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 3FEE24 E0114344 3C02E011 */ lui $v0, %hi(D_E0114388) +/* 3FEE28 E0114348 24424388 */ addiu $v0, $v0, %lo(D_E0114388) +/* 3FEE2C E011434C AFA2001C */ sw $v0, 0x1c($sp) +/* 3FEE30 E0114350 2402000A */ addiu $v0, $zero, 0xa +/* 3FEE34 E0114354 AFA20014 */ sw $v0, 0x14($sp) +/* 3FEE38 E0114358 2402002D */ addiu $v0, $zero, 0x2d +/* 3FEE3C E011435C AFA40018 */ sw $a0, 0x18($sp) +/* 3FEE40 E0114360 27A40010 */ addiu $a0, $sp, 0x10 +/* 3FEE44 E0114364 AFBF0020 */ sw $ra, 0x20($sp) +/* 3FEE48 E0114368 0C080120 */ jal func_E0200480 +/* 3FEE4C E011436C AFA20010 */ sw $v0, 0x10($sp) +/* 3FEE50 E0114370 8C430000 */ lw $v1, ($v0) +/* 3FEE54 E0114374 34630002 */ ori $v1, $v1, 2 +/* 3FEE58 E0114378 AC430000 */ sw $v1, ($v0) +/* 3FEE5C E011437C 8FBF0020 */ lw $ra, 0x20($sp) +/* 3FEE60 E0114380 03E00008 */ jr $ra +/* 3FEE64 E0114384 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_3FEAE0/func_E0114388.s b/asm/nonmatchings/code_3FEAE0/func_E0114388.s new file mode 100644 index 0000000000..09e5881d98 --- /dev/null +++ b/asm/nonmatchings/code_3FEAE0/func_E0114388.s @@ -0,0 +1,205 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0114388 +/* 3FEE68 E0114388 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 3FEE6C E011438C 3C07DB06 */ lui $a3, 0xdb06 +/* 3FEE70 E0114390 34E70024 */ ori $a3, $a3, 0x24 +/* 3FEE74 E0114394 3C08DC08 */ lui $t0, 0xdc08 +/* 3FEE78 E0114398 3508000A */ ori $t0, $t0, 0xa +/* 3FEE7C E011439C 3C09DC08 */ lui $t1, 0xdc08 +/* 3FEE80 E01143A0 3529030A */ ori $t1, $t1, 0x30a +/* 3FEE84 E01143A4 AFB3006C */ sw $s3, 0x6c($sp) +/* 3FEE88 E01143A8 0000982D */ daddu $s3, $zero, $zero +/* 3FEE8C E01143AC 3C02800A */ lui $v0, %hi(D_8009A674) +/* 3FEE90 E01143B0 2442A674 */ addiu $v0, $v0, %lo(D_8009A674) +/* 3FEE94 E01143B4 AFBE0080 */ sw $fp, 0x80($sp) +/* 3FEE98 E01143B8 0040F02D */ daddu $fp, $v0, $zero +/* 3FEE9C E01143BC AFB7007C */ sw $s7, 0x7c($sp) +/* 3FEEA0 E01143C0 3C178007 */ lui $s7, %hi(D_800741F0) +/* 3FEEA4 E01143C4 26F741F0 */ addiu $s7, $s7, %lo(D_800741F0) +/* 3FEEA8 E01143C8 AFB60078 */ sw $s6, 0x78($sp) +/* 3FEEAC E01143CC 3C160001 */ lui $s6, 1 +/* 3FEEB0 E01143D0 36D61630 */ ori $s6, $s6, 0x1630 +/* 3FEEB4 E01143D4 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 3FEEB8 E01143D8 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 3FEEBC E01143DC AFB20068 */ sw $s2, 0x68($sp) +/* 3FEEC0 E01143E0 0040902D */ daddu $s2, $v0, $zero +/* 3FEEC4 E01143E4 3C02E700 */ lui $v0, 0xe700 +/* 3FEEC8 E01143E8 AFBF0084 */ sw $ra, 0x84($sp) +/* 3FEECC E01143EC AFB50074 */ sw $s5, 0x74($sp) +/* 3FEED0 E01143F0 AFB40070 */ sw $s4, 0x70($sp) +/* 3FEED4 E01143F4 AFB10064 */ sw $s1, 0x64($sp) +/* 3FEED8 E01143F8 AFB00060 */ sw $s0, 0x60($sp) +/* 3FEEDC E01143FC F7B40088 */ sdc1 $f20, 0x88($sp) +/* 3FEEE0 E0114400 8E430000 */ lw $v1, ($s2) +/* 3FEEE4 E0114404 4480A000 */ mtc1 $zero, $f20 +/* 3FEEE8 E0114408 8C95000C */ lw $s5, 0xc($a0) +/* 3FEEEC E011440C 0060282D */ daddu $a1, $v1, $zero +/* 3FEEF0 E0114410 24630008 */ addiu $v1, $v1, 8 +/* 3FEEF4 E0114414 AE430000 */ sw $v1, ($s2) +/* 3FEEF8 E0114418 8EA60004 */ lw $a2, 4($s5) +/* 3FEEFC E011441C 02A0882D */ daddu $s1, $s5, $zero +/* 3FEF00 E0114420 ACA20000 */ sw $v0, ($a1) +/* 3FEF04 E0114424 24620008 */ addiu $v0, $v1, 8 +/* 3FEF08 E0114428 ACA00004 */ sw $zero, 4($a1) +/* 3FEF0C E011442C AE420000 */ sw $v0, ($s2) +/* 3FEF10 E0114430 24620010 */ addiu $v0, $v1, 0x10 +/* 3FEF14 E0114434 AC670000 */ sw $a3, ($v1) +/* 3FEF18 E0114438 AE420000 */ sw $v0, ($s2) +/* 3FEF1C E011443C 24620018 */ addiu $v0, $v1, 0x18 +/* 3FEF20 E0114440 AE420000 */ sw $v0, ($s2) +/* 3FEF24 E0114444 24620020 */ addiu $v0, $v1, 0x20 +/* 3FEF28 E0114448 AE420000 */ sw $v0, ($s2) +/* 3FEF2C E011444C 8C840010 */ lw $a0, 0x10($a0) +/* 3FEF30 E0114450 00061100 */ sll $v0, $a2, 4 +/* 3FEF34 E0114454 00461023 */ subu $v0, $v0, $a2 +/* 3FEF38 E0114458 0002A040 */ sll $s4, $v0, 1 +/* 3FEF3C E011445C 8C85001C */ lw $a1, 0x1c($a0) +/* 3FEF40 E0114460 3C02DE00 */ lui $v0, 0xde00 +/* 3FEF44 E0114464 AC620008 */ sw $v0, 8($v1) +/* 3FEF48 E0114468 8FC40000 */ lw $a0, ($fp) +/* 3FEF4C E011446C 3C020900 */ lui $v0, 0x900 +/* 3FEF50 E0114470 24422D70 */ addiu $v0, $v0, 0x2d70 +/* 3FEF54 E0114474 AC62000C */ sw $v0, 0xc($v1) +/* 3FEF58 E0114478 3C028000 */ lui $v0, 0x8000 +/* 3FEF5C E011447C AC680010 */ sw $t0, 0x10($v1) +/* 3FEF60 E0114480 AC690018 */ sw $t1, 0x18($v1) +/* 3FEF64 E0114484 AC640014 */ sw $a0, 0x14($v1) +/* 3FEF68 E0114488 24840010 */ addiu $a0, $a0, 0x10 +/* 3FEF6C E011448C 00A22821 */ addu $a1, $a1, $v0 +/* 3FEF70 E0114490 AC64001C */ sw $a0, 0x1c($v1) +/* 3FEF74 E0114494 AC650004 */ sw $a1, 4($v1) +.LE0114498: +/* 3FEF78 E0114498 8E220008 */ lw $v0, 8($s1) +/* 3FEF7C E011449C 30420001 */ andi $v0, $v0, 1 +/* 3FEF80 E01144A0 1040006D */ beqz $v0, .LE0114658 +/* 3FEF84 E01144A4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3FEF88 E01144A8 3C013F80 */ lui $at, 0x3f80 +/* 3FEF8C E01144AC 44810000 */ mtc1 $at, $f0 +/* 3FEF90 E01144B0 C62400B8 */ lwc1 $f4, 0xb8($s1) +/* 3FEF94 E01144B4 E7A00010 */ swc1 $f0, 0x10($sp) +/* 3FEF98 E01144B8 C6200034 */ lwc1 $f0, 0x34($s1) +/* 3FEF9C E01144BC E7A00014 */ swc1 $f0, 0x14($sp) +/* 3FEFA0 E01144C0 C6200060 */ lwc1 $f0, 0x60($s1) +/* 3FEFA4 E01144C4 C6220110 */ lwc1 $f2, 0x110($s1) +/* 3FEFA8 E01144C8 4405A000 */ mfc1 $a1, $f20 +/* 3FEFAC E01144CC 46020000 */ add.s $f0, $f0, $f2 +/* 3FEFB0 E01144D0 3C014334 */ lui $at, 0x4334 +/* 3FEFB4 E01144D4 44811000 */ mtc1 $at, $f2 +/* 3FEFB8 E01144D8 4407A000 */ mfc1 $a3, $f20 +/* 3FEFBC E01144DC 46041081 */ sub.s $f2, $f2, $f4 +/* 3FEFC0 E01144E0 E7A00018 */ swc1 $f0, 0x18($sp) +/* 3FEFC4 E01144E4 C620008C */ lwc1 $f0, 0x8c($s1) +/* 3FEFC8 E01144E8 44061000 */ mfc1 $a2, $f2 +/* 3FEFCC E01144EC 0C080180 */ jal func_E0200600 +/* 3FEFD0 E01144F0 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 3FEFD4 E01144F4 27A40020 */ addiu $a0, $sp, 0x20 +/* 3FEFD8 E01144F8 96E50000 */ lhu $a1, ($s7) +/* 3FEFDC E01144FC 8FC20000 */ lw $v0, ($fp) +/* 3FEFE0 E0114500 00052980 */ sll $a1, $a1, 6 +/* 3FEFE4 E0114504 00B62821 */ addu $a1, $a1, $s6 +/* 3FEFE8 E0114508 0C080118 */ jal func_E0200460 +/* 3FEFEC E011450C 00452821 */ addu $a1, $v0, $a1 +/* 3FEFF0 E0114510 3C02DA38 */ lui $v0, 0xda38 +/* 3FEFF4 E0114514 34420002 */ ori $v0, $v0, 2 +/* 3FEFF8 E0114518 02B38021 */ addu $s0, $s5, $s3 +/* 3FEFFC E011451C 8E440000 */ lw $a0, ($s2) +/* 3FF000 E0114520 96E30000 */ lhu $v1, ($s7) +/* 3FF004 E0114524 0080282D */ daddu $a1, $a0, $zero +/* 3FF008 E0114528 24840008 */ addiu $a0, $a0, 8 +/* 3FF00C E011452C AE440000 */ sw $a0, ($s2) +/* 3FF010 E0114530 ACA20000 */ sw $v0, ($a1) +/* 3FF014 E0114534 24620001 */ addiu $v0, $v1, 1 +/* 3FF018 E0114538 3063FFFF */ andi $v1, $v1, 0xffff +/* 3FF01C E011453C 00031980 */ sll $v1, $v1, 6 +/* 3FF020 E0114540 A6E20000 */ sh $v0, ($s7) +/* 3FF024 E0114544 8FC20000 */ lw $v0, ($fp) +/* 3FF028 E0114548 00761821 */ addu $v1, $v1, $s6 +/* 3FF02C E011454C 00431021 */ addu $v0, $v0, $v1 +/* 3FF030 E0114550 ACA20004 */ sw $v0, 4($a1) +/* 3FF034 E0114554 24820008 */ addiu $v0, $a0, 8 +/* 3FF038 E0114558 3C0ADE00 */ lui $t2, 0xde00 +/* 3FF03C E011455C AE420000 */ sw $v0, ($s2) +/* 3FF040 E0114560 AC8A0000 */ sw $t2, ($a0) +/* 3FF044 E0114564 920200E4 */ lbu $v0, 0xe4($s0) +/* 3FF048 E0114568 3C0AE011 */ lui $t2, %hi(D_E0114718) +/* 3FF04C E011456C 254A4718 */ addiu $t2, $t2, %lo(D_E0114718) +/* 3FF050 E0114570 00021080 */ sll $v0, $v0, 2 +/* 3FF054 E0114574 004A1021 */ addu $v0, $v0, $t2 +/* 3FF058 E0114578 8C420000 */ lw $v0, ($v0) +/* 3FF05C E011457C AC820004 */ sw $v0, 4($a0) +/* 3FF060 E0114580 920200E4 */ lbu $v0, 0xe4($s0) +/* 3FF064 E0114584 2442FFF8 */ addiu $v0, $v0, -8 +/* 3FF068 E0114588 2C420002 */ sltiu $v0, $v0, 2 +/* 3FF06C E011458C 1040001B */ beqz $v0, .LE01145FC +/* 3FF070 E0114590 3C07D838 */ lui $a3, 0xd838 +/* 3FF074 E0114594 44946000 */ mtc1 $s4, $f12 +/* 3FF078 E0114598 00000000 */ nop +/* 3FF07C E011459C 0C080140 */ jal func_E0200500 +/* 3FF080 E01145A0 46806320 */ cvt.s.w $f12, $f12 +/* 3FF084 E01145A4 3C01427C */ lui $at, 0x427c +/* 3FF088 E01145A8 44811000 */ mtc1 $at, $f2 +/* 3FF08C E01145AC 8E420000 */ lw $v0, ($s2) +/* 3FF090 E01145B0 46020002 */ mul.s $f0, $f0, $f2 +/* 3FF094 E01145B4 00000000 */ nop +/* 3FF098 E01145B8 0040282D */ daddu $a1, $v0, $zero +/* 3FF09C E01145BC 24420008 */ addiu $v0, $v0, 8 +/* 3FF0A0 E01145C0 AE420000 */ sw $v0, ($s2) +/* 3FF0A4 E01145C4 46020000 */ add.s $f0, $f0, $f2 +/* 3FF0A8 E01145C8 3C02FA00 */ lui $v0, 0xfa00 +/* 3FF0AC E01145CC ACA20000 */ sw $v0, ($a1) +/* 3FF0B0 E01145D0 4600018D */ trunc.w.s $f6, $f0 +/* 3FF0B4 E01145D4 44023000 */ mfc1 $v0, $f6 +/* 3FF0B8 E01145D8 00000000 */ nop +/* 3FF0BC E01145DC 304200FF */ andi $v0, $v0, 0xff +/* 3FF0C0 E01145E0 00022600 */ sll $a0, $v0, 0x18 +/* 3FF0C4 E01145E4 00021C00 */ sll $v1, $v0, 0x10 +/* 3FF0C8 E01145E8 00832025 */ or $a0, $a0, $v1 +/* 3FF0CC E01145EC 00021200 */ sll $v0, $v0, 8 +/* 3FF0D0 E01145F0 00822025 */ or $a0, $a0, $v0 +/* 3FF0D4 E01145F4 ACA40004 */ sw $a0, 4($a1) +/* 3FF0D8 E01145F8 3C07D838 */ lui $a3, 0xd838 +.LE01145FC: +/* 3FF0DC E01145FC 8E440000 */ lw $a0, ($s2) +/* 3FF0E0 E0114600 34E70002 */ ori $a3, $a3, 2 +/* 3FF0E4 E0114604 0080302D */ daddu $a2, $a0, $zero +/* 3FF0E8 E0114608 24840008 */ addiu $a0, $a0, 8 +/* 3FF0EC E011460C 3C0ADE00 */ lui $t2, 0xde00 +/* 3FF0F0 E0114610 AE440000 */ sw $a0, ($s2) +/* 3FF0F4 E0114614 ACCA0000 */ sw $t2, ($a2) +/* 3FF0F8 E0114618 3C0AE011 */ lui $t2, %hi(D_E01146A0) +/* 3FF0FC E011461C 254A46A0 */ addiu $t2, $t2, %lo(D_E01146A0) +/* 3FF100 E0114620 920500E4 */ lbu $a1, 0xe4($s0) +/* 3FF104 E0114624 92030105 */ lbu $v1, 0x105($s0) +/* 3FF108 E0114628 00051040 */ sll $v0, $a1, 1 +/* 3FF10C E011462C 00451021 */ addu $v0, $v0, $a1 +/* 3FF110 E0114630 00431021 */ addu $v0, $v0, $v1 +/* 3FF114 E0114634 00021080 */ sll $v0, $v0, 2 +/* 3FF118 E0114638 004A1021 */ addu $v0, $v0, $t2 +/* 3FF11C E011463C 8C430000 */ lw $v1, ($v0) +/* 3FF120 E0114640 24820008 */ addiu $v0, $a0, 8 +/* 3FF124 E0114644 AE420000 */ sw $v0, ($s2) +/* 3FF128 E0114648 24020040 */ addiu $v0, $zero, 0x40 +/* 3FF12C E011464C ACC30004 */ sw $v1, 4($a2) +/* 3FF130 E0114650 AC870000 */ sw $a3, ($a0) +/* 3FF134 E0114654 AC820004 */ sw $v0, 4($a0) +.LE0114658: +/* 3FF138 E0114658 26940014 */ addiu $s4, $s4, 0x14 +/* 3FF13C E011465C 26730001 */ addiu $s3, $s3, 1 +/* 3FF140 E0114660 2A62000B */ slti $v0, $s3, 0xb +/* 3FF144 E0114664 1440FF8C */ bnez $v0, .LE0114498 +/* 3FF148 E0114668 26310004 */ addiu $s1, $s1, 4 +/* 3FF14C E011466C 8FBF0084 */ lw $ra, 0x84($sp) +/* 3FF150 E0114670 8FBE0080 */ lw $fp, 0x80($sp) +/* 3FF154 E0114674 8FB7007C */ lw $s7, 0x7c($sp) +/* 3FF158 E0114678 8FB60078 */ lw $s6, 0x78($sp) +/* 3FF15C E011467C 8FB50074 */ lw $s5, 0x74($sp) +/* 3FF160 E0114680 8FB40070 */ lw $s4, 0x70($sp) +/* 3FF164 E0114684 8FB3006C */ lw $s3, 0x6c($sp) +/* 3FF168 E0114688 8FB20068 */ lw $s2, 0x68($sp) +/* 3FF16C E011468C 8FB10064 */ lw $s1, 0x64($sp) +/* 3FF170 E0114690 8FB00060 */ lw $s0, 0x60($sp) +/* 3FF174 E0114694 D7B40088 */ ldc1 $f20, 0x88($sp) +/* 3FF178 E0114698 03E00008 */ jr $ra +/* 3FF17C E011469C 27BD0090 */ addiu $sp, $sp, 0x90 diff --git a/asm/nonmatchings/code_402640/func_E0116000.s b/asm/nonmatchings/code_402640/func_E0116000.s new file mode 100644 index 0000000000..f4d37fa0f4 --- /dev/null +++ b/asm/nonmatchings/code_402640/func_E0116000.s @@ -0,0 +1,107 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0116000 +/* 402640 E0116000 27BDFFA0 */ addiu $sp, $sp, -0x60 +/* 402644 E0116004 F7B60048 */ sdc1 $f22, 0x48($sp) +/* 402648 E0116008 4485B000 */ mtc1 $a1, $f22 +/* 40264C E011600C F7B80050 */ sdc1 $f24, 0x50($sp) +/* 402650 E0116010 4486C000 */ mtc1 $a2, $f24 +/* 402654 E0116014 F7BA0058 */ sdc1 $f26, 0x58($sp) +/* 402658 E0116018 4487D000 */ mtc1 $a3, $f26 +/* 40265C E011601C AFB30034 */ sw $s3, 0x34($sp) +/* 402660 E0116020 0080982D */ daddu $s3, $a0, $zero +/* 402664 E0116024 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 402668 E0116028 C7B40070 */ lwc1 $f20, 0x70($sp) +/* 40266C E011602C 27A40010 */ addiu $a0, $sp, 0x10 +/* 402670 E0116030 AFB20030 */ sw $s2, 0x30($sp) +/* 402674 E0116034 8FB20074 */ lw $s2, 0x74($sp) +/* 402678 E0116038 3C02E011 */ lui $v0, %hi(D_E0116184) +/* 40267C E011603C 24426184 */ addiu $v0, $v0, %lo(D_E0116184) +/* 402680 E0116040 AFA20018 */ sw $v0, 0x18($sp) +/* 402684 E0116044 3C02E011 */ lui $v0, %hi(D_E011618C) +/* 402688 E0116048 2442618C */ addiu $v0, $v0, %lo(D_E011618C) +/* 40268C E011604C AFA2001C */ sw $v0, 0x1c($sp) +/* 402690 E0116050 3C02E011 */ lui $v0, %hi(D_E01166A0) +/* 402694 E0116054 244266A0 */ addiu $v0, $v0, %lo(D_E01166A0) +/* 402698 E0116058 AFA20020 */ sw $v0, 0x20($sp) +/* 40269C E011605C 2402007D */ addiu $v0, $zero, 0x7d +/* 4026A0 E0116060 AFBF0038 */ sw $ra, 0x38($sp) +/* 4026A4 E0116064 AFB1002C */ sw $s1, 0x2c($sp) +/* 4026A8 E0116068 AFB00028 */ sw $s0, 0x28($sp) +/* 4026AC E011606C AFA00010 */ sw $zero, 0x10($sp) +/* 4026B0 E0116070 AFA00024 */ sw $zero, 0x24($sp) +/* 4026B4 E0116074 0C080124 */ jal func_E0200490 +/* 4026B8 E0116078 AFA20014 */ sw $v0, 0x14($sp) +/* 4026BC E011607C 24040180 */ addiu $a0, $zero, 0x180 +/* 4026C0 E0116080 24110008 */ addiu $s1, $zero, 8 +/* 4026C4 E0116084 0040802D */ daddu $s0, $v0, $zero +/* 4026C8 E0116088 0C08012C */ jal func_E02004B0 +/* 4026CC E011608C AE110008 */ sw $s1, 8($s0) +/* 4026D0 E0116090 0040182D */ daddu $v1, $v0, $zero +/* 4026D4 E0116094 14600003 */ bnez $v1, .LE01160A4 +/* 4026D8 E0116098 AE03000C */ sw $v1, 0xc($s0) +.LE011609C: +/* 4026DC E011609C 08045827 */ j .LE011609C +/* 4026E0 E01160A0 00000000 */ nop +.LE01160A4: +/* 4026E4 E01160A4 AC730000 */ sw $s3, ($v1) +/* 4026E8 E01160A8 1E400004 */ bgtz $s2, .LE01160BC +/* 4026EC E01160AC AC600014 */ sw $zero, 0x14($v1) +/* 4026F0 E01160B0 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 4026F4 E01160B4 08045830 */ j .LE01160C0 +/* 4026F8 E01160B8 AC620010 */ sw $v0, 0x10($v1) +.LE01160BC: +/* 4026FC E01160BC AC720010 */ sw $s2, 0x10($v1) +.LE01160C0: +/* 402700 E01160C0 24040001 */ addiu $a0, $zero, 1 +/* 402704 E01160C4 3C0141F0 */ lui $at, 0x41f0 +/* 402708 E01160C8 44812000 */ mtc1 $at, $f4 +/* 40270C E01160CC 0091102A */ slt $v0, $a0, $s1 +/* 402710 E01160D0 E4760004 */ swc1 $f22, 4($v1) +/* 402714 E01160D4 E4780008 */ swc1 $f24, 8($v1) +/* 402718 E01160D8 E47A000C */ swc1 $f26, 0xc($v1) +/* 40271C E01160DC E4740018 */ swc1 $f20, 0x18($v1) +/* 402720 E01160E0 AC600020 */ sw $zero, 0x20($v1) +/* 402724 E01160E4 E464001C */ swc1 $f4, 0x1c($v1) +/* 402728 E01160E8 1040001A */ beqz $v0, .LE0116154 +/* 40272C E01160EC 24630030 */ addiu $v1, $v1, 0x30 +/* 402730 E01160F0 3C013FE0 */ lui $at, 0x3fe0 +/* 402734 E01160F4 44811800 */ mtc1 $at, $f3 +/* 402738 E01160F8 44801000 */ mtc1 $zero, $f2 +/* 40273C E01160FC 4600A021 */ cvt.d.s $f0, $f20 +/* 402740 E0116100 46220002 */ mul.d $f0, $f0, $f2 +/* 402744 E0116104 00000000 */ nop +/* 402748 E0116108 240500FF */ addiu $a1, $zero, 0xff +/* 40274C E011610C 2463002C */ addiu $v1, $v1, 0x2c +/* 402750 E0116110 3C014248 */ lui $at, 0x4248 +/* 402754 E0116114 44811000 */ mtc1 $at, $f2 +/* 402758 E0116118 46200020 */ cvt.s.d $f0, $f0 +.LE011611C: +/* 40275C E011611C 24840001 */ addiu $a0, $a0, 1 +/* 402760 E0116120 A060FFF8 */ sb $zero, -8($v1) +/* 402764 E0116124 E460FFEC */ swc1 $f0, -0x14($v1) +/* 402768 E0116128 A065FFFA */ sb $a1, -6($v1) +/* 40276C E011612C A065FFFB */ sb $a1, -5($v1) +/* 402770 E0116130 A060FFFC */ sb $zero, -4($v1) +/* 402774 E0116134 A060FFF9 */ sb $zero, -7($v1) +/* 402778 E0116138 E464FFF0 */ swc1 $f4, -0x10($v1) +/* 40277C E011613C AC60FFF4 */ sw $zero, -0xc($v1) +/* 402780 E0116140 A060FFFD */ sb $zero, -3($v1) +/* 402784 E0116144 E4620000 */ swc1 $f2, ($v1) +/* 402788 E0116148 0091102A */ slt $v0, $a0, $s1 +/* 40278C E011614C 1440FFF3 */ bnez $v0, .LE011611C +/* 402790 E0116150 24630030 */ addiu $v1, $v1, 0x30 +.LE0116154: +/* 402794 E0116154 0200102D */ daddu $v0, $s0, $zero +/* 402798 E0116158 8FBF0038 */ lw $ra, 0x38($sp) +/* 40279C E011615C 8FB30034 */ lw $s3, 0x34($sp) +/* 4027A0 E0116160 8FB20030 */ lw $s2, 0x30($sp) +/* 4027A4 E0116164 8FB1002C */ lw $s1, 0x2c($sp) +/* 4027A8 E0116168 8FB00028 */ lw $s0, 0x28($sp) +/* 4027AC E011616C D7BA0058 */ ldc1 $f26, 0x58($sp) +/* 4027B0 E0116170 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 4027B4 E0116174 D7B60048 */ ldc1 $f22, 0x48($sp) +/* 4027B8 E0116178 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 4027BC E011617C 03E00008 */ jr $ra +/* 4027C0 E0116180 27BD0060 */ addiu $sp, $sp, 0x60 diff --git a/asm/nonmatchings/code_402640/func_E0116184.s b/asm/nonmatchings/code_402640/func_E0116184.s new file mode 100644 index 0000000000..a2e77c5f04 --- /dev/null +++ b/asm/nonmatchings/code_402640/func_E0116184.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0116184 +/* 4027C4 E0116184 03E00008 */ jr $ra +/* 4027C8 E0116188 00000000 */ nop diff --git a/asm/nonmatchings/code_402640/func_E011618C.s b/asm/nonmatchings/code_402640/func_E011618C.s new file mode 100644 index 0000000000..ff1196e48c --- /dev/null +++ b/asm/nonmatchings/code_402640/func_E011618C.s @@ -0,0 +1,353 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011618C +/* 4027CC E011618C 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 4027D0 E0116190 AFB40030 */ sw $s4, 0x30($sp) +/* 4027D4 E0116194 0080A02D */ daddu $s4, $a0, $zero +/* 4027D8 E0116198 AFBF0040 */ sw $ra, 0x40($sp) +/* 4027DC E011619C AFB7003C */ sw $s7, 0x3c($sp) +/* 4027E0 E01161A0 AFB60038 */ sw $s6, 0x38($sp) +/* 4027E4 E01161A4 AFB50034 */ sw $s5, 0x34($sp) +/* 4027E8 E01161A8 AFB3002C */ sw $s3, 0x2c($sp) +/* 4027EC E01161AC AFB20028 */ sw $s2, 0x28($sp) +/* 4027F0 E01161B0 AFB10024 */ sw $s1, 0x24($sp) +/* 4027F4 E01161B4 AFB00020 */ sw $s0, 0x20($sp) +/* 4027F8 E01161B8 F7BE0070 */ sdc1 $f30, 0x70($sp) +/* 4027FC E01161BC F7BC0068 */ sdc1 $f28, 0x68($sp) +/* 402800 E01161C0 F7BA0060 */ sdc1 $f26, 0x60($sp) +/* 402804 E01161C4 F7B80058 */ sdc1 $f24, 0x58($sp) +/* 402808 E01161C8 F7B60050 */ sdc1 $f22, 0x50($sp) +/* 40280C E01161CC F7B40048 */ sdc1 $f20, 0x48($sp) +/* 402810 E01161D0 8E91000C */ lw $s1, 0xc($s4) +/* 402814 E01161D4 8E830000 */ lw $v1, ($s4) +/* 402818 E01161D8 C6260004 */ lwc1 $f6, 4($s1) +/* 40281C E01161DC E7A60010 */ swc1 $f6, 0x10($sp) +/* 402820 E01161E0 C6260008 */ lwc1 $f6, 8($s1) +/* 402824 E01161E4 E7A60014 */ swc1 $f6, 0x14($sp) +/* 402828 E01161E8 C626000C */ lwc1 $f6, 0xc($s1) +/* 40282C E01161EC 30620010 */ andi $v0, $v1, 0x10 +/* 402830 E01161F0 10400006 */ beqz $v0, .LE011620C +/* 402834 E01161F4 E7A60018 */ swc1 $f6, 0x18($sp) +/* 402838 E01161F8 2402FFEF */ addiu $v0, $zero, -0x11 +/* 40283C E01161FC 00621024 */ and $v0, $v1, $v0 +/* 402840 E0116200 AE820000 */ sw $v0, ($s4) +/* 402844 E0116204 24020020 */ addiu $v0, $zero, 0x20 +/* 402848 E0116208 AE220010 */ sw $v0, 0x10($s1) +.LE011620C: +/* 40284C E011620C 8E230010 */ lw $v1, 0x10($s1) +/* 402850 E0116210 286203E8 */ slti $v0, $v1, 0x3e8 +/* 402854 E0116214 10400002 */ beqz $v0, .LE0116220 +/* 402858 E0116218 2462FFFF */ addiu $v0, $v1, -1 +/* 40285C E011621C AE220010 */ sw $v0, 0x10($s1) +.LE0116220: +/* 402860 E0116220 8E220014 */ lw $v0, 0x14($s1) +/* 402864 E0116224 8E230010 */ lw $v1, 0x10($s1) +/* 402868 E0116228 24440001 */ addiu $a0, $v0, 1 +/* 40286C E011622C 04610005 */ bgez $v1, .LE0116244 +/* 402870 E0116230 AE240014 */ sw $a0, 0x14($s1) +/* 402874 E0116234 0C080128 */ jal func_E02004A0 +/* 402878 E0116238 0280202D */ daddu $a0, $s4, $zero +/* 40287C E011623C 08045997 */ j .LE011665C +/* 402880 E0116240 00000000 */ nop +.LE0116244: +/* 402884 E0116244 3C0142B4 */ lui $at, 0x42b4 +/* 402888 E0116248 44810000 */ mtc1 $at, $f0 +/* 40288C E011624C 24130001 */ addiu $s3, $zero, 1 +/* 402890 E0116250 E6200020 */ swc1 $f0, 0x20($s1) +/* 402894 E0116254 26310030 */ addiu $s1, $s1, 0x30 +/* 402898 E0116258 8E820008 */ lw $v0, 8($s4) +/* 40289C E011625C 0262102A */ slt $v0, $s3, $v0 +/* 4028A0 E0116260 104000FE */ beqz $v0, .LE011665C +/* 4028A4 E0116264 46000786 */ mov.s $f30, $f0 +/* 4028A8 E0116268 3C17E011 */ lui $s7, %hi(D_E0116CA4) +/* 4028AC E011626C 26F76CA4 */ addiu $s7, $s7, %lo(D_E0116CA4) +/* 4028B0 E0116270 3C16E011 */ lui $s6, %hi(D_E0116C8C) +/* 4028B4 E0116274 26D66C8C */ addiu $s6, $s6, %lo(D_E0116C8C) +/* 4028B8 E0116278 3C014080 */ lui $at, 0x4080 +/* 4028BC E011627C 44811000 */ mtc1 $at, $f2 +/* 4028C0 E0116280 44840000 */ mtc1 $a0, $f0 +/* 4028C4 E0116284 00000000 */ nop +/* 4028C8 E0116288 46800020 */ cvt.s.w $f0, $f0 +/* 4028CC E011628C 46020002 */ mul.s $f0, $f0, $f2 +/* 4028D0 E0116290 00000000 */ nop +/* 4028D4 E0116294 3C158000 */ lui $s5, 0x8000 +/* 4028D8 E0116298 26300014 */ addiu $s0, $s1, 0x14 +/* 4028DC E011629C 0000902D */ daddu $s2, $zero, $zero +/* 4028E0 E01162A0 3C014F00 */ lui $at, 0x4f00 +/* 4028E4 E01162A4 4481D000 */ mtc1 $at, $f26 +/* 4028E8 E01162A8 46000721 */ cvt.d.s $f28, $f0 +.LE01162AC: +/* 4028EC E01162AC 4493A000 */ mtc1 $s3, $f20 +/* 4028F0 E01162B0 00000000 */ nop +/* 4028F4 E01162B4 4680A520 */ cvt.s.w $f20, $f20 +/* 4028F8 E01162B8 3C01E011 */ lui $at, %hi(D_E0116D90) +/* 4028FC E01162BC D4206D90 */ ldc1 $f0, %lo(D_E0116D90)($at) +/* 402900 E01162C0 4600A521 */ cvt.d.s $f20, $f20 +/* 402904 E01162C4 4620A502 */ mul.d $f20, $f20, $f0 +/* 402908 E01162C8 00000000 */ nop +/* 40290C E01162CC 4634E500 */ add.d $f20, $f28, $f20 +/* 402910 E01162D0 4620A520 */ cvt.s.d $f20, $f20 +/* 402914 E01162D4 0C080140 */ jal func_E0200500 +/* 402918 E01162D8 4600A306 */ mov.s $f12, $f20 +/* 40291C E01162DC 4600F306 */ mov.s $f12, $f30 +/* 402920 E01162E0 C6160018 */ lwc1 $f22, 0x18($s0) +/* 402924 E01162E4 0C080140 */ jal func_E0200500 +/* 402928 E01162E8 46000606 */ mov.s $f24, $f0 +/* 40292C E01162EC 4600B002 */ mul.s $f0, $f22, $f0 +/* 402930 E01162F0 00000000 */ nop +/* 402934 E01162F4 46180002 */ mul.s $f0, $f0, $f24 +/* 402938 E01162F8 00000000 */ nop +/* 40293C E01162FC C7A60010 */ lwc1 $f6, 0x10($sp) +/* 402940 E0116300 46003000 */ add.s $f0, $f6, $f0 +/* 402944 E0116304 4600A306 */ mov.s $f12, $f20 +/* 402948 E0116308 0C080144 */ jal func_E0200510 +/* 40294C E011630C E600FFF0 */ swc1 $f0, -0x10($s0) +/* 402950 E0116310 4600B002 */ mul.s $f0, $f22, $f0 +/* 402954 E0116314 00000000 */ nop +/* 402958 E0116318 C7A60014 */ lwc1 $f6, 0x14($sp) +/* 40295C E011631C 46003000 */ add.s $f0, $f6, $f0 +/* 402960 E0116320 4600F306 */ mov.s $f12, $f30 +/* 402964 E0116324 0C080144 */ jal func_E0200510 +/* 402968 E0116328 E600FFF4 */ swc1 $f0, -0xc($s0) +/* 40296C E011632C 4600B582 */ mul.s $f22, $f22, $f0 +/* 402970 E0116330 00000000 */ nop +/* 402974 E0116334 4618B582 */ mul.s $f22, $f22, $f24 +/* 402978 E0116338 00000000 */ nop +/* 40297C E011633C C7A60018 */ lwc1 $f6, 0x18($sp) +/* 402980 E0116340 92020015 */ lbu $v0, 0x15($s0) +/* 402984 E0116344 46163580 */ add.s $f22, $f6, $f22 +/* 402988 E0116348 2443FFFF */ addiu $v1, $v0, -1 +/* 40298C E011634C 2C620005 */ sltiu $v0, $v1, 5 +/* 402990 E0116350 104000B8 */ beqz $v0, .LE0116634 +/* 402994 E0116354 E616FFF8 */ swc1 $f22, -8($s0) +/* 402998 E0116358 00031080 */ sll $v0, $v1, 2 +/* 40299C E011635C 3C01E011 */ lui $at, %hi(D_E0116D98) +/* 4029A0 E0116360 00220821 */ addu $at, $at, $v0 +/* 4029A4 E0116364 8C226D98 */ lw $v0, %lo(D_E0116D98)($at) +/* 4029A8 E0116368 00400008 */ jr $v0 +/* 4029AC E011636C 00000000 */ nop +/* 4029B0 E0116370 92020015 */ lbu $v0, 0x15($s0) +/* 4029B4 E0116374 AE000000 */ sw $zero, ($s0) +/* 4029B8 E0116378 24420001 */ addiu $v0, $v0, 1 +/* 4029BC E011637C A2020015 */ sb $v0, 0x15($s0) +/* 4029C0 E0116380 8E040000 */ lw $a0, ($s0) +/* 4029C4 E0116384 28820029 */ slti $v0, $a0, 0x29 +/* 4029C8 E0116388 10400004 */ beqz $v0, .LE011639C +/* 4029CC E011638C 00041040 */ sll $v0, $a0, 1 +/* 4029D0 E0116390 00571021 */ addu $v0, $v0, $s7 +/* 4029D4 E0116394 080458E8 */ j .LE01163A0 +/* 4029D8 E0116398 84420000 */ lh $v0, ($v0) +.LE011639C: +/* 4029DC E011639C 86E20050 */ lh $v0, 0x50($s7) +.LE01163A0: +/* 4029E0 E01163A0 44820000 */ mtc1 $v0, $f0 +/* 4029E4 E01163A4 00000000 */ nop +/* 4029E8 E01163A8 46800020 */ cvt.s.w $f0, $f0 +/* 4029EC E01163AC 2882000D */ slti $v0, $a0, 0xd +/* 4029F0 E01163B0 10400006 */ beqz $v0, .LE01163CC +/* 4029F4 E01163B4 E600000C */ swc1 $f0, 0xc($s0) +/* 4029F8 E01163B8 3C02E011 */ lui $v0, %hi(D_E0116CF8) +/* 4029FC E01163BC 00441021 */ addu $v0, $v0, $a0 +/* 402A00 E01163C0 90426CF8 */ lbu $v0, %lo(D_E0116CF8)($v0) +/* 402A04 E01163C4 080458F6 */ j .LE01163D8 +/* 402A08 E01163C8 A2020010 */ sb $v0, 0x10($s0) +.LE01163CC: +/* 402A0C E01163CC 3C02E011 */ lui $v0, %hi(D_E0116D04) +/* 402A10 E01163D0 90426D04 */ lbu $v0, %lo(D_E0116D04)($v0) +/* 402A14 E01163D4 A2020010 */ sb $v0, 0x10($s0) +.LE01163D8: +/* 402A18 E01163D8 28820034 */ slti $v0, $a0, 0x34 +/* 402A1C E01163DC 10400006 */ beqz $v0, .LE01163F8 +/* 402A20 E01163E0 00000000 */ nop +/* 402A24 E01163E4 3C02E011 */ lui $v0, %hi(D_E0116D08) +/* 402A28 E01163E8 00441021 */ addu $v0, $v0, $a0 +/* 402A2C E01163EC 90426D08 */ lbu $v0, %lo(D_E0116D08)($v0) +/* 402A30 E01163F0 08045901 */ j .LE0116404 +/* 402A34 E01163F4 A2020011 */ sb $v0, 0x11($s0) +.LE01163F8: +/* 402A38 E01163F8 3C02E011 */ lui $v0, %hi(D_E0116D3B) +/* 402A3C E01163FC 90426D3B */ lbu $v0, %lo(D_E0116D3B)($v0) +/* 402A40 E0116400 A2020011 */ sb $v0, 0x11($s0) +.LE0116404: +/* 402A44 E0116404 28820030 */ slti $v0, $a0, 0x30 +/* 402A48 E0116408 10400005 */ beqz $v0, .LE0116420 +/* 402A4C E011640C 00000000 */ nop +/* 402A50 E0116410 3C02E011 */ lui $v0, %hi(D_E0116D3C) +/* 402A54 E0116414 00441021 */ addu $v0, $v0, $a0 +/* 402A58 E0116418 0804590A */ j .LE0116428 +/* 402A5C E011641C 90426D3C */ lbu $v0, %lo(D_E0116D3C)($v0) +.LE0116420: +/* 402A60 E0116420 3C02E011 */ lui $v0, %hi(D_E0116D6B) +/* 402A64 E0116424 90426D6B */ lbu $v0, %lo(D_E0116D6B)($v0) +.LE0116428: +/* 402A68 E0116428 44822000 */ mtc1 $v0, $f4 +/* 402A6C E011642C 00000000 */ nop +/* 402A70 E0116430 46802120 */ cvt.s.w $f4, $f4 +/* 402A74 E0116434 3C01E011 */ lui $at, %hi(D_E0116DB0) +/* 402A78 E0116438 D4226DB0 */ ldc1 $f2, %lo(D_E0116DB0)($at) +/* 402A7C E011643C 46002021 */ cvt.d.s $f0, $f4 +/* 402A80 E0116440 46220002 */ mul.d $f0, $f0, $f2 +/* 402A84 E0116444 00000000 */ nop +/* 402A88 E0116448 02561021 */ addu $v0, $s2, $s6 +/* 402A8C E011644C 90420000 */ lbu $v0, ($v0) +/* 402A90 E0116450 46200120 */ cvt.s.d $f4, $f0 +/* 402A94 E0116454 44820000 */ mtc1 $v0, $f0 +/* 402A98 E0116458 00000000 */ nop +/* 402A9C E011645C 46800020 */ cvt.s.w $f0, $f0 +/* 402AA0 E0116460 46002002 */ mul.s $f0, $f4, $f0 +/* 402AA4 E0116464 00000000 */ nop +/* 402AA8 E0116468 4600D03E */ c.le.s $f26, $f0 +/* 402AAC E011646C 00000000 */ nop +/* 402AB0 E0116470 45010005 */ bc1t .LE0116488 +/* 402AB4 E0116474 26230026 */ addiu $v1, $s1, 0x26 +/* 402AB8 E0116478 4600018D */ trunc.w.s $f6, $f0 +/* 402ABC E011647C 44023000 */ mfc1 $v0, $f6 +/* 402AC0 E0116480 08045928 */ j .LE01164A0 +/* 402AC4 E0116484 A0620000 */ sb $v0, ($v1) +.LE0116488: +/* 402AC8 E0116488 461A0001 */ sub.s $f0, $f0, $f26 +/* 402ACC E011648C 4600018D */ trunc.w.s $f6, $f0 +/* 402AD0 E0116490 44023000 */ mfc1 $v0, $f6 +/* 402AD4 E0116494 00000000 */ nop +/* 402AD8 E0116498 00551025 */ or $v0, $v0, $s5 +/* 402ADC E011649C A0620000 */ sb $v0, ($v1) +.LE01164A0: +/* 402AE0 E01164A0 02561021 */ addu $v0, $s2, $s6 +/* 402AE4 E01164A4 90420001 */ lbu $v0, 1($v0) +/* 402AE8 E01164A8 44820000 */ mtc1 $v0, $f0 +/* 402AEC E01164AC 00000000 */ nop +/* 402AF0 E01164B0 46800020 */ cvt.s.w $f0, $f0 +/* 402AF4 E01164B4 46002002 */ mul.s $f0, $f4, $f0 +/* 402AF8 E01164B8 00000000 */ nop +/* 402AFC E01164BC 4600D03E */ c.le.s $f26, $f0 +/* 402B00 E01164C0 00000000 */ nop +/* 402B04 E01164C4 45010005 */ bc1t .LE01164DC +/* 402B08 E01164C8 26230027 */ addiu $v1, $s1, 0x27 +/* 402B0C E01164CC 4600018D */ trunc.w.s $f6, $f0 +/* 402B10 E01164D0 44023000 */ mfc1 $v0, $f6 +/* 402B14 E01164D4 0804593D */ j .LE01164F4 +/* 402B18 E01164D8 A0620000 */ sb $v0, ($v1) +.LE01164DC: +/* 402B1C E01164DC 461A0001 */ sub.s $f0, $f0, $f26 +/* 402B20 E01164E0 4600018D */ trunc.w.s $f6, $f0 +/* 402B24 E01164E4 44023000 */ mfc1 $v0, $f6 +/* 402B28 E01164E8 00000000 */ nop +/* 402B2C E01164EC 00551025 */ or $v0, $v0, $s5 +/* 402B30 E01164F0 A0620000 */ sb $v0, ($v1) +.LE01164F4: +/* 402B34 E01164F4 02561021 */ addu $v0, $s2, $s6 +/* 402B38 E01164F8 90420002 */ lbu $v0, 2($v0) +/* 402B3C E01164FC 44820000 */ mtc1 $v0, $f0 +/* 402B40 E0116500 00000000 */ nop +/* 402B44 E0116504 46800020 */ cvt.s.w $f0, $f0 +/* 402B48 E0116508 46002002 */ mul.s $f0, $f4, $f0 +/* 402B4C E011650C 00000000 */ nop +/* 402B50 E0116510 4600D03E */ c.le.s $f26, $f0 +/* 402B54 E0116514 00000000 */ nop +/* 402B58 E0116518 45010005 */ bc1t .LE0116530 +/* 402B5C E011651C 26230028 */ addiu $v1, $s1, 0x28 +/* 402B60 E0116520 4600018D */ trunc.w.s $f6, $f0 +/* 402B64 E0116524 44023000 */ mfc1 $v0, $f6 +/* 402B68 E0116528 08045952 */ j .LE0116548 +/* 402B6C E011652C A0620000 */ sb $v0, ($v1) +.LE0116530: +/* 402B70 E0116530 461A0001 */ sub.s $f0, $f0, $f26 +/* 402B74 E0116534 4600018D */ trunc.w.s $f6, $f0 +/* 402B78 E0116538 44023000 */ mfc1 $v0, $f6 +/* 402B7C E011653C 00000000 */ nop +/* 402B80 E0116540 00551025 */ or $v0, $v0, $s5 +/* 402B84 E0116544 A0620000 */ sb $v0, ($v1) +.LE0116548: +/* 402B88 E0116548 28820018 */ slti $v0, $a0, 0x18 +/* 402B8C E011654C 10400005 */ beqz $v0, .LE0116564 +/* 402B90 E0116550 00000000 */ nop +/* 402B94 E0116554 3C02E011 */ lui $v0, %hi(D_E0116D6C) +/* 402B98 E0116558 00441021 */ addu $v0, $v0, $a0 +/* 402B9C E011655C 0804595B */ j .LE011656C +/* 402BA0 E0116560 90426D6C */ lbu $v0, %lo(D_E0116D6C)($v0) +.LE0116564: +/* 402BA4 E0116564 3C02E011 */ lui $v0, %hi(D_E0116D83) +/* 402BA8 E0116568 90426D83 */ lbu $v0, %lo(D_E0116D83)($v0) +.LE011656C: +/* 402BAC E011656C 3C01E011 */ lui $at, %hi(D_E0116DB8) +/* 402BB0 E0116570 D4226DB8 */ ldc1 $f2, %lo(D_E0116DB8)($at) +/* 402BB4 E0116574 44820000 */ mtc1 $v0, $f0 +/* 402BB8 E0116578 00000000 */ nop +/* 402BBC E011657C 46800020 */ cvt.s.w $f0, $f0 +/* 402BC0 E0116580 46000021 */ cvt.d.s $f0, $f0 +/* 402BC4 E0116584 46220002 */ mul.d $f0, $f0, $f2 +/* 402BC8 E0116588 00000000 */ nop +/* 402BCC E011658C 46200020 */ cvt.s.d $f0, $f0 +/* 402BD0 E0116590 0804598D */ j .LE0116634 +/* 402BD4 E0116594 E6000004 */ swc1 $f0, 4($s0) +/* 402BD8 E0116598 92020015 */ lbu $v0, 0x15($s0) +/* 402BDC E011659C AE000000 */ sw $zero, ($s0) +/* 402BE0 E01165A0 24420001 */ addiu $v0, $v0, 1 +/* 402BE4 E01165A4 A2020015 */ sb $v0, 0x15($s0) +/* 402BE8 E01165A8 8E040000 */ lw $a0, ($s0) +/* 402BEC E01165AC 28820012 */ slti $v0, $a0, 0x12 +/* 402BF0 E01165B0 1040001C */ beqz $v0, .LE0116624 +/* 402BF4 E01165B4 00041880 */ sll $v1, $a0, 2 +/* 402BF8 E01165B8 00641821 */ addu $v1, $v1, $a0 +/* 402BFC E01165BC 00031840 */ sll $v1, $v1, 1 +/* 402C00 E01165C0 2402005A */ addiu $v0, $zero, 0x5a +/* 402C04 E01165C4 00431023 */ subu $v0, $v0, $v1 +/* 402C08 E01165C8 44826000 */ mtc1 $v0, $f12 +/* 402C0C E01165CC 00000000 */ nop +/* 402C10 E01165D0 46806320 */ cvt.s.w $f12, $f12 +/* 402C14 E01165D4 0C080140 */ jal func_E0200500 +/* 402C18 E01165D8 26520003 */ addiu $s2, $s2, 3 +/* 402C1C E01165DC 3C013F80 */ lui $at, 0x3f80 +/* 402C20 E01165E0 44811000 */ mtc1 $at, $f2 +/* 402C24 E01165E4 00000000 */ nop +/* 402C28 E01165E8 46020000 */ add.s $f0, $f0, $f2 +/* 402C2C E01165EC 3C014248 */ lui $at, 0x4248 +/* 402C30 E01165F0 44811000 */ mtc1 $at, $f2 +/* 402C34 E01165F4 00000000 */ nop +/* 402C38 E01165F8 46020002 */ mul.s $f0, $f0, $f2 +/* 402C3C E01165FC 00000000 */ nop +/* 402C40 E0116600 3C013FE0 */ lui $at, 0x3fe0 +/* 402C44 E0116604 44811800 */ mtc1 $at, $f3 +/* 402C48 E0116608 44801000 */ mtc1 $zero, $f2 +/* 402C4C E011660C 46000021 */ cvt.d.s $f0, $f0 +/* 402C50 E0116610 46220002 */ mul.d $f0, $f0, $f2 +/* 402C54 E0116614 00000000 */ nop +/* 402C58 E0116618 46200020 */ cvt.s.d $f0, $f0 +/* 402C5C E011661C 0804598E */ j .LE0116638 +/* 402C60 E0116620 E6000018 */ swc1 $f0, 0x18($s0) +.LE0116624: +/* 402C64 E0116624 92020015 */ lbu $v0, 0x15($s0) +/* 402C68 E0116628 AE000018 */ sw $zero, 0x18($s0) +/* 402C6C E011662C 24420001 */ addiu $v0, $v0, 1 +/* 402C70 E0116630 A2020015 */ sb $v0, 0x15($s0) +.LE0116634: +/* 402C74 E0116634 26520003 */ addiu $s2, $s2, 3 +.LE0116638: +/* 402C78 E0116638 26730001 */ addiu $s3, $s3, 1 +/* 402C7C E011663C 8E020000 */ lw $v0, ($s0) +/* 402C80 E0116640 26310030 */ addiu $s1, $s1, 0x30 +/* 402C84 E0116644 24420001 */ addiu $v0, $v0, 1 +/* 402C88 E0116648 AE020000 */ sw $v0, ($s0) +/* 402C8C E011664C 8E820008 */ lw $v0, 8($s4) +/* 402C90 E0116650 0262102A */ slt $v0, $s3, $v0 +/* 402C94 E0116654 1440FF15 */ bnez $v0, .LE01162AC +/* 402C98 E0116658 26100030 */ addiu $s0, $s0, 0x30 +.LE011665C: +/* 402C9C E011665C 8FBF0040 */ lw $ra, 0x40($sp) +/* 402CA0 E0116660 8FB7003C */ lw $s7, 0x3c($sp) +/* 402CA4 E0116664 8FB60038 */ lw $s6, 0x38($sp) +/* 402CA8 E0116668 8FB50034 */ lw $s5, 0x34($sp) +/* 402CAC E011666C 8FB40030 */ lw $s4, 0x30($sp) +/* 402CB0 E0116670 8FB3002C */ lw $s3, 0x2c($sp) +/* 402CB4 E0116674 8FB20028 */ lw $s2, 0x28($sp) +/* 402CB8 E0116678 8FB10024 */ lw $s1, 0x24($sp) +/* 402CBC E011667C 8FB00020 */ lw $s0, 0x20($sp) +/* 402CC0 E0116680 D7BE0070 */ ldc1 $f30, 0x70($sp) +/* 402CC4 E0116684 D7BC0068 */ ldc1 $f28, 0x68($sp) +/* 402CC8 E0116688 D7BA0060 */ ldc1 $f26, 0x60($sp) +/* 402CCC E011668C D7B80058 */ ldc1 $f24, 0x58($sp) +/* 402CD0 E0116690 D7B60050 */ ldc1 $f22, 0x50($sp) +/* 402CD4 E0116694 D7B40048 */ ldc1 $f20, 0x48($sp) +/* 402CD8 E0116698 03E00008 */ jr $ra +/* 402CDC E011669C 27BD0078 */ addiu $sp, $sp, 0x78 diff --git a/asm/nonmatchings/code_402640/func_E01166A0.s b/asm/nonmatchings/code_402640/func_E01166A0.s new file mode 100644 index 0000000000..a55644b84e --- /dev/null +++ b/asm/nonmatchings/code_402640/func_E01166A0.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01166A0 +/* 402CE0 E01166A0 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 402CE4 E01166A4 3C02E011 */ lui $v0, %hi(D_E0116884) +/* 402CE8 E01166A8 24426884 */ addiu $v0, $v0, %lo(D_E0116884) +/* 402CEC E01166AC AFA2001C */ sw $v0, 0x1c($sp) +/* 402CF0 E01166B0 2402000A */ addiu $v0, $zero, 0xa +/* 402CF4 E01166B4 AFA20014 */ sw $v0, 0x14($sp) +/* 402CF8 E01166B8 24020011 */ addiu $v0, $zero, 0x11 +/* 402CFC E01166BC AFA40018 */ sw $a0, 0x18($sp) +/* 402D00 E01166C0 27A40010 */ addiu $a0, $sp, 0x10 +/* 402D04 E01166C4 AFBF0020 */ sw $ra, 0x20($sp) +/* 402D08 E01166C8 0C080120 */ jal func_E0200480 +/* 402D0C E01166CC AFA20010 */ sw $v0, 0x10($sp) +/* 402D10 E01166D0 8C430000 */ lw $v1, ($v0) +/* 402D14 E01166D4 34630002 */ ori $v1, $v1, 2 +/* 402D18 E01166D8 AC430000 */ sw $v1, ($v0) +/* 402D1C E01166DC 8FBF0020 */ lw $ra, 0x20($sp) +/* 402D20 E01166E0 03E00008 */ jr $ra +/* 402D24 E01166E4 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_402640/func_E01166E8.s b/asm/nonmatchings/code_402640/func_E01166E8.s new file mode 100644 index 0000000000..273e6837c5 --- /dev/null +++ b/asm/nonmatchings/code_402640/func_E01166E8.s @@ -0,0 +1,109 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01166E8 +/* 402D28 E01166E8 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 402D2C E01166EC AFB000A0 */ sw $s0, 0xa0($sp) +/* 402D30 E01166F0 AFBF00AC */ sw $ra, 0xac($sp) +/* 402D34 E01166F4 AFB200A8 */ sw $s2, 0xa8($sp) +/* 402D38 E01166F8 AFB100A4 */ sw $s1, 0xa4($sp) +/* 402D3C E01166FC F7B400B0 */ sdc1 $f20, 0xb0($sp) +/* 402D40 E0116700 1480000F */ bnez $a0, .LE0116740 +/* 402D44 E0116704 00A0802D */ daddu $s0, $a1, $zero +/* 402D48 E0116708 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 402D4C E011670C 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 402D50 E0116710 00021880 */ sll $v1, $v0, 2 +/* 402D54 E0116714 00621821 */ addu $v1, $v1, $v0 +/* 402D58 E0116718 00031880 */ sll $v1, $v1, 2 +/* 402D5C E011671C 00621823 */ subu $v1, $v1, $v0 +/* 402D60 E0116720 000310C0 */ sll $v0, $v1, 3 +/* 402D64 E0116724 00621821 */ addu $v1, $v1, $v0 +/* 402D68 E0116728 000318C0 */ sll $v1, $v1, 3 +/* 402D6C E011672C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 402D70 E0116730 00230821 */ addu $at, $at, $v1 +/* 402D74 E0116734 C4261DEC */ lwc1 $f6, %lo(D_800B1DEC)($at) +/* 402D78 E0116738 080459D1 */ j .LE0116744 +/* 402D7C E011673C 00000000 */ nop +.LE0116740: +/* 402D80 E0116740 44803000 */ mtc1 $zero, $f6 +.LE0116744: +/* 402D84 E0116744 C6000018 */ lwc1 $f0, 0x18($s0) +/* 402D88 E0116748 C6040020 */ lwc1 $f4, 0x20($s0) +/* 402D8C E011674C 3C014000 */ lui $at, 0x4000 +/* 402D90 E0116750 44811000 */ mtc1 $at, $f2 +/* 402D94 E0116754 E7A00010 */ swc1 $f0, 0x10($sp) +/* 402D98 E0116758 C6000004 */ lwc1 $f0, 4($s0) +/* 402D9C E011675C 4480A000 */ mtc1 $zero, $f20 +/* 402DA0 E0116760 46020000 */ add.s $f0, $f0, $f2 +/* 402DA4 E0116764 4405A000 */ mfc1 $a1, $f20 +/* 402DA8 E0116768 27A40020 */ addiu $a0, $sp, 0x20 +/* 402DAC E011676C E7A00014 */ swc1 $f0, 0x14($sp) +/* 402DB0 E0116770 C6000008 */ lwc1 $f0, 8($s0) +/* 402DB4 E0116774 46062101 */ sub.s $f4, $f4, $f6 +/* 402DB8 E0116778 E7A00018 */ swc1 $f0, 0x18($sp) +/* 402DBC E011677C C600000C */ lwc1 $f0, 0xc($s0) +/* 402DC0 E0116780 4407A000 */ mfc1 $a3, $f20 +/* 402DC4 E0116784 46020000 */ add.s $f0, $f0, $f2 +/* 402DC8 E0116788 44062000 */ mfc1 $a2, $f4 +/* 402DCC E011678C 3C120001 */ lui $s2, 1 +/* 402DD0 E0116790 0C080180 */ jal func_E0200600 +/* 402DD4 E0116794 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 402DD8 E0116798 4406A000 */ mfc1 $a2, $f20 +/* 402DDC E011679C 4407A000 */ mfc1 $a3, $f20 +/* 402DE0 E01167A0 3C013F80 */ lui $at, 0x3f80 +/* 402DE4 E01167A4 44810000 */ mtc1 $at, $f0 +/* 402DE8 E01167A8 36521630 */ ori $s2, $s2, 0x1630 +/* 402DEC E01167AC E7A00010 */ swc1 $f0, 0x10($sp) +/* 402DF0 E01167B0 8E05001C */ lw $a1, 0x1c($s0) +/* 402DF4 E01167B4 27B00060 */ addiu $s0, $sp, 0x60 +/* 402DF8 E01167B8 0C080104 */ jal func_E0200410 +/* 402DFC E01167BC 0200202D */ daddu $a0, $s0, $zero +/* 402E00 E01167C0 0200202D */ daddu $a0, $s0, $zero +/* 402E04 E01167C4 27A50020 */ addiu $a1, $sp, 0x20 +/* 402E08 E01167C8 0C080114 */ jal func_E0200450 +/* 402E0C E01167CC 00A0302D */ daddu $a2, $a1, $zero +/* 402E10 E01167D0 0200202D */ daddu $a0, $s0, $zero +/* 402E14 E01167D4 4405A000 */ mfc1 $a1, $f20 +/* 402E18 E01167D8 3C07C000 */ lui $a3, 0xc000 +/* 402E1C E01167DC 0C080108 */ jal func_E0200420 +/* 402E20 E01167E0 00A0302D */ daddu $a2, $a1, $zero +/* 402E24 E01167E4 0200202D */ daddu $a0, $s0, $zero +/* 402E28 E01167E8 27A50020 */ addiu $a1, $sp, 0x20 +/* 402E2C E01167EC 0C080114 */ jal func_E0200450 +/* 402E30 E01167F0 00A0302D */ daddu $a2, $a1, $zero +/* 402E34 E01167F4 27A40020 */ addiu $a0, $sp, 0x20 +/* 402E38 E01167F8 3C108007 */ lui $s0, %hi(D_800741F0) +/* 402E3C E01167FC 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 402E40 E0116800 3C11800A */ lui $s1, %hi(D_8009A674) +/* 402E44 E0116804 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 402E48 E0116808 96050000 */ lhu $a1, ($s0) +/* 402E4C E011680C 8E220000 */ lw $v0, ($s1) +/* 402E50 E0116810 00052980 */ sll $a1, $a1, 6 +/* 402E54 E0116814 00B22821 */ addu $a1, $a1, $s2 +/* 402E58 E0116818 0C080118 */ jal func_E0200460 +/* 402E5C E011681C 00452821 */ addu $a1, $v0, $a1 +/* 402E60 E0116820 3C05DA38 */ lui $a1, 0xda38 +/* 402E64 E0116824 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 402E68 E0116828 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 402E6C E011682C 34A50002 */ ori $a1, $a1, 2 +/* 402E70 E0116830 8C830000 */ lw $v1, ($a0) +/* 402E74 E0116834 96020000 */ lhu $v0, ($s0) +/* 402E78 E0116838 0060302D */ daddu $a2, $v1, $zero +/* 402E7C E011683C 24630008 */ addiu $v1, $v1, 8 +/* 402E80 E0116840 AC830000 */ sw $v1, ($a0) +/* 402E84 E0116844 24430001 */ addiu $v1, $v0, 1 +/* 402E88 E0116848 3042FFFF */ andi $v0, $v0, 0xffff +/* 402E8C E011684C 00021180 */ sll $v0, $v0, 6 +/* 402E90 E0116850 ACC50000 */ sw $a1, ($a2) +/* 402E94 E0116854 A6030000 */ sh $v1, ($s0) +/* 402E98 E0116858 8E230000 */ lw $v1, ($s1) +/* 402E9C E011685C 00521021 */ addu $v0, $v0, $s2 +/* 402EA0 E0116860 00621821 */ addu $v1, $v1, $v0 +/* 402EA4 E0116864 ACC30004 */ sw $v1, 4($a2) +/* 402EA8 E0116868 8FBF00AC */ lw $ra, 0xac($sp) +/* 402EAC E011686C 8FB200A8 */ lw $s2, 0xa8($sp) +/* 402EB0 E0116870 8FB100A4 */ lw $s1, 0xa4($sp) +/* 402EB4 E0116874 8FB000A0 */ lw $s0, 0xa0($sp) +/* 402EB8 E0116878 D7B400B0 */ ldc1 $f20, 0xb0($sp) +/* 402EBC E011687C 03E00008 */ jr $ra +/* 402EC0 E0116880 27BD00B8 */ addiu $sp, $sp, 0xb8 diff --git a/asm/nonmatchings/code_402640/func_E0116884.s b/asm/nonmatchings/code_402640/func_E0116884.s new file mode 100644 index 0000000000..5841e418b6 --- /dev/null +++ b/asm/nonmatchings/code_402640/func_E0116884.s @@ -0,0 +1,256 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0116884 +/* 402EC4 E0116884 27BDFFC0 */ addiu $sp, $sp, -0x40 +/* 402EC8 E0116888 AFB7002C */ sw $s7, 0x2c($sp) +/* 402ECC E011688C 0080B82D */ daddu $s7, $a0, $zero +/* 402ED0 E0116890 3C05DB06 */ lui $a1, 0xdb06 +/* 402ED4 E0116894 34A50024 */ ori $a1, $a1, 0x24 +/* 402ED8 E0116898 AFB3001C */ sw $s3, 0x1c($sp) +/* 402EDC E011689C 24130001 */ addiu $s3, $zero, 1 +/* 402EE0 E01168A0 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 402EE4 E01168A4 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 402EE8 E01168A8 3C03E700 */ lui $v1, 0xe700 +/* 402EEC E01168AC AFBF0034 */ sw $ra, 0x34($sp) +/* 402EF0 E01168B0 AFBE0030 */ sw $fp, 0x30($sp) +/* 402EF4 E01168B4 AFB60028 */ sw $s6, 0x28($sp) +/* 402EF8 E01168B8 AFB50024 */ sw $s5, 0x24($sp) +/* 402EFC E01168BC AFB40020 */ sw $s4, 0x20($sp) +/* 402F00 E01168C0 AFB20018 */ sw $s2, 0x18($sp) +/* 402F04 E01168C4 AFB10014 */ sw $s1, 0x14($sp) +/* 402F08 E01168C8 AFB00010 */ sw $s0, 0x10($sp) +/* 402F0C E01168CC F7B40038 */ sdc1 $f20, 0x38($sp) +/* 402F10 E01168D0 8CC20000 */ lw $v0, ($a2) +/* 402F14 E01168D4 8EF2000C */ lw $s2, 0xc($s7) +/* 402F18 E01168D8 0040202D */ daddu $a0, $v0, $zero +/* 402F1C E01168DC 24420008 */ addiu $v0, $v0, 8 +/* 402F20 E01168E0 8E5E0014 */ lw $fp, 0x14($s2) +/* 402F24 E01168E4 26520030 */ addiu $s2, $s2, 0x30 +/* 402F28 E01168E8 ACC20000 */ sw $v0, ($a2) +/* 402F2C E01168EC AC830000 */ sw $v1, ($a0) +/* 402F30 E01168F0 24430008 */ addiu $v1, $v0, 8 +/* 402F34 E01168F4 AC800004 */ sw $zero, 4($a0) +/* 402F38 E01168F8 ACC30000 */ sw $v1, ($a2) +/* 402F3C E01168FC AC450000 */ sw $a1, ($v0) +/* 402F40 E0116900 8EE40010 */ lw $a0, 0x10($s7) +/* 402F44 E0116904 24430010 */ addiu $v1, $v0, 0x10 +/* 402F48 E0116908 ACC30000 */ sw $v1, ($a2) +/* 402F4C E011690C 8C84001C */ lw $a0, 0x1c($a0) +/* 402F50 E0116910 3C03DE00 */ lui $v1, 0xde00 +/* 402F54 E0116914 AC430008 */ sw $v1, 8($v0) +/* 402F58 E0116918 3C030900 */ lui $v1, 0x900 +/* 402F5C E011691C 246342E0 */ addiu $v1, $v1, 0x42e0 +/* 402F60 E0116920 AC43000C */ sw $v1, 0xc($v0) +/* 402F64 E0116924 3C03FB00 */ lui $v1, 0xfb00 +/* 402F68 E0116928 AC430010 */ sw $v1, 0x10($v0) +/* 402F6C E011692C 240300FF */ addiu $v1, $zero, 0xff +/* 402F70 E0116930 AC430014 */ sw $v1, 0x14($v0) +/* 402F74 E0116934 3C038000 */ lui $v1, 0x8000 +/* 402F78 E0116938 00832021 */ addu $a0, $a0, $v1 +/* 402F7C E011693C AC440004 */ sw $a0, 4($v0) +/* 402F80 E0116940 8EE30008 */ lw $v1, 8($s7) +/* 402F84 E0116944 24420018 */ addiu $v0, $v0, 0x18 +/* 402F88 E0116948 0263182A */ slt $v1, $s3, $v1 +/* 402F8C E011694C 106000B5 */ beqz $v1, .LE0116C24 +/* 402F90 E0116950 ACC20000 */ sw $v0, ($a2) +/* 402F94 E0116954 00C0882D */ daddu $s1, $a2, $zero +/* 402F98 E0116958 3C16FB00 */ lui $s6, 0xfb00 +/* 402F9C E011695C 3C14DE00 */ lui $s4, 0xde00 +/* 402FA0 E0116960 3C013F50 */ lui $at, 0x3f50 +/* 402FA4 E0116964 4481A800 */ mtc1 $at, $f21 +/* 402FA8 E0116968 4480A000 */ mtc1 $zero, $f20 +/* 402FAC E011696C 3C15F200 */ lui $s5, 0xf200 +/* 402FB0 E0116970 26500025 */ addiu $s0, $s2, 0x25 +.LE0116974: +/* 402FB4 E0116974 92030004 */ lbu $v1, 4($s0) +/* 402FB8 E0116978 24020005 */ addiu $v0, $zero, 5 +/* 402FBC E011697C 506200A4 */ beql $v1, $v0, .LE0116C10 +/* 402FC0 E0116980 26730001 */ addiu $s3, $s3, 1 +/* 402FC4 E0116984 24040001 */ addiu $a0, $zero, 1 +/* 402FC8 E0116988 0C0459BA */ jal func_E01166E8 +/* 402FCC E011698C 0240282D */ daddu $a1, $s2, $zero +/* 402FD0 E0116990 9203FFFF */ lbu $v1, -1($s0) +/* 402FD4 E0116994 240200FF */ addiu $v0, $zero, 0xff +/* 402FD8 E0116998 1062006E */ beq $v1, $v0, .LE0116B54 +/* 402FDC E011699C 3C02FA00 */ lui $v0, 0xfa00 +/* 402FE0 E01169A0 3C014080 */ lui $at, 0x4080 +/* 402FE4 E01169A4 44810000 */ mtc1 $at, $f0 +/* 402FE8 E01169A8 449E1000 */ mtc1 $fp, $f2 +/* 402FEC E01169AC 00000000 */ nop +/* 402FF0 E01169B0 468010A0 */ cvt.s.w $f2, $f2 +/* 402FF4 E01169B4 46001082 */ mul.s $f2, $f2, $f0 +/* 402FF8 E01169B8 00000000 */ nop +/* 402FFC E01169BC 3C0142C8 */ lui $at, 0x42c8 +/* 403000 E01169C0 44813000 */ mtc1 $at, $f6 +/* 403004 E01169C4 00000000 */ nop +/* 403008 E01169C8 46061182 */ mul.s $f6, $f2, $f6 +/* 40300C E01169CC 00000000 */ nop +/* 403010 E01169D0 460031A1 */ cvt.d.s $f6, $f6 +/* 403014 E01169D4 46343182 */ mul.d $f6, $f6, $f20 +/* 403018 E01169D8 00000000 */ nop +/* 40301C E01169DC 8E260000 */ lw $a2, ($s1) +/* 403020 E01169E0 3C014220 */ lui $at, 0x4220 +/* 403024 E01169E4 44812000 */ mtc1 $at, $f4 +/* 403028 E01169E8 3C0142B4 */ lui $at, 0x42b4 +/* 40302C E01169EC 44814000 */ mtc1 $at, $f8 +/* 403030 E01169F0 00C0202D */ daddu $a0, $a2, $zero +/* 403034 E01169F4 24C60008 */ addiu $a2, $a2, 8 +/* 403038 E01169F8 AE260000 */ sw $a2, ($s1) +/* 40303C E01169FC AC820000 */ sw $v0, ($a0) +/* 403040 E0116A00 46041102 */ mul.s $f4, $f2, $f4 +/* 403044 E0116A04 00000000 */ nop +/* 403048 E0116A08 9203FFFF */ lbu $v1, -1($s0) +/* 40304C E0116A0C 3C014348 */ lui $at, 0x4348 +/* 403050 E0116A10 44810000 */ mtc1 $at, $f0 +/* 403054 E0116A14 24C20008 */ addiu $v0, $a2, 8 +/* 403058 E0116A18 AE220000 */ sw $v0, ($s1) +/* 40305C E0116A1C 46002121 */ cvt.d.s $f4, $f4 +/* 403060 E0116A20 46342102 */ mul.d $f4, $f4, $f20 +/* 403064 E0116A24 00000000 */ nop +/* 403068 E0116A28 AC830004 */ sw $v1, 4($a0) +/* 40306C E0116A2C ACD60000 */ sw $s6, ($a2) +/* 403070 E0116A30 92030001 */ lbu $v1, 1($s0) +/* 403074 E0116A34 92040002 */ lbu $a0, 2($s0) +/* 403078 E0116A38 92050003 */ lbu $a1, 3($s0) +/* 40307C E0116A3C 24C20010 */ addiu $v0, $a2, 0x10 +/* 403080 E0116A40 AE220000 */ sw $v0, ($s1) +/* 403084 E0116A44 46001002 */ mul.s $f0, $f2, $f0 +/* 403088 E0116A48 00000000 */ nop +/* 40308C E0116A4C 24C20018 */ addiu $v0, $a2, 0x18 +/* 403090 E0116A50 ACD40008 */ sw $s4, 8($a2) +/* 403094 E0116A54 AE220000 */ sw $v0, ($s1) +/* 403098 E0116A58 00031E00 */ sll $v1, $v1, 0x18 +/* 40309C E0116A5C 46000021 */ cvt.d.s $f0, $f0 +/* 4030A0 E0116A60 46340002 */ mul.d $f0, $f0, $f20 +/* 4030A4 E0116A64 00000000 */ nop +/* 4030A8 E0116A68 00042400 */ sll $a0, $a0, 0x10 +/* 4030AC E0116A6C 00641825 */ or $v1, $v1, $a0 +/* 4030B0 E0116A70 00052A00 */ sll $a1, $a1, 8 +/* 4030B4 E0116A74 00651825 */ or $v1, $v1, $a1 +/* 4030B8 E0116A78 34630078 */ ori $v1, $v1, 0x78 +/* 4030BC E0116A7C ACC30004 */ sw $v1, 4($a2) +/* 4030C0 E0116A80 3C03E011 */ lui $v1, %hi(D_E0116C6C) +/* 4030C4 E0116A84 8C636C6C */ lw $v1, %lo(D_E0116C6C)($v1) +/* 4030C8 E0116A88 46081082 */ mul.s $f2, $f2, $f8 +/* 4030CC E0116A8C 00000000 */ nop +/* 4030D0 E0116A90 24C20020 */ addiu $v0, $a2, 0x20 +/* 4030D4 E0116A94 AE220000 */ sw $v0, ($s1) +/* 4030D8 E0116A98 ACD40020 */ sw $s4, 0x20($a2) +/* 4030DC E0116A9C ACC3000C */ sw $v1, 0xc($a2) +/* 4030E0 E0116AA0 460010A1 */ cvt.d.s $f2, $f2 +/* 4030E4 E0116AA4 46341082 */ mul.d $f2, $f2, $f20 +/* 4030E8 E0116AA8 00000000 */ nop +/* 4030EC E0116AAC 4620328D */ trunc.w.d $f10, $f6 +/* 4030F0 E0116AB0 44075000 */ mfc1 $a3, $f10 +/* 4030F4 E0116AB4 4620228D */ trunc.w.d $f10, $f4 +/* 4030F8 E0116AB8 44085000 */ mfc1 $t0, $f10 +/* 4030FC E0116ABC 30E40FFF */ andi $a0, $a3, 0xfff +/* 403100 E0116AC0 24E200FC */ addiu $v0, $a3, 0xfc +/* 403104 E0116AC4 4620028D */ trunc.w.d $f10, $f0 +/* 403108 E0116AC8 44075000 */ mfc1 $a3, $f10 +/* 40310C E0116ACC 31030FFF */ andi $v1, $t0, 0xfff +/* 403110 E0116AD0 250500FC */ addiu $a1, $t0, 0xfc +/* 403114 E0116AD4 4620128D */ trunc.w.d $f10, $f2 +/* 403118 E0116AD8 44085000 */ mfc1 $t0, $f10 +/* 40311C E0116ADC 00042300 */ sll $a0, $a0, 0xc +/* 403120 E0116AE0 00751825 */ or $v1, $v1, $s5 +/* 403124 E0116AE4 00832025 */ or $a0, $a0, $v1 +/* 403128 E0116AE8 30420FFF */ andi $v0, $v0, 0xfff +/* 40312C E0116AEC 00021300 */ sll $v0, $v0, 0xc +/* 403130 E0116AF0 30A50FFF */ andi $a1, $a1, 0xfff +/* 403134 E0116AF4 00451025 */ or $v0, $v0, $a1 +/* 403138 E0116AF8 30E30FFF */ andi $v1, $a3, 0xfff +/* 40313C E0116AFC 00031B00 */ sll $v1, $v1, 0xc +/* 403140 E0116B00 ACC20014 */ sw $v0, 0x14($a2) +/* 403144 E0116B04 31020FFF */ andi $v0, $t0, 0xfff +/* 403148 E0116B08 00551025 */ or $v0, $v0, $s5 +/* 40314C E0116B0C 00621825 */ or $v1, $v1, $v0 +/* 403150 E0116B10 ACC30018 */ sw $v1, 0x18($a2) +/* 403154 E0116B14 24E300FC */ addiu $v1, $a3, 0xfc +/* 403158 E0116B18 30630FFF */ andi $v1, $v1, 0xfff +/* 40315C E0116B1C 00031B00 */ sll $v1, $v1, 0xc +/* 403160 E0116B20 250200FC */ addiu $v0, $t0, 0xfc +/* 403164 E0116B24 30420FFF */ andi $v0, $v0, 0xfff +/* 403168 E0116B28 ACC40010 */ sw $a0, 0x10($a2) +/* 40316C E0116B2C 3C040100 */ lui $a0, 0x100 +/* 403170 E0116B30 00441025 */ or $v0, $v0, $a0 +/* 403174 E0116B34 00621825 */ or $v1, $v1, $v0 +/* 403178 E0116B38 ACC3001C */ sw $v1, 0x1c($a2) +/* 40317C E0116B3C 3C03E011 */ lui $v1, %hi(D_E0116C64) +/* 403180 E0116B40 8C636C64 */ lw $v1, %lo(D_E0116C64)($v1) +/* 403184 E0116B44 24C20028 */ addiu $v0, $a2, 0x28 +/* 403188 E0116B48 AE220000 */ sw $v0, ($s1) +/* 40318C E0116B4C 08045AFA */ j .LE0116BE8 +/* 403190 E0116B50 ACC30024 */ sw $v1, 0x24($a2) +.LE0116B54: +/* 403194 E0116B54 8E240000 */ lw $a0, ($s1) +/* 403198 E0116B58 0080282D */ daddu $a1, $a0, $zero +/* 40319C E0116B5C 24840008 */ addiu $a0, $a0, 8 +/* 4031A0 E0116B60 AE240000 */ sw $a0, ($s1) +/* 4031A4 E0116B64 ACB40000 */ sw $s4, ($a1) +/* 4031A8 E0116B68 3C03E011 */ lui $v1, %hi(D_E0116C68) +/* 4031AC E0116B6C 8C636C68 */ lw $v1, %lo(D_E0116C68)($v1) +/* 4031B0 E0116B70 24820008 */ addiu $v0, $a0, 8 +/* 4031B4 E0116B74 AE220000 */ sw $v0, ($s1) +/* 4031B8 E0116B78 ACA30004 */ sw $v1, 4($a1) +/* 4031BC E0116B7C AC960000 */ sw $s6, ($a0) +/* 4031C0 E0116B80 92020001 */ lbu $v0, 1($s0) +/* 4031C4 E0116B84 92030002 */ lbu $v1, 2($s0) +/* 4031C8 E0116B88 92050003 */ lbu $a1, 3($s0) +/* 4031CC E0116B8C 92060000 */ lbu $a2, ($s0) +/* 4031D0 E0116B90 AC940008 */ sw $s4, 8($a0) +/* 4031D4 E0116B94 00021600 */ sll $v0, $v0, 0x18 +/* 4031D8 E0116B98 00031C00 */ sll $v1, $v1, 0x10 +/* 4031DC E0116B9C 00431025 */ or $v0, $v0, $v1 +/* 4031E0 E0116BA0 00052A00 */ sll $a1, $a1, 8 +/* 4031E4 E0116BA4 00451025 */ or $v0, $v0, $a1 +/* 4031E8 E0116BA8 00461025 */ or $v0, $v0, $a2 +/* 4031EC E0116BAC AC820004 */ sw $v0, 4($a0) +/* 4031F0 E0116BB0 2662FFFF */ addiu $v0, $s3, -1 +/* 4031F4 E0116BB4 00021080 */ sll $v0, $v0, 2 +/* 4031F8 E0116BB8 3C03E011 */ lui $v1, %hi(D_E0116C70) +/* 4031FC E0116BBC 00621821 */ addu $v1, $v1, $v0 +/* 403200 E0116BC0 8C636C70 */ lw $v1, %lo(D_E0116C70)($v1) +/* 403204 E0116BC4 24820010 */ addiu $v0, $a0, 0x10 +/* 403208 E0116BC8 AE220000 */ sw $v0, ($s1) +/* 40320C E0116BCC AC940010 */ sw $s4, 0x10($a0) +/* 403210 E0116BD0 AC83000C */ sw $v1, 0xc($a0) +/* 403214 E0116BD4 3C03E011 */ lui $v1, %hi(D_E0116C60) +/* 403218 E0116BD8 8C636C60 */ lw $v1, %lo(D_E0116C60)($v1) +/* 40321C E0116BDC 24820018 */ addiu $v0, $a0, 0x18 +/* 403220 E0116BE0 AE220000 */ sw $v0, ($s1) +/* 403224 E0116BE4 AC830014 */ sw $v1, 0x14($a0) +.LE0116BE8: +/* 403228 E0116BE8 3C04D838 */ lui $a0, 0xd838 +/* 40322C E0116BEC 8E220000 */ lw $v0, ($s1) +/* 403230 E0116BF0 34840002 */ ori $a0, $a0, 2 +/* 403234 E0116BF4 0040182D */ daddu $v1, $v0, $zero +/* 403238 E0116BF8 24420008 */ addiu $v0, $v0, 8 +/* 40323C E0116BFC AE220000 */ sw $v0, ($s1) +/* 403240 E0116C00 24020040 */ addiu $v0, $zero, 0x40 +/* 403244 E0116C04 AC640000 */ sw $a0, ($v1) +/* 403248 E0116C08 AC620004 */ sw $v0, 4($v1) +/* 40324C E0116C0C 26730001 */ addiu $s3, $s3, 1 +.LE0116C10: +/* 403250 E0116C10 26100030 */ addiu $s0, $s0, 0x30 +/* 403254 E0116C14 8EE20008 */ lw $v0, 8($s7) +/* 403258 E0116C18 0262102A */ slt $v0, $s3, $v0 +/* 40325C E0116C1C 1440FF55 */ bnez $v0, .LE0116974 +/* 403260 E0116C20 26520030 */ addiu $s2, $s2, 0x30 +.LE0116C24: +/* 403264 E0116C24 8FBF0034 */ lw $ra, 0x34($sp) +/* 403268 E0116C28 8FBE0030 */ lw $fp, 0x30($sp) +/* 40326C E0116C2C 8FB7002C */ lw $s7, 0x2c($sp) +/* 403270 E0116C30 8FB60028 */ lw $s6, 0x28($sp) +/* 403274 E0116C34 8FB50024 */ lw $s5, 0x24($sp) +/* 403278 E0116C38 8FB40020 */ lw $s4, 0x20($sp) +/* 40327C E0116C3C 8FB3001C */ lw $s3, 0x1c($sp) +/* 403280 E0116C40 8FB20018 */ lw $s2, 0x18($sp) +/* 403284 E0116C44 8FB10014 */ lw $s1, 0x14($sp) +/* 403288 E0116C48 8FB00010 */ lw $s0, 0x10($sp) +/* 40328C E0116C4C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 403290 E0116C50 03E00008 */ jr $ra +/* 403294 E0116C54 27BD0040 */ addiu $sp, $sp, 0x40 +/* 403298 E0116C58 00000000 */ nop +/* 40329C E0116C5C 00000000 */ nop diff --git a/asm/nonmatchings/code_403400/func_E0118000.s b/asm/nonmatchings/code_403400/func_E0118000.s new file mode 100644 index 0000000000..14ef7ee0ed --- /dev/null +++ b/asm/nonmatchings/code_403400/func_E0118000.s @@ -0,0 +1,200 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0118000 +/* 403400 E0118000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 403404 E0118004 F7B80050 */ sdc1 $f24, 0x50($sp) +/* 403408 E0118008 4485C000 */ mtc1 $a1, $f24 +/* 40340C E011800C F7BA0058 */ sdc1 $f26, 0x58($sp) +/* 403410 E0118010 4486D000 */ mtc1 $a2, $f26 +/* 403414 E0118014 F7BC0060 */ sdc1 $f28, 0x60($sp) +/* 403418 E0118018 4487E000 */ mtc1 $a3, $f28 +/* 40341C E011801C AFB1002C */ sw $s1, 0x2c($sp) +/* 403420 E0118020 0080882D */ daddu $s1, $a0, $zero +/* 403424 E0118024 F7BE0068 */ sdc1 $f30, 0x68($sp) +/* 403428 E0118028 C7BE0080 */ lwc1 $f30, 0x80($sp) +/* 40342C E011802C 27A40010 */ addiu $a0, $sp, 0x10 +/* 403430 E0118030 AFB00028 */ sw $s0, 0x28($sp) +/* 403434 E0118034 8FB00084 */ lw $s0, 0x84($sp) +/* 403438 E0118038 3C02E012 */ lui $v0, %hi(D_E01182EC) +/* 40343C E011803C 244282EC */ addiu $v0, $v0, %lo(D_E01182EC) +/* 403440 E0118040 AFA20018 */ sw $v0, 0x18($sp) +/* 403444 E0118044 3C02E012 */ lui $v0, %hi(D_E01182F4) +/* 403448 E0118048 244282F4 */ addiu $v0, $v0, %lo(D_E01182F4) +/* 40344C E011804C AFA2001C */ sw $v0, 0x1c($sp) +/* 403450 E0118050 3C02E012 */ lui $v0, %hi(D_E0118454) +/* 403454 E0118054 24428454 */ addiu $v0, $v0, %lo(D_E0118454) +/* 403458 E0118058 AFA20020 */ sw $v0, 0x20($sp) +/* 40345C E011805C 2402007E */ addiu $v0, $zero, 0x7e +/* 403460 E0118060 AFBF0038 */ sw $ra, 0x38($sp) +/* 403464 E0118064 AFB30034 */ sw $s3, 0x34($sp) +/* 403468 E0118068 AFB20030 */ sw $s2, 0x30($sp) +/* 40346C E011806C F7B60048 */ sdc1 $f22, 0x48($sp) +/* 403470 E0118070 F7B40040 */ sdc1 $f20, 0x40($sp) +/* 403474 E0118074 AFA00010 */ sw $zero, 0x10($sp) +/* 403478 E0118078 AFA00024 */ sw $zero, 0x24($sp) +/* 40347C E011807C 0C080124 */ jal func_E0200490 +/* 403480 E0118080 AFA20014 */ sw $v0, 0x14($sp) +/* 403484 E0118084 24040168 */ addiu $a0, $zero, 0x168 +/* 403488 E0118088 24030006 */ addiu $v1, $zero, 6 +/* 40348C E011808C 0040982D */ daddu $s3, $v0, $zero +/* 403490 E0118090 0C08012C */ jal func_E02004B0 +/* 403494 E0118094 AE630008 */ sw $v1, 8($s3) +/* 403498 E0118098 0040182D */ daddu $v1, $v0, $zero +/* 40349C E011809C 14600003 */ bnez $v1, .LE01180AC +/* 4034A0 E01180A0 AE62000C */ sw $v0, 0xc($s3) +.LE01180A4: +/* 4034A4 E01180A4 08046029 */ j .LE01180A4 +/* 4034A8 E01180A8 00000000 */ nop +.LE01180AC: +/* 4034AC E01180AC AC710000 */ sw $s1, ($v1) +/* 4034B0 E01180B0 1E000004 */ bgtz $s0, .LE01180C4 +/* 4034B4 E01180B4 AC600020 */ sw $zero, 0x20($v1) +/* 4034B8 E01180B8 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 4034BC E01180BC 08046032 */ j .LE01180C8 +/* 4034C0 E01180C0 AC62001C */ sw $v0, 0x1c($v1) +.LE01180C4: +/* 4034C4 E01180C4 AC70001C */ sw $s0, 0x1c($v1) +.LE01180C8: +/* 4034C8 E01180C8 240200FF */ addiu $v0, $zero, 0xff +/* 4034CC E01180CC A4620032 */ sh $v0, 0x32($v1) +/* 4034D0 E01180D0 8E620008 */ lw $v0, 8($s3) +/* 4034D4 E01180D4 18400077 */ blez $v0, .LE01182B4 +/* 4034D8 E01180D8 0000882D */ daddu $s1, $zero, $zero +/* 4034DC E01180DC 241200FF */ addiu $s2, $zero, 0xff +/* 4034E0 E01180E0 24700028 */ addiu $s0, $v1, 0x28 +/* 4034E4 E01180E4 3C013FE0 */ lui $at, 0x3fe0 +/* 4034E8 E01180E8 4481B800 */ mtc1 $at, $f23 +/* 4034EC E01180EC 4480B000 */ mtc1 $zero, $f22 +/* 4034F0 E01180F0 3C01E012 */ lui $at, %hi(D_E01187D0) +/* 4034F4 E01180F4 D43487D0 */ ldc1 $f20, %lo(D_E01187D0)($at) +.LE01180F8: +/* 4034F8 E01180F8 2404000A */ addiu $a0, $zero, 0xa +/* 4034FC E01180FC E618FFDC */ swc1 $f24, -0x24($s0) +/* 403500 E0118100 E61AFFE0 */ swc1 $f26, -0x20($s0) +/* 403504 E0118104 0C080138 */ jal func_E02004E0 +/* 403508 E0118108 E61CFFE4 */ swc1 $f28, -0x1c($s0) +/* 40350C E011810C 2442FFFB */ addiu $v0, $v0, -5 +/* 403510 E0118110 44820000 */ mtc1 $v0, $f0 +/* 403514 E0118114 00000000 */ nop +/* 403518 E0118118 46800021 */ cvt.d.w $f0, $f0 +/* 40351C E011811C 46360002 */ mul.d $f0, $f0, $f22 +/* 403520 E0118120 00000000 */ nop +/* 403524 E0118124 24040005 */ addiu $a0, $zero, 5 +/* 403528 E0118128 46200020 */ cvt.s.d $f0, $f0 +/* 40352C E011812C 0C080138 */ jal func_E02004E0 +/* 403530 E0118130 E600FFE8 */ swc1 $f0, -0x18($s0) +/* 403534 E0118134 24420001 */ addiu $v0, $v0, 1 +/* 403538 E0118138 3C01E012 */ lui $at, %hi(D_E01187D8) +/* 40353C E011813C D42287D8 */ ldc1 $f2, %lo(D_E01187D8)($at) +/* 403540 E0118140 44820000 */ mtc1 $v0, $f0 +/* 403544 E0118144 00000000 */ nop +/* 403548 E0118148 46800021 */ cvt.d.w $f0, $f0 +/* 40354C E011814C 46220002 */ mul.d $f0, $f0, $f2 +/* 403550 E0118150 00000000 */ nop +/* 403554 E0118154 2404000A */ addiu $a0, $zero, 0xa +/* 403558 E0118158 46200020 */ cvt.s.d $f0, $f0 +/* 40355C E011815C 0C080138 */ jal func_E02004E0 +/* 403560 E0118160 E600FFEC */ swc1 $f0, -0x14($s0) +/* 403564 E0118164 2442FFFB */ addiu $v0, $v0, -5 +/* 403568 E0118168 44820000 */ mtc1 $v0, $f0 +/* 40356C E011816C 00000000 */ nop +/* 403570 E0118170 46800021 */ cvt.d.w $f0, $f0 +/* 403574 E0118174 46360002 */ mul.d $f0, $f0, $f22 +/* 403578 E0118178 00000000 */ nop +/* 40357C E011817C 240400FF */ addiu $a0, $zero, 0xff +/* 403580 E0118180 E61EFFFC */ swc1 $f30, -4($s0) +/* 403584 E0118184 46200020 */ cvt.s.d $f0, $f0 +/* 403588 E0118188 0C080138 */ jal func_E02004E0 +/* 40358C E011818C E600FFF0 */ swc1 $f0, -0x10($s0) +/* 403590 E0118190 A602000C */ sh $v0, 0xc($s0) +/* 403594 E0118194 8604000C */ lh $a0, 0xc($s0) +/* 403598 E0118198 A6020004 */ sh $v0, 4($s0) +/* 40359C E011819C 0C080138 */ jal func_E02004E0 +/* 4035A0 E01181A0 02442023 */ subu $a0, $s2, $a0 +/* 4035A4 E01181A4 9603000C */ lhu $v1, 0xc($s0) +/* 4035A8 E01181A8 A602000E */ sh $v0, 0xe($s0) +/* 4035AC E01181AC A6020006 */ sh $v0, 6($s0) +/* 4035B0 E01181B0 02421023 */ subu $v0, $s2, $v0 +/* 4035B4 E01181B4 00431023 */ subu $v0, $v0, $v1 +/* 4035B8 E01181B8 A6020010 */ sh $v0, 0x10($s0) +/* 4035BC E01181BC A6020008 */ sh $v0, 8($s0) +/* 4035C0 E01181C0 96020004 */ lhu $v0, 4($s0) +/* 4035C4 E01181C4 96030006 */ lhu $v1, 6($s0) +/* 4035C8 E01181C8 244200A8 */ addiu $v0, $v0, 0xa8 +/* 4035CC E01181CC A6020004 */ sh $v0, 4($s0) +/* 4035D0 E01181D0 96020008 */ lhu $v0, 8($s0) +/* 4035D4 E01181D4 246300A8 */ addiu $v1, $v1, 0xa8 +/* 4035D8 E01181D8 A6030006 */ sh $v1, 6($s0) +/* 4035DC E01181DC 86030004 */ lh $v1, 4($s0) +/* 4035E0 E01181E0 244200A8 */ addiu $v0, $v0, 0xa8 +/* 4035E4 E01181E4 28630100 */ slti $v1, $v1, 0x100 +/* 4035E8 E01181E8 14600002 */ bnez $v1, .LE01181F4 +/* 4035EC E01181EC A6020008 */ sh $v0, 8($s0) +/* 4035F0 E01181F0 A6120004 */ sh $s2, 4($s0) +.LE01181F4: +/* 4035F4 E01181F4 86020006 */ lh $v0, 6($s0) +/* 4035F8 E01181F8 28420100 */ slti $v0, $v0, 0x100 +/* 4035FC E01181FC 50400001 */ beql $v0, $zero, .LE0118204 +/* 403600 E0118200 A6120006 */ sh $s2, 6($s0) +.LE0118204: +/* 403604 E0118204 86020008 */ lh $v0, 8($s0) +/* 403608 E0118208 28420100 */ slti $v0, $v0, 0x100 +/* 40360C E011820C 50400001 */ beql $v0, $zero, .LE0118214 +/* 403610 E0118210 A6120008 */ sh $s2, 8($s0) +.LE0118214: +/* 403614 E0118214 8602000C */ lh $v0, 0xc($s0) +/* 403618 E0118218 44822000 */ mtc1 $v0, $f4 +/* 40361C E011821C 00000000 */ nop +/* 403620 E0118220 46802121 */ cvt.d.w $f4, $f4 +/* 403624 E0118224 46342102 */ mul.d $f4, $f4, $f20 +/* 403628 E0118228 00000000 */ nop +/* 40362C E011822C 8602000E */ lh $v0, 0xe($s0) +/* 403630 E0118230 44821000 */ mtc1 $v0, $f2 +/* 403634 E0118234 00000000 */ nop +/* 403638 E0118238 468010A1 */ cvt.d.w $f2, $f2 +/* 40363C E011823C 46341082 */ mul.d $f2, $f2, $f20 +/* 403640 E0118240 00000000 */ nop +/* 403644 E0118244 86020010 */ lh $v0, 0x10($s0) +/* 403648 E0118248 44820000 */ mtc1 $v0, $f0 +/* 40364C E011824C 00000000 */ nop +/* 403650 E0118250 46800021 */ cvt.d.w $f0, $f0 +/* 403654 E0118254 46340002 */ mul.d $f0, $f0, $f20 +/* 403658 E0118258 00000000 */ nop +/* 40365C E011825C 24040167 */ addiu $a0, $zero, 0x167 +/* 403660 E0118260 26310001 */ addiu $s1, $s1, 1 +/* 403664 E0118264 4620218D */ trunc.w.d $f6, $f4 +/* 403668 E0118268 44023000 */ mfc1 $v0, $f6 +/* 40366C E011826C 00000000 */ nop +/* 403670 E0118270 A602000C */ sh $v0, 0xc($s0) +/* 403674 E0118274 4620118D */ trunc.w.d $f6, $f2 +/* 403678 E0118278 44023000 */ mfc1 $v0, $f6 +/* 40367C E011827C 00000000 */ nop +/* 403680 E0118280 A602000E */ sh $v0, 0xe($s0) +/* 403684 E0118284 4620018D */ trunc.w.d $f6, $f0 +/* 403688 E0118288 44023000 */ mfc1 $v0, $f6 +/* 40368C E011828C 0C080138 */ jal func_E02004E0 +/* 403690 E0118290 A6020010 */ sh $v0, 0x10($s0) +/* 403694 E0118294 44820000 */ mtc1 $v0, $f0 +/* 403698 E0118298 00000000 */ nop +/* 40369C E011829C 46800020 */ cvt.s.w $f0, $f0 +/* 4036A0 E01182A0 E6000000 */ swc1 $f0, ($s0) +/* 4036A4 E01182A4 8E620008 */ lw $v0, 8($s3) +/* 4036A8 E01182A8 0222102A */ slt $v0, $s1, $v0 +/* 4036AC E01182AC 1440FF92 */ bnez $v0, .LE01180F8 +/* 4036B0 E01182B0 2610003C */ addiu $s0, $s0, 0x3c +.LE01182B4: +/* 4036B4 E01182B4 0260102D */ daddu $v0, $s3, $zero +/* 4036B8 E01182B8 8FBF0038 */ lw $ra, 0x38($sp) +/* 4036BC E01182BC 8FB30034 */ lw $s3, 0x34($sp) +/* 4036C0 E01182C0 8FB20030 */ lw $s2, 0x30($sp) +/* 4036C4 E01182C4 8FB1002C */ lw $s1, 0x2c($sp) +/* 4036C8 E01182C8 8FB00028 */ lw $s0, 0x28($sp) +/* 4036CC E01182CC D7BE0068 */ ldc1 $f30, 0x68($sp) +/* 4036D0 E01182D0 D7BC0060 */ ldc1 $f28, 0x60($sp) +/* 4036D4 E01182D4 D7BA0058 */ ldc1 $f26, 0x58($sp) +/* 4036D8 E01182D8 D7B80050 */ ldc1 $f24, 0x50($sp) +/* 4036DC E01182DC D7B60048 */ ldc1 $f22, 0x48($sp) +/* 4036E0 E01182E0 D7B40040 */ ldc1 $f20, 0x40($sp) +/* 4036E4 E01182E4 03E00008 */ jr $ra +/* 4036E8 E01182E8 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_403400/func_E01182EC.s b/asm/nonmatchings/code_403400/func_E01182EC.s new file mode 100644 index 0000000000..1e01715647 --- /dev/null +++ b/asm/nonmatchings/code_403400/func_E01182EC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01182EC +/* 4036EC E01182EC 03E00008 */ jr $ra +/* 4036F0 E01182F0 00000000 */ nop diff --git a/asm/nonmatchings/code_403400/func_E01182F4.s b/asm/nonmatchings/code_403400/func_E01182F4.s new file mode 100644 index 0000000000..819f269f56 --- /dev/null +++ b/asm/nonmatchings/code_403400/func_E01182F4.s @@ -0,0 +1,100 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01182F4 +/* 4036F4 E01182F4 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 4036F8 E01182F8 AFBF0010 */ sw $ra, 0x10($sp) +/* 4036FC E01182FC 8C830000 */ lw $v1, ($a0) +/* 403700 E0118300 8C85000C */ lw $a1, 0xc($a0) +/* 403704 E0118304 30620010 */ andi $v0, $v1, 0x10 +/* 403708 E0118308 10400005 */ beqz $v0, .LE0118320 +/* 40370C E011830C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 403710 E0118310 00621024 */ and $v0, $v1, $v0 +/* 403714 E0118314 AC820000 */ sw $v0, ($a0) +/* 403718 E0118318 24020010 */ addiu $v0, $zero, 0x10 +/* 40371C E011831C ACA2001C */ sw $v0, 0x1c($a1) +.LE0118320: +/* 403720 E0118320 8CA3001C */ lw $v1, 0x1c($a1) +/* 403724 E0118324 286203E8 */ slti $v0, $v1, 0x3e8 +/* 403728 E0118328 10400002 */ beqz $v0, .LE0118334 +/* 40372C E011832C 2462FFFF */ addiu $v0, $v1, -1 +/* 403730 E0118330 ACA2001C */ sw $v0, 0x1c($a1) +.LE0118334: +/* 403734 E0118334 8CA20020 */ lw $v0, 0x20($a1) +/* 403738 E0118338 8CA3001C */ lw $v1, 0x1c($a1) +/* 40373C E011833C 24420001 */ addiu $v0, $v0, 1 +/* 403740 E0118340 04610005 */ bgez $v1, .LE0118358 +/* 403744 E0118344 ACA20020 */ sw $v0, 0x20($a1) +/* 403748 E0118348 0C080128 */ jal func_E02004A0 +/* 40374C E011834C 00000000 */ nop +/* 403750 E0118350 08046112 */ j .LE0118448 +/* 403754 E0118354 00000000 */ nop +.LE0118358: +/* 403758 E0118358 28620008 */ slti $v0, $v1, 8 +/* 40375C E011835C 10400002 */ beqz $v0, .LE0118368 +/* 403760 E0118360 00031140 */ sll $v0, $v1, 5 +/* 403764 E0118364 A4A20032 */ sh $v0, 0x32($a1) +.LE0118368: +/* 403768 E0118368 8C820008 */ lw $v0, 8($a0) +/* 40376C E011836C 18400036 */ blez $v0, .LE0118448 +/* 403770 E0118370 0000302D */ daddu $a2, $zero, $zero +/* 403774 E0118374 24A50028 */ addiu $a1, $a1, 0x28 +/* 403778 E0118378 3C013FE0 */ lui $at, 0x3fe0 +/* 40377C E011837C 44816800 */ mtc1 $at, $f13 +/* 403780 E0118380 44806000 */ mtc1 $zero, $f12 +/* 403784 E0118384 44804000 */ mtc1 $zero, $f8 +/* 403788 E0118388 3C01E012 */ lui $at, %hi(D_E01187E0) +/* 40378C E011838C D42A87E0 */ ldc1 $f10, %lo(D_E01187E0)($at) +.LE0118390: +/* 403790 E0118390 C4A0FFEC */ lwc1 $f0, -0x14($a1) +/* 403794 E0118394 C4A6FFDC */ lwc1 $f6, -0x24($a1) +/* 403798 E0118398 46000021 */ cvt.d.s $f0, $f0 +/* 40379C E011839C 462C0001 */ sub.d $f0, $f0, $f12 +/* 4037A0 E01183A0 C4A2FFE8 */ lwc1 $f2, -0x18($a1) +/* 4037A4 E01183A4 C4A4FFF0 */ lwc1 $f4, -0x10($a1) +/* 4037A8 E01183A8 46023180 */ add.s $f6, $f6, $f2 +/* 4037AC E01183AC C4A2FFE0 */ lwc1 $f2, -0x20($a1) +/* 4037B0 E01183B0 46200020 */ cvt.s.d $f0, $f0 +/* 4037B4 E01183B4 46001080 */ add.s $f2, $f2, $f0 +/* 4037B8 E01183B8 E4A0FFEC */ swc1 $f0, -0x14($a1) +/* 4037BC E01183BC C4A0FFE4 */ lwc1 $f0, -0x1c($a1) +/* 4037C0 E01183C0 46040000 */ add.s $f0, $f0, $f4 +/* 4037C4 E01183C4 E4A6FFDC */ swc1 $f6, -0x24($a1) +/* 4037C8 E01183C8 4608103C */ c.lt.s $f2, $f8 +/* 4037CC E01183CC E4A2FFE0 */ swc1 $f2, -0x20($a1) +/* 4037D0 E01183D0 4500000C */ bc1f .LE0118404 +/* 4037D4 E01183D4 E4A0FFE4 */ swc1 $f0, -0x1c($a1) +/* 4037D8 E01183D8 C4A0FFEC */ lwc1 $f0, -0x14($a1) +/* 4037DC E01183DC 4608003C */ c.lt.s $f0, $f8 +/* 4037E0 E01183E0 00000000 */ nop +/* 4037E4 E01183E4 45000008 */ bc1f .LE0118408 +/* 4037E8 E01183E8 30C20001 */ andi $v0, $a2, 1 +/* 4037EC E01183EC 46000021 */ cvt.d.s $f0, $f0 +/* 4037F0 E01183F0 462A0002 */ mul.d $f0, $f0, $f10 +/* 4037F4 E01183F4 00000000 */ nop +/* 4037F8 E01183F8 E4A8FFE0 */ swc1 $f8, -0x20($a1) +/* 4037FC E01183FC 46200020 */ cvt.s.d $f0, $f0 +/* 403800 E0118400 E4A0FFEC */ swc1 $f0, -0x14($a1) +.LE0118404: +/* 403804 E0118404 30C20001 */ andi $v0, $a2, 1 +.LE0118408: +/* 403808 E0118408 00021040 */ sll $v0, $v0, 1 +/* 40380C E011840C 2442FFFF */ addiu $v0, $v0, -1 +/* 403810 E0118410 000218C0 */ sll $v1, $v0, 3 +/* 403814 E0118414 00621823 */ subu $v1, $v1, $v0 +/* 403818 E0118418 00031840 */ sll $v1, $v1, 1 +/* 40381C E011841C C4A20000 */ lwc1 $f2, ($a1) +/* 403820 E0118420 44830000 */ mtc1 $v1, $f0 +/* 403824 E0118424 00000000 */ nop +/* 403828 E0118428 46800020 */ cvt.s.w $f0, $f0 +/* 40382C E011842C 46001080 */ add.s $f2, $f2, $f0 +/* 403830 E0118430 24C60001 */ addiu $a2, $a2, 1 +/* 403834 E0118434 E4A20000 */ swc1 $f2, ($a1) +/* 403838 E0118438 8C820008 */ lw $v0, 8($a0) +/* 40383C E011843C 00C2102A */ slt $v0, $a2, $v0 +/* 403840 E0118440 1440FFD3 */ bnez $v0, .LE0118390 +/* 403844 E0118444 24A5003C */ addiu $a1, $a1, 0x3c +.LE0118448: +/* 403848 E0118448 8FBF0010 */ lw $ra, 0x10($sp) +/* 40384C E011844C 03E00008 */ jr $ra +/* 403850 E0118450 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_403400/func_E0118454.s b/asm/nonmatchings/code_403400/func_E0118454.s new file mode 100644 index 0000000000..184792c547 --- /dev/null +++ b/asm/nonmatchings/code_403400/func_E0118454.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0118454 +/* 403854 E0118454 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 403858 E0118458 3C02E012 */ lui $v0, %hi(D_E011849C) +/* 40385C E011845C 2442849C */ addiu $v0, $v0, %lo(D_E011849C) +/* 403860 E0118460 AFA2001C */ sw $v0, 0x1c($sp) +/* 403864 E0118464 2402000A */ addiu $v0, $zero, 0xa +/* 403868 E0118468 AFA20014 */ sw $v0, 0x14($sp) +/* 40386C E011846C 2402002D */ addiu $v0, $zero, 0x2d +/* 403870 E0118470 AFA40018 */ sw $a0, 0x18($sp) +/* 403874 E0118474 27A40010 */ addiu $a0, $sp, 0x10 +/* 403878 E0118478 AFBF0020 */ sw $ra, 0x20($sp) +/* 40387C E011847C 0C080120 */ jal func_E0200480 +/* 403880 E0118480 AFA20010 */ sw $v0, 0x10($sp) +/* 403884 E0118484 8C430000 */ lw $v1, ($v0) +/* 403888 E0118488 34630002 */ ori $v1, $v1, 2 +/* 40388C E011848C AC430000 */ sw $v1, ($v0) +/* 403890 E0118490 8FBF0020 */ lw $ra, 0x20($sp) +/* 403894 E0118494 03E00008 */ jr $ra +/* 403898 E0118498 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_403400/func_E011849C.s b/asm/nonmatchings/code_403400/func_E011849C.s new file mode 100644 index 0000000000..f7c60a8cc8 --- /dev/null +++ b/asm/nonmatchings/code_403400/func_E011849C.s @@ -0,0 +1,203 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011849C +/* 40389C E011849C 27BDFF30 */ addiu $sp, $sp, -0xd0 +/* 4038A0 E01184A0 AFB700BC */ sw $s7, 0xbc($sp) +/* 4038A4 E01184A4 0080B82D */ daddu $s7, $a0, $zero +/* 4038A8 E01184A8 3C05DB06 */ lui $a1, 0xdb06 +/* 4038AC E01184AC 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 4038B0 E01184B0 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 4038B4 E01184B4 34A50024 */ ori $a1, $a1, 0x24 +/* 4038B8 E01184B8 3C02E700 */ lui $v0, 0xe700 +/* 4038BC E01184BC AFBF00C4 */ sw $ra, 0xc4($sp) +/* 4038C0 E01184C0 AFBE00C0 */ sw $fp, 0xc0($sp) +/* 4038C4 E01184C4 AFB600B8 */ sw $s6, 0xb8($sp) +/* 4038C8 E01184C8 AFB500B4 */ sw $s5, 0xb4($sp) +/* 4038CC E01184CC AFB400B0 */ sw $s4, 0xb0($sp) +/* 4038D0 E01184D0 AFB300AC */ sw $s3, 0xac($sp) +/* 4038D4 E01184D4 AFB200A8 */ sw $s2, 0xa8($sp) +/* 4038D8 E01184D8 AFB100A4 */ sw $s1, 0xa4($sp) +/* 4038DC E01184DC AFB000A0 */ sw $s0, 0xa0($sp) +/* 4038E0 E01184E0 F7B400C8 */ sdc1 $f20, 0xc8($sp) +/* 4038E4 E01184E4 8CC40000 */ lw $a0, ($a2) +/* 4038E8 E01184E8 8EE7000C */ lw $a3, 0xc($s7) +/* 4038EC E01184EC 0080182D */ daddu $v1, $a0, $zero +/* 4038F0 E01184F0 84FE0032 */ lh $fp, 0x32($a3) +/* 4038F4 E01184F4 24840008 */ addiu $a0, $a0, 8 +/* 4038F8 E01184F8 AC620000 */ sw $v0, ($v1) +/* 4038FC E01184FC AC600004 */ sw $zero, 4($v1) +/* 403900 E0118500 AC850000 */ sw $a1, ($a0) +/* 403904 E0118504 8EE20010 */ lw $v0, 0x10($s7) +/* 403908 E0118508 0000882D */ daddu $s1, $zero, $zero +/* 40390C E011850C ACC40000 */ sw $a0, ($a2) +/* 403910 E0118510 8C43001C */ lw $v1, 0x1c($v0) +/* 403914 E0118514 3C02DE00 */ lui $v0, 0xde00 +/* 403918 E0118518 AC820008 */ sw $v0, 8($a0) +/* 40391C E011851C 3C028000 */ lui $v0, 0x8000 +/* 403920 E0118520 00621821 */ addu $v1, $v1, $v0 +/* 403924 E0118524 AC830004 */ sw $v1, 4($a0) +/* 403928 E0118528 3C03E012 */ lui $v1, %hi(D_E01187C0) +/* 40392C E011852C 8C6387C0 */ lw $v1, %lo(D_E01187C0)($v1) +/* 403930 E0118530 24820008 */ addiu $v0, $a0, 8 +/* 403934 E0118534 ACC20000 */ sw $v0, ($a2) +/* 403938 E0118538 AC83000C */ sw $v1, 0xc($a0) +/* 40393C E011853C 8EE20008 */ lw $v0, 8($s7) +/* 403940 E0118540 24840010 */ addiu $a0, $a0, 0x10 +/* 403944 E0118544 18400084 */ blez $v0, .LE0118758 +/* 403948 E0118548 ACC40000 */ sw $a0, ($a2) +/* 40394C E011854C 4480A000 */ mtc1 $zero, $f20 +/* 403950 E0118550 27B40060 */ addiu $s4, $sp, 0x60 +/* 403954 E0118554 3C16800A */ lui $s6, %hi(D_8009A674) +/* 403958 E0118558 26D6A674 */ addiu $s6, $s6, %lo(D_8009A674) +/* 40395C E011855C 3C158007 */ lui $s5, %hi(D_800741F0) +/* 403960 E0118560 26B541F0 */ addiu $s5, $s5, %lo(D_800741F0) +/* 403964 E0118564 3C130001 */ lui $s3, 1 +/* 403968 E0118568 36731630 */ ori $s3, $s3, 0x1630 +/* 40396C E011856C 00C0902D */ daddu $s2, $a2, $zero +/* 403970 E0118570 24F0003A */ addiu $s0, $a3, 0x3a +.LE0118574: +/* 403974 E0118574 3C0A800B */ lui $t2, %hi(gCameras) +/* 403978 E0118578 254A1D80 */ addiu $t2, $t2, %lo(gCameras) +/* 40397C E011857C 4405A000 */ mfc1 $a1, $f20 +/* 403980 E0118580 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 403984 E0118584 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 403988 E0118588 C600FFEA */ lwc1 $f0, -0x16($s0) +/* 40398C E011858C 3C013FE0 */ lui $at, 0x3fe0 +/* 403990 E0118590 44811800 */ mtc1 $at, $f3 +/* 403994 E0118594 44801000 */ mtc1 $zero, $f2 +/* 403998 E0118598 00031080 */ sll $v0, $v1, 2 +/* 40399C E011859C 00431021 */ addu $v0, $v0, $v1 +/* 4039A0 E01185A0 46000021 */ cvt.d.s $f0, $f0 +/* 4039A4 E01185A4 00021080 */ sll $v0, $v0, 2 +/* 4039A8 E01185A8 46220002 */ mul.d $f0, $f0, $f2 +/* 4039AC E01185AC 00000000 */ nop +/* 4039B0 E01185B0 00431023 */ subu $v0, $v0, $v1 +/* 4039B4 E01185B4 000218C0 */ sll $v1, $v0, 3 +/* 4039B8 E01185B8 00431021 */ addu $v0, $v0, $v1 +/* 4039BC E01185BC 000210C0 */ sll $v0, $v0, 3 +/* 4039C0 E01185C0 004A1021 */ addu $v0, $v0, $t2 +/* 4039C4 E01185C4 C442006C */ lwc1 $f2, 0x6c($v0) +/* 4039C8 E01185C8 4407A000 */ mfc1 $a3, $f20 +/* 4039CC E01185CC 46001087 */ neg.s $f2, $f2 +/* 4039D0 E01185D0 44061000 */ mfc1 $a2, $f2 +/* 4039D4 E01185D4 46200020 */ cvt.s.d $f0, $f0 +/* 4039D8 E01185D8 E7A00010 */ swc1 $f0, 0x10($sp) +/* 4039DC E01185DC C600FFCA */ lwc1 $f0, -0x36($s0) +/* 4039E0 E01185E0 E7A00014 */ swc1 $f0, 0x14($sp) +/* 4039E4 E01185E4 C600FFCE */ lwc1 $f0, -0x32($s0) +/* 4039E8 E01185E8 E7A00018 */ swc1 $f0, 0x18($sp) +/* 4039EC E01185EC C600FFD2 */ lwc1 $f0, -0x2e($s0) +/* 4039F0 E01185F0 27A40020 */ addiu $a0, $sp, 0x20 +/* 4039F4 E01185F4 0C080180 */ jal func_E0200600 +/* 4039F8 E01185F8 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 4039FC E01185FC 3C013F80 */ lui $at, 0x3f80 +/* 403A00 E0118600 44810000 */ mtc1 $at, $f0 +/* 403A04 E0118604 4406A000 */ mfc1 $a2, $f20 +/* 403A08 E0118608 4407A000 */ mfc1 $a3, $f20 +/* 403A0C E011860C E7A00010 */ swc1 $f0, 0x10($sp) +/* 403A10 E0118610 8E05FFEE */ lw $a1, -0x12($s0) +/* 403A14 E0118614 0C080104 */ jal func_E0200410 +/* 403A18 E0118618 0280202D */ daddu $a0, $s4, $zero +/* 403A1C E011861C 0280202D */ daddu $a0, $s4, $zero +/* 403A20 E0118620 27A50020 */ addiu $a1, $sp, 0x20 +/* 403A24 E0118624 0C080114 */ jal func_E0200450 +/* 403A28 E0118628 00A0302D */ daddu $a2, $a1, $zero +/* 403A2C E011862C 27A40020 */ addiu $a0, $sp, 0x20 +/* 403A30 E0118630 96A50000 */ lhu $a1, ($s5) +/* 403A34 E0118634 8EC20000 */ lw $v0, ($s6) +/* 403A38 E0118638 00052980 */ sll $a1, $a1, 6 +/* 403A3C E011863C 00B32821 */ addu $a1, $a1, $s3 +/* 403A40 E0118640 0C080118 */ jal func_E0200460 +/* 403A44 E0118644 00452821 */ addu $a1, $v0, $a1 +/* 403A48 E0118648 3C02DA38 */ lui $v0, 0xda38 +/* 403A4C E011864C 34420002 */ ori $v0, $v0, 2 +/* 403A50 E0118650 3C09D838 */ lui $t1, 0xd838 +/* 403A54 E0118654 35290002 */ ori $t1, $t1, 2 +/* 403A58 E0118658 32280003 */ andi $t0, $s1, 3 +/* 403A5C E011865C 26310001 */ addiu $s1, $s1, 1 +/* 403A60 E0118660 00084080 */ sll $t0, $t0, 2 +/* 403A64 E0118664 8E440000 */ lw $a0, ($s2) +/* 403A68 E0118668 96A30000 */ lhu $v1, ($s5) +/* 403A6C E011866C 0080282D */ daddu $a1, $a0, $zero +/* 403A70 E0118670 24840008 */ addiu $a0, $a0, 8 +/* 403A74 E0118674 AE440000 */ sw $a0, ($s2) +/* 403A78 E0118678 ACA20000 */ sw $v0, ($a1) +/* 403A7C E011867C 24620001 */ addiu $v0, $v1, 1 +/* 403A80 E0118680 3063FFFF */ andi $v1, $v1, 0xffff +/* 403A84 E0118684 00031980 */ sll $v1, $v1, 6 +/* 403A88 E0118688 A6A20000 */ sh $v0, ($s5) +/* 403A8C E011868C 8EC20000 */ lw $v0, ($s6) +/* 403A90 E0118690 00731821 */ addu $v1, $v1, $s3 +/* 403A94 E0118694 00431021 */ addu $v0, $v0, $v1 +/* 403A98 E0118698 ACA20004 */ sw $v0, 4($a1) +/* 403A9C E011869C 24820008 */ addiu $v0, $a0, 8 +/* 403AA0 E01186A0 AE420000 */ sw $v0, ($s2) +/* 403AA4 E01186A4 3C02FA00 */ lui $v0, 0xfa00 +/* 403AA8 E01186A8 AC820000 */ sw $v0, ($a0) +/* 403AAC E01186AC 9203FFF3 */ lbu $v1, -0xd($s0) +/* 403AB0 E01186B0 9205FFF5 */ lbu $a1, -0xb($s0) +/* 403AB4 E01186B4 9206FFF7 */ lbu $a2, -9($s0) +/* 403AB8 E01186B8 24820010 */ addiu $v0, $a0, 0x10 +/* 403ABC E01186BC AE420000 */ sw $v0, ($s2) +/* 403AC0 E01186C0 3C02FB00 */ lui $v0, 0xfb00 +/* 403AC4 E01186C4 AC820008 */ sw $v0, 8($a0) +/* 403AC8 E01186C8 33C200FF */ andi $v0, $fp, 0xff +/* 403ACC E01186CC 00031E00 */ sll $v1, $v1, 0x18 +/* 403AD0 E01186D0 00052C00 */ sll $a1, $a1, 0x10 +/* 403AD4 E01186D4 00651825 */ or $v1, $v1, $a1 +/* 403AD8 E01186D8 00063200 */ sll $a2, $a2, 8 +/* 403ADC E01186DC 00661825 */ or $v1, $v1, $a2 +/* 403AE0 E01186E0 00621825 */ or $v1, $v1, $v0 +/* 403AE4 E01186E4 AC830004 */ sw $v1, 4($a0) +/* 403AE8 E01186E8 9203FFFB */ lbu $v1, -5($s0) +/* 403AEC E01186EC 9205FFFD */ lbu $a1, -3($s0) +/* 403AF0 E01186F0 9206FFFF */ lbu $a2, -1($s0) +/* 403AF4 E01186F4 92070001 */ lbu $a3, 1($s0) +/* 403AF8 E01186F8 2610003C */ addiu $s0, $s0, 0x3c +/* 403AFC E01186FC 3C02DE00 */ lui $v0, 0xde00 +/* 403B00 E0118700 AC820010 */ sw $v0, 0x10($a0) +/* 403B04 E0118704 00031E00 */ sll $v1, $v1, 0x18 +/* 403B08 E0118708 00052C00 */ sll $a1, $a1, 0x10 +/* 403B0C E011870C 00651825 */ or $v1, $v1, $a1 +/* 403B10 E0118710 00063200 */ sll $a2, $a2, 8 +/* 403B14 E0118714 00661825 */ or $v1, $v1, $a2 +/* 403B18 E0118718 00671825 */ or $v1, $v1, $a3 +/* 403B1C E011871C AC83000C */ sw $v1, 0xc($a0) +/* 403B20 E0118720 3C03E012 */ lui $v1, %hi(D_E01187B0) +/* 403B24 E0118724 00681821 */ addu $v1, $v1, $t0 +/* 403B28 E0118728 8C6387B0 */ lw $v1, %lo(D_E01187B0)($v1) +/* 403B2C E011872C 24820018 */ addiu $v0, $a0, 0x18 +/* 403B30 E0118730 AE420000 */ sw $v0, ($s2) +/* 403B34 E0118734 24020040 */ addiu $v0, $zero, 0x40 +/* 403B38 E0118738 AC890018 */ sw $t1, 0x18($a0) +/* 403B3C E011873C AC82001C */ sw $v0, 0x1c($a0) +/* 403B40 E0118740 AC830014 */ sw $v1, 0x14($a0) +/* 403B44 E0118744 8EE20008 */ lw $v0, 8($s7) +/* 403B48 E0118748 24840020 */ addiu $a0, $a0, 0x20 +/* 403B4C E011874C 0222102A */ slt $v0, $s1, $v0 +/* 403B50 E0118750 1440FF88 */ bnez $v0, .LE0118574 +/* 403B54 E0118754 AE440000 */ sw $a0, ($s2) +.LE0118758: +/* 403B58 E0118758 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 403B5C E011875C 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 403B60 E0118760 8C620000 */ lw $v0, ($v1) +/* 403B64 E0118764 0040202D */ daddu $a0, $v0, $zero +/* 403B68 E0118768 24420008 */ addiu $v0, $v0, 8 +/* 403B6C E011876C AC620000 */ sw $v0, ($v1) +/* 403B70 E0118770 3C02E700 */ lui $v0, 0xe700 +/* 403B74 E0118774 AC820000 */ sw $v0, ($a0) +/* 403B78 E0118778 AC800004 */ sw $zero, 4($a0) +/* 403B7C E011877C 8FBF00C4 */ lw $ra, 0xc4($sp) +/* 403B80 E0118780 8FBE00C0 */ lw $fp, 0xc0($sp) +/* 403B84 E0118784 8FB700BC */ lw $s7, 0xbc($sp) +/* 403B88 E0118788 8FB600B8 */ lw $s6, 0xb8($sp) +/* 403B8C E011878C 8FB500B4 */ lw $s5, 0xb4($sp) +/* 403B90 E0118790 8FB400B0 */ lw $s4, 0xb0($sp) +/* 403B94 E0118794 8FB300AC */ lw $s3, 0xac($sp) +/* 403B98 E0118798 8FB200A8 */ lw $s2, 0xa8($sp) +/* 403B9C E011879C 8FB100A4 */ lw $s1, 0xa4($sp) +/* 403BA0 E01187A0 8FB000A0 */ lw $s0, 0xa0($sp) +/* 403BA4 E01187A4 D7B400C8 */ ldc1 $f20, 0xc8($sp) +/* 403BA8 E01187A8 03E00008 */ jr $ra +/* 403BAC E01187AC 27BD00D0 */ addiu $sp, $sp, 0xd0 diff --git a/asm/nonmatchings/code_404220/func_E011A000.s b/asm/nonmatchings/code_404220/func_E011A000.s new file mode 100644 index 0000000000..a1fc87ed1d --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A000.s @@ -0,0 +1,73 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A000 +/* 404220 E011A000 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 404224 E011A004 AFB1002C */ sw $s1, 0x2c($sp) +/* 404228 E011A008 0080882D */ daddu $s1, $a0, $zero +/* 40422C E011A00C 27A40010 */ addiu $a0, $sp, 0x10 +/* 404230 E011A010 AFB20030 */ sw $s2, 0x30($sp) +/* 404234 E011A014 8FB2004C */ lw $s2, 0x4c($sp) +/* 404238 E011A018 3C02E012 */ lui $v0, %hi(D_E011A0FC) +/* 40423C E011A01C 2442A0FC */ addiu $v0, $v0, %lo(D_E011A0FC) +/* 404240 E011A020 AFA20018 */ sw $v0, 0x18($sp) +/* 404244 E011A024 3C02E012 */ lui $v0, %hi(D_E011A104) +/* 404248 E011A028 2442A104 */ addiu $v0, $v0, %lo(D_E011A104) +/* 40424C E011A02C AFA2001C */ sw $v0, 0x1c($sp) +/* 404250 E011A030 3C02E012 */ lui $v0, %hi(D_E011A398) +/* 404254 E011A034 2442A398 */ addiu $v0, $v0, %lo(D_E011A398) +/* 404258 E011A038 AFA20020 */ sw $v0, 0x20($sp) +/* 40425C E011A03C 3C02E012 */ lui $v0, %hi(D_E011A3A0) +/* 404260 E011A040 2442A3A0 */ addiu $v0, $v0, %lo(D_E011A3A0) +/* 404264 E011A044 AFA20024 */ sw $v0, 0x24($sp) +/* 404268 E011A048 2402007F */ addiu $v0, $zero, 0x7f +/* 40426C E011A04C AFBF0034 */ sw $ra, 0x34($sp) +/* 404270 E011A050 AFB00028 */ sw $s0, 0x28($sp) +/* 404274 E011A054 AFA00010 */ sw $zero, 0x10($sp) +/* 404278 E011A058 0C080124 */ jal func_E0200490 +/* 40427C E011A05C AFA20014 */ sw $v0, 0x14($sp) +/* 404280 E011A060 2404002C */ addiu $a0, $zero, 0x2c +/* 404284 E011A064 24030001 */ addiu $v1, $zero, 1 +/* 404288 E011A068 0040802D */ daddu $s0, $v0, $zero +/* 40428C E011A06C 0C08012C */ jal func_E02004B0 +/* 404290 E011A070 AE030008 */ sw $v1, 8($s0) +/* 404294 E011A074 0040282D */ daddu $a1, $v0, $zero +/* 404298 E011A078 14A00003 */ bnez $a1, .LE011A088 +/* 40429C E011A07C AE02000C */ sw $v0, 0xc($s0) +.LE011A080: +/* 4042A0 E011A080 08046820 */ j .LE011A080 +/* 4042A4 E011A084 00000000 */ nop +.LE011A088: +/* 4042A8 E011A088 A4B10000 */ sh $s1, ($a1) +/* 4042AC E011A08C 1E400004 */ bgtz $s2, .LE011A0A0 +/* 4042B0 E011A090 ACA00008 */ sw $zero, 8($a1) +/* 4042B4 E011A094 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 4042B8 E011A098 08046829 */ j .LE011A0A4 +/* 4042BC E011A09C ACA20004 */ sw $v0, 4($a1) +.LE011A0A0: +/* 4042C0 E011A0A0 ACB20004 */ sw $s2, 4($a1) +.LE011A0A4: +/* 4042C4 E011A0A4 0000202D */ daddu $a0, $zero, $zero +/* 4042C8 E011A0A8 00A0182D */ daddu $v1, $a1, $zero +.LE011A0AC: +/* 4042CC E011A0AC A460000C */ sh $zero, 0xc($v1) +/* 4042D0 E011A0B0 A460000E */ sh $zero, 0xe($v1) +/* 4042D4 E011A0B4 A4600010 */ sh $zero, 0x10($v1) +/* 4042D8 E011A0B8 A4600012 */ sh $zero, 0x12($v1) +/* 4042DC E011A0BC A4600014 */ sh $zero, 0x14($v1) +/* 4042E0 E011A0C0 24840001 */ addiu $a0, $a0, 1 +/* 4042E4 E011A0C4 28820003 */ slti $v0, $a0, 3 +/* 4042E8 E011A0C8 1440FFF8 */ bnez $v0, .LE011A0AC +/* 4042EC E011A0CC 2463000A */ addiu $v1, $v1, 0xa +/* 4042F0 E011A0D0 24020001 */ addiu $v0, $zero, 1 +/* 4042F4 E011A0D4 16220002 */ bne $s1, $v0, .LE011A0E0 +/* 4042F8 E011A0D8 A4A00002 */ sh $zero, 2($a1) +/* 4042FC E011A0DC A4B10002 */ sh $s1, 2($a1) +.LE011A0E0: +/* 404300 E011A0E0 0200102D */ daddu $v0, $s0, $zero +/* 404304 E011A0E4 8FBF0034 */ lw $ra, 0x34($sp) +/* 404308 E011A0E8 8FB20030 */ lw $s2, 0x30($sp) +/* 40430C E011A0EC 8FB1002C */ lw $s1, 0x2c($sp) +/* 404310 E011A0F0 8FB00028 */ lw $s0, 0x28($sp) +/* 404314 E011A0F4 03E00008 */ jr $ra +/* 404318 E011A0F8 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_404220/func_E011A0FC.s b/asm/nonmatchings/code_404220/func_E011A0FC.s new file mode 100644 index 0000000000..0d61a6452e --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A0FC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A0FC +/* 40431C E011A0FC 03E00008 */ jr $ra +/* 404320 E011A100 00000000 */ nop diff --git a/asm/nonmatchings/code_404220/func_E011A104.s b/asm/nonmatchings/code_404220/func_E011A104.s new file mode 100644 index 0000000000..e1499e578a --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A104.s @@ -0,0 +1,182 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A104 +/* 404324 E011A104 27BDFFD0 */ addiu $sp, $sp, -0x30 +/* 404328 E011A108 AFBF002C */ sw $ra, 0x2c($sp) +/* 40432C E011A10C AFB60028 */ sw $s6, 0x28($sp) +/* 404330 E011A110 AFB50024 */ sw $s5, 0x24($sp) +/* 404334 E011A114 AFB40020 */ sw $s4, 0x20($sp) +/* 404338 E011A118 AFB3001C */ sw $s3, 0x1c($sp) +/* 40433C E011A11C AFB20018 */ sw $s2, 0x18($sp) +/* 404340 E011A120 AFB10014 */ sw $s1, 0x14($sp) +/* 404344 E011A124 AFB00010 */ sw $s0, 0x10($sp) +/* 404348 E011A128 8C830000 */ lw $v1, ($a0) +/* 40434C E011A12C 8C91000C */ lw $s1, 0xc($a0) +/* 404350 E011A130 30620010 */ andi $v0, $v1, 0x10 +/* 404354 E011A134 86360000 */ lh $s6, ($s1) +/* 404358 E011A138 10400005 */ beqz $v0, .LE011A150 +/* 40435C E011A13C 2402FFEF */ addiu $v0, $zero, -0x11 +/* 404360 E011A140 00621024 */ and $v0, $v1, $v0 +/* 404364 E011A144 AC820000 */ sw $v0, ($a0) +/* 404368 E011A148 24020010 */ addiu $v0, $zero, 0x10 +/* 40436C E011A14C AE220004 */ sw $v0, 4($s1) +.LE011A150: +/* 404370 E011A150 8E230004 */ lw $v1, 4($s1) +/* 404374 E011A154 286203E8 */ slti $v0, $v1, 0x3e8 +/* 404378 E011A158 10400002 */ beqz $v0, .LE011A164 +/* 40437C E011A15C 2462FFFF */ addiu $v0, $v1, -1 +/* 404380 E011A160 AE220004 */ sw $v0, 4($s1) +.LE011A164: +/* 404384 E011A164 8E220008 */ lw $v0, 8($s1) +/* 404388 E011A168 8E230004 */ lw $v1, 4($s1) +/* 40438C E011A16C 24450001 */ addiu $a1, $v0, 1 +/* 404390 E011A170 04610005 */ bgez $v1, .LE011A188 +/* 404394 E011A174 AE250008 */ sw $a1, 8($s1) +/* 404398 E011A178 0C080128 */ jal func_E02004A0 +/* 40439C E011A17C 00000000 */ nop +/* 4043A0 E011A180 080468DC */ j .LE011A370 +/* 4043A4 E011A184 00000000 */ nop +.LE011A188: +/* 4043A8 E011A188 3C028888 */ lui $v0, 0x8888 +/* 4043AC E011A18C 34428889 */ ori $v0, $v0, 0x8889 +/* 4043B0 E011A190 00A20018 */ mult $a1, $v0 +/* 4043B4 E011A194 0000982D */ daddu $s3, $zero, $zero +/* 4043B8 E011A198 24140001 */ addiu $s4, $zero, 1 +/* 4043BC E011A19C 2412000C */ addiu $s2, $zero, 0xc +/* 4043C0 E011A1A0 000517C3 */ sra $v0, $a1, 0x1f +/* 4043C4 E011A1A4 00003010 */ mfhi $a2 +/* 4043C8 E011A1A8 00C51821 */ addu $v1, $a2, $a1 +/* 4043CC E011A1AC 00031903 */ sra $v1, $v1, 4 +/* 4043D0 E011A1B0 00621823 */ subu $v1, $v1, $v0 +/* 4043D4 E011A1B4 00031100 */ sll $v0, $v1, 4 +/* 4043D8 E011A1B8 00431023 */ subu $v0, $v0, $v1 +/* 4043DC E011A1BC 02821004 */ sllv $v0, $v0, $s4 +/* 4043E0 E011A1C0 00A2A823 */ subu $s5, $a1, $v0 +.LE011A1C4: +/* 4043E4 E011A1C4 02328021 */ addu $s0, $s1, $s2 +/* 4043E8 E011A1C8 86020004 */ lh $v0, 4($s0) +/* 4043EC E011A1CC 04420001 */ bltzl $v0, .LE011A1D4 +/* 4043F0 E011A1D0 A6000004 */ sh $zero, 4($s0) +.LE011A1D4: +/* 4043F4 E011A1D4 16D40006 */ bne $s6, $s4, .LE011A1F0 +/* 4043F8 E011A1D8 00000000 */ nop +/* 4043FC E011A1DC 16A00004 */ bnez $s5, .LE011A1F0 +/* 404400 E011A1E0 00000000 */ nop +/* 404404 E011A1E4 0C080138 */ jal func_E02004E0 +/* 404408 E011A1E8 24040004 */ addiu $a0, $zero, 4 +/* 40440C E011A1EC A6020004 */ sh $v0, 4($s0) +.LE011A1F0: +/* 404410 E011A1F0 86030006 */ lh $v1, 6($s0) +/* 404414 E011A1F4 2C620029 */ sltiu $v0, $v1, 0x29 +/* 404418 E011A1F8 10400059 */ beqz $v0, .LE011A360 +/* 40441C E011A1FC 00031080 */ sll $v0, $v1, 2 +/* 404420 E011A200 3C01E012 */ lui $at, %hi(D_E011AC70) +/* 404424 E011A204 00220821 */ addu $at, $at, $v0 +/* 404428 E011A208 8C22AC70 */ lw $v0, %lo(D_E011AC70)($at) +/* 40442C E011A20C 00400008 */ jr $v0 +/* 404430 E011A210 00000000 */ nop +/* 404434 E011A214 86030000 */ lh $v1, ($s0) +/* 404438 E011A218 240200FF */ addiu $v0, $zero, 0xff +/* 40443C E011A21C 14620011 */ bne $v1, $v0, .LE011A264 +/* 404440 E011A220 00000000 */ nop +/* 404444 E011A224 86040004 */ lh $a0, 4($s0) +/* 404448 E011A228 86030002 */ lh $v1, 2($s0) +/* 40444C E011A22C 0083102A */ slt $v0, $a0, $v1 +/* 404450 E011A230 10400003 */ beqz $v0, .LE011A240 +/* 404454 E011A234 0064102A */ slt $v0, $v1, $a0 +/* 404458 E011A238 080468D8 */ j .LE011A360 +/* 40445C E011A23C A6140006 */ sh $s4, 6($s0) +.LE011A240: +/* 404460 E011A240 10400003 */ beqz $v0, .LE011A250 +/* 404464 E011A244 24020002 */ addiu $v0, $zero, 2 +/* 404468 E011A248 080468D8 */ j .LE011A360 +/* 40446C E011A24C A6020006 */ sh $v0, 6($s0) +.LE011A250: +/* 404470 E011A250 54600044 */ bnel $v1, $zero, .LE011A364 +/* 404474 E011A254 26730001 */ addiu $s3, $s3, 1 +/* 404478 E011A258 24020003 */ addiu $v0, $zero, 3 +/* 40447C E011A25C 080468D8 */ j .LE011A360 +/* 404480 E011A260 A6020006 */ sh $v0, 6($s0) +.LE011A264: +/* 404484 E011A264 5460003F */ bnel $v1, $zero, .LE011A364 +/* 404488 E011A268 26730001 */ addiu $s3, $s3, 1 +/* 40448C E011A26C 86020004 */ lh $v0, 4($s0) +/* 404490 E011A270 1840003B */ blez $v0, .LE011A360 +/* 404494 E011A274 24020004 */ addiu $v0, $zero, 4 +/* 404498 E011A278 080468D8 */ j .LE011A360 +/* 40449C E011A27C A6020006 */ sh $v0, 6($s0) +/* 4044A0 E011A280 2402000A */ addiu $v0, $zero, 0xa +/* 4044A4 E011A284 A6000008 */ sh $zero, 8($s0) +/* 4044A8 E011A288 A6020006 */ sh $v0, 6($s0) +/* 4044AC E011A28C 96020008 */ lhu $v0, 8($s0) +/* 4044B0 E011A290 24420001 */ addiu $v0, $v0, 1 +/* 4044B4 E011A294 A6020008 */ sh $v0, 8($s0) +/* 4044B8 E011A298 00021400 */ sll $v0, $v0, 0x10 +/* 4044BC E011A29C 00021403 */ sra $v0, $v0, 0x10 +/* 4044C0 E011A2A0 2842000B */ slti $v0, $v0, 0xb +/* 4044C4 E011A2A4 5440002F */ bnel $v0, $zero, .LE011A364 +/* 4044C8 E011A2A8 26730001 */ addiu $s3, $s3, 1 +/* 4044CC E011A2AC 96020002 */ lhu $v0, 2($s0) +/* 4044D0 E011A2B0 A6000008 */ sh $zero, 8($s0) +/* 4044D4 E011A2B4 A6000006 */ sh $zero, 6($s0) +/* 4044D8 E011A2B8 2442FFFF */ addiu $v0, $v0, -1 +/* 4044DC E011A2BC 080468D8 */ j .LE011A360 +/* 4044E0 E011A2C0 A6020002 */ sh $v0, 2($s0) +/* 4044E4 E011A2C4 24020014 */ addiu $v0, $zero, 0x14 +/* 4044E8 E011A2C8 A6000008 */ sh $zero, 8($s0) +/* 4044EC E011A2CC A6020006 */ sh $v0, 6($s0) +/* 4044F0 E011A2D0 96020008 */ lhu $v0, 8($s0) +/* 4044F4 E011A2D4 24420001 */ addiu $v0, $v0, 1 +/* 4044F8 E011A2D8 A6020008 */ sh $v0, 8($s0) +/* 4044FC E011A2DC 00021400 */ sll $v0, $v0, 0x10 +/* 404500 E011A2E0 00021403 */ sra $v0, $v0, 0x10 +/* 404504 E011A2E4 2842000B */ slti $v0, $v0, 0xb +/* 404508 E011A2E8 5440001E */ bnel $v0, $zero, .LE011A364 +/* 40450C E011A2EC 26730001 */ addiu $s3, $s3, 1 +/* 404510 E011A2F0 96020004 */ lhu $v0, 4($s0) +/* 404514 E011A2F4 A6000008 */ sh $zero, 8($s0) +/* 404518 E011A2F8 A6000006 */ sh $zero, 6($s0) +/* 40451C E011A2FC 080468D8 */ j .LE011A360 +/* 404520 E011A300 A6020002 */ sh $v0, 2($s0) +/* 404524 E011A304 96020000 */ lhu $v0, ($s0) +/* 404528 E011A308 2442FFE0 */ addiu $v0, $v0, -0x20 +/* 40452C E011A30C A6020000 */ sh $v0, ($s0) +/* 404530 E011A310 00021400 */ sll $v0, $v0, 0x10 +/* 404534 E011A314 04430013 */ bgezl $v0, .LE011A364 +/* 404538 E011A318 26730001 */ addiu $s3, $s3, 1 +/* 40453C E011A31C 080468D7 */ j .LE011A35C +/* 404540 E011A320 A6000000 */ sh $zero, ($s0) +/* 404544 E011A324 96030004 */ lhu $v1, 4($s0) +/* 404548 E011A328 24020028 */ addiu $v0, $zero, 0x28 +/* 40454C E011A32C A6020006 */ sh $v0, 6($s0) +/* 404550 E011A330 A6030002 */ sh $v1, 2($s0) +/* 404554 E011A334 96020000 */ lhu $v0, ($s0) +/* 404558 E011A338 24420040 */ addiu $v0, $v0, 0x40 +/* 40455C E011A33C A6020000 */ sh $v0, ($s0) +/* 404560 E011A340 00021400 */ sll $v0, $v0, 0x10 +/* 404564 E011A344 00021403 */ sra $v0, $v0, 0x10 +/* 404568 E011A348 28420100 */ slti $v0, $v0, 0x100 +/* 40456C E011A34C 54400005 */ bnel $v0, $zero, .LE011A364 +/* 404570 E011A350 26730001 */ addiu $s3, $s3, 1 +/* 404574 E011A354 240200FF */ addiu $v0, $zero, 0xff +/* 404578 E011A358 A6020000 */ sh $v0, ($s0) +.LE011A35C: +/* 40457C E011A35C A6000006 */ sh $zero, 6($s0) +.LE011A360: +/* 404580 E011A360 26730001 */ addiu $s3, $s3, 1 +.LE011A364: +/* 404584 E011A364 2A620003 */ slti $v0, $s3, 3 +/* 404588 E011A368 1440FF96 */ bnez $v0, .LE011A1C4 +/* 40458C E011A36C 2652000A */ addiu $s2, $s2, 0xa +.LE011A370: +/* 404590 E011A370 8FBF002C */ lw $ra, 0x2c($sp) +/* 404594 E011A374 8FB60028 */ lw $s6, 0x28($sp) +/* 404598 E011A378 8FB50024 */ lw $s5, 0x24($sp) +/* 40459C E011A37C 8FB40020 */ lw $s4, 0x20($sp) +/* 4045A0 E011A380 8FB3001C */ lw $s3, 0x1c($sp) +/* 4045A4 E011A384 8FB20018 */ lw $s2, 0x18($sp) +/* 4045A8 E011A388 8FB10014 */ lw $s1, 0x14($sp) +/* 4045AC E011A38C 8FB00010 */ lw $s0, 0x10($sp) +/* 4045B0 E011A390 03E00008 */ jr $ra +/* 4045B4 E011A394 27BD0030 */ addiu $sp, $sp, 0x30 diff --git a/asm/nonmatchings/code_404220/func_E011A398.s b/asm/nonmatchings/code_404220/func_E011A398.s new file mode 100644 index 0000000000..8fb17838f7 --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A398.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A398 +/* 4045B8 E011A398 03E00008 */ jr $ra +/* 4045BC E011A39C 00000000 */ nop diff --git a/asm/nonmatchings/code_404220/func_E011A3A0.s b/asm/nonmatchings/code_404220/func_E011A3A0.s new file mode 100644 index 0000000000..a191a48923 --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A3A0.s @@ -0,0 +1,11 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A3A0 +/* 4045C0 E011A3A0 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 4045C4 E011A3A4 AFBF0010 */ sw $ra, 0x10($sp) +/* 4045C8 E011A3A8 0C0469C0 */ jal func_E011A700 +/* 4045CC E011A3AC 00000000 */ nop +/* 4045D0 E011A3B0 8FBF0010 */ lw $ra, 0x10($sp) +/* 4045D4 E011A3B4 03E00008 */ jr $ra +/* 4045D8 E011A3B8 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_404220/func_E011A3BC.s b/asm/nonmatchings/code_404220/func_E011A3BC.s new file mode 100644 index 0000000000..6c24b7a93c --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A3BC.s @@ -0,0 +1,57 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A3BC +/* 4045DC E011A3BC 0080482D */ daddu $t1, $a0, $zero +/* 4045E0 E011A3C0 00091400 */ sll $v0, $t1, 0x10 +/* 4045E4 E011A3C4 00021403 */ sra $v0, $v0, 0x10 +/* 4045E8 E011A3C8 240300FF */ addiu $v1, $zero, 0xff +/* 4045EC E011A3CC 14430015 */ bne $v0, $v1, .LE011A424 +/* 4045F0 E011A3D0 3C07E200 */ lui $a3, 0xe200 +/* 4045F4 E011A3D4 34E7001C */ ori $a3, $a3, 0x1c +/* 4045F8 E011A3D8 3C050055 */ lui $a1, 0x55 +/* 4045FC E011A3DC 34A51208 */ ori $a1, $a1, 0x1208 +/* 404600 E011A3E0 3C08FCFF */ lui $t0, 0xfcff +/* 404604 E011A3E4 3508FFFF */ ori $t0, $t0, 0xffff +/* 404608 E011A3E8 3C06FFFC */ lui $a2, 0xfffc +/* 40460C E011A3EC 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 404610 E011A3F0 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 404614 E011A3F4 8C820000 */ lw $v0, ($a0) +/* 404618 E011A3F8 34C6F279 */ ori $a2, $a2, 0xf279 +/* 40461C E011A3FC 0040182D */ daddu $v1, $v0, $zero +/* 404620 E011A400 24420008 */ addiu $v0, $v0, 8 +/* 404624 E011A404 AC820000 */ sw $v0, ($a0) +/* 404628 E011A408 AC670000 */ sw $a3, ($v1) +/* 40462C E011A40C AC650004 */ sw $a1, 4($v1) +/* 404630 E011A410 24430008 */ addiu $v1, $v0, 8 +/* 404634 E011A414 AC830000 */ sw $v1, ($a0) +/* 404638 E011A418 AC480000 */ sw $t0, ($v0) +/* 40463C E011A41C 03E00008 */ jr $ra +/* 404640 E011A420 AC460004 */ sw $a2, 4($v0) +.LE011A424: +/* 404644 E011A424 34E7001C */ ori $a3, $a3, 0x1c +/* 404648 E011A428 3C050050 */ lui $a1, 0x50 +/* 40464C E011A42C 34A54340 */ ori $a1, $a1, 0x4340 +/* 404650 E011A430 3C08FCFF */ lui $t0, 0xfcff +/* 404654 E011A434 3508B3FF */ ori $t0, $t0, 0xb3ff +/* 404658 E011A438 3C06FF64 */ lui $a2, 0xff64 +/* 40465C E011A43C 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 404660 E011A440 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 404664 E011A444 8C820000 */ lw $v0, ($a0) +/* 404668 E011A448 34C6FE7F */ ori $a2, $a2, 0xfe7f +/* 40466C E011A44C 0040182D */ daddu $v1, $v0, $zero +/* 404670 E011A450 24420008 */ addiu $v0, $v0, 8 +/* 404674 E011A454 AC820000 */ sw $v0, ($a0) +/* 404678 E011A458 AC670000 */ sw $a3, ($v1) +/* 40467C E011A45C AC650004 */ sw $a1, 4($v1) +/* 404680 E011A460 24430008 */ addiu $v1, $v0, 8 +/* 404684 E011A464 AC830000 */ sw $v1, ($a0) +/* 404688 E011A468 24430010 */ addiu $v1, $v0, 0x10 +/* 40468C E011A46C AC480000 */ sw $t0, ($v0) +/* 404690 E011A470 AC460004 */ sw $a2, 4($v0) +/* 404694 E011A474 AC830000 */ sw $v1, ($a0) +/* 404698 E011A478 3C03FA00 */ lui $v1, 0xfa00 +/* 40469C E011A47C AC430008 */ sw $v1, 8($v0) +/* 4046A0 E011A480 312300FF */ andi $v1, $t1, 0xff +/* 4046A4 E011A484 03E00008 */ jr $ra +/* 4046A8 E011A488 AC43000C */ sw $v1, 0xc($v0) diff --git a/asm/nonmatchings/code_404220/func_E011A48C.s b/asm/nonmatchings/code_404220/func_E011A48C.s new file mode 100644 index 0000000000..a51fce7e32 --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A48C.s @@ -0,0 +1,179 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A48C +/* 4046AC E011A48C 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 4046B0 E011A490 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 4046B4 E011A494 44872000 */ mtc1 $a3, $f4 +/* 4046B8 E011A498 8C670000 */ lw $a3, ($v1) +/* 4046BC E011A49C 24E20008 */ addiu $v0, $a3, 8 +/* 4046C0 E011A4A0 AC620000 */ sw $v0, ($v1) +/* 4046C4 E011A4A4 24820020 */ addiu $v0, $a0, 0x20 +/* 4046C8 E011A4A8 00021480 */ sll $v0, $v0, 0x12 +/* 4046CC E011A4AC 00021403 */ sra $v0, $v0, 0x10 +/* 4046D0 E011A4B0 18400005 */ blez $v0, .LE011A4C8 +/* 4046D4 E011A4B4 30420FFF */ andi $v0, $v0, 0xfff +/* 4046D8 E011A4B8 00021300 */ sll $v0, $v0, 0xc +/* 4046DC E011A4BC 3C03E400 */ lui $v1, 0xe400 +/* 4046E0 E011A4C0 08046933 */ j .LE011A4CC +/* 4046E4 E011A4C4 00431825 */ or $v1, $v0, $v1 +.LE011A4C8: +/* 4046E8 E011A4C8 3C03E400 */ lui $v1, 0xe400 +.LE011A4CC: +/* 4046EC E011A4CC 24A20020 */ addiu $v0, $a1, 0x20 +/* 4046F0 E011A4D0 00021480 */ sll $v0, $v0, 0x12 +/* 4046F4 E011A4D4 00021403 */ sra $v0, $v0, 0x10 +/* 4046F8 E011A4D8 18400004 */ blez $v0, .LE011A4EC +/* 4046FC E011A4DC ACE30000 */ sw $v1, ($a3) +/* 404700 E011A4E0 30420FFF */ andi $v0, $v0, 0xfff +/* 404704 E011A4E4 00621025 */ or $v0, $v1, $v0 +/* 404708 E011A4E8 ACE20000 */ sw $v0, ($a3) +.LE011A4EC: +/* 40470C E011A4EC 30C20007 */ andi $v0, $a2, 7 +/* 404710 E011A4F0 00021E00 */ sll $v1, $v0, 0x18 +/* 404714 E011A4F4 00041480 */ sll $v0, $a0, 0x12 +/* 404718 E011A4F8 00023403 */ sra $a2, $v0, 0x10 +/* 40471C E011A4FC 18C00003 */ blez $a2, .LE011A50C +/* 404720 E011A500 30C20FFF */ andi $v0, $a2, 0xfff +/* 404724 E011A504 00021300 */ sll $v0, $v0, 0xc +/* 404728 E011A508 00621825 */ or $v1, $v1, $v0 +.LE011A50C: +/* 40472C E011A50C 00051480 */ sll $v0, $a1, 0x12 +/* 404730 E011A510 00021403 */ sra $v0, $v0, 0x10 +/* 404734 E011A514 18400004 */ blez $v0, .LE011A528 +/* 404738 E011A518 ACE30004 */ sw $v1, 4($a3) +/* 40473C E011A51C 30420FFF */ andi $v0, $v0, 0xfff +/* 404740 E011A520 00621025 */ or $v0, $v1, $v0 +/* 404744 E011A524 ACE20004 */ sw $v0, 4($a3) +.LE011A528: +/* 404748 E011A528 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 40474C E011A52C 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 404750 E011A530 8C620000 */ lw $v0, ($v1) +/* 404754 E011A534 0040202D */ daddu $a0, $v0, $zero +/* 404758 E011A538 24420008 */ addiu $v0, $v0, 8 +/* 40475C E011A53C AC620000 */ sw $v0, ($v1) +/* 404760 E011A540 3C02E100 */ lui $v0, 0xe100 +/* 404764 E011A544 AC820000 */ sw $v0, ($a0) +/* 404768 E011A548 04C10015 */ bgez $a2, .LE011A5A0 +/* 40476C E011A54C 24840004 */ addiu $a0, $a0, 4 +/* 404770 E011A550 4600218D */ trunc.w.s $f6, $f4 +/* 404774 E011A554 44023000 */ mfc1 $v0, $f6 +/* 404778 E011A558 00000000 */ nop +/* 40477C E011A55C 00021400 */ sll $v0, $v0, 0x10 +/* 404780 E011A560 00021403 */ sra $v0, $v0, 0x10 +/* 404784 E011A564 04410007 */ bgez $v0, .LE011A584 +/* 404788 E011A568 00C20018 */ mult $a2, $v0 +/* 40478C E011A56C 00004012 */ mflo $t0 +/* 404790 E011A570 000811C3 */ sra $v0, $t0, 7 +/* 404794 E011A574 04410008 */ bgez $v0, .LE011A598 +/* 404798 E011A578 00021023 */ negu $v0, $v0 +/* 40479C E011A57C 08046965 */ j .LE011A594 +/* 4047A0 E011A580 0000102D */ daddu $v0, $zero, $zero +.LE011A584: +/* 4047A4 E011A584 00004012 */ mflo $t0 +/* 4047A8 E011A588 000811C3 */ sra $v0, $t0, 7 +/* 4047AC E011A58C 5C400001 */ bgtzl $v0, .LE011A594 +/* 4047B0 E011A590 0000102D */ daddu $v0, $zero, $zero +.LE011A594: +/* 4047B4 E011A594 00021023 */ negu $v0, $v0 +.LE011A598: +/* 4047B8 E011A598 08046969 */ j .LE011A5A4 +/* 4047BC E011A59C 00023400 */ sll $a2, $v0, 0x10 +.LE011A5A0: +/* 4047C0 E011A5A0 0000302D */ daddu $a2, $zero, $zero +.LE011A5A4: +/* 4047C4 E011A5A4 00051080 */ sll $v0, $a1, 2 +/* 4047C8 E011A5A8 0441001E */ bgez $v0, .LE011A624 +/* 4047CC E011A5AC 34C20400 */ ori $v0, $a2, 0x400 +/* 4047D0 E011A5B0 46002007 */ neg.s $f0, $f4 +/* 4047D4 E011A5B4 4600018D */ trunc.w.s $f6, $f0 +/* 4047D8 E011A5B8 44023000 */ mfc1 $v0, $f6 +/* 4047DC E011A5BC 00000000 */ nop +/* 4047E0 E011A5C0 00021400 */ sll $v0, $v0, 0x10 +/* 4047E4 E011A5C4 00021C03 */ sra $v1, $v0, 0x10 +/* 4047E8 E011A5C8 0461000C */ bgez $v1, .LE011A5FC +/* 4047EC E011A5CC 00051480 */ sll $v0, $a1, 0x12 +/* 4047F0 E011A5D0 00021403 */ sra $v0, $v0, 0x10 +/* 4047F4 E011A5D4 00430018 */ mult $v0, $v1 +/* 4047F8 E011A5D8 00004012 */ mflo $t0 +/* 4047FC E011A5DC 000819C3 */ sra $v1, $t0, 7 +/* 404800 E011A5E0 04620001 */ bltzl $v1, .LE011A5E8 +/* 404804 E011A5E4 0000182D */ daddu $v1, $zero, $zero +.LE011A5E8: +/* 404808 E011A5E8 24020400 */ addiu $v0, $zero, 0x400 +/* 40480C E011A5EC 00431023 */ subu $v0, $v0, $v1 +/* 404810 E011A5F0 3042FFFF */ andi $v0, $v0, 0xffff +/* 404814 E011A5F4 08046989 */ j .LE011A624 +/* 404818 E011A5F8 00C21025 */ or $v0, $a2, $v0 +.LE011A5FC: +/* 40481C E011A5FC 00021403 */ sra $v0, $v0, 0x10 +/* 404820 E011A600 00430018 */ mult $v0, $v1 +/* 404824 E011A604 00004012 */ mflo $t0 +/* 404828 E011A608 000819C3 */ sra $v1, $t0, 7 +/* 40482C E011A60C 5C600001 */ bgtzl $v1, .LE011A614 +/* 404830 E011A610 0000182D */ daddu $v1, $zero, $zero +.LE011A614: +/* 404834 E011A614 24020400 */ addiu $v0, $zero, 0x400 +/* 404838 E011A618 00431023 */ subu $v0, $v0, $v1 +/* 40483C E011A61C 3042FFFF */ andi $v0, $v0, 0xffff +/* 404840 E011A620 00C21025 */ or $v0, $a2, $v0 +.LE011A624: +/* 404844 E011A624 AC820000 */ sw $v0, ($a0) +/* 404848 E011A628 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 40484C E011A62C 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 404850 E011A630 8C620000 */ lw $v0, ($v1) +/* 404854 E011A634 3C014F00 */ lui $at, 0x4f00 +/* 404858 E011A638 44810000 */ mtc1 $at, $f0 +/* 40485C E011A63C 0040202D */ daddu $a0, $v0, $zero +/* 404860 E011A640 24420008 */ addiu $v0, $v0, 8 +/* 404864 E011A644 AC620000 */ sw $v0, ($v1) +/* 404868 E011A648 3C02F100 */ lui $v0, 0xf100 +/* 40486C E011A64C AC820000 */ sw $v0, ($a0) +/* 404870 E011A650 4604003E */ c.le.s $f0, $f4 +/* 404874 E011A654 00000000 */ nop +/* 404878 E011A658 45010005 */ bc1t .LE011A670 +/* 40487C E011A65C 24840004 */ addiu $a0, $a0, 4 +/* 404880 E011A660 4600218D */ trunc.w.s $f6, $f4 +/* 404884 E011A664 44033000 */ mfc1 $v1, $f6 +/* 404888 E011A668 080469A2 */ j .LE011A688 +/* 40488C E011A66C 00000000 */ nop +.LE011A670: +/* 404890 E011A670 46002001 */ sub.s $f0, $f4, $f0 +/* 404894 E011A674 3C028000 */ lui $v0, 0x8000 +/* 404898 E011A678 4600018D */ trunc.w.s $f6, $f0 +/* 40489C E011A67C 44033000 */ mfc1 $v1, $f6 +/* 4048A0 E011A680 00000000 */ nop +/* 4048A4 E011A684 00621825 */ or $v1, $v1, $v0 +.LE011A688: +/* 4048A8 E011A688 3C014F00 */ lui $at, 0x4f00 +/* 4048AC E011A68C 44811000 */ mtc1 $at, $f2 +/* 4048B0 E011A690 46002007 */ neg.s $f0, $f4 +/* 4048B4 E011A694 4600103E */ c.le.s $f2, $f0 +/* 4048B8 E011A698 00000000 */ nop +/* 4048BC E011A69C 45010005 */ bc1t .LE011A6B4 +/* 4048C0 E011A6A0 00033400 */ sll $a2, $v1, 0x10 +/* 4048C4 E011A6A4 4600018D */ trunc.w.s $f6, $f0 +/* 4048C8 E011A6A8 44073000 */ mfc1 $a3, $f6 +/* 4048CC E011A6AC 080469B3 */ j .LE011A6CC +/* 4048D0 E011A6B0 00000000 */ nop +.LE011A6B4: +/* 4048D4 E011A6B4 46020001 */ sub.s $f0, $f0, $f2 +/* 4048D8 E011A6B8 3C028000 */ lui $v0, 0x8000 +/* 4048DC E011A6BC 4600018D */ trunc.w.s $f6, $f0 +/* 4048E0 E011A6C0 44073000 */ mfc1 $a3, $f6 +/* 4048E4 E011A6C4 00000000 */ nop +/* 4048E8 E011A6C8 00E23825 */ or $a3, $a3, $v0 +.LE011A6CC: +/* 4048EC E011A6CC 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 4048F0 E011A6D0 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 4048F4 E011A6D4 30E2FFFF */ andi $v0, $a3, 0xffff +/* 4048F8 E011A6D8 8CA30000 */ lw $v1, ($a1) +/* 4048FC E011A6DC 00C21025 */ or $v0, $a2, $v0 +/* 404900 E011A6E0 AC820000 */ sw $v0, ($a0) +/* 404904 E011A6E4 3C02E700 */ lui $v0, 0xe700 +/* 404908 E011A6E8 0060202D */ daddu $a0, $v1, $zero +/* 40490C E011A6EC 24630008 */ addiu $v1, $v1, 8 +/* 404910 E011A6F0 ACA30000 */ sw $v1, ($a1) +/* 404914 E011A6F4 AC820000 */ sw $v0, ($a0) +/* 404918 E011A6F8 03E00008 */ jr $ra +/* 40491C E011A6FC AC800004 */ sw $zero, 4($a0) diff --git a/asm/nonmatchings/code_404220/func_E011A700.s b/asm/nonmatchings/code_404220/func_E011A700.s new file mode 100644 index 0000000000..9c06e3b11f --- /dev/null +++ b/asm/nonmatchings/code_404220/func_E011A700.s @@ -0,0 +1,345 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011A700 +/* 404920 E011A700 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 404924 E011A704 0080302D */ daddu $a2, $a0, $zero +/* 404928 E011A708 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 40492C E011A70C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 404930 E011A710 3C04800B */ lui $a0, %hi(gCameras) +/* 404934 E011A714 24841D80 */ addiu $a0, $a0, %lo(gCameras) +/* 404938 E011A718 AFBF0034 */ sw $ra, 0x34($sp) +/* 40493C E011A71C AFBE0030 */ sw $fp, 0x30($sp) +/* 404940 E011A720 AFB7002C */ sw $s7, 0x2c($sp) +/* 404944 E011A724 AFB60028 */ sw $s6, 0x28($sp) +/* 404948 E011A728 AFB50024 */ sw $s5, 0x24($sp) +/* 40494C E011A72C AFB40020 */ sw $s4, 0x20($sp) +/* 404950 E011A730 AFB3001C */ sw $s3, 0x1c($sp) +/* 404954 E011A734 AFB20018 */ sw $s2, 0x18($sp) +/* 404958 E011A738 AFB10014 */ sw $s1, 0x14($sp) +/* 40495C E011A73C AFB00010 */ sw $s0, 0x10($sp) +/* 404960 E011A740 F7B60040 */ sdc1 $f22, 0x40($sp) +/* 404964 E011A744 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 404968 E011A748 8CDE000C */ lw $fp, 0xc($a2) +/* 40496C E011A74C 00031080 */ sll $v0, $v1, 2 +/* 404970 E011A750 00431021 */ addu $v0, $v0, $v1 +/* 404974 E011A754 00021080 */ sll $v0, $v0, 2 +/* 404978 E011A758 00431023 */ subu $v0, $v0, $v1 +/* 40497C E011A75C 000218C0 */ sll $v1, $v0, 3 +/* 404980 E011A760 00431021 */ addu $v0, $v0, $v1 +/* 404984 E011A764 000210C0 */ sll $v0, $v0, 3 +/* 404988 E011A768 87C30002 */ lh $v1, 2($fp) +/* 40498C E011A76C 1060011B */ beqz $v1, .LE011ABDC +/* 404990 E011A770 0044B821 */ addu $s7, $v0, $a0 +/* 404994 E011A774 3C05DB06 */ lui $a1, 0xdb06 +/* 404998 E011A778 34A50024 */ ori $a1, $a1, 0x24 +/* 40499C E011A77C 0000902D */ daddu $s2, $zero, $zero +/* 4049A0 E011A780 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 4049A4 E011A784 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 4049A8 E011A788 0040982D */ daddu $s3, $v0, $zero +/* 4049AC E011A78C 3C14D700 */ lui $s4, 0xd700 +/* 4049B0 E011A790 36941002 */ ori $s4, $s4, 0x1002 +/* 4049B4 E011A794 2415FFFF */ addiu $s5, $zero, -1 +/* 4049B8 E011A798 2411000C */ addiu $s1, $zero, 0xc +/* 4049BC E011A79C 24100014 */ addiu $s0, $zero, 0x14 +/* 4049C0 E011A7A0 8E640000 */ lw $a0, ($s3) +/* 4049C4 E011A7A4 3C02E700 */ lui $v0, 0xe700 +/* 4049C8 E011A7A8 0080182D */ daddu $v1, $a0, $zero +/* 4049CC E011A7AC 24840008 */ addiu $a0, $a0, 8 +/* 4049D0 E011A7B0 AE640000 */ sw $a0, ($s3) +/* 4049D4 E011A7B4 AC620000 */ sw $v0, ($v1) +/* 4049D8 E011A7B8 AC600004 */ sw $zero, 4($v1) +/* 4049DC E011A7BC AC850000 */ sw $a1, ($a0) +/* 4049E0 E011A7C0 8CC30010 */ lw $v1, 0x10($a2) +/* 4049E4 E011A7C4 24820008 */ addiu $v0, $a0, 8 +/* 4049E8 E011A7C8 AE620000 */ sw $v0, ($s3) +/* 4049EC E011A7CC 8C63001C */ lw $v1, 0x1c($v1) +/* 4049F0 E011A7D0 3C02DE00 */ lui $v0, 0xde00 +/* 4049F4 E011A7D4 AC820008 */ sw $v0, 8($a0) +/* 4049F8 E011A7D8 3C028000 */ lui $v0, 0x8000 +/* 4049FC E011A7DC 00621821 */ addu $v1, $v1, $v0 +/* 404A00 E011A7E0 AC830004 */ sw $v1, 4($a0) +/* 404A04 E011A7E4 3C03E012 */ lui $v1, %hi(D_E011AC20) +/* 404A08 E011A7E8 8C63AC20 */ lw $v1, %lo(D_E011AC20)($v1) +/* 404A0C E011A7EC 24820010 */ addiu $v0, $a0, 0x10 +/* 404A10 E011A7F0 AE620000 */ sw $v0, ($s3) +/* 404A14 E011A7F4 AC83000C */ sw $v1, 0xc($a0) +.LE011A7F8: +/* 404A18 E011A7F8 03D11021 */ addu $v0, $fp, $s1 +/* 404A1C E011A7FC 84440000 */ lh $a0, ($v0) +/* 404A20 E011A800 50800012 */ beql $a0, $zero, .LE011A84C +/* 404A24 E011A804 26520001 */ addiu $s2, $s2, 1 +/* 404A28 E011A808 8E620000 */ lw $v0, ($s3) +/* 404A2C E011A80C 0040182D */ daddu $v1, $v0, $zero +/* 404A30 E011A810 24420008 */ addiu $v0, $v0, 8 +/* 404A34 E011A814 AE620000 */ sw $v0, ($s3) +/* 404A38 E011A818 32420007 */ andi $v0, $s2, 7 +/* 404A3C E011A81C 00021200 */ sll $v0, $v0, 8 +/* 404A40 E011A820 00541025 */ or $v0, $v0, $s4 +/* 404A44 E011A824 AC620000 */ sw $v0, ($v1) +/* 404A48 E011A828 0C0468EF */ jal func_E011A3BC +/* 404A4C E011A82C AC750004 */ sw $s5, 4($v1) +/* 404A50 E011A830 0200202D */ daddu $a0, $s0, $zero +/* 404A54 E011A834 24050032 */ addiu $a1, $zero, 0x32 +/* 404A58 E011A838 0240302D */ daddu $a2, $s2, $zero +/* 404A5C E011A83C 3C074480 */ lui $a3, 0x4480 +/* 404A60 E011A840 0C046923 */ jal func_E011A48C +/* 404A64 E011A844 26100020 */ addiu $s0, $s0, 0x20 +/* 404A68 E011A848 26520001 */ addiu $s2, $s2, 1 +.LE011A84C: +/* 404A6C E011A84C 2A420003 */ slti $v0, $s2, 3 +/* 404A70 E011A850 1440FFE9 */ bnez $v0, .LE011A7F8 +/* 404A74 E011A854 2631000A */ addiu $s1, $s1, 0xa +/* 404A78 E011A858 3C03D700 */ lui $v1, 0xd700 +/* 404A7C E011A85C 34630002 */ ori $v1, $v1, 2 +/* 404A80 E011A860 3C05E300 */ lui $a1, 0xe300 +/* 404A84 E011A864 34A51001 */ ori $a1, $a1, 0x1001 +/* 404A88 E011A868 0000902D */ daddu $s2, $zero, $zero +/* 404A8C E011A86C 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 404A90 E011A870 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 404A94 E011A874 0040A82D */ daddu $s5, $v0, $zero +/* 404A98 E011A878 2416000C */ addiu $s6, $zero, 0xc +/* 404A9C E011A87C 24130014 */ addiu $s3, $zero, 0x14 +/* 404AA0 E011A880 8EA20000 */ lw $v0, ($s5) +/* 404AA4 E011A884 3C013C23 */ lui $at, 0x3c23 +/* 404AA8 E011A888 3421D70A */ ori $at, $at, 0xd70a +/* 404AAC E011A88C 4481B000 */ mtc1 $at, $f22 +/* 404AB0 E011A890 3C014480 */ lui $at, 0x4480 +/* 404AB4 E011A894 4481A000 */ mtc1 $at, $f20 +/* 404AB8 E011A898 0040202D */ daddu $a0, $v0, $zero +/* 404ABC E011A89C 24420008 */ addiu $v0, $v0, 8 +/* 404AC0 E011A8A0 AEA20000 */ sw $v0, ($s5) +/* 404AC4 E011A8A4 AC830000 */ sw $v1, ($a0) +/* 404AC8 E011A8A8 2403FFFF */ addiu $v1, $zero, -1 +/* 404ACC E011A8AC AC830004 */ sw $v1, 4($a0) +/* 404AD0 E011A8B0 24430008 */ addiu $v1, $v0, 8 +/* 404AD4 E011A8B4 AEA30000 */ sw $v1, ($s5) +/* 404AD8 E011A8B8 AC450000 */ sw $a1, ($v0) +/* 404ADC E011A8BC AC400004 */ sw $zero, 4($v0) +.LE011A8C0: +/* 404AE0 E011A8C0 03D68021 */ addu $s0, $fp, $s6 +/* 404AE4 E011A8C4 96110002 */ lhu $s1, 2($s0) +/* 404AE8 E011A8C8 86040000 */ lh $a0, ($s0) +/* 404AEC E011A8CC 96140008 */ lhu $s4, 8($s0) +/* 404AF0 E011A8D0 1080007D */ beqz $a0, .LE011AAC8 +/* 404AF4 E011A8D4 00111400 */ sll $v0, $s1, 0x10 +/* 404AF8 E011A8D8 04420001 */ bltzl $v0, .LE011A8E0 +/* 404AFC E011A8DC 0000882D */ daddu $s1, $zero, $zero +.LE011A8E0: +/* 404B00 E011A8E0 00111400 */ sll $v0, $s1, 0x10 +/* 404B04 E011A8E4 00021403 */ sra $v0, $v0, 0x10 +/* 404B08 E011A8E8 2842000A */ slti $v0, $v0, 0xa +/* 404B0C E011A8EC 50400001 */ beql $v0, $zero, .LE011A8F4 +/* 404B10 E011A8F0 24110009 */ addiu $s1, $zero, 9 +.LE011A8F4: +/* 404B14 E011A8F4 0C0468EF */ jal func_E011A3BC +/* 404B18 E011A8F8 00000000 */ nop +/* 404B1C E011A8FC 86030006 */ lh $v1, 6($s0) +/* 404B20 E011A900 2402000A */ addiu $v0, $zero, 0xa +/* 404B24 E011A904 10620006 */ beq $v1, $v0, .LE011A920 +/* 404B28 E011A908 00111400 */ sll $v0, $s1, 0x10 +/* 404B2C E011A90C 24020014 */ addiu $v0, $zero, 0x14 +/* 404B30 E011A910 14620041 */ bne $v1, $v0, .LE011AA18 +/* 404B34 E011A914 00111400 */ sll $v0, $s1, 0x10 +/* 404B38 E011A918 08046A4B */ j .LE011A92C +/* 404B3C E011A91C 00021403 */ sra $v0, $v0, 0x10 +.LE011A920: +/* 404B40 E011A920 00021403 */ sra $v0, $v0, 0x10 +/* 404B44 E011A924 08046A4C */ j .LE011A930 +/* 404B48 E011A928 2442FFFF */ addiu $v0, $v0, -1 +.LE011A92C: +/* 404B4C E011A92C 24420001 */ addiu $v0, $v0, 1 +.LE011A930: +/* 404B50 E011A930 00021080 */ sll $v0, $v0, 2 +/* 404B54 E011A934 3C08E012 */ lui $t0, %hi(D_E011AC24) +/* 404B58 E011A938 2508AC24 */ addiu $t0, $t0, %lo(D_E011AC24) +/* 404B5C E011A93C 00481021 */ addu $v0, $v0, $t0 +/* 404B60 E011A940 8C440000 */ lw $a0, ($v0) +/* 404B64 E011A944 10800033 */ beqz $a0, .LE011AA14 +/* 404B68 E011A948 3C08DE00 */ lui $t0, 0xde00 +/* 404B6C E011A94C 8EA20000 */ lw $v0, ($s5) +/* 404B70 E011A950 0040182D */ daddu $v1, $v0, $zero +/* 404B74 E011A954 24420008 */ addiu $v0, $v0, 8 +/* 404B78 E011A958 AEA20000 */ sw $v0, ($s5) +/* 404B7C E011A95C 00141400 */ sll $v0, $s4, 0x10 +/* 404B80 E011A960 00021403 */ sra $v0, $v0, 0x10 +/* 404B84 E011A964 AC680000 */ sw $t0, ($v1) +/* 404B88 E011A968 3C08E012 */ lui $t0, %hi(D_E011AC4C) +/* 404B8C E011A96C 2508AC4C */ addiu $t0, $t0, %lo(D_E011AC4C) +/* 404B90 E011A970 00481021 */ addu $v0, $v0, $t0 +/* 404B94 E011A974 AC640004 */ sw $a0, 4($v1) +/* 404B98 E011A978 80420000 */ lb $v0, ($v0) +/* 404B9C E011A97C 44820000 */ mtc1 $v0, $f0 +/* 404BA0 E011A980 00000000 */ nop +/* 404BA4 E011A984 46800020 */ cvt.s.w $f0, $f0 +/* 404BA8 E011A988 46160102 */ mul.s $f4, $f0, $f22 +/* 404BAC E011A98C 00000000 */ nop +/* 404BB0 E011A990 3C013F80 */ lui $at, 0x3f80 +/* 404BB4 E011A994 44810000 */ mtc1 $at, $f0 +/* 404BB8 E011A998 00000000 */ nop +/* 404BBC E011A99C 46002001 */ sub.s $f0, $f4, $f0 +/* 404BC0 E011A9A0 3C014180 */ lui $at, 0x4180 +/* 404BC4 E011A9A4 44811000 */ mtc1 $at, $f2 +/* 404BC8 E011A9A8 46000007 */ neg.s $f0, $f0 +/* 404BCC E011A9AC 46020002 */ mul.s $f0, $f0, $f2 +/* 404BD0 E011A9B0 00000000 */ nop +/* 404BD4 E011A9B4 3C013FE0 */ lui $at, 0x3fe0 +/* 404BD8 E011A9B8 44811800 */ mtc1 $at, $f3 +/* 404BDC E011A9BC 44801000 */ mtc1 $zero, $f2 +/* 404BE0 E011A9C0 46000021 */ cvt.d.s $f0, $f0 +/* 404BE4 E011A9C4 46220000 */ add.d $f0, $f0, $f2 +/* 404BE8 E011A9C8 4604A103 */ div.s $f4, $f20, $f4 +/* 404BEC E011A9CC 44072000 */ mfc1 $a3, $f4 +/* 404BF0 E011A9D0 4620018D */ trunc.w.d $f6, $f0 +/* 404BF4 E011A9D4 44043000 */ mfc1 $a0, $f6 +/* 404BF8 E011A9D8 00000000 */ nop +/* 404BFC E011A9DC 00931021 */ addu $v0, $a0, $s3 +/* 404C00 E011A9E0 44821000 */ mtc1 $v0, $f2 +/* 404C04 E011A9E4 00000000 */ nop +/* 404C08 E011A9E8 468010A0 */ cvt.s.w $f2, $f2 +/* 404C0C E011A9EC 24820032 */ addiu $v0, $a0, 0x32 +/* 404C10 E011A9F0 44820000 */ mtc1 $v0, $f0 +/* 404C14 E011A9F4 00000000 */ nop +/* 404C18 E011A9F8 46800020 */ cvt.s.w $f0, $f0 +/* 404C1C E011A9FC 4600118D */ trunc.w.s $f6, $f2 +/* 404C20 E011AA00 44043000 */ mfc1 $a0, $f6 +/* 404C24 E011AA04 4600018D */ trunc.w.s $f6, $f0 +/* 404C28 E011AA08 44053000 */ mfc1 $a1, $f6 +/* 404C2C E011AA0C 0C046923 */ jal func_E011A48C +/* 404C30 E011AA10 0000302D */ daddu $a2, $zero, $zero +.LE011AA14: +/* 404C34 E011AA14 00111400 */ sll $v0, $s1, 0x10 +.LE011AA18: +/* 404C38 E011AA18 00021383 */ sra $v0, $v0, 0xe +/* 404C3C E011AA1C 3C08E012 */ lui $t0, %hi(D_E011AC24) +/* 404C40 E011AA20 2508AC24 */ addiu $t0, $t0, %lo(D_E011AC24) +/* 404C44 E011AA24 00481021 */ addu $v0, $v0, $t0 +/* 404C48 E011AA28 8C440000 */ lw $a0, ($v0) +/* 404C4C E011AA2C 10800025 */ beqz $a0, .LE011AAC4 +/* 404C50 E011AA30 3C08DE00 */ lui $t0, 0xde00 +/* 404C54 E011AA34 8EA20000 */ lw $v0, ($s5) +/* 404C58 E011AA38 0040182D */ daddu $v1, $v0, $zero +/* 404C5C E011AA3C 24420008 */ addiu $v0, $v0, 8 +/* 404C60 E011AA40 AEA20000 */ sw $v0, ($s5) +/* 404C64 E011AA44 AC680000 */ sw $t0, ($v1) +/* 404C68 E011AA48 AC640004 */ sw $a0, 4($v1) +/* 404C6C E011AA4C 00141C00 */ sll $v1, $s4, 0x10 +/* 404C70 E011AA50 00031C03 */ sra $v1, $v1, 0x10 +/* 404C74 E011AA54 3C02E012 */ lui $v0, %hi(D_E011AC64) +/* 404C78 E011AA58 00431021 */ addu $v0, $v0, $v1 +/* 404C7C E011AA5C 8042AC64 */ lb $v0, %lo(D_E011AC64)($v0) +/* 404C80 E011AA60 3C01E012 */ lui $at, %hi(D_E011AC58) +/* 404C84 E011AA64 00230821 */ addu $at, $at, $v1 +/* 404C88 E011AA68 8023AC58 */ lb $v1, %lo(D_E011AC58)($at) +/* 404C8C E011AA6C 00022023 */ negu $a0, $v0 +/* 404C90 E011AA70 00531021 */ addu $v0, $v0, $s3 +/* 404C94 E011AA74 44830000 */ mtc1 $v1, $f0 +/* 404C98 E011AA78 00000000 */ nop +/* 404C9C E011AA7C 46800020 */ cvt.s.w $f0, $f0 +/* 404CA0 E011AA80 46160102 */ mul.s $f4, $f0, $f22 +/* 404CA4 E011AA84 00000000 */ nop +/* 404CA8 E011AA88 44821000 */ mtc1 $v0, $f2 +/* 404CAC E011AA8C 00000000 */ nop +/* 404CB0 E011AA90 468010A0 */ cvt.s.w $f2, $f2 +/* 404CB4 E011AA94 24820032 */ addiu $v0, $a0, 0x32 +/* 404CB8 E011AA98 44820000 */ mtc1 $v0, $f0 +/* 404CBC E011AA9C 00000000 */ nop +/* 404CC0 E011AAA0 46800020 */ cvt.s.w $f0, $f0 +/* 404CC4 E011AAA4 4600118D */ trunc.w.s $f6, $f2 +/* 404CC8 E011AAA8 44043000 */ mfc1 $a0, $f6 +/* 404CCC E011AAAC 4604A103 */ div.s $f4, $f20, $f4 +/* 404CD0 E011AAB0 44072000 */ mfc1 $a3, $f4 +/* 404CD4 E011AAB4 4600018D */ trunc.w.s $f6, $f0 +/* 404CD8 E011AAB8 44053000 */ mfc1 $a1, $f6 +/* 404CDC E011AABC 0C046923 */ jal func_E011A48C +/* 404CE0 E011AAC0 0000302D */ daddu $a2, $zero, $zero +.LE011AAC4: +/* 404CE4 E011AAC4 26730020 */ addiu $s3, $s3, 0x20 +.LE011AAC8: +/* 404CE8 E011AAC8 26520001 */ addiu $s2, $s2, 1 +/* 404CEC E011AACC 2A420003 */ slti $v0, $s2, 3 +/* 404CF0 E011AAD0 1440FF7B */ bnez $v0, .LE011A8C0 +/* 404CF4 E011AAD4 26D6000A */ addiu $s6, $s6, 0xa +/* 404CF8 E011AAD8 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 404CFC E011AADC 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 404D00 E011AAE0 86E2000E */ lh $v0, 0xe($s7) +/* 404D04 E011AAE4 3C014080 */ lui $at, 0x4080 +/* 404D08 E011AAE8 44812000 */ mtc1 $at, $f4 +/* 404D0C E011AAEC 44821000 */ mtc1 $v0, $f2 +/* 404D10 E011AAF0 00000000 */ nop +/* 404D14 E011AAF4 468010A0 */ cvt.s.w $f2, $f2 +/* 404D18 E011AAF8 46041082 */ mul.s $f2, $f2, $f4 +/* 404D1C E011AAFC 00000000 */ nop +/* 404D20 E011AB00 3C04ED00 */ lui $a0, 0xed00 +/* 404D24 E011AB04 86E20010 */ lh $v0, 0x10($s7) +/* 404D28 E011AB08 8CC50000 */ lw $a1, ($a2) +/* 404D2C E011AB0C 44820000 */ mtc1 $v0, $f0 +/* 404D30 E011AB10 00000000 */ nop +/* 404D34 E011AB14 46800020 */ cvt.s.w $f0, $f0 +/* 404D38 E011AB18 46040002 */ mul.s $f0, $f0, $f4 +/* 404D3C E011AB1C 00000000 */ nop +/* 404D40 E011AB20 00A0382D */ daddu $a3, $a1, $zero +/* 404D44 E011AB24 4600118D */ trunc.w.s $f6, $f2 +/* 404D48 E011AB28 44023000 */ mfc1 $v0, $f6 +/* 404D4C E011AB2C 00000000 */ nop +/* 404D50 E011AB30 30420FFF */ andi $v0, $v0, 0xfff +/* 404D54 E011AB34 00021300 */ sll $v0, $v0, 0xc +/* 404D58 E011AB38 4600018D */ trunc.w.s $f6, $f0 +/* 404D5C E011AB3C 44033000 */ mfc1 $v1, $f6 +/* 404D60 E011AB40 00000000 */ nop +/* 404D64 E011AB44 30630FFF */ andi $v1, $v1, 0xfff +/* 404D68 E011AB48 00641825 */ or $v1, $v1, $a0 +/* 404D6C E011AB4C 00431025 */ or $v0, $v0, $v1 +/* 404D70 E011AB50 ACE20000 */ sw $v0, ($a3) +/* 404D74 E011AB54 86E2000E */ lh $v0, 0xe($s7) +/* 404D78 E011AB58 86E3000A */ lh $v1, 0xa($s7) +/* 404D7C E011AB5C 24A50008 */ addiu $a1, $a1, 8 +/* 404D80 E011AB60 00431021 */ addu $v0, $v0, $v1 +/* 404D84 E011AB64 44821000 */ mtc1 $v0, $f2 +/* 404D88 E011AB68 00000000 */ nop +/* 404D8C E011AB6C 468010A0 */ cvt.s.w $f2, $f2 +/* 404D90 E011AB70 86E20010 */ lh $v0, 0x10($s7) +/* 404D94 E011AB74 86E3000C */ lh $v1, 0xc($s7) +/* 404D98 E011AB78 46041082 */ mul.s $f2, $f2, $f4 +/* 404D9C E011AB7C 00000000 */ nop +/* 404DA0 E011AB80 ACC50000 */ sw $a1, ($a2) +/* 404DA4 E011AB84 00431021 */ addu $v0, $v0, $v1 +/* 404DA8 E011AB88 44820000 */ mtc1 $v0, $f0 +/* 404DAC E011AB8C 00000000 */ nop +/* 404DB0 E011AB90 46800020 */ cvt.s.w $f0, $f0 +/* 404DB4 E011AB94 24A20008 */ addiu $v0, $a1, 8 +/* 404DB8 E011AB98 46040002 */ mul.s $f0, $f0, $f4 +/* 404DBC E011AB9C 00000000 */ nop +/* 404DC0 E011ABA0 ACC20000 */ sw $v0, ($a2) +/* 404DC4 E011ABA4 4600118D */ trunc.w.s $f6, $f2 +/* 404DC8 E011ABA8 44023000 */ mfc1 $v0, $f6 +/* 404DCC E011ABAC 00000000 */ nop +/* 404DD0 E011ABB0 30420FFF */ andi $v0, $v0, 0xfff +/* 404DD4 E011ABB4 00021300 */ sll $v0, $v0, 0xc +/* 404DD8 E011ABB8 4600018D */ trunc.w.s $f6, $f0 +/* 404DDC E011ABBC 44033000 */ mfc1 $v1, $f6 +/* 404DE0 E011ABC0 00000000 */ nop +/* 404DE4 E011ABC4 30630FFF */ andi $v1, $v1, 0xfff +/* 404DE8 E011ABC8 00431025 */ or $v0, $v0, $v1 +/* 404DEC E011ABCC ACE20004 */ sw $v0, 4($a3) +/* 404DF0 E011ABD0 3C02E700 */ lui $v0, 0xe700 +/* 404DF4 E011ABD4 ACA20000 */ sw $v0, ($a1) +/* 404DF8 E011ABD8 ACA00004 */ sw $zero, 4($a1) +.LE011ABDC: +/* 404DFC E011ABDC 8FBF0034 */ lw $ra, 0x34($sp) +/* 404E00 E011ABE0 8FBE0030 */ lw $fp, 0x30($sp) +/* 404E04 E011ABE4 8FB7002C */ lw $s7, 0x2c($sp) +/* 404E08 E011ABE8 8FB60028 */ lw $s6, 0x28($sp) +/* 404E0C E011ABEC 8FB50024 */ lw $s5, 0x24($sp) +/* 404E10 E011ABF0 8FB40020 */ lw $s4, 0x20($sp) +/* 404E14 E011ABF4 8FB3001C */ lw $s3, 0x1c($sp) +/* 404E18 E011ABF8 8FB20018 */ lw $s2, 0x18($sp) +/* 404E1C E011ABFC 8FB10014 */ lw $s1, 0x14($sp) +/* 404E20 E011AC00 8FB00010 */ lw $s0, 0x10($sp) +/* 404E24 E011AC04 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 404E28 E011AC08 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 404E2C E011AC0C 03E00008 */ jr $ra +/* 404E30 E011AC10 27BD0048 */ addiu $sp, $sp, 0x48 +/* 404E34 E011AC14 00000000 */ nop +/* 404E38 E011AC18 00000000 */ nop +/* 404E3C E011AC1C 00000000 */ nop diff --git a/asm/nonmatchings/code_409990/func_E011E000.s b/asm/nonmatchings/code_409990/func_E011E000.s new file mode 100644 index 0000000000..87d85e5978 --- /dev/null +++ b/asm/nonmatchings/code_409990/func_E011E000.s @@ -0,0 +1,107 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011E000 +/* 409990 E011E000 27BDFF88 */ addiu $sp, $sp, -0x78 +/* 409994 E011E004 F7B60060 */ sdc1 $f22, 0x60($sp) +/* 409998 E011E008 4485B000 */ mtc1 $a1, $f22 +/* 40999C E011E00C F7BA0070 */ sdc1 $f26, 0x70($sp) +/* 4099A0 E011E010 4486D000 */ mtc1 $a2, $f26 +/* 4099A4 E011E014 F7B80068 */ sdc1 $f24, 0x68($sp) +/* 4099A8 E011E018 4487C000 */ mtc1 $a3, $f24 +/* 4099AC E011E01C AFB3004C */ sw $s3, 0x4c($sp) +/* 4099B0 E011E020 0080982D */ daddu $s3, $a0, $zero +/* 4099B4 E011E024 F7B40058 */ sdc1 $f20, 0x58($sp) +/* 4099B8 E011E028 C7B40088 */ lwc1 $f20, 0x88($sp) +/* 4099BC E011E02C 27A40028 */ addiu $a0, $sp, 0x28 +/* 4099C0 E011E030 AFB20048 */ sw $s2, 0x48($sp) +/* 4099C4 E011E034 8FB2008C */ lw $s2, 0x8c($sp) +/* 4099C8 E011E038 3C02E012 */ lui $v0, %hi(D_E011E18C) +/* 4099CC E011E03C 2442E18C */ addiu $v0, $v0, %lo(D_E011E18C) +/* 4099D0 E011E040 AFA20030 */ sw $v0, 0x30($sp) +/* 4099D4 E011E044 3C02E012 */ lui $v0, %hi(D_E011E194) +/* 4099D8 E011E048 2442E194 */ addiu $v0, $v0, %lo(D_E011E194) +/* 4099DC E011E04C AFA20034 */ sw $v0, 0x34($sp) +/* 4099E0 E011E050 3C02E012 */ lui $v0, %hi(D_E011E530) +/* 4099E4 E011E054 2442E530 */ addiu $v0, $v0, %lo(D_E011E530) +/* 4099E8 E011E058 AFA20038 */ sw $v0, 0x38($sp) +/* 4099EC E011E05C 24020081 */ addiu $v0, $zero, 0x81 +/* 4099F0 E011E060 AFBF0050 */ sw $ra, 0x50($sp) +/* 4099F4 E011E064 AFB10044 */ sw $s1, 0x44($sp) +/* 4099F8 E011E068 AFB00040 */ sw $s0, 0x40($sp) +/* 4099FC E011E06C AFA00028 */ sw $zero, 0x28($sp) +/* 409A00 E011E070 AFA0003C */ sw $zero, 0x3c($sp) +/* 409A04 E011E074 0C080124 */ jal func_E0200490 +/* 409A08 E011E078 AFA2002C */ sw $v0, 0x2c($sp) +/* 409A0C E011E07C 2404002C */ addiu $a0, $zero, 0x2c +/* 409A10 E011E080 24030001 */ addiu $v1, $zero, 1 +/* 409A14 E011E084 0040882D */ daddu $s1, $v0, $zero +/* 409A18 E011E088 0C08012C */ jal func_E02004B0 +/* 409A1C E011E08C AE230008 */ sw $v1, 8($s1) +/* 409A20 E011E090 0040802D */ daddu $s0, $v0, $zero +/* 409A24 E011E094 16000003 */ bnez $s0, .LE011E0A4 +/* 409A28 E011E098 AE22000C */ sw $v0, 0xc($s1) +.LE011E09C: +/* 409A2C E011E09C 08047827 */ j .LE011E09C +/* 409A30 E011E0A0 00000000 */ nop +.LE011E0A4: +/* 409A34 E011E0A4 AE130000 */ sw $s3, ($s0) +/* 409A38 E011E0A8 1E400004 */ bgtz $s2, .LE011E0BC +/* 409A3C E011E0AC AE000014 */ sw $zero, 0x14($s0) +/* 409A40 E011E0B0 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 409A44 E011E0B4 08047830 */ j .LE011E0C0 +/* 409A48 E011E0B8 AE020010 */ sw $v0, 0x10($s0) +.LE011E0BC: +/* 409A4C E011E0BC AE120010 */ sw $s2, 0x10($s0) +.LE011E0C0: +/* 409A50 E011E0C0 24040072 */ addiu $a0, $zero, 0x72 +/* 409A54 E011E0C4 240300FF */ addiu $v1, $zero, 0xff +/* 409A58 E011E0C8 240200F0 */ addiu $v0, $zero, 0xf0 +/* 409A5C E011E0CC A203001B */ sb $v1, 0x1b($s0) +/* 409A60 E011E0D0 E6160004 */ swc1 $f22, 4($s0) +/* 409A64 E011E0D4 E61A0008 */ swc1 $f26, 8($s0) +/* 409A68 E011E0D8 E618000C */ swc1 $f24, 0xc($s0) +/* 409A6C E011E0DC E6140020 */ swc1 $f20, 0x20($s0) +/* 409A70 E011E0E0 A2030018 */ sb $v1, 0x18($s0) +/* 409A74 E011E0E4 A2030019 */ sb $v1, 0x19($s0) +/* 409A78 E011E0E8 A203001A */ sb $v1, 0x1a($s0) +/* 409A7C E011E0EC A202001C */ sb $v0, 0x1c($s0) +/* 409A80 E011E0F0 A203001D */ sb $v1, 0x1d($s0) +/* 409A84 E011E0F4 A203001E */ sb $v1, 0x1e($s0) +/* 409A88 E011E0F8 A203001F */ sb $v1, 0x1f($s0) +/* 409A8C E011E0FC A2000025 */ sb $zero, 0x25($s0) +/* 409A90 E011E100 0C080150 */ jal func_E0200540 +/* 409A94 E011E104 A2000024 */ sb $zero, 0x24($s0) +/* 409A98 E011E108 24040001 */ addiu $a0, $zero, 1 +/* 409A9C E011E10C 3C014120 */ lui $at, 0x4120 +/* 409AA0 E011E110 44810000 */ mtc1 $at, $f0 +/* 409AA4 E011E114 3C014200 */ lui $at, 0x4200 +/* 409AA8 E011E118 44811000 */ mtc1 $at, $f2 +/* 409AAC E011E11C 3C0141F0 */ lui $at, 0x41f0 +/* 409AB0 E011E120 44812000 */ mtc1 $at, $f4 +/* 409AB4 E011E124 4600D680 */ add.s $f26, $f26, $f0 +/* 409AB8 E011E128 4405B000 */ mfc1 $a1, $f22 +/* 409ABC E011E12C 4407C000 */ mfc1 $a3, $f24 +/* 409AC0 E011E130 4406D000 */ mfc1 $a2, $f26 +/* 409AC4 E011E134 24020004 */ addiu $v0, $zero, 4 +/* 409AC8 E011E138 E7B40018 */ swc1 $f20, 0x18($sp) +/* 409ACC E011E13C AFA2001C */ sw $v0, 0x1c($sp) +/* 409AD0 E011E140 AFA00020 */ sw $zero, 0x20($sp) +/* 409AD4 E011E144 E7A20010 */ swc1 $f2, 0x10($sp) +/* 409AD8 E011E148 0C039000 */ jal func_E00E4000 +/* 409ADC E011E14C E7A40014 */ swc1 $f4, 0x14($sp) +/* 409AE0 E011E150 2404006F */ addiu $a0, $zero, 0x6f +/* 409AE4 E011E154 0C080150 */ jal func_E0200540 +/* 409AE8 E011E158 AE020028 */ sw $v0, 0x28($s0) +/* 409AEC E011E15C 0220102D */ daddu $v0, $s1, $zero +/* 409AF0 E011E160 8FBF0050 */ lw $ra, 0x50($sp) +/* 409AF4 E011E164 8FB3004C */ lw $s3, 0x4c($sp) +/* 409AF8 E011E168 8FB20048 */ lw $s2, 0x48($sp) +/* 409AFC E011E16C 8FB10044 */ lw $s1, 0x44($sp) +/* 409B00 E011E170 8FB00040 */ lw $s0, 0x40($sp) +/* 409B04 E011E174 D7BA0070 */ ldc1 $f26, 0x70($sp) +/* 409B08 E011E178 D7B80068 */ ldc1 $f24, 0x68($sp) +/* 409B0C E011E17C D7B60060 */ ldc1 $f22, 0x60($sp) +/* 409B10 E011E180 D7B40058 */ ldc1 $f20, 0x58($sp) +/* 409B14 E011E184 03E00008 */ jr $ra +/* 409B18 E011E188 27BD0078 */ addiu $sp, $sp, 0x78 diff --git a/asm/nonmatchings/code_409990/func_E011E18C.s b/asm/nonmatchings/code_409990/func_E011E18C.s new file mode 100644 index 0000000000..c46bb71533 --- /dev/null +++ b/asm/nonmatchings/code_409990/func_E011E18C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011E18C +/* 409B1C E011E18C 03E00008 */ jr $ra +/* 409B20 E011E190 00000000 */ nop diff --git a/asm/nonmatchings/code_409990/func_E011E194.s b/asm/nonmatchings/code_409990/func_E011E194.s new file mode 100644 index 0000000000..a790af0485 --- /dev/null +++ b/asm/nonmatchings/code_409990/func_E011E194.s @@ -0,0 +1,244 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011E194 +/* 409B24 E011E194 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 409B28 E011E198 AFB30024 */ sw $s3, 0x24($sp) +/* 409B2C E011E19C 0080982D */ daddu $s3, $a0, $zero +/* 409B30 E011E1A0 AFBF0028 */ sw $ra, 0x28($sp) +/* 409B34 E011E1A4 AFB20020 */ sw $s2, 0x20($sp) +/* 409B38 E011E1A8 AFB1001C */ sw $s1, 0x1c($sp) +/* 409B3C E011E1AC AFB00018 */ sw $s0, 0x18($sp) +/* 409B40 E011E1B0 F7B80040 */ sdc1 $f24, 0x40($sp) +/* 409B44 E011E1B4 F7B60038 */ sdc1 $f22, 0x38($sp) +/* 409B48 E011E1B8 F7B40030 */ sdc1 $f20, 0x30($sp) +/* 409B4C E011E1BC 8E630000 */ lw $v1, ($s3) +/* 409B50 E011E1C0 8E71000C */ lw $s1, 0xc($s3) +/* 409B54 E011E1C4 30620010 */ andi $v0, $v1, 0x10 +/* 409B58 E011E1C8 10400005 */ beqz $v0, .LE011E1E0 +/* 409B5C E011E1CC 2402FFEF */ addiu $v0, $zero, -0x11 +/* 409B60 E011E1D0 00621024 */ and $v0, $v1, $v0 +/* 409B64 E011E1D4 AE620000 */ sw $v0, ($s3) +/* 409B68 E011E1D8 24020010 */ addiu $v0, $zero, 0x10 +/* 409B6C E011E1DC AE220010 */ sw $v0, 0x10($s1) +.LE011E1E0: +/* 409B70 E011E1E0 8E230010 */ lw $v1, 0x10($s1) +/* 409B74 E011E1E4 286203E8 */ slti $v0, $v1, 0x3e8 +/* 409B78 E011E1E8 10400002 */ beqz $v0, .LE011E1F4 +/* 409B7C E011E1EC 2462FFFF */ addiu $v0, $v1, -1 +/* 409B80 E011E1F0 AE220010 */ sw $v0, 0x10($s1) +.LE011E1F4: +/* 409B84 E011E1F4 8E220014 */ lw $v0, 0x14($s1) +/* 409B88 E011E1F8 8E240010 */ lw $a0, 0x10($s1) +/* 409B8C E011E1FC 24430001 */ addiu $v1, $v0, 1 +/* 409B90 E011E200 04810085 */ bgez $a0, .LE011E418 +/* 409B94 E011E204 AE230014 */ sw $v1, 0x14($s1) +/* 409B98 E011E208 0C080150 */ jal func_E0200540 +/* 409B9C E011E20C 2404007A */ addiu $a0, $zero, 0x7a +/* 409BA0 E011E210 0000902D */ daddu $s2, $zero, $zero +/* 409BA4 E011E214 3C01E012 */ lui $at, %hi(D_E011E810) +/* 409BA8 E011E218 D438E810 */ ldc1 $f24, %lo(D_E011E810)($at) +.LE011E21C: +/* 409BAC E011E21C 0C080138 */ jal func_E02004E0 +/* 409BB0 E011E220 24040014 */ addiu $a0, $zero, 0x14 +/* 409BB4 E011E224 C6340004 */ lwc1 $f20, 4($s1) +/* 409BB8 E011E228 44820000 */ mtc1 $v0, $f0 +/* 409BBC E011E22C 00000000 */ nop +/* 409BC0 E011E230 46800020 */ cvt.s.w $f0, $f0 +/* 409BC4 E011E234 4600A500 */ add.s $f20, $f20, $f0 +/* 409BC8 E011E238 3C014120 */ lui $at, 0x4120 +/* 409BCC E011E23C 44810000 */ mtc1 $at, $f0 +/* 409BD0 E011E240 24040028 */ addiu $a0, $zero, 0x28 +/* 409BD4 E011E244 0C080138 */ jal func_E02004E0 +/* 409BD8 E011E248 4600A501 */ sub.s $f20, $f20, $f0 +/* 409BDC E011E24C C6220020 */ lwc1 $f2, 0x20($s1) +/* 409BE0 E011E250 44820000 */ mtc1 $v0, $f0 +/* 409BE4 E011E254 00000000 */ nop +/* 409BE8 E011E258 46800020 */ cvt.s.w $f0, $f0 +/* 409BEC E011E25C 46020002 */ mul.s $f0, $f0, $f2 +/* 409BF0 E011E260 00000000 */ nop +/* 409BF4 E011E264 C6360008 */ lwc1 $f22, 8($s1) +/* 409BF8 E011E268 2404000A */ addiu $a0, $zero, 0xa +/* 409BFC E011E26C 0C080138 */ jal func_E02004E0 +/* 409C00 E011E270 4600B580 */ add.s $f22, $f22, $f0 +/* 409C04 E011E274 3C01E012 */ lui $at, %hi(D_E011E818) +/* 409C08 E011E278 D422E818 */ ldc1 $f2, %lo(D_E011E818)($at) +/* 409C0C E011E27C 44820000 */ mtc1 $v0, $f0 +/* 409C10 E011E280 00000000 */ nop +/* 409C14 E011E284 46800021 */ cvt.d.w $f0, $f0 +/* 409C18 E011E288 46220002 */ mul.d $f0, $f0, $f2 +/* 409C1C E011E28C 00000000 */ nop +/* 409C20 E011E290 46380002 */ mul.d $f0, $f0, $f24 +/* 409C24 E011E294 00000000 */ nop +/* 409C28 E011E298 001227C2 */ srl $a0, $s2, 0x1f +/* 409C2C E011E29C 02442021 */ addu $a0, $s2, $a0 +/* 409C30 E011E2A0 3C01E012 */ lui $at, %hi(D_E011E820) +/* 409C34 E011E2A4 D422E820 */ ldc1 $f2, %lo(D_E011E820)($at) +/* 409C38 E011E2A8 C6240020 */ lwc1 $f4, 0x20($s1) +/* 409C3C E011E2AC 46220000 */ add.d $f0, $f0, $f2 +/* 409C40 E011E2B0 00042043 */ sra $a0, $a0, 1 +/* 409C44 E011E2B4 46002121 */ cvt.d.s $f4, $f4 +/* 409C48 E011E2B8 46202102 */ mul.d $f4, $f4, $f0 +/* 409C4C E011E2BC 00000000 */ nop +/* 409C50 E011E2C0 00042040 */ sll $a0, $a0, 1 +/* 409C54 E011E2C4 02442023 */ subu $a0, $s2, $a0 +/* 409C58 E011E2C8 24840002 */ addiu $a0, $a0, 2 +/* 409C5C E011E2CC 4405A000 */ mfc1 $a1, $f20 +/* 409C60 E011E2D0 C622000C */ lwc1 $f2, 0xc($s1) +/* 409C64 E011E2D4 3C014040 */ lui $at, 0x4040 +/* 409C68 E011E2D8 44810000 */ mtc1 $at, $f0 +/* 409C6C E011E2DC 4406B000 */ mfc1 $a2, $f22 +/* 409C70 E011E2E0 46001080 */ add.s $f2, $f2, $f0 +/* 409C74 E011E2E4 2642001E */ addiu $v0, $s2, 0x1e +/* 409C78 E011E2E8 AFA20014 */ sw $v0, 0x14($sp) +/* 409C7C E011E2EC 44071000 */ mfc1 $a3, $f2 +/* 409C80 E011E2F0 46202120 */ cvt.s.d $f4, $f4 +/* 409C84 E011E2F4 0C044000 */ jal func_E0110000 +/* 409C88 E011E2F8 E7A40010 */ swc1 $f4, 0x10($sp) +/* 409C8C E011E2FC 2404000A */ addiu $a0, $zero, 0xa +/* 409C90 E011E300 0C080138 */ jal func_E02004E0 +/* 409C94 E011E304 0040802D */ daddu $s0, $v0, $zero +/* 409C98 E011E308 44820000 */ mtc1 $v0, $f0 +/* 409C9C E011E30C 00000000 */ nop +/* 409CA0 E011E310 46800021 */ cvt.d.w $f0, $f0 +/* 409CA4 E011E314 46380002 */ mul.d $f0, $f0, $f24 +/* 409CA8 E011E318 00000000 */ nop +/* 409CAC E011E31C 2404001E */ addiu $a0, $zero, 0x1e +/* 409CB0 E011E320 8E02000C */ lw $v0, 0xc($s0) +/* 409CB4 E011E324 46200020 */ cvt.s.d $f0, $f0 +/* 409CB8 E011E328 0C080138 */ jal func_E02004E0 +/* 409CBC E011E32C E4400044 */ swc1 $f0, 0x44($v0) +/* 409CC0 E011E330 3C01E012 */ lui $at, %hi(D_E011E828) +/* 409CC4 E011E334 D422E828 */ ldc1 $f2, %lo(D_E011E828)($at) +/* 409CC8 E011E338 44820000 */ mtc1 $v0, $f0 +/* 409CCC E011E33C 00000000 */ nop +/* 409CD0 E011E340 46800021 */ cvt.d.w $f0, $f0 +/* 409CD4 E011E344 46220002 */ mul.d $f0, $f0, $f2 +/* 409CD8 E011E348 00000000 */ nop +/* 409CDC E011E34C 46380000 */ add.d $f0, $f0, $f24 +/* 409CE0 E011E350 24040167 */ addiu $a0, $zero, 0x167 +/* 409CE4 E011E354 8E02000C */ lw $v0, 0xc($s0) +/* 409CE8 E011E358 46200020 */ cvt.s.d $f0, $f0 +/* 409CEC E011E35C 0C080138 */ jal func_E02004E0 +/* 409CF0 E011E360 E4400048 */ swc1 $f0, 0x48($v0) +/* 409CF4 E011E364 24040014 */ addiu $a0, $zero, 0x14 +/* 409CF8 E011E368 8E03000C */ lw $v1, 0xc($s0) +/* 409CFC E011E36C 44820000 */ mtc1 $v0, $f0 +/* 409D00 E011E370 00000000 */ nop +/* 409D04 E011E374 46800020 */ cvt.s.w $f0, $f0 +/* 409D08 E011E378 0C080138 */ jal func_E02004E0 +/* 409D0C E011E37C E460003C */ swc1 $f0, 0x3c($v1) +/* 409D10 E011E380 2404000A */ addiu $a0, $zero, 0xa +/* 409D14 E011E384 8E03000C */ lw $v1, 0xc($s0) +/* 409D18 E011E388 44820000 */ mtc1 $v0, $f0 +/* 409D1C E011E38C 00000000 */ nop +/* 409D20 E011E390 46800020 */ cvt.s.w $f0, $f0 +/* 409D24 E011E394 0C080138 */ jal func_E02004E0 +/* 409D28 E011E398 E4600040 */ swc1 $f0, 0x40($v1) +/* 409D2C E011E39C 2404000A */ addiu $a0, $zero, 0xa +/* 409D30 E011E3A0 2442FFFB */ addiu $v0, $v0, -5 +/* 409D34 E011E3A4 8E03000C */ lw $v1, 0xc($s0) +/* 409D38 E011E3A8 44820000 */ mtc1 $v0, $f0 +/* 409D3C E011E3AC 00000000 */ nop +/* 409D40 E011E3B0 46800020 */ cvt.s.w $f0, $f0 +/* 409D44 E011E3B4 0C080138 */ jal func_E02004E0 +/* 409D48 E011E3B8 E460004C */ swc1 $f0, 0x4c($v1) +/* 409D4C E011E3BC 2442FFFB */ addiu $v0, $v0, -5 +/* 409D50 E011E3C0 8E03000C */ lw $v1, 0xc($s0) +/* 409D54 E011E3C4 44820000 */ mtc1 $v0, $f0 +/* 409D58 E011E3C8 00000000 */ nop +/* 409D5C E011E3CC 46800020 */ cvt.s.w $f0, $f0 +/* 409D60 E011E3D0 E4600050 */ swc1 $f0, 0x50($v1) +/* 409D64 E011E3D4 8E02000C */ lw $v0, 0xc($s0) +/* 409D68 E011E3D8 3C01BDCC */ lui $at, 0xbdcc +/* 409D6C E011E3DC 3421CCCD */ ori $at, $at, 0xcccd +/* 409D70 E011E3E0 44810000 */ mtc1 $at, $f0 +/* 409D74 E011E3E4 AC400054 */ sw $zero, 0x54($v0) +/* 409D78 E011E3E8 8E02000C */ lw $v0, 0xc($s0) +/* 409D7C E011E3EC 26520001 */ addiu $s2, $s2, 1 +/* 409D80 E011E3F0 E4400058 */ swc1 $f0, 0x58($v0) +/* 409D84 E011E3F4 2A420014 */ slti $v0, $s2, 0x14 +/* 409D88 E011E3F8 1440FF88 */ bnez $v0, .LE011E21C +/* 409D8C E011E3FC 00000000 */ nop +/* 409D90 E011E400 0C080128 */ jal func_E02004A0 +/* 409D94 E011E404 8E240028 */ lw $a0, 0x28($s1) +/* 409D98 E011E408 0C080128 */ jal func_E02004A0 +/* 409D9C E011E40C 0260202D */ daddu $a0, $s3, $zero +/* 409DA0 E011E410 08047942 */ j .LE011E508 +/* 409DA4 E011E414 00000000 */ nop +.LE011E418: +/* 409DA8 E011E418 0080802D */ daddu $s0, $a0, $zero +/* 409DAC E011E41C 92220025 */ lbu $v0, 0x25($s1) +/* 409DB0 E011E420 2442FFFF */ addiu $v0, $v0, -1 +/* 409DB4 E011E424 A2220025 */ sb $v0, 0x25($s1) +/* 409DB8 E011E428 00021600 */ sll $v0, $v0, 0x18 +/* 409DBC E011E42C 04410005 */ bgez $v0, .LE011E444 +/* 409DC0 E011E430 0060902D */ daddu $s2, $v1, $zero +/* 409DC4 E011E434 0C080138 */ jal func_E02004E0 +/* 409DC8 E011E438 2404003C */ addiu $a0, $zero, 0x3c +/* 409DCC E011E43C 24420008 */ addiu $v0, $v0, 8 +/* 409DD0 E011E440 A2220025 */ sb $v0, 0x25($s1) +.LE011E444: +/* 409DD4 E011E444 92220025 */ lbu $v0, 0x25($s1) +/* 409DD8 E011E448 00022600 */ sll $a0, $v0, 0x18 +/* 409DDC E011E44C 00041E03 */ sra $v1, $a0, 0x18 +/* 409DE0 E011E450 28620008 */ slti $v0, $v1, 8 +/* 409DE4 E011E454 10400005 */ beqz $v0, .LE011E46C +/* 409DE8 E011E458 000417C2 */ srl $v0, $a0, 0x1f +/* 409DEC E011E45C 00621021 */ addu $v0, $v1, $v0 +/* 409DF0 E011E460 00021043 */ sra $v0, $v0, 1 +/* 409DF4 E011E464 0804791C */ j .LE011E470 +/* 409DF8 E011E468 A2220024 */ sb $v0, 0x24($s1) +.LE011E46C: +/* 409DFC E011E46C A2200024 */ sb $zero, 0x24($s1) +.LE011E470: +/* 409E00 E011E470 2A020011 */ slti $v0, $s0, 0x11 +/* 409E04 E011E474 14400015 */ bnez $v0, .LE011E4CC +/* 409E08 E011E478 3242000F */ andi $v0, $s2, 0xf +/* 409E0C E011E47C 14400013 */ bnez $v0, .LE011E4CC +/* 409E10 E011E480 00000000 */ nop +/* 409E14 E011E484 0C080150 */ jal func_E0200540 +/* 409E18 E011E488 2404006F */ addiu $a0, $zero, 0x6f +/* 409E1C E011E48C C6220020 */ lwc1 $f2, 0x20($s1) +/* 409E20 E011E490 3C014220 */ lui $at, 0x4220 +/* 409E24 E011E494 44810000 */ mtc1 $at, $f0 +/* 409E28 E011E498 00000000 */ nop +/* 409E2C E011E49C 46001002 */ mul.s $f0, $f2, $f0 +/* 409E30 E011E4A0 00000000 */ nop +/* 409E34 E011E4A4 C6240008 */ lwc1 $f4, 8($s1) +/* 409E38 E011E4A8 2402001E */ addiu $v0, $zero, 0x1e +/* 409E3C E011E4AC AFA20014 */ sw $v0, 0x14($sp) +/* 409E40 E011E4B0 E7A20010 */ swc1 $f2, 0x10($sp) +/* 409E44 E011E4B4 46002100 */ add.s $f4, $f4, $f0 +/* 409E48 E011E4B8 8E250004 */ lw $a1, 4($s1) +/* 409E4C E011E4BC 8E27000C */ lw $a3, 0xc($s1) +/* 409E50 E011E4C0 44062000 */ mfc1 $a2, $f4 +/* 409E54 E011E4C4 0C037800 */ jal func_E00DE000 +/* 409E58 E011E4C8 24040002 */ addiu $a0, $zero, 2 +.LE011E4CC: +/* 409E5C E011E4CC 8E220028 */ lw $v0, 0x28($s1) +/* 409E60 E011E4D0 C6200004 */ lwc1 $f0, 4($s1) +/* 409E64 E011E4D4 3C014120 */ lui $at, 0x4120 +/* 409E68 E011E4D8 44811000 */ mtc1 $at, $f2 +/* 409E6C E011E4DC 8C42000C */ lw $v0, 0xc($v0) +/* 409E70 E011E4E0 E4400004 */ swc1 $f0, 4($v0) +/* 409E74 E011E4E4 C6200008 */ lwc1 $f0, 8($s1) +/* 409E78 E011E4E8 8E220028 */ lw $v0, 0x28($s1) +/* 409E7C E011E4EC 46020000 */ add.s $f0, $f0, $f2 +/* 409E80 E011E4F0 8C42000C */ lw $v0, 0xc($v0) +/* 409E84 E011E4F4 E4400008 */ swc1 $f0, 8($v0) +/* 409E88 E011E4F8 8E220028 */ lw $v0, 0x28($s1) +/* 409E8C E011E4FC C620000C */ lwc1 $f0, 0xc($s1) +/* 409E90 E011E500 8C42000C */ lw $v0, 0xc($v0) +/* 409E94 E011E504 E440000C */ swc1 $f0, 0xc($v0) +.LE011E508: +/* 409E98 E011E508 8FBF0028 */ lw $ra, 0x28($sp) +/* 409E9C E011E50C 8FB30024 */ lw $s3, 0x24($sp) +/* 409EA0 E011E510 8FB20020 */ lw $s2, 0x20($sp) +/* 409EA4 E011E514 8FB1001C */ lw $s1, 0x1c($sp) +/* 409EA8 E011E518 8FB00018 */ lw $s0, 0x18($sp) +/* 409EAC E011E51C D7B80040 */ ldc1 $f24, 0x40($sp) +/* 409EB0 E011E520 D7B60038 */ ldc1 $f22, 0x38($sp) +/* 409EB4 E011E524 D7B40030 */ ldc1 $f20, 0x30($sp) +/* 409EB8 E011E528 03E00008 */ jr $ra +/* 409EBC E011E52C 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_409990/func_E011E530.s b/asm/nonmatchings/code_409990/func_E011E530.s new file mode 100644 index 0000000000..452627c198 --- /dev/null +++ b/asm/nonmatchings/code_409990/func_E011E530.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011E530 +/* 409EC0 E011E530 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 409EC4 E011E534 3C02E012 */ lui $v0, %hi(D_E011E578) +/* 409EC8 E011E538 2442E578 */ addiu $v0, $v0, %lo(D_E011E578) +/* 409ECC E011E53C AFA2001C */ sw $v0, 0x1c($sp) +/* 409ED0 E011E540 24020005 */ addiu $v0, $zero, 5 +/* 409ED4 E011E544 AFA20014 */ sw $v0, 0x14($sp) +/* 409ED8 E011E548 2402002D */ addiu $v0, $zero, 0x2d +/* 409EDC E011E54C AFA40018 */ sw $a0, 0x18($sp) +/* 409EE0 E011E550 27A40010 */ addiu $a0, $sp, 0x10 +/* 409EE4 E011E554 AFBF0020 */ sw $ra, 0x20($sp) +/* 409EE8 E011E558 0C080120 */ jal func_E0200480 +/* 409EEC E011E55C AFA20010 */ sw $v0, 0x10($sp) +/* 409EF0 E011E560 8C430000 */ lw $v1, ($v0) +/* 409EF4 E011E564 34630002 */ ori $v1, $v1, 2 +/* 409EF8 E011E568 AC430000 */ sw $v1, ($v0) +/* 409EFC E011E56C 8FBF0020 */ lw $ra, 0x20($sp) +/* 409F00 E011E570 03E00008 */ jr $ra +/* 409F04 E011E574 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_409990/func_E011E578.s b/asm/nonmatchings/code_409990/func_E011E578.s new file mode 100644 index 0000000000..519d56887a --- /dev/null +++ b/asm/nonmatchings/code_409990/func_E011E578.s @@ -0,0 +1,162 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E011E578 +/* 409F08 E011E578 27BDFF50 */ addiu $sp, $sp, -0xb0 +/* 409F0C E011E57C 0080302D */ daddu $a2, $a0, $zero +/* 409F10 E011E580 3C07DB06 */ lui $a3, 0xdb06 +/* 409F14 E011E584 34E70024 */ ori $a3, $a3, 0x24 +/* 409F18 E011E588 27A40010 */ addiu $a0, $sp, 0x10 +/* 409F1C E011E58C AFB500A4 */ sw $s5, 0xa4($sp) +/* 409F20 E011E590 3C150001 */ lui $s5, 1 +/* 409F24 E011E594 36B51630 */ ori $s5, $s5, 0x1630 +/* 409F28 E011E598 AFB3009C */ sw $s3, 0x9c($sp) +/* 409F2C E011E59C 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 409F30 E011E5A0 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 409F34 E011E5A4 3C02E700 */ lui $v0, 0xe700 +/* 409F38 E011E5A8 AFBF00AC */ sw $ra, 0xac($sp) +/* 409F3C E011E5AC AFB600A8 */ sw $s6, 0xa8($sp) +/* 409F40 E011E5B0 AFB400A0 */ sw $s4, 0xa0($sp) +/* 409F44 E011E5B4 AFB20098 */ sw $s2, 0x98($sp) +/* 409F48 E011E5B8 AFB10094 */ sw $s1, 0x94($sp) +/* 409F4C E011E5BC AFB00090 */ sw $s0, 0x90($sp) +/* 409F50 E011E5C0 8E650000 */ lw $a1, ($s3) +/* 409F54 E011E5C4 8CD2000C */ lw $s2, 0xc($a2) +/* 409F58 E011E5C8 00A0182D */ daddu $v1, $a1, $zero +/* 409F5C E011E5CC 9256001B */ lbu $s6, 0x1b($s2) +/* 409F60 E011E5D0 24A50008 */ addiu $a1, $a1, 8 +/* 409F64 E011E5D4 AE650000 */ sw $a1, ($s3) +/* 409F68 E011E5D8 AC620000 */ sw $v0, ($v1) +/* 409F6C E011E5DC AC600004 */ sw $zero, 4($v1) +/* 409F70 E011E5E0 ACA70000 */ sw $a3, ($a1) +/* 409F74 E011E5E4 8CC30010 */ lw $v1, 0x10($a2) +/* 409F78 E011E5E8 24A20008 */ addiu $v0, $a1, 8 +/* 409F7C E011E5EC AE620000 */ sw $v0, ($s3) +/* 409F80 E011E5F0 8C62001C */ lw $v0, 0x1c($v1) +/* 409F84 E011E5F4 3C038000 */ lui $v1, 0x8000 +/* 409F88 E011E5F8 00431021 */ addu $v0, $v0, $v1 +/* 409F8C E011E5FC 3C03800B */ lui $v1, %hi(gCameras) +/* 409F90 E011E600 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 409F94 E011E604 ACA20004 */ sw $v0, 4($a1) +/* 409F98 E011E608 8E450004 */ lw $a1, 4($s2) +/* 409F9C E011E60C 8E460008 */ lw $a2, 8($s2) +/* 409FA0 E011E610 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 409FA4 E011E614 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 409FA8 E011E618 8E47000C */ lw $a3, 0xc($s2) +/* 409FAC E011E61C 00028080 */ sll $s0, $v0, 2 +/* 409FB0 E011E620 02028021 */ addu $s0, $s0, $v0 +/* 409FB4 E011E624 00108080 */ sll $s0, $s0, 2 +/* 409FB8 E011E628 02028023 */ subu $s0, $s0, $v0 +/* 409FBC E011E62C 001010C0 */ sll $v0, $s0, 3 +/* 409FC0 E011E630 02028021 */ addu $s0, $s0, $v0 +/* 409FC4 E011E634 001080C0 */ sll $s0, $s0, 3 +/* 409FC8 E011E638 0C080108 */ jal func_E0200420 +/* 409FCC E011E63C 02038021 */ addu $s0, $s0, $v1 +/* 409FD0 E011E640 27B10050 */ addiu $s1, $sp, 0x50 +/* 409FD4 E011E644 8E450020 */ lw $a1, 0x20($s2) +/* 409FD8 E011E648 0220202D */ daddu $a0, $s1, $zero +/* 409FDC E011E64C 00A0302D */ daddu $a2, $a1, $zero +/* 409FE0 E011E650 0C080110 */ jal func_E0200440 +/* 409FE4 E011E654 00A0382D */ daddu $a3, $a1, $zero +/* 409FE8 E011E658 0220202D */ daddu $a0, $s1, $zero +/* 409FEC E011E65C 27A50010 */ addiu $a1, $sp, 0x10 +/* 409FF0 E011E660 0C080114 */ jal func_E0200450 +/* 409FF4 E011E664 00A0302D */ daddu $a2, $a1, $zero +/* 409FF8 E011E668 27A40010 */ addiu $a0, $sp, 0x10 +/* 409FFC E011E66C 3C118007 */ lui $s1, %hi(D_800741F0) +/* 40A000 E011E670 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 40A004 E011E674 3C14800A */ lui $s4, %hi(D_8009A674) +/* 40A008 E011E678 2694A674 */ addiu $s4, $s4, %lo(D_8009A674) +/* 40A00C E011E67C 96250000 */ lhu $a1, ($s1) +/* 40A010 E011E680 8E820000 */ lw $v0, ($s4) +/* 40A014 E011E684 00052980 */ sll $a1, $a1, 6 +/* 40A018 E011E688 00B52821 */ addu $a1, $a1, $s5 +/* 40A01C E011E68C 0C080118 */ jal func_E0200460 +/* 40A020 E011E690 00452821 */ addu $a1, $v0, $a1 +/* 40A024 E011E694 3C03DA38 */ lui $v1, 0xda38 +/* 40A028 E011E698 34630002 */ ori $v1, $v1, 2 +/* 40A02C E011E69C 3C06DA38 */ lui $a2, 0xda38 +/* 40A030 E011E6A0 34C60001 */ ori $a2, $a2, 1 +/* 40A034 E011E6A4 3C07DE00 */ lui $a3, 0xde00 +/* 40A038 E011E6A8 8E640000 */ lw $a0, ($s3) +/* 40A03C E011E6AC 96220000 */ lhu $v0, ($s1) +/* 40A040 E011E6B0 0080282D */ daddu $a1, $a0, $zero +/* 40A044 E011E6B4 24840008 */ addiu $a0, $a0, 8 +/* 40A048 E011E6B8 AE640000 */ sw $a0, ($s3) +/* 40A04C E011E6BC ACA30000 */ sw $v1, ($a1) +/* 40A050 E011E6C0 24430001 */ addiu $v1, $v0, 1 +/* 40A054 E011E6C4 3042FFFF */ andi $v0, $v0, 0xffff +/* 40A058 E011E6C8 00021180 */ sll $v0, $v0, 6 +/* 40A05C E011E6CC A6230000 */ sh $v1, ($s1) +/* 40A060 E011E6D0 8E830000 */ lw $v1, ($s4) +/* 40A064 E011E6D4 00551021 */ addu $v0, $v0, $s5 +/* 40A068 E011E6D8 00621821 */ addu $v1, $v1, $v0 +/* 40A06C E011E6DC 24820008 */ addiu $v0, $a0, 8 +/* 40A070 E011E6E0 ACA30004 */ sw $v1, 4($a1) +/* 40A074 E011E6E4 AE620000 */ sw $v0, ($s3) +/* 40A078 E011E6E8 24820010 */ addiu $v0, $a0, 0x10 +/* 40A07C E011E6EC AC860000 */ sw $a2, ($a0) +/* 40A080 E011E6F0 AE620000 */ sw $v0, ($s3) +/* 40A084 E011E6F4 8E030204 */ lw $v1, 0x204($s0) +/* 40A088 E011E6F8 3C02FA00 */ lui $v0, 0xfa00 +/* 40A08C E011E6FC AC820008 */ sw $v0, 8($a0) +/* 40A090 E011E700 AC830004 */ sw $v1, 4($a0) +/* 40A094 E011E704 92420018 */ lbu $v0, 0x18($s2) +/* 40A098 E011E708 92450019 */ lbu $a1, 0x19($s2) +/* 40A09C E011E70C 9246001A */ lbu $a2, 0x1a($s2) +/* 40A0A0 E011E710 24830018 */ addiu $v1, $a0, 0x18 +/* 40A0A4 E011E714 AE630000 */ sw $v1, ($s3) +/* 40A0A8 E011E718 3C03FB00 */ lui $v1, 0xfb00 +/* 40A0AC E011E71C AC830010 */ sw $v1, 0x10($a0) +/* 40A0B0 E011E720 00021600 */ sll $v0, $v0, 0x18 +/* 40A0B4 E011E724 00052C00 */ sll $a1, $a1, 0x10 +/* 40A0B8 E011E728 00451025 */ or $v0, $v0, $a1 +/* 40A0BC E011E72C 00063200 */ sll $a2, $a2, 8 +/* 40A0C0 E011E730 00461025 */ or $v0, $v0, $a2 +/* 40A0C4 E011E734 00561025 */ or $v0, $v0, $s6 +/* 40A0C8 E011E738 AC82000C */ sw $v0, 0xc($a0) +/* 40A0CC E011E73C 9242001C */ lbu $v0, 0x1c($s2) +/* 40A0D0 E011E740 9245001D */ lbu $a1, 0x1d($s2) +/* 40A0D4 E011E744 9246001E */ lbu $a2, 0x1e($s2) +/* 40A0D8 E011E748 9248001F */ lbu $t0, 0x1f($s2) +/* 40A0DC E011E74C 24830020 */ addiu $v1, $a0, 0x20 +/* 40A0E0 E011E750 AE630000 */ sw $v1, ($s3) +/* 40A0E4 E011E754 AC870018 */ sw $a3, 0x18($a0) +/* 40A0E8 E011E758 00021600 */ sll $v0, $v0, 0x18 +/* 40A0EC E011E75C 00052C00 */ sll $a1, $a1, 0x10 +/* 40A0F0 E011E760 00451025 */ or $v0, $v0, $a1 +/* 40A0F4 E011E764 00063200 */ sll $a2, $a2, 8 +/* 40A0F8 E011E768 00461025 */ or $v0, $v0, $a2 +/* 40A0FC E011E76C 00481025 */ or $v0, $v0, $t0 +/* 40A100 E011E770 AC820014 */ sw $v0, 0x14($a0) +/* 40A104 E011E774 3C03E012 */ lui $v1, %hi(D_E011E800) +/* 40A108 E011E778 8C63E800 */ lw $v1, %lo(D_E011E800)($v1) +/* 40A10C E011E77C 24820028 */ addiu $v0, $a0, 0x28 +/* 40A110 E011E780 AE620000 */ sw $v0, ($s3) +/* 40A114 E011E784 AC870020 */ sw $a3, 0x20($a0) +/* 40A118 E011E788 AC83001C */ sw $v1, 0x1c($a0) +/* 40A11C E011E78C 82420024 */ lb $v0, 0x24($s2) +/* 40A120 E011E790 3C03D838 */ lui $v1, 0xd838 +/* 40A124 E011E794 00021080 */ sll $v0, $v0, 2 +/* 40A128 E011E798 3C01E012 */ lui $at, %hi(D_E011E7F0) +/* 40A12C E011E79C 00220821 */ addu $at, $at, $v0 +/* 40A130 E011E7A0 8C22E7F0 */ lw $v0, %lo(D_E011E7F0)($at) +/* 40A134 E011E7A4 34630002 */ ori $v1, $v1, 2 +/* 40A138 E011E7A8 AC820024 */ sw $v0, 0x24($a0) +/* 40A13C E011E7AC 24820030 */ addiu $v0, $a0, 0x30 +/* 40A140 E011E7B0 AE620000 */ sw $v0, ($s3) +/* 40A144 E011E7B4 24020040 */ addiu $v0, $zero, 0x40 +/* 40A148 E011E7B8 AC830028 */ sw $v1, 0x28($a0) +/* 40A14C E011E7BC AC82002C */ sw $v0, 0x2c($a0) +/* 40A150 E011E7C0 8FBF00AC */ lw $ra, 0xac($sp) +/* 40A154 E011E7C4 8FB600A8 */ lw $s6, 0xa8($sp) +/* 40A158 E011E7C8 8FB500A4 */ lw $s5, 0xa4($sp) +/* 40A15C E011E7CC 8FB400A0 */ lw $s4, 0xa0($sp) +/* 40A160 E011E7D0 8FB3009C */ lw $s3, 0x9c($sp) +/* 40A164 E011E7D4 8FB20098 */ lw $s2, 0x98($sp) +/* 40A168 E011E7D8 8FB10094 */ lw $s1, 0x94($sp) +/* 40A16C E011E7DC 8FB00090 */ lw $s0, 0x90($sp) +/* 40A170 E011E7E0 03E00008 */ jr $ra +/* 40A174 E011E7E4 27BD00B0 */ addiu $sp, $sp, 0xb0 +/* 40A178 E011E7E8 00000000 */ nop +/* 40A17C E011E7EC 00000000 */ nop diff --git a/asm/nonmatchings/code_40B3F0/func_E0120000.s b/asm/nonmatchings/code_40B3F0/func_E0120000.s new file mode 100644 index 0000000000..df8ee3edaf --- /dev/null +++ b/asm/nonmatchings/code_40B3F0/func_E0120000.s @@ -0,0 +1,86 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0120000 +/* 40B3F0 E0120000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 40B3F4 E0120004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 40B3F8 E0120008 4485A000 */ mtc1 $a1, $f20 +/* 40B3FC E012000C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 40B400 E0120010 4486B000 */ mtc1 $a2, $f22 +/* 40B404 E0120014 AFB20030 */ sw $s2, 0x30($sp) +/* 40B408 E0120018 0080902D */ daddu $s2, $a0, $zero +/* 40B40C E012001C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 40B410 E0120020 4487C000 */ mtc1 $a3, $f24 +/* 40B414 E0120024 27A40010 */ addiu $a0, $sp, 0x10 +/* 40B418 E0120028 AFB1002C */ sw $s1, 0x2c($sp) +/* 40B41C E012002C 8FB10064 */ lw $s1, 0x64($sp) +/* 40B420 E0120030 3C02E012 */ lui $v0, %hi(D_E0120134) +/* 40B424 E0120034 24420134 */ addiu $v0, $v0, %lo(D_E0120134) +/* 40B428 E0120038 AFA20018 */ sw $v0, 0x18($sp) +/* 40B42C E012003C 3C02E012 */ lui $v0, %hi(D_E012013C) +/* 40B430 E0120040 2442013C */ addiu $v0, $v0, %lo(D_E012013C) +/* 40B434 E0120044 AFA2001C */ sw $v0, 0x1c($sp) +/* 40B438 E0120048 3C02E012 */ lui $v0, %hi(D_E012039C) +/* 40B43C E012004C 2442039C */ addiu $v0, $v0, %lo(D_E012039C) +/* 40B440 E0120050 AFA20020 */ sw $v0, 0x20($sp) +/* 40B444 E0120054 24020082 */ addiu $v0, $zero, 0x82 +/* 40B448 E0120058 AFBF0034 */ sw $ra, 0x34($sp) +/* 40B44C E012005C AFB00028 */ sw $s0, 0x28($sp) +/* 40B450 E0120060 AFA00010 */ sw $zero, 0x10($sp) +/* 40B454 E0120064 AFA00024 */ sw $zero, 0x24($sp) +/* 40B458 E0120068 0C080124 */ jal func_E0200490 +/* 40B45C E012006C AFA20014 */ sw $v0, 0x14($sp) +/* 40B460 E0120070 24040040 */ addiu $a0, $zero, 0x40 +/* 40B464 E0120074 24030001 */ addiu $v1, $zero, 1 +/* 40B468 E0120078 0040802D */ daddu $s0, $v0, $zero +/* 40B46C E012007C 0C08012C */ jal func_E02004B0 +/* 40B470 E0120080 AE030008 */ sw $v1, 8($s0) +/* 40B474 E0120084 0040202D */ daddu $a0, $v0, $zero +/* 40B478 E0120088 14800003 */ bnez $a0, .LE0120098 +/* 40B47C E012008C AE02000C */ sw $v0, 0xc($s0) +.LE0120090: +/* 40B480 E0120090 08048024 */ j .LE0120090 +/* 40B484 E0120094 00000000 */ nop +.LE0120098: +/* 40B488 E0120098 AC920000 */ sw $s2, ($a0) +/* 40B48C E012009C 1E200004 */ bgtz $s1, .LE01200B0 +/* 40B490 E01200A0 AC800014 */ sw $zero, 0x14($a0) +/* 40B494 E01200A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 40B498 E01200A8 0804802D */ j .LE01200B4 +/* 40B49C E01200AC AC820010 */ sw $v0, 0x10($a0) +.LE01200B0: +/* 40B4A0 E01200B0 AC910010 */ sw $s1, 0x10($a0) +.LE01200B4: +/* 40B4A4 E01200B4 24050004 */ addiu $a1, $zero, 4 +/* 40B4A8 E01200B8 24830010 */ addiu $v1, $a0, 0x10 +/* 40B4AC E01200BC E4940004 */ swc1 $f20, 4($a0) +/* 40B4B0 E01200C0 E4960008 */ swc1 $f22, 8($a0) +/* 40B4B4 E01200C4 E498000C */ swc1 $f24, 0xc($a0) +/* 40B4B8 E01200C8 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 40B4BC E01200CC 240200FF */ addiu $v0, $zero, 0xff +/* 40B4C0 E01200D0 A0820018 */ sb $v0, 0x18($a0) +/* 40B4C4 E01200D4 A0820019 */ sb $v0, 0x19($a0) +/* 40B4C8 E01200D8 A082001A */ sb $v0, 0x1a($a0) +/* 40B4CC E01200DC A082001B */ sb $v0, 0x1b($a0) +/* 40B4D0 E01200E0 A082001C */ sb $v0, 0x1c($a0) +/* 40B4D4 E01200E4 A082001D */ sb $v0, 0x1d($a0) +/* 40B4D8 E01200E8 A082001E */ sb $v0, 0x1e($a0) +/* 40B4DC E01200EC E4800034 */ swc1 $f0, 0x34($a0) +.LE01200F0: +/* 40B4E0 E01200F0 AC600020 */ sw $zero, 0x20($v1) +/* 40B4E4 E01200F4 24A5FFFF */ addiu $a1, $a1, -1 +/* 40B4E8 E01200F8 04A1FFFD */ bgez $a1, .LE01200F0 +/* 40B4EC E01200FC 2463FFFC */ addiu $v1, $v1, -4 +/* 40B4F0 E0120100 0200102D */ daddu $v0, $s0, $zero +/* 40B4F4 E0120104 240300FF */ addiu $v1, $zero, 0xff +/* 40B4F8 E0120108 AC83003C */ sw $v1, 0x3c($a0) +/* 40B4FC E012010C AC800038 */ sw $zero, 0x38($a0) +/* 40B500 E0120110 8FBF0034 */ lw $ra, 0x34($sp) +/* 40B504 E0120114 8FB20030 */ lw $s2, 0x30($sp) +/* 40B508 E0120118 8FB1002C */ lw $s1, 0x2c($sp) +/* 40B50C E012011C 8FB00028 */ lw $s0, 0x28($sp) +/* 40B510 E0120120 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 40B514 E0120124 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 40B518 E0120128 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 40B51C E012012C 03E00008 */ jr $ra +/* 40B520 E0120130 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_40B3F0/func_E0120134.s b/asm/nonmatchings/code_40B3F0/func_E0120134.s new file mode 100644 index 0000000000..211e85acd5 --- /dev/null +++ b/asm/nonmatchings/code_40B3F0/func_E0120134.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0120134 +/* 40B524 E0120134 03E00008 */ jr $ra +/* 40B528 E0120138 00000000 */ nop diff --git a/asm/nonmatchings/code_40B3F0/func_E012013C.s b/asm/nonmatchings/code_40B3F0/func_E012013C.s new file mode 100644 index 0000000000..807fff5daf --- /dev/null +++ b/asm/nonmatchings/code_40B3F0/func_E012013C.s @@ -0,0 +1,170 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E012013C +/* 40B52C E012013C 27BDFFB8 */ addiu $sp, $sp, -0x48 +/* 40B530 E0120140 AFBF0020 */ sw $ra, 0x20($sp) +/* 40B534 E0120144 AFB3001C */ sw $s3, 0x1c($sp) +/* 40B538 E0120148 AFB20018 */ sw $s2, 0x18($sp) +/* 40B53C E012014C AFB10014 */ sw $s1, 0x14($sp) +/* 40B540 E0120150 AFB00010 */ sw $s0, 0x10($sp) +/* 40B544 E0120154 F7BA0040 */ sdc1 $f26, 0x40($sp) +/* 40B548 E0120158 F7B80038 */ sdc1 $f24, 0x38($sp) +/* 40B54C E012015C F7B60030 */ sdc1 $f22, 0x30($sp) +/* 40B550 E0120160 F7B40028 */ sdc1 $f20, 0x28($sp) +/* 40B554 E0120164 8C830000 */ lw $v1, ($a0) +/* 40B558 E0120168 8C85000C */ lw $a1, 0xc($a0) +/* 40B55C E012016C 30620010 */ andi $v0, $v1, 0x10 +/* 40B560 E0120170 10400005 */ beqz $v0, .LE0120188 +/* 40B564 E0120174 2402FFEF */ addiu $v0, $zero, -0x11 +/* 40B568 E0120178 00621024 */ and $v0, $v1, $v0 +/* 40B56C E012017C AC820000 */ sw $v0, ($a0) +/* 40B570 E0120180 24020010 */ addiu $v0, $zero, 0x10 +/* 40B574 E0120184 ACA20010 */ sw $v0, 0x10($a1) +.LE0120188: +/* 40B578 E0120188 8CA30010 */ lw $v1, 0x10($a1) +/* 40B57C E012018C 286203E8 */ slti $v0, $v1, 0x3e8 +/* 40B580 E0120190 10400002 */ beqz $v0, .LE012019C +/* 40B584 E0120194 2462FFFF */ addiu $v0, $v1, -1 +/* 40B588 E0120198 ACA20010 */ sw $v0, 0x10($a1) +.LE012019C: +/* 40B58C E012019C 3C030004 */ lui $v1, 4 +/* 40B590 E01201A0 8CA20014 */ lw $v0, 0x14($a1) +/* 40B594 E01201A4 3463F1A0 */ ori $v1, $v1, 0xf1a0 +/* 40B598 E01201A8 24420001 */ addiu $v0, $v0, 1 +/* 40B59C E01201AC 0062182A */ slt $v1, $v1, $v0 +/* 40B5A0 E01201B0 10600003 */ beqz $v1, .LE01201C0 +/* 40B5A4 E01201B4 ACA20014 */ sw $v0, 0x14($a1) +/* 40B5A8 E01201B8 24020100 */ addiu $v0, $zero, 0x100 +/* 40B5AC E01201BC ACA20014 */ sw $v0, 0x14($a1) +.LE01201C0: +/* 40B5B0 E01201C0 8CA20010 */ lw $v0, 0x10($a1) +/* 40B5B4 E01201C4 04410005 */ bgez $v0, .LE01201DC +/* 40B5B8 E01201C8 28420010 */ slti $v0, $v0, 0x10 +/* 40B5BC E01201CC 0C080128 */ jal func_E02004A0 +/* 40B5C0 E01201D0 00000000 */ nop +/* 40B5C4 E01201D4 080480DC */ j .LE0120370 +/* 40B5C8 E01201D8 00000000 */ nop +.LE01201DC: +/* 40B5CC E01201DC 10400006 */ beqz $v0, .LE01201F8 +/* 40B5D0 E01201E0 8CB30014 */ lw $s3, 0x14($a1) +/* 40B5D4 E01201E4 8CA20038 */ lw $v0, 0x38($a1) +/* 40B5D8 E01201E8 2442FFF0 */ addiu $v0, $v0, -0x10 +/* 40B5DC E01201EC 04410002 */ bgez $v0, .LE01201F8 +/* 40B5E0 E01201F0 ACA20038 */ sw $v0, 0x38($a1) +/* 40B5E4 E01201F4 ACA00038 */ sw $zero, 0x38($a1) +.LE01201F8: +/* 40B5E8 E01201F8 8CA2003C */ lw $v0, 0x3c($a1) +/* 40B5EC E01201FC 04410003 */ bgez $v0, .LE012020C +/* 40B5F0 E0120200 28420100 */ slti $v0, $v0, 0x100 +/* 40B5F4 E0120204 08048086 */ j .LE0120218 +/* 40B5F8 E0120208 ACA0003C */ sw $zero, 0x3c($a1) +.LE012020C: +/* 40B5FC E012020C 14400002 */ bnez $v0, .LE0120218 +/* 40B600 E0120210 240200FF */ addiu $v0, $zero, 0xff +/* 40B604 E0120214 ACA2003C */ sw $v0, 0x3c($a1) +.LE0120218: +/* 40B608 E0120218 8CA30038 */ lw $v1, 0x38($a1) +/* 40B60C E012021C 8CA4003C */ lw $a0, 0x3c($a1) +/* 40B610 E0120220 0083102A */ slt $v0, $a0, $v1 +/* 40B614 E0120224 10400004 */ beqz $v0, .LE0120238 +/* 40B618 E0120228 2462FFF8 */ addiu $v0, $v1, -8 +/* 40B61C E012022C ACA20038 */ sw $v0, 0x38($a1) +/* 40B620 E0120230 08048094 */ j .LE0120250 +/* 40B624 E0120234 0044102A */ slt $v0, $v0, $a0 +.LE0120238: +/* 40B628 E0120238 0064102A */ slt $v0, $v1, $a0 +/* 40B62C E012023C 10400006 */ beqz $v0, .LE0120258 +/* 40B630 E0120240 24620008 */ addiu $v0, $v1, 8 +/* 40B634 E0120244 8CA4003C */ lw $a0, 0x3c($a1) +/* 40B638 E0120248 ACA20038 */ sw $v0, 0x38($a1) +/* 40B63C E012024C 0082102A */ slt $v0, $a0, $v0 +.LE0120250: +/* 40B640 E0120250 54400001 */ bnel $v0, $zero, .LE0120258 +/* 40B644 E0120254 ACA40038 */ sw $a0, 0x38($a1) +.LE0120258: +/* 40B648 E0120258 0000882D */ daddu $s1, $zero, $zero +/* 40B64C E012025C 00A0802D */ daddu $s0, $a1, $zero +/* 40B650 E0120260 00139040 */ sll $s2, $s3, 1 +/* 40B654 E0120264 3C013FD0 */ lui $at, 0x3fd0 +/* 40B658 E0120268 4481D800 */ mtc1 $at, $f27 +/* 40B65C E012026C 4480D000 */ mtc1 $zero, $f26 +/* 40B660 E0120270 3C01E012 */ lui $at, %hi(D_E01207A0) +/* 40B664 E0120274 D43807A0 */ ldc1 $f24, %lo(D_E01207A0)($at) +/* 40B668 E0120278 3C014380 */ lui $at, 0x4380 +/* 40B66C E012027C 4481B000 */ mtc1 $at, $f22 +.LE0120280: +/* 40B670 E0120280 44926000 */ mtc1 $s2, $f12 +/* 40B674 E0120284 00000000 */ nop +/* 40B678 E0120288 0C080140 */ jal func_E0200500 +/* 40B67C E012028C 46806320 */ cvt.s.w $f12, $f12 +/* 40B680 E0120290 44936000 */ mtc1 $s3, $f12 +/* 40B684 E0120294 00000000 */ nop +/* 40B688 E0120298 46806320 */ cvt.s.w $f12, $f12 +/* 40B68C E012029C 46006321 */ cvt.d.s $f12, $f12 +/* 40B690 E01202A0 463A6302 */ mul.d $f12, $f12, $f26 +/* 40B694 E01202A4 00000000 */ nop +/* 40B698 E01202A8 02310018 */ mult $s1, $s1 +/* 40B69C E01202AC 00001812 */ mflo $v1 +/* 40B6A0 E01202B0 00031080 */ sll $v0, $v1, 2 +/* 40B6A4 E01202B4 00431021 */ addu $v0, $v0, $v1 +/* 40B6A8 E01202B8 00021080 */ sll $v0, $v0, 2 +/* 40B6AC E01202BC 44821000 */ mtc1 $v0, $f2 +/* 40B6B0 E01202C0 00000000 */ nop +/* 40B6B4 E01202C4 468010A1 */ cvt.d.w $f2, $f2 +/* 40B6B8 E01202C8 46226300 */ add.d $f12, $f12, $f2 +/* 40B6BC E01202CC 46000506 */ mov.s $f20, $f0 +/* 40B6C0 E01202D0 0C080140 */ jal func_E0200500 +/* 40B6C4 E01202D4 46206320 */ cvt.s.d $f12, $f12 +/* 40B6C8 E01202D8 4600A521 */ cvt.d.s $f20, $f20 +/* 40B6CC E01202DC 4638A502 */ mul.d $f20, $f20, $f24 +/* 40B6D0 E01202E0 00000000 */ nop +/* 40B6D4 E01202E4 3C01E012 */ lui $at, %hi(D_E01207A8) +/* 40B6D8 E01202E8 D42207A8 */ ldc1 $f2, %lo(D_E01207A8)($at) +/* 40B6DC E01202EC 4622A500 */ add.d $f20, $f20, $f2 +/* 40B6E0 E01202F0 3C014010 */ lui $at, 0x4010 +/* 40B6E4 E01202F4 44811800 */ mtc1 $at, $f3 +/* 40B6E8 E01202F8 44801000 */ mtc1 $zero, $f2 +/* 40B6EC E01202FC 00000000 */ nop +/* 40B6F0 E0120300 4622A502 */ mul.d $f20, $f20, $f2 +/* 40B6F4 E0120304 00000000 */ nop +/* 40B6F8 E0120308 46000021 */ cvt.d.s $f0, $f0 +/* 40B6FC E012030C 4620A502 */ mul.d $f20, $f20, $f0 +/* 40B700 E0120310 00000000 */ nop +/* 40B704 E0120314 C6000020 */ lwc1 $f0, 0x20($s0) +/* 40B708 E0120318 46000021 */ cvt.d.s $f0, $f0 +/* 40B70C E012031C 46340001 */ sub.d $f0, $f0, $f20 +/* 40B710 E0120320 44801000 */ mtc1 $zero, $f2 +/* 40B714 E0120324 46200020 */ cvt.s.d $f0, $f0 +/* 40B718 E0120328 4602003C */ c.lt.s $f0, $f2 +/* 40B71C E012032C 00000000 */ nop +/* 40B720 E0120330 45000003 */ bc1f .LE0120340 +/* 40B724 E0120334 E6000020 */ swc1 $f0, 0x20($s0) +/* 40B728 E0120338 46160000 */ add.s $f0, $f0, $f22 +/* 40B72C E012033C E6000020 */ swc1 $f0, 0x20($s0) +.LE0120340: +/* 40B730 E0120340 C6000020 */ lwc1 $f0, 0x20($s0) +/* 40B734 E0120344 4600B03C */ c.lt.s $f22, $f0 +/* 40B738 E0120348 00000000 */ nop +/* 40B73C E012034C 45020004 */ bc1fl .LE0120360 +/* 40B740 E0120350 26100004 */ addiu $s0, $s0, 4 +/* 40B744 E0120354 46160001 */ sub.s $f0, $f0, $f22 +/* 40B748 E0120358 E6000020 */ swc1 $f0, 0x20($s0) +/* 40B74C E012035C 26100004 */ addiu $s0, $s0, 4 +.LE0120360: +/* 40B750 E0120360 26310001 */ addiu $s1, $s1, 1 +/* 40B754 E0120364 2A220005 */ slti $v0, $s1, 5 +/* 40B758 E0120368 1440FFC5 */ bnez $v0, .LE0120280 +/* 40B75C E012036C 26520014 */ addiu $s2, $s2, 0x14 +.LE0120370: +/* 40B760 E0120370 8FBF0020 */ lw $ra, 0x20($sp) +/* 40B764 E0120374 8FB3001C */ lw $s3, 0x1c($sp) +/* 40B768 E0120378 8FB20018 */ lw $s2, 0x18($sp) +/* 40B76C E012037C 8FB10014 */ lw $s1, 0x14($sp) +/* 40B770 E0120380 8FB00010 */ lw $s0, 0x10($sp) +/* 40B774 E0120384 D7BA0040 */ ldc1 $f26, 0x40($sp) +/* 40B778 E0120388 D7B80038 */ ldc1 $f24, 0x38($sp) +/* 40B77C E012038C D7B60030 */ ldc1 $f22, 0x30($sp) +/* 40B780 E0120390 D7B40028 */ ldc1 $f20, 0x28($sp) +/* 40B784 E0120394 03E00008 */ jr $ra +/* 40B788 E0120398 27BD0048 */ addiu $sp, $sp, 0x48 diff --git a/asm/nonmatchings/code_40B3F0/func_E012039C.s b/asm/nonmatchings/code_40B3F0/func_E012039C.s new file mode 100644 index 0000000000..57c7267867 --- /dev/null +++ b/asm/nonmatchings/code_40B3F0/func_E012039C.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E012039C +/* 40B78C E012039C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 40B790 E01203A0 3C02E012 */ lui $v0, %hi(D_E01203E4) +/* 40B794 E01203A4 244203E4 */ addiu $v0, $v0, %lo(D_E01203E4) +/* 40B798 E01203A8 AFA2001C */ sw $v0, 0x1c($sp) +/* 40B79C E01203AC 2402000A */ addiu $v0, $zero, 0xa +/* 40B7A0 E01203B0 AFA20014 */ sw $v0, 0x14($sp) +/* 40B7A4 E01203B4 2402002D */ addiu $v0, $zero, 0x2d +/* 40B7A8 E01203B8 AFA40018 */ sw $a0, 0x18($sp) +/* 40B7AC E01203BC 27A40010 */ addiu $a0, $sp, 0x10 +/* 40B7B0 E01203C0 AFBF0020 */ sw $ra, 0x20($sp) +/* 40B7B4 E01203C4 0C080120 */ jal func_E0200480 +/* 40B7B8 E01203C8 AFA20010 */ sw $v0, 0x10($sp) +/* 40B7BC E01203CC 8C430000 */ lw $v1, ($v0) +/* 40B7C0 E01203D0 34630002 */ ori $v1, $v1, 2 +/* 40B7C4 E01203D4 AC430000 */ sw $v1, ($v0) +/* 40B7C8 E01203D8 8FBF0020 */ lw $ra, 0x20($sp) +/* 40B7CC E01203DC 03E00008 */ jr $ra +/* 40B7D0 E01203E0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_40B3F0/func_E01203E4.s b/asm/nonmatchings/code_40B3F0/func_E01203E4.s new file mode 100644 index 0000000000..0c8d33d0d6 --- /dev/null +++ b/asm/nonmatchings/code_40B3F0/func_E01203E4.s @@ -0,0 +1,239 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01203E4 +/* 40B7D4 E01203E4 27BDFF40 */ addiu $sp, $sp, -0xc0 +/* 40B7D8 E01203E8 0080402D */ daddu $t0, $a0, $zero +/* 40B7DC E01203EC AFBF00B8 */ sw $ra, 0xb8($sp) +/* 40B7E0 E01203F0 AFB500B4 */ sw $s5, 0xb4($sp) +/* 40B7E4 E01203F4 AFB400B0 */ sw $s4, 0xb0($sp) +/* 40B7E8 E01203F8 AFB300AC */ sw $s3, 0xac($sp) +/* 40B7EC E01203FC AFB200A8 */ sw $s2, 0xa8($sp) +/* 40B7F0 E0120400 AFB100A4 */ sw $s1, 0xa4($sp) +/* 40B7F4 E0120404 AFB000A0 */ sw $s0, 0xa0($sp) +/* 40B7F8 E0120408 8D14000C */ lw $s4, 0xc($t0) +/* 40B7FC E012040C 8E950038 */ lw $s5, 0x38($s4) +/* 40B800 E0120410 8E870000 */ lw $a3, ($s4) +/* 40B804 E0120414 12A000D1 */ beqz $s5, .LE012075C +/* 40B808 E0120418 3C06DB06 */ lui $a2, 0xdb06 +/* 40B80C E012041C 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 40B810 E0120420 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 40B814 E0120424 34C60024 */ ori $a2, $a2, 0x24 +/* 40B818 E0120428 8C640000 */ lw $a0, ($v1) +/* 40B81C E012042C 3C02E700 */ lui $v0, 0xe700 +/* 40B820 E0120430 0080282D */ daddu $a1, $a0, $zero +/* 40B824 E0120434 24840008 */ addiu $a0, $a0, 8 +/* 40B828 E0120438 AC640000 */ sw $a0, ($v1) +/* 40B82C E012043C ACA20000 */ sw $v0, ($a1) +/* 40B830 E0120440 ACA00004 */ sw $zero, 4($a1) +/* 40B834 E0120444 AC860000 */ sw $a2, ($a0) +/* 40B838 E0120448 8D050010 */ lw $a1, 0x10($t0) +/* 40B83C E012044C 24820008 */ addiu $v0, $a0, 8 +/* 40B840 E0120450 AC620000 */ sw $v0, ($v1) +/* 40B844 E0120454 8CA2001C */ lw $v0, 0x1c($a1) +/* 40B848 E0120458 3C038000 */ lui $v1, 0x8000 +/* 40B84C E012045C 00431021 */ addu $v0, $v0, $v1 +/* 40B850 E0120460 14E00004 */ bnez $a3, .LE0120474 +/* 40B854 E0120464 AC820004 */ sw $v0, 4($a0) +/* 40B858 E0120468 3C05C4C8 */ lui $a1, 0xc4c8 +/* 40B85C E012046C 0804811F */ j .LE012047C +/* 40B860 E0120470 3C0644C8 */ lui $a2, 0x44c8 +.LE0120474: +/* 40B864 E0120474 3C0544C8 */ lui $a1, 0x44c8 +/* 40B868 E0120478 3C06C4C8 */ lui $a2, 0xc4c8 +.LE012047C: +/* 40B86C E012047C 3C07C496 */ lui $a3, 0xc496 +/* 40B870 E0120480 3C014496 */ lui $at, 0x4496 +/* 40B874 E0120484 44810000 */ mtc1 $at, $f0 +/* 40B878 E0120488 3C01C2C8 */ lui $at, 0xc2c8 +/* 40B87C E012048C 44811000 */ mtc1 $at, $f2 +/* 40B880 E0120490 3C0142C8 */ lui $at, 0x42c8 +/* 40B884 E0120494 44812000 */ mtc1 $at, $f4 +/* 40B888 E0120498 3C013F80 */ lui $at, 0x3f80 +/* 40B88C E012049C 44813000 */ mtc1 $at, $f6 +/* 40B890 E01204A0 27A40020 */ addiu $a0, $sp, 0x20 +/* 40B894 E01204A4 E7A00010 */ swc1 $f0, 0x10($sp) +/* 40B898 E01204A8 E7A20014 */ swc1 $f2, 0x14($sp) +/* 40B89C E01204AC E7A40018 */ swc1 $f4, 0x18($sp) +/* 40B8A0 E01204B0 0C080184 */ jal func_E0200610 +/* 40B8A4 E01204B4 E7A6001C */ swc1 $f6, 0x1c($sp) +/* 40B8A8 E01204B8 3C130001 */ lui $s3, 1 +/* 40B8AC E01204BC 36731630 */ ori $s3, $s3, 0x1630 +/* 40B8B0 E01204C0 27A40020 */ addiu $a0, $sp, 0x20 +/* 40B8B4 E01204C4 3C118007 */ lui $s1, %hi(D_800741F0) +/* 40B8B8 E01204C8 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 40B8BC E01204CC 3C12800A */ lui $s2, %hi(D_8009A674) +/* 40B8C0 E01204D0 2652A674 */ addiu $s2, $s2, %lo(D_8009A674) +/* 40B8C4 E01204D4 96250000 */ lhu $a1, ($s1) +/* 40B8C8 E01204D8 8E420000 */ lw $v0, ($s2) +/* 40B8CC E01204DC 00052980 */ sll $a1, $a1, 6 +/* 40B8D0 E01204E0 00B32821 */ addu $a1, $a1, $s3 +/* 40B8D4 E01204E4 0C080118 */ jal func_E0200460 +/* 40B8D8 E01204E8 00452821 */ addu $a1, $v0, $a1 +/* 40B8DC E01204EC 3C09DA38 */ lui $t1, 0xda38 +/* 40B8E0 E01204F0 35290007 */ ori $t1, $t1, 7 +/* 40B8E4 E01204F4 27A40020 */ addiu $a0, $sp, 0x20 +/* 40B8E8 E01204F8 3C10800A */ lui $s0, %hi(D_8009A66C) +/* 40B8EC E01204FC 2610A66C */ addiu $s0, $s0, %lo(D_8009A66C) +/* 40B8F0 E0120500 44800000 */ mtc1 $zero, $f0 +/* 40B8F4 E0120504 8E030000 */ lw $v1, ($s0) +/* 40B8F8 E0120508 96220000 */ lhu $v0, ($s1) +/* 40B8FC E012050C 0060402D */ daddu $t0, $v1, $zero +/* 40B900 E0120510 24630008 */ addiu $v1, $v1, 8 +/* 40B904 E0120514 AE030000 */ sw $v1, ($s0) +/* 40B908 E0120518 24430001 */ addiu $v1, $v0, 1 +/* 40B90C E012051C 3042FFFF */ andi $v0, $v0, 0xffff +/* 40B910 E0120520 00021180 */ sll $v0, $v0, 6 +/* 40B914 E0120524 44050000 */ mfc1 $a1, $f0 +/* 40B918 E0120528 00531021 */ addu $v0, $v0, $s3 +/* 40B91C E012052C AD090000 */ sw $t1, ($t0) +/* 40B920 E0120530 A6230000 */ sh $v1, ($s1) +/* 40B924 E0120534 8E430000 */ lw $v1, ($s2) +/* 40B928 E0120538 00A0302D */ daddu $a2, $a1, $zero +/* 40B92C E012053C 00A0382D */ daddu $a3, $a1, $zero +/* 40B930 E0120540 00621821 */ addu $v1, $v1, $v0 +/* 40B934 E0120544 0C080108 */ jal func_E0200420 +/* 40B938 E0120548 AD030004 */ sw $v1, 4($t0) +/* 40B93C E012054C 27A40020 */ addiu $a0, $sp, 0x20 +/* 40B940 E0120550 96250000 */ lhu $a1, ($s1) +/* 40B944 E0120554 8E420000 */ lw $v0, ($s2) +/* 40B948 E0120558 00052980 */ sll $a1, $a1, 6 +/* 40B94C E012055C 00B32821 */ addu $a1, $a1, $s3 +/* 40B950 E0120560 0C080118 */ jal func_E0200460 +/* 40B954 E0120564 00452821 */ addu $a1, $v0, $a1 +/* 40B958 E0120568 3C03DA38 */ lui $v1, 0xda38 +/* 40B95C E012056C 34630002 */ ori $v1, $v1, 2 +/* 40B960 E0120570 0000582D */ daddu $t3, $zero, $zero +/* 40B964 E0120574 3C0EF200 */ lui $t6, 0xf200 +/* 40B968 E0120578 3C0C0100 */ lui $t4, 0x100 +/* 40B96C E012057C 358C007C */ ori $t4, $t4, 0x7c +/* 40B970 E0120580 3C0DDE00 */ lui $t5, 0xde00 +/* 40B974 E0120584 3C0AE012 */ lui $t2, %hi(D_E0120780) +/* 40B978 E0120588 254A0780 */ addiu $t2, $t2, %lo(D_E0120780) +/* 40B97C E012058C 0160482D */ daddu $t1, $t3, $zero +/* 40B980 E0120590 0280402D */ daddu $t0, $s4, $zero +/* 40B984 E0120594 8E060000 */ lw $a2, ($s0) +/* 40B988 E0120598 3C014080 */ lui $at, 0x4080 +/* 40B98C E012059C 44811000 */ mtc1 $at, $f2 +/* 40B990 E01205A0 96220000 */ lhu $v0, ($s1) +/* 40B994 E01205A4 00C0202D */ daddu $a0, $a2, $zero +/* 40B998 E01205A8 24C60008 */ addiu $a2, $a2, 8 +/* 40B99C E01205AC AE060000 */ sw $a2, ($s0) +/* 40B9A0 E01205B0 AC830000 */ sw $v1, ($a0) +/* 40B9A4 E01205B4 24430001 */ addiu $v1, $v0, 1 +/* 40B9A8 E01205B8 3042FFFF */ andi $v0, $v0, 0xffff +/* 40B9AC E01205BC 00021180 */ sll $v0, $v0, 6 +/* 40B9B0 E01205C0 A6230000 */ sh $v1, ($s1) +/* 40B9B4 E01205C4 8E430000 */ lw $v1, ($s2) +/* 40B9B8 E01205C8 00531021 */ addu $v0, $v0, $s3 +/* 40B9BC E01205CC 00621821 */ addu $v1, $v1, $v0 +/* 40B9C0 E01205D0 24C20008 */ addiu $v0, $a2, 8 +/* 40B9C4 E01205D4 AC830004 */ sw $v1, 4($a0) +/* 40B9C8 E01205D8 AE020000 */ sw $v0, ($s0) +/* 40B9CC E01205DC 3C02FA00 */ lui $v0, 0xfa00 +/* 40B9D0 E01205E0 ACC20000 */ sw $v0, ($a2) +/* 40B9D4 E01205E4 91030018 */ lbu $v1, 0x18($t0) +/* 40B9D8 E01205E8 91040019 */ lbu $a0, 0x19($t0) +/* 40B9DC E01205EC 9105001A */ lbu $a1, 0x1a($t0) +/* 40B9E0 E01205F0 24C20010 */ addiu $v0, $a2, 0x10 +/* 40B9E4 E01205F4 AE020000 */ sw $v0, ($s0) +/* 40B9E8 E01205F8 3C02FB00 */ lui $v0, 0xfb00 +/* 40B9EC E01205FC ACC20008 */ sw $v0, 8($a2) +/* 40B9F0 E0120600 00151043 */ sra $v0, $s5, 1 +/* 40B9F4 E0120604 304200FF */ andi $v0, $v0, 0xff +/* 40B9F8 E0120608 00031E00 */ sll $v1, $v1, 0x18 +/* 40B9FC E012060C 00042400 */ sll $a0, $a0, 0x10 +/* 40BA00 E0120610 00641825 */ or $v1, $v1, $a0 +/* 40BA04 E0120614 00052A00 */ sll $a1, $a1, 8 +/* 40BA08 E0120618 00651825 */ or $v1, $v1, $a1 +/* 40BA0C E012061C 00621825 */ or $v1, $v1, $v0 +/* 40BA10 E0120620 ACC30004 */ sw $v1, 4($a2) +/* 40BA14 E0120624 9102001B */ lbu $v0, 0x1b($t0) +/* 40BA18 E0120628 9104001C */ lbu $a0, 0x1c($t0) +/* 40BA1C E012062C 9105001D */ lbu $a1, 0x1d($t0) +/* 40BA20 E0120630 9107001E */ lbu $a3, 0x1e($t0) +/* 40BA24 E0120634 01A0182D */ daddu $v1, $t5, $zero +/* 40BA28 E0120638 ACC30010 */ sw $v1, 0x10($a2) +/* 40BA2C E012063C 00021600 */ sll $v0, $v0, 0x18 +/* 40BA30 E0120640 00042400 */ sll $a0, $a0, 0x10 +/* 40BA34 E0120644 00441025 */ or $v0, $v0, $a0 +/* 40BA38 E0120648 00052A00 */ sll $a1, $a1, 8 +/* 40BA3C E012064C 00451025 */ or $v0, $v0, $a1 +/* 40BA40 E0120650 00471025 */ or $v0, $v0, $a3 +/* 40BA44 E0120654 ACC2000C */ sw $v0, 0xc($a2) +/* 40BA48 E0120658 3C03E012 */ lui $v1, %hi(D_E0120794) +/* 40BA4C E012065C 8C630794 */ lw $v1, %lo(D_E0120794)($v1) +/* 40BA50 E0120660 24C20018 */ addiu $v0, $a2, 0x18 +/* 40BA54 E0120664 AE020000 */ sw $v0, ($s0) +/* 40BA58 E0120668 ACC30014 */ sw $v1, 0x14($a2) +.LE012066C: +/* 40BA5C E012066C C5000020 */ lwc1 $f0, 0x20($t0) +/* 40BA60 E0120670 25080004 */ addiu $t0, $t0, 4 +/* 40BA64 E0120674 8E040000 */ lw $a0, ($s0) +/* 40BA68 E0120678 256B0001 */ addiu $t3, $t3, 1 +/* 40BA6C E012067C 0080282D */ daddu $a1, $a0, $zero +/* 40BA70 E0120680 46020002 */ mul.s $f0, $f0, $f2 +/* 40BA74 E0120684 00000000 */ nop +/* 40BA78 E0120688 24840008 */ addiu $a0, $a0, 8 +/* 40BA7C E012068C 24820008 */ addiu $v0, $a0, 8 +/* 40BA80 E0120690 AE040000 */ sw $a0, ($s0) +/* 40BA84 E0120694 AE020000 */ sw $v0, ($s0) +/* 40BA88 E0120698 4600020D */ trunc.w.s $f8, $f0 +/* 40BA8C E012069C 44034000 */ mfc1 $v1, $f8 +/* 40BA90 E01206A0 00000000 */ nop +/* 40BA94 E01206A4 00691821 */ addu $v1, $v1, $t1 +/* 40BA98 E01206A8 30620FFF */ andi $v0, $v1, 0xfff +/* 40BA9C E01206AC 00021300 */ sll $v0, $v0, 0xc +/* 40BAA0 E01206B0 004E1025 */ or $v0, $v0, $t6 +/* 40BAA4 E01206B4 246300FC */ addiu $v1, $v1, 0xfc +/* 40BAA8 E01206B8 30630FFF */ andi $v1, $v1, 0xfff +/* 40BAAC E01206BC 00031B00 */ sll $v1, $v1, 0xc +/* 40BAB0 E01206C0 006C1825 */ or $v1, $v1, $t4 +/* 40BAB4 E01206C4 ACA20000 */ sw $v0, ($a1) +/* 40BAB8 E01206C8 ACA30004 */ sw $v1, 4($a1) +/* 40BABC E01206CC AC8D0000 */ sw $t5, ($a0) +/* 40BAC0 E01206D0 8D420000 */ lw $v0, ($t2) +/* 40BAC4 E01206D4 254A0004 */ addiu $t2, $t2, 4 +/* 40BAC8 E01206D8 AC820004 */ sw $v0, 4($a0) +/* 40BACC E01206DC 29620005 */ slti $v0, $t3, 5 +/* 40BAD0 E01206E0 1440FFE2 */ bnez $v0, .LE012066C +/* 40BAD4 E01206E4 2529002C */ addiu $t1, $t1, 0x2c +/* 40BAD8 E01206E8 3C02D838 */ lui $v0, 0xd838 +/* 40BADC E01206EC 34420002 */ ori $v0, $v0, 2 +/* 40BAE0 E01206F0 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 40BAE4 E01206F4 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 40BAE8 E01206F8 8CA40000 */ lw $a0, ($a1) +/* 40BAEC E01206FC 3C06DA38 */ lui $a2, 0xda38 +/* 40BAF0 E0120700 0080182D */ daddu $v1, $a0, $zero +/* 40BAF4 E0120704 24840008 */ addiu $a0, $a0, 8 +/* 40BAF8 E0120708 ACA40000 */ sw $a0, ($a1) +/* 40BAFC E012070C AC620000 */ sw $v0, ($v1) +/* 40BB00 E0120710 24020040 */ addiu $v0, $zero, 0x40 +/* 40BB04 E0120714 AC620004 */ sw $v0, 4($v1) +/* 40BB08 E0120718 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 40BB0C E012071C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 40BB10 E0120720 24820008 */ addiu $v0, $a0, 8 +/* 40BB14 E0120724 ACA20000 */ sw $v0, ($a1) +/* 40BB18 E0120728 3C02800A */ lui $v0, %hi(D_8009A674) +/* 40BB1C E012072C 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 40BB20 E0120730 34C60007 */ ori $a2, $a2, 7 +/* 40BB24 E0120734 AC860000 */ sw $a2, ($a0) +/* 40BB28 E0120738 00031980 */ sll $v1, $v1, 6 +/* 40BB2C E012073C 24630030 */ addiu $v1, $v1, 0x30 +/* 40BB30 E0120740 00431021 */ addu $v0, $v0, $v1 +/* 40BB34 E0120744 AC820004 */ sw $v0, 4($a0) +/* 40BB38 E0120748 24820010 */ addiu $v0, $a0, 0x10 +/* 40BB3C E012074C ACA20000 */ sw $v0, ($a1) +/* 40BB40 E0120750 3C02E700 */ lui $v0, 0xe700 +/* 40BB44 E0120754 AC820008 */ sw $v0, 8($a0) +/* 40BB48 E0120758 AC80000C */ sw $zero, 0xc($a0) +.LE012075C: +/* 40BB4C E012075C 8FBF00B8 */ lw $ra, 0xb8($sp) +/* 40BB50 E0120760 8FB500B4 */ lw $s5, 0xb4($sp) +/* 40BB54 E0120764 8FB400B0 */ lw $s4, 0xb0($sp) +/* 40BB58 E0120768 8FB300AC */ lw $s3, 0xac($sp) +/* 40BB5C E012076C 8FB200A8 */ lw $s2, 0xa8($sp) +/* 40BB60 E0120770 8FB100A4 */ lw $s1, 0xa4($sp) +/* 40BB64 E0120774 8FB000A0 */ lw $s0, 0xa0($sp) +/* 40BB68 E0120778 03E00008 */ jr $ra +/* 40BB6C E012077C 27BD00C0 */ addiu $sp, $sp, 0xc0 diff --git a/asm/nonmatchings/code_40C5A0/func_E0122000.s b/asm/nonmatchings/code_40C5A0/func_E0122000.s new file mode 100644 index 0000000000..7f83ad0ecd --- /dev/null +++ b/asm/nonmatchings/code_40C5A0/func_E0122000.s @@ -0,0 +1,103 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0122000 +/* 40C5A0 E0122000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 40C5A4 E0122004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 40C5A8 E0122008 4485A000 */ mtc1 $a1, $f20 +/* 40C5AC E012200C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 40C5B0 E0122010 4486B000 */ mtc1 $a2, $f22 +/* 40C5B4 E0122014 AFB00028 */ sw $s0, 0x28($sp) +/* 40C5B8 E0122018 0080802D */ daddu $s0, $a0, $zero +/* 40C5BC E012201C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 40C5C0 E0122020 4487C000 */ mtc1 $a3, $f24 +/* 40C5C4 E0122024 27A40010 */ addiu $a0, $sp, 0x10 +/* 40C5C8 E0122028 AFB20030 */ sw $s2, 0x30($sp) +/* 40C5CC E012202C 8FB20064 */ lw $s2, 0x64($sp) +/* 40C5D0 E0122030 3C02E012 */ lui $v0, %hi(D_E0122174) +/* 40C5D4 E0122034 24422174 */ addiu $v0, $v0, %lo(D_E0122174) +/* 40C5D8 E0122038 AFA20018 */ sw $v0, 0x18($sp) +/* 40C5DC E012203C 3C02E012 */ lui $v0, %hi(D_E012217C) +/* 40C5E0 E0122040 2442217C */ addiu $v0, $v0, %lo(D_E012217C) +/* 40C5E4 E0122044 AFA2001C */ sw $v0, 0x1c($sp) +/* 40C5E8 E0122048 3C02E012 */ lui $v0, %hi(D_E01226C4) +/* 40C5EC E012204C 244226C4 */ addiu $v0, $v0, %lo(D_E01226C4) +/* 40C5F0 E0122050 AFA20020 */ sw $v0, 0x20($sp) +/* 40C5F4 E0122054 24020083 */ addiu $v0, $zero, 0x83 +/* 40C5F8 E0122058 AFBF0034 */ sw $ra, 0x34($sp) +/* 40C5FC E012205C AFB1002C */ sw $s1, 0x2c($sp) +/* 40C600 E0122060 AFA00010 */ sw $zero, 0x10($sp) +/* 40C604 E0122064 AFA00024 */ sw $zero, 0x24($sp) +/* 40C608 E0122068 0C080124 */ jal func_E0200490 +/* 40C60C E012206C AFA20014 */ sw $v0, 0x14($sp) +/* 40C610 E0122070 24040078 */ addiu $a0, $zero, 0x78 +/* 40C614 E0122074 24030001 */ addiu $v1, $zero, 1 +/* 40C618 E0122078 0040882D */ daddu $s1, $v0, $zero +/* 40C61C E012207C 0C08012C */ jal func_E02004B0 +/* 40C620 E0122080 AE230008 */ sw $v1, 8($s1) +/* 40C624 E0122084 0040182D */ daddu $v1, $v0, $zero +/* 40C628 E0122088 14600003 */ bnez $v1, .LE0122098 +/* 40C62C E012208C AE22000C */ sw $v0, 0xc($s1) +.LE0122090: +/* 40C630 E0122090 08048824 */ j .LE0122090 +/* 40C634 E0122094 00000000 */ nop +.LE0122098: +/* 40C638 E0122098 3202FF00 */ andi $v0, $s0, 0xff00 +/* 40C63C E012209C 321000FF */ andi $s0, $s0, 0xff +/* 40C640 E01220A0 AC620000 */ sw $v0, ($v1) +/* 40C644 E01220A4 AC700004 */ sw $s0, 4($v1) +/* 40C648 E01220A8 1E400004 */ bgtz $s2, .LE01220BC +/* 40C64C E01220AC AC600018 */ sw $zero, 0x18($v1) +/* 40C650 E01220B0 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 40C654 E01220B4 08048830 */ j .LE01220C0 +/* 40C658 E01220B8 AC620014 */ sw $v0, 0x14($v1) +.LE01220BC: +/* 40C65C E01220BC AC720014 */ sw $s2, 0x14($v1) +.LE01220C0: +/* 40C660 E01220C0 3C013F80 */ lui $at, 0x3f80 +/* 40C664 E01220C4 44811000 */ mtc1 $at, $f2 +/* 40C668 E01220C8 240200FF */ addiu $v0, $zero, 0xff +/* 40C66C E01220CC AC620028 */ sw $v0, 0x28($v1) +/* 40C670 E01220D0 E4740008 */ swc1 $f20, 8($v1) +/* 40C674 E01220D4 E476000C */ swc1 $f22, 0xc($v1) +/* 40C678 E01220D8 E4780010 */ swc1 $f24, 0x10($v1) +/* 40C67C E01220DC C7A00060 */ lwc1 $f0, 0x60($sp) +/* 40C680 E01220E0 AC62001C */ sw $v0, 0x1c($v1) +/* 40C684 E01220E4 AC620020 */ sw $v0, 0x20($v1) +/* 40C688 E01220E8 AC620024 */ sw $v0, 0x24($v1) +/* 40C68C E01220EC AC62002C */ sw $v0, 0x2c($v1) +/* 40C690 E01220F0 AC620030 */ sw $v0, 0x30($v1) +/* 40C694 E01220F4 AC620034 */ sw $v0, 0x34($v1) +/* 40C698 E01220F8 AC620038 */ sw $v0, 0x38($v1) +/* 40C69C E01220FC AC620050 */ sw $v0, 0x50($v1) +/* 40C6A0 E0122100 24020003 */ addiu $v0, $zero, 3 +/* 40C6A4 E0122104 AC600060 */ sw $zero, 0x60($v1) +/* 40C6A8 E0122108 AC600064 */ sw $zero, 0x64($v1) +/* 40C6AC E012210C AC600068 */ sw $zero, 0x68($v1) +/* 40C6B0 E0122110 AC60006C */ sw $zero, 0x6c($v1) +/* 40C6B4 E0122114 AC600044 */ sw $zero, 0x44($v1) +/* 40C6B8 E0122118 AC600048 */ sw $zero, 0x48($v1) +/* 40C6BC E012211C AC60004C */ sw $zero, 0x4c($v1) +/* 40C6C0 E0122120 AC600054 */ sw $zero, 0x54($v1) +/* 40C6C4 E0122124 AC600058 */ sw $zero, 0x58($v1) +/* 40C6C8 E0122128 AC60005C */ sw $zero, 0x5c($v1) +/* 40C6CC E012212C E460003C */ swc1 $f0, 0x3c($v1) +/* 40C6D0 E0122130 16020004 */ bne $s0, $v0, .LE0122144 +/* 40C6D4 E0122134 E4620040 */ swc1 $f2, 0x40($v1) +/* 40C6D8 E0122138 24020001 */ addiu $v0, $zero, 1 +/* 40C6DC E012213C 08048852 */ j .LE0122148 +/* 40C6E0 E0122140 AC620070 */ sw $v0, 0x70($v1) +.LE0122144: +/* 40C6E4 E0122144 AC600070 */ sw $zero, 0x70($v1) +.LE0122148: +/* 40C6E8 E0122148 0220102D */ daddu $v0, $s1, $zero +/* 40C6EC E012214C AC600074 */ sw $zero, 0x74($v1) +/* 40C6F0 E0122150 8FBF0034 */ lw $ra, 0x34($sp) +/* 40C6F4 E0122154 8FB20030 */ lw $s2, 0x30($sp) +/* 40C6F8 E0122158 8FB1002C */ lw $s1, 0x2c($sp) +/* 40C6FC E012215C 8FB00028 */ lw $s0, 0x28($sp) +/* 40C700 E0122160 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 40C704 E0122164 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 40C708 E0122168 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 40C70C E012216C 03E00008 */ jr $ra +/* 40C710 E0122170 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_40C5A0/func_E0122174.s b/asm/nonmatchings/code_40C5A0/func_E0122174.s new file mode 100644 index 0000000000..2286613bcf --- /dev/null +++ b/asm/nonmatchings/code_40C5A0/func_E0122174.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0122174 +/* 40C714 E0122174 03E00008 */ jr $ra +/* 40C718 E0122178 00000000 */ nop diff --git a/asm/nonmatchings/code_40C5A0/func_E012217C.s b/asm/nonmatchings/code_40C5A0/func_E012217C.s new file mode 100644 index 0000000000..6a2198fe48 --- /dev/null +++ b/asm/nonmatchings/code_40C5A0/func_E012217C.s @@ -0,0 +1,377 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E012217C +/* 40C71C E012217C 27BDFFE0 */ addiu $sp, $sp, -0x20 +/* 40C720 E0122180 AFBF001C */ sw $ra, 0x1c($sp) +/* 40C724 E0122184 AFB20018 */ sw $s2, 0x18($sp) +/* 40C728 E0122188 AFB10014 */ sw $s1, 0x14($sp) +/* 40C72C E012218C AFB00010 */ sw $s0, 0x10($sp) +/* 40C730 E0122190 8C830000 */ lw $v1, ($a0) +/* 40C734 E0122194 8C90000C */ lw $s0, 0xc($a0) +/* 40C738 E0122198 30620010 */ andi $v0, $v1, 0x10 +/* 40C73C E012219C 8E120004 */ lw $s2, 4($s0) +/* 40C740 E01221A0 10400005 */ beqz $v0, .LE01221B8 +/* 40C744 E01221A4 2402FFEF */ addiu $v0, $zero, -0x11 +/* 40C748 E01221A8 00621024 */ and $v0, $v1, $v0 +/* 40C74C E01221AC AC820000 */ sw $v0, ($a0) +/* 40C750 E01221B0 24020010 */ addiu $v0, $zero, 0x10 +/* 40C754 E01221B4 AE020014 */ sw $v0, 0x14($s0) +.LE01221B8: +/* 40C758 E01221B8 8E030014 */ lw $v1, 0x14($s0) +/* 40C75C E01221BC 286203E8 */ slti $v0, $v1, 0x3e8 +/* 40C760 E01221C0 10400002 */ beqz $v0, .LE01221CC +/* 40C764 E01221C4 2462FFFF */ addiu $v0, $v1, -1 +/* 40C768 E01221C8 AE020014 */ sw $v0, 0x14($s0) +.LE01221CC: +/* 40C76C E01221CC 8E020018 */ lw $v0, 0x18($s0) +/* 40C770 E01221D0 8E030014 */ lw $v1, 0x14($s0) +/* 40C774 E01221D4 24510001 */ addiu $s1, $v0, 1 +/* 40C778 E01221D8 04610005 */ bgez $v1, .LE01221F0 +/* 40C77C E01221DC AE110018 */ sw $s1, 0x18($s0) +/* 40C780 E01221E0 0C080128 */ jal func_E02004A0 +/* 40C784 E01221E4 00000000 */ nop +/* 40C788 E01221E8 080489AB */ j .LE01226AC +/* 40C78C E01221EC 00000000 */ nop +.LE01221F0: +/* 40C790 E01221F0 28620010 */ slti $v0, $v1, 0x10 +/* 40C794 E01221F4 10400002 */ beqz $v0, .LE0122200 +/* 40C798 E01221F8 00031100 */ sll $v0, $v1, 4 +/* 40C79C E01221FC AE020028 */ sw $v0, 0x28($s0) +.LE0122200: +/* 40C7A0 E0122200 8E030070 */ lw $v1, 0x70($s0) +/* 40C7A4 E0122204 24020004 */ addiu $v0, $zero, 4 +/* 40C7A8 E0122208 106200D5 */ beq $v1, $v0, .LE0122560 +/* 40C7AC E012220C 28620005 */ slti $v0, $v1, 5 +/* 40C7B0 E0122210 10400007 */ beqz $v0, .LE0122230 +/* 40C7B4 E0122214 24020005 */ addiu $v0, $zero, 5 +/* 40C7B8 E0122218 1060000B */ beqz $v1, .LE0122248 +/* 40C7BC E012221C 24020001 */ addiu $v0, $zero, 1 +/* 40C7C0 E0122220 10620096 */ beq $v1, $v0, .LE012247C +/* 40C7C4 E0122224 00000000 */ nop +/* 40C7C8 E0122228 0804898B */ j .LE012262C +/* 40C7CC E012222C 00000000 */ nop +.LE0122230: +/* 40C7D0 E0122230 106200FE */ beq $v1, $v0, .LE012262C +/* 40C7D4 E0122234 24020064 */ addiu $v0, $zero, 0x64 +/* 40C7D8 E0122238 10620040 */ beq $v1, $v0, .LE012233C +/* 40C7DC E012223C 00000000 */ nop +/* 40C7E0 E0122240 0804898B */ j .LE012262C +/* 40C7E4 E0122244 00000000 */ nop +.LE0122248: +/* 40C7E8 E0122248 00111080 */ sll $v0, $s1, 2 +/* 40C7EC E012224C 00511021 */ addu $v0, $v0, $s1 +/* 40C7F0 E0122250 00021080 */ sll $v0, $v0, 2 +/* 40C7F4 E0122254 44826000 */ mtc1 $v0, $f12 +/* 40C7F8 E0122258 00000000 */ nop +/* 40C7FC E012225C 46806320 */ cvt.s.w $f12, $f12 +/* 40C800 E0122260 32230003 */ andi $v1, $s1, 3 +/* 40C804 E0122264 00031100 */ sll $v0, $v1, 4 +/* 40C808 E0122268 00431023 */ subu $v0, $v0, $v1 +/* 40C80C E012226C 00021040 */ sll $v0, $v0, 1 +/* 40C810 E0122270 8E030074 */ lw $v1, 0x74($s0) +/* 40C814 E0122274 244200C8 */ addiu $v0, $v0, 0xc8 +/* 40C818 E0122278 AE020050 */ sw $v0, 0x50($s0) +/* 40C81C E012227C 24630001 */ addiu $v1, $v1, 1 +/* 40C820 E0122280 0C080140 */ jal func_E0200500 +/* 40C824 E0122284 AE030074 */ sw $v1, 0x74($s0) +/* 40C828 E0122288 3C01E012 */ lui $at, %hi(D_E0122CA0) +/* 40C82C E012228C D4222CA0 */ ldc1 $f2, %lo(D_E0122CA0)($at) +/* 40C830 E0122290 46000021 */ cvt.d.s $f0, $f0 +/* 40C834 E0122294 46220002 */ mul.d $f0, $f0, $f2 +/* 40C838 E0122298 00000000 */ nop +/* 40C83C E012229C 3C013FE0 */ lui $at, 0x3fe0 +/* 40C840 E01222A0 44811800 */ mtc1 $at, $f3 +/* 40C844 E01222A4 44801000 */ mtc1 $zero, $f2 +/* 40C848 E01222A8 00000000 */ nop +/* 40C84C E01222AC 46220000 */ add.d $f0, $f0, $f2 +/* 40C850 E01222B0 8E020000 */ lw $v0, ($s0) +/* 40C854 E01222B4 46200020 */ cvt.s.d $f0, $f0 +/* 40C858 E01222B8 104000E8 */ beqz $v0, .LE012265C +/* 40C85C E01222BC E6000040 */ swc1 $f0, 0x40($s0) +/* 40C860 E01222C0 44916000 */ mtc1 $s1, $f12 +/* 40C864 E01222C4 00000000 */ nop +/* 40C868 E01222C8 0C080140 */ jal func_E0200500 +/* 40C86C E01222CC 46806320 */ cvt.s.w $f12, $f12 +/* 40C870 E01222D0 3C01E012 */ lui $at, %hi(D_E0122CA8) +/* 40C874 E01222D4 D4222CA8 */ ldc1 $f2, %lo(D_E0122CA8)($at) +/* 40C878 E01222D8 44916000 */ mtc1 $s1, $f12 +/* 40C87C E01222DC 00000000 */ nop +/* 40C880 E01222E0 46806321 */ cvt.d.w $f12, $f12 +/* 40C884 E01222E4 46226302 */ mul.d $f12, $f12, $f2 +/* 40C888 E01222E8 00000000 */ nop +/* 40C88C E01222EC C6020008 */ lwc1 $f2, 8($s0) +/* 40C890 E01222F0 46001080 */ add.s $f2, $f2, $f0 +/* 40C894 E01222F4 E6020008 */ swc1 $f2, 8($s0) +/* 40C898 E01222F8 0C080144 */ jal func_E0200510 +/* 40C89C E01222FC 46206320 */ cvt.s.d $f12, $f12 +/* 40C8A0 E0122300 C602000C */ lwc1 $f2, 0xc($s0) +/* 40C8A4 E0122304 8E020074 */ lw $v0, 0x74($s0) +/* 40C8A8 E0122308 46001080 */ add.s $f2, $f2, $f0 +/* 40C8AC E012230C 28420033 */ slti $v0, $v0, 0x33 +/* 40C8B0 E0122310 144000D2 */ bnez $v0, .LE012265C +/* 40C8B4 E0122314 E602000C */ swc1 $f2, 0xc($s0) +/* 40C8B8 E0122318 24020003 */ addiu $v0, $zero, 3 +/* 40C8BC E012231C 16420004 */ bne $s2, $v0, .LE0122330 +/* 40C8C0 E0122320 AE000074 */ sw $zero, 0x74($s0) +/* 40C8C4 E0122324 24020064 */ addiu $v0, $zero, 0x64 +/* 40C8C8 E0122328 08048997 */ j .LE012265C +/* 40C8CC E012232C AE020070 */ sw $v0, 0x70($s0) +.LE0122330: +/* 40C8D0 E0122330 24020001 */ addiu $v0, $zero, 1 +/* 40C8D4 E0122334 08048997 */ j .LE012265C +/* 40C8D8 E0122338 AE020070 */ sw $v0, 0x70($s0) +.LE012233C: +/* 40C8DC E012233C 8E030074 */ lw $v1, 0x74($s0) +/* 40C8E0 E0122340 10600005 */ beqz $v1, .LE0122358 +/* 40C8E4 E0122344 24020001 */ addiu $v0, $zero, 1 +/* 40C8E8 E0122348 10620007 */ beq $v1, $v0, .LE0122368 +/* 40C8EC E012234C 240200FF */ addiu $v0, $zero, 0xff +/* 40C8F0 E0122350 080488DF */ j .LE012237C +/* 40C8F4 E0122354 AE00004C */ sw $zero, 0x4c($s0) +.LE0122358: +/* 40C8F8 E0122358 3C014080 */ lui $at, 0x4080 +/* 40C8FC E012235C 44810000 */ mtc1 $at, $f0 +/* 40C900 E0122360 080488DC */ j .LE0122370 +/* 40C904 E0122364 240200FF */ addiu $v0, $zero, 0xff +.LE0122368: +/* 40C908 E0122368 3C014100 */ lui $at, 0x4100 +/* 40C90C E012236C 44810000 */ mtc1 $at, $f0 +.LE0122370: +/* 40C910 E0122370 AE02005C */ sw $v0, 0x5c($s0) +/* 40C914 E0122374 080488E0 */ j .LE0122380 +/* 40C918 E0122378 E600004C */ swc1 $f0, 0x4c($s0) +.LE012237C: +/* 40C91C E012237C AE00005C */ sw $zero, 0x5c($s0) +.LE0122380: +/* 40C920 E0122380 8E040074 */ lw $a0, 0x74($s0) +/* 40C924 E0122384 2882001E */ slti $v0, $a0, 0x1e +/* 40C928 E0122388 10400017 */ beqz $v0, .LE01223E8 +/* 40C92C E012238C 00041880 */ sll $v1, $a0, 2 +/* 40C930 E0122390 3C02E012 */ lui $v0, %hi(D_E0122BA8) +/* 40C934 E0122394 24422BA8 */ addiu $v0, $v0, %lo(D_E0122BA8) +/* 40C938 E0122398 00621821 */ addu $v1, $v1, $v0 +/* 40C93C E012239C 94620000 */ lhu $v0, ($v1) +/* 40C940 E01223A0 3C01E012 */ lui $at, %hi(D_E0122CB0) +/* 40C944 E01223A4 D4202CB0 */ ldc1 $f0, %lo(D_E0122CB0)($at) +/* 40C948 E01223A8 44821000 */ mtc1 $v0, $f2 +/* 40C94C E01223AC 00000000 */ nop +/* 40C950 E01223B0 468010A0 */ cvt.s.w $f2, $f2 +/* 40C954 E01223B4 460010A1 */ cvt.d.s $f2, $f2 +/* 40C958 E01223B8 46201082 */ mul.d $f2, $f2, $f0 +/* 40C95C E01223BC 00000000 */ nop +/* 40C960 E01223C0 3C01E012 */ lui $at, %hi(D_E0122CB8) +/* 40C964 E01223C4 D4242CB8 */ ldc1 $f4, %lo(D_E0122CB8)($at) +/* 40C968 E01223C8 44840000 */ mtc1 $a0, $f0 +/* 40C96C E01223CC 00000000 */ nop +/* 40C970 E01223D0 46800021 */ cvt.d.w $f0, $f0 +/* 40C974 E01223D4 46240002 */ mul.d $f0, $f0, $f4 +/* 40C978 E01223D8 00000000 */ nop +/* 40C97C E01223DC 90620003 */ lbu $v0, 3($v1) +/* 40C980 E01223E0 0804890E */ j .LE0122438 +/* 40C984 E01223E4 46201080 */ add.d $f2, $f2, $f0 +.LE01223E8: +/* 40C988 E01223E8 3C03E012 */ lui $v1, %hi(D_E0122BA8) +/* 40C98C E01223EC 24632BA8 */ addiu $v1, $v1, %lo(D_E0122BA8) +/* 40C990 E01223F0 94620074 */ lhu $v0, 0x74($v1) +/* 40C994 E01223F4 3C01E012 */ lui $at, %hi(D_E0122CC0) +/* 40C998 E01223F8 D4202CC0 */ ldc1 $f0, %lo(D_E0122CC0)($at) +/* 40C99C E01223FC 44821000 */ mtc1 $v0, $f2 +/* 40C9A0 E0122400 00000000 */ nop +/* 40C9A4 E0122404 468010A0 */ cvt.s.w $f2, $f2 +/* 40C9A8 E0122408 460010A1 */ cvt.d.s $f2, $f2 +/* 40C9AC E012240C 46201082 */ mul.d $f2, $f2, $f0 +/* 40C9B0 E0122410 00000000 */ nop +/* 40C9B4 E0122414 3C01E012 */ lui $at, %hi(D_E0122CC8) +/* 40C9B8 E0122418 D4242CC8 */ ldc1 $f4, %lo(D_E0122CC8)($at) +/* 40C9BC E012241C 44840000 */ mtc1 $a0, $f0 +/* 40C9C0 E0122420 00000000 */ nop +/* 40C9C4 E0122424 46800021 */ cvt.d.w $f0, $f0 +/* 40C9C8 E0122428 46240002 */ mul.d $f0, $f0, $f4 +/* 40C9CC E012242C 00000000 */ nop +/* 40C9D0 E0122430 46201080 */ add.d $f2, $f2, $f0 +/* 40C9D4 E0122434 90620077 */ lbu $v0, 0x77($v1) +.LE0122438: +/* 40C9D8 E0122438 46201020 */ cvt.s.d $f0, $f2 +/* 40C9DC E012243C 3C01E012 */ lui $at, %hi(D_E0122CD0) +/* 40C9E0 E0122440 D4222CD0 */ ldc1 $f2, %lo(D_E0122CD0)($at) +/* 40C9E4 E0122444 304200FF */ andi $v0, $v0, 0xff +/* 40C9E8 E0122448 AE020054 */ sw $v0, 0x54($s0) +/* 40C9EC E012244C AE020058 */ sw $v0, 0x58($s0) +/* 40C9F0 E0122450 8E020074 */ lw $v0, 0x74($s0) +/* 40C9F4 E0122454 E6000044 */ swc1 $f0, 0x44($s0) +/* 40C9F8 E0122458 46000021 */ cvt.d.s $f0, $f0 +/* 40C9FC E012245C AE000050 */ sw $zero, 0x50($s0) +/* 40CA00 E0122460 AE000040 */ sw $zero, 0x40($s0) +/* 40CA04 E0122464 46220000 */ add.d $f0, $f0, $f2 +/* 40CA08 E0122468 24420001 */ addiu $v0, $v0, 1 +/* 40CA0C E012246C AE020074 */ sw $v0, 0x74($s0) +/* 40CA10 E0122470 46200020 */ cvt.s.d $f0, $f0 +/* 40CA14 E0122474 08048997 */ j .LE012265C +/* 40CA18 E0122478 E6000048 */ swc1 $f0, 0x48($s0) +.LE012247C: +/* 40CA1C E012247C 8E020074 */ lw $v0, 0x74($s0) +/* 40CA20 E0122480 10400005 */ beqz $v0, .LE0122498 +/* 40CA24 E0122484 00000000 */ nop +/* 40CA28 E0122488 10430007 */ beq $v0, $v1, .LE01224A8 +/* 40CA2C E012248C 240200FF */ addiu $v0, $zero, 0xff +/* 40CA30 E0122490 0804892F */ j .LE01224BC +/* 40CA34 E0122494 AE00004C */ sw $zero, 0x4c($s0) +.LE0122498: +/* 40CA38 E0122498 3C014080 */ lui $at, 0x4080 +/* 40CA3C E012249C 44810000 */ mtc1 $at, $f0 +/* 40CA40 E01224A0 0804892C */ j .LE01224B0 +/* 40CA44 E01224A4 240200FF */ addiu $v0, $zero, 0xff +.LE01224A8: +/* 40CA48 E01224A8 3C014100 */ lui $at, 0x4100 +/* 40CA4C E01224AC 44810000 */ mtc1 $at, $f0 +.LE01224B0: +/* 40CA50 E01224B0 AE02005C */ sw $v0, 0x5c($s0) +/* 40CA54 E01224B4 08048930 */ j .LE01224C0 +/* 40CA58 E01224B8 E600004C */ swc1 $f0, 0x4c($s0) +.LE01224BC: +/* 40CA5C E01224BC AE00005C */ sw $zero, 0x5c($s0) +.LE01224C0: +/* 40CA60 E01224C0 8E030074 */ lw $v1, 0x74($s0) +/* 40CA64 E01224C4 3C02E012 */ lui $v0, %hi(D_E0122BA8) +/* 40CA68 E01224C8 24422BA8 */ addiu $v0, $v0, %lo(D_E0122BA8) +/* 40CA6C E01224CC 00031880 */ sll $v1, $v1, 2 +/* 40CA70 E01224D0 00621821 */ addu $v1, $v1, $v0 +/* 40CA74 E01224D4 94620000 */ lhu $v0, ($v1) +/* 40CA78 E01224D8 3C01E012 */ lui $at, %hi(D_E0122CD8) +/* 40CA7C E01224DC D4202CD8 */ ldc1 $f0, %lo(D_E0122CD8)($at) +/* 40CA80 E01224E0 44821000 */ mtc1 $v0, $f2 +/* 40CA84 E01224E4 00000000 */ nop +/* 40CA88 E01224E8 468010A0 */ cvt.s.w $f2, $f2 +/* 40CA8C E01224EC 460010A1 */ cvt.d.s $f2, $f2 +/* 40CA90 E01224F0 46201082 */ mul.d $f2, $f2, $f0 +/* 40CA94 E01224F4 00000000 */ nop +/* 40CA98 E01224F8 3C01E012 */ lui $at, %hi(D_E0122CE0) +/* 40CA9C E01224FC D4242CE0 */ ldc1 $f4, %lo(D_E0122CE0)($at) +/* 40CAA0 E0122500 90630003 */ lbu $v1, 3($v1) +/* 40CAA4 E0122504 AE000050 */ sw $zero, 0x50($s0) +/* 40CAA8 E0122508 AE000040 */ sw $zero, 0x40($s0) +/* 40CAAC E012250C 462010A0 */ cvt.s.d $f2, $f2 +/* 40CAB0 E0122510 46001021 */ cvt.d.s $f0, $f2 +/* 40CAB4 E0122514 46240002 */ mul.d $f0, $f0, $f4 +/* 40CAB8 E0122518 00000000 */ nop +/* 40CABC E012251C 8E020074 */ lw $v0, 0x74($s0) +/* 40CAC0 E0122520 306300FF */ andi $v1, $v1, 0xff +/* 40CAC4 E0122524 AE030054 */ sw $v1, 0x54($s0) +/* 40CAC8 E0122528 AE030058 */ sw $v1, 0x58($s0) +/* 40CACC E012252C 3C014010 */ lui $at, 0x4010 +/* 40CAD0 E0122530 44812800 */ mtc1 $at, $f5 +/* 40CAD4 E0122534 44802000 */ mtc1 $zero, $f4 +/* 40CAD8 E0122538 24420001 */ addiu $v0, $v0, 1 +/* 40CADC E012253C AE020074 */ sw $v0, 0x74($s0) +/* 40CAE0 E0122540 46240000 */ add.d $f0, $f0, $f4 +/* 40CAE4 E0122544 2842001E */ slti $v0, $v0, 0x1e +/* 40CAE8 E0122548 E6020044 */ swc1 $f2, 0x44($s0) +/* 40CAEC E012254C 46200020 */ cvt.s.d $f0, $f0 +/* 40CAF0 E0122550 14400042 */ bnez $v0, .LE012265C +/* 40CAF4 E0122554 E6000048 */ swc1 $f0, 0x48($s0) +/* 40CAF8 E0122558 08048988 */ j .LE0122620 +/* 40CAFC E012255C 24020004 */ addiu $v0, $zero, 4 +.LE0122560: +/* 40CB00 E0122560 8E030074 */ lw $v1, 0x74($s0) +/* 40CB04 E0122564 2402001D */ addiu $v0, $zero, 0x1d +/* 40CB08 E0122568 00431823 */ subu $v1, $v0, $v1 +/* 40CB0C E012256C 10600005 */ beqz $v1, .LE0122584 +/* 40CB10 E0122570 24020001 */ addiu $v0, $zero, 1 +/* 40CB14 E0122574 10620007 */ beq $v1, $v0, .LE0122594 +/* 40CB18 E0122578 240200FF */ addiu $v0, $zero, 0xff +/* 40CB1C E012257C 0804896A */ j .LE01225A8 +/* 40CB20 E0122580 AE00004C */ sw $zero, 0x4c($s0) +.LE0122584: +/* 40CB24 E0122584 3C014080 */ lui $at, 0x4080 +/* 40CB28 E0122588 44810000 */ mtc1 $at, $f0 +/* 40CB2C E012258C 08048967 */ j .LE012259C +/* 40CB30 E0122590 240200FF */ addiu $v0, $zero, 0xff +.LE0122594: +/* 40CB34 E0122594 3C014100 */ lui $at, 0x4100 +/* 40CB38 E0122598 44810000 */ mtc1 $at, $f0 +.LE012259C: +/* 40CB3C E012259C AE02005C */ sw $v0, 0x5c($s0) +/* 40CB40 E01225A0 0804896B */ j .LE01225AC +/* 40CB44 E01225A4 E600004C */ swc1 $f0, 0x4c($s0) +.LE01225A8: +/* 40CB48 E01225A8 AE00005C */ sw $zero, 0x5c($s0) +.LE01225AC: +/* 40CB4C E01225AC 3C03E012 */ lui $v1, %hi(D_E0122C20) +/* 40CB50 E01225B0 24632C20 */ addiu $v1, $v1, %lo(D_E0122C20) +/* 40CB54 E01225B4 8E020074 */ lw $v0, 0x74($s0) +/* 40CB58 E01225B8 3C01E012 */ lui $at, %hi(D_E0122CE8) +/* 40CB5C E01225BC D4222CE8 */ ldc1 $f2, %lo(D_E0122CE8)($at) +/* 40CB60 E01225C0 00021080 */ sll $v0, $v0, 2 +/* 40CB64 E01225C4 00431021 */ addu $v0, $v0, $v1 +/* 40CB68 E01225C8 94430000 */ lhu $v1, ($v0) +/* 40CB6C E01225CC 90440003 */ lbu $a0, 3($v0) +/* 40CB70 E01225D0 8E020074 */ lw $v0, 0x74($s0) +/* 40CB74 E01225D4 AE000050 */ sw $zero, 0x50($s0) +/* 40CB78 E01225D8 AE000040 */ sw $zero, 0x40($s0) +/* 40CB7C E01225DC 44830000 */ mtc1 $v1, $f0 +/* 40CB80 E01225E0 00000000 */ nop +/* 40CB84 E01225E4 46800020 */ cvt.s.w $f0, $f0 +/* 40CB88 E01225E8 46000021 */ cvt.d.s $f0, $f0 +/* 40CB8C E01225EC 46220002 */ mul.d $f0, $f0, $f2 +/* 40CB90 E01225F0 00000000 */ nop +/* 40CB94 E01225F4 AE000058 */ sw $zero, 0x58($s0) +/* 40CB98 E01225F8 AE000048 */ sw $zero, 0x48($s0) +/* 40CB9C E01225FC 24420001 */ addiu $v0, $v0, 1 +/* 40CBA0 E0122600 308400FF */ andi $a0, $a0, 0xff +/* 40CBA4 E0122604 AE020074 */ sw $v0, 0x74($s0) +/* 40CBA8 E0122608 2842001E */ slti $v0, $v0, 0x1e +/* 40CBAC E012260C AE040054 */ sw $a0, 0x54($s0) +/* 40CBB0 E0122610 46200020 */ cvt.s.d $f0, $f0 +/* 40CBB4 E0122614 14400011 */ bnez $v0, .LE012265C +/* 40CBB8 E0122618 E6000044 */ swc1 $f0, 0x44($s0) +/* 40CBBC E012261C 24020005 */ addiu $v0, $zero, 5 +.LE0122620: +/* 40CBC0 E0122620 AE000074 */ sw $zero, 0x74($s0) +/* 40CBC4 E0122624 08048997 */ j .LE012265C +/* 40CBC8 E0122628 AE020070 */ sw $v0, 0x70($s0) +.LE012262C: +/* 40CBCC E012262C 8E020074 */ lw $v0, 0x74($s0) +/* 40CBD0 E0122630 AE000040 */ sw $zero, 0x40($s0) +/* 40CBD4 E0122634 AE000044 */ sw $zero, 0x44($s0) +/* 40CBD8 E0122638 AE000048 */ sw $zero, 0x48($s0) +/* 40CBDC E012263C AE000050 */ sw $zero, 0x50($s0) +/* 40CBE0 E0122640 AE000054 */ sw $zero, 0x54($s0) +/* 40CBE4 E0122644 AE000058 */ sw $zero, 0x58($s0) +/* 40CBE8 E0122648 AE00004C */ sw $zero, 0x4c($s0) +/* 40CBEC E012264C AE00005C */ sw $zero, 0x5c($s0) +/* 40CBF0 E0122650 AE00004C */ sw $zero, 0x4c($s0) +/* 40CBF4 E0122654 24420001 */ addiu $v0, $v0, 1 +/* 40CBF8 E0122658 AE020074 */ sw $v0, 0x74($s0) +.LE012265C: +/* 40CBFC E012265C 0000202D */ daddu $a0, $zero, $zero +/* 40CC00 E0122660 240500FF */ addiu $a1, $zero, 0xff +/* 40CC04 E0122664 44801000 */ mtc1 $zero, $f2 +/* 40CC08 E0122668 0200182D */ daddu $v1, $s0, $zero +.LE012266C: +/* 40CC0C E012266C 8C620050 */ lw $v0, 0x50($v1) +/* 40CC10 E0122670 28420100 */ slti $v0, $v0, 0x100 +/* 40CC14 E0122674 50400001 */ beql $v0, $zero, .LE012267C +/* 40CC18 E0122678 AC650050 */ sw $a1, 0x50($v1) +.LE012267C: +/* 40CC1C E012267C 8C620050 */ lw $v0, 0x50($v1) +/* 40CC20 E0122680 04420001 */ bltzl $v0, .LE0122688 +/* 40CC24 E0122684 AC600050 */ sw $zero, 0x50($v1) +.LE0122688: +/* 40CC28 E0122688 C4600040 */ lwc1 $f0, 0x40($v1) +/* 40CC2C E012268C 4602003C */ c.lt.s $f0, $f2 +/* 40CC30 E0122690 00000000 */ nop +/* 40CC34 E0122694 45030001 */ bc1tl .LE012269C +/* 40CC38 E0122698 E4620040 */ swc1 $f2, 0x40($v1) +.LE012269C: +/* 40CC3C E012269C 24840001 */ addiu $a0, $a0, 1 +/* 40CC40 E01226A0 28820004 */ slti $v0, $a0, 4 +/* 40CC44 E01226A4 1440FFF1 */ bnez $v0, .LE012266C +/* 40CC48 E01226A8 24630004 */ addiu $v1, $v1, 4 +.LE01226AC: +/* 40CC4C E01226AC 8FBF001C */ lw $ra, 0x1c($sp) +/* 40CC50 E01226B0 8FB20018 */ lw $s2, 0x18($sp) +/* 40CC54 E01226B4 8FB10014 */ lw $s1, 0x14($sp) +/* 40CC58 E01226B8 8FB00010 */ lw $s0, 0x10($sp) +/* 40CC5C E01226BC 03E00008 */ jr $ra +/* 40CC60 E01226C0 27BD0020 */ addiu $sp, $sp, 0x20 diff --git a/asm/nonmatchings/code_40C5A0/func_E01226C4.s b/asm/nonmatchings/code_40C5A0/func_E01226C4.s new file mode 100644 index 0000000000..64a7f9d1cd --- /dev/null +++ b/asm/nonmatchings/code_40C5A0/func_E01226C4.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01226C4 +/* 40CC64 E01226C4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 40CC68 E01226C8 3C02E012 */ lui $v0, %hi(D_E012270C) +/* 40CC6C E01226CC 2442270C */ addiu $v0, $v0, %lo(D_E012270C) +/* 40CC70 E01226D0 AFA2001C */ sw $v0, 0x1c($sp) +/* 40CC74 E01226D4 2402000A */ addiu $v0, $zero, 0xa +/* 40CC78 E01226D8 AFA20014 */ sw $v0, 0x14($sp) +/* 40CC7C E01226DC 2402002D */ addiu $v0, $zero, 0x2d +/* 40CC80 E01226E0 AFA40018 */ sw $a0, 0x18($sp) +/* 40CC84 E01226E4 27A40010 */ addiu $a0, $sp, 0x10 +/* 40CC88 E01226E8 AFBF0020 */ sw $ra, 0x20($sp) +/* 40CC8C E01226EC 0C080120 */ jal func_E0200480 +/* 40CC90 E01226F0 AFA20010 */ sw $v0, 0x10($sp) +/* 40CC94 E01226F4 8C430000 */ lw $v1, ($v0) +/* 40CC98 E01226F8 34630002 */ ori $v1, $v1, 2 +/* 40CC9C E01226FC AC430000 */ sw $v1, ($v0) +/* 40CCA0 E0122700 8FBF0020 */ lw $ra, 0x20($sp) +/* 40CCA4 E0122704 03E00008 */ jr $ra +/* 40CCA8 E0122708 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_40C5A0/func_E012270C.s b/asm/nonmatchings/code_40C5A0/func_E012270C.s new file mode 100644 index 0000000000..dcff523f05 --- /dev/null +++ b/asm/nonmatchings/code_40C5A0/func_E012270C.s @@ -0,0 +1,303 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E012270C +/* 40CCAC E012270C 27BDFF70 */ addiu $sp, $sp, -0x90 +/* 40CCB0 E0122710 0080402D */ daddu $t0, $a0, $zero +/* 40CCB4 E0122714 3C09DB06 */ lui $t1, 0xdb06 +/* 40CCB8 E0122718 35290024 */ ori $t1, $t1, 0x24 +/* 40CCBC E012271C 27A40020 */ addiu $a0, $sp, 0x20 +/* 40CCC0 E0122720 AFB00060 */ sw $s0, 0x60($sp) +/* 40CCC4 E0122724 3C100001 */ lui $s0, 1 +/* 40CCC8 E0122728 36101630 */ ori $s0, $s0, 0x1630 +/* 40CCCC E012272C AFB40070 */ sw $s4, 0x70($sp) +/* 40CCD0 E0122730 0000A02D */ daddu $s4, $zero, $zero +/* 40CCD4 E0122734 3C02800A */ lui $v0, %hi(D_8009A674) +/* 40CCD8 E0122738 2442A674 */ addiu $v0, $v0, %lo(D_8009A674) +/* 40CCDC E012273C AFBE0080 */ sw $fp, 0x80($sp) +/* 40CCE0 E0122740 0040F02D */ daddu $fp, $v0, $zero +/* 40CCE4 E0122744 3C028007 */ lui $v0, %hi(D_800741F0) +/* 40CCE8 E0122748 244241F0 */ addiu $v0, $v0, %lo(D_800741F0) +/* 40CCEC E012274C AFB50074 */ sw $s5, 0x74($sp) +/* 40CCF0 E0122750 0040A82D */ daddu $s5, $v0, $zero +/* 40CCF4 E0122754 3C02800A */ lui $v0, %hi(D_8009A66C) +/* 40CCF8 E0122758 2442A66C */ addiu $v0, $v0, %lo(D_8009A66C) +/* 40CCFC E012275C AFB3006C */ sw $s3, 0x6c($sp) +/* 40CD00 E0122760 0040982D */ daddu $s3, $v0, $zero +/* 40CD04 E0122764 AFBF0084 */ sw $ra, 0x84($sp) +/* 40CD08 E0122768 AFB7007C */ sw $s7, 0x7c($sp) +/* 40CD0C E012276C AFB60078 */ sw $s6, 0x78($sp) +/* 40CD10 E0122770 AFB20068 */ sw $s2, 0x68($sp) +/* 40CD14 E0122774 AFB10064 */ sw $s1, 0x64($sp) +/* 40CD18 E0122778 F7B40088 */ sdc1 $f20, 0x88($sp) +/* 40CD1C E012277C 8C460000 */ lw $a2, ($v0) +/* 40CD20 E0122780 3C02E700 */ lui $v0, 0xe700 +/* 40CD24 E0122784 44800000 */ mtc1 $zero, $f0 +/* 40CD28 E0122788 8D11000C */ lw $s1, 0xc($t0) +/* 40CD2C E012278C 00C0182D */ daddu $v1, $a2, $zero +/* 40CD30 E0122790 8E370004 */ lw $s7, 4($s1) +/* 40CD34 E0122794 24C60008 */ addiu $a2, $a2, 8 +/* 40CD38 E0122798 AC620000 */ sw $v0, ($v1) +/* 40CD3C E012279C AC600004 */ sw $zero, 4($v1) +/* 40CD40 E01227A0 ACC90000 */ sw $t1, ($a2) +/* 40CD44 E01227A4 8D020010 */ lw $v0, 0x10($t0) +/* 40CD48 E01227A8 3C088000 */ lui $t0, 0x8000 +/* 40CD4C E01227AC 44050000 */ mfc1 $a1, $f0 +/* 40CD50 E01227B0 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 40CD54 E01227B4 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 40CD58 E01227B8 8C42001C */ lw $v0, 0x1c($v0) +/* 40CD5C E01227BC 4485A000 */ mtc1 $a1, $f20 +/* 40CD60 E01227C0 00481021 */ addu $v0, $v0, $t0 +/* 40CD64 E01227C4 ACC20004 */ sw $v0, 4($a2) +/* 40CD68 E01227C8 00031080 */ sll $v0, $v1, 2 +/* 40CD6C E01227CC 00431021 */ addu $v0, $v0, $v1 +/* 40CD70 E01227D0 00021080 */ sll $v0, $v0, 2 +/* 40CD74 E01227D4 00431023 */ subu $v0, $v0, $v1 +/* 40CD78 E01227D8 000218C0 */ sll $v1, $v0, 3 +/* 40CD7C E01227DC 00431021 */ addu $v0, $v0, $v1 +/* 40CD80 E01227E0 000210C0 */ sll $v0, $v0, 3 +/* 40CD84 E01227E4 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 40CD88 E01227E8 00220821 */ addu $at, $at, $v0 +/* 40CD8C E01227EC C4221DEC */ lwc1 $f2, %lo(D_800B1DEC)($at) +/* 40CD90 E01227F0 C620003C */ lwc1 $f0, 0x3c($s1) +/* 40CD94 E01227F4 3C160001 */ lui $s6, 1 +/* 40CD98 E01227F8 E7A00010 */ swc1 $f0, 0x10($sp) +/* 40CD9C E01227FC C6200008 */ lwc1 $f0, 8($s1) +/* 40CDA0 E0122800 36D61630 */ ori $s6, $s6, 0x1630 +/* 40CDA4 E0122804 AE660000 */ sw $a2, ($s3) +/* 40CDA8 E0122808 24C60008 */ addiu $a2, $a2, 8 +/* 40CDAC E012280C E7A00014 */ swc1 $f0, 0x14($sp) +/* 40CDB0 E0122810 C620000C */ lwc1 $f0, 0xc($s1) +/* 40CDB4 E0122814 46001087 */ neg.s $f2, $f2 +/* 40CDB8 E0122818 AE660000 */ sw $a2, ($s3) +/* 40CDBC E012281C 44061000 */ mfc1 $a2, $f2 +/* 40CDC0 E0122820 0220902D */ daddu $s2, $s1, $zero +/* 40CDC4 E0122824 E7A00018 */ swc1 $f0, 0x18($sp) +/* 40CDC8 E0122828 C6200010 */ lwc1 $f0, 0x10($s1) +/* 40CDCC E012282C 00A0382D */ daddu $a3, $a1, $zero +/* 40CDD0 E0122830 0C080180 */ jal func_E0200600 +/* 40CDD4 E0122834 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 40CDD8 E0122838 27A40020 */ addiu $a0, $sp, 0x20 +/* 40CDDC E012283C 96A50000 */ lhu $a1, ($s5) +/* 40CDE0 E0122840 8FC20000 */ lw $v0, ($fp) +/* 40CDE4 E0122844 00052980 */ sll $a1, $a1, 6 +/* 40CDE8 E0122848 00B02821 */ addu $a1, $a1, $s0 +/* 40CDEC E012284C 0C080118 */ jal func_E0200460 +/* 40CDF0 E0122850 00452821 */ addu $a1, $v0, $a1 +/* 40CDF4 E0122854 3C03DA38 */ lui $v1, 0xda38 +/* 40CDF8 E0122858 34630002 */ ori $v1, $v1, 2 +/* 40CDFC E012285C 8E650000 */ lw $a1, ($s3) +/* 40CE00 E0122860 96A20000 */ lhu $v0, ($s5) +/* 40CE04 E0122864 00A0202D */ daddu $a0, $a1, $zero +/* 40CE08 E0122868 24A50008 */ addiu $a1, $a1, 8 +/* 40CE0C E012286C AE650000 */ sw $a1, ($s3) +/* 40CE10 E0122870 AC830000 */ sw $v1, ($a0) +/* 40CE14 E0122874 24430001 */ addiu $v1, $v0, 1 +/* 40CE18 E0122878 3042FFFF */ andi $v0, $v0, 0xffff +/* 40CE1C E012287C 00021180 */ sll $v0, $v0, 6 +/* 40CE20 E0122880 A6A30000 */ sh $v1, ($s5) +/* 40CE24 E0122884 8FC30000 */ lw $v1, ($fp) +/* 40CE28 E0122888 00501021 */ addu $v0, $v0, $s0 +/* 40CE2C E012288C 00621821 */ addu $v1, $v1, $v0 +/* 40CE30 E0122890 24A20008 */ addiu $v0, $a1, 8 +/* 40CE34 E0122894 AC830004 */ sw $v1, 4($a0) +/* 40CE38 E0122898 AE620000 */ sw $v0, ($s3) +/* 40CE3C E012289C 3C02DE00 */ lui $v0, 0xde00 +/* 40CE40 E01228A0 ACA20000 */ sw $v0, ($a1) +/* 40CE44 E01228A4 24A20010 */ addiu $v0, $a1, 0x10 +/* 40CE48 E01228A8 AE620000 */ sw $v0, ($s3) +/* 40CE4C E01228AC 3C03E012 */ lui $v1, %hi(D_E0122BA4) +/* 40CE50 E01228B0 8C632BA4 */ lw $v1, %lo(D_E0122BA4)($v1) +/* 40CE54 E01228B4 3C02FB00 */ lui $v0, 0xfb00 +/* 40CE58 E01228B8 ACA20008 */ sw $v0, 8($a1) +/* 40CE5C E01228BC ACA30004 */ sw $v1, 4($a1) +/* 40CE60 E01228C0 9222002F */ lbu $v0, 0x2f($s1) +/* 40CE64 E01228C4 92230033 */ lbu $v1, 0x33($s1) +/* 40CE68 E01228C8 92240037 */ lbu $a0, 0x37($s1) +/* 40CE6C E01228CC 00021600 */ sll $v0, $v0, 0x18 +/* 40CE70 E01228D0 00031C00 */ sll $v1, $v1, 0x10 +/* 40CE74 E01228D4 00431025 */ or $v0, $v0, $v1 +/* 40CE78 E01228D8 00042200 */ sll $a0, $a0, 8 +/* 40CE7C E01228DC 9223003B */ lbu $v1, 0x3b($s1) +/* 40CE80 E01228E0 00441025 */ or $v0, $v0, $a0 +/* 40CE84 E01228E4 00431025 */ or $v0, $v0, $v1 +/* 40CE88 E01228E8 ACA2000C */ sw $v0, 0xc($a1) +.LE01228EC: +/* 40CE8C E01228EC 24020001 */ addiu $v0, $zero, 1 +/* 40CE90 E01228F0 16E20003 */ bne $s7, $v0, .LE0122900 +/* 40CE94 E01228F4 24020002 */ addiu $v0, $zero, 2 +/* 40CE98 E01228F8 52820047 */ beql $s4, $v0, .LE0122A18 +/* 40CE9C E01228FC 26940001 */ addiu $s4, $s4, 1 +.LE0122900: +/* 40CEA0 E0122900 C6400040 */ lwc1 $f0, 0x40($s2) +/* 40CEA4 E0122904 46140032 */ c.eq.s $f0, $f20 +/* 40CEA8 E0122908 00000000 */ nop +/* 40CEAC E012290C 45010041 */ bc1t .LE0122A14 +/* 40CEB0 E0122910 00148080 */ sll $s0, $s4, 2 +/* 40CEB4 E0122914 8E420050 */ lw $v0, 0x50($s2) +/* 40CEB8 E0122918 5040003F */ beql $v0, $zero, .LE0122A18 +/* 40CEBC E012291C 26940001 */ addiu $s4, $s4, 1 +/* 40CEC0 E0122920 4405A000 */ mfc1 $a1, $f20 +/* 40CEC4 E0122924 4406A000 */ mfc1 $a2, $f20 +/* 40CEC8 E0122928 4407A000 */ mfc1 $a3, $f20 +/* 40CECC E012292C 27A40020 */ addiu $a0, $sp, 0x20 +/* 40CED0 E0122930 E7A00010 */ swc1 $f0, 0x10($sp) +/* 40CED4 E0122934 E7B40014 */ swc1 $f20, 0x14($sp) +/* 40CED8 E0122938 E7B40018 */ swc1 $f20, 0x18($sp) +/* 40CEDC E012293C 0C080180 */ jal func_E0200600 +/* 40CEE0 E0122940 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 40CEE4 E0122944 27A40020 */ addiu $a0, $sp, 0x20 +/* 40CEE8 E0122948 96A50000 */ lhu $a1, ($s5) +/* 40CEEC E012294C 8FC20000 */ lw $v0, ($fp) +/* 40CEF0 E0122950 00052980 */ sll $a1, $a1, 6 +/* 40CEF4 E0122954 00B62821 */ addu $a1, $a1, $s6 +/* 40CEF8 E0122958 0C080118 */ jal func_E0200460 +/* 40CEFC E012295C 00452821 */ addu $a1, $v0, $a1 +/* 40CF00 E0122960 3C08D838 */ lui $t0, 0xd838 +/* 40CF04 E0122964 8E640000 */ lw $a0, ($s3) +/* 40CF08 E0122968 35080002 */ ori $t0, $t0, 2 +/* 40CF0C E012296C 0080282D */ daddu $a1, $a0, $zero +/* 40CF10 E0122970 24840008 */ addiu $a0, $a0, 8 +/* 40CF14 E0122974 AE640000 */ sw $a0, ($s3) +/* 40CF18 E0122978 96A20000 */ lhu $v0, ($s5) +/* 40CF1C E012297C 3C03DA38 */ lui $v1, 0xda38 +/* 40CF20 E0122980 ACA30000 */ sw $v1, ($a1) +/* 40CF24 E0122984 24430001 */ addiu $v1, $v0, 1 +/* 40CF28 E0122988 3042FFFF */ andi $v0, $v0, 0xffff +/* 40CF2C E012298C 00021180 */ sll $v0, $v0, 6 +/* 40CF30 E0122990 A6A30000 */ sh $v1, ($s5) +/* 40CF34 E0122994 8FC30000 */ lw $v1, ($fp) +/* 40CF38 E0122998 00561021 */ addu $v0, $v0, $s6 +/* 40CF3C E012299C 00621821 */ addu $v1, $v1, $v0 +/* 40CF40 E01229A0 24820008 */ addiu $v0, $a0, 8 +/* 40CF44 E01229A4 ACA30004 */ sw $v1, 4($a1) +/* 40CF48 E01229A8 AE620000 */ sw $v0, ($s3) +/* 40CF4C E01229AC 3C02FA00 */ lui $v0, 0xfa00 +/* 40CF50 E01229B0 AC820000 */ sw $v0, ($a0) +/* 40CF54 E01229B4 9223001F */ lbu $v1, 0x1f($s1) +/* 40CF58 E01229B8 92250023 */ lbu $a1, 0x23($s1) +/* 40CF5C E01229BC 92260027 */ lbu $a2, 0x27($s1) +/* 40CF60 E01229C0 92470053 */ lbu $a3, 0x53($s2) +/* 40CF64 E01229C4 24820010 */ addiu $v0, $a0, 0x10 +/* 40CF68 E01229C8 AE620000 */ sw $v0, ($s3) +/* 40CF6C E01229CC 3C02DE00 */ lui $v0, 0xde00 +/* 40CF70 E01229D0 AC820008 */ sw $v0, 8($a0) +/* 40CF74 E01229D4 00031E00 */ sll $v1, $v1, 0x18 +/* 40CF78 E01229D8 00052C00 */ sll $a1, $a1, 0x10 +/* 40CF7C E01229DC 00651825 */ or $v1, $v1, $a1 +/* 40CF80 E01229E0 00063200 */ sll $a2, $a2, 8 +/* 40CF84 E01229E4 00661825 */ or $v1, $v1, $a2 +/* 40CF88 E01229E8 00671825 */ or $v1, $v1, $a3 +/* 40CF8C E01229EC AC830004 */ sw $v1, 4($a0) +/* 40CF90 E01229F0 3C03E012 */ lui $v1, %hi(D_E0122B90) +/* 40CF94 E01229F4 00701821 */ addu $v1, $v1, $s0 +/* 40CF98 E01229F8 8C632B90 */ lw $v1, %lo(D_E0122B90)($v1) +/* 40CF9C E01229FC 24820018 */ addiu $v0, $a0, 0x18 +/* 40CFA0 E0122A00 AE620000 */ sw $v0, ($s3) +/* 40CFA4 E0122A04 24020040 */ addiu $v0, $zero, 0x40 +/* 40CFA8 E0122A08 AC880010 */ sw $t0, 0x10($a0) +/* 40CFAC E0122A0C AC820014 */ sw $v0, 0x14($a0) +/* 40CFB0 E0122A10 AC83000C */ sw $v1, 0xc($a0) +.LE0122A14: +/* 40CFB4 E0122A14 26940001 */ addiu $s4, $s4, 1 +.LE0122A18: +/* 40CFB8 E0122A18 2A820004 */ slti $v0, $s4, 4 +/* 40CFBC E0122A1C 1440FFB3 */ bnez $v0, .LE01228EC +/* 40CFC0 E0122A20 26520004 */ addiu $s2, $s2, 4 +/* 40CFC4 E0122A24 3C05D838 */ lui $a1, 0xd838 +/* 40CFC8 E0122A28 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 40CFCC E0122A2C 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 40CFD0 E0122A30 8C620000 */ lw $v0, ($v1) +/* 40CFD4 E0122A34 34A50002 */ ori $a1, $a1, 2 +/* 40CFD8 E0122A38 0040202D */ daddu $a0, $v0, $zero +/* 40CFDC E0122A3C 24420008 */ addiu $v0, $v0, 8 +/* 40CFE0 E0122A40 AC620000 */ sw $v0, ($v1) +/* 40CFE4 E0122A44 24020040 */ addiu $v0, $zero, 0x40 +/* 40CFE8 E0122A48 AC820004 */ sw $v0, 4($a0) +/* 40CFEC E0122A4C 26E2FFFE */ addiu $v0, $s7, -2 +/* 40CFF0 E0122A50 2C420002 */ sltiu $v0, $v0, 2 +/* 40CFF4 E0122A54 10400037 */ beqz $v0, .LE0122B34 +/* 40CFF8 E0122A58 AC850000 */ sw $a1, ($a0) +/* 40CFFC E0122A5C 8E230070 */ lw $v1, 0x70($s1) +/* 40D000 E0122A60 24020001 */ addiu $v0, $zero, 1 +/* 40D004 E0122A64 10620004 */ beq $v1, $v0, .LE0122A78 +/* 40D008 E0122A68 0000382D */ daddu $a3, $zero, $zero +/* 40D00C E0122A6C 24020064 */ addiu $v0, $zero, 0x64 +/* 40D010 E0122A70 1462000E */ bne $v1, $v0, .LE0122AAC +/* 40D014 E0122A74 24020005 */ addiu $v0, $zero, 5 +.LE0122A78: +/* 40D018 E0122A78 8E230074 */ lw $v1, 0x74($s1) +/* 40D01C E0122A7C 28620003 */ slti $v0, $v1, 3 +/* 40D020 E0122A80 14400008 */ bnez $v0, .LE0122AA4 +/* 40D024 E0122A84 2862000B */ slti $v0, $v1, 0xb +/* 40D028 E0122A88 10400006 */ beqz $v0, .LE0122AA4 +/* 40D02C E0122A8C 2462FFFE */ addiu $v0, $v1, -2 +/* 40D030 E0122A90 00021900 */ sll $v1, $v0, 4 +/* 40D034 E0122A94 00621823 */ subu $v1, $v1, $v0 +/* 40D038 E0122A98 00031840 */ sll $v1, $v1, 1 +/* 40D03C E0122A9C 240200FF */ addiu $v0, $zero, 0xff +/* 40D040 E0122AA0 00433823 */ subu $a3, $v0, $v1 +.LE0122AA4: +/* 40D044 E0122AA4 8E230070 */ lw $v1, 0x70($s1) +/* 40D048 E0122AA8 24020005 */ addiu $v0, $zero, 5 +.LE0122AAC: +/* 40D04C E0122AAC 1462000A */ bne $v1, $v0, .LE0122AD8 +/* 40D050 E0122AB0 00000000 */ nop +/* 40D054 E0122AB4 8E230074 */ lw $v1, 0x74($s1) +/* 40D058 E0122AB8 18600007 */ blez $v1, .LE0122AD8 +/* 40D05C E0122ABC 28620009 */ slti $v0, $v1, 9 +/* 40D060 E0122AC0 10400005 */ beqz $v0, .LE0122AD8 +/* 40D064 E0122AC4 00031100 */ sll $v0, $v1, 4 +/* 40D068 E0122AC8 00431023 */ subu $v0, $v0, $v1 +/* 40D06C E0122ACC 00021040 */ sll $v0, $v0, 1 +/* 40D070 E0122AD0 240300FF */ addiu $v1, $zero, 0xff +/* 40D074 E0122AD4 00623823 */ subu $a3, $v1, $v0 +.LE0122AD8: +/* 40D078 E0122AD8 18E00014 */ blez $a3, .LE0122B2C +/* 40D07C E0122ADC 3C06D0D0 */ lui $a2, 0xd0d0 +/* 40D080 E0122AE0 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 40D084 E0122AE4 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 40D088 E0122AE8 34C6D000 */ ori $a2, $a2, 0xd000 +/* 40D08C E0122AEC 8CA30000 */ lw $v1, ($a1) +/* 40D090 E0122AF0 3C02FA00 */ lui $v0, 0xfa00 +/* 40D094 E0122AF4 0060202D */ daddu $a0, $v1, $zero +/* 40D098 E0122AF8 24630008 */ addiu $v1, $v1, 8 +/* 40D09C E0122AFC ACA30000 */ sw $v1, ($a1) +/* 40D0A0 E0122B00 AC820000 */ sw $v0, ($a0) +/* 40D0A4 E0122B04 30E200FF */ andi $v0, $a3, 0xff +/* 40D0A8 E0122B08 00461025 */ or $v0, $v0, $a2 +/* 40D0AC E0122B0C AC820004 */ sw $v0, 4($a0) +/* 40D0B0 E0122B10 3C02DE00 */ lui $v0, 0xde00 +/* 40D0B4 E0122B14 AC620000 */ sw $v0, ($v1) +/* 40D0B8 E0122B18 3C04E012 */ lui $a0, %hi(D_E0122BA0) +/* 40D0BC E0122B1C 8C842BA0 */ lw $a0, %lo(D_E0122BA0)($a0) +/* 40D0C0 E0122B20 24620008 */ addiu $v0, $v1, 8 +/* 40D0C4 E0122B24 ACA20000 */ sw $v0, ($a1) +/* 40D0C8 E0122B28 AC640004 */ sw $a0, 4($v1) +.LE0122B2C: +/* 40D0CC E0122B2C 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 40D0D0 E0122B30 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +.LE0122B34: +/* 40D0D4 E0122B34 8C620000 */ lw $v0, ($v1) +/* 40D0D8 E0122B38 0040202D */ daddu $a0, $v0, $zero +/* 40D0DC E0122B3C 24420008 */ addiu $v0, $v0, 8 +/* 40D0E0 E0122B40 AC620000 */ sw $v0, ($v1) +/* 40D0E4 E0122B44 3C02E700 */ lui $v0, 0xe700 +/* 40D0E8 E0122B48 AC820000 */ sw $v0, ($a0) +/* 40D0EC E0122B4C AC800004 */ sw $zero, 4($a0) +/* 40D0F0 E0122B50 8FBF0084 */ lw $ra, 0x84($sp) +/* 40D0F4 E0122B54 8FBE0080 */ lw $fp, 0x80($sp) +/* 40D0F8 E0122B58 8FB7007C */ lw $s7, 0x7c($sp) +/* 40D0FC E0122B5C 8FB60078 */ lw $s6, 0x78($sp) +/* 40D100 E0122B60 8FB50074 */ lw $s5, 0x74($sp) +/* 40D104 E0122B64 8FB40070 */ lw $s4, 0x70($sp) +/* 40D108 E0122B68 8FB3006C */ lw $s3, 0x6c($sp) +/* 40D10C E0122B6C 8FB20068 */ lw $s2, 0x68($sp) +/* 40D110 E0122B70 8FB10064 */ lw $s1, 0x64($sp) +/* 40D114 E0122B74 8FB00060 */ lw $s0, 0x60($sp) +/* 40D118 E0122B78 D7B40088 */ ldc1 $f20, 0x88($sp) +/* 40D11C E0122B7C 03E00008 */ jr $ra +/* 40D120 E0122B80 27BD0090 */ addiu $sp, $sp, 0x90 +/* 40D124 E0122B84 00000000 */ nop +/* 40D128 E0122B88 00000000 */ nop +/* 40D12C E0122B8C 00000000 */ nop diff --git a/asm/nonmatchings/code_412730/func_E0124000.s b/asm/nonmatchings/code_412730/func_E0124000.s new file mode 100644 index 0000000000..e8eb502c2b --- /dev/null +++ b/asm/nonmatchings/code_412730/func_E0124000.s @@ -0,0 +1,202 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0124000 +/* 412730 E0124000 27BDFF90 */ addiu $sp, $sp, -0x70 +/* 412734 E0124004 F7B40050 */ sdc1 $f20, 0x50($sp) +/* 412738 E0124008 4485A000 */ mtc1 $a1, $f20 +/* 41273C E012400C F7B60058 */ sdc1 $f22, 0x58($sp) +/* 412740 E0124010 4486B000 */ mtc1 $a2, $f22 +/* 412744 E0124014 AFA40070 */ sw $a0, 0x70($sp) +/* 412748 E0124018 27A40010 */ addiu $a0, $sp, 0x10 +/* 41274C E012401C F7B80060 */ sdc1 $f24, 0x60($sp) +/* 412750 E0124020 4487C000 */ mtc1 $a3, $f24 +/* 412754 E0124024 3C02E012 */ lui $v0, %hi(D_E01242FC) +/* 412758 E0124028 244242FC */ addiu $v0, $v0, %lo(D_E01242FC) +/* 41275C E012402C AFA20018 */ sw $v0, 0x18($sp) +/* 412760 E0124030 3C02E012 */ lui $v0, %hi(D_E0124304) +/* 412764 E0124034 24424304 */ addiu $v0, $v0, %lo(D_E0124304) +/* 412768 E0124038 AFA2001C */ sw $v0, 0x1c($sp) +/* 41276C E012403C 3C02E012 */ lui $v0, %hi(D_E012448C) +/* 412770 E0124040 2442448C */ addiu $v0, $v0, %lo(D_E012448C) +/* 412774 E0124044 AFA20020 */ sw $v0, 0x20($sp) +/* 412778 E0124048 24020084 */ addiu $v0, $zero, 0x84 +/* 41277C E012404C AFBF004C */ sw $ra, 0x4c($sp) +/* 412780 E0124050 AFBE0048 */ sw $fp, 0x48($sp) +/* 412784 E0124054 AFB70044 */ sw $s7, 0x44($sp) +/* 412788 E0124058 AFB60040 */ sw $s6, 0x40($sp) +/* 41278C E012405C AFB5003C */ sw $s5, 0x3c($sp) +/* 412790 E0124060 AFB40038 */ sw $s4, 0x38($sp) +/* 412794 E0124064 AFB30034 */ sw $s3, 0x34($sp) +/* 412798 E0124068 AFB20030 */ sw $s2, 0x30($sp) +/* 41279C E012406C AFB1002C */ sw $s1, 0x2c($sp) +/* 4127A0 E0124070 AFB00028 */ sw $s0, 0x28($sp) +/* 4127A4 E0124074 F7BA0068 */ sdc1 $f26, 0x68($sp) +/* 4127A8 E0124078 AFA00010 */ sw $zero, 0x10($sp) +/* 4127AC E012407C AFA00024 */ sw $zero, 0x24($sp) +/* 4127B0 E0124080 0C080124 */ jal func_E0200490 +/* 4127B4 E0124084 AFA20014 */ sw $v0, 0x14($sp) +/* 4127B8 E0124088 2404115C */ addiu $a0, $zero, 0x115c +/* 4127BC E012408C 24170065 */ addiu $s7, $zero, 0x65 +/* 4127C0 E0124090 0040F02D */ daddu $fp, $v0, $zero +/* 4127C4 E0124094 0C08012C */ jal func_E02004B0 +/* 4127C8 E0124098 AFD70008 */ sw $s7, 8($fp) +/* 4127CC E012409C 0040882D */ daddu $s1, $v0, $zero +/* 4127D0 E01240A0 16200003 */ bnez $s1, .LE01240B0 +/* 4127D4 E01240A4 AFD1000C */ sw $s1, 0xc($fp) +.LE01240A8: +/* 4127D8 E01240A8 0804902A */ j .LE01240A8 +/* 4127DC E01240AC 00000000 */ nop +.LE01240B0: +/* 4127E0 E01240B0 24020050 */ addiu $v0, $zero, 0x50 +/* 4127E4 E01240B4 24120001 */ addiu $s2, $zero, 1 +/* 4127E8 E01240B8 E6340004 */ swc1 $f20, 4($s1) +/* 4127EC E01240BC E6360008 */ swc1 $f22, 8($s1) +/* 4127F0 E01240C0 E638000C */ swc1 $f24, 0xc($s1) +/* 4127F4 E01240C4 AE200020 */ sw $zero, 0x20($s1) +/* 4127F8 E01240C8 8FA80070 */ lw $t0, 0x70($sp) +/* 4127FC E01240CC 3C01E012 */ lui $at, %hi(D_E0124C00) +/* 412800 E01240D0 D4384C00 */ ldc1 $f24, %lo(D_E0124C00)($at) +/* 412804 E01240D4 3C01E012 */ lui $at, %hi(D_E0124C08) +/* 412808 E01240D8 D4364C08 */ ldc1 $f22, %lo(D_E0124C08)($at) +/* 41280C E01240DC 0000A82D */ daddu $s5, $zero, $zero +/* 412810 E01240E0 AE22001C */ sw $v0, 0x1c($s1) +/* 412814 E01240E4 AE280000 */ sw $t0, ($s1) +/* 412818 E01240E8 2631002C */ addiu $s1, $s1, 0x2c +/* 41281C E01240EC C7BA0084 */ lwc1 $f26, 0x84($sp) +/* 412820 E01240F0 0000982D */ daddu $s3, $zero, $zero +.LE01240F4: +/* 412824 E01240F4 2408000F */ addiu $t0, $zero, 0xf +/* 412828 E01240F8 01151023 */ subu $v0, $t0, $s5 +/* 41282C E01240FC 0002B100 */ sll $s6, $v0, 4 +/* 412830 E0124100 2414FFF0 */ addiu $s4, $zero, -0x10 +/* 412834 E0124104 26300020 */ addiu $s0, $s1, 0x20 +.LE0124108: +/* 412838 E0124108 8FA80070 */ lw $t0, 0x70($sp) +/* 41283C E012410C 02761021 */ addu $v0, $s3, $s6 +/* 412840 E0124110 00081A00 */ sll $v1, $t0, 8 +/* 412844 E0124114 00431021 */ addu $v0, $v0, $v1 +/* 412848 E0124118 3C08E012 */ lui $t0, %hi(D_E01248C0) +/* 41284C E012411C 250848C0 */ addiu $t0, $t0, %lo(D_E01248C0) +/* 412850 E0124120 00481021 */ addu $v0, $v0, $t0 +/* 412854 E0124124 80430000 */ lb $v1, ($v0) +/* 412858 E0124128 2402002E */ addiu $v0, $zero, 0x2e +/* 41285C E012412C 50620049 */ beql $v1, $v0, .LE0124254 +/* 412860 E0124130 26730001 */ addiu $s3, $s3, 1 +/* 412864 E0124134 0C080138 */ jal func_E02004E0 +/* 412868 E0124138 24040014 */ addiu $a0, $zero, 0x14 +/* 41286C E012413C 2442FFF6 */ addiu $v0, $v0, -0xa +/* 412870 E0124140 44820000 */ mtc1 $v0, $f0 +/* 412874 E0124144 00000000 */ nop +/* 412878 E0124148 46800021 */ cvt.d.w $f0, $f0 +/* 41287C E012414C 46380002 */ mul.d $f0, $f0, $f24 +/* 412880 E0124150 00000000 */ nop +/* 412884 E0124154 4494A000 */ mtc1 $s4, $f20 +/* 412888 E0124158 00000000 */ nop +/* 41288C E012415C 4680A521 */ cvt.d.w $f20, $f20 +/* 412890 E0124160 4620A500 */ add.d $f20, $f20, $f0 +/* 412894 E0124164 4600D306 */ mov.s $f12, $f26 +/* 412898 E0124168 0C080144 */ jal func_E0200510 +/* 41289C E012416C 4620A520 */ cvt.s.d $f20, $f20 +/* 4128A0 E0124170 4600A002 */ mul.s $f0, $f20, $f0 +/* 4128A4 E0124174 00000000 */ nop +/* 4128A8 E0124178 24040014 */ addiu $a0, $zero, 0x14 +/* 4128AC E012417C 0C080138 */ jal func_E02004E0 +/* 4128B0 E0124180 E600FFE4 */ swc1 $f0, -0x1c($s0) +/* 4128B4 E0124184 2442FFF6 */ addiu $v0, $v0, -0xa +/* 4128B8 E0124188 44821000 */ mtc1 $v0, $f2 +/* 4128BC E012418C 00000000 */ nop +/* 4128C0 E0124190 468010A1 */ cvt.d.w $f2, $f2 +/* 4128C4 E0124194 46381082 */ mul.d $f2, $f2, $f24 +/* 4128C8 E0124198 00000000 */ nop +/* 4128CC E012419C 00151040 */ sll $v0, $s5, 1 +/* 4128D0 E01241A0 44820000 */ mtc1 $v0, $f0 +/* 4128D4 E01241A4 00000000 */ nop +/* 4128D8 E01241A8 46800021 */ cvt.d.w $f0, $f0 +/* 4128DC E01241AC 46220000 */ add.d $f0, $f0, $f2 +/* 4128E0 E01241B0 4600D306 */ mov.s $f12, $f26 +/* 4128E4 E01241B4 46200020 */ cvt.s.d $f0, $f0 +/* 4128E8 E01241B8 0C080140 */ jal func_E0200500 +/* 4128EC E01241BC E600FFE8 */ swc1 $f0, -0x18($s0) +/* 4128F0 E01241C0 C602FFE4 */ lwc1 $f2, -0x1c($s0) +/* 4128F4 E01241C4 460010A1 */ cvt.d.s $f2, $f2 +/* 4128F8 E01241C8 46361082 */ mul.d $f2, $f2, $f22 +/* 4128FC E01241CC 00000000 */ nop +/* 412900 E01241D0 4600A502 */ mul.s $f20, $f20, $f0 +/* 412904 E01241D4 00000000 */ nop +/* 412908 E01241D8 C600FFE8 */ lwc1 $f0, -0x18($s0) +/* 41290C E01241DC 46000021 */ cvt.d.s $f0, $f0 +/* 412910 E01241E0 46360002 */ mul.d $f0, $f0, $f22 +/* 412914 E01241E4 00000000 */ nop +/* 412918 E01241E8 2404000A */ addiu $a0, $zero, 0xa +/* 41291C E01241EC E614FFEC */ swc1 $f20, -0x14($s0) +/* 412920 E01241F0 462010A0 */ cvt.s.d $f2, $f2 +/* 412924 E01241F4 46200020 */ cvt.s.d $f0, $f0 +/* 412928 E01241F8 E602FFF0 */ swc1 $f2, -0x10($s0) +/* 41292C E01241FC 0C080138 */ jal func_E02004E0 +/* 412930 E0124200 E600FFF4 */ swc1 $f0, -0xc($s0) +/* 412934 E0124204 3C01E012 */ lui $at, %hi(D_E0124C10) +/* 412938 E0124208 D4224C10 */ ldc1 $f2, %lo(D_E0124C10)($at) +/* 41293C E012420C 44820000 */ mtc1 $v0, $f0 +/* 412940 E0124210 00000000 */ nop +/* 412944 E0124214 46800021 */ cvt.d.w $f0, $f0 +/* 412948 E0124218 46220002 */ mul.d $f0, $f0, $f2 +/* 41294C E012421C 00000000 */ nop +/* 412950 E0124220 26520001 */ addiu $s2, $s2, 1 +/* 412954 E0124224 2631002C */ addiu $s1, $s1, 0x2c +/* 412958 E0124228 24040007 */ addiu $a0, $zero, 7 +/* 41295C E012422C 46200020 */ cvt.s.d $f0, $f0 +/* 412960 E0124230 0C080138 */ jal func_E02004E0 +/* 412964 E0124234 E600FFF8 */ swc1 $f0, -8($s0) +/* 412968 E0124238 2442001E */ addiu $v0, $v0, 0x1e +/* 41296C E012423C AE02FFFC */ sw $v0, -4($s0) +/* 412970 E0124240 AE000000 */ sw $zero, ($s0) +/* 412974 E0124244 0257102A */ slt $v0, $s2, $s7 +/* 412978 E0124248 1040001B */ beqz $v0, .LE01242B8 +/* 41297C E012424C 2610002C */ addiu $s0, $s0, 0x2c +/* 412980 E0124250 26730001 */ addiu $s3, $s3, 1 +.LE0124254: +/* 412984 E0124254 2A620010 */ slti $v0, $s3, 0x10 +/* 412988 E0124258 1440FFAB */ bnez $v0, .LE0124108 +/* 41298C E012425C 26940002 */ addiu $s4, $s4, 2 +/* 412990 E0124260 0257102A */ slt $v0, $s2, $s7 +/* 412994 E0124264 10400014 */ beqz $v0, .LE01242B8 +/* 412998 E0124268 26B50001 */ addiu $s5, $s5, 1 +/* 41299C E012426C 2AA20010 */ slti $v0, $s5, 0x10 +/* 4129A0 E0124270 5440FFA0 */ bnel $v0, $zero, .LE01240F4 +/* 4129A4 E0124274 0000982D */ daddu $s3, $zero, $zero +/* 4129A8 E0124278 44800000 */ mtc1 $zero, $f0 +/* 4129AC E012427C 2404FFFF */ addiu $a0, $zero, -1 +/* 4129B0 E0124280 26230020 */ addiu $v1, $s1, 0x20 +.LE0124284: +/* 4129B4 E0124284 26520001 */ addiu $s2, $s2, 1 +/* 4129B8 E0124288 E4600004 */ swc1 $f0, 4($v1) +/* 4129BC E012428C E460FFF8 */ swc1 $f0, -8($v1) +/* 4129C0 E0124290 E460FFF4 */ swc1 $f0, -0xc($v1) +/* 4129C4 E0124294 E460FFF0 */ swc1 $f0, -0x10($v1) +/* 4129C8 E0124298 E460FFEC */ swc1 $f0, -0x14($v1) +/* 4129CC E012429C E460FFE8 */ swc1 $f0, -0x18($v1) +/* 4129D0 E01242A0 E460FFE4 */ swc1 $f0, -0x1c($v1) +/* 4129D4 E01242A4 AC64FFFC */ sw $a0, -4($v1) +/* 4129D8 E01242A8 AC600000 */ sw $zero, ($v1) +/* 4129DC E01242AC 0257102A */ slt $v0, $s2, $s7 +/* 4129E0 E01242B0 1440FFF4 */ bnez $v0, .LE0124284 +/* 4129E4 E01242B4 2463002C */ addiu $v1, $v1, 0x2c +.LE01242B8: +/* 4129E8 E01242B8 03C0102D */ daddu $v0, $fp, $zero +/* 4129EC E01242BC 8FBF004C */ lw $ra, 0x4c($sp) +/* 4129F0 E01242C0 8FBE0048 */ lw $fp, 0x48($sp) +/* 4129F4 E01242C4 8FB70044 */ lw $s7, 0x44($sp) +/* 4129F8 E01242C8 8FB60040 */ lw $s6, 0x40($sp) +/* 4129FC E01242CC 8FB5003C */ lw $s5, 0x3c($sp) +/* 412A00 E01242D0 8FB40038 */ lw $s4, 0x38($sp) +/* 412A04 E01242D4 8FB30034 */ lw $s3, 0x34($sp) +/* 412A08 E01242D8 8FB20030 */ lw $s2, 0x30($sp) +/* 412A0C E01242DC 8FB1002C */ lw $s1, 0x2c($sp) +/* 412A10 E01242E0 8FB00028 */ lw $s0, 0x28($sp) +/* 412A14 E01242E4 D7BA0068 */ ldc1 $f26, 0x68($sp) +/* 412A18 E01242E8 D7B80060 */ ldc1 $f24, 0x60($sp) +/* 412A1C E01242EC D7B60058 */ ldc1 $f22, 0x58($sp) +/* 412A20 E01242F0 D7B40050 */ ldc1 $f20, 0x50($sp) +/* 412A24 E01242F4 03E00008 */ jr $ra +/* 412A28 E01242F8 27BD0070 */ addiu $sp, $sp, 0x70 diff --git a/asm/nonmatchings/code_412730/func_E01242FC.s b/asm/nonmatchings/code_412730/func_E01242FC.s new file mode 100644 index 0000000000..1dc64f1b69 --- /dev/null +++ b/asm/nonmatchings/code_412730/func_E01242FC.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01242FC +/* 412A2C E01242FC 03E00008 */ jr $ra +/* 412A30 E0124300 00000000 */ nop diff --git a/asm/nonmatchings/code_412730/func_E0124304.s b/asm/nonmatchings/code_412730/func_E0124304.s new file mode 100644 index 0000000000..32f9f2714a --- /dev/null +++ b/asm/nonmatchings/code_412730/func_E0124304.s @@ -0,0 +1,110 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0124304 +/* 412A34 E0124304 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 412A38 E0124308 0000302D */ daddu $a2, $zero, $zero +/* 412A3C E012430C AFBF0010 */ sw $ra, 0x10($sp) +/* 412A40 E0124310 8C85000C */ lw $a1, 0xc($a0) +/* 412A44 E0124314 00C0402D */ daddu $t0, $a2, $zero +/* 412A48 E0124318 8CA20020 */ lw $v0, 0x20($a1) +/* 412A4C E012431C 8CA3001C */ lw $v1, 0x1c($a1) +/* 412A50 E0124320 24420001 */ addiu $v0, $v0, 1 +/* 412A54 E0124324 0040382D */ daddu $a3, $v0, $zero +/* 412A58 E0124328 2463FFFF */ addiu $v1, $v1, -1 +/* 412A5C E012432C ACA3001C */ sw $v1, 0x1c($a1) +/* 412A60 E0124330 ACA70020 */ sw $a3, 0x20($a1) +/* 412A64 E0124334 8C820008 */ lw $v0, 8($a0) +/* 412A68 E0124338 2442FFFF */ addiu $v0, $v0, -1 +/* 412A6C E012433C 1840004E */ blez $v0, .LE0124478 +/* 412A70 E0124340 24A5002C */ addiu $a1, $a1, 0x2c +/* 412A74 E0124344 240AFFFF */ addiu $t2, $zero, -1 +/* 412A78 E0124348 3C09E012 */ lui $t1, %hi(D_E0124BE4) +/* 412A7C E012434C 25294BE4 */ addiu $t1, $t1, %lo(D_E0124BE4) +/* 412A80 E0124350 24A3000C */ addiu $v1, $a1, 0xc +/* 412A84 E0124354 3C01E012 */ lui $at, %hi(D_E0124C18) +/* 412A88 E0124358 D42E4C18 */ ldc1 $f14, %lo(D_E0124C18)($at) +/* 412A8C E012435C 3C01E012 */ lui $at, %hi(D_E0124C20) +/* 412A90 E0124360 D42C4C20 */ ldc1 $f12, %lo(D_E0124C20)($at) +/* 412A94 E0124364 3C01E012 */ lui $at, %hi(D_E0124C28) +/* 412A98 E0124368 D42A4C28 */ ldc1 $f10, %lo(D_E0124C28)($at) +.LE012436C: +/* 412A9C E012436C 00E61021 */ addu $v0, $a3, $a2 +/* 412AA0 E0124370 00461021 */ addu $v0, $v0, $a2 +/* 412AA4 E0124374 8C650010 */ lw $a1, 0x10($v1) +/* 412AA8 E0124378 30420007 */ andi $v0, $v0, 7 +/* 412AAC E012437C 04A10002 */ bgez $a1, .LE0124388 +/* 412AB0 E0124380 AC62001C */ sw $v0, 0x1c($v1) +/* 412AB4 E0124384 25080001 */ addiu $t0, $t0, 1 +.LE0124388: +/* 412AB8 E0124388 24A2FFFF */ addiu $v0, $a1, -1 +/* 412ABC E012438C AC620010 */ sw $v0, 0x10($v1) +/* 412AC0 E0124390 2C42001F */ sltiu $v0, $v0, 0x1f +/* 412AC4 E0124394 14400003 */ bnez $v0, .LE01243A4 +/* 412AC8 E0124398 00000000 */ nop +/* 412ACC E012439C 08049113 */ j .LE012444C +/* 412AD0 E01243A0 AC6A001C */ sw $t2, 0x1c($v1) +.LE01243A4: +/* 412AD4 E01243A4 8C650014 */ lw $a1, 0x14($v1) +/* 412AD8 E01243A8 24A20001 */ addiu $v0, $a1, 1 +/* 412ADC E01243AC 0040382D */ daddu $a3, $v0, $zero +/* 412AE0 E01243B0 28A20019 */ slti $v0, $a1, 0x19 +/* 412AE4 E01243B4 1040000D */ beqz $v0, .LE01243EC +/* 412AE8 E01243B8 AC670014 */ sw $a3, 0x14($v1) +/* 412AEC E01243BC 00A91021 */ addu $v0, $a1, $t1 +/* 412AF0 E01243C0 90420000 */ lbu $v0, ($v0) +/* 412AF4 E01243C4 44820000 */ mtc1 $v0, $f0 +/* 412AF8 E01243C8 00000000 */ nop +/* 412AFC E01243CC 46800020 */ cvt.s.w $f0, $f0 +/* 412B00 E01243D0 46000021 */ cvt.d.s $f0, $f0 +/* 412B04 E01243D4 462E0002 */ mul.d $f0, $f0, $f14 +/* 412B08 E01243D8 00000000 */ nop +/* 412B0C E01243DC 462C0002 */ mul.d $f0, $f0, $f12 +/* 412B10 E01243E0 00000000 */ nop +/* 412B14 E01243E4 08049102 */ j .LE0124408 +/* 412B18 E01243E8 46200020 */ cvt.s.d $f0, $f0 +.LE01243EC: +/* 412B1C E01243EC C4600018 */ lwc1 $f0, 0x18($v1) +/* 412B20 E01243F0 46000021 */ cvt.d.s $f0, $f0 +/* 412B24 E01243F4 46205081 */ sub.d $f2, $f10, $f0 +/* 412B28 E01243F8 462A1082 */ mul.d $f2, $f2, $f10 +/* 412B2C E01243FC 00000000 */ nop +/* 412B30 E0124400 46220000 */ add.d $f0, $f0, $f2 +/* 412B34 E0124404 46200020 */ cvt.s.d $f0, $f0 +.LE0124408: +/* 412B38 E0124408 E4600018 */ swc1 $f0, 0x18($v1) +/* 412B3C E012440C C468FFF8 */ lwc1 $f8, -8($v1) +/* 412B40 E0124410 C4600004 */ lwc1 $f0, 4($v1) +/* 412B44 E0124414 46004200 */ add.s $f8, $f8, $f0 +/* 412B48 E0124418 C4600008 */ lwc1 $f0, 8($v1) +/* 412B4C E012441C C466FFFC */ lwc1 $f6, -4($v1) +/* 412B50 E0124420 46000106 */ mov.s $f4, $f0 +/* 412B54 E0124424 46003180 */ add.s $f6, $f6, $f0 +/* 412B58 E0124428 C460000C */ lwc1 $f0, 0xc($v1) +/* 412B5C E012442C C4620004 */ lwc1 $f2, 4($v1) +/* 412B60 E0124430 46002100 */ add.s $f4, $f4, $f0 +/* 412B64 E0124434 C4600000 */ lwc1 $f0, ($v1) +/* 412B68 E0124438 E468FFF8 */ swc1 $f8, -8($v1) +/* 412B6C E012443C 46020000 */ add.s $f0, $f0, $f2 +/* 412B70 E0124440 E466FFFC */ swc1 $f6, -4($v1) +/* 412B74 E0124444 E4640008 */ swc1 $f4, 8($v1) +/* 412B78 E0124448 E4600000 */ swc1 $f0, ($v1) +.LE012444C: +/* 412B7C E012444C 24C60001 */ addiu $a2, $a2, 1 +/* 412B80 E0124450 8C820008 */ lw $v0, 8($a0) +/* 412B84 E0124454 2442FFFF */ addiu $v0, $v0, -1 +/* 412B88 E0124458 00C2102A */ slt $v0, $a2, $v0 +/* 412B8C E012445C 1440FFC3 */ bnez $v0, .LE012436C +/* 412B90 E0124460 2463002C */ addiu $v1, $v1, 0x2c +/* 412B94 E0124464 8C820008 */ lw $v0, 8($a0) +/* 412B98 E0124468 2442FFFF */ addiu $v0, $v0, -1 +/* 412B9C E012446C 0102102A */ slt $v0, $t0, $v0 +/* 412BA0 E0124470 14400003 */ bnez $v0, .LE0124480 +/* 412BA4 E0124474 00000000 */ nop +.LE0124478: +/* 412BA8 E0124478 0C080128 */ jal func_E02004A0 +/* 412BAC E012447C 00000000 */ nop +.LE0124480: +/* 412BB0 E0124480 8FBF0010 */ lw $ra, 0x10($sp) +/* 412BB4 E0124484 03E00008 */ jr $ra +/* 412BB8 E0124488 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_412730/func_E012448C.s b/asm/nonmatchings/code_412730/func_E012448C.s new file mode 100644 index 0000000000..4b59b9444d --- /dev/null +++ b/asm/nonmatchings/code_412730/func_E012448C.s @@ -0,0 +1,18 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E012448C +/* 412BBC E012448C 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 412BC0 E0124490 3C02E012 */ lui $v0, %hi(D_E01244C4) +/* 412BC4 E0124494 244244C4 */ addiu $v0, $v0, %lo(D_E01244C4) +/* 412BC8 E0124498 AFA2001C */ sw $v0, 0x1c($sp) +/* 412BCC E012449C 2402002D */ addiu $v0, $zero, 0x2d +/* 412BD0 E01244A0 AFA40018 */ sw $a0, 0x18($sp) +/* 412BD4 E01244A4 27A40010 */ addiu $a0, $sp, 0x10 +/* 412BD8 E01244A8 AFBF0020 */ sw $ra, 0x20($sp) +/* 412BDC E01244AC AFA00014 */ sw $zero, 0x14($sp) +/* 412BE0 E01244B0 0C080120 */ jal func_E0200480 +/* 412BE4 E01244B4 AFA20010 */ sw $v0, 0x10($sp) +/* 412BE8 E01244B8 8FBF0020 */ lw $ra, 0x20($sp) +/* 412BEC E01244BC 03E00008 */ jr $ra +/* 412BF0 E01244C0 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_412730/func_E01244C4.s b/asm/nonmatchings/code_412730/func_E01244C4.s new file mode 100644 index 0000000000..6ab82993a9 --- /dev/null +++ b/asm/nonmatchings/code_412730/func_E01244C4.s @@ -0,0 +1,258 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01244C4 +/* 412BF4 E01244C4 27BDFEE0 */ addiu $sp, $sp, -0x120 +/* 412BF8 E01244C8 3C06DB06 */ lui $a2, 0xdb06 +/* 412BFC E01244CC 34C60024 */ ori $a2, $a2, 0x24 +/* 412C00 E01244D0 AFB000E0 */ sw $s0, 0xe0($sp) +/* 412C04 E01244D4 27B00098 */ addiu $s0, $sp, 0x98 +/* 412C08 E01244D8 AFA40120 */ sw $a0, 0x120($sp) +/* 412C0C E01244DC 0200202D */ daddu $a0, $s0, $zero +/* 412C10 E01244E0 AFB300EC */ sw $s3, 0xec($sp) +/* 412C14 E01244E4 0000982D */ daddu $s3, $zero, $zero +/* 412C18 E01244E8 AFB400F0 */ sw $s4, 0xf0($sp) +/* 412C1C E01244EC 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 412C20 E01244F0 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 412C24 E01244F4 3C02E700 */ lui $v0, 0xe700 +/* 412C28 E01244F8 AFBF0104 */ sw $ra, 0x104($sp) +/* 412C2C E01244FC AFBE0100 */ sw $fp, 0x100($sp) +/* 412C30 E0124500 AFB700FC */ sw $s7, 0xfc($sp) +/* 412C34 E0124504 AFB600F8 */ sw $s6, 0xf8($sp) +/* 412C38 E0124508 AFB500F4 */ sw $s5, 0xf4($sp) +/* 412C3C E012450C AFB200E8 */ sw $s2, 0xe8($sp) +/* 412C40 E0124510 AFB100E4 */ sw $s1, 0xe4($sp) +/* 412C44 E0124514 F7B80118 */ sdc1 $f24, 0x118($sp) +/* 412C48 E0124518 F7B60110 */ sdc1 $f22, 0x110($sp) +/* 412C4C E012451C F7B40108 */ sdc1 $f20, 0x108($sp) +/* 412C50 E0124520 8E830000 */ lw $v1, ($s4) +/* 412C54 E0124524 8FA90120 */ lw $t1, 0x120($sp) +/* 412C58 E0124528 0060282D */ daddu $a1, $v1, $zero +/* 412C5C E012452C 8D31000C */ lw $s1, 0xc($t1) +/* 412C60 E0124530 24630008 */ addiu $v1, $v1, 8 +/* 412C64 E0124534 AE830000 */ sw $v1, ($s4) +/* 412C68 E0124538 ACA20000 */ sw $v0, ($a1) +/* 412C6C E012453C 24620008 */ addiu $v0, $v1, 8 +/* 412C70 E0124540 ACA00004 */ sw $zero, 4($a1) +/* 412C74 E0124544 AE820000 */ sw $v0, ($s4) +/* 412C78 E0124548 AC660000 */ sw $a2, ($v1) +/* 412C7C E012454C 8D250010 */ lw $a1, 0x10($t1) +/* 412C80 E0124550 24620010 */ addiu $v0, $v1, 0x10 +/* 412C84 E0124554 AE820000 */ sw $v0, ($s4) +/* 412C88 E0124558 8CA5001C */ lw $a1, 0x1c($a1) +/* 412C8C E012455C 3C02DE00 */ lui $v0, 0xde00 +/* 412C90 E0124560 AC620008 */ sw $v0, 8($v1) +/* 412C94 E0124564 3C020900 */ lui $v0, 0x900 +/* 412C98 E0124568 24420F20 */ addiu $v0, $v0, 0xf20 +/* 412C9C E012456C AC62000C */ sw $v0, 0xc($v1) +/* 412CA0 E0124570 3C028000 */ lui $v0, 0x8000 +/* 412CA4 E0124574 00A22821 */ addu $a1, $a1, $v0 +/* 412CA8 E0124578 AC650004 */ sw $a1, 4($v1) +/* 412CAC E012457C 8E250004 */ lw $a1, 4($s1) +/* 412CB0 E0124580 8E260008 */ lw $a2, 8($s1) +/* 412CB4 E0124584 8E27000C */ lw $a3, 0xc($s1) +/* 412CB8 E0124588 8E220020 */ lw $v0, 0x20($s1) +/* 412CBC E012458C 2631002C */ addiu $s1, $s1, 0x2c +/* 412CC0 E0124590 2442FFFF */ addiu $v0, $v0, -1 +/* 412CC4 E0124594 00021840 */ sll $v1, $v0, 1 +/* 412CC8 E0124598 00621821 */ addu $v1, $v1, $v0 +/* 412CCC E012459C 0C080108 */ jal func_E0200420 +/* 412CD0 E01245A0 AFA300D8 */ sw $v1, 0xd8($sp) +/* 412CD4 E01245A4 27B20058 */ addiu $s2, $sp, 0x58 +/* 412CD8 E01245A8 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 412CDC E01245AC 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 412CE0 E01245B0 44800000 */ mtc1 $zero, $f0 +/* 412CE4 E01245B4 00031080 */ sll $v0, $v1, 2 +/* 412CE8 E01245B8 00431021 */ addu $v0, $v0, $v1 +/* 412CEC E01245BC 00021080 */ sll $v0, $v0, 2 +/* 412CF0 E01245C0 00431023 */ subu $v0, $v0, $v1 +/* 412CF4 E01245C4 000218C0 */ sll $v1, $v0, 3 +/* 412CF8 E01245C8 00431021 */ addu $v0, $v0, $v1 +/* 412CFC E01245CC 000210C0 */ sll $v0, $v0, 3 +/* 412D00 E01245D0 44060000 */ mfc1 $a2, $f0 +/* 412D04 E01245D4 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 412D08 E01245D8 00220821 */ addu $at, $at, $v0 +/* 412D0C E01245DC C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) +/* 412D10 E01245E0 3C073F80 */ lui $a3, 0x3f80 +/* 412D14 E01245E4 46000007 */ neg.s $f0, $f0 +/* 412D18 E01245E8 44050000 */ mfc1 $a1, $f0 +/* 412D1C E01245EC 0240202D */ daddu $a0, $s2, $zero +/* 412D20 E01245F0 0C080104 */ jal func_E0200410 +/* 412D24 E01245F4 AFA60010 */ sw $a2, 0x10($sp) +/* 412D28 E01245F8 0240202D */ daddu $a0, $s2, $zero +/* 412D2C E01245FC 0200282D */ daddu $a1, $s0, $zero +/* 412D30 E0124600 0C080114 */ jal func_E0200450 +/* 412D34 E0124604 00A0302D */ daddu $a2, $a1, $zero +/* 412D38 E0124608 3C013F33 */ lui $at, 0x3f33 +/* 412D3C E012460C 34213333 */ ori $at, $at, 0x3333 +/* 412D40 E0124610 4481A000 */ mtc1 $at, $f20 +/* 412D44 E0124614 8FA90120 */ lw $t1, 0x120($sp) +/* 412D48 E0124618 3C013FB3 */ lui $at, 0x3fb3 +/* 412D4C E012461C 34213333 */ ori $at, $at, 0x3333 +/* 412D50 E0124620 4481B000 */ mtc1 $at, $f22 +/* 412D54 E0124624 8D220008 */ lw $v0, 8($t1) +/* 412D58 E0124628 2442FFFF */ addiu $v0, $v0, -1 +/* 412D5C E012462C 18400083 */ blez $v0, .LE012483C +/* 412D60 E0124630 4600A606 */ mov.s $f24, $f20 +/* 412D64 E0124634 0240B02D */ daddu $s6, $s2, $zero +/* 412D68 E0124638 3C178007 */ lui $s7, %hi(D_800741F0) +/* 412D6C E012463C 26F741F0 */ addiu $s7, $s7, %lo(D_800741F0) +/* 412D70 E0124640 3C150001 */ lui $s5, 1 +/* 412D74 E0124644 36B51630 */ ori $s5, $s5, 0x1630 +/* 412D78 E0124648 0280902D */ daddu $s2, $s4, $zero +/* 412D7C E012464C 26310024 */ addiu $s1, $s1, 0x24 +/* 412D80 E0124650 8FA900D8 */ lw $t1, 0xd8($sp) +/* 412D84 E0124654 3C1EE012 */ lui $fp, %hi(D_E0124BC0) +/* 412D88 E0124658 27DE4BC0 */ addiu $fp, $fp, %lo(D_E0124BC0) +/* 412D8C E012465C 013E8021 */ addu $s0, $t1, $fp +.LE0124660: +/* 412D90 E0124660 8E340004 */ lw $s4, 4($s1) +/* 412D94 E0124664 0680006E */ bltz $s4, .LE0124820 +/* 412D98 E0124668 00000000 */ nop +/* 412D9C E012466C 8E25FFE0 */ lw $a1, -0x20($s1) +/* 412DA0 E0124670 8E26FFE4 */ lw $a2, -0x1c($s1) +/* 412DA4 E0124674 8E27FFE8 */ lw $a3, -0x18($s1) +/* 412DA8 E0124678 0C080108 */ jal func_E0200420 +/* 412DAC E012467C 02C0202D */ daddu $a0, $s6, $zero +/* 412DB0 E0124680 02C0202D */ daddu $a0, $s6, $zero +/* 412DB4 E0124684 27A50098 */ addiu $a1, $sp, 0x98 +/* 412DB8 E0124688 C6200000 */ lwc1 $f0, ($s1) +/* 412DBC E012468C 27A60018 */ addiu $a2, $sp, 0x18 +/* 412DC0 E0124690 E7A00080 */ swc1 $f0, 0x80($sp) +/* 412DC4 E0124694 E7A0006C */ swc1 $f0, 0x6c($sp) +/* 412DC8 E0124698 0C080114 */ jal func_E0200450 +/* 412DCC E012469C E7A00058 */ swc1 $f0, 0x58($sp) +/* 412DD0 E01246A0 27A40018 */ addiu $a0, $sp, 0x18 +/* 412DD4 E01246A4 96E50000 */ lhu $a1, ($s7) +/* 412DD8 E01246A8 3C02800A */ lui $v0, %hi(D_8009A674) +/* 412DDC E01246AC 8C42A674 */ lw $v0, %lo(D_8009A674)($v0) +/* 412DE0 E01246B0 00052980 */ sll $a1, $a1, 6 +/* 412DE4 E01246B4 00B52821 */ addu $a1, $a1, $s5 +/* 412DE8 E01246B8 0C080118 */ jal func_E0200460 +/* 412DEC E01246BC 00452821 */ addu $a1, $v0, $a1 +/* 412DF0 E01246C0 27C20024 */ addiu $v0, $fp, 0x24 +/* 412DF4 E01246C4 0202102A */ slt $v0, $s0, $v0 +/* 412DF8 E01246C8 50400001 */ beql $v0, $zero, .LE01246D0 +/* 412DFC E01246CC 03C0802D */ daddu $s0, $fp, $zero +.LE01246D0: +/* 412E00 E01246D0 92020000 */ lbu $v0, ($s0) +/* 412E04 E01246D4 44822000 */ mtc1 $v0, $f4 +/* 412E08 E01246D8 00000000 */ nop +/* 412E0C E01246DC 46802120 */ cvt.s.w $f4, $f4 +/* 412E10 E01246E0 46162102 */ mul.s $f4, $f4, $f22 +/* 412E14 E01246E4 00000000 */ nop +/* 412E18 E01246E8 26100001 */ addiu $s0, $s0, 1 +/* 412E1C E01246EC 92020000 */ lbu $v0, ($s0) +/* 412E20 E01246F0 44821000 */ mtc1 $v0, $f2 +/* 412E24 E01246F4 00000000 */ nop +/* 412E28 E01246F8 468010A0 */ cvt.s.w $f2, $f2 +/* 412E2C E01246FC 46181082 */ mul.s $f2, $f2, $f24 +/* 412E30 E0124700 00000000 */ nop +/* 412E34 E0124704 26100001 */ addiu $s0, $s0, 1 +/* 412E38 E0124708 92020000 */ lbu $v0, ($s0) +/* 412E3C E012470C 44820000 */ mtc1 $v0, $f0 +/* 412E40 E0124710 00000000 */ nop +/* 412E44 E0124714 46800020 */ cvt.s.w $f0, $f0 +/* 412E48 E0124718 46140002 */ mul.s $f0, $f0, $f20 +/* 412E4C E012471C 00000000 */ nop +/* 412E50 E0124720 4600218D */ trunc.w.s $f6, $f4 +/* 412E54 E0124724 44033000 */ mfc1 $v1, $f6 +/* 412E58 E0124728 00000000 */ nop +/* 412E5C E012472C 28620100 */ slti $v0, $v1, 0x100 +/* 412E60 E0124730 4600118D */ trunc.w.s $f6, $f2 +/* 412E64 E0124734 44073000 */ mfc1 $a3, $f6 +/* 412E68 E0124738 4600018D */ trunc.w.s $f6, $f0 +/* 412E6C E012473C 44083000 */ mfc1 $t0, $f6 +/* 412E70 E0124740 14400002 */ bnez $v0, .LE012474C +/* 412E74 E0124744 26100001 */ addiu $s0, $s0, 1 +/* 412E78 E0124748 240300FF */ addiu $v1, $zero, 0xff +.LE012474C: +/* 412E7C E012474C 28E20100 */ slti $v0, $a3, 0x100 +/* 412E80 E0124750 50400001 */ beql $v0, $zero, .LE0124758 +/* 412E84 E0124754 240700FF */ addiu $a3, $zero, 0xff +.LE0124758: +/* 412E88 E0124758 29020100 */ slti $v0, $t0, 0x100 +/* 412E8C E012475C 50400001 */ beql $v0, $zero, .LE0124764 +/* 412E90 E0124760 240800FF */ addiu $t0, $zero, 0xff +.LE0124764: +/* 412E94 E0124764 3C06D838 */ lui $a2, 0xd838 +/* 412E98 E0124768 34C60002 */ ori $a2, $a2, 2 +/* 412E9C E012476C 3C02FA00 */ lui $v0, 0xfa00 +/* 412EA0 E0124770 00031E00 */ sll $v1, $v1, 0x18 +/* 412EA4 E0124774 8E440000 */ lw $a0, ($s2) +/* 412EA8 E0124778 3C09E012 */ lui $t1, %hi(D_E01248A0) +/* 412EAC E012477C 252948A0 */ addiu $t1, $t1, %lo(D_E01248A0) +/* 412EB0 E0124780 0080282D */ daddu $a1, $a0, $zero +/* 412EB4 E0124784 24840008 */ addiu $a0, $a0, 8 +/* 412EB8 E0124788 AE440000 */ sw $a0, ($s2) +/* 412EBC E012478C ACA20000 */ sw $v0, ($a1) +/* 412EC0 E0124790 30E200FF */ andi $v0, $a3, 0xff +/* 412EC4 E0124794 00021400 */ sll $v0, $v0, 0x10 +/* 412EC8 E0124798 00621825 */ or $v1, $v1, $v0 +/* 412ECC E012479C 310200FF */ andi $v0, $t0, 0xff +/* 412ED0 E01247A0 00021200 */ sll $v0, $v0, 8 +/* 412ED4 E01247A4 00621825 */ or $v1, $v1, $v0 +/* 412ED8 E01247A8 346300FF */ ori $v1, $v1, 0xff +/* 412EDC E01247AC 24820008 */ addiu $v0, $a0, 8 +/* 412EE0 E01247B0 ACA30004 */ sw $v1, 4($a1) +/* 412EE4 E01247B4 AE420000 */ sw $v0, ($s2) +/* 412EE8 E01247B8 96E20000 */ lhu $v0, ($s7) +/* 412EEC E01247BC 3C03DA38 */ lui $v1, 0xda38 +/* 412EF0 E01247C0 AC830000 */ sw $v1, ($a0) +/* 412EF4 E01247C4 24430001 */ addiu $v1, $v0, 1 +/* 412EF8 E01247C8 3042FFFF */ andi $v0, $v0, 0xffff +/* 412EFC E01247CC 00021180 */ sll $v0, $v0, 6 +/* 412F00 E01247D0 A6E30000 */ sh $v1, ($s7) +/* 412F04 E01247D4 3C03800A */ lui $v1, %hi(D_8009A674) +/* 412F08 E01247D8 8C63A674 */ lw $v1, %lo(D_8009A674)($v1) +/* 412F0C E01247DC 00551021 */ addu $v0, $v0, $s5 +/* 412F10 E01247E0 00621821 */ addu $v1, $v1, $v0 +/* 412F14 E01247E4 24820010 */ addiu $v0, $a0, 0x10 +/* 412F18 E01247E8 AC830004 */ sw $v1, 4($a0) +/* 412F1C E01247EC AE420000 */ sw $v0, ($s2) +/* 412F20 E01247F0 3C02DE00 */ lui $v0, 0xde00 +/* 412F24 E01247F4 AC820008 */ sw $v0, 8($a0) +/* 412F28 E01247F8 32820007 */ andi $v0, $s4, 7 +/* 412F2C E01247FC 00021080 */ sll $v0, $v0, 2 +/* 412F30 E0124800 00491021 */ addu $v0, $v0, $t1 +/* 412F34 E0124804 8C430000 */ lw $v1, ($v0) +/* 412F38 E0124808 24820018 */ addiu $v0, $a0, 0x18 +/* 412F3C E012480C AE420000 */ sw $v0, ($s2) +/* 412F40 E0124810 24020040 */ addiu $v0, $zero, 0x40 +/* 412F44 E0124814 AC860010 */ sw $a2, 0x10($a0) +/* 412F48 E0124818 AC820014 */ sw $v0, 0x14($a0) +/* 412F4C E012481C AC83000C */ sw $v1, 0xc($a0) +.LE0124820: +/* 412F50 E0124820 8FA90120 */ lw $t1, 0x120($sp) +/* 412F54 E0124824 26730001 */ addiu $s3, $s3, 1 +/* 412F58 E0124828 8D220008 */ lw $v0, 8($t1) +/* 412F5C E012482C 2442FFFF */ addiu $v0, $v0, -1 +/* 412F60 E0124830 0262102A */ slt $v0, $s3, $v0 +/* 412F64 E0124834 1440FF8A */ bnez $v0, .LE0124660 +/* 412F68 E0124838 2631002C */ addiu $s1, $s1, 0x2c +.LE012483C: +/* 412F6C E012483C 3C03800A */ lui $v1, %hi(D_8009A66C) +/* 412F70 E0124840 2463A66C */ addiu $v1, $v1, %lo(D_8009A66C) +/* 412F74 E0124844 8C620000 */ lw $v0, ($v1) +/* 412F78 E0124848 0040202D */ daddu $a0, $v0, $zero +/* 412F7C E012484C 24420008 */ addiu $v0, $v0, 8 +/* 412F80 E0124850 AC620000 */ sw $v0, ($v1) +/* 412F84 E0124854 3C02E700 */ lui $v0, 0xe700 +/* 412F88 E0124858 AC820000 */ sw $v0, ($a0) +/* 412F8C E012485C AC800004 */ sw $zero, 4($a0) +/* 412F90 E0124860 8FBF0104 */ lw $ra, 0x104($sp) +/* 412F94 E0124864 8FBE0100 */ lw $fp, 0x100($sp) +/* 412F98 E0124868 8FB700FC */ lw $s7, 0xfc($sp) +/* 412F9C E012486C 8FB600F8 */ lw $s6, 0xf8($sp) +/* 412FA0 E0124870 8FB500F4 */ lw $s5, 0xf4($sp) +/* 412FA4 E0124874 8FB400F0 */ lw $s4, 0xf0($sp) +/* 412FA8 E0124878 8FB300EC */ lw $s3, 0xec($sp) +/* 412FAC E012487C 8FB200E8 */ lw $s2, 0xe8($sp) +/* 412FB0 E0124880 8FB100E4 */ lw $s1, 0xe4($sp) +/* 412FB4 E0124884 8FB000E0 */ lw $s0, 0xe0($sp) +/* 412FB8 E0124888 D7B80118 */ ldc1 $f24, 0x118($sp) +/* 412FBC E012488C D7B60110 */ ldc1 $f22, 0x110($sp) +/* 412FC0 E0124890 D7B40108 */ ldc1 $f20, 0x108($sp) +/* 412FC4 E0124894 03E00008 */ jr $ra +/* 412FC8 E0124898 27BD0120 */ addiu $sp, $sp, 0x120 +/* 412FCC E012489C 00000000 */ nop diff --git a/asm/nonmatchings/code_413360/func_E0126000.s b/asm/nonmatchings/code_413360/func_E0126000.s new file mode 100644 index 0000000000..1c392e906c --- /dev/null +++ b/asm/nonmatchings/code_413360/func_E0126000.s @@ -0,0 +1,83 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0126000 +/* 413360 E0126000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 413364 E0126004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 413368 E0126008 4485A000 */ mtc1 $a1, $f20 +/* 41336C E012600C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 413370 E0126010 4486B000 */ mtc1 $a2, $f22 +/* 413374 E0126014 AFB20030 */ sw $s2, 0x30($sp) +/* 413378 E0126018 0080902D */ daddu $s2, $a0, $zero +/* 41337C E012601C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 413380 E0126020 4487C000 */ mtc1 $a3, $f24 +/* 413384 E0126024 27A40010 */ addiu $a0, $sp, 0x10 +/* 413388 E0126028 AFB1002C */ sw $s1, 0x2c($sp) +/* 41338C E012602C 8FB10064 */ lw $s1, 0x64($sp) +/* 413390 E0126030 3C02E012 */ lui $v0, %hi(D_E012612C) +/* 413394 E0126034 2442612C */ addiu $v0, $v0, %lo(D_E012612C) +/* 413398 E0126038 AFA20018 */ sw $v0, 0x18($sp) +/* 41339C E012603C 3C02E012 */ lui $v0, %hi(D_E0126134) +/* 4133A0 E0126040 24426134 */ addiu $v0, $v0, %lo(D_E0126134) +/* 4133A4 E0126044 AFA2001C */ sw $v0, 0x1c($sp) +/* 4133A8 E0126048 3C02E012 */ lui $v0, %hi(D_E01264A4) +/* 4133AC E012604C 244264A4 */ addiu $v0, $v0, %lo(D_E01264A4) +/* 4133B0 E0126050 AFA20020 */ sw $v0, 0x20($sp) +/* 4133B4 E0126054 24020085 */ addiu $v0, $zero, 0x85 +/* 4133B8 E0126058 AFBF0034 */ sw $ra, 0x34($sp) +/* 4133BC E012605C AFB00028 */ sw $s0, 0x28($sp) +/* 4133C0 E0126060 AFA00010 */ sw $zero, 0x10($sp) +/* 4133C4 E0126064 AFA00024 */ sw $zero, 0x24($sp) +/* 4133C8 E0126068 0C080124 */ jal func_E0200490 +/* 4133CC E012606C AFA20014 */ sw $v0, 0x14($sp) +/* 4133D0 E0126070 24040058 */ addiu $a0, $zero, 0x58 +/* 4133D4 E0126074 24030001 */ addiu $v1, $zero, 1 +/* 4133D8 E0126078 0040802D */ daddu $s0, $v0, $zero +/* 4133DC E012607C 0C08012C */ jal func_E02004B0 +/* 4133E0 E0126080 AE030008 */ sw $v1, 8($s0) +/* 4133E4 E0126084 0040282D */ daddu $a1, $v0, $zero +/* 4133E8 E0126088 14A00003 */ bnez $a1, .LE0126098 +/* 4133EC E012608C AE02000C */ sw $v0, 0xc($s0) +.LE0126090: +/* 4133F0 E0126090 08049824 */ j .LE0126090 +/* 4133F4 E0126094 00000000 */ nop +.LE0126098: +/* 4133F8 E0126098 24020001 */ addiu $v0, $zero, 1 +/* 4133FC E012609C A4A20000 */ sh $v0, ($a1) +/* 413400 E01260A0 A4B20002 */ sh $s2, 2($a1) +/* 413404 E01260A4 1E200004 */ bgtz $s1, .LE01260B8 +/* 413408 E01260A8 ACA00014 */ sw $zero, 0x14($a1) +/* 41340C E01260AC 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 413410 E01260B0 0804982F */ j .LE01260BC +/* 413414 E01260B4 ACA20010 */ sw $v0, 0x10($a1) +.LE01260B8: +/* 413418 E01260B8 ACB10010 */ sw $s1, 0x10($a1) +.LE01260BC: +/* 41341C E01260BC 0200102D */ daddu $v0, $s0, $zero +/* 413420 E01260C0 240300FF */ addiu $v1, $zero, 0xff +/* 413424 E01260C4 E4B40004 */ swc1 $f20, 4($a1) +/* 413428 E01260C8 E4B60008 */ swc1 $f22, 8($a1) +/* 41342C E01260CC E4B8000C */ swc1 $f24, 0xc($a1) +/* 413430 E01260D0 C7A00060 */ lwc1 $f0, 0x60($sp) +/* 413434 E01260D4 24040078 */ addiu $a0, $zero, 0x78 +/* 413438 E01260D8 ACA30018 */ sw $v1, 0x18($a1) +/* 41343C E01260DC ACA3001C */ sw $v1, 0x1c($a1) +/* 413440 E01260E0 ACA40020 */ sw $a0, 0x20($a1) +/* 413444 E01260E4 ACA30028 */ sw $v1, 0x28($a1) +/* 413448 E01260E8 ACA4002C */ sw $a0, 0x2c($a1) +/* 41344C E01260EC ACA00030 */ sw $zero, 0x30($a1) +/* 413450 E01260F0 ACA30034 */ sw $v1, 0x34($a1) +/* 413454 E01260F4 ACA30024 */ sw $v1, 0x24($a1) +/* 413458 E01260F8 ACA0003C */ sw $zero, 0x3c($a1) +/* 41345C E01260FC ACA00040 */ sw $zero, 0x40($a1) +/* 413460 E0126100 ACA00044 */ sw $zero, 0x44($a1) +/* 413464 E0126104 E4A00038 */ swc1 $f0, 0x38($a1) +/* 413468 E0126108 8FBF0034 */ lw $ra, 0x34($sp) +/* 41346C E012610C 8FB20030 */ lw $s2, 0x30($sp) +/* 413470 E0126110 8FB1002C */ lw $s1, 0x2c($sp) +/* 413474 E0126114 8FB00028 */ lw $s0, 0x28($sp) +/* 413478 E0126118 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 41347C E012611C D7B60040 */ ldc1 $f22, 0x40($sp) +/* 413480 E0126120 D7B40038 */ ldc1 $f20, 0x38($sp) +/* 413484 E0126124 03E00008 */ jr $ra +/* 413488 E0126128 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_413360/func_E012612C.s b/asm/nonmatchings/code_413360/func_E012612C.s new file mode 100644 index 0000000000..ed71071af7 --- /dev/null +++ b/asm/nonmatchings/code_413360/func_E012612C.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E012612C +/* 41348C E012612C 03E00008 */ jr $ra +/* 413490 E0126130 00000000 */ nop diff --git a/asm/nonmatchings/code_413360/func_E0126134.s b/asm/nonmatchings/code_413360/func_E0126134.s new file mode 100644 index 0000000000..d90af5fa29 --- /dev/null +++ b/asm/nonmatchings/code_413360/func_E0126134.s @@ -0,0 +1,234 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0126134 +/* 413494 E0126134 27BDFFC8 */ addiu $sp, $sp, -0x38 +/* 413498 E0126138 AFBF001C */ sw $ra, 0x1c($sp) +/* 41349C E012613C AFB20018 */ sw $s2, 0x18($sp) +/* 4134A0 E0126140 AFB10014 */ sw $s1, 0x14($sp) +/* 4134A4 E0126144 AFB00010 */ sw $s0, 0x10($sp) +/* 4134A8 E0126148 F7B80030 */ sdc1 $f24, 0x30($sp) +/* 4134AC E012614C F7B60028 */ sdc1 $f22, 0x28($sp) +/* 4134B0 E0126150 F7B40020 */ sdc1 $f20, 0x20($sp) +/* 4134B4 E0126154 8C830000 */ lw $v1, ($a0) +/* 4134B8 E0126158 8C90000C */ lw $s0, 0xc($a0) +/* 4134BC E012615C 30620010 */ andi $v0, $v1, 0x10 +/* 4134C0 E0126160 86060002 */ lh $a2, 2($s0) +/* 4134C4 E0126164 10400005 */ beqz $v0, .LE012617C +/* 4134C8 E0126168 2402FFEF */ addiu $v0, $zero, -0x11 +/* 4134CC E012616C 00621024 */ and $v0, $v1, $v0 +/* 4134D0 E0126170 AC820000 */ sw $v0, ($a0) +/* 4134D4 E0126174 24020010 */ addiu $v0, $zero, 0x10 +/* 4134D8 E0126178 AE020010 */ sw $v0, 0x10($s0) +.LE012617C: +/* 4134DC E012617C 8E030010 */ lw $v1, 0x10($s0) +/* 4134E0 E0126180 286203E8 */ slti $v0, $v1, 0x3e8 +/* 4134E4 E0126184 10400002 */ beqz $v0, .LE0126190 +/* 4134E8 E0126188 2462FFFF */ addiu $v0, $v1, -1 +/* 4134EC E012618C AE020010 */ sw $v0, 0x10($s0) +.LE0126190: +/* 4134F0 E0126190 8E020014 */ lw $v0, 0x14($s0) +/* 4134F4 E0126194 8E050010 */ lw $a1, 0x10($s0) +/* 4134F8 E0126198 24420001 */ addiu $v0, $v0, 1 +/* 4134FC E012619C 04A10005 */ bgez $a1, .LE01261B4 +/* 413500 E01261A0 AE020014 */ sw $v0, 0x14($s0) +/* 413504 E01261A4 0C080128 */ jal func_E02004A0 +/* 413508 E01261A8 00000000 */ nop +/* 41350C E01261AC 08049920 */ j .LE0126480 +/* 413510 E01261B0 00000000 */ nop +.LE01261B4: +/* 413514 E01261B4 0040882D */ daddu $s1, $v0, $zero +/* 413518 E01261B8 28A20010 */ slti $v0, $a1, 0x10 +/* 41351C E01261BC 1040000B */ beqz $v0, .LE01261EC +/* 413520 E01261C0 2A220010 */ slti $v0, $s1, 0x10 +/* 413524 E01261C4 8E020024 */ lw $v0, 0x24($s0) +/* 413528 E01261C8 00051900 */ sll $v1, $a1, 4 +/* 41352C E01261CC 0062102A */ slt $v0, $v1, $v0 +/* 413530 E01261D0 54400001 */ bnel $v0, $zero, .LE01261D8 +/* 413534 E01261D4 AE030024 */ sw $v1, 0x24($s0) +.LE01261D8: +/* 413538 E01261D8 8E020034 */ lw $v0, 0x34($s0) +/* 41353C E01261DC 0062102A */ slt $v0, $v1, $v0 +/* 413540 E01261E0 54400001 */ bnel $v0, $zero, .LE01261E8 +/* 413544 E01261E4 AE030034 */ sw $v1, 0x34($s0) +.LE01261E8: +/* 413548 E01261E8 2A220010 */ slti $v0, $s1, 0x10 +.LE01261EC: +/* 41354C E01261EC 1040000B */ beqz $v0, .LE012621C +/* 413550 E01261F0 00000000 */ nop +/* 413554 E01261F4 00111900 */ sll $v1, $s1, 4 +/* 413558 E01261F8 8E020024 */ lw $v0, 0x24($s0) +/* 41355C E01261FC 2463000F */ addiu $v1, $v1, 0xf +/* 413560 E0126200 0043102A */ slt $v0, $v0, $v1 +/* 413564 E0126204 54400001 */ bnel $v0, $zero, .LE012620C +/* 413568 E0126208 AE030024 */ sw $v1, 0x24($s0) +.LE012620C: +/* 41356C E012620C 8E020034 */ lw $v0, 0x34($s0) +/* 413570 E0126210 0043102A */ slt $v0, $v0, $v1 +/* 413574 E0126214 54400001 */ bnel $v0, $zero, .LE012621C +/* 413578 E0126218 AE030034 */ sw $v1, 0x34($s0) +.LE012621C: +/* 41357C E012621C C600003C */ lwc1 $f0, 0x3c($s0) +/* 413580 E0126220 C6020040 */ lwc1 $f2, 0x40($s0) +/* 413584 E0126224 C6040044 */ lwc1 $f4, 0x44($s0) +/* 413588 E0126228 C6060038 */ lwc1 $f6, 0x38($s0) +/* 41358C E012622C 24120001 */ addiu $s2, $zero, 1 +/* 413590 E0126230 E6000048 */ swc1 $f0, 0x48($s0) +/* 413594 E0126234 E602004C */ swc1 $f2, 0x4c($s0) +/* 413598 E0126238 E6040050 */ swc1 $f4, 0x50($s0) +/* 41359C E012623C 14D20086 */ bne $a2, $s2, .LE0126458 +/* 4135A0 E0126240 E6060054 */ swc1 $f6, 0x54($s0) +/* 4135A4 E0126244 3C014080 */ lui $at, 0x4080 +/* 4135A8 E0126248 44810000 */ mtc1 $at, $f0 +/* 4135AC E012624C 4491A000 */ mtc1 $s1, $f20 +/* 4135B0 E0126250 00000000 */ nop +/* 4135B4 E0126254 4680A520 */ cvt.s.w $f20, $f20 +/* 4135B8 E0126258 4600A002 */ mul.s $f0, $f20, $f0 +/* 4135BC E012625C 00000000 */ nop +/* 4135C0 E0126260 3C01E012 */ lui $at, %hi(D_E0126BD0) +/* 4135C4 E0126264 D42C6BD0 */ ldc1 $f12, %lo(D_E0126BD0)($at) +/* 4135C8 E0126268 4600A521 */ cvt.d.s $f20, $f20 +/* 4135CC E012626C 462CA302 */ mul.d $f12, $f20, $f12 +/* 4135D0 E0126270 00000000 */ nop +/* 4135D4 E0126274 3C01E012 */ lui $at, %hi(D_E0126BD8) +/* 4135D8 E0126278 D4246BD8 */ ldc1 $f4, %lo(D_E0126BD8)($at) +/* 4135DC E012627C 46000021 */ cvt.d.s $f0, $f0 +/* 4135E0 E0126280 46240102 */ mul.d $f4, $f0, $f4 +/* 4135E4 E0126284 00000000 */ nop +/* 4135E8 E0126288 3C01E012 */ lui $at, %hi(D_E0126BE0) +/* 4135EC E012628C D4226BE0 */ ldc1 $f2, %lo(D_E0126BE0)($at) +/* 4135F0 E0126290 46220002 */ mul.d $f0, $f0, $f2 +/* 4135F4 E0126294 00000000 */ nop +/* 4135F8 E0126298 00111080 */ sll $v0, $s1, 2 +/* 4135FC E012629C 44821000 */ mtc1 $v0, $f2 +/* 413600 E01262A0 00000000 */ nop +/* 413604 E01262A4 468010A0 */ cvt.s.w $f2, $f2 +/* 413608 E01262A8 240200FF */ addiu $v0, $zero, 0xff +/* 41360C E01262AC E602003C */ swc1 $f2, 0x3c($s0) +/* 413610 E01262B0 AE020024 */ sw $v0, 0x24($s0) +/* 413614 E01262B4 46206320 */ cvt.s.d $f12, $f12 +/* 413618 E01262B8 46202120 */ cvt.s.d $f4, $f4 +/* 41361C E01262BC 46200020 */ cvt.s.d $f0, $f0 +/* 413620 E01262C0 E6040040 */ swc1 $f4, 0x40($s0) +/* 413624 E01262C4 0C080140 */ jal func_E0200500 +/* 413628 E01262C8 E6000044 */ swc1 $f0, 0x44($s0) +/* 41362C E01262CC 3C01E012 */ lui $at, %hi(D_E0126BE8) +/* 413630 E01262D0 D42C6BE8 */ ldc1 $f12, %lo(D_E0126BE8)($at) +/* 413634 E01262D4 462CA302 */ mul.d $f12, $f20, $f12 +/* 413638 E01262D8 00000000 */ nop +/* 41363C E01262DC 3C0142FE */ lui $at, 0x42fe +/* 413640 E01262E0 4481C000 */ mtc1 $at, $f24 +/* 413644 E01262E4 00000000 */ nop +/* 413648 E01262E8 46180002 */ mul.s $f0, $f0, $f24 +/* 41364C E01262EC 00000000 */ nop +/* 413650 E01262F0 3C014300 */ lui $at, 0x4300 +/* 413654 E01262F4 44811000 */ mtc1 $at, $f2 +/* 413658 E01262F8 00000000 */ nop +/* 41365C E01262FC 46020000 */ add.s $f0, $f0, $f2 +/* 413660 E0126300 4600020D */ trunc.w.s $f8, $f0 +/* 413664 E0126304 E6080034 */ swc1 $f8, 0x34($s0) +/* 413668 E0126308 0C080140 */ jal func_E0200500 +/* 41366C E012630C 46206320 */ cvt.s.d $f12, $f12 +/* 413670 E0126310 3C01E012 */ lui $at, %hi(D_E0126BF0) +/* 413674 E0126314 D42C6BF0 */ ldc1 $f12, %lo(D_E0126BF0)($at) +/* 413678 E0126318 462CA302 */ mul.d $f12, $f20, $f12 +/* 41367C E012631C 00000000 */ nop +/* 413680 E0126320 46180002 */ mul.s $f0, $f0, $f24 +/* 413684 E0126324 00000000 */ nop +/* 413688 E0126328 3C014357 */ lui $at, 0x4357 +/* 41368C E012632C 4481B000 */ mtc1 $at, $f22 +/* 413690 E0126330 00000000 */ nop +/* 413694 E0126334 46160000 */ add.s $f0, $f0, $f22 +/* 413698 E0126338 4600020D */ trunc.w.s $f8, $f0 +/* 41369C E012633C E6080018 */ swc1 $f8, 0x18($s0) +/* 4136A0 E0126340 0C080140 */ jal func_E0200500 +/* 4136A4 E0126344 46206320 */ cvt.s.d $f12, $f12 +/* 4136A8 E0126348 3C01E012 */ lui $at, %hi(D_E0126BF8) +/* 4136AC E012634C D42C6BF8 */ ldc1 $f12, %lo(D_E0126BF8)($at) +/* 4136B0 E0126350 462CA302 */ mul.d $f12, $f20, $f12 +/* 4136B4 E0126354 00000000 */ nop +/* 4136B8 E0126358 46180002 */ mul.s $f0, $f0, $f24 +/* 4136BC E012635C 00000000 */ nop +/* 4136C0 E0126360 46160000 */ add.s $f0, $f0, $f22 +/* 4136C4 E0126364 4600020D */ trunc.w.s $f8, $f0 +/* 4136C8 E0126368 E608001C */ swc1 $f8, 0x1c($s0) +/* 4136CC E012636C 0C080140 */ jal func_E0200500 +/* 4136D0 E0126370 46206320 */ cvt.s.d $f12, $f12 +/* 4136D4 E0126374 3C01E012 */ lui $at, %hi(D_E0126C00) +/* 4136D8 E0126378 D42C6C00 */ ldc1 $f12, %lo(D_E0126C00)($at) +/* 4136DC E012637C 462CA302 */ mul.d $f12, $f20, $f12 +/* 4136E0 E0126380 00000000 */ nop +/* 4136E4 E0126384 46180002 */ mul.s $f0, $f0, $f24 +/* 4136E8 E0126388 00000000 */ nop +/* 4136EC E012638C 46160000 */ add.s $f0, $f0, $f22 +/* 4136F0 E0126390 4600020D */ trunc.w.s $f8, $f0 +/* 4136F4 E0126394 E6080020 */ swc1 $f8, 0x20($s0) +/* 4136F8 E0126398 0C080140 */ jal func_E0200500 +/* 4136FC E012639C 46206320 */ cvt.s.d $f12, $f12 +/* 413700 E01263A0 3C01E012 */ lui $at, %hi(D_E0126C08) +/* 413704 E01263A4 D42C6C08 */ ldc1 $f12, %lo(D_E0126C08)($at) +/* 413708 E01263A8 462CA302 */ mul.d $f12, $f20, $f12 +/* 41370C E01263AC 00000000 */ nop +/* 413710 E01263B0 46180002 */ mul.s $f0, $f0, $f24 +/* 413714 E01263B4 00000000 */ nop +/* 413718 E01263B8 3C01433C */ lui $at, 0x433c +/* 41371C E01263BC 4481B000 */ mtc1 $at, $f22 +/* 413720 E01263C0 00000000 */ nop +/* 413724 E01263C4 46160000 */ add.s $f0, $f0, $f22 +/* 413728 E01263C8 4600020D */ trunc.w.s $f8, $f0 +/* 41372C E01263CC E6080028 */ swc1 $f8, 0x28($s0) +/* 413730 E01263D0 0C080140 */ jal func_E0200500 +/* 413734 E01263D4 46206320 */ cvt.s.d $f12, $f12 +/* 413738 E01263D8 3C01E012 */ lui $at, %hi(D_E0126C10) +/* 41373C E01263DC D42C6C10 */ ldc1 $f12, %lo(D_E0126C10)($at) +/* 413740 E01263E0 462CA302 */ mul.d $f12, $f20, $f12 +/* 413744 E01263E4 00000000 */ nop +/* 413748 E01263E8 46180002 */ mul.s $f0, $f0, $f24 +/* 41374C E01263EC 00000000 */ nop +/* 413750 E01263F0 46160000 */ add.s $f0, $f0, $f22 +/* 413754 E01263F4 4600020D */ trunc.w.s $f8, $f0 +/* 413758 E01263F8 E608002C */ swc1 $f8, 0x2c($s0) +/* 41375C E01263FC 0C080140 */ jal func_E0200500 +/* 413760 E0126400 46206320 */ cvt.s.d $f12, $f12 +/* 413764 E0126404 3C01E012 */ lui $at, %hi(D_E0126C18) +/* 413768 E0126408 D4226C18 */ ldc1 $f2, %lo(D_E0126C18)($at) +/* 41376C E012640C 4622A502 */ mul.d $f20, $f20, $f2 +/* 413770 E0126410 00000000 */ nop +/* 413774 E0126414 46180002 */ mul.s $f0, $f0, $f24 +/* 413778 E0126418 00000000 */ nop +/* 41377C E012641C 46160000 */ add.s $f0, $f0, $f22 +/* 413780 E0126420 4600020D */ trunc.w.s $f8, $f0 +/* 413784 E0126424 E6080030 */ swc1 $f8, 0x30($s0) +/* 413788 E0126428 0C080140 */ jal func_E0200500 +/* 41378C E012642C 4620A320 */ cvt.s.d $f12, $f20 +/* 413790 E0126430 3C01E012 */ lui $at, %hi(D_E0126C20) +/* 413794 E0126434 D4226C20 */ ldc1 $f2, %lo(D_E0126C20)($at) +/* 413798 E0126438 46000021 */ cvt.d.s $f0, $f0 +/* 41379C E012643C 46220002 */ mul.d $f0, $f0, $f2 +/* 4137A0 E0126440 00000000 */ nop +/* 4137A4 E0126444 3C01E012 */ lui $at, %hi(D_E0126C28) +/* 4137A8 E0126448 D4226C28 */ ldc1 $f2, %lo(D_E0126C28)($at) +/* 4137AC E012644C 46220000 */ add.d $f0, $f0, $f2 +/* 4137B0 E0126450 46200020 */ cvt.s.d $f0, $f0 +/* 4137B4 E0126454 E6000038 */ swc1 $f0, 0x38($s0) +.LE0126458: +/* 4137B8 E0126458 16320009 */ bne $s1, $s2, .LE0126480 +/* 4137BC E012645C 00000000 */ nop +/* 4137C0 E0126460 C600003C */ lwc1 $f0, 0x3c($s0) +/* 4137C4 E0126464 C6020040 */ lwc1 $f2, 0x40($s0) +/* 4137C8 E0126468 C6040044 */ lwc1 $f4, 0x44($s0) +/* 4137CC E012646C C6060038 */ lwc1 $f6, 0x38($s0) +/* 4137D0 E0126470 E6000048 */ swc1 $f0, 0x48($s0) +/* 4137D4 E0126474 E602004C */ swc1 $f2, 0x4c($s0) +/* 4137D8 E0126478 E6040050 */ swc1 $f4, 0x50($s0) +/* 4137DC E012647C E6060054 */ swc1 $f6, 0x54($s0) +.LE0126480: +/* 4137E0 E0126480 8FBF001C */ lw $ra, 0x1c($sp) +/* 4137E4 E0126484 8FB20018 */ lw $s2, 0x18($sp) +/* 4137E8 E0126488 8FB10014 */ lw $s1, 0x14($sp) +/* 4137EC E012648C 8FB00010 */ lw $s0, 0x10($sp) +/* 4137F0 E0126490 D7B80030 */ ldc1 $f24, 0x30($sp) +/* 4137F4 E0126494 D7B60028 */ ldc1 $f22, 0x28($sp) +/* 4137F8 E0126498 D7B40020 */ ldc1 $f20, 0x20($sp) +/* 4137FC E012649C 03E00008 */ jr $ra +/* 413800 E01264A0 27BD0038 */ addiu $sp, $sp, 0x38 diff --git a/asm/nonmatchings/code_413360/func_E01264A4.s b/asm/nonmatchings/code_413360/func_E01264A4.s new file mode 100644 index 0000000000..63881439d0 --- /dev/null +++ b/asm/nonmatchings/code_413360/func_E01264A4.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01264A4 +/* 413804 E01264A4 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 413808 E01264A8 3C02E012 */ lui $v0, %hi(D_E01264EC) +/* 41380C E01264AC 244264EC */ addiu $v0, $v0, %lo(D_E01264EC) +/* 413810 E01264B0 AFA2001C */ sw $v0, 0x1c($sp) +/* 413814 E01264B4 2402000A */ addiu $v0, $zero, 0xa +/* 413818 E01264B8 AFA20014 */ sw $v0, 0x14($sp) +/* 41381C E01264BC 2402002D */ addiu $v0, $zero, 0x2d +/* 413820 E01264C0 AFA40018 */ sw $a0, 0x18($sp) +/* 413824 E01264C4 27A40010 */ addiu $a0, $sp, 0x10 +/* 413828 E01264C8 AFBF0020 */ sw $ra, 0x20($sp) +/* 41382C E01264CC 0C080120 */ jal func_E0200480 +/* 413830 E01264D0 AFA20010 */ sw $v0, 0x10($sp) +/* 413834 E01264D4 8C430000 */ lw $v1, ($v0) +/* 413838 E01264D8 34630002 */ ori $v1, $v1, 2 +/* 41383C E01264DC AC430000 */ sw $v1, ($v0) +/* 413840 E01264E0 8FBF0020 */ lw $ra, 0x20($sp) +/* 413844 E01264E4 03E00008 */ jr $ra +/* 413848 E01264E8 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_413360/func_E01264EC.s b/asm/nonmatchings/code_413360/func_E01264EC.s new file mode 100644 index 0000000000..8bf75ae100 --- /dev/null +++ b/asm/nonmatchings/code_413360/func_E01264EC.s @@ -0,0 +1,465 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01264EC +/* 41384C E01264EC 27BDFF20 */ addiu $sp, $sp, -0xe0 +/* 413850 E01264F0 0080302D */ daddu $a2, $a0, $zero +/* 413854 E01264F4 AFBF00D4 */ sw $ra, 0xd4($sp) +/* 413858 E01264F8 AFBE00D0 */ sw $fp, 0xd0($sp) +/* 41385C E01264FC AFB700CC */ sw $s7, 0xcc($sp) +/* 413860 E0126500 AFB600C8 */ sw $s6, 0xc8($sp) +/* 413864 E0126504 AFB500C4 */ sw $s5, 0xc4($sp) +/* 413868 E0126508 AFB400C0 */ sw $s4, 0xc0($sp) +/* 41386C E012650C AFB300BC */ sw $s3, 0xbc($sp) +/* 413870 E0126510 AFB200B8 */ sw $s2, 0xb8($sp) +/* 413874 E0126514 AFB100B4 */ sw $s1, 0xb4($sp) +/* 413878 E0126518 AFB000B0 */ sw $s0, 0xb0($sp) +/* 41387C E012651C F7B400D8 */ sdc1 $f20, 0xd8($sp) +/* 413880 E0126520 8CD3000C */ lw $s3, 0xc($a2) +/* 413884 E0126524 8E690024 */ lw $t1, 0x24($s3) +/* 413888 E0126528 8E760018 */ lw $s6, 0x18($s3) +/* 41388C E012652C 8E77001C */ lw $s7, 0x1c($s3) +/* 413890 E0126530 8E7E0020 */ lw $fp, 0x20($s3) +/* 413894 E0126534 AFA900A0 */ sw $t1, 0xa0($sp) +/* 413898 E0126538 8E690028 */ lw $t1, 0x28($s3) +/* 41389C E012653C AFA900A4 */ sw $t1, 0xa4($sp) +/* 4138A0 E0126540 8E69002C */ lw $t1, 0x2c($s3) +/* 4138A4 E0126544 AFA900A8 */ sw $t1, 0xa8($sp) +/* 4138A8 E0126548 8E690030 */ lw $t1, 0x30($s3) +/* 4138AC E012654C 2AC20100 */ slti $v0, $s6, 0x100 +/* 4138B0 E0126550 AFA900AC */ sw $t1, 0xac($sp) +/* 4138B4 E0126554 8E750034 */ lw $s5, 0x34($s3) +/* 4138B8 E0126558 50400001 */ beql $v0, $zero, .LE0126560 +/* 4138BC E012655C 241600FF */ addiu $s6, $zero, 0xff +.LE0126560: +/* 4138C0 E0126560 2AE20100 */ slti $v0, $s7, 0x100 +/* 4138C4 E0126564 50400001 */ beql $v0, $zero, .LE012656C +/* 4138C8 E0126568 241700FF */ addiu $s7, $zero, 0xff +.LE012656C: +/* 4138CC E012656C 2BC20100 */ slti $v0, $fp, 0x100 +/* 4138D0 E0126570 50400001 */ beql $v0, $zero, .LE0126578 +/* 4138D4 E0126574 241E00FF */ addiu $fp, $zero, 0xff +.LE0126578: +/* 4138D8 E0126578 8FA900A0 */ lw $t1, 0xa0($sp) +/* 4138DC E012657C 29220100 */ slti $v0, $t1, 0x100 +/* 4138E0 E0126580 14400002 */ bnez $v0, .LE012658C +/* 4138E4 E0126584 240900FF */ addiu $t1, $zero, 0xff +/* 4138E8 E0126588 AFA900A0 */ sw $t1, 0xa0($sp) +.LE012658C: +/* 4138EC E012658C 8FA900A4 */ lw $t1, 0xa4($sp) +/* 4138F0 E0126590 29220100 */ slti $v0, $t1, 0x100 +/* 4138F4 E0126594 14400002 */ bnez $v0, .LE01265A0 +/* 4138F8 E0126598 240900FF */ addiu $t1, $zero, 0xff +/* 4138FC E012659C AFA900A4 */ sw $t1, 0xa4($sp) +.LE01265A0: +/* 413900 E01265A0 8FA900A8 */ lw $t1, 0xa8($sp) +/* 413904 E01265A4 29220100 */ slti $v0, $t1, 0x100 +/* 413908 E01265A8 14400002 */ bnez $v0, .LE01265B4 +/* 41390C E01265AC 240900FF */ addiu $t1, $zero, 0xff +/* 413910 E01265B0 AFA900A8 */ sw $t1, 0xa8($sp) +.LE01265B4: +/* 413914 E01265B4 8FA900AC */ lw $t1, 0xac($sp) +/* 413918 E01265B8 29220100 */ slti $v0, $t1, 0x100 +/* 41391C E01265BC 14400003 */ bnez $v0, .LE01265CC +/* 413920 E01265C0 2AA20100 */ slti $v0, $s5, 0x100 +/* 413924 E01265C4 240900FF */ addiu $t1, $zero, 0xff +/* 413928 E01265C8 AFA900AC */ sw $t1, 0xac($sp) +.LE01265CC: +/* 41392C E01265CC 50400001 */ beql $v0, $zero, .LE01265D4 +/* 413930 E01265D0 241500FF */ addiu $s5, $zero, 0xff +.LE01265D4: +/* 413934 E01265D4 06C20001 */ bltzl $s6, .LE01265DC +/* 413938 E01265D8 0000B02D */ daddu $s6, $zero, $zero +.LE01265DC: +/* 41393C E01265DC 06E20001 */ bltzl $s7, .LE01265E4 +/* 413940 E01265E0 0000B82D */ daddu $s7, $zero, $zero +.LE01265E4: +/* 413944 E01265E4 07C20001 */ bltzl $fp, .LE01265EC +/* 413948 E01265E8 0000F02D */ daddu $fp, $zero, $zero +.LE01265EC: +/* 41394C E01265EC 8FA900A0 */ lw $t1, 0xa0($sp) +/* 413950 E01265F0 05220001 */ bltzl $t1, .LE01265F8 +/* 413954 E01265F4 AFA000A0 */ sw $zero, 0xa0($sp) +.LE01265F8: +/* 413958 E01265F8 8FA900A4 */ lw $t1, 0xa4($sp) +/* 41395C E01265FC 05220001 */ bltzl $t1, .LE0126604 +/* 413960 E0126600 AFA000A4 */ sw $zero, 0xa4($sp) +.LE0126604: +/* 413964 E0126604 8FA900A8 */ lw $t1, 0xa8($sp) +/* 413968 E0126608 05220001 */ bltzl $t1, .LE0126610 +/* 41396C E012660C AFA000A8 */ sw $zero, 0xa8($sp) +.LE0126610: +/* 413970 E0126610 8FA900AC */ lw $t1, 0xac($sp) +/* 413974 E0126614 05220001 */ bltzl $t1, .LE012661C +/* 413978 E0126618 AFA000AC */ sw $zero, 0xac($sp) +.LE012661C: +/* 41397C E012661C 06A20001 */ bltzl $s5, .LE0126624 +/* 413980 E0126620 0000A82D */ daddu $s5, $zero, $zero +.LE0126624: +/* 413984 E0126624 3C05DB06 */ lui $a1, 0xdb06 +/* 413988 E0126628 3C14800A */ lui $s4, %hi(D_8009A66C) +/* 41398C E012662C 2694A66C */ addiu $s4, $s4, %lo(D_8009A66C) +/* 413990 E0126630 34A50024 */ ori $a1, $a1, 0x24 +/* 413994 E0126634 8E840000 */ lw $a0, ($s4) +/* 413998 E0126638 3C02E700 */ lui $v0, 0xe700 +/* 41399C E012663C 0080182D */ daddu $v1, $a0, $zero +/* 4139A0 E0126640 24840008 */ addiu $a0, $a0, 8 +/* 4139A4 E0126644 AE840000 */ sw $a0, ($s4) +/* 4139A8 E0126648 AC620000 */ sw $v0, ($v1) +/* 4139AC E012664C AC600004 */ sw $zero, 4($v1) +/* 4139B0 E0126650 AC850000 */ sw $a1, ($a0) +/* 4139B4 E0126654 8CC30010 */ lw $v1, 0x10($a2) +/* 4139B8 E0126658 24820008 */ addiu $v0, $a0, 8 +/* 4139BC E012665C AE820000 */ sw $v0, ($s4) +/* 4139C0 E0126660 8C63001C */ lw $v1, 0x1c($v1) +/* 4139C4 E0126664 3C02DE00 */ lui $v0, 0xde00 +/* 4139C8 E0126668 AC820008 */ sw $v0, 8($a0) +/* 4139CC E012666C 3C028000 */ lui $v0, 0x8000 +/* 4139D0 E0126670 00621821 */ addu $v1, $v1, $v0 +/* 4139D4 E0126674 AC830004 */ sw $v1, 4($a0) +/* 4139D8 E0126678 3C03E012 */ lui $v1, %hi(D_E0126BC8) +/* 4139DC E012667C 8C636BC8 */ lw $v1, %lo(D_E0126BC8)($v1) +/* 4139E0 E0126680 24820010 */ addiu $v0, $a0, 0x10 +/* 4139E4 E0126684 AE820000 */ sw $v0, ($s4) +/* 4139E8 E0126688 12A0008F */ beqz $s5, .LE01268C8 +/* 4139EC E012668C AC83000C */ sw $v1, 0xc($a0) +/* 4139F0 E0126690 4480A000 */ mtc1 $zero, $f20 +/* 4139F4 E0126694 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 4139F8 E0126698 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 4139FC E012669C C6600054 */ lwc1 $f0, 0x54($s3) +/* 413A00 E01266A0 3C01E012 */ lui $at, %hi(D_E0126C30) +/* 413A04 E01266A4 D4226C30 */ ldc1 $f2, %lo(D_E0126C30)($at) +/* 413A08 E01266A8 00031080 */ sll $v0, $v1, 2 +/* 413A0C E01266AC 46000021 */ cvt.d.s $f0, $f0 +/* 413A10 E01266B0 00431021 */ addu $v0, $v0, $v1 +/* 413A14 E01266B4 00021080 */ sll $v0, $v0, 2 +/* 413A18 E01266B8 46220002 */ mul.d $f0, $f0, $f2 +/* 413A1C E01266BC 00000000 */ nop +/* 413A20 E01266C0 00431023 */ subu $v0, $v0, $v1 +/* 413A24 E01266C4 000218C0 */ sll $v1, $v0, 3 +/* 413A28 E01266C8 00431021 */ addu $v0, $v0, $v1 +/* 413A2C E01266CC 000210C0 */ sll $v0, $v0, 3 +/* 413A30 E01266D0 4405A000 */ mfc1 $a1, $f20 +/* 413A34 E01266D4 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 413A38 E01266D8 00220821 */ addu $at, $at, $v0 +/* 413A3C E01266DC C4221DEC */ lwc1 $f2, %lo(D_800B1DEC)($at) +/* 413A40 E01266E0 4407A000 */ mfc1 $a3, $f20 +/* 413A44 E01266E4 46001087 */ neg.s $f2, $f2 +/* 413A48 E01266E8 44061000 */ mfc1 $a2, $f2 +/* 413A4C E01266EC 46200020 */ cvt.s.d $f0, $f0 +/* 413A50 E01266F0 E7A00010 */ swc1 $f0, 0x10($sp) +/* 413A54 E01266F4 C6600004 */ lwc1 $f0, 4($s3) +/* 413A58 E01266F8 E7A00014 */ swc1 $f0, 0x14($sp) +/* 413A5C E01266FC C6600008 */ lwc1 $f0, 8($s3) +/* 413A60 E0126700 27A40020 */ addiu $a0, $sp, 0x20 +/* 413A64 E0126704 E7A00018 */ swc1 $f0, 0x18($sp) +/* 413A68 E0126708 C660000C */ lwc1 $f0, 0xc($s3) +/* 413A6C E012670C 3C120001 */ lui $s2, 1 +/* 413A70 E0126710 0C080180 */ jal func_E0200600 +/* 413A74 E0126714 E7A0001C */ swc1 $f0, 0x1c($sp) +/* 413A78 E0126718 36521630 */ ori $s2, $s2, 0x1630 +/* 413A7C E012671C 3C013F80 */ lui $at, 0x3f80 +/* 413A80 E0126720 44810000 */ mtc1 $at, $f0 +/* 413A84 E0126724 27B00060 */ addiu $s0, $sp, 0x60 +/* 413A88 E0126728 E7B40014 */ swc1 $f20, 0x14($sp) +/* 413A8C E012672C E7B40018 */ swc1 $f20, 0x18($sp) +/* 413A90 E0126730 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 413A94 E0126734 E7A00010 */ swc1 $f0, 0x10($sp) +/* 413A98 E0126738 8E650048 */ lw $a1, 0x48($s3) +/* 413A9C E012673C 8E66004C */ lw $a2, 0x4c($s3) +/* 413AA0 E0126740 8E670050 */ lw $a3, 0x50($s3) +/* 413AA4 E0126744 0C080180 */ jal func_E0200600 +/* 413AA8 E0126748 0200202D */ daddu $a0, $s0, $zero +/* 413AAC E012674C 0200202D */ daddu $a0, $s0, $zero +/* 413AB0 E0126750 27A50020 */ addiu $a1, $sp, 0x20 +/* 413AB4 E0126754 0C080114 */ jal func_E0200450 +/* 413AB8 E0126758 00A0302D */ daddu $a2, $a1, $zero +/* 413ABC E012675C 27A40020 */ addiu $a0, $sp, 0x20 +/* 413AC0 E0126760 3C108007 */ lui $s0, %hi(D_800741F0) +/* 413AC4 E0126764 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 413AC8 E0126768 3C11800A */ lui $s1, %hi(D_8009A674) +/* 413ACC E012676C 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 413AD0 E0126770 96050000 */ lhu $a1, ($s0) +/* 413AD4 E0126774 8E220000 */ lw $v0, ($s1) +/* 413AD8 E0126778 00052980 */ sll $a1, $a1, 6 +/* 413ADC E012677C 00B22821 */ addu $a1, $a1, $s2 +/* 413AE0 E0126780 0C080118 */ jal func_E0200460 +/* 413AE4 E0126784 00452821 */ addu $a1, $v0, $a1 +/* 413AE8 E0126788 3C02DA38 */ lui $v0, 0xda38 +/* 413AEC E012678C 34420002 */ ori $v0, $v0, 2 +/* 413AF0 E0126790 8E860000 */ lw $a2, ($s4) +/* 413AF4 E0126794 96040000 */ lhu $a0, ($s0) +/* 413AF8 E0126798 00C0282D */ daddu $a1, $a2, $zero +/* 413AFC E012679C 24C60008 */ addiu $a2, $a2, 8 +/* 413B00 E01267A0 AE860000 */ sw $a2, ($s4) +/* 413B04 E01267A4 ACA20000 */ sw $v0, ($a1) +/* 413B08 E01267A8 3082FFFF */ andi $v0, $a0, 0xffff +/* 413B0C E01267AC 00021180 */ sll $v0, $v0, 6 +/* 413B10 E01267B0 8E230000 */ lw $v1, ($s1) +/* 413B14 E01267B4 00521021 */ addu $v0, $v0, $s2 +/* 413B18 E01267B8 00621821 */ addu $v1, $v1, $v0 +/* 413B1C E01267BC ACA30004 */ sw $v1, 4($a1) +/* 413B20 E01267C0 86620000 */ lh $v0, ($s3) +/* 413B24 E01267C4 24840001 */ addiu $a0, $a0, 1 +/* 413B28 E01267C8 14400006 */ bnez $v0, .LE01267E4 +/* 413B2C E01267CC A6040000 */ sh $a0, ($s0) +/* 413B30 E01267D0 3C04E200 */ lui $a0, 0xe200 +/* 413B34 E01267D4 3484001C */ ori $a0, $a0, 0x1c +/* 413B38 E01267D8 3C030050 */ lui $v1, 0x50 +/* 413B3C E01267DC 080499FD */ j .LE01267F4 +/* 413B40 E01267E0 34634340 */ ori $v1, $v1, 0x4340 +.LE01267E4: +/* 413B44 E01267E4 3C04E200 */ lui $a0, 0xe200 +/* 413B48 E01267E8 3484001C */ ori $a0, $a0, 0x1c +/* 413B4C E01267EC 3C030050 */ lui $v1, 0x50 +/* 413B50 E01267F0 34634B50 */ ori $v1, $v1, 0x4b50 +.LE01267F4: +/* 413B54 E01267F4 24C20008 */ addiu $v0, $a2, 8 +/* 413B58 E01267F8 AE820000 */ sw $v0, ($s4) +/* 413B5C E01267FC ACC40000 */ sw $a0, ($a2) +/* 413B60 E0126800 ACC30004 */ sw $v1, 4($a2) +/* 413B64 E0126804 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 413B68 E0126808 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 413B6C E012680C 3C02FA00 */ lui $v0, 0xfa00 +/* 413B70 E0126810 00161E00 */ sll $v1, $s6, 0x18 +/* 413B74 E0126814 00152843 */ sra $a1, $s5, 1 +/* 413B78 E0126818 8CC40000 */ lw $a0, ($a2) +/* 413B7C E012681C 30A500FF */ andi $a1, $a1, 0xff +/* 413B80 E0126820 0080382D */ daddu $a3, $a0, $zero +/* 413B84 E0126824 24840008 */ addiu $a0, $a0, 8 +/* 413B88 E0126828 ACC40000 */ sw $a0, ($a2) +/* 413B8C E012682C ACE20000 */ sw $v0, ($a3) +/* 413B90 E0126830 32E200FF */ andi $v0, $s7, 0xff +/* 413B94 E0126834 00021400 */ sll $v0, $v0, 0x10 +/* 413B98 E0126838 00621825 */ or $v1, $v1, $v0 +/* 413B9C E012683C 33C200FF */ andi $v0, $fp, 0xff +/* 413BA0 E0126840 00021200 */ sll $v0, $v0, 8 +/* 413BA4 E0126844 00621825 */ or $v1, $v1, $v0 +/* 413BA8 E0126848 00651825 */ or $v1, $v1, $a1 +/* 413BAC E012684C 24820008 */ addiu $v0, $a0, 8 +/* 413BB0 E0126850 ACE30004 */ sw $v1, 4($a3) +/* 413BB4 E0126854 ACC20000 */ sw $v0, ($a2) +/* 413BB8 E0126858 3C02FB00 */ lui $v0, 0xfb00 +/* 413BBC E012685C AC820000 */ sw $v0, ($a0) +/* 413BC0 E0126860 8FA900A4 */ lw $t1, 0xa4($sp) +/* 413BC4 E0126864 3C08D838 */ lui $t0, 0xd838 +/* 413BC8 E0126868 00091E00 */ sll $v1, $t1, 0x18 +/* 413BCC E012686C 8FA900A8 */ lw $t1, 0xa8($sp) +/* 413BD0 E0126870 35080002 */ ori $t0, $t0, 2 +/* 413BD4 E0126874 312200FF */ andi $v0, $t1, 0xff +/* 413BD8 E0126878 00021400 */ sll $v0, $v0, 0x10 +/* 413BDC E012687C 8FA900AC */ lw $t1, 0xac($sp) +/* 413BE0 E0126880 00621825 */ or $v1, $v1, $v0 +/* 413BE4 E0126884 312200FF */ andi $v0, $t1, 0xff +/* 413BE8 E0126888 00021200 */ sll $v0, $v0, 8 +/* 413BEC E012688C 00621825 */ or $v1, $v1, $v0 +/* 413BF0 E0126890 00651825 */ or $v1, $v1, $a1 +/* 413BF4 E0126894 24820010 */ addiu $v0, $a0, 0x10 +/* 413BF8 E0126898 AC830004 */ sw $v1, 4($a0) +/* 413BFC E012689C ACC20000 */ sw $v0, ($a2) +/* 413C00 E01268A0 3C02DE00 */ lui $v0, 0xde00 +/* 413C04 E01268A4 AC820008 */ sw $v0, 8($a0) +/* 413C08 E01268A8 3C03E012 */ lui $v1, %hi(D_E0126BC4) +/* 413C0C E01268AC 8C636BC4 */ lw $v1, %lo(D_E0126BC4)($v1) +/* 413C10 E01268B0 24820018 */ addiu $v0, $a0, 0x18 +/* 413C14 E01268B4 ACC20000 */ sw $v0, ($a2) +/* 413C18 E01268B8 24020040 */ addiu $v0, $zero, 0x40 +/* 413C1C E01268BC AC880010 */ sw $t0, 0x10($a0) +/* 413C20 E01268C0 AC820014 */ sw $v0, 0x14($a0) +/* 413C24 E01268C4 AC83000C */ sw $v1, 0xc($a0) +.LE01268C8: +/* 413C28 E01268C8 4480A000 */ mtc1 $zero, $f20 +/* 413C2C E01268CC 3C038007 */ lui $v1, %hi(gCurrentCameraID) +/* 413C30 E01268D0 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) +/* 413C34 E01268D4 C6600038 */ lwc1 $f0, 0x38($s3) +/* 413C38 E01268D8 3C01E012 */ lui $at, %hi(D_E0126C38) +/* 413C3C E01268DC D4226C38 */ ldc1 $f2, %lo(D_E0126C38)($at) +/* 413C40 E01268E0 00031080 */ sll $v0, $v1, 2 +/* 413C44 E01268E4 46000021 */ cvt.d.s $f0, $f0 +/* 413C48 E01268E8 00431021 */ addu $v0, $v0, $v1 +/* 413C4C E01268EC 00021080 */ sll $v0, $v0, 2 +/* 413C50 E01268F0 46220002 */ mul.d $f0, $f0, $f2 +/* 413C54 E01268F4 00000000 */ nop +/* 413C58 E01268F8 00431023 */ subu $v0, $v0, $v1 +/* 413C5C E01268FC 000218C0 */ sll $v1, $v0, 3 +/* 413C60 E0126900 00431021 */ addu $v0, $v0, $v1 +/* 413C64 E0126904 000210C0 */ sll $v0, $v0, 3 +/* 413C68 E0126908 4405A000 */ mfc1 $a1, $f20 +/* 413C6C E012690C 3C01800B */ lui $at, %hi(D_800B1DEC) +/* 413C70 E0126910 00220821 */ addu $at, $at, $v0 +/* 413C74 E0126914 C4221DEC */ lwc1 $f2, %lo(D_800B1DEC)($at) +/* 413C78 E0126918 4407A000 */ mfc1 $a3, $f20 +/* 413C7C E012691C 46001087 */ neg.s $f2, $f2 +/* 413C80 E0126920 44061000 */ mfc1 $a2, $f2 +/* 413C84 E0126924 46200020 */ cvt.s.d $f0, $f0 +/* 413C88 E0126928 E7A00010 */ swc1 $f0, 0x10($sp) +/* 413C8C E012692C C6600004 */ lwc1 $f0, 4($s3) +/* 413C90 E0126930 E7A00014 */ swc1 $f0, 0x14($sp) +/* 413C94 E0126934 C6600008 */ lwc1 $f0, 8($s3) +/* 413C98 E0126938 27A40020 */ addiu $a0, $sp, 0x20 +/* 413C9C E012693C E7A00018 */ swc1 $f0, 0x18($sp) +/* 413CA0 E0126940 C660000C */ lwc1 $f0, 0xc($s3) +/* 413CA4 E0126944 3C120001 */ lui $s2, 1 +/* 413CA8 E0126948 0C080180 */ jal func_E0200600 +/* 413CAC E012694C E7A0001C */ swc1 $f0, 0x1c($sp) +/* 413CB0 E0126950 36521630 */ ori $s2, $s2, 0x1630 +/* 413CB4 E0126954 3C013F80 */ lui $at, 0x3f80 +/* 413CB8 E0126958 44810000 */ mtc1 $at, $f0 +/* 413CBC E012695C 27B00060 */ addiu $s0, $sp, 0x60 +/* 413CC0 E0126960 E7B40014 */ swc1 $f20, 0x14($sp) +/* 413CC4 E0126964 E7B40018 */ swc1 $f20, 0x18($sp) +/* 413CC8 E0126968 E7B4001C */ swc1 $f20, 0x1c($sp) +/* 413CCC E012696C E7A00010 */ swc1 $f0, 0x10($sp) +/* 413CD0 E0126970 8E65003C */ lw $a1, 0x3c($s3) +/* 413CD4 E0126974 8E660040 */ lw $a2, 0x40($s3) +/* 413CD8 E0126978 8E670044 */ lw $a3, 0x44($s3) +/* 413CDC E012697C 0C080180 */ jal func_E0200600 +/* 413CE0 E0126980 0200202D */ daddu $a0, $s0, $zero +/* 413CE4 E0126984 0200202D */ daddu $a0, $s0, $zero +/* 413CE8 E0126988 27A50020 */ addiu $a1, $sp, 0x20 +/* 413CEC E012698C 0C080114 */ jal func_E0200450 +/* 413CF0 E0126990 00A0302D */ daddu $a2, $a1, $zero +/* 413CF4 E0126994 27A40020 */ addiu $a0, $sp, 0x20 +/* 413CF8 E0126998 3C108007 */ lui $s0, %hi(D_800741F0) +/* 413CFC E012699C 261041F0 */ addiu $s0, $s0, %lo(D_800741F0) +/* 413D00 E01269A0 3C11800A */ lui $s1, %hi(D_8009A674) +/* 413D04 E01269A4 2631A674 */ addiu $s1, $s1, %lo(D_8009A674) +/* 413D08 E01269A8 96050000 */ lhu $a1, ($s0) +/* 413D0C E01269AC 8E220000 */ lw $v0, ($s1) +/* 413D10 E01269B0 00052980 */ sll $a1, $a1, 6 +/* 413D14 E01269B4 00B22821 */ addu $a1, $a1, $s2 +/* 413D18 E01269B8 0C080118 */ jal func_E0200460 +/* 413D1C E01269BC 00452821 */ addu $a1, $v0, $a1 +/* 413D20 E01269C0 3C03DA38 */ lui $v1, 0xda38 +/* 413D24 E01269C4 3C06800A */ lui $a2, %hi(D_8009A66C) +/* 413D28 E01269C8 24C6A66C */ addiu $a2, $a2, %lo(D_8009A66C) +/* 413D2C E01269CC 34630002 */ ori $v1, $v1, 2 +/* 413D30 E01269D0 8CC50000 */ lw $a1, ($a2) +/* 413D34 E01269D4 96020000 */ lhu $v0, ($s0) +/* 413D38 E01269D8 00A0202D */ daddu $a0, $a1, $zero +/* 413D3C E01269DC 24A50008 */ addiu $a1, $a1, 8 +/* 413D40 E01269E0 ACC50000 */ sw $a1, ($a2) +/* 413D44 E01269E4 AC830000 */ sw $v1, ($a0) +/* 413D48 E01269E8 24430001 */ addiu $v1, $v0, 1 +/* 413D4C E01269EC 3042FFFF */ andi $v0, $v0, 0xffff +/* 413D50 E01269F0 00021180 */ sll $v0, $v0, 6 +/* 413D54 E01269F4 A6030000 */ sh $v1, ($s0) +/* 413D58 E01269F8 8E230000 */ lw $v1, ($s1) +/* 413D5C E01269FC 00521021 */ addu $v0, $v0, $s2 +/* 413D60 E0126A00 00621821 */ addu $v1, $v1, $v0 +/* 413D64 E0126A04 12A0001A */ beqz $s5, .LE0126A70 +/* 413D68 E0126A08 AC830004 */ sw $v1, 4($a0) +/* 413D6C E0126A0C 86620000 */ lh $v0, ($s3) +/* 413D70 E0126A10 14400005 */ bnez $v0, .LE0126A28 +/* 413D74 E0126A14 3C04E200 */ lui $a0, 0xe200 +/* 413D78 E0126A18 3484001C */ ori $a0, $a0, 0x1c +/* 413D7C E0126A1C 3C030050 */ lui $v1, 0x50 +/* 413D80 E0126A20 08049A8D */ j .LE0126A34 +/* 413D84 E0126A24 34634340 */ ori $v1, $v1, 0x4340 +.LE0126A28: +/* 413D88 E0126A28 3484001C */ ori $a0, $a0, 0x1c +/* 413D8C E0126A2C 3C030050 */ lui $v1, 0x50 +/* 413D90 E0126A30 34634B50 */ ori $v1, $v1, 0x4b50 +.LE0126A34: +/* 413D94 E0126A34 24A20008 */ addiu $v0, $a1, 8 +/* 413D98 E0126A38 ACC20000 */ sw $v0, ($a2) +/* 413D9C E0126A3C ACA40000 */ sw $a0, ($a1) +/* 413DA0 E0126A40 ACA30004 */ sw $v1, 4($a1) +/* 413DA4 E0126A44 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 413DA8 E0126A48 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 413DAC E0126A4C 8CA30000 */ lw $v1, ($a1) +/* 413DB0 E0126A50 3C02DE00 */ lui $v0, 0xde00 +/* 413DB4 E0126A54 0060202D */ daddu $a0, $v1, $zero +/* 413DB8 E0126A58 AC820000 */ sw $v0, ($a0) +/* 413DBC E0126A5C 3C02E012 */ lui $v0, %hi(D_E0126BC4) +/* 413DC0 E0126A60 8C426BC4 */ lw $v0, %lo(D_E0126BC4)($v0) +/* 413DC4 E0126A64 24630008 */ addiu $v1, $v1, 8 +/* 413DC8 E0126A68 ACA30000 */ sw $v1, ($a1) +/* 413DCC E0126A6C AC820004 */ sw $v0, 4($a0) +.LE0126A70: +/* 413DD0 E0126A70 86620000 */ lh $v0, ($s3) +/* 413DD4 E0126A74 14400008 */ bnez $v0, .LE0126A98 +/* 413DD8 E0126A78 3C06E200 */ lui $a2, 0xe200 +/* 413DDC E0126A7C 34C6001C */ ori $a2, $a2, 0x1c +/* 413DE0 E0126A80 3C050050 */ lui $a1, 0x50 +/* 413DE4 E0126A84 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 413DE8 E0126A88 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 413DEC E0126A8C 8C820000 */ lw $v0, ($a0) +/* 413DF0 E0126A90 08049AAC */ j .LE0126AB0 +/* 413DF4 E0126A94 34A541C8 */ ori $a1, $a1, 0x41c8 +.LE0126A98: +/* 413DF8 E0126A98 34C6001C */ ori $a2, $a2, 0x1c +/* 413DFC E0126A9C 3C050050 */ lui $a1, 0x50 +/* 413E00 E0126AA0 3C04800A */ lui $a0, %hi(D_8009A66C) +/* 413E04 E0126AA4 2484A66C */ addiu $a0, $a0, %lo(D_8009A66C) +/* 413E08 E0126AA8 8C820000 */ lw $v0, ($a0) +/* 413E0C E0126AAC 34A549D8 */ ori $a1, $a1, 0x49d8 +.LE0126AB0: +/* 413E10 E0126AB0 0040182D */ daddu $v1, $v0, $zero +/* 413E14 E0126AB4 24420008 */ addiu $v0, $v0, 8 +/* 413E18 E0126AB8 AC820000 */ sw $v0, ($a0) +/* 413E1C E0126ABC AC660000 */ sw $a2, ($v1) +/* 413E20 E0126AC0 AC650004 */ sw $a1, 4($v1) +/* 413E24 E0126AC4 3C05800A */ lui $a1, %hi(D_8009A66C) +/* 413E28 E0126AC8 24A5A66C */ addiu $a1, $a1, %lo(D_8009A66C) +/* 413E2C E0126ACC 3C02FA00 */ lui $v0, 0xfa00 +/* 413E30 E0126AD0 8CA40000 */ lw $a0, ($a1) +/* 413E34 E0126AD4 00161E00 */ sll $v1, $s6, 0x18 +/* 413E38 E0126AD8 0080302D */ daddu $a2, $a0, $zero +/* 413E3C E0126ADC 24840008 */ addiu $a0, $a0, 8 +/* 413E40 E0126AE0 ACA40000 */ sw $a0, ($a1) +/* 413E44 E0126AE4 ACC20000 */ sw $v0, ($a2) +/* 413E48 E0126AE8 32E200FF */ andi $v0, $s7, 0xff +/* 413E4C E0126AEC 00021400 */ sll $v0, $v0, 0x10 +/* 413E50 E0126AF0 00621825 */ or $v1, $v1, $v0 +/* 413E54 E0126AF4 33C200FF */ andi $v0, $fp, 0xff +/* 413E58 E0126AF8 00021200 */ sll $v0, $v0, 8 +/* 413E5C E0126AFC 00621825 */ or $v1, $v1, $v0 +/* 413E60 E0126B00 8FA900A0 */ lw $t1, 0xa0($sp) +/* 413E64 E0126B04 24820008 */ addiu $v0, $a0, 8 +/* 413E68 E0126B08 312700FF */ andi $a3, $t1, 0xff +/* 413E6C E0126B0C 00671825 */ or $v1, $v1, $a3 +/* 413E70 E0126B10 ACC30004 */ sw $v1, 4($a2) +/* 413E74 E0126B14 ACA20000 */ sw $v0, ($a1) +/* 413E78 E0126B18 3C02FB00 */ lui $v0, 0xfb00 +/* 413E7C E0126B1C AC820000 */ sw $v0, ($a0) +/* 413E80 E0126B20 8FA900A4 */ lw $t1, 0xa4($sp) +/* 413E84 E0126B24 3C08D838 */ lui $t0, 0xd838 +/* 413E88 E0126B28 00091E00 */ sll $v1, $t1, 0x18 +/* 413E8C E0126B2C 8FA900A8 */ lw $t1, 0xa8($sp) +/* 413E90 E0126B30 35080002 */ ori $t0, $t0, 2 +/* 413E94 E0126B34 312200FF */ andi $v0, $t1, 0xff +/* 413E98 E0126B38 00021400 */ sll $v0, $v0, 0x10 +/* 413E9C E0126B3C 8FA900AC */ lw $t1, 0xac($sp) +/* 413EA0 E0126B40 00621825 */ or $v1, $v1, $v0 +/* 413EA4 E0126B44 312200FF */ andi $v0, $t1, 0xff +/* 413EA8 E0126B48 00021200 */ sll $v0, $v0, 8 +/* 413EAC E0126B4C 00621825 */ or $v1, $v1, $v0 +/* 413EB0 E0126B50 00671825 */ or $v1, $v1, $a3 +/* 413EB4 E0126B54 24820010 */ addiu $v0, $a0, 0x10 +/* 413EB8 E0126B58 AC830004 */ sw $v1, 4($a0) +/* 413EBC E0126B5C ACA20000 */ sw $v0, ($a1) +/* 413EC0 E0126B60 3C02DE00 */ lui $v0, 0xde00 +/* 413EC4 E0126B64 AC820008 */ sw $v0, 8($a0) +/* 413EC8 E0126B68 3C03E012 */ lui $v1, %hi(D_E0126BC0) +/* 413ECC E0126B6C 8C636BC0 */ lw $v1, %lo(D_E0126BC0)($v1) +/* 413ED0 E0126B70 24820018 */ addiu $v0, $a0, 0x18 +/* 413ED4 E0126B74 ACA20000 */ sw $v0, ($a1) +/* 413ED8 E0126B78 24020040 */ addiu $v0, $zero, 0x40 +/* 413EDC E0126B7C AC880010 */ sw $t0, 0x10($a0) +/* 413EE0 E0126B80 AC820014 */ sw $v0, 0x14($a0) +/* 413EE4 E0126B84 AC83000C */ sw $v1, 0xc($a0) +/* 413EE8 E0126B88 8FBF00D4 */ lw $ra, 0xd4($sp) +/* 413EEC E0126B8C 8FBE00D0 */ lw $fp, 0xd0($sp) +/* 413EF0 E0126B90 8FB700CC */ lw $s7, 0xcc($sp) +/* 413EF4 E0126B94 8FB600C8 */ lw $s6, 0xc8($sp) +/* 413EF8 E0126B98 8FB500C4 */ lw $s5, 0xc4($sp) +/* 413EFC E0126B9C 8FB400C0 */ lw $s4, 0xc0($sp) +/* 413F00 E0126BA0 8FB300BC */ lw $s3, 0xbc($sp) +/* 413F04 E0126BA4 8FB200B8 */ lw $s2, 0xb8($sp) +/* 413F08 E0126BA8 8FB100B4 */ lw $s1, 0xb4($sp) +/* 413F0C E0126BAC 8FB000B0 */ lw $s0, 0xb0($sp) +/* 413F10 E0126BB0 D7B400D8 */ ldc1 $f20, 0xd8($sp) +/* 413F14 E0126BB4 03E00008 */ jr $ra +/* 413F18 E0126BB8 27BD00E0 */ addiu $sp, $sp, 0xe0 +/* 413F1C E0126BBC 00000000 */ nop diff --git a/asm/nonmatchings/code_414BA0/func_E0128000.s b/asm/nonmatchings/code_414BA0/func_E0128000.s new file mode 100644 index 0000000000..ec892f8df4 --- /dev/null +++ b/asm/nonmatchings/code_414BA0/func_E0128000.s @@ -0,0 +1,82 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0128000 +/* 414BA0 E0128000 27BDFFB0 */ addiu $sp, $sp, -0x50 +/* 414BA4 E0128004 F7B40038 */ sdc1 $f20, 0x38($sp) +/* 414BA8 E0128008 4485A000 */ mtc1 $a1, $f20 +/* 414BAC E012800C F7B60040 */ sdc1 $f22, 0x40($sp) +/* 414BB0 E0128010 4486B000 */ mtc1 $a2, $f22 +/* 414BB4 E0128014 AFB20030 */ sw $s2, 0x30($sp) +/* 414BB8 E0128018 0080902D */ daddu $s2, $a0, $zero +/* 414BBC E012801C F7B80048 */ sdc1 $f24, 0x48($sp) +/* 414BC0 E0128020 4487C000 */ mtc1 $a3, $f24 +/* 414BC4 E0128024 27A40010 */ addiu $a0, $sp, 0x10 +/* 414BC8 E0128028 AFB1002C */ sw $s1, 0x2c($sp) +/* 414BCC E012802C 8FB10064 */ lw $s1, 0x64($sp) +/* 414BD0 E0128030 3C02E013 */ lui $v0, %hi(D_E0128128) +/* 414BD4 E0128034 24428128 */ addiu $v0, $v0, %lo(D_E0128128) +/* 414BD8 E0128038 AFA20018 */ sw $v0, 0x18($sp) +/* 414BDC E012803C 3C02E013 */ lui $v0, %hi(D_E0128130) +/* 414BE0 E0128040 24428130 */ addiu $v0, $v0, %lo(D_E0128130) +/* 414BE4 E0128044 AFA2001C */ sw $v0, 0x1c($sp) +/* 414BE8 E0128048 3C02E013 */ lui $v0, %hi(D_E0128198) +/* 414BEC E012804C 24428198 */ addiu $v0, $v0, %lo(D_E0128198) +/* 414BF0 E0128050 AFA20020 */ sw $v0, 0x20($sp) +/* 414BF4 E0128054 24020086 */ addiu $v0, $zero, 0x86 +/* 414BF8 E0128058 AFBF0034 */ sw $ra, 0x34($sp) +/* 414BFC E012805C AFB00028 */ sw $s0, 0x28($sp) +/* 414C00 E0128060 AFA00010 */ sw $zero, 0x10($sp) +/* 414C04 E0128064 AFA00024 */ sw $zero, 0x24($sp) +/* 414C08 E0128068 0C080124 */ jal func_E0200490 +/* 414C0C E012806C AFA20014 */ sw $v0, 0x14($sp) +/* 414C10 E0128070 24040038 */ addiu $a0, $zero, 0x38 +/* 414C14 E0128074 24030001 */ addiu $v1, $zero, 1 +/* 414C18 E0128078 0040802D */ daddu $s0, $v0, $zero +/* 414C1C E012807C 0C08012C */ jal func_E02004B0 +/* 414C20 E0128080 AE030008 */ sw $v1, 8($s0) +/* 414C24 E0128084 0040202D */ daddu $a0, $v0, $zero +/* 414C28 E0128088 14800003 */ bnez $a0, .LE0128098 +/* 414C2C E012808C AE02000C */ sw $v0, 0xc($s0) +.LE0128090: +/* 414C30 E0128090 0804A024 */ j .LE0128090 +/* 414C34 E0128094 00000000 */ nop +.LE0128098: +/* 414C38 E0128098 AC920000 */ sw $s2, ($a0) +/* 414C3C E012809C 1E200004 */ bgtz $s1, .LE01280B0 +/* 414C40 E01280A0 AC800014 */ sw $zero, 0x14($a0) +/* 414C44 E01280A4 240203E8 */ addiu $v0, $zero, 0x3e8 +/* 414C48 E01280A8 0804A02D */ j .LE01280B4 +/* 414C4C E01280AC AC820010 */ sw $v0, 0x10($a0) +.LE01280B0: +/* 414C50 E01280B0 AC910010 */ sw $s1, 0x10($a0) +.LE01280B4: +/* 414C54 E01280B4 0200102D */ daddu $v0, $s0, $zero +/* 414C58 E01280B8 240300FF */ addiu $v1, $zero, 0xff +/* 414C5C E01280BC AC830024 */ sw $v1, 0x24($a0) +/* 414C60 E01280C0 E4940004 */ swc1 $f20, 4($a0) +/* 414C64 E01280C4 E4960008 */ swc1 $f22, 8($a0) +/* 414C68 E01280C8 E498000C */ swc1 $f24, 0xc($a0) +/* 414C6C E01280CC C7A00060 */ lwc1 $f0, 0x60($sp) +/* 414C70 E01280D0 24030046 */ addiu $v1, $zero, 0x46 +/* 414C74 E01280D4 AC830018 */ sw $v1, 0x18($a0) +/* 414C78 E01280D8 240300B4 */ addiu $v1, $zero, 0xb4 +/* 414C7C E01280DC AC83001C */ sw $v1, 0x1c($a0) +/* 414C80 E01280E0 24030078 */ addiu $v1, $zero, 0x78 +/* 414C84 E01280E4 AC830020 */ sw $v1, 0x20($a0) +/* 414C88 E01280E8 24030014 */ addiu $v1, $zero, 0x14 +/* 414C8C E01280EC AC830028 */ sw $v1, 0x28($a0) +/* 414C90 E01280F0 240300E6 */ addiu $v1, $zero, 0xe6 +/* 414C94 E01280F4 AC83002C */ sw $v1, 0x2c($a0) +/* 414C98 E01280F8 24030032 */ addiu $v1, $zero, 0x32 +/* 414C9C E01280FC AC830030 */ sw $v1, 0x30($a0) +/* 414CA0 E0128100 E4800034 */ swc1 $f0, 0x34($a0) +/* 414CA4 E0128104 8FBF0034 */ lw $ra, 0x34($sp) +/* 414CA8 E0128108 8FB20030 */ lw $s2, 0x30($sp) +/* 414CAC E012810C 8FB1002C */ lw $s1, 0x2c($sp) +/* 414CB0 E0128110 8FB00028 */ lw $s0, 0x28($sp) +/* 414CB4 E0128114 D7B80048 */ ldc1 $f24, 0x48($sp) +/* 414CB8 E0128118 D7B60040 */ ldc1 $f22, 0x40($sp) +/* 414CBC E012811C D7B40038 */ ldc1 $f20, 0x38($sp) +/* 414CC0 E0128120 03E00008 */ jr $ra +/* 414CC4 E0128124 27BD0050 */ addiu $sp, $sp, 0x50 diff --git a/asm/nonmatchings/code_414BA0/func_E0128128.s b/asm/nonmatchings/code_414BA0/func_E0128128.s new file mode 100644 index 0000000000..7e4e0f844e --- /dev/null +++ b/asm/nonmatchings/code_414BA0/func_E0128128.s @@ -0,0 +1,6 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0128128 +/* 414CC8 E0128128 03E00008 */ jr $ra +/* 414CCC E012812C 00000000 */ nop diff --git a/asm/nonmatchings/code_414BA0/func_E0128130.s b/asm/nonmatchings/code_414BA0/func_E0128130.s new file mode 100644 index 0000000000..b21da62b71 --- /dev/null +++ b/asm/nonmatchings/code_414BA0/func_E0128130.s @@ -0,0 +1,33 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0128130 +/* 414CD0 E0128130 27BDFFE8 */ addiu $sp, $sp, -0x18 +/* 414CD4 E0128134 AFBF0010 */ sw $ra, 0x10($sp) +/* 414CD8 E0128138 8C830000 */ lw $v1, ($a0) +/* 414CDC E012813C 8C85000C */ lw $a1, 0xc($a0) +/* 414CE0 E0128140 30620010 */ andi $v0, $v1, 0x10 +/* 414CE4 E0128144 10400005 */ beqz $v0, .LE012815C +/* 414CE8 E0128148 2402FFEF */ addiu $v0, $zero, -0x11 +/* 414CEC E012814C 00621024 */ and $v0, $v1, $v0 +/* 414CF0 E0128150 AC820000 */ sw $v0, ($a0) +/* 414CF4 E0128154 24020010 */ addiu $v0, $zero, 0x10 +/* 414CF8 E0128158 ACA20010 */ sw $v0, 0x10($a1) +.LE012815C: +/* 414CFC E012815C 8CA30010 */ lw $v1, 0x10($a1) +/* 414D00 E0128160 286203E8 */ slti $v0, $v1, 0x3e8 +/* 414D04 E0128164 10400002 */ beqz $v0, .LE0128170 +/* 414D08 E0128168 2462FFFF */ addiu $v0, $v1, -1 +/* 414D0C E012816C ACA20010 */ sw $v0, 0x10($a1) +.LE0128170: +/* 414D10 E0128170 8CA20014 */ lw $v0, 0x14($a1) +/* 414D14 E0128174 8CA30010 */ lw $v1, 0x10($a1) +/* 414D18 E0128178 24420001 */ addiu $v0, $v0, 1 +/* 414D1C E012817C 04610003 */ bgez $v1, .LE012818C +/* 414D20 E0128180 ACA20014 */ sw $v0, 0x14($a1) +/* 414D24 E0128184 0C080128 */ jal func_E02004A0 +/* 414D28 E0128188 00000000 */ nop +.LE012818C: +/* 414D2C E012818C 8FBF0010 */ lw $ra, 0x10($sp) +/* 414D30 E0128190 03E00008 */ jr $ra +/* 414D34 E0128194 27BD0018 */ addiu $sp, $sp, 0x18 diff --git a/asm/nonmatchings/code_414BA0/func_E0128198.s b/asm/nonmatchings/code_414BA0/func_E0128198.s new file mode 100644 index 0000000000..ff9a33983c --- /dev/null +++ b/asm/nonmatchings/code_414BA0/func_E0128198.s @@ -0,0 +1,22 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E0128198 +/* 414D38 E0128198 27BDFFD8 */ addiu $sp, $sp, -0x28 +/* 414D3C E012819C 3C02E013 */ lui $v0, %hi(D_E01281E0) +/* 414D40 E01281A0 244281E0 */ addiu $v0, $v0, %lo(D_E01281E0) +/* 414D44 E01281A4 AFA2001C */ sw $v0, 0x1c($sp) +/* 414D48 E01281A8 2402000A */ addiu $v0, $zero, 0xa +/* 414D4C E01281AC AFA20014 */ sw $v0, 0x14($sp) +/* 414D50 E01281B0 2402002D */ addiu $v0, $zero, 0x2d +/* 414D54 E01281B4 AFA40018 */ sw $a0, 0x18($sp) +/* 414D58 E01281B8 27A40010 */ addiu $a0, $sp, 0x10 +/* 414D5C E01281BC AFBF0020 */ sw $ra, 0x20($sp) +/* 414D60 E01281C0 0C080120 */ jal func_E0200480 +/* 414D64 E01281C4 AFA20010 */ sw $v0, 0x10($sp) +/* 414D68 E01281C8 8C430000 */ lw $v1, ($v0) +/* 414D6C E01281CC 34630002 */ ori $v1, $v1, 2 +/* 414D70 E01281D0 AC430000 */ sw $v1, ($v0) +/* 414D74 E01281D4 8FBF0020 */ lw $ra, 0x20($sp) +/* 414D78 E01281D8 03E00008 */ jr $ra +/* 414D7C E01281DC 27BD0028 */ addiu $sp, $sp, 0x28 diff --git a/asm/nonmatchings/code_414BA0/func_E01281E0.s b/asm/nonmatchings/code_414BA0/func_E01281E0.s new file mode 100644 index 0000000000..eff3469430 --- /dev/null +++ b/asm/nonmatchings/code_414BA0/func_E01281E0.s @@ -0,0 +1,172 @@ +.set noat # allow manual use of $at +.set noreorder # don't insert nops after branches + +glabel func_E01281E0 +/* 414D80 E01281E0 27BDFF48 */ addiu $sp, $sp, -0xb8 +/* 414D84 E01281E4 0080302D */ daddu $a2, $a0, $zero +/* 414D88 E01281E8 3C07DB06 */ lui $a3, 0xdb06 +/* 414D8C E01281EC 34E70024 */ ori $a3, $a3, 0x24 +/* 414D90 E01281F0 27A40010 */ addiu $a0, $sp, 0x10 +/* 414D94 E01281F4 AFB700AC */ sw $s7, 0xac($sp) +/* 414D98 E01281F8 3C170001 */ lui $s7, 1 +/* 414D9C E01281FC AFB3009C */ sw $s3, 0x9c($sp) +/* 414DA0 E0128200 3C13800A */ lui $s3, %hi(D_8009A66C) +/* 414DA4 E0128204 2673A66C */ addiu $s3, $s3, %lo(D_8009A66C) +/* 414DA8 E0128208 36F71630 */ ori $s7, $s7, 0x1630 +/* 414DAC E012820C AFBF00B0 */ sw $ra, 0xb0($sp) +/* 414DB0 E0128210 AFB600A8 */ sw $s6, 0xa8($sp) +/* 414DB4 E0128214 AFB500A4 */ sw $s5, 0xa4($sp) +/* 414DB8 E0128218 AFB400A0 */ sw $s4, 0xa0($sp) +/* 414DBC E012821C AFB20098 */ sw $s2, 0x98($sp) +/* 414DC0 E0128220 AFB10094 */ sw $s1, 0x94($sp) +/* 414DC4 E0128224 AFB00090 */ sw $s0, 0x90($sp) +/* 414DC8 E0128228 8E650000 */ lw $a1, ($s3) +/* 414DCC E012822C 8CD2000C */ lw $s2, 0xc($a2) +/* 414DD0 E0128230 00A0182D */ daddu $v1, $a1, $zero +/* 414DD4 E0128234 24A50008 */ addiu $a1, $a1, 8 +/* 414DD8 E0128238 AE650000 */ sw $a1, ($s3) +/* 414DDC E012823C 8E560024 */ lw $s6, 0x24($s2) +/* 414DE0 E0128240 8E540000 */ lw $s4, ($s2) +/* 414DE4 E0128244 3C02E700 */ lui $v0, 0xe700 +/* 414DE8 E0128248 AC620000 */ sw $v0, ($v1) +/* 414DEC E012824C AC600004 */ sw $zero, 4($v1) +/* 414DF0 E0128250 ACA70000 */ sw $a3, ($a1) +/* 414DF4 E0128254 8CC30010 */ lw $v1, 0x10($a2) +/* 414DF8 E0128258 24A20008 */ addiu $v0, $a1, 8 +/* 414DFC E012825C AE620000 */ sw $v0, ($s3) +/* 414E00 E0128260 8C62001C */ lw $v0, 0x1c($v1) +/* 414E04 E0128264 3C038000 */ lui $v1, 0x8000 +/* 414E08 E0128268 00431021 */ addu $v0, $v0, $v1 +/* 414E0C E012826C 3C03800B */ lui $v1, %hi(gCameras) +/* 414E10 E0128270 24631D80 */ addiu $v1, $v1, %lo(gCameras) +/* 414E14 E0128274 ACA20004 */ sw $v0, 4($a1) +/* 414E18 E0128278 8E450004 */ lw $a1, 4($s2) +/* 414E1C E012827C 8E460008 */ lw $a2, 8($s2) +/* 414E20 E0128280 3C028007 */ lui $v0, %hi(gCurrentCameraID) +/* 414E24 E0128284 8C427410 */ lw $v0, %lo(gCurrentCameraID)($v0) +/* 414E28 E0128288 8E47000C */ lw $a3, 0xc($s2) +/* 414E2C E012828C 00028080 */ sll $s0, $v0, 2 +/* 414E30 E0128290 02028021 */ addu $s0, $s0, $v0 +/* 414E34 E0128294 00108080 */ sll $s0, $s0, 2 +/* 414E38 E0128298 02028023 */ subu $s0, $s0, $v0 +/* 414E3C E012829C 001010C0 */ sll $v0, $s0, 3 +/* 414E40 E01282A0 02028021 */ addu $s0, $s0, $v0 +/* 414E44 E01282A4 001080C0 */ sll $s0, $s0, 3 +/* 414E48 E01282A8 0C080108 */ jal func_E0200420 +/* 414E4C E01282AC 02038021 */ addu $s0, $s0, $v1 +/* 414E50 E01282B0 27B10050 */ addiu $s1, $sp, 0x50 +/* 414E54 E01282B4 8E450034 */ lw $a1, 0x34($s2) +/* 414E58 E01282B8 0220202D */ daddu $a0, $s1, $zero +/* 414E5C E01282BC 00A0302D */ daddu $a2, $a1, $zero +/* 414E60 E01282C0 0C080110 */ jal func_E0200440 +/* 414E64 E01282C4 00A0382D */ daddu $a3, $a1, $zero +/* 414E68 E01282C8 0220202D */ daddu $a0, $s1, $zero +/* 414E6C E01282CC 27A50010 */ addiu $a1, $sp, 0x10 +/* 414E70 E01282D0 0C080114 */ jal func_E0200450 +/* 414E74 E01282D4 00A0302D */ daddu $a2, $a1, $zero +/* 414E78 E01282D8 27A40010 */ addiu $a0, $sp, 0x10 +/* 414E7C E01282DC 3C118007 */ lui $s1, %hi(D_800741F0) +/* 414E80 E01282E0 263141F0 */ addiu $s1, $s1, %lo(D_800741F0) +/* 414E84 E01282E4 3C15800A */ lui $s5, %hi(D_8009A674) +/* 414E88 E01282E8 26B5A674 */ addiu $s5, $s5, %lo(D_8009A674) +/* 414E8C E01282EC 96250000 */ lhu $a1, ($s1) +/* 414E90 E01282F0 8EA20000 */ lw $v0, ($s5) +/* 414E94 E01282F4 00052980 */ sll $a1, $a1, 6 +/* 414E98 E01282F8 00B72821 */ addu $a1, $a1, $s7 +/* 414E9C E01282FC 0C080118 */ jal func_E0200460 +/* 414EA0 E0128300 00452821 */ addu $a1, $v0, $a1 +/* 414EA4 E0128304 3C03DA38 */ lui $v1, 0xda38 +/* 414EA8 E0128308 34630002 */ ori $v1, $v1, 2 +/* 414EAC E012830C 3C06DA38 */ lui $a2, 0xda38 +/* 414EB0 E0128310 34C60001 */ ori $a2, $a2, 1 +/* 414EB4 E0128314 3C082AAA */ lui $t0, 0x2aaa +/* 414EB8 E0128318 3508AAAB */ ori $t0, $t0, 0xaaab +/* 414EBC E012831C 3C09D838 */ lui $t1, 0xd838 +/* 414EC0 E0128320 35290002 */ ori $t1, $t1, 2 +/* 414EC4 E0128324 32D600FF */ andi $s6, $s6, 0xff +/* 414EC8 E0128328 3C07DE00 */ lui $a3, 0xde00 +/* 414ECC E012832C 02880018 */ mult $s4, $t0 +/* 414ED0 E0128330 8E640000 */ lw $a0, ($s3) +/* 414ED4 E0128334 96220000 */ lhu $v0, ($s1) +/* 414ED8 E0128338 0080282D */ daddu $a1, $a0, $zero +/* 414EDC E012833C 24840008 */ addiu $a0, $a0, 8 +/* 414EE0 E0128340 AE640000 */ sw $a0, ($s3) +/* 414EE4 E0128344 ACA30000 */ sw $v1, ($a1) +/* 414EE8 E0128348 24430001 */ addiu $v1, $v0, 1 +/* 414EEC E012834C 3042FFFF */ andi $v0, $v0, 0xffff +/* 414EF0 E0128350 00021180 */ sll $v0, $v0, 6 +/* 414EF4 E0128354 A6230000 */ sh $v1, ($s1) +/* 414EF8 E0128358 8EA30000 */ lw $v1, ($s5) +/* 414EFC E012835C 00571021 */ addu $v0, $v0, $s7 +/* 414F00 E0128360 00621821 */ addu $v1, $v1, $v0 +/* 414F04 E0128364 24820008 */ addiu $v0, $a0, 8 +/* 414F08 E0128368 ACA30004 */ sw $v1, 4($a1) +/* 414F0C E012836C AE620000 */ sw $v0, ($s3) +/* 414F10 E0128370 24820010 */ addiu $v0, $a0, 0x10 +/* 414F14 E0128374 AC860000 */ sw $a2, ($a0) +/* 414F18 E0128378 AE620000 */ sw $v0, ($s3) +/* 414F1C E012837C 8E030204 */ lw $v1, 0x204($s0) +/* 414F20 E0128380 3C02FA00 */ lui $v0, 0xfa00 +/* 414F24 E0128384 AC820008 */ sw $v0, 8($a0) +/* 414F28 E0128388 AC830004 */ sw $v1, 4($a0) +/* 414F2C E012838C 9242001B */ lbu $v0, 0x1b($s2) +/* 414F30 E0128390 9245001F */ lbu $a1, 0x1f($s2) +/* 414F34 E0128394 92460023 */ lbu $a2, 0x23($s2) +/* 414F38 E0128398 24830018 */ addiu $v1, $a0, 0x18 +/* 414F3C E012839C AE630000 */ sw $v1, ($s3) +/* 414F40 E01283A0 3C03FB00 */ lui $v1, 0xfb00 +/* 414F44 E01283A4 AC830010 */ sw $v1, 0x10($a0) +/* 414F48 E01283A8 24830020 */ addiu $v1, $a0, 0x20 +/* 414F4C E01283AC 00021600 */ sll $v0, $v0, 0x18 +/* 414F50 E01283B0 00052C00 */ sll $a1, $a1, 0x10 +/* 414F54 E01283B4 00451025 */ or $v0, $v0, $a1 +/* 414F58 E01283B8 00063200 */ sll $a2, $a2, 8 +/* 414F5C E01283BC 00461025 */ or $v0, $v0, $a2 +/* 414F60 E01283C0 00561025 */ or $v0, $v0, $s6 +/* 414F64 E01283C4 AC82000C */ sw $v0, 0xc($a0) +/* 414F68 E01283C8 9242002B */ lbu $v0, 0x2b($s2) +/* 414F6C E01283CC 9245002F */ lbu $a1, 0x2f($s2) +/* 414F70 E01283D0 92460033 */ lbu $a2, 0x33($s2) +/* 414F74 E01283D4 00005010 */ mfhi $t2 +/* 414F78 E01283D8 AE630000 */ sw $v1, ($s3) +/* 414F7C E01283DC AC870018 */ sw $a3, 0x18($a0) +/* 414F80 E01283E0 00021600 */ sll $v0, $v0, 0x18 +/* 414F84 E01283E4 00052C00 */ sll $a1, $a1, 0x10 +/* 414F88 E01283E8 00451025 */ or $v0, $v0, $a1 +/* 414F8C E01283EC 00063200 */ sll $a2, $a2, 8 +/* 414F90 E01283F0 00461025 */ or $v0, $v0, $a2 +/* 414F94 E01283F4 AC820014 */ sw $v0, 0x14($a0) +/* 414F98 E01283F8 3C03E013 */ lui $v1, %hi(D_E01284B0) +/* 414F9C E01283FC 8C6384B0 */ lw $v1, %lo(D_E01284B0)($v1) +/* 414FA0 E0128400 24820028 */ addiu $v0, $a0, 0x28 +/* 414FA4 E0128404 AE620000 */ sw $v0, ($s3) +/* 414FA8 E0128408 001417C3 */ sra $v0, $s4, 0x1f +/* 414FAC E012840C AC870020 */ sw $a3, 0x20($a0) +/* 414FB0 E0128410 AC83001C */ sw $v1, 0x1c($a0) +/* 414FB4 E0128414 000A1843 */ sra $v1, $t2, 1 +/* 414FB8 E0128418 00621823 */ subu $v1, $v1, $v0 +/* 414FBC E012841C 00031040 */ sll $v0, $v1, 1 +/* 414FC0 E0128420 00431021 */ addu $v0, $v0, $v1 +/* 414FC4 E0128424 00021080 */ sll $v0, $v0, 2 +/* 414FC8 E0128428 0282A023 */ subu $s4, $s4, $v0 +/* 414FCC E012842C 0014A080 */ sll $s4, $s4, 2 +/* 414FD0 E0128430 3C03E013 */ lui $v1, %hi(D_E0128480) +/* 414FD4 E0128434 00741821 */ addu $v1, $v1, $s4 +/* 414FD8 E0128438 8C638480 */ lw $v1, %lo(D_E0128480)($v1) +/* 414FDC E012843C 24820030 */ addiu $v0, $a0, 0x30 +/* 414FE0 E0128440 AE620000 */ sw $v0, ($s3) +/* 414FE4 E0128444 24020040 */ addiu $v0, $zero, 0x40 +/* 414FE8 E0128448 AC890028 */ sw $t1, 0x28($a0) +/* 414FEC E012844C AC830024 */ sw $v1, 0x24($a0) +/* 414FF0 E0128450 AC82002C */ sw $v0, 0x2c($a0) +/* 414FF4 E0128454 8FBF00B0 */ lw $ra, 0xb0($sp) +/* 414FF8 E0128458 8FB700AC */ lw $s7, 0xac($sp) +/* 414FFC E012845C 8FB600A8 */ lw $s6, 0xa8($sp) +/* 415000 E0128460 8FB500A4 */ lw $s5, 0xa4($sp) +/* 415004 E0128464 8FB400A0 */ lw $s4, 0xa0($sp) +/* 415008 E0128468 8FB3009C */ lw $s3, 0x9c($sp) +/* 41500C E012846C 8FB20098 */ lw $s2, 0x98($sp) +/* 415010 E0128470 8FB10094 */ lw $s1, 0x94($sp) +/* 415014 E0128474 8FB00090 */ lw $s0, 0x90($sp) +/* 415018 E0128478 03E00008 */ jr $ra +/* 41501C E012847C 27BD00B8 */ addiu $sp, $sp, 0xb8 diff --git a/src/code_32E490.c b/src/code_32E490.c new file mode 100644 index 0000000000..bdcd826d85 --- /dev/null +++ b/src/code_32E490.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_32E490", func_E0014000); + +INCLUDE_ASM(s32, "code_32E490", func_E0014258); + +INCLUDE_ASM(s32, "code_32E490", func_E0014260); + +INCLUDE_ASM(s32, "code_32E490", func_E001449C); + +INCLUDE_ASM(s32, "code_32E490", func_E00144E0); diff --git a/src/code_32EE30.c b/src/code_32EE30.c new file mode 100644 index 0000000000..64b1472f61 --- /dev/null +++ b/src/code_32EE30.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_32EE30", func_E0016000); + +INCLUDE_ASM(s32, "code_32EE30", func_E0016220); + +INCLUDE_ASM(s32, "code_32EE30", func_E0016228); + +INCLUDE_ASM(s32, "code_32EE30", func_E0016410); + +INCLUDE_ASM(s32, "code_32EE30", func_E0016454); diff --git a/src/code_32FE30.c b/src/code_32FE30.c new file mode 100644 index 0000000000..ad542dae26 --- /dev/null +++ b/src/code_32FE30.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_32FE30", func_E001A000); + +INCLUDE_ASM(s32, "code_32FE30", func_E001A21C); + +INCLUDE_ASM(s32, "code_32FE30", func_E001A224); + +INCLUDE_ASM(s32, "code_32FE30", func_E001A3FC); + +INCLUDE_ASM(s32, "code_32FE30", func_E001A440); diff --git a/src/code_330910.c b/src/code_330910.c new file mode 100644 index 0000000000..536ffed2e3 --- /dev/null +++ b/src/code_330910.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_330910", func_E001C000); + +INCLUDE_ASM(s32, "code_330910", func_E001C120); + +INCLUDE_ASM(s32, "code_330910", func_E001C128); + +INCLUDE_ASM(s32, "code_330910", func_E001C200); + +INCLUDE_ASM(s32, "code_330910", func_E001C30C); diff --git a/src/code_34DD20.c b/src/code_34DD20.c new file mode 100644 index 0000000000..65df1f7201 --- /dev/null +++ b/src/code_34DD20.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_34DD20", func_E0038000); + +INCLUDE_ASM(s32, "code_34DD20", func_E003841C); + +INCLUDE_ASM(s32, "code_34DD20", func_E0038424); + +INCLUDE_ASM(s32, "code_34DD20", func_E0038704); + +INCLUDE_ASM(s32, "code_34DD20", func_E0038748); diff --git a/src/code_353300.c b/src/code_353300.c new file mode 100644 index 0000000000..ed77392138 --- /dev/null +++ b/src/code_353300.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_353300", func_E0040000); + +INCLUDE_ASM(s32, "code_353300", func_E0040148); + +INCLUDE_ASM(s32, "code_353300", func_E0040150); + +INCLUDE_ASM(s32, "code_353300", func_E0040210); + +INCLUDE_ASM(s32, "code_353300", func_E0040348); diff --git a/src/code_3547A0.c b/src/code_3547A0.c new file mode 100644 index 0000000000..7dfadba36e --- /dev/null +++ b/src/code_3547A0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3547A0", func_E0042000); + +INCLUDE_ASM(s32, "code_3547A0", func_E004222C); + +INCLUDE_ASM(s32, "code_3547A0", func_E0042234); + +INCLUDE_ASM(s32, "code_3547A0", func_E0042374); + +INCLUDE_ASM(s32, "code_3547A0", func_E00423B8); diff --git a/src/code_359F20.c b/src/code_359F20.c new file mode 100644 index 0000000000..5c4d801be5 --- /dev/null +++ b/src/code_359F20.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_359F20", func_E004C000); + +INCLUDE_ASM(s32, "code_359F20", func_E004C204); + +INCLUDE_ASM(s32, "code_359F20", func_E004C20C); + +INCLUDE_ASM(s32, "code_359F20", func_E004C364); + +INCLUDE_ASM(s32, "code_359F20", func_E004C3A8); diff --git a/src/code_35CA80.c b/src/code_35CA80.c new file mode 100644 index 0000000000..3e9774a0d3 --- /dev/null +++ b/src/code_35CA80.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_35CA80", func_E0052000); + +INCLUDE_ASM(s32, "code_35CA80", func_E00520E8); + +INCLUDE_ASM(s32, "code_35CA80", func_E00520F0); + +INCLUDE_ASM(s32, "code_35CA80", func_E005241C); + +INCLUDE_ASM(s32, "code_35CA80", func_E0052460); diff --git a/src/code_35DA00.c b/src/code_35DA00.c new file mode 100644 index 0000000000..2a28a48a1c --- /dev/null +++ b/src/code_35DA00.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_35DA00", func_E0056000); + +INCLUDE_ASM(s32, "code_35DA00", func_E0056304); + +INCLUDE_ASM(s32, "code_35DA00", func_E005630C); + +INCLUDE_ASM(s32, "code_35DA00", func_E0056B8C); + +INCLUDE_ASM(s32, "code_35DA00", func_E0056BD0); diff --git a/src/code_35E920.c b/src/code_35E920.c new file mode 100644 index 0000000000..c4ada3cf2a --- /dev/null +++ b/src/code_35E920.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_35E920", func_E0058000); + +INCLUDE_ASM(s32, "code_35E920", func_E00581AC); + +INCLUDE_ASM(s32, "code_35E920", func_E00581B4); + +INCLUDE_ASM(s32, "code_35E920", func_E0058490); + +INCLUDE_ASM(s32, "code_35E920", func_E00584D4); diff --git a/src/code_360F40.c b/src/code_360F40.c new file mode 100644 index 0000000000..2de63e9e65 --- /dev/null +++ b/src/code_360F40.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_360F40", func_E005C000); + +INCLUDE_ASM(s32, "code_360F40", func_E005C178); + +INCLUDE_ASM(s32, "code_360F40", func_E005C180); + +INCLUDE_ASM(s32, "code_360F40", func_E005C2B4); + +INCLUDE_ASM(s32, "code_360F40", func_E005C2F8); diff --git a/src/code_3625C0.c b/src/code_3625C0.c new file mode 100644 index 0000000000..87f8d56fbd --- /dev/null +++ b/src/code_3625C0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3625C0", func_E005E000); + +INCLUDE_ASM(s32, "code_3625C0", func_E005E1B0); + +INCLUDE_ASM(s32, "code_3625C0", func_E005E1B8); + +INCLUDE_ASM(s32, "code_3625C0", func_E005E310); + +INCLUDE_ASM(s32, "code_3625C0", func_E005E318); + +INCLUDE_ASM(s32, "code_3625C0", func_E005E334); diff --git a/src/code_363160.c b/src/code_363160.c new file mode 100644 index 0000000000..ece0fe2d65 --- /dev/null +++ b/src/code_363160.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_363160", func_E0060000); + +INCLUDE_ASM(s32, "code_363160", func_E00601D8); + +INCLUDE_ASM(s32, "code_363160", func_E00601E0); + +INCLUDE_ASM(s32, "code_363160", func_E006040C); + +INCLUDE_ASM(s32, "code_363160", func_E0060450); diff --git a/src/code_364300.c b/src/code_364300.c new file mode 100644 index 0000000000..7031e48607 --- /dev/null +++ b/src/code_364300.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_364300", func_E0062000); + +INCLUDE_ASM(s32, "code_364300", func_E0062218); + +INCLUDE_ASM(s32, "code_364300", func_E0062220); + +INCLUDE_ASM(s32, "code_364300", func_E00624A8); + +INCLUDE_ASM(s32, "code_364300", func_E00624EC); diff --git a/src/code_364F10.c b/src/code_364F10.c new file mode 100644 index 0000000000..f85ed2efb6 --- /dev/null +++ b/src/code_364F10.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_364F10", func_E0064000); + +INCLUDE_ASM(s32, "code_364F10", func_E006419C); + +INCLUDE_ASM(s32, "code_364F10", func_E00641A4); + +INCLUDE_ASM(s32, "code_364F10", func_E00643DC); + +INCLUDE_ASM(s32, "code_364F10", func_E0064414); diff --git a/src/code_37C540.c b/src/code_37C540.c new file mode 100644 index 0000000000..10a8dcf402 --- /dev/null +++ b/src/code_37C540.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_37C540", func_E007A000); + +INCLUDE_ASM(s32, "code_37C540", func_E007A504); + +INCLUDE_ASM(s32, "code_37C540", func_E007A50C); + +INCLUDE_ASM(s32, "code_37C540", func_E007A840); + +INCLUDE_ASM(s32, "code_37C540", func_E007A884); + +INCLUDE_ASM(s32, "code_37C540", func_E007A88C); diff --git a/src/code_37D490.c b/src/code_37D490.c new file mode 100644 index 0000000000..e73829c5a4 --- /dev/null +++ b/src/code_37D490.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_37D490", func_E007C000); + +INCLUDE_ASM(s32, "code_37D490", func_E007C128); + +INCLUDE_ASM(s32, "code_37D490", func_E007C130); + +INCLUDE_ASM(s32, "code_37D490", func_E007C1B0); + +INCLUDE_ASM(s32, "code_37D490", func_E007C1F4); diff --git a/src/code_38DE00.c b/src/code_38DE00.c new file mode 100644 index 0000000000..fe62e367db --- /dev/null +++ b/src/code_38DE00.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_38DE00", func_E008C000); + +INCLUDE_ASM(s32, "code_38DE00", func_E008C3F4); + +INCLUDE_ASM(s32, "code_38DE00", func_E008C3FC); + +INCLUDE_ASM(s32, "code_38DE00", func_E008C6B8); + +INCLUDE_ASM(s32, "code_38DE00", func_E008C6FC); diff --git a/src/code_394280.c b/src/code_394280.c new file mode 100644 index 0000000000..00b1efb00a --- /dev/null +++ b/src/code_394280.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_394280", func_E0096000); + +INCLUDE_ASM(s32, "code_394280", func_E00960EC); + +INCLUDE_ASM(s32, "code_394280", func_E00960F4); + +INCLUDE_ASM(s32, "code_394280", func_E0096178); + +INCLUDE_ASM(s32, "code_394280", func_E00961BC); diff --git a/src/code_395BB0.c b/src/code_395BB0.c new file mode 100644 index 0000000000..66b93463ba --- /dev/null +++ b/src/code_395BB0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_395BB0", func_E0098000); + +INCLUDE_ASM(s32, "code_395BB0", func_E0098168); + +INCLUDE_ASM(s32, "code_395BB0", func_E0098170); + +INCLUDE_ASM(s32, "code_395BB0", func_E009829C); + +INCLUDE_ASM(s32, "code_395BB0", func_E00982EC); diff --git a/src/code_3965B0.c b/src/code_3965B0.c new file mode 100644 index 0000000000..13107a87f9 --- /dev/null +++ b/src/code_3965B0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3965B0", func_E009A000); + +INCLUDE_ASM(s32, "code_3965B0", func_E009A138); + +INCLUDE_ASM(s32, "code_3965B0", func_E009A140); + +INCLUDE_ASM(s32, "code_3965B0", func_E009A398); + +INCLUDE_ASM(s32, "code_3965B0", func_E009A3E0); diff --git a/src/code_3981F0.c b/src/code_3981F0.c new file mode 100644 index 0000000000..b61dfe2915 --- /dev/null +++ b/src/code_3981F0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3981F0", func_E009C000); + +INCLUDE_ASM(s32, "code_3981F0", func_E009C100); + +INCLUDE_ASM(s32, "code_3981F0", func_E009C108); + +INCLUDE_ASM(s32, "code_3981F0", func_E009C1DC); + +INCLUDE_ASM(s32, "code_3981F0", func_E009C220); diff --git a/src/code_39FF20.c b/src/code_39FF20.c new file mode 100644 index 0000000000..8e51651225 --- /dev/null +++ b/src/code_39FF20.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_39FF20", func_E009E000); + +INCLUDE_ASM(s32, "code_39FF20", func_E009E1DC); + +INCLUDE_ASM(s32, "code_39FF20", func_E009E1E4); + +INCLUDE_ASM(s32, "code_39FF20", func_E009E3DC); + +INCLUDE_ASM(s32, "code_39FF20", func_E009E424); diff --git a/src/code_3A2290.c b/src/code_3A2290.c new file mode 100644 index 0000000000..c79c457598 --- /dev/null +++ b/src/code_3A2290.c @@ -0,0 +1,3 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3A2290", func_E00A0000); diff --git a/src/code_3A2990.c b/src/code_3A2990.c new file mode 100644 index 0000000000..a46a191291 --- /dev/null +++ b/src/code_3A2990.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3A2990", func_E00A2000); + +INCLUDE_ASM(s32, "code_3A2990", func_E00A2118); + +INCLUDE_ASM(s32, "code_3A2990", func_E00A2120); + +INCLUDE_ASM(s32, "code_3A2990", func_E00A21EC); + +INCLUDE_ASM(s32, "code_3A2990", func_E00A2234); + +INCLUDE_ASM(s32, "code_3A2990", func_E00A223C); diff --git a/src/code_3A5550.c b/src/code_3A5550.c new file mode 100644 index 0000000000..65cee8e11b --- /dev/null +++ b/src/code_3A5550.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3A5550", func_E00A6000); + +INCLUDE_ASM(s32, "code_3A5550", func_E00A611C); + +INCLUDE_ASM(s32, "code_3A5550", func_E00A6124); + +INCLUDE_ASM(s32, "code_3A5550", func_E00A6358); + +INCLUDE_ASM(s32, "code_3A5550", func_E00A639C); + +INCLUDE_ASM(s32, "code_3A5550", func_E00A63A4); diff --git a/src/code_3B4790.c b/src/code_3B4790.c new file mode 100644 index 0000000000..d5d6e254f3 --- /dev/null +++ b/src/code_3B4790.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3B4790", func_E00B2000); + +INCLUDE_ASM(s32, "code_3B4790", func_E00B21DC); + +INCLUDE_ASM(s32, "code_3B4790", func_E00B21E4); + +INCLUDE_ASM(s32, "code_3B4790", func_E00B2460); + +INCLUDE_ASM(s32, "code_3B4790", func_E00B24A8); + +INCLUDE_ASM(s32, "code_3B4790", func_E00B24B0); diff --git a/src/code_3B5CF0.c b/src/code_3B5CF0.c new file mode 100644 index 0000000000..128b3c5615 --- /dev/null +++ b/src/code_3B5CF0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3B5CF0", func_E00B4000); + +INCLUDE_ASM(s32, "code_3B5CF0", func_E00B4134); + +INCLUDE_ASM(s32, "code_3B5CF0", func_E00B413C); + +INCLUDE_ASM(s32, "code_3B5CF0", func_E00B452C); + +INCLUDE_ASM(s32, "code_3B5CF0", func_E00B4574); + +INCLUDE_ASM(s32, "code_3B5CF0", func_E00B457C); diff --git a/src/code_3B7160.c b/src/code_3B7160.c new file mode 100644 index 0000000000..6c270b7c2b --- /dev/null +++ b/src/code_3B7160.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3B7160", func_E00B6000); + +INCLUDE_ASM(s32, "code_3B7160", func_E00B6178); + +INCLUDE_ASM(s32, "code_3B7160", func_E00B6180); + +INCLUDE_ASM(s32, "code_3B7160", func_E00B629C); + +INCLUDE_ASM(s32, "code_3B7160", func_E00B62D8); + +INCLUDE_ASM(s32, "code_3B7160", func_E00B62E0); diff --git a/src/code_3B8BD0.c b/src/code_3B8BD0.c new file mode 100644 index 0000000000..81827da854 --- /dev/null +++ b/src/code_3B8BD0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3B8BD0", func_E00BA000); + +INCLUDE_ASM(s32, "code_3B8BD0", func_E00BA16C); + +INCLUDE_ASM(s32, "code_3B8BD0", func_E00BA174); + +INCLUDE_ASM(s32, "code_3B8BD0", func_E00BA5DC); + +INCLUDE_ASM(s32, "code_3B8BD0", func_E00BA618); + +INCLUDE_ASM(s32, "code_3B8BD0", func_E00BA620); diff --git a/src/code_3BBF60.c b/src/code_3BBF60.c new file mode 100644 index 0000000000..071932f16e --- /dev/null +++ b/src/code_3BBF60.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3BBF60", func_E00BE000); + +INCLUDE_ASM(s32, "code_3BBF60", func_E00BE39C); + +INCLUDE_ASM(s32, "code_3BBF60", func_E00BE3A4); + +INCLUDE_ASM(s32, "code_3BBF60", func_E00BE578); + +INCLUDE_ASM(s32, "code_3BBF60", func_E00BE5B4); + +INCLUDE_ASM(s32, "code_3BBF60", func_E00BE5BC); diff --git a/src/code_3BCD60.c b/src/code_3BCD60.c new file mode 100644 index 0000000000..b9f46b04ef --- /dev/null +++ b/src/code_3BCD60.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3BCD60", func_E00C0000); + +INCLUDE_ASM(s32, "code_3BCD60", func_E00C0158); + +INCLUDE_ASM(s32, "code_3BCD60", func_E00C0160); + +INCLUDE_ASM(s32, "code_3BCD60", func_E00C0710); + +INCLUDE_ASM(s32, "code_3BCD60", func_E00C0758); + +INCLUDE_ASM(s32, "code_3BCD60", func_E00C0760); diff --git a/src/code_3C11D0.c b/src/code_3C11D0.c new file mode 100644 index 0000000000..74873b98ef --- /dev/null +++ b/src/code_3C11D0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3C11D0", func_E00C2000); + +INCLUDE_ASM(s32, "code_3C11D0", func_E00C2124); + +INCLUDE_ASM(s32, "code_3C11D0", func_E00C212C); + +INCLUDE_ASM(s32, "code_3C11D0", func_E00C21CC); + +INCLUDE_ASM(s32, "code_3C11D0", func_E00C2214); + +INCLUDE_ASM(s32, "code_3C11D0", func_E00C221C); diff --git a/src/code_3CADF0.c b/src/code_3CADF0.c new file mode 100644 index 0000000000..7a19ec9a52 --- /dev/null +++ b/src/code_3CADF0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3CADF0", func_E00C4000); + +INCLUDE_ASM(s32, "code_3CADF0", func_E00C4170); + +INCLUDE_ASM(s32, "code_3CADF0", func_E00C4178); + +INCLUDE_ASM(s32, "code_3CADF0", func_E00C42C4); + +INCLUDE_ASM(s32, "code_3CADF0", func_E00C4300); + +INCLUDE_ASM(s32, "code_3CADF0", func_E00C4308); diff --git a/src/code_3CC9E0.c b/src/code_3CC9E0.c new file mode 100644 index 0000000000..d4aee270b3 --- /dev/null +++ b/src/code_3CC9E0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3CC9E0", func_E00C6000); + +INCLUDE_ASM(s32, "code_3CC9E0", func_E00C6394); + +INCLUDE_ASM(s32, "code_3CC9E0", func_E00C639C); + +INCLUDE_ASM(s32, "code_3CC9E0", func_E00C6768); + +INCLUDE_ASM(s32, "code_3CC9E0", func_E00C67B0); diff --git a/src/code_3CF3A0.c b/src/code_3CF3A0.c new file mode 100644 index 0000000000..a6c910a3e3 --- /dev/null +++ b/src/code_3CF3A0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3CF3A0", func_E00C8000); + +INCLUDE_ASM(s32, "code_3CF3A0", func_E00C8218); + +INCLUDE_ASM(s32, "code_3CF3A0", func_E00C8220); + +INCLUDE_ASM(s32, "code_3CF3A0", func_E00C8404); + +INCLUDE_ASM(s32, "code_3CF3A0", func_E00C844C); + +INCLUDE_ASM(s32, "code_3CF3A0", func_E00C8454); diff --git a/src/code_3D0500.c b/src/code_3D0500.c new file mode 100644 index 0000000000..9b970d7237 --- /dev/null +++ b/src/code_3D0500.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D0500", func_E00CA000); + +INCLUDE_ASM(s32, "code_3D0500", func_E00CA240); + +INCLUDE_ASM(s32, "code_3D0500", func_E00CA248); + +INCLUDE_ASM(s32, "code_3D0500", func_E00CA484); + +INCLUDE_ASM(s32, "code_3D0500", func_E00CA4CC); diff --git a/src/code_3D1690.c b/src/code_3D1690.c new file mode 100644 index 0000000000..73fdfc1bde --- /dev/null +++ b/src/code_3D1690.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D1690", func_E00CC000); + +INCLUDE_ASM(s32, "code_3D1690", func_E00CC250); + +INCLUDE_ASM(s32, "code_3D1690", func_E00CC258); + +INCLUDE_ASM(s32, "code_3D1690", func_E00CC980); + +INCLUDE_ASM(s32, "code_3D1690", func_E00CC9C8); + +INCLUDE_ASM(s32, "code_3D1690", func_E00CC9D0); diff --git a/src/code_3D2AC0.c b/src/code_3D2AC0.c new file mode 100644 index 0000000000..8b30cb6d9f --- /dev/null +++ b/src/code_3D2AC0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D2AC0", func_E00CE000); + +INCLUDE_ASM(s32, "code_3D2AC0", func_E00CE21C); + +INCLUDE_ASM(s32, "code_3D2AC0", func_E00CE224); + +INCLUDE_ASM(s32, "code_3D2AC0", func_E00CE428); + +INCLUDE_ASM(s32, "code_3D2AC0", func_E00CE470); + +INCLUDE_ASM(s32, "code_3D2AC0", func_E00CE478); diff --git a/src/code_3D3E20.c b/src/code_3D3E20.c new file mode 100644 index 0000000000..43be331fdc --- /dev/null +++ b/src/code_3D3E20.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D3E20", func_E00D0000); + +INCLUDE_ASM(s32, "code_3D3E20", func_E00D018C); + +INCLUDE_ASM(s32, "code_3D3E20", func_E00D0194); + +INCLUDE_ASM(s32, "code_3D3E20", func_E00D0448); + +INCLUDE_ASM(s32, "code_3D3E20", func_E00D048C); diff --git a/src/code_3D4970.c b/src/code_3D4970.c new file mode 100644 index 0000000000..60f46559ee --- /dev/null +++ b/src/code_3D4970.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D4970", func_E00D2000); + +INCLUDE_ASM(s32, "code_3D4970", func_E00D2118); + +INCLUDE_ASM(s32, "code_3D4970", func_E00D2120); + +INCLUDE_ASM(s32, "code_3D4970", func_E00D2234); + +INCLUDE_ASM(s32, "code_3D4970", func_E00D227C); + +INCLUDE_ASM(s32, "code_3D4970", func_E00D2284); diff --git a/src/code_3D5020.c b/src/code_3D5020.c new file mode 100644 index 0000000000..9a14ca7133 --- /dev/null +++ b/src/code_3D5020.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D5020", func_E00D6000); + +INCLUDE_ASM(s32, "code_3D5020", func_E00D6718); + +INCLUDE_ASM(s32, "code_3D5020", func_E00D6720); + +INCLUDE_ASM(s32, "code_3D5020", func_E00D693C); + +INCLUDE_ASM(s32, "code_3D5020", func_E00D6978); + +INCLUDE_ASM(s32, "code_3D5020", func_E00D6980); diff --git a/src/code_3D67C0.c b/src/code_3D67C0.c new file mode 100644 index 0000000000..d250950aa7 --- /dev/null +++ b/src/code_3D67C0.c @@ -0,0 +1,19 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8000); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8120); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8128); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D825C); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8264); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8280); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8288); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8334); + +INCLUDE_ASM(s32, "code_3D67C0", func_E00D8630); diff --git a/src/code_3D7240.c b/src/code_3D7240.c new file mode 100644 index 0000000000..ba2e3d63ec --- /dev/null +++ b/src/code_3D7240.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D7240", func_E00DA000); + +INCLUDE_ASM(s32, "code_3D7240", func_E00DA0FC); + +INCLUDE_ASM(s32, "code_3D7240", func_E00DA104); + +INCLUDE_ASM(s32, "code_3D7240", func_E00DA1E0); + +INCLUDE_ASM(s32, "code_3D7240", func_E00DA228); + +INCLUDE_ASM(s32, "code_3D7240", func_E00DA230); diff --git a/src/code_3D7A70.c b/src/code_3D7A70.c new file mode 100644 index 0000000000..b046432aa5 --- /dev/null +++ b/src/code_3D7A70.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D7A70", func_E00DC000); + +INCLUDE_ASM(s32, "code_3D7A70", func_E00DC190); + +INCLUDE_ASM(s32, "code_3D7A70", func_E00DC198); + +INCLUDE_ASM(s32, "code_3D7A70", func_E00DC2C0); + +INCLUDE_ASM(s32, "code_3D7A70", func_E00DC2FC); + +INCLUDE_ASM(s32, "code_3D7A70", func_E00DC304); diff --git a/src/code_3D8720.c b/src/code_3D8720.c new file mode 100644 index 0000000000..099b0e21cc --- /dev/null +++ b/src/code_3D8720.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3D8720", func_E00DE000); + +INCLUDE_ASM(s32, "code_3D8720", func_E00DE11C); + +INCLUDE_ASM(s32, "code_3D8720", func_E00DE124); + +INCLUDE_ASM(s32, "code_3D8720", func_E00DE260); + +INCLUDE_ASM(s32, "code_3D8720", func_E00DE2A8); diff --git a/src/code_3DB460.c b/src/code_3DB460.c new file mode 100644 index 0000000000..961ea36be5 --- /dev/null +++ b/src/code_3DB460.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3DB460", func_E00E0000); + +INCLUDE_ASM(s32, "code_3DB460", func_E00E01D0); + +INCLUDE_ASM(s32, "code_3DB460", func_E00E01D8); + +INCLUDE_ASM(s32, "code_3DB460", func_E00E05B0); + +INCLUDE_ASM(s32, "code_3DB460", func_E00E05F8); + +INCLUDE_ASM(s32, "code_3DB460", func_E00E0600); diff --git a/src/code_3DC310.c b/src/code_3DC310.c new file mode 100644 index 0000000000..94649f5216 --- /dev/null +++ b/src/code_3DC310.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3DC310", func_E00E2000); + +INCLUDE_ASM(s32, "code_3DC310", func_E00E212C); + +INCLUDE_ASM(s32, "code_3DC310", func_E00E2134); + +INCLUDE_ASM(s32, "code_3DC310", func_E00E21C8); + +INCLUDE_ASM(s32, "code_3DC310", func_E00E2210); + +INCLUDE_ASM(s32, "code_3DC310", func_E00E2218); diff --git a/src/code_3DE000.c b/src/code_3DE000.c new file mode 100644 index 0000000000..524dbdb2e1 --- /dev/null +++ b/src/code_3DE000.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3DE000", func_E00E4000); + +INCLUDE_ASM(s32, "code_3DE000", func_E00E4288); + +INCLUDE_ASM(s32, "code_3DE000", func_E00E4290); + +INCLUDE_ASM(s32, "code_3DE000", func_E00E490C); + +INCLUDE_ASM(s32, "code_3DE000", func_E00E4954); + +INCLUDE_ASM(s32, "code_3DE000", func_E00E495C); diff --git a/src/code_3E0930.c b/src/code_3E0930.c new file mode 100644 index 0000000000..e5221e715c --- /dev/null +++ b/src/code_3E0930.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3E0930", func_E00E6000); + +INCLUDE_ASM(s32, "code_3E0930", func_E00E617C); + +INCLUDE_ASM(s32, "code_3E0930", func_E00E6184); + +INCLUDE_ASM(s32, "code_3E0930", func_E00E64D4); + +INCLUDE_ASM(s32, "code_3E0930", func_E00E651C); + +INCLUDE_ASM(s32, "code_3E0930", func_E00E6524); diff --git a/src/code_3E1690.c b/src/code_3E1690.c new file mode 100644 index 0000000000..52ec076a07 --- /dev/null +++ b/src/code_3E1690.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3E1690", func_E00E8000); + +INCLUDE_ASM(s32, "code_3E1690", func_E00E825C); + +INCLUDE_ASM(s32, "code_3E1690", func_E00E8264); + +INCLUDE_ASM(s32, "code_3E1690", func_E00E8374); + +INCLUDE_ASM(s32, "code_3E1690", func_E00E83BC); diff --git a/src/code_3E1EE0.c b/src/code_3E1EE0.c new file mode 100644 index 0000000000..1b22de3307 --- /dev/null +++ b/src/code_3E1EE0.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3E1EE0", func_E00EA000); + +INCLUDE_ASM(s32, "code_3E1EE0", func_E00EA190); + +INCLUDE_ASM(s32, "code_3E1EE0", func_E00EA198); + +INCLUDE_ASM(s32, "code_3E1EE0", func_E00EA520); + +INCLUDE_ASM(s32, "code_3E1EE0", func_E00EA664); + +INCLUDE_ASM(s32, "code_3E1EE0", func_E00EA66C); diff --git a/src/code_3E43A0.c b/src/code_3E43A0.c new file mode 100644 index 0000000000..6c97c54d08 --- /dev/null +++ b/src/code_3E43A0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3E43A0", func_E010A000); + +INCLUDE_ASM(s32, "code_3E43A0", func_E010A184); + +INCLUDE_ASM(s32, "code_3E43A0", func_E010A18C); + +INCLUDE_ASM(s32, "code_3E43A0", func_E010A4A0); + +INCLUDE_ASM(s32, "code_3E43A0", func_E010A4E8); diff --git a/src/code_3E54C0.c b/src/code_3E54C0.c new file mode 100644 index 0000000000..6e18f32d24 --- /dev/null +++ b/src/code_3E54C0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3E54C0", func_E010C000); + +INCLUDE_ASM(s32, "code_3E54C0", func_E010C190); + +INCLUDE_ASM(s32, "code_3E54C0", func_E010C198); + +INCLUDE_ASM(s32, "code_3E54C0", func_E010C354); + +INCLUDE_ASM(s32, "code_3E54C0", func_E010C39C); diff --git a/src/code_3F83F0.c b/src/code_3F83F0.c new file mode 100644 index 0000000000..42ba5059b9 --- /dev/null +++ b/src/code_3F83F0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3F83F0", func_E0110000); + +INCLUDE_ASM(s32, "code_3F83F0", func_E0110224); + +INCLUDE_ASM(s32, "code_3F83F0", func_E011022C); + +INCLUDE_ASM(s32, "code_3F83F0", func_E01103A4); + +INCLUDE_ASM(s32, "code_3F83F0", func_E01103EC); diff --git a/src/code_3F9E50.c b/src/code_3F9E50.c new file mode 100644 index 0000000000..941b124ea1 --- /dev/null +++ b/src/code_3F9E50.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3F9E50", func_E0112000); + +INCLUDE_ASM(s32, "code_3F9E50", func_E01121B8); + +INCLUDE_ASM(s32, "code_3F9E50", func_E01121C0); + +INCLUDE_ASM(s32, "code_3F9E50", func_E01122E8); + +INCLUDE_ASM(s32, "code_3F9E50", func_E0112330); + +INCLUDE_ASM(s32, "code_3F9E50", func_E01124CC); diff --git a/src/code_3FEAE0.c b/src/code_3FEAE0.c new file mode 100644 index 0000000000..32dd599f1e --- /dev/null +++ b/src/code_3FEAE0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_3FEAE0", func_E0114000); + +INCLUDE_ASM(s32, "code_3FEAE0", func_E01140D4); + +INCLUDE_ASM(s32, "code_3FEAE0", func_E01140DC); + +INCLUDE_ASM(s32, "code_3FEAE0", func_E0114340); + +INCLUDE_ASM(s32, "code_3FEAE0", func_E0114388); diff --git a/src/code_402640.c b/src/code_402640.c new file mode 100644 index 0000000000..508793f4c8 --- /dev/null +++ b/src/code_402640.c @@ -0,0 +1,13 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_402640", func_E0116000); + +INCLUDE_ASM(s32, "code_402640", func_E0116184); + +INCLUDE_ASM(s32, "code_402640", func_E011618C); + +INCLUDE_ASM(s32, "code_402640", func_E01166A0); + +INCLUDE_ASM(s32, "code_402640", func_E01166E8); + +INCLUDE_ASM(s32, "code_402640", func_E0116884); diff --git a/src/code_403400.c b/src/code_403400.c new file mode 100644 index 0000000000..2eeb7a0c64 --- /dev/null +++ b/src/code_403400.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_403400", func_E0118000); + +INCLUDE_ASM(s32, "code_403400", func_E01182EC); + +INCLUDE_ASM(s32, "code_403400", func_E01182F4); + +INCLUDE_ASM(s32, "code_403400", func_E0118454); + +INCLUDE_ASM(s32, "code_403400", func_E011849C); diff --git a/src/code_404220.c b/src/code_404220.c new file mode 100644 index 0000000000..3b6170f97b --- /dev/null +++ b/src/code_404220.c @@ -0,0 +1,17 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_404220", func_E011A000); + +INCLUDE_ASM(s32, "code_404220", func_E011A0FC); + +INCLUDE_ASM(s32, "code_404220", func_E011A104); + +INCLUDE_ASM(s32, "code_404220", func_E011A398); + +INCLUDE_ASM(s32, "code_404220", func_E011A3A0); + +INCLUDE_ASM(s32, "code_404220", func_E011A3BC); + +INCLUDE_ASM(s32, "code_404220", func_E011A48C); + +INCLUDE_ASM(s32, "code_404220", func_E011A700); diff --git a/src/code_409990.c b/src/code_409990.c new file mode 100644 index 0000000000..ec663ee4a7 --- /dev/null +++ b/src/code_409990.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_409990", func_E011E000); + +INCLUDE_ASM(s32, "code_409990", func_E011E18C); + +INCLUDE_ASM(s32, "code_409990", func_E011E194); + +INCLUDE_ASM(s32, "code_409990", func_E011E530); + +INCLUDE_ASM(s32, "code_409990", func_E011E578); diff --git a/src/code_40B3F0.c b/src/code_40B3F0.c new file mode 100644 index 0000000000..c925ba9c17 --- /dev/null +++ b/src/code_40B3F0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_40B3F0", func_E0120000); + +INCLUDE_ASM(s32, "code_40B3F0", func_E0120134); + +INCLUDE_ASM(s32, "code_40B3F0", func_E012013C); + +INCLUDE_ASM(s32, "code_40B3F0", func_E012039C); + +INCLUDE_ASM(s32, "code_40B3F0", func_E01203E4); diff --git a/src/code_40C5A0.c b/src/code_40C5A0.c new file mode 100644 index 0000000000..da945aac46 --- /dev/null +++ b/src/code_40C5A0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_40C5A0", func_E0122000); + +INCLUDE_ASM(s32, "code_40C5A0", func_E0122174); + +INCLUDE_ASM(s32, "code_40C5A0", func_E012217C); + +INCLUDE_ASM(s32, "code_40C5A0", func_E01226C4); + +INCLUDE_ASM(s32, "code_40C5A0", func_E012270C); diff --git a/src/code_412730.c b/src/code_412730.c new file mode 100644 index 0000000000..7225fe71c4 --- /dev/null +++ b/src/code_412730.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_412730", func_E0124000); + +INCLUDE_ASM(s32, "code_412730", func_E01242FC); + +INCLUDE_ASM(s32, "code_412730", func_E0124304); + +INCLUDE_ASM(s32, "code_412730", func_E012448C); + +INCLUDE_ASM(s32, "code_412730", func_E01244C4); diff --git a/src/code_413360.c b/src/code_413360.c new file mode 100644 index 0000000000..cc797beaaf --- /dev/null +++ b/src/code_413360.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_413360", func_E0126000); + +INCLUDE_ASM(s32, "code_413360", func_E012612C); + +INCLUDE_ASM(s32, "code_413360", func_E0126134); + +INCLUDE_ASM(s32, "code_413360", func_E01264A4); + +INCLUDE_ASM(s32, "code_413360", func_E01264EC); diff --git a/src/code_414BA0.c b/src/code_414BA0.c new file mode 100644 index 0000000000..6075cfe7b5 --- /dev/null +++ b/src/code_414BA0.c @@ -0,0 +1,11 @@ +#include "common.h" + +INCLUDE_ASM(s32, "code_414BA0", func_E0128000); + +INCLUDE_ASM(s32, "code_414BA0", func_E0128128); + +INCLUDE_ASM(s32, "code_414BA0", func_E0128130); + +INCLUDE_ASM(s32, "code_414BA0", func_E0128198); + +INCLUDE_ASM(s32, "code_414BA0", func_E01281E0); diff --git a/tools/splat.yaml b/tools/splat.yaml index d69334e139..f5de63c6f8 100644 --- a/tools/splat.yaml +++ b/tools/splat.yaml @@ -237,7 +237,7 @@ segments: start: 0x91520 # section may start earlier vram: 0 # TODO files: - - [0x91520, .data, world/partners] + - [0x91520, .data, world/partners] - [0x917EC, bin] - [0x93CD0, ci4, ui/hammer, 32, 32] - [0x93ED0, palette, ui/hammer] @@ -421,414 +421,529 @@ segments: start: 0x317020 vram: 0x802BD100 files: - - [0x317020, c, world/partner/goombario] - - [0x317b60, .data, world/partner/goombario] - - [0x317DA0, bin, world/partner/goombario] # rodata containing a double and a jumptable + - [0x317020, c, world/partner/goombario] + - [0x317b60, .data, world/partner/goombario] + - [0x317DA0, bin, world/partner/goombario] # rodata containing a double and a jumptable - type: code ld_name: world_partner_bombette start: 0x317e50 vram: 0x802BD100 files: - - [0x317e50, c, world/partner/bombette] - - [0x3195d0, bin] + - [0x317e50, c, world/partner/bombette] + - [0x3195d0, bin] - type: code ld_name: world_partner_parakarry start: 0x319670 vram: 0x802BD100 files: - - [0x319670, c, world/partner/parakarry] - - [0x31b000, bin] + - [0x319670, c, world/partner/parakarry] + - [0x31b000, bin] - type: code ld_name: world_partner_kooper start: 0x31b120 vram: 0x802BD100 files: - - [0x31b120, c, world/partner/kooper] - - [0x31cb60, bin] + - [0x31b120, c, world/partner/kooper] + - [0x31cb60, bin] - type: code ld_name: world_partner_watt start: 0x31cc70 vram: 0x802BD100 files: - - [0x31cc70, c, world/partner/watt] - - [0x31ddc0, bin] + - [0x31cc70, c, world/partner/watt] + - [0x31ddc0, bin] - type: code ld_name: world_partner_sushie start: 0x31de70 vram: 0x802BD100 files: - - [0x31de70, c, world/partner/sushie] - - [0x320b20, bin] + - [0x31de70, c, world/partner/sushie] + - [0x320b20, bin] - type: code ld_name: world_partner_lakilester start: 0x320c50 vram: 0x802BD100 files: - - [0x320c50, c, world/partner/lakilester] - - [0x3239b0, bin] + - [0x320c50, c, world/partner/lakilester] + - [0x3239b0, bin] - type: code ld_name: world_partner_bow start: 0x323A50 vram: 0x802BD100 files: - - [0x323A50, c, world/partner/bow] - - [0x324930, bin] + - [0x323A50, c, world/partner/bow] + - [0x324930, bin] - type: code ld_name: world_partner_goompa start: 0x324a10 vram: 0x802BD100 files: - - [0x324a10, c, world/partner/goompa] - - [0x324e80, .data, world/partner/goompa] - - [0x324F00, bin, world/partner/goompa] # rodata with single f64 0.8 + - [0x324a10, c, world/partner/goompa] + - [0x324e80, .data, world/partner/goompa] + - [0x324F00, bin, world/partner/goompa] # rodata with single f64 0.8 - type: code ld_name: world_partner_goombaria start: 0x324f10 vram: 0x802BD100 files: - - [0x324f10, c, world/partner/goombaria] - - [0x325000, .data, world/partner/goombaria] + - [0x324f10, c, world/partner/goombaria] + - [0x325000, .data, world/partner/goombaria] - type: code ld_name: world_partner_twink start: 0x325070 vram: 0x802BD100 files: - - [0x325070, c, world/partner/twink] - - [0x325160, .data, world/partner/twink] + - [0x325070, c, world/partner/twink] + - [0x325160, .data, world/partner/twink] - type: code start: 0x3251d0 vram: 0x802BD100 files: - - [0x3251d0, c] - - [0x3255e0, bin] + - [0x3251d0, c] + - [0x3255e0, bin] - type: code start: 0x325ad0 vram: 0xE0200000 files: - - [0x325ad0, c] - - [0x325ee0, c] - - [0x326160, bin] + - [0x325ad0, c] + - [0x325ee0, c] + - [0x326160, bin] - [0x326410, bin] - type: code start: 0x3278f0 vram: 0xE0002000 files: - - [0x3278f0, c] - - [0x328050, bin] + - [0x3278f0, c] + - [0x328050, bin] - type: code start: 0x328110 vram: 0xE000C000 files: - - [0x328110, c] - - [0x328d20, bin] + - [0x328110, c] + - [0x328d20, bin] - [0x328EA0, bin] - type: code start: 0x32C110 vram: 0xE000E000 files: - - [0x32C110, c] - - [0x32c770, bin] - - [0x32c7a0, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x32ceb0, bin] # data/rodata section for above. - - [0x32dd10, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x32ec10, bin] # data/rodata section for above. - - [0x32ee30, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x32f550, bin] # data/rodata section for above. - - [0x32f580, bin] # code, unknown VRAM addr. Leaving as bin for now. + - [0x32C110, c] + - [0x32c770, bin] + # - type: code # Weird VRAM address offset + # start: 0x32C7A0 + # vram: 0xE00101E8 + # files: + # - [0x32C7A0, c] + # - [0x32CEB0, bin] + # - type: code # Weird VRAM address offset + # start: 0x32DD10 + # vram: 0xE0012204 + # files: + # - [0x32DD10, c] + - type: code + start: 0x32E490 + vram: 0xE0014000 + files: + - [0x32E490, c] + - [0x32EC10, bin] + - type: code + start: 0x32EE30 + vram: 0xE0016000 + files: + - [0x32EE30, c] + - [0x32F550, bin] + # - type: code # Weird VRAM address offset + # start: 0x32F580 + # vram: 0xE0018078 + # files: + # - [0x32F580, c] - [0x32fb50, bin] # data/rodata section for above. - - [0x32fe30, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x330440, bin] # data/rodata section for above. - - [0x330910, bin] # code, unknown VRAM addr. Leaving as bin for now. + - type: code + start: 0x32FE30 + vram: 0xE001A000 + files: + - [0x32FE30, c] + - [0x330440, bin] + - type: code + start: 0x330910 + vram: 0xE001C000 + files: + - [0x330910, c] - [0x330ef0, bin] # data/rodata section for above. - type: code start: 0x331940 vram: 0xE001E000 files: - - [0x331940, c] - - [0x332690, bin] + - [0x331940, c] + - [0x332690, bin] - [0x3326A0, bin] - type: code start: 0x333ec0 vram: 0xE0020000 files: - - [0x333ec0, c] - - [0x334b50, bin] + - [0x333ec0, c] + - [0x334b50, bin] - [0x334C70, bin] - type: code start: 0x337240 vram: 0xE0022000 files: - - [0x337240, c] - - [0x337f10, bin] + - [0x337240, c] + - [0x337f10, bin] - [0x337FC0, bin] - type: code start: 0x339250 vram: 0xE0024000 files: - - [0x339250, c] - - [0x339f10, bin] + - [0x339250, c] + - [0x339f10, bin] - [0x339F60, bin] - type: code start: 0x33B180 vram: 0xE0026000 files: - - [0x33B180, c] - - [0x33bb70, bin] + - [0x33B180, c] + - [0x33bb70, bin] - [0x33BBD0, bin] - type: code start: 0x33CDF0 vram: 0xE0028000 files: - - [0x33CDF0, c] - - [0x33d5d0, bin] + - [0x33CDF0, c] + - [0x33d5d0, bin] - [0x33D610, bin] - type: code start: 0x33E8C0 vram: 0xE002A000 files: - - [0x33E8C0, c] - - [0x33efe0, bin] + - [0x33E8C0, c] + - [0x33efe0, bin] - type: code start: 0x33FE80 vram: 0xE002C000 files: - - [0x33FE80, c] - - [0x3407c0, bin] + - [0x33FE80, c] + - [0x3407c0, bin] - [0x340880, bin] - type: code start: 0x3419E0 vram: 0xE002E000 files: - - [0x3419E0, c] - - [0x342120, bin] + - [0x3419E0, c] + - [0x342120, bin] - type: code start: 0x342140 vram: 0xE0030000 files: - - [0x342140, c] - - [0x342fd0, bin] + - [0x342140, c] + - [0x342fd0, bin] - [0x343040, bin] - type: code start: 0x343680 vram: 0xE0032000 files: - - [0x343680, c] - - [0x343f30, bin] + - [0x343680, c] + - [0x343f30, bin] - [0x343F70, bin] - type: code start: 0x344a10 vram: 0xE0034000 files: - - [0x344a10, c] - - [0x345190, bin] + - [0x344a10, c] + - [0x345190, bin] - [0x3451E0, bin] - type: code start: 0x3454E0 vram: 0xE0036000 files: - - [0x3454E0, c] - - [0x345b10, bin] + - [0x3454E0, c] + - [0x345b10, bin] - [0x345B40, bin] + - type: code + start: 0x34DD20 + vram: 0xE0038000 + files: + - [0x34DD20, c] + - [0x34E710, bin] - type: code start: 0x34EC80 vram: 0xE003A000 files: - - [0x34EC80, c] - - [0x34f480, bin] + - [0x34EC80, c] + - [0x34f480, bin] - type: code start: 0x34F4C0 vram: 0xE003C000 files: - - [0x34F4C0, c] - - [0x350160, bin] + - [0x34F4C0, c] + - [0x350160, bin] - [0x350220, bin] - type: code start: 0x352440 vram: 0xE003E000 files: - - [0x352440, c] - - [0x352cb0, bin] + - [0x352440, c] + - [0x352cb0, bin] - [0x352CE0, bin] + - type: code + start: 0x353300 + vram: 0xE0040000 + files: + - [0x353300, c] + - [0x353B40, bin] + - type: code + start: 0x3547A0 + vram: 0xE0042000 + files: + - [0x3547A0, c] + - [0x354F20, bin] - type: code start: 0x354F60 vram: 0xE0044000 files: - - [0x354F60, c] - - [0x355d10, bin] + - [0x354F60, c] + - [0x355d10, bin] - type: code start: 0x355EE0 vram: 0xE0046000 files: - - [0x355EE0, c] - - [0x3564e0, bin] + - [0x355EE0, c] + - [0x3564e0, bin] - [0x356530, bin] - type: code start: 0x356980 vram: 0xE0048000 files: - - [0x356980, c] - - [0x357380, bin] + - [0x356980, c] + - [0x357380, bin] - [0x3573A0, bin] - type: code start: 0x3584C0 vram: 0xE004A000 files: - - [0x3584C0, c] - - [0x359320, bin] + - [0x3584C0, c] + - [0x359320, bin] - [0x3593B0, bin] + - type: code + start: 0x359F20 + vram: 0xE004C000 + files: + - [0x359F20, c] + - [0x35A580, bin] - type: code start: 0x35B9D0 vram: 0xE004E000 files: - - [0x35B9D0, c] - - [0x35bfb0, bin] + - [0x35B9D0, c] + - [0x35bfb0, bin] - type: code start: 0x35BFD0 vram: 0xE0050000 files: - - [0x35BFD0, c] - - [0x35c530, bin] + - [0x35BFD0, c] + - [0x35c530, bin] - [0x35C550, bin] + - type: code + start: 0x35CA80 + vram: 0xE0052000 + files: + - [0x35CA80, c] + - [0x35D460, bin] + - type: code + start: 0x35DA00 + vram: 0xE0056000 + files: + - [0x35DA00, c] + - [0x35E8A0, bin] + - type: code + start: 0x35E920 + vram: 0xE0058000 + files: + - [0x35E920, c] + - [0x35F0A0, bin] - type: code start: 0x3602C0 vram: 0xE005A000 files: - - [0x3602C0, c] - - [0x360a10, bin] + - [0x3602C0, c] + - [0x360a10, bin] - [0x360A30, bin] - - [0x360f40, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x361640, bin] # data/rodata for the above, and some extra unknown data. - - [0x3625c0, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x362c30, bin] # data/rodata for the above, and some extra unknown data. - - [0x363160, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x363890, bin] # data/rodata for the above, and some extra unknown data. - - [0x364300, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x364bc0, bin] # data/rodata for the above, and some extra unknown data. - - [0x364f10, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x365970, bin] # data/rodata for the above, and some extra unknown data. + - type: code + start: 0x360F40 + vram: 0xE005C000 + files: + - [0x360F40, c] + - [0x361640, bin] + - type: code + start: 0x3625C0 + vram: 0xE005E000 + files: + - [0x3625C0, c] + - [0x362C30, bin] + - type: code + start: 0x363160 + vram: 0xE0060000 + files: + - [0x363160, c] + - [0x363890, bin] + - type: code + start: 0x364300 + vram: 0xE0062000 + files: + - [0x364300, c] + - [0x364BC0, bin] + - type: code + start: 0x364F10 + vram: 0xE0064000 + files: + - [0x364F10, c] + - [0x365970, bin] - type: code start: 0x366030 vram: 0xE0066000 files: - - [0x366030, c] - - [0x366c80, bin] + - [0x366030, c] + - [0x366c80, bin] - [0x366D60, bin] - type: code start: 0x36A8D0 vram: 0xE0068000 files: - - [0x36A8D0, c] - - [0x36ae80, bin] + - [0x36A8D0, c] + - [0x36ae80, bin] - [0x36AEE0, bin] - type: code start: 0x36D020 vram: 0xE006A000 files: - - [0x36D020, c] - - [0x36de10, bin] + - [0x36D020, c] + - [0x36de10, bin] - [0x36DF90, bin] - type: code start: 0x36E1D0 vram: 0xE006C000 files: - - [0x36E1D0, c] - - [0x36ed30, bin] + - [0x36E1D0, c] + - [0x36ed30, bin] - [0x36ED60, bin] - type: code start: 0x372790 vram: 0xE006E000 files: - - [0x372790, c] - - [0x373390, bin] + - [0x372790, c] + - [0x373390, bin] - [0x3733E0, bin] - type: code start: 0x3740B0 vram: 0xE0070000 files: - - [0x3740B0, c] - - [0x374d80, bin] + - [0x3740B0, c] + - [0x374d80, bin] - type: code start: 0x374E50 vram: 0xE0072000 files: - - [0x374E50, c] - - [0x375500, bin] + - [0x374E50, c] + - [0x375500, bin] - [0x375510, bin] - type: code start: 0x376460 vram: 0xE0074000 files: - - [0x376460, c] - - [0x376fc0, bin] + - [0x376460, c] + - [0x376fc0, bin] - type: code start: 0x377070 vram: 0xE0076000 files: - - [0x377070, c] - - [0x377f00, bin] + - [0x377070, c] + - [0x377f00, bin] - [0x377F80, bin] - type: code start: 0x37A3F0 vram: 0xE0078000 files: - - [0x37A3F0, c] - - [0x37acf0, bin] + - [0x37A3F0, c] + - [0x37acf0, bin] - [0x37ADD0, bin] + - type: code + start: 0x37C540 + vram: 0xE007A000 + files: + - [0x37C540, c] + - [0x37D140, bin] + - type: code + start: 0x37D490 + vram: 0xE007C000 + files: + - [0x37D490, c] + - [0x37D9A0, bin] - [0x37D9D0, bin] - type: code start: 0x37F720 vram: 0xE007E000 files: - - [0x37F720, c] - - [0x380350, bin] + - [0x37F720, c] + - [0x380350, bin] - [0x3803A0, bin] - type: code start: 0x3812C0 vram: 0xE0080000 files: - - [0x3812C0, c] - - [0x381d80, bin] + - [0x3812C0, c] + - [0x381d80, bin] - [0x381E00, bin] - type: code start: 0x385640 vram: 0xE0082000 files: - - [0x385640, c] - - [0x386340, bin] + - [0x385640, c] + - [0x386340, bin] - [0x3863B0, bin] - type: code start: 0x3889D0 vram: 0xE0084000 files: - - [0x3889D0, c] - - [0x3897e0, bin] + - [0x3889D0, c] + - [0x3897e0, bin] - type: code start: 0x389850 vram: 0xE0086000 files: - - [0x389850, c] - - [0x38a2f0, bin] + - [0x389850, c] + - [0x38a2f0, bin] - [0x38A350, bin] - type: code start: 0x38ADF0 vram: 0xE0088000 files: - - [0x38ADF0, c] - - [0x38bab0, bin] + - [0x38ADF0, c] + - [0x38bab0, bin] - [0x38BBA0, bin] + # - type: code # Weird VRAM address offset + # start: 0x38C5F0 + # vram: 0xE008A188 + # files: + # - [0x38C5F0, c] + # - [0x38D040, bin] + - type: code + start: 0x38DE00 + vram: 0xE008C000 + files: + - [0x38DE00, c] + - [0x38E8F0, bin] - type: code start: 0x38EE60 vram: 0xE008E000 files: - - [0x38EE60, c] - - [0x38f6f0, bin] + - [0x38EE60, c] + - [0x38f6f0, bin] - [0x38F710, bin] - type: code start: 0x38F900 vram: 0xE0090000 files: - - [0x38F900, c] - - [0x390340, bin] + - [0x38F900, c] + - [0x390340, bin] - [0x3903D0, bin] - start: 0x390810 type: ia4 @@ -841,43 +956,77 @@ segments: start: 0x391D30 vram: 0xE0092000 files: - - [0x391D30, c] - - [0x3923c0, bin] + - [0x391D30, c] + - [0x3923c0, bin] - [0x392440, bin] - type: code start: 0x3928D0 vram: 0xE0094000 files: - - [0x3928D0, c] - - [0x393080, bin] + - [0x3928D0, c] + - [0x393080, bin] - [0x3930A0, bin] - - [0x394280, bin] # code, unknown VRAM addr. Leaving as bin for now. + - type: code + start: 0x394280 + vram: 0xE0096000 + files: + - [0x394280, c] - [0x394660, bin] # data/rodata for the above, and some extra unknown data. - - [0x395bb0, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x3960c0, bin] # data/rodata for the above, and some extra unknown data. - - [0x3965b0, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x397010, bin] # data/rodata for the above, and some extra unknown data. - - [0x3981f0, bin] # code, unknown VRAM addr. Leaving as bin for now. + - type: code + start: 0x395BB0 + vram: 0xE0098000 + files: + - [0x395BB0, c] + - [0x3960C0, bin] + - type: code + start: 0x3965B0 + vram: 0xE009A000 + files: + - [0x3965B0, c] + - [0x397010, bin] + - type: code + start: 0x3981F0 + vram: 0xE009C000 + files: + - [0x3981F0, c] - [0x398bc0, bin] # data/rodata for the above, and some extra unknown data. - - [0x39ff20, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x3a0d10, bin] # data/rodata for the above, and some extra unknown data. - - [0x3a2290, bin] # code, unknown VRAM addr. Leaving as bin for now. + - type: code + start: 0x39FF20 + vram: 0xE009E000 + files: + - [0x39FF20, c] + - [0x3A0D10, bin] + - type: code + start: 0x3A2290 + vram: 0xE00A0000 + files: + - [0x3A2290, c] - [0x3a2440, bin] # data/rodata for the above, and some extra unknown data. - - [0x3a2990, bin] # code, unknown VRAM addr. Leaving as bin for now. - - [0x3a3360, bin] # data/rodata for the above, and some extra unknown data. + - type: code + start: 0x3A2990 + vram: 0xE00A2000 + files: + - [0x3A2990, c] + - [0x3A3360, bin] - type: code start: 0x3A37E0 vram: 0xE00A4000 files: - - [0x3A37E0, c] - - [0x3a42b0, bin] + - [0x3A37E0, c] + - [0x3a42b0, bin] - [0x3A4320, bin] + - type: code + start: 0x3A5550 + vram: 0xE00A6000 + files: + - [0x3A5550, c] + - [0x3A5BE0, bin] - type: code start: 0x3A70F0 vram: 0xE00A8000 files: - - [0x3A70F0, c] - - [0x3A7710, bin] + - [0x3A70F0, c] + - [0x3A7710, bin] - [0x3A77A0, bin] # split further - type: code start: 0x3AA920 @@ -906,6 +1055,24 @@ segments: - [0x3B3EB0, c] - [0x3B4690, bin] - [0x3B46A0, bin] # todo split this further + - type: code + start: 0x3B4790 + vram: 0xE00B2000 + files: + - [0x3B4790, c] + - [0x3B5330, bin] + - type: code + start: 0x3B5CF0 + vram: 0xE00B4000 + files: + - [0x3B5CF0, c] + - [0x3B69E0, bin] + - type: code + start: 0x3B7160 + vram: 0xE00B6000 + files: + - [0x3B7160, c] + - [0x3B78B0, bin] - type: code start: 0x3B7B80 vram: 0xE00B8000 @@ -913,6 +1080,12 @@ segments: - [0x3B7B80, c] - [0x3B8470, bin] - [0x3B8860, bin] # todo split this further + - type: code + start: 0x3B8BD0 + vram: 0xE00BA000 + files: + - [0x3B8BD0, c] + - [0x3B9A50, bin] - type: code start: 0x3BA030 vram: 0xE00BC000 @@ -920,8 +1093,235 @@ segments: - [0x3BA030, c] - [0x3BAC60, bin] - [0x3BAEA0, bin] # todo split this further ADD STUFF AFTER HERE + - type: code + start: 0x3BBF60 + vram: 0xE00BE000 + files: + - [0x3BBF60, c] + - [0x3BCA50, bin] + - type: code + start: 0x3BCD60 + vram: 0xE00C0000 + files: + - [0x3BCD60, c] + - [0x3BD770, bin] + - type: code + start: 0x3C11D0 + vram: 0xE00C2000 + files: + - [0x3C11D0, c] + - [0x3C1B60, bin] + - type: code + start: 0x3CADF0 + vram: 0xE00C4000 + files: + - [0x3CADF0, c] + - [0x3CB7C0, bin] + - type: code + start: 0x3CC9E0 + vram: 0xE00C6000 + files: + - [0x3CC9E0, c] + - [0x3CD670, bin] + - type: code + start: 0x3CF3A0 + vram: 0xE00C8000 + files: + - [0x3CF3A0, c] + - [0x3CFAB0, bin] + - type: code + start: 0x3D0500 + vram: 0xE00CA000 + files: + - [0x3D0500, c] + - [0x3D11B0, bin] + - type: code + start: 0x3D1690 + vram: 0xE00CC000 + files: + - [0x3D1690, c] + - [0x3D2460, bin] + - type: code + start: 0x3D2AC0 + vram: 0xE00CE000 + files: + - [0x3D2AC0, c] + - [0x3D3910, bin] + - type: code + start: 0x3D3E20 + vram: 0xE00D0000 + files: + - [0x3D3E20, c] + - [0x3D4930, bin] + - type: code + start: 0x3D4970 + vram: 0xE00D2000 + files: + - [0x3D4970, c] + - [0x3D4E70, bin] + - type: code + start: 0x3D5020 + vram: 0xE00D6000 + files: + - [0x3D5020, c] + - [0x3D5E60, bin] + - type: code + start: 0x3D67C0 + vram: 0xE00D8000 + files: + - [0x3D67C0, c] + - [0x3D6FA0, bin] + - type: code + start: 0x3D7240 + vram: 0xE00DA000 + files: + - [0x3D7240, c] + - [0x3D7740, bin] + - type: code + start: 0x3D7A70 + vram: 0xE00DC000 + files: + - [0x3D7A70, c] + - [0x3D80B0, bin] + - type: code + start: 0x3D8720 + vram: 0xE00DE000 + files: + - [0x3D8720, c] + - [0x3D8F30, bin] + - type: code + start: 0x3DB460 + vram: 0xE00E0000 + files: + - [0x3DB460, c] + - [0x3DBEA0, bin] + - type: code + start: 0x3DC310 + vram: 0xE00E2000 + files: + - [0x3DC310, c] + - [0x3DCD00, bin] + - type: code + start: 0x3DE000 + vram: 0xE00E4000 + files: + - [0x3DE000, c] + - [0x3DED90, bin] + - type: code + start: 0x3E0930 + vram: 0xE00E6000 + files: + - [0x3E0930, c] + - [0x3E11B0, bin] + - type: code + start: 0x3E1690 + vram: 0xE00E8000 + files: + - [0x3E1690, c] + - [0x3E1CC0, bin] + - type: code + start: 0x3E1EE0 + vram: 0xE00EA000 + files: + - [0x3E1EE0, c] + - [0x3E2930, bin] + - type: code + start: 0x3E43A0 + vram: 0xE010A000 + files: + - [0x3E43A0, c] + - [0x3E5060, bin] + - type: code + start: 0x3E54C0 + vram: 0xE010C000 + files: + - [0x3E54C0, c] + - [0x3E5ED0, bin] + # - type: code # current issue with labels, probably because this starts at a non-0x10 ram offset? + # start: 0x3EB4E0 + # vram: 0xE010E32C + # files: + # - [0x3EB4E0, c] + # - [0x3EBC30, bin] - [0x3ED4E0, ia8, world/text_chapter, 128, 38] - [0x3EE7E0, bin] + - type: code + start: 0x3F83F0 + vram: 0xE0110000 + files: + - [0x3F83F0, c] + - [0x3F8CA0, bin] + - type: code + start: 0x3F9E50 + vram: 0xE0112000 + files: + - [0x3F9E50, c] + - [0x3FA480, bin] + - type: code + start: 0x3FEAE0 + vram: 0xE0114000 + files: + - [0x3FEAE0, c] + - [0x3FF180, bin] + - type: code + start: 0x402640 + vram: 0xE0116000 + files: + - [0x402640, c] + - [0x4032A0, bin] + - type: code + start: 0x403400 + vram: 0xE0118000 + files: + - [0x403400, c] + - [0x403BB0, bin] + - type: code + start: 0x404220 + vram: 0xE011A000 + files: + - [0x404220, c] + - [0x404E40, bin] + # - type: code + # start: 0x406B40 + # vram: 0xE011C000 + # files: + # - [0x406B40, c] + - type: code + start: 0x409990 + vram: 0xE011E000 + files: + - [0x409990, c] + - [0x40A180, bin] + - type: code + start: 0x40B3F0 + vram: 0xE0120000 + files: + - [0x40B3F0, c] + - [0x40BB70, bin] + - type: code + start: 0x40C5A0 + vram: 0xE0122000 + files: + - [0x40C5A0, c] + - [0x40D130, bin] + - type: code + start: 0x412730 + vram: 0xE0124000 + files: + - [0x412730, c] + - [0x412FD0, bin] + - type: code + start: 0x413360 + vram: 0xE0126000 + files: + - [0x413360, c] + - [0x413F20, bin] + - type: code + start: 0x414BA0 + vram: 0xE0128000 + files: + - [0x414BA0, c] + - [0x415020, bin] - type: code start: 0x415D90 vram: 0x802A1000 @@ -1424,4051 +1824,4051 @@ segments: start: 0x7E73A0 vram: 0x80240000 files: - - [0x7E73A0, c] - - [0x7E7550, c] - - [0x7E7850, c] - - [0x7E7A30, bin] - - [0x7E8470, bin] - - [0x7EA340, bin] - - [0x7EAA50, bin] - - [0x7EACD8, bin] # rodata - - [0x7EAD10, bin] # rodata + - [0x7E73A0, c] + - [0x7E7550, c] + - [0x7E7850, c] + - [0x7E7A30, bin] + - [0x7E8470, bin] + - [0x7EA340, bin] + - [0x7EAA50, bin] + - [0x7EACD8, bin] # rodata + - [0x7EAD10, bin] # rodata - name: world/area_mac/mac_00/ type: code overlay: True start: 0x7EAD10 vram: 0x80240000 files: - - [0x7EAD10, c] - - [0x7EB340, c] - - [0x7ECFD0, c] - - [0x7ED280, c] - - [0x7EE870, bin] - - [0x7F0A20, bin] - - [0x7F8F20, bin] - - [0x7F9100, bin] - - [0x7F91D0, bin] - - [0x7F9800, bin] - - [0x7F9850, bin] - - [0x7FD1A0, bin] - - [0x7FDF30, bin] - - [0x7FE550, bin] - - [0x8000B0, bin] - - [0x8006A0, bin] # rodata - - [0x8006D0, bin] # rodata - - [0x800880, bin] # rodata + - [0x7EAD10, c] + - [0x7EB340, c] + - [0x7ECFD0, c] + - [0x7ED280, c] + - [0x7EE870, bin] + - [0x7F0A20, bin] + - [0x7F8F20, bin] + - [0x7F9100, bin] + - [0x7F91D0, bin] + - [0x7F9800, bin] + - [0x7F9850, bin] + - [0x7FD1A0, bin] + - [0x7FDF30, bin] + - [0x7FE550, bin] + - [0x8000B0, bin] + - [0x8006A0, bin] # rodata + - [0x8006D0, bin] # rodata + - [0x800880, bin] # rodata - name: world/area_mac/mac_01/ type: code overlay: True start: 0x800880 vram: 0x80240000 files: - - [0x800880, c] - - [0x800C40, c] - - [0x801700, c] - - [0x8017D0, c] - - [0x805DD0, c] - - [0x806D10, c] - - [0x806F50, bin] - - [0x807C00, bin] - - [0x808680, bin] - - [0x808D70, bin] - - [0x8091F0, bin] - - [0x8202D0, bin] - - [0x822100, bin] - - [0x822460, bin] - - [0x822F30, bin] # rodata - - [0x8232C0, bin] # rodata + - [0x800880, c] + - [0x800C40, c] + - [0x801700, c] + - [0x8017D0, c] + - [0x805DD0, c] + - [0x806D10, c] + - [0x806F50, bin] + - [0x807C00, bin] + - [0x808680, bin] + - [0x808D70, bin] + - [0x8091F0, bin] + - [0x8202D0, bin] + - [0x822100, bin] + - [0x822460, bin] + - [0x822F30, bin] # rodata + - [0x8232C0, bin] # rodata - name: world/area_mac/mac_02/ type: code overlay: True start: 0x8232C0 vram: 0x80240000 files: - - [0x8232C0, c] - - [0x8238B0, c] - - [0x823970, c] - - [0x823BB0, c] - - [0x823BF0, c] - - [0x8267E0, bin] - - [0x8268F0, bin] - - [0x827E70, bin] - - [0x8282E0, bin] - - [0x828F10, bin] - - [0x8313E0, bin] - - [0x831490, bin] # rodata + - [0x8232C0, c] + - [0x8238B0, c] + - [0x823970, c] + - [0x823BB0, c] + - [0x823BF0, c] + - [0x8267E0, bin] + - [0x8268F0, bin] + - [0x827E70, bin] + - [0x8282E0, bin] + - [0x828F10, bin] + - [0x8313E0, bin] + - [0x831490, bin] # rodata - name: world/area_mac/mac_03/ type: code overlay: True start: 0x831800 vram: 0x80240000 files: - - [0x831800, c] - - [0x831B20, c] - - [0x833500, c] - - [0x833740, c] - - [0x834070, bin] - - [0x834170, bin] - - [0x835370, bin] - - [0x837CB0, bin] - - [0x83F500, bin] - - [0x83F6C0, bin] - - [0x8404A0, bin] - - [0x842BB0, bin] # rodata + - [0x831800, c] + - [0x831B20, c] + - [0x833500, c] + - [0x833740, c] + - [0x834070, bin] + - [0x834170, bin] + - [0x835370, bin] + - [0x837CB0, bin] + - [0x83F500, bin] + - [0x83F6C0, bin] + - [0x8404A0, bin] + - [0x842BB0, bin] # rodata - name: world/area_mac/mac_04/ type: code overlay: True start: 0x842BD0 vram: 0x80240000 files: - - [0x842BD0, c] - - [0x842C20, c] - - [0x842D90, c] - - [0x842DF0, c] - - [0x843030, c] - - [0x844860, c] - - [0x844AC0, c] - - [0x844BF0, bin] - - [0x844D50, bin] - - [0x845280, bin] - - [0x845CA0, bin] - - [0x8467E0, bin] - - [0x8469B0, bin] - - [0x8508F0, bin] - - [0x851410, bin] - - [0x8520A0, bin] - - [0x852120, bin] # rodata - - [0x852150, bin] # rodata - - [0x852170, bin] # rodata + - [0x842BD0, c] + - [0x842C20, c] + - [0x842D90, c] + - [0x842DF0, c] + - [0x843030, c] + - [0x844860, c] + - [0x844AC0, c] + - [0x844BF0, bin] + - [0x844D50, bin] + - [0x845280, bin] + - [0x845CA0, bin] + - [0x8467E0, bin] + - [0x8469B0, bin] + - [0x8508F0, bin] + - [0x851410, bin] + - [0x8520A0, bin] + - [0x852120, bin] # rodata + - [0x852150, bin] # rodata + - [0x852170, bin] # rodata - name: world/area_mac/mac_05/ type: code overlay: True start: 0x852170 vram: 0x80240000 files: - - [0x852170, c] - - [0x855560, c] - - [0x855F20, c] - - [0x8562D0, bin] - - [0x8564E0, bin] - - [0x856650, bin] - - [0x857070, bin] - - [0x862BC0, bin] - - [0x864450, bin] - - [0x8648B4, bin] - - [0x864910, bin] # rodata - - [0x864AE0, bin] # rodata - - [0x864B20, bin] # rodata + - [0x852170, c] + - [0x855560, c] + - [0x855F20, c] + - [0x8562D0, bin] + - [0x8564E0, bin] + - [0x856650, bin] + - [0x857070, bin] + - [0x862BC0, bin] + - [0x864450, bin] + - [0x8648B4, bin] + - [0x864910, bin] # rodata + - [0x864AE0, bin] # rodata + - [0x864B20, bin] # rodata - name: world/area_mac/mac_06/ type: code overlay: True start: 0x864B40 vram: 0x80240000 files: - - [0x864B40, c] - - [0x865000, c] - - [0x8659C0, c] - - [0x8661D0, bin] - - [0x8666A0, bin] - - [0x867EF0, bin] - - [0x869450, bin] # rodata - - [0x869490, bin] # rodata + - [0x864B40, c] + - [0x865000, c] + - [0x8659C0, c] + - [0x8661D0, bin] + - [0x8666A0, bin] + - [0x867EF0, bin] + - [0x869450, bin] # rodata + - [0x869490, bin] # rodata - name: world/area_tik/tik_01/ type: code overlay: True start: 0x8694B0 vram: 0x80240000 files: - - [0x8694B0, c] - - [0x869AA0, c] - - [0x869EE0, c] - - [0x869F40, bin] - - [0x86A030, bin] - - [0x86B350, bin] - - [0x86BC00, bin] - - [0x86C710, bin] # rodata - - [0x86C740, bin] # rodata + - [0x8694B0, c] + - [0x869AA0, c] + - [0x869EE0, c] + - [0x869F40, bin] + - [0x86A030, bin] + - [0x86B350, bin] + - [0x86BC00, bin] + - [0x86C710, bin] # rodata + - [0x86C740, bin] # rodata - name: world/area_tik/tik_02/ type: code overlay: True start: 0x86C740 vram: 0x80240000 files: - - [0x86C740, c] - - [0x86CA50, c] - - [0x86CD10, c] - - [0x86D0E0, bin] - - [0x86D190, bin] - - [0x86D800, bin] - - [0x86E2C0, bin] - - [0x86EAF0, bin] # rodata - - [0x86EB00, bin] # rodata + - [0x86C740, c] + - [0x86CA50, c] + - [0x86CD10, c] + - [0x86D0E0, bin] + - [0x86D190, bin] + - [0x86D800, bin] + - [0x86E2C0, bin] + - [0x86EAF0, bin] # rodata + - [0x86EB00, bin] # rodata - name: world/area_tik/tik_03/ type: code overlay: True start: 0x86EB00 vram: 0x80240000 files: - - [0x86EB00, c] - - [0x86F0F0, c] - - [0x86F5D0, bin] - - [0x86F670, bin] - - [0x870B60, bin] - - [0x871430, bin] - - [0x871730, bin] - - [0x8717F0, bin] - - [0x871A10, bin] # rodata - - [0x871A30, bin] # rodata + - [0x86EB00, c] + - [0x86F0F0, c] + - [0x86F5D0, bin] + - [0x86F670, bin] + - [0x870B60, bin] + - [0x871430, bin] + - [0x871730, bin] + - [0x8717F0, bin] + - [0x871A10, bin] # rodata + - [0x871A30, bin] # rodata - name: world/area_tik/tik_04/ type: code overlay: True start: 0x871A30 vram: 0x80240000 files: - - [0x871A30, c] - - [0x872020, c] - - [0x8726A0, bin] - - [0x872750, bin] - - [0x8739F0, bin] - - [0x8742C0, bin] - - [0x8746E0, bin] - - [0x874DA0, bin] # rodata + - [0x871A30, c] + - [0x872020, c] + - [0x8726A0, bin] + - [0x872750, bin] + - [0x8739F0, bin] + - [0x8742C0, bin] + - [0x8746E0, bin] + - [0x874DA0, bin] # rodata - name: world/area_tik/tik_05/ type: code overlay: True start: 0x874DC0 vram: 0x80240000 files: - - [0x874DC0, c] - - [0x8750D0, c] - - [0x875810, bin] - - [0x8758C0, bin] - - [0x875D10, bin] - - [0x8765C0, bin] - - [0x876A50, bin] - - [0x876ED0, bin] # rodata - - [0x876EE0, bin] # rodata + - [0x874DC0, c] + - [0x8750D0, c] + - [0x875810, bin] + - [0x8758C0, bin] + - [0x875D10, bin] + - [0x8765C0, bin] + - [0x876A50, bin] + - [0x876ED0, bin] # rodata + - [0x876EE0, bin] # rodata - name: world/area_tik/tik_06/ type: code overlay: True start: 0x876EE0 vram: 0x80240000 files: - - [0x876EE0, c] - - [0x8774D0, c] - - [0x877840, bin] - - [0x8778F0, bin] - - [0x878F90, bin] - - [0x879860, bin] - - [0x879BB0, bin] # rodata - - [0x879BE0, bin] # rodata + - [0x876EE0, c] + - [0x8774D0, c] + - [0x877840, bin] + - [0x8778F0, bin] + - [0x878F90, bin] + - [0x879860, bin] + - [0x879BB0, bin] # rodata + - [0x879BE0, bin] # rodata - name: world/area_tik/tik_07/ type: code overlay: True start: 0x879BE0 vram: 0x80240000 files: - - [0x879BE0, c] - - [0x87AC00, c] - - [0x87C4D0, bin] - - [0x87C570, bin] - - [0x87D5D0, bin] - - [0x87E590, bin] - - [0x87E890, bin] - - [0x87ED80, bin] # rodata - - [0x87EDF0, bin] # rodata + - [0x879BE0, c] + - [0x87AC00, c] + - [0x87C4D0, bin] + - [0x87C570, bin] + - [0x87D5D0, bin] + - [0x87E590, bin] + - [0x87E890, bin] + - [0x87ED80, bin] # rodata + - [0x87EDF0, bin] # rodata - name: world/area_tik/tik_08/ type: code overlay: True start: 0x87EDF0 vram: 0x80240000 files: - - [0x87EDF0, c] - - [0x87F3E0, c] - - [0x87F820, c] - - [0x87F8B0, bin] - - [0x87F9A0, bin] - - [0x881770, bin] - - [0x8819D0, bin] - - [0x8821A0, bin] # rodata + - [0x87EDF0, c] + - [0x87F3E0, c] + - [0x87F820, c] + - [0x87F8B0, bin] + - [0x87F9A0, bin] + - [0x881770, bin] + - [0x8819D0, bin] + - [0x8821A0, bin] # rodata - name: world/area_tik/tik_09/ type: code overlay: True start: 0x8821C0 vram: 0x80240000 files: - - [0x8821C0, c] - - [0x8827B0, c] - - [0x882BF0, c] - - [0x883460, bin] - - [0x883500, bin] - - [0x8856E0, bin] - - [0x885A80, bin] - - [0x886340, bin] # rodata - - [0x886360, bin] # rodata - - [0x8863C0, bin] # rodata + - [0x8821C0, c] + - [0x8827B0, c] + - [0x882BF0, c] + - [0x883460, bin] + - [0x883500, bin] + - [0x8856E0, bin] + - [0x885A80, bin] + - [0x886340, bin] # rodata + - [0x886360, bin] # rodata + - [0x8863C0, bin] # rodata - name: world/area_tik/tik_10/ type: code overlay: True start: 0x8863C0 vram: 0x80240000 files: - - [0x8863C0, c] - - [0x8866D0, c] - - [0x887780, bin] - - [0x887800, bin] - - [0x887B20, bin] - - [0x8883F0, bin] - - [0x888BC0, bin] # rodata - - [0x888BD0, bin] # rodata + - [0x8863C0, c] + - [0x8866D0, c] + - [0x887780, bin] + - [0x887800, bin] + - [0x887B20, bin] + - [0x8883F0, bin] + - [0x888BC0, bin] # rodata + - [0x888BD0, bin] # rodata - name: world/area_tik/tik_12/ type: code overlay: True start: 0x888BD0 vram: 0x80240000 files: - - [0x888BD0, c] - - [0x8891C0, c] - - [0x88A530, c] - - [0x88AE20, bin] - - [0x88AEA0, bin] - - [0x88BF60, bin] - - [0x88C810, bin] - - [0x88D590, bin] # rodata - - [0x88D5A0, bin] # rodata - - [0x88D600, bin] # rodata + - [0x888BD0, c] + - [0x8891C0, c] + - [0x88A530, c] + - [0x88AE20, bin] + - [0x88AEA0, bin] + - [0x88BF60, bin] + - [0x88C810, bin] + - [0x88D590, bin] # rodata + - [0x88D5A0, bin] # rodata + - [0x88D600, bin] # rodata - name: world/area_tik/tik_14/ type: code overlay: True start: 0x88D600 vram: 0x80240000 files: - - [0x88D600, c] - - [0x88DBF0, c] - - [0x88DF60, bin] - - [0x88DFF0, bin] - - [0x88F180, bin] - - [0x88FA30, bin] - - [0x88FB90, bin] # rodata + - [0x88D600, c] + - [0x88DBF0, c] + - [0x88DF60, bin] + - [0x88DFF0, bin] + - [0x88F180, bin] + - [0x88FA30, bin] + - [0x88FB90, bin] # rodata - name: world/area_tik/tik_15/ type: code overlay: True start: 0x88FBA0 vram: 0x80240000 files: - - [0x88FBA0, c] - - [0x890190, c] - - [0x8906B0, bin] - - [0x890740, bin] - - [0x891890, bin] - - [0x8922A0, bin] - - [0x892A10, bin] # rodata + - [0x88FBA0, c] + - [0x890190, c] + - [0x8906B0, bin] + - [0x890740, bin] + - [0x891890, bin] + - [0x8922A0, bin] + - [0x892A10, bin] # rodata - name: world/area_tik/tik_17/ type: code overlay: True start: 0x892A20 vram: 0x80240000 files: - - [0x892A20, c] - - [0x892A50, c] - - [0x893790, c] - - [0x893D80, bin] - - [0x893E40, bin] - - [0x8944F0, bin] - - [0x8956C0, bin] # rodata - - [0x8956E0, bin] # rodata + - [0x892A20, c] + - [0x892A50, c] + - [0x893790, c] + - [0x893D80, bin] + - [0x893E40, bin] + - [0x8944F0, bin] + - [0x8956C0, bin] # rodata + - [0x8956E0, bin] # rodata - name: world/area_tik/tik_18/ type: code overlay: True start: 0x8956E0 vram: 0x80240000 files: - - [0x8956E0, c] - - [0x8959F0, c] - - [0x895D90, bin] - - [0x895E20, bin] - - [0x896CA0, bin] - - [0x897450, bin] - - [0x8975D0, bin] # rodata + - [0x8956E0, c] + - [0x8959F0, c] + - [0x895D90, bin] + - [0x895E20, bin] + - [0x896CA0, bin] + - [0x897450, bin] + - [0x8975D0, bin] # rodata - name: world/area_tik/tik_19/ type: code overlay: True start: 0x8975E0 vram: 0x80240000 files: - - [0x8975E0, c] - - [0x897BD0, c] - - [0x898910, bin] - - [0x898990, bin] - - [0x899C90, bin] - - [0x89A340, bin] # rodata - - [0x89A350, bin] # rodata + - [0x8975E0, c] + - [0x897BD0, c] + - [0x898910, bin] + - [0x898990, bin] + - [0x899C90, bin] + - [0x89A340, bin] # rodata + - [0x89A350, bin] # rodata - name: world/area_tik/tik_20/ type: code overlay: True start: 0x89A350 vram: 0x80240000 files: - - [0x89A350, c] - - [0x89ACB0, c] - - [0x89B490, bin] - - [0x89B530, bin] - - [0x89D200, bin] - - [0x89D720, bin] # rodata - - [0x89D740, bin] # rodata - - [0x89D7A0, bin] # rodata + - [0x89A350, c] + - [0x89ACB0, c] + - [0x89B490, bin] + - [0x89B530, bin] + - [0x89D200, bin] + - [0x89D720, bin] # rodata + - [0x89D740, bin] # rodata + - [0x89D7A0, bin] # rodata - name: world/area_tik/tik_21/ type: code overlay: True start: 0x89D7A0 vram: 0x80240000 files: - - [0x89D7A0, c] - - [0x89E100, bin] - - [0x89E1A0, bin] - - [0x89FD70, bin] - - [0x89FEA0, bin] # rodata - - [0x89FEC0, bin] # rodata + - [0x89D7A0, c] + - [0x89E100, bin] + - [0x89E1A0, bin] + - [0x89FD70, bin] + - [0x89FEA0, bin] # rodata + - [0x89FEC0, bin] # rodata - name: world/area_tik/tik_22/ type: code overlay: True start: 0x89FEC0 vram: 0x80240000 files: - - [0x89FEC0, c] - - [0x89FEF0, c] - - [0x8A0870, bin] - - [0x8A0930, bin] - - [0x8A23C0, bin] # rodata + - [0x89FEC0, c] + - [0x89FEF0, c] + - [0x8A0870, bin] + - [0x8A0930, bin] + - [0x8A23C0, bin] # rodata - name: world/area_tik/tik_23/ type: code overlay: True start: 0x8A23D0 vram: 0x80240000 files: - - [0x8A23D0, c] - - [0x8A2D30, c] - - [0x8A3510, bin] - - [0x8A35A0, bin] - - [0x8A5340, bin] - - [0x8A5A10, bin] # rodata - - [0x8A5A80, bin] # rodata + - [0x8A23D0, c] + - [0x8A2D30, c] + - [0x8A3510, bin] + - [0x8A35A0, bin] + - [0x8A5340, bin] + - [0x8A5A10, bin] # rodata + - [0x8A5A80, bin] # rodata - name: world/area_tik/tik_24/ type: code overlay: True start: 0x8A5A80 vram: 0x80240000 files: - - [0x8A5A80, c] - - [0x8A5AD0, c] - - [0x8A5DE0, c] - - [0x8A6930, bin] - - [0x8A69C0, bin] - - [0x8A7810, bin] - - [0x8A7A20, bin] - - [0x8A7EF0, bin] # rodata - - [0x8A7F20, bin] # rodata - - [0x8A7F80, bin] # rodata + - [0x8A5A80, c] + - [0x8A5AD0, c] + - [0x8A5DE0, c] + - [0x8A6930, bin] + - [0x8A69C0, bin] + - [0x8A7810, bin] + - [0x8A7A20, bin] + - [0x8A7EF0, bin] # rodata + - [0x8A7F20, bin] # rodata + - [0x8A7F80, bin] # rodata - name: world/area_tik/tik_25/ type: code overlay: True start: 0x8A7F80 vram: 0x80240000 files: - - [0x8A7F80, c] - - [0x8A8600, c] - - [0x8A8740, bin] - - [0x8A8800, bin] - - [0x8A93D0, bin] - - [0x8A9A00, bin] # rodata - - [0x8A9A10, bin] # rodata + - [0x8A7F80, c] + - [0x8A8600, c] + - [0x8A8740, bin] + - [0x8A8800, bin] + - [0x8A93D0, bin] + - [0x8A9A00, bin] # rodata + - [0x8A9A10, bin] # rodata - name: world/area_kgr/kgr_01/ type: code overlay: True start: 0x8A9A10 vram: 0x80240000 files: - - [0x8A9A10, c] - - [0x8A9B70, c] - - [0x8A9F30, bin] - - [0x8AA1D0, bin] - - [0x8AA310, bin] - - [0x8AA430, bin] # rodata + - [0x8A9A10, c] + - [0x8A9B70, c] + - [0x8A9F30, bin] + - [0x8AA1D0, bin] + - [0x8AA310, bin] + - [0x8AA430, bin] # rodata - name: world/area_kgr/kgr_02/ type: code overlay: True start: 0x8AA450 vram: 0x80240000 files: - - [0x8AA450, c] - - [0x8AA5B0, c] - - [0x8AAB80, c] - - [0x8AABD0, bin] - - [0x8AADC0, bin] - - [0x8ABE60, bin] - - [0x8ABF80, bin] # rodata + - [0x8AA450, c] + - [0x8AA5B0, c] + - [0x8AAB80, c] + - [0x8AABD0, bin] + - [0x8AADC0, bin] + - [0x8ABE60, bin] + - [0x8ABF80, bin] # rodata - name: world/area_kmr/kmr_00/ type: code overlay: True start: 0x8ABF90 vram: 0x80240000 files: - - [0x8ABF90, c] - - [0x8ACD00, bin] - - [0x8ACDB0, bin] - - [0x8ACFE0, bin] - - [0x8AEC40, bin] - - [0x8B0010, bin] - - [0x8B0060, bin] # rodata + - [0x8ABF90, c] + - [0x8ACD00, bin] + - [0x8ACDB0, bin] + - [0x8ACFE0, bin] + - [0x8AEC40, bin] + - [0x8B0010, bin] + - [0x8B0060, bin] # rodata - name: world/area_kmr/kmr_02/ type: code overlay: True start: 0x8B0070 vram: 0x80240000 files: - - [0x8B0070, c] - - [0x8B30E0, c] - - [0x8B36B0, c] - - [0x8B37D0, c] - - [0x8B3A10, c] - - [0x8B3AB0, bin] - - [0x8B3D10, bin] - - [0x8B5640, bin] - - [0x8C4A40, bin] - - [0x8C51D0, bin] - - [0x8C7010, bin] - - [0x8C7B70, bin] - - [0x8C7D90, bin] # rodata - - [0x8C7DB0, bin] # rodata - - [0x8C7F70, bin] # rodata - - [0x8C7F90, bin] # rodata + - [0x8B0070, c] + - [0x8B30E0, c] + - [0x8B36B0, c] + - [0x8B37D0, c] + - [0x8B3A10, c] + - [0x8B3AB0, bin] + - [0x8B3D10, bin] + - [0x8B5640, bin] + - [0x8C4A40, bin] + - [0x8C51D0, bin] + - [0x8C7010, bin] + - [0x8C7B70, bin] + - [0x8C7D90, bin] # rodata + - [0x8C7DB0, bin] # rodata + - [0x8C7F70, bin] # rodata + - [0x8C7F90, bin] # rodata - name: world/area_kmr/kmr_03/ type: code overlay: True start: 0x8C7F90 vram: 0x80240000 files: - - [0x8C7F90, c] - - [0x8C8140, c] - - [0x8C82B0, c] - - [0x8C83A0, c] - - [0x8C85E0, c] - - [0x8C85E0, .data, world/area_kmr/kmr_03/8C7F90] - - [0x8C8680, .data, world/area_kmr/kmr_03/8C8140] - - [0x8C88E0, .data, world/area_kmr/kmr_03/8C82B0] + - [0x8C7F90, c] + - [0x8C8140, c] + - [0x8C82B0, c] + - [0x8C83A0, c] + - [0x8C85E0, c] + - [0x8C85E0, .data, world/area_kmr/kmr_03/8C7F90] + - [0x8C8680, .data, world/area_kmr/kmr_03/8C8140] + - [0x8C88E0, .data, world/area_kmr/kmr_03/8C82B0] # - [0x8C9400, bin] - - [0x8C9780, .data, world/area_kmr/kmr_03/8C83A0] - - [0x8CA2D0, .data, world/area_kmr/kmr_03/8C85E0] - - [0x8CA8F0, .rodata, world/area_kmr/kmr_03/8C8140] + - [0x8C9780, .data, world/area_kmr/kmr_03/8C83A0] + - [0x8CA2D0, .data, world/area_kmr/kmr_03/8C85E0] + - [0x8CA8F0, .rodata, world/area_kmr/kmr_03/8C8140] - name: world/area_kmr/kmr_04/ type: code overlay: True start: 0x8CA900 vram: 0x80240000 files: - - [0x8CA900, c] - - [0x8CA960, c] - - [0x8CAD70, bin] - - [0x8CAF00, bin] - - [0x8CB160, bin] - - [0x8CC35C, bin] - - [0x8CC4F0, bin] - - [0x8CE060, bin] # rodata - - [0x8CE070, bin] # rodata + - [0x8CA900, c] + - [0x8CA960, c] + - [0x8CAD70, bin] + - [0x8CAF00, bin] + - [0x8CB160, bin] + - [0x8CC35C, bin] + - [0x8CC4F0, bin] + - [0x8CE060, bin] # rodata + - [0x8CE070, bin] # rodata - name: world/area_kmr/kmr_05/ type: code overlay: True start: 0x8CE070 vram: 0x80240000 files: - - [0x8CE070, c] - - [0x8CF570, c] - - [0x8CF7F0, bin] - - [0x8CF880, bin] - - [0x8D0900, bin] - - [0x8D0940, bin] - - [0x8D14A0, bin] # rodata - - [0x8D1510, bin] # rodata + - [0x8CE070, c] + - [0x8CF570, c] + - [0x8CF7F0, bin] + - [0x8CF880, bin] + - [0x8D0900, bin] + - [0x8D0940, bin] + - [0x8D14A0, bin] # rodata + - [0x8D1510, bin] # rodata - name: world/area_kmr/kmr_06/ type: code overlay: True start: 0x8D1510 vram: 0x80240000 files: - - [0x8D1510, c] - - [0x8D2A10, c] - - [0x8D32B0, bin] - - [0x8D3340, bin] - - [0x8D3AC0, bin] - - [0x8D3B30, bin] - - [0x8D3D50, bin] # rodata - - [0x8D3DC0, bin] # rodata + - [0x8D1510, c] + - [0x8D2A10, c] + - [0x8D32B0, bin] + - [0x8D3340, bin] + - [0x8D3AC0, bin] + - [0x8D3B30, bin] + - [0x8D3D50, bin] # rodata + - [0x8D3DC0, bin] # rodata - name: world/area_kmr/kmr_07/ type: code overlay: True start: 0x8D3DC0 vram: 0x80240000 files: - - [0x8D3DC0, c] - - [0x8D4880, bin] - - [0x8D49A0, bin] - - [0x8D5C40, bin] # rodata - - [0x8D5E00, bin] # rodata + - [0x8D3DC0, c] + - [0x8D4880, bin] + - [0x8D49A0, bin] + - [0x8D5C40, bin] # rodata + - [0x8D5E00, bin] # rodata - name: world/area_kmr/kmr_09/ type: code overlay: True start: 0x8D5E00 vram: 0x80240000 files: - - [0x8D5E00, c] - - [0x8D7330, bin] - - [0x8D73C0, bin] - - [0x8D83B0, bin] - - [0x8D8460, bin] # rodata - - [0x8D84D0, bin] # rodata + - [0x8D5E00, c] + - [0x8D7330, bin] + - [0x8D73C0, bin] + - [0x8D83B0, bin] + - [0x8D8460, bin] # rodata + - [0x8D84D0, bin] # rodata - name: world/area_kmr/kmr_10/ type: code overlay: True start: 0x8D84D0 vram: 0x80240000 files: - - [0x8D84D0, c] - - [0x8D88A0, c] - - [0x8D8AE0, bin] - - [0x8D8B80, bin] - - [0x8D8E60, bin] - - [0x8D90F0, bin] - - [0x8DA0F0, bin] # rodata + - [0x8D84D0, c] + - [0x8D88A0, c] + - [0x8D8AE0, bin] + - [0x8D8B80, bin] + - [0x8D8E60, bin] + - [0x8D90F0, bin] + - [0x8DA0F0, bin] # rodata - name: world/area_kmr/kmr_11/ type: code overlay: True start: 0x8DA100 vram: 0x80240000 files: - - [0x8DA100, c] - - [0x8DA3A0, c] - - [0x8DAFC0, c] - - [0x8DB020, c] - - [0x8DB260, bin] - - [0x8DB2F0, bin] - - [0x8DC270, bin] - - [0x8DE400, bin] - - [0x8DFB88, bin] - - [0x8DFBB0, bin] - - [0x8E0190, bin] - - [0x8EB190, bin] # rodata - - [0x8EB1B0, bin] # rodata - - [0x8EB360, bin] # rodata + - [0x8DA100, c] + - [0x8DA3A0, c] + - [0x8DAFC0, c] + - [0x8DB020, c] + - [0x8DB260, bin] + - [0x8DB2F0, bin] + - [0x8DC270, bin] + - [0x8DE400, bin] + - [0x8DFB88, bin] + - [0x8DFBB0, bin] + - [0x8E0190, bin] + - [0x8EB190, bin] # rodata + - [0x8EB1B0, bin] # rodata + - [0x8EB360, bin] # rodata - name: world/area_kmr/kmr_12/ type: code overlay: True start: 0x8EB360 vram: 0x80240000 files: - - [0x8EB360, c, world/area_kmr/kmr_12/header] - - [0x8EB390, .data, world/area_kmr/kmr_12/header] - - [0x8EB420, .data, world/area_kmr/kmr_12/events] - - [0x8EBE10, .rodata, world/area_kmr/kmr_12/events] + - [0x8EB360, c, world/area_kmr/kmr_12/header] + - [0x8EB390, .data, world/area_kmr/kmr_12/header] + - [0x8EB420, .data, world/area_kmr/kmr_12/events] + - [0x8EBE10, .rodata, world/area_kmr/kmr_12/events] - name: world/area_kmr/kmr_20/ type: code overlay: True start: 0x8EBE20 vram: 0x80240000 files: - - [0x8EBE20, c] - - [0x8EBE50, c] - - [0x8ECBF0, c] - - [0x8ECC40, c] - - [0x8ECE80, c] - - [0x8ED0C0, c] - - [0x8ED440, c] - - [0x8ED5A0, c] - - [0x8EDB70, c] - - [0x8EDFC0, c] - - [0x8EE9D0, bin] - - [0x8EEBC0, bin] - - [0x8EFDA0, bin] - - [0x8F01E0, bin] - - [0x8F1500, bin] - - [0x8F1C00, bin] - - [0x8F2610, bin] - - [0x8F3130, bin] - - [0x8F61F0, bin] - - [0x8F66D0, bin] - - [0x8F9D30, bin] - - [0x8FEE20, bin] # rodata - - [0x8FEE50, bin] # rodata - - [0x8FEE80, bin] # rodata + - [0x8EBE20, c] + - [0x8EBE50, c] + - [0x8ECBF0, c] + - [0x8ECC40, c] + - [0x8ECE80, c] + - [0x8ED0C0, c] + - [0x8ED440, c] + - [0x8ED5A0, c] + - [0x8EDB70, c] + - [0x8EDFC0, c] + - [0x8EE9D0, bin] + - [0x8EEBC0, bin] + - [0x8EFDA0, bin] + - [0x8F01E0, bin] + - [0x8F1500, bin] + - [0x8F1C00, bin] + - [0x8F2610, bin] + - [0x8F3130, bin] + - [0x8F61F0, bin] + - [0x8F66D0, bin] + - [0x8F9D30, bin] + - [0x8FEE20, bin] # rodata + - [0x8FEE50, bin] # rodata + - [0x8FEE80, bin] # rodata - name: world/area_kmr/kmr_21/ type: code overlay: True start: 0x8FEE80 vram: 0x80240000 files: - - [0x8FEE80, c] - - [0x8FEE90, c] - - [0x8FF160, bin] - - [0x8FF650, bin] # rodata - - [0x8FF670, bin] # rodata + - [0x8FEE80, c] + - [0x8FEE90, c] + - [0x8FF160, bin] + - [0x8FF650, bin] # rodata + - [0x8FF670, bin] # rodata - name: world/area_kmr/kmr_22/ type: code overlay: True start: 0x8FF670 vram: 0x80240000 files: - - [0x8FF670, c] - - [0x8FF680, c] - - [0x8FF8B0, c] - - [0x900380, bin] - - [0x900A80, bin] - - [0x9079D0, bin] # rodata - - [0x907A20, bin] # rodata - - [0x907A30, bin] # rodata + - [0x8FF670, c] + - [0x8FF680, c] + - [0x8FF8B0, c] + - [0x900380, bin] + - [0x900A80, bin] + - [0x9079D0, bin] # rodata + - [0x907A20, bin] # rodata + - [0x907A30, bin] # rodata - name: world/area_kmr/kmr_23/ type: code overlay: True start: 0x907A30 vram: 0x80240000 files: - - [0x907A30, c] - - [0x907A40, c] - - [0x908B00, bin] - - [0x90B210, bin] # rodata - - [0x90B240, bin] # rodata + - [0x907A30, c] + - [0x907A40, c] + - [0x908B00, bin] + - [0x90B210, bin] # rodata + - [0x90B240, bin] # rodata - name: world/area_kmr/kmr_24/ type: code overlay: True start: 0x90B240 vram: 0x80240000 files: - - [0x90B240, c] - - [0x90B250, c] - - [0x90B350, bin] - - [0x90B6C0, bin] # rodata - - [0x90B6D0, bin] # rodata + - [0x90B240, c] + - [0x90B250, c] + - [0x90B350, bin] + - [0x90B6C0, bin] # rodata + - [0x90B6D0, bin] # rodata - name: world/area_kmr/kmr_30/ type: code overlay: True start: 0x90B6D0 vram: 0x80240000 files: - - [0x90B6D0, c] - - [0x90B9E0, c] - - [0x90BBB0, bin] - - [0x90BDB0, bin] - - [0x90BFF0, bin] + - [0x90B6D0, c] + - [0x90B9E0, c] + - [0x90BBB0, bin] + - [0x90BDB0, bin] + - [0x90BFF0, bin] - name: world/area_iwa/iwa_00/ type: code overlay: True start: 0x90CC40 vram: 0x80240000 files: - - [0x90CC40, c] - - [0x90CEF0, c] - - [0x90CF20, bin] - - [0x90F6A0, bin] # rodata + - [0x90CC40, c] + - [0x90CEF0, c] + - [0x90CF20, bin] + - [0x90F6A0, bin] # rodata - name: world/area_iwa/iwa_01/ type: code overlay: True start: 0x90F6B0 vram: 0x80240000 files: - - [0x90F6B0, c] - - [0x90FBD0, c] - - [0x912960, c] - - [0x912990, bin] - - [0x913070, bin] - - [0x9135D0, bin] - - [0x9154B0, bin] - - [0x915A00, bin] # rodata - - [0x915A20, bin] # rodata - - [0x915A40, bin] # rodata - - [0x915D70, bin] # rodata + - [0x90F6B0, c] + - [0x90FBD0, c] + - [0x912960, c] + - [0x912990, bin] + - [0x913070, bin] + - [0x9135D0, bin] + - [0x9154B0, bin] + - [0x915A00, bin] # rodata + - [0x915A20, bin] # rodata + - [0x915A40, bin] # rodata + - [0x915D70, bin] # rodata - name: world/area_iwa/iwa_02/ type: code overlay: True start: 0x915D70 vram: 0x80240000 files: - - [0x915D70, c] - - [0x916E70, bin] - - [0x917170, bin] - - [0x917220, bin] - - [0x918AA0, bin] # rodata - - [0x918BB0, bin] # rodata + - [0x915D70, c] + - [0x916E70, bin] + - [0x917170, bin] + - [0x917220, bin] + - [0x918AA0, bin] # rodata + - [0x918BB0, bin] # rodata - name: world/area_iwa/iwa_03/ type: code overlay: True start: 0x918BB0 vram: 0x80240000 files: - - [0x918BB0, c] - - [0x918EF0, c] - - [0x919F00, bin] - - [0x91A6B0, bin] - - [0x91B510, bin] - - [0x91B7D0, bin] # rodata - - [0x91B7E0, bin] # rodata - - [0x91B8E0, bin] # rodata + - [0x918BB0, c] + - [0x918EF0, c] + - [0x919F00, bin] + - [0x91A6B0, bin] + - [0x91B510, bin] + - [0x91B7D0, bin] # rodata + - [0x91B7E0, bin] # rodata + - [0x91B8E0, bin] # rodata - name: world/area_iwa/iwa_04/ type: code overlay: True start: 0x91B8E0 vram: 0x80240000 files: - - [0x91B8E0, c] - - [0x91C9C0, bin] - - [0x91CA50, bin] - - [0x91CFA0, bin] - - [0x91E460, bin] # rodata - - [0x91E570, bin] # rodata + - [0x91B8E0, c] + - [0x91C9C0, bin] + - [0x91CA50, bin] + - [0x91CFA0, bin] + - [0x91E460, bin] # rodata + - [0x91E570, bin] # rodata - name: world/area_iwa/iwa_10/ type: code overlay: True start: 0x91E570 vram: 0x80240000 files: - - [0x91E570, c] - - [0x91E5B0, c] - - [0x91E6D0, c] - - [0x91F5A0, c] - - [0x91FA80, c] - - [0x91FB20, c] - - [0x91FD60, bin] - - [0x91FE80, bin] - - [0x920280, bin] - - [0x921830, bin] - - [0x923FD0, bin] - - [0x9247B0, bin] - - [0x9269D0, bin] # rodata + - [0x91E570, c] + - [0x91E5B0, c] + - [0x91E6D0, c] + - [0x91F5A0, c] + - [0x91FA80, c] + - [0x91FB20, c] + - [0x91FD60, bin] + - [0x91FE80, bin] + - [0x920280, bin] + - [0x921830, bin] + - [0x923FD0, bin] + - [0x9247B0, bin] + - [0x9269D0, bin] # rodata - name: world/area_iwa/iwa_11/ type: code overlay: True start: 0x9269F0 vram: 0x80240000 files: - - [0x9269F0, c] - - [0x926A10, c] - - [0x926C70, c] - - [0x926D00, bin] - - [0x926D90, bin] - - [0x927030, bin] - - [0x929240, bin] # rodata - - [0x929270, bin] # rodata + - [0x9269F0, c] + - [0x926A10, c] + - [0x926C70, c] + - [0x926D00, bin] + - [0x926D90, bin] + - [0x927030, bin] + - [0x929240, bin] # rodata + - [0x929270, bin] # rodata - name: world/area_sbk/sbk_00/ type: code overlay: True start: 0x929270 vram: 0x80240000 files: - - [0x929270, c] - - [0x9292B0, c] - - [0x9292D0, .data, world/area_sbk/sbk_00/929270] - - [0x929A00, .data, world/area_sbk/sbk_00/9292B0] - - [0x929A80, .rodata, world/area_sbk/sbk_00/929270] + - [0x929270, c] + - [0x9292B0, c] + - [0x9292D0, .data, world/area_sbk/sbk_00/929270] + - [0x929A00, .data, world/area_sbk/sbk_00/9292B0] + - [0x929A80, .rodata, world/area_sbk/sbk_00/929270] - name: world/area_sbk/sbk_01/ type: code overlay: True start: 0x929A90 vram: 0x80240000 files: - - [0x929A90, c] - - [0x929AD0, c] - - [0x929AF0, .data, world/area_sbk/sbk_01/929A90] - - [0x929E00, .data, world/area_sbk/sbk_01/929AD0] - - [0x92A290, .rodata, world/area_sbk/sbk_01/929A90] + - [0x929A90, c] + - [0x929AD0, c] + - [0x929AF0, .data, world/area_sbk/sbk_01/929A90] + - [0x929E00, .data, world/area_sbk/sbk_01/929AD0] + - [0x92A290, .rodata, world/area_sbk/sbk_01/929A90] - name: world/area_sbk/sbk_02/ type: code overlay: True start: 0x92A2B0 vram: 0x80240000 files: - - [0x92A2B0, c] - - [0x92A9A0, c] - - [0x92AEB0, bin] - - [0x92AFF0, bin] - - [0x92B500, bin] - - [0x92E220, bin] - - [0x92F830, bin] - - [0x92F880, bin] # rodata - - [0x92F8B0, bin] # rodata + - [0x92A2B0, c] + - [0x92A9A0, c] + - [0x92AEB0, bin] + - [0x92AFF0, bin] + - [0x92B500, bin] + - [0x92E220, bin] + - [0x92F830, bin] + - [0x92F880, bin] # rodata + - [0x92F8B0, bin] # rodata - name: world/area_sbk/sbk_03/ type: code overlay: True start: 0x92F8B0 vram: 0x80240000 files: - - [0x92F8B0, c] - - [0x92F8F0, c] - - [0x92F910, bin] - - [0x92FC20, bin] - - [0x9304B0, bin] # rodata - - [0x9304D0, bin] # rodata + - [0x92F8B0, c] + - [0x92F8F0, c] + - [0x92F910, bin] + - [0x92FC20, bin] + - [0x9304B0, bin] # rodata + - [0x9304D0, bin] # rodata - name: world/area_sbk/sbk_04/ type: code overlay: True start: 0x9304D0 vram: 0x80240000 files: - - [0x9304D0, c] - - [0x930510, c] - - [0x930530, bin] - - [0x930840, bin] - - [0x930CD0, bin] # rodata - - [0x930CF0, bin] # rodata + - [0x9304D0, c] + - [0x930510, c] + - [0x930530, bin] + - [0x930840, bin] + - [0x930CD0, bin] # rodata + - [0x930CF0, bin] # rodata - name: world/area_sbk/sbk_05/ type: code overlay: True start: 0x930CF0 vram: 0x80240000 files: - - [0x930CF0, c] - - [0x930D30, c] - - [0x930D50, bin] - - [0x9310F0, bin] - - [0x931130, bin] - - [0x9325A0, bin] # rodata - - [0x9325C0, bin] # rodata + - [0x930CF0, c] + - [0x930D30, c] + - [0x930D50, bin] + - [0x9310F0, bin] + - [0x931130, bin] + - [0x9325A0, bin] # rodata + - [0x9325C0, bin] # rodata - name: world/area_sbk/sbk_06/ type: code overlay: True start: 0x9325C0 vram: 0x80240000 files: - - [0x9325C0, c] - - [0x932600, c] - - [0x932940, bin] - - [0x932BF0, bin] - - [0x933160, bin] - - [0x933C70, bin] # rodata + - [0x9325C0, c] + - [0x932600, c] + - [0x932940, bin] + - [0x932BF0, bin] + - [0x933160, bin] + - [0x933C70, bin] # rodata - name: world/area_sbk/sbk_10/ type: code overlay: True start: 0x933C80 vram: 0x80240000 files: - - [0x933C80, c] - - [0x933CC0, bin] - - [0x933FD0, bin] - - [0x934020, bin] # rodata - - [0x934040, bin] # rodata + - [0x933C80, c] + - [0x933CC0, bin] + - [0x933FD0, bin] + - [0x934020, bin] # rodata + - [0x934040, bin] # rodata - name: world/area_sbk/sbk_11/ type: code overlay: True start: 0x934040 vram: 0x80240000 files: - - [0x934040, c] - - [0x934080, c] - - [0x9341A0, bin] - - [0x934530, bin] - - [0x934D20, bin] # rodata + - [0x934040, c] + - [0x934080, c] + - [0x9341A0, bin] + - [0x934530, bin] + - [0x934D20, bin] # rodata - name: world/area_sbk/sbk_12/ type: code overlay: True start: 0x934D40 vram: 0x80240000 files: - - [0x934D40, c] - - [0x934D80, c] - - [0x934DA0, bin] - - [0x935130, bin] - - [0x9357C0, bin] # rodata + - [0x934D40, c] + - [0x934D80, c] + - [0x934DA0, bin] + - [0x935130, bin] + - [0x9357C0, bin] # rodata - name: world/area_sbk/sbk_13/ type: code overlay: True start: 0x9357E0 vram: 0x80240000 files: - - [0x9357E0, c] - - [0x935820, c] - - [0x935940, bin] - - [0x935CD0, bin] - - [0x9366C0, bin] # rodata + - [0x9357E0, c] + - [0x935820, c] + - [0x935940, bin] + - [0x935CD0, bin] + - [0x9366C0, bin] # rodata - name: world/area_sbk/sbk_14/ type: code overlay: True start: 0x9366E0 vram: 0x80240000 files: - - [0x9366E0, c] - - [0x936720, bin] - - [0x936B20, bin] - - [0x936CA0, bin] # rodata - - [0x936CD0, bin] # rodata + - [0x9366E0, c] + - [0x936720, bin] + - [0x936B20, bin] + - [0x936CA0, bin] # rodata + - [0x936CD0, bin] # rodata - name: world/area_sbk/sbk_15/ type: code overlay: True start: 0x936CD0 vram: 0x80240000 files: - - [0x936CD0, c] - - [0x936D10, c] - - [0x936D30, bin] - - [0x9370C0, bin] - - [0x937550, bin] # rodata + - [0x936CD0, c] + - [0x936D10, c] + - [0x936D30, bin] + - [0x9370C0, bin] + - [0x937550, bin] # rodata - name: world/area_sbk/sbk_16/ type: code overlay: True start: 0x937570 vram: 0x80240000 files: - - [0x937570, c] - - [0x9375B0, c] - - [0x9377F0, bin] - - [0x937B00, bin] - - [0x938570, bin] # rodata - - [0x938590, bin] # rodata + - [0x937570, c] + - [0x9375B0, c] + - [0x9377F0, bin] + - [0x937B00, bin] + - [0x938570, bin] # rodata + - [0x938590, bin] # rodata - name: world/area_sbk/sbk_20/ type: code overlay: True start: 0x938590 vram: 0x80240000 files: - - [0x938590, c] - - [0x9385D0, c] - - [0x9386D0, bin] - - [0x9389F0, bin] - - [0x938DD0, bin] - - [0x939540, bin] # rodata - - [0x939560, bin] # rodata + - [0x938590, c] + - [0x9385D0, c] + - [0x9386D0, bin] + - [0x9389F0, bin] + - [0x938DD0, bin] + - [0x939540, bin] # rodata + - [0x939560, bin] # rodata - name: world/area_sbk/sbk_21/ type: code overlay: True start: 0x939560 vram: 0x80240000 files: - - [0x939560, c] - - [0x9395A0, bin] - - [0x939910, bin] # rodata + - [0x939560, c] + - [0x9395A0, bin] + - [0x939910, bin] # rodata - name: world/area_sbk/sbk_22/ type: code overlay: True start: 0x939930 vram: 0x80240000 files: - - [0x939930, c] - - [0x939970, c] - - [0x939A90, bin] - - [0x93A610, bin] - - [0x93A740, bin] # rodata + - [0x939930, c] + - [0x939970, c] + - [0x939A90, bin] + - [0x93A610, bin] + - [0x93A740, bin] # rodata - name: world/area_sbk/sbk_23/ type: code overlay: True start: 0x93A760 vram: 0x80240000 files: - - [0x93A760, c] - - [0x93A7A0, bin] - - [0x93AB20, bin] - - [0x93AC00, bin] # rodata - - [0x93AC30, bin] # rodata + - [0x93A760, c] + - [0x93A7A0, bin] + - [0x93AB20, bin] + - [0x93AC00, bin] # rodata + - [0x93AC30, bin] # rodata - name: world/area_sbk/sbk_24/ type: code overlay: True start: 0x93AC30 vram: 0x80240000 files: - - [0x93AC30, c] - - [0x93AC70, c] - - [0x93AFB0, bin] - - [0x93B3C0, bin] - - [0x93B770, bin] - - [0x93C260, bin] # rodata + - [0x93AC30, c] + - [0x93AC70, c] + - [0x93AFB0, bin] + - [0x93B3C0, bin] + - [0x93B770, bin] + - [0x93C260, bin] # rodata - name: world/area_sbk/sbk_25/ type: code overlay: True start: 0x93C280 vram: 0x80240000 files: - - [0x93C280, c] - - [0x93C2C0, c] - - [0x93C600, bin] - - [0x93C9A0, bin] - - [0x93D110, bin] - - [0x93DB80, bin] - - [0x93DCB0, bin] # rodata + - [0x93C280, c] + - [0x93C2C0, c] + - [0x93C600, bin] + - [0x93C9A0, bin] + - [0x93D110, bin] + - [0x93DB80, bin] + - [0x93DCB0, bin] # rodata - name: world/area_sbk/sbk_26/ type: code overlay: True start: 0x93DCD0 vram: 0x80240000 files: - - [0x93DCD0, c] - - [0x93DD10, c] - - [0x93DE30, c] - - [0x93E070, bin] - - [0x93E390, bin] - - [0x93EB80, bin] - - [0x93F590, bin] # rodata - - [0x93F5B0, bin] # rodata + - [0x93DCD0, c] + - [0x93DD10, c] + - [0x93DE30, c] + - [0x93E070, bin] + - [0x93E390, bin] + - [0x93EB80, bin] + - [0x93F590, bin] # rodata + - [0x93F5B0, bin] # rodata - name: world/area_sbk/sbk_30/ type: code overlay: True start: 0x93F5B0 vram: 0x80240000 files: - - [0x93F5B0, c] - - [0x940DC0, bin] - - [0x943E20, bin] # rodata - - [0x943E50, bin] # rodata - - [0x944000, bin] # rodata + - [0x93F5B0, c] + - [0x940DC0, bin] + - [0x943E20, bin] # rodata + - [0x943E50, bin] # rodata + - [0x944000, bin] # rodata - name: world/area_sbk/sbk_31/ type: code overlay: True start: 0x944000 vram: 0x80240000 files: - - [0x944000, c] - - [0x944040, c] - - [0x944140, bin] - - [0x9444D0, bin] - - [0x944A40, bin] # rodata + - [0x944000, c] + - [0x944040, c] + - [0x944140, bin] + - [0x9444D0, bin] + - [0x944A40, bin] # rodata - name: world/area_sbk/sbk_32/ type: code overlay: True start: 0x944A60 vram: 0x80240000 files: - - [0x944A60, c] - - [0x944AA0, c] - - [0x944BC0, bin] - - [0x9459B0, bin] # rodata + - [0x944A60, c] + - [0x944AA0, c] + - [0x944BC0, bin] + - [0x9459B0, bin] # rodata - name: world/area_sbk/sbk_33/ type: code overlay: True start: 0x9459D0 vram: 0x80240000 files: - - [0x9459D0, c] - - [0x945A10, bin] - - [0x945BA0, bin] - - [0x945EA0, bin] # rodata - - [0x945ED0, bin] # rodata + - [0x9459D0, c] + - [0x945A10, bin] + - [0x945BA0, bin] + - [0x945EA0, bin] # rodata + - [0x945ED0, bin] # rodata - name: world/area_sbk/sbk_34/ type: code overlay: True start: 0x945ED0 vram: 0x80240000 files: - - [0x945ED0, c] - - [0x945F10, c] - - [0x946670, c] - - [0x9468B0, bin] - - [0x947C80, bin] - - [0x948690, bin] # rodata + - [0x945ED0, c] + - [0x945F10, c] + - [0x946670, c] + - [0x9468B0, bin] + - [0x947C80, bin] + - [0x948690, bin] # rodata - name: world/area_sbk/sbk_35/ type: code overlay: True start: 0x9486B0 vram: 0x80240000 files: - - [0x9486B0, c] - - [0x9486F0, c] - - [0x948A30, bin] - - [0x949330, bin] - - [0x949E40, bin] # rodata + - [0x9486B0, c] + - [0x9486F0, c] + - [0x948A30, bin] + - [0x949330, bin] + - [0x949E40, bin] # rodata - name: world/area_sbk/sbk_36/ type: code overlay: True start: 0x949E60 vram: 0x80240000 files: - - [0x949E60, c] - - [0x949EA0, c] - - [0x94A0E0, bin] - - [0x94A470, bin] - - [0x94B380, bin] # rodata + - [0x949E60, c] + - [0x949EA0, c] + - [0x94A0E0, bin] + - [0x94A470, bin] + - [0x94B380, bin] # rodata - name: world/area_sbk/sbk_40/ type: code overlay: True start: 0x94B3A0 vram: 0x80240000 files: - - [0x94B3A0, c] - - [0x94B3E0, c] - - [0x94B4E0, bin] - - [0x94B800, bin] - - [0x94BF70, bin] - - [0x94C020, bin] # rodata - - [0x94C040, bin] # rodata + - [0x94B3A0, c] + - [0x94B3E0, c] + - [0x94B4E0, bin] + - [0x94B800, bin] + - [0x94BF70, bin] + - [0x94C020, bin] # rodata + - [0x94C040, bin] # rodata - name: world/area_sbk/sbk_41/ type: code overlay: True start: 0x94C040 vram: 0x80240000 files: - - [0x94C040, c] - - [0x94C080, bin] - - [0x94C400, bin] - - [0x94C4E0, bin] # rodata - - [0x94C510, bin] # rodata + - [0x94C040, c] + - [0x94C080, bin] + - [0x94C400, bin] + - [0x94C4E0, bin] # rodata + - [0x94C510, bin] # rodata - name: world/area_sbk/sbk_42/ type: code overlay: True start: 0x94C510 vram: 0x80240000 files: - - [0x94C510, c] - - [0x94C550, c] - - [0x94C650, bin] - - [0x94C9E0, bin] - - [0x94D150, bin] # rodata + - [0x94C510, c] + - [0x94C550, c] + - [0x94C650, bin] + - [0x94C9E0, bin] + - [0x94D150, bin] # rodata - name: world/area_sbk/sbk_43/ type: code overlay: True start: 0x94D170 vram: 0x80240000 files: - - [0x94D170, c] - - [0x94D1B0, bin] - - [0x94D530, bin] - - [0x94D580, bin] # rodata + - [0x94D170, c] + - [0x94D1B0, bin] + - [0x94D530, bin] + - [0x94D580, bin] # rodata - name: world/area_sbk/sbk_44/ type: code overlay: True start: 0x94D5A0 vram: 0x80240000 files: - - [0x94D5A0, c] - - [0x94D5E0, c] - - [0x94D700, bin] - - [0x94DA90, bin] - - [0x94E480, bin] # rodata + - [0x94D5A0, c] + - [0x94D5E0, c] + - [0x94D700, bin] + - [0x94DA90, bin] + - [0x94E480, bin] # rodata - name: world/area_sbk/sbk_45/ type: code overlay: True start: 0x94E4A0 vram: 0x80240000 files: - - [0x94E4A0, c] - - [0x94E4E0, bin] - - [0x94E8E0, bin] - - [0x94E980, bin] # rodata + - [0x94E4A0, c] + - [0x94E4E0, bin] + - [0x94E8E0, bin] + - [0x94E980, bin] # rodata - name: world/area_sbk/sbk_46/ type: code overlay: True start: 0x94E9A0 vram: 0x80240000 files: - - [0x94E9A0, c] - - [0x94E9E0, c] - - [0x94EB00, c] - - [0x94ED40, bin] - - [0x94F070, bin] - - [0x94FA60, bin] - - [0x950570, bin] - - [0x9505F0, bin] # rodata - - [0x950610, bin] # rodata + - [0x94E9A0, c] + - [0x94E9E0, c] + - [0x94EB00, c] + - [0x94ED40, bin] + - [0x94F070, bin] + - [0x94FA60, bin] + - [0x950570, bin] + - [0x9505F0, bin] # rodata + - [0x950610, bin] # rodata - name: world/area_sbk/sbk_50/ type: code overlay: True start: 0x950610 vram: 0x80240000 files: - - [0x950610, c] - - [0x950650, bin] - - [0x950950, bin] # rodata - - [0x950970, bin] # rodata + - [0x950610, c] + - [0x950650, bin] + - [0x950950, bin] # rodata + - [0x950970, bin] # rodata - name: world/area_sbk/sbk_51/ type: code overlay: True start: 0x950970 vram: 0x80240000 files: - - [0x950970, c] - - [0x9509B0, c] - - [0x950AD0, bin] - - [0x950E60, bin] - - [0x951650, bin] # rodata + - [0x950970, c] + - [0x9509B0, c] + - [0x950AD0, bin] + - [0x950E60, bin] + - [0x951650, bin] # rodata - name: world/area_sbk/sbk_52/ type: code overlay: True start: 0x951670 vram: 0x80240000 files: - - [0x951670, c] - - [0x9516B0, bin] - - [0x951A30, bin] - - [0x951AC0, bin] # rodata + - [0x951670, c] + - [0x9516B0, bin] + - [0x951A30, bin] + - [0x951AC0, bin] # rodata - name: world/area_sbk/sbk_53/ type: code overlay: True start: 0x951AE0 vram: 0x80240000 files: - - [0x951AE0, c] - - [0x951B20, c] - - [0x951B40, bin] - - [0x951ED0, bin] - - [0x952560, bin] # rodata + - [0x951AE0, c] + - [0x951B20, c] + - [0x951B40, bin] + - [0x951ED0, bin] + - [0x952560, bin] # rodata - name: world/area_sbk/sbk_54/ type: code overlay: True start: 0x952580 vram: 0x80240000 files: - - [0x952580, c] - - [0x9525C0, bin] - - [0x952940, bin] - - [0x952A20, bin] # rodata - - [0x952A50, bin] # rodata + - [0x952580, c] + - [0x9525C0, bin] + - [0x952940, bin] + - [0x952A20, bin] # rodata + - [0x952A50, bin] # rodata - name: world/area_sbk/sbk_55/ type: code overlay: True start: 0x952A50 vram: 0x80240000 files: - - [0x952A50, c] - - [0x952A90, c] - - [0x952AB0, c] - - [0x952CF0, bin] - - [0x953090, bin] - - [0x953520, bin] - - [0x953FA0, bin] # rodata + - [0x952A50, c] + - [0x952A90, c] + - [0x952AB0, c] + - [0x952CF0, bin] + - [0x953090, bin] + - [0x953520, bin] + - [0x953FA0, bin] # rodata - name: world/area_sbk/sbk_56/ type: code overlay: True start: 0x953FC0 vram: 0x80240000 files: - - [0x953FC0, c] - - [0x954D80, c] - - [0x954FC0, bin] - - [0x9553F0, bin] - - [0x9569D0, bin] # rodata - - [0x9569F0, bin] # rodata + - [0x953FC0, c] + - [0x954D80, c] + - [0x954FC0, bin] + - [0x9553F0, bin] + - [0x9569D0, bin] # rodata + - [0x9569F0, bin] # rodata - name: world/area_sbk/sbk_60/ type: code overlay: True start: 0x9569F0 vram: 0x80240000 files: - - [0x9569F0, c] - - [0x956A30, c] - - [0x956A50, bin] - - [0x956CF0, bin] - - [0x956F80, bin] # rodata + - [0x9569F0, c] + - [0x956A30, c] + - [0x956A50, bin] + - [0x956CF0, bin] + - [0x956F80, bin] # rodata - name: world/area_sbk/sbk_61/ type: code overlay: True start: 0x956F90 vram: 0x80240000 files: - - [0x956F90, c] - - [0x956FD0, bin] - - [0x9572E0, bin] - - [0x957330, bin] # rodata - - [0x957350, bin] # rodata + - [0x956F90, c] + - [0x956FD0, bin] + - [0x9572E0, bin] + - [0x957330, bin] # rodata + - [0x957350, bin] # rodata - name: world/area_sbk/sbk_62/ type: code overlay: True start: 0x957350 vram: 0x80240000 files: - - [0x957350, c] - - [0x957390, c] - - [0x9573B0, bin] - - [0x9576C0, bin] - - [0x957D50, bin] # rodata - - [0x957D70, bin] # rodata + - [0x957350, c] + - [0x957390, c] + - [0x9573B0, bin] + - [0x9576C0, bin] + - [0x957D50, bin] # rodata + - [0x957D70, bin] # rodata - name: world/area_sbk/sbk_63/ type: code overlay: True start: 0x957D70 vram: 0x80240000 files: - - [0x957D70, c] - - [0x957DB0, c] - - [0x957DD0, bin] - - [0x9580E0, bin] - - [0x958570, bin] # rodata - - [0x958590, bin] # rodata + - [0x957D70, c] + - [0x957DB0, c] + - [0x957DD0, bin] + - [0x9580E0, bin] + - [0x958570, bin] # rodata + - [0x958590, bin] # rodata - name: world/area_sbk/sbk_64/ type: code overlay: True start: 0x958590 vram: 0x80240000 files: - - [0x958590, c] - - [0x9585D0, bin] - - [0x9588E0, bin] - - [0x958930, bin] # rodata - - [0x958950, bin] # rodata + - [0x958590, c] + - [0x9585D0, bin] + - [0x9588E0, bin] + - [0x958930, bin] # rodata + - [0x958950, bin] # rodata - name: world/area_sbk/sbk_65/ type: code overlay: True start: 0x958950 vram: 0x80240000 files: - - [0x958950, c] - - [0x958990, bin] - - [0x958C90, bin] # rodata - - [0x958CB0, bin] # rodata + - [0x958950, c] + - [0x958990, bin] + - [0x958C90, bin] # rodata + - [0x958CB0, bin] # rodata - name: world/area_sbk/sbk_66/ type: code overlay: True start: 0x958CB0 vram: 0x80240000 files: - - [0x958CB0, c] - - [0x958CF0, c] - - [0x959030, bin] - - [0x9592E0, bin] - - [0x95A240, bin] - - [0x95AD50, bin] - - [0x95AEA0, bin] # rodata + - [0x958CB0, c] + - [0x958CF0, c] + - [0x959030, bin] + - [0x9592E0, bin] + - [0x95A240, bin] + - [0x95AD50, bin] + - [0x95AEA0, bin] # rodata - name: world/area_sbk/sbk_99/ type: code overlay: True start: 0x95AEB0 vram: 0x80240000 files: - - [0x95AEB0, bin] - - [0x95B190, bin] - - [0x95B1F0, bin] # rodata + - [0x95AEB0, bin] + - [0x95B190, bin] + - [0x95B1F0, bin] # rodata - name: world/area_dro/dro_01/ type: code overlay: True start: 0x95B200 vram: 0x80240000 files: - - [0x95B200, c] - - [0x95B7E0, c] - - [0x95E660, c] - - [0x95E7A0, c] - - [0x95ECC0, bin] - - [0x960210, bin] - - [0x966CA0, bin] - - [0x967780, bin] - - [0x9685C0, bin] - - [0x968FD0, bin] # rodata - - [0x969198, bin] # rodata - - [0x9691B0, bin] # rodata - - [0x9691C0, bin] # rodata + - [0x95B200, c] + - [0x95B7E0, c] + - [0x95E660, c] + - [0x95E7A0, c] + - [0x95ECC0, bin] + - [0x960210, bin] + - [0x966CA0, bin] + - [0x967780, bin] + - [0x9685C0, bin] + - [0x968FD0, bin] # rodata + - [0x969198, bin] # rodata + - [0x9691B0, bin] # rodata + - [0x9691C0, bin] # rodata - name: world/area_dro/dro_02/ type: code overlay: True start: 0x9691C0 vram: 0x80240000 files: - - [0x9691C0, c] - - [0x9694C0, c] - - [0x96CC30, bin] - - [0x96CD90, bin] - - [0x96CE00, bin] - - [0x96D380, bin] - - [0x96DFA0, bin] - - [0x9780D0, bin] # rodata + - [0x9691C0, c] + - [0x9694C0, c] + - [0x96CC30, bin] + - [0x96CD90, bin] + - [0x96CE00, bin] + - [0x96D380, bin] + - [0x96DFA0, bin] + - [0x9780D0, bin] # rodata - name: world/area_isk/isk_01/ type: code overlay: True start: 0x978140 vram: 0x80240000 files: - - [0x978140, bin] - - [0x978360, bin] - - [0x9785C0, bin] - - [0x978700, bin] # rodata + - [0x978140, bin] + - [0x978360, bin] + - [0x9785C0, bin] + - [0x978700, bin] # rodata - name: world/area_isk/isk_02/ type: code overlay: True start: 0x978710 vram: 0x80240000 files: - - [0x978710, c] - - [0x978750, c] - - [0x978800, c] - - [0x978820, bin] - - [0x978B80, bin] - - [0x978DE0, bin] - - [0x979390, bin] - - [0x9793F0, bin] - - [0x979E40, bin] # rodata + - [0x978710, c] + - [0x978750, c] + - [0x978800, c] + - [0x978820, bin] + - [0x978B80, bin] + - [0x978DE0, bin] + - [0x979390, bin] + - [0x9793F0, bin] + - [0x979E40, bin] # rodata - name: world/area_isk/isk_03/ type: code overlay: True start: 0x979E50 vram: 0x80240000 files: - - [0x979E50, bin] - - [0x97A210, bin] - - [0x97B340, bin] - - [0x97B620, bin] # rodata + - [0x979E50, bin] + - [0x97A210, bin] + - [0x97B340, bin] + - [0x97B620, bin] # rodata - name: world/area_isk/isk_04/ type: code overlay: True start: 0x97B630 vram: 0x80240000 files: - - [0x97B630, c] - - [0x97B670, c] - - [0x97BF60, c] - - [0x97C0A0, bin] - - [0x97C300, bin] - - [0x97CA70, bin] - - [0x97CB60, bin] - - [0x97D2F0, bin] - - [0x97DA40, bin] # rodata - - [0x97DAC0, bin] # rodata - - [0x97DAD0, bin] # rodata + - [0x97B630, c] + - [0x97B670, c] + - [0x97BF60, c] + - [0x97C0A0, bin] + - [0x97C300, bin] + - [0x97CA70, bin] + - [0x97CB60, bin] + - [0x97D2F0, bin] + - [0x97DA40, bin] # rodata + - [0x97DAC0, bin] # rodata + - [0x97DAD0, bin] # rodata - name: world/area_isk/isk_05/ type: code overlay: True start: 0x97DAD0 vram: 0x80240000 files: - - [0x97DAD0, c] - - [0x97F990, bin] - - [0x97FCE0, bin] - - [0x97FE50, bin] - - [0x980970, bin] # rodata - - [0x980980, bin] # rodata - - [0x9809C8, bin] # rodata - - [0x980A08, bin] # rodata - - [0x980A20, bin] # rodata + - [0x97DAD0, c] + - [0x97F990, bin] + - [0x97FCE0, bin] + - [0x97FE50, bin] + - [0x980970, bin] # rodata + - [0x980980, bin] # rodata + - [0x9809C8, bin] # rodata + - [0x980A08, bin] # rodata + - [0x980A20, bin] # rodata - name: world/area_isk/isk_06/ type: code overlay: True start: 0x980A20 vram: 0x80240000 files: - - [0x980A20, bin] - - [0x980D40, bin] - - [0x982150, bin] - - [0x982430, bin] # rodata - - [0x982440, bin] # rodata + - [0x980A20, bin] + - [0x980D40, bin] + - [0x982150, bin] + - [0x982430, bin] # rodata + - [0x982440, bin] # rodata - name: world/area_isk/isk_07/ type: code overlay: True start: 0x982440 vram: 0x80240000 files: - - [0x982440, c] - - [0x9824F0, c] - - [0x982530, c] - - [0x982550, bin] - - [0x982860, bin] - - [0x982CA0, bin] - - [0x983AD0, bin] - - [0x984390, bin] - - [0x9845D0, bin] - - [0x984E20, bin] # rodata + - [0x982440, c] + - [0x9824F0, c] + - [0x982530, c] + - [0x982550, bin] + - [0x982860, bin] + - [0x982CA0, bin] + - [0x983AD0, bin] + - [0x984390, bin] + - [0x9845D0, bin] + - [0x984E20, bin] # rodata - name: world/area_isk/isk_08/ type: code overlay: True start: 0x984E30 vram: 0x80240000 files: - - [0x984E30, c] - - [0x985720, bin] - - [0x985B00, bin] - - [0x986090, bin] - - [0x986460, bin] # rodata - - [0x9864E0, bin] # rodata + - [0x984E30, c] + - [0x985720, bin] + - [0x985B00, bin] + - [0x986090, bin] + - [0x986460, bin] # rodata + - [0x9864E0, bin] # rodata - name: world/area_isk/isk_09/ type: code overlay: True start: 0x9864E0 vram: 0x80240000 files: - - [0x9864E0, c] - - [0x9867D0, c] - - [0x986810, bin] - - [0x986A60, bin] - - [0x986BD0, bin] - - [0x987560, bin] - - [0x988290, bin] - - [0x988B50, bin] # rodata - - [0x988B60, bin] # rodata + - [0x9864E0, c] + - [0x9867D0, c] + - [0x986810, bin] + - [0x986A60, bin] + - [0x986BD0, bin] + - [0x987560, bin] + - [0x988290, bin] + - [0x988B50, bin] # rodata + - [0x988B60, bin] # rodata - name: world/area_isk/isk_10/ type: code overlay: True start: 0x988B60 vram: 0x80240000 files: - - [0x988B60, c] - - [0x989910, bin] - - [0x98A580, bin] - - [0x98A9E0, bin] # rodata - - [0x98AA00, bin] # rodata + - [0x988B60, c] + - [0x989910, bin] + - [0x98A580, bin] + - [0x98A9E0, bin] # rodata + - [0x98AA00, bin] # rodata - name: world/area_isk/isk_11/ type: code overlay: True start: 0x98AA10 vram: 0x80240000 files: - - [0x98AA10, c] - - [0x98AAC0, c] - - [0x98AB30, c] - - [0x98AB70, bin] - - [0x98ADB0, bin] - - [0x98B330, bin] - - [0x98B620, bin] - - [0x98D3C0, bin] - - [0x98D620, bin] # rodata - - [0x98D640, bin] # rodata + - [0x98AA10, c] + - [0x98AAC0, c] + - [0x98AB30, c] + - [0x98AB70, bin] + - [0x98ADB0, bin] + - [0x98B330, bin] + - [0x98B620, bin] + - [0x98D3C0, bin] + - [0x98D620, bin] # rodata + - [0x98D640, bin] # rodata - name: world/area_isk/isk_12/ type: code overlay: True start: 0x98D640 vram: 0x80240000 files: - - [0x98D640, bin] - - [0x98DA70, bin] - - [0x98DCB0, bin] - - [0x98ED40, bin] - - [0x98F7C0, bin] # rodata - - [0x98F7E0, bin] # rodata + - [0x98D640, bin] + - [0x98DA70, bin] + - [0x98DCB0, bin] + - [0x98ED40, bin] + - [0x98F7C0, bin] # rodata + - [0x98F7E0, bin] # rodata - name: world/area_isk/isk_13/ type: code overlay: True start: 0x98F7E0 vram: 0x80240000 files: - - [0x98F7E0, c] - - [0x991850, bin] - - [0x991A90, bin] - - [0x992680, bin] # rodata - - [0x992690, bin] # rodata - - [0x9926D8, bin] # rodata - - [0x992718, bin] # rodata - - [0x992730, bin] # rodata + - [0x98F7E0, c] + - [0x991850, bin] + - [0x991A90, bin] + - [0x992680, bin] # rodata + - [0x992690, bin] # rodata + - [0x9926D8, bin] # rodata + - [0x992718, bin] # rodata + - [0x992730, bin] # rodata - name: world/area_isk/isk_14/ type: code overlay: True start: 0x992730 vram: 0x80240000 files: - - [0x992730, c] - - [0x994490, bin] - - [0x9946D0, bin] - - [0x994860, bin] - - [0x995150, bin] # rodata - - [0x995160, bin] # rodata - - [0x9951A8, bin] # rodata - - [0x9951F0, bin] # rodata + - [0x992730, c] + - [0x994490, bin] + - [0x9946D0, bin] + - [0x994860, bin] + - [0x995150, bin] # rodata + - [0x995160, bin] # rodata + - [0x9951A8, bin] # rodata + - [0x9951F0, bin] # rodata - name: world/area_isk/isk_16/ type: code overlay: True start: 0x9951F0 vram: 0x80240000 files: - - [0x9951F0, c] - - [0x9959F0, c] - - [0x995CF0, bin] - - [0x996410, bin] - - [0x996C40, bin] - - [0x997E20, bin] - - [0x997F40, bin] # rodata - - [0x997F70, bin] # rodata + - [0x9951F0, c] + - [0x9959F0, c] + - [0x995CF0, bin] + - [0x996410, bin] + - [0x996C40, bin] + - [0x997E20, bin] + - [0x997F40, bin] # rodata + - [0x997F70, bin] # rodata - name: world/area_isk/isk_18/ type: code overlay: True start: 0x997F70 vram: 0x80240000 files: - - [0x997F70, c] - - [0x998860, bin] - - [0x998B90, bin] - - [0x999520, bin] - - [0x9996D0, bin] # rodata - - [0x999740, bin] # rodata + - [0x997F70, c] + - [0x998860, bin] + - [0x998B90, bin] + - [0x999520, bin] + - [0x9996D0, bin] # rodata + - [0x999740, bin] # rodata - name: world/area_isk/isk_19/ type: code overlay: True start: 0x999740 vram: 0x80240000 files: - - [0x999740, bin] - - [0x999960, bin] - - [0x999BA0, bin] - - [0x999C60, bin] # rodata + - [0x999740, bin] + - [0x999960, bin] + - [0x999BA0, bin] + - [0x999C60, bin] # rodata - name: world/area_trd/trd_00/ type: code overlay: True start: 0x999C70 vram: 0x80240000 files: - - [0x999C70, c] - - [0x999F80, c] - - [0x99A240, c] - - [0x99A2A0, bin] - - [0x99A410, bin] - - [0x99AFB0, bin] - - [0x99B280, bin] - - [0x99C970, bin] # rodata - - [0x99C990, bin] # rodata + - [0x999C70, c] + - [0x999F80, c] + - [0x99A240, c] + - [0x99A2A0, bin] + - [0x99A410, bin] + - [0x99AFB0, bin] + - [0x99B280, bin] + - [0x99C970, bin] # rodata + - [0x99C990, bin] # rodata - name: world/area_trd/trd_01/ type: code overlay: True start: 0x99C990 vram: 0x80240000 files: - - [0x99C990, c] - - [0x99CCA0, c] - - [0x99CD80, c] - - [0x99E050, bin] - - [0x99E110, bin] - - [0x99F960, bin] - - [0x99FD80, bin] - - [0x9A0DB0, bin] # rodata - - [0x9A0DD0, bin] # rodata - - [0x9A0E30, bin] # rodata - - [0x9A0FE0, bin] # rodata + - [0x99C990, c] + - [0x99CCA0, c] + - [0x99CD80, c] + - [0x99E050, bin] + - [0x99E110, bin] + - [0x99F960, bin] + - [0x99FD80, bin] + - [0x9A0DB0, bin] # rodata + - [0x9A0DD0, bin] # rodata + - [0x9A0E30, bin] # rodata + - [0x9A0FE0, bin] # rodata - name: world/area_trd/trd_02/ type: code overlay: True start: 0x9A0FE0 vram: 0x80240000 files: - - [0x9A0FE0, c] - - [0x9A10C0, c] - - [0x9A2A30, bin] - - [0x9A2B00, bin] - - [0x9A3870, bin] - - [0x9A3AB0, bin] - - [0x9A42B0, bin] # rodata - - [0x9A4320, bin] # rodata + - [0x9A0FE0, c] + - [0x9A10C0, c] + - [0x9A2A30, bin] + - [0x9A2B00, bin] + - [0x9A3870, bin] + - [0x9A3AB0, bin] + - [0x9A42B0, bin] # rodata + - [0x9A4320, bin] # rodata - name: world/area_trd/trd_03/ type: code overlay: True start: 0x9A4650 vram: 0x80240000 files: - - [0x9A4650, c] - - [0x9A46F0, c] - - [0x9A4ED0, c] - - [0x9A5040, bin] - - [0x9A51A0, bin] - - [0x9A5FF0, bin] - - [0x9A60F0, bin] - - [0x9A8380, bin] # rodata - - [0x9A83F0, bin] # rodata + - [0x9A4650, c] + - [0x9A46F0, c] + - [0x9A4ED0, c] + - [0x9A5040, bin] + - [0x9A51A0, bin] + - [0x9A5FF0, bin] + - [0x9A60F0, bin] + - [0x9A8380, bin] # rodata + - [0x9A83F0, bin] # rodata - name: world/area_trd/trd_04/ type: code overlay: True start: 0x9A83F0 vram: 0x80240000 files: - - [0x9A83F0, c] - - [0x9A8700, c] - - [0x9A88A0, c] - - [0x9ABC90, bin] - - [0x9ABD70, bin] - - [0x9AD960, bin] - - [0x9AE2B0, bin] # rodata - - [0x9AE330, bin] # rodata - - [0x9AE6B8, bin] # rodata - - [0x9AE700, bin] # rodata + - [0x9A83F0, c] + - [0x9A8700, c] + - [0x9A88A0, c] + - [0x9ABC90, bin] + - [0x9ABD70, bin] + - [0x9AD960, bin] + - [0x9AE2B0, bin] # rodata + - [0x9AE330, bin] # rodata + - [0x9AE6B8, bin] # rodata + - [0x9AE700, bin] # rodata - name: world/area_trd/trd_05/ type: code overlay: True start: 0x9AE700 vram: 0x80240000 files: - - [0x9AE700, c] - - [0x9AEE20, c] - - [0x9AEE70, bin] - - [0x9AEFC0, bin] - - [0x9AF7C0, bin] - - [0x9AF820, bin] - - [0x9B1760, bin] # rodata - - [0x9B1790, bin] # rodata + - [0x9AE700, c] + - [0x9AEE20, c] + - [0x9AEE70, bin] + - [0x9AEFC0, bin] + - [0x9AF7C0, bin] + - [0x9AF820, bin] + - [0x9B1760, bin] # rodata + - [0x9B1790, bin] # rodata - name: world/area_trd/trd_06/ type: code overlay: True start: 0x9B1790 vram: 0x80240000 files: - - [0x9B1790, c] - - [0x9B1AA0, c] - - [0x9B2280, c] - - [0x9B2410, c] - - [0x9B24B0, bin] - - [0x9B2610, bin] - - [0x9B5FC0, bin] - - [0x9B6940, bin] # rodata - - [0x9B6950, bin] # rodata + - [0x9B1790, c] + - [0x9B1AA0, c] + - [0x9B2280, c] + - [0x9B2410, c] + - [0x9B24B0, bin] + - [0x9B2610, bin] + - [0x9B5FC0, bin] + - [0x9B6940, bin] # rodata + - [0x9B6950, bin] # rodata - name: world/area_trd/trd_07/ type: code overlay: True start: 0x9B6980 vram: 0x80240000 files: - - [0x9B6980, c] - - [0x9B6C90, c] - - [0x9B9270, bin] - - [0x9B9310, bin] - - [0x9B9760, bin] - - [0x9BA050, bin] - - [0x9BB190, bin] # rodata - - [0x9BB200, bin] # rodata - - [0x9BB258, bin] # rodata - - [0x9BB2A0, bin] # rodata + - [0x9B6980, c] + - [0x9B6C90, c] + - [0x9B9270, bin] + - [0x9B9310, bin] + - [0x9B9760, bin] + - [0x9BA050, bin] + - [0x9BB190, bin] # rodata + - [0x9BB200, bin] # rodata + - [0x9BB258, bin] # rodata + - [0x9BB2A0, bin] # rodata - name: world/area_trd/trd_08/ type: code overlay: True start: 0x9BB2A0 vram: 0x80240000 files: - - [0x9BB2A0, c] - - [0x9BB5B0, c] - - [0x9BBCC0, bin] - - [0x9BBD50, bin] - - [0x9BC1A0, bin] - - [0x9BD650, bin] # rodata - - [0x9BD660, bin] # rodata + - [0x9BB2A0, c] + - [0x9BB5B0, c] + - [0x9BBCC0, bin] + - [0x9BBD50, bin] + - [0x9BC1A0, bin] + - [0x9BD650, bin] # rodata + - [0x9BD660, bin] # rodata - name: world/area_trd/trd_09/ type: code overlay: True start: 0x9BD660 vram: 0x80240000 files: - - [0x9BD660, c] - - [0x9BD720, c] - - [0x9BD830, bin] - - [0x9BD960, bin] - - [0x9BDD80, bin] - - [0x9BDE80, bin] - - [0x9C24C0, bin] - - [0x9C28F0, bin] # rodata - - [0x9C2910, bin] # rodata + - [0x9BD660, c] + - [0x9BD720, c] + - [0x9BD830, bin] + - [0x9BD960, bin] + - [0x9BDD80, bin] + - [0x9BDE80, bin] + - [0x9C24C0, bin] + - [0x9C28F0, bin] # rodata + - [0x9C2910, bin] # rodata - name: world/area_trd/trd_10/ type: code overlay: True start: 0x9C2910 vram: 0x80240000 files: - - [0x9C2910, c] - - [0x9C3130, c] - - [0x9C3160, bin] - - [0x9C3A30, bin] - - [0x9C4FC0, bin] - - [0x9C53B0, bin] # rodata - - [0x9C53E0, bin] # rodata + - [0x9C2910, c] + - [0x9C3130, c] + - [0x9C3160, bin] + - [0x9C3A30, bin] + - [0x9C4FC0, bin] + - [0x9C53B0, bin] # rodata + - [0x9C53E0, bin] # rodata - name: world/area_nok/nok_01/ type: code overlay: True start: 0x9C53E0 vram: 0x80240000 files: - - [0x9C53E0, c] - - [0x9C7D10, c] - - [0x9C7F50, bin] - - [0x9C8350, bin] - - [0x9C8920, bin] - - [0x9C89E0, bin] - - [0x9CB328, bin] - - [0x9D4EF0, bin] - - [0x9D5110, bin] - - [0x9D5BF0, bin] - - [0x9D5F80, bin] - - [0x9D6E60, bin] # rodata - - [0x9D7020, bin] # rodata + - [0x9C53E0, c] + - [0x9C7D10, c] + - [0x9C7F50, bin] + - [0x9C8350, bin] + - [0x9C8920, bin] + - [0x9C89E0, bin] + - [0x9CB328, bin] + - [0x9D4EF0, bin] + - [0x9D5110, bin] + - [0x9D5BF0, bin] + - [0x9D5F80, bin] + - [0x9D6E60, bin] # rodata + - [0x9D7020, bin] # rodata - name: world/area_nok/nok_02/ type: code overlay: True start: 0x9D7020 vram: 0x80240000 files: - - [0x9D7020, c] - - [0x9D7770, c] - - [0x9D7990, c] - - [0x9D7AA0, c] - - [0x9DA8F0, c] - - [0x9DB380, c] - - [0x9DB5C0, bin] - - [0x9DB6C0, bin] - - [0x9DCD20, bin] - - [0x9DCF50, bin] - - [0x9DDE40, bin] - - [0x9DDE90, bin] - - [0x9E8B60, bin] - - [0x9E9420, bin] - - [0x9EA630, bin] - - [0x9EB3D0, bin] - - [0x9EB620, bin] # rodata - - [0x9EB640, bin] # rodata + - [0x9D7020, c] + - [0x9D7770, c] + - [0x9D7990, c] + - [0x9D7AA0, c] + - [0x9DA8F0, c] + - [0x9DB380, c] + - [0x9DB5C0, bin] + - [0x9DB6C0, bin] + - [0x9DCD20, bin] + - [0x9DCF50, bin] + - [0x9DDE40, bin] + - [0x9DDE90, bin] + - [0x9E8B60, bin] + - [0x9E9420, bin] + - [0x9EA630, bin] + - [0x9EB3D0, bin] + - [0x9EB620, bin] # rodata + - [0x9EB640, bin] # rodata - name: world/area_nok/nok_03/ type: code overlay: True start: 0x9EB7F0 vram: 0x80240000 files: - - [0x9EB7F0, c] - - [0x9EC610, bin] - - [0x9EC700, bin] - - [0x9ECBD0, bin] - - [0x9EDB90, bin] # rodata - - [0x9EDBF0, bin] # rodata + - [0x9EB7F0, c] + - [0x9EC610, bin] + - [0x9EC700, bin] + - [0x9ECBD0, bin] + - [0x9EDB90, bin] # rodata + - [0x9EDBF0, bin] # rodata - name: world/area_nok/nok_04/ type: code overlay: True start: 0x9EDBF0 vram: 0x80240000 files: - - [0x9EDBF0, c] - - [0x9EEA80, c] - - [0x9EEB20, bin] - - [0x9EEC40, bin] - - [0x9EEEB0, bin] - - [0x9EF338, bin] - - [0x9F4A00, bin] # rodata - - [0x9F4A10, bin] # rodata - - [0x9F4A30, bin] # rodata + - [0x9EDBF0, c] + - [0x9EEA80, c] + - [0x9EEB20, bin] + - [0x9EEC40, bin] + - [0x9EEEB0, bin] + - [0x9EF338, bin] + - [0x9F4A00, bin] # rodata + - [0x9F4A10, bin] # rodata + - [0x9F4A30, bin] # rodata - name: world/area_nok/nok_11/ type: code overlay: True start: 0x9F4A40 vram: 0x80240000 files: - - [0x9F4A40, c] - - [0x9F6990, bin] - - [0x9F6A50, bin] - - [0x9F7180, bin] - - [0x9FA720, bin] # rodata - - [0x9FA790, bin] # rodata - - [0x9FA7F0, bin] # rodata + - [0x9F4A40, c] + - [0x9F6990, bin] + - [0x9F6A50, bin] + - [0x9F7180, bin] + - [0x9FA720, bin] # rodata + - [0x9FA790, bin] # rodata + - [0x9FA7F0, bin] # rodata - name: world/area_nok/nok_12/ type: code overlay: True start: 0x9FA7F0 vram: 0x80240000 files: - - [0x9FA7F0, c] - - [0x9FA970, c] - - [0x9FAAE0, c] - - [0x9FAB20, c] - - [0x9FAD60, c] - - [0x9FC6D0, c] - - [0x9FC8B0, bin] - - [0x9FC970, bin] - - [0x9FD410, bin] - - [0x9FE000, bin] - - [0x9FFB70, bin] - - [0xA00250, bin] # rodata - - [0xA002C0, bin] # rodata - - [0xA00600, bin] # rodata + - [0x9FA7F0, c] + - [0x9FA970, c] + - [0x9FAAE0, c] + - [0x9FAB20, c] + - [0x9FAD60, c] + - [0x9FC6D0, c] + - [0x9FC8B0, bin] + - [0x9FC970, bin] + - [0x9FD410, bin] + - [0x9FE000, bin] + - [0x9FFB70, bin] + - [0xA00250, bin] # rodata + - [0xA002C0, bin] # rodata + - [0xA00600, bin] # rodata - name: world/area_nok/nok_13/ type: code overlay: True start: 0xA00600 vram: 0x80240000 files: - - [0xA00600, c] - - [0xA01420, c] - - [0xA01A90, bin] - - [0xA01B40, bin] - - [0xA02040, bin] - - [0xA02420, bin] - - [0xA026C0, bin] - - [0xA027B0, bin] # rodata - - [0xA027D0, bin] # rodata - - [0xA02820, bin] # rodata - - [0xA02840, bin] # rodata + - [0xA00600, c] + - [0xA01420, c] + - [0xA01A90, bin] + - [0xA01B40, bin] + - [0xA02040, bin] + - [0xA02420, bin] + - [0xA026C0, bin] + - [0xA027B0, bin] # rodata + - [0xA027D0, bin] # rodata + - [0xA02820, bin] # rodata + - [0xA02840, bin] # rodata - name: world/area_nok/nok_14/ type: code overlay: True start: 0xA02840 vram: 0x80240000 files: - - [0xA02840, c] - - [0xA029C0, c] - - [0xA02A00, c] - - [0xA04C60, bin] - - [0xA04D00, bin] - - [0xA052F0, bin] - - [0xA057B0, bin] - - [0xA06110, bin] - - [0xA06DF0, bin] # rodata - - [0xA06E60, bin] # rodata - - [0xA06EB8, bin] # rodata - - [0xA06F00, bin] # rodata + - [0xA02840, c] + - [0xA029C0, c] + - [0xA02A00, c] + - [0xA04C60, bin] + - [0xA04D00, bin] + - [0xA052F0, bin] + - [0xA057B0, bin] + - [0xA06110, bin] + - [0xA06DF0, bin] # rodata + - [0xA06E60, bin] # rodata + - [0xA06EB8, bin] # rodata + - [0xA06F00, bin] # rodata - name: world/area_nok/nok_15/ type: code overlay: True start: 0xA06F00 vram: 0x80240000 files: - - [0xA06F00, c] - - [0xA09440, c] - - [0xA09680, bin] - - [0xA09750, bin] - - [0xA0AB50, bin] - - [0xA0AB90, bin] - - [0xA0BBD0, bin] # rodata - - [0xA0BBF0, bin] # rodata - - [0xA0BC50, bin] # rodata - - [0xA0BCA8, bin] # rodata - - [0xA0BCF0, bin] # rodata + - [0xA06F00, c] + - [0xA09440, c] + - [0xA09680, bin] + - [0xA09750, bin] + - [0xA0AB50, bin] + - [0xA0AB90, bin] + - [0xA0BBD0, bin] # rodata + - [0xA0BBF0, bin] # rodata + - [0xA0BC50, bin] # rodata + - [0xA0BCA8, bin] # rodata + - [0xA0BCF0, bin] # rodata - name: world/area_hos/hos_00/ type: code overlay: True start: 0xA0BCF0 vram: 0x80240000 files: - - [0xA0BCF0, c] - - [0xA0BD40, c] - - [0xA0C4B0, c] - - [0xA0C4E0, c] - - [0xA0C930, c] - - [0xA0CA00, bin] - - [0xA0D720, bin] - - [0xA0D7A0, bin] - - [0xA0E520, bin] - - [0xA107E0, bin] - - [0xA10820, bin] # rodata - - [0xA10830, bin] # rodata - - [0xA10870, bin] # rodata - - [0xA10880, bin] # rodata + - [0xA0BCF0, c] + - [0xA0BD40, c] + - [0xA0C4B0, c] + - [0xA0C4E0, c] + - [0xA0C930, c] + - [0xA0CA00, bin] + - [0xA0D720, bin] + - [0xA0D7A0, bin] + - [0xA0E520, bin] + - [0xA107E0, bin] + - [0xA10820, bin] # rodata + - [0xA10830, bin] # rodata + - [0xA10870, bin] # rodata + - [0xA10880, bin] # rodata - name: world/area_hos/hos_01/ type: code overlay: True start: 0xA10880 vram: 0x80240000 files: - - [0xA10880, c] - - [0xA11020, c] - - [0xA11650, c] - - [0xA116A0, bin] - - [0xA11760, bin] - - [0xA12E00, bin] - - [0xA15860, bin] - - [0xA158D0, bin] - - [0xA161F0, bin] # rodata + - [0xA10880, c] + - [0xA11020, c] + - [0xA11650, c] + - [0xA116A0, bin] + - [0xA11760, bin] + - [0xA12E00, bin] + - [0xA15860, bin] + - [0xA158D0, bin] + - [0xA161F0, bin] # rodata - name: world/area_hos/hos_02/ type: code overlay: True start: 0xA16220 vram: 0x80240000 files: - - [0xA16220, c] - - [0xA17210, c] - - [0xA18D00, bin] - - [0xA18E50, bin] - - [0xA19530, bin] - - [0xA1A6A0, bin] - - [0xA1ADA0, bin] - - [0xA1AFF0, bin] # rodata - - [0xA1B098, bin] # rodata - - [0xA1B100, bin] # rodata + - [0xA16220, c] + - [0xA17210, c] + - [0xA18D00, bin] + - [0xA18E50, bin] + - [0xA19530, bin] + - [0xA1A6A0, bin] + - [0xA1ADA0, bin] + - [0xA1AFF0, bin] # rodata + - [0xA1B098, bin] # rodata + - [0xA1B100, bin] # rodata - name: world/area_hos/hos_03/ type: code overlay: True start: 0xA1B100 vram: 0x80240000 files: - - [0xA1B100, c] - - [0xA1B130, c] - - [0xA1BB70, c] - - [0xA1BDB0, c] - - [0xA1E640, bin] - - [0xA1E790, bin] - - [0xA1EC30, bin] - - [0xA1F3C0, bin] - - [0xA23120, bin] - - [0xA26C00, bin] - - [0xA26E00, bin] - - [0xA26E50, bin] # rodata - - [0xA26E70, bin] # rodata - - [0xA26ED0, bin] # rodata + - [0xA1B100, c] + - [0xA1B130, c] + - [0xA1BB70, c] + - [0xA1BDB0, c] + - [0xA1E640, bin] + - [0xA1E790, bin] + - [0xA1EC30, bin] + - [0xA1F3C0, bin] + - [0xA23120, bin] + - [0xA26C00, bin] + - [0xA26E00, bin] + - [0xA26E50, bin] # rodata + - [0xA26E70, bin] # rodata + - [0xA26ED0, bin] # rodata - name: world/area_hos/hos_04/ type: code overlay: True start: 0xA26ED0 vram: 0x80240000 files: - - [0xA26ED0, c] - - [0xA27490, c] - - [0xA274B0, c] - - [0xA27A30, c] - - [0xA27AA0, c] - - [0xA27D60, bin] - - [0xA27F20, bin] - - [0xA285C0, bin] - - [0xA28920, bin] - - [0xA28990, bin] - - [0xA289F4, bin] - - [0xA290B0, bin] - - [0xA2A120, bin] - - [0xA2A1C0, bin] # rodata - - [0xA2A1E0, bin] # rodata - - [0xA2A1F8, bin] # rodata - - [0xA2A240, bin] # rodata + - [0xA26ED0, c] + - [0xA27490, c] + - [0xA274B0, c] + - [0xA27A30, c] + - [0xA27AA0, c] + - [0xA27D60, bin] + - [0xA27F20, bin] + - [0xA285C0, bin] + - [0xA28920, bin] + - [0xA28990, bin] + - [0xA289F4, bin] + - [0xA290B0, bin] + - [0xA2A120, bin] + - [0xA2A1C0, bin] # rodata + - [0xA2A1E0, bin] # rodata + - [0xA2A1F8, bin] # rodata + - [0xA2A240, bin] # rodata - name: world/area_hos/hos_05/ type: code overlay: True start: 0xA2A240 vram: 0x80240000 files: - - [0xA2A240, c] - - [0xA2AA70, c] - - [0xA2AAC0, c] - - [0xA2EC30, c] - - [0xA2EF00, c] - - [0xA2FAA0, bin] - - [0xA2FCD0, bin] - - [0xA30810, bin] - - [0xA37CD0, bin] - - [0xA37E70, bin] - - [0xA39400, bin] # rodata - - [0xA39410, bin] # rodata - - [0xA394A0, bin] # rodata - - [0xA394C0, bin] # rodata - - [0xA394E0, bin] # rodata + - [0xA2A240, c] + - [0xA2AA70, c] + - [0xA2AAC0, c] + - [0xA2EC30, c] + - [0xA2EF00, c] + - [0xA2FAA0, bin] + - [0xA2FCD0, bin] + - [0xA30810, bin] + - [0xA37CD0, bin] + - [0xA37E70, bin] + - [0xA39400, bin] # rodata + - [0xA39410, bin] # rodata + - [0xA394A0, bin] # rodata + - [0xA394C0, bin] # rodata + - [0xA394E0, bin] # rodata - name: world/area_hos/hos_06/ type: code overlay: True start: 0xA394E0 vram: 0x80240000 files: - - [0xA394E0, c] - - [0xA397F0, c] - - [0xA3A210, c] - - [0xA3A230, c] - - [0xA3B4B0, c] - - [0xA3BA40, bin] - - [0xA3BAE0, bin] - - [0xA3C090, bin] - - [0xA3DAB0, bin] - - [0xA3F730, bin] # rodata - - [0xA3F740, bin] # rodata + - [0xA394E0, c] + - [0xA397F0, c] + - [0xA3A210, c] + - [0xA3A230, c] + - [0xA3B4B0, c] + - [0xA3BA40, bin] + - [0xA3BAE0, bin] + - [0xA3C090, bin] + - [0xA3DAB0, bin] + - [0xA3F730, bin] # rodata + - [0xA3F740, bin] # rodata - name: world/area_hos/hos_10/ type: code overlay: True start: 0xA3F740 vram: 0x80240000 files: - - [0xA3F740, c] - - [0xA3F760, c] - - [0xA3FBA0, c] - - [0xA3FEB0, c] - - [0xA403C0, bin] - - [0xA40540, bin] - - [0xA42DA0, bin] - - [0xA43920, bin] - - [0xA45910, bin] # rodata - - [0xA45930, bin] # rodata + - [0xA3F740, c] + - [0xA3F760, c] + - [0xA3FBA0, c] + - [0xA3FEB0, c] + - [0xA403C0, bin] + - [0xA40540, bin] + - [0xA42DA0, bin] + - [0xA43920, bin] + - [0xA45910, bin] # rodata + - [0xA45930, bin] # rodata - name: world/area_hos/hos_20/ type: code overlay: True start: 0xA45930 vram: 0x80240000 files: - - [0xA45930, c] - - [0xA45C40, c] - - [0xA45C90, bin] - - [0xA46350, bin] - - [0xA46F40, bin] # rodata + - [0xA45930, c] + - [0xA45C40, c] + - [0xA45C90, bin] + - [0xA46350, bin] + - [0xA46F40, bin] # rodata - name: world/area_kpa/kpa_01/ type: code overlay: True start: 0xA46F60 vram: 0x80240000 files: - - [0xA46F60, c] - - [0xA470C0, c] - - [0xA479B0, bin] - - [0xA47A60, bin] - - [0xA47D70, bin] - - [0xA48500, bin] - - [0xA48550, bin] # rodata - - [0xA485C0, bin] # rodata + - [0xA46F60, c] + - [0xA470C0, c] + - [0xA479B0, bin] + - [0xA47A60, bin] + - [0xA47D70, bin] + - [0xA48500, bin] + - [0xA48550, bin] # rodata + - [0xA485C0, bin] # rodata - name: world/area_kpa/kpa_03/ type: code overlay: True start: 0xA485C0 vram: 0x80240000 files: - - [0xA485C0, c] - - [0xA48720, c] - - [0xA4A410, c] - - [0xA4A480, bin] - - [0xA4A520, bin] - - [0xA4A750, bin] - - [0xA4BE30, bin] # rodata - - [0xA4BEA0, bin] # rodata - - [0xA4BED8, bin] # rodata - - [0xA4BF60, bin] # rodata + - [0xA485C0, c] + - [0xA48720, c] + - [0xA4A410, c] + - [0xA4A480, bin] + - [0xA4A520, bin] + - [0xA4A750, bin] + - [0xA4BE30, bin] # rodata + - [0xA4BEA0, bin] # rodata + - [0xA4BED8, bin] # rodata + - [0xA4BF60, bin] # rodata - name: world/area_kpa/kpa_04/ type: code overlay: True start: 0xA4BF60 vram: 0x80240000 files: - - [0xA4BF60, c] - - [0xA4C0D0, bin] - - [0xA4C1A0, bin] - - [0xA4CA10, bin] # rodata + - [0xA4BF60, c] + - [0xA4C0D0, bin] + - [0xA4C1A0, bin] + - [0xA4CA10, bin] # rodata - name: world/area_kpa/kpa_08/ type: code overlay: True start: 0xA4CA20 vram: 0x80240000 files: - - [0xA4CA20, c] - - [0xA4CAC0, c] - - [0xA4DEC0, bin] - - [0xA4DF90, bin] - - [0xA4E250, bin] - - [0xA4E710, bin] - - [0xA4EF30, bin] # rodata - - [0xA4EF78, bin] # rodata - - [0xA4F000, bin] # rodata + - [0xA4CA20, c] + - [0xA4CAC0, c] + - [0xA4DEC0, bin] + - [0xA4DF90, bin] + - [0xA4E250, bin] + - [0xA4E710, bin] + - [0xA4EF30, bin] # rodata + - [0xA4EF78, bin] # rodata + - [0xA4F000, bin] # rodata - name: world/area_kpa/kpa_09/ type: code overlay: True start: 0xA4F000 vram: 0x80240000 files: - - [0xA4F000, c] - - [0xA4F0A0, c] - - [0xA502F0, bin] - - [0xA503C0, bin] - - [0xA506D0, bin] - - [0xA50B90, bin] - - [0xA517B0, bin] # rodata - - [0xA51980, bin] # rodata + - [0xA4F000, c] + - [0xA4F0A0, c] + - [0xA502F0, bin] + - [0xA503C0, bin] + - [0xA506D0, bin] + - [0xA50B90, bin] + - [0xA517B0, bin] # rodata + - [0xA51980, bin] # rodata - name: world/area_kpa/kpa_10/ type: code overlay: True start: 0xA51980 vram: 0x80240000 files: - - [0xA51980, c] - - [0xA51C90, bin] - - [0xA51D90, bin] - - [0xA528A0, bin] # rodata - - [0xA528C0, bin] # rodata + - [0xA51980, c] + - [0xA51C90, bin] + - [0xA51D90, bin] + - [0xA528A0, bin] # rodata + - [0xA528C0, bin] # rodata - name: world/area_kpa/kpa_11/ type: code overlay: True start: 0xA528C0 vram: 0x80240000 files: - - [0xA528C0, c] - - [0xA52BD0, c] - - [0xA533B0, bin] - - [0xA534C0, bin] - - [0xA53D80, bin] - - [0xA53E30, bin] - - [0xA548D0, bin] # rodata - - [0xA548F0, bin] # rodata - - [0xA54950, bin] # rodata + - [0xA528C0, c] + - [0xA52BD0, c] + - [0xA533B0, bin] + - [0xA534C0, bin] + - [0xA53D80, bin] + - [0xA53E30, bin] + - [0xA548D0, bin] # rodata + - [0xA548F0, bin] # rodata + - [0xA54950, bin] # rodata - name: world/area_kpa/kpa_12/ type: code overlay: True start: 0xA54950 vram: 0x80240000 files: - - [0xA54950, c] - - [0xA54990, c] - - [0xA54CA0, c] - - [0xA54DC0, bin] - - [0xA55620, bin] - - [0xA55F00, bin] # rodata - - [0xA55F20, bin] # rodata + - [0xA54950, c] + - [0xA54990, c] + - [0xA54CA0, c] + - [0xA54DC0, bin] + - [0xA55620, bin] + - [0xA55F00, bin] # rodata + - [0xA55F20, bin] # rodata - name: world/area_kpa/kpa_13/ type: code overlay: True start: 0xA55F20 vram: 0x80240000 files: - - [0xA55F20, c] - - [0xA55F60, c] - - [0xA56270, c] - - [0xA56390, bin] - - [0xA56BD0, bin] - - [0xA56CA0, bin] - - [0xA57490, bin] # rodata - - [0xA574B0, bin] # rodata + - [0xA55F20, c] + - [0xA55F60, c] + - [0xA56270, c] + - [0xA56390, bin] + - [0xA56BD0, bin] + - [0xA56CA0, bin] + - [0xA57490, bin] # rodata + - [0xA574B0, bin] # rodata - name: world/area_kpa/kpa_14/ type: code overlay: True start: 0xA574B0 vram: 0x80240000 files: - - [0xA574B0, c] - - [0xA574F0, c] - - [0xA57830, c] - - [0xA57D20, bin] - - [0xA57E40, bin] - - [0xA58DB0, bin] - - [0xA59060, bin] - - [0xA59370, bin] # rodata - - [0xA59390, bin] # rodata + - [0xA574B0, c] + - [0xA574F0, c] + - [0xA57830, c] + - [0xA57D20, bin] + - [0xA57E40, bin] + - [0xA58DB0, bin] + - [0xA59060, bin] + - [0xA59370, bin] # rodata + - [0xA59390, bin] # rodata - name: world/area_kpa/kpa_15/ type: code overlay: True start: 0xA59390 vram: 0x80240000 files: - - [0xA59390, c] - - [0xA596A0, c] - - [0xA59960, bin] - - [0xA59E30, bin] - - [0xA5A020, bin] # rodata - - [0xA5A030, bin] # rodata + - [0xA59390, c] + - [0xA596A0, c] + - [0xA59960, bin] + - [0xA59E30, bin] + - [0xA5A020, bin] # rodata + - [0xA5A030, bin] # rodata - name: world/area_kpa/kpa_16/ type: code overlay: True start: 0xA5A030 vram: 0x80240000 files: - - [0xA5A030, c] - - [0xA5A340, c] - - [0xA5A3D0, bin] - - [0xA5B180, bin] - - [0xA5CA10, bin] # rodata - - [0xA5CA20, bin] # rodata + - [0xA5A030, c] + - [0xA5A340, c] + - [0xA5A3D0, bin] + - [0xA5B180, bin] + - [0xA5CA10, bin] # rodata + - [0xA5CA20, bin] # rodata - name: world/area_kpa/kpa_17/ type: code overlay: True start: 0xA5CA20 vram: 0x80240000 files: - - [0xA5CA20, bin] - - [0xA5CB00, bin] - - [0xA5CBD0, bin] - - [0xA5CE90, bin] - - [0xA5E0B0, bin] # rodata + - [0xA5CA20, bin] + - [0xA5CB00, bin] + - [0xA5CBD0, bin] + - [0xA5CE90, bin] + - [0xA5E0B0, bin] # rodata - name: world/area_kpa/kpa_32/ type: code overlay: True start: 0xA5E0C0 vram: 0x80240000 files: - - [0xA5E0C0, c] - - [0xA5E3D0, bin] - - [0xA5E4C0, bin] - - [0xA5E500, bin] - - [0xA5F060, bin] # rodata + - [0xA5E0C0, c] + - [0xA5E3D0, bin] + - [0xA5E4C0, bin] + - [0xA5E500, bin] + - [0xA5F060, bin] # rodata - name: world/area_kpa/kpa_33/ type: code overlay: True start: 0xA5F080 vram: 0x80240000 files: - - [0xA5F080, c] - - [0xA5F390, bin] - - [0xA5F480, bin] - - [0xA5F4C0, bin] - - [0xA60020, bin] # rodata + - [0xA5F080, c] + - [0xA5F390, bin] + - [0xA5F480, bin] + - [0xA5F4C0, bin] + - [0xA60020, bin] # rodata - name: world/area_kpa/kpa_40/ type: code overlay: True start: 0xA60040 vram: 0x80240000 files: - - [0xA60040, bin] - - [0xA60130, bin] - - [0xA60450, bin] # rodata - - [0xA60470, bin] # rodata + - [0xA60040, bin] + - [0xA60130, bin] + - [0xA60450, bin] # rodata + - [0xA60470, bin] # rodata - name: world/area_kpa/kpa_41/ type: code overlay: True start: 0xA60470 vram: 0x80240000 files: - - [0xA60470, bin] - - [0xA60560, bin] - - [0xA609B0, bin] # rodata - - [0xA609D0, bin] # rodata + - [0xA60470, bin] + - [0xA60560, bin] + - [0xA609B0, bin] # rodata + - [0xA609D0, bin] # rodata - name: world/area_kpa/kpa_50/ type: code overlay: True start: 0xA609D0 vram: 0x80240000 files: - - [0xA609D0, c] - - [0xA623F0, bin] - - [0xA624D0, bin] - - [0xA63E60, bin] # rodata - - [0xA64090, bin] # rodata + - [0xA609D0, c] + - [0xA623F0, bin] + - [0xA624D0, bin] + - [0xA63E60, bin] # rodata + - [0xA64090, bin] # rodata - name: world/area_kpa/kpa_51/ type: code overlay: True start: 0xA64090 vram: 0x80240000 files: - - [0xA64090, c] - - [0xA640E0, c] - - [0xA65CB0, bin] - - [0xA65D80, bin] - - [0xA660E0, bin] - - [0xA66FB0, bin] # rodata - - [0xA66FE0, bin] # rodata - - [0xA67018, bin] # rodata - - [0xA67098, bin] # rodata - - [0xA67100, bin] # rodata + - [0xA64090, c] + - [0xA640E0, c] + - [0xA65CB0, bin] + - [0xA65D80, bin] + - [0xA660E0, bin] + - [0xA66FB0, bin] # rodata + - [0xA66FE0, bin] # rodata + - [0xA67018, bin] # rodata + - [0xA67098, bin] # rodata + - [0xA67100, bin] # rodata - name: world/area_kpa/kpa_52/ type: code overlay: True start: 0xA67100 vram: 0x80240000 files: - - [0xA67100, c] - - [0xA671E0, c] - - [0xA68430, bin] - - [0xA68510, bin] - - [0xA68710, bin] - - [0xA68B40, bin] - - [0xA6AAC0, bin] # rodata - - [0xA6AAE0, bin] # rodata - - [0xA6ACA0, bin] # rodata + - [0xA67100, c] + - [0xA671E0, c] + - [0xA68430, bin] + - [0xA68510, bin] + - [0xA68710, bin] + - [0xA68B40, bin] + - [0xA6AAC0, bin] # rodata + - [0xA6AAE0, bin] # rodata + - [0xA6ACA0, bin] # rodata - name: world/area_kpa/kpa_53/ type: code overlay: True start: 0xA6ACA0 vram: 0x80240000 files: - - [0xA6ACA0, c] - - [0xA6AE10, bin] - - [0xA6AEE0, bin] - - [0xA6B270, bin] - - [0xA6CA80, bin] - - [0xA6CAC0, bin] # rodata - - [0xA6CAF0, bin] # rodata - - [0xA6CB00, bin] # rodata + - [0xA6ACA0, c] + - [0xA6AE10, bin] + - [0xA6AEE0, bin] + - [0xA6B270, bin] + - [0xA6CA80, bin] + - [0xA6CAC0, bin] # rodata + - [0xA6CAF0, bin] # rodata + - [0xA6CB00, bin] # rodata - name: world/area_kpa/kpa_60/ type: code overlay: True start: 0xA6CB00 vram: 0x80240000 files: - - [0xA6CB00, c] - - [0xA6CBE0, c] - - [0xA6CEF0, bin] - - [0xA6E3A0, bin] # rodata - - [0xA6E3E0, bin] # rodata + - [0xA6CB00, c] + - [0xA6CBE0, c] + - [0xA6CEF0, bin] + - [0xA6E3A0, bin] # rodata + - [0xA6E3E0, bin] # rodata - name: world/area_kpa/kpa_61/ type: code overlay: True start: 0xA6E3E0 vram: 0x80240000 files: - - [0xA6E3E0, c] - - [0xA6E6F0, c] - - [0xA70720, bin] - - [0xA707F0, bin] - - [0xA70FE0, bin] - - [0xA71FC0, bin] - - [0xA720A0, bin] # rodata - - [0xA72110, bin] # rodata - - [0xA72148, bin] # rodata - - [0xA72220, bin] # rodata + - [0xA6E3E0, c] + - [0xA6E6F0, c] + - [0xA70720, bin] + - [0xA707F0, bin] + - [0xA70FE0, bin] + - [0xA71FC0, bin] + - [0xA720A0, bin] # rodata + - [0xA72110, bin] # rodata + - [0xA72148, bin] # rodata + - [0xA72220, bin] # rodata - name: world/area_kpa/kpa_62/ type: code overlay: True start: 0xA72220 vram: 0x80240000 files: - - [0xA72220, c] - - [0xA72300, c] - - [0xA72610, bin] - - [0xA72740, bin] - - [0xA73590, bin] # rodata + - [0xA72220, c] + - [0xA72300, c] + - [0xA72610, bin] + - [0xA72740, bin] + - [0xA73590, bin] # rodata - name: world/area_kpa/kpa_63/ type: code overlay: True start: 0xA735B0 vram: 0x80240000 files: - - [0xA735B0, c] - - [0xA73740, bin] - - [0xA738E0, bin] - - [0xA73920, bin] - - [0xA73D30, bin] - - [0xA74860, bin] # rodata + - [0xA735B0, c] + - [0xA73740, bin] + - [0xA738E0, bin] + - [0xA73920, bin] + - [0xA73D30, bin] + - [0xA74860, bin] # rodata - name: world/area_kpa/kpa_70/ type: code overlay: True start: 0xA74870 vram: 0x80240000 files: - - [0xA74870, c] - - [0xA74B80, c] - - [0xA75360, bin] - - [0xA75440, bin] - - [0xA75B70, bin] - - [0xA78450, bin] # rodata - - [0xA784C0, bin] # rodata + - [0xA74870, c] + - [0xA74B80, c] + - [0xA75360, bin] + - [0xA75440, bin] + - [0xA75B70, bin] + - [0xA78450, bin] # rodata + - [0xA784C0, bin] # rodata - name: world/area_kpa/kpa_81/ type: code overlay: True start: 0xA784C0 vram: 0x80240000 files: - - [0xA784C0, c] - - [0xA78510, c] - - [0xA78900, bin] - - [0xA789F0, bin] - - [0xA79200, bin] - - [0xA7A4C0, bin] # rodata - - [0xA7A500, bin] # rodata + - [0xA784C0, c] + - [0xA78510, c] + - [0xA78900, bin] + - [0xA789F0, bin] + - [0xA79200, bin] + - [0xA7A4C0, bin] # rodata + - [0xA7A500, bin] # rodata - name: world/area_kpa/kpa_82/ type: code overlay: True start: 0xA7A500 vram: 0x80240000 files: - - [0xA7A500, c] - - [0xA7A550, c] - - [0xA7A940, bin] - - [0xA7AA10, bin] - - [0xA7AF80, bin] - - [0xA83460, bin] # rodata - - [0xA83490, bin] # rodata + - [0xA7A500, c] + - [0xA7A550, c] + - [0xA7A940, bin] + - [0xA7AA10, bin] + - [0xA7AF80, bin] + - [0xA83460, bin] # rodata + - [0xA83490, bin] # rodata - name: world/area_kpa/kpa_83/ type: code overlay: True start: 0xA83490 vram: 0x80240000 files: - - [0xA83490, c] - - [0xA834E0, c] - - [0xA83500, bin] - - [0xA835D0, bin] - - [0xA83AC0, bin] - - [0xA86780, bin] # rodata - - [0xA867B0, bin] # rodata + - [0xA83490, c] + - [0xA834E0, c] + - [0xA83500, bin] + - [0xA835D0, bin] + - [0xA83AC0, bin] + - [0xA86780, bin] # rodata + - [0xA867B0, bin] # rodata - name: world/area_kpa/kpa_90/ type: code overlay: True start: 0xA867B0 vram: 0x80240000 files: - - [0xA867B0, bin] - - [0xA86880, bin] - - [0xA86A40, bin] # rodata + - [0xA867B0, bin] + - [0xA86880, bin] + - [0xA86A40, bin] # rodata - name: world/area_kpa/kpa_91/ type: code overlay: True start: 0xA86A50 vram: 0x80240000 files: - - [0xA86A50, c] - - [0xA88280, c] - - [0xA88360, bin] - - [0xA88420, bin] - - [0xA88730, bin] - - [0xA8C230, bin] - - [0xA8C470, bin] # rodata - - [0xA8C480, bin] # rodata - - [0xA8C7C0, bin] # rodata + - [0xA86A50, c] + - [0xA88280, c] + - [0xA88360, bin] + - [0xA88420, bin] + - [0xA88730, bin] + - [0xA8C230, bin] + - [0xA8C470, bin] # rodata + - [0xA8C480, bin] # rodata + - [0xA8C7C0, bin] # rodata - name: world/area_kpa/kpa_94/ type: code overlay: True start: 0xA8C7C0 vram: 0x80240000 files: - - [0xA8C7C0, bin] - - [0xA8C890, bin] - - [0xA8CA70, bin] # rodata + - [0xA8C7C0, bin] + - [0xA8C890, bin] + - [0xA8CA70, bin] # rodata - name: world/area_kpa/kpa_95/ type: code overlay: True start: 0xA8CA80 vram: 0x80240000 files: - - [0xA8CA80, c] - - [0xA8CB60, c] - - [0xA8E390, bin] - - [0xA8E450, bin] - - [0xA8E690, bin] - - [0xA8E970, bin] - - [0xA92470, bin] # rodata - - [0xA92480, bin] # rodata - - [0xA927C0, bin] # rodata + - [0xA8CA80, c] + - [0xA8CB60, c] + - [0xA8E390, bin] + - [0xA8E450, bin] + - [0xA8E690, bin] + - [0xA8E970, bin] + - [0xA92470, bin] # rodata + - [0xA92480, bin] # rodata + - [0xA927C0, bin] # rodata - name: world/area_kpa/kpa_96/ type: code overlay: True start: 0xA927C0 vram: 0x80240000 files: - - [0xA927C0, c] - - [0xA927F0, bin] - - [0xA928B0, bin] - - [0xA93150, bin] # rodata - - [0xA93160, bin] # rodata + - [0xA927C0, c] + - [0xA927F0, bin] + - [0xA928B0, bin] + - [0xA93150, bin] # rodata + - [0xA93160, bin] # rodata - name: world/area_kpa/kpa_100/ type: code overlay: True start: 0xA93160 vram: 0x80240000 files: - - [0xA93160, c] - - [0xA931B0, bin] - - [0xA93270, bin] - - [0xA933D0, bin] - - [0xA93410, bin] # rodata - - [0xA93440, bin] # rodata + - [0xA93160, c] + - [0xA931B0, bin] + - [0xA93270, bin] + - [0xA933D0, bin] + - [0xA93410, bin] # rodata + - [0xA93440, bin] # rodata - name: world/area_kpa/kpa_101/ type: code overlay: True start: 0xA93440 vram: 0x80240000 files: - - [0xA93440, c] - - [0xA93490, bin] - - [0xA93550, bin] - - [0xA936D0, bin] - - [0xA93710, bin] # rodata - - [0xA93740, bin] # rodata + - [0xA93440, c] + - [0xA93490, bin] + - [0xA93550, bin] + - [0xA936D0, bin] + - [0xA93710, bin] # rodata + - [0xA93740, bin] # rodata - name: world/area_kpa/kpa_102/ type: code overlay: True start: 0xA93740 vram: 0x80240000 files: - - [0xA93740, c] - - [0xA93A50, c] - - [0xA96CD0, bin] - - [0xA96DA0, bin] - - [0xA97690, bin] - - [0xA99250, bin] # rodata - - [0xA99478, bin] # rodata - - [0xA994B0, bin] # rodata - - [0xA99590, bin] # rodata + - [0xA93740, c] + - [0xA93A50, c] + - [0xA96CD0, bin] + - [0xA96DA0, bin] + - [0xA97690, bin] + - [0xA99250, bin] # rodata + - [0xA99478, bin] # rodata + - [0xA994B0, bin] # rodata + - [0xA99590, bin] # rodata - name: world/area_kpa/kpa_111/ type: code overlay: True start: 0xA99590 vram: 0x80240000 files: - - [0xA99590, c] - - [0xA9A950, bin] - - [0xA9AA20, bin] - - [0xA9ACF0, bin] - - [0xA9C740, bin] - - [0xA9C7C0, bin] # rodata - - [0xA9C990, bin] # rodata + - [0xA99590, c] + - [0xA9A950, bin] + - [0xA9AA20, bin] + - [0xA9ACF0, bin] + - [0xA9C740, bin] + - [0xA9C7C0, bin] # rodata + - [0xA9C990, bin] # rodata - name: world/area_kpa/kpa_112/ type: code overlay: True start: 0xA9C990 vram: 0x80240000 files: - - [0xA9C990, bin] - - [0xA9CA60, bin] - - [0xA9CC20, bin] # rodata + - [0xA9C990, bin] + - [0xA9CA60, bin] + - [0xA9CC20, bin] # rodata - name: world/area_kpa/kpa_113/ type: code overlay: True start: 0xA9CC30 vram: 0x80240000 files: - - [0xA9CC30, c] - - [0xA9CC70, c] - - [0xA9D6D0, bin] - - [0xA9D7B0, bin] - - [0xA9DA60, bin] - - [0xA9DD00, bin] - - [0xA9E900, bin] # rodata - - [0xA9E920, bin] # rodata - - [0xA9E980, bin] # rodata + - [0xA9CC30, c] + - [0xA9CC70, c] + - [0xA9D6D0, bin] + - [0xA9D7B0, bin] + - [0xA9DA60, bin] + - [0xA9DD00, bin] + - [0xA9E900, bin] # rodata + - [0xA9E920, bin] # rodata + - [0xA9E980, bin] # rodata - name: world/area_kpa/kpa_114/ type: code overlay: True start: 0xA9E980 vram: 0x80240000 files: - - [0xA9E980, c] - - [0xA9E9D0, bin] - - [0xA9EAA0, bin] - - [0xA9ED10, bin] # rodata - - [0xA9ED40, bin] # rodata + - [0xA9E980, c] + - [0xA9E9D0, bin] + - [0xA9EAA0, bin] + - [0xA9ED10, bin] # rodata + - [0xA9ED40, bin] # rodata - name: world/area_kpa/kpa_115/ type: code overlay: True start: 0xA9ED40 vram: 0x80240000 files: - - [0xA9ED40, c] - - [0xAA0100, bin] - - [0xAA01E0, bin] - - [0xAA0430, bin] - - [0xAA0B20, bin] - - [0xAA1D00, bin] # rodata - - [0xAA1D20, bin] # rodata - - [0xAA1EE0, bin] # rodata + - [0xA9ED40, c] + - [0xAA0100, bin] + - [0xAA01E0, bin] + - [0xAA0430, bin] + - [0xAA0B20, bin] + - [0xAA1D00, bin] # rodata + - [0xAA1D20, bin] # rodata + - [0xAA1EE0, bin] # rodata - name: world/area_kpa/kpa_116/ type: code overlay: True start: 0xAA1EE0 vram: 0x80240000 files: - - [0xAA1EE0, bin] - - [0xAA1FB0, bin] - - [0xAA2170, bin] # rodata + - [0xAA1EE0, bin] + - [0xAA1FB0, bin] + - [0xAA2170, bin] # rodata - name: world/area_kpa/kpa_117/ type: code overlay: True start: 0xAA2180 vram: 0x80240000 files: - - [0xAA2180, bin] - - [0xAA2240, bin] - - [0xAA23B0, bin] # rodata - - [0xAA23C0, bin] # rodata + - [0xAA2180, bin] + - [0xAA2240, bin] + - [0xAA23B0, bin] # rodata + - [0xAA23C0, bin] # rodata - name: world/area_kpa/kpa_118/ type: code overlay: True start: 0xAA23C0 vram: 0x80240000 files: - - [0xAA23C0, bin] - - [0xAA2490, bin] - - [0xAA2650, bin] # rodata + - [0xAA23C0, bin] + - [0xAA2490, bin] + - [0xAA2650, bin] # rodata - name: world/area_kpa/kpa_119/ type: code overlay: True start: 0xAA2660 vram: 0x80240000 files: - - [0xAA2660, bin] - - [0xAA2720, bin] - - [0xAA2760, bin] - - [0xAA28E0, bin] # rodata - - [0xAA28F0, bin] # rodata + - [0xAA2660, bin] + - [0xAA2720, bin] + - [0xAA2760, bin] + - [0xAA28E0, bin] # rodata + - [0xAA28F0, bin] # rodata - name: world/area_kpa/kpa_121/ type: code overlay: True start: 0xAA28F0 vram: 0x80240000 files: - - [0xAA28F0, bin] - - [0xAA29C0, bin] - - [0xAA2D10, bin] # rodata + - [0xAA28F0, bin] + - [0xAA29C0, bin] + - [0xAA2D10, bin] # rodata - name: world/area_kpa/kpa_130/ type: code overlay: True start: 0xAA2D20 vram: 0x80240000 files: - - [0xAA2D20, c] - - [0xAA3460, bin] - - [0xAA3530, bin] - - [0xAA3870, bin] - - [0xAA7460, bin] # rodata + - [0xAA2D20, c] + - [0xAA3460, bin] + - [0xAA3530, bin] + - [0xAA3870, bin] + - [0xAA7460, bin] # rodata - name: world/area_kpa/kpa_133/ type: code overlay: True start: 0xAA7480 vram: 0x80240000 files: - - [0xAA7480, c] - - [0xAA7790, c] - - [0xAA78F0, bin] - - [0xAA79E0, bin] - - [0xAA8290, bin] - - [0xAA8C70, bin] - - [0xAA8F10, bin] - - [0xAA8F90, bin] # rodata + - [0xAA7480, c] + - [0xAA7790, c] + - [0xAA78F0, bin] + - [0xAA79E0, bin] + - [0xAA8290, bin] + - [0xAA8C70, bin] + - [0xAA8F10, bin] + - [0xAA8F90, bin] # rodata - name: world/area_kpa/kpa_134/ type: code overlay: True start: 0xAA8FA0 vram: 0x80240000 files: - - [0xAA8FA0, c] - - [0xAA92B0, c] - - [0xAA94B0, c] - - [0xAA96A0, bin] - - [0xAA9790, bin] - - [0xAAA060, bin] - - [0xAABF00, bin] - - [0xAAC3B0, bin] - - [0xAAC820, bin] # rodata + - [0xAA8FA0, c] + - [0xAA92B0, c] + - [0xAA94B0, c] + - [0xAA96A0, bin] + - [0xAA9790, bin] + - [0xAAA060, bin] + - [0xAABF00, bin] + - [0xAAC3B0, bin] + - [0xAAC820, bin] # rodata - name: world/area_osr/osr_00/ type: code overlay: True start: 0xAAC830 vram: 0x80240000 files: - - [0xAAC830, c] - - [0xAACBB0, c] - - [0xAACFC0, bin] - - [0xAAD790, bin] - - [0xAAFFD0, bin] # rodata + - [0xAAC830, c] + - [0xAACBB0, c] + - [0xAACFC0, bin] + - [0xAAD790, bin] + - [0xAAFFD0, bin] # rodata - name: world/area_osr/osr_01/ type: code overlay: True start: 0xAAFFF0 vram: 0x80240000 files: - - [0xAAFFF0, c] - - [0xAB0040, c] - - [0xAB0350, c] - - [0xAB0AB0, bin] - - [0xAB0C10, bin] - - [0xAB1150, bin] - - [0xAB2150, bin] # rodata + - [0xAAFFF0, c] + - [0xAB0040, c] + - [0xAB0350, c] + - [0xAB0AB0, bin] + - [0xAB0C10, bin] + - [0xAB1150, bin] + - [0xAB2150, bin] # rodata - name: world/area_osr/osr_02/ type: code overlay: True start: 0xAB2170 vram: 0x80240000 files: - - [0xAB2170, c] - - [0xAB2190, c] - - [0xAB21D0, c] - - [0xAB2290, c] - - [0xAB22C0, bin] - - [0xAB2B00, bin] - - [0xAB2BB0, bin] - - [0xAB5D40, bin] - - [0xAB6270, bin] # rodata - - [0xAB6290, bin] # rodata + - [0xAB2170, c] + - [0xAB2190, c] + - [0xAB21D0, c] + - [0xAB2290, c] + - [0xAB22C0, bin] + - [0xAB2B00, bin] + - [0xAB2BB0, bin] + - [0xAB5D40, bin] + - [0xAB6270, bin] # rodata + - [0xAB6290, bin] # rodata - name: world/area_osr/osr_03/ type: code overlay: True start: 0xAB6290 vram: 0x80240000 files: - - [0xAB6290, c] - - [0xAB62B0, c] - - [0xAB6610, bin] - - [0xAB6DB0, bin] - - [0xAB7E20, bin] - - [0xAB8350, bin] - - [0xAB8B10, bin] - - [0xAB9270, bin] # rodata - - [0xAB92B0, bin] # rodata + - [0xAB6290, c] + - [0xAB62B0, c] + - [0xAB6610, bin] + - [0xAB6DB0, bin] + - [0xAB7E20, bin] + - [0xAB8350, bin] + - [0xAB8B10, bin] + - [0xAB9270, bin] # rodata + - [0xAB92B0, bin] # rodata - name: world/area_osr/osr_04/ type: code overlay: True start: 0xAB92B0 vram: 0x80240000 files: - - [0xAB92B0, c] - - [0xAB9370, bin] - - [0xAB95D0, bin] - - [0xABB260, bin] # rodata - - [0xABB290, bin] # rodata + - [0xAB92B0, c] + - [0xAB9370, bin] + - [0xAB95D0, bin] + - [0xABB260, bin] # rodata + - [0xABB290, bin] # rodata - name: world/area_kkj/kkj_00/ type: code overlay: True start: 0xABB290 vram: 0x80240000 files: - - [0xABB290, c] - - [0xABB340, c] - - [0xABC250, bin] - - [0xABC3D0, bin] - - [0xABEC70, bin] - - [0xABEF20, bin] - - [0xAC40D0, bin] - - [0xAC4FB0, bin] # rodata - - [0xAC5170, bin] # rodata + - [0xABB290, c] + - [0xABB340, c] + - [0xABC250, bin] + - [0xABC3D0, bin] + - [0xABEC70, bin] + - [0xABEF20, bin] + - [0xAC40D0, bin] + - [0xAC4FB0, bin] # rodata + - [0xAC5170, bin] # rodata - name: world/area_kkj/kkj_01/ type: code overlay: True start: 0xAC5170 vram: 0x80240000 files: - - [0xAC5170, c] - - [0xAC6000, bin] - - [0xAC6140, bin] - - [0xAC67E0, bin] - - [0xAC8B60, bin] # rodata - - [0xAC8B80, bin] # rodata + - [0xAC5170, c] + - [0xAC6000, bin] + - [0xAC6140, bin] + - [0xAC67E0, bin] + - [0xAC8B60, bin] # rodata + - [0xAC8B80, bin] # rodata - name: world/area_kkj/kkj_02/ type: code overlay: True start: 0xAC8D20 vram: 0x80240000 files: - - [0xAC8D20, bin] - - [0xAC8E40, bin] - - [0xAC9160, bin] - - [0xAC9700, bin] # rodata + - [0xAC8D20, bin] + - [0xAC8E40, bin] + - [0xAC9160, bin] + - [0xAC9700, bin] # rodata - name: world/area_kkj/kkj_03/ type: code overlay: True start: 0xAC9710 vram: 0x80240000 files: - - [0xAC9710, c] - - [0xAC9730, c] - - [0xAC9A40, bin] - - [0xAC9C00, bin] - - [0xACA010, bin] - - [0xACA250, bin] - - [0xACAB00, bin] # rodata - - [0xACAB20, bin] # rodata + - [0xAC9710, c] + - [0xAC9730, c] + - [0xAC9A40, bin] + - [0xAC9C00, bin] + - [0xACA010, bin] + - [0xACA250, bin] + - [0xACAB00, bin] # rodata + - [0xACAB20, bin] # rodata - name: world/area_kkj/kkj_10/ type: code overlay: True start: 0xACAB20 vram: 0x80240000 files: - - [0xACAB20, c] - - [0xACAB90, c] - - [0xACABD0, c] - - [0xACB3C0, c] - - [0xACBBF0, bin] - - [0xACC510, bin] - - [0xACC700, bin] - - [0xACE0D0, bin] # rodata + - [0xACAB20, c] + - [0xACAB90, c] + - [0xACABD0, c] + - [0xACB3C0, c] + - [0xACBBF0, bin] + - [0xACC510, bin] + - [0xACC700, bin] + - [0xACE0D0, bin] # rodata - name: world/area_kkj/kkj_11/ type: code overlay: True start: 0xACE140 vram: 0x80240000 files: - - [0xACE140, c] - - [0xACE1B0, c] - - [0xACE1F0, c] - - [0xACE9E0, c] - - [0xACF210, bin] - - [0xACFD40, bin] - - [0xACFF30, bin] - - [0xAD02E0, bin] - - [0xAD27F0, bin] - - [0xAD4010, bin] # rodata + - [0xACE140, c] + - [0xACE1B0, c] + - [0xACE1F0, c] + - [0xACE9E0, c] + - [0xACF210, bin] + - [0xACFD40, bin] + - [0xACFF30, bin] + - [0xAD02E0, bin] + - [0xAD27F0, bin] + - [0xAD4010, bin] # rodata - name: world/area_kkj/kkj_12/ type: code overlay: True start: 0xAD4090 vram: 0x80240000 files: - - [0xAD4090, c] - - [0xAD4100, c] - - [0xAD4940, bin] - - [0xAD5EA0, bin] # rodata + - [0xAD4090, c] + - [0xAD4100, c] + - [0xAD4940, bin] + - [0xAD5EA0, bin] # rodata - name: world/area_kkj/kkj_13/ type: code overlay: True start: 0xAD5ED0 vram: 0x80240000 files: - - [0xAD5ED0, c] - - [0xAD5EF0, c] - - [0xAD6200, c] - - [0xAD6630, bin] - - [0xAD6780, bin] - - [0xAD6820, bin] - - [0xAD6E60, bin] - - [0xAD8650, bin] - - [0xAD9460, bin] - - [0xADAE60, bin] # rodata + - [0xAD5ED0, c] + - [0xAD5EF0, c] + - [0xAD6200, c] + - [0xAD6630, bin] + - [0xAD6780, bin] + - [0xAD6820, bin] + - [0xAD6E60, bin] + - [0xAD8650, bin] + - [0xAD9460, bin] + - [0xADAE60, bin] # rodata - name: world/area_kkj/kkj_14/ type: code overlay: True start: 0xADAEA0 vram: 0x80240000 files: - - [0xADAEA0, c] - - [0xADAEF0, c] - - [0xADB360, bin] - - [0xADB5C0, bin] - - [0xADC0F0, bin] - - [0xADD870, bin] - - [0xADE870, bin] - - [0xADED00, bin] - - [0xADF190, bin] - - [0xADFA50, bin] - - [0xAE1B30, bin] - - [0xAE1E80, bin] - - [0xAE3160, bin] - - [0xAE32D0, bin] - - [0xAE3610, bin] - - [0xAE3850, bin] - - [0xAE5550, bin] # rodata + - [0xADAEA0, c] + - [0xADAEF0, c] + - [0xADB360, bin] + - [0xADB5C0, bin] + - [0xADC0F0, bin] + - [0xADD870, bin] + - [0xADE870, bin] + - [0xADED00, bin] + - [0xADF190, bin] + - [0xADFA50, bin] + - [0xAE1B30, bin] + - [0xAE1E80, bin] + - [0xAE3160, bin] + - [0xAE32D0, bin] + - [0xAE3610, bin] + - [0xAE3850, bin] + - [0xAE5550, bin] # rodata - name: world/area_kkj/kkj_15/ type: code overlay: True start: 0xAE5590 vram: 0x80240000 files: - - [0xAE5590, c] - - [0xAE58D0, c] - - [0xAE5A90, c] - - [0xAE5B60, c] - - [0xAE5BA0, bin] - - [0xAE5CE0, bin] - - [0xAE5D80, bin] - - [0xAE65A0, bin] - - [0xAE6BF0, bin] - - [0xAE8A50, bin] - - [0xAEA0D0, bin] - - [0xAEA230, bin] - - [0xAEB820, bin] - - [0xAECB30, bin] - - [0xAED3E0, bin] # rodata - - [0xAED410, bin] # rodata + - [0xAE5590, c] + - [0xAE58D0, c] + - [0xAE5A90, c] + - [0xAE5B60, c] + - [0xAE5BA0, bin] + - [0xAE5CE0, bin] + - [0xAE5D80, bin] + - [0xAE65A0, bin] + - [0xAE6BF0, bin] + - [0xAE8A50, bin] + - [0xAEA0D0, bin] + - [0xAEA230, bin] + - [0xAEB820, bin] + - [0xAECB30, bin] + - [0xAED3E0, bin] # rodata + - [0xAED410, bin] # rodata - name: world/area_kkj/kkj_16/ type: code overlay: True start: 0xAED410 vram: 0x80240000 files: - - [0xAED410, c] - - [0xAEDC60, c] - - [0xAEE490, bin] - - [0xAEE7F0, bin] - - [0xAF09D0, bin] - - [0xAF1B10, bin] - - [0xAF1C10, bin] # rodata + - [0xAED410, c] + - [0xAEDC60, c] + - [0xAEE490, bin] + - [0xAEE7F0, bin] + - [0xAF09D0, bin] + - [0xAF1B10, bin] + - [0xAF1C10, bin] # rodata - name: world/area_kkj/kkj_17/ type: code overlay: True start: 0xAF1C60 vram: 0x80240000 files: - - [0xAF1C60, c] - - [0xAF2200, bin] - - [0xAF2440, bin] - - [0xAF2520, bin] - - [0xAF2C90, bin] # rodata - - [0xAF2CA0, bin] # rodata + - [0xAF1C60, c] + - [0xAF2200, bin] + - [0xAF2440, bin] + - [0xAF2520, bin] + - [0xAF2C90, bin] # rodata + - [0xAF2CA0, bin] # rodata - name: world/area_kkj/kkj_18/ type: code overlay: True start: 0xAF2CA0 vram: 0x80240000 files: - - [0xAF2CA0, c] - - [0xAF2FE0, c] - - [0xAF34C0, bin] - - [0xAF3560, bin] - - [0xAF3600, bin] - - [0xAF3CB0, bin] - - [0xAF4BB0, bin] - - [0xAF7920, bin] # rodata - - [0xAF7940, bin] # rodata - - [0xAF7950, bin] # rodata + - [0xAF2CA0, c] + - [0xAF2FE0, c] + - [0xAF34C0, bin] + - [0xAF3560, bin] + - [0xAF3600, bin] + - [0xAF3CB0, bin] + - [0xAF4BB0, bin] + - [0xAF7920, bin] # rodata + - [0xAF7940, bin] # rodata + - [0xAF7950, bin] # rodata - name: world/area_kkj/kkj_19/ type: code overlay: True start: 0xAF7950 vram: 0x80240000 files: - - [0xAF7950, c] - - [0xAF7C00, c] - - [0xAF8660, bin] - - [0xAF8808, bin] - - [0xAF8B40, bin] - - [0xAF9050, bin] - - [0xAF9460, bin] - - [0xAFDAF0, bin] # rodata - - [0xAFDB40, bin] # rodata + - [0xAF7950, c] + - [0xAF7C00, c] + - [0xAF8660, bin] + - [0xAF8808, bin] + - [0xAF8B40, bin] + - [0xAF9050, bin] + - [0xAF9460, bin] + - [0xAFDAF0, bin] # rodata + - [0xAFDB40, bin] # rodata - name: world/area_kkj/kkj_20/ type: code overlay: True start: 0xAFDB40 vram: 0x80240000 files: - - [0xAFDB40, c] - - [0xAFDE00, c] - - [0xAFE130, bin] - - [0xAFE1E0, bin] - - [0xAFE3C0, bin] - - [0xAFE610, bin] - - [0xB02290, bin] # rodata - - [0xB022A0, bin] # rodata + - [0xAFDB40, c] + - [0xAFDE00, c] + - [0xAFE130, bin] + - [0xAFE1E0, bin] + - [0xAFE3C0, bin] + - [0xAFE610, bin] + - [0xB02290, bin] # rodata + - [0xB022A0, bin] # rodata - name: world/area_kkj/kkj_21/ type: code overlay: True start: 0xB022A0 vram: 0x80240000 files: - - [0xB022A0, bin] - - [0xB024E0, bin] # rodata - - [0xB024F0, bin] # rodata + - [0xB022A0, bin] + - [0xB024E0, bin] # rodata + - [0xB024F0, bin] # rodata - name: world/area_kkj/kkj_22/ type: code overlay: True start: 0xB024F0 vram: 0x80240000 files: - - [0xB024F0, bin] - - [0xB025A0, bin] - - [0xB02870, bin] # rodata + - [0xB024F0, bin] + - [0xB025A0, bin] + - [0xB02870, bin] # rodata - name: world/area_kkj/kkj_23/ type: code overlay: True start: 0xB02880 vram: 0x80240000 files: - - [0xB02880, c] - - [0xB028A0, c] - - [0xB03190, c] - - [0xB03250, bin] - - [0xB03300, bin] - - [0xB036B0, bin] - - [0xB04420, bin] - - [0xB04FB0, bin] - - [0xB06530, bin] # rodata - - [0xB06550, bin] # rodata + - [0xB02880, c] + - [0xB028A0, c] + - [0xB03190, c] + - [0xB03250, bin] + - [0xB03300, bin] + - [0xB036B0, bin] + - [0xB04420, bin] + - [0xB04FB0, bin] + - [0xB06530, bin] # rodata + - [0xB06550, bin] # rodata - name: world/area_kkj/kkj_24/ type: code overlay: True start: 0xB06570 vram: 0x80240000 files: - - [0xB06570, c] - - [0xB06590, bin] - - [0xB06640, bin] - - [0xB069B0, bin] - - [0xB069F0, bin] # rodata + - [0xB06570, c] + - [0xB06590, bin] + - [0xB06640, bin] + - [0xB069B0, bin] + - [0xB069F0, bin] # rodata - name: world/area_kkj/kkj_25/ type: code overlay: True start: 0xB06A00 vram: 0x80240000 files: - - [0xB06A00, c] - - [0xB06A20, c] - - [0xB06A50, c] - - [0xB06A80, c] - - [0xB06D10, c] - - [0xB07940, bin] - - [0xB081C0, bin] - - [0xB0B310, bin] - - [0xB0E3A0, bin] - - [0xB0F280, bin] - - [0xB13100, bin] # rodata + - [0xB06A00, c] + - [0xB06A20, c] + - [0xB06A50, c] + - [0xB06A80, c] + - [0xB06D10, c] + - [0xB07940, bin] + - [0xB081C0, bin] + - [0xB0B310, bin] + - [0xB0E3A0, bin] + - [0xB0F280, bin] + - [0xB13100, bin] # rodata - name: world/area_kkj/kkj_26/ type: code overlay: True start: 0xB13120 vram: 0x80240000 files: - - [0xB13120, c] - - [0xB13150, bin] - - [0xB13500, bin] - - [0xB13A40, bin] - - [0xB13D50, bin] # rodata + - [0xB13120, c] + - [0xB13150, bin] + - [0xB13500, bin] + - [0xB13A40, bin] + - [0xB13D50, bin] # rodata - name: world/area_kkj/kkj_27/ type: code overlay: True start: 0xB13D70 vram: 0x80240000 files: - - [0xB13D70, c] - - [0xB14080, c] - - [0xB14210, bin] - - [0xB14340, bin] - - [0xB143E0, bin] - - [0xB14E90, bin] # rodata + - [0xB13D70, c] + - [0xB14080, c] + - [0xB14210, bin] + - [0xB14340, bin] + - [0xB143E0, bin] + - [0xB14E90, bin] # rodata - name: world/area_kkj/kkj_28/ type: code overlay: True start: 0xB14EA0 vram: 0x80240000 files: - - [0xB14EA0, bin] - - [0xB150A0, bin] # rodata - - [0xB150B0, bin] # rodata + - [0xB14EA0, bin] + - [0xB150A0, bin] # rodata + - [0xB150B0, bin] # rodata - name: world/area_kkj/kkj_29/ type: code overlay: True start: 0xB150B0 vram: 0x80240000 files: - - [0xB150B0, c] - - [0xB150E0, c] - - [0xB15120, bin] - - [0xB15410, bin] - - [0xB15DA0, bin] - - [0xB1A8F0, bin] # rodata + - [0xB150B0, c] + - [0xB150E0, c] + - [0xB15120, bin] + - [0xB15410, bin] + - [0xB15DA0, bin] + - [0xB1A8F0, bin] # rodata - name: world/area_tst/tst_01/ type: code overlay: True start: 0xB1A900 vram: 0x80240000 files: - - [0xB1A900, bin] - - [0xB1AB20, bin] - - [0xB1AC20, bin] # rodata + - [0xB1A900, bin] + - [0xB1AB20, bin] + - [0xB1AC20, bin] # rodata - name: world/area_tst/tst_02/ type: code overlay: True start: 0xB1AC30 vram: 0x80240000 files: - - [0xB1AC30, bin] - - [0xB1AE50, bin] - - [0xB1AF70, bin] # rodata + - [0xB1AC30, bin] + - [0xB1AE50, bin] + - [0xB1AF70, bin] # rodata - name: world/area_tst/tst_03/ type: code overlay: True start: 0xB1AF80 vram: 0x80240000 files: - - [0xB1AF80, bin] - - [0xB1B240, bin] - - [0xB1B560, bin] # rodata + - [0xB1AF80, bin] + - [0xB1B240, bin] + - [0xB1B560, bin] # rodata - name: world/area_tst/tst_04/ type: code overlay: True start: 0xB1B570 vram: 0x80240000 files: - - [0xB1B570, c] - - [0xB1BBD0, c] - - [0xB1BC00, bin] - - [0xB1C1E0, bin] - - [0xB1C220, bin] - - [0xB1C270, bin] - - [0xB1C510, bin] - - [0xB1C530, bin] # rodata - - [0xB1C540, bin] # rodata + - [0xB1B570, c] + - [0xB1BBD0, c] + - [0xB1BC00, bin] + - [0xB1C1E0, bin] + - [0xB1C220, bin] + - [0xB1C270, bin] + - [0xB1C510, bin] + - [0xB1C530, bin] # rodata + - [0xB1C540, bin] # rodata - name: world/area_tst/tst_10/ type: code overlay: True start: 0xB1C540 vram: 0x80240000 files: - - [0xB1C540, bin] - - [0xB1CA40, bin] # rodata - - [0xB1CA50, bin] # rodata + - [0xB1C540, bin] + - [0xB1CA40, bin] # rodata + - [0xB1CA50, bin] # rodata - name: world/area_tst/tst_11/ type: code overlay: True start: 0xB1CA50 vram: 0x80240000 files: - - [0xB1CA50, c] - - [0xB1D1C0, bin] - - [0xB1D2A0, bin] - - [0xB1D2F0, bin] + - [0xB1CA50, c] + - [0xB1D1C0, bin] + - [0xB1D2A0, bin] + - [0xB1D2F0, bin] - name: world/area_tst/tst_12/ type: code overlay: True start: 0xB1D2F0 vram: 0x80240000 files: - - [0xB1D2F0, bin] - - [0xB1D760, bin] + - [0xB1D2F0, bin] + - [0xB1D760, bin] - name: world/area_tst/tst_13/ type: code overlay: True start: 0xB1D760 vram: 0x80240000 files: - - [0xB1D760, c] - - [0xB1DB20, bin] - - [0xB20460, bin] # rodata - - [0xB20470, bin] # rodata + - [0xB1D760, c] + - [0xB1DB20, bin] + - [0xB20460, bin] # rodata + - [0xB20470, bin] # rodata - name: world/area_tst/tst_20/ type: code overlay: True start: 0xB20470 vram: 0x80240000 files: - - [0xB20470, bin] + - [0xB20470, bin] - name: world/area_jan/jan_00/ type: code overlay: True start: 0xB20540 vram: 0x80240000 files: - - [0xB20540, c] - - [0xB216E0, c] - - [0xB21EA0, c] - - [0xB220E0, bin] - - [0xB22190, bin] - - [0xB226D0, bin] - - [0xB25E90, bin] - - [0xB275B0, bin] - - [0xB27FE0, bin] # rodata - - [0xB28030, bin] # rodata + - [0xB20540, c] + - [0xB216E0, c] + - [0xB21EA0, c] + - [0xB220E0, bin] + - [0xB22190, bin] + - [0xB226D0, bin] + - [0xB25E90, bin] + - [0xB275B0, bin] + - [0xB27FE0, bin] # rodata + - [0xB28030, bin] # rodata - name: world/area_jan/jan_01/ type: code overlay: True start: 0xB28030 vram: 0x80240000 files: - - [0xB28030, c] - - [0xB291C0, c] - - [0xB29400, bin] - - [0xB294A0, bin] - - [0xB299B0, bin] - - [0xB2B430, bin] - - [0xB2B590, bin] - - [0xB2C410, bin] # rodata - - [0xB2C470, bin] # rodata + - [0xB28030, c] + - [0xB291C0, c] + - [0xB29400, bin] + - [0xB294A0, bin] + - [0xB299B0, bin] + - [0xB2B430, bin] + - [0xB2B590, bin] + - [0xB2C410, bin] # rodata + - [0xB2C470, bin] # rodata - name: world/area_jan/jan_02/ type: code overlay: True start: 0xB2C470 vram: 0x80240000 files: - - [0xB2C470, c] - - [0xB2C4A0, c] - - [0xB2C8A0, c] - - [0xB2EB50, c] - - [0xB2ED90, bin] - - [0xB2EEA0, bin] - - [0xB2F410, bin] - - [0xB33E00, bin] - - [0xB33E50, bin] - - [0xB34A20, bin] # rodata + - [0xB2C470, c] + - [0xB2C4A0, c] + - [0xB2C8A0, c] + - [0xB2EB50, c] + - [0xB2ED90, bin] + - [0xB2EEA0, bin] + - [0xB2F410, bin] + - [0xB33E00, bin] + - [0xB33E50, bin] + - [0xB34A20, bin] # rodata - name: world/area_jan/jan_03/ type: code overlay: True start: 0xB34BD0 vram: 0x80240000 files: - - [0xB34BD0, c] - - [0xB37B70, c] - - [0xB37C20, c] - - [0xB37E60, bin] - - [0xB39530, bin] - - [0xB435D0, bin] - - [0xB438B0, bin] - - [0xB43B60, bin] - - [0xB445A0, bin] # rodata - - [0xB445C0, bin] # rodata - - [0xB44770, bin] # rodata + - [0xB34BD0, c] + - [0xB37B70, c] + - [0xB37C20, c] + - [0xB37E60, bin] + - [0xB39530, bin] + - [0xB435D0, bin] + - [0xB438B0, bin] + - [0xB43B60, bin] + - [0xB445A0, bin] # rodata + - [0xB445C0, bin] # rodata + - [0xB44770, bin] # rodata - name: world/area_jan/jan_04/ type: code overlay: True start: 0xB44770 vram: 0x80240000 files: - - [0xB44770, c] - - [0xB447B0, c] - - [0xB44AC0, c] - - [0xB44D80, c] - - [0xB44F10, c] - - [0xB45150, c] - - [0xB451F0, c] - - [0xB45730, c] - - [0xB45860, bin] - - [0xB45A20, bin] - - [0xB461B0, bin] - - [0xB47EC0, bin] - - [0xB47FE0, bin] - - [0xB48B70, bin] - - [0xB490C0, bin] - - [0xB497F0, bin] - - [0xB4A4B0, bin] - - [0xB4AA20, bin] # rodata - - [0xB4AA50, bin] # rodata - - [0xB4AA70, bin] # rodata + - [0xB44770, c] + - [0xB447B0, c] + - [0xB44AC0, c] + - [0xB44D80, c] + - [0xB44F10, c] + - [0xB45150, c] + - [0xB451F0, c] + - [0xB45730, c] + - [0xB45860, bin] + - [0xB45A20, bin] + - [0xB461B0, bin] + - [0xB47EC0, bin] + - [0xB47FE0, bin] + - [0xB48B70, bin] + - [0xB490C0, bin] + - [0xB497F0, bin] + - [0xB4A4B0, bin] + - [0xB4AA20, bin] # rodata + - [0xB4AA50, bin] # rodata + - [0xB4AA70, bin] # rodata - name: world/area_jan/jan_05/ type: code overlay: True start: 0xB4AA70 vram: 0x80240000 files: - - [0xB4AA70, c] - - [0xB4AAB0, c] - - [0xB4ADC0, c] - - [0xB4AF10, c] - - [0xB4B260, c] - - [0xB4D140, bin] - - [0xB4D200, bin] - - [0xB4D7A0, bin] - - [0xB4E050, bin] - - [0xB4F170, bin] - - [0xB517F0, bin] - - [0xB523E0, bin] - - [0xB52470, bin] # rodata - - [0xB524A0, bin] # rodata - - [0xB524E8, bin] # rodata - - [0xB52830, bin] # rodata + - [0xB4AA70, c] + - [0xB4AAB0, c] + - [0xB4ADC0, c] + - [0xB4AF10, c] + - [0xB4B260, c] + - [0xB4D140, bin] + - [0xB4D200, bin] + - [0xB4D7A0, bin] + - [0xB4E050, bin] + - [0xB4F170, bin] + - [0xB517F0, bin] + - [0xB523E0, bin] + - [0xB52470, bin] # rodata + - [0xB524A0, bin] # rodata + - [0xB524E8, bin] # rodata + - [0xB52830, bin] # rodata - name: world/area_jan/jan_06/ type: code overlay: True start: 0xB52830 vram: 0x80240000 files: - - [0xB52830, c] - - [0xB52B40, c] - - [0xB52BE0, c] - - [0xB52D30, c] - - [0xB52F70, c] - - [0xB54E10, bin] - - [0xB55860, bin] - - [0xB55F40, bin] - - [0xB567F0, bin] - - [0xB572C0, bin] - - [0xB57320, bin] - - [0xB586B0, bin] - - [0xB594C0, bin] # rodata - - [0xB59528, bin] # rodata - - [0xB59870, bin] # rodata + - [0xB52830, c] + - [0xB52B40, c] + - [0xB52BE0, c] + - [0xB52D30, c] + - [0xB52F70, c] + - [0xB54E10, bin] + - [0xB55860, bin] + - [0xB55F40, bin] + - [0xB567F0, bin] + - [0xB572C0, bin] + - [0xB57320, bin] + - [0xB586B0, bin] + - [0xB594C0, bin] # rodata + - [0xB59528, bin] # rodata + - [0xB59870, bin] # rodata - name: world/area_jan/jan_07/ type: code overlay: True start: 0xB59870 vram: 0x80240000 files: - - [0xB59870, c] - - [0xB5A610, c] - - [0xB5A850, c] - - [0xB5AA90, bin] - - [0xB5AB20, bin] - - [0xB5ACA0, bin] - - [0xB5CA50, bin] - - [0xB5D490, bin] - - [0xB5DF60, bin] # rodata - - [0xB5DF70, bin] # rodata + - [0xB59870, c] + - [0xB5A610, c] + - [0xB5A850, c] + - [0xB5AA90, bin] + - [0xB5AB20, bin] + - [0xB5ACA0, bin] + - [0xB5CA50, bin] + - [0xB5D490, bin] + - [0xB5DF60, bin] # rodata + - [0xB5DF70, bin] # rodata - name: world/area_jan/jan_08/ type: code overlay: True start: 0xB5E2B0 vram: 0x80240000 files: - - [0xB5E2B0, c] - - [0xB5E5C0, c] - - [0xB5E910, c] - - [0xB5F650, c] - - [0xB604A0, c] - - [0xB606E0, bin] - - [0xB60790, bin] - - [0xB620B0, bin] - - [0xB62850, bin] - - [0xB64B90, bin] - - [0xB65740, bin] # rodata - - [0xB65760, bin] # rodata - - [0xB65770, bin] # rodata + - [0xB5E2B0, c] + - [0xB5E5C0, c] + - [0xB5E910, c] + - [0xB5F650, c] + - [0xB604A0, c] + - [0xB606E0, bin] + - [0xB60790, bin] + - [0xB620B0, bin] + - [0xB62850, bin] + - [0xB64B90, bin] + - [0xB65740, bin] # rodata + - [0xB65760, bin] # rodata + - [0xB65770, bin] # rodata - name: world/area_jan/jan_09/ type: code overlay: True start: 0xB65AB0 vram: 0x80240000 files: - - [0xB65AB0, c] - - [0xB660A0, c] - - [0xB663F0, c] - - [0xB67190, c] - - [0xB673D0, bin] - - [0xB687D0, bin] - - [0xB6B400, bin] - - [0xB6BFB0, bin] - - [0xB6C020, bin] # rodata - - [0xB6C050, bin] # rodata + - [0xB65AB0, c] + - [0xB660A0, c] + - [0xB663F0, c] + - [0xB67190, c] + - [0xB673D0, bin] + - [0xB687D0, bin] + - [0xB6B400, bin] + - [0xB6BFB0, bin] + - [0xB6C020, bin] # rodata + - [0xB6C050, bin] # rodata - name: world/area_jan/jan_10/ type: code overlay: True start: 0xB6C390 vram: 0x80240000 files: - - [0xB6C390, c] - - [0xB6C6A0, c] - - [0xB6D4C0, c] - - [0xB6D610, c] - - [0xB6D890, c] - - [0xB6DAD0, bin] - - [0xB6DB60, bin] - - [0xB6F1D0, bin] - - [0xB6FC50, bin] - - [0xB707C0, bin] - - [0xB70800, bin] # rodata - - [0xB70810, bin] # rodata - - [0xB70860, bin] # rodata + - [0xB6C390, c] + - [0xB6C6A0, c] + - [0xB6D4C0, c] + - [0xB6D610, c] + - [0xB6D890, c] + - [0xB6DAD0, bin] + - [0xB6DB60, bin] + - [0xB6F1D0, bin] + - [0xB6FC50, bin] + - [0xB707C0, bin] + - [0xB70800, bin] # rodata + - [0xB70810, bin] # rodata + - [0xB70860, bin] # rodata - name: world/area_jan/jan_11/ type: code overlay: True start: 0xB70860 vram: 0x80240000 files: - - [0xB70860, c] - - [0xB71010, c] - - [0xB71060, bin] - - [0xB710F0, bin] - - [0xB728B0, bin] - - [0xB730A0, bin] # rodata - - [0xB730B0, bin] # rodata + - [0xB70860, c] + - [0xB71010, c] + - [0xB71060, bin] + - [0xB710F0, bin] + - [0xB728B0, bin] + - [0xB730A0, bin] # rodata + - [0xB730B0, bin] # rodata - name: world/area_jan/jan_12/ type: code overlay: True start: 0xB730B0 vram: 0x80240000 files: - - [0xB730B0, c] - - [0xB73570, c] - - [0xB74310, bin] - - [0xB75250, bin] - - [0xB75D30, bin] - - [0xB76450, bin] # rodata - - [0xB76470, bin] # rodata + - [0xB730B0, c] + - [0xB73570, c] + - [0xB74310, bin] + - [0xB75250, bin] + - [0xB75D30, bin] + - [0xB76450, bin] # rodata + - [0xB76470, bin] # rodata - name: world/area_jan/jan_13/ type: code overlay: True start: 0xB767B0 vram: 0x80240000 files: - - [0xB767B0, c] - - [0xB76D80, bin] - - [0xB77000, bin] - - [0xB794C0, bin] - - [0xB79FA0, bin] - - [0xB7A020, bin] # rodata + - [0xB767B0, c] + - [0xB76D80, bin] + - [0xB77000, bin] + - [0xB794C0, bin] + - [0xB79FA0, bin] + - [0xB7A020, bin] # rodata - name: world/area_jan/jan_14/ type: code overlay: True start: 0xB7A050 vram: 0x80240000 files: - - [0xB7A050, c] - - [0xB7A510, c] - - [0xB7B330, bin] - - [0xB7B5C0, bin] - - [0xB7C630, bin] - - [0xB7D2C0, bin] - - [0xB7D8B0, bin] # rodata - - [0xB7D8D0, bin] # rodata - - [0xB7D920, bin] # rodata + - [0xB7A050, c] + - [0xB7A510, c] + - [0xB7B330, bin] + - [0xB7B5C0, bin] + - [0xB7C630, bin] + - [0xB7D2C0, bin] + - [0xB7D8B0, bin] # rodata + - [0xB7D8D0, bin] # rodata + - [0xB7D920, bin] # rodata - name: world/area_jan/jan_15/ type: code overlay: True start: 0xB7D920 vram: 0x80240000 files: - - [0xB7D920, c] - - [0xB7D9E0, c] - - [0xB7DC20, bin] - - [0xB7DEE0, bin] - - [0xB7F4A0, bin] - - [0xB7FF80, bin] - - [0xB7FFF0, bin] # rodata + - [0xB7D920, c] + - [0xB7D9E0, c] + - [0xB7DC20, bin] + - [0xB7DEE0, bin] + - [0xB7F4A0, bin] + - [0xB7FF80, bin] + - [0xB7FFF0, bin] # rodata - name: world/area_jan/jan_16/ type: code overlay: True start: 0xB80000 vram: 0x80240000 files: - - [0xB80000, c] - - [0xB80300, c] - - [0xB80540, bin] - - [0xB82C70, bin] - - [0xB82CD0, bin] - - [0xB837A0, bin] # rodata - - [0xB837C0, bin] # rodata + - [0xB80000, c] + - [0xB80300, c] + - [0xB80540, bin] + - [0xB82C70, bin] + - [0xB82CD0, bin] + - [0xB837A0, bin] # rodata + - [0xB837C0, bin] # rodata - name: world/area_jan/jan_17/ type: code overlay: True start: 0xB837C0 vram: 0x80240000 files: - - [0xB837C0, c] - - [0xB837E0, bin] - - [0xB838C0, bin] - - [0xB83B20, bin] - - [0xB83B80, bin] # rodata + - [0xB837C0, c] + - [0xB837E0, bin] + - [0xB838C0, bin] + - [0xB83B20, bin] + - [0xB83B80, bin] # rodata - name: world/area_jan/jan_18/ type: code overlay: True start: 0xB83B90 vram: 0x80240000 files: - - [0xB83B90, bin] - - [0xB83E10, bin] - - [0xB83E50, bin] # rodata + - [0xB83B90, bin] + - [0xB83E10, bin] + - [0xB83E50, bin] # rodata - name: world/area_jan/jan_19/ type: code overlay: True start: 0xB83E60 vram: 0x80240000 files: - - [0xB83E60, c] - - [0xB83E80, bin] - - [0xB84110, bin] - - [0xB84170, bin] # rodata + - [0xB83E60, c] + - [0xB83E80, bin] + - [0xB84110, bin] + - [0xB84170, bin] # rodata - name: world/area_jan/jan_22/ type: code overlay: True start: 0xB84180 vram: 0x80240000 files: - - [0xB84180, c] - - [0xB851A0, c] - - [0xB858A0, c] - - [0xB85AE0, bin] - - [0xB8D910, bin] - - [0xB8E200, bin] - - [0xB8FB00, bin] # rodata - - [0xB8FB20, bin] # rodata - - [0xB8FCD0, bin] # rodata + - [0xB84180, c] + - [0xB851A0, c] + - [0xB858A0, c] + - [0xB85AE0, bin] + - [0xB8D910, bin] + - [0xB8E200, bin] + - [0xB8FB00, bin] # rodata + - [0xB8FB20, bin] # rodata + - [0xB8FCD0, bin] # rodata - name: world/area_jan/jan_23/ type: code overlay: True start: 0xB8FCD0 vram: 0x80240000 files: - - [0xB8FCD0, bin] - - [0xB903A0, bin] - - [0xB93430, bin] # rodata + - [0xB8FCD0, bin] + - [0xB903A0, bin] + - [0xB93430, bin] # rodata - name: world/area_mim/mim_01/ type: code overlay: True start: 0xB93440 vram: 0x80240000 files: - - [0xB93440, c] - - [0xB934B0, c] - - [0xB93940, c] - - [0xB952F0, bin] - - [0xB953B0, bin] - - [0xB957E0, bin] - - [0xB960E0, bin] - - [0xB97A10, bin] # rodata - - [0xB97A30, bin] # rodata - - [0xB97C00, bin] # rodata + - [0xB93440, c] + - [0xB934B0, c] + - [0xB93940, c] + - [0xB952F0, bin] + - [0xB953B0, bin] + - [0xB957E0, bin] + - [0xB960E0, bin] + - [0xB97A10, bin] # rodata + - [0xB97A30, bin] # rodata + - [0xB97C00, bin] # rodata - name: world/area_mim/mim_02/ type: code overlay: True start: 0xB97C00 vram: 0x80240000 files: - - [0xB97C00, c] - - [0xB97C70, c] - - [0xB98DE0, bin] - - [0xB98EA0, bin] - - [0xB9A390, bin] - - [0xB9B250, bin] - - [0xB9B420, bin] # rodata - - [0xB9B480, bin] # rodata + - [0xB97C00, c] + - [0xB97C70, c] + - [0xB98DE0, bin] + - [0xB98EA0, bin] + - [0xB9A390, bin] + - [0xB9B250, bin] + - [0xB9B420, bin] # rodata + - [0xB9B480, bin] # rodata - name: world/area_mim/mim_03/ type: code overlay: True start: 0xB9B480 vram: 0x80240000 files: - - [0xB9B480, c] - - [0xB9B9B0, bin] - - [0xB9BA70, bin] - - [0xB9BE30, bin] - - [0xB9D500, bin] - - [0xB9D940, bin] # rodata - - [0xB9D960, bin] # rodata + - [0xB9B480, c] + - [0xB9B9B0, bin] + - [0xB9BA70, bin] + - [0xB9BE30, bin] + - [0xB9D500, bin] + - [0xB9D940, bin] # rodata + - [0xB9D960, bin] # rodata - name: world/area_mim/mim_04/ type: code overlay: True start: 0xB9D960 vram: 0x80240000 files: - - [0xB9D960, c] - - [0xB9D9D0, c] - - [0xB9DB60, c] - - [0xB9EA90, bin] - - [0xB9EB50, bin] - - [0xB9F020, bin] - - [0xB9FEA0, bin] - - [0xBA06C0, bin] # rodata - - [0xBA06E0, bin] # rodata - - [0xBA0730, bin] # rodata + - [0xB9D960, c] + - [0xB9D9D0, c] + - [0xB9DB60, c] + - [0xB9EA90, bin] + - [0xB9EB50, bin] + - [0xB9F020, bin] + - [0xB9FEA0, bin] + - [0xBA06C0, bin] # rodata + - [0xBA06E0, bin] # rodata + - [0xBA0730, bin] # rodata - name: world/area_mim/mim_05/ type: code overlay: True start: 0xBA0730 vram: 0x80240000 files: - - [0xBA0730, c] - - [0xBA07A0, c] - - [0xBA2150, bin] - - [0xBA2210, bin] - - [0xBA3A80, bin] - - [0xBA4590, bin] # rodata - - [0xBA4780, bin] # rodata + - [0xBA0730, c] + - [0xBA07A0, c] + - [0xBA2150, bin] + - [0xBA2210, bin] + - [0xBA3A80, bin] + - [0xBA4590, bin] # rodata + - [0xBA4780, bin] # rodata - name: world/area_mim/mim_06/ type: code overlay: True start: 0xBA4780 vram: 0x80240000 files: - - [0xBA4780, c] - - [0xBA47F0, c] - - [0xBA4CF0, c] - - [0xBA74B0, bin] - - [0xBA7570, bin] - - [0xBA82F0, bin] - - [0xBA9170, bin] - - [0xBA9F10, bin] # rodata - - [0xBA9F30, bin] # rodata - - [0xBAA140, bin] # rodata + - [0xBA4780, c] + - [0xBA47F0, c] + - [0xBA4CF0, c] + - [0xBA74B0, bin] + - [0xBA7570, bin] + - [0xBA82F0, bin] + - [0xBA9170, bin] + - [0xBA9F10, bin] # rodata + - [0xBA9F30, bin] # rodata + - [0xBAA140, bin] # rodata - name: world/area_mim/mim_07/ type: code overlay: True start: 0xBAA140 vram: 0x80240000 files: - - [0xBAA140, c] - - [0xBAA1B0, c] - - [0xBAA3B0, c] - - [0xBAB1D0, bin] - - [0xBAB2C0, bin] - - [0xBAB6D0, bin] - - [0xBAB7C0, bin] - - [0xBABAD0, bin] - - [0xBAC9C0, bin] - - [0xBAD8D0, bin] # rodata - - [0xBAD940, bin] # rodata + - [0xBAA140, c] + - [0xBAA1B0, c] + - [0xBAA3B0, c] + - [0xBAB1D0, bin] + - [0xBAB2C0, bin] + - [0xBAB6D0, bin] + - [0xBAB7C0, bin] + - [0xBABAD0, bin] + - [0xBAC9C0, bin] + - [0xBAD8D0, bin] # rodata + - [0xBAD940, bin] # rodata - name: world/area_mim/mim_08/ type: code overlay: True start: 0xBAD940 vram: 0x80240000 files: - - [0xBAD940, c] - - [0xBB0880, bin] - - [0xBB0940, bin] - - [0xBB0E30, bin] - - [0xBB0E80, bin] - - [0xBB1D00, bin] - - [0xBB2BD0, bin] # rodata - - [0xBB2C38, bin] # rodata + - [0xBAD940, c] + - [0xBB0880, bin] + - [0xBB0940, bin] + - [0xBB0E30, bin] + - [0xBB0E80, bin] + - [0xBB1D00, bin] + - [0xBB2BD0, bin] # rodata + - [0xBB2C38, bin] # rodata - name: world/area_mim/mim_09/ type: code overlay: True start: 0xBB2E00 vram: 0x80240000 files: - - [0xBB2E00, c] - - [0xBB3CC0, bin] - - [0xBB3D80, bin] - - [0xBB4130, bin] - - [0xBB4180, bin] - - [0xBB4830, bin] - - [0xBB5980, bin] # rodata - - [0xBB59E0, bin] # rodata + - [0xBB2E00, c] + - [0xBB3CC0, bin] + - [0xBB3D80, bin] + - [0xBB4130, bin] + - [0xBB4180, bin] + - [0xBB4830, bin] + - [0xBB5980, bin] # rodata + - [0xBB59E0, bin] # rodata - name: world/area_mim/mim_10/ type: code overlay: True start: 0xBB59E0 vram: 0x80240000 files: - - [0xBB59E0, c] - - [0xBB5B70, bin] - - [0xBB5EB0, bin] - - [0xBB5EF0, bin] - - [0xBB61D0, bin] - - [0xBB7050, bin] # rodata - - [0xBB7070, bin] # rodata + - [0xBB59E0, c] + - [0xBB5B70, bin] + - [0xBB5EB0, bin] + - [0xBB5EF0, bin] + - [0xBB61D0, bin] + - [0xBB7050, bin] # rodata + - [0xBB7070, bin] # rodata - name: world/area_mim/mim_11/ type: code overlay: True start: 0xBB7070 vram: 0x80240000 files: - - [0xBB7070, c] - - [0xBB7940, c] - - [0xBB79F0, c] - - [0xBB7C30, bin] - - [0xBBA180, bin] - - [0xBBA2E0, bin] - - [0xBBB350, bin] # rodata - - [0xBBB380, bin] # rodata + - [0xBB7070, c] + - [0xBB7940, c] + - [0xBB79F0, c] + - [0xBB7C30, bin] + - [0xBBA180, bin] + - [0xBBA2E0, bin] + - [0xBBB350, bin] # rodata + - [0xBBB380, bin] # rodata - name: world/area_mim/mim_12/ type: code overlay: True start: 0xBBB380 vram: 0x80240000 files: - - [0xBBB380, c] - - [0xBBB960, bin] - - [0xBBBB90, bin] - - [0xBBBE60, bin] - - [0xBBC2B0, bin] - - [0xBBD190, bin] # rodata + - [0xBBB380, c] + - [0xBBB960, bin] + - [0xBBBB90, bin] + - [0xBBBE60, bin] + - [0xBBC2B0, bin] + - [0xBBD190, bin] # rodata - name: world/area_obk/obk_01/ type: code overlay: True start: 0xBBD1A0 vram: 0x80240000 files: - - [0xBBD1A0, c] - - [0xBBD980, c] - - [0xBBE2E0, bin] - - [0xBBE410, bin] - - [0xBC0100, bin] - - [0xBC11A0, bin] - - [0xBC2A30, bin] # rodata + - [0xBBD1A0, c] + - [0xBBD980, c] + - [0xBBE2E0, bin] + - [0xBBE410, bin] + - [0xBC0100, bin] + - [0xBC11A0, bin] + - [0xBC2A30, bin] # rodata - name: world/area_obk/obk_02/ type: code overlay: True start: 0xBC2A90 vram: 0x80240000 files: - - [0xBC2A90, c] - - [0xBC2CD0, c] - - [0xBC2D40, bin] - - [0xBC2E20, bin] - - [0xBC3720, bin] - - [0xBC3DE0, bin] - - [0xBC3F60, bin] - - [0xBC4260, bin] # rodata - - [0xBC4280, bin] # rodata + - [0xBC2A90, c] + - [0xBC2CD0, c] + - [0xBC2D40, bin] + - [0xBC2E20, bin] + - [0xBC3720, bin] + - [0xBC3DE0, bin] + - [0xBC3F60, bin] + - [0xBC4260, bin] # rodata + - [0xBC4280, bin] # rodata - name: world/area_obk/obk_03/ type: code overlay: True start: 0xBC4280 vram: 0x80240000 files: - - [0xBC4280, c] - - [0xBC43F0, c] - - [0xBC4B50, c] - - [0xBC5270, bin] - - [0xBC5350, bin] - - [0xBC5770, bin] - - [0xBC5A00, bin] - - [0xBC6250, bin] - - [0xBC7120, bin] - - [0xBC7DE0, bin] - - [0xBC7E40, bin] # rodata + - [0xBC4280, c] + - [0xBC43F0, c] + - [0xBC4B50, c] + - [0xBC5270, bin] + - [0xBC5350, bin] + - [0xBC5770, bin] + - [0xBC5A00, bin] + - [0xBC6250, bin] + - [0xBC7120, bin] + - [0xBC7DE0, bin] + - [0xBC7E40, bin] # rodata - name: world/area_obk/obk_04/ type: code overlay: True start: 0xBC7E60 vram: 0x80240000 files: - - [0xBC7E60, c] - - [0xBC7EB0, c] - - [0xBC8CE0, bin] - - [0xBC8DE0, bin] - - [0xBC9020, bin] - - [0xBCB260, bin] - - [0xBCB870, bin] - - [0xBCD030, bin] # rodata - - [0xBCD060, bin] # rodata + - [0xBC7E60, c] + - [0xBC7EB0, c] + - [0xBC8CE0, bin] + - [0xBC8DE0, bin] + - [0xBC9020, bin] + - [0xBCB260, bin] + - [0xBCB870, bin] + - [0xBCD030, bin] # rodata + - [0xBCD060, bin] # rodata - name: world/area_obk/obk_05/ type: code overlay: True start: 0xBCD060 vram: 0x80240000 files: - - [0xBCD060, c] - - [0xBCD7D0, c] - - [0xBCDA40, bin] - - [0xBCDB00, bin] - - [0xBCDFF0, bin] - - [0xBCE040, bin] - - [0xBCE680, bin] # rodata + - [0xBCD060, c] + - [0xBCD7D0, c] + - [0xBCDA40, bin] + - [0xBCDB00, bin] + - [0xBCDFF0, bin] + - [0xBCE040, bin] + - [0xBCE680, bin] # rodata - name: world/area_obk/obk_06/ type: code overlay: True start: 0xBCE690 vram: 0x80240000 files: - - [0xBCE690, bin] - - [0xBCE760, bin] - - [0xBCEAD0, bin] - - [0xBCEBE0, bin] # rodata - - [0xBCEBF0, bin] # rodata + - [0xBCE690, bin] + - [0xBCE760, bin] + - [0xBCEAD0, bin] + - [0xBCEBE0, bin] # rodata + - [0xBCEBF0, bin] # rodata - name: world/area_obk/obk_07/ type: code overlay: True start: 0xBCEBF0 vram: 0x80240000 files: - - [0xBCEBF0, c] - - [0xBCEEB0, c] - - [0xBCF0F0, c] - - [0xBD0780, bin] - - [0xBD0840, bin] - - [0xBD0BA0, bin] - - [0xBD0DB0, bin] - - [0xBD14F0, bin] - - [0xBD1C80, bin] - - [0xBD3860, bin] # rodata - - [0xBD3870, bin] # rodata + - [0xBCEBF0, c] + - [0xBCEEB0, c] + - [0xBCF0F0, c] + - [0xBD0780, bin] + - [0xBD0840, bin] + - [0xBD0BA0, bin] + - [0xBD0DB0, bin] + - [0xBD14F0, bin] + - [0xBD1C80, bin] + - [0xBD3860, bin] # rodata + - [0xBD3870, bin] # rodata - name: world/area_obk/obk_08/ type: code overlay: True start: 0xBD3870 vram: 0x80240000 files: - - [0xBD3870, c] - - [0xBD40B0, c] - - [0xBD4110, c] - - [0xBD4A90, c] - - [0xBD5010, bin] - - [0xBD50D0, bin] - - [0xBD64D0, bin] - - [0xBD6DD0, bin] - - [0xBDA730, bin] # rodata - - [0xBDA7B0, bin] # rodata + - [0xBD3870, c] + - [0xBD40B0, c] + - [0xBD4110, c] + - [0xBD4A90, c] + - [0xBD5010, bin] + - [0xBD50D0, bin] + - [0xBD64D0, bin] + - [0xBD6DD0, bin] + - [0xBDA730, bin] # rodata + - [0xBDA7B0, bin] # rodata - name: world/area_obk/obk_09/ type: code overlay: True start: 0xBDA7B0 vram: 0x80240000 files: - - [0xBDA7B0, c] - - [0xBDA940, c] - - [0xBDAB00, c] - - [0xBDABA0, c] - - [0xBDABE0, bin] - - [0xBDB140, bin] - - [0xBDCE10, bin] - - [0xBDD190, bin] # rodata - - [0xBDD1B0, bin] # rodata + - [0xBDA7B0, c] + - [0xBDA940, c] + - [0xBDAB00, c] + - [0xBDABA0, c] + - [0xBDABE0, bin] + - [0xBDB140, bin] + - [0xBDCE10, bin] + - [0xBDD190, bin] # rodata + - [0xBDD1B0, bin] # rodata - name: world/area_arn/arn_02/ type: code overlay: True start: 0xBDD1B0 vram: 0x80240000 files: - - [0xBDD1B0, c] - - [0xBDE190, bin] - - [0xBDE2A0, bin] - - [0xBDE480, bin] - - [0xBDEC80, bin] # rodata - - [0xBDED90, bin] # rodata + - [0xBDD1B0, c] + - [0xBDE190, bin] + - [0xBDE2A0, bin] + - [0xBDE480, bin] + - [0xBDEC80, bin] # rodata + - [0xBDED90, bin] # rodata - name: world/area_arn/arn_03/ type: code overlay: True start: 0xBDED90 vram: 0x80240000 files: - - [0xBDED90, c] - - [0xBE04B0, bin] - - [0xBE05C0, bin] - - [0xBE0950, bin] - - [0xBE3570, bin] - - [0xBE35E0, bin] # rodata - - [0xBE37B0, bin] # rodata + - [0xBDED90, c] + - [0xBE04B0, bin] + - [0xBE05C0, bin] + - [0xBE0950, bin] + - [0xBE3570, bin] + - [0xBE35E0, bin] # rodata + - [0xBE37B0, bin] # rodata - name: world/area_arn/arn_04/ type: code overlay: True start: 0xBE37B0 vram: 0x80240000 files: - - [0xBE37B0, c] - - [0xBE6B20, bin] - - [0xBE6C30, bin] - - [0xBE6E10, bin] - - [0xBE77F0, bin] - - [0xBE78D0, bin] # rodata - - [0xBE7AD8, bin] # rodata - - [0xBE7BE0, bin] # rodata + - [0xBE37B0, c] + - [0xBE6B20, bin] + - [0xBE6C30, bin] + - [0xBE6E10, bin] + - [0xBE77F0, bin] + - [0xBE78D0, bin] # rodata + - [0xBE7AD8, bin] # rodata + - [0xBE7BE0, bin] # rodata - name: world/area_arn/arn_05/ type: code overlay: True start: 0xBE7BE0 vram: 0x80240000 files: - - [0xBE7BE0, c] - - [0xBE8EE0, bin] - - [0xBE9290, bin] - - [0xBECBE0, bin] - - [0xBECC20, bin] # rodata - - [0xBECDF0, bin] # rodata + - [0xBE7BE0, c] + - [0xBE8EE0, bin] + - [0xBE9290, bin] + - [0xBECBE0, bin] + - [0xBECC20, bin] # rodata + - [0xBECDF0, bin] # rodata - name: world/area_arn/arn_07/ type: code overlay: True start: 0xBECDF0 vram: 0x80240000 files: - - [0xBECDF0, c] - - [0xBED5F0, c] - - [0xBED660, c] - - [0xBED740, c] - - [0xBEEC80, bin] - - [0xBEEE30, bin] - - [0xBF0580, bin] - - [0xBF46F0, bin] # rodata - - [0xBF4730, bin] # rodata - - [0xBF4740, bin] # rodata - - [0xBF47A0, bin] # rodata + - [0xBECDF0, c] + - [0xBED5F0, c] + - [0xBED660, c] + - [0xBED740, c] + - [0xBEEC80, bin] + - [0xBEEE30, bin] + - [0xBF0580, bin] + - [0xBF46F0, bin] # rodata + - [0xBF4730, bin] # rodata + - [0xBF4740, bin] # rodata + - [0xBF47A0, bin] # rodata - name: world/area_arn/arn_08/ type: code overlay: True start: 0xBF47A0 vram: 0x80240000 files: - - [0xBF47A0, c] - - [0xBF4860, c] - - [0xBF4A30, bin] - - [0xBF4B50, bin] - - [0xBF5210, bin] - - [0xBF5340, bin] - - [0xBF5460, bin] - - [0xBF59A0, bin] - - [0xBF5FF0, bin] - - [0xBF6040, bin] # rodata - - [0xBF6060, bin] # rodata + - [0xBF47A0, c] + - [0xBF4860, c] + - [0xBF4A30, bin] + - [0xBF4B50, bin] + - [0xBF5210, bin] + - [0xBF5340, bin] + - [0xBF5460, bin] + - [0xBF59A0, bin] + - [0xBF5FF0, bin] + - [0xBF6040, bin] # rodata + - [0xBF6060, bin] # rodata - name: world/area_arn/arn_09/ type: code overlay: True start: 0xBF6060 vram: 0x80240000 files: - - [0xBF6060, c] - - [0xBF60A0, bin] - - [0xBF61A0, bin] - - [0xBF6400, bin] - - [0xBF6530, bin] - - [0xBF6610, bin] - - [0xBF69F0, bin] # rodata + - [0xBF6060, c] + - [0xBF60A0, bin] + - [0xBF61A0, bin] + - [0xBF6400, bin] + - [0xBF6530, bin] + - [0xBF6610, bin] + - [0xBF69F0, bin] # rodata - name: world/area_arn/arn_10/ type: code overlay: True start: 0xBF6A00 vram: 0x80240000 files: - - [0xBF6A00, bin] - - [0xBF6B00, bin] - - [0xBF6E30, bin] - - [0xBF75E0, bin] - - [0xBF7670, bin] # rodata + - [0xBF6A00, bin] + - [0xBF6B00, bin] + - [0xBF6E30, bin] + - [0xBF75E0, bin] + - [0xBF7670, bin] # rodata - name: world/area_arn/arn_11/ type: code overlay: True start: 0xBF7680 vram: 0x80240000 files: - - [0xBF7680, bin] - - [0xBF7770, bin] - - [0xBF7D00, bin] - - [0xBF8780, bin] # rodata - - [0xBF8790, bin] # rodata + - [0xBF7680, bin] + - [0xBF7770, bin] + - [0xBF7D00, bin] + - [0xBF8780, bin] # rodata + - [0xBF8790, bin] # rodata - name: world/area_arn/arn_12/ type: code overlay: True start: 0xBF8790 vram: 0x80240000 files: - - [0xBF8790, bin] - - [0xBF8890, bin] - - [0xBF8BB0, bin] - - [0xBF9400, bin] # rodata + - [0xBF8790, bin] + - [0xBF8890, bin] + - [0xBF8BB0, bin] + - [0xBF9400, bin] # rodata - name: world/area_arn/arn_13/ type: code overlay: True start: 0xBF9410 vram: 0x80240000 files: - - [0xBF9410, bin] - - [0xBF9510, bin] - - [0xBF9840, bin] - - [0xBFA090, bin] # rodata + - [0xBF9410, bin] + - [0xBF9510, bin] + - [0xBF9840, bin] + - [0xBFA090, bin] # rodata - name: world/area_dgb/dgb_00/ type: code overlay: True start: 0xBFA0A0 vram: 0x80240000 files: - - [0xBFA0A0, c] - - [0xBFA100, c] - - [0xBFA150, bin] - - [0xBFA260, bin] - - [0xBFD800, bin] - - [0xBFD840, bin] # rodata - - [0xBFD880, bin] # rodata + - [0xBFA0A0, c] + - [0xBFA100, c] + - [0xBFA150, bin] + - [0xBFA260, bin] + - [0xBFD800, bin] + - [0xBFD840, bin] # rodata + - [0xBFD880, bin] # rodata - name: world/area_dgb/dgb_01/ type: code overlay: True start: 0xBFD880 vram: 0x80240000 files: - - [0xBFD880, c] - - [0xBFD8C0, c] - - [0xBFD9A0, c] - - [0xC00C70, bin] - - [0xC00DD0, bin] - - [0xC01770, bin] - - [0xC047F0, bin] - - [0xC20C70, bin] # rodata - - [0xC20CF8, bin] # rodata + - [0xBFD880, c] + - [0xBFD8C0, c] + - [0xBFD9A0, c] + - [0xC00C70, bin] + - [0xC00DD0, bin] + - [0xC01770, bin] + - [0xC047F0, bin] + - [0xC20C70, bin] # rodata + - [0xC20CF8, bin] # rodata - [0xC20F40, bin] - name: world/area_dgb/dgb_02/ type: code @@ -5476,1620 +5876,1620 @@ segments: start: 0xC2EBA0 vram: 0x80240000 files: - - [0xC2EBA0, c] - - [0xC2FFD0, bin] - - [0xC300F0, bin] - - [0xC30650, bin] - - [0xC31190, bin] # rodata + - [0xC2EBA0, c] + - [0xC2FFD0, bin] + - [0xC300F0, bin] + - [0xC30650, bin] + - [0xC31190, bin] # rodata - name: world/area_dgb/dgb_03/ type: code overlay: True start: 0xC314E0 vram: 0x80240000 files: - - [0xC314E0, c] - - [0xC31730, c] - - [0xC33CB0, bin] - - [0xC33DF0, bin] - - [0xC345C0, bin] - - [0xC34C20, bin] - - [0xC34E50, bin] - - [0xC35EA0, bin] # rodata + - [0xC314E0, c] + - [0xC31730, c] + - [0xC33CB0, bin] + - [0xC33DF0, bin] + - [0xC345C0, bin] + - [0xC34C20, bin] + - [0xC34E50, bin] + - [0xC35EA0, bin] # rodata - name: world/area_dgb/dgb_04/ type: code overlay: True start: 0xC36530 vram: 0x80240000 files: - - [0xC36530, c] - - [0xC39640, bin] - - [0xC39740, bin] - - [0xC39A90, bin] - - [0xC3A910, bin] # rodata - - [0xC3A978, bin] # rodata + - [0xC36530, c] + - [0xC39640, bin] + - [0xC39740, bin] + - [0xC39A90, bin] + - [0xC3A910, bin] # rodata + - [0xC3A978, bin] # rodata - name: world/area_dgb/dgb_05/ type: code overlay: True start: 0xC3AA10 vram: 0x80240000 files: - - [0xC3AA10, c] - - [0xC3BEA0, bin] - - [0xC3BF90, bin] - - [0xC3C200, bin] - - [0xC3C280, bin] - - [0xC3C2D0, bin] - - [0xC3CD40, bin] # rodata + - [0xC3AA10, c] + - [0xC3BEA0, bin] + - [0xC3BF90, bin] + - [0xC3C200, bin] + - [0xC3C280, bin] + - [0xC3C2D0, bin] + - [0xC3CD40, bin] # rodata - name: world/area_dgb/dgb_06/ type: code overlay: True start: 0xC3D080 vram: 0x80240000 files: - - [0xC3D080, c] - - [0xC3D340, bin] - - [0xC3D440, bin] - - [0xC3D8C0, bin] - - [0xC3DBE0, bin] # rodata - - [0xC3DBF0, bin] # rodata + - [0xC3D080, c] + - [0xC3D340, bin] + - [0xC3D440, bin] + - [0xC3D8C0, bin] + - [0xC3DBE0, bin] # rodata + - [0xC3DBF0, bin] # rodata - name: world/area_dgb/dgb_07/ type: code overlay: True start: 0xC3DBF0 vram: 0x80240000 files: - - [0xC3DBF0, c] - - [0xC3F020, bin] - - [0xC3F120, bin] - - [0xC3F3E0, bin] - - [0xC3FA70, bin] # rodata - - [0xC3FA80, bin] # rodata + - [0xC3DBF0, c] + - [0xC3F020, bin] + - [0xC3F120, bin] + - [0xC3F3E0, bin] + - [0xC3FA70, bin] # rodata + - [0xC3FA80, bin] # rodata - name: world/area_dgb/dgb_08/ type: code overlay: True start: 0xC3FDB0 vram: 0x80240000 files: - - [0xC3FDB0, c] - - [0xC43A40, bin] - - [0xC43B40, bin] - - [0xC43EB0, bin] - - [0xC46790, bin] - - [0xC467A0, bin] # rodata - - [0xC467B0, bin] # rodata - - [0xC46B40, bin] # rodata + - [0xC3FDB0, c] + - [0xC43A40, bin] + - [0xC43B40, bin] + - [0xC43EB0, bin] + - [0xC46790, bin] + - [0xC467A0, bin] # rodata + - [0xC467B0, bin] # rodata + - [0xC46B40, bin] # rodata - name: world/area_dgb/dgb_09/ type: code overlay: True start: 0xC46BE0 vram: 0x80240000 files: - - [0xC46BE0, c] - - [0xC4A3E0, bin] - - [0xC4A500, bin] - - [0xC4AA30, bin] - - [0xC4ABE0, bin] - - [0xC4BF50, bin] # rodata - - [0xC4C2F8, bin] # rodata + - [0xC46BE0, c] + - [0xC4A3E0, bin] + - [0xC4A500, bin] + - [0xC4AA30, bin] + - [0xC4ABE0, bin] + - [0xC4BF50, bin] # rodata + - [0xC4C2F8, bin] # rodata - name: world/area_dgb/dgb_10/ type: code overlay: True start: 0xC4C390 vram: 0x80240000 files: - - [0xC4C390, c] - - [0xC4C580, bin] - - [0xC4C680, bin] - - [0xC4CA00, bin] - - [0xC4D270, bin] - - [0xC4D3D0, bin] # rodata + - [0xC4C390, c] + - [0xC4C580, bin] + - [0xC4C680, bin] + - [0xC4CA00, bin] + - [0xC4D270, bin] + - [0xC4D3D0, bin] # rodata - name: world/area_dgb/dgb_11/ type: code overlay: True start: 0xC4D3E0 vram: 0x80240000 files: - - [0xC4D3E0, c] - - [0xC4D430, bin] - - [0xC4D550, bin] - - [0xC4D950, bin] - - [0xC4DEE0, bin] # rodata + - [0xC4D3E0, c] + - [0xC4D430, bin] + - [0xC4D550, bin] + - [0xC4D950, bin] + - [0xC4DEE0, bin] # rodata - name: world/area_dgb/dgb_12/ type: code overlay: True start: 0xC4DEF0 vram: 0x80240000 files: - - [0xC4DEF0, c] - - [0xC4E1B0, bin] - - [0xC4E2A0, bin] - - [0xC4E760, bin] - - [0xC4E950, bin] # rodata - - [0xC4E960, bin] # rodata + - [0xC4DEF0, c] + - [0xC4E1B0, bin] + - [0xC4E2A0, bin] + - [0xC4E760, bin] + - [0xC4E950, bin] # rodata + - [0xC4E960, bin] # rodata - name: world/area_dgb/dgb_13/ type: code overlay: True start: 0xC4E960 vram: 0x80240000 files: - - [0xC4E960, bin] - - [0xC4EA50, bin] - - [0xC4ECE0, bin] - - [0xC4F020, bin] # rodata - - [0xC4F030, bin] # rodata + - [0xC4E960, bin] + - [0xC4EA50, bin] + - [0xC4ECE0, bin] + - [0xC4F020, bin] # rodata + - [0xC4F030, bin] # rodata - name: world/area_dgb/dgb_14/ type: code overlay: True start: 0xC4F030 vram: 0x80240000 files: - - [0xC4F030, bin] - - [0xC4F130, bin] - - [0xC4F4B0, bin] - - [0xC4F500, bin] # rodata + - [0xC4F030, bin] + - [0xC4F130, bin] + - [0xC4F4B0, bin] + - [0xC4F500, bin] # rodata - name: world/area_dgb/dgb_15/ type: code overlay: True start: 0xC4F510 vram: 0x80240000 files: - - [0xC4F510, c] - - [0xC50CA0, c] - - [0xC50D80, bin] - - [0xC50ED0, bin] - - [0xC513B0, bin] - - [0xC51FE0, bin] - - [0xC521E0, bin] # rodata - - [0xC52200, bin] # rodata + - [0xC4F510, c] + - [0xC50CA0, c] + - [0xC50D80, bin] + - [0xC50ED0, bin] + - [0xC513B0, bin] + - [0xC51FE0, bin] + - [0xC521E0, bin] # rodata + - [0xC52200, bin] # rodata - name: world/area_dgb/dgb_16/ type: code overlay: True start: 0xC52540 vram: 0x80240000 files: - - [0xC52540, c] - - [0xC53970, bin] - - [0xC53A60, bin] - - [0xC53CC0, bin] - - [0xC53D00, bin] - - [0xC55720, bin] # rodata - - [0xC55730, bin] # rodata + - [0xC52540, c] + - [0xC53970, bin] + - [0xC53A60, bin] + - [0xC53CC0, bin] + - [0xC53D00, bin] + - [0xC55720, bin] # rodata + - [0xC55730, bin] # rodata - name: world/area_dgb/dgb_17/ type: code overlay: True start: 0xC55A60 vram: 0x80240000 files: - - [0xC55A60, bin] - - [0xC55B60, bin] - - [0xC55F30, bin] # rodata + - [0xC55A60, bin] + - [0xC55B60, bin] + - [0xC55F30, bin] # rodata - name: world/area_dgb/dgb_18/ type: code overlay: True start: 0xC55F40 vram: 0x80240000 files: - - [0xC55F40, c] - - [0xC56EF0, c] - - [0xC571B0, bin] - - [0xC572A0, bin] - - [0xC574C0, bin] - - [0xC59620, bin] - - [0xC59810, bin] # rodata - - [0xC59820, bin] # rodata - - [0xC599D0, bin] # rodata + - [0xC55F40, c] + - [0xC56EF0, c] + - [0xC571B0, bin] + - [0xC572A0, bin] + - [0xC574C0, bin] + - [0xC59620, bin] + - [0xC59810, bin] # rodata + - [0xC59820, bin] # rodata + - [0xC599D0, bin] # rodata - name: world/area_kzn/kzn_01/ type: code overlay: True start: 0xC599D0 vram: 0x80240000 files: - - [0xC599D0, c] - - [0xC59CE0, bin] - - [0xC5A730, bin] # rodata + - [0xC599D0, c] + - [0xC59CE0, bin] + - [0xC5A730, bin] # rodata - name: world/area_kzn/kzn_02/ type: code overlay: True start: 0xC5A740 vram: 0x80240000 files: - - [0xC5A740, c] - - [0xC5AA50, c] - - [0xC5AC20, c] - - [0xC5CE70, c] - - [0xC5CF60, bin] - - [0xC5D9B0, bin] - - [0xC609C0, bin] - - [0xC60C30, bin] # rodata - - [0xC60C98, bin] # rodata - - [0xC60D00, bin] # rodata - - [0xC60D10, bin] # rodata + - [0xC5A740, c] + - [0xC5AA50, c] + - [0xC5AC20, c] + - [0xC5CE70, c] + - [0xC5CF60, bin] + - [0xC5D9B0, bin] + - [0xC609C0, bin] + - [0xC60C30, bin] # rodata + - [0xC60C98, bin] # rodata + - [0xC60D00, bin] # rodata + - [0xC60D10, bin] # rodata - name: world/area_kzn/kzn_03/ type: code overlay: True start: 0xC60D10 vram: 0x80240000 files: - - [0xC60D10, c] - - [0xC61020, c] - - [0xC63A10, c] - - [0xC63DA0, bin] - - [0xC647B0, bin] - - [0xC66FC0, bin] - - [0xC676A0, bin] - - [0xC67ED0, bin] # rodata - - [0xC67F50, bin] # rodata - - [0xC68120, bin] # rodata - - [0xC68130, bin] # rodata + - [0xC60D10, c] + - [0xC61020, c] + - [0xC63A10, c] + - [0xC63DA0, bin] + - [0xC647B0, bin] + - [0xC66FC0, bin] + - [0xC676A0, bin] + - [0xC67ED0, bin] # rodata + - [0xC67F50, bin] # rodata + - [0xC68120, bin] # rodata + - [0xC68130, bin] # rodata - name: world/area_kzn/kzn_04/ type: code overlay: True start: 0xC68130 vram: 0x80240000 files: - - [0xC68130, c] - - [0xC68440, c] - - [0xC69180, c] - - [0xC69890, bin] - - [0xC69D70, bin] - - [0xC6A420, bin] - - [0xC6C0C0, bin] # rodata - - [0xC6C0D0, bin] # rodata + - [0xC68130, c] + - [0xC68440, c] + - [0xC69180, c] + - [0xC69890, bin] + - [0xC69D70, bin] + - [0xC6A420, bin] + - [0xC6C0C0, bin] # rodata + - [0xC6C0D0, bin] # rodata - name: world/area_kzn/kzn_05/ type: code overlay: True start: 0xC6C0D0 vram: 0x80240000 files: - - [0xC6C0D0, c] - - [0xC6C3E0, bin] - - [0xC6C910, bin] # rodata + - [0xC6C0D0, c] + - [0xC6C3E0, bin] + - [0xC6C910, bin] # rodata - name: world/area_kzn/kzn_06/ type: code overlay: True start: 0xC6C920 vram: 0x80240000 files: - - [0xC6C920, c] - - [0xC6CC30, c] - - [0xC6CD10, c] - - [0xC6D390, bin] - - [0xC6E300, bin] # rodata - - [0xC6E320, bin] # rodata - - [0xC6E330, bin] # rodata + - [0xC6C920, c] + - [0xC6CC30, c] + - [0xC6CD10, c] + - [0xC6D390, bin] + - [0xC6E300, bin] # rodata + - [0xC6E320, bin] # rodata + - [0xC6E330, bin] # rodata - name: world/area_kzn/kzn_07/ type: code overlay: True start: 0xC6E330 vram: 0x80240000 files: - - [0xC6E330, c] - - [0xC6EA50, c] - - [0xC70640, bin] - - [0xC70710, bin] - - [0xC70C60, bin] - - [0xC70EC0, bin] - - [0xC713B0, bin] # rodata - - [0xC71418, bin] # rodata - - [0xC71480, bin] # rodata + - [0xC6E330, c] + - [0xC6EA50, c] + - [0xC70640, bin] + - [0xC70710, bin] + - [0xC70C60, bin] + - [0xC70EC0, bin] + - [0xC713B0, bin] # rodata + - [0xC71418, bin] # rodata + - [0xC71480, bin] # rodata - name: world/area_kzn/kzn_08/ type: code overlay: True start: 0xC71480 vram: 0x80240000 files: - - [0xC71480, c] - - [0xC71C10, c] - - [0xC71ED0, c] - - [0xC755A0, bin] - - [0xC76030, bin] - - [0xC76A50, bin] # rodata - - [0xC76AB8, bin] # rodata - - [0xC76B18, bin] # rodata + - [0xC71480, c] + - [0xC71C10, c] + - [0xC71ED0, c] + - [0xC755A0, bin] + - [0xC76030, bin] + - [0xC76A50, bin] # rodata + - [0xC76AB8, bin] # rodata + - [0xC76B18, bin] # rodata - name: world/area_kzn/kzn_09/ type: code overlay: True start: 0xC76CE0 vram: 0x80240000 files: - - [0xC76CE0, c] - - [0xC77A20, c] - - [0xC77D00, c] - - [0xC7A6F0, bin] - - [0xC7A9E0, bin] - - [0xC7B0D0, bin] - - [0xC7DF40, bin] # rodata - - [0xC7E180, bin] # rodata + - [0xC76CE0, c] + - [0xC77A20, c] + - [0xC77D00, c] + - [0xC7A6F0, bin] + - [0xC7A9E0, bin] + - [0xC7B0D0, bin] + - [0xC7DF40, bin] # rodata + - [0xC7E180, bin] # rodata - name: world/area_kzn/kzn_10/ type: code overlay: True start: 0xC7E180 vram: 0x80240000 files: - - [0xC7E180, c] - - [0xC7E4B0, c] - - [0xC7E850, bin] - - [0xC7EE90, bin] - - [0xC80170, bin] # rodata - - [0xC801A0, bin] # rodata + - [0xC7E180, c] + - [0xC7E4B0, c] + - [0xC7E850, bin] + - [0xC7EE90, bin] + - [0xC80170, bin] # rodata + - [0xC801A0, bin] # rodata - name: world/area_kzn/kzn_11/ type: code overlay: True start: 0xC801A0 vram: 0x80240000 files: - - [0xC801A0, c] - - [0xC804B0, c] - - [0xC80600, c] - - [0xC82800, bin] - - [0xC83180, bin] - - [0xC83870, bin] - - [0xC859E0, bin] # rodata - - [0xC85A48, bin] # rodata - - [0xC85AB0, bin] # rodata + - [0xC801A0, c] + - [0xC804B0, c] + - [0xC80600, c] + - [0xC82800, bin] + - [0xC83180, bin] + - [0xC83870, bin] + - [0xC859E0, bin] # rodata + - [0xC85A48, bin] # rodata + - [0xC85AB0, bin] # rodata - name: world/area_kzn/kzn_17/ type: code overlay: True start: 0xC85AB0 vram: 0x80240000 files: - - [0xC85AB0, c] - - [0xC85DC0, c] - - [0xC887B0, c] - - [0xC88B50, bin] - - [0xC89450, bin] - - [0xC8BE40, bin] # rodata - - [0xC8C080, bin] # rodata + - [0xC85AB0, c] + - [0xC85DC0, c] + - [0xC887B0, c] + - [0xC88B50, bin] + - [0xC89450, bin] + - [0xC8BE40, bin] # rodata + - [0xC8C080, bin] # rodata - name: world/area_kzn/kzn_18/ type: code overlay: True start: 0xC8C0A0 vram: 0x80240000 files: - - [0xC8C0A0, c] - - [0xC8C0E0, c] - - [0xC8C3F0, c] - - [0xC8C460, bin] - - [0xC8DBA0, bin] # rodata + - [0xC8C0A0, c] + - [0xC8C0E0, c] + - [0xC8C3F0, c] + - [0xC8C460, bin] + - [0xC8DBA0, bin] # rodata - name: world/area_kzn/kzn_19/ type: code overlay: True start: 0xC8DBB0 vram: 0x80240000 files: - - [0xC8DBB0, c] - - [0xC8F8E0, bin] - - [0xC8FA40, bin] - - [0xC90B10, bin] - - [0xC90BF0, bin] - - [0xC959B0, bin] - - [0xC95E70, bin] - - [0xC95EF0, bin] # rodata - - [0xC95F20, bin] # rodata - - [0xC95F30, bin] # rodata + - [0xC8DBB0, c] + - [0xC8F8E0, bin] + - [0xC8FA40, bin] + - [0xC90B10, bin] + - [0xC90BF0, bin] + - [0xC959B0, bin] + - [0xC95E70, bin] + - [0xC95EF0, bin] # rodata + - [0xC95F20, bin] # rodata + - [0xC95F30, bin] # rodata - name: world/area_kzn/kzn_20/ type: code overlay: True start: 0xC95F30 vram: 0x80240000 files: - - [0xC95F30, c] - - [0xC96240, c] - - [0xC969F0, bin] - - [0xC97600, bin] - - [0xC9A1F0, bin] # rodata + - [0xC95F30, c] + - [0xC96240, c] + - [0xC969F0, bin] + - [0xC97600, bin] + - [0xC9A1F0, bin] # rodata - name: world/area_kzn/kzn_22/ type: code overlay: True start: 0xC9A200 vram: 0x80240000 files: - - [0xC9A200, c] - - [0xC9A540, c] - - [0xC9A590, bin] - - [0xC9A650, bin] - - [0xC9B120, bin] - - [0xC9C2F0, bin] # rodata + - [0xC9A200, c] + - [0xC9A540, c] + - [0xC9A590, bin] + - [0xC9A650, bin] + - [0xC9B120, bin] + - [0xC9C2F0, bin] # rodata - name: world/area_kzn/kzn_23/ type: code overlay: True start: 0xC9C300 vram: 0x80240000 files: - - [0xC9C300, c] - - [0xC9C610, c] - - [0xC9C920, bin] - - [0xC9C9B0, bin] - - [0xC9D020, bin] - - [0xC9DF10, bin] # rodata + - [0xC9C300, c] + - [0xC9C610, c] + - [0xC9C920, bin] + - [0xC9C9B0, bin] + - [0xC9D020, bin] + - [0xC9DF10, bin] # rodata - name: world/area_flo/flo_00/ type: code overlay: True start: 0xC9DF20 vram: 0x80240000 files: - - [0xC9DF20, c] - - [0xC9DF60, c] - - [0xC9EE30, c] - - [0xC9F300, bin] - - [0xC9F5E0, bin] - - [0xCA3D50, bin] - - [0xCA4770, bin] - - [0xCA7050, bin] - - [0xCA70A0, bin] # rodata - - [0xCA70E0, bin] # rodata - - [0xCA7290, bin] # rodata + - [0xC9DF20, c] + - [0xC9DF60, c] + - [0xC9EE30, c] + - [0xC9F300, bin] + - [0xC9F5E0, bin] + - [0xCA3D50, bin] + - [0xCA4770, bin] + - [0xCA7050, bin] + - [0xCA70A0, bin] # rodata + - [0xCA70E0, bin] # rodata + - [0xCA7290, bin] # rodata - name: world/area_flo/flo_03/ type: code overlay: True start: 0xCA72A0 vram: 0x80240000 files: - - [0xCA72A0, c] - - [0xCA72E0, c] - - [0xCA78D0, bin] - - [0xCA8150, bin] - - [0xCAC170, bin] - - [0xCAC1D0, bin] # rodata + - [0xCA72A0, c] + - [0xCA72E0, c] + - [0xCA78D0, bin] + - [0xCA8150, bin] + - [0xCAC170, bin] + - [0xCAC1D0, bin] # rodata - name: world/area_flo/flo_07/ type: code overlay: True start: 0xCAC1F0 vram: 0x80240000 files: - - [0xCAC1F0, c] - - [0xCAC5D0, c] - - [0xCAC930, bin] - - [0xCACAC0, bin] - - [0xCAD410, bin] - - [0xCAED20, bin] # rodata - - [0xCAED40, bin] # rodata + - [0xCAC1F0, c] + - [0xCAC5D0, c] + - [0xCAC930, bin] + - [0xCACAC0, bin] + - [0xCAD410, bin] + - [0xCAED20, bin] # rodata + - [0xCAED40, bin] # rodata - name: world/area_flo/flo_08/ type: code overlay: True start: 0xCAED40 vram: 0x80240000 files: - - [0xCAED40, c] - - [0xCAFA80, c] - - [0xCAFAC0, c] - - [0xCB0B80, c] - - [0xCB0C20, bin] - - [0xCB1BF0, bin] - - [0xCB3C80, bin] - - [0xCB46D0, bin] - - [0xCB4E60, bin] # rodata + - [0xCAED40, c] + - [0xCAFA80, c] + - [0xCAFAC0, c] + - [0xCB0B80, c] + - [0xCB0C20, bin] + - [0xCB1BF0, bin] + - [0xCB3C80, bin] + - [0xCB46D0, bin] + - [0xCB4E60, bin] # rodata - name: world/area_flo/flo_09/ type: code overlay: True start: 0xCB5000 vram: 0x80240000 files: - - [0xCB5000, c] - - [0xCB5040, c] - - [0xCB50E0, c] - - [0xCB5320, c] - - [0xCB6820, bin] - - [0xCB7010, bin] - - [0xCB7880, bin] - - [0xCB9190, bin] # rodata - - [0xCB9200, bin] # rodata + - [0xCB5000, c] + - [0xCB5040, c] + - [0xCB50E0, c] + - [0xCB5320, c] + - [0xCB6820, bin] + - [0xCB7010, bin] + - [0xCB7880, bin] + - [0xCB9190, bin] # rodata + - [0xCB9200, bin] # rodata - name: world/area_flo/flo_10/ type: code overlay: True start: 0xCB9200 vram: 0x80240000 files: - - [0xCB9200, c] - - [0xCB9240, c] - - [0xCB9280, c] - - [0xCB96B0, c] - - [0xCBA430, c] - - [0xCBA670, bin] - - [0xCBA830, bin] - - [0xCBA880, bin] - - [0xCBAEB0, bin] - - [0xCBC420, bin] - - [0xCBD270, bin] - - [0xCBD290, bin] - - [0xCBDCB0, bin] # rodata - - [0xCBDCD0, bin] # rodata + - [0xCB9200, c] + - [0xCB9240, c] + - [0xCB9280, c] + - [0xCB96B0, c] + - [0xCBA430, c] + - [0xCBA670, bin] + - [0xCBA830, bin] + - [0xCBA880, bin] + - [0xCBAEB0, bin] + - [0xCBC420, bin] + - [0xCBD270, bin] + - [0xCBD290, bin] + - [0xCBDCB0, bin] # rodata + - [0xCBDCD0, bin] # rodata - name: world/area_flo/flo_11/ type: code overlay: True start: 0xCBDCD0 vram: 0x80240000 files: - - [0xCBDCD0, c] - - [0xCBDFF0, bin] - - [0xCBF790, bin] - - [0xCC0DC0, bin] - - [0xCC0E10, bin] # rodata - - [0xCC0E30, bin] # rodata + - [0xCBDCD0, c] + - [0xCBDFF0, bin] + - [0xCBF790, bin] + - [0xCC0DC0, bin] + - [0xCC0E10, bin] # rodata + - [0xCC0E30, bin] # rodata - name: world/area_flo/flo_12/ type: code overlay: True start: 0xCC0E30 vram: 0x80240000 files: - - [0xCC0E30, c] - - [0xCC0E70, c] - - [0xCC1520, bin] - - [0xCC16A0, bin] - - [0xCC1C60, bin] - - [0xCC3800, bin] # rodata + - [0xCC0E30, c] + - [0xCC0E70, c] + - [0xCC1520, bin] + - [0xCC16A0, bin] + - [0xCC1C60, bin] + - [0xCC3800, bin] # rodata - name: world/area_flo/flo_13/ type: code overlay: True start: 0xCC3810 vram: 0x80240000 files: - - [0xCC3810, c] - - [0xCC3850, c] - - [0xCC6DE0, c] - - [0xCC6E80, bin] - - [0xCC7160, bin] - - [0xCC7250, bin] - - [0xCCB230, bin] # rodata - - [0xCCB298, bin] # rodata - - [0xCCB2F8, bin] # rodata + - [0xCC3810, c] + - [0xCC3850, c] + - [0xCC6DE0, c] + - [0xCC6E80, bin] + - [0xCC7160, bin] + - [0xCC7250, bin] + - [0xCCB230, bin] # rodata + - [0xCCB298, bin] # rodata + - [0xCCB2F8, bin] # rodata - name: world/area_flo/flo_14/ type: code overlay: True start: 0xCCB310 vram: 0x80240000 files: - - [0xCCB310, c] - - [0xCCBE20, c] - - [0xCCD670, c] - - [0xCCD6A0, bin] - - [0xCCDF10, bin] - - [0xCCF7D0, bin] - - [0xCD0240, bin] - - [0xCD0280, bin] - - [0xCD0620, bin] # rodata - - [0xCD06C0, bin] # rodata + - [0xCCB310, c] + - [0xCCBE20, c] + - [0xCCD670, c] + - [0xCCD6A0, bin] + - [0xCCDF10, bin] + - [0xCCF7D0, bin] + - [0xCD0240, bin] + - [0xCD0280, bin] + - [0xCD0620, bin] # rodata + - [0xCD06C0, bin] # rodata - name: world/area_flo/flo_15/ type: code overlay: True start: 0xCD06C0 vram: 0x80240000 files: - - [0xCD06C0, bin] - - [0xCD07E0, bin] - - [0xCD09C0, bin] - - [0xCD19A0, bin] - - [0xCD1A20, bin] - - [0xCD1E20, bin] # rodata + - [0xCD06C0, bin] + - [0xCD07E0, bin] + - [0xCD09C0, bin] + - [0xCD19A0, bin] + - [0xCD1A20, bin] + - [0xCD1E20, bin] # rodata - name: world/area_flo/flo_16/ type: code overlay: True start: 0xCD1E30 vram: 0x80240000 files: - - [0xCD1E30, c] - - [0xCD1E70, c] - - [0xCD1F10, c] - - [0xCD2C80, c] - - [0xCD4770, c] - - [0xCD47A0, bin] - - [0xCD5530, bin] - - [0xCD5E40, bin] - - [0xCD6330, bin] - - [0xCD7210, bin] # rodata - - [0xCD7278, bin] # rodata - - [0xCD72E0, bin] # rodata + - [0xCD1E30, c] + - [0xCD1E70, c] + - [0xCD1F10, c] + - [0xCD2C80, c] + - [0xCD4770, c] + - [0xCD47A0, bin] + - [0xCD5530, bin] + - [0xCD5E40, bin] + - [0xCD6330, bin] + - [0xCD7210, bin] # rodata + - [0xCD7278, bin] # rodata + - [0xCD72E0, bin] # rodata - name: world/area_flo/flo_17/ type: code overlay: True start: 0xCD72E0 vram: 0x80240000 files: - - [0xCD72E0, c] - - [0xCD7320, c] - - [0xCD7350, c] - - [0xCDA500, bin] - - [0xCDB2B0, bin] - - [0xCDC560, bin] - - [0xCDC5D0, bin] # rodata - - [0xCDC638, bin] # rodata - - [0xCDC698, bin] # rodata + - [0xCD72E0, c] + - [0xCD7320, c] + - [0xCD7350, c] + - [0xCDA500, bin] + - [0xCDB2B0, bin] + - [0xCDC560, bin] + - [0xCDC5D0, bin] # rodata + - [0xCDC638, bin] # rodata + - [0xCDC698, bin] # rodata - name: world/area_flo/flo_18/ type: code overlay: True start: 0xCDC6A0 vram: 0x80240000 files: - - [0xCDC6A0, c] - - [0xCDCBD0, c] - - [0xCDCC30, c] - - [0xCDCE70, bin] - - [0xCDCF60, bin] - - [0xCDD530, bin] - - [0xCE2D60, bin] - - [0xCE36E0, bin] # rodata + - [0xCDC6A0, c] + - [0xCDCBD0, c] + - [0xCDCC30, c] + - [0xCDCE70, bin] + - [0xCDCF60, bin] + - [0xCDD530, bin] + - [0xCE2D60, bin] + - [0xCE36E0, bin] # rodata - name: world/area_flo/flo_19/ type: code overlay: True start: 0xCE36F0 vram: 0x80240000 files: - - [0xCE36F0, c] - - [0xCE4030, bin] - - [0xCE41B0, bin] - - [0xCE41F0, bin] - - [0xCE4740, bin] - - [0xCE5160, bin] - - [0xCE66F0, bin] # rodata + - [0xCE36F0, c] + - [0xCE4030, bin] + - [0xCE41B0, bin] + - [0xCE41F0, bin] + - [0xCE4740, bin] + - [0xCE5160, bin] + - [0xCE66F0, bin] # rodata - name: world/area_flo/flo_21/ type: code overlay: True start: 0xCE6700 vram: 0x80240000 files: - - [0xCE6700, c] - - [0xCE7240, c] - - [0xCE73F0, bin] - - [0xCE7EC0, bin] - - [0xCEC210, bin] # rodata - - [0xCEC240, bin] # rodata + - [0xCE6700, c] + - [0xCE7240, c] + - [0xCE73F0, bin] + - [0xCE7EC0, bin] + - [0xCEC210, bin] # rodata + - [0xCEC240, bin] # rodata - name: world/area_flo/flo_22/ type: code overlay: True start: 0xCEC240 vram: 0x80240000 files: - - [0xCEC240, c] - - [0xCEC280, c] - - [0xCEC290, c] - - [0xCEC4D0, bin] - - [0xCEC760, bin] - - [0xCED050, bin] - - [0xCED7E0, bin] - - [0xCEE250, bin] # rodata - - [0xCEE260, bin] # rodata + - [0xCEC240, c] + - [0xCEC280, c] + - [0xCEC290, c] + - [0xCEC4D0, bin] + - [0xCEC760, bin] + - [0xCED050, bin] + - [0xCED7E0, bin] + - [0xCEE250, bin] # rodata + - [0xCEE260, bin] # rodata - name: world/area_flo/flo_23/ type: code overlay: True start: 0xCEE260 vram: 0x80240000 files: - - [0xCEE260, c] - - [0xCEE2A0, c] - - [0xCEEF30, bin] - - [0xCEF540, bin] - - [0xCF0800, bin] - - [0xCF08D0, bin] # rodata - - [0xCF0940, bin] # rodata + - [0xCEE260, c] + - [0xCEE2A0, c] + - [0xCEEF30, bin] + - [0xCEF540, bin] + - [0xCF0800, bin] + - [0xCF08D0, bin] # rodata + - [0xCF0940, bin] # rodata - name: world/area_flo/flo_24/ type: code overlay: True start: 0xCF0940 vram: 0x80240000 files: - - [0xCF0940, c] - - [0xCF0980, c] - - [0xCF0BC0, c] - - [0xCF0ED0, bin] - - [0xCF1680, bin] - - [0xCF2AF0, bin] - - [0xCF2BB0, bin] # rodata - - [0xCF2BD0, bin] # rodata + - [0xCF0940, c] + - [0xCF0980, c] + - [0xCF0BC0, c] + - [0xCF0ED0, bin] + - [0xCF1680, bin] + - [0xCF2AF0, bin] + - [0xCF2BB0, bin] # rodata + - [0xCF2BD0, bin] # rodata - name: world/area_flo/flo_25/ type: code overlay: True start: 0xCF2BD0 vram: 0x80240000 files: - - [0xCF2BD0, c] - - [0xCF2C10, c] - - [0xCF4BC0, c] - - [0xCF4E00, c] - - [0xCF4EA0, bin] - - [0xCF6860, bin] - - [0xCF68B0, bin] - - [0xCF7310, bin] - - [0xCF7AA0, bin] # rodata - - [0xCF7B08, bin] # rodata - - [0xCF7B70, bin] # rodata + - [0xCF2BD0, c] + - [0xCF2C10, c] + - [0xCF4BC0, c] + - [0xCF4E00, c] + - [0xCF4EA0, bin] + - [0xCF6860, bin] + - [0xCF68B0, bin] + - [0xCF7310, bin] + - [0xCF7AA0, bin] # rodata + - [0xCF7B08, bin] # rodata + - [0xCF7B70, bin] # rodata - name: world/area_sam/sam_01/ type: code overlay: True start: 0xCF7B70 vram: 0x80240000 files: - - [0xCF7B70, c] - - [0xCF7E80, c] - - [0xCF9AC0, bin] - - [0xCF9BC0, bin] - - [0xD01D90, bin] - - [0xD05460, bin] - - [0xD05720, bin] # rodata - - [0xD05730, bin] # rodata + - [0xCF7B70, c] + - [0xCF7E80, c] + - [0xCF9AC0, bin] + - [0xCF9BC0, bin] + - [0xD01D90, bin] + - [0xD05460, bin] + - [0xD05720, bin] # rodata + - [0xD05730, bin] # rodata - name: world/area_sam/sam_02/ type: code overlay: True start: 0xD05730 vram: 0x80240000 files: - - [0xD05730, c] - - [0xD05F60, c] - - [0xD072F0, bin] - - [0xD07440, bin] - - [0xD09570, bin] - - [0xD09AD0, bin] - - [0xD0C294, bin] - - [0xD10DA0, bin] - - [0xD110A0, bin] # rodata - - [0xD110C0, bin] # rodata + - [0xD05730, c] + - [0xD05F60, c] + - [0xD072F0, bin] + - [0xD07440, bin] + - [0xD09570, bin] + - [0xD09AD0, bin] + - [0xD0C294, bin] + - [0xD10DA0, bin] + - [0xD110A0, bin] # rodata + - [0xD110C0, bin] # rodata - name: world/area_sam/sam_03/ type: code overlay: True start: 0xD110C0 vram: 0x80240000 files: - - [0xD110C0, c] - - [0xD119E0, bin] - - [0xD11A70, bin] - - [0xD11D40, bin] - - [0xD13420, bin] # rodata - - [0xD135D0, bin] # rodata + - [0xD110C0, c] + - [0xD119E0, bin] + - [0xD11A70, bin] + - [0xD11D40, bin] + - [0xD13420, bin] # rodata + - [0xD135D0, bin] # rodata - name: world/area_sam/sam_04/ type: code overlay: True start: 0xD135D0 vram: 0x80240000 files: - - [0xD135D0, c] - - [0xD13810, c] - - [0xD138E0, c] - - [0xD13CD0, bin] - - [0xD13D80, bin] - - [0xD15010, bin] - - [0xD16E20, bin] - - [0xD18720, bin] - - [0xD187C0, bin] # rodata - - [0xD187E0, bin] # rodata + - [0xD135D0, c] + - [0xD13810, c] + - [0xD138E0, c] + - [0xD13CD0, bin] + - [0xD13D80, bin] + - [0xD15010, bin] + - [0xD16E20, bin] + - [0xD18720, bin] + - [0xD187C0, bin] # rodata + - [0xD187E0, bin] # rodata - name: world/area_sam/sam_05/ type: code overlay: True start: 0xD187E0 vram: 0x80240000 files: - - [0xD187E0, c] - - [0xD1A520, bin] - - [0xD1A5B0, bin] - - [0xD1A890, bin] - - [0xD1A900, bin] - - [0xD1F780, bin] - - [0xD1FCB0, bin] # rodata - - [0xD1FE90, bin] # rodata + - [0xD187E0, c] + - [0xD1A520, bin] + - [0xD1A5B0, bin] + - [0xD1A890, bin] + - [0xD1A900, bin] + - [0xD1F780, bin] + - [0xD1FCB0, bin] # rodata + - [0xD1FE90, bin] # rodata - name: world/area_sam/sam_06/ type: code overlay: True start: 0xD1FE90 vram: 0x80240000 files: - - [0xD1FE90, c] - - [0xD203E0, c] - - [0xD224B0, bin] - - [0xD22560, bin] - - [0xD23E50, bin] - - [0xD2BC50, bin] - - [0xD2BCC0, bin] # rodata - - [0xD2BCD0, bin] # rodata - - [0xD2BD30, bin] # rodata + - [0xD1FE90, c] + - [0xD203E0, c] + - [0xD224B0, bin] + - [0xD22560, bin] + - [0xD23E50, bin] + - [0xD2BC50, bin] + - [0xD2BCC0, bin] # rodata + - [0xD2BCD0, bin] # rodata + - [0xD2BD30, bin] # rodata - name: world/area_sam/sam_07/ type: code overlay: True start: 0xD2BD30 vram: 0x80240000 files: - - [0xD2BD30, c] - - [0xD2DD30, bin] - - [0xD2DDC0, bin] - - [0xD2E0B0, bin] - - [0xD2E1F0, bin] - - [0xD2E9C0, bin] - - [0xD2FAA0, bin] # rodata - - [0xD2FC80, bin] # rodata + - [0xD2BD30, c] + - [0xD2DD30, bin] + - [0xD2DDC0, bin] + - [0xD2E0B0, bin] + - [0xD2E1F0, bin] + - [0xD2E9C0, bin] + - [0xD2FAA0, bin] # rodata + - [0xD2FC80, bin] # rodata - name: world/area_sam/sam_08/ type: code overlay: True start: 0xD2FC80 vram: 0x80240000 files: - - [0xD2FC80, c] - - [0xD309C0, c] - - [0xD31430, bin] - - [0xD314C0, bin] - - [0xD31E80, bin] - - [0xD335E0, bin] - - [0xD36140, bin] # rodata - - [0xD362F0, bin] # rodata + - [0xD2FC80, c] + - [0xD309C0, c] + - [0xD31430, bin] + - [0xD314C0, bin] + - [0xD31E80, bin] + - [0xD335E0, bin] + - [0xD36140, bin] # rodata + - [0xD362F0, bin] # rodata - name: world/area_sam/sam_09/ type: code overlay: True start: 0xD362F0 vram: 0x80240000 files: - - [0xD362F0, c] - - [0xD366F0, bin] - - [0xD36780, bin] - - [0xD369A0, bin] - - [0xD377F0, bin] # rodata + - [0xD362F0, c] + - [0xD366F0, bin] + - [0xD36780, bin] + - [0xD369A0, bin] + - [0xD377F0, bin] # rodata - name: world/area_sam/sam_10/ type: code overlay: True start: 0xD37800 vram: 0x80240000 files: - - [0xD37800, c] - - [0xD37BD0, c] - - [0xD384A0, bin] - - [0xD38550, bin] - - [0xD38840, bin] - - [0xD3A410, bin] # rodata - - [0xD3A430, bin] # rodata - - [0xD3A5D0, bin] # rodata + - [0xD37800, c] + - [0xD37BD0, c] + - [0xD384A0, bin] + - [0xD38550, bin] + - [0xD38840, bin] + - [0xD3A410, bin] # rodata + - [0xD3A430, bin] # rodata + - [0xD3A5D0, bin] # rodata - name: world/area_sam/sam_11/ type: code overlay: True start: 0xD3A5D0 vram: 0x80240000 files: - - [0xD3A5D0, c] - - [0xD3A610, c] - - [0xD3A850, c] - - [0xD3A930, c] - - [0xD3ADA0, c] - - [0xD3C740, bin] - - [0xD3C850, bin] - - [0xD3D900, bin] - - [0xD46980, bin] - - [0xD48C40, bin] - - [0xD4B9E0, bin] # rodata - - [0xD4BA00, bin] # rodata - - [0xD4BA20, bin] # rodata + - [0xD3A5D0, c] + - [0xD3A610, c] + - [0xD3A850, c] + - [0xD3A930, c] + - [0xD3ADA0, c] + - [0xD3C740, bin] + - [0xD3C850, bin] + - [0xD3D900, bin] + - [0xD46980, bin] + - [0xD48C40, bin] + - [0xD4B9E0, bin] # rodata + - [0xD4BA00, bin] # rodata + - [0xD4BA20, bin] # rodata - name: world/area_sam/sam_12/ type: code overlay: True start: 0xD4BA20 vram: 0x80240000 files: - - [0xD4BA20, c] - - [0xD4BAB0, c] - - [0xD4BDC0, bin] - - [0xD4BE40, bin] - - [0xD4BFE0, bin] - - [0xD4C2A0, bin] - - [0xD4CF90, bin] - - [0xD4D030, bin] # rodata - - [0xD4D040, bin] # rodata + - [0xD4BA20, c] + - [0xD4BAB0, c] + - [0xD4BDC0, bin] + - [0xD4BE40, bin] + - [0xD4BFE0, bin] + - [0xD4C2A0, bin] + - [0xD4CF90, bin] + - [0xD4D030, bin] # rodata + - [0xD4D040, bin] # rodata - name: world/area_pra/pra_01/ type: code overlay: True start: 0xD4D040 vram: 0x80240000 files: - - [0xD4D040, c] - - [0xD4D060, c] - - [0xD4E3F0, bin] - - [0xD4E500, bin] - - [0xD4EF50, bin] - - [0xD4FFC0, bin] - - [0xD4FFD0, bin] # rodata - - [0xD4FFF0, bin] # rodata + - [0xD4D040, c] + - [0xD4D060, c] + - [0xD4E3F0, bin] + - [0xD4E500, bin] + - [0xD4EF50, bin] + - [0xD4FFC0, bin] + - [0xD4FFD0, bin] # rodata + - [0xD4FFF0, bin] # rodata - name: world/area_pra/pra_02/ type: code overlay: True start: 0xD4FFF0 vram: 0x80240000 files: - - [0xD4FFF0, c] - - [0xD50010, c] - - [0xD51650, bin] - - [0xD51720, bin] - - [0xD52A80, bin] - - [0xD52DE0, bin] - - [0xD53C80, bin] # rodata - - [0xD53CB0, bin] # rodata + - [0xD4FFF0, c] + - [0xD50010, c] + - [0xD51650, bin] + - [0xD51720, bin] + - [0xD52A80, bin] + - [0xD52DE0, bin] + - [0xD53C80, bin] # rodata + - [0xD53CB0, bin] # rodata - name: world/area_pra/pra_03/ type: code overlay: True start: 0xD53CB0 vram: 0x80240000 files: - - [0xD53CB0, c] - - [0xD53CD0, c] - - [0xD53E60, bin] - - [0xD53F10, bin] - - [0xD543C0, bin] - - [0xD54670, bin] # rodata - - [0xD54690, bin] # rodata + - [0xD53CB0, c] + - [0xD53CD0, c] + - [0xD53E60, bin] + - [0xD53F10, bin] + - [0xD543C0, bin] + - [0xD54670, bin] # rodata + - [0xD54690, bin] # rodata - name: world/area_pra/pra_04/ type: code overlay: True start: 0xD54690 vram: 0x80240000 files: - - [0xD54690, c] - - [0xD546B0, c] - - [0xD54840, c] - - [0xD54FD0, bin] - - [0xD55080, bin] - - [0xD554E0, bin] - - [0xD55840, bin] - - [0xD55B40, bin] # rodata - - [0xD55B60, bin] # rodata + - [0xD54690, c] + - [0xD546B0, c] + - [0xD54840, c] + - [0xD54FD0, bin] + - [0xD55080, bin] + - [0xD554E0, bin] + - [0xD55840, bin] + - [0xD55B40, bin] # rodata + - [0xD55B60, bin] # rodata - name: world/area_pra/pra_05/ type: code overlay: True start: 0xD55BB0 vram: 0x80240000 files: - - [0xD55BB0, c] - - [0xD55BD0, c] - - [0xD56D90, bin] - - [0xD56E20, bin] - - [0xD57420, bin] # rodata - - [0xD57430, bin] # rodata + - [0xD55BB0, c] + - [0xD55BD0, c] + - [0xD56D90, bin] + - [0xD56E20, bin] + - [0xD57420, bin] # rodata + - [0xD57430, bin] # rodata - name: world/area_pra/pra_06/ type: code overlay: True start: 0xD57430 vram: 0x80240000 files: - - [0xD57430, c] - - [0xD58380, bin] - - [0xD58410, bin] - - [0xD58860, bin] # rodata - - [0xD58890, bin] # rodata + - [0xD57430, c] + - [0xD58380, bin] + - [0xD58410, bin] + - [0xD58860, bin] # rodata + - [0xD58890, bin] # rodata - name: world/area_pra/pra_09/ type: code overlay: True start: 0xD58890 vram: 0x80240000 files: - - [0xD58890, c] - - [0xD588B0, c] - - [0xD59EE0, bin] - - [0xD59F80, bin] - - [0xD5F2A0, bin] # rodata + - [0xD58890, c] + - [0xD588B0, c] + - [0xD59EE0, bin] + - [0xD59F80, bin] + - [0xD5F2A0, bin] # rodata - name: world/area_pra/pra_10/ type: code overlay: True start: 0xD5F2B0 vram: 0x80240000 files: - - [0xD5F2B0, c] - - [0xD5F2D0, c] - - [0xD60960, bin] - - [0xD60A00, bin] - - [0xD614A0, bin] # rodata + - [0xD5F2B0, c] + - [0xD5F2D0, c] + - [0xD60960, bin] + - [0xD60A00, bin] + - [0xD614A0, bin] # rodata - name: world/area_pra/pra_11/ type: code overlay: True start: 0xD61500 vram: 0x80240000 files: - - [0xD61500, c] - - [0xD61520, c] - - [0xD626E0, bin] - - [0xD62770, bin] - - [0xD62B10, bin] - - [0xD62D00, bin] # rodata - - [0xD62D10, bin] # rodata + - [0xD61500, c] + - [0xD61520, c] + - [0xD626E0, bin] + - [0xD62770, bin] + - [0xD62B10, bin] + - [0xD62D00, bin] # rodata + - [0xD62D10, bin] # rodata - name: world/area_pra/pra_12/ type: code overlay: True start: 0xD62D10 vram: 0x80240000 files: - - [0xD62D10, c] - - [0xD63F20, bin] - - [0xD63FB0, bin] - - [0xD645B0, bin] # rodata - - [0xD645E0, bin] # rodata + - [0xD62D10, c] + - [0xD63F20, bin] + - [0xD63FB0, bin] + - [0xD645B0, bin] # rodata + - [0xD645E0, bin] # rodata - name: world/area_pra/pra_13/ type: code overlay: True start: 0xD645E0 vram: 0x80240000 files: - - [0xD645E0, c] - - [0xD64600, c] - - [0xD65BC0, bin] - - [0xD65C70, bin] - - [0xD66880, bin] - - [0xD67CF0, bin] # rodata + - [0xD645E0, c] + - [0xD64600, c] + - [0xD65BC0, bin] + - [0xD65C70, bin] + - [0xD66880, bin] + - [0xD67CF0, bin] # rodata - name: world/area_pra/pra_14/ type: code overlay: True start: 0xD67D00 vram: 0x80240000 files: - - [0xD67D00, c] - - [0xD67D20, c] - - [0xD68EE0, bin] - - [0xD68F80, bin] - - [0xD69630, bin] - - [0xD69800, bin] # rodata - - [0xD69810, bin] # rodata + - [0xD67D00, c] + - [0xD67D20, c] + - [0xD68EE0, bin] + - [0xD68F80, bin] + - [0xD69630, bin] + - [0xD69800, bin] # rodata + - [0xD69810, bin] # rodata - name: world/area_pra/pra_15/ type: code overlay: True start: 0xD69810 vram: 0x80240000 files: - - [0xD69810, c] - - [0xD69830, c] - - [0xD69850, bin] - - [0xD698E0, bin] - - [0xD69AD0, bin] - - [0xD69B10, bin] # rodata - - [0xD69B20, bin] # rodata + - [0xD69810, c] + - [0xD69830, c] + - [0xD69850, bin] + - [0xD698E0, bin] + - [0xD69AD0, bin] + - [0xD69B10, bin] # rodata + - [0xD69B20, bin] # rodata - name: world/area_pra/pra_16/ type: code overlay: True start: 0xD69B20 vram: 0x80240000 files: - - [0xD69B20, c] - - [0xD69B40, c] - - [0xD6AA40, bin] - - [0xD6AAF0, bin] - - [0xD6B610, bin] # rodata + - [0xD69B20, c] + - [0xD69B40, c] + - [0xD6AA40, bin] + - [0xD6AAF0, bin] + - [0xD6B610, bin] # rodata - name: world/area_pra/pra_18/ type: code overlay: True start: 0xD6B620 vram: 0x80240000 files: - - [0xD6B620, c] - - [0xD6B640, c] - - [0xD6C540, bin] - - [0xD6C5F0, bin] - - [0xD6CF60, bin] - - [0xD6E9A0, bin] # rodata + - [0xD6B620, c] + - [0xD6B640, c] + - [0xD6C540, bin] + - [0xD6C5F0, bin] + - [0xD6CF60, bin] + - [0xD6E9A0, bin] # rodata - name: world/area_pra/pra_19/ type: code overlay: True start: 0xD6E9B0 vram: 0x80240000 files: - - [0xD6E9B0, c] - - [0xD6E9D0, c] - - [0xD70360, bin] - - [0xD70400, bin] - - [0xD70A70, bin] - - [0xD76390, bin] # rodata + - [0xD6E9B0, c] + - [0xD6E9D0, c] + - [0xD70360, bin] + - [0xD70400, bin] + - [0xD70A70, bin] + - [0xD76390, bin] # rodata - name: world/area_pra/pra_20/ type: code overlay: True start: 0xD763A0 vram: 0x80240000 files: - - [0xD763A0, c] - - [0xD763C0, c] - - [0xD772C0, bin] - - [0xD77390, bin] - - [0xD77F00, bin] # rodata + - [0xD763A0, c] + - [0xD763C0, c] + - [0xD772C0, bin] + - [0xD77390, bin] + - [0xD77F00, bin] # rodata - name: world/area_pra/pra_21/ type: code overlay: True start: 0xD77F20 vram: 0x80240000 files: - - [0xD77F20, c] - - [0xD77F40, c] - - [0xD78040, bin] - - [0xD780E0, bin] - - [0xD78540, bin] - - [0xD78870, bin] # rodata + - [0xD77F20, c] + - [0xD77F40, c] + - [0xD78040, bin] + - [0xD780E0, bin] + - [0xD78540, bin] + - [0xD78870, bin] # rodata - name: world/area_pra/pra_22/ type: code overlay: True start: 0xD78880 vram: 0x80240000 files: - - [0xD78880, c] - - [0xD788A0, c] - - [0xD78B50, bin] - - [0xD78BF0, bin] - - [0xD796B0, bin] - - [0xD799E0, bin] # rodata + - [0xD78880, c] + - [0xD788A0, c] + - [0xD78B50, bin] + - [0xD78BF0, bin] + - [0xD796B0, bin] + - [0xD799E0, bin] # rodata - name: world/area_pra/pra_27/ type: code overlay: True start: 0xD799F0 vram: 0x80240000 files: - - [0xD799F0, c] - - [0xD7AC00, bin] - - [0xD7AC90, bin] - - [0xD7B080, bin] - - [0xD7B270, bin] # rodata - - [0xD7B2A0, bin] # rodata + - [0xD799F0, c] + - [0xD7AC00, bin] + - [0xD7AC90, bin] + - [0xD7B080, bin] + - [0xD7B270, bin] # rodata + - [0xD7B2A0, bin] # rodata - name: world/area_pra/pra_28/ type: code overlay: True start: 0xD7B2A0 vram: 0x80240000 files: - - [0xD7B2A0, c] - - [0xD7C4B0, bin] - - [0xD7C540, bin] - - [0xD7C930, bin] - - [0xD7CB20, bin] # rodata - - [0xD7CB50, bin] # rodata + - [0xD7B2A0, c] + - [0xD7C4B0, bin] + - [0xD7C540, bin] + - [0xD7C930, bin] + - [0xD7CB20, bin] # rodata + - [0xD7CB50, bin] # rodata - name: world/area_pra/pra_29/ type: code overlay: True start: 0xD7CB50 vram: 0x80240000 files: - - [0xD7CB50, c] - - [0xD7CB70, c] - - [0xD7DDD0, bin] - - [0xD7DE90, bin] - - [0xD7E9B0, bin] - - [0xD7ED50, bin] # rodata + - [0xD7CB50, c] + - [0xD7CB70, c] + - [0xD7DDD0, bin] + - [0xD7DE90, bin] + - [0xD7E9B0, bin] + - [0xD7ED50, bin] # rodata - name: world/area_pra/pra_31/ type: code overlay: True start: 0xD7ED60 vram: 0x80240000 files: - - [0xD7ED60, c] - - [0xD7ED80, c] - - [0xD7F270, c] - - [0xD7FE10, bin] - - [0xD7FEC0, bin] - - [0xD80E20, bin] - - [0xD81250, bin] - - [0xD869E0, bin] # rodata - - [0xD86A00, bin] # rodata + - [0xD7ED60, c] + - [0xD7ED80, c] + - [0xD7F270, c] + - [0xD7FE10, bin] + - [0xD7FEC0, bin] + - [0xD80E20, bin] + - [0xD81250, bin] + - [0xD869E0, bin] # rodata + - [0xD86A00, bin] # rodata - name: world/area_pra/pra_32/ type: code overlay: True start: 0xD86A00 vram: 0x80240000 files: - - [0xD86A00, c] - - [0xD86A20, c] - - [0xD87240, bin] - - [0xD87DF0, bin] - - [0xD896B0, bin] # rodata - - [0xD896E0, bin] # rodata + - [0xD86A00, c] + - [0xD86A20, c] + - [0xD87240, bin] + - [0xD87DF0, bin] + - [0xD896B0, bin] # rodata + - [0xD896E0, bin] # rodata - name: world/area_pra/pra_33/ type: code overlay: True start: 0xD896E0 vram: 0x80240000 files: - - [0xD896E0, c] - - [0xD89700, c] - - [0xD8A770, bin] - - [0xD8A820, bin] - - [0xD8B060, bin] - - [0xD8B3A0, bin] # rodata + - [0xD896E0, c] + - [0xD89700, c] + - [0xD8A770, bin] + - [0xD8A820, bin] + - [0xD8B060, bin] + - [0xD8B3A0, bin] # rodata - name: world/area_pra/pra_34/ type: code overlay: True start: 0xD8B3B0 vram: 0x80240000 files: - - [0xD8B3B0, c] - - [0xD8B3D0, c] - - [0xD8C3B0, bin] - - [0xD8C470, bin] - - [0xD8D130, bin] - - [0xD8D240, bin] # rodata + - [0xD8B3B0, c] + - [0xD8B3D0, c] + - [0xD8C3B0, bin] + - [0xD8C470, bin] + - [0xD8D130, bin] + - [0xD8D240, bin] # rodata - name: world/area_pra/pra_35/ type: code overlay: True start: 0xD8D250 vram: 0x80240000 files: - - [0xD8D250, c] - - [0xD8D270, c] - - [0xD8FBA0, c] - - [0xD8FE60, bin] - - [0xD8FF10, bin] - - [0xD90700, bin] - - [0xD91030, bin] - - [0xD91220, bin] # rodata - - [0xD91700, bin] # rodata + - [0xD8D250, c] + - [0xD8D270, c] + - [0xD8FBA0, c] + - [0xD8FE60, bin] + - [0xD8FF10, bin] + - [0xD90700, bin] + - [0xD91030, bin] + - [0xD91220, bin] # rodata + - [0xD91700, bin] # rodata - name: world/area_pra/pra_36/ type: code overlay: True start: 0xD91700 vram: 0x80240000 files: - - [0xD91700, c] - - [0xD92650, bin] - - [0xD926F0, bin] - - [0xD92F10, bin] # rodata - - [0xD92F40, bin] # rodata + - [0xD91700, c] + - [0xD92650, bin] + - [0xD926F0, bin] + - [0xD92F10, bin] # rodata + - [0xD92F40, bin] # rodata - name: world/area_pra/pra_37/ type: code overlay: True start: 0xD92F40 vram: 0x80240000 files: - - [0xD92F40, c] - - [0xD94760, bin] - - [0xD94800, bin] - - [0xD95420, bin] # rodata - - [0xD95450, bin] # rodata - - [0xD955F0, bin] # rodata + - [0xD92F40, c] + - [0xD94760, bin] + - [0xD94800, bin] + - [0xD95420, bin] # rodata + - [0xD95450, bin] # rodata + - [0xD955F0, bin] # rodata - name: world/area_pra/pra_38/ type: code overlay: True start: 0xD955F0 vram: 0x80240000 files: - - [0xD955F0, c] - - [0xD96CD0, bin] - - [0xD96D70, bin] - - [0xD97810, bin] # rodata - - [0xD97840, bin] # rodata + - [0xD955F0, c] + - [0xD96CD0, bin] + - [0xD96D70, bin] + - [0xD97810, bin] # rodata + - [0xD97840, bin] # rodata - name: world/area_pra/pra_39/ type: code overlay: True start: 0xD97890 vram: 0x80240000 files: - - [0xD97890, c] - - [0xD98F70, bin] - - [0xD99010, bin] - - [0xD99930, bin] # rodata - - [0xD99960, bin] # rodata + - [0xD97890, c] + - [0xD98F70, bin] + - [0xD99010, bin] + - [0xD99930, bin] # rodata + - [0xD99960, bin] # rodata - name: world/area_pra/pra_40/ type: code overlay: True start: 0xD999B0 vram: 0x80240000 files: - - [0xD999B0, c] - - [0xD999D0, c] - - [0xD9A8D0, bin] - - [0xD9A970, bin] - - [0xD9AE80, bin] - - [0xD9AEE0, bin] # rodata + - [0xD999B0, c] + - [0xD999D0, c] + - [0xD9A8D0, bin] + - [0xD9A970, bin] + - [0xD9AE80, bin] + - [0xD9AEE0, bin] # rodata - name: world/area_omo/omo_01/ type: code overlay: True start: 0xD9AEF0 vram: 0x80240000 files: - - [0xD9AEF0, c] - - [0xD9B150, c] - - [0xD9BB20, bin] - - [0xD9BBA0, bin] - - [0xD9BD50, bin] - - [0xD9C200, bin] - - [0xD9D250, bin] - - [0xD9D330, bin] # rodata - - [0xD9D4D0, bin] # rodata + - [0xD9AEF0, c] + - [0xD9B150, c] + - [0xD9BB20, bin] + - [0xD9BBA0, bin] + - [0xD9BD50, bin] + - [0xD9C200, bin] + - [0xD9D250, bin] + - [0xD9D330, bin] # rodata + - [0xD9D4D0, bin] # rodata - name: world/area_omo/omo_02/ type: code overlay: True start: 0xD9D4D0 vram: 0x80240000 files: - - [0xD9D4D0, c] - - [0xD9D510, c] - - [0xDA0080, bin] - - [0xDA0110, bin] - - [0xDA0300, bin] - - [0xDA05B0, bin] - - [0xDA0A50, bin] - - [0xDA1CD0, bin] - - [0xDA4D30, bin] # rodata + - [0xD9D4D0, c] + - [0xD9D510, c] + - [0xDA0080, bin] + - [0xDA0110, bin] + - [0xDA0300, bin] + - [0xDA05B0, bin] + - [0xDA0A50, bin] + - [0xDA1CD0, bin] + - [0xDA4D30, bin] # rodata - name: world/area_omo/omo_03/ type: code overlay: True start: 0xDA5240 vram: 0x80240000 files: - - [0xDA5240, c] - - [0xDA5260, c] - - [0xDA5AD0, bin] - - [0xDA6050, bin] - - [0xDA8190, bin] - - [0xDAD3B0, bin] # rodata + - [0xDA5240, c] + - [0xDA5260, c] + - [0xDA5AD0, bin] + - [0xDA6050, bin] + - [0xDA8190, bin] + - [0xDAD3B0, bin] # rodata - name: world/area_omo/omo_04/ type: code overlay: True start: 0xDAD400 vram: 0x80240000 files: - - [0xDAD400, c] - - [0xDAF240, c] - - [0xDAF320, bin] - - [0xDAF3E0, bin] - - [0xDB20A0, bin] # rodata - - [0xDB20B0, bin] # rodata - - [0xDB2108, bin] # rodata - - [0xDB22B0, bin] # rodata - - [0xDB22C0, bin] # rodata + - [0xDAD400, c] + - [0xDAF240, c] + - [0xDAF320, bin] + - [0xDAF3E0, bin] + - [0xDB20A0, bin] # rodata + - [0xDB20B0, bin] # rodata + - [0xDB2108, bin] # rodata + - [0xDB22B0, bin] # rodata + - [0xDB22C0, bin] # rodata - name: world/area_omo/omo_05/ type: code overlay: True start: 0xDB22C0 vram: 0x80240000 files: - - [0xDB22C0, c] - - [0xDB46C0, bin] - - [0xDB4770, bin] - - [0xDB7410, bin] - - [0xDB7560, bin] # rodata - - [0xDB7570, bin] # rodata - - [0xDB7908, bin] # rodata + - [0xDB22C0, c] + - [0xDB46C0, bin] + - [0xDB4770, bin] + - [0xDB7410, bin] + - [0xDB7560, bin] # rodata + - [0xDB7570, bin] # rodata + - [0xDB7908, bin] # rodata - name: world/area_omo/omo_06/ type: code overlay: True start: 0xDB7910 vram: 0x80240000 files: - - [0xDB7910, c] - - [0xDB8180, c] - - [0xDB8440, bin] - - [0xDB88E0, bin] - - [0xDB9060, bin] - - [0xDBCFD0, bin] - - [0xDBD270, bin] # rodata - - [0xDBD2B0, bin] # rodata + - [0xDB7910, c] + - [0xDB8180, c] + - [0xDB8440, bin] + - [0xDB88E0, bin] + - [0xDB9060, bin] + - [0xDBCFD0, bin] + - [0xDBD270, bin] # rodata + - [0xDBD2B0, bin] # rodata - name: world/area_omo/omo_07/ type: code overlay: True start: 0xDBD2B0 vram: 0x80240000 files: - - [0xDBD2B0, c] - - [0xDC01D0, c] - - [0xDC04D0, c] - - [0xDC05B0, bin] - - [0xDC0670, bin] - - [0xDC0910, bin] - - [0xDC0B80, bin] - - [0xDC30B0, bin] - - [0xDC3730, bin] - - [0xDC3E70, bin] # rodata - - [0xDC3E80, bin] # rodata - - [0xDC43C0, bin] # rodata - - [0xDC43D0, bin] # rodata + - [0xDBD2B0, c] + - [0xDC01D0, c] + - [0xDC04D0, c] + - [0xDC05B0, bin] + - [0xDC0670, bin] + - [0xDC0910, bin] + - [0xDC0B80, bin] + - [0xDC30B0, bin] + - [0xDC3730, bin] + - [0xDC3E70, bin] # rodata + - [0xDC3E80, bin] # rodata + - [0xDC43C0, bin] # rodata + - [0xDC43D0, bin] # rodata - name: world/area_omo/omo_08/ type: code overlay: True start: 0xDC43D0 vram: 0x80240000 files: - - [0xDC43D0, c] - - [0xDC4C40, c] - - [0xDC51B0, bin] - - [0xDC52F0, bin] - - [0xDC8100, bin] - - [0xDCBA10, bin] - - [0xDCCB00, bin] # rodata + - [0xDC43D0, c] + - [0xDC4C40, c] + - [0xDC51B0, bin] + - [0xDC52F0, bin] + - [0xDC8100, bin] + - [0xDCBA10, bin] + - [0xDCCB00, bin] # rodata - name: world/area_omo/omo_09/ type: code overlay: True start: 0xDCCCD0 vram: 0x80240000 files: - - [0xDCCCD0, c] - - [0xDCCFA0, c] - - [0xDCD3B0, c] - - [0xDCD3F0, c] - - [0xDCD6B0, c] - - [0xDD02E0, c] - - [0xDD03C0, bin] - - [0xDD0480, bin] - - [0xDD0750, bin] - - [0xDD0900, bin] - - [0xDD3520, bin] - - [0xDD4150, bin] - - [0xDD6BB0, bin] - - [0xDD72F0, bin] # rodata - - [0xDD7300, bin] # rodata - - [0xDD79A0, bin] # rodata - - [0xDD79B0, bin] # rodata + - [0xDCCCD0, c] + - [0xDCCFA0, c] + - [0xDCD3B0, c] + - [0xDCD3F0, c] + - [0xDCD6B0, c] + - [0xDD02E0, c] + - [0xDD03C0, bin] + - [0xDD0480, bin] + - [0xDD0750, bin] + - [0xDD0900, bin] + - [0xDD3520, bin] + - [0xDD4150, bin] + - [0xDD6BB0, bin] + - [0xDD72F0, bin] # rodata + - [0xDD7300, bin] # rodata + - [0xDD79A0, bin] # rodata + - [0xDD79B0, bin] # rodata - name: world/area_omo/omo_10/ type: code overlay: True start: 0xDD79B0 vram: 0x80240000 files: - - [0xDD79B0, c] - - [0xDD8220, bin] - - [0xDD8640, bin] - - [0xDD8A60, bin] - - [0xDDC720, bin] - - [0xDDC7F0, bin] # rodata - - [0xDDC830, bin] # rodata + - [0xDD79B0, c] + - [0xDD8220, bin] + - [0xDD8640, bin] + - [0xDD8A60, bin] + - [0xDDC720, bin] + - [0xDDC7F0, bin] # rodata + - [0xDDC830, bin] # rodata - name: world/area_omo/omo_11/ type: code overlay: True start: 0xDDC830 vram: 0x80240000 files: - - [0xDDC830, c] - - [0xDDCFC0, c] - - [0xDDDD00, bin] - - [0xDDDD90, bin] - - [0xDDEE80, bin] - - [0xDDF300, bin] # rodata + - [0xDDC830, c] + - [0xDDCFC0, c] + - [0xDDDD00, bin] + - [0xDDDD90, bin] + - [0xDDEE80, bin] + - [0xDDF300, bin] # rodata - name: world/area_omo/omo_12/ type: code overlay: True start: 0xDDF310 vram: 0x80240000 files: - - [0xDDF310, c] - - [0xDDF730, c] - - [0xDDF7D0, bin] - - [0xDDF960, bin] - - [0xDDFB60, bin] - - [0xDE2470, bin] # rodata + - [0xDDF310, c] + - [0xDDF730, c] + - [0xDDF7D0, bin] + - [0xDDF960, bin] + - [0xDDFB60, bin] + - [0xDE2470, bin] # rodata - name: world/area_omo/omo_13/ type: code overlay: True start: 0xDE2490 vram: 0x80240000 files: - - [0xDE2490, c] - - [0xDE2710, c] - - [0xDE36C0, c] - - [0xDE3980, bin] - - [0xDE3A10, bin] - - [0xDE3F70, bin] - - [0xDE5100, bin] - - [0xDE5360, bin] # rodata + - [0xDE2490, c] + - [0xDE2710, c] + - [0xDE36C0, c] + - [0xDE3980, bin] + - [0xDE3A10, bin] + - [0xDE3F70, bin] + - [0xDE5100, bin] + - [0xDE5360, bin] # rodata - name: world/area_omo/omo_14/ type: code overlay: True start: 0xDE56B0 vram: 0x80240000 files: - - [0xDE56B0, c] - - [0xDE5810, c] - - [0xDE5C70, bin] - - [0xDE5D00, bin] - - [0xDE5FA0, bin] - - [0xDE8760, bin] # rodata + - [0xDE56B0, c] + - [0xDE5810, c] + - [0xDE5C70, bin] + - [0xDE5D00, bin] + - [0xDE5FA0, bin] + - [0xDE8760, bin] # rodata - name: world/area_omo/omo_15/ type: code overlay: True start: 0xDE8770 vram: 0x80240000 files: - - [0xDE8770, c] - - [0xDE8F70, bin] - - [0xDE9670, bin] - - [0xDEBEA0, bin] # rodata - - [0xDEBED0, bin] # rodata + - [0xDE8770, c] + - [0xDE8F70, bin] + - [0xDE9670, bin] + - [0xDEBEA0, bin] # rodata + - [0xDEBED0, bin] # rodata - name: world/area_omo/omo_16/ type: code overlay: True start: 0xDEBED0 vram: 0x80240000 files: - - [0xDEBED0, c] - - [0xDEC4D0, bin] - - [0xDEC600, bin] - - [0xDEEC30, bin] - - [0xDEEE80, bin] # rodata + - [0xDEBED0, c] + - [0xDEC4D0, bin] + - [0xDEC600, bin] + - [0xDEEC30, bin] + - [0xDEEE80, bin] # rodata - name: world/area_omo/omo_17/ type: code overlay: True start: 0xDEEEA0 vram: 0x80240000 files: - - [0xDEEEA0, c] - - [0xDEF400, c] - - [0xDF25B0, bin] - - [0xDF29A0, bin] - - [0xDF2C90, bin] - - [0xDF4EB0, bin] - - [0xDF57A0, bin] - - [0xDF6380, bin] - - [0xDF6470, bin] # rodata - - [0xDF64B0, bin] # rodata - - [0xDF6848, bin] # rodata + - [0xDEEEA0, c] + - [0xDEF400, c] + - [0xDF25B0, bin] + - [0xDF29A0, bin] + - [0xDF2C90, bin] + - [0xDF4EB0, bin] + - [0xDF57A0, bin] + - [0xDF6380, bin] + - [0xDF6470, bin] # rodata + - [0xDF64B0, bin] # rodata + - [0xDF6848, bin] # rodata - name: world/area_end/end_00/ type: code overlay: True start: 0xDF6A00 vram: 0x80240000 files: - - [0xDF6A00, c] - - [0xDF6A20, c] - - [0xDF9300, c] - - [0xDF9510, c] - - [0xDF9540, bin] - - [0xDFB0B0, bin] - - [0xDFE5B0, bin] - - [0xE019E0, bin] - - [0xE04180, bin] - - [0xE052C0, bin] - - [0xE05300, bin] # rodata + - [0xDF6A00, c] + - [0xDF6A20, c] + - [0xDF9300, c] + - [0xDF9510, c] + - [0xDF9540, bin] + - [0xDFB0B0, bin] + - [0xDFE5B0, bin] + - [0xE019E0, bin] + - [0xE04180, bin] + - [0xE052C0, bin] + - [0xE05300, bin] # rodata - name: world/area_end/end_01/ type: code overlay: True start: 0xE05360 vram: 0x80240000 files: - - [0xE05360, c] - - [0xE05370, c] - - [0xE05390, c] - - [0xE07C20, c] - - [0xE08050, c] - - [0xE08350, bin] - - [0xE08470, bin] - - [0xE0B5F0, bin] - - [0xE0C0C0, bin] - - [0xE0D510, bin] - - [0xE0E700, bin] - - [0xE0E740, bin] # rodata + - [0xE05360, c] + - [0xE05370, c] + - [0xE05390, c] + - [0xE07C20, c] + - [0xE08050, c] + - [0xE08350, bin] + - [0xE08470, bin] + - [0xE0B5F0, bin] + - [0xE0C0C0, bin] + - [0xE0D510, bin] + - [0xE0E700, bin] + - [0xE0E740, bin] # rodata - name: world/area_mgm/mgm_00/ type: code overlay: True start: 0xE0E7A0 vram: 0x80240000 files: - - [0xE0E7A0, c] - - [0xE0F980, c] - - [0xE0FF60, bin] - - [0xE111A0, bin] - - [0xE123E0, bin] - - [0xE12570, bin] # rodata - - [0xE12590, bin] # rodata - - [0xE12760, bin] # rodata + - [0xE0E7A0, c] + - [0xE0F980, c] + - [0xE0FF60, bin] + - [0xE111A0, bin] + - [0xE123E0, bin] + - [0xE12570, bin] # rodata + - [0xE12590, bin] # rodata + - [0xE12760, bin] # rodata - name: world/area_mgm/mgm_01/ type: code overlay: True start: 0xE12760 vram: 0x80240000 files: - - [0xE12760, c] - - [0xE12930, c] - - [0xE13F10, bin] - - [0xE141D0, bin] - - [0xE15440, bin] - - [0xE15D10, bin] # rodata - - [0xE15D80, bin] # rodata + - [0xE12760, c] + - [0xE12930, c] + - [0xE13F10, bin] + - [0xE141D0, bin] + - [0xE15440, bin] + - [0xE15D10, bin] # rodata + - [0xE15D80, bin] # rodata - name: world/area_mgm/mgm_02/ type: code overlay: True start: 0xE15D80 vram: 0x80240000 files: - - [0xE15D80, c] - - [0xE18150, c] - - [0xE18180, bin] - - [0xE183D0, bin] - - [0xE1E020, bin] - - [0xE1E260, bin] # rodata - - [0xE1E380, bin] # rodata + - [0xE15D80, c] + - [0xE18150, c] + - [0xE18180, bin] + - [0xE183D0, bin] + - [0xE1E020, bin] + - [0xE1E260, bin] # rodata + - [0xE1E380, bin] # rodata - name: world/area_mgm/mgm_03/ type: code overlay: True start: 0xE1E380 vram: 0x80240000 files: - - [0xE1E380, bin] - - [0xE1E460, bin] + - [0xE1E380, bin] + - [0xE1E460, bin] - name: world/area_gv/gv_01/ type: code overlay: True start: 0xE1E460 vram: 0x80240000 files: - - [0xE1E460, c] - - [0xE1EC20, bin] + - [0xE1E460, c] + - [0xE1EC20, bin] - [0xE20110, bin] - type: code overlay: True @@ -7110,8 +7510,8 @@ segments: start: 0xE225B0 vram: 0x802B7000 files: - - [0xE225B0, c] - - [0xE22B30, bin] + - [0xE225B0, c] + - [0xE22B30, bin] - [0xE23260, "bin"] - [0xF007C0, "bin", "Battle_Fanfare_02"] # BGM start - [0xF02160, "bin", "Hey_You_03"] diff --git a/undefined_syms.txt b/undefined_syms.txt index 9d439aff3a..4b4333841d 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -369,6 +369,7 @@ D_DE003E00 = 0xDE003E00; D_C1F06370 = 0xC1F06370; D_DE001F00 = 0xDE001F00; D_DE007C00 = 0xDE007C00; +D_8021A194 = 0x8021A194; paragoomba = 0x8021CD00; spiked_goomba = 0x8021B0AC; diff --git a/undefined_syms_auto.txt b/undefined_syms_auto.txt index d01d3c733d..62dca55d88 100644 --- a/undefined_syms_auto.txt +++ b/undefined_syms_auto.txt @@ -1594,7 +1594,6 @@ D_802187E4 = 0x802187E4; D_802188B0 = 0x802188B0; D_80218DF4 = 0x80218DF4; D_80219040 = 0x80219040; -D_8021A194 = 0x8021A194; D_8021A2B8 = 0x8021A2B8; D_8021A2D4 = 0x8021A2D4; D_8021A35C = 0x8021A35C; @@ -4935,6 +4934,7 @@ D_802EE8D0 = 0x802EE8D0; D_802F39D0 = 0x802F39D0; D_802F4560 = 0x802F4560; D_8034F800 = 0x8034F800; +D_8887FFFB = 0x8887FFFB; D_A0000000 = 0xA0000000; D_A4000000 = 0xA4000000; D_A40004C0 = 0xA40004C0; @@ -4982,6 +4982,38 @@ D_E000E174 = 0xE000E174; D_E000E244 = 0xE000E244; D_E000E288 = 0xE000E288; D_E000E684 = 0xE000E684; +D_E0014258 = 0xE0014258; +D_E0014260 = 0xE0014260; +D_E001449C = 0xE001449C; +D_E00144E0 = 0xE00144E0; +D_E0014780 = 0xE0014780; +D_E0014788 = 0xE0014788; +D_E0014790 = 0xE0014790; +D_E0014798 = 0xE0014798; +D_E00147A0 = 0xE00147A0; +D_E00147A8 = 0xE00147A8; +D_E00147B0 = 0xE00147B0; +D_E0016220 = 0xE0016220; +D_E0016228 = 0xE0016228; +D_E0016410 = 0xE0016410; +D_E0016454 = 0xE0016454; +D_E0016720 = 0xE0016720; +D_E0016728 = 0xE0016728; +D_E0016730 = 0xE0016730; +D_E0016738 = 0xE0016738; +D_E0016740 = 0xE0016740; +D_E001A21C = 0xE001A21C; +D_E001A224 = 0xE001A224; +D_E001A3FC = 0xE001A3FC; +D_E001A440 = 0xE001A440; +D_E001A610 = 0xE001A610; +D_E001A620 = 0xE001A620; +D_E001A628 = 0xE001A628; +D_E001C120 = 0xE001C120; +D_E001C128 = 0xE001C128; +D_E001C200 = 0xE001C200; +D_E001C30C = 0xE001C30C; +D_E001C5E0 = 0xE001C5E0; D_E001E370 = 0xE001E370; D_E001E378 = 0xE001E378; D_E001E6E8 = 0xE001E6E8; @@ -5115,6 +5147,15 @@ D_E0036630 = 0xE0036630; D_E0036640 = 0xE0036640; D_E0036648 = 0xE0036648; D_E0036650 = 0xE0036650; +D_E003841C = 0xE003841C; +D_E0038424 = 0xE0038424; +D_E0038704 = 0xE0038704; +D_E0038748 = 0xE0038748; +D_E0038A20 = 0xE0038A20; +D_E0038A28 = 0xE0038A28; +D_E0038A30 = 0xE0038A30; +D_E0038A38 = 0xE0038A38; +D_E0038A40 = 0xE0038A40; D_E003A1D4 = 0xE003A1D4; D_E003A1DC = 0xE003A1DC; D_E003A310 = 0xE003A310; @@ -5145,6 +5186,23 @@ D_E003E880 = 0xE003E880; D_E003E888 = 0xE003E888; D_E003E890 = 0xE003E890; D_E003E898 = 0xE003E898; +D_E0040148 = 0xE0040148; +D_E0040150 = 0xE0040150; +D_E0040210 = 0xE0040210; +D_E0040348 = 0xE0040348; +D_E0040840 = 0xE0040840; +D_E0040848 = 0xE0040848; +D_E0040880 = 0xE0040880; +D_E0040890 = 0xE0040890; +D_E0040898 = 0xE0040898; +D_E00408A0 = 0xE00408A0; +D_E004222C = 0xE004222C; +D_E0042234 = 0xE0042234; +D_E0042374 = 0xE0042374; +D_E00423B8 = 0xE00423B8; +D_E0042780 = 0xE0042780; +D_E00427B0 = 0xE00427B0; +D_E00427B8 = 0xE00427B8; D_E004441C = 0xE004441C; D_E0044424 = 0xE0044424; D_E00448E4 = 0xE00448E4; @@ -5200,6 +5258,18 @@ D_E004AED0 = 0xE004AED0; D_E004AED8 = 0xE004AED8; D_E004AEE0 = 0xE004AEE0; D_E004AEE8 = 0xE004AEE8; +D_E004C204 = 0xE004C204; +D_E004C20C = 0xE004C20C; +D_E004C364 = 0xE004C364; +D_E004C3A8 = 0xE004C3A8; +D_E004C660 = 0xE004C660; +D_E004C67C = 0xE004C67C; +D_E004C67D = 0xE004C67D; +D_E004C67E = 0xE004C67E; +D_E004C6A0 = 0xE004C6A0; +D_E004C6A8 = 0xE004C6A8; +D_E004C6B0 = 0xE004C6B0; +D_E004C6B8 = 0xE004C6B8; D_E004E15C = 0xE004E15C; D_E004E164 = 0xE004E164; D_E004E1D0 = 0xE004E1D0; @@ -5213,6 +5283,43 @@ D_E0050308 = 0xE0050308; D_E0050560 = 0xE0050560; D_E0050568 = 0xE0050568; D_E0050570 = 0xE0050570; +D_E00520E8 = 0xE00520E8; +D_E00520F0 = 0xE00520F0; +D_E005241C = 0xE005241C; +D_E0052460 = 0xE0052460; +D_E0052A80 = 0xE0052A80; +D_E0052A88 = 0xE0052A88; +D_E0056304 = 0xE0056304; +D_E005630C = 0xE005630C; +D_E0056B8C = 0xE0056B8C; +D_E0056BD0 = 0xE0056BD0; +D_E0056EA0 = 0xE0056EA0; +D_E0056EA8 = 0xE0056EA8; +D_E0056EB0 = 0xE0056EB0; +D_E0056EB8 = 0xE0056EB8; +D_E0056EC0 = 0xE0056EC0; +D_E0056EC8 = 0xE0056EC8; +D_E0056ED0 = 0xE0056ED0; +D_E0056ED8 = 0xE0056ED8; +D_E0056EE0 = 0xE0056EE0; +D_E0056EE8 = 0xE0056EE8; +D_E0056EF0 = 0xE0056EF0; +D_E0056EF8 = 0xE0056EF8; +D_E0056F00 = 0xE0056F00; +D_E0056F08 = 0xE0056F08; +D_E0056F10 = 0xE0056F10; +D_E0056F18 = 0xE0056F18; +D_E00581AC = 0xE00581AC; +D_E00581B4 = 0xE00581B4; +D_E0058490 = 0xE0058490; +D_E00584D4 = 0xE00584D4; +D_E0058780 = 0xE0058780; +D_E0058788 = 0xE0058788; +D_E0058790 = 0xE0058790; +D_E0058798 = 0xE0058798; +D_E00587A0 = 0xE00587A0; +D_E00587A8 = 0xE00587A8; +D_E00587B0 = 0xE00587B0; D_E005A1F4 = 0xE005A1F4; D_E005A1FC = 0xE005A1FC; D_E005A3B0 = 0xE005A3B0; @@ -5220,6 +5327,54 @@ D_E005A3F4 = 0xE005A3F4; D_E005A750 = 0xE005A750; D_E005A758 = 0xE005A758; D_E005A760 = 0xE005A760; +D_E005C178 = 0xE005C178; +D_E005C180 = 0xE005C180; +D_E005C2B4 = 0xE005C2B4; +D_E005C2F8 = 0xE005C2F8; +D_E005C700 = 0xE005C700; +D_E005C704 = 0xE005C704; +D_E005C710 = 0xE005C710; +D_E005C718 = 0xE005C718; +D_E005C720 = 0xE005C720; +D_E005E1B0 = 0xE005E1B0; +D_E005E1B8 = 0xE005E1B8; +D_E005E310 = 0xE005E310; +D_E005E318 = 0xE005E318; +D_E005E670 = 0xE005E670; +D_E005E674 = 0xE005E674; +D_E005E680 = 0xE005E680; +D_E00601D8 = 0xE00601D8; +D_E00601E0 = 0xE00601E0; +D_E006040C = 0xE006040C; +D_E0060450 = 0xE0060450; +D_E0060730 = 0xE0060730; +D_E0060738 = 0xE0060738; +D_E0060740 = 0xE0060740; +D_E0060748 = 0xE0060748; +D_E0060750 = 0xE0060750; +D_E0060758 = 0xE0060758; +D_E0062218 = 0xE0062218; +D_E0062220 = 0xE0062220; +D_E00624A8 = 0xE00624A8; +D_E00624EC = 0xE00624EC; +D_E00628C0 = 0xE00628C0; +D_E00628C4 = 0xE00628C4; +D_E00628D0 = 0xE00628D0; +D_E00628D8 = 0xE00628D8; +D_E00628E0 = 0xE00628E0; +D_E00628E8 = 0xE00628E8; +D_E00628F0 = 0xE00628F0; +D_E00628F8 = 0xE00628F8; +D_E006419C = 0xE006419C; +D_E00641A4 = 0xE00641A4; +D_E00643DC = 0xE00643DC; +D_E0064414 = 0xE0064414; +D_E0064A60 = 0xE0064A60; +D_E0064A70 = 0xE0064A70; +D_E0064A78 = 0xE0064A78; +D_E0064A80 = 0xE0064A80; +D_E0064A88 = 0xE0064A88; +D_E0064A90 = 0xE0064A90; D_E0066490 = 0xE0066490; D_E0066498 = 0xE0066498; D_E006672C = 0xE006672C; @@ -5315,6 +5470,22 @@ D_E0078918 = 0xE0078918; D_E00789A8 = 0xE00789A8; D_E00789AC = 0xE00789AC; D_E00789D0 = 0xE00789D0; +D_E007A504 = 0xE007A504; +D_E007A50C = 0xE007A50C; +D_E007A840 = 0xE007A840; +D_E007A88C = 0xE007A88C; +D_E007AC00 = 0xE007AC00; +D_E007AC08 = 0xE007AC08; +D_E007AC10 = 0xE007AC10; +D_E007AC18 = 0xE007AC18; +D_E007AC20 = 0xE007AC20; +D_E007AC28 = 0xE007AC28; +D_E007AC30 = 0xE007AC30; +D_E007C128 = 0xE007C128; +D_E007C130 = 0xE007C130; +D_E007C1B0 = 0xE007C1B0; +D_E007C1F4 = 0xE007C1F4; +D_E007C510 = 0xE007C510; D_E007E1FC = 0xE007E1FC; D_E007E204 = 0xE007E204; D_E007E508 = 0xE007E508; @@ -5386,6 +5557,21 @@ D_E0088D70 = 0xE0088D70; D_E0088D90 = 0xE0088D90; D_E0088D98 = 0xE0088D98; D_E0088DA0 = 0xE0088DA0; +D_E008C3F4 = 0xE008C3F4; +D_E008C3FC = 0xE008C3FC; +D_E008C6B8 = 0xE008C6B8; +D_E008C6FC = 0xE008C6FC; +D_E008CB14 = 0xE008CB14; +D_E008CB18 = 0xE008CB18; +D_E008CB1C = 0xE008CB1C; +D_E008CB20 = 0xE008CB20; +D_E008CB28 = 0xE008CB28; +D_E008CB48 = 0xE008CB48; +D_E008CB60 = 0xE008CB60; +D_E008CB68 = 0xE008CB68; +D_E008CB70 = 0xE008CB70; +D_E008CB78 = 0xE008CB78; +D_E008CB80 = 0xE008CB80; D_E008E1FC = 0xE008E1FC; D_E008E204 = 0xE008E204; D_E008E498 = 0xE008E498; @@ -5421,6 +5607,51 @@ D_E00947B0 = 0xE00947B0; D_E00947B8 = 0xE00947B8; D_E00947C0 = 0xE00947C0; D_E00947C8 = 0xE00947C8; +D_E00960EC = 0xE00960EC; +D_E00960F4 = 0xE00960F4; +D_E0096178 = 0xE0096178; +D_E00961BC = 0xE00961BC; +D_E00963E0 = 0xE00963E0; +D_E0098168 = 0xE0098168; +D_E0098170 = 0xE0098170; +D_E009829C = 0xE009829C; +D_E00982EC = 0xE00982EC; +D_E0098510 = 0xE0098510; +D_E0098530 = 0xE0098530; +D_E009A138 = 0xE009A138; +D_E009A140 = 0xE009A140; +D_E009A398 = 0xE009A398; +D_E009A3E0 = 0xE009A3E0; +D_E009AA60 = 0xE009AA60; +D_E009AA78 = 0xE009AA78; +D_E009AA80 = 0xE009AA80; +D_E009C100 = 0xE009C100; +D_E009C108 = 0xE009C108; +D_E009C1DC = 0xE009C1DC; +D_E009C220 = 0xE009C220; +D_E009E1DC = 0xE009E1DC; +D_E009E1E4 = 0xE009E1E4; +D_E009E3DC = 0xE009E3DC; +D_E009E424 = 0xE009E424; +D_E009EDF0 = 0xE009EDF0; +D_E009EDF4 = 0xE009EDF4; +D_E009EDF8 = 0xE009EDF8; +D_E009EDFC = 0xE009EDFC; +D_E009EE00 = 0xE009EE00; +D_E009EE08 = 0xE009EE08; +D_E009EE10 = 0xE009EE10; +D_E009EE18 = 0xE009EE18; +D_E009EE20 = 0xE009EE20; +D_E009EE28 = 0xE009EE28; +D_E009EE30 = 0xE009EE30; +D_E009EE38 = 0xE009EE38; +D_E00A2118 = 0xE00A2118; +D_E00A2120 = 0xE00A2120; +D_E00A21EC = 0xE00A21EC; +D_E00A223C = 0xE00A223C; +D_E00A29D0 = 0xE00A29D0; +D_E00A29DC = 0xE00A29DC; +D_E00A2A24 = 0xE00A2A24; D_E00A41A4 = 0xE00A41A4; D_E00A41AC = 0xE00A41AC; D_E00A45DC = 0xE00A45DC; @@ -5432,6 +5663,10 @@ D_E00A4B20 = 0xE00A4B20; D_E00A4B28 = 0xE00A4B28; D_E00A4B30 = 0xE00A4B30; D_E00A4B38 = 0xE00A4B38; +D_E00A611C = 0xE00A611C; +D_E00A6124 = 0xE00A6124; +D_E00A6358 = 0xE00A6358; +D_E00A63A4 = 0xE00A63A4; D_E00A80FC = 0xE00A80FC; D_E00A8104 = 0xE00A8104; D_E00A82D4 = 0xE00A82D4; @@ -5467,6 +5702,30 @@ D_E00B01F8 = 0xE00B01F8; D_E00B0234 = 0xE00B0234; D_E00B07E0 = 0xE00B07E0; D_E00B07E8 = 0xE00B07E8; +D_E00B21DC = 0xE00B21DC; +D_E00B21E4 = 0xE00B21E4; +D_E00B2460 = 0xE00B2460; +D_E00B24B0 = 0xE00B24B0; +D_E00B2BA0 = 0xE00B2BA0; +D_E00B4134 = 0xE00B4134; +D_E00B413C = 0xE00B413C; +D_E00B452C = 0xE00B452C; +D_E00B457C = 0xE00B457C; +D_E00B4CF0 = 0xE00B4CF0; +D_E00B4ED0 = 0xE00B4ED0; +D_E00B4ED8 = 0xE00B4ED8; +D_E00B4EE0 = 0xE00B4EE0; +D_E00B4EE8 = 0xE00B4EE8; +D_E00B4EF0 = 0xE00B4EF0; +D_E00B4EF8 = 0xE00B4EF8; +D_E00B6178 = 0xE00B6178; +D_E00B6180 = 0xE00B6180; +D_E00B629C = 0xE00B629C; +D_E00B62E0 = 0xE00B62E0; +D_E00B6750 = 0xE00B6750; +D_E00B6758 = 0xE00B6758; +D_E00B6760 = 0xE00B6760; +D_E00B6768 = 0xE00B6768; D_E00B812C = 0xE00B812C; D_E00B8134 = 0xE00B8134; D_E00B81B8 = 0xE00B81B8; @@ -5475,6 +5734,13 @@ D_E00B8900 = 0xE00B8900; D_E00B8B58 = 0xE00B8B58; D_E00B8CA4 = 0xE00B8CA4; D_E00B8CD0 = 0xE00B8CD0; +D_E00BA16C = 0xE00BA16C; +D_E00BA174 = 0xE00BA174; +D_E00BA5DC = 0xE00BA5DC; +D_E00BA620 = 0xE00BA620; +D_E00BAE80 = 0xE00BAE80; +D_E00BAE88 = 0xE00BAE88; +D_E00BAE90 = 0xE00BAE90; D_E00BC1D0 = 0xE00BC1D0; D_E00BC238 = 0xE00BC238; D_E00BC2E8 = 0xE00BC2E8; @@ -5484,6 +5750,400 @@ D_E00BCE50 = 0xE00BCE50; D_E00BCE58 = 0xE00BCE58; D_E00BCE60 = 0xE00BCE60; D_E00BCE68 = 0xE00BCE68; +D_E00BE39C = 0xE00BE39C; +D_E00BE3A4 = 0xE00BE3A4; +D_E00BE578 = 0xE00BE578; +D_E00BE5BC = 0xE00BE5BC; +D_E00BEAF0 = 0xE00BEAF0; +D_E00BEB00 = 0xE00BEB00; +D_E00BEB08 = 0xE00BEB08; +D_E00BEB10 = 0xE00BEB10; +D_E00BEB18 = 0xE00BEB18; +D_E00BEB20 = 0xE00BEB20; +D_E00C0158 = 0xE00C0158; +D_E00C0160 = 0xE00C0160; +D_E00C0710 = 0xE00C0710; +D_E00C0760 = 0xE00C0760; +D_E00C0A10 = 0xE00C0A10; +D_E00C0A21 = 0xE00C0A21; +D_E00C0A24 = 0xE00C0A24; +D_E00C0A40 = 0xE00C0A40; +D_E00C0A8C = 0xE00C0A8C; +D_E00C0C00 = 0xE00C0C00; +D_E00C0C08 = 0xE00C0C08; +D_E00C0C10 = 0xE00C0C10; +D_E00C0C18 = 0xE00C0C18; +D_E00C0C20 = 0xE00C0C20; +D_E00C2124 = 0xE00C2124; +D_E00C212C = 0xE00C212C; +D_E00C21CC = 0xE00C21CC; +D_E00C221C = 0xE00C221C; +D_E00C2990 = 0xE00C2990; +D_E00C29A0 = 0xE00C29A0; +D_E00C29A8 = 0xE00C29A8; +D_E00C4170 = 0xE00C4170; +D_E00C4178 = 0xE00C4178; +D_E00C42C4 = 0xE00C42C4; +D_E00C4308 = 0xE00C4308; +D_E00C49D0 = 0xE00C49D0; +D_E00C49D4 = 0xE00C49D4; +D_E00C49E8 = 0xE00C49E8; +D_E00C49FC = 0xE00C49FC; +D_E00C4A10 = 0xE00C4A10; +D_E00C4A90 = 0xE00C4A90; +D_E00C4A98 = 0xE00C4A98; +D_E00C6394 = 0xE00C6394; +D_E00C639C = 0xE00C639C; +D_E00C6768 = 0xE00C6768; +D_E00C67B0 = 0xE00C67B0; +D_E00C6C90 = 0xE00C6C90; +D_E00C6C9C = 0xE00C6C9C; +D_E00C6CB0 = 0xE00C6CB0; +D_E00C6CB8 = 0xE00C6CB8; +D_E00C6CC0 = 0xE00C6CC0; +D_E00C6CC8 = 0xE00C6CC8; +D_E00C6CD0 = 0xE00C6CD0; +D_E00C6CD8 = 0xE00C6CD8; +D_E00C6CE0 = 0xE00C6CE0; +D_E00C6CE8 = 0xE00C6CE8; +D_E00C6CF0 = 0xE00C6CF0; +D_E00C8218 = 0xE00C8218; +D_E00C8220 = 0xE00C8220; +D_E00C8404 = 0xE00C8404; +D_E00C8454 = 0xE00C8454; +D_E00C8710 = 0xE00C8710; +D_E00C8718 = 0xE00C8718; +D_E00C8720 = 0xE00C8720; +D_E00C8730 = 0xE00C8730; +D_E00C8738 = 0xE00C8738; +D_E00C8740 = 0xE00C8740; +D_E00CA240 = 0xE00CA240; +D_E00CA248 = 0xE00CA248; +D_E00CA484 = 0xE00CA484; +D_E00CA4CC = 0xE00CA4CC; +D_E00CACB0 = 0xE00CACB0; +D_E00CACC0 = 0xE00CACC0; +D_E00CACC8 = 0xE00CACC8; +D_E00CACD0 = 0xE00CACD0; +D_E00CACD8 = 0xE00CACD8; +D_E00CC250 = 0xE00CC250; +D_E00CC258 = 0xE00CC258; +D_E00CC980 = 0xE00CC980; +D_E00CC9D0 = 0xE00CC9D0; +D_E00CCDD0 = 0xE00CCDD0; +D_E00CCDD8 = 0xE00CCDD8; +D_E00CCDE0 = 0xE00CCDE0; +D_E00CCDF0 = 0xE00CCDF0; +D_E00CCE04 = 0xE00CCE04; +D_E00CCE4C = 0xE00CCE4C; +D_E00CCE70 = 0xE00CCE70; +D_E00CCE78 = 0xE00CCE78; +D_E00CCED0 = 0xE00CCED0; +D_E00CCED8 = 0xE00CCED8; +D_E00CCEE0 = 0xE00CCEE0; +D_E00CE21C = 0xE00CE21C; +D_E00CE224 = 0xE00CE224; +D_E00CE428 = 0xE00CE428; +D_E00CE478 = 0xE00CE478; +D_E00CEE50 = 0xE00CEE50; +D_E00CEE58 = 0xE00CEE58; +D_E00CEE60 = 0xE00CEE60; +D_E00CEE68 = 0xE00CEE68; +D_E00D018C = 0xE00D018C; +D_E00D0194 = 0xE00D0194; +D_E00D0448 = 0xE00D0448; +D_E00D048C = 0xE00D048C; +D_E00D0B10 = 0xE00D0B10; +D_E00D0B20 = 0xE00D0B20; +D_E00D0B28 = 0xE00D0B28; +D_E00D0B30 = 0xE00D0B30; +D_E00D0B38 = 0xE00D0B38; +D_E00D0B40 = 0xE00D0B40; +D_E00D2118 = 0xE00D2118; +D_E00D2120 = 0xE00D2120; +D_E00D2234 = 0xE00D2234; +D_E00D2284 = 0xE00D2284; +D_E00D2500 = 0xE00D2500; +D_E00D2508 = 0xE00D2508; +D_E00D2510 = 0xE00D2510; +D_E00D2518 = 0xE00D2518; +D_E00D6718 = 0xE00D6718; +D_E00D6720 = 0xE00D6720; +D_E00D693C = 0xE00D693C; +D_E00D6980 = 0xE00D6980; +D_E00D6E40 = 0xE00D6E40; +D_E00D6E74 = 0xE00D6E74; +D_E00D6E84 = 0xE00D6E84; +D_E00D6EA0 = 0xE00D6EA0; +D_E00D6EA8 = 0xE00D6EA8; +D_E00D6EB0 = 0xE00D6EB0; +D_E00D6EB8 = 0xE00D6EB8; +D_E00D6EF0 = 0xE00D6EF0; +D_E00D6EF8 = 0xE00D6EF8; +D_E00D6F00 = 0xE00D6F00; +D_E00D6F08 = 0xE00D6F08; +D_E00D8120 = 0xE00D8120; +D_E00D8128 = 0xE00D8128; +D_E00D825C = 0xE00D825C; +D_E00D8264 = 0xE00D8264; +D_E00D8334 = 0xE00D8334; +D_E00D87E0 = 0xE00D87E0; +D_E00D8818 = 0xE00D8818; +D_E00DA0FC = 0xE00DA0FC; +D_E00DA104 = 0xE00DA104; +D_E00DA1E0 = 0xE00DA1E0; +D_E00DA230 = 0xE00DA230; +D_E00DA500 = 0xE00DA500; +D_E00DA501 = 0xE00DA501; +D_E00DA502 = 0xE00DA502; +D_E00DA520 = 0xE00DA520; +D_E00DC190 = 0xE00DC190; +D_E00DC198 = 0xE00DC198; +D_E00DC2C0 = 0xE00DC2C0; +D_E00DC304 = 0xE00DC304; +D_E00DC640 = 0xE00DC640; +D_E00DC648 = 0xE00DC648; +D_E00DE11C = 0xE00DE11C; +D_E00DE124 = 0xE00DE124; +D_E00DE260 = 0xE00DE260; +D_E00DE2A8 = 0xE00DE2A8; +D_E00DE810 = 0xE00DE810; +D_E00DE84C = 0xE00DE84C; +D_E00DE858 = 0xE00DE858; +D_E00DE8B4 = 0xE00DE8B4; +D_E00DE910 = 0xE00DE910; +D_E00DE96C = 0xE00DE96C; +D_E00DE9D0 = 0xE00DE9D0; +D_E00E01D0 = 0xE00E01D0; +D_E00E01D8 = 0xE00E01D8; +D_E00E05B0 = 0xE00E05B0; +D_E00E0600 = 0xE00E0600; +D_E00E0A40 = 0xE00E0A40; +D_E00E0A44 = 0xE00E0A44; +D_E00E0A48 = 0xE00E0A48; +D_E00E0AC0 = 0xE00E0AC0; +D_E00E0AC8 = 0xE00E0AC8; +D_E00E0AD0 = 0xE00E0AD0; +D_E00E0AD8 = 0xE00E0AD8; +D_E00E212C = 0xE00E212C; +D_E00E2134 = 0xE00E2134; +D_E00E21C8 = 0xE00E21C8; +D_E00E2218 = 0xE00E2218; +D_E00E29F0 = 0xE00E29F0; +D_E00E29F4 = 0xE00E29F4; +D_E00E2A08 = 0xE00E2A08; +D_E00E2A1C = 0xE00E2A1C; +D_E00E2A30 = 0xE00E2A30; +D_E00E2A38 = 0xE00E2A38; +D_E00E4288 = 0xE00E4288; +D_E00E4290 = 0xE00E4290; +D_E00E490C = 0xE00E490C; +D_E00E495C = 0xE00E495C; +D_E00E4D90 = 0xE00E4D90; +D_E00E4DA8 = 0xE00E4DA8; +D_E00E4DC0 = 0xE00E4DC0; +D_E00E4DE0 = 0xE00E4DE0; +D_E00E4E00 = 0xE00E4E00; +D_E00E4E20 = 0xE00E4E20; +D_E00E4E28 = 0xE00E4E28; +D_E00E4E30 = 0xE00E4E30; +D_E00E4E38 = 0xE00E4E38; +D_E00E4E40 = 0xE00E4E40; +D_E00E4E48 = 0xE00E4E48; +D_E00E4E50 = 0xE00E4E50; +D_E00E4E58 = 0xE00E4E58; +D_E00E617C = 0xE00E617C; +D_E00E6184 = 0xE00E6184; +D_E00E64D4 = 0xE00E64D4; +D_E00E6524 = 0xE00E6524; +D_E00E6880 = 0xE00E6880; +D_E00E6888 = 0xE00E6888; +D_E00E6890 = 0xE00E6890; +D_E00E6898 = 0xE00E6898; +D_E00E68F8 = 0xE00E68F8; +D_E00E6910 = 0xE00E6910; +D_E00E6970 = 0xE00E6970; +D_E00E6990 = 0xE00E6990; +D_E00E825C = 0xE00E825C; +D_E00E8264 = 0xE00E8264; +D_E00E8374 = 0xE00E8374; +D_E00E83BC = 0xE00E83BC; +D_E00E8630 = 0xE00E8630; +D_E00E8634 = 0xE00E8634; +D_E00EA190 = 0xE00EA190; +D_E00EA198 = 0xE00EA198; +D_E00EA520 = 0xE00EA520; +D_E00EA66C = 0xE00EA66C; +D_E00EAA50 = 0xE00EAA50; +D_E00EAA58 = 0xE00EAA58; +D_E00EAA60 = 0xE00EAA60; +D_E00EAA68 = 0xE00EAA68; +D_E00EAA70 = 0xE00EAA70; +D_E010A184 = 0xE010A184; +D_E010A18C = 0xE010A18C; +D_E010A4A0 = 0xE010A4A0; +D_E010A4E8 = 0xE010A4E8; +D_E010ACCC = 0xE010ACCC; +D_E010AF68 = 0xE010AF68; +D_E010AF80 = 0xE010AF80; +D_E010AF84 = 0xE010AF84; +D_E010AF90 = 0xE010AF90; +D_E010AF98 = 0xE010AF98; +D_E010AFA0 = 0xE010AFA0; +D_E010AFA8 = 0xE010AFA8; +D_E010C190 = 0xE010C190; +D_E010C198 = 0xE010C198; +D_E010C354 = 0xE010C354; +D_E010C39C = 0xE010C39C; +D_E010CA10 = 0xE010CA10; +D_E010CA14 = 0xE010CA14; +D_E010CA18 = 0xE010CA18; +D_E010CA38 = 0xE010CA38; +D_E010CA60 = 0xE010CA60; +D_E010CA68 = 0xE010CA68; +D_E0110224 = 0xE0110224; +D_E011022C = 0xE011022C; +D_E01103A4 = 0xE01103A4; +D_E01103EC = 0xE01103EC; +D_E01108B0 = 0xE01108B0; +D_E01108B4 = 0xE01108B4; +D_E01108C0 = 0xE01108C0; +D_E01108C8 = 0xE01108C8; +D_E01121B8 = 0xE01121B8; +D_E01121C0 = 0xE01121C0; +D_E01122E8 = 0xE01122E8; +D_E01124CC = 0xE01124CC; +D_E0112630 = 0xE0112630; +D_E0112638 = 0xE0112638; +D_E0112640 = 0xE0112640; +D_E01140D4 = 0xE01140D4; +D_E01140DC = 0xE01140DC; +D_E0114340 = 0xE0114340; +D_E0114388 = 0xE0114388; +D_E01146A0 = 0xE01146A0; +D_E0114718 = 0xE0114718; +D_E0114740 = 0xE0114740; +D_E0114750 = 0xE0114750; +D_E0116184 = 0xE0116184; +D_E011618C = 0xE011618C; +D_E01166A0 = 0xE01166A0; +D_E0116884 = 0xE0116884; +D_E0116C60 = 0xE0116C60; +D_E0116C64 = 0xE0116C64; +D_E0116C68 = 0xE0116C68; +D_E0116C6C = 0xE0116C6C; +D_E0116C70 = 0xE0116C70; +D_E0116C8C = 0xE0116C8C; +D_E0116CA4 = 0xE0116CA4; +D_E0116CF8 = 0xE0116CF8; +D_E0116D04 = 0xE0116D04; +D_E0116D08 = 0xE0116D08; +D_E0116D3B = 0xE0116D3B; +D_E0116D3C = 0xE0116D3C; +D_E0116D6B = 0xE0116D6B; +D_E0116D6C = 0xE0116D6C; +D_E0116D83 = 0xE0116D83; +D_E0116D90 = 0xE0116D90; +D_E0116D98 = 0xE0116D98; +D_E0116DB0 = 0xE0116DB0; +D_E0116DB8 = 0xE0116DB8; +D_E01182EC = 0xE01182EC; +D_E01182F4 = 0xE01182F4; +D_E0118454 = 0xE0118454; +D_E011849C = 0xE011849C; +D_E01187B0 = 0xE01187B0; +D_E01187C0 = 0xE01187C0; +D_E01187D0 = 0xE01187D0; +D_E01187D8 = 0xE01187D8; +D_E01187E0 = 0xE01187E0; +D_E011A0FC = 0xE011A0FC; +D_E011A104 = 0xE011A104; +D_E011A398 = 0xE011A398; +D_E011A3A0 = 0xE011A3A0; +D_E011AC20 = 0xE011AC20; +D_E011AC24 = 0xE011AC24; +D_E011AC4C = 0xE011AC4C; +D_E011AC58 = 0xE011AC58; +D_E011AC64 = 0xE011AC64; +D_E011AC70 = 0xE011AC70; +D_E011E18C = 0xE011E18C; +D_E011E194 = 0xE011E194; +D_E011E530 = 0xE011E530; +D_E011E578 = 0xE011E578; +D_E011E7F0 = 0xE011E7F0; +D_E011E800 = 0xE011E800; +D_E011E810 = 0xE011E810; +D_E011E818 = 0xE011E818; +D_E011E820 = 0xE011E820; +D_E011E828 = 0xE011E828; +D_E0120134 = 0xE0120134; +D_E012013C = 0xE012013C; +D_E012039C = 0xE012039C; +D_E01203E4 = 0xE01203E4; +D_E0120780 = 0xE0120780; +D_E0120794 = 0xE0120794; +D_E01207A0 = 0xE01207A0; +D_E01207A8 = 0xE01207A8; +D_E0122174 = 0xE0122174; +D_E012217C = 0xE012217C; +D_E01226C4 = 0xE01226C4; +D_E012270C = 0xE012270C; +D_E0122B90 = 0xE0122B90; +D_E0122BA0 = 0xE0122BA0; +D_E0122BA4 = 0xE0122BA4; +D_E0122BA8 = 0xE0122BA8; +D_E0122C20 = 0xE0122C20; +D_E0122CA0 = 0xE0122CA0; +D_E0122CA8 = 0xE0122CA8; +D_E0122CB0 = 0xE0122CB0; +D_E0122CB8 = 0xE0122CB8; +D_E0122CC0 = 0xE0122CC0; +D_E0122CC8 = 0xE0122CC8; +D_E0122CD0 = 0xE0122CD0; +D_E0122CD8 = 0xE0122CD8; +D_E0122CE0 = 0xE0122CE0; +D_E0122CE8 = 0xE0122CE8; +D_E01242FC = 0xE01242FC; +D_E0124304 = 0xE0124304; +D_E012448C = 0xE012448C; +D_E01244C4 = 0xE01244C4; +D_E01248A0 = 0xE01248A0; +D_E01248C0 = 0xE01248C0; +D_E0124BC0 = 0xE0124BC0; +D_E0124BE4 = 0xE0124BE4; +D_E0124C00 = 0xE0124C00; +D_E0124C08 = 0xE0124C08; +D_E0124C10 = 0xE0124C10; +D_E0124C18 = 0xE0124C18; +D_E0124C20 = 0xE0124C20; +D_E0124C28 = 0xE0124C28; +D_E012612C = 0xE012612C; +D_E0126134 = 0xE0126134; +D_E01264A4 = 0xE01264A4; +D_E01264EC = 0xE01264EC; +D_E0126BC0 = 0xE0126BC0; +D_E0126BC4 = 0xE0126BC4; +D_E0126BC8 = 0xE0126BC8; +D_E0126BD0 = 0xE0126BD0; +D_E0126BD8 = 0xE0126BD8; +D_E0126BE0 = 0xE0126BE0; +D_E0126BE8 = 0xE0126BE8; +D_E0126BF0 = 0xE0126BF0; +D_E0126BF8 = 0xE0126BF8; +D_E0126C00 = 0xE0126C00; +D_E0126C08 = 0xE0126C08; +D_E0126C10 = 0xE0126C10; +D_E0126C18 = 0xE0126C18; +D_E0126C20 = 0xE0126C20; +D_E0126C28 = 0xE0126C28; +D_E0126C30 = 0xE0126C30; +D_E0126C38 = 0xE0126C38; +D_E0128128 = 0xE0128128; +D_E0128130 = 0xE0128130; +D_E0128198 = 0xE0128198; +D_E01281E0 = 0xE01281E0; +D_E0128480 = 0xE0128480; +D_E01284B0 = 0xE01284B0; D_E0200000 = 0xE0200000; D_E0200690 = 0xE0200690; D_E0200694 = 0xE0200694;