1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_8022494C
func_8022494C:
/* 8022494C 002205AC 3C 80 80 42 */ lis r4, lbl_80423C38@ha
/* 80224950 002205B0 38 00 00 00 */ li r0, 0
/* 80224954 002205B4 38 84 3C 38 */ addi r4, r4, lbl_80423C38@l
/* 80224958 002205B8 90 03 00 00 */ stw r0, 0(r3)
/* 8022495C 002205BC 90 83 00 0C */ stw r4, 0xc(r3)
/* 80224960 002205C0 4E 80 00 20 */ blr
.global func_80224964
func_80224964:
/* 80224964 002205C4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80224968 002205C8 7C 08 02 A6 */ mflr r0
/* 8022496C 002205CC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80224970 002205D0 39 61 00 20 */ addi r11, r1, 0x20
/* 80224974 002205D4 4B FA 27 B5 */ bl _savegpr_27
/* 80224978 002205D8 80 C3 00 00 */ lwz r6, 0(r3)
/* 8022497C 002205DC 7C 9B 23 78 */ mr r27, r4
/* 80224980 002205E0 7C BC 2B 78 */ mr r28, r5
/* 80224984 002205E4 2C 06 00 00 */ cmpwi r6, 0
/* 80224988 002205E8 40 82 00 0C */ bne lbl_80224994
/* 8022498C 002205EC 38 60 00 00 */ li r3, 0
/* 80224990 002205F0 48 00 00 58 */ b lbl_802249E8
lbl_80224994:
/* 80224994 002205F4 83 E3 00 08 */ lwz r31, 8(r3)
/* 80224998 002205F8 3B C6 00 10 */ addi r30, r6, 0x10
/* 8022499C 002205FC 3B A0 00 00 */ li r29, 0
/* 802249A0 00220600 48 00 00 3C */ b lbl_802249DC
lbl_802249A4:
/* 802249A4 00220604 80 1E 00 08 */ lwz r0, 8(r30)
/* 802249A8 00220608 7C 00 E0 00 */ cmpw r0, r28
/* 802249AC 0022060C 40 82 00 24 */ bne lbl_802249D0
/* 802249B0 00220610 7F C3 F3 78 */ mr r3, r30
/* 802249B4 00220614 7F 64 DB 78 */ mr r4, r27
/* 802249B8 00220618 38 A0 00 04 */ li r5, 4
/* 802249BC 0022061C 4B FA 59 DD */ bl memcmp
/* 802249C0 00220620 2C 03 00 00 */ cmpwi r3, 0
/* 802249C4 00220624 40 82 00 0C */ bne lbl_802249D0
/* 802249C8 00220628 7F C3 F3 78 */ mr r3, r30
/* 802249CC 0022062C 48 00 00 1C */ b lbl_802249E8
lbl_802249D0:
/* 802249D0 00220630 80 1E 00 04 */ lwz r0, 4(r30)
/* 802249D4 00220634 3B BD 00 01 */ addi r29, r29, 1
/* 802249D8 00220638 7F DE 02 14 */ add r30, r30, r0
lbl_802249DC:
/* 802249DC 0022063C 7C 1D F8 00 */ cmpw r29, r31
/* 802249E0 00220640 41 80 FF C4 */ blt lbl_802249A4
/* 802249E4 00220644 38 60 00 00 */ li r3, 0
lbl_802249E8:
/* 802249E8 00220648 39 61 00 20 */ addi r11, r1, 0x20
/* 802249EC 0022064C 4B FA 27 89 */ bl _restgpr_27
/* 802249F0 00220650 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802249F4 00220654 7C 08 03 A6 */ mtlr r0
/* 802249F8 00220658 38 21 00 20 */ addi r1, r1, 0x20
/* 802249FC 0022065C 4E 80 00 20 */ blr
.global func_80224A00
func_80224A00:
/* 80224A00 00220660 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80224A04 00220664 7C 08 02 A6 */ mflr r0
/* 80224A08 00220668 2C 04 00 00 */ cmpwi r4, 0
/* 80224A0C 0022066C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80224A10 00220670 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80224A14 00220674 7C 9F 23 78 */ mr r31, r4
/* 80224A18 00220678 93 C1 00 08 */ stw r30, 8(r1)
/* 80224A1C 0022067C 7C 7E 1B 78 */ mr r30, r3
/* 80224A20 00220680 90 83 00 00 */ stw r4, 0(r3)
/* 80224A24 00220684 40 82 00 0C */ bne lbl_80224A30
/* 80224A28 00220688 38 60 00 01 */ li r3, 1
/* 80224A2C 0022068C 48 00 00 6C */ b lbl_80224A98
lbl_80224A30:
/* 80224A30 00220690 2C 05 00 00 */ cmpwi r5, 0
/* 80224A34 00220694 7F E3 FB 78 */ mr r3, r31
/* 80224A38 00220698 41 82 00 20 */ beq lbl_80224A58
/* 80224A3C 0022069C 7C A4 2B 78 */ mr r4, r5
/* 80224A40 002206A0 38 A0 00 04 */ li r5, 4
/* 80224A44 002206A4 4B FA 59 55 */ bl memcmp
/* 80224A48 002206A8 2C 03 00 00 */ cmpwi r3, 0
/* 80224A4C 002206AC 41 82 00 0C */ beq lbl_80224A58
/* 80224A50 002206B0 38 60 00 00 */ li r3, 0
/* 80224A54 002206B4 48 00 00 44 */ b lbl_80224A98
lbl_80224A58:
/* 80224A58 002206B8 38 00 00 00 */ li r0, 0
/* 80224A5C 002206BC 80 7E 00 00 */ lwz r3, 0(r30)
/* 80224A60 002206C0 90 1E 00 08 */ stw r0, 8(r30)
/* 80224A64 002206C4 38 A3 00 10 */ addi r5, r3, 0x10
/* 80224A68 002206C8 80 1F 00 04 */ lwz r0, 4(r31)
/* 80224A6C 002206CC 7C C3 02 14 */ add r6, r3, r0
/* 80224A70 002206D0 90 DE 00 04 */ stw r6, 4(r30)
/* 80224A74 002206D4 48 00 00 18 */ b lbl_80224A8C
lbl_80224A78:
/* 80224A78 002206D8 80 7E 00 08 */ lwz r3, 8(r30)
/* 80224A7C 002206DC 80 85 00 04 */ lwz r4, 4(r5)
/* 80224A80 002206E0 38 03 00 01 */ addi r0, r3, 1
/* 80224A84 002206E4 90 1E 00 08 */ stw r0, 8(r30)
/* 80224A88 002206E8 7C A5 22 14 */ add r5, r5, r4
lbl_80224A8C:
/* 80224A8C 002206EC 7C 06 28 40 */ cmplw r6, r5
/* 80224A90 002206F0 41 81 FF E8 */ bgt lbl_80224A78
/* 80224A94 002206F4 38 60 00 01 */ li r3, 1
lbl_80224A98:
/* 80224A98 002206F8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80224A9C 002206FC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80224AA0 00220700 83 C1 00 08 */ lwz r30, 8(r1)
/* 80224AA4 00220704 7C 08 03 A6 */ mtlr r0
/* 80224AA8 00220708 38 21 00 10 */ addi r1, r1, 0x10
/* 80224AAC 0022070C 4E 80 00 20 */ blr
/* 80224AB0 00220710 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80224AB4 00220714 7C 08 02 A6 */ mflr r0
/* 80224AB8 00220718 2C 03 00 00 */ cmpwi r3, 0
/* 80224ABC 0022071C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80224AC0 00220720 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80224AC4 00220724 7C 7F 1B 78 */ mr r31, r3
/* 80224AC8 00220728 41 82 00 10 */ beq lbl_80224AD8
/* 80224ACC 0022072C 2C 04 00 00 */ cmpwi r4, 0
/* 80224AD0 00220730 40 81 00 08 */ ble lbl_80224AD8
/* 80224AD4 00220734 4B FB 5F E5 */ bl __dl__FPv
lbl_80224AD8:
/* 80224AD8 00220738 7F E3 FB 78 */ mr r3, r31
/* 80224ADC 0022073C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80224AE0 00220740 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80224AE4 00220744 7C 08 03 A6 */ mtlr r0
/* 80224AE8 00220748 38 21 00 10 */ addi r1, r1, 0x10
/* 80224AEC 0022074C 4E 80 00 20 */ blr
.global func_80224AF0
func_80224AF0:
/* 80224AF0 00220750 38 A0 00 01 */ li r5, 1
/* 80224AF4 00220754 38 6D A3 58 */ addi r3, r13, lbl_8063F618-_SDA_BASE_
/* 80224AF8 00220758 38 80 00 04 */ li r4, 4
/* 80224AFC 0022075C 38 00 00 00 */ li r0, 0
/* 80224B00 00220760 98 AD A3 58 */ stb r5, lbl_8063F618-_SDA_BASE_(r13)
/* 80224B04 00220764 B0 83 00 02 */ sth r4, 2(r3)
/* 80224B08 00220768 98 03 00 04 */ stb r0, 4(r3)
/* 80224B0C 0022076C 4E 80 00 20 */ blr
|