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
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global strcpy
strcpy:
/* 801CE2D0 001C9F30 54 60 07 BE */ clrlwi r0, r3, 0x1e
/* 801CE2D4 001C9F34 54 85 07 BE */ clrlwi r5, r4, 0x1e
/* 801CE2D8 001C9F38 7C 00 28 40 */ cmplw r0, r5
/* 801CE2DC 001C9F3C 7C 67 1B 78 */ mr r7, r3
/* 801CE2E0 001C9F40 40 82 00 8C */ bne lbl_801CE36C
/* 801CE2E4 001C9F44 2C 05 00 00 */ cmpwi r5, 0
/* 801CE2E8 001C9F48 41 82 00 40 */ beq lbl_801CE328
/* 801CE2EC 001C9F4C 88 04 00 00 */ lbz r0, 0(r4)
/* 801CE2F0 001C9F50 2C 00 00 00 */ cmpwi r0, 0
/* 801CE2F4 001C9F54 98 03 00 00 */ stb r0, 0(r3)
/* 801CE2F8 001C9F58 4D 82 00 20 */ beqlr
/* 801CE2FC 001C9F5C 20 05 00 03 */ subfic r0, r5, 3
/* 801CE300 001C9F60 7C 09 03 A6 */ mtctr r0
/* 801CE304 001C9F64 2C 00 00 00 */ cmpwi r0, 0
/* 801CE308 001C9F68 41 82 00 18 */ beq lbl_801CE320
lbl_801CE30C:
/* 801CE30C 001C9F6C 8C 04 00 01 */ lbzu r0, 1(r4)
/* 801CE310 001C9F70 2C 00 00 00 */ cmpwi r0, 0
/* 801CE314 001C9F74 9C 07 00 01 */ stbu r0, 1(r7)
/* 801CE318 001C9F78 4D 82 00 20 */ beqlr
/* 801CE31C 001C9F7C 42 00 FF F0 */ bdnz lbl_801CE30C
lbl_801CE320:
/* 801CE320 001C9F80 38 E7 00 01 */ addi r7, r7, 1
/* 801CE324 001C9F84 38 84 00 01 */ addi r4, r4, 1
lbl_801CE328:
/* 801CE328 001C9F88 81 04 00 00 */ lwz r8, 0(r4)
/* 801CE32C 001C9F8C 3C A0 80 81 */ lis r5, 0x80808080@ha
/* 801CE330 001C9F90 38 A5 80 80 */ addi r5, r5, 0x80808080@l
/* 801CE334 001C9F94 3C C8 FE FF */ addis r6, r8, 0xfeff
/* 801CE338 001C9F98 38 C6 FE FF */ addi r6, r6, -257
/* 801CE33C 001C9F9C 7C C6 40 78 */ andc r6, r6, r8
/* 801CE340 001C9FA0 7C C0 28 39 */ and. r0, r6, r5
/* 801CE344 001C9FA4 40 82 00 28 */ bne lbl_801CE36C
/* 801CE348 001C9FA8 38 E7 FF FC */ addi r7, r7, -4
lbl_801CE34C:
/* 801CE34C 001C9FAC 95 07 00 04 */ stwu r8, 4(r7)
/* 801CE350 001C9FB0 85 04 00 04 */ lwzu r8, 4(r4)
/* 801CE354 001C9FB4 3C C8 FE FF */ addis r6, r8, 0xfeff
/* 801CE358 001C9FB8 38 C6 FE FF */ addi r6, r6, -257
/* 801CE35C 001C9FBC 7C C6 40 78 */ andc r6, r6, r8
/* 801CE360 001C9FC0 7C C0 28 39 */ and. r0, r6, r5
/* 801CE364 001C9FC4 41 82 FF E8 */ beq lbl_801CE34C
/* 801CE368 001C9FC8 38 E7 00 04 */ addi r7, r7, 4
lbl_801CE36C:
/* 801CE36C 001C9FCC 88 04 00 00 */ lbz r0, 0(r4)
/* 801CE370 001C9FD0 2C 00 00 00 */ cmpwi r0, 0
/* 801CE374 001C9FD4 98 07 00 00 */ stb r0, 0(r7)
/* 801CE378 001C9FD8 4D 82 00 20 */ beqlr
lbl_801CE37C:
/* 801CE37C 001C9FDC 8C 04 00 01 */ lbzu r0, 1(r4)
/* 801CE380 001C9FE0 2C 00 00 00 */ cmpwi r0, 0
/* 801CE384 001C9FE4 9C 07 00 01 */ stbu r0, 1(r7)
/* 801CE388 001C9FE8 40 82 FF F4 */ bne lbl_801CE37C
/* 801CE38C 001C9FEC 4E 80 00 20 */ blr
.global strncpy
strncpy:
/* 801CE390 001C9FF0 38 84 FF FF */ addi r4, r4, -1
/* 801CE394 001C9FF4 38 C3 FF FF */ addi r6, r3, -1
/* 801CE398 001C9FF8 38 A5 00 01 */ addi r5, r5, 1
/* 801CE39C 001C9FFC 48 00 00 2C */ b lbl_801CE3C8
lbl_801CE3A0:
/* 801CE3A0 001CA000 8C 04 00 01 */ lbzu r0, 1(r4)
/* 801CE3A4 001CA004 2C 00 00 00 */ cmpwi r0, 0
/* 801CE3A8 001CA008 9C 06 00 01 */ stbu r0, 1(r6)
/* 801CE3AC 001CA00C 40 82 00 1C */ bne lbl_801CE3C8
/* 801CE3B0 001CA010 38 00 00 00 */ li r0, 0
/* 801CE3B4 001CA014 48 00 00 08 */ b lbl_801CE3BC
lbl_801CE3B8:
/* 801CE3B8 001CA018 9C 06 00 01 */ stbu r0, 1(r6)
lbl_801CE3BC:
/* 801CE3BC 001CA01C 34 A5 FF FF */ addic. r5, r5, -1
/* 801CE3C0 001CA020 40 82 FF F8 */ bne lbl_801CE3B8
/* 801CE3C4 001CA024 4E 80 00 20 */ blr
lbl_801CE3C8:
/* 801CE3C8 001CA028 34 A5 FF FF */ addic. r5, r5, -1
/* 801CE3CC 001CA02C 40 82 FF D4 */ bne lbl_801CE3A0
/* 801CE3D0 001CA030 4E 80 00 20 */ blr
.global strcat
strcat:
/* 801CE3D4 001CA034 38 84 FF FF */ addi r4, r4, -1
/* 801CE3D8 001CA038 38 A3 FF FF */ addi r5, r3, -1
lbl_801CE3DC:
/* 801CE3DC 001CA03C 8C 05 00 01 */ lbzu r0, 1(r5)
/* 801CE3E0 001CA040 2C 00 00 00 */ cmpwi r0, 0
/* 801CE3E4 001CA044 40 82 FF F8 */ bne lbl_801CE3DC
/* 801CE3E8 001CA048 38 A5 FF FF */ addi r5, r5, -1
lbl_801CE3EC:
/* 801CE3EC 001CA04C 8C 04 00 01 */ lbzu r0, 1(r4)
/* 801CE3F0 001CA050 2C 00 00 00 */ cmpwi r0, 0
/* 801CE3F4 001CA054 9C 05 00 01 */ stbu r0, 1(r5)
/* 801CE3F8 001CA058 40 82 FF F4 */ bne lbl_801CE3EC
/* 801CE3FC 001CA05C 4E 80 00 20 */ blr
.global strncat
strncat:
/* 801CE400 001CA060 38 84 FF FF */ addi r4, r4, -1
/* 801CE404 001CA064 38 C3 FF FF */ addi r6, r3, -1
lbl_801CE408:
/* 801CE408 001CA068 8C 06 00 01 */ lbzu r0, 1(r6)
/* 801CE40C 001CA06C 2C 00 00 00 */ cmpwi r0, 0
/* 801CE410 001CA070 40 82 FF F8 */ bne lbl_801CE408
/* 801CE414 001CA074 38 C6 FF FF */ addi r6, r6, -1
/* 801CE418 001CA078 38 A5 00 01 */ addi r5, r5, 1
/* 801CE41C 001CA07C 48 00 00 1C */ b lbl_801CE438
lbl_801CE420:
/* 801CE420 001CA080 8C 04 00 01 */ lbzu r0, 1(r4)
/* 801CE424 001CA084 2C 00 00 00 */ cmpwi r0, 0
/* 801CE428 001CA088 9C 06 00 01 */ stbu r0, 1(r6)
/* 801CE42C 001CA08C 40 82 00 0C */ bne lbl_801CE438
/* 801CE430 001CA090 38 C6 FF FF */ addi r6, r6, -1
/* 801CE434 001CA094 48 00 00 0C */ b lbl_801CE440
lbl_801CE438:
/* 801CE438 001CA098 34 A5 FF FF */ addic. r5, r5, -1
/* 801CE43C 001CA09C 40 82 FF E4 */ bne lbl_801CE420
lbl_801CE440:
/* 801CE440 001CA0A0 38 00 00 00 */ li r0, 0
/* 801CE444 001CA0A4 98 06 00 01 */ stb r0, 1(r6)
/* 801CE448 001CA0A8 4E 80 00 20 */ blr
.global strcmp
strcmp:
/* 801CE44C 001CA0AC 88 A3 00 00 */ lbz r5, 0(r3)
/* 801CE450 001CA0B0 88 04 00 00 */ lbz r0, 0(r4)
/* 801CE454 001CA0B4 7C 00 28 51 */ subf. r0, r0, r5
/* 801CE458 001CA0B8 41 82 00 0C */ beq lbl_801CE464
/* 801CE45C 001CA0BC 7C 03 03 78 */ mr r3, r0
/* 801CE460 001CA0C0 4E 80 00 20 */ blr
lbl_801CE464:
/* 801CE464 001CA0C4 54 80 07 BE */ clrlwi r0, r4, 0x1e
/* 801CE468 001CA0C8 54 66 07 BE */ clrlwi r6, r3, 0x1e
/* 801CE46C 001CA0CC 7C 00 30 40 */ cmplw r0, r6
/* 801CE470 001CA0D0 40 82 00 C0 */ bne lbl_801CE530
/* 801CE474 001CA0D4 2C 06 00 00 */ cmpwi r6, 0
/* 801CE478 001CA0D8 41 82 00 58 */ beq lbl_801CE4D0
/* 801CE47C 001CA0DC 2C 05 00 00 */ cmpwi r5, 0
/* 801CE480 001CA0E0 40 82 00 0C */ bne lbl_801CE48C
/* 801CE484 001CA0E4 38 60 00 00 */ li r3, 0
/* 801CE488 001CA0E8 4E 80 00 20 */ blr
lbl_801CE48C:
/* 801CE48C 001CA0EC 20 06 00 03 */ subfic r0, r6, 3
/* 801CE490 001CA0F0 7C 09 03 A6 */ mtctr r0
/* 801CE494 001CA0F4 2C 00 00 00 */ cmpwi r0, 0
/* 801CE498 001CA0F8 41 82 00 30 */ beq lbl_801CE4C8
lbl_801CE49C:
/* 801CE49C 001CA0FC 8C A3 00 01 */ lbzu r5, 1(r3)
/* 801CE4A0 001CA100 8C 04 00 01 */ lbzu r0, 1(r4)
/* 801CE4A4 001CA104 7C 00 28 51 */ subf. r0, r0, r5
/* 801CE4A8 001CA108 41 82 00 0C */ beq lbl_801CE4B4
/* 801CE4AC 001CA10C 7C 03 03 78 */ mr r3, r0
/* 801CE4B0 001CA110 4E 80 00 20 */ blr
lbl_801CE4B4:
/* 801CE4B4 001CA114 2C 05 00 00 */ cmpwi r5, 0
/* 801CE4B8 001CA118 40 82 00 0C */ bne lbl_801CE4C4
/* 801CE4BC 001CA11C 38 60 00 00 */ li r3, 0
/* 801CE4C0 001CA120 4E 80 00 20 */ blr
lbl_801CE4C4:
/* 801CE4C4 001CA124 42 00 FF D8 */ bdnz lbl_801CE49C
lbl_801CE4C8:
/* 801CE4C8 001CA128 38 63 00 01 */ addi r3, r3, 1
/* 801CE4CC 001CA12C 38 84 00 01 */ addi r4, r4, 1
lbl_801CE4D0:
/* 801CE4D0 001CA130 80 E3 00 00 */ lwz r7, 0(r3)
/* 801CE4D4 001CA134 3C A0 80 81 */ lis r5, 0x80808080@ha
/* 801CE4D8 001CA138 38 C5 80 80 */ addi r6, r5, 0x80808080@l
/* 801CE4DC 001CA13C 81 04 00 00 */ lwz r8, 0(r4)
/* 801CE4E0 001CA140 3C A7 FE FF */ addis r5, r7, 0xfeff
/* 801CE4E4 001CA144 38 A5 FE FF */ addi r5, r5, -257
/* 801CE4E8 001CA148 7C A5 38 78 */ andc r5, r5, r7
/* 801CE4EC 001CA14C 7C A0 30 39 */ and. r0, r5, r6
/* 801CE4F0 001CA150 40 82 00 28 */ bne lbl_801CE518
/* 801CE4F4 001CA154 48 00 00 1C */ b lbl_801CE510
lbl_801CE4F8:
/* 801CE4F8 001CA158 84 E3 00 04 */ lwzu r7, 4(r3)
/* 801CE4FC 001CA15C 85 04 00 04 */ lwzu r8, 4(r4)
/* 801CE500 001CA160 3C A7 FE FF */ addis r5, r7, 0xfeff
/* 801CE504 001CA164 38 05 FE FF */ addi r0, r5, -257
/* 801CE508 001CA168 7C 00 30 39 */ and. r0, r0, r6
/* 801CE50C 001CA16C 40 82 00 0C */ bne lbl_801CE518
lbl_801CE510:
/* 801CE510 001CA170 7C 07 40 40 */ cmplw r7, r8
/* 801CE514 001CA174 41 82 FF E4 */ beq lbl_801CE4F8
lbl_801CE518:
/* 801CE518 001CA178 88 A3 00 00 */ lbz r5, 0(r3)
/* 801CE51C 001CA17C 88 04 00 00 */ lbz r0, 0(r4)
/* 801CE520 001CA180 7C 00 28 51 */ subf. r0, r0, r5
/* 801CE524 001CA184 41 82 00 0C */ beq lbl_801CE530
/* 801CE528 001CA188 7C 03 03 78 */ mr r3, r0
/* 801CE52C 001CA18C 4E 80 00 20 */ blr
lbl_801CE530:
/* 801CE530 001CA190 2C 05 00 00 */ cmpwi r5, 0
/* 801CE534 001CA194 40 82 00 0C */ bne lbl_801CE540
/* 801CE538 001CA198 38 60 00 00 */ li r3, 0
/* 801CE53C 001CA19C 4E 80 00 20 */ blr
lbl_801CE540:
/* 801CE540 001CA1A0 8C A3 00 01 */ lbzu r5, 1(r3)
/* 801CE544 001CA1A4 8C 04 00 01 */ lbzu r0, 1(r4)
/* 801CE548 001CA1A8 7C 00 28 51 */ subf. r0, r0, r5
/* 801CE54C 001CA1AC 41 82 00 0C */ beq lbl_801CE558
/* 801CE550 001CA1B0 7C 03 03 78 */ mr r3, r0
/* 801CE554 001CA1B4 4E 80 00 20 */ blr
lbl_801CE558:
/* 801CE558 001CA1B8 2C 05 00 00 */ cmpwi r5, 0
/* 801CE55C 001CA1BC 40 82 FF E4 */ bne lbl_801CE540
/* 801CE560 001CA1C0 38 60 00 00 */ li r3, 0
/* 801CE564 001CA1C4 4E 80 00 20 */ blr
.global strncmp
strncmp:
/* 801CE568 001CA1C8 38 63 FF FF */ addi r3, r3, -1
/* 801CE56C 001CA1CC 38 84 FF FF */ addi r4, r4, -1
/* 801CE570 001CA1D0 38 C5 00 01 */ addi r6, r5, 1
/* 801CE574 001CA1D4 48 00 00 24 */ b lbl_801CE598
lbl_801CE578:
/* 801CE578 001CA1D8 8C 03 00 01 */ lbzu r0, 1(r3)
/* 801CE57C 001CA1DC 8C A4 00 01 */ lbzu r5, 1(r4)
/* 801CE580 001CA1E0 7C 00 28 40 */ cmplw r0, r5
/* 801CE584 001CA1E4 41 82 00 0C */ beq lbl_801CE590
/* 801CE588 001CA1E8 7C 65 00 50 */ subf r3, r5, r0
/* 801CE58C 001CA1EC 4E 80 00 20 */ blr
lbl_801CE590:
/* 801CE590 001CA1F0 2C 00 00 00 */ cmpwi r0, 0
/* 801CE594 001CA1F4 41 82 00 0C */ beq lbl_801CE5A0
lbl_801CE598:
/* 801CE598 001CA1F8 34 C6 FF FF */ addic. r6, r6, -1
/* 801CE59C 001CA1FC 40 82 FF DC */ bne lbl_801CE578
lbl_801CE5A0:
/* 801CE5A0 001CA200 38 60 00 00 */ li r3, 0
/* 801CE5A4 001CA204 4E 80 00 20 */ blr
.global strchr
strchr:
/* 801CE5A8 001CA208 38 63 FF FF */ addi r3, r3, -1
/* 801CE5AC 001CA20C 54 80 06 3E */ clrlwi r0, r4, 0x18
/* 801CE5B0 001CA210 48 00 00 0C */ b lbl_801CE5BC
lbl_801CE5B4:
/* 801CE5B4 001CA214 7C 04 00 40 */ cmplw r4, r0
/* 801CE5B8 001CA218 4D 82 00 20 */ beqlr
lbl_801CE5BC:
/* 801CE5BC 001CA21C 8C 83 00 01 */ lbzu r4, 1(r3)
/* 801CE5C0 001CA220 2C 04 00 00 */ cmpwi r4, 0
/* 801CE5C4 001CA224 40 82 FF F0 */ bne lbl_801CE5B4
/* 801CE5C8 001CA228 2C 00 00 00 */ cmpwi r0, 0
/* 801CE5CC 001CA22C 4D 82 00 20 */ beqlr
/* 801CE5D0 001CA230 38 60 00 00 */ li r3, 0
/* 801CE5D4 001CA234 4E 80 00 20 */ blr
.global strcspn
strcspn:
/* 801CE5D8 001CA238 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 801CE5DC 001CA23C 38 00 00 00 */ li r0, 0
/* 801CE5E0 001CA240 39 04 FF FF */ addi r8, r4, -1
/* 801CE5E4 001CA244 38 80 00 01 */ li r4, 1
/* 801CE5E8 001CA248 90 01 00 08 */ stw r0, 8(r1)
/* 801CE5EC 001CA24C 38 C1 00 08 */ addi r6, r1, 8
/* 801CE5F0 001CA250 90 01 00 0C */ stw r0, 0xc(r1)
/* 801CE5F4 001CA254 90 01 00 10 */ stw r0, 0x10(r1)
/* 801CE5F8 001CA258 90 01 00 14 */ stw r0, 0x14(r1)
/* 801CE5FC 001CA25C 90 01 00 18 */ stw r0, 0x18(r1)
/* 801CE600 001CA260 90 01 00 1C */ stw r0, 0x1c(r1)
/* 801CE604 001CA264 90 01 00 20 */ stw r0, 0x20(r1)
/* 801CE608 001CA268 90 01 00 24 */ stw r0, 0x24(r1)
/* 801CE60C 001CA26C 48 00 00 20 */ b lbl_801CE62C
lbl_801CE610:
/* 801CE610 001CA270 54 07 EE FE */ rlwinm r7, r0, 0x1d, 0x1b, 0x1f
/* 801CE614 001CA274 54 00 07 7E */ clrlwi r0, r0, 0x1d
/* 801CE618 001CA278 7C 80 00 30 */ slw r0, r4, r0
/* 801CE61C 001CA27C 7C A6 38 AE */ lbzx r5, r6, r7
/* 801CE620 001CA280 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801CE624 001CA284 7C A0 03 78 */ or r0, r5, r0
/* 801CE628 001CA288 7C 06 39 AE */ stbx r0, r6, r7
lbl_801CE62C:
/* 801CE62C 001CA28C 8C 08 00 01 */ lbzu r0, 1(r8)
/* 801CE630 001CA290 2C 00 00 00 */ cmpwi r0, 0
/* 801CE634 001CA294 40 82 FF DC */ bne lbl_801CE610
/* 801CE638 001CA298 38 E3 FF FF */ addi r7, r3, -1
/* 801CE63C 001CA29C 38 C1 00 08 */ addi r6, r1, 8
/* 801CE640 001CA2A0 38 80 00 01 */ li r4, 1
/* 801CE644 001CA2A4 48 00 00 20 */ b lbl_801CE664
lbl_801CE648:
/* 801CE648 001CA2A8 54 05 EE FE */ rlwinm r5, r0, 0x1d, 0x1b, 0x1f
/* 801CE64C 001CA2AC 54 00 07 7E */ clrlwi r0, r0, 0x1d
/* 801CE650 001CA2B0 7C 80 00 30 */ slw r0, r4, r0
/* 801CE654 001CA2B4 7C A6 28 AE */ lbzx r5, r6, r5
/* 801CE658 001CA2B8 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801CE65C 001CA2BC 7C A0 00 39 */ and. r0, r5, r0
/* 801CE660 001CA2C0 40 82 00 10 */ bne lbl_801CE670
lbl_801CE664:
/* 801CE664 001CA2C4 8C 07 00 01 */ lbzu r0, 1(r7)
/* 801CE668 001CA2C8 2C 00 00 00 */ cmpwi r0, 0
/* 801CE66C 001CA2CC 40 82 FF DC */ bne lbl_801CE648
lbl_801CE670:
/* 801CE670 001CA2D0 7C 63 38 50 */ subf r3, r3, r7
/* 801CE674 001CA2D4 38 21 00 30 */ addi r1, r1, 0x30
/* 801CE678 001CA2D8 4E 80 00 20 */ blr
.global strtok
strtok:
/* 801CE67C 001CA2DC 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 801CE680 001CA2E0 38 00 00 00 */ li r0, 0
/* 801CE684 001CA2E4 2C 03 00 00 */ cmpwi r3, 0
/* 801CE688 001CA2E8 90 01 00 08 */ stw r0, 8(r1)
/* 801CE68C 001CA2EC 90 01 00 0C */ stw r0, 0xc(r1)
/* 801CE690 001CA2F0 90 01 00 10 */ stw r0, 0x10(r1)
/* 801CE694 001CA2F4 90 01 00 14 */ stw r0, 0x14(r1)
/* 801CE698 001CA2F8 90 01 00 18 */ stw r0, 0x18(r1)
/* 801CE69C 001CA2FC 90 01 00 1C */ stw r0, 0x1c(r1)
/* 801CE6A0 001CA300 90 01 00 20 */ stw r0, 0x20(r1)
/* 801CE6A4 001CA304 90 01 00 24 */ stw r0, 0x24(r1)
/* 801CE6A8 001CA308 41 82 00 08 */ beq lbl_801CE6B0
/* 801CE6AC 001CA30C 90 6D 83 F4 */ stw r3, lbl_8063D6B4-_SDA_BASE_(r13)
lbl_801CE6B0:
/* 801CE6B0 001CA310 38 E4 FF FF */ addi r7, r4, -1
/* 801CE6B4 001CA314 38 A1 00 08 */ addi r5, r1, 8
/* 801CE6B8 001CA318 38 60 00 01 */ li r3, 1
/* 801CE6BC 001CA31C 48 00 00 20 */ b lbl_801CE6DC
lbl_801CE6C0:
/* 801CE6C0 001CA320 54 06 EE FE */ rlwinm r6, r0, 0x1d, 0x1b, 0x1f
/* 801CE6C4 001CA324 54 00 07 7E */ clrlwi r0, r0, 0x1d
/* 801CE6C8 001CA328 7C 60 00 30 */ slw r0, r3, r0
/* 801CE6CC 001CA32C 7C 85 30 AE */ lbzx r4, r5, r6
/* 801CE6D0 001CA330 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801CE6D4 001CA334 7C 80 03 78 */ or r0, r4, r0
/* 801CE6D8 001CA338 7C 05 31 AE */ stbx r0, r5, r6
lbl_801CE6DC:
/* 801CE6DC 001CA33C 8C 07 00 01 */ lbzu r0, 1(r7)
/* 801CE6E0 001CA340 2C 00 00 00 */ cmpwi r0, 0
/* 801CE6E4 001CA344 40 82 FF DC */ bne lbl_801CE6C0
/* 801CE6E8 001CA348 80 8D 83 F4 */ lwz r4, lbl_8063D6B4-_SDA_BASE_(r13)
/* 801CE6EC 001CA34C 38 A1 00 08 */ addi r5, r1, 8
/* 801CE6F0 001CA350 38 60 00 01 */ li r3, 1
/* 801CE6F4 001CA354 38 E4 FF FF */ addi r7, r4, -1
/* 801CE6F8 001CA358 48 00 00 20 */ b lbl_801CE718
lbl_801CE6FC:
/* 801CE6FC 001CA35C 54 C4 EE FE */ rlwinm r4, r6, 0x1d, 0x1b, 0x1f
/* 801CE700 001CA360 54 C0 07 7E */ clrlwi r0, r6, 0x1d
/* 801CE704 001CA364 7C 60 00 30 */ slw r0, r3, r0
/* 801CE708 001CA368 7C 85 20 AE */ lbzx r4, r5, r4
/* 801CE70C 001CA36C 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801CE710 001CA370 7C 80 00 39 */ and. r0, r4, r0
/* 801CE714 001CA374 41 82 00 10 */ beq lbl_801CE724
lbl_801CE718:
/* 801CE718 001CA378 8C C7 00 01 */ lbzu r6, 1(r7)
/* 801CE71C 001CA37C 2C 06 00 00 */ cmpwi r6, 0
/* 801CE720 001CA380 40 82 FF DC */ bne lbl_801CE6FC
lbl_801CE724:
/* 801CE724 001CA384 2C 06 00 00 */ cmpwi r6, 0
/* 801CE728 001CA388 40 82 00 14 */ bne lbl_801CE73C
/* 801CE72C 001CA38C 80 0D 83 F0 */ lwz r0, lbl_8063D6B0-_SDA_BASE_(r13)
/* 801CE730 001CA390 38 60 00 00 */ li r3, 0
/* 801CE734 001CA394 90 0D 83 F4 */ stw r0, lbl_8063D6B4-_SDA_BASE_(r13)
/* 801CE738 001CA398 48 00 00 60 */ b lbl_801CE798
lbl_801CE73C:
/* 801CE73C 001CA39C 7C E3 3B 78 */ mr r3, r7
/* 801CE740 001CA3A0 38 C1 00 08 */ addi r6, r1, 8
/* 801CE744 001CA3A4 38 80 00 01 */ li r4, 1
/* 801CE748 001CA3A8 48 00 00 20 */ b lbl_801CE768
lbl_801CE74C:
/* 801CE74C 001CA3AC 55 05 EE FE */ rlwinm r5, r8, 0x1d, 0x1b, 0x1f
/* 801CE750 001CA3B0 55 00 07 7E */ clrlwi r0, r8, 0x1d
/* 801CE754 001CA3B4 7C 80 00 30 */ slw r0, r4, r0
/* 801CE758 001CA3B8 7C A6 28 AE */ lbzx r5, r6, r5
/* 801CE75C 001CA3BC 54 00 06 3E */ clrlwi r0, r0, 0x18
/* 801CE760 001CA3C0 7C A0 00 39 */ and. r0, r5, r0
/* 801CE764 001CA3C4 40 82 00 10 */ bne lbl_801CE774
lbl_801CE768:
/* 801CE768 001CA3C8 8D 07 00 01 */ lbzu r8, 1(r7)
/* 801CE76C 001CA3CC 2C 08 00 00 */ cmpwi r8, 0
/* 801CE770 001CA3D0 40 82 FF DC */ bne lbl_801CE74C
lbl_801CE774:
/* 801CE774 001CA3D4 2C 08 00 00 */ cmpwi r8, 0
/* 801CE778 001CA3D8 40 82 00 10 */ bne lbl_801CE788
/* 801CE77C 001CA3DC 80 0D 83 F0 */ lwz r0, lbl_8063D6B0-_SDA_BASE_(r13)
/* 801CE780 001CA3E0 90 0D 83 F4 */ stw r0, lbl_8063D6B4-_SDA_BASE_(r13)
/* 801CE784 001CA3E4 48 00 00 14 */ b lbl_801CE798
lbl_801CE788:
/* 801CE788 001CA3E8 38 87 00 01 */ addi r4, r7, 1
/* 801CE78C 001CA3EC 38 00 00 00 */ li r0, 0
/* 801CE790 001CA3F0 90 8D 83 F4 */ stw r4, lbl_8063D6B4-_SDA_BASE_(r13)
/* 801CE794 001CA3F4 98 07 00 00 */ stb r0, 0(r7)
lbl_801CE798:
/* 801CE798 001CA3F8 38 21 00 30 */ addi r1, r1, 0x30
/* 801CE79C 001CA3FC 4E 80 00 20 */ blr
.global strstr
strstr:
/* 801CE7A0 001CA400 2C 04 00 00 */ cmpwi r4, 0
/* 801CE7A4 001CA404 38 A3 FF FF */ addi r5, r3, -1
/* 801CE7A8 001CA408 4D 82 00 20 */ beqlr
/* 801CE7AC 001CA40C 88 C4 00 00 */ lbz r6, 0(r4)
/* 801CE7B0 001CA410 2C 06 00 00 */ cmpwi r6, 0
/* 801CE7B4 001CA414 40 82 00 44 */ bne lbl_801CE7F8
/* 801CE7B8 001CA418 4E 80 00 20 */ blr
/* 801CE7BC 001CA41C 48 00 00 3C */ b lbl_801CE7F8
lbl_801CE7C0:
/* 801CE7C0 001CA420 7C 00 30 40 */ cmplw r0, r6
/* 801CE7C4 001CA424 40 82 00 34 */ bne lbl_801CE7F8
/* 801CE7C8 001CA428 38 E5 FF FF */ addi r7, r5, -1
/* 801CE7CC 001CA42C 39 04 FF FF */ addi r8, r4, -1
lbl_801CE7D0:
/* 801CE7D0 001CA430 8C 07 00 01 */ lbzu r0, 1(r7)
/* 801CE7D4 001CA434 8C 68 00 01 */ lbzu r3, 1(r8)
/* 801CE7D8 001CA438 7C 00 18 40 */ cmplw r0, r3
/* 801CE7DC 001CA43C 40 82 00 0C */ bne lbl_801CE7E8
/* 801CE7E0 001CA440 2C 00 00 00 */ cmpwi r0, 0
/* 801CE7E4 001CA444 40 82 FF EC */ bne lbl_801CE7D0
lbl_801CE7E8:
/* 801CE7E8 001CA448 2C 03 00 00 */ cmpwi r3, 0
/* 801CE7EC 001CA44C 40 82 00 0C */ bne lbl_801CE7F8
/* 801CE7F0 001CA450 7C A3 2B 78 */ mr r3, r5
/* 801CE7F4 001CA454 4E 80 00 20 */ blr
lbl_801CE7F8:
/* 801CE7F8 001CA458 8C 05 00 01 */ lbzu r0, 1(r5)
/* 801CE7FC 001CA45C 2C 00 00 00 */ cmpwi r0, 0
/* 801CE800 001CA460 40 82 FF C0 */ bne lbl_801CE7C0
/* 801CE804 001CA464 38 60 00 00 */ li r3, 0
/* 801CE808 001CA468 4E 80 00 20 */ blr
|