pokerevo/asm/code_80247038.s
2020-10-17 17:01:40 -04:00

188 lines
8.0 KiB
ArmAsm

.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_80247038
func_80247038:
/* 80247038 00242C98 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024703C 00242C9C 7C 08 02 A6 */ mflr r0
/* 80247040 00242CA0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80247044 00242CA4 38 04 00 01 */ addi r0, r4, 1
/* 80247048 00242CA8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024704C 00242CAC 7C 7F 1B 78 */ mr r31, r3
/* 80247050 00242CB0 90 83 00 00 */ stw r4, 0(r3)
/* 80247054 00242CB4 54 03 10 3A */ slwi r3, r0, 2
/* 80247058 00242CB8 4B F9 3A 1D */ bl __nwa__FUl
/* 8024705C 00242CBC 2C 03 00 00 */ cmpwi r3, 0
/* 80247060 00242CC0 90 7F 00 04 */ stw r3, 4(r31)
/* 80247064 00242CC4 41 82 00 0C */ beq lbl_80247070
/* 80247068 00242CC8 38 00 00 00 */ li r0, 0
/* 8024706C 00242CCC 90 03 00 00 */ stw r0, 0(r3)
lbl_80247070:
/* 80247070 00242CD0 7F E3 FB 78 */ mr r3, r31
/* 80247074 00242CD4 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80247078 00242CD8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8024707C 00242CDC 7C 08 03 A6 */ mtlr r0
/* 80247080 00242CE0 38 21 00 10 */ addi r1, r1, 0x10
/* 80247084 00242CE4 4E 80 00 20 */ blr
.global func_80247088
func_80247088:
/* 80247088 00242CE8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8024708C 00242CEC 7C 08 02 A6 */ mflr r0
/* 80247090 00242CF0 2C 03 00 00 */ cmpwi r3, 0
/* 80247094 00242CF4 90 01 00 14 */ stw r0, 0x14(r1)
/* 80247098 00242CF8 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8024709C 00242CFC 7C 9F 23 78 */ mr r31, r4
/* 802470A0 00242D00 93 C1 00 08 */ stw r30, 8(r1)
/* 802470A4 00242D04 7C 7E 1B 78 */ mr r30, r3
/* 802470A8 00242D08 41 82 00 24 */ beq lbl_802470CC
/* 802470AC 00242D0C 80 63 00 04 */ lwz r3, 4(r3)
/* 802470B0 00242D10 2C 03 00 00 */ cmpwi r3, 0
/* 802470B4 00242D14 41 82 00 08 */ beq lbl_802470BC
/* 802470B8 00242D18 4B F9 3A 05 */ bl __dla__FPv
lbl_802470BC:
/* 802470BC 00242D1C 2C 1F 00 00 */ cmpwi r31, 0
/* 802470C0 00242D20 40 81 00 0C */ ble lbl_802470CC
/* 802470C4 00242D24 7F C3 F3 78 */ mr r3, r30
/* 802470C8 00242D28 4B F9 39 F1 */ bl __dl__FPv
lbl_802470CC:
/* 802470CC 00242D2C 7F C3 F3 78 */ mr r3, r30
/* 802470D0 00242D30 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802470D4 00242D34 83 C1 00 08 */ lwz r30, 8(r1)
/* 802470D8 00242D38 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802470DC 00242D3C 7C 08 03 A6 */ mtlr r0
/* 802470E0 00242D40 38 21 00 10 */ addi r1, r1, 0x10
/* 802470E4 00242D44 4E 80 00 20 */ blr
.global func_802470E8
func_802470E8:
/* 802470E8 00242D48 80 63 00 04 */ lwz r3, 4(r3)
/* 802470EC 00242D4C 2C 03 00 00 */ cmpwi r3, 0
/* 802470F0 00242D50 41 82 00 18 */ beq lbl_80247108
/* 802470F4 00242D54 80 03 00 00 */ lwz r0, 0(r3)
/* 802470F8 00242D58 2C 00 00 00 */ cmpwi r0, 0
/* 802470FC 00242D5C 41 82 00 0C */ beq lbl_80247108
/* 80247100 00242D60 38 60 00 00 */ li r3, 0
/* 80247104 00242D64 4E 80 00 20 */ blr
lbl_80247108:
/* 80247108 00242D68 38 60 00 01 */ li r3, 1
/* 8024710C 00242D6C 4E 80 00 20 */ blr
.global func_80247110
func_80247110:
/* 80247110 00242D70 80 03 00 00 */ lwz r0, 0(r3)
/* 80247114 00242D74 38 E0 00 00 */ li r7, 0
/* 80247118 00242D78 38 A0 00 00 */ li r5, 0
/* 8024711C 00242D7C 7C 09 03 A6 */ mtctr r0
/* 80247120 00242D80 2C 00 00 00 */ cmpwi r0, 0
/* 80247124 00242D84 40 81 00 54 */ ble lbl_80247178
lbl_80247128:
/* 80247128 00242D88 80 C3 00 04 */ lwz r6, 4(r3)
/* 8024712C 00242D8C 7C 06 28 2E */ lwzx r0, r6, r5
/* 80247130 00242D90 7C 04 00 40 */ cmplw r4, r0
/* 80247134 00242D94 40 82 00 0C */ bne lbl_80247140
/* 80247138 00242D98 38 60 00 01 */ li r3, 1
/* 8024713C 00242D9C 4E 80 00 20 */ blr
lbl_80247140:
/* 80247140 00242DA0 2C 00 00 00 */ cmpwi r0, 0
/* 80247144 00242DA4 40 82 00 28 */ bne lbl_8024716C
/* 80247148 00242DA8 54 E5 10 3A */ slwi r5, r7, 2
/* 8024714C 00242DAC 38 07 00 01 */ addi r0, r7, 1
/* 80247150 00242DB0 7C 86 29 2E */ stwx r4, r6, r5
/* 80247154 00242DB4 54 00 10 3A */ slwi r0, r0, 2
/* 80247158 00242DB8 38 A0 00 00 */ li r5, 0
/* 8024715C 00242DBC 80 83 00 04 */ lwz r4, 4(r3)
/* 80247160 00242DC0 38 60 00 01 */ li r3, 1
/* 80247164 00242DC4 7C A4 01 2E */ stwx r5, r4, r0
/* 80247168 00242DC8 4E 80 00 20 */ blr
lbl_8024716C:
/* 8024716C 00242DCC 38 A5 00 04 */ addi r5, r5, 4
/* 80247170 00242DD0 38 E7 00 01 */ addi r7, r7, 1
/* 80247174 00242DD4 42 00 FF B4 */ bdnz lbl_80247128
lbl_80247178:
/* 80247178 00242DD8 38 60 00 00 */ li r3, 0
/* 8024717C 00242DDC 4E 80 00 20 */ blr
.global func_80247180
func_80247180:
/* 80247180 00242DE0 80 63 00 04 */ lwz r3, 4(r3)
/* 80247184 00242DE4 4E 80 00 20 */ blr
.global func_80247188
func_80247188:
/* 80247188 00242DE8 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8024718C 00242DEC 7C 08 02 A6 */ mflr r0
/* 80247190 00242DF0 90 01 00 24 */ stw r0, 0x24(r1)
/* 80247194 00242DF4 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80247198 00242DF8 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8024719C 00242DFC 7C 9E 23 78 */ mr r30, r4
/* 802471A0 00242E00 93 A1 00 14 */ stw r29, 0x14(r1)
/* 802471A4 00242E04 7C 7D 1B 78 */ mr r29, r3
/* 802471A8 00242E08 80 03 00 04 */ lwz r0, 4(r3)
/* 802471AC 00242E0C 2C 00 00 00 */ cmpwi r0, 0
/* 802471B0 00242E10 41 82 00 28 */ beq lbl_802471D8
/* 802471B4 00242E14 3B E0 00 00 */ li r31, 0
/* 802471B8 00242E18 48 00 00 10 */ b lbl_802471C8
lbl_802471BC:
/* 802471BC 00242E1C 7F C3 F3 78 */ mr r3, r30
/* 802471C0 00242E20 4B F9 43 3D */ bl func_801DB4FC
/* 802471C4 00242E24 3B FF 00 04 */ addi r31, r31, 4
lbl_802471C8:
/* 802471C8 00242E28 80 7D 00 04 */ lwz r3, 4(r29)
/* 802471CC 00242E2C 7C 83 F8 2E */ lwzx r4, r3, r31
/* 802471D0 00242E30 2C 04 00 00 */ cmpwi r4, 0
/* 802471D4 00242E34 40 82 FF E8 */ bne lbl_802471BC
lbl_802471D8:
/* 802471D8 00242E38 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802471DC 00242E3C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802471E0 00242E40 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802471E4 00242E44 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802471E8 00242E48 7C 08 03 A6 */ mtlr r0
/* 802471EC 00242E4C 38 21 00 20 */ addi r1, r1, 0x20
/* 802471F0 00242E50 4E 80 00 20 */ blr
.global func_802471F4
func_802471F4:
/* 802471F4 00242E54 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 802471F8 00242E58 7C 08 02 A6 */ mflr r0
/* 802471FC 00242E5C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80247200 00242E60 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80247204 00242E64 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80247208 00242E68 7C 9E 23 78 */ mr r30, r4
/* 8024720C 00242E6C 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80247210 00242E70 7C 7D 1B 78 */ mr r29, r3
/* 80247214 00242E74 80 03 00 04 */ lwz r0, 4(r3)
/* 80247218 00242E78 2C 00 00 00 */ cmpwi r0, 0
/* 8024721C 00242E7C 41 82 00 28 */ beq lbl_80247244
/* 80247220 00242E80 3B E0 00 00 */ li r31, 0
/* 80247224 00242E84 48 00 00 10 */ b lbl_80247234
lbl_80247228:
/* 80247228 00242E88 7F C3 F3 78 */ mr r3, r30
/* 8024722C 00242E8C 4B F9 43 1D */ bl func_801DB548
/* 80247230 00242E90 3B FF 00 04 */ addi r31, r31, 4
lbl_80247234:
/* 80247234 00242E94 80 7D 00 04 */ lwz r3, 4(r29)
/* 80247238 00242E98 7C 83 F8 2E */ lwzx r4, r3, r31
/* 8024723C 00242E9C 2C 04 00 00 */ cmpwi r4, 0
/* 80247240 00242EA0 40 82 FF E8 */ bne lbl_80247228
lbl_80247244:
/* 80247244 00242EA4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80247248 00242EA8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8024724C 00242EAC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80247250 00242EB0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80247254 00242EB4 7C 08 03 A6 */ mtlr r0
/* 80247258 00242EB8 38 21 00 20 */ addi r1, r1, 0x20
/* 8024725C 00242EBC 4E 80 00 20 */ blr
.global func_80247260
func_80247260:
/* 80247260 00242EC0 38 A0 00 01 */ li r5, 1
/* 80247264 00242EC4 38 6D A5 88 */ addi r3, r13, lbl_8063F848-_SDA_BASE_
/* 80247268 00242EC8 38 80 00 04 */ li r4, 4
/* 8024726C 00242ECC 38 00 00 00 */ li r0, 0
/* 80247270 00242ED0 98 AD A5 88 */ stb r5, lbl_8063F848-_SDA_BASE_(r13)
/* 80247274 00242ED4 B0 83 00 02 */ sth r4, 2(r3)
/* 80247278 00242ED8 98 03 00 04 */ stb r0, 4(r3)
/* 8024727C 00242EDC 4E 80 00 20 */ blr