papermario/asm/nonmatchings/code_121f0_len_1290/func_80037E14.s

167 lines
7.9 KiB
ArmAsm
Raw Normal View History

2020-08-04 08:49:11 +02:00
.set noat # allow manual use of $at
.set noreorder # don't insert nops after branches
glabel func_80037E14
/* 013214 80037E14 27BDFFE0 */ addiu $sp, $sp, -0x20
/* 013218 80037E18 3C07800A */ lui $a3, 0x800a
/* 01321C 80037E1C 24E7A66C */ addiu $a3, $a3, -0x5994
/* 013220 80037E20 3C02DE00 */ lui $v0, 0xde00
/* 013224 80037E24 AFB7001C */ sw $s7, 0x1c($sp)
/* 013228 80037E28 AFB60018 */ sw $s6, 0x18($sp)
/* 01322C 80037E2C AFB50014 */ sw $s5, 0x14($sp)
/* 013230 80037E30 AFB40010 */ sw $s4, 0x10($sp)
/* 013234 80037E34 AFB3000C */ sw $s3, 0xc($sp)
/* 013238 80037E38 AFB20008 */ sw $s2, 8($sp)
/* 01323C 80037E3C AFB10004 */ sw $s1, 4($sp)
/* 013240 80037E40 AFB00000 */ sw $s0, ($sp)
/* 013244 80037E44 8CE50000 */ lw $a1, ($a3)
/* 013248 80037E48 3C01437F */ lui $at, 0x437f
/* 01324C 80037E4C 44810000 */ mtc1 $at, $f0
/* 013250 80037E50 00A0182D */ daddu $v1, $a1, $zero
/* 013254 80037E54 24A50008 */ addiu $a1, $a1, 8
/* 013258 80037E58 ACE50000 */ sw $a1, ($a3)
/* 01325C 80037E5C AC620000 */ sw $v0, ($v1)
/* 013260 80037E60 3C028007 */ lui $v0, 0x8007
/* 013264 80037E64 24427A50 */ addiu $v0, $v0, 0x7a50
/* 013268 80037E68 46006302 */ mul.s $f12, $f12, $f0
/* 01326C 80037E6C 00000000 */ nop
/* 013270 80037E70 AC620004 */ sw $v0, 4($v1)
/* 013274 80037E74 24A20008 */ addiu $v0, $a1, 8
/* 013278 80037E78 ACE20000 */ sw $v0, ($a3)
/* 01327C 80037E7C 3C02E700 */ lui $v0, 0xe700
/* 013280 80037E80 460C0001 */ sub.s $f0, $f0, $f12
/* 013284 80037E84 ACA20000 */ sw $v0, ($a1)
/* 013288 80037E88 4600008D */ trunc.w.s $f2, $f0
/* 01328C 80037E8C 44061000 */ mfc1 $a2, $f2
/* 013290 80037E90 00000000 */ nop
/* 013294 80037E94 28C200FF */ slti $v0, $a2, 0xff
/* 013298 80037E98 10400011 */ beqz $v0, .L80037EE0
/* 01329C 80037E9C ACA00004 */ sw $zero, 4($a1)
/* 0132A0 80037EA0 04C20001 */ bltzl $a2, .L80037EA8
/* 0132A4 80037EA4 0000302D */ daddu $a2, $zero, $zero
.L80037EA8:
/* 0132A8 80037EA8 3C04FCFF */ lui $a0, 0xfcff
/* 0132AC 80037EAC 348497FF */ ori $a0, $a0, 0x97ff
/* 0132B0 80037EB0 3C03FF2C */ lui $v1, 0xff2c
/* 0132B4 80037EB4 3463FE7F */ ori $v1, $v1, 0xfe7f
/* 0132B8 80037EB8 24A20010 */ addiu $v0, $a1, 0x10
/* 0132BC 80037EBC ACE20000 */ sw $v0, ($a3)
/* 0132C0 80037EC0 24A20018 */ addiu $v0, $a1, 0x18
/* 0132C4 80037EC4 ACA40008 */ sw $a0, 8($a1)
/* 0132C8 80037EC8 ACA3000C */ sw $v1, 0xc($a1)
/* 0132CC 80037ECC ACE20000 */ sw $v0, ($a3)
/* 0132D0 80037ED0 3C02FA00 */ lui $v0, 0xfa00
/* 0132D4 80037ED4 ACA20010 */ sw $v0, 0x10($a1)
/* 0132D8 80037ED8 30C200FF */ andi $v0, $a2, 0xff
/* 0132DC 80037EDC ACA20014 */ sw $v0, 0x14($a1)
.L80037EE0:
/* 0132E0 80037EE0 0000602D */ daddu $t4, $zero, $zero
/* 0132E4 80037EE4 3C08800A */ lui $t0, 0x800a
/* 0132E8 80037EE8 2508A66C */ addiu $t0, $t0, -0x5994
/* 0132EC 80037EEC 3C10FD68 */ lui $s0, 0xfd68
/* 0132F0 80037EF0 3610008F */ ori $s0, $s0, 0x8f
/* 0132F4 80037EF4 3C16800A */ lui $s6, 0x800a
/* 0132F8 80037EF8 26D6097C */ addiu $s6, $s6, 0x97c
/* 0132FC 80037EFC 3C0DF568 */ lui $t5, 0xf568
/* 013300 80037F00 35AD2400 */ ori $t5, $t5, 0x2400
/* 013304 80037F04 3C150700 */ lui $s5, 0x700
/* 013308 80037F08 3C14E600 */ lui $s4, 0xe600
/* 01330C 80037F0C 3C13F400 */ lui $s3, 0xf400
/* 013310 80037F10 3C190723 */ lui $t9, 0x723
/* 013314 80037F14 3739C03C */ ori $t9, $t9, 0xc03c
/* 013318 80037F18 3C12E700 */ lui $s2, 0xe700
/* 01331C 80037F1C 3C11F200 */ lui $s1, 0xf200
/* 013320 80037F20 3C180023 */ lui $t8, 0x23
/* 013324 80037F24 3718C03C */ ori $t8, $t8, 0xc03c
/* 013328 80037F28 3C0FE43A */ lui $t7, 0xe43a
/* 01332C 80037F2C 35EF4000 */ ori $t7, $t7, 0x4000
/* 013330 80037F30 3C0E0016 */ lui $t6, 0x16
/* 013334 80037F34 35CE4000 */ ori $t6, $t6, 0x4000
/* 013338 80037F38 240B02FC */ addiu $t3, $zero, 0x2fc
/* 01333C 80037F3C 240A033C */ addiu $t2, $zero, 0x33c
/* 013340 80037F40 0180482D */ daddu $t1, $t4, $zero
.L80037F44:
/* 013344 80037F44 3C070400 */ lui $a3, 0x400
/* 013348 80037F48 34E70400 */ ori $a3, $a3, 0x400
/* 01334C 80037F4C 31660FFF */ andi $a2, $t3, 0xfff
/* 013350 80037F50 256B0040 */ addiu $t3, $t3, 0x40
/* 013354 80037F54 31450FFF */ andi $a1, $t2, 0xfff
/* 013358 80037F58 254A0040 */ addiu $t2, $t2, 0x40
/* 01335C 80037F5C 258C0001 */ addiu $t4, $t4, 1
/* 013360 80037F60 00AF2825 */ or $a1, $a1, $t7
/* 013364 80037F64 00CE3025 */ or $a2, $a2, $t6
/* 013368 80037F68 8D030000 */ lw $v1, ($t0)
/* 01336C 80037F6C 8EC20000 */ lw $v0, ($s6)
/* 013370 80037F70 0060202D */ daddu $a0, $v1, $zero
/* 013374 80037F74 24630008 */ addiu $v1, $v1, 8
/* 013378 80037F78 00491021 */ addu $v0, $v0, $t1
/* 01337C 80037F7C 25290900 */ addiu $t1, $t1, 0x900
/* 013380 80037F80 AD030000 */ sw $v1, ($t0)
/* 013384 80037F84 AC820004 */ sw $v0, 4($a0)
/* 013388 80037F88 24620008 */ addiu $v0, $v1, 8
/* 01338C 80037F8C AC900000 */ sw $s0, ($a0)
/* 013390 80037F90 AD020000 */ sw $v0, ($t0)
/* 013394 80037F94 24620010 */ addiu $v0, $v1, 0x10
/* 013398 80037F98 AC6D0000 */ sw $t5, ($v1)
/* 01339C 80037F9C AC750004 */ sw $s5, 4($v1)
/* 0133A0 80037FA0 AD020000 */ sw $v0, ($t0)
/* 0133A4 80037FA4 24620018 */ addiu $v0, $v1, 0x18
/* 0133A8 80037FA8 AC740008 */ sw $s4, 8($v1)
/* 0133AC 80037FAC AC60000C */ sw $zero, 0xc($v1)
/* 0133B0 80037FB0 AD020000 */ sw $v0, ($t0)
/* 0133B4 80037FB4 24620020 */ addiu $v0, $v1, 0x20
/* 0133B8 80037FB8 AC730010 */ sw $s3, 0x10($v1)
/* 0133BC 80037FBC AC790014 */ sw $t9, 0x14($v1)
/* 0133C0 80037FC0 AD020000 */ sw $v0, ($t0)
/* 0133C4 80037FC4 24620028 */ addiu $v0, $v1, 0x28
/* 0133C8 80037FC8 AC720018 */ sw $s2, 0x18($v1)
/* 0133CC 80037FCC AC60001C */ sw $zero, 0x1c($v1)
/* 0133D0 80037FD0 AD020000 */ sw $v0, ($t0)
/* 0133D4 80037FD4 24620030 */ addiu $v0, $v1, 0x30
/* 0133D8 80037FD8 AC6D0020 */ sw $t5, 0x20($v1)
/* 0133DC 80037FDC AC600024 */ sw $zero, 0x24($v1)
/* 0133E0 80037FE0 AD020000 */ sw $v0, ($t0)
/* 0133E4 80037FE4 24620038 */ addiu $v0, $v1, 0x38
/* 0133E8 80037FE8 AC710028 */ sw $s1, 0x28($v1)
/* 0133EC 80037FEC AC78002C */ sw $t8, 0x2c($v1)
/* 0133F0 80037FF0 AD020000 */ sw $v0, ($t0)
/* 0133F4 80037FF4 24620040 */ addiu $v0, $v1, 0x40
/* 0133F8 80037FF8 AC650030 */ sw $a1, 0x30($v1)
/* 0133FC 80037FFC AC660034 */ sw $a2, 0x34($v1)
/* 013400 80038000 AD020000 */ sw $v0, ($t0)
/* 013404 80038004 3C02E100 */ lui $v0, 0xe100
/* 013408 80038008 AC620038 */ sw $v0, 0x38($v1)
/* 01340C 8003800C 24620048 */ addiu $v0, $v1, 0x48
/* 013410 80038010 AC60003C */ sw $zero, 0x3c($v1)
/* 013414 80038014 AD020000 */ sw $v0, ($t0)
/* 013418 80038018 3C02F100 */ lui $v0, 0xf100
/* 01341C 8003801C AC620040 */ sw $v0, 0x40($v1)
/* 013420 80038020 29820002 */ slti $v0, $t4, 2
/* 013424 80038024 1440FFC7 */ bnez $v0, .L80037F44
/* 013428 80038028 AC670044 */ sw $a3, 0x44($v1)
/* 01342C 8003802C 3C03800A */ lui $v1, 0x800a
/* 013430 80038030 2463A66C */ addiu $v1, $v1, -0x5994
/* 013434 80038034 8C620000 */ lw $v0, ($v1)
/* 013438 80038038 0040202D */ daddu $a0, $v0, $zero
/* 01343C 8003803C 24420008 */ addiu $v0, $v0, 8
/* 013440 80038040 AC620000 */ sw $v0, ($v1)
/* 013444 80038044 3C02E700 */ lui $v0, 0xe700
/* 013448 80038048 AC820000 */ sw $v0, ($a0)
/* 01344C 8003804C AC800004 */ sw $zero, 4($a0)
/* 013450 80038050 8FB7001C */ lw $s7, 0x1c($sp)
/* 013454 80038054 8FB60018 */ lw $s6, 0x18($sp)
/* 013458 80038058 8FB50014 */ lw $s5, 0x14($sp)
/* 01345C 8003805C 8FB40010 */ lw $s4, 0x10($sp)
/* 013460 80038060 8FB3000C */ lw $s3, 0xc($sp)
/* 013464 80038064 8FB20008 */ lw $s2, 8($sp)
/* 013468 80038068 8FB10004 */ lw $s1, 4($sp)
/* 01346C 8003806C 8FB00000 */ lw $s0, ($sp)
/* 013470 80038070 03E00008 */ jr $ra
/* 013474 80038074 27BD0020 */ addiu $sp, $sp, 0x20
/* 013478 80038078 00000000 */ nop
/* 01347C 8003807C 00000000 */ nop
2020-08-06 06:11:15 +02:00