mirror of
https://github.com/HarbourMasters/SpaghettiKart
synced 2026-07-06 22:03:16 -04:00
8ab4557b39
* Split asm using autodecompiler * Placed libultra bss and linked more C
86 lines
4.2 KiB
ArmAsm
86 lines
4.2 KiB
ArmAsm
glabel func_80076828
|
|
/* 077428 80076828 27BDFFE0 */ addiu $sp, $sp, -0x20
|
|
/* 07742C 8007682C AFA40020 */ sw $a0, 0x20($sp)
|
|
/* 077430 80076830 AFA50024 */ sw $a1, 0x24($sp)
|
|
/* 077434 80076834 AFBF0014 */ sw $ra, 0x14($sp)
|
|
/* 077438 80076838 3C058018 */ lui $a1, %hi(D_80183E38) # $a1, 0x8018
|
|
/* 07743C 8007683C 3C048019 */ lui $a0, %hi(D_8018C1B0) # $a0, 0x8019
|
|
/* 077440 80076840 2484C1B0 */ addiu $a0, %lo(D_8018C1B0) # addiu $a0, $a0, -0x3e50
|
|
/* 077444 80076844 24A53E38 */ addiu $a1, %lo(D_80183E38) # addiu $a1, $a1, 0x3e38
|
|
/* 077448 80076848 0C01C811 */ jal func_80072044
|
|
/* 07744C 8007684C 24060080 */ li $a2, 128
|
|
/* 077450 80076850 2401FFFF */ li $at, -1
|
|
/* 077454 80076854 10410006 */ beq $v0, $at, .L80076870
|
|
/* 077458 80076858 00402025 */ move $a0, $v0
|
|
/* 07745C 8007685C 8FA50020 */ lw $a1, 0x20($sp)
|
|
/* 077460 80076860 8FA60024 */ lw $a2, 0x24($sp)
|
|
/* 077464 80076864 0C01D9D7 */ jal func_8007675C
|
|
/* 077468 80076868 AFA2001C */ sw $v0, 0x1c($sp)
|
|
/* 07746C 8007686C 8FA4001C */ lw $a0, 0x1c($sp)
|
|
.L80076870:
|
|
/* 077470 80076870 8FBF0014 */ lw $ra, 0x14($sp)
|
|
/* 077474 80076874 27BD0020 */ addiu $sp, $sp, 0x20
|
|
/* 077478 80076878 00801025 */ move $v0, $a0
|
|
/* 07747C 8007687C 03E00008 */ jr $ra
|
|
/* 077480 80076880 00000000 */ nop
|
|
|
|
/* 077484 80076884 27BDFFC8 */ addiu $sp, $sp, -0x38
|
|
/* 077488 80076888 AFB00014 */ sw $s0, 0x14($sp)
|
|
/* 07748C 8007688C 00808025 */ move $s0, $a0
|
|
/* 077490 80076890 AFBF0024 */ sw $ra, 0x24($sp)
|
|
/* 077494 80076894 AFB30020 */ sw $s3, 0x20($sp)
|
|
/* 077498 80076898 AFB2001C */ sw $s2, 0x1c($sp)
|
|
/* 07749C 8007689C AFB10018 */ sw $s1, 0x18($sp)
|
|
/* 0774A0 800768A0 0C0ADF8D */ jal random_int
|
|
/* 0774A4 800768A4 2404000F */ li $a0, 15
|
|
/* 0774A8 800768A8 12000009 */ beqz $s0, .L800768D0
|
|
/* 0774AC 800768AC 2411FFFF */ li $s1, -1
|
|
/* 0774B0 800768B0 24130001 */ li $s3, 1
|
|
/* 0774B4 800768B4 1213000E */ beq $s0, $s3, .L800768F0
|
|
/* 0774B8 800768B8 0002C880 */ sll $t9, $v0, 2
|
|
/* 0774BC 800768BC 24010002 */ li $at, 2
|
|
/* 0774C0 800768C0 12010011 */ beq $s0, $at, .L80076908
|
|
/* 0774C4 800768C4 00025080 */ sll $t2, $v0, 2
|
|
/* 0774C8 800768C8 10000014 */ b .L8007691C
|
|
/* 0774CC 800768CC 8FB20028 */ lw $s2, 0x28($sp)
|
|
.L800768D0:
|
|
/* 0774D0 800768D0 00027080 */ sll $t6, $v0, 2
|
|
/* 0774D4 800768D4 01C27023 */ subu $t6, $t6, $v0
|
|
/* 0774D8 800768D8 3C18800E */ lui $t8, %hi(D_800E5740) # $t8, 0x800e
|
|
/* 0774DC 800768DC 27185740 */ addiu $t8, %lo(D_800E5740) # addiu $t8, $t8, 0x5740
|
|
/* 0774E0 800768E0 000E7840 */ sll $t7, $t6, 1
|
|
/* 0774E4 800768E4 01F89021 */ addu $s2, $t7, $t8
|
|
/* 0774E8 800768E8 1000000C */ b .L8007691C
|
|
/* 0774EC 800768EC 24130001 */ li $s3, 1
|
|
.L800768F0:
|
|
/* 0774F0 800768F0 0322C823 */ subu $t9, $t9, $v0
|
|
/* 0774F4 800768F4 3C09800E */ lui $t1, %hi(D_800E579C) # $t1, 0x800e
|
|
/* 0774F8 800768F8 2529579C */ addiu $t1, %lo(D_800E579C) # addiu $t1, $t1, 0x579c
|
|
/* 0774FC 800768FC 00194040 */ sll $t0, $t9, 1
|
|
/* 077500 80076900 10000006 */ b .L8007691C
|
|
/* 077504 80076904 01099021 */ addu $s2, $t0, $t1
|
|
.L80076908:
|
|
/* 077508 80076908 01425023 */ subu $t2, $t2, $v0
|
|
/* 07750C 8007690C 3C0C800E */ lui $t4, %hi(D_800E57F8) # $t4, 0x800e
|
|
/* 077510 80076910 258C57F8 */ addiu $t4, %lo(D_800E57F8) # addiu $t4, $t4, 0x57f8
|
|
/* 077514 80076914 000A5840 */ sll $t3, $t2, 1
|
|
/* 077518 80076918 016C9021 */ addu $s2, $t3, $t4
|
|
.L8007691C:
|
|
/* 07751C 8007691C 00008025 */ move $s0, $zero
|
|
/* 077520 80076920 02402025 */ move $a0, $s2
|
|
.L80076924:
|
|
/* 077524 80076924 0C01DA0A */ jal func_80076828
|
|
/* 077528 80076928 02002825 */ move $a1, $s0
|
|
/* 07752C 8007692C 10510003 */ beq $v0, $s1, .L8007693C
|
|
/* 077530 80076930 26100001 */ addiu $s0, $s0, 1
|
|
/* 077534 80076934 5613FFFB */ bnel $s0, $s3, .L80076924
|
|
/* 077538 80076938 02402025 */ move $a0, $s2
|
|
.L8007693C:
|
|
/* 07753C 8007693C 8FBF0024 */ lw $ra, 0x24($sp)
|
|
/* 077540 80076940 8FB00014 */ lw $s0, 0x14($sp)
|
|
/* 077544 80076944 8FB10018 */ lw $s1, 0x18($sp)
|
|
/* 077548 80076948 8FB2001C */ lw $s2, 0x1c($sp)
|
|
/* 07754C 8007694C 8FB30020 */ lw $s3, 0x20($sp)
|
|
/* 077550 80076950 03E00008 */ jr $ra
|
|
/* 077554 80076954 27BD0038 */ addiu $sp, $sp, 0x38
|