.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_E011C1C4 /* 406D04 E011C1C4 27BDFF40 */ addiu $sp, $sp, -0xc0 /* 406D08 E011C1C8 0080302D */ daddu $a2, $a0, $zero /* 406D0C E011C1CC 3C07DB06 */ lui $a3, 0xdb06 /* 406D10 E011C1D0 34E70024 */ ori $a3, $a3, 0x24 /* 406D14 E011C1D4 27A40018 */ addiu $a0, $sp, 0x18 /* 406D18 E011C1D8 AFB200A0 */ sw $s2, 0xa0($sp) /* 406D1C E011C1DC 3C12800A */ lui $s2, %hi(gMasterGfxPos) /* 406D20 E011C1E0 2652A66C */ addiu $s2, $s2, %lo(gMasterGfxPos) /* 406D24 E011C1E4 AFB500AC */ sw $s5, 0xac($sp) /* 406D28 E011C1E8 AFBF00B4 */ sw $ra, 0xb4($sp) /* 406D2C E011C1EC AFB600B0 */ sw $s6, 0xb0($sp) /* 406D30 E011C1F0 AFB400A8 */ sw $s4, 0xa8($sp) /* 406D34 E011C1F4 AFB300A4 */ sw $s3, 0xa4($sp) /* 406D38 E011C1F8 AFB1009C */ sw $s1, 0x9c($sp) /* 406D3C E011C1FC AFB00098 */ sw $s0, 0x98($sp) /* 406D40 E011C200 F7B400B8 */ sdc1 $f20, 0xb8($sp) /* 406D44 E011C204 8E450000 */ lw $a1, ($s2) /* 406D48 E011C208 8CD4000C */ lw $s4, 0xc($a2) /* 406D4C E011C20C 00A0182D */ daddu $v1, $a1, $zero /* 406D50 E011C210 24A50008 */ addiu $a1, $a1, 8 /* 406D54 E011C214 AE450000 */ sw $a1, ($s2) /* 406D58 E011C218 8E960014 */ lw $s6, 0x14($s4) /* 406D5C E011C21C 8E910018 */ lw $s1, 0x18($s4) /* 406D60 E011C220 3C02E700 */ lui $v0, 0xe700 /* 406D64 E011C224 AC620000 */ sw $v0, ($v1) /* 406D68 E011C228 AC600004 */ sw $zero, 4($v1) /* 406D6C E011C22C ACA70000 */ sw $a3, ($a1) /* 406D70 E011C230 8CC30010 */ lw $v1, 0x10($a2) /* 406D74 E011C234 24A20008 */ addiu $v0, $a1, 8 /* 406D78 E011C238 AE420000 */ sw $v0, ($s2) /* 406D7C E011C23C 8C62001C */ lw $v0, 0x1c($v1) /* 406D80 E011C240 3C038000 */ lui $v1, 0x8000 /* 406D84 E011C244 00431021 */ addu $v0, $v0, $v1 /* 406D88 E011C248 ACA20004 */ sw $v0, 4($a1) /* 406D8C E011C24C 8E850004 */ lw $a1, 4($s4) /* 406D90 E011C250 8E860008 */ lw $a2, 8($s4) /* 406D94 E011C254 8E87000C */ lw $a3, 0xc($s4) /* 406D98 E011C258 4480A000 */ mtc1 $zero, $f20 /* 406D9C E011C25C 0C080108 */ jal func_E0200420 /* 406DA0 E011C260 3C150001 */ lui $s5, 1 /* 406DA4 E011C264 27B00058 */ addiu $s0, $sp, 0x58 /* 406DA8 E011C268 3C038007 */ lui $v1, %hi(gCurrentCameraID) /* 406DAC E011C26C 8C637410 */ lw $v1, %lo(gCurrentCameraID)($v1) /* 406DB0 E011C270 4406A000 */ mfc1 $a2, $f20 /* 406DB4 E011C274 00031080 */ sll $v0, $v1, 2 /* 406DB8 E011C278 00431021 */ addu $v0, $v0, $v1 /* 406DBC E011C27C 00021080 */ sll $v0, $v0, 2 /* 406DC0 E011C280 00431023 */ subu $v0, $v0, $v1 /* 406DC4 E011C284 000218C0 */ sll $v1, $v0, 3 /* 406DC8 E011C288 00431021 */ addu $v0, $v0, $v1 /* 406DCC E011C28C 000210C0 */ sll $v0, $v0, 3 /* 406DD0 E011C290 3C01800B */ lui $at, %hi(D_800B1DEC) /* 406DD4 E011C294 00220821 */ addu $at, $at, $v0 /* 406DD8 E011C298 C4201DEC */ lwc1 $f0, %lo(D_800B1DEC)($at) /* 406DDC E011C29C 3C073F80 */ lui $a3, 0x3f80 /* 406DE0 E011C2A0 46000007 */ neg.s $f0, $f0 /* 406DE4 E011C2A4 44050000 */ mfc1 $a1, $f0 /* 406DE8 E011C2A8 0200202D */ daddu $a0, $s0, $zero /* 406DEC E011C2AC 0C080104 */ jal func_E0200410 /* 406DF0 E011C2B0 E7B40010 */ swc1 $f20, 0x10($sp) /* 406DF4 E011C2B4 0200202D */ daddu $a0, $s0, $zero /* 406DF8 E011C2B8 27A50018 */ addiu $a1, $sp, 0x18 /* 406DFC E011C2BC 0C080114 */ jal func_E0200450 /* 406E00 E011C2C0 00A0302D */ daddu $a2, $a1, $zero /* 406E04 E011C2C4 3C0542B3 */ lui $a1, 0x42b3 /* 406E08 E011C2C8 4406A000 */ mfc1 $a2, $f20 /* 406E0C E011C2CC 3C074000 */ lui $a3, 0x4000 /* 406E10 E011C2D0 0C080108 */ jal func_E0200420 /* 406E14 E011C2D4 0200202D */ daddu $a0, $s0, $zero /* 406E18 E011C2D8 0200202D */ daddu $a0, $s0, $zero /* 406E1C E011C2DC 27A50018 */ addiu $a1, $sp, 0x18 /* 406E20 E011C2E0 0C080114 */ jal func_E0200450 /* 406E24 E011C2E4 00A0302D */ daddu $a2, $a1, $zero /* 406E28 E011C2E8 3C013F36 */ lui $at, 0x3f36 /* 406E2C E011C2EC 3421DB6E */ ori $at, $at, 0xdb6e /* 406E30 E011C2F0 44810000 */ mtc1 $at, $f0 /* 406E34 E011C2F4 36B51630 */ ori $s5, $s5, 0x1630 /* 406E38 E011C2F8 44050000 */ mfc1 $a1, $f0 /* 406E3C E011C2FC 0200202D */ daddu $a0, $s0, $zero /* 406E40 E011C300 00A0302D */ daddu $a2, $a1, $zero /* 406E44 E011C304 0C080110 */ jal func_E0200440 /* 406E48 E011C308 00A0382D */ daddu $a3, $a1, $zero /* 406E4C E011C30C 0200202D */ daddu $a0, $s0, $zero /* 406E50 E011C310 27A50018 */ addiu $a1, $sp, 0x18 /* 406E54 E011C314 0C080114 */ jal func_E0200450 /* 406E58 E011C318 00A0302D */ daddu $a2, $a1, $zero /* 406E5C E011C31C 27A40018 */ addiu $a0, $sp, 0x18 /* 406E60 E011C320 3C108007 */ lui $s0, %hi(gMatrixListPos) /* 406E64 E011C324 261041F0 */ addiu $s0, $s0, %lo(gMatrixListPos) /* 406E68 E011C328 3C13800A */ lui $s3, %hi(gDisplayContext) /* 406E6C E011C32C 2673A674 */ addiu $s3, $s3, %lo(gDisplayContext) /* 406E70 E011C330 96050000 */ lhu $a1, ($s0) /* 406E74 E011C334 8E620000 */ lw $v0, ($s3) /* 406E78 E011C338 00052980 */ sll $a1, $a1, 6 /* 406E7C E011C33C 00B52821 */ addu $a1, $a1, $s5 /* 406E80 E011C340 0C080118 */ jal func_E0200460 /* 406E84 E011C344 00452821 */ addu $a1, $v0, $a1 /* 406E88 E011C348 3C03DA38 */ lui $v1, 0xda38 /* 406E8C E011C34C 34630002 */ ori $v1, $v1, 2 /* 406E90 E011C350 323100FF */ andi $s1, $s1, 0xff /* 406E94 E011C354 8E440000 */ lw $a0, ($s2) /* 406E98 E011C358 96020000 */ lhu $v0, ($s0) /* 406E9C E011C35C 0080282D */ daddu $a1, $a0, $zero /* 406EA0 E011C360 24840008 */ addiu $a0, $a0, 8 /* 406EA4 E011C364 AE440000 */ sw $a0, ($s2) /* 406EA8 E011C368 ACA30000 */ sw $v1, ($a1) /* 406EAC E011C36C 24430001 */ addiu $v1, $v0, 1 /* 406EB0 E011C370 3042FFFF */ andi $v0, $v0, 0xffff /* 406EB4 E011C374 00021180 */ sll $v0, $v0, 6 /* 406EB8 E011C378 A6030000 */ sh $v1, ($s0) /* 406EBC E011C37C 8E630000 */ lw $v1, ($s3) /* 406EC0 E011C380 00551021 */ addu $v0, $v0, $s5 /* 406EC4 E011C384 00621821 */ addu $v1, $v1, $v0 /* 406EC8 E011C388 24820008 */ addiu $v0, $a0, 8 /* 406ECC E011C38C ACA30004 */ sw $v1, 4($a1) /* 406ED0 E011C390 AE420000 */ sw $v0, ($s2) /* 406ED4 E011C394 3C02FA00 */ lui $v0, 0xfa00 /* 406ED8 E011C398 AC820000 */ sw $v0, ($a0) /* 406EDC E011C39C 00111600 */ sll $v0, $s1, 0x18 /* 406EE0 E011C3A0 00111C00 */ sll $v1, $s1, 0x10 /* 406EE4 E011C3A4 00431025 */ or $v0, $v0, $v1 /* 406EE8 E011C3A8 00118A00 */ sll $s1, $s1, 8 /* 406EEC E011C3AC 00511025 */ or $v0, $v0, $s1 /* 406EF0 E011C3B0 344200FF */ ori $v0, $v0, 0xff /* 406EF4 E011C3B4 AC820004 */ sw $v0, 4($a0) /* 406EF8 E011C3B8 3C02DE00 */ lui $v0, 0xde00 /* 406EFC E011C3BC AC820008 */ sw $v0, 8($a0) /* 406F00 E011C3C0 3C03E012 */ lui $v1, %hi(D_E011C514) /* 406F04 E011C3C4 8C63C514 */ lw $v1, %lo(D_E011C514)($v1) /* 406F08 E011C3C8 24820010 */ addiu $v0, $a0, 0x10 /* 406F0C E011C3CC AE420000 */ sw $v0, ($s2) /* 406F10 E011C3D0 AC83000C */ sw $v1, 0xc($a0) /* 406F14 E011C3D4 8E83001C */ lw $v1, 0x1c($s4) /* 406F18 E011C3D8 24020001 */ addiu $v0, $zero, 1 /* 406F1C E011C3DC 10620007 */ beq $v1, $v0, .LE011C3FC /* 406F20 E011C3E0 28620002 */ slti $v0, $v1, 2 /* 406F24 E011C3E4 10400015 */ beqz $v0, .LE011C43C /* 406F28 E011C3E8 00000000 */ nop /* 406F2C E011C3EC 14600013 */ bnez $v1, .LE011C43C /* 406F30 E011C3F0 0000282D */ daddu $a1, $zero, $zero /* 406F34 E011C3F4 0804711B */ j .LE011C46C /* 406F38 E011C3F8 3C07D838 */ lui $a3, 0xd838 .LE011C3FC: /* 406F3C E011C3FC 3C026666 */ lui $v0, 0x6666 /* 406F40 E011C400 34426667 */ ori $v0, $v0, 0x6667 /* 406F44 E011C404 02C20018 */ mult $s6, $v0 /* 406F48 E011C408 001617C3 */ sra $v0, $s6, 0x1f /* 406F4C E011C40C 00004010 */ mfhi $t0 /* 406F50 E011C410 00081843 */ sra $v1, $t0, 1 /* 406F54 E011C414 00621823 */ subu $v1, $v1, $v0 /* 406F58 E011C418 00031080 */ sll $v0, $v1, 2 /* 406F5C E011C41C 00431021 */ addu $v0, $v0, $v1 /* 406F60 E011C420 02C21023 */ subu $v0, $s6, $v0 /* 406F64 E011C424 00021080 */ sll $v0, $v0, 2 /* 406F68 E011C428 3C05E012 */ lui $a1, %hi(D_E011C518) /* 406F6C E011C42C 00A22821 */ addu $a1, $a1, $v0 /* 406F70 E011C430 8CA5C518 */ lw $a1, %lo(D_E011C518)($a1) /* 406F74 E011C434 0804711B */ j .LE011C46C /* 406F78 E011C438 3C07D838 */ lui $a3, 0xd838 .LE011C43C: /* 406F7C E011C43C 06C10002 */ bgez $s6, .LE011C448 /* 406F80 E011C440 02C0102D */ daddu $v0, $s6, $zero /* 406F84 E011C444 26C20003 */ addiu $v0, $s6, 3 .LE011C448: /* 406F88 E011C448 00021083 */ sra $v0, $v0, 2 /* 406F8C E011C44C 00021080 */ sll $v0, $v0, 2 /* 406F90 E011C450 02C21023 */ subu $v0, $s6, $v0 /* 406F94 E011C454 00021080 */ sll $v0, $v0, 2 /* 406F98 E011C458 3C03E012 */ lui $v1, %hi(D_E011C52C) /* 406F9C E011C45C 2463C52C */ addiu $v1, $v1, %lo(D_E011C52C) /* 406FA0 E011C460 00431021 */ addu $v0, $v0, $v1 /* 406FA4 E011C464 8C450000 */ lw $a1, ($v0) /* 406FA8 E011C468 3C07D838 */ lui $a3, 0xd838 .LE011C46C: /* 406FAC E011C46C 3C04800A */ lui $a0, %hi(gMasterGfxPos) /* 406FB0 E011C470 2484A66C */ addiu $a0, $a0, %lo(gMasterGfxPos) /* 406FB4 E011C474 34E70002 */ ori $a3, $a3, 2 /* 406FB8 E011C478 8C830000 */ lw $v1, ($a0) /* 406FBC E011C47C 3C02DE00 */ lui $v0, 0xde00 /* 406FC0 E011C480 0060302D */ daddu $a2, $v1, $zero /* 406FC4 E011C484 24630008 */ addiu $v1, $v1, 8 /* 406FC8 E011C488 AC830000 */ sw $v1, ($a0) /* 406FCC E011C48C ACC20000 */ sw $v0, ($a2) /* 406FD0 E011C490 24620008 */ addiu $v0, $v1, 8 /* 406FD4 E011C494 AC820000 */ sw $v0, ($a0) /* 406FD8 E011C498 00051080 */ sll $v0, $a1, 2 /* 406FDC E011C49C 3C05E012 */ lui $a1, %hi(D_E011C500) /* 406FE0 E011C4A0 00A22821 */ addu $a1, $a1, $v0 /* 406FE4 E011C4A4 8CA5C500 */ lw $a1, %lo(D_E011C500)($a1) /* 406FE8 E011C4A8 24620010 */ addiu $v0, $v1, 0x10 /* 406FEC E011C4AC AC820000 */ sw $v0, ($a0) /* 406FF0 E011C4B0 24020040 */ addiu $v0, $zero, 0x40 /* 406FF4 E011C4B4 ACC50004 */ sw $a1, 4($a2) /* 406FF8 E011C4B8 AC620004 */ sw $v0, 4($v1) /* 406FFC E011C4BC 3C02E700 */ lui $v0, 0xe700 /* 407000 E011C4C0 AC670000 */ sw $a3, ($v1) /* 407004 E011C4C4 AC620008 */ sw $v0, 8($v1) /* 407008 E011C4C8 AC60000C */ sw $zero, 0xc($v1) /* 40700C E011C4CC 8FBF00B4 */ lw $ra, 0xb4($sp) /* 407010 E011C4D0 8FB600B0 */ lw $s6, 0xb0($sp) /* 407014 E011C4D4 8FB500AC */ lw $s5, 0xac($sp) /* 407018 E011C4D8 8FB400A8 */ lw $s4, 0xa8($sp) /* 40701C E011C4DC 8FB300A4 */ lw $s3, 0xa4($sp) /* 407020 E011C4E0 8FB200A0 */ lw $s2, 0xa0($sp) /* 407024 E011C4E4 8FB1009C */ lw $s1, 0x9c($sp) /* 407028 E011C4E8 8FB00098 */ lw $s0, 0x98($sp) /* 40702C E011C4EC D7B400B8 */ ldc1 $f20, 0xb8($sp) /* 407030 E011C4F0 03E00008 */ jr $ra /* 407034 E011C4F4 27BD00C0 */ addiu $sp, $sp, 0xc0 /* 407038 E011C4F8 00000000 */ nop /* 40703C E011C4FC 00000000 */ nop