Files
mk64/asm/non_matchings/code_80071F00/func_8007326C.s
T
CoderStig 8ab4557b39 Split asm using autodecompiler (#49)
* Split asm using autodecompiler

* Placed libultra bss and linked more C
2021-11-05 05:17:09 -06:00

110 lines
5.3 KiB
ArmAsm

glabel func_8007326C
/* 073E6C 8007326C 27BDFFD8 */ addiu $sp, $sp, -0x28
/* 073E70 80073270 AFBF001C */ sw $ra, 0x1c($sp)
/* 073E74 80073274 AFB00018 */ sw $s0, 0x18($sp)
/* 073E78 80073278 AFA5002C */ sw $a1, 0x2c($sp)
/* 073E7C 8007327C 00808025 */ move $s0, $a0
/* 073E80 80073280 AFA60030 */ sw $a2, 0x30($sp)
/* 073E84 80073284 AFA70034 */ sw $a3, 0x34($sp)
/* 073E88 80073288 AFA00024 */ sw $zero, 0x24($sp)
/* 073E8C 8007328C 0C01C89C */ jal func_80072270
/* 073E90 80073290 24052000 */ li $a1, 8192
/* 073E94 80073294 10400017 */ beqz $v0, .L800732F4
/* 073E98 80073298 8FA6002C */ lw $a2, 0x2c($sp)
/* 073E9C 8007329C 001070C0 */ sll $t6, $s0, 3
/* 073EA0 800732A0 01D07023 */ subu $t6, $t6, $s0
/* 073EA4 800732A4 3C0F8016 */ lui $t7, %hi(D_80165C18) # $t7, 0x8016
/* 073EA8 800732A8 25EF5C18 */ addiu $t7, %lo(D_80165C18) # addiu $t7, $t7, 0x5c18
/* 073EAC 800732AC 000E7140 */ sll $t6, $t6, 5
/* 073EB0 800732B0 8FB80038 */ lw $t8, 0x38($sp)
/* 073EB4 800732B4 8FB9003C */ lw $t9, 0x3c($sp)
/* 073EB8 800732B8 01CF1821 */ addu $v1, $t6, $t7
/* 073EBC 800732BC A06600D2 */ sb $a2, 0xd2($v1)
/* 073EC0 800732C0 02002025 */ move $a0, $s0
/* 073EC4 800732C4 24050001 */ li $a1, 1
/* 073EC8 800732C8 AC780050 */ sw $t8, 0x50($v1)
/* 073ECC 800732CC 0C01C8E2 */ jal func_80072388
/* 073ED0 800732D0 A07900CC */ sb $t9, 0xcc($v1)
/* 073ED4 800732D4 02002025 */ move $a0, $s0
/* 073ED8 800732D8 0C01C870 */ jal func_800721C0
/* 073EDC 800732DC 24052000 */ li $a1, 8192
/* 073EE0 800732E0 02002025 */ move $a0, $s0
/* 073EE4 800732E4 0C01C87A */ jal func_800721E8
/* 073EE8 800732E8 24054000 */ li $a1, 16384
/* 073EEC 800732EC 10000041 */ b .L800733F4
/* 073EF0 800732F0 8FBF001C */ lw $ra, 0x1c($sp)
.L800732F4:
/* 073EF4 800732F4 001040C0 */ sll $t0, $s0, 3
/* 073EF8 800732F8 01104023 */ subu $t0, $t0, $s0
/* 073EFC 800732FC 3C098016 */ lui $t1, %hi(D_80165C18) # $t1, 0x8016
/* 073F00 80073300 25295C18 */ addiu $t1, %lo(D_80165C18) # addiu $t1, $t1, 0x5c18
/* 073F04 80073304 00084140 */ sll $t0, $t0, 5
/* 073F08 80073308 01091821 */ addu $v1, $t0, $t1
/* 073F0C 8007330C 8C6A0050 */ lw $t2, 0x50($v1)
/* 073F10 80073310 02002025 */ move $a0, $s0
/* 073F14 80073314 24054000 */ li $a1, 16384
/* 073F18 80073318 254BFFFF */ addiu $t3, $t2, -1
/* 073F1C 8007331C 1D600034 */ bgtz $t3, .L800733F0
/* 073F20 80073320 AC6B0050 */ sw $t3, 0x50($v1)
/* 073F24 80073324 8FAD0038 */ lw $t5, 0x38($sp)
/* 073F28 80073328 AFA30020 */ sw $v1, 0x20($sp)
/* 073F2C 8007332C 0C01C89C */ jal func_80072270
/* 073F30 80073330 AC6D0050 */ sw $t5, 0x50($v1)
/* 073F34 80073334 8FA30020 */ lw $v1, 0x20($sp)
/* 073F38 80073338 10400010 */ beqz $v0, .L8007337C
/* 073F3C 8007333C 8FA6002C */ lw $a2, 0x2c($sp)
/* 073F40 80073340 806E00D2 */ lb $t6, 0xd2($v1)
/* 073F44 80073344 8FAF0034 */ lw $t7, 0x34($sp)
/* 073F48 80073348 8FA20030 */ lw $v0, 0x30($sp)
/* 073F4C 8007334C 02002025 */ move $a0, $s0
/* 073F50 80073350 01CFC023 */ subu $t8, $t6, $t7
/* 073F54 80073354 A07800D2 */ sb $t8, 0xd2($v1)
/* 073F58 80073358 807900D2 */ lb $t9, 0xd2($v1)
/* 073F5C 8007335C 24054000 */ li $a1, 16384
/* 073F60 80073360 0059082A */ slt $at, $v0, $t9
/* 073F64 80073364 54200023 */ bnel $at, $zero, .L800733F4
/* 073F68 80073368 8FBF001C */ lw $ra, 0x1c($sp)
/* 073F6C 8007336C 0C01C870 */ jal func_800721C0
/* 073F70 80073370 A06200D2 */ sb $v0, 0xd2($v1)
/* 073F74 80073374 1000001F */ b .L800733F4
/* 073F78 80073378 8FBF001C */ lw $ra, 0x1c($sp)
.L8007337C:
/* 073F7C 8007337C 806800D2 */ lb $t0, 0xd2($v1)
/* 073F80 80073380 8FA90034 */ lw $t1, 0x34($sp)
/* 073F84 80073384 01095021 */ addu $t2, $t0, $t1
/* 073F88 80073388 A06A00D2 */ sb $t2, 0xd2($v1)
/* 073F8C 8007338C 806B00D2 */ lb $t3, 0xd2($v1)
/* 073F90 80073390 0166082A */ slt $at, $t3, $a2
/* 073F94 80073394 54200017 */ bnel $at, $zero, .L800733F4
/* 073F98 80073398 8FBF001C */ lw $ra, 0x1c($sp)
/* 073F9C 8007339C 806200CC */ lb $v0, 0xcc($v1)
/* 073FA0 800733A0 A06600D2 */ sb $a2, 0xd2($v1)
/* 073FA4 800733A4 02002025 */ move $a0, $s0
/* 073FA8 800733A8 18400003 */ blez $v0, .L800733B8
/* 073FAC 800733AC 244CFFFF */ addiu $t4, $v0, -1
/* 073FB0 800733B0 A06C00CC */ sb $t4, 0xcc($v1)
/* 073FB4 800733B4 806200CC */ lb $v0, 0xcc($v1)
.L800733B8:
/* 073FB8 800733B8 1440000B */ bnez $v0, .L800733E8
/* 073FBC 800733BC 24052000 */ li $a1, 8192
/* 073FC0 800733C0 0C01C87A */ jal func_800721E8
/* 073FC4 800733C4 02002025 */ move $a0, $s0
/* 073FC8 800733C8 02002025 */ move $a0, $s0
/* 073FCC 800733CC 0C01C8E2 */ jal func_80072388
/* 073FD0 800733D0 00002825 */ move $a1, $zero
/* 073FD4 800733D4 0C01C922 */ jal func_80072488
/* 073FD8 800733D8 02002025 */ move $a0, $s0
/* 073FDC 800733DC 240D0001 */ li $t5, 1
/* 073FE0 800733E0 10000003 */ b .L800733F0
/* 073FE4 800733E4 AFAD0024 */ sw $t5, 0x24($sp)
.L800733E8:
/* 073FE8 800733E8 0C01C87A */ jal func_800721E8
/* 073FEC 800733EC 24054000 */ li $a1, 16384
.L800733F0:
/* 073FF0 800733F0 8FBF001C */ lw $ra, 0x1c($sp)
.L800733F4:
/* 073FF4 800733F4 8FA20024 */ lw $v0, 0x24($sp)
/* 073FF8 800733F8 8FB00018 */ lw $s0, 0x18($sp)
/* 073FFC 800733FC 03E00008 */ jr $ra
/* 074000 80073400 27BD0028 */ addiu $sp, $sp, 0x28