papermario/papermario/asm/CODE_e79b0_len_2000.s

2340 lines
109 KiB
ArmAsm

.section .text002C3000, "ax"
func_002C3000:
/* 0E79B0 002C3000 27BDFFF8 */ addiu $sp, $sp, -8
/* 0E79B4 002C3004 0000682D */ move $t5, $zero
/* 0E79B8 002C3008 01A0482D */ move $t1, $t5
/* 0E79BC 002C300C 3C05802E */ lui $a1, %hi(D_802DAA98) # $a1, 0x802e
/* 0E79C0 002C3010 24A5AA98 */ addiu $a1, %lo(D_802DAA98) # addiu $a1, $a1, -0x5568
/* 0E79C4 002C3014 3C06802E */ lui $a2, %hi(D_802DA890) # $a2, 0x802e
/* 0E79C8 002C3018 8CC6A890 */ lw $a2, %lo(D_802DA890)($a2)
/* 0E79CC 002C301C 3C04802E */ lui $a0, %hi(D_802DA898) # $a0, 0x802e
/* 0E79D0 002C3020 2484A898 */ addiu $a0, %lo(D_802DA898) # addiu $a0, $a0, -0x5768
/* 0E79D4 002C3024 AFB00000 */ sw $s0, ($sp)
.L002C3028:
/* 0E79D8 002C3028 8CC30000 */ lw $v1, ($a2)
/* 0E79DC 002C302C 5060000B */ beql $v1, $zero, .L002C305C
/* 0E79E0 002C3030 25290001 */ addiu $t1, $t1, 1
/* 0E79E4 002C3034 90620000 */ lbu $v0, ($v1)
/* 0E79E8 002C3038 50400008 */ beql $v0, $zero, .L002C305C
/* 0E79EC 002C303C 25290001 */ addiu $t1, $t1, 1
/* 0E79F0 002C3040 AC890000 */ sw $t1, ($a0)
/* 0E79F4 002C3044 24840004 */ addiu $a0, $a0, 4
/* 0E79F8 002C3048 8C620144 */ lw $v0, 0x144($v1)
/* 0E79FC 002C304C 25AD0001 */ addiu $t5, $t5, 1
/* 0E7A00 002C3050 ACA20000 */ sw $v0, ($a1)
/* 0E7A04 002C3054 24A50004 */ addiu $a1, $a1, 4
/* 0E7A08 002C3058 25290001 */ addiu $t1, $t1, 1
.L002C305C:
/* 0E7A0C 002C305C 29220080 */ slti $v0, $t1, 0x80
/* 0E7A10 002C3060 1440FFF1 */ bnez $v0, .L002C3028
/* 0E7A14 002C3064 24C60004 */ addiu $a2, $a2, 4
/* 0E7A18 002C3068 3C01802E */ lui $at, %hi(D_802DAC98) # $at, 0x802e
/* 0E7A1C 002C306C AC2DAC98 */ sw $t5, %lo(D_802DAC98)($at)
/* 0E7A20 002C3070 25A2FFFF */ addiu $v0, $t5, -1
/* 0E7A24 002C3074 18400031 */ blez $v0, .L002C313C
/* 0E7A28 002C3078 0000482D */ move $t1, $zero
/* 0E7A2C 002C307C 3C10802E */ lui $s0, %hi(D_802DA890) # $s0, 0x802e
/* 0E7A30 002C3080 2610A890 */ addiu $s0, %lo(D_802DA890) # addiu $s0, $s0, -0x5770
/* 0E7A34 002C3084 3C0E802E */ lui $t6, %hi(D_802DAA98) # $t6, 0x802e
/* 0E7A38 002C3088 25CEAA98 */ addiu $t6, %lo(D_802DAA98) # addiu $t6, $t6, -0x5568
/* 0E7A3C 002C308C 01C0C82D */ move $t9, $t6
/* 0E7A40 002C3090 3C18802E */ lui $t8, %hi(D_802DA898) # $t8, 0x802e
/* 0E7A44 002C3094 2718A898 */ addiu $t8, %lo(D_802DA898) # addiu $t8, $t8, -0x5768
/* 0E7A48 002C3098 0300782D */ move $t7, $t8
.L002C309C:
/* 0E7A4C 002C309C 25280001 */ addiu $t0, $t1, 1
/* 0E7A50 002C30A0 010D102A */ slt $v0, $t0, $t5
/* 0E7A54 002C30A4 50400020 */ beql $v0, $zero, .L002C3128
/* 0E7A58 002C30A8 25CE0004 */ addiu $t6, $t6, 4
/* 0E7A5C 002C30AC 01E0602D */ move $t4, $t7
/* 0E7A60 002C30B0 8E0B0000 */ lw $t3, ($s0)
/* 0E7A64 002C30B4 01C0502D */ move $t2, $t6
/* 0E7A68 002C30B8 00081080 */ sll $v0, $t0, 2
/* 0E7A6C 002C30BC 00593821 */ addu $a3, $v0, $t9
/* 0E7A70 002C30C0 00583021 */ addu $a2, $v0, $t8
.L002C30C4:
/* 0E7A74 002C30C4 8D850000 */ lw $a1, ($t4)
/* 0E7A78 002C30C8 8CC40000 */ lw $a0, ($a2)
/* 0E7A7C 002C30CC 00051880 */ sll $v1, $a1, 2
/* 0E7A80 002C30D0 006B1821 */ addu $v1, $v1, $t3
/* 0E7A84 002C30D4 00041080 */ sll $v0, $a0, 2
/* 0E7A88 002C30D8 004B1021 */ addu $v0, $v0, $t3
/* 0E7A8C 002C30DC 8C630000 */ lw $v1, ($v1)
/* 0E7A90 002C30E0 8C420000 */ lw $v0, ($v0)
/* 0E7A94 002C30E4 90630003 */ lbu $v1, 3($v1)
/* 0E7A98 002C30E8 90420003 */ lbu $v0, 3($v0)
/* 0E7A9C 002C30EC 0043102B */ sltu $v0, $v0, $v1
/* 0E7AA0 002C30F0 50400008 */ beql $v0, $zero, .L002C3114
/* 0E7AA4 002C30F4 24E70004 */ addiu $a3, $a3, 4
/* 0E7AA8 002C30F8 AD840000 */ sw $a0, ($t4)
/* 0E7AAC 002C30FC ACC50000 */ sw $a1, ($a2)
/* 0E7AB0 002C3100 8CE20000 */ lw $v0, ($a3)
/* 0E7AB4 002C3104 8D430000 */ lw $v1, ($t2)
/* 0E7AB8 002C3108 AD420000 */ sw $v0, ($t2)
/* 0E7ABC 002C310C ACE30000 */ sw $v1, ($a3)
/* 0E7AC0 002C3110 24E70004 */ addiu $a3, $a3, 4
.L002C3114:
/* 0E7AC4 002C3114 25080001 */ addiu $t0, $t0, 1
/* 0E7AC8 002C3118 010D102A */ slt $v0, $t0, $t5
/* 0E7ACC 002C311C 1440FFE9 */ bnez $v0, .L002C30C4
/* 0E7AD0 002C3120 24C60004 */ addiu $a2, $a2, 4
/* 0E7AD4 002C3124 25CE0004 */ addiu $t6, $t6, 4
.L002C3128:
/* 0E7AD8 002C3128 25290001 */ addiu $t1, $t1, 1
/* 0E7ADC 002C312C 25A2FFFF */ addiu $v0, $t5, -1
/* 0E7AE0 002C3130 0122102A */ slt $v0, $t1, $v0
/* 0E7AE4 002C3134 1440FFD9 */ bnez $v0, .L002C309C
/* 0E7AE8 002C3138 25EF0004 */ addiu $t7, $t7, 4
.L002C313C:
/* 0E7AEC 002C313C 8FB00000 */ lw $s0, ($sp)
/* 0E7AF0 002C3140 03E00008 */ jr $ra
/* 0E7AF4 002C3144 27BD0008 */ addiu $sp, $sp, 8
func_002C3148:
/* 0E7AF8 002C3148 0000182D */ move $v1, $zero
/* 0E7AFC 002C314C 2406FFFF */ li $a2, -1
/* 0E7B00 002C3150 0080282D */ move $a1, $a0
.L002C3154:
/* 0E7B04 002C3154 00831021 */ addu $v0, $a0, $v1
/* 0E7B08 002C3158 A0460010 */ sb $a2, 0x10($v0)
/* 0E7B0C 002C315C ACA00020 */ sw $zero, 0x20($a1)
/* 0E7B10 002C3160 24630001 */ addiu $v1, $v1, 1
/* 0E7B14 002C3164 28620010 */ slti $v0, $v1, 0x10
/* 0E7B18 002C3168 1440FFFA */ bnez $v0, .L002C3154
/* 0E7B1C 002C316C 24A50004 */ addiu $a1, $a1, 4
/* 0E7B20 002C3170 0000382D */ move $a3, $zero
/* 0E7B24 002C3174 8C830008 */ lw $v1, 8($a0)
/* 0E7B28 002C3178 240A0001 */ li $t2, 1
/* 0E7B2C 002C317C 24090003 */ li $t1, 3
/* 0E7B30 002C3180 0080402D */ move $t0, $a0
.L002C3184:
/* 0E7B34 002C3184 8C650000 */ lw $a1, ($v1)
/* 0E7B38 002C3188 24630004 */ addiu $v1, $v1, 4
/* 0E7B3C 002C318C 8C620000 */ lw $v0, ($v1)
/* 0E7B40 002C3190 24630004 */ addiu $v1, $v1, 4
/* 0E7B44 002C3194 8C660000 */ lw $a2, ($v1)
/* 0E7B48 002C3198 00021080 */ sll $v0, $v0, 2
/* 0E7B4C 002C319C 10AA000D */ beq $a1, $t2, .L002C31D4
/* 0E7B50 002C31A0 00621821 */ addu $v1, $v1, $v0
/* 0E7B54 002C31A4 14A90007 */ bne $a1, $t1, .L002C31C4
/* 0E7B58 002C31A8 28E20010 */ slti $v0, $a3, 0x10
/* 0E7B5C 002C31AC 00871021 */ addu $v0, $a0, $a3
/* 0E7B60 002C31B0 A0460010 */ sb $a2, 0x10($v0)
/* 0E7B64 002C31B4 AD030020 */ sw $v1, 0x20($t0)
/* 0E7B68 002C31B8 25080004 */ addiu $t0, $t0, 4
/* 0E7B6C 002C31BC 24E70001 */ addiu $a3, $a3, 1
/* 0E7B70 002C31C0 28E20010 */ slti $v0, $a3, 0x10
.L002C31C4:
/* 0E7B74 002C31C4 1440FFEF */ bnez $v0, .L002C3184
/* 0E7B78 002C31C8 00000000 */ nop
func_002C31CC:
/* 0E7B7C 002C31CC 080B0C73 */ j func_002C31CC
/* 0E7B80 002C31D0 00000000 */ nop
.L002C31D4:
/* 0E7B84 002C31D4 03E00008 */ jr $ra
/* 0E7B88 002C31D8 00000000 */ nop
/* 0E7B8C 002C31DC 3C028007 */ lui $v0, %hi(D_8007419C) # $v0, 0x8007
/* 0E7B90 002C31E0 8C42419C */ lw $v0, %lo(D_8007419C)($v0)
/* 0E7B94 002C31E4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E7B98 002C31E8 AFBF0010 */ sw $ra, 0x10($sp)
/* 0E7B9C 002C31EC 80420070 */ lb $v0, 0x70($v0)
/* 0E7BA0 002C31F0 1440000D */ bnez $v0, .L002C3228
/* 0E7BA4 002C31F4 00000000 */ nop
/* 0E7BA8 002C31F8 3C02802E */ lui $v0, %hi(D_802DA490) # $v0, 0x802e
/* 0E7BAC 002C31FC 2442A490 */ addiu $v0, %lo(D_802DA490) # addiu $v0, $v0, -0x5b70
/* 0E7BB0 002C3200 3C01802E */ lui $at, %hi(D_802DA890) # $at, 0x802e
/* 0E7BB4 002C3204 AC22A890 */ sw $v0, %lo(D_802DA890)($at)
/* 0E7BB8 002C3208 3C02802E */ lui $v0, %hi(D_802DBCA8) # $v0, 0x802e
/* 0E7BBC 002C320C 2442BCA8 */ addiu $v0, %lo(D_802DBCA8) # addiu $v0, $v0, -0x4358
/* 0E7BC0 002C3210 3C01802E */ lui $at, %hi(D_802DA484) # $at, 0x802e
/* 0E7BC4 002C3214 AC22A484 */ sw $v0, %lo(D_802DA484)($at)
/* 0E7BC8 002C3218 3C02802E */ lui $v0, %hi(D_802DBC70) # $v0, 0x802e
/* 0E7BCC 002C321C 2442BC70 */ addiu $v0, %lo(D_802DBC70) # addiu $v0, $v0, -0x4390
/* 0E7BD0 002C3220 080B0C94 */ j func_002C3250
/* 0E7BD4 002C3224 00000000 */ nop
.L002C3228:
/* 0E7BD8 002C3228 3C02802E */ lui $v0, %hi(D_802DA690) # $v0, 0x802e
/* 0E7BDC 002C322C 2442A690 */ addiu $v0, %lo(D_802DA690) # addiu $v0, $v0, -0x5970
/* 0E7BE0 002C3230 3C01802E */ lui $at, %hi(D_802DA890) # $at, 0x802e
/* 0E7BE4 002C3234 AC22A890 */ sw $v0, %lo(D_802DA890)($at)
/* 0E7BE8 002C3238 3C02802E */ lui $v0, %hi(D_802DBCE8) # $v0, 0x802e
/* 0E7BEC 002C323C 2442BCE8 */ addiu $v0, %lo(D_802DBCE8) # addiu $v0, $v0, -0x4318
/* 0E7BF0 002C3240 3C01802E */ lui $at, %hi(D_802DA484) # $at, 0x802e
/* 0E7BF4 002C3244 AC22A484 */ sw $v0, %lo(D_802DA484)($at)
/* 0E7BF8 002C3248 3C02802E */ lui $v0, %hi(D_802DBD34) # $v0, 0x802e
/* 0E7BFC 002C324C 2442BD34 */ addiu $v0, %lo(D_802DBD34) # addiu $v0, $v0, -0x42cc
func_002C3250:
/* 0E7C00 002C3250 3C01802E */ lui $at, %hi(D_802DA480) # $at, 0x802e
/* 0E7C04 002C3254 AC22A480 */ sw $v0, %lo(D_802DA480)($at)
/* 0E7C08 002C3258 3C02802E */ lui $v0, %hi(D_802DA890) # $v0, 0x802e
/* 0E7C0C 002C325C 8C42A890 */ lw $v0, %lo(D_802DA890)($v0)
/* 0E7C10 002C3260 2403007F */ li $v1, 127
/* 0E7C14 002C3264 244201FC */ addiu $v0, $v0, 0x1fc
.L002C3268:
/* 0E7C18 002C3268 AC400000 */ sw $zero, ($v0)
/* 0E7C1C 002C326C 2463FFFF */ addiu $v1, $v1, -1
/* 0E7C20 002C3270 0461FFFD */ bgez $v1, .L002C3268
/* 0E7C24 002C3274 2442FFFC */ addiu $v0, $v0, -4
/* 0E7C28 002C3278 3C02802E */ lui $v0, %hi(D_802DA484) # $v0, 0x802e
/* 0E7C2C 002C327C 8C42A484 */ lw $v0, %lo(D_802DA484)($v0)
/* 0E7C30 002C3280 2403000F */ li $v1, 15
/* 0E7C34 002C3284 3C01802E */ lui $at, %hi(D_802DA488) # $at, 0x802e
/* 0E7C38 002C3288 AC20A488 */ sw $zero, %lo(D_802DA488)($at)
/* 0E7C3C 002C328C 3C01802E */ lui $at, %hi(D_802DAC98) # $at, 0x802e
/* 0E7C40 002C3290 AC20AC98 */ sw $zero, %lo(D_802DAC98)($at)
/* 0E7C44 002C3294 3C01802E */ lui $at, %hi(D_802D9CA4) # $at, 0x802e
/* 0E7C48 002C3298 AC209CA4 */ sw $zero, %lo(D_802D9CA4)($at)
/* 0E7C4C 002C329C 2442003C */ addiu $v0, $v0, 0x3c
.L002C32A0:
/* 0E7C50 002C32A0 AC400000 */ sw $zero, ($v0)
/* 0E7C54 002C32A4 2463FFFF */ addiu $v1, $v1, -1
/* 0E7C58 002C32A8 0461FFFD */ bgez $v1, .L002C32A0
/* 0E7C5C 002C32AC 2442FFFC */ addiu $v0, $v0, -4
/* 0E7C60 002C32B0 3C02802E */ lui $v0, %hi(D_802DA480) # $v0, 0x802e
/* 0E7C64 002C32B4 8C42A480 */ lw $v0, %lo(D_802DA480)($v0)
/* 0E7C68 002C32B8 24030002 */ li $v1, 2
/* 0E7C6C 002C32BC 24420008 */ addiu $v0, $v0, 8
.L002C32C0:
/* 0E7C70 002C32C0 AC400000 */ sw $zero, ($v0)
/* 0E7C74 002C32C4 2463FFFF */ addiu $v1, $v1, -1
/* 0E7C78 002C32C8 0461FFFD */ bgez $v1, .L002C32C0
/* 0E7C7C 002C32CC 2442FFFC */ addiu $v0, $v0, -4
/* 0E7C80 002C32D0 0C0B5122 */ jal func_002D4488
/* 0E7C84 002C32D4 00000000 */ nop
/* 0E7C88 002C32D8 0C0B352D */ jal func_002CD4B4
/* 0E7C8C 002C32DC 00000000 */ nop
/* 0E7C90 002C32E0 8FBF0010 */ lw $ra, 0x10($sp)
/* 0E7C94 002C32E4 03E00008 */ jr $ra
/* 0E7C98 002C32E8 27BD0018 */ addiu $sp, $sp, 0x18
/* 0E7C9C 002C32EC 3C028007 */ lui $v0, %hi(D_8007419C) # $v0, 0x8007
/* 0E7CA0 002C32F0 8C42419C */ lw $v0, %lo(D_8007419C)($v0)
/* 0E7CA4 002C32F4 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E7CA8 002C32F8 AFBF0010 */ sw $ra, 0x10($sp)
/* 0E7CAC 002C32FC 80420070 */ lb $v0, 0x70($v0)
/* 0E7CB0 002C3300 1440000D */ bnez $v0, .L002C3338
/* 0E7CB4 002C3304 00000000 */ nop
/* 0E7CB8 002C3308 3C02802E */ lui $v0, %hi(D_802DA490) # $v0, 0x802e
/* 0E7CBC 002C330C 2442A490 */ addiu $v0, %lo(D_802DA490) # addiu $v0, $v0, -0x5b70
/* 0E7CC0 002C3310 3C01802E */ lui $at, %hi(D_802DA890) # $at, 0x802e
/* 0E7CC4 002C3314 AC22A890 */ sw $v0, %lo(D_802DA890)($at)
/* 0E7CC8 002C3318 3C02802E */ lui $v0, %hi(D_802DBCA8) # $v0, 0x802e
/* 0E7CCC 002C331C 2442BCA8 */ addiu $v0, %lo(D_802DBCA8) # addiu $v0, $v0, -0x4358
/* 0E7CD0 002C3320 3C01802E */ lui $at, %hi(D_802DA484) # $at, 0x802e
/* 0E7CD4 002C3324 AC22A484 */ sw $v0, %lo(D_802DA484)($at)
/* 0E7CD8 002C3328 3C02802E */ lui $v0, %hi(D_802DBC70) # $v0, 0x802e
/* 0E7CDC 002C332C 2442BC70 */ addiu $v0, %lo(D_802DBC70) # addiu $v0, $v0, -0x4390
/* 0E7CE0 002C3330 080B0CD8 */ j func_002C3360
/* 0E7CE4 002C3334 00000000 */ nop
.L002C3338:
/* 0E7CE8 002C3338 3C02802E */ lui $v0, %hi(D_802DA690) # $v0, 0x802e
/* 0E7CEC 002C333C 2442A690 */ addiu $v0, %lo(D_802DA690) # addiu $v0, $v0, -0x5970
/* 0E7CF0 002C3340 3C01802E */ lui $at, %hi(D_802DA890) # $at, 0x802e
/* 0E7CF4 002C3344 AC22A890 */ sw $v0, %lo(D_802DA890)($at)
/* 0E7CF8 002C3348 3C02802E */ lui $v0, %hi(D_802DBCE8) # $v0, 0x802e
/* 0E7CFC 002C334C 2442BCE8 */ addiu $v0, %lo(D_802DBCE8) # addiu $v0, $v0, -0x4318
/* 0E7D00 002C3350 3C01802E */ lui $at, %hi(D_802DA484) # $at, 0x802e
/* 0E7D04 002C3354 AC22A484 */ sw $v0, %lo(D_802DA484)($at)
/* 0E7D08 002C3358 3C02802E */ lui $v0, %hi(D_802DBD34) # $v0, 0x802e
/* 0E7D0C 002C335C 2442BD34 */ addiu $v0, %lo(D_802DBD34) # addiu $v0, $v0, -0x42cc
func_002C3360:
/* 0E7D10 002C3360 3C01802E */ lui $at, %hi(D_802DA480) # $at, 0x802e
/* 0E7D14 002C3364 AC22A480 */ sw $v0, %lo(D_802DA480)($at)
/* 0E7D18 002C3368 3C01802E */ lui $at, %hi(D_802DA488) # $at, 0x802e
/* 0E7D1C 002C336C AC20A488 */ sw $zero, %lo(D_802DA488)($at)
/* 0E7D20 002C3370 3C01802E */ lui $at, %hi(D_802D9CA4) # $at, 0x802e
/* 0E7D24 002C3374 0C0B5158 */ jal func_002D4560
/* 0E7D28 002C3378 AC209CA4 */ sw $zero, %lo(D_802D9CA4)($at)
/* 0E7D2C 002C337C 0C0B355F */ jal func_002CD57C
/* 0E7D30 002C3380 00000000 */ nop
/* 0E7D34 002C3384 8FBF0010 */ lw $ra, 0x10($sp)
/* 0E7D38 002C3388 03E00008 */ jr $ra
/* 0E7D3C 002C338C 27BD0018 */ addiu $sp, $sp, 0x18
func_002C3390:
/* 0E7D40 002C3390 3C03800A */ lui $v1, %hi(D_8009A5D8) # $v1, 0x800a
/* 0E7D44 002C3394 8C63A5D8 */ lw $v1, %lo(D_8009A5D8)($v1)
/* 0E7D48 002C3398 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E7D4C 002C339C 2C620005 */ sltiu $v0, $v1, 5
/* 0E7D50 002C33A0 1040000C */ beqz $v0, .L002C33D4
/* 0E7D54 002C33A4 AFBF0010 */ sw $ra, 0x10($sp)
/* 0E7D58 002C33A8 00031080 */ sll $v0, $v1, 2
/* 0E7D5C 002C33AC 3C01802E */ lui $at, 0x802e
/* 0E7D60 002C33B0 00220821 */ addu $at, $at, $v0
/* 0E7D64 002C33B4 8C229D80 */ lw $v0, -0x6280($at)
/* 0E7D68 002C33B8 00400008 */ jr $v0
/* 0E7D6C 002C33BC 00000000 */ nop
/* 0E7D70 002C33C0 080B0CF3 */ j func_002C33CC
/* 0E7D74 002C33C4 24040001 */ li $a0, 1
/* 0E7D78 002C33C8 24040002 */ li $a0, 2
func_002C33CC:
/* 0E7D7C 002C33CC 0C0B117A */ jal func_002C45E8
/* 0E7D80 002C33D0 00000000 */ nop
.L002C33D4:
/* 0E7D84 002C33D4 8FBF0010 */ lw $ra, 0x10($sp)
/* 0E7D88 002C33D8 03E00008 */ jr $ra
/* 0E7D8C 002C33DC 27BD0018 */ addiu $sp, $sp, 0x18
func_002C33E0:
/* 0E7D90 002C33E0 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 0E7D94 002C33E4 AFB10014 */ sw $s1, 0x14($sp)
/* 0E7D98 002C33E8 0080882D */ move $s1, $a0
/* 0E7D9C 002C33EC AFB40020 */ sw $s4, 0x20($sp)
/* 0E7DA0 002C33F0 00A0A02D */ move $s4, $a1
/* 0E7DA4 002C33F4 AFB3001C */ sw $s3, 0x1c($sp)
/* 0E7DA8 002C33F8 00C0982D */ move $s3, $a2
/* 0E7DAC 002C33FC 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E7DB0 002C3400 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E7DB4 002C3404 0000282D */ move $a1, $zero
/* 0E7DB8 002C3408 AFBF0024 */ sw $ra, 0x24($sp)
/* 0E7DBC 002C340C AFB20018 */ sw $s2, 0x18($sp)
/* 0E7DC0 002C3410 AFB00010 */ sw $s0, 0x10($sp)
.L002C3414:
/* 0E7DC4 002C3414 8C620000 */ lw $v0, ($v1)
/* 0E7DC8 002C3418 10400006 */ beqz $v0, .L002C3434
/* 0E7DCC 002C341C 28A20080 */ slti $v0, $a1, 0x80
/* 0E7DD0 002C3420 24A50001 */ addiu $a1, $a1, 1
/* 0E7DD4 002C3424 28A20080 */ slti $v0, $a1, 0x80
/* 0E7DD8 002C3428 1440FFFA */ bnez $v0, .L002C3414
/* 0E7DDC 002C342C 24630004 */ addiu $v1, $v1, 4
/* 0E7DE0 002C3430 28A20080 */ slti $v0, $a1, 0x80
.L002C3434:
/* 0E7DE4 002C3434 14400003 */ bnez $v0, .L002C3444
/* 0E7DE8 002C3438 24040168 */ li $a0, 360
func_002C343C:
/* 0E7DEC 002C343C 080B0D0F */ j func_002C343C
/* 0E7DF0 002C3440 00000000 */ nop
.L002C3444:
/* 0E7DF4 002C3444 0C00AB39 */ jal func_0002ACE4
/* 0E7DF8 002C3448 00A0902D */ move $s2, $a1
/* 0E7DFC 002C344C 00122080 */ sll $a0, $s2, 2
/* 0E7E00 002C3450 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E7E04 002C3454 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E7E08 002C3458 3C05802E */ lui $a1, %hi(D_802DA488) # $a1, 0x802e
/* 0E7E0C 002C345C 24A5A488 */ addiu $a1, %lo(D_802DA488) # addiu $a1, $a1, -0x5b78
/* 0E7E10 002C3460 00832021 */ addu $a0, $a0, $v1
/* 0E7E14 002C3464 8CA30000 */ lw $v1, ($a1)
/* 0E7E18 002C3468 0040802D */ move $s0, $v0
/* 0E7E1C 002C346C AC900000 */ sw $s0, ($a0)
/* 0E7E20 002C3470 24630001 */ addiu $v1, $v1, 1
/* 0E7E24 002C3474 16000003 */ bnez $s0, .L002C3484
/* 0E7E28 002C3478 ACA30000 */ sw $v1, ($a1)
func_002C347C:
/* 0E7E2C 002C347C 080B0D1F */ j func_002C347C
/* 0E7E30 002C3480 00000000 */ nop
.L002C3484:
/* 0E7E34 002C3484 36620001 */ ori $v0, $s3, 1
/* 0E7E38 002C3488 3C03802E */ lui $v1, %hi(D_802D9CA0) # $v1, 0x802e
/* 0E7E3C 002C348C 24639CA0 */ addiu $v1, %lo(D_802D9CA0) # addiu $v1, $v1, -0x6360
/* 0E7E40 002C3490 A2020000 */ sb $v0, ($s0)
/* 0E7E44 002C3494 A2000002 */ sb $zero, 2($s0)
/* 0E7E48 002C3498 A2140003 */ sb $s4, 3($s0)
/* 0E7E4C 002C349C 8C620000 */ lw $v0, ($v1)
/* 0E7E50 002C34A0 2405000F */ li $a1, 15
/* 0E7E54 002C34A4 AE020144 */ sw $v0, 0x144($s0)
/* 0E7E58 002C34A8 24420001 */ addiu $v0, $v0, 1
/* 0E7E5C 002C34AC AC620000 */ sw $v0, ($v1)
/* 0E7E60 002C34B0 2403FFFF */ li $v1, -1
/* 0E7E64 002C34B4 240200EF */ li $v0, 239
/* 0E7E68 002C34B8 A2030006 */ sb $v1, 6($s0)
/* 0E7E6C 002C34BC A2030007 */ sb $v1, 7($s0)
/* 0E7E70 002C34C0 A2020004 */ sb $v0, 4($s0)
/* 0E7E74 002C34C4 3C01802E */ lui $at, %hi(D_802D9CA8) # $at, 0x802e
/* 0E7E78 002C34C8 C4209CA8 */ lwc1 $f0, %lo(D_802D9CA8)($at)
/* 0E7E7C 002C34CC 2602003C */ addiu $v0, $s0, 0x3c
/* 0E7E80 002C34D0 AE110008 */ sw $s1, 8($s0)
/* 0E7E84 002C34D4 AE11015C */ sw $s1, 0x15c($s0)
/* 0E7E88 002C34D8 AE110164 */ sw $s1, 0x164($s0)
/* 0E7E8C 002C34DC AE000060 */ sw $zero, 0x60($s0)
/* 0E7E90 002C34E0 AE000064 */ sw $zero, 0x64($s0)
/* 0E7E94 002C34E4 AE000068 */ sw $zero, 0x68($s0)
/* 0E7E98 002C34E8 AE00006C */ sw $zero, 0x6c($s0)
/* 0E7E9C 002C34EC AE030148 */ sw $v1, 0x148($s0)
/* 0E7EA0 002C34F0 AE03014C */ sw $v1, 0x14c($s0)
/* 0E7EA4 002C34F4 AE000160 */ sw $zero, 0x160($s0)
/* 0E7EA8 002C34F8 AE000154 */ sw $zero, 0x154($s0)
/* 0E7EAC 002C34FC AE000158 */ sw $zero, 0x158($s0)
/* 0E7EB0 002C3500 E6000150 */ swc1 $f0, 0x150($s0)
.L002C3504:
/* 0E7EB4 002C3504 AC400084 */ sw $zero, 0x84($v0)
/* 0E7EB8 002C3508 24A5FFFF */ addiu $a1, $a1, -1
/* 0E7EBC 002C350C 04A1FFFD */ bgez $a1, .L002C3504
/* 0E7EC0 002C3510 2442FFFC */ addiu $v0, $v0, -4
/* 0E7EC4 002C3514 24050002 */ li $a1, 2
/* 0E7EC8 002C3518 26020008 */ addiu $v0, $s0, 8
.L002C351C:
/* 0E7ECC 002C351C AC4000C4 */ sw $zero, 0xc4($v0)
/* 0E7ED0 002C3520 24A5FFFF */ addiu $a1, $a1, -1
/* 0E7ED4 002C3524 04A1FFFD */ bgez $a1, .L002C351C
/* 0E7ED8 002C3528 2442FFFC */ addiu $v0, $v0, -4
/* 0E7EDC 002C352C 0C0B0C52 */ jal func_002C3148
/* 0E7EE0 002C3530 0200202D */ move $a0, $s0
/* 0E7EE4 002C3534 3C02802E */ lui $v0, %hi(D_802D9CA4) # $v0, 0x802e
/* 0E7EE8 002C3538 8C429CA4 */ lw $v0, %lo(D_802D9CA4)($v0)
/* 0E7EEC 002C353C 10400012 */ beqz $v0, .L002C3588
/* 0E7EF0 002C3540 00000000 */ nop
/* 0E7EF4 002C3544 92020000 */ lbu $v0, ($s0)
/* 0E7EF8 002C3548 30420020 */ andi $v0, $v0, 0x20
/* 0E7EFC 002C354C 1040000E */ beqz $v0, .L002C3588
/* 0E7F00 002C3550 00000000 */ nop
/* 0E7F04 002C3554 3C05802E */ lui $a1, %hi(D_802DAC98) # $a1, 0x802e
/* 0E7F08 002C3558 24A5AC98 */ addiu $a1, %lo(D_802DAC98) # addiu $a1, $a1, -0x5368
/* 0E7F0C 002C355C 8CA20000 */ lw $v0, ($a1)
/* 0E7F10 002C3560 00022080 */ sll $a0, $v0, 2
/* 0E7F14 002C3564 3C01802E */ lui $at, 0x802e
/* 0E7F18 002C3568 00240821 */ addu $at, $at, $a0
/* 0E7F1C 002C356C AC32A898 */ sw $s2, -0x5768($at)
/* 0E7F20 002C3570 8E030144 */ lw $v1, 0x144($s0)
/* 0E7F24 002C3574 24420001 */ addiu $v0, $v0, 1
/* 0E7F28 002C3578 ACA20000 */ sw $v0, ($a1)
/* 0E7F2C 002C357C 3C01802E */ lui $at, 0x802e
/* 0E7F30 002C3580 00240821 */ addu $at, $at, $a0
/* 0E7F34 002C3584 AC23AA98 */ sw $v1, -0x5568($at)
.L002C3588:
/* 0E7F38 002C3588 0C0B0CE4 */ jal func_002C3390
/* 0E7F3C 002C358C 0200202D */ move $a0, $s0
/* 0E7F40 002C3590 3C03802E */ lui $v1, %hi(D_802D9CA0) # $v1, 0x802e
/* 0E7F44 002C3594 24639CA0 */ addiu $v1, %lo(D_802D9CA0) # addiu $v1, $v1, -0x6360
/* 0E7F48 002C3598 8C620000 */ lw $v0, ($v1)
/* 0E7F4C 002C359C 14400004 */ bnez $v0, .L002C35B0
/* 0E7F50 002C35A0 0200102D */ move $v0, $s0
/* 0E7F54 002C35A4 24020001 */ li $v0, 1
/* 0E7F58 002C35A8 AC620000 */ sw $v0, ($v1)
/* 0E7F5C 002C35AC 0200102D */ move $v0, $s0
.L002C35B0:
/* 0E7F60 002C35B0 8FBF0024 */ lw $ra, 0x24($sp)
/* 0E7F64 002C35B4 8FB40020 */ lw $s4, 0x20($sp)
/* 0E7F68 002C35B8 8FB3001C */ lw $s3, 0x1c($sp)
/* 0E7F6C 002C35BC 8FB20018 */ lw $s2, 0x18($sp)
/* 0E7F70 002C35C0 8FB10014 */ lw $s1, 0x14($sp)
/* 0E7F74 002C35C4 8FB00010 */ lw $s0, 0x10($sp)
/* 0E7F78 002C35C8 03E00008 */ jr $ra
/* 0E7F7C 002C35CC 27BD0028 */ addiu $sp, $sp, 0x28
func_002C35D0:
/* 0E7F80 002C35D0 27BDFFD0 */ addiu $sp, $sp, -0x30
/* 0E7F84 002C35D4 AFB10014 */ sw $s1, 0x14($sp)
/* 0E7F88 002C35D8 0080882D */ move $s1, $a0
/* 0E7F8C 002C35DC AFB40020 */ sw $s4, 0x20($sp)
/* 0E7F90 002C35E0 00A0A02D */ move $s4, $a1
/* 0E7F94 002C35E4 AFB3001C */ sw $s3, 0x1c($sp)
/* 0E7F98 002C35E8 00C0982D */ move $s3, $a2
/* 0E7F9C 002C35EC AFB50024 */ sw $s5, 0x24($sp)
/* 0E7FA0 002C35F0 00E0A82D */ move $s5, $a3
/* 0E7FA4 002C35F4 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E7FA8 002C35F8 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E7FAC 002C35FC 0000282D */ move $a1, $zero
/* 0E7FB0 002C3600 AFBF0028 */ sw $ra, 0x28($sp)
/* 0E7FB4 002C3604 AFB20018 */ sw $s2, 0x18($sp)
/* 0E7FB8 002C3608 AFB00010 */ sw $s0, 0x10($sp)
.L002C360C:
/* 0E7FBC 002C360C 8C620000 */ lw $v0, ($v1)
/* 0E7FC0 002C3610 10400006 */ beqz $v0, .L002C362C
/* 0E7FC4 002C3614 28A20080 */ slti $v0, $a1, 0x80
/* 0E7FC8 002C3618 24A50001 */ addiu $a1, $a1, 1
/* 0E7FCC 002C361C 28A20080 */ slti $v0, $a1, 0x80
/* 0E7FD0 002C3620 1440FFFA */ bnez $v0, .L002C360C
/* 0E7FD4 002C3624 24630004 */ addiu $v1, $v1, 4
/* 0E7FD8 002C3628 28A20080 */ slti $v0, $a1, 0x80
.L002C362C:
/* 0E7FDC 002C362C 14400003 */ bnez $v0, .L002C363C
/* 0E7FE0 002C3630 24040168 */ li $a0, 360
func_002C3634:
/* 0E7FE4 002C3634 080B0D8D */ j func_002C3634
/* 0E7FE8 002C3638 00000000 */ nop
.L002C363C:
/* 0E7FEC 002C363C 0C00AB39 */ jal func_0002ACE4
/* 0E7FF0 002C3640 00A0902D */ move $s2, $a1
/* 0E7FF4 002C3644 00122080 */ sll $a0, $s2, 2
/* 0E7FF8 002C3648 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E7FFC 002C364C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8000 002C3650 3C05802E */ lui $a1, %hi(D_802DA488) # $a1, 0x802e
/* 0E8004 002C3654 24A5A488 */ addiu $a1, %lo(D_802DA488) # addiu $a1, $a1, -0x5b78
/* 0E8008 002C3658 00832021 */ addu $a0, $a0, $v1
/* 0E800C 002C365C 8CA30000 */ lw $v1, ($a1)
/* 0E8010 002C3660 0040802D */ move $s0, $v0
/* 0E8014 002C3664 AC900000 */ sw $s0, ($a0)
/* 0E8018 002C3668 24630001 */ addiu $v1, $v1, 1
/* 0E801C 002C366C 16000003 */ bnez $s0, .L002C367C
/* 0E8020 002C3670 ACA30000 */ sw $v1, ($a1)
func_002C3674:
/* 0E8024 002C3674 080B0D9D */ j func_002C3674
/* 0E8028 002C3678 00000000 */ nop
.L002C367C:
/* 0E802C 002C367C 36620001 */ ori $v0, $s3, 1
/* 0E8030 002C3680 3C03802E */ lui $v1, %hi(D_802D9CA0) # $v1, 0x802e
/* 0E8034 002C3684 24639CA0 */ addiu $v1, %lo(D_802D9CA0) # addiu $v1, $v1, -0x6360
/* 0E8038 002C3688 A2020000 */ sb $v0, ($s0)
/* 0E803C 002C368C A2000002 */ sb $zero, 2($s0)
/* 0E8040 002C3690 A2140003 */ sb $s4, 3($s0)
/* 0E8044 002C3694 8C620000 */ lw $v0, ($v1)
/* 0E8048 002C3698 2405000F */ li $a1, 15
/* 0E804C 002C369C AE020144 */ sw $v0, 0x144($s0)
/* 0E8050 002C36A0 24420001 */ addiu $v0, $v0, 1
/* 0E8054 002C36A4 AC620000 */ sw $v0, ($v1)
/* 0E8058 002C36A8 2402FFFF */ li $v0, -1
/* 0E805C 002C36AC A2020006 */ sb $v0, 6($s0)
/* 0E8060 002C36B0 A2020007 */ sb $v0, 7($s0)
/* 0E8064 002C36B4 A2150004 */ sb $s5, 4($s0)
/* 0E8068 002C36B8 3C01802E */ lui $at, %hi(D_802D9CA8) # $at, 0x802e
/* 0E806C 002C36BC C4209CA8 */ lwc1 $f0, %lo(D_802D9CA8)($at)
/* 0E8070 002C36C0 2603003C */ addiu $v1, $s0, 0x3c
/* 0E8074 002C36C4 AE110008 */ sw $s1, 8($s0)
/* 0E8078 002C36C8 AE11015C */ sw $s1, 0x15c($s0)
/* 0E807C 002C36CC AE110164 */ sw $s1, 0x164($s0)
/* 0E8080 002C36D0 AE000060 */ sw $zero, 0x60($s0)
/* 0E8084 002C36D4 AE000064 */ sw $zero, 0x64($s0)
/* 0E8088 002C36D8 AE000068 */ sw $zero, 0x68($s0)
/* 0E808C 002C36DC AE00006C */ sw $zero, 0x6c($s0)
/* 0E8090 002C36E0 AE020148 */ sw $v0, 0x148($s0)
/* 0E8094 002C36E4 AE02014C */ sw $v0, 0x14c($s0)
/* 0E8098 002C36E8 AE000160 */ sw $zero, 0x160($s0)
/* 0E809C 002C36EC AE000154 */ sw $zero, 0x154($s0)
/* 0E80A0 002C36F0 AE000158 */ sw $zero, 0x158($s0)
/* 0E80A4 002C36F4 E6000150 */ swc1 $f0, 0x150($s0)
.L002C36F8:
/* 0E80A8 002C36F8 AC600084 */ sw $zero, 0x84($v1)
/* 0E80AC 002C36FC 24A5FFFF */ addiu $a1, $a1, -1
/* 0E80B0 002C3700 04A1FFFD */ bgez $a1, .L002C36F8
/* 0E80B4 002C3704 2463FFFC */ addiu $v1, $v1, -4
/* 0E80B8 002C3708 24050002 */ li $a1, 2
/* 0E80BC 002C370C 26020008 */ addiu $v0, $s0, 8
.L002C3710:
/* 0E80C0 002C3710 AC4000C4 */ sw $zero, 0xc4($v0)
/* 0E80C4 002C3714 24A5FFFF */ addiu $a1, $a1, -1
/* 0E80C8 002C3718 04A1FFFD */ bgez $a1, .L002C3710
/* 0E80CC 002C371C 2442FFFC */ addiu $v0, $v0, -4
/* 0E80D0 002C3720 0C0B0C52 */ jal func_002C3148
/* 0E80D4 002C3724 0200202D */ move $a0, $s0
/* 0E80D8 002C3728 3C02802E */ lui $v0, %hi(D_802D9CA4) # $v0, 0x802e
/* 0E80DC 002C372C 8C429CA4 */ lw $v0, %lo(D_802D9CA4)($v0)
/* 0E80E0 002C3730 10400012 */ beqz $v0, .L002C377C
/* 0E80E4 002C3734 00000000 */ nop
/* 0E80E8 002C3738 92020000 */ lbu $v0, ($s0)
/* 0E80EC 002C373C 30420020 */ andi $v0, $v0, 0x20
/* 0E80F0 002C3740 1040000E */ beqz $v0, .L002C377C
/* 0E80F4 002C3744 00000000 */ nop
/* 0E80F8 002C3748 3C05802E */ lui $a1, %hi(D_802DAC98) # $a1, 0x802e
/* 0E80FC 002C374C 24A5AC98 */ addiu $a1, %lo(D_802DAC98) # addiu $a1, $a1, -0x5368
/* 0E8100 002C3750 8CA20000 */ lw $v0, ($a1)
/* 0E8104 002C3754 00022080 */ sll $a0, $v0, 2
/* 0E8108 002C3758 3C01802E */ lui $at, 0x802e
/* 0E810C 002C375C 00240821 */ addu $at, $at, $a0
/* 0E8110 002C3760 AC32A898 */ sw $s2, -0x5768($at)
/* 0E8114 002C3764 8E030144 */ lw $v1, 0x144($s0)
/* 0E8118 002C3768 24420001 */ addiu $v0, $v0, 1
/* 0E811C 002C376C ACA20000 */ sw $v0, ($a1)
/* 0E8120 002C3770 3C01802E */ lui $at, 0x802e
/* 0E8124 002C3774 00240821 */ addu $at, $at, $a0
/* 0E8128 002C3778 AC23AA98 */ sw $v1, -0x5568($at)
.L002C377C:
/* 0E812C 002C377C 0C0B0CE4 */ jal func_002C3390
/* 0E8130 002C3780 0200202D */ move $a0, $s0
/* 0E8134 002C3784 3C03802E */ lui $v1, %hi(D_802D9CA0) # $v1, 0x802e
/* 0E8138 002C3788 24639CA0 */ addiu $v1, %lo(D_802D9CA0) # addiu $v1, $v1, -0x6360
/* 0E813C 002C378C 8C620000 */ lw $v0, ($v1)
/* 0E8140 002C3790 14400004 */ bnez $v0, .L002C37A4
/* 0E8144 002C3794 0200102D */ move $v0, $s0
/* 0E8148 002C3798 24020001 */ li $v0, 1
/* 0E814C 002C379C AC620000 */ sw $v0, ($v1)
/* 0E8150 002C37A0 0200102D */ move $v0, $s0
.L002C37A4:
/* 0E8154 002C37A4 8FBF0028 */ lw $ra, 0x28($sp)
/* 0E8158 002C37A8 8FB50024 */ lw $s5, 0x24($sp)
/* 0E815C 002C37AC 8FB40020 */ lw $s4, 0x20($sp)
/* 0E8160 002C37B0 8FB3001C */ lw $s3, 0x1c($sp)
/* 0E8164 002C37B4 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8168 002C37B8 8FB10014 */ lw $s1, 0x14($sp)
/* 0E816C 002C37BC 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8170 002C37C0 03E00008 */ jr $ra
/* 0E8174 002C37C4 27BD0030 */ addiu $sp, $sp, 0x30
func_002C37C8:
/* 0E8178 002C37C8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 0E817C 002C37CC AFB10014 */ sw $s1, 0x14($sp)
/* 0E8180 002C37D0 0080882D */ move $s1, $a0
/* 0E8184 002C37D4 AFB20018 */ sw $s2, 0x18($sp)
/* 0E8188 002C37D8 00A0902D */ move $s2, $a1
/* 0E818C 002C37DC AFB40020 */ sw $s4, 0x20($sp)
/* 0E8190 002C37E0 00C0A02D */ move $s4, $a2
/* 0E8194 002C37E4 3C04802E */ lui $a0, %hi(D_802DA890) # $a0, 0x802e
/* 0E8198 002C37E8 8C84A890 */ lw $a0, %lo(D_802DA890)($a0)
/* 0E819C 002C37EC 0000182D */ move $v1, $zero
/* 0E81A0 002C37F0 AFBF0024 */ sw $ra, 0x24($sp)
/* 0E81A4 002C37F4 AFB3001C */ sw $s3, 0x1c($sp)
/* 0E81A8 002C37F8 AFB00010 */ sw $s0, 0x10($sp)
.L002C37FC:
/* 0E81AC 002C37FC 8C820000 */ lw $v0, ($a0)
/* 0E81B0 002C3800 10400006 */ beqz $v0, .L002C381C
/* 0E81B4 002C3804 28620080 */ slti $v0, $v1, 0x80
/* 0E81B8 002C3808 24630001 */ addiu $v1, $v1, 1
/* 0E81BC 002C380C 28620080 */ slti $v0, $v1, 0x80
/* 0E81C0 002C3810 1440FFFA */ bnez $v0, .L002C37FC
/* 0E81C4 002C3814 24840004 */ addiu $a0, $a0, 4
/* 0E81C8 002C3818 28620080 */ slti $v0, $v1, 0x80
.L002C381C:
/* 0E81CC 002C381C 54400003 */ bnezl $v0, .L002C382C
/* 0E81D0 002C3820 24040168 */ li $a0, 360
func_002C3824:
/* 0E81D4 002C3824 080B0E09 */ j func_002C3824
/* 0E81D8 002C3828 00000000 */ nop
.L002C382C:
/* 0E81DC 002C382C 0C00AB39 */ jal func_0002ACE4
/* 0E81E0 002C3830 0060982D */ move $s3, $v1
/* 0E81E4 002C3834 00132080 */ sll $a0, $s3, 2
/* 0E81E8 002C3838 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E81EC 002C383C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E81F0 002C3840 3C05802E */ lui $a1, %hi(D_802DA488) # $a1, 0x802e
/* 0E81F4 002C3844 24A5A488 */ addiu $a1, %lo(D_802DA488) # addiu $a1, $a1, -0x5b78
/* 0E81F8 002C3848 00832021 */ addu $a0, $a0, $v1
/* 0E81FC 002C384C 8CA30000 */ lw $v1, ($a1)
/* 0E8200 002C3850 0040802D */ move $s0, $v0
/* 0E8204 002C3854 AC900000 */ sw $s0, ($a0)
/* 0E8208 002C3858 24630001 */ addiu $v1, $v1, 1
/* 0E820C 002C385C 16000003 */ bnez $s0, .L002C386C
/* 0E8210 002C3860 ACA30000 */ sw $v1, ($a1)
func_002C3864:
/* 0E8214 002C3864 080B0E19 */ j func_002C3864
/* 0E8218 002C3868 00000000 */ nop
.L002C386C:
/* 0E821C 002C386C 92220000 */ lbu $v0, ($s1)
/* 0E8220 002C3870 AE300068 */ sw $s0, 0x68($s1)
/* 0E8224 002C3874 34420010 */ ori $v0, $v0, 0x10
/* 0E8228 002C3878 A2220000 */ sb $v0, ($s1)
/* 0E822C 002C387C 36820001 */ ori $v0, $s4, 1
/* 0E8230 002C3880 A2020000 */ sb $v0, ($s0)
/* 0E8234 002C3884 AE120008 */ sw $s2, 8($s0)
/* 0E8238 002C3888 AE12015C */ sw $s2, 0x15c($s0)
/* 0E823C 002C388C AE120164 */ sw $s2, 0x164($s0)
/* 0E8240 002C3890 A2000002 */ sb $zero, 2($s0)
/* 0E8244 002C3894 AE000060 */ sw $zero, 0x60($s0)
/* 0E8248 002C3898 AE110064 */ sw $s1, 0x64($s0)
/* 0E824C 002C389C AE000068 */ sw $zero, 0x68($s0)
/* 0E8250 002C38A0 AE00006C */ sw $zero, 0x6c($s0)
/* 0E8254 002C38A4 92220003 */ lbu $v0, 3($s1)
/* 0E8258 002C38A8 3C04802E */ lui $a0, %hi(D_802D9CA0) # $a0, 0x802e
/* 0E825C 002C38AC 24849CA0 */ addiu $a0, %lo(D_802D9CA0) # addiu $a0, $a0, -0x6360
/* 0E8260 002C38B0 24420001 */ addiu $v0, $v0, 1
/* 0E8264 002C38B4 A2020003 */ sb $v0, 3($s0)
/* 0E8268 002C38B8 8C820000 */ lw $v0, ($a0)
/* 0E826C 002C38BC AE020144 */ sw $v0, 0x144($s0)
/* 0E8270 002C38C0 8E230148 */ lw $v1, 0x148($s1)
/* 0E8274 002C38C4 24420001 */ addiu $v0, $v0, 1
/* 0E8278 002C38C8 AC820000 */ sw $v0, ($a0)
/* 0E827C 002C38CC AE030148 */ sw $v1, 0x148($s0)
/* 0E8280 002C38D0 8E23014C */ lw $v1, 0x14c($s1)
/* 0E8284 002C38D4 2402FFFF */ li $v0, -1
/* 0E8288 002C38D8 A2020006 */ sb $v0, 6($s0)
/* 0E828C 002C38DC A2020007 */ sb $v0, 7($s0)
/* 0E8290 002C38E0 AE03014C */ sw $v1, 0x14c($s0)
/* 0E8294 002C38E4 92220004 */ lbu $v0, 4($s1)
/* 0E8298 002C38E8 0220282D */ move $a1, $s1
/* 0E829C 002C38EC AE000160 */ sw $zero, 0x160($s0)
/* 0E82A0 002C38F0 A2020004 */ sb $v0, 4($s0)
/* 0E82A4 002C38F4 8E22013C */ lw $v0, 0x13c($s1)
/* 0E82A8 002C38F8 3C01802E */ lui $at, %hi(D_802D9CA8) # $at, 0x802e
/* 0E82AC 002C38FC C4209CA8 */ lwc1 $f0, %lo(D_802D9CA8)($at)
/* 0E82B0 002C3900 0200202D */ move $a0, $s0
/* 0E82B4 002C3904 AE02013C */ sw $v0, 0x13c($s0)
/* 0E82B8 002C3908 8E220140 */ lw $v0, 0x140($s1)
/* 0E82BC 002C390C 0000182D */ move $v1, $zero
/* 0E82C0 002C3910 E6000150 */ swc1 $f0, 0x150($s0)
/* 0E82C4 002C3914 AE000154 */ sw $zero, 0x154($s0)
/* 0E82C8 002C3918 AE020140 */ sw $v0, 0x140($s0)
/* 0E82CC 002C391C AE000158 */ sw $zero, 0x158($s0)
.L002C3920:
/* 0E82D0 002C3920 8CA20084 */ lw $v0, 0x84($a1)
/* 0E82D4 002C3924 24A50004 */ addiu $a1, $a1, 4
/* 0E82D8 002C3928 24630001 */ addiu $v1, $v1, 1
/* 0E82DC 002C392C AC820084 */ sw $v0, 0x84($a0)
/* 0E82E0 002C3930 28620010 */ slti $v0, $v1, 0x10
/* 0E82E4 002C3934 1440FFFA */ bnez $v0, .L002C3920
/* 0E82E8 002C3938 24840004 */ addiu $a0, $a0, 4
/* 0E82EC 002C393C 0000182D */ move $v1, $zero
/* 0E82F0 002C3940 0220202D */ move $a0, $s1
/* 0E82F4 002C3944 0200282D */ move $a1, $s0
.L002C3948:
/* 0E82F8 002C3948 8C8200C4 */ lw $v0, 0xc4($a0)
/* 0E82FC 002C394C 24840004 */ addiu $a0, $a0, 4
/* 0E8300 002C3950 24630001 */ addiu $v1, $v1, 1
/* 0E8304 002C3954 ACA200C4 */ sw $v0, 0xc4($a1)
/* 0E8308 002C3958 28620003 */ slti $v0, $v1, 3
/* 0E830C 002C395C 1440FFFA */ bnez $v0, .L002C3948
/* 0E8310 002C3960 24A50004 */ addiu $a1, $a1, 4
/* 0E8314 002C3964 0C0B0C52 */ jal func_002C3148
/* 0E8318 002C3968 0200202D */ move $a0, $s0
/* 0E831C 002C396C 3C02802E */ lui $v0, %hi(D_802D9CA4) # $v0, 0x802e
/* 0E8320 002C3970 8C429CA4 */ lw $v0, %lo(D_802D9CA4)($v0)
/* 0E8324 002C3974 1040000E */ beqz $v0, .L002C39B0
/* 0E8328 002C3978 00000000 */ nop
/* 0E832C 002C397C 3C05802E */ lui $a1, %hi(D_802DAC98) # $a1, 0x802e
/* 0E8330 002C3980 24A5AC98 */ addiu $a1, %lo(D_802DAC98) # addiu $a1, $a1, -0x5368
/* 0E8334 002C3984 8CA20000 */ lw $v0, ($a1)
/* 0E8338 002C3988 00022080 */ sll $a0, $v0, 2
/* 0E833C 002C398C 3C01802E */ lui $at, 0x802e
/* 0E8340 002C3990 00240821 */ addu $at, $at, $a0
/* 0E8344 002C3994 AC33A898 */ sw $s3, -0x5768($at)
/* 0E8348 002C3998 8E030144 */ lw $v1, 0x144($s0)
/* 0E834C 002C399C 24420001 */ addiu $v0, $v0, 1
/* 0E8350 002C39A0 ACA20000 */ sw $v0, ($a1)
/* 0E8354 002C39A4 3C01802E */ lui $at, 0x802e
/* 0E8358 002C39A8 00240821 */ addu $at, $at, $a0
/* 0E835C 002C39AC AC23AA98 */ sw $v1, -0x5568($at)
.L002C39B0:
/* 0E8360 002C39B0 0C0B0CE4 */ jal func_002C3390
/* 0E8364 002C39B4 0200202D */ move $a0, $s0
/* 0E8368 002C39B8 3C03802E */ lui $v1, %hi(D_802D9CA0) # $v1, 0x802e
/* 0E836C 002C39BC 24639CA0 */ addiu $v1, %lo(D_802D9CA0) # addiu $v1, $v1, -0x6360
/* 0E8370 002C39C0 8C620000 */ lw $v0, ($v1)
/* 0E8374 002C39C4 14400004 */ bnez $v0, .L002C39D8
/* 0E8378 002C39C8 0200102D */ move $v0, $s0
/* 0E837C 002C39CC 24020001 */ li $v0, 1
/* 0E8380 002C39D0 AC620000 */ sw $v0, ($v1)
/* 0E8384 002C39D4 0200102D */ move $v0, $s0
.L002C39D8:
/* 0E8388 002C39D8 8FBF0024 */ lw $ra, 0x24($sp)
/* 0E838C 002C39DC 8FB40020 */ lw $s4, 0x20($sp)
/* 0E8390 002C39E0 8FB3001C */ lw $s3, 0x1c($sp)
/* 0E8394 002C39E4 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8398 002C39E8 8FB10014 */ lw $s1, 0x14($sp)
/* 0E839C 002C39EC 8FB00010 */ lw $s0, 0x10($sp)
/* 0E83A0 002C39F0 03E00008 */ jr $ra
/* 0E83A4 002C39F4 27BD0028 */ addiu $sp, $sp, 0x28
func_002C39F8:
/* 0E83A8 002C39F8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 0E83AC 002C39FC AFB10014 */ sw $s1, 0x14($sp)
/* 0E83B0 002C3A00 0080882D */ move $s1, $a0
/* 0E83B4 002C3A04 AFB20018 */ sw $s2, 0x18($sp)
/* 0E83B8 002C3A08 00A0902D */ move $s2, $a1
/* 0E83BC 002C3A0C AFB3001C */ sw $s3, 0x1c($sp)
/* 0E83C0 002C3A10 00C0982D */ move $s3, $a2
/* 0E83C4 002C3A14 3C04802E */ lui $a0, %hi(D_802DA890) # $a0, 0x802e
/* 0E83C8 002C3A18 8C84A890 */ lw $a0, %lo(D_802DA890)($a0)
/* 0E83CC 002C3A1C 0000182D */ move $v1, $zero
/* 0E83D0 002C3A20 AFBF0024 */ sw $ra, 0x24($sp)
/* 0E83D4 002C3A24 AFB40020 */ sw $s4, 0x20($sp)
/* 0E83D8 002C3A28 AFB00010 */ sw $s0, 0x10($sp)
.L002C3A2C:
/* 0E83DC 002C3A2C 8C820000 */ lw $v0, ($a0)
/* 0E83E0 002C3A30 10400006 */ beqz $v0, .L002C3A4C
/* 0E83E4 002C3A34 28620080 */ slti $v0, $v1, 0x80
/* 0E83E8 002C3A38 24630001 */ addiu $v1, $v1, 1
/* 0E83EC 002C3A3C 28620080 */ slti $v0, $v1, 0x80
/* 0E83F0 002C3A40 1440FFFA */ bnez $v0, .L002C3A2C
/* 0E83F4 002C3A44 24840004 */ addiu $a0, $a0, 4
/* 0E83F8 002C3A48 28620080 */ slti $v0, $v1, 0x80
.L002C3A4C:
/* 0E83FC 002C3A4C 54400003 */ bnezl $v0, .L002C3A5C
/* 0E8400 002C3A50 24040168 */ li $a0, 360
func_002C3A54:
/* 0E8404 002C3A54 080B0E95 */ j func_002C3A54
/* 0E8408 002C3A58 00000000 */ nop
.L002C3A5C:
/* 0E840C 002C3A5C 0C00AB39 */ jal func_0002ACE4
/* 0E8410 002C3A60 0060A02D */ move $s4, $v1
/* 0E8414 002C3A64 00142080 */ sll $a0, $s4, 2
/* 0E8418 002C3A68 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E841C 002C3A6C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8420 002C3A70 3C05802E */ lui $a1, %hi(D_802DA488) # $a1, 0x802e
/* 0E8424 002C3A74 24A5A488 */ addiu $a1, %lo(D_802DA488) # addiu $a1, $a1, -0x5b78
/* 0E8428 002C3A78 00832021 */ addu $a0, $a0, $v1
/* 0E842C 002C3A7C 8CA30000 */ lw $v1, ($a1)
/* 0E8430 002C3A80 0040802D */ move $s0, $v0
/* 0E8434 002C3A84 AC900000 */ sw $s0, ($a0)
/* 0E8438 002C3A88 24630001 */ addiu $v1, $v1, 1
/* 0E843C 002C3A8C 16000003 */ bnez $s0, .L002C3A9C
/* 0E8440 002C3A90 ACA30000 */ sw $v1, ($a1)
func_002C3A94:
/* 0E8444 002C3A94 080B0EA5 */ j func_002C3A94
/* 0E8448 002C3A98 00000000 */ nop
.L002C3A9C:
/* 0E844C 002C3A9C 36620001 */ ori $v0, $s3, 1
/* 0E8450 002C3AA0 A2020000 */ sb $v0, ($s0)
/* 0E8454 002C3AA4 AE120008 */ sw $s2, 8($s0)
/* 0E8458 002C3AA8 AE12015C */ sw $s2, 0x15c($s0)
/* 0E845C 002C3AAC AE120164 */ sw $s2, 0x164($s0)
/* 0E8460 002C3AB0 A2000002 */ sb $zero, 2($s0)
/* 0E8464 002C3AB4 AE000060 */ sw $zero, 0x60($s0)
/* 0E8468 002C3AB8 AE000064 */ sw $zero, 0x64($s0)
/* 0E846C 002C3ABC AE11006C */ sw $s1, 0x6c($s0)
/* 0E8470 002C3AC0 AE000068 */ sw $zero, 0x68($s0)
/* 0E8474 002C3AC4 92220003 */ lbu $v0, 3($s1)
/* 0E8478 002C3AC8 3C04802E */ lui $a0, %hi(D_802D9CA0) # $a0, 0x802e
/* 0E847C 002C3ACC 24849CA0 */ addiu $a0, %lo(D_802D9CA0) # addiu $a0, $a0, -0x6360
/* 0E8480 002C3AD0 A2020003 */ sb $v0, 3($s0)
/* 0E8484 002C3AD4 8C820000 */ lw $v0, ($a0)
/* 0E8488 002C3AD8 AE020144 */ sw $v0, 0x144($s0)
/* 0E848C 002C3ADC 8E230148 */ lw $v1, 0x148($s1)
/* 0E8490 002C3AE0 24420001 */ addiu $v0, $v0, 1
/* 0E8494 002C3AE4 AC820000 */ sw $v0, ($a0)
/* 0E8498 002C3AE8 AE030148 */ sw $v1, 0x148($s0)
/* 0E849C 002C3AEC 8E23014C */ lw $v1, 0x14c($s1)
/* 0E84A0 002C3AF0 2402FFFF */ li $v0, -1
/* 0E84A4 002C3AF4 A2020006 */ sb $v0, 6($s0)
/* 0E84A8 002C3AF8 A2020007 */ sb $v0, 7($s0)
/* 0E84AC 002C3AFC AE03014C */ sw $v1, 0x14c($s0)
/* 0E84B0 002C3B00 92220004 */ lbu $v0, 4($s1)
/* 0E84B4 002C3B04 0220282D */ move $a1, $s1
/* 0E84B8 002C3B08 AE000160 */ sw $zero, 0x160($s0)
/* 0E84BC 002C3B0C A2020004 */ sb $v0, 4($s0)
/* 0E84C0 002C3B10 8E22013C */ lw $v0, 0x13c($s1)
/* 0E84C4 002C3B14 3C01802E */ lui $at, %hi(D_802D9CA8) # $at, 0x802e
/* 0E84C8 002C3B18 C4209CA8 */ lwc1 $f0, %lo(D_802D9CA8)($at)
/* 0E84CC 002C3B1C 0200202D */ move $a0, $s0
/* 0E84D0 002C3B20 AE02013C */ sw $v0, 0x13c($s0)
/* 0E84D4 002C3B24 8E220140 */ lw $v0, 0x140($s1)
/* 0E84D8 002C3B28 0000182D */ move $v1, $zero
/* 0E84DC 002C3B2C E6000150 */ swc1 $f0, 0x150($s0)
/* 0E84E0 002C3B30 AE000154 */ sw $zero, 0x154($s0)
/* 0E84E4 002C3B34 AE000158 */ sw $zero, 0x158($s0)
/* 0E84E8 002C3B38 AE020140 */ sw $v0, 0x140($s0)
.L002C3B3C:
/* 0E84EC 002C3B3C 8CA20084 */ lw $v0, 0x84($a1)
/* 0E84F0 002C3B40 24A50004 */ addiu $a1, $a1, 4
/* 0E84F4 002C3B44 24630001 */ addiu $v1, $v1, 1
/* 0E84F8 002C3B48 AC820084 */ sw $v0, 0x84($a0)
/* 0E84FC 002C3B4C 28620010 */ slti $v0, $v1, 0x10
/* 0E8500 002C3B50 1440FFFA */ bnez $v0, .L002C3B3C
/* 0E8504 002C3B54 24840004 */ addiu $a0, $a0, 4
/* 0E8508 002C3B58 0000182D */ move $v1, $zero
/* 0E850C 002C3B5C 0220202D */ move $a0, $s1
/* 0E8510 002C3B60 0200282D */ move $a1, $s0
.L002C3B64:
/* 0E8514 002C3B64 8C8200C4 */ lw $v0, 0xc4($a0)
/* 0E8518 002C3B68 24840004 */ addiu $a0, $a0, 4
/* 0E851C 002C3B6C 24630001 */ addiu $v1, $v1, 1
/* 0E8520 002C3B70 ACA200C4 */ sw $v0, 0xc4($a1)
/* 0E8524 002C3B74 28620003 */ slti $v0, $v1, 3
/* 0E8528 002C3B78 1440FFFA */ bnez $v0, .L002C3B64
/* 0E852C 002C3B7C 24A50004 */ addiu $a1, $a1, 4
/* 0E8530 002C3B80 0C0B0C52 */ jal func_002C3148
/* 0E8534 002C3B84 0200202D */ move $a0, $s0
/* 0E8538 002C3B88 3C02802E */ lui $v0, %hi(D_802D9CA4) # $v0, 0x802e
/* 0E853C 002C3B8C 8C429CA4 */ lw $v0, %lo(D_802D9CA4)($v0)
/* 0E8540 002C3B90 1040000E */ beqz $v0, .L002C3BCC
/* 0E8544 002C3B94 00000000 */ nop
/* 0E8548 002C3B98 3C05802E */ lui $a1, %hi(D_802DAC98) # $a1, 0x802e
/* 0E854C 002C3B9C 24A5AC98 */ addiu $a1, %lo(D_802DAC98) # addiu $a1, $a1, -0x5368
/* 0E8550 002C3BA0 8CA20000 */ lw $v0, ($a1)
/* 0E8554 002C3BA4 00022080 */ sll $a0, $v0, 2
/* 0E8558 002C3BA8 3C01802E */ lui $at, 0x802e
/* 0E855C 002C3BAC 00240821 */ addu $at, $at, $a0
/* 0E8560 002C3BB0 AC34A898 */ sw $s4, -0x5768($at)
/* 0E8564 002C3BB4 8E030144 */ lw $v1, 0x144($s0)
/* 0E8568 002C3BB8 24420001 */ addiu $v0, $v0, 1
/* 0E856C 002C3BBC ACA20000 */ sw $v0, ($a1)
/* 0E8570 002C3BC0 3C01802E */ lui $at, 0x802e
/* 0E8574 002C3BC4 00240821 */ addu $at, $at, $a0
/* 0E8578 002C3BC8 AC23AA98 */ sw $v1, -0x5568($at)
.L002C3BCC:
/* 0E857C 002C3BCC 3C03802E */ lui $v1, %hi(D_802D9CA0) # $v1, 0x802e
/* 0E8580 002C3BD0 24639CA0 */ addiu $v1, %lo(D_802D9CA0) # addiu $v1, $v1, -0x6360
/* 0E8584 002C3BD4 8C620000 */ lw $v0, ($v1)
/* 0E8588 002C3BD8 14400002 */ bnez $v0, .L002C3BE4
/* 0E858C 002C3BDC 24020001 */ li $v0, 1
/* 0E8590 002C3BE0 AC620000 */ sw $v0, ($v1)
.L002C3BE4:
/* 0E8594 002C3BE4 0C0B0CE4 */ jal func_002C3390
/* 0E8598 002C3BE8 0200202D */ move $a0, $s0
/* 0E859C 002C3BEC 0200102D */ move $v0, $s0
/* 0E85A0 002C3BF0 8FBF0024 */ lw $ra, 0x24($sp)
/* 0E85A4 002C3BF4 8FB40020 */ lw $s4, 0x20($sp)
/* 0E85A8 002C3BF8 8FB3001C */ lw $s3, 0x1c($sp)
/* 0E85AC 002C3BFC 8FB20018 */ lw $s2, 0x18($sp)
/* 0E85B0 002C3C00 8FB10014 */ lw $s1, 0x14($sp)
/* 0E85B4 002C3C04 8FB00010 */ lw $s0, 0x10($sp)
/* 0E85B8 002C3C08 03E00008 */ jr $ra
/* 0E85BC 002C3C0C 27BD0028 */ addiu $sp, $sp, 0x28
/* 0E85C0 002C3C10 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E85C4 002C3C14 AFB10014 */ sw $s1, 0x14($sp)
/* 0E85C8 002C3C18 0080882D */ move $s1, $a0
/* 0E85CC 002C3C1C AFBF0018 */ sw $ra, 0x18($sp)
/* 0E85D0 002C3C20 AFB00010 */ sw $s0, 0x10($sp)
/* 0E85D4 002C3C24 92220000 */ lbu $v0, ($s1)
/* 0E85D8 002C3C28 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 0E85DC 002C3C2C 44810000 */ mtc1 $at, $f0
/* 0E85E0 002C3C30 8E240060 */ lw $a0, 0x60($s1)
/* 0E85E4 002C3C34 AE250008 */ sw $a1, 8($s1)
/* 0E85E8 002C3C38 AE25015C */ sw $a1, 0x15c($s1)
/* 0E85EC 002C3C3C AE250164 */ sw $a1, 0x164($s1)
/* 0E85F0 002C3C40 A2200002 */ sb $zero, 2($s1)
/* 0E85F4 002C3C44 AE200154 */ sw $zero, 0x154($s1)
/* 0E85F8 002C3C48 00461025 */ or $v0, $v0, $a2
/* 0E85FC 002C3C4C A2220000 */ sb $v0, ($s1)
/* 0E8600 002C3C50 10800004 */ beqz $a0, .L002C3C64
/* 0E8604 002C3C54 E6200150 */ swc1 $f0, 0x150($s1)
/* 0E8608 002C3C58 0C00AB4B */ jal func_0002AD2C
/* 0E860C 002C3C5C 00000000 */ nop
/* 0E8610 002C3C60 AE200060 */ sw $zero, 0x60($s1)
.L002C3C64:
/* 0E8614 002C3C64 8E240068 */ lw $a0, 0x68($s1)
/* 0E8618 002C3C68 10800003 */ beqz $a0, .L002C3C78
/* 0E861C 002C3C6C 0000802D */ move $s0, $zero
/* 0E8620 002C3C70 0C0B0FCF */ jal func_002C3F3C
/* 0E8624 002C3C74 00000000 */ nop
.L002C3C78:
/* 0E8628 002C3C78 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E862C 002C3C7C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8630 002C3C80 00101080 */ sll $v0, $s0, 2
/* 0E8634 002C3C84 00431021 */ addu $v0, $v0, $v1
/* 0E8638 002C3C88 8C440000 */ lw $a0, ($v0)
/* 0E863C 002C3C8C 10800006 */ beqz $a0, .L002C3CA8
/* 0E8640 002C3C90 26100001 */ addiu $s0, $s0, 1
/* 0E8644 002C3C94 8C82006C */ lw $v0, 0x6c($a0)
/* 0E8648 002C3C98 14510003 */ bne $v0, $s1, .L002C3CA8
/* 0E864C 002C3C9C 00000000 */ nop
/* 0E8650 002C3CA0 0C0B0FCF */ jal func_002C3F3C
/* 0E8654 002C3CA4 00000000 */ nop
.L002C3CA8:
/* 0E8658 002C3CA8 2A020080 */ slti $v0, $s0, 0x80
/* 0E865C 002C3CAC 1440FFF2 */ bnez $v0, .L002C3C78
/* 0E8660 002C3CB0 2402FFFF */ li $v0, -1
/* 0E8664 002C3CB4 A2220006 */ sb $v0, 6($s1)
/* 0E8668 002C3CB8 A2220007 */ sb $v0, 7($s1)
/* 0E866C 002C3CBC 3C01802E */ lui $at, %hi(D_802D9CA8) # $at, 0x802e
/* 0E8670 002C3CC0 C4209CA8 */ lwc1 $f0, %lo(D_802D9CA8)($at)
/* 0E8674 002C3CC4 0220202D */ move $a0, $s1
/* 0E8678 002C3CC8 AE200064 */ sw $zero, 0x64($s1)
/* 0E867C 002C3CCC AE20006C */ sw $zero, 0x6c($s1)
/* 0E8680 002C3CD0 AE200068 */ sw $zero, 0x68($s1)
/* 0E8684 002C3CD4 AE200154 */ sw $zero, 0x154($s1)
/* 0E8688 002C3CD8 AE200158 */ sw $zero, 0x158($s1)
/* 0E868C 002C3CDC 0C0B0C52 */ jal func_002C3148
/* 0E8690 002C3CE0 E6200150 */ swc1 $f0, 0x150($s1)
/* 0E8694 002C3CE4 0C0B0CE4 */ jal func_002C3390
/* 0E8698 002C3CE8 0220202D */ move $a0, $s1
/* 0E869C 002C3CEC 0220102D */ move $v0, $s1
/* 0E86A0 002C3CF0 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E86A4 002C3CF4 8FB10014 */ lw $s1, 0x14($sp)
/* 0E86A8 002C3CF8 8FB00010 */ lw $s0, 0x10($sp)
/* 0E86AC 002C3CFC 03E00008 */ jr $ra
/* 0E86B0 002C3D00 27BD0020 */ addiu $sp, $sp, 0x20
func_002C3D04:
/* 0E86B4 002C3D04 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E86B8 002C3D08 AFB00010 */ sw $s0, 0x10($sp)
/* 0E86BC 002C3D0C 0080802D */ move $s0, $a0
/* 0E86C0 002C3D10 2402FFFF */ li $v0, -1
/* 0E86C4 002C3D14 AFBF0014 */ sw $ra, 0x14($sp)
/* 0E86C8 002C3D18 A2020006 */ sb $v0, 6($s0)
/* 0E86CC 002C3D1C A2020007 */ sb $v0, 7($s0)
/* 0E86D0 002C3D20 8E02015C */ lw $v0, 0x15c($s0)
/* 0E86D4 002C3D24 3C013F80 */ li $at, 0x3F800000 # 1.000000
/* 0E86D8 002C3D28 44810000 */ mtc1 $at, $f0
/* 0E86DC 002C3D2C A2000002 */ sb $zero, 2($s0)
/* 0E86E0 002C3D30 3C01802E */ lui $at, %hi(D_802D9CA8) # $at, 0x802e
/* 0E86E4 002C3D34 C4229CA8 */ lwc1 $f2, %lo(D_802D9CA8)($at)
/* 0E86E8 002C3D38 AE000154 */ sw $zero, 0x154($s0)
/* 0E86EC 002C3D3C AE000154 */ sw $zero, 0x154($s0)
/* 0E86F0 002C3D40 AE000158 */ sw $zero, 0x158($s0)
/* 0E86F4 002C3D44 AE020008 */ sw $v0, 8($s0)
/* 0E86F8 002C3D48 AE020164 */ sw $v0, 0x164($s0)
/* 0E86FC 002C3D4C E6000150 */ swc1 $f0, 0x150($s0)
/* 0E8700 002C3D50 0C0B0C52 */ jal func_002C3148
/* 0E8704 002C3D54 E6020150 */ swc1 $f2, 0x150($s0)
/* 0E8708 002C3D58 0C0B0CE4 */ jal func_002C3390
/* 0E870C 002C3D5C 0200202D */ move $a0, $s0
/* 0E8710 002C3D60 0200102D */ move $v0, $s0
/* 0E8714 002C3D64 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E8718 002C3D68 8FB00010 */ lw $s0, 0x10($sp)
/* 0E871C 002C3D6C 03E00008 */ jr $ra
/* 0E8720 002C3D70 27BD0018 */ addiu $sp, $sp, 0x18
/* 0E8724 002C3D74 3C028007 */ lui $v0, %hi(D_8007419C) # $v0, 0x8007
/* 0E8728 002C3D78 8C42419C */ lw $v0, %lo(D_8007419C)($v0)
/* 0E872C 002C3D7C 27BDFFC8 */ addiu $sp, $sp, -0x38
/* 0E8730 002C3D80 AFBF002C */ sw $ra, 0x2c($sp)
/* 0E8734 002C3D84 AFB60028 */ sw $s6, 0x28($sp)
/* 0E8738 002C3D88 AFB50024 */ sw $s5, 0x24($sp)
/* 0E873C 002C3D8C AFB40020 */ sw $s4, 0x20($sp)
/* 0E8740 002C3D90 AFB3001C */ sw $s3, 0x1c($sp)
/* 0E8744 002C3D94 AFB20018 */ sw $s2, 0x18($sp)
/* 0E8748 002C3D98 AFB10014 */ sw $s1, 0x14($sp)
/* 0E874C 002C3D9C AFB00010 */ sw $s0, 0x10($sp)
/* 0E8750 002C3DA0 F7B40030 */ sdc1 $f20, 0x30($sp)
/* 0E8754 002C3DA4 80420078 */ lb $v0, 0x78($v0)
/* 0E8758 002C3DA8 24030001 */ li $v1, 1
/* 0E875C 002C3DAC 10430042 */ beq $v0, $v1, .L002C3EB8
/* 0E8760 002C3DB0 00000000 */ nop
/* 0E8764 002C3DB4 3C01802E */ lui $at, %hi(D_802D9CA4) # $at, 0x802e
/* 0E8768 002C3DB8 AC239CA4 */ sw $v1, %lo(D_802D9CA4)($at)
/* 0E876C 002C3DBC 0C0B0C00 */ jal func_002C3000
/* 0E8770 002C3DC0 0000902D */ move $s2, $zero
/* 0E8774 002C3DC4 3C02802E */ lui $v0, %hi(D_802DAC98) # $v0, 0x802e
/* 0E8778 002C3DC8 8C42AC98 */ lw $v0, %lo(D_802DAC98)($v0)
/* 0E877C 002C3DCC 18400038 */ blez $v0, .L002C3EB0
/* 0E8780 002C3DD0 24160001 */ li $s6, 1
/* 0E8784 002C3DD4 3C013FF0 */ li $at, 0x3FF00000 # 1.875000
/* 0E8788 002C3DD8 4481A800 */ mtc1 $at, $f21
/* 0E878C 002C3DDC 4480A000 */ mtc1 $zero, $f20
/* 0E8790 002C3DE0 2415FFFF */ li $s5, -1
/* 0E8794 002C3DE4 3C14802E */ lui $s4, %hi(D_802DAA98) # $s4, 0x802e
/* 0E8798 002C3DE8 2694AA98 */ addiu $s4, %lo(D_802DAA98) # addiu $s4, $s4, -0x5568
/* 0E879C 002C3DEC 3C13802E */ lui $s3, %hi(D_802DA898) # $s3, 0x802e
/* 0E87A0 002C3DF0 2673A898 */ addiu $s3, %lo(D_802DA898) # addiu $s3, $s3, -0x5768
.L002C3DF4:
/* 0E87A4 002C3DF4 8E620000 */ lw $v0, ($s3)
/* 0E87A8 002C3DF8 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E87AC 002C3DFC 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E87B0 002C3E00 00021080 */ sll $v0, $v0, 2
/* 0E87B4 002C3E04 00431021 */ addu $v0, $v0, $v1
/* 0E87B8 002C3E08 8C500000 */ lw $s0, ($v0)
/* 0E87BC 002C3E0C 52000022 */ beql $s0, $zero, .L002C3E98
/* 0E87C0 002C3E10 26940004 */ addiu $s4, $s4, 4
/* 0E87C4 002C3E14 8E030144 */ lw $v1, 0x144($s0)
/* 0E87C8 002C3E18 8E820000 */ lw $v0, ($s4)
/* 0E87CC 002C3E1C 5462001E */ bnel $v1, $v0, .L002C3E98
/* 0E87D0 002C3E20 26940004 */ addiu $s4, $s4, 4
/* 0E87D4 002C3E24 92020000 */ lbu $v0, ($s0)
/* 0E87D8 002C3E28 5040001B */ beql $v0, $zero, .L002C3E98
/* 0E87DC 002C3E2C 26940004 */ addiu $s4, $s4, 4
/* 0E87E0 002C3E30 30420092 */ andi $v0, $v0, 0x92
/* 0E87E4 002C3E34 54400018 */ bnezl $v0, .L002C3E98
/* 0E87E8 002C3E38 26940004 */ addiu $s4, $s4, 4
/* 0E87EC 002C3E3C C6020154 */ lwc1 $f2, 0x154($s0)
/* 0E87F0 002C3E40 C6000150 */ lwc1 $f0, 0x150($s0)
/* 0E87F4 002C3E44 46001080 */ add.s $f2, $f2, $f0
/* 0E87F8 002C3E48 0000882D */ move $s1, $zero
/* 0E87FC 002C3E4C E6020154 */ swc1 $f2, 0x154($s0)
.L002C3E50:
/* 0E8800 002C3E50 C6000154 */ lwc1 $f0, 0x154($s0)
/* 0E8804 002C3E54 46000021 */ cvt.d.s $f0, $f0
/* 0E8808 002C3E58 4634003C */ c.lt.d $f0, $f20
/* 0E880C 002C3E5C 00000000 */ nop
/* 0E8810 002C3E60 4501000B */ .byte 0x45,0x01,0x00,0x0B /* Because of invalid n64 opcode bc1t */
/* 0E8814 002C3E64 0200202D */ /* 0E8818 002C3E68 46340001 */ sub.d $f0, $f0, $f20
/* 0E881C 002C3E6C 46200020 */ cvt.s.d $f0, $f0
/* 0E8820 002C3E70 0C0B1D01 */ jal func_002C7404
/* 0E8824 002C3E74 E6000154 */ swc1 $f0, 0x154($s0)
/* 0E8828 002C3E78 14560003 */ bne $v0, $s6, .L002C3E88
/* 0E882C 002C3E7C 00000000 */ nop
/* 0E8830 002C3E80 080B0FA4 */ j func_002C3E90
/* 0E8834 002C3E84 24110001 */ li $s1, 1
.L002C3E88:
/* 0E8838 002C3E88 1455FFF1 */ bne $v0, $s5, .L002C3E50
/* 0E883C 002C3E8C 00000000 */ nop
func_002C3E90:
.L002C3E90:
/* 0E8840 002C3E90 16200007 */ bnez $s1, .L002C3EB0
/* 0E8844 002C3E94 26940004 */ addiu $s4, $s4, 4
.L002C3E98:
/* 0E8848 002C3E98 3C02802E */ lui $v0, %hi(D_802DAC98) # $v0, 0x802e
/* 0E884C 002C3E9C 8C42AC98 */ lw $v0, %lo(D_802DAC98)($v0)
/* 0E8850 002C3EA0 26520001 */ addiu $s2, $s2, 1
/* 0E8854 002C3EA4 0242102A */ slt $v0, $s2, $v0
/* 0E8858 002C3EA8 1440FFD2 */ bnez $v0, .L002C3DF4
/* 0E885C 002C3EAC 26730004 */ addiu $s3, $s3, 4
.L002C3EB0:
/* 0E8860 002C3EB0 3C01802E */ lui $at, %hi(D_802D9CA4) # $at, 0x802e
/* 0E8864 002C3EB4 AC209CA4 */ sw $zero, %lo(D_802D9CA4)($at)
.L002C3EB8:
/* 0E8868 002C3EB8 8FBF002C */ lw $ra, 0x2c($sp)
/* 0E886C 002C3EBC 8FB60028 */ lw $s6, 0x28($sp)
/* 0E8870 002C3EC0 8FB50024 */ lw $s5, 0x24($sp)
/* 0E8874 002C3EC4 8FB40020 */ lw $s4, 0x20($sp)
/* 0E8878 002C3EC8 8FB3001C */ lw $s3, 0x1c($sp)
/* 0E887C 002C3ECC 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8880 002C3ED0 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8884 002C3ED4 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8888 002C3ED8 D7B40030 */ ldc1 $f20, 0x30($sp)
/* 0E888C 002C3EDC 03E00008 */ jr $ra
/* 0E8890 002C3EE0 27BD0038 */ addiu $sp, $sp, 0x38
/* 0E8894 002C3EE4 3C02802E */ lui $v0, %hi(D_802DAC98) # $v0, 0x802e
/* 0E8898 002C3EE8 8C42AC98 */ lw $v0, %lo(D_802DAC98)($v0)
/* 0E889C 002C3EEC 18400011 */ blez $v0, .L002C3F34
/* 0E88A0 002C3EF0 0000202D */ move $a0, $zero
/* 0E88A4 002C3EF4 3C08802E */ lui $t0, %hi(D_802DA890) # $t0, 0x802e
/* 0E88A8 002C3EF8 8D08A890 */ lw $t0, %lo(D_802DA890)($t0)
/* 0E88AC 002C3EFC 0040382D */ move $a3, $v0
/* 0E88B0 002C3F00 3C06802E */ lui $a2, %hi(D_802DAA98) # $a2, 0x802e
/* 0E88B4 002C3F04 24C6AA98 */ addiu $a2, %lo(D_802DAA98) # addiu $a2, $a2, -0x5568
/* 0E88B8 002C3F08 3C05802E */ lui $a1, %hi(D_802DA898) # $a1, 0x802e
/* 0E88BC 002C3F0C 24A5A898 */ addiu $a1, %lo(D_802DA898) # addiu $a1, $a1, -0x5768
.L002C3F10:
/* 0E88C0 002C3F10 8CA20000 */ lw $v0, ($a1)
/* 0E88C4 002C3F14 00021080 */ sll $v0, $v0, 2
/* 0E88C8 002C3F18 00481021 */ addu $v0, $v0, $t0
/* 0E88CC 002C3F1C 8C420000 */ lw $v0, ($v0)
/* 0E88D0 002C3F20 24C60004 */ addiu $a2, $a2, 4
/* 0E88D4 002C3F24 24840001 */ addiu $a0, $a0, 1
/* 0E88D8 002C3F28 0087102A */ slt $v0, $a0, $a3
/* 0E88DC 002C3F2C 1440FFF8 */ bnez $v0, .L002C3F10
/* 0E88E0 002C3F30 24A50004 */ addiu $a1, $a1, 4
.L002C3F34:
/* 0E88E4 002C3F34 03E00008 */ jr $ra
/* 0E88E8 002C3F38 00000000 */ nop
func_002C3F3C:
/* 0E88EC 002C3F3C 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E88F0 002C3F40 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E88F4 002C3F44 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E88F8 002C3F48 AFB20018 */ sw $s2, 0x18($sp)
/* 0E88FC 002C3F4C 0080902D */ move $s2, $a0
/* 0E8900 002C3F50 AFB00010 */ sw $s0, 0x10($sp)
/* 0E8904 002C3F54 0000802D */ move $s0, $zero
/* 0E8908 002C3F58 AFBF001C */ sw $ra, 0x1c($sp)
/* 0E890C 002C3F5C AFB10014 */ sw $s1, 0x14($sp)
.L002C3F60:
/* 0E8910 002C3F60 8C620000 */ lw $v0, ($v1)
/* 0E8914 002C3F64 10520006 */ beq $v0, $s2, .L002C3F80
/* 0E8918 002C3F68 2A020080 */ slti $v0, $s0, 0x80
/* 0E891C 002C3F6C 26100001 */ addiu $s0, $s0, 1
/* 0E8920 002C3F70 2A020080 */ slti $v0, $s0, 0x80
/* 0E8924 002C3F74 1440FFFA */ bnez $v0, .L002C3F60
/* 0E8928 002C3F78 24630004 */ addiu $v1, $v1, 4
/* 0E892C 002C3F7C 2A020080 */ slti $v0, $s0, 0x80
.L002C3F80:
/* 0E8930 002C3F80 10400044 */ beqz $v0, .L002C4094
/* 0E8934 002C3F84 00000000 */ nop
/* 0E8938 002C3F88 8E440068 */ lw $a0, 0x68($s2)
/* 0E893C 002C3F8C 10800003 */ beqz $a0, .L002C3F9C
/* 0E8940 002C3F90 0000882D */ move $s1, $zero
/* 0E8944 002C3F94 0C0B0FCF */ jal func_002C3F3C
/* 0E8948 002C3F98 00000000 */ nop
.L002C3F9C:
/* 0E894C 002C3F9C 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8950 002C3FA0 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8954 002C3FA4 00111080 */ sll $v0, $s1, 2
/* 0E8958 002C3FA8 00431021 */ addu $v0, $v0, $v1
/* 0E895C 002C3FAC 8C440000 */ lw $a0, ($v0)
/* 0E8960 002C3FB0 10800006 */ beqz $a0, .L002C3FCC
/* 0E8964 002C3FB4 26310001 */ addiu $s1, $s1, 1
/* 0E8968 002C3FB8 8C82006C */ lw $v0, 0x6c($a0)
/* 0E896C 002C3FBC 14520003 */ bne $v0, $s2, .L002C3FCC
/* 0E8970 002C3FC0 00000000 */ nop
/* 0E8974 002C3FC4 0C0B0FCF */ jal func_002C3F3C
/* 0E8978 002C3FC8 00000000 */ nop
.L002C3FCC:
/* 0E897C 002C3FCC 2A220080 */ slti $v0, $s1, 0x80
/* 0E8980 002C3FD0 1440FFF2 */ bnez $v0, .L002C3F9C
/* 0E8984 002C3FD4 00000000 */ nop
/* 0E8988 002C3FD8 8E450064 */ lw $a1, 0x64($s2)
/* 0E898C 002C3FDC 10A00018 */ beqz $a1, .L002C4040
/* 0E8990 002C3FE0 0000882D */ move $s1, $zero
/* 0E8994 002C3FE4 0240202D */ move $a0, $s2
/* 0E8998 002C3FE8 90A20000 */ lbu $v0, ($a1)
/* 0E899C 002C3FEC 00A0182D */ move $v1, $a1
/* 0E89A0 002C3FF0 ACA00068 */ sw $zero, 0x68($a1)
/* 0E89A4 002C3FF4 304200EF */ andi $v0, $v0, 0xef
/* 0E89A8 002C3FF8 A0A20000 */ sb $v0, ($a1)
.L002C3FFC:
/* 0E89AC 002C3FFC 8C820084 */ lw $v0, 0x84($a0)
/* 0E89B0 002C4000 24840004 */ addiu $a0, $a0, 4
/* 0E89B4 002C4004 26310001 */ addiu $s1, $s1, 1
/* 0E89B8 002C4008 AC620084 */ sw $v0, 0x84($v1)
/* 0E89BC 002C400C 2A220010 */ slti $v0, $s1, 0x10
/* 0E89C0 002C4010 1440FFFA */ bnez $v0, .L002C3FFC
/* 0E89C4 002C4014 24630004 */ addiu $v1, $v1, 4
/* 0E89C8 002C4018 0000882D */ move $s1, $zero
/* 0E89CC 002C401C 0240202D */ move $a0, $s2
/* 0E89D0 002C4020 00A0182D */ move $v1, $a1
.L002C4024:
/* 0E89D4 002C4024 8C8200C4 */ lw $v0, 0xc4($a0)
/* 0E89D8 002C4028 24840004 */ addiu $a0, $a0, 4
/* 0E89DC 002C402C 26310001 */ addiu $s1, $s1, 1
/* 0E89E0 002C4030 AC6200C4 */ sw $v0, 0xc4($v1)
/* 0E89E4 002C4034 2A220003 */ slti $v0, $s1, 3
/* 0E89E8 002C4038 1440FFFA */ bnez $v0, .L002C4024
/* 0E89EC 002C403C 24630004 */ addiu $v1, $v1, 4
.L002C4040:
/* 0E89F0 002C4040 8E440060 */ lw $a0, 0x60($s2)
/* 0E89F4 002C4044 10800004 */ beqz $a0, .L002C4058
/* 0E89F8 002C4048 00000000 */ nop
/* 0E89FC 002C404C 0C00AB4B */ jal func_0002AD2C
/* 0E8A00 002C4050 00000000 */ nop
/* 0E8A04 002C4054 AE400060 */ sw $zero, 0x60($s2)
.L002C4058:
/* 0E8A08 002C4058 3C11802E */ lui $s1, %hi(D_802DA890) # $s1, 0x802e
/* 0E8A0C 002C405C 2631A890 */ addiu $s1, %lo(D_802DA890) # addiu $s1, $s1, -0x5770
/* 0E8A10 002C4060 8E220000 */ lw $v0, ($s1)
/* 0E8A14 002C4064 00108080 */ sll $s0, $s0, 2
/* 0E8A18 002C4068 02021021 */ addu $v0, $s0, $v0
/* 0E8A1C 002C406C 0C00AB4B */ jal func_0002AD2C
/* 0E8A20 002C4070 8C440000 */ lw $a0, ($v0)
/* 0E8A24 002C4074 3C04802E */ lui $a0, %hi(D_802DA488) # $a0, 0x802e
/* 0E8A28 002C4078 2484A488 */ addiu $a0, %lo(D_802DA488) # addiu $a0, $a0, -0x5b78
/* 0E8A2C 002C407C 8E230000 */ lw $v1, ($s1)
/* 0E8A30 002C4080 8C820000 */ lw $v0, ($a0)
/* 0E8A34 002C4084 02038021 */ addu $s0, $s0, $v1
/* 0E8A38 002C4088 2442FFFF */ addiu $v0, $v0, -1
/* 0E8A3C 002C408C AE000000 */ sw $zero, ($s0)
/* 0E8A40 002C4090 AC820000 */ sw $v0, ($a0)
.L002C4094:
/* 0E8A44 002C4094 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E8A48 002C4098 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8A4C 002C409C 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8A50 002C40A0 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8A54 002C40A4 03E00008 */ jr $ra
/* 0E8A58 002C40A8 27BD0020 */ addiu $sp, $sp, 0x20
func_002C40AC:
/* 0E8A5C 002C40AC 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8A60 002C40B0 AFB10014 */ sw $s1, 0x14($sp)
/* 0E8A64 002C40B4 0080882D */ move $s1, $a0
/* 0E8A68 002C40B8 AFB00010 */ sw $s0, 0x10($sp)
/* 0E8A6C 002C40BC 0000802D */ move $s0, $zero
/* 0E8A70 002C40C0 AFBF0018 */ sw $ra, 0x18($sp)
.L002C40C4:
/* 0E8A74 002C40C4 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8A78 002C40C8 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8A7C 002C40CC 00101080 */ sll $v0, $s0, 2
/* 0E8A80 002C40D0 00431021 */ addu $v0, $v0, $v1
/* 0E8A84 002C40D4 8C440000 */ lw $a0, ($v0)
/* 0E8A88 002C40D8 10800006 */ beqz $a0, .L002C40F4
/* 0E8A8C 002C40DC 26100001 */ addiu $s0, $s0, 1
/* 0E8A90 002C40E0 8C820144 */ lw $v0, 0x144($a0)
/* 0E8A94 002C40E4 14510003 */ bne $v0, $s1, .L002C40F4
/* 0E8A98 002C40E8 00000000 */ nop
/* 0E8A9C 002C40EC 0C0B0FCF */ jal func_002C3F3C
/* 0E8AA0 002C40F0 00000000 */ nop
.L002C40F4:
/* 0E8AA4 002C40F4 2A020080 */ slti $v0, $s0, 0x80
/* 0E8AA8 002C40F8 1440FFF2 */ bnez $v0, .L002C40C4
/* 0E8AAC 002C40FC 00000000 */ nop
/* 0E8AB0 002C4100 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E8AB4 002C4104 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8AB8 002C4108 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8ABC 002C410C 03E00008 */ jr $ra
/* 0E8AC0 002C4110 27BD0020 */ addiu $sp, $sp, 0x20
/* 0E8AC4 002C4114 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E8AC8 002C4118 AFB00010 */ sw $s0, 0x10($sp)
/* 0E8ACC 002C411C 0000802D */ move $s0, $zero
/* 0E8AD0 002C4120 AFBF0014 */ sw $ra, 0x14($sp)
.L002C4124:
/* 0E8AD4 002C4124 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8AD8 002C4128 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8ADC 002C412C 00101080 */ sll $v0, $s0, 2
/* 0E8AE0 002C4130 00431021 */ addu $v0, $v0, $v1
/* 0E8AE4 002C4134 8C440000 */ lw $a0, ($v0)
/* 0E8AE8 002C4138 10800003 */ beqz $a0, .L002C4148
/* 0E8AEC 002C413C 26100001 */ addiu $s0, $s0, 1
/* 0E8AF0 002C4140 0C0B0FCF */ jal func_002C3F3C
/* 0E8AF4 002C4144 00000000 */ nop
.L002C4148:
/* 0E8AF8 002C4148 2A020080 */ slti $v0, $s0, 0x80
/* 0E8AFC 002C414C 1440FFF5 */ bnez $v0, .L002C4124
/* 0E8B00 002C4150 00000000 */ nop
/* 0E8B04 002C4154 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E8B08 002C4158 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8B0C 002C415C 03E00008 */ jr $ra
/* 0E8B10 002C4160 27BD0018 */ addiu $sp, $sp, 0x18
func_002C4164:
/* 0E8B14 002C4164 0000282D */ move $a1, $zero
/* 0E8B18 002C4168 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8B1C 002C416C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
.L002C4170:
/* 0E8B20 002C4170 8C620000 */ lw $v0, ($v1)
/* 0E8B24 002C4174 10400006 */ beqz $v0, .L002C4190
/* 0E8B28 002C4178 24A50001 */ addiu $a1, $a1, 1
/* 0E8B2C 002C417C 8C420144 */ lw $v0, 0x144($v0)
/* 0E8B30 002C4180 14440004 */ bne $v0, $a0, .L002C4194
/* 0E8B34 002C4184 28A20080 */ slti $v0, $a1, 0x80
/* 0E8B38 002C4188 03E00008 */ jr $ra
/* 0E8B3C 002C418C 24020001 */ li $v0, 1
.L002C4190:
/* 0E8B40 002C4190 28A20080 */ slti $v0, $a1, 0x80
.L002C4194:
/* 0E8B44 002C4194 1440FFF6 */ bnez $v0, .L002C4170
/* 0E8B48 002C4198 24630004 */ addiu $v1, $v1, 4
/* 0E8B4C 002C419C 03E00008 */ jr $ra
/* 0E8B50 002C41A0 0000102D */ move $v0, $zero
/* 0E8B54 002C41A4 0000282D */ move $a1, $zero
/* 0E8B58 002C41A8 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8B5C 002C41AC 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
.L002C41B0:
/* 0E8B60 002C41B0 8C620000 */ lw $v0, ($v1)
/* 0E8B64 002C41B4 14820003 */ bne $a0, $v0, .L002C41C4
/* 0E8B68 002C41B8 24A50001 */ addiu $a1, $a1, 1
/* 0E8B6C 002C41BC 03E00008 */ jr $ra
/* 0E8B70 002C41C0 24020001 */ li $v0, 1
.L002C41C4:
/* 0E8B74 002C41C4 28A20080 */ slti $v0, $a1, 0x80
/* 0E8B78 002C41C8 1440FFF9 */ bnez $v0, .L002C41B0
/* 0E8B7C 002C41CC 24630004 */ addiu $v1, $v1, 4
/* 0E8B80 002C41D0 03E00008 */ jr $ra
/* 0E8B84 002C41D4 0000102D */ move $v0, $zero
func_002C41D8:
/* 0E8B88 002C41D8 03E00008 */ jr $ra
/* 0E8B8C 002C41DC A0850003 */ sb $a1, 3($a0)
func_002C41E0:
/* 0E8B90 002C41E0 3C01802E */ lui $at, %hi(D_802D9CA8) # $at, 0x802e
/* 0E8B94 002C41E4 C4209CA8 */ lwc1 $f0, %lo(D_802D9CA8)($at)
/* 0E8B98 002C41E8 44851000 */ mtc1 $a1, $f2
/* 0E8B9C 002C41EC 00000000 */ nop
/* 0E8BA0 002C41F0 46001002 */ mul.s $f0, $f2, $f0
/* 0E8BA4 002C41F4 00000000 */ nop
/* 0E8BA8 002C41F8 03E00008 */ jr $ra
/* 0E8BAC 002C41FC E4800150 */ swc1 $f0, 0x150($a0)
/* 0E8BB0 002C4200 3C01802E */ lui $at, 0x802e
/* 0E8BB4 002C4204 03E00008 */ jr $ra
/* 0E8BB8 002C4208 E42C9CA8 */ swc1 $f12, -0x6358($at)
/* 0E8BBC 002C420C 3C01802E */ lui $at, 0x802e
/* 0E8BC0 002C4210 03E00008 */ jr $ra
/* 0E8BC4 002C4214 C4209CA8 */ lwc1 $f0, -0x6358($at)
func_002C4218:
/* 0E8BC8 002C4218 03E00008 */ jr $ra
/* 0E8BCC 002C421C A0850004 */ sb $a1, 4($a0)
func_002C4220:
/* 0E8BD0 002C4220 27BDFFB8 */ addiu $sp, $sp, -0x48
/* 0E8BD4 002C4224 AFB20038 */ sw $s2, 0x38($sp)
/* 0E8BD8 002C4228 0080902D */ move $s2, $a0
/* 0E8BDC 002C422C 3C020100 */ lui $v0, 0x100
/* 0E8BE0 002C4230 00A22825 */ or $a1, $a1, $v0
/* 0E8BE4 002C4234 AFB3003C */ sw $s3, 0x3c($sp)
/* 0E8BE8 002C4238 8FB30058 */ lw $s3, 0x58($sp)
/* 0E8BEC 002C423C 3C02802C */ lui $v0, %hi(D_802C667C) # $v0, 0x802c
/* 0E8BF0 002C4240 2442667C */ addiu $v0, %lo(D_802C667C) # addiu $v0, $v0, 0x667c
/* 0E8BF4 002C4244 AFB00030 */ sw $s0, 0x30($sp)
/* 0E8BF8 002C4248 00E0802D */ move $s0, $a3
/* 0E8BFC 002C424C AFB10034 */ sw $s1, 0x34($sp)
/* 0E8C00 002C4250 8FB1005C */ lw $s1, 0x5c($sp)
/* 0E8C04 002C4254 8FA30060 */ lw $v1, 0x60($sp)
/* 0E8C08 002C4258 27A40010 */ addiu $a0, $sp, 0x10
/* 0E8C0C 002C425C AFBF0040 */ sw $ra, 0x40($sp)
/* 0E8C10 002C4260 AFA50010 */ sw $a1, 0x10($sp)
/* 0E8C14 002C4264 AFA60018 */ sw $a2, 0x18($sp)
/* 0E8C18 002C4268 AFA00024 */ sw $zero, 0x24($sp)
/* 0E8C1C 002C426C AFA2001C */ sw $v0, 0x1c($sp)
/* 0E8C20 002C4270 0C0515DB */ jal func_0014576C
/* 0E8C24 002C4274 AFA30028 */ sw $v1, 0x28($sp)
/* 0E8C28 002C4278 AC520010 */ sw $s2, 0x10($v0)
/* 0E8C2C 002C427C AC400014 */ sw $zero, 0x14($v0)
/* 0E8C30 002C4280 AC510018 */ sw $s1, 0x18($v0)
/* 0E8C34 002C4284 AC50001C */ sw $s0, 0x1c($v0)
/* 0E8C38 002C4288 AC530020 */ sw $s3, 0x20($v0)
/* 0E8C3C 002C428C 8FBF0040 */ lw $ra, 0x40($sp)
/* 0E8C40 002C4290 8FB3003C */ lw $s3, 0x3c($sp)
/* 0E8C44 002C4294 8FB20038 */ lw $s2, 0x38($sp)
/* 0E8C48 002C4298 8FB10034 */ lw $s1, 0x34($sp)
/* 0E8C4C 002C429C 8FB00030 */ lw $s0, 0x30($sp)
/* 0E8C50 002C42A0 03E00008 */ jr $ra
/* 0E8C54 002C42A4 27BD0048 */ addiu $sp, $sp, 0x48
func_002C42A8:
/* 0E8C58 002C42A8 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 0E8C5C 002C42AC 8FA20038 */ lw $v0, 0x38($sp)
/* 0E8C60 002C42B0 8FA8003C */ lw $t0, 0x3c($sp)
/* 0E8C64 002C42B4 24030001 */ li $v1, 1
/* 0E8C68 002C42B8 AFBF0020 */ sw $ra, 0x20($sp)
/* 0E8C6C 002C42BC AFA30018 */ sw $v1, 0x18($sp)
/* 0E8C70 002C42C0 AFA20010 */ sw $v0, 0x10($sp)
/* 0E8C74 002C42C4 0C0B1088 */ jal func_002C4220
/* 0E8C78 002C42C8 AFA80014 */ sw $t0, 0x14($sp)
/* 0E8C7C 002C42CC 8FBF0020 */ lw $ra, 0x20($sp)
/* 0E8C80 002C42D0 03E00008 */ jr $ra
/* 0E8C84 002C42D4 27BD0028 */ addiu $sp, $sp, 0x28
func_002C42D8:
/* 0E8C88 002C42D8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8C8C 002C42DC AFB10014 */ sw $s1, 0x14($sp)
/* 0E8C90 002C42E0 0080882D */ move $s1, $a0
/* 0E8C94 002C42E4 AFBF001C */ sw $ra, 0x1c($sp)
/* 0E8C98 002C42E8 AFB20018 */ sw $s2, 0x18($sp)
/* 0E8C9C 002C42EC AFB00010 */ sw $s0, 0x10($sp)
/* 0E8CA0 002C42F0 8E240068 */ lw $a0, 0x68($s1)
/* 0E8CA4 002C42F4 10800003 */ beqz $a0, .L002C4304
/* 0E8CA8 002C42F8 00A0902D */ move $s2, $a1
/* 0E8CAC 002C42FC 0C0B10B6 */ jal func_002C42D8
/* 0E8CB0 002C4300 00000000 */ nop
.L002C4304:
/* 0E8CB4 002C4304 0000802D */ move $s0, $zero
.L002C4308:
/* 0E8CB8 002C4308 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8CBC 002C430C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8CC0 002C4310 00101080 */ sll $v0, $s0, 2
/* 0E8CC4 002C4314 00431021 */ addu $v0, $v0, $v1
/* 0E8CC8 002C4318 8C440000 */ lw $a0, ($v0)
/* 0E8CCC 002C431C 50800007 */ beql $a0, $zero, .L002C433C
/* 0E8CD0 002C4320 26100001 */ addiu $s0, $s0, 1
/* 0E8CD4 002C4324 8C82006C */ lw $v0, 0x6c($a0)
/* 0E8CD8 002C4328 54510004 */ bnel $v0, $s1, .L002C433C
/* 0E8CDC 002C432C 26100001 */ addiu $s0, $s0, 1
/* 0E8CE0 002C4330 0C0B10B6 */ jal func_002C42D8
/* 0E8CE4 002C4334 0240282D */ move $a1, $s2
/* 0E8CE8 002C4338 26100001 */ addiu $s0, $s0, 1
.L002C433C:
/* 0E8CEC 002C433C 2A020080 */ slti $v0, $s0, 0x80
/* 0E8CF0 002C4340 1440FFF1 */ bnez $v0, .L002C4308
/* 0E8CF4 002C4344 00000000 */ nop
/* 0E8CF8 002C4348 92220004 */ lbu $v0, 4($s1)
/* 0E8CFC 002C434C 00521024 */ and $v0, $v0, $s2
/* 0E8D00 002C4350 10400004 */ beqz $v0, .L002C4364
/* 0E8D04 002C4354 00000000 */ nop
/* 0E8D08 002C4358 92220000 */ lbu $v0, ($s1)
/* 0E8D0C 002C435C 34420002 */ ori $v0, $v0, 2
/* 0E8D10 002C4360 A2220000 */ sb $v0, ($s1)
.L002C4364:
/* 0E8D14 002C4364 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E8D18 002C4368 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8D1C 002C436C 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8D20 002C4370 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8D24 002C4374 03E00008 */ jr $ra
/* 0E8D28 002C4378 27BD0020 */ addiu $sp, $sp, 0x20
func_002C437C:
/* 0E8D2C 002C437C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8D30 002C4380 AFB10014 */ sw $s1, 0x14($sp)
/* 0E8D34 002C4384 0080882D */ move $s1, $a0
/* 0E8D38 002C4388 AFBF001C */ sw $ra, 0x1c($sp)
/* 0E8D3C 002C438C AFB20018 */ sw $s2, 0x18($sp)
/* 0E8D40 002C4390 AFB00010 */ sw $s0, 0x10($sp)
/* 0E8D44 002C4394 8E240068 */ lw $a0, 0x68($s1)
/* 0E8D48 002C4398 10800003 */ beqz $a0, .L002C43A8
/* 0E8D4C 002C439C 00A0902D */ move $s2, $a1
/* 0E8D50 002C43A0 0C0B10DF */ jal func_002C437C
/* 0E8D54 002C43A4 00000000 */ nop
.L002C43A8:
/* 0E8D58 002C43A8 0000802D */ move $s0, $zero
.L002C43AC:
/* 0E8D5C 002C43AC 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8D60 002C43B0 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8D64 002C43B4 00101080 */ sll $v0, $s0, 2
/* 0E8D68 002C43B8 00431021 */ addu $v0, $v0, $v1
/* 0E8D6C 002C43BC 8C440000 */ lw $a0, ($v0)
/* 0E8D70 002C43C0 50800007 */ beql $a0, $zero, .L002C43E0
/* 0E8D74 002C43C4 26100001 */ addiu $s0, $s0, 1
/* 0E8D78 002C43C8 8C82006C */ lw $v0, 0x6c($a0)
/* 0E8D7C 002C43CC 54510004 */ bnel $v0, $s1, .L002C43E0
/* 0E8D80 002C43D0 26100001 */ addiu $s0, $s0, 1
/* 0E8D84 002C43D4 0C0B10B6 */ jal func_002C42D8
/* 0E8D88 002C43D8 0240282D */ move $a1, $s2
/* 0E8D8C 002C43DC 26100001 */ addiu $s0, $s0, 1
.L002C43E0:
/* 0E8D90 002C43E0 2A020080 */ slti $v0, $s0, 0x80
/* 0E8D94 002C43E4 1440FFF1 */ bnez $v0, .L002C43AC
/* 0E8D98 002C43E8 00000000 */ nop
/* 0E8D9C 002C43EC 92220004 */ lbu $v0, 4($s1)
/* 0E8DA0 002C43F0 00521024 */ and $v0, $v0, $s2
/* 0E8DA4 002C43F4 10400004 */ beqz $v0, .L002C4408
/* 0E8DA8 002C43F8 00000000 */ nop
/* 0E8DAC 002C43FC 92220000 */ lbu $v0, ($s1)
/* 0E8DB0 002C4400 304200FD */ andi $v0, $v0, 0xfd
/* 0E8DB4 002C4404 A2220000 */ sb $v0, ($s1)
.L002C4408:
/* 0E8DB8 002C4408 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E8DBC 002C440C 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8DC0 002C4410 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8DC4 002C4414 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8DC8 002C4418 03E00008 */ jr $ra
/* 0E8DCC 002C441C 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4420:
/* 0E8DD0 002C4420 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8DD4 002C4424 AFB10014 */ sw $s1, 0x14($sp)
/* 0E8DD8 002C4428 0080882D */ move $s1, $a0
/* 0E8DDC 002C442C AFB00010 */ sw $s0, 0x10($sp)
/* 0E8DE0 002C4430 0000802D */ move $s0, $zero
/* 0E8DE4 002C4434 AFBF0018 */ sw $ra, 0x18($sp)
.L002C4438:
/* 0E8DE8 002C4438 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8DEC 002C443C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8DF0 002C4440 00101080 */ sll $v0, $s0, 2
/* 0E8DF4 002C4444 00431021 */ addu $v0, $v0, $v1
/* 0E8DF8 002C4448 8C440000 */ lw $a0, ($v0)
/* 0E8DFC 002C444C 50800007 */ beql $a0, $zero, .L002C446C
/* 0E8E00 002C4450 26100001 */ addiu $s0, $s0, 1
/* 0E8E04 002C4454 8C820144 */ lw $v0, 0x144($a0)
/* 0E8E08 002C4458 54510004 */ bnel $v0, $s1, .L002C446C
/* 0E8E0C 002C445C 26100001 */ addiu $s0, $s0, 1
/* 0E8E10 002C4460 0C0B10B6 */ jal func_002C42D8
/* 0E8E14 002C4464 240500EF */ li $a1, 239
/* 0E8E18 002C4468 26100001 */ addiu $s0, $s0, 1
.L002C446C:
/* 0E8E1C 002C446C 2A020080 */ slti $v0, $s0, 0x80
/* 0E8E20 002C4470 1440FFF1 */ bnez $v0, .L002C4438
/* 0E8E24 002C4474 00000000 */ nop
/* 0E8E28 002C4478 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E8E2C 002C447C 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8E30 002C4480 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8E34 002C4484 03E00008 */ jr $ra
/* 0E8E38 002C4488 27BD0020 */ addiu $sp, $sp, 0x20
func_002C448C:
/* 0E8E3C 002C448C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8E40 002C4490 AFB10014 */ sw $s1, 0x14($sp)
/* 0E8E44 002C4494 0080882D */ move $s1, $a0
/* 0E8E48 002C4498 AFB00010 */ sw $s0, 0x10($sp)
/* 0E8E4C 002C449C 0000802D */ move $s0, $zero
/* 0E8E50 002C44A0 AFBF0018 */ sw $ra, 0x18($sp)
.L002C44A4:
/* 0E8E54 002C44A4 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8E58 002C44A8 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8E5C 002C44AC 00101080 */ sll $v0, $s0, 2
/* 0E8E60 002C44B0 00431021 */ addu $v0, $v0, $v1
/* 0E8E64 002C44B4 8C440000 */ lw $a0, ($v0)
/* 0E8E68 002C44B8 50800007 */ beql $a0, $zero, .L002C44D8
/* 0E8E6C 002C44BC 26100001 */ addiu $s0, $s0, 1
/* 0E8E70 002C44C0 8C820144 */ lw $v0, 0x144($a0)
/* 0E8E74 002C44C4 54510004 */ bnel $v0, $s1, .L002C44D8
/* 0E8E78 002C44C8 26100001 */ addiu $s0, $s0, 1
/* 0E8E7C 002C44CC 0C0B10DF */ jal func_002C437C
/* 0E8E80 002C44D0 240500EF */ li $a1, 239
/* 0E8E84 002C44D4 26100001 */ addiu $s0, $s0, 1
.L002C44D8:
/* 0E8E88 002C44D8 2A020080 */ slti $v0, $s0, 0x80
/* 0E8E8C 002C44DC 1440FFF1 */ bnez $v0, .L002C44A4
/* 0E8E90 002C44E0 00000000 */ nop
/* 0E8E94 002C44E4 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E8E98 002C44E8 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8E9C 002C44EC 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8EA0 002C44F0 03E00008 */ jr $ra
/* 0E8EA4 002C44F4 27BD0020 */ addiu $sp, $sp, 0x20
/* 0E8EA8 002C44F8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8EAC 002C44FC AFB10014 */ sw $s1, 0x14($sp)
/* 0E8EB0 002C4500 0080882D */ move $s1, $a0
/* 0E8EB4 002C4504 AFB20018 */ sw $s2, 0x18($sp)
/* 0E8EB8 002C4508 00A0902D */ move $s2, $a1
/* 0E8EBC 002C450C AFB00010 */ sw $s0, 0x10($sp)
/* 0E8EC0 002C4510 0000802D */ move $s0, $zero
/* 0E8EC4 002C4514 AFBF001C */ sw $ra, 0x1c($sp)
.L002C4518:
/* 0E8EC8 002C4518 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8ECC 002C451C 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8ED0 002C4520 00101080 */ sll $v0, $s0, 2
/* 0E8ED4 002C4524 00431021 */ addu $v0, $v0, $v1
/* 0E8ED8 002C4528 8C440000 */ lw $a0, ($v0)
/* 0E8EDC 002C452C 50800007 */ beql $a0, $zero, .L002C454C
/* 0E8EE0 002C4530 26100001 */ addiu $s0, $s0, 1
/* 0E8EE4 002C4534 8C820144 */ lw $v0, 0x144($a0)
/* 0E8EE8 002C4538 54510004 */ bnel $v0, $s1, .L002C454C
/* 0E8EEC 002C453C 26100001 */ addiu $s0, $s0, 1
/* 0E8EF0 002C4540 0C0B10B6 */ jal func_002C42D8
/* 0E8EF4 002C4544 0240282D */ move $a1, $s2
/* 0E8EF8 002C4548 26100001 */ addiu $s0, $s0, 1
.L002C454C:
/* 0E8EFC 002C454C 2A020080 */ slti $v0, $s0, 0x80
/* 0E8F00 002C4550 1440FFF1 */ bnez $v0, .L002C4518
/* 0E8F04 002C4554 00000000 */ nop
/* 0E8F08 002C4558 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E8F0C 002C455C 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8F10 002C4560 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8F14 002C4564 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8F18 002C4568 03E00008 */ jr $ra
/* 0E8F1C 002C456C 27BD0020 */ addiu $sp, $sp, 0x20
/* 0E8F20 002C4570 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8F24 002C4574 AFB10014 */ sw $s1, 0x14($sp)
/* 0E8F28 002C4578 0080882D */ move $s1, $a0
/* 0E8F2C 002C457C AFB20018 */ sw $s2, 0x18($sp)
/* 0E8F30 002C4580 00A0902D */ move $s2, $a1
/* 0E8F34 002C4584 AFB00010 */ sw $s0, 0x10($sp)
/* 0E8F38 002C4588 0000802D */ move $s0, $zero
/* 0E8F3C 002C458C AFBF001C */ sw $ra, 0x1c($sp)
.L002C4590:
/* 0E8F40 002C4590 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8F44 002C4594 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8F48 002C4598 00101080 */ sll $v0, $s0, 2
/* 0E8F4C 002C459C 00431021 */ addu $v0, $v0, $v1
/* 0E8F50 002C45A0 8C440000 */ lw $a0, ($v0)
/* 0E8F54 002C45A4 50800007 */ beql $a0, $zero, .L002C45C4
/* 0E8F58 002C45A8 26100001 */ addiu $s0, $s0, 1
/* 0E8F5C 002C45AC 8C820144 */ lw $v0, 0x144($a0)
/* 0E8F60 002C45B0 54510004 */ bnel $v0, $s1, .L002C45C4
/* 0E8F64 002C45B4 26100001 */ addiu $s0, $s0, 1
/* 0E8F68 002C45B8 0C0B10DF */ jal func_002C437C
/* 0E8F6C 002C45BC 0240282D */ move $a1, $s2
/* 0E8F70 002C45C0 26100001 */ addiu $s0, $s0, 1
.L002C45C4:
/* 0E8F74 002C45C4 2A020080 */ slti $v0, $s0, 0x80
/* 0E8F78 002C45C8 1440FFF1 */ bnez $v0, .L002C4590
/* 0E8F7C 002C45CC 00000000 */ nop
/* 0E8F80 002C45D0 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E8F84 002C45D4 8FB20018 */ lw $s2, 0x18($sp)
/* 0E8F88 002C45D8 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8F8C 002C45DC 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8F90 002C45E0 03E00008 */ jr $ra
/* 0E8F94 002C45E4 27BD0020 */ addiu $sp, $sp, 0x20
func_002C45E8:
/* 0E8F98 002C45E8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8F9C 002C45EC AFB10014 */ sw $s1, 0x14($sp)
/* 0E8FA0 002C45F0 0080882D */ move $s1, $a0
/* 0E8FA4 002C45F4 AFB00010 */ sw $s0, 0x10($sp)
/* 0E8FA8 002C45F8 0000802D */ move $s0, $zero
/* 0E8FAC 002C45FC AFBF0018 */ sw $ra, 0x18($sp)
.L002C4600:
/* 0E8FB0 002C4600 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E8FB4 002C4604 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E8FB8 002C4608 00101080 */ sll $v0, $s0, 2
/* 0E8FBC 002C460C 00431021 */ addu $v0, $v0, $v1
/* 0E8FC0 002C4610 8C440000 */ lw $a0, ($v0)
/* 0E8FC4 002C4614 50800004 */ beql $a0, $zero, .L002C4628
/* 0E8FC8 002C4618 26100001 */ addiu $s0, $s0, 1
/* 0E8FCC 002C461C 0C0B10B6 */ jal func_002C42D8
/* 0E8FD0 002C4620 0220282D */ move $a1, $s1
/* 0E8FD4 002C4624 26100001 */ addiu $s0, $s0, 1
.L002C4628:
/* 0E8FD8 002C4628 2A020080 */ slti $v0, $s0, 0x80
/* 0E8FDC 002C462C 1440FFF4 */ bnez $v0, .L002C4600
/* 0E8FE0 002C4630 00000000 */ nop
/* 0E8FE4 002C4634 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E8FE8 002C4638 8FB10014 */ lw $s1, 0x14($sp)
/* 0E8FEC 002C463C 8FB00010 */ lw $s0, 0x10($sp)
/* 0E8FF0 002C4640 03E00008 */ jr $ra
/* 0E8FF4 002C4644 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4648:
/* 0E8FF8 002C4648 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E8FFC 002C464C AFB10014 */ sw $s1, 0x14($sp)
/* 0E9000 002C4650 0080882D */ move $s1, $a0
/* 0E9004 002C4654 AFB00010 */ sw $s0, 0x10($sp)
/* 0E9008 002C4658 0000802D */ move $s0, $zero
/* 0E900C 002C465C AFBF0018 */ sw $ra, 0x18($sp)
.L002C4660:
/* 0E9010 002C4660 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E9014 002C4664 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E9018 002C4668 00101080 */ sll $v0, $s0, 2
/* 0E901C 002C466C 00431021 */ addu $v0, $v0, $v1
/* 0E9020 002C4670 8C440000 */ lw $a0, ($v0)
/* 0E9024 002C4674 50800004 */ beql $a0, $zero, .L002C4688
/* 0E9028 002C4678 26100001 */ addiu $s0, $s0, 1
/* 0E902C 002C467C 0C0B10DF */ jal func_002C437C
/* 0E9030 002C4680 0220282D */ move $a1, $s1
/* 0E9034 002C4684 26100001 */ addiu $s0, $s0, 1
.L002C4688:
/* 0E9038 002C4688 2A020080 */ slti $v0, $s0, 0x80
/* 0E903C 002C468C 1440FFF4 */ bnez $v0, .L002C4660
/* 0E9040 002C4690 00000000 */ nop
/* 0E9044 002C4694 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E9048 002C4698 8FB10014 */ lw $s1, 0x14($sp)
/* 0E904C 002C469C 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9050 002C46A0 03E00008 */ jr $ra
/* 0E9054 002C46A4 27BD0020 */ addiu $sp, $sp, 0x20
func_002C46A8:
/* 0E9058 002C46A8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E905C 002C46AC AFB10014 */ sw $s1, 0x14($sp)
/* 0E9060 002C46B0 0080882D */ move $s1, $a0
/* 0E9064 002C46B4 AFB20018 */ sw $s2, 0x18($sp)
/* 0E9068 002C46B8 00A0902D */ move $s2, $a1
/* 0E906C 002C46BC AFB00010 */ sw $s0, 0x10($sp)
/* 0E9070 002C46C0 0000802D */ move $s0, $zero
/* 0E9074 002C46C4 AFBF001C */ sw $ra, 0x1c($sp)
.L002C46C8:
/* 0E9078 002C46C8 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E907C 002C46CC 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E9080 002C46D0 00101080 */ sll $v0, $s0, 2
/* 0E9084 002C46D4 00431021 */ addu $v0, $v0, $v1
/* 0E9088 002C46D8 8C440000 */ lw $a0, ($v0)
/* 0E908C 002C46DC 50800006 */ beql $a0, $zero, .L002C46F8
/* 0E9090 002C46E0 26100001 */ addiu $s0, $s0, 1
/* 0E9094 002C46E4 50910004 */ beql $a0, $s1, .L002C46F8
/* 0E9098 002C46E8 26100001 */ addiu $s0, $s0, 1
/* 0E909C 002C46EC 0C0B10B6 */ jal func_002C42D8
/* 0E90A0 002C46F0 0240282D */ move $a1, $s2
/* 0E90A4 002C46F4 26100001 */ addiu $s0, $s0, 1
.L002C46F8:
/* 0E90A8 002C46F8 2A020080 */ slti $v0, $s0, 0x80
/* 0E90AC 002C46FC 1440FFF2 */ bnez $v0, .L002C46C8
/* 0E90B0 002C4700 00000000 */ nop
/* 0E90B4 002C4704 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E90B8 002C4708 8FB20018 */ lw $s2, 0x18($sp)
/* 0E90BC 002C470C 8FB10014 */ lw $s1, 0x14($sp)
/* 0E90C0 002C4710 8FB00010 */ lw $s0, 0x10($sp)
/* 0E90C4 002C4714 03E00008 */ jr $ra
/* 0E90C8 002C4718 27BD0020 */ addiu $sp, $sp, 0x20
func_002C471C:
/* 0E90CC 002C471C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E90D0 002C4720 AFB10014 */ sw $s1, 0x14($sp)
/* 0E90D4 002C4724 0080882D */ move $s1, $a0
/* 0E90D8 002C4728 AFB20018 */ sw $s2, 0x18($sp)
/* 0E90DC 002C472C 00A0902D */ move $s2, $a1
/* 0E90E0 002C4730 AFB00010 */ sw $s0, 0x10($sp)
/* 0E90E4 002C4734 0000802D */ move $s0, $zero
/* 0E90E8 002C4738 AFBF001C */ sw $ra, 0x1c($sp)
.L002C473C:
/* 0E90EC 002C473C 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E90F0 002C4740 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E90F4 002C4744 00101080 */ sll $v0, $s0, 2
/* 0E90F8 002C4748 00431021 */ addu $v0, $v0, $v1
/* 0E90FC 002C474C 8C440000 */ lw $a0, ($v0)
/* 0E9100 002C4750 50800006 */ beql $a0, $zero, .L002C476C
/* 0E9104 002C4754 26100001 */ addiu $s0, $s0, 1
/* 0E9108 002C4758 50910004 */ beql $a0, $s1, .L002C476C
/* 0E910C 002C475C 26100001 */ addiu $s0, $s0, 1
/* 0E9110 002C4760 0C0B10DF */ jal func_002C437C
/* 0E9114 002C4764 0240282D */ move $a1, $s2
/* 0E9118 002C4768 26100001 */ addiu $s0, $s0, 1
.L002C476C:
/* 0E911C 002C476C 2A020080 */ slti $v0, $s0, 0x80
/* 0E9120 002C4770 1440FFF2 */ bnez $v0, .L002C473C
/* 0E9124 002C4774 00000000 */ nop
/* 0E9128 002C4778 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E912C 002C477C 8FB20018 */ lw $s2, 0x18($sp)
/* 0E9130 002C4780 8FB10014 */ lw $s1, 0x14($sp)
/* 0E9134 002C4784 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9138 002C4788 03E00008 */ jr $ra
/* 0E913C 002C478C 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4790:
/* 0E9140 002C4790 3C02802E */ lui $v0, %hi(D_802DA890) # $v0, 0x802e
/* 0E9144 002C4794 8C42A890 */ lw $v0, %lo(D_802DA890)($v0)
/* 0E9148 002C4798 00042080 */ sll $a0, $a0, 2
/* 0E914C 002C479C 00822021 */ addu $a0, $a0, $v0
/* 0E9150 002C47A0 03E00008 */ jr $ra
/* 0E9154 002C47A4 8C820000 */ lw $v0, ($a0)
/* 0E9158 002C47A8 0000302D */ move $a2, $zero
/* 0E915C 002C47AC 3C05802E */ lui $a1, %hi(D_802DA890) # $a1, 0x802e
/* 0E9160 002C47B0 8CA5A890 */ lw $a1, %lo(D_802DA890)($a1)
.L002C47B4:
/* 0E9164 002C47B4 8CA30000 */ lw $v1, ($a1)
/* 0E9168 002C47B8 10600006 */ beqz $v1, .L002C47D4
/* 0E916C 002C47BC 24C60001 */ addiu $a2, $a2, 1
/* 0E9170 002C47C0 8C620144 */ lw $v0, 0x144($v1)
/* 0E9174 002C47C4 14440004 */ bne $v0, $a0, .L002C47D8
/* 0E9178 002C47C8 28C20080 */ slti $v0, $a2, 0x80
/* 0E917C 002C47CC 03E00008 */ jr $ra
/* 0E9180 002C47D0 0060102D */ move $v0, $v1
.L002C47D4:
/* 0E9184 002C47D4 28C20080 */ slti $v0, $a2, 0x80
.L002C47D8:
/* 0E9188 002C47D8 1440FFF6 */ bnez $v0, .L002C47B4
/* 0E918C 002C47DC 24A50004 */ addiu $a1, $a1, 4
/* 0E9190 002C47E0 03E00008 */ jr $ra
/* 0E9194 002C47E4 0000102D */ move $v0, $zero
func_002C47E8:
/* 0E9198 002C47E8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E919C 002C47EC AFB10014 */ sw $s1, 0x14($sp)
/* 0E91A0 002C47F0 0080882D */ move $s1, $a0
/* 0E91A4 002C47F4 AFB20018 */ sw $s2, 0x18($sp)
/* 0E91A8 002C47F8 00A0902D */ move $s2, $a1
/* 0E91AC 002C47FC AFBF001C */ sw $ra, 0x1c($sp)
/* 0E91B0 002C4800 AFB00010 */ sw $s0, 0x10($sp)
/* 0E91B4 002C4804 92220000 */ lbu $v0, ($s1)
/* 0E91B8 002C4808 8E240068 */ lw $a0, 0x68($s1)
/* 0E91BC 002C480C 00521025 */ or $v0, $v0, $s2
/* 0E91C0 002C4810 10800003 */ beqz $a0, .L002C4820
/* 0E91C4 002C4814 A2220000 */ sb $v0, ($s1)
/* 0E91C8 002C4818 0C0B11FA */ jal func_002C47E8
/* 0E91CC 002C481C 00000000 */ nop
.L002C4820:
/* 0E91D0 002C4820 0000802D */ move $s0, $zero
.L002C4824:
/* 0E91D4 002C4824 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E91D8 002C4828 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E91DC 002C482C 00101080 */ sll $v0, $s0, 2
/* 0E91E0 002C4830 00431021 */ addu $v0, $v0, $v1
/* 0E91E4 002C4834 8C420000 */ lw $v0, ($v0)
/* 0E91E8 002C4838 50400008 */ beql $v0, $zero, .L002C485C
/* 0E91EC 002C483C 26100001 */ addiu $s0, $s0, 1
/* 0E91F0 002C4840 8C42006C */ lw $v0, 0x6c($v0)
/* 0E91F4 002C4844 54510005 */ bnel $v0, $s1, .L002C485C
/* 0E91F8 002C4848 26100001 */ addiu $s0, $s0, 1
/* 0E91FC 002C484C 8E24006C */ lw $a0, 0x6c($s1)
/* 0E9200 002C4850 0C0B11FA */ jal func_002C47E8
/* 0E9204 002C4854 0240282D */ move $a1, $s2
/* 0E9208 002C4858 26100001 */ addiu $s0, $s0, 1
.L002C485C:
/* 0E920C 002C485C 2A020080 */ slti $v0, $s0, 0x80
/* 0E9210 002C4860 1440FFF0 */ bnez $v0, .L002C4824
/* 0E9214 002C4864 00000000 */ nop
/* 0E9218 002C4868 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E921C 002C486C 8FB20018 */ lw $s2, 0x18($sp)
/* 0E9220 002C4870 8FB10014 */ lw $s1, 0x14($sp)
/* 0E9224 002C4874 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9228 002C4878 03E00008 */ jr $ra
/* 0E922C 002C487C 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4880:
/* 0E9230 002C4880 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E9234 002C4884 AFB10014 */ sw $s1, 0x14($sp)
/* 0E9238 002C4888 0080882D */ move $s1, $a0
/* 0E923C 002C488C AFB20018 */ sw $s2, 0x18($sp)
/* 0E9240 002C4890 00A0902D */ move $s2, $a1
/* 0E9244 002C4894 00121827 */ nor $v1, $zero, $s2
/* 0E9248 002C4898 AFBF001C */ sw $ra, 0x1c($sp)
/* 0E924C 002C489C AFB00010 */ sw $s0, 0x10($sp)
/* 0E9250 002C48A0 92220000 */ lbu $v0, ($s1)
/* 0E9254 002C48A4 8E240068 */ lw $a0, 0x68($s1)
/* 0E9258 002C48A8 00431024 */ and $v0, $v0, $v1
/* 0E925C 002C48AC 10800003 */ beqz $a0, .L002C48BC
/* 0E9260 002C48B0 A2220000 */ sb $v0, ($s1)
/* 0E9264 002C48B4 0C0B1220 */ jal func_002C4880
/* 0E9268 002C48B8 00000000 */ nop
.L002C48BC:
/* 0E926C 002C48BC 0000802D */ move $s0, $zero
.L002C48C0:
/* 0E9270 002C48C0 3C03802E */ lui $v1, %hi(D_802DA890) # $v1, 0x802e
/* 0E9274 002C48C4 8C63A890 */ lw $v1, %lo(D_802DA890)($v1)
/* 0E9278 002C48C8 00101080 */ sll $v0, $s0, 2
/* 0E927C 002C48CC 00431021 */ addu $v0, $v0, $v1
/* 0E9280 002C48D0 8C440000 */ lw $a0, ($v0)
/* 0E9284 002C48D4 50800007 */ beql $a0, $zero, .L002C48F4
/* 0E9288 002C48D8 26100001 */ addiu $s0, $s0, 1
/* 0E928C 002C48DC 8C82006C */ lw $v0, 0x6c($a0)
/* 0E9290 002C48E0 54510004 */ bnel $v0, $s1, .L002C48F4
/* 0E9294 002C48E4 26100001 */ addiu $s0, $s0, 1
/* 0E9298 002C48E8 0C0B1220 */ jal func_002C4880
/* 0E929C 002C48EC 0240282D */ move $a1, $s2
/* 0E92A0 002C48F0 26100001 */ addiu $s0, $s0, 1
.L002C48F4:
/* 0E92A4 002C48F4 2A020080 */ slti $v0, $s0, 0x80
/* 0E92A8 002C48F8 1440FFF1 */ bnez $v0, .L002C48C0
/* 0E92AC 002C48FC 00000000 */ nop
/* 0E92B0 002C4900 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E92B4 002C4904 8FB20018 */ lw $s2, 0x18($sp)
/* 0E92B8 002C4908 8FB10014 */ lw $s1, 0x14($sp)
/* 0E92BC 002C490C 8FB00010 */ lw $s0, 0x10($sp)
/* 0E92C0 002C4910 03E00008 */ jr $ra
/* 0E92C4 002C4914 27BD0020 */ addiu $sp, $sp, 0x20
/* 0E92C8 002C4918 00000000 */ nop
/* 0E92CC 002C491C 00000000 */ nop
func_002C4920:
/* 0E92D0 002C4920 3C02F2E3 */ lui $v0, (0xF2E31100 >> 16) # lui $v0, 0xf2e3
/* 0E92D4 002C4924 34421100 */ ori $v0, (0xF2E31100 & 0xFFFF) # ori $v0, $v0, 0x1100
/* 0E92D8 002C4928 0044102A */ slt $v0, $v0, $a0
/* 0E92DC 002C492C 10400005 */ beqz $v0, .L002C4944
/* 0E92E0 002C4930 3C020DB5 */ lui $v0, 0xdb5
/* 0E92E4 002C4934 44840000 */ mtc1 $a0, $f0
/* 0E92E8 002C4938 00000000 */ nop
/* 0E92EC 002C493C 03E00008 */ jr $ra
/* 0E92F0 002C4940 46800020 */ cvt.s.w $f0, $f0
.L002C4944:
/* 0E92F4 002C4944 34428580 */ ori $v0, $v0, 0x8580
/* 0E92F8 002C4948 00821021 */ addu $v0, $a0, $v0
/* 0E92FC 002C494C 3C013A80 */ li $at, 0x3A800000 # 0.000977
/* 0E9300 002C4950 44811000 */ mtc1 $at, $f2
/* 0E9304 002C4954 44820000 */ mtc1 $v0, $f0
/* 0E9308 002C4958 00000000 */ nop
/* 0E930C 002C495C 46800020 */ cvt.s.w $f0, $f0
/* 0E9310 002C4960 46020002 */ mul.s $f0, $f0, $f2
/* 0E9314 002C4964 03E00008 */ jr $ra
/* 0E9318 002C4968 00000000 */ nop
func_002C496C:
/* 0E931C 002C496C 3C014480 */ li $at, 0x44800000 # 1024.000000
/* 0E9320 002C4970 44810000 */ mtc1 $at, $f0
/* 0E9324 002C4974 00000000 */ nop
/* 0E9328 002C4978 46006302 */ mul.s $f12, $f12, $f0
/* 0E932C 002C497C 00000000 */ nop
/* 0E9330 002C4980 3C03F24A */ lui $v1, (0xF24A7A80 >> 16) # lui $v1, 0xf24a
/* 0E9334 002C4984 34637A80 */ ori $v1, (0xF24A7A80 & 0xFFFF) # ori $v1, $v1, 0x7a80
/* 0E9338 002C4988 4600608D */ trunc.w.s $f2, $f12
/* 0E933C 002C498C 44021000 */ mfc1 $v0, $f2
/* 0E9340 002C4990 03E00008 */ jr $ra
/* 0E9344 002C4994 00431021 */ addu $v0, $v0, $v1
func_002C4998:
/* 0E9348 002C4998 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E934C 002C499C AFBF0010 */ sw $ra, 0x10($sp)
/* 0E9350 002C49A0 0C0B0FCF */ jal func_002C3F3C
/* 0E9354 002C49A4 00000000 */ nop
/* 0E9358 002C49A8 8FBF0010 */ lw $ra, 0x10($sp)
/* 0E935C 002C49AC 240200FF */ li $v0, 255
/* 0E9360 002C49B0 03E00008 */ jr $ra
/* 0E9364 002C49B4 27BD0018 */ addiu $sp, $sp, 0x18
func_002C49B8:
/* 0E9368 002C49B8 03E00008 */ jr $ra
/* 0E936C 002C49BC 24020002 */ li $v0, 2
func_002C49C0:
/* 0E9370 002C49C0 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E9374 002C49C4 AFB00010 */ sw $s0, 0x10($sp)
/* 0E9378 002C49C8 0080802D */ move $s0, $a0
/* 0E937C 002C49CC AFBF0014 */ sw $ra, 0x14($sp)
/* 0E9380 002C49D0 8E02000C */ lw $v0, 0xc($s0)
/* 0E9384 002C49D4 0C0B1EAF */ jal func_002C7ABC
/* 0E9388 002C49D8 8C450000 */ lw $a1, ($v0)
/* 0E938C 002C49DC 0200202D */ move $a0, $s0
/* 0E9390 002C49E0 0C0B2224 */ jal func_002C8890
/* 0E9394 002C49E4 0040282D */ move $a1, $v0
/* 0E9398 002C49E8 AE020008 */ sw $v0, 8($s0)
/* 0E939C 002C49EC 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E93A0 002C49F0 8FB00010 */ lw $s0, 0x10($sp)
/* 0E93A4 002C49F4 24020002 */ li $v0, 2
/* 0E93A8 002C49F8 03E00008 */ jr $ra
/* 0E93AC 002C49FC 27BD0018 */ addiu $sp, $sp, 0x18
func_002C4A00:
/* 0E93B0 002C4A00 8C83000C */ lw $v1, 0xc($a0)
/* 0E93B4 002C4A04 90820006 */ lbu $v0, 6($a0)
/* 0E93B8 002C4A08 8C660000 */ lw $a2, ($v1)
/* 0E93BC 002C4A0C 24420001 */ addiu $v0, $v0, 1
/* 0E93C0 002C4A10 A0820006 */ sb $v0, 6($a0)
/* 0E93C4 002C4A14 00021600 */ sll $v0, $v0, 0x18
/* 0E93C8 002C4A18 00022E03 */ sra $a1, $v0, 0x18
/* 0E93CC 002C4A1C 28A20008 */ slti $v0, $a1, 8
/* 0E93D0 002C4A20 14400003 */ bnez $v0, .L002C4A30
/* 0E93D4 002C4A24 24630004 */ addiu $v1, $v1, 4
func_002C4A28:
/* 0E93D8 002C4A28 080B128A */ j func_002C4A28
/* 0E93DC 002C4A2C 00000000 */ nop
.L002C4A30:
/* 0E93E0 002C4A30 00051080 */ sll $v0, $a1, 2
/* 0E93E4 002C4A34 00821021 */ addu $v0, $a0, $v0
/* 0E93E8 002C4A38 AC4300D0 */ sw $v1, 0xd0($v0)
/* 0E93EC 002C4A3C AC4600F0 */ sw $a2, 0xf0($v0)
/* 0E93F0 002C4A40 03E00008 */ jr $ra
/* 0E93F4 002C4A44 24020002 */ li $v0, 2
func_002C4A48:
/* 0E93F8 002C4A48 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E93FC 002C4A4C AFB10014 */ sw $s1, 0x14($sp)
/* 0E9400 002C4A50 0080882D */ move $s1, $a0
/* 0E9404 002C4A54 AFBF001C */ sw $ra, 0x1c($sp)
/* 0E9408 002C4A58 AFB20018 */ sw $s2, 0x18($sp)
/* 0E940C 002C4A5C AFB00010 */ sw $s0, 0x10($sp)
/* 0E9410 002C4A60 82320006 */ lb $s2, 6($s1)
/* 0E9414 002C4A64 06410003 */ bgez $s2, .L002C4A74
/* 0E9418 002C4A68 00121080 */ sll $v0, $s2, 2
func_002C4A6C:
/* 0E941C 002C4A6C 080B129B */ j func_002C4A6C
/* 0E9420 002C4A70 00000000 */ nop
.L002C4A74:
/* 0E9424 002C4A74 02221821 */ addu $v1, $s1, $v0
/* 0E9428 002C4A78 8C7000F0 */ lw $s0, 0xf0($v1)
/* 0E942C 002C4A7C 16000004 */ bnez $s0, .L002C4A90
/* 0E9430 002C4A80 3C02FF67 */ lui $v0, (0xFF676980 >> 16) # lui $v0, 0xff67
/* 0E9434 002C4A84 8C6300D0 */ lw $v1, 0xd0($v1)
/* 0E9438 002C4A88 080B12BC */ j func_002C4AF0
/* 0E943C 002C4A8C 24020002 */ li $v0, 2
.L002C4A90:
/* 0E9440 002C4A90 34426980 */ ori $v0, (0xFF676980 & 0xFFFF) # ori $v0, $v0, 0x6980
/* 0E9444 002C4A94 0202102A */ slt $v0, $s0, $v0
/* 0E9448 002C4A98 14400004 */ bnez $v0, .L002C4AAC
/* 0E944C 002C4A9C 0220202D */ move $a0, $s1
/* 0E9450 002C4AA0 2610FFFF */ addiu $s0, $s0, -1
/* 0E9454 002C4AA4 080B12B2 */ j func_002C4AC8
/* 0E9458 002C4AA8 AC7000F0 */ sw $s0, 0xf0($v1)
.L002C4AAC:
/* 0E945C 002C4AAC 0C0B1EAF */ jal func_002C7ABC
/* 0E9460 002C4AB0 0200282D */ move $a1, $s0
/* 0E9464 002C4AB4 0220202D */ move $a0, $s1
/* 0E9468 002C4AB8 0200282D */ move $a1, $s0
/* 0E946C 002C4ABC 2450FFFF */ addiu $s0, $v0, -1
/* 0E9470 002C4AC0 0C0B2026 */ jal func_002C8098
/* 0E9474 002C4AC4 0200302D */ move $a2, $s0
func_002C4AC8:
/* 0E9478 002C4AC8 16000006 */ bnez $s0, .L002C4AE4
/* 0E947C 002C4ACC 00121080 */ sll $v0, $s2, 2
/* 0E9480 002C4AD0 92230006 */ lbu $v1, 6($s1)
/* 0E9484 002C4AD4 24020002 */ li $v0, 2
/* 0E9488 002C4AD8 2463FFFF */ addiu $v1, $v1, -1
/* 0E948C 002C4ADC 080B12BD */ j func_002C4AF4
/* 0E9490 002C4AE0 A2230006 */ sb $v1, 6($s1)
.L002C4AE4:
/* 0E9494 002C4AE4 02221021 */ addu $v0, $s1, $v0
/* 0E9498 002C4AE8 8C4300D0 */ lw $v1, 0xd0($v0)
/* 0E949C 002C4AEC 24020002 */ li $v0, 2
func_002C4AF0:
/* 0E94A0 002C4AF0 AE230008 */ sw $v1, 8($s1)
func_002C4AF4:
/* 0E94A4 002C4AF4 8FBF001C */ lw $ra, 0x1c($sp)
/* 0E94A8 002C4AF8 8FB20018 */ lw $s2, 0x18($sp)
/* 0E94AC 002C4AFC 8FB10014 */ lw $s1, 0x14($sp)
/* 0E94B0 002C4B00 8FB00010 */ lw $s0, 0x10($sp)
/* 0E94B4 002C4B04 03E00008 */ jr $ra
/* 0E94B8 002C4B08 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4B0C:
/* 0E94BC 002C4B0C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E94C0 002C4B10 AFB00010 */ sw $s0, 0x10($sp)
/* 0E94C4 002C4B14 0080802D */ move $s0, $a0
/* 0E94C8 002C4B18 AFBF0014 */ sw $ra, 0x14($sp)
/* 0E94CC 002C4B1C 82020006 */ lb $v0, 6($s0)
/* 0E94D0 002C4B20 04410003 */ bgez $v0, .L002C4B30
/* 0E94D4 002C4B24 00000000 */ nop
func_002C4B28:
/* 0E94D8 002C4B28 080B12CA */ j func_002C4B28
/* 0E94DC 002C4B2C 00000000 */ nop
.L002C4B30:
/* 0E94E0 002C4B30 0C0B22B9 */ jal func_002C8AE4
/* 0E94E4 002C4B34 0200202D */ move $a0, $s0
/* 0E94E8 002C4B38 92030006 */ lbu $v1, 6($s0)
/* 0E94EC 002C4B3C AE020008 */ sw $v0, 8($s0)
/* 0E94F0 002C4B40 2463FFFF */ addiu $v1, $v1, -1
/* 0E94F4 002C4B44 A2030006 */ sb $v1, 6($s0)
/* 0E94F8 002C4B48 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E94FC 002C4B4C 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9500 002C4B50 24020002 */ li $v0, 2
/* 0E9504 002C4B54 03E00008 */ jr $ra
/* 0E9508 002C4B58 27BD0018 */ addiu $sp, $sp, 0x18
func_002C4B5C:
/* 0E950C 002C4B5C 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E9510 002C4B60 AFB00010 */ sw $s0, 0x10($sp)
/* 0E9514 002C4B64 0080802D */ move $s0, $a0
/* 0E9518 002C4B68 AFBF0014 */ sw $ra, 0x14($sp)
/* 0E951C 002C4B6C 82020005 */ lb $v0, 5($s0)
/* 0E9520 002C4B70 14400006 */ bnez $v0, .L002C4B8C
/* 0E9524 002C4B74 8E05000C */ lw $a1, 0xc($s0)
/* 0E9528 002C4B78 0C0B1EAF */ jal func_002C7ABC
/* 0E952C 002C4B7C 8CA50000 */ lw $a1, ($a1)
/* 0E9530 002C4B80 AE020070 */ sw $v0, 0x70($s0)
/* 0E9534 002C4B84 24020001 */ li $v0, 1
/* 0E9538 002C4B88 A2020005 */ sb $v0, 5($s0)
.L002C4B8C:
/* 0E953C 002C4B8C 8E020070 */ lw $v0, 0x70($s0)
/* 0E9540 002C4B90 10400004 */ beqz $v0, .L002C4BA4
/* 0E9544 002C4B94 2442FFFF */ addiu $v0, $v0, -1
/* 0E9548 002C4B98 AE020070 */ sw $v0, 0x70($s0)
/* 0E954C 002C4B9C 080B12EA */ j func_002C4BA8
/* 0E9550 002C4BA0 2C420001 */ sltiu $v0, $v0, 1
.L002C4BA4:
/* 0E9554 002C4BA4 24020002 */ li $v0, 2
func_002C4BA8:
/* 0E9558 002C4BA8 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E955C 002C4BAC 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9560 002C4BB0 03E00008 */ jr $ra
/* 0E9564 002C4BB4 27BD0018 */ addiu $sp, $sp, 0x18
func_002C4BB8:
/* 0E9568 002C4BB8 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E956C 002C4BBC AFB00010 */ sw $s0, 0x10($sp)
/* 0E9570 002C4BC0 0080802D */ move $s0, $a0
/* 0E9574 002C4BC4 AFBF0014 */ sw $ra, 0x14($sp)
/* 0E9578 002C4BC8 82020005 */ lb $v0, 5($s0)
/* 0E957C 002C4BCC 14400011 */ bnez $v0, .L002C4C14
/* 0E9580 002C4BD0 8E05000C */ lw $a1, 0xc($s0)
/* 0E9584 002C4BD4 0C0B210B */ jal func_002C842C
/* 0E9588 002C4BD8 8CA50000 */ lw $a1, ($a1)
/* 0E958C 002C4BDC 3C0141F0 */ li $at, 0x41F00000 # 30.000000
/* 0E9590 002C4BE0 44811000 */ mtc1 $at, $f2
/* 0E9594 002C4BE4 00000000 */ nop
/* 0E9598 002C4BE8 46020002 */ mul.s $f0, $f0, $f2
/* 0E959C 002C4BEC 00000000 */ nop
/* 0E95A0 002C4BF0 3C013FE0 */ li $at, 0x3FE00000 # 1.750000
/* 0E95A4 002C4BF4 44811800 */ mtc1 $at, $f3
/* 0E95A8 002C4BF8 44801000 */ mtc1 $zero, $f2
/* 0E95AC 002C4BFC 46000021 */ cvt.d.s $f0, $f0
/* 0E95B0 002C4C00 46220000 */ add.d $f0, $f0, $f2
/* 0E95B4 002C4C04 24020001 */ li $v0, 1
/* 0E95B8 002C4C08 A2020005 */ sb $v0, 5($s0)
/* 0E95BC 002C4C0C 4620010D */ trunc.w.d $f4, $f0
/* 0E95C0 002C4C10 E6040070 */ swc1 $f4, 0x70($s0)
.L002C4C14:
/* 0E95C4 002C4C14 8E020070 */ lw $v0, 0x70($s0)
/* 0E95C8 002C4C18 10400004 */ beqz $v0, .L002C4C2C
/* 0E95CC 002C4C1C 2442FFFF */ addiu $v0, $v0, -1
/* 0E95D0 002C4C20 AE020070 */ sw $v0, 0x70($s0)
/* 0E95D4 002C4C24 080B130C */ j func_002C4C30
/* 0E95D8 002C4C28 2C420001 */ sltiu $v0, $v0, 1
.L002C4C2C:
/* 0E95DC 002C4C2C 24020002 */ li $v0, 2
func_002C4C30:
/* 0E95E0 002C4C30 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E95E4 002C4C34 8FB00010 */ lw $s0, 0x10($sp)
/* 0E95E8 002C4C38 03E00008 */ jr $ra
/* 0E95EC 002C4C3C 27BD0018 */ addiu $sp, $sp, 0x18
func_002C4C40:
/* 0E95F0 002C4C40 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E95F4 002C4C44 AFB10014 */ sw $s1, 0x14($sp)
/* 0E95F8 002C4C48 0080882D */ move $s1, $a0
/* 0E95FC 002C4C4C AFBF0018 */ sw $ra, 0x18($sp)
/* 0E9600 002C4C50 AFB00010 */ sw $s0, 0x10($sp)
/* 0E9604 002C4C54 8E30000C */ lw $s0, 0xc($s1)
/* 0E9608 002C4C58 8E050000 */ lw $a1, ($s0)
/* 0E960C 002C4C5C 0C0B1EAF */ jal func_002C7ABC
/* 0E9610 002C4C60 26100004 */ addiu $s0, $s0, 4
/* 0E9614 002C4C64 0220202D */ move $a0, $s1
/* 0E9618 002C4C68 8E050000 */ lw $a1, ($s0)
/* 0E961C 002C4C6C 0C0B1EAF */ jal func_002C7ABC
/* 0E9620 002C4C70 0040802D */ move $s0, $v0
/* 0E9624 002C4C74 12020005 */ beq $s0, $v0, .L002C4C8C
/* 0E9628 002C4C78 24020002 */ li $v0, 2
/* 0E962C 002C4C7C 0C0B223F */ jal func_002C88FC
/* 0E9630 002C4C80 0220202D */ move $a0, $s1
/* 0E9634 002C4C84 AE220008 */ sw $v0, 8($s1)
/* 0E9638 002C4C88 24020002 */ li $v0, 2
.L002C4C8C:
/* 0E963C 002C4C8C 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E9640 002C4C90 8FB10014 */ lw $s1, 0x14($sp)
/* 0E9644 002C4C94 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9648 002C4C98 03E00008 */ jr $ra
/* 0E964C 002C4C9C 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4CA0:
/* 0E9650 002C4CA0 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E9654 002C4CA4 AFB10014 */ sw $s1, 0x14($sp)
/* 0E9658 002C4CA8 0080882D */ move $s1, $a0
/* 0E965C 002C4CAC AFBF0018 */ sw $ra, 0x18($sp)
/* 0E9660 002C4CB0 AFB00010 */ sw $s0, 0x10($sp)
/* 0E9664 002C4CB4 8E30000C */ lw $s0, 0xc($s1)
/* 0E9668 002C4CB8 8E050000 */ lw $a1, ($s0)
/* 0E966C 002C4CBC 0C0B1EAF */ jal func_002C7ABC
/* 0E9670 002C4CC0 26100004 */ addiu $s0, $s0, 4
/* 0E9674 002C4CC4 0220202D */ move $a0, $s1
/* 0E9678 002C4CC8 8E050000 */ lw $a1, ($s0)
/* 0E967C 002C4CCC 0C0B1EAF */ jal func_002C7ABC
/* 0E9680 002C4CD0 0040802D */ move $s0, $v0
/* 0E9684 002C4CD4 16020005 */ bne $s0, $v0, .L002C4CEC
/* 0E9688 002C4CD8 24020002 */ li $v0, 2
/* 0E968C 002C4CDC 0C0B223F */ jal func_002C88FC
/* 0E9690 002C4CE0 0220202D */ move $a0, $s1
/* 0E9694 002C4CE4 AE220008 */ sw $v0, 8($s1)
/* 0E9698 002C4CE8 24020002 */ li $v0, 2
.L002C4CEC:
/* 0E969C 002C4CEC 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E96A0 002C4CF0 8FB10014 */ lw $s1, 0x14($sp)
/* 0E96A4 002C4CF4 8FB00010 */ lw $s0, 0x10($sp)
/* 0E96A8 002C4CF8 03E00008 */ jr $ra
/* 0E96AC 002C4CFC 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4D00:
/* 0E96B0 002C4D00 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E96B4 002C4D04 AFB10014 */ sw $s1, 0x14($sp)
/* 0E96B8 002C4D08 0080882D */ move $s1, $a0
/* 0E96BC 002C4D0C AFBF0018 */ sw $ra, 0x18($sp)
/* 0E96C0 002C4D10 AFB00010 */ sw $s0, 0x10($sp)
/* 0E96C4 002C4D14 8E30000C */ lw $s0, 0xc($s1)
/* 0E96C8 002C4D18 8E050000 */ lw $a1, ($s0)
/* 0E96CC 002C4D1C 0C0B1EAF */ jal func_002C7ABC
/* 0E96D0 002C4D20 26100004 */ addiu $s0, $s0, 4
/* 0E96D4 002C4D24 0220202D */ move $a0, $s1
/* 0E96D8 002C4D28 8E050000 */ lw $a1, ($s0)
/* 0E96DC 002C4D2C 0C0B1EAF */ jal func_002C7ABC
/* 0E96E0 002C4D30 0040802D */ move $s0, $v0
/* 0E96E4 002C4D34 0202802A */ slt $s0, $s0, $v0
/* 0E96E8 002C4D38 16000005 */ bnez $s0, .L002C4D50
/* 0E96EC 002C4D3C 24020002 */ li $v0, 2
/* 0E96F0 002C4D40 0C0B223F */ jal func_002C88FC
/* 0E96F4 002C4D44 0220202D */ move $a0, $s1
/* 0E96F8 002C4D48 AE220008 */ sw $v0, 8($s1)
/* 0E96FC 002C4D4C 24020002 */ li $v0, 2
.L002C4D50:
/* 0E9700 002C4D50 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E9704 002C4D54 8FB10014 */ lw $s1, 0x14($sp)
/* 0E9708 002C4D58 8FB00010 */ lw $s0, 0x10($sp)
/* 0E970C 002C4D5C 03E00008 */ jr $ra
/* 0E9710 002C4D60 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4D64:
/* 0E9714 002C4D64 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E9718 002C4D68 AFB10014 */ sw $s1, 0x14($sp)
/* 0E971C 002C4D6C 0080882D */ move $s1, $a0
/* 0E9720 002C4D70 AFBF0018 */ sw $ra, 0x18($sp)
/* 0E9724 002C4D74 AFB00010 */ sw $s0, 0x10($sp)
/* 0E9728 002C4D78 8E30000C */ lw $s0, 0xc($s1)
/* 0E972C 002C4D7C 8E050000 */ lw $a1, ($s0)
/* 0E9730 002C4D80 0C0B1EAF */ jal func_002C7ABC
/* 0E9734 002C4D84 26100004 */ addiu $s0, $s0, 4
/* 0E9738 002C4D88 0220202D */ move $a0, $s1
/* 0E973C 002C4D8C 8E050000 */ lw $a1, ($s0)
/* 0E9740 002C4D90 0C0B1EAF */ jal func_002C7ABC
/* 0E9744 002C4D94 0040802D */ move $s0, $v0
/* 0E9748 002C4D98 0050102A */ slt $v0, $v0, $s0
/* 0E974C 002C4D9C 14400005 */ bnez $v0, .L002C4DB4
/* 0E9750 002C4DA0 24020002 */ li $v0, 2
/* 0E9754 002C4DA4 0C0B223F */ jal func_002C88FC
/* 0E9758 002C4DA8 0220202D */ move $a0, $s1
/* 0E975C 002C4DAC AE220008 */ sw $v0, 8($s1)
/* 0E9760 002C4DB0 24020002 */ li $v0, 2
.L002C4DB4:
/* 0E9764 002C4DB4 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E9768 002C4DB8 8FB10014 */ lw $s1, 0x14($sp)
/* 0E976C 002C4DBC 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9770 002C4DC0 03E00008 */ jr $ra
/* 0E9774 002C4DC4 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4DC8:
/* 0E9778 002C4DC8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E977C 002C4DCC AFB10014 */ sw $s1, 0x14($sp)
/* 0E9780 002C4DD0 0080882D */ move $s1, $a0
/* 0E9784 002C4DD4 AFBF0018 */ sw $ra, 0x18($sp)
/* 0E9788 002C4DD8 AFB00010 */ sw $s0, 0x10($sp)
/* 0E978C 002C4DDC 8E30000C */ lw $s0, 0xc($s1)
/* 0E9790 002C4DE0 8E050000 */ lw $a1, ($s0)
/* 0E9794 002C4DE4 0C0B1EAF */ jal func_002C7ABC
/* 0E9798 002C4DE8 26100004 */ addiu $s0, $s0, 4
/* 0E979C 002C4DEC 0220202D */ move $a0, $s1
/* 0E97A0 002C4DF0 8E050000 */ lw $a1, ($s0)
/* 0E97A4 002C4DF4 0C0B1EAF */ jal func_002C7ABC
/* 0E97A8 002C4DF8 0040802D */ move $s0, $v0
/* 0E97AC 002C4DFC 0050102A */ slt $v0, $v0, $s0
/* 0E97B0 002C4E00 10400005 */ beqz $v0, .L002C4E18
/* 0E97B4 002C4E04 24020002 */ li $v0, 2
/* 0E97B8 002C4E08 0C0B223F */ jal func_002C88FC
/* 0E97BC 002C4E0C 0220202D */ move $a0, $s1
/* 0E97C0 002C4E10 AE220008 */ sw $v0, 8($s1)
/* 0E97C4 002C4E14 24020002 */ li $v0, 2
.L002C4E18:
/* 0E97C8 002C4E18 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E97CC 002C4E1C 8FB10014 */ lw $s1, 0x14($sp)
/* 0E97D0 002C4E20 8FB00010 */ lw $s0, 0x10($sp)
/* 0E97D4 002C4E24 03E00008 */ jr $ra
/* 0E97D8 002C4E28 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4E2C:
/* 0E97DC 002C4E2C 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E97E0 002C4E30 AFB10014 */ sw $s1, 0x14($sp)
/* 0E97E4 002C4E34 0080882D */ move $s1, $a0
/* 0E97E8 002C4E38 AFBF0018 */ sw $ra, 0x18($sp)
/* 0E97EC 002C4E3C AFB00010 */ sw $s0, 0x10($sp)
/* 0E97F0 002C4E40 8E30000C */ lw $s0, 0xc($s1)
/* 0E97F4 002C4E44 8E050000 */ lw $a1, ($s0)
/* 0E97F8 002C4E48 0C0B1EAF */ jal func_002C7ABC
/* 0E97FC 002C4E4C 26100004 */ addiu $s0, $s0, 4
/* 0E9800 002C4E50 0220202D */ move $a0, $s1
/* 0E9804 002C4E54 8E050000 */ lw $a1, ($s0)
/* 0E9808 002C4E58 0C0B1EAF */ jal func_002C7ABC
/* 0E980C 002C4E5C 0040802D */ move $s0, $v0
/* 0E9810 002C4E60 0202802A */ slt $s0, $s0, $v0
/* 0E9814 002C4E64 12000005 */ beqz $s0, .L002C4E7C
/* 0E9818 002C4E68 24020002 */ li $v0, 2
/* 0E981C 002C4E6C 0C0B223F */ jal func_002C88FC
/* 0E9820 002C4E70 0220202D */ move $a0, $s1
/* 0E9824 002C4E74 AE220008 */ sw $v0, 8($s1)
/* 0E9828 002C4E78 24020002 */ li $v0, 2
.L002C4E7C:
/* 0E982C 002C4E7C 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E9830 002C4E80 8FB10014 */ lw $s1, 0x14($sp)
/* 0E9834 002C4E84 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9838 002C4E88 03E00008 */ jr $ra
/* 0E983C 002C4E8C 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4E90:
/* 0E9840 002C4E90 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E9844 002C4E94 AFB10014 */ sw $s1, 0x14($sp)
/* 0E9848 002C4E98 0080882D */ move $s1, $a0
/* 0E984C 002C4E9C AFBF0018 */ sw $ra, 0x18($sp)
/* 0E9850 002C4EA0 AFB00010 */ sw $s0, 0x10($sp)
/* 0E9854 002C4EA4 8E30000C */ lw $s0, 0xc($s1)
/* 0E9858 002C4EA8 8E050000 */ lw $a1, ($s0)
/* 0E985C 002C4EAC 0C0B1EAF */ jal func_002C7ABC
/* 0E9860 002C4EB0 26100004 */ addiu $s0, $s0, 4
/* 0E9864 002C4EB4 8E030000 */ lw $v1, ($s0)
/* 0E9868 002C4EB8 00431024 */ and $v0, $v0, $v1
/* 0E986C 002C4EBC 14400005 */ bnez $v0, .L002C4ED4
/* 0E9870 002C4EC0 24020002 */ li $v0, 2
/* 0E9874 002C4EC4 0C0B223F */ jal func_002C88FC
/* 0E9878 002C4EC8 0220202D */ move $a0, $s1
/* 0E987C 002C4ECC AE220008 */ sw $v0, 8($s1)
/* 0E9880 002C4ED0 24020002 */ li $v0, 2
.L002C4ED4:
/* 0E9884 002C4ED4 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E9888 002C4ED8 8FB10014 */ lw $s1, 0x14($sp)
/* 0E988C 002C4EDC 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9890 002C4EE0 03E00008 */ jr $ra
/* 0E9894 002C4EE4 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4EE8:
/* 0E9898 002C4EE8 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 0E989C 002C4EEC AFB10014 */ sw $s1, 0x14($sp)
/* 0E98A0 002C4EF0 0080882D */ move $s1, $a0
/* 0E98A4 002C4EF4 AFBF0018 */ sw $ra, 0x18($sp)
/* 0E98A8 002C4EF8 AFB00010 */ sw $s0, 0x10($sp)
/* 0E98AC 002C4EFC 8E30000C */ lw $s0, 0xc($s1)
/* 0E98B0 002C4F00 8E050000 */ lw $a1, ($s0)
/* 0E98B4 002C4F04 0C0B1EAF */ jal func_002C7ABC
/* 0E98B8 002C4F08 26100004 */ addiu $s0, $s0, 4
/* 0E98BC 002C4F0C 8E030000 */ lw $v1, ($s0)
/* 0E98C0 002C4F10 00431024 */ and $v0, $v0, $v1
/* 0E98C4 002C4F14 10400005 */ beqz $v0, .L002C4F2C
/* 0E98C8 002C4F18 24020002 */ li $v0, 2
/* 0E98CC 002C4F1C 0C0B223F */ jal func_002C88FC
/* 0E98D0 002C4F20 0220202D */ move $a0, $s1
/* 0E98D4 002C4F24 AE220008 */ sw $v0, 8($s1)
/* 0E98D8 002C4F28 24020002 */ li $v0, 2
.L002C4F2C:
/* 0E98DC 002C4F2C 8FBF0018 */ lw $ra, 0x18($sp)
/* 0E98E0 002C4F30 8FB10014 */ lw $s1, 0x14($sp)
/* 0E98E4 002C4F34 8FB00010 */ lw $s0, 0x10($sp)
/* 0E98E8 002C4F38 03E00008 */ jr $ra
/* 0E98EC 002C4F3C 27BD0020 */ addiu $sp, $sp, 0x20
func_002C4F40:
/* 0E98F0 002C4F40 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E98F4 002C4F44 AFB00010 */ sw $s0, 0x10($sp)
/* 0E98F8 002C4F48 AFBF0014 */ sw $ra, 0x14($sp)
/* 0E98FC 002C4F4C 0C0B225E */ jal func_002C8978
/* 0E9900 002C4F50 0080802D */ move $s0, $a0
/* 0E9904 002C4F54 AE020008 */ sw $v0, 8($s0)
/* 0E9908 002C4F58 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E990C 002C4F5C 8FB00010 */ lw $s0, 0x10($sp)
/* 0E9910 002C4F60 24020002 */ li $v0, 2
/* 0E9914 002C4F64 03E00008 */ jr $ra
/* 0E9918 002C4F68 27BD0018 */ addiu $sp, $sp, 0x18
func_002C4F6C:
/* 0E991C 002C4F6C 03E00008 */ jr $ra
/* 0E9920 002C4F70 24020002 */ li $v0, 2
func_002C4F74:
/* 0E9924 002C4F74 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 0E9928 002C4F78 AFB00010 */ sw $s0, 0x10($sp)
/* 0E992C 002C4F7C 0080802D */ move $s0, $a0
/* 0E9930 002C4F80 AFBF0014 */ sw $ra, 0x14($sp)
/* 0E9934 002C4F84 8E02000C */ lw $v0, 0xc($s0)
/* 0E9938 002C4F88 0C0B1EAF */ jal func_002C7ABC
/* 0E993C 002C4F8C 8C450000 */ lw $a1, ($v0)
/* 0E9940 002C4F90 92030007 */ lbu $v1, 7($s0)
/* 0E9944 002C4F94 0040282D */ move $a1, $v0
/* 0E9948 002C4F98 24630001 */ addiu $v1, $v1, 1
/* 0E994C 002C4F9C A2030007 */ sb $v1, 7($s0)
/* 0E9950 002C4FA0 00031E00 */ sll $v1, $v1, 0x18
/* 0E9954 002C4FA4 00032603 */ sra $a0, $v1, 0x18
/* 0E9958 002C4FA8 28820008 */ slti $v0, $a0, 8
/* 0E995C 002C4FAC 14400003 */ bnez $v0, .L002C4FBC
/* 0E9960 002C4FB0 24020002 */ li $v0, 2
func_002C4FB4:
/* 0E9964 002C4FB4 080B13ED */ j func_002C4FB4
/* 0E9968 002C4FB8 00000000 */ nop
.L002C4FBC:
/* 0E996C 002C4FBC 00441804 */ sllv $v1, $a0, $v0
/* 0E9970 002C4FC0 02031821 */ addu $v1, $s0, $v1
/* 0E9974 002C4FC4 02042021 */ addu $a0, $s0, $a0
/* 0E9978 002C4FC8 AC650118 */ sw $a1, 0x118($v1)
/* 0E997C 002C4FCC 24030001 */ li $v1, 1
/* 0E9980 002C4FD0 A0830110 */ sb $v1, 0x110($a0)
/* 0E9984 002C4FD4 8FBF0014 */ lw $ra, 0x14($sp)
/* 0E9988 002C4FD8 8FB00010 */ lw $s0, 0x10($sp)
/* 0E998C 002C4FDC 03E00008 */ jr $ra
/* 0E9990 002C4FE0 27BD0018 */ addiu $sp, $sp, 0x18
func_002C4FE4:
/* 0E9994 002C4FE4 8C82000C */ lw $v0, 0xc($a0)
/* 0E9998 002C4FE8 90830007 */ lbu $v1, 7($a0)
/* 0E999C 002C4FEC 8C450000 */ lw $a1, ($v0)
/* 0E99A0 002C4FF0 24630001 */ addiu $v1, $v1, 1
/* 0E99A4 002C4FF4 A0830007 */ sb $v1, 7($a0)
/* 0E99A8 002C4FF8 00031E00 */ sll $v1, $v1, 0x18
/* 0E99AC 002C4FFC 00031E03 */ sra $v1, $v1, 0x18