.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_80120234 /* B6934 80120234 27BDFFB8 */ addiu $sp, $sp, -0x48 /* B6938 80120238 AFB00030 */ sw $s0, 0x30($sp) /* B693C 8012023C 0080802D */ daddu $s0, $a0, $zero /* B6940 80120240 AFB10034 */ sw $s1, 0x34($sp) /* B6944 80120244 00A0882D */ daddu $s1, $a1, $zero /* B6948 80120248 AFB3003C */ sw $s3, 0x3c($sp) /* B694C 8012024C 00C0982D */ daddu $s3, $a2, $zero /* B6950 80120250 AFB20038 */ sw $s2, 0x38($sp) /* B6954 80120254 00E0902D */ daddu $s2, $a3, $zero /* B6958 80120258 27A60010 */ addiu $a2, $sp, 0x10 /* B695C 8012025C 1200004C */ beqz $s0, .L80120390 /* B6960 80120260 AFBF0040 */ sw $ra, 0x40($sp) /* B6964 80120264 8E020000 */ lw $v0, ($s0) /* B6968 80120268 AFA00014 */ sw $zero, 0x14($sp) /* B696C 8012026C AFA00018 */ sw $zero, 0x18($sp) /* B6970 80120270 AFA0001C */ sw $zero, 0x1c($sp) /* B6974 80120274 AFA20010 */ sw $v0, 0x10($sp) /* B6978 80120278 86020004 */ lh $v0, 4($s0) /* B697C 8012027C 3C018015 */ lui $at, %hi(D_80150010) /* B6980 80120280 D4220010 */ ldc1 $f2, %lo(D_80150010)($at) /* B6984 80120284 44820000 */ mtc1 $v0, $f0 /* B6988 80120288 00000000 */ nop /* B698C 8012028C 46800020 */ cvt.s.w $f0, $f0 /* B6990 80120290 46000021 */ cvt.d.s $f0, $f0 /* B6994 80120294 46220002 */ mul.d $f0, $f0, $f2 /* B6998 80120298 00000000 */ nop /* B699C 8012029C 3C018015 */ lui $at, %hi(D_80150018) /* B69A0 801202A0 D4240018 */ ldc1 $f4, %lo(D_80150018)($at) /* B69A4 801202A4 46240003 */ div.d $f0, $f0, $f4 /* B69A8 801202A8 46200020 */ cvt.s.d $f0, $f0 /* B69AC 801202AC E7A00020 */ swc1 $f0, 0x20($sp) /* B69B0 801202B0 86020006 */ lh $v0, 6($s0) /* B69B4 801202B4 44820000 */ mtc1 $v0, $f0 /* B69B8 801202B8 00000000 */ nop /* B69BC 801202BC 46800020 */ cvt.s.w $f0, $f0 /* B69C0 801202C0 46000021 */ cvt.d.s $f0, $f0 /* B69C4 801202C4 46220002 */ mul.d $f0, $f0, $f2 /* B69C8 801202C8 00000000 */ nop /* B69CC 801202CC 46240003 */ div.d $f0, $f0, $f4 /* B69D0 801202D0 46200020 */ cvt.s.d $f0, $f0 /* B69D4 801202D4 E7A00024 */ swc1 $f0, 0x24($sp) /* B69D8 801202D8 86020008 */ lh $v0, 8($s0) /* B69DC 801202DC 44820000 */ mtc1 $v0, $f0 /* B69E0 801202E0 00000000 */ nop /* B69E4 801202E4 46800020 */ cvt.s.w $f0, $f0 /* B69E8 801202E8 46000021 */ cvt.d.s $f0, $f0 /* B69EC 801202EC 46220002 */ mul.d $f0, $f0, $f2 /* B69F0 801202F0 00000000 */ nop /* B69F4 801202F4 0220202D */ daddu $a0, $s1, $zero /* B69F8 801202F8 0260282D */ daddu $a1, $s3, $zero /* B69FC 801202FC 46240003 */ div.d $f0, $f0, $f4 /* B6A00 80120300 46200020 */ cvt.s.d $f0, $f0 /* B6A04 80120304 0C0479C6 */ jal func_8011E718 /* B6A08 80120308 E7A00028 */ swc1 $f0, 0x28($sp) /* B6A0C 8012030C 86030028 */ lh $v1, 0x28($s0) /* B6A10 80120310 10600006 */ beqz $v1, .L8012032C /* B6A14 80120314 0040302D */ daddu $a2, $v0, $zero /* B6A18 80120318 94C200F4 */ lhu $v0, 0xf4($a2) /* B6A1C 8012031C 2463FFFF */ addiu $v1, $v1, -1 /* B6A20 80120320 ACC300FC */ sw $v1, 0xfc($a2) /* B6A24 80120324 34421000 */ ori $v0, $v0, 0x1000 /* B6A28 80120328 A4C200F4 */ sh $v0, 0xf4($a2) .L8012032C: /* B6A2C 8012032C 3C038015 */ lui $v1, %hi(D_80153B68) /* B6A30 80120330 8C633B68 */ lw $v1, %lo(D_80153B68)($v1) /* B6A34 80120334 8C620000 */ lw $v0, ($v1) /* B6A38 80120338 10500005 */ beq $v0, $s0, .L80120350 /* B6A3C 8012033C 0000202D */ daddu $a0, $zero, $zero .L80120340: /* B6A40 80120340 24630004 */ addiu $v1, $v1, 4 /* B6A44 80120344 8C620000 */ lw $v0, ($v1) /* B6A48 80120348 1450FFFD */ bne $v0, $s0, .L80120340 /* B6A4C 8012034C 24840001 */ addiu $a0, $a0, 1 .L80120350: /* B6A50 80120350 00041080 */ sll $v0, $a0, 2 /* B6A54 80120354 84C300F6 */ lh $v1, 0xf6($a2) /* B6A58 80120358 00521021 */ addu $v0, $v0, $s2 /* B6A5C 8012035C AC430000 */ sw $v1, ($v0) /* B6A60 80120360 8E04001C */ lw $a0, 0x1c($s0) /* B6A64 80120364 10800004 */ beqz $a0, .L80120378 /* B6A68 80120368 0220282D */ daddu $a1, $s1, $zero /* B6A6C 8012036C 84C600F6 */ lh $a2, 0xf6($a2) /* B6A70 80120370 0C04808D */ jal func_80120234 /* B6A74 80120374 0240382D */ daddu $a3, $s2, $zero .L80120378: /* B6A78 80120378 8E040018 */ lw $a0, 0x18($s0) /* B6A7C 8012037C 10800004 */ beqz $a0, .L80120390 /* B6A80 80120380 0220282D */ daddu $a1, $s1, $zero /* B6A84 80120384 0260302D */ daddu $a2, $s3, $zero /* B6A88 80120388 0C04808D */ jal func_80120234 /* B6A8C 8012038C 0240382D */ daddu $a3, $s2, $zero .L80120390: /* B6A90 80120390 8FBF0040 */ lw $ra, 0x40($sp) /* B6A94 80120394 8FB3003C */ lw $s3, 0x3c($sp) /* B6A98 80120398 8FB20038 */ lw $s2, 0x38($sp) /* B6A9C 8012039C 8FB10034 */ lw $s1, 0x34($sp) /* B6AA0 801203A0 8FB00030 */ lw $s0, 0x30($sp) /* B6AA4 801203A4 03E00008 */ jr $ra /* B6AA8 801203A8 27BD0048 */ addiu $sp, $sp, 0x48