Files
SpaghettiKart/asm/non_matchings/code_80071F00/func_80076884.s
T
MegaMech fd7941e841 Split out some unused asm and documented main.c (#242)
* Splitting out unused asm

* Documented main.c
2022-07-11 00:02:41 -07:00

61 lines
2.9 KiB
ArmAsm

glabel func_80076884
/* 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