.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_8003E46C /* 1986C 8003E46C 27BDFFD8 */ addiu $sp, $sp, -0x28 /* 19870 8003E470 AFB00010 */ sw $s0, 0x10($sp) /* 19874 8003E474 0080802D */ daddu $s0, $a0, $zero /* 19878 8003E478 AFBF0020 */ sw $ra, 0x20($sp) /* 1987C 8003E47C AFB3001C */ sw $s3, 0x1c($sp) /* 19880 8003E480 AFB20018 */ sw $s2, 0x18($sp) /* 19884 8003E484 AFB10014 */ sw $s1, 0x14($sp) /* 19888 8003E488 82020004 */ lb $v0, 4($s0) /* 1988C 8003E48C 00021080 */ sll $v0, $v0, 2 /* 19890 8003E490 3C13800B */ lui $s3, %hi(D_800B0F18) /* 19894 8003E494 02629821 */ addu $s3, $s3, $v0 /* 19898 8003E498 8E730F18 */ lw $s3, %lo(D_800B0F18)($s3) /* 1989C 8003E49C 8E640000 */ lw $a0, ($s3) /* 198A0 8003E4A0 3C12800B */ lui $s2, %hi(D_800B0EF0) /* 198A4 8003E4A4 26520EF0 */ addiu $s2, $s2, %lo(D_800B0EF0) /* 198A8 8003E4A8 18800009 */ blez $a0, .L8003E4D0 /* 198AC 8003E4AC 0000882D */ daddu $s1, $zero, $zero /* 198B0 8003E4B0 0260182D */ daddu $v1, $s3, $zero .L8003E4B4: /* 198B4 8003E4B4 8C620004 */ lw $v0, 4($v1) /* 198B8 8003E4B8 10500005 */ beq $v0, $s0, .L8003E4D0 /* 198BC 8003E4BC 00000000 */ nop /* 198C0 8003E4C0 26310001 */ addiu $s1, $s1, 1 /* 198C4 8003E4C4 0224102A */ slt $v0, $s1, $a0 /* 198C8 8003E4C8 1440FFFA */ bnez $v0, .L8003E4B4 /* 198CC 8003E4CC 24630004 */ addiu $v1, $v1, 4 .L8003E4D0: /* 198D0 8003E4D0 8E020034 */ lw $v0, 0x34($s0) /* 198D4 8003E4D4 10400003 */ beqz $v0, .L8003E4E4 /* 198D8 8003E4D8 00000000 */ nop /* 198DC 8003E4DC 0C0B102B */ jal func_802C40AC /* 198E0 8003E4E0 8E04004C */ lw $a0, 0x4c($s0) .L8003E4E4: /* 198E4 8003E4E4 8E020038 */ lw $v0, 0x38($s0) /* 198E8 8003E4E8 10400003 */ beqz $v0, .L8003E4F8 /* 198EC 8003E4EC 00000000 */ nop /* 198F0 8003E4F0 0C0B102B */ jal func_802C40AC /* 198F4 8003E4F4 8E040050 */ lw $a0, 0x50($s0) .L8003E4F8: /* 198F8 8003E4F8 8E02003C */ lw $v0, 0x3c($s0) /* 198FC 8003E4FC 10400003 */ beqz $v0, .L8003E50C /* 19900 8003E500 00000000 */ nop /* 19904 8003E504 0C0B102B */ jal func_802C40AC /* 19908 8003E508 8E040054 */ lw $a0, 0x54($s0) .L8003E50C: /* 1990C 8003E50C 8E020040 */ lw $v0, 0x40($s0) /* 19910 8003E510 10400003 */ beqz $v0, .L8003E520 /* 19914 8003E514 00000000 */ nop /* 19918 8003E518 0C0B102B */ jal func_802C40AC /* 1991C 8003E51C 8E040058 */ lw $a0, 0x58($s0) .L8003E520: /* 19920 8003E520 8E020044 */ lw $v0, 0x44($s0) /* 19924 8003E524 10400003 */ beqz $v0, .L8003E534 /* 19928 8003E528 00000000 */ nop /* 1992C 8003E52C 0C0B102B */ jal func_802C40AC /* 19930 8003E530 8E04005C */ lw $a0, 0x5c($s0) .L8003E534: /* 19934 8003E534 8E020048 */ lw $v0, 0x48($s0) /* 19938 8003E538 10400003 */ beqz $v0, .L8003E548 /* 1993C 8003E53C 00000000 */ nop /* 19940 8003E540 0C0B102B */ jal func_802C40AC /* 19944 8003E544 8E040060 */ lw $a0, 0x60($s0) .L8003E548: /* 19948 8003E548 86040008 */ lh $a0, 8($s0) /* 1994C 8003E54C AE000020 */ sw $zero, 0x20($s0) /* 19950 8003E550 AE000024 */ sw $zero, 0x24($s0) /* 19954 8003E554 AE000028 */ sw $zero, 0x28($s0) /* 19958 8003E558 AE00002C */ sw $zero, 0x2c($s0) /* 1995C 8003E55C 0C00E9EB */ jal func_8003A7AC /* 19960 8003E560 AE000030 */ sw $zero, 0x30($s0) /* 19964 8003E564 0C00E1A3 */ jal func_8003868C /* 19968 8003E568 0040202D */ daddu $a0, $v0, $zero /* 1996C 8003E56C 8E040064 */ lw $a0, 0x64($s0) /* 19970 8003E570 50800004 */ beql $a0, $zero, .L8003E584 /* 19974 8003E574 0000202D */ daddu $a0, $zero, $zero /* 19978 8003E578 0C00AB3B */ jal func_8002ACEC /* 1997C 8003E57C 00000000 */ nop /* 19980 8003E580 0000202D */ daddu $a0, $zero, $zero .L8003E584: /* 19984 8003E584 0260182D */ daddu $v1, $s3, $zero .L8003E588: /* 19988 8003E588 8C620004 */ lw $v0, 4($v1) /* 1998C 8003E58C 50500001 */ beql $v0, $s0, .L8003E594 /* 19990 8003E590 AC600004 */ sw $zero, 4($v1) .L8003E594: /* 19994 8003E594 24840001 */ addiu $a0, $a0, 1 /* 19998 8003E598 28820010 */ slti $v0, $a0, 0x10 /* 1999C 8003E59C 1440FFFA */ bnez $v0, .L8003E588 /* 199A0 8003E5A0 24630004 */ addiu $v1, $v1, 4 /* 199A4 8003E5A4 8E030000 */ lw $v1, ($s0) /* 199A8 8003E5A8 30620004 */ andi $v0, $v1, 4 /* 199AC 8003E5AC 1440000E */ bnez $v0, .L8003E5E8 /* 199B0 8003E5B0 30620008 */ andi $v0, $v1, 8 /* 199B4 8003E5B4 10400004 */ beqz $v0, .L8003E5C8 /* 199B8 8003E5B8 30620001 */ andi $v0, $v1, 1 /* 199BC 8003E5BC 8E42008C */ lw $v0, 0x8c($s2) /* 199C0 8003E5C0 16020009 */ bne $s0, $v0, .L8003E5E8 /* 199C4 8003E5C4 30620001 */ andi $v0, $v1, 1 .L8003E5C8: /* 199C8 8003E5C8 14400007 */ bnez $v0, .L8003E5E8 /* 199CC 8003E5CC 30620010 */ andi $v0, $v1, 0x10 /* 199D0 8003E5D0 14400005 */ bnez $v0, .L8003E5E8 /* 199D4 8003E5D4 00000000 */ nop /* 199D8 8003E5D8 86650048 */ lh $a1, 0x48($s3) /* 199DC 8003E5DC 82440020 */ lb $a0, 0x20($s2) /* 199E0 8003E5E0 0C00F7E8 */ jal func_8003DFA0 /* 199E4 8003E5E4 00B12821 */ addu $a1, $a1, $s1 .L8003E5E8: /* 199E8 8003E5E8 0C00AB3B */ jal func_8002ACEC /* 199EC 8003E5EC 0200202D */ daddu $a0, $s0, $zero /* 199F0 8003E5F0 8FBF0020 */ lw $ra, 0x20($sp) /* 199F4 8003E5F4 8FB3001C */ lw $s3, 0x1c($sp) /* 199F8 8003E5F8 8FB20018 */ lw $s2, 0x18($sp) /* 199FC 8003E5FC 8FB10014 */ lw $s1, 0x14($sp) /* 19A00 8003E600 8FB00010 */ lw $s0, 0x10($sp) /* 19A04 8003E604 03E00008 */ jr $ra /* 19A08 8003E608 27BD0028 */ addiu $sp, $sp, 0x28