oot/asm/non_matchings/code/code_800DACC0/func_800DB680.s

111 lines
5.5 KiB
ArmAsm

glabel func_800DB680
/* B52820 800DB680 27BDFFD0 */ addiu $sp, $sp, -0x30
/* B52824 800DB684 AFBF002C */ sw $ra, 0x2c($sp)
/* B52828 800DB688 AFB20028 */ sw $s2, 0x28($sp)
/* B5282C 800DB68C AFB10024 */ sw $s1, 0x24($sp)
/* B52830 800DB690 AFB00020 */ sw $s0, 0x20($sp)
/* B52834 800DB694 AFA60038 */ sw $a2, 0x38($sp)
/* B52838 800DB698 90AE0003 */ lbu $t6, 3($a1)
/* B5283C 800DB69C 87B9003A */ lh $t9, 0x3a($sp)
/* B52840 800DB6A0 3C090800 */ lui $t1, (0x08000C80 >> 16) # lui $t1, 0x800
/* B52844 800DB6A4 000E78C0 */ sll $t7, $t6, 3
/* B52848 800DB6A8 01EE7821 */ addu $t7, $t7, $t6
/* B5284C 800DB6AC 000F7880 */ sll $t7, $t7, 2
/* B52850 800DB6B0 01EE7823 */ subu $t7, $t7, $t6
/* B52854 800DB6B4 001940C0 */ sll $t0, $t9, 3
/* B52858 800DB6B8 000F7880 */ sll $t7, $t7, 2
/* B5285C 800DB6BC 01194023 */ subu $t0, $t0, $t9
/* B52860 800DB6C0 00084080 */ sll $t0, $t0, 2
/* B52864 800DB6C4 00AFC021 */ addu $t8, $a1, $t7
/* B52868 800DB6C8 35290C80 */ ori $t1, (0x08000C80 & 0xFFFF) # ori $t1, $t1, 0xc80
/* B5286C 800DB6CC 03088821 */ addu $s1, $t8, $t0
/* B52870 800DB6D0 AC890000 */ sw $t1, ($a0)
/* B52874 800DB6D4 962A0058 */ lhu $t2, 0x58($s1)
/* B52878 800DB6D8 3C010720 */ lui $at, 0x720
/* B5287C 800DB6DC 24830008 */ addiu $v1, $a0, 8
/* B52880 800DB6E0 000A5840 */ sll $t3, $t2, 1
/* B52884 800DB6E4 316CFFFF */ andi $t4, $t3, 0xffff
/* B52888 800DB6E8 01816825 */ or $t5, $t4, $at
/* B5288C 800DB6EC AC8D0004 */ sw $t5, 4($a0)
/* B52890 800DB6F0 90AF0000 */ lbu $t7, ($a1)
/* B52894 800DB6F4 96290056 */ lhu $t1, 0x56($s1)
/* B52898 800DB6F8 3C010500 */ lui $at, 0x500
/* B5289C 800DB6FC 000FCC00 */ sll $t9, $t7, 0x10
/* B528A0 800DB700 0321C025 */ or $t8, $t9, $at
/* B528A4 800DB704 03095025 */ or $t2, $t8, $t1
/* B528A8 800DB708 AC6A0000 */ sw $t2, ($v1)
/* B528AC 800DB70C 8CAB0038 */ lw $t3, 0x38($a1)
/* B528B0 800DB710 00A09025 */ move $s2, $a1
/* B528B4 800DB714 26310040 */ addiu $s1, $s1, 0x40
/* B528B8 800DB718 AC6B0004 */ sw $t3, 4($v1)
/* B528BC 800DB71C 8E4C0028 */ lw $t4, 0x28($s2)
/* B528C0 800DB720 86270010 */ lh $a3, 0x10($s1)
/* B528C4 800DB724 9626000E */ lhu $a2, 0xe($s1)
/* B528C8 800DB728 24640008 */ addiu $a0, $v1, 8
/* B528CC 800DB72C 24050720 */ li $a1, 1824
/* B528D0 800DB730 0C037038 */ jal func_800DC0E0
/* B528D4 800DB734 AFAC0010 */ sw $t4, 0x10($sp)
/* B528D8 800DB738 86270012 */ lh $a3, 0x12($s1)
/* B528DC 800DB73C 00408025 */ move $s0, $v0
/* B528E0 800DB740 00402025 */ move $a0, $v0
/* B528E4 800DB744 50E0000A */ beql $a3, $zero, .L800DB770
/* B528E8 800DB748 3C0E0800 */ lui $t6, 0x800
/* B528EC 800DB74C 86250010 */ lh $a1, 0x10($s1)
/* B528F0 800DB750 8E4D0028 */ lw $t5, 0x28($s2)
/* B528F4 800DB754 00003025 */ move $a2, $zero
/* B528F8 800DB758 24A50720 */ addiu $a1, $a1, 0x720
/* B528FC 800DB75C 30A5FFFF */ andi $a1, $a1, 0xffff
/* B52900 800DB760 0C037038 */ jal func_800DC0E0
/* B52904 800DB764 AFAD0010 */ sw $t5, 0x10($sp)
/* B52908 800DB768 00408025 */ move $s0, $v0
/* B5290C 800DB76C 3C0E0800 */ lui $t6, (0x08000E20 >> 16) # lui $t6, 0x800
.L800DB770:
/* B52910 800DB770 35CE0E20 */ ori $t6, (0x08000E20 & 0xFFFF) # ori $t6, $t6, 0xe20
/* B52914 800DB774 02001025 */ move $v0, $s0
/* B52918 800DB778 AC4E0000 */ sw $t6, ($v0)
/* B5291C 800DB77C 962F0018 */ lhu $t7, 0x18($s1)
/* B52920 800DB780 3C010720 */ lui $at, 0x720
/* B52924 800DB784 26030008 */ addiu $v1, $s0, 8
/* B52928 800DB788 000FC840 */ sll $t9, $t7, 1
/* B5292C 800DB78C 3328FFFF */ andi $t0, $t9, 0xffff
/* B52930 800DB790 0101C025 */ or $t8, $t0, $at
/* B52934 800DB794 AC580004 */ sw $t8, 4($v0)
/* B52938 800DB798 924A0000 */ lbu $t2, ($s2)
/* B5293C 800DB79C 962E0016 */ lhu $t6, 0x16($s1)
/* B52940 800DB7A0 3C010500 */ lui $at, 0x500
/* B52944 800DB7A4 000A5C00 */ sll $t3, $t2, 0x10
/* B52948 800DB7A8 01616025 */ or $t4, $t3, $at
/* B5294C 800DB7AC 018E7825 */ or $t7, $t4, $t6
/* B52950 800DB7B0 AC6F0000 */ sw $t7, ($v1)
/* B52954 800DB7B4 8E59003C */ lw $t9, 0x3c($s2)
/* B52958 800DB7B8 24640008 */ addiu $a0, $v1, 8
/* B5295C 800DB7BC 24050720 */ li $a1, 1824
/* B52960 800DB7C0 AC790004 */ sw $t9, 4($v1)
/* B52964 800DB7C4 8E48002C */ lw $t0, 0x2c($s2)
/* B52968 800DB7C8 86270010 */ lh $a3, 0x10($s1)
/* B5296C 800DB7CC 9626000E */ lhu $a2, 0xe($s1)
/* B52970 800DB7D0 0C037038 */ jal func_800DC0E0
/* B52974 800DB7D4 AFA80010 */ sw $t0, 0x10($sp)
/* B52978 800DB7D8 86270012 */ lh $a3, 0x12($s1)
/* B5297C 800DB7DC 00408025 */ move $s0, $v0
/* B52980 800DB7E0 00402025 */ move $a0, $v0
/* B52984 800DB7E4 50E0000A */ beql $a3, $zero, .L800DB810
/* B52988 800DB7E8 8FBF002C */ lw $ra, 0x2c($sp)
/* B5298C 800DB7EC 86250010 */ lh $a1, 0x10($s1)
/* B52990 800DB7F0 8E58002C */ lw $t8, 0x2c($s2)
/* B52994 800DB7F4 00003025 */ move $a2, $zero
/* B52998 800DB7F8 24A50720 */ addiu $a1, $a1, 0x720
/* B5299C 800DB7FC 30A5FFFF */ andi $a1, $a1, 0xffff
/* B529A0 800DB800 0C037038 */ jal func_800DC0E0
/* B529A4 800DB804 AFB80010 */ sw $t8, 0x10($sp)
/* B529A8 800DB808 00408025 */ move $s0, $v0
/* B529AC 800DB80C 8FBF002C */ lw $ra, 0x2c($sp)
.L800DB810:
/* B529B0 800DB810 02001025 */ move $v0, $s0
/* B529B4 800DB814 8FB00020 */ lw $s0, 0x20($sp)
/* B529B8 800DB818 8FB10024 */ lw $s1, 0x24($sp)
/* B529BC 800DB81C 8FB20028 */ lw $s2, 0x28($sp)
/* B529C0 800DB820 03E00008 */ jr $ra
/* B529C4 800DB824 27BD0030 */ addiu $sp, $sp, 0x30