# Mario Kart 64 (U) disassembly and split file # generated by n64split v0.4a - N64 ROM splitter # assembler directives .set noat # allow manual use of $at .set noreorder # don't insert nops after branches .set gp=64 .include "macros.inc" .section .text, "ax" glabel func_80280650 /* 123C90 80280650 03E00008 */ jr $ra /* 123C94 80280654 00000000 */ nop glabel func_80280658 /* 123C98 80280658 8C820028 */ lw $v0, 0x28($a0) /* 123C9C 8028065C 844E0002 */ lh $t6, 2($v0) /* 123CA0 80280660 448E2000 */ mtc1 $t6, $f4 /* 123CA4 80280664 00000000 */ nop /* 123CA8 80280668 468021A0 */ cvt.s.w $f6, $f4 /* 123CAC 8028066C E4860010 */ swc1 $f6, 0x10($a0) /* 123CB0 80280670 844F0004 */ lh $t7, 4($v0) /* 123CB4 80280674 448F4000 */ mtc1 $t7, $f8 /* 123CB8 80280678 00000000 */ nop /* 123CBC 8028067C 468042A0 */ cvt.s.w $f10, $f8 /* 123CC0 80280680 E48A0014 */ swc1 $f10, 0x14($a0) /* 123CC4 80280684 84580006 */ lh $t8, 6($v0) /* 123CC8 80280688 44988000 */ mtc1 $t8, $f16 /* 123CCC 8028068C 00000000 */ nop /* 123CD0 80280690 468084A0 */ cvt.s.w $f18, $f16 /* 123CD4 80280694 E4920018 */ swc1 $f18, 0x18($a0) /* 123CD8 80280698 80590008 */ lb $t9, 8($v0) /* 123CDC 8028069C 00194200 */ sll $t0, $t9, 8 /* 123CE0 802806A0 A488000A */ sh $t0, 0xa($a0) /* 123CE4 802806A4 80490009 */ lb $t1, 9($v0) /* 123CE8 802806A8 00095200 */ sll $t2, $t1, 8 /* 123CEC 802806AC A48A000C */ sh $t2, 0xc($a0) /* 123CF0 802806B0 804B000A */ lb $t3, 0xa($v0) /* 123CF4 802806B4 000B6200 */ sll $t4, $t3, 8 /* 123CF8 802806B8 A48C000E */ sh $t4, 0xe($a0) /* 123CFC 802806BC 844D0000 */ lh $t5, ($v0) /* 123D00 802806C0 03E00008 */ jr $ra /* 123D04 802806C4 A48D0004 */ sh $t5, 4($a0) glabel func_802806C8 /* 123D08 802806C8 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 123D0C 802806CC 3C048028 */ lui $a0, %hi(D_802874F8) # $a0, 0x8028 /* 123D10 802806D0 AFBF0014 */ sw $ra, 0x14($sp) /* 123D14 802806D4 8C8474F8 */ lw $a0, %lo(D_802874F8)($a0) /* 123D18 802806D8 00001025 */ move $v0, $zero /* 123D1C 802806DC 240300C8 */ li $v1, 200 .L802806E0: /* 123D20 802806E0 8C8E0000 */ lw $t6, ($a0) /* 123D24 802806E4 24420001 */ addiu $v0, $v0, 1 /* 123D28 802806E8 31CF0001 */ andi $t7, $t6, 1 /* 123D2C 802806EC 15E0000A */ bnez $t7, .L80280718 /* 123D30 802806F0 2405004C */ li $a1, 76 /* 123D34 802806F4 0C033698 */ jal bzero /* 123D38 802806F8 AFA4001C */ sw $a0, 0x1c($sp) /* 123D3C 802806FC 8FA2001C */ lw $v0, 0x1c($sp) /* 123D40 80280700 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 123D44 80280704 44812000 */ mtc1 $at, $f4 /* 123D48 80280708 24180001 */ li $t8, 1 /* 123D4C 8028070C AC580000 */ sw $t8, ($v0) /* 123D50 80280710 10000004 */ b .L80280724 /* 123D54 80280714 E4440024 */ swc1 $f4, 0x24($v0) .L80280718: /* 123D58 80280718 1443FFF1 */ bne $v0, $v1, .L802806E0 /* 123D5C 8028071C 2484004C */ addiu $a0, $a0, 0x4c /* 123D60 80280720 00001025 */ move $v0, $zero .L80280724: /* 123D64 80280724 8FBF0014 */ lw $ra, 0x14($sp) /* 123D68 80280728 27BD0028 */ addiu $sp, $sp, 0x28 /* 123D6C 8028072C 03E00008 */ jr $ra /* 123D70 80280730 00000000 */ nop glabel func_80280734 /* 123D74 80280734 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 123D78 80280738 AFBF0014 */ sw $ra, 0x14($sp) /* 123D7C 8028073C 0C0A01B2 */ jal func_802806C8 /* 123D80 80280740 AFA40020 */ sw $a0, 0x20($sp) /* 123D84 80280744 8FAE0020 */ lw $t6, 0x20($sp) /* 123D88 80280748 AFA2001C */ sw $v0, 0x1c($sp) /* 123D8C 8028074C 00402025 */ move $a0, $v0 /* 123D90 80280750 0C0A0196 */ jal func_80280658 /* 123D94 80280754 AC4E0028 */ sw $t6, 0x28($v0) /* 123D98 80280758 8FBF0014 */ lw $ra, 0x14($sp) /* 123D9C 8028075C 8FA2001C */ lw $v0, 0x1c($sp) /* 123DA0 80280760 27BD0020 */ addiu $sp, $sp, 0x20 /* 123DA4 80280764 03E00008 */ jr $ra /* 123DA8 80280768 00000000 */ nop glabel func_8028076C /* 123DAC 8028076C 3C068028 */ lui $a2, %hi(D_80284E60) # $a2, 0x8028 /* 123DB0 80280770 24C64E60 */ addiu $a2, %lo(D_80284E60) # addiu $a2, $a2, 0x4e60 /* 123DB4 80280774 94C20000 */ lhu $v0, ($a2) /* 123DB8 80280778 2401560A */ li $at, 22026 /* 123DBC 8028077C 54410004 */ bnel $v0, $at, .L80280790 /* 123DC0 80280780 00027A00 */ sll $t7, $v0, 8 /* 123DC4 80280784 A4C00000 */ sh $zero, ($a2) /* 123DC8 80280788 3002FFFF */ andi $v0, $zero, 0xffff /* 123DCC 8028078C 00027A00 */ sll $t7, $v0, 8 .L80280790: /* 123DD0 80280790 01E2C026 */ xor $t8, $t7, $v0 /* 123DD4 80280794 330500FF */ andi $a1, $t8, 0xff /* 123DD8 80280798 3308FF00 */ andi $t0, $t8, 0xff00 /* 123DDC 8028079C 00084A03 */ sra $t1, $t0, 8 /* 123DE0 802807A0 0005CA00 */ sll $t9, $a1, 8 /* 123DE4 802807A4 03296021 */ addu $t4, $t9, $t1 /* 123DE8 802807A8 00055840 */ sll $t3, $a1, 1 /* 123DEC 802807AC 016C1826 */ xor $v1, $t3, $t4 /* 123DF0 802807B0 306DFFFF */ andi $t5, $v1, 0xffff /* 123DF4 802807B4 31AE0001 */ andi $t6, $t5, 1 /* 123DF8 802807B8 A4CC0000 */ sh $t4, ($a2) /* 123DFC 802807BC 15C0000C */ bnez $t6, .L802807F0 /* 123E00 802807C0 01A02025 */ move $a0, $t5 /* 123E04 802807C4 000D1043 */ sra $v0, $t5, 1 /* 123E08 802807C8 384FFF80 */ xori $t7, $v0, 0xff80 /* 123E0C 802807CC 31E2FFFF */ andi $v0, $t7, 0xffff /* 123E10 802807D0 3401AA55 */ li $at, 43605 /* 123E14 802807D4 14410003 */ bne $v0, $at, .L802807E4 /* 123E18 802807D8 38481FF4 */ xori $t0, $v0, 0x1ff4 /* 123E1C 802807DC 10000009 */ b .L80280804 /* 123E20 802807E0 A4C00000 */ sh $zero, ($a2) .L802807E4: /* 123E24 802807E4 3C018028 */ lui $at, %hi(D_80284E60) # $at, 0x8028 /* 123E28 802807E8 10000006 */ b .L80280804 /* 123E2C 802807EC A4284E60 */ sh $t0, %lo(D_80284E60)($at) .L802807F0: /* 123E30 802807F0 0004C843 */ sra $t9, $a0, 1 /* 123E34 802807F4 3B2AFF80 */ xori $t2, $t9, 0xff80 /* 123E38 802807F8 394B8180 */ xori $t3, $t2, 0x8180 /* 123E3C 802807FC 3C018028 */ lui $at, %hi(D_80284E60) # $at, 0x8028 /* 123E40 80280800 A42B4E60 */ sh $t3, %lo(D_80284E60)($at) .L80280804: /* 123E44 80280804 03E00008 */ jr $ra /* 123E48 80280808 94C20000 */ lhu $v0, ($a2) glabel func_8028080C /* 123E4C 8028080C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 123E50 80280810 AFBF0014 */ sw $ra, 0x14($sp) /* 123E54 80280814 0C0A01DB */ jal func_8028076C /* 123E58 80280818 00000000 */ nop /* 123E5C 8028081C 44822000 */ mtc1 $v0, $f4 /* 123E60 80280820 8FBF0014 */ lw $ra, 0x14($sp) /* 123E64 80280824 04410005 */ bgez $v0, .L8028083C /* 123E68 80280828 468021A0 */ cvt.s.w $f6, $f4 /* 123E6C 8028082C 3C014F80 */ li $at, 0x4F800000 # 4294967296.000000 /* 123E70 80280830 44814000 */ mtc1 $at, $f8 /* 123E74 80280834 00000000 */ nop /* 123E78 80280838 46083180 */ add.s $f6, $f6, $f8 .L8028083C: /* 123E7C 8028083C 3C014780 */ li $at, 0x47800000 # 65536.000000 /* 123E80 80280840 44815000 */ mtc1 $at, $f10 /* 123E84 80280844 27BD0018 */ addiu $sp, $sp, 0x18 /* 123E88 80280848 03E00008 */ jr $ra /* 123E8C 8028084C 460A3003 */ div.s $f0, $f6, $f10 glabel func_80280850 /* 123E90 80280850 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 123E94 80280854 AFBF0014 */ sw $ra, 0x14($sp) /* 123E98 80280858 0C0A0203 */ jal func_8028080C /* 123E9C 8028085C E7AC0018 */ swc1 $f12, 0x18($sp) /* 123EA0 80280860 C7A20018 */ lwc1 $f2, 0x18($sp) /* 123EA4 80280864 3C013F00 */ li $at, 0x3F000000 # 0.500000 /* 123EA8 80280868 44813000 */ mtc1 $at, $f6 /* 123EAC 8028086C 46020102 */ mul.s $f4, $f0, $f2 /* 123EB0 80280870 8FBF0014 */ lw $ra, 0x14($sp) /* 123EB4 80280874 27BD0018 */ addiu $sp, $sp, 0x18 /* 123EB8 80280878 46061202 */ mul.s $f8, $f2, $f6 /* 123EBC 8028087C 03E00008 */ jr $ra /* 123EC0 80280880 46082001 */ sub.s $f0, $f4, $f8 glabel func_80280884 /* 123EC4 80280884 03E00008 */ jr $ra /* 123EC8 80280888 00000000 */ nop glabel func_8028088C /* 123ECC 8028088C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 123ED0 80280890 AFB00018 */ sw $s0, 0x18($sp) /* 123ED4 80280894 00808025 */ move $s0, $a0 /* 123ED8 80280898 AFBF001C */ sw $ra, 0x1c($sp) /* 123EDC 8028089C 8607002C */ lh $a3, 0x2c($s0) /* 123EE0 802808A0 8606002E */ lh $a2, 0x2e($s0) /* 123EE4 802808A4 24840010 */ addiu $a0, $a0, 0x10 /* 123EE8 802808A8 0C01AECD */ jal func_8006BB34 /* 123EEC 802808AC 3C053F80 */ lui $a1, 0x3f80 /* 123EF0 802808B0 3C018028 */ lui $at, %hi(D_80286B70) # $at, 0x8028 /* 123EF4 802808B4 C4266B70 */ lwc1 $f6, %lo(D_80286B70)($at) /* 123EF8 802808B8 C6040014 */ lwc1 $f4, 0x14($s0) /* 123EFC 802808BC 96040030 */ lhu $a0, 0x30($s0) /* 123F00 802808C0 46062200 */ add.s $f8, $f4, $f6 /* 123F04 802808C4 0C0AE006 */ jal func_802B8018 /* 123F08 802808C8 E6080014 */ swc1 $f8, 0x14($s0) /* 123F0C 802808CC 860E0034 */ lh $t6, 0x34($s0) /* 123F10 802808D0 8E0A003C */ lw $t2, 0x3c($s0) /* 123F14 802808D4 86190030 */ lh $t9, 0x30($s0) /* 123F18 802808D8 448E5000 */ mtc1 $t6, $f10 /* 123F1C 802808DC 86080032 */ lh $t0, 0x32($s0) /* 123F20 802808E0 254B0001 */ addiu $t3, $t2, 1 /* 123F24 802808E4 46805420 */ cvt.s.w $f16, $f10 /* 123F28 802808E8 29610321 */ slti $at, $t3, 0x321 /* 123F2C 802808EC 03284821 */ addu $t1, $t9, $t0 /* 123F30 802808F0 A6090030 */ sh $t1, 0x30($s0) /* 123F34 802808F4 AE0B003C */ sw $t3, 0x3c($s0) /* 123F38 802808F8 3C0D8028 */ lui $t5, %hi(D_802874CA) # $t5, 0x8028 /* 123F3C 802808FC 46100482 */ mul.s $f18, $f0, $f16 /* 123F40 80280900 4600910D */ trunc.w.s $f4, $f18 /* 123F44 80280904 44182000 */ mfc1 $t8, $f4 /* 123F48 80280908 14200002 */ bnez $at, .L80280914 /* 123F4C 8028090C A618002E */ sh $t8, 0x2e($s0) /* 123F50 80280910 AE000000 */ sw $zero, ($s0) .L80280914: /* 123F54 80280914 85AD74CA */ lh $t5, %lo(D_802874CA)($t5) /* 123F58 80280918 24010001 */ li $at, 1 /* 123F5C 8028091C 55A10003 */ bnel $t5, $at, .L8028092C /* 123F60 80280920 8FBF001C */ lw $ra, 0x1c($sp) /* 123F64 80280924 AE000000 */ sw $zero, ($s0) /* 123F68 80280928 8FBF001C */ lw $ra, 0x1c($sp) .L8028092C: /* 123F6C 8028092C 8FB00018 */ lw $s0, 0x18($sp) /* 123F70 80280930 27BD0020 */ addiu $sp, $sp, 0x20 /* 123F74 80280934 03E00008 */ jr $ra /* 123F78 80280938 00000000 */ nop glabel func_8028093C /* 123F7C 8028093C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 123F80 80280940 AFBF001C */ sw $ra, 0x1c($sp) /* 123F84 80280944 AFB00018 */ sw $s0, 0x18($sp) /* 123F88 80280948 8C8E0044 */ lw $t6, 0x44($a0) /* 123F8C 8028094C 00808025 */ move $s0, $a0 /* 123F90 80280950 29C1001E */ slti $at, $t6, 0x1e /* 123F94 80280954 10200012 */ beqz $at, .L802809A0 /* 123F98 80280958 3C014020 */ li $at, 0x40200000 # 2.500000 /* 123F9C 8028095C 44813000 */ mtc1 $at, $f6 /* 123FA0 80280960 C4840014 */ lwc1 $f4, 0x14($a0) /* 123FA4 80280964 3C018028 */ lui $at, %hi(D_80286B74) # $at, 0x8028 /* 123FA8 80280968 46062200 */ add.s $f8, $f4, $f6 /* 123FAC 8028096C E4880014 */ swc1 $f8, 0x14($a0) /* 123FB0 80280970 0C0A0214 */ jal func_80280850 /* 123FB4 80280974 C42C6B74 */ lwc1 $f12, %lo(D_80286B74)($at) /* 123FB8 80280978 C60A0010 */ lwc1 $f10, 0x10($s0) /* 123FBC 8028097C 3C018028 */ lui $at, %hi(D_80286B78) # $at, 0x8028 /* 123FC0 80280980 46005400 */ add.s $f16, $f10, $f0 /* 123FC4 80280984 E6100010 */ swc1 $f16, 0x10($s0) /* 123FC8 80280988 0C0A0214 */ jal func_80280850 /* 123FCC 8028098C C42C6B78 */ lwc1 $f12, %lo(D_80286B78)($at) /* 123FD0 80280990 C6120018 */ lwc1 $f18, 0x18($s0) /* 123FD4 80280994 46009100 */ add.s $f4, $f18, $f0 /* 123FD8 80280998 1000001E */ b .L80280A14 /* 123FDC 8028099C E6040018 */ swc1 $f4, 0x18($s0) .L802809A0: /* 123FE0 802809A0 8E0F002C */ lw $t7, 0x2c($s0) /* 123FE4 802809A4 24010004 */ li $at, 4 /* 123FE8 802809A8 3C048028 */ lui $a0, %hi(D_80284E7C) # $a0, 0x8028 /* 123FEC 802809AC 55E1001A */ bnel $t7, $at, .L80280A18 /* 123FF0 802809B0 8FBF001C */ lw $ra, 0x1c($sp) /* 123FF4 802809B4 0C0A01CD */ jal func_80280734 /* 123FF8 802809B8 24844E7C */ addiu $a0, %lo(D_80284E7C) # addiu $a0, $a0, 0x4e7c /* 123FFC 802809BC C6060010 */ lwc1 $f6, 0x10($s0) /* 124000 802809C0 3C018028 */ lui $at, %hi(D_80286B7C) # $at, 0x8028 /* 124004 802809C4 C4206B7C */ lwc1 $f0, %lo(D_80286B7C)($at) /* 124008 802809C8 E4460010 */ swc1 $f6, 0x10($v0) /* 12400C 802809CC C6080014 */ lwc1 $f8, 0x14($s0) /* 124010 802809D0 3C088028 */ lui $t0, %hi(D_80284E40) # 0x8028 /* 124014 802809D4 240900FF */ li $t1, 255 /* 124018 802809D8 E4480014 */ swc1 $f8, 0x14($v0) /* 12401C 802809DC C60A0018 */ lwc1 $f10, 0x18($s0) /* 124020 802809E0 240AFFEF */ li $t2, -17 /* 124024 802809E4 240B0064 */ li $t3, 100 /* 124028 802809E8 E44A0018 */ swc1 $f10, 0x18($v0) /* 12402C 802809EC 8E180048 */ lw $t8, 0x48($s0) /* 124030 802809F0 0018C880 */ sll $t9, $t8, 2 /* 124034 802809F4 01194021 */ addu $t0, $t0, $t9 /* 124038 802809F8 8D084E40 */ lw $t0, %lo(D_80284E40)($t0) # 0x4e40($t0) /* 12403C 802809FC AC49003C */ sw $t1, 0x3c($v0) /* 124040 80280A00 AC4A0040 */ sw $t2, 0x40($v0) /* 124044 80280A04 AC4B0044 */ sw $t3, 0x44($v0) /* 124048 80280A08 E4400034 */ swc1 $f0, 0x34($v0) /* 12404C 80280A0C E4400038 */ swc1 $f0, 0x38($v0) /* 124050 80280A10 AC480030 */ sw $t0, 0x30($v0) .L80280A14: /* 124054 80280A14 8FBF001C */ lw $ra, 0x1c($sp) .L80280A18: /* 124058 80280A18 8FB00018 */ lw $s0, 0x18($sp) /* 12405C 80280A1C 27BD0020 */ addiu $sp, $sp, 0x20 /* 124060 80280A20 03E00008 */ jr $ra /* 124064 80280A24 00000000 */ nop glabel func_80280A28 /* 124068 80280A28 27BDFFA0 */ addiu $sp, $sp, -0x60 /* 12406C 80280A2C 44866000 */ mtc1 $a2, $f12 /* 124070 80280A30 AFA50064 */ sw $a1, 0x64($sp) /* 124074 80280A34 00802825 */ move $a1, $a0 /* 124078 80280A38 AFBF0014 */ sw $ra, 0x14($sp) /* 12407C 80280A3C AFA40060 */ sw $a0, 0x60($sp) /* 124080 80280A40 8FA60064 */ lw $a2, 0x64($sp) /* 124084 80280A44 27A40020 */ addiu $a0, $sp, 0x20 /* 124088 80280A48 0C008784 */ jal func_80021E10 /* 12408C 80280A4C E7AC0068 */ swc1 $f12, 0x68($sp) /* 124090 80280A50 3C028028 */ lui $v0, %hi(D_80287500) # $v0, 0x8028 /* 124094 80280A54 24427500 */ addiu $v0, %lo(D_80287500) # addiu $v0, $v0, 0x7500 /* 124098 80280A58 C7AC0068 */ lwc1 $f12, 0x68($sp) /* 12409C 80280A5C C4440000 */ lwc1 $f4, ($v0) /* 1240A0 80280A60 C4480010 */ lwc1 $f8, 0x10($v0) /* 1240A4 80280A64 C4500020 */ lwc1 $f16, 0x20($v0) /* 1240A8 80280A68 460C2182 */ mul.s $f6, $f4, $f12 /* 1240AC 80280A6C C4440004 */ lwc1 $f4, 4($v0) /* 1240B0 80280A70 3C0F8016 */ lui $t7, %hi(D_80164AF0) # $t7, 0x8016 /* 1240B4 80280A74 460C4282 */ mul.s $f10, $f8, $f12 /* 1240B8 80280A78 C4480014 */ lwc1 $f8, 0x14($v0) /* 1240BC 80280A7C 85EF4AF0 */ lh $t7, %lo(D_80164AF0)($t7) /* 1240C0 80280A80 460C8482 */ mul.s $f18, $f16, $f12 /* 1240C4 80280A84 E7A60020 */ swc1 $f6, 0x20($sp) /* 1240C8 80280A88 C4500024 */ lwc1 $f16, 0x24($v0) /* 1240CC 80280A8C 460C2182 */ mul.s $f6, $f4, $f12 /* 1240D0 80280A90 E7AA0024 */ swc1 $f10, 0x24($sp) /* 1240D4 80280A94 C4440008 */ lwc1 $f4, 8($v0) /* 1240D8 80280A98 460C4282 */ mul.s $f10, $f8, $f12 /* 1240DC 80280A9C E7B20028 */ swc1 $f18, 0x28($sp) /* 1240E0 80280AA0 C4480018 */ lwc1 $f8, 0x18($v0) /* 1240E4 80280AA4 460C8482 */ mul.s $f18, $f16, $f12 /* 1240E8 80280AA8 E7A60030 */ swc1 $f6, 0x30($sp) /* 1240EC 80280AAC C4500028 */ lwc1 $f16, 0x28($v0) /* 1240F0 80280AB0 460C2182 */ mul.s $f6, $f4, $f12 /* 1240F4 80280AB4 E7AA0034 */ swc1 $f10, 0x34($sp) /* 1240F8 80280AB8 3C0E8015 */ lui $t6, %hi(gGfxPool) # $t6, 0x8015 /* 1240FC 80280ABC 460C4282 */ mul.s $f10, $f8, $f12 /* 124100 80280AC0 E7B20038 */ swc1 $f18, 0x38($sp) /* 124104 80280AC4 8DCEEF40 */ lw $t6, %lo(gGfxPool)($t6) /* 124108 80280AC8 460C8482 */ mul.s $f18, $f16, $f12 /* 12410C 80280ACC 000FC180 */ sll $t8, $t7, 6 /* 124110 80280AD0 3401FAC0 */ li $at, 64192 /* 124114 80280AD4 01D82021 */ addu $a0, $t6, $t8 /* 124118 80280AD8 E7A60040 */ swc1 $f6, 0x40($sp) /* 12411C 80280ADC E7AA0044 */ swc1 $f10, 0x44($sp) /* 124120 80280AE0 00812021 */ addu $a0, $a0, $at /* 124124 80280AE4 E7B20048 */ swc1 $f18, 0x48($sp) /* 124128 80280AE8 0C008860 */ jal func_80022180 /* 12412C 80280AEC 27A50020 */ addiu $a1, $sp, 0x20 /* 124130 80280AF0 3C048015 */ lui $a0, %hi(gDisplayListHead) # $a0, 0x8015 /* 124134 80280AF4 24840298 */ addiu $a0, %lo(gDisplayListHead) # addiu $a0, $a0, 0x298 /* 124138 80280AF8 8C830000 */ lw $v1, ($a0) /* 12413C 80280AFC 3C080102 */ lui $t0, (0x01020040 >> 16) # lui $t0, 0x102 /* 124140 80280B00 35080040 */ ori $t0, (0x01020040 & 0xFFFF) # ori $t0, $t0, 0x40 /* 124144 80280B04 24790008 */ addiu $t9, $v1, 8 /* 124148 80280B08 AC990000 */ sw $t9, ($a0) /* 12414C 80280B0C 3C0A8016 */ lui $t2, %hi(D_80164AF0) # $t2, 0x8016 /* 124150 80280B10 AC680000 */ sw $t0, ($v1) /* 124154 80280B14 854A4AF0 */ lh $t2, %lo(D_80164AF0)($t2) /* 124158 80280B18 3C098015 */ lui $t1, %hi(gGfxPool) # $t1, 0x8015 /* 12415C 80280B1C 8D29EF40 */ lw $t1, %lo(gGfxPool)($t1) /* 124160 80280B20 000A5980 */ sll $t3, $t2, 6 /* 124164 80280B24 3401FAC0 */ li $at, 64192 /* 124168 80280B28 012B6021 */ addu $t4, $t1, $t3 /* 12416C 80280B2C 01816821 */ addu $t5, $t4, $at /* 124170 80280B30 3C011FFF */ lui $at, (0x1FFFFFFF >> 16) # lui $at, 0x1fff /* 124174 80280B34 3421FFFF */ ori $at, (0x1FFFFFFF & 0xFFFF) # ori $at, $at, 0xffff /* 124178 80280B38 01A17824 */ and $t7, $t5, $at /* 12417C 80280B3C AC6F0004 */ sw $t7, 4($v1) /* 124180 80280B40 8FBF0014 */ lw $ra, 0x14($sp) /* 124184 80280B44 27BD0060 */ addiu $sp, $sp, 0x60 /* 124188 80280B48 03E00008 */ jr $ra /* 12418C 80280B4C 00000000 */ nop glabel func_80280B50 /* 124190 80280B50 27BDFFA8 */ addiu $sp, $sp, -0x58 /* 124194 80280B54 AFBF0014 */ sw $ra, 0x14($sp) /* 124198 80280B58 AFA40058 */ sw $a0, 0x58($sp) /* 12419C 80280B5C AFA60060 */ sw $a2, 0x60($sp) /* 1241A0 80280B60 AFA70064 */ sw $a3, 0x64($sp) /* 1241A4 80280B64 C4840000 */ lwc1 $f4, ($a0) /* 1241A8 80280B68 3C0F800E */ lui $t7, %hi(D_800DDB40) # $t7, 0x800e /* 1241AC 80280B6C 8DEFDB40 */ lw $t7, %lo(D_800DDB40)($t7) /* 1241B0 80280B70 E7A4004C */ swc1 $f4, 0x4c($sp) /* 1241B4 80280B74 C4860004 */ lwc1 $f6, 4($a0) /* 1241B8 80280B78 44856000 */ mtc1 $a1, $f12 /* 1241BC 80280B7C 27A50044 */ addiu $a1, $sp, 0x44 /* 1241C0 80280B80 E7A60050 */ swc1 $f6, 0x50($sp) /* 1241C4 80280B84 C4880008 */ lwc1 $f8, 8($a0) /* 1241C8 80280B88 A7A00044 */ sh $zero, 0x44($sp) /* 1241CC 80280B8C 44066000 */ mfc1 $a2, $f12 /* 1241D0 80280B90 E7A80054 */ swc1 $f8, 0x54($sp) /* 1241D4 80280B94 85F80026 */ lh $t8, 0x26($t7) /* 1241D8 80280B98 A7A00048 */ sh $zero, 0x48($sp) /* 1241DC 80280B9C 27A4004C */ addiu $a0, $sp, 0x4c /* 1241E0 80280BA0 0C0A028A */ jal func_80280A28 /* 1241E4 80280BA4 A7B80046 */ sh $t8, 0x46($sp) /* 1241E8 80280BA8 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015 /* 1241EC 80280BAC 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298 /* 1241F0 80280BB0 8C620000 */ lw $v0, ($v1) /* 1241F4 80280BB4 3C0F0D01 */ lui $t7, %hi(D_0D008DB8) # $t7, 0xd01 /* 1241F8 80280BB8 25EF8DB8 */ addiu $t7, %lo(D_0D008DB8) # addiu $t7, $t7, -0x7248 /* 1241FC 80280BBC 24590008 */ addiu $t9, $v0, 8 /* 124200 80280BC0 AC790000 */ sw $t9, ($v1) /* 124204 80280BC4 3C0E0600 */ lui $t6, 0x600 /* 124208 80280BC8 AC4E0000 */ sw $t6, ($v0) /* 12420C 80280BCC AC4F0004 */ sw $t7, 4($v0) /* 124210 80280BD0 8C620000 */ lw $v0, ($v1) /* 124214 80280BD4 3C19FD70 */ lui $t9, 0xfd70 /* 124218 80280BD8 3C0E8019 */ lui $t6, %hi(D_8018D48C) # $t6, 0x8019 /* 12421C 80280BDC 24580008 */ addiu $t8, $v0, 8 /* 124220 80280BE0 AC780000 */ sw $t8, ($v1) /* 124224 80280BE4 AC590000 */ sw $t9, ($v0) /* 124228 80280BE8 8DCED48C */ lw $t6, %lo(D_8018D48C)($t6) /* 12422C 80280BEC 3C190700 */ lui $t9, 0x700 /* 124230 80280BF0 3C18F570 */ lui $t8, 0xf570 /* 124234 80280BF4 AC4E0004 */ sw $t6, 4($v0) /* 124238 80280BF8 8C620000 */ lw $v0, ($v1) /* 12423C 80280BFC 244F0008 */ addiu $t7, $v0, 8 /* 124240 80280C00 AC6F0000 */ sw $t7, ($v1) /* 124244 80280C04 AC590004 */ sw $t9, 4($v0) /* 124248 80280C08 AC580000 */ sw $t8, ($v0) /* 12424C 80280C0C 8C620000 */ lw $v0, ($v1) /* 124250 80280C10 3C0FE600 */ lui $t7, 0xe600 /* 124254 80280C14 3C19F300 */ lui $t9, 0xf300 /* 124258 80280C18 244E0008 */ addiu $t6, $v0, 8 /* 12425C 80280C1C AC6E0000 */ sw $t6, ($v1) /* 124260 80280C20 AC400004 */ sw $zero, 4($v0) /* 124264 80280C24 AC4F0000 */ sw $t7, ($v0) /* 124268 80280C28 8C620000 */ lw $v0, ($v1) /* 12426C 80280C2C 3C0E071F */ lui $t6, (0x071FF200 >> 16) # lui $t6, 0x71f /* 124270 80280C30 35CEF200 */ ori $t6, (0x071FF200 & 0xFFFF) # ori $t6, $t6, 0xf200 /* 124274 80280C34 24580008 */ addiu $t8, $v0, 8 /* 124278 80280C38 AC780000 */ sw $t8, ($v1) /* 12427C 80280C3C AC4E0004 */ sw $t6, 4($v0) /* 124280 80280C40 AC590000 */ sw $t9, ($v0) /* 124284 80280C44 8C620000 */ lw $v0, ($v1) /* 124288 80280C48 3C18E700 */ lui $t8, 0xe700 /* 12428C 80280C4C 3C0EF568 */ lui $t6, (0xF5680800 >> 16) # lui $t6, 0xf568 /* 124290 80280C50 244F0008 */ addiu $t7, $v0, 8 /* 124294 80280C54 AC6F0000 */ sw $t7, ($v1) /* 124298 80280C58 AC400004 */ sw $zero, 4($v0) /* 12429C 80280C5C AC580000 */ sw $t8, ($v0) /* 1242A0 80280C60 8C620000 */ lw $v0, ($v1) /* 1242A4 80280C64 35CE0800 */ ori $t6, (0xF5680800 & 0xFFFF) # ori $t6, $t6, 0x800 /* 1242A8 80280C68 3C18F200 */ lui $t8, 0xf200 /* 1242AC 80280C6C 24590008 */ addiu $t9, $v0, 8 /* 1242B0 80280C70 AC790000 */ sw $t9, ($v1) /* 1242B4 80280C74 AC400004 */ sw $zero, 4($v0) /* 1242B8 80280C78 AC4E0000 */ sw $t6, ($v0) /* 1242BC 80280C7C 8C620000 */ lw $v0, ($v1) /* 1242C0 80280C80 3C0E0007 */ lui $t6, (0x0007C07C >> 16) # lui $t6, 7 /* 1242C4 80280C84 35CEC07C */ ori $t6, (0x0007C07C & 0xFFFF) # ori $t6, $t6, 0xc07c /* 1242C8 80280C88 244F0008 */ addiu $t7, $v0, 8 /* 1242CC 80280C8C AC6F0000 */ sw $t7, ($v1) /* 1242D0 80280C90 AFA2001C */ sw $v0, 0x1c($sp) /* 1242D4 80280C94 AC4E0004 */ sw $t6, 4($v0) /* 1242D8 80280C98 AC580000 */ sw $t8, ($v0) /* 1242DC 80280C9C 8FA60060 */ lw $a2, 0x60($sp) /* 1242E0 80280CA0 87A70066 */ lh $a3, 0x66($sp) /* 1242E4 80280CA4 0006C403 */ sra $t8, $a2, 0x10 /* 1242E8 80280CA8 330E00FF */ andi $t6, $t8, 0xff /* 1242EC 80280CAC 000ECC00 */ sll $t9, $t6, 0x10 /* 1242F0 80280CB0 00192403 */ sra $a0, $t9, 0x10 /* 1242F4 80280CB4 00067203 */ sra $t6, $a2, 8 /* 1242F8 80280CB8 31D900FF */ andi $t9, $t6, 0xff /* 1242FC 80280CBC 0019C400 */ sll $t8, $t9, 0x10 /* 124300 80280CC0 00182C03 */ sra $a1, $t8, 0x10 /* 124304 80280CC4 30D900FF */ andi $t9, $a2, 0xff /* 124308 80280CC8 0019C400 */ sll $t8, $t9, 0x10 /* 12430C 80280CCC 0C012CD7 */ jal func_8004B35C /* 124310 80280CD0 00183403 */ sra $a2, $t8, 0x10 /* 124314 80280CD4 3C038015 */ lui $v1, %hi(gDisplayListHead) # $v1, 0x8015 /* 124318 80280CD8 24630298 */ addiu $v1, %lo(gDisplayListHead) # addiu $v1, $v1, 0x298 /* 12431C 80280CDC 8C620000 */ lw $v0, ($v1) /* 124320 80280CE0 3C180D01 */ lui $t8, %hi(D_0D008E48) # $t8, 0xd01 /* 124324 80280CE4 3C058016 */ lui $a1, %hi(D_80164AF0) # $a1, 0x8016 /* 124328 80280CE8 244F0008 */ addiu $t7, $v0, 8 /* 12432C 80280CEC AC6F0000 */ sw $t7, ($v1) /* 124330 80280CF0 27188E48 */ addiu $t8, %lo(D_0D008E48) # addiu $t8, $t8, -0x71b8 /* 124334 80280CF4 3C190600 */ lui $t9, 0x600 /* 124338 80280CF8 24A54AF0 */ addiu $a1, %lo(D_80164AF0) # addiu $a1, $a1, 0x4af0 /* 12433C 80280CFC AC590000 */ sw $t9, ($v0) /* 124340 80280D00 AC580004 */ sw $t8, 4($v0) /* 124344 80280D04 84AE0000 */ lh $t6, ($a1) /* 124348 80280D08 8FBF0014 */ lw $ra, 0x14($sp) /* 12434C 80280D0C 27BD0058 */ addiu $sp, $sp, 0x58 /* 124350 80280D10 25CF0001 */ addiu $t7, $t6, 1 /* 124354 80280D14 03E00008 */ jr $ra /* 124358 80280D18 A4AF0000 */ sh $t7, ($a1) glabel func_80280D1C /* 12435C 80280D1C 27BDFF98 */ addiu $sp, $sp, -0x68 /* 124360 80280D20 AFBF004C */ sw $ra, 0x4c($sp) /* 124364 80280D24 AFB70048 */ sw $s7, 0x48($sp) /* 124368 80280D28 AFB60044 */ sw $s6, 0x44($sp) /* 12436C 80280D2C AFB50040 */ sw $s5, 0x40($sp) /* 124370 80280D30 AFB4003C */ sw $s4, 0x3c($sp) /* 124374 80280D34 AFB30038 */ sw $s3, 0x38($sp) /* 124378 80280D38 AFB20034 */ sw $s2, 0x34($sp) /* 12437C 80280D3C AFB10030 */ sw $s1, 0x30($sp) /* 124380 80280D40 AFB0002C */ sw $s0, 0x2c($sp) /* 124384 80280D44 F7B80020 */ sdc1 $f24, 0x20($sp) /* 124388 80280D48 F7B60018 */ sdc1 $f22, 0x18($sp) /* 12438C 80280D4C F7B40010 */ sdc1 $f20, 0x10($sp) /* 124390 80280D50 8C8E0044 */ lw $t6, 0x44($a0) /* 124394 80280D54 00809025 */ move $s2, $a0 /* 124398 80280D58 00008025 */ move $s0, $zero /* 12439C 80280D5C 29C1001E */ slti $at, $t6, 0x1e /* 1243A0 80280D60 10200034 */ beqz $at, .L80280E34 /* 1243A4 80280D64 00008825 */ move $s1, $zero /* 1243A8 80280D68 3C0141F0 */ li $at, 0x41F00000 # 30.000000 /* 1243AC 80280D6C 4481C000 */ mtc1 $at, $f24 /* 1243B0 80280D70 3C014000 */ li $at, 0x40000000 # 2.000000 /* 1243B4 80280D74 4481B000 */ mtc1 $at, $f22 /* 1243B8 80280D78 3C014120 */ li $at, 0x41200000 # 10.000000 /* 1243BC 80280D7C 3C158028 */ lui $s5, %hi(D_80284E50) # $s5, 0x8028 /* 1243C0 80280D80 4481A000 */ mtc1 $at, $f20 /* 1243C4 80280D84 26B54E50 */ addiu $s5, %lo(D_80284E50) # addiu $s5, $s5, 0x4e50 /* 1243C8 80280D88 24170064 */ li $s7, 100 /* 1243CC 80280D8C 2416001E */ li $s6, 30 /* 1243D0 80280D90 27B40058 */ addiu $s4, $sp, 0x58 /* 1243D4 80280D94 2413000A */ li $s3, 10 .L80280D98: /* 1243D8 80280D98 44914000 */ mtc1 $s1, $f8 /* 1243DC 80280D9C C6440010 */ lwc1 $f4, 0x10($s2) /* 1243E0 80280DA0 02707823 */ subu $t7, $s3, $s0 /* 1243E4 80280DA4 468042A0 */ cvt.s.w $f10, $f8 /* 1243E8 80280DA8 E7A40058 */ swc1 $f4, 0x58($sp) /* 1243EC 80280DAC C6460014 */ lwc1 $f6, 0x14($s2) /* 1243F0 80280DB0 448F2000 */ mtc1 $t7, $f4 /* 1243F4 80280DB4 02802025 */ move $a0, $s4 /* 1243F8 80280DB8 460A3401 */ sub.s $f16, $f6, $f10 /* 1243FC 80280DBC 46802220 */ cvt.s.w $f8, $f4 /* 124400 80280DC0 E7B0005C */ swc1 $f16, 0x5c($sp) /* 124404 80280DC4 C6520018 */ lwc1 $f18, 0x18($s2) /* 124408 80280DC8 E7B20060 */ swc1 $f18, 0x60($sp) /* 12440C 80280DCC 8E490044 */ lw $t1, 0x44($s2) /* 124410 80280DD0 46144183 */ div.s $f6, $f8, $f20 /* 124414 80280DD4 8E580048 */ lw $t8, 0x48($s2) /* 124418 80280DD8 02C95023 */ subu $t2, $s6, $t1 /* 12441C 80280DDC 01570019 */ multu $t2, $s7 /* 124420 80280DE0 0018C880 */ sll $t9, $t8, 2 /* 124424 80280DE4 02B94021 */ addu $t0, $s5, $t9 /* 124428 80280DE8 8D060000 */ lw $a2, ($t0) /* 12442C 80280DEC 00005812 */ mflo $t3 /* 124430 80280DF0 448B8000 */ mtc1 $t3, $f16 /* 124434 80280DF4 00000000 */ nop /* 124438 80280DF8 468084A0 */ cvt.s.w $f18, $f16 /* 12443C 80280DFC 46163282 */ mul.s $f10, $f6, $f22 /* 124440 80280E00 46189103 */ div.s $f4, $f18, $f24 /* 124444 80280E04 44055000 */ mfc1 $a1, $f10 /* 124448 80280E08 4600220D */ trunc.w.s $f8, $f4 /* 12444C 80280E0C 44074000 */ mfc1 $a3, $f8 /* 124450 80280E10 00000000 */ nop /* 124454 80280E14 00076C00 */ sll $t5, $a3, 0x10 /* 124458 80280E18 0C0A02D4 */ jal func_80280B50 /* 12445C 80280E1C 000D3C03 */ sra $a3, $t5, 0x10 /* 124460 80280E20 26100001 */ addiu $s0, $s0, 1 /* 124464 80280E24 1613FFDC */ bne $s0, $s3, .L80280D98 /* 124468 80280E28 26310002 */ addiu $s1, $s1, 2 /* 12446C 80280E2C 1000004C */ b .L80280F60 /* 124470 80280E30 8E480044 */ lw $t0, 0x44($s2) .L80280E34: /* 124474 80280E34 8E42002C */ lw $v0, 0x2c($s2) /* 124478 80280E38 26440010 */ addiu $a0, $s2, 0x10 /* 12447C 80280E3C 28410005 */ slti $at, $v0, 5 /* 124480 80280E40 1020000F */ beqz $at, .L80280E80 /* 124484 80280E44 000248C0 */ sll $t1, $v0, 3 /* 124488 80280E48 3C014000 */ li $at, 0x40000000 # 2.000000 /* 12448C 80280E4C 4481B000 */ mtc1 $at, $f22 /* 124490 80280E50 C64A0038 */ lwc1 $f10, 0x38($s2) /* 124494 80280E54 C6460034 */ lwc1 $f6, 0x34($s2) /* 124498 80280E58 8E580040 */ lw $t8, 0x40($s2) /* 12449C 80280E5C 46165402 */ mul.s $f16, $f10, $f22 /* 1244A0 80280E60 8E4F003C */ lw $t7, 0x3c($s2) /* 1244A4 80280E64 0018C840 */ sll $t9, $t8, 1 /* 1244A8 80280E68 8E42002C */ lw $v0, 0x2c($s2) /* 1244AC 80280E6C 01F91821 */ addu $v1, $t7, $t9 /* 1244B0 80280E70 AE43003C */ sw $v1, 0x3c($s2) /* 1244B4 80280E74 46103480 */ add.s $f18, $f6, $f16 /* 1244B8 80280E78 10000020 */ b .L80280EFC /* 1244BC 80280E7C E6520034 */ swc1 $f18, 0x34($s2) .L80280E80: /* 1244C0 80280E80 01224823 */ subu $t1, $t1, $v0 /* 1244C4 80280E84 252AFFDD */ addiu $t2, $t1, -0x23 /* 1244C8 80280E88 448A4000 */ mtc1 $t2, $f8 /* 1244CC 80280E8C 3C014120 */ li $at, 0x41200000 # 10.000000 /* 1244D0 80280E90 4481A000 */ mtc1 $at, $f20 /* 1244D4 80280E94 468042A0 */ cvt.s.w $f10, $f8 /* 1244D8 80280E98 8E4C0040 */ lw $t4, 0x40($s2) /* 1244DC 80280E9C 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 1244E0 80280EA0 44812000 */ mtc1 $at, $f4 /* 1244E4 80280EA4 448C4000 */ mtc1 $t4, $f8 /* 1244E8 80280EA8 8E4B003C */ lw $t3, 0x3c($s2) /* 1244EC 80280EAC 46145183 */ div.s $f6, $f10, $f20 /* 1244F0 80280EB0 448B8000 */ mtc1 $t3, $f16 /* 1244F4 80280EB4 468042A0 */ cvt.s.w $f10, $f8 /* 1244F8 80280EB8 C6480034 */ lwc1 $f8, 0x34($s2) /* 1244FC 80280EBC 468084A0 */ cvt.s.w $f18, $f16 /* 124500 80280EC0 46062000 */ add.s $f0, $f4, $f6 /* 124504 80280EC4 46005103 */ div.s $f4, $f10, $f0 /* 124508 80280EC8 C64A0038 */ lwc1 $f10, 0x38($s2) /* 12450C 80280ECC 46049180 */ add.s $f6, $f18, $f4 /* 124510 80280ED0 46005483 */ div.s $f18, $f10, $f0 /* 124514 80280ED4 4600340D */ trunc.w.s $f16, $f6 /* 124518 80280ED8 44038000 */ mfc1 $v1, $f16 /* 12451C 80280EDC 00000000 */ nop /* 124520 80280EE0 AE43003C */ sw $v1, 0x3c($s2) /* 124524 80280EE4 46124100 */ add.s $f4, $f8, $f18 /* 124528 80280EE8 04610004 */ bgez $v1, .L80280EFC /* 12452C 80280EEC E6440034 */ swc1 $f4, 0x34($s2) /* 124530 80280EF0 AE40003C */ sw $zero, 0x3c($s2) /* 124534 80280EF4 8E42002C */ lw $v0, 0x2c($s2) /* 124538 80280EF8 00001825 */ move $v1, $zero .L80280EFC: /* 12453C 80280EFC 24580001 */ addiu $t8, $v0, 1 /* 124540 80280F00 18600008 */ blez $v1, .L80280F24 /* 124544 80280F04 AE58002C */ sw $t8, 0x2c($s2) /* 124548 80280F08 C6400034 */ lwc1 $f0, 0x34($s2) /* 12454C 80280F0C 44803000 */ mtc1 $zero, $f6 /* 124550 80280F10 00000000 */ nop /* 124554 80280F14 4600303C */ c.lt.s $f6, $f0 /* 124558 80280F18 00000000 */ nop /* 12455C 80280F1C 45030007 */ bc1tl .L80280F3C /* 124560 80280F20 00033C00 */ sll $a3, $v1, 0x10 .L80280F24: /* 124564 80280F24 8E4F002C */ lw $t7, 0x2c($s2) /* 124568 80280F28 29E1001E */ slti $at, $t7, 0x1e /* 12456C 80280F2C 5020000B */ beql $at, $zero, .L80280F5C /* 124570 80280F30 AE400000 */ sw $zero, ($s2) /* 124574 80280F34 C6400034 */ lwc1 $f0, 0x34($s2) /* 124578 80280F38 00033C00 */ sll $a3, $v1, 0x10 .L80280F3C: /* 12457C 80280F3C 0007CC03 */ sra $t9, $a3, 0x10 /* 124580 80280F40 44050000 */ mfc1 $a1, $f0 /* 124584 80280F44 03203825 */ move $a3, $t9 /* 124588 80280F48 0C0A02D4 */ jal func_80280B50 /* 12458C 80280F4C 8E460030 */ lw $a2, 0x30($s2) /* 124590 80280F50 10000003 */ b .L80280F60 /* 124594 80280F54 8E480044 */ lw $t0, 0x44($s2) /* 124598 80280F58 AE400000 */ sw $zero, ($s2) .L80280F5C: /* 12459C 80280F5C 8E480044 */ lw $t0, 0x44($s2) .L80280F60: /* 1245A0 80280F60 25090001 */ addiu $t1, $t0, 1 /* 1245A4 80280F64 AE490044 */ sw $t1, 0x44($s2) /* 1245A8 80280F68 8FBF004C */ lw $ra, 0x4c($sp) /* 1245AC 80280F6C 8FB70048 */ lw $s7, 0x48($sp) /* 1245B0 80280F70 8FB60044 */ lw $s6, 0x44($sp) /* 1245B4 80280F74 8FB50040 */ lw $s5, 0x40($sp) /* 1245B8 80280F78 8FB4003C */ lw $s4, 0x3c($sp) /* 1245BC 80280F7C 8FB30038 */ lw $s3, 0x38($sp) /* 1245C0 80280F80 8FB20034 */ lw $s2, 0x34($sp) /* 1245C4 80280F84 8FB10030 */ lw $s1, 0x30($sp) /* 1245C8 80280F88 8FB0002C */ lw $s0, 0x2c($sp) /* 1245CC 80280F8C D7B80020 */ ldc1 $f24, 0x20($sp) /* 1245D0 80280F90 D7B60018 */ ldc1 $f22, 0x18($sp) /* 1245D4 80280F94 D7B40010 */ ldc1 $f20, 0x10($sp) /* 1245D8 80280F98 03E00008 */ jr $ra /* 1245DC 80280F9C 27BD0068 */ addiu $sp, $sp, 0x68 glabel func_80280FA0 /* 1245E0 80280FA0 03E00008 */ jr $ra /* 1245E4 80280FA4 AFA40000 */ sw $a0, ($sp) glabel func_80280FA8 /* 1245E8 80280FA8 03E00008 */ jr $ra /* 1245EC 80280FAC AFA40000 */ sw $a0, ($sp) glabel func_80280FB0 /* 1245F0 80280FB0 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 1245F4 80280FB4 AFBF0014 */ sw $ra, 0x14($sp) /* 1245F8 80280FB8 3C018028 */ lui $at, %hi(D_802874E0) # $at, 0x8028 /* 1245FC 80280FBC AC2074E0 */ sw $zero, %lo(D_802874E0)($at) /* 124600 80280FC0 0C0A9EDC */ jal func_802A7B70 /* 124604 80280FC4 24043B60 */ li $a0, 15200 /* 124608 80280FC8 3C038028 */ lui $v1, %hi(D_802874F8) # $v1, 0x8028 /* 12460C 80280FCC 246374F8 */ addiu $v1, %lo(D_802874F8) # addiu $v1, $v1, 0x74f8 /* 124610 80280FD0 AC620000 */ sw $v0, ($v1) /* 124614 80280FD4 00402025 */ move $a0, $v0 /* 124618 80280FD8 0C033698 */ jal bzero /* 12461C 80280FDC 24053B60 */ li $a1, 15200 /* 124620 80280FE0 3C048028 */ lui $a0, %hi(D_80284E88) # $a0, 0x8028 /* 124624 80280FE4 0C0A01CD */ jal func_80280734 /* 124628 80280FE8 24844E88 */ addiu $a0, %lo(D_80284E88) # addiu $a0, $a0, 0x4e88 /* 12462C 80280FEC 8FBF0014 */ lw $ra, 0x14($sp) /* 124630 80280FF0 27BD0018 */ addiu $sp, $sp, 0x18 /* 124634 80280FF4 03E00008 */ jr $ra /* 124638 80280FF8 00000000 */ nop glabel func_80280FFC /* 12463C 80280FFC 240E0001 */ li $t6, 1 /* 124640 80281000 3C018028 */ lui $at, %hi(D_802874F4) # 0x8028 /* 124644 80281004 03E00008 */ jr $ra /* 124648 80281008 A02E74F4 */ sb $t6, %lo(D_802874F4)($at) # 0x74f4($at) glabel func_8028100C /* 12464C 8028100C AFA40000 */ sw $a0, ($sp) /* 124650 80281010 AFA50004 */ sw $a1, 4($sp) /* 124654 80281014 03E00008 */ jr $ra /* 124658 80281018 AFA60008 */ sw $a2, 8($sp) glabel func_8028101C /* 12465C 8028101C 27BDFF90 */ addiu $sp, $sp, -0x70 /* 124660 80281020 F7BE0038 */ sdc1 $f30, 0x38($sp) /* 124664 80281024 3C014461 */ li $at, 0x44610000 # 900.000000 /* 124668 80281028 4481F000 */ mtc1 $at, $f30 /* 12466C 8028102C F7BC0030 */ sdc1 $f28, 0x30($sp) /* 124670 80281030 3C0143C8 */ li $at, 0x43C80000 # 400.000000 /* 124674 80281034 44842000 */ mtc1 $a0, $f4 /* 124678 80281038 44854000 */ mtc1 $a1, $f8 /* 12467C 8028103C 44868000 */ mtc1 $a2, $f16 /* 124680 80281040 4481E000 */ mtc1 $at, $f28 /* 124684 80281044 F7BA0028 */ sdc1 $f26, 0x28($sp) /* 124688 80281048 3C0140E0 */ li $at, 0x40E00000 # 7.000000 /* 12468C 8028104C 4481D000 */ mtc1 $at, $f26 /* 124690 80281050 468021A0 */ cvt.s.w $f6, $f4 /* 124694 80281054 F7B80020 */ sdc1 $f24, 0x20($sp) /* 124698 80281058 3C014416 */ li $at, 0x44160000 # 600.000000 /* 12469C 8028105C 4481C000 */ mtc1 $at, $f24 /* 1246A0 80281060 F7B60018 */ sdc1 $f22, 0x18($sp) /* 1246A4 80281064 468042A0 */ cvt.s.w $f10, $f8 /* 1246A8 80281068 3C0143BE */ li $at, 0x43BE0000 # 380.000000 /* 1246AC 8028106C 4481B000 */ mtc1 $at, $f22 /* 1246B0 80281070 AFB2004C */ sw $s2, 0x4c($sp) /* 1246B4 80281074 F7B40010 */ sdc1 $f20, 0x10($sp) /* 1246B8 80281078 468084A0 */ cvt.s.w $f18, $f16 /* 1246BC 8028107C 3C014348 */ li $at, 0x43480000 # 200.000000 /* 1246C0 80281080 AFB30050 */ sw $s3, 0x50($sp) /* 1246C4 80281084 AFB10048 */ sw $s1, 0x48($sp) /* 1246C8 80281088 3C128028 */ lui $s2, %hi(D_80284E64) # $s2, 0x8028 /* 1246CC 8028108C 4481A000 */ mtc1 $at, $f20 /* 1246D0 80281090 AFBF0054 */ sw $ra, 0x54($sp) /* 1246D4 80281094 AFB00044 */ sw $s0, 0x44($sp) /* 1246D8 80281098 26524E64 */ addiu $s2, %lo(D_80284E64) # addiu $s2, $s2, 0x4e64 /* 1246DC 8028109C 00008825 */ move $s1, $zero /* 1246E0 802810A0 24130064 */ li $s3, 100 /* 1246E4 802810A4 E7B2005C */ swc1 $f18, 0x5c($sp) /* 1246E8 802810A8 E7AA0060 */ swc1 $f10, 0x60($sp) /* 1246EC 802810AC E7A60064 */ swc1 $f6, 0x64($sp) .L802810B0: /* 1246F0 802810B0 0C0A01CD */ jal func_80280734 /* 1246F4 802810B4 02402025 */ move $a0, $s2 /* 1246F8 802810B8 00408025 */ move $s0, $v0 /* 1246FC 802810BC 0C0A0214 */ jal func_80280850 /* 124700 802810C0 4600A306 */ mov.s $f12, $f20 /* 124704 802810C4 C7A40064 */ lwc1 $f4, 0x64($sp) /* 124708 802810C8 4600B306 */ mov.s $f12, $f22 /* 12470C 802810CC 46040180 */ add.s $f6, $f0, $f4 /* 124710 802810D0 0C0A0214 */ jal func_80280850 /* 124714 802810D4 E6060010 */ swc1 $f6, 0x10($s0) /* 124718 802810D8 C7A80060 */ lwc1 $f8, 0x60($sp) /* 12471C 802810DC 4600C306 */ mov.s $f12, $f24 /* 124720 802810E0 46080280 */ add.s $f10, $f0, $f8 /* 124724 802810E4 0C0A0214 */ jal func_80280850 /* 124728 802810E8 E60A0014 */ swc1 $f10, 0x14($s0) /* 12472C 802810EC C7B0005C */ lwc1 $f16, 0x5c($sp) /* 124730 802810F0 46100480 */ add.s $f18, $f0, $f16 /* 124734 802810F4 0C0A0203 */ jal func_8028080C /* 124738 802810F8 E6120018 */ swc1 $f18, 0x18($s0) /* 12473C 802810FC 461A0102 */ mul.s $f4, $f0, $f26 /* 124740 80281100 4600218D */ trunc.w.s $f6, $f4 /* 124744 80281104 440F3000 */ mfc1 $t7, $f6 /* 124748 80281108 0C0A01DB */ jal func_8028076C /* 12474C 8028110C A60F002C */ sh $t7, 0x2c($s0) /* 124750 80281110 A6020030 */ sh $v0, 0x30($s0) /* 124754 80281114 0C0A0214 */ jal func_80280850 /* 124758 80281118 4600E306 */ mov.s $f12, $f28 /* 12475C 8028111C 461E0200 */ add.s $f8, $f0, $f30 /* 124760 80281120 3C0144FA */ li $at, 0x44FA0000 # 2000.000000 /* 124764 80281124 44816000 */ mtc1 $at, $f12 /* 124768 80281128 4600428D */ trunc.w.s $f10, $f8 /* 12476C 8028112C 44195000 */ mfc1 $t9, $f10 /* 124770 80281130 0C0A0214 */ jal func_80280850 /* 124774 80281134 A6190032 */ sh $t9, 0x32($s0) /* 124778 80281138 3C018028 */ lui $at, %hi(D_80286B80) # $at, 0x8028 /* 12477C 8028113C C4306B80 */ lwc1 $f16, %lo(D_80286B80)($at) /* 124780 80281140 26310001 */ addiu $s1, $s1, 1 /* 124784 80281144 46100480 */ add.s $f18, $f0, $f16 /* 124788 80281148 4600910D */ trunc.w.s $f4, $f18 /* 12478C 8028114C 44092000 */ mfc1 $t1, $f4 /* 124790 80281150 1633FFD7 */ bne $s1, $s3, .L802810B0 /* 124794 80281154 A6090034 */ sh $t1, 0x34($s0) /* 124798 80281158 8FBF0054 */ lw $ra, 0x54($sp) /* 12479C 8028115C D7B40010 */ ldc1 $f20, 0x10($sp) /* 1247A0 80281160 D7B60018 */ ldc1 $f22, 0x18($sp) /* 1247A4 80281164 D7B80020 */ ldc1 $f24, 0x20($sp) /* 1247A8 80281168 D7BA0028 */ ldc1 $f26, 0x28($sp) /* 1247AC 8028116C D7BC0030 */ ldc1 $f28, 0x30($sp) /* 1247B0 80281170 D7BE0038 */ ldc1 $f30, 0x38($sp) /* 1247B4 80281174 8FB00044 */ lw $s0, 0x44($sp) /* 1247B8 80281178 8FB10048 */ lw $s1, 0x48($sp) /* 1247BC 8028117C 8FB2004C */ lw $s2, 0x4c($sp) /* 1247C0 80281180 8FB30050 */ lw $s3, 0x50($sp) /* 1247C4 80281184 03E00008 */ jr $ra /* 1247C8 80281188 27BD0070 */ addiu $sp, $sp, 0x70 glabel func_8028118C /* 1247CC 8028118C 27BDFFE0 */ addiu $sp, $sp, -0x20 /* 1247D0 80281190 AFBF001C */ sw $ra, 0x1c($sp) /* 1247D4 80281194 AFB00018 */ sw $s0, 0x18($sp) /* 1247D8 80281198 AFA40020 */ sw $a0, 0x20($sp) /* 1247DC 8028119C AFA50024 */ sw $a1, 0x24($sp) /* 1247E0 802811A0 0C0A0203 */ jal func_8028080C /* 1247E4 802811A4 AFA60028 */ sw $a2, 0x28($sp) /* 1247E8 802811A8 3C0E8028 */ lui $t6, %hi(D_802874BE) # $t6, 0x8028 /* 1247EC 802811AC 85CE74BE */ lh $t6, %lo(D_802874BE)($t6) /* 1247F0 802811B0 3C013F80 */ li $at, 0x3F800000 # 1.000000 /* 1247F4 802811B4 44815000 */ mtc1 $at, $f10 /* 1247F8 802811B8 25CF000D */ addiu $t7, $t6, 0xd /* 1247FC 802811BC 448F2000 */ mtc1 $t7, $f4 /* 124800 802811C0 3C048028 */ lui $a0, %hi(D_80284E70) # $a0, 0x8028 /* 124804 802811C4 468021A0 */ cvt.s.w $f6, $f4 /* 124808 802811C8 46003202 */ mul.s $f8, $f6, $f0 /* 12480C 802811CC 460A403C */ c.lt.s $f8, $f10 /* 124810 802811D0 00000000 */ nop /* 124814 802811D4 45020038 */ bc1fl .L802812B8 /* 124818 802811D8 8FBF001C */ lw $ra, 0x1c($sp) /* 12481C 802811DC 0C0A01CD */ jal func_80280734 /* 124820 802811E0 24844E70 */ addiu $a0, %lo(D_80284E70) # addiu $a0, $a0, 0x4e70 /* 124824 802811E4 44806000 */ mtc1 $zero, $f12 /* 124828 802811E8 0C0A0214 */ jal func_80280850 /* 12482C 802811EC 00408025 */ move $s0, $v0 /* 124830 802811F0 8FB80020 */ lw $t8, 0x20($sp) /* 124834 802811F4 3C198028 */ lui $t9, %hi(D_802874C6) # $t9, 0x8028 /* 124838 802811F8 44988000 */ mtc1 $t8, $f16 /* 12483C 802811FC 00000000 */ nop /* 124840 80281200 468084A0 */ cvt.s.w $f18, $f16 /* 124844 80281204 46120100 */ add.s $f4, $f0, $f18 /* 124848 80281208 E6040010 */ swc1 $f4, 0x10($s0) /* 12484C 8028120C 873974C6 */ lh $t9, %lo(D_802874C6)($t9) /* 124850 80281210 27280064 */ addiu $t0, $t9, 0x64 /* 124854 80281214 44883000 */ mtc1 $t0, $f6 /* 124858 80281218 0C0A0214 */ jal func_80280850 /* 12485C 8028121C 46803320 */ cvt.s.w $f12, $f6 /* 124860 80281220 8FA90024 */ lw $t1, 0x24($sp) /* 124864 80281224 3C0A8028 */ lui $t2, %hi(D_802874C8) # $t2, 0x8028 /* 124868 80281228 44894000 */ mtc1 $t1, $f8 /* 12486C 8028122C 00000000 */ nop /* 124870 80281230 468042A0 */ cvt.s.w $f10, $f8 /* 124874 80281234 460A0400 */ add.s $f16, $f0, $f10 /* 124878 80281238 E6100014 */ swc1 $f16, 0x14($s0) /* 12487C 8028123C 854A74C8 */ lh $t2, %lo(D_802874C8)($t2) /* 124880 80281240 254B02BC */ addiu $t3, $t2, 0x2bc /* 124884 80281244 448B9000 */ mtc1 $t3, $f18 /* 124888 80281248 0C0A0214 */ jal func_80280850 /* 12488C 8028124C 46809320 */ cvt.s.w $f12, $f18 /* 124890 80281250 8FAC0028 */ lw $t4, 0x28($sp) /* 124894 80281254 3C038028 */ lui $v1, %hi(D_80287540) # $v1, 0x8028 /* 124898 80281258 8C637540 */ lw $v1, %lo(D_80287540)($v1) /* 12489C 8028125C 448C2000 */ mtc1 $t4, $f4 /* 1248A0 80281260 3C018028 */ lui $at, %hi(D_80286B84) # $at, 0x8028 /* 1248A4 80281264 C4226B84 */ lwc1 $f2, %lo(D_80286B84)($at) /* 1248A8 80281268 468021A0 */ cvt.s.w $f6, $f4 /* 1248AC 8028126C 30620003 */ andi $v0, $v1, 3 /* 1248B0 80281270 00026880 */ sll $t5, $v0, 2 /* 1248B4 80281274 3C0E8028 */ lui $t6, %hi(D_80284E50) # 0x8028 /* 1248B8 80281278 AE020048 */ sw $v0, 0x48($s0) /* 1248BC 8028127C 01CD7021 */ addu $t6, $t6, $t5 /* 1248C0 80281280 46060200 */ add.s $f8, $f0, $f6 /* 1248C4 80281284 240F00FF */ li $t7, 255 /* 1248C8 80281288 2418FFEF */ li $t8, -17 /* 1248CC 8028128C 3C018028 */ lui $at, %hi(D_80287540) # $at, 0x8028 /* 1248D0 80281290 E6080018 */ swc1 $f8, 0x18($s0) /* 1248D4 80281294 8DCE4E50 */ lw $t6, %lo(D_80284E50)($t6) # 0x4e50($t6) /* 1248D8 80281298 AE0F003C */ sw $t7, 0x3c($s0) /* 1248DC 8028129C AE180040 */ sw $t8, 0x40($s0) /* 1248E0 802812A0 24630001 */ addiu $v1, $v1, 1 /* 1248E4 802812A4 E6020034 */ swc1 $f2, 0x34($s0) /* 1248E8 802812A8 E6020038 */ swc1 $f2, 0x38($s0) /* 1248EC 802812AC AE0E0030 */ sw $t6, 0x30($s0) /* 1248F0 802812B0 AC237540 */ sw $v1, %lo(D_80287540)($at) /* 1248F4 802812B4 8FBF001C */ lw $ra, 0x1c($sp) .L802812B8: /* 1248F8 802812B8 8FB00018 */ lw $s0, 0x18($sp) /* 1248FC 802812BC 27BD0020 */ addiu $sp, $sp, 0x20 /* 124900 802812C0 03E00008 */ jr $ra /* 124904 802812C4 00000000 */ nop glabel func_802812C8 /* 124908 802812C8 3C028016 */ lui $v0, %hi(D_801646F0) # $v0, 0x8016 /* 12490C 802812CC 244246F0 */ addiu $v0, %lo(D_801646F0) # addiu $v0, $v0, 0x46f0 /* 124910 802812D0 27BDFFD0 */ addiu $sp, $sp, -0x30 /* 124914 802812D4 C444000C */ lwc1 $f4, 0xc($v0) /* 124918 802812D8 C4460010 */ lwc1 $f6, 0x10($v0) /* 12491C 802812DC C4480014 */ lwc1 $f8, 0x14($v0) /* 124920 802812E0 C44A0018 */ lwc1 $f10, 0x18($v0) /* 124924 802812E4 C450001C */ lwc1 $f16, 0x1c($v0) /* 124928 802812E8 C4520020 */ lwc1 $f18, 0x20($v0) /* 12492C 802812EC AFBF002C */ sw $ra, 0x2c($sp) /* 124930 802812F0 3C048028 */ lui $a0, %hi(D_80287500) # $a0, 0x8028 /* 124934 802812F4 24847500 */ addiu $a0, %lo(D_80287500) # addiu $a0, $a0, 0x7500 /* 124938 802812F8 8C450000 */ lw $a1, ($v0) /* 12493C 802812FC 8C460004 */ lw $a2, 4($v0) /* 124940 80281300 8C470008 */ lw $a3, 8($v0) /* 124944 80281304 E7A40010 */ swc1 $f4, 0x10($sp) /* 124948 80281308 E7A60014 */ swc1 $f6, 0x14($sp) /* 12494C 8028130C E7A80018 */ swc1 $f8, 0x18($sp) /* 124950 80281310 E7AA001C */ swc1 $f10, 0x1c($sp) /* 124954 80281314 E7B00020 */ swc1 $f16, 0x20($sp) /* 124958 80281318 0C033CE4 */ jal guLookAtF /* 12495C 8028131C E7B20024 */ swc1 $f18, 0x24($sp) /* 124960 80281320 3C0E8028 */ lui $t6, %hi(D_802874F5) # $t6, 0x8028 /* 124964 80281324 81CE74F5 */ lb $t6, %lo(D_802874F5)($t6) /* 124968 80281328 3C028028 */ lui $v0, %hi(D_802874E0) # 0x8028 /* 12496C 8028132C 29C10003 */ slti $at, $t6, 3 /* 124970 80281330 10200028 */ beqz $at, .L802813D4 /* 124974 80281334 00000000 */ nop /* 124978 80281338 3C028028 */ lui $v0, %hi(D_802874E0) # $v0, 0x8028 /* 12497C 8028133C 8C4274E0 */ lw $v0, %lo(D_802874E0)($v0) /* 124980 80281340 2841012C */ slti $at, $v0, 0x12c /* 124984 80281344 10200011 */ beqz $at, .L8028138C /* 124988 80281348 3C018016 */ lui $at, %hi(D_80164700) # $at, 0x8016 /* 12498C 8028134C C4204700 */ lwc1 $f0, %lo(D_80164700)($at) /* 124990 80281350 3C018016 */ lui $at, %hi(D_801646F4) # $at, 0x8016 /* 124994 80281354 C42446F4 */ lwc1 $f4, %lo(D_801646F4)($at) /* 124998 80281358 3C013FC0 */ li $at, 0x3FC00000 # 1.500000 /* 12499C 8028135C 44814000 */ mtc1 $at, $f8 /* 1249A0 80281360 46040181 */ sub.s $f6, $f0, $f4 /* 1249A4 80281364 2404F1F2 */ li $a0, -3598 /* 1249A8 80281368 2406FDA8 */ li $a2, -600 /* 1249AC 8028136C 46083282 */ mul.s $f10, $f6, $f8 /* 1249B0 80281370 46005400 */ add.s $f16, $f10, $f0 /* 1249B4 80281374 4600848D */ trunc.w.s $f18, $f16 /* 1249B8 80281378 44059000 */ mfc1 $a1, $f18 /* 1249BC 8028137C 0C0A0463 */ jal func_8028118C /* 1249C0 80281380 00000000 */ nop /* 1249C4 80281384 3C028028 */ lui $v0, %hi(D_802874E0) # $v0, 0x8028 /* 1249C8 80281388 8C4274E0 */ lw $v0, %lo(D_802874E0)($v0) .L8028138C: /* 1249CC 8028138C 24010078 */ li $at, 120 /* 1249D0 80281390 14410023 */ bne $v0, $at, .L80281420 /* 1249D4 80281394 3C188028 */ lui $t8, %hi(D_802874C4) # $t8, 0x8028 /* 1249D8 80281398 871874C4 */ lh $t8, %lo(D_802874C4)($t8) /* 1249DC 8028139C 3C014352 */ li $at, 0x43520000 # 210.000000 /* 1249E0 802813A0 44814000 */ mtc1 $at, $f8 /* 1249E4 802813A4 44982000 */ mtc1 $t8, $f4 /* 1249E8 802813A8 2404F394 */ li $a0, -3180 /* 1249EC 802813AC 2406FE11 */ li $a2, -495 /* 1249F0 802813B0 468021A0 */ cvt.s.w $f6, $f4 /* 1249F4 802813B4 46083280 */ add.s $f10, $f6, $f8 /* 1249F8 802813B8 4600540D */ trunc.w.s $f16, $f10 /* 1249FC 802813BC 44058000 */ mfc1 $a1, $f16 /* 124A00 802813C0 0C0A0407 */ jal func_8028101C /* 124A04 802813C4 00000000 */ nop /* 124A08 802813C8 3C028028 */ lui $v0, %hi(D_802874E0) # $v0, 0x8028 /* 124A0C 802813CC 10000014 */ b .L80281420 /* 124A10 802813D0 8C4274E0 */ lw $v0, %lo(D_802874E0)($v0) .L802813D4: /* 124A14 802813D4 8C4274E0 */ lw $v0, %lo(D_802874E0)($v0) # 0x74e0($v0) /* 124A18 802813D8 24010002 */ li $at, 2 /* 124A1C 802813DC 3C088028 */ lui $t0, %hi(D_802874C4) # $t0, 0x8028 /* 124A20 802813E0 54410010 */ bnel $v0, $at, .L80281424 /* 124A24 802813E4 8FBF002C */ lw $ra, 0x2c($sp) /* 124A28 802813E8 850874C4 */ lh $t0, %lo(D_802874C4)($t0) /* 124A2C 802813EC 3C014352 */ li $at, 0x43520000 # 210.000000 /* 124A30 802813F0 44813000 */ mtc1 $at, $f6 /* 124A34 802813F4 44889000 */ mtc1 $t0, $f18 /* 124A38 802813F8 2404F394 */ li $a0, -3180 /* 124A3C 802813FC 2406FE11 */ li $a2, -495 /* 124A40 80281400 46809120 */ cvt.s.w $f4, $f18 /* 124A44 80281404 46062200 */ add.s $f8, $f4, $f6 /* 124A48 80281408 4600428D */ trunc.w.s $f10, $f8 /* 124A4C 8028140C 44055000 */ mfc1 $a1, $f10 /* 124A50 80281410 0C0A0407 */ jal func_8028101C /* 124A54 80281414 00000000 */ nop /* 124A58 80281418 3C028028 */ lui $v0, %hi(D_802874E0) # $v0, 0x8028 /* 124A5C 8028141C 8C4274E0 */ lw $v0, %lo(D_802874E0)($v0) .L80281420: /* 124A60 80281420 8FBF002C */ lw $ra, 0x2c($sp) .L80281424: /* 124A64 80281424 244A0001 */ addiu $t2, $v0, 1 /* 124A68 80281428 3C018028 */ lui $at, %hi(D_802874E0) # $at, 0x8028 /* 124A6C 8028142C AC2A74E0 */ sw $t2, %lo(D_802874E0)($at) /* 124A70 80281430 03E00008 */ jr $ra /* 124A74 80281434 27BD0030 */ addiu $sp, $sp, 0x30 glabel func_80281438 /* 124A78 80281438 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 124A7C 8028143C AFBF0034 */ sw $ra, 0x34($sp) /* 124A80 80281440 AFB60030 */ sw $s6, 0x30($sp) /* 124A84 80281444 AFB5002C */ sw $s5, 0x2c($sp) /* 124A88 80281448 AFB40028 */ sw $s4, 0x28($sp) /* 124A8C 8028144C AFB30024 */ sw $s3, 0x24($sp) /* 124A90 80281450 AFB20020 */ sw $s2, 0x20($sp) /* 124A94 80281454 AFB1001C */ sw $s1, 0x1c($sp) /* 124A98 80281458 0C0A04B2 */ jal func_802812C8 /* 124A9C 8028145C AFB00018 */ sw $s0, 0x18($sp) /* 124AA0 80281460 3C018028 */ lui $at, %hi(D_802874D0) # $at, 0x8028 /* 124AA4 80281464 3C158028 */ lui $s5, %hi(D_802874F8) # $s5, 0x8028 /* 124AA8 80281468 3C138028 */ lui $s3, %hi(D_80284E94) # $s3, 0x8028 /* 124AAC 8028146C A42074D0 */ sh $zero, %lo(D_802874D0)($at) /* 124AB0 80281470 26734E94 */ addiu $s3, %lo(D_80284E94) # addiu $s3, $s3, 0x4e94 /* 124AB4 80281474 26B574F8 */ addiu $s5, %lo(D_802874F8) # addiu $s5, $s5, 0x74f8 /* 124AB8 80281478 00009025 */ move $s2, $zero /* 124ABC 8028147C 24160003 */ li $s6, 3 /* 124AC0 80281480 241400C8 */ li $s4, 200 /* 124AC4 80281484 8EB00000 */ lw $s0, ($s5) .L80281488: /* 124AC8 80281488 00008825 */ move $s1, $zero .L8028148C: /* 124ACC 8028148C 8E0E0000 */ lw $t6, ($s0) /* 124AD0 80281490 31CF0001 */ andi $t7, $t6, 1 /* 124AD4 80281494 51E0000E */ beql $t7, $zero, .L802814D0 /* 124AD8 80281498 26310001 */ addiu $s1, $s1, 1 /* 124ADC 8028149C 86180004 */ lh $t8, 4($s0) /* 124AE0 802814A0 00124880 */ sll $t1, $s2, 2 /* 124AE4 802814A4 0018C880 */ sll $t9, $t8, 2 /* 124AE8 802814A8 0338C823 */ subu $t9, $t9, $t8 /* 124AEC 802814AC 0019C880 */ sll $t9, $t9, 2 /* 124AF0 802814B0 02794021 */ addu $t0, $s3, $t9 /* 124AF4 802814B4 01095021 */ addu $t2, $t0, $t1 /* 124AF8 802814B8 8D420000 */ lw $v0, ($t2) /* 124AFC 802814BC 50400004 */ beql $v0, $zero, .L802814D0 /* 124B00 802814C0 26310001 */ addiu $s1, $s1, 1 /* 124B04 802814C4 0040F809 */ jalr $v0 /* 124B08 802814C8 02002025 */ move $a0, $s0 /* 124B0C 802814CC 26310001 */ addiu $s1, $s1, 1 .L802814D0: /* 124B10 802814D0 1634FFEE */ bne $s1, $s4, .L8028148C /* 124B14 802814D4 2610004C */ addiu $s0, $s0, 0x4c /* 124B18 802814D8 26520001 */ addiu $s2, $s2, 1 /* 124B1C 802814DC 5656FFEA */ bnel $s2, $s6, .L80281488 /* 124B20 802814E0 8EB00000 */ lw $s0, ($s5) /* 124B24 802814E4 8FBF0034 */ lw $ra, 0x34($sp) /* 124B28 802814E8 8FB00018 */ lw $s0, 0x18($sp) /* 124B2C 802814EC 8FB1001C */ lw $s1, 0x1c($sp) /* 124B30 802814F0 8FB20020 */ lw $s2, 0x20($sp) /* 124B34 802814F4 8FB30024 */ lw $s3, 0x24($sp) /* 124B38 802814F8 8FB40028 */ lw $s4, 0x28($sp) /* 124B3C 802814FC 8FB5002C */ lw $s5, 0x2c($sp) /* 124B40 80281500 8FB60030 */ lw $s6, 0x30($sp) /* 124B44 80281504 03E00008 */ jr $ra /* 124B48 80281508 27BD0038 */ addiu $sp, $sp, 0x38 glabel func_8028150C /* 124B4C 8028150C 3C0E8015 */ lui $t6, %hi(gDisplayListHead) # $t6, 0x8015 /* 124B50 80281510 8DCE0298 */ lw $t6, %lo(gDisplayListHead)($t6) /* 124B54 80281514 3C018028 */ lui $at, %hi(D_802874D4) # 0x8028 /* 124B58 80281518 03E00008 */ jr $ra /* 124B5C 8028151C AC2E74D4 */ sw $t6, %lo(D_802874D4)($at) # 0x74d4($at) glabel func_80281520 /* 124B60 80281520 03E00008 */ jr $ra /* 124B64 80281524 00000000 */ nop glabel func_80281528 /* 124B68 80281528 03E00008 */ jr $ra /* 124B6C 8028152C 00000000 */ nop glabel func_80281530 /* 124B70 80281530 03E00008 */ jr $ra /* 124B74 80281534 00000000 */ nop glabel func_80281538 /* 124B78 80281538 03E00008 */ jr $ra /* 124B7C 8028153C 00000000 */ nop glabel func_80281540 /* 124B80 80281540 03E00008 */ jr $ra /* 124B84 80281544 00000000 */ nop glabel func_80281548 /* 124B88 80281548 3C018015 */ lui $at, %hi(D_80150112) # $at, 0x8015 /* 124B8C 8028154C 27BDFFE8 */ addiu $sp, $sp, -0x18 /* 124B90 80281550 A4200112 */ sh $zero, %lo(D_80150112)($at) /* 124B94 80281554 AFBF0014 */ sw $ra, 0x14($sp) /* 124B98 80281558 3C018028 */ lui $at, %hi(D_802874FC) # $at, 0x8028 /* 124B9C 8028155C 0C0A0584 */ jal func_80281610 /* 124BA0 80281560 AC2074FC */ sw $zero, %lo(D_802874FC)($at) /* 124BA4 80281564 0C00A3DC */ jal func_80028F70 /* 124BA8 80281568 00000000 */ nop /* 124BAC 8028156C 0C0089D1 */ jal func_80022744 /* 124BB0 80281570 00000000 */ nop /* 124BB4 80281574 0C0166B2 */ jal func_80059AC8 /* 124BB8 80281578 00000000 */ nop /* 124BBC 8028157C 0C0166B2 */ jal func_80059AC8 /* 124BC0 80281580 00000000 */ nop /* 124BC4 80281584 0C01681C */ jal func_8005A070 /* 124BC8 80281588 00000000 */ nop /* 124BCC 8028158C 3C0E8028 */ lui $t6, %hi(D_802874F4) # $t6, 0x8028 /* 124BD0 80281590 81CE74F4 */ lb $t6, %lo(D_802874F4)($t6) /* 124BD4 80281594 11C00005 */ beqz $t6, .L802815AC /* 124BD8 80281598 00000000 */ nop /* 124BDC 8028159C 0C007053 */ jal func_8001C14C /* 124BE0 802815A0 00000000 */ nop /* 124BE4 802815A4 0C0025F8 */ jal func_800097E0 /* 124BE8 802815A8 00000000 */ nop .L802815AC: /* 124BEC 802815AC 0C0A0740 */ jal func_80281D00 /* 124BF0 802815B0 00000000 */ nop /* 124BF4 802815B4 0C0A0550 */ jal func_80281540 /* 124BF8 802815B8 00000000 */ nop /* 124BFC 802815BC 3C058015 */ lui $a1, %hi(gDisplayListHead) # $a1, 0x8015 /* 124C00 802815C0 24A50298 */ addiu $a1, %lo(gDisplayListHead) # addiu $a1, $a1, 0x298 /* 124C04 802815C4 8CA20000 */ lw $v0, ($a1) /* 124C08 802815C8 3C18E900 */ lui $t8, 0xe900 /* 124C0C 802815CC 3C08B800 */ lui $t0, 0xb800 /* 124C10 802815D0 244F0008 */ addiu $t7, $v0, 8 /* 124C14 802815D4 ACAF0000 */ sw $t7, ($a1) /* 124C18 802815D8 AC400004 */ sw $zero, 4($v0) /* 124C1C 802815DC AC580000 */ sw $t8, ($v0) /* 124C20 802815E0 8CA20000 */ lw $v0, ($a1) /* 124C24 802815E4 24590008 */ addiu $t9, $v0, 8 /* 124C28 802815E8 ACB90000 */ sw $t9, ($a1) /* 124C2C 802815EC AC400004 */ sw $zero, 4($v0) /* 124C30 802815F0 AC480000 */ sw $t0, ($v0) /* 124C34 802815F4 8FBF0014 */ lw $ra, 0x14($sp) /* 124C38 802815F8 27BD0018 */ addiu $sp, $sp, 0x18 /* 124C3C 802815FC 03E00008 */ jr $ra /* 124C40 80281600 00000000 */ nop /* 124C44 80281604 00000000 */ nop /* 124C48 80281608 00000000 */ nop /* 124C4C 8028160C 00000000 */ nop