.set noat # allow manual use of $at .set noreorder # don't insert nops after branches glabel func_8005232C /* 02D72C 8005232C 27BDFFC8 */ addiu $sp, $sp, -0x38 /* 02D730 80052330 AFB60028 */ sw $s6, 0x28($sp) /* 02D734 80052334 0080B02D */ daddu $s6, $a0, $zero /* 02D738 80052338 AFB40020 */ sw $s4, 0x20($sp) /* 02D73C 8005233C 00A0A02D */ daddu $s4, $a1, $zero /* 02D740 80052340 AFBF0030 */ sw $ra, 0x30($sp) /* 02D744 80052344 AFB7002C */ sw $s7, 0x2c($sp) /* 02D748 80052348 AFB50024 */ sw $s5, 0x24($sp) /* 02D74C 8005234C AFB3001C */ sw $s3, 0x1c($sp) /* 02D750 80052350 AFB20018 */ sw $s2, 0x18($sp) /* 02D754 80052354 AFB10014 */ sw $s1, 0x14($sp) /* 02D758 80052358 AFB00010 */ sw $s0, 0x10($sp) /* 02D75C 8005235C 92820025 */ lbu $v0, 0x25($s4) /* 02D760 80052360 8ED70000 */ lw $s7, ($s6) /* 02D764 80052364 14400081 */ bnez $v0, .L8005256C /* 02D768 80052368 0000A82D */ daddu $s5, $zero, $zero .L8005236C: /* 02D76C 8005236C 00151080 */ sll $v0, $s5, 2 /* 02D770 80052370 244201D4 */ addiu $v0, $v0, 0x1d4 /* 02D774 80052374 02829821 */ addu $s3, $s4, $v0 /* 02D778 80052378 92620001 */ lbu $v0, 1($s3) /* 02D77C 8005237C 50400076 */ beql $v0, $zero, .L80052558 /* 02D780 80052380 26B50001 */ addiu $s5, $s5, 1 /* 02D784 80052384 92620000 */ lbu $v0, ($s3) /* 02D788 80052388 8E900030 */ lw $s0, 0x30($s4) /* 02D78C 8005238C 8E840034 */ lw $a0, 0x34($s4) /* 02D790 80052390 00021880 */ sll $v1, $v0, 2 /* 02D794 80052394 00621821 */ addu $v1, $v1, $v0 /* 02D798 80052398 000318C0 */ sll $v1, $v1, 3 /* 02D79C 8005239C 24630044 */ addiu $v1, $v1, 0x44 /* 02D7A0 800523A0 0204102B */ sltu $v0, $s0, $a0 /* 02D7A4 800523A4 10400012 */ beqz $v0, .L800523F0 /* 02D7A8 800523A8 02839021 */ addu $s2, $s4, $v1 /* 02D7AC 800523AC 001010C0 */ sll $v0, $s0, 3 /* 02D7B0 800523B0 00501021 */ addu $v0, $v0, $s0 /* 02D7B4 800523B4 000210C0 */ sll $v0, $v0, 3 /* 02D7B8 800523B8 24431320 */ addiu $v1, $v0, 0x1320 .L800523BC: /* 02D7BC 800523BC 02E38821 */ addu $s1, $s7, $v1 /* 02D7C0 800523C0 92220045 */ lbu $v0, 0x45($s1) /* 02D7C4 800523C4 10400005 */ beqz $v0, .L800523DC /* 02D7C8 800523C8 00000000 */ nop /* 02D7CC 800523CC 26100001 */ addiu $s0, $s0, 1 /* 02D7D0 800523D0 0204102B */ sltu $v0, $s0, $a0 /* 02D7D4 800523D4 1440FFF9 */ bnez $v0, .L800523BC /* 02D7D8 800523D8 24630048 */ addiu $v1, $v1, 0x48 .L800523DC: /* 02D7DC 800523DC 8E820034 */ lw $v0, 0x34($s4) /* 02D7E0 800523E0 0202102B */ sltu $v0, $s0, $v0 /* 02D7E4 800523E4 1440001C */ bnez $v0, .L80052458 /* 02D7E8 800523E8 00000000 */ nop /* 02D7EC 800523EC 8E900030 */ lw $s0, 0x30($s4) .L800523F0: /* 02D7F0 800523F0 8E820034 */ lw $v0, 0x34($s4) /* 02D7F4 800523F4 0202102B */ sltu $v0, $s0, $v0 /* 02D7F8 800523F8 10400056 */ beqz $v0, .L80052554 /* 02D7FC 800523FC 001010C0 */ sll $v0, $s0, 3 /* 02D800 80052400 00501021 */ addu $v0, $v0, $s0 /* 02D804 80052404 000210C0 */ sll $v0, $v0, 3 /* 02D808 80052408 24441320 */ addiu $a0, $v0, 0x1320 .L8005240C: /* 02D80C 8005240C 02E48821 */ addu $s1, $s7, $a0 /* 02D810 80052410 92220045 */ lbu $v0, 0x45($s1) /* 02D814 80052414 92C30022 */ lbu $v1, 0x22($s6) /* 02D818 80052418 0043102B */ sltu $v0, $v0, $v1 /* 02D81C 8005241C 50400006 */ beql $v0, $zero, .L80052438 /* 02D820 80052420 26100001 */ addiu $s0, $s0, 1 /* 02D824 80052424 0220202D */ daddu $a0, $s1, $zero /* 02D828 80052428 0C014E31 */ jal func_800538C4 /* 02D82C 8005242C 320500FF */ andi $a1, $s0, 0xff /* 02D830 80052430 08014912 */ j .L80052448 /* 02D834 80052434 00000000 */ nop .L80052438: /* 02D838 80052438 8E820034 */ lw $v0, 0x34($s4) /* 02D83C 8005243C 0202102B */ sltu $v0, $s0, $v0 /* 02D840 80052440 1440FFF2 */ bnez $v0, .L8005240C /* 02D844 80052444 24840048 */ addiu $a0, $a0, 0x48 .L80052448: /* 02D848 80052448 8E820034 */ lw $v0, 0x34($s4) /* 02D84C 8005244C 0202102B */ sltu $v0, $s0, $v0 /* 02D850 80052450 50400041 */ beql $v0, $zero, .L80052558 /* 02D854 80052454 26B50001 */ addiu $s5, $s5, 1 .L80052458: /* 02D858 80052458 8E850030 */ lw $a1, 0x30($s4) /* 02D85C 8005245C 92640000 */ lbu $a0, ($s3) /* 02D860 80052460 8E830014 */ lw $v1, 0x14($s4) /* 02D864 80052464 92620001 */ lbu $v0, 1($s3) /* 02D868 80052468 02052823 */ subu $a1, $s0, $a1 /* 02D86C 8005246C 000528C0 */ sll $a1, $a1, 3 /* 02D870 80052470 24A507B4 */ addiu $a1, $a1, 0x7b4 /* 02D874 80052474 02C52821 */ addu $a1, $s6, $a1 /* 02D878 80052478 00042400 */ sll $a0, $a0, 0x10 /* 02D87C 8005247C 00641821 */ addu $v1, $v1, $a0 /* 02D880 80052480 00021200 */ sll $v0, $v0, 8 /* 02D884 80052484 00621821 */ addu $v1, $v1, $v0 /* 02D888 80052488 ACA30000 */ sw $v1, ($a1) /* 02D88C 8005248C 92630001 */ lbu $v1, 1($s3) /* 02D890 80052490 8E440000 */ lw $a0, ($s2) /* 02D894 80052494 3063007F */ andi $v1, $v1, 0x7f /* 02D898 80052498 00031040 */ sll $v0, $v1, 1 /* 02D89C 8005249C 00431021 */ addu $v0, $v0, $v1 /* 02D8A0 800524A0 000210C0 */ sll $v0, $v0, 3 /* 02D8A4 800524A4 00431021 */ addu $v0, $v0, $v1 /* 02D8A8 800524A8 9483001E */ lhu $v1, 0x1e($a0) /* 02D8AC 800524AC 00021080 */ sll $v0, $v0, 2 /* 02D8B0 800524B0 00431023 */ subu $v0, $v0, $v1 /* 02D8B4 800524B4 A4A20004 */ sh $v0, 4($a1) /* 02D8B8 800524B8 92630002 */ lbu $v1, 2($s3) /* 02D8BC 800524BC 3063007F */ andi $v1, $v1, 0x7f /* 02D8C0 800524C0 A0A30006 */ sb $v1, 6($a1) /* 02D8C4 800524C4 82840038 */ lb $a0, 0x38($s4) /* 02D8C8 800524C8 86420018 */ lh $v0, 0x18($s2) /* 02D8CC 800524CC 00820018 */ mult $a0, $v0 /* 02D8D0 800524D0 00003012 */ mflo $a2 /* 02D8D4 800524D4 00000000 */ nop /* 02D8D8 800524D8 00000000 */ nop /* 02D8DC 800524DC 00C30018 */ mult $a2, $v1 /* 02D8E0 800524E0 00003012 */ mflo $a2 /* 02D8E4 800524E4 00061383 */ sra $v0, $a2, 0xe /* 02D8E8 800524E8 A6220040 */ sh $v0, 0x40($s1) /* 02D8EC 800524EC 84A20004 */ lh $v0, 4($a1) /* 02D8F0 800524F0 8644000C */ lh $a0, 0xc($s2) /* 02D8F4 800524F4 0C014E3E */ jal func_800538F8 /* 02D8F8 800524F8 00442021 */ addu $a0, $v0, $a0 /* 02D8FC 800524FC 8E420000 */ lw $v0, ($s2) /* 02D900 80052500 C4420020 */ lwc1 $f2, 0x20($v0) /* 02D904 80052504 46020002 */ mul.s $f0, $f0, $f2 /* 02D908 80052508 00000000 */ nop /* 02D90C 8005250C E6200004 */ swc1 $f0, 4($s1) /* 02D910 80052510 92420024 */ lbu $v0, 0x24($s2) /* 02D914 80052514 A222000E */ sb $v0, 0xe($s1) /* 02D918 80052518 92420025 */ lbu $v0, 0x25($s2) /* 02D91C 8005251C A222000F */ sb $v0, 0xf($s1) /* 02D920 80052520 8E420000 */ lw $v0, ($s2) /* 02D924 80052524 AE220000 */ sw $v0, ($s1) /* 02D928 80052528 92C20023 */ lbu $v0, 0x23($s6) /* 02D92C 8005252C A2220010 */ sb $v0, 0x10($s1) /* 02D930 80052530 8E420004 */ lw $v0, 4($s2) /* 02D934 80052534 AE220014 */ sw $v0, 0x14($s1) /* 02D938 80052538 8E430008 */ lw $v1, 8($s2) /* 02D93C 8005253C 24020002 */ addiu $v0, $zero, 2 /* 02D940 80052540 A2220043 */ sb $v0, 0x43($s1) /* 02D944 80052544 AE230018 */ sw $v1, 0x18($s1) /* 02D948 80052548 92C20022 */ lbu $v0, 0x22($s6) /* 02D94C 8005254C A2220045 */ sb $v0, 0x45($s1) /* 02D950 80052550 A2220044 */ sb $v0, 0x44($s1) .L80052554: /* 02D954 80052554 26B50001 */ addiu $s5, $s5, 1 .L80052558: /* 02D958 80052558 2EA20004 */ sltiu $v0, $s5, 4 /* 02D95C 8005255C A2600000 */ sb $zero, ($s3) /* 02D960 80052560 A2600001 */ sb $zero, 1($s3) /* 02D964 80052564 1440FF81 */ bnez $v0, .L8005236C /* 02D968 80052568 A2600002 */ sb $zero, 2($s3) .L8005256C: /* 02D96C 8005256C 8FBF0030 */ lw $ra, 0x30($sp) /* 02D970 80052570 8FB7002C */ lw $s7, 0x2c($sp) /* 02D974 80052574 8FB60028 */ lw $s6, 0x28($sp) /* 02D978 80052578 8FB50024 */ lw $s5, 0x24($sp) /* 02D97C 8005257C 8FB40020 */ lw $s4, 0x20($sp) /* 02D980 80052580 8FB3001C */ lw $s3, 0x1c($sp) /* 02D984 80052584 8FB20018 */ lw $s2, 0x18($sp) /* 02D988 80052588 8FB10014 */ lw $s1, 0x14($sp) /* 02D98C 8005258C 8FB00010 */ lw $s0, 0x10($sp) /* 02D990 80052590 03E00008 */ jr $ra /* 02D994 80052594 27BD0038 */ addiu $sp, $sp, 0x38 /* 02D998 80052598 00000000 */ nop /* 02D99C 8005259C 00000000 */ nop