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
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_801FA094
func_801FA094:
/* 801FA094 001F5CF4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801FA098 001F5CF8 7C 08 02 A6 */ mflr r0
/* 801FA09C 001F5CFC 90 01 00 24 */ stw r0, 0x24(r1)
/* 801FA0A0 001F5D00 39 61 00 20 */ addi r11, r1, 0x20
/* 801FA0A4 001F5D04 4B FC D0 81 */ bl _savegpr_26
/* 801FA0A8 001F5D08 38 00 00 00 */ li r0, 0
/* 801FA0AC 001F5D0C 90 83 00 00 */ stw r4, 0(r3)
/* 801FA0B0 001F5D10 7C 7F 1B 78 */ mr r31, r3
/* 801FA0B4 001F5D14 7C 9A 23 78 */ mr r26, r4
/* 801FA0B8 001F5D18 90 03 00 04 */ stw r0, 4(r3)
/* 801FA0BC 001F5D1C 90 03 00 08 */ stw r0, 8(r3)
/* 801FA0C0 001F5D20 90 03 00 0C */ stw r0, 0xc(r3)
/* 801FA0C4 001F5D24 90 03 00 10 */ stw r0, 0x10(r3)
/* 801FA0C8 001F5D28 A3 A4 00 18 */ lhz r29, 0x18(r4)
/* 801FA0CC 001F5D2C 2C 1D 00 00 */ cmpwi r29, 0
/* 801FA0D0 001F5D30 40 82 00 08 */ bne lbl_801FA0D8
/* 801FA0D4 001F5D34 48 00 01 A8 */ b lbl_801FA27C
lbl_801FA0D8:
/* 801FA0D8 001F5D38 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801FA0DC 001F5D3C 57 A4 13 BA */ rlwinm r4, r29, 2, 0xe, 0x1d
/* 801FA0E0 001F5D40 4B FE 0B B5 */ bl func_801DAC94
/* 801FA0E4 001F5D44 2C 03 00 00 */ cmpwi r3, 0
/* 801FA0E8 001F5D48 90 7F 00 04 */ stw r3, 4(r31)
/* 801FA0EC 001F5D4C 40 82 00 0C */ bne lbl_801FA0F8
/* 801FA0F0 001F5D50 7F E3 FB 78 */ mr r3, r31
/* 801FA0F4 001F5D54 48 00 01 88 */ b lbl_801FA27C
lbl_801FA0F8:
/* 801FA0F8 001F5D58 38 80 00 00 */ li r4, 0
/* 801FA0FC 001F5D5C 38 A0 00 04 */ li r5, 4
/* 801FA100 001F5D60 4B E0 A0 05 */ bl memset
/* 801FA104 001F5D64 3B 80 00 00 */ li r28, 0
/* 801FA108 001F5D68 3B C0 00 00 */ li r30, 0
/* 801FA10C 001F5D6C 48 00 00 58 */ b lbl_801FA164
lbl_801FA110:
/* 801FA110 001F5D70 80 7A 00 08 */ lwz r3, 8(r26)
/* 801FA114 001F5D74 7F 63 F0 2E */ lwzx r27, r3, r30
/* 801FA118 001F5D78 2C 1B 00 00 */ cmpwi r27, 0
/* 801FA11C 001F5D7C 41 82 00 40 */ beq lbl_801FA15C
/* 801FA120 001F5D80 4B FE 0A 09 */ bl func_801DAB28
/* 801FA124 001F5D84 2C 03 00 00 */ cmpwi r3, 0
/* 801FA128 001F5D88 41 82 00 14 */ beq lbl_801FA13C
/* 801FA12C 001F5D8C 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801FA130 001F5D90 38 80 01 54 */ li r4, 0x154
/* 801FA134 001F5D94 4B FE 0B 61 */ bl func_801DAC94
/* 801FA138 001F5D98 48 00 00 08 */ b lbl_801FA140
lbl_801FA13C:
/* 801FA13C 001F5D9C 38 60 00 00 */ li r3, 0
lbl_801FA140:
/* 801FA140 001F5DA0 2C 03 00 00 */ cmpwi r3, 0
/* 801FA144 001F5DA4 41 82 00 10 */ beq lbl_801FA154
/* 801FA148 001F5DA8 7F E4 FB 78 */ mr r4, r31
/* 801FA14C 001F5DAC 7F 65 DB 78 */ mr r5, r27
/* 801FA150 001F5DB0 4B FF A4 CD */ bl func_801F461C
lbl_801FA154:
/* 801FA154 001F5DB4 80 9F 00 04 */ lwz r4, 4(r31)
/* 801FA158 001F5DB8 7C 64 F1 2E */ stwx r3, r4, r30
lbl_801FA15C:
/* 801FA15C 001F5DBC 3B DE 00 04 */ addi r30, r30, 4
/* 801FA160 001F5DC0 3B 9C 00 01 */ addi r28, r28, 1
lbl_801FA164:
/* 801FA164 001F5DC4 7C 1C E8 00 */ cmpw r28, r29
/* 801FA168 001F5DC8 41 80 FF A8 */ blt lbl_801FA110
/* 801FA16C 001F5DCC 81 1A 00 24 */ lwz r8, 0x24(r26)
/* 801FA170 001F5DD0 2C 08 00 00 */ cmpwi r8, 0
/* 801FA174 001F5DD4 41 82 01 04 */ beq lbl_801FA278
/* 801FA178 001F5DD8 38 C0 00 00 */ li r6, 0
/* 801FA17C 001F5DDC 7F A9 03 A6 */ mtctr r29
/* 801FA180 001F5DE0 2C 1D 00 00 */ cmpwi r29, 0
/* 801FA184 001F5DE4 40 81 00 E0 */ ble lbl_801FA264
lbl_801FA188:
/* 801FA188 001F5DE8 80 7F 00 04 */ lwz r3, 4(r31)
/* 801FA18C 001F5DEC 7D 23 30 2E */ lwzx r9, r3, r6
/* 801FA190 001F5DF0 2C 09 00 00 */ cmpwi r9, 0
/* 801FA194 001F5DF4 41 82 00 C8 */ beq lbl_801FA25C
/* 801FA198 001F5DF8 A0 89 00 E4 */ lhz r4, 0xe4(r9)
/* 801FA19C 001F5DFC 39 40 00 00 */ li r10, 0
/* 801FA1A0 001F5E00 48 00 00 B0 */ b lbl_801FA250
lbl_801FA1A4:
/* 801FA1A4 001F5E04 80 A9 00 18 */ lwz r5, 0x18(r9)
/* 801FA1A8 001F5E08 2C 05 00 00 */ cmpwi r5, 0
/* 801FA1AC 001F5E0C 40 82 00 0C */ bne lbl_801FA1B8
/* 801FA1B0 001F5E10 38 60 00 00 */ li r3, 0
/* 801FA1B4 001F5E14 48 00 00 54 */ b lbl_801FA208
lbl_801FA1B8:
/* 801FA1B8 001F5E18 A0 09 00 E4 */ lhz r0, 0xe4(r9)
/* 801FA1BC 001F5E1C 55 43 04 3E */ clrlwi r3, r10, 0x10
/* 801FA1C0 001F5E20 7C 03 00 40 */ cmplw r3, r0
/* 801FA1C4 001F5E24 41 80 00 0C */ blt lbl_801FA1D0
/* 801FA1C8 001F5E28 38 60 00 00 */ li r3, 0
/* 801FA1CC 001F5E2C 48 00 00 3C */ b lbl_801FA208
lbl_801FA1D0:
/* 801FA1D0 001F5E30 80 E9 00 08 */ lwz r7, 8(r9)
/* 801FA1D4 001F5E34 55 40 0B FC */ rlwinm r0, r10, 1, 0xf, 0x1e
/* 801FA1D8 001F5E38 7C 65 02 2E */ lhzx r3, r5, r0
/* 801FA1DC 001F5E3C 2C 07 00 00 */ cmpwi r7, 0
/* 801FA1E0 001F5E40 40 82 00 0C */ bne lbl_801FA1EC
/* 801FA1E4 001F5E44 38 60 00 00 */ li r3, 0
/* 801FA1E8 001F5E48 48 00 00 20 */ b lbl_801FA208
lbl_801FA1EC:
/* 801FA1EC 001F5E4C A0 09 00 DE */ lhz r0, 0xde(r9)
/* 801FA1F0 001F5E50 7C 03 00 40 */ cmplw r3, r0
/* 801FA1F4 001F5E54 41 80 00 0C */ blt lbl_801FA200
/* 801FA1F8 001F5E58 38 60 00 00 */ li r3, 0
/* 801FA1FC 001F5E5C 48 00 00 0C */ b lbl_801FA208
lbl_801FA200:
/* 801FA200 001F5E60 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d
/* 801FA204 001F5E64 7C 67 00 2E */ lwzx r3, r7, r0
lbl_801FA208:
/* 801FA208 001F5E68 2C 03 00 00 */ cmpwi r3, 0
/* 801FA20C 001F5E6C 41 82 00 40 */ beq lbl_801FA24C
/* 801FA210 001F5E70 80 A3 01 0C */ lwz r5, 0x10c(r3)
/* 801FA214 001F5E74 2C 05 00 00 */ cmpwi r5, 0
/* 801FA218 001F5E78 41 82 00 34 */ beq lbl_801FA24C
/* 801FA21C 001F5E7C 80 08 00 18 */ lwz r0, 0x18(r8)
/* 801FA220 001F5E80 7C 05 00 40 */ cmplw r5, r0
/* 801FA224 001F5E84 40 82 00 08 */ bne lbl_801FA22C
/* 801FA228 001F5E88 90 7F 00 08 */ stw r3, 8(r31)
lbl_801FA22C:
/* 801FA22C 001F5E8C 80 08 00 1C */ lwz r0, 0x1c(r8)
/* 801FA230 001F5E90 7C 05 00 40 */ cmplw r5, r0
/* 801FA234 001F5E94 40 82 00 08 */ bne lbl_801FA23C
/* 801FA238 001F5E98 90 7F 00 0C */ stw r3, 0xc(r31)
lbl_801FA23C:
/* 801FA23C 001F5E9C 80 08 00 20 */ lwz r0, 0x20(r8)
/* 801FA240 001F5EA0 7C 05 00 40 */ cmplw r5, r0
/* 801FA244 001F5EA4 40 82 00 08 */ bne lbl_801FA24C
/* 801FA248 001F5EA8 90 7F 00 10 */ stw r3, 0x10(r31)
lbl_801FA24C:
/* 801FA24C 001F5EAC 39 4A 00 01 */ addi r10, r10, 1
lbl_801FA250:
/* 801FA250 001F5EB0 55 40 04 3E */ clrlwi r0, r10, 0x10
/* 801FA254 001F5EB4 7C 00 20 40 */ cmplw r0, r4
/* 801FA258 001F5EB8 41 80 FF 4C */ blt lbl_801FA1A4
lbl_801FA25C:
/* 801FA25C 001F5EBC 38 C6 00 04 */ addi r6, r6, 4
/* 801FA260 001F5EC0 42 00 FF 28 */ bdnz lbl_801FA188
lbl_801FA264:
/* 801FA264 001F5EC4 80 1F 00 10 */ lwz r0, 0x10(r31)
/* 801FA268 001F5EC8 2C 00 00 00 */ cmpwi r0, 0
/* 801FA26C 001F5ECC 40 82 00 0C */ bne lbl_801FA278
/* 801FA270 001F5ED0 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 801FA274 001F5ED4 90 1F 00 10 */ stw r0, 0x10(r31)
lbl_801FA278:
/* 801FA278 001F5ED8 7F E3 FB 78 */ mr r3, r31
lbl_801FA27C:
/* 801FA27C 001F5EDC 39 61 00 20 */ addi r11, r1, 0x20
/* 801FA280 001F5EE0 4B FC CE F1 */ bl _restgpr_26
/* 801FA284 001F5EE4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801FA288 001F5EE8 7C 08 03 A6 */ mtlr r0
/* 801FA28C 001F5EEC 38 21 00 20 */ addi r1, r1, 0x20
/* 801FA290 001F5EF0 4E 80 00 20 */ blr
.global func_801FA294
func_801FA294:
/* 801FA294 001F5EF4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 801FA298 001F5EF8 7C 08 02 A6 */ mflr r0
/* 801FA29C 001F5EFC 2C 03 00 00 */ cmpwi r3, 0
/* 801FA2A0 001F5F00 90 01 00 24 */ stw r0, 0x24(r1)
/* 801FA2A4 001F5F04 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 801FA2A8 001F5F08 93 C1 00 18 */ stw r30, 0x18(r1)
/* 801FA2AC 001F5F0C 7C 9E 23 78 */ mr r30, r4
/* 801FA2B0 001F5F10 93 A1 00 14 */ stw r29, 0x14(r1)
/* 801FA2B4 001F5F14 7C 7D 1B 78 */ mr r29, r3
/* 801FA2B8 001F5F18 41 82 00 94 */ beq lbl_801FA34C
/* 801FA2BC 001F5F1C 80 8D A1 A8 */ lwz r4, lbl_8063F468-_SDA_BASE_(r13)
/* 801FA2C0 001F5F20 80 04 01 24 */ lwz r0, 0x124(r4)
/* 801FA2C4 001F5F24 7C 00 18 40 */ cmplw r0, r3
/* 801FA2C8 001F5F28 40 82 00 0C */ bne lbl_801FA2D4
/* 801FA2CC 001F5F2C 38 60 00 00 */ li r3, 0
/* 801FA2D0 001F5F30 48 00 87 01 */ bl func_802029D0
lbl_801FA2D4:
/* 801FA2D4 001F5F34 80 1D 00 04 */ lwz r0, 4(r29)
/* 801FA2D8 001F5F38 2C 00 00 00 */ cmpwi r0, 0
/* 801FA2DC 001F5F3C 41 82 00 5C */ beq lbl_801FA338
/* 801FA2E0 001F5F40 3B E0 00 00 */ li r31, 0
/* 801FA2E4 001F5F44 48 00 00 24 */ b lbl_801FA308
lbl_801FA2E8:
/* 801FA2E8 001F5F48 80 7D 00 04 */ lwz r3, 4(r29)
/* 801FA2EC 001F5F4C 57 E0 13 BA */ rlwinm r0, r31, 2, 0xe, 0x1d
/* 801FA2F0 001F5F50 7C 63 00 2E */ lwzx r3, r3, r0
/* 801FA2F4 001F5F54 2C 03 00 00 */ cmpwi r3, 0
/* 801FA2F8 001F5F58 41 82 00 0C */ beq lbl_801FA304
/* 801FA2FC 001F5F5C 38 80 00 01 */ li r4, 1
/* 801FA300 001F5F60 4B FF A7 F1 */ bl func_801F4AF0
lbl_801FA304:
/* 801FA304 001F5F64 3B FF 00 01 */ addi r31, r31, 1
lbl_801FA308:
/* 801FA308 001F5F68 80 7D 00 00 */ lwz r3, 0(r29)
/* 801FA30C 001F5F6C 57 E4 04 3E */ clrlwi r4, r31, 0x10
/* 801FA310 001F5F70 A0 03 00 18 */ lhz r0, 0x18(r3)
/* 801FA314 001F5F74 7C 04 00 40 */ cmplw r4, r0
/* 801FA318 001F5F78 41 80 FF D0 */ blt lbl_801FA2E8
/* 801FA31C 001F5F7C 80 9D 00 04 */ lwz r4, 4(r29)
/* 801FA320 001F5F80 2C 04 00 00 */ cmpwi r4, 0
/* 801FA324 001F5F84 41 82 00 14 */ beq lbl_801FA338
/* 801FA328 001F5F88 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801FA32C 001F5F8C 4B FE 0A 1D */ bl func_801DAD48
/* 801FA330 001F5F90 38 00 00 00 */ li r0, 0
/* 801FA334 001F5F94 90 1D 00 04 */ stw r0, 4(r29)
lbl_801FA338:
/* 801FA338 001F5F98 2C 1E 00 00 */ cmpwi r30, 0
/* 801FA33C 001F5F9C 40 81 00 10 */ ble lbl_801FA34C
/* 801FA340 001F5FA0 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801FA344 001F5FA4 7F A4 EB 78 */ mr r4, r29
/* 801FA348 001F5FA8 4B FE 0A 01 */ bl func_801DAD48
lbl_801FA34C:
/* 801FA34C 001F5FAC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 801FA350 001F5FB0 7F A3 EB 78 */ mr r3, r29
/* 801FA354 001F5FB4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 801FA358 001F5FB8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 801FA35C 001F5FBC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 801FA360 001F5FC0 7C 08 03 A6 */ mtlr r0
/* 801FA364 001F5FC4 38 21 00 20 */ addi r1, r1, 0x20
/* 801FA368 001F5FC8 4E 80 00 20 */ blr
.global func_801FA36C
func_801FA36C:
/* 801FA36C 001F5FCC 38 A0 00 01 */ li r5, 1
/* 801FA370 001F5FD0 38 6D A1 30 */ addi r3, r13, lbl_8063F3F0-_SDA_BASE_
/* 801FA374 001F5FD4 38 80 00 04 */ li r4, 4
/* 801FA378 001F5FD8 38 00 00 00 */ li r0, 0
/* 801FA37C 001F5FDC 98 AD A1 30 */ stb r5, lbl_8063F3F0-_SDA_BASE_(r13)
/* 801FA380 001F5FE0 B0 83 00 02 */ sth r4, 2(r3)
/* 801FA384 001F5FE4 98 03 00 04 */ stb r0, 4(r3)
/* 801FA388 001F5FE8 4E 80 00 20 */ blr
|