oot/asm/non_matchings/code/z_effect/func_80026F70.s

87 lines
4.1 KiB
ArmAsm

glabel func_80026F70
/* A9E110 80026F70 27BDFFD0 */ addiu $sp, $sp, -0x30
/* A9E114 80026F74 AFB30020 */ sw $s3, 0x20($sp)
/* A9E118 80026F78 AFB10018 */ sw $s1, 0x18($sp)
/* A9E11C 80026F7C AFB40024 */ sw $s4, 0x24($sp)
/* A9E120 80026F80 AFB2001C */ sw $s2, 0x1c($sp)
/* A9E124 80026F84 AFB00014 */ sw $s0, 0x14($sp)
/* A9E128 80026F88 3C118015 */ lui $s1, %hi(D_80157DA0) # $s1, 0x8015
/* A9E12C 80026F8C 3C138011 */ lui $s3, %hi(D_80115860) # $s3, 0x8011
/* A9E130 80026F90 00809025 */ move $s2, $a0
/* A9E134 80026F94 AFBF002C */ sw $ra, 0x2c($sp)
/* A9E138 80026F98 AFB50028 */ sw $s5, 0x28($sp)
/* A9E13C 80026F9C 26735860 */ addiu $s3, %lo(D_80115860) # addiu $s3, $s3, 0x5860
/* A9E140 80026FA0 26317DA0 */ addiu $s1, %lo(D_80157DA0) # addiu $s1, $s1, 0x7da0
/* A9E144 80026FA4 00008025 */ move $s0, $zero
/* A9E148 80026FA8 24140001 */ li $s4, 1
.L80026FAC:
/* A9E14C 80026FAC 922E0004 */ lbu $t6, 4($s1)
/* A9E150 80026FB0 51C0000A */ beql $t6, $zero, .L80026FDC
/* A9E154 80026FB4 26100001 */ addiu $s0, $s0, 1
/* A9E158 80026FB8 8E79000C */ lw $t9, 0xc($s3)
/* A9E15C 80026FBC 26240008 */ addiu $a0, $s1, 8
/* A9E160 80026FC0 0320F809 */ jalr $t9
/* A9E164 80026FC4 00000000 */ nop
/* A9E168 80026FC8 14540003 */ bne $v0, $s4, .L80026FD8
/* A9E16C 80026FCC 02402025 */ move $a0, $s2
/* A9E170 80026FD0 0C009C27 */ jal func_8002709C
/* A9E174 80026FD4 02002825 */ move $a1, $s0
.L80026FD8:
/* A9E178 80026FD8 26100001 */ addiu $s0, $s0, 1
.L80026FDC:
/* A9E17C 80026FDC 2A010003 */ slti $at, $s0, 3
/* A9E180 80026FE0 1420FFF2 */ bnez $at, .L80026FAC
/* A9E184 80026FE4 263104C8 */ addiu $s1, $s1, 0x4c8
/* A9E188 80026FE8 3C118015 */ lui $s1, %hi(D_80157DA0) # $s1, 0x8015
/* A9E18C 80026FEC 26317DA0 */ addiu $s1, %lo(D_80157DA0) # addiu $s1, $s1, 0x7da0
/* A9E190 80026FF0 00008025 */ move $s0, $zero
.L80026FF4:
/* A9E194 80026FF4 922F0E5C */ lbu $t7, 0xe5c($s1)
/* A9E198 80026FF8 51E0000A */ beql $t7, $zero, .L80027024
/* A9E19C 80026FFC 26100001 */ addiu $s0, $s0, 1
/* A9E1A0 80027000 8E790020 */ lw $t9, 0x20($s3)
/* A9E1A4 80027004 26240E60 */ addiu $a0, $s1, 0xe60
/* A9E1A8 80027008 0320F809 */ jalr $t9
/* A9E1AC 8002700C 00000000 */ nop
/* A9E1B0 80027010 14540003 */ bne $v0, $s4, .L80027020
/* A9E1B4 80027014 02402025 */ move $a0, $s2
/* A9E1B8 80027018 0C009C27 */ jal func_8002709C
/* A9E1BC 8002701C 26050003 */ addiu $a1, $s0, 3
.L80027020:
/* A9E1C0 80027020 26100001 */ addiu $s0, $s0, 1
.L80027024:
/* A9E1C4 80027024 2A010019 */ slti $at, $s0, 0x19
/* A9E1C8 80027028 1420FFF2 */ bnez $at, .L80026FF4
/* A9E1CC 8002702C 263101B0 */ addiu $s1, $s1, 0x1b0
/* A9E1D0 80027030 3C118015 */ lui $s1, %hi(D_80157DA0) # $s1, 0x8015
/* A9E1D4 80027034 26317DA0 */ addiu $s1, %lo(D_80157DA0) # addiu $s1, $s1, 0x7da0
/* A9E1D8 80027038 00008025 */ move $s0, $zero
/* A9E1DC 8002703C 24150003 */ li $s5, 3
.L80027040:
/* A9E1E0 80027040 9238388C */ lbu $t8, 0x388c($s1)
/* A9E1E4 80027044 5300000A */ beql $t8, $zero, .L80027070
/* A9E1E8 80027048 26100001 */ addiu $s0, $s0, 1
/* A9E1EC 8002704C 8E790048 */ lw $t9, 0x48($s3)
/* A9E1F0 80027050 26243890 */ addiu $a0, $s1, 0x3890
/* A9E1F4 80027054 0320F809 */ jalr $t9
/* A9E1F8 80027058 00000000 */ nop
/* A9E1FC 8002705C 14540003 */ bne $v0, $s4, .L8002706C
/* A9E200 80027060 02402025 */ move $a0, $s2
/* A9E204 80027064 0C009C27 */ jal func_8002709C
/* A9E208 80027068 2605001C */ addiu $a1, $s0, 0x1c
.L8002706C:
/* A9E20C 8002706C 26100001 */ addiu $s0, $s0, 1
.L80027070:
/* A9E210 80027070 1615FFF3 */ bne $s0, $s5, .L80027040
/* A9E214 80027074 263101CC */ addiu $s1, $s1, 0x1cc
/* A9E218 80027078 8FBF002C */ lw $ra, 0x2c($sp)
/* A9E21C 8002707C 8FB00014 */ lw $s0, 0x14($sp)
/* A9E220 80027080 8FB10018 */ lw $s1, 0x18($sp)
/* A9E224 80027084 8FB2001C */ lw $s2, 0x1c($sp)
/* A9E228 80027088 8FB30020 */ lw $s3, 0x20($sp)
/* A9E22C 8002708C 8FB40024 */ lw $s4, 0x24($sp)
/* A9E230 80027090 8FB50028 */ lw $s5, 0x28($sp)
/* A9E234 80027094 03E00008 */ jr $ra
/* A9E238 80027098 27BD0030 */ addiu $sp, $sp, 0x30