papermario/asm/nonmatchings/code_759b0_len_61b0/func_800DFAAC.s
2020-08-12 22:37:16 -04:00

92 lines
4.0 KiB
ArmAsm

.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_800DFAAC
/* 078F5C 800DFAAC 27BDFFE8 */ addiu $sp, $sp, -0x18
/* 078F60 800DFAB0 AFBF0014 */ sw $ra, 0x14($sp)
/* 078F64 800DFAB4 0C037E80 */ jal check_input_use_partner
/* 078F68 800DFAB8 AFB00010 */ sw $s0, 0x10($sp)
/* 078F6C 800DFABC 0C03968B */ jal func_800E5A2C
/* 078F70 800DFAC0 00000000 */ nop
/* 078F74 800DFAC4 3C108011 */ lui $s0, 0x8011
/* 078F78 800DFAC8 2610EFC8 */ addiu $s0, $s0, -0x1038
/* 078F7C 800DFACC 8E030000 */ lw $v1, ($s0)
/* 078F80 800DFAD0 30620008 */ andi $v0, $v1, 8
/* 078F84 800DFAD4 14400008 */ bnez $v0, .L800DFAF8
/* 078F88 800DFAD8 30620004 */ andi $v0, $v1, 4
/* 078F8C 800DFADC 30620002 */ andi $v0, $v1, 2
/* 078F90 800DFAE0 10400005 */ beqz $v0, .L800DFAF8
/* 078F94 800DFAE4 30620004 */ andi $v0, $v1, 4
/* 078F98 800DFAE8 0C038B46 */ jal func_800E2D18
/* 078F9C 800DFAEC 00000000 */ nop
/* 078FA0 800DFAF0 8E030000 */ lw $v1, ($s0)
/* 078FA4 800DFAF4 30620004 */ andi $v0, $v1, 4
.L800DFAF8:
/* 078FA8 800DFAF8 10400005 */ beqz $v0, .L800DFB10
/* 078FAC 800DFAFC 30620008 */ andi $v0, $v1, 8
/* 078FB0 800DFB00 14400003 */ bnez $v0, .L800DFB10
/* 078FB4 800DFB04 00000000 */ nop
/* 078FB8 800DFB08 0C038C40 */ jal func_800E3100
/* 078FBC 800DFB0C 00000000 */ nop
.L800DFB10:
/* 078FC0 800DFB10 0C0393F3 */ jal check_input_midair_jump
/* 078FC4 800DFB14 00000000 */ nop
/* 078FC8 800DFB18 820300B4 */ lb $v1, 0xb4($s0)
/* 078FCC 800DFB1C 24020011 */ addiu $v0, $zero, 0x11
/* 078FD0 800DFB20 1062001A */ beq $v1, $v0, .L800DFB8C
/* 078FD4 800DFB24 00000000 */ nop
/* 078FD8 800DFB28 0C038D8F */ jal func_800E363C
/* 078FDC 800DFB2C 00000000 */ nop
/* 078FE0 800DFB30 0C039142 */ jal func_800E4508
/* 078FE4 800DFB34 00000000 */ nop
/* 078FE8 800DFB38 0C0389F8 */ jal func_800E27E0
/* 078FEC 800DFB3C 00000000 */ nop
/* 078FF0 800DFB40 0441000A */ bgez $v0, .L800DFB6C
/* 078FF4 800DFB44 00000000 */ nop
/* 078FF8 800DFB48 860200C0 */ lh $v0, 0xc0($s0)
/* 078FFC 800DFB4C 14400007 */ bnez $v0, .L800DFB6C
/* 079000 800DFB50 00000000 */ nop
/* 079004 800DFB54 8E020004 */ lw $v0, 4($s0)
/* 079008 800DFB58 30421000 */ andi $v0, $v0, 0x1000
/* 07900C 800DFB5C 10400003 */ beqz $v0, .L800DFB6C
/* 079010 800DFB60 00000000 */ nop
/* 079014 800DFB64 0C0393C4 */ jal func_800E4F10
/* 079018 800DFB68 00000000 */ nop
.L800DFB6C:
/* 07901C 800DFB6C 820300B4 */ lb $v1, 0xb4($s0)
/* 079020 800DFB70 2402001B */ addiu $v0, $zero, 0x1b
/* 079024 800DFB74 10620005 */ beq $v1, $v0, .L800DFB8C
/* 079028 800DFB78 24020022 */ addiu $v0, $zero, 0x22
/* 07902C 800DFB7C 10620003 */ beq $v1, $v0, .L800DFB8C
/* 079030 800DFB80 00000000 */ nop
/* 079034 800DFB84 0C0391D1 */ jal func_800E4744
/* 079038 800DFB88 00000000 */ nop
.L800DFB8C:
/* 07903C 800DFB8C 8E020004 */ lw $v0, 4($s0)
/* 079040 800DFB90 30420002 */ andi $v0, $v0, 2
/* 079044 800DFB94 10400003 */ beqz $v0, .L800DFBA4
/* 079048 800DFB98 00000000 */ nop
/* 07904C 800DFB9C 0C0AF81C */ jal func_802BE070
/* 079050 800DFBA0 00000000 */ nop
.L800DFBA4:
/* 079054 800DFBA4 8E020000 */ lw $v0, ($s0)
/* 079058 800DFBA8 3C030400 */ lui $v1, 0x400
/* 07905C 800DFBAC 00431024 */ and $v0, $v0, $v1
/* 079060 800DFBB0 14400009 */ bnez $v0, .L800DFBD8
/* 079064 800DFBB4 00000000 */ nop
/* 079068 800DFBB8 C6000028 */ lwc1 $f0, 0x28($s0)
/* 07906C 800DFBBC C602002C */ lwc1 $f2, 0x2c($s0)
/* 079070 800DFBC0 C6040030 */ lwc1 $f4, 0x30($s0)
/* 079074 800DFBC4 3C02800B */ lui $v0, 0x800b
/* 079078 800DFBC8 24421D80 */ addiu $v0, $v0, 0x1d80
/* 07907C 800DFBCC E4400060 */ swc1 $f0, 0x60($v0)
/* 079080 800DFBD0 E4420064 */ swc1 $f2, 0x64($v0)
/* 079084 800DFBD4 E4440068 */ swc1 $f4, 0x68($v0)
.L800DFBD8:
/* 079088 800DFBD8 8FBF0014 */ lw $ra, 0x14($sp)
/* 07908C 800DFBDC 8FB00010 */ lw $s0, 0x10($sp)
/* 079090 800DFBE0 03E00008 */ jr $ra
/* 079094 800DFBE4 27BD0018 */ addiu $sp, $sp, 0x18