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
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_8004E9F0
func_8004E9F0:
/* 8004E9F0 0004A650 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004E9F4 0004A654 7C 08 02 A6 */ mflr r0
/* 8004E9F8 0004A658 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004E9FC 0004A65C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004EA00 0004A660 7C 7F 1B 78 */ mr r31, r3
/* 8004EA04 0004A664 38 63 00 14 */ addi r3, r3, 0x14
/* 8004EA08 0004A668 48 00 21 2D */ bl func_80050B34
/* 8004EA0C 0004A66C C0 02 84 48 */ lfs f0, lbl_80640A48-_SDA2_BASE_(r2)
/* 8004EA10 0004A670 38 00 00 00 */ li r0, 0
/* 8004EA14 0004A674 90 1F 00 00 */ stw r0, 0(r31)
/* 8004EA18 0004A678 7F E3 FB 78 */ mr r3, r31
/* 8004EA1C 0004A67C D0 1F 00 04 */ stfs f0, 4(r31)
/* 8004EA20 0004A680 D0 1F 00 08 */ stfs f0, 8(r31)
/* 8004EA24 0004A684 D0 1F 00 0C */ stfs f0, 0xc(r31)
/* 8004EA28 0004A688 D0 1F 00 10 */ stfs f0, 0x10(r31)
/* 8004EA2C 0004A68C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004EA30 0004A690 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004EA34 0004A694 7C 08 03 A6 */ mtlr r0
/* 8004EA38 0004A698 38 21 00 10 */ addi r1, r1, 0x10
/* 8004EA3C 0004A69C 4E 80 00 20 */ blr
.global func_8004EA40
func_8004EA40:
/* 8004EA40 0004A6A0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004EA44 0004A6A4 7C 08 02 A6 */ mflr r0
/* 8004EA48 0004A6A8 2C 03 00 00 */ cmpwi r3, 0
/* 8004EA4C 0004A6AC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004EA50 0004A6B0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004EA54 0004A6B4 7C 9F 23 78 */ mr r31, r4
/* 8004EA58 0004A6B8 93 C1 00 08 */ stw r30, 8(r1)
/* 8004EA5C 0004A6BC 7C 7E 1B 78 */ mr r30, r3
/* 8004EA60 0004A6C0 41 82 00 18 */ beq lbl_8004EA78
/* 8004EA64 0004A6C4 48 00 00 31 */ bl func_8004EA94
/* 8004EA68 0004A6C8 2C 1F 00 00 */ cmpwi r31, 0
/* 8004EA6C 0004A6CC 40 81 00 0C */ ble lbl_8004EA78
/* 8004EA70 0004A6D0 7F C3 F3 78 */ mr r3, r30
/* 8004EA74 0004A6D4 48 18 C0 45 */ bl __dl__FPv
lbl_8004EA78:
/* 8004EA78 0004A6D8 7F C3 F3 78 */ mr r3, r30
/* 8004EA7C 0004A6DC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004EA80 0004A6E0 83 C1 00 08 */ lwz r30, 8(r1)
/* 8004EA84 0004A6E4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004EA88 0004A6E8 7C 08 03 A6 */ mtlr r0
/* 8004EA8C 0004A6EC 38 21 00 10 */ addi r1, r1, 0x10
/* 8004EA90 0004A6F0 4E 80 00 20 */ blr
.global func_8004EA94
func_8004EA94:
/* 8004EA94 0004A6F4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004EA98 0004A6F8 7C 08 02 A6 */ mflr r0
/* 8004EA9C 0004A6FC 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004EAA0 0004A700 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004EAA4 0004A704 7C 7F 1B 78 */ mr r31, r3
/* 8004EAA8 0004A708 80 03 00 00 */ lwz r0, 0(r3)
/* 8004EAAC 0004A70C 2C 00 00 00 */ cmpwi r0, 0
/* 8004EAB0 0004A710 41 82 00 14 */ beq lbl_8004EAC4
/* 8004EAB4 0004A714 7C 03 03 78 */ mr r3, r0
/* 8004EAB8 0004A718 48 19 1E 4D */ bl func_801E0904__11gUnkClass20Fv
/* 8004EABC 0004A71C 38 00 00 00 */ li r0, 0
/* 8004EAC0 0004A720 90 1F 00 00 */ stw r0, 0(r31)
lbl_8004EAC4:
/* 8004EAC4 0004A724 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004EAC8 0004A728 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004EACC 0004A72C 7C 08 03 A6 */ mtlr r0
/* 8004EAD0 0004A730 38 21 00 10 */ addi r1, r1, 0x10
/* 8004EAD4 0004A734 4E 80 00 20 */ blr
.global func_8004EAD8
func_8004EAD8:
/* 8004EAD8 0004A738 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004EADC 0004A73C 3C E0 43 30 */ lis r7, 0x4330
/* 8004EAE0 0004A740 88 04 00 00 */ lbz r0, 0(r4)
/* 8004EAE4 0004A744 88 C4 00 01 */ lbz r6, 1(r4)
/* 8004EAE8 0004A748 90 01 00 0C */ stw r0, 0xc(r1)
/* 8004EAEC 0004A74C C8 82 84 50 */ lfd f4, lbl_80640A50-_SDA2_BASE_(r2)
/* 8004EAF0 0004A750 90 E1 00 08 */ stw r7, 8(r1)
/* 8004EAF4 0004A754 88 64 00 02 */ lbz r3, 2(r4)
/* 8004EAF8 0004A758 C8 01 00 08 */ lfd f0, 8(r1)
/* 8004EAFC 0004A75C 90 E1 00 10 */ stw r7, 0x10(r1)
/* 8004EB00 0004A760 EC 60 20 28 */ fsubs f3, f0, f4
/* 8004EB04 0004A764 88 04 00 03 */ lbz r0, 3(r4)
/* 8004EB08 0004A768 90 C1 00 14 */ stw r6, 0x14(r1)
/* 8004EB0C 0004A76C C8 01 00 10 */ lfd f0, 0x10(r1)
/* 8004EB10 0004A770 90 61 00 0C */ stw r3, 0xc(r1)
/* 8004EB14 0004A774 EC 40 20 28 */ fsubs f2, f0, f4
/* 8004EB18 0004A778 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004EB1C 0004A77C C8 21 00 08 */ lfd f1, 8(r1)
/* 8004EB20 0004A780 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 8004EB24 0004A784 EC 21 20 28 */ fsubs f1, f1, f4
/* 8004EB28 0004A788 D0 65 00 00 */ stfs f3, 0(r5)
/* 8004EB2C 0004A78C EC 00 20 28 */ fsubs f0, f0, f4
/* 8004EB30 0004A790 D0 45 00 04 */ stfs f2, 4(r5)
/* 8004EB34 0004A794 D0 25 00 08 */ stfs f1, 8(r5)
/* 8004EB38 0004A798 D0 05 00 0C */ stfs f0, 0xc(r5)
/* 8004EB3C 0004A79C 38 21 00 20 */ addi r1, r1, 0x20
/* 8004EB40 0004A7A0 4E 80 00 20 */ blr
.global func_8004EB44
func_8004EB44:
/* 8004EB44 0004A7A4 C0 04 00 00 */ lfs f0, 0(r4)
/* 8004EB48 0004A7A8 C0 44 00 04 */ lfs f2, 4(r4)
/* 8004EB4C 0004A7AC C0 24 00 08 */ lfs f1, 8(r4)
/* 8004EB50 0004A7B0 FC 60 00 1E */ fctiwz f3, f0
/* 8004EB54 0004A7B4 C0 04 00 0C */ lfs f0, 0xc(r4)
/* 8004EB58 0004A7B8 FC 40 10 1E */ fctiwz f2, f2
/* 8004EB5C 0004A7BC FC 20 08 1E */ fctiwz f1, f1
/* 8004EB60 0004A7C0 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8004EB64 0004A7C4 FC 00 00 1E */ fctiwz f0, f0
/* 8004EB68 0004A7C8 D8 61 00 08 */ stfd f3, 8(r1)
/* 8004EB6C 0004A7CC D8 41 00 10 */ stfd f2, 0x10(r1)
/* 8004EB70 0004A7D0 80 C1 00 0C */ lwz r6, 0xc(r1)
/* 8004EB74 0004A7D4 D8 21 00 18 */ stfd f1, 0x18(r1)
/* 8004EB78 0004A7D8 80 81 00 14 */ lwz r4, 0x14(r1)
/* 8004EB7C 0004A7DC D8 01 00 20 */ stfd f0, 0x20(r1)
/* 8004EB80 0004A7E0 80 61 00 1C */ lwz r3, 0x1c(r1)
/* 8004EB84 0004A7E4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004EB88 0004A7E8 98 C5 00 00 */ stb r6, 0(r5)
/* 8004EB8C 0004A7EC 98 85 00 01 */ stb r4, 1(r5)
/* 8004EB90 0004A7F0 98 65 00 02 */ stb r3, 2(r5)
/* 8004EB94 0004A7F4 98 05 00 03 */ stb r0, 3(r5)
/* 8004EB98 0004A7F8 38 21 00 30 */ addi r1, r1, 0x30
/* 8004EB9C 0004A7FC 4E 80 00 20 */ blr
.global func_8004EBA0
func_8004EBA0:
/* 8004EBA0 0004A800 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004EBA4 0004A804 7C 08 02 A6 */ mflr r0
/* 8004EBA8 0004A808 38 A3 00 04 */ addi r5, r3, 4
/* 8004EBAC 0004A80C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004EBB0 0004A810 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004EBB4 0004A814 7C 9F 23 78 */ mr r31, r4
/* 8004EBB8 0004A818 93 C1 00 08 */ stw r30, 8(r1)
/* 8004EBBC 0004A81C 7C 7E 1B 78 */ mr r30, r3
/* 8004EBC0 0004A820 4B FF FF 19 */ bl func_8004EAD8
/* 8004EBC4 0004A824 80 7E 00 00 */ lwz r3, 0(r30)
/* 8004EBC8 0004A828 2C 03 00 00 */ cmpwi r3, 0
/* 8004EBCC 0004A82C 40 82 00 20 */ bne lbl_8004EBEC
/* 8004EBD0 0004A830 7F E3 FB 78 */ mr r3, r31
/* 8004EBD4 0004A834 38 80 00 00 */ li r4, 0
/* 8004EBD8 0004A838 38 A0 00 00 */ li r5, 0
/* 8004EBDC 0004A83C 38 C0 00 00 */ li r6, 0
/* 8004EBE0 0004A840 48 19 1C 31 */ bl func_801E0810__11gUnkClass20FUlUcUc
/* 8004EBE4 0004A844 90 7E 00 00 */ stw r3, 0(r30)
/* 8004EBE8 0004A848 48 00 00 0C */ b lbl_8004EBF4
lbl_8004EBEC:
/* 8004EBEC 0004A84C 7F E4 FB 78 */ mr r4, r31
/* 8004EBF0 0004A850 48 19 1D ED */ bl func_801E09DC__11gUnkClass20CFP11gUnkClass21
lbl_8004EBF4:
/* 8004EBF4 0004A854 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004EBF8 0004A858 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004EBFC 0004A85C 83 C1 00 08 */ lwz r30, 8(r1)
/* 8004EC00 0004A860 7C 08 03 A6 */ mtlr r0
/* 8004EC04 0004A864 38 21 00 10 */ addi r1, r1, 0x10
/* 8004EC08 0004A868 4E 80 00 20 */ blr
.global func_8004EC0C
func_8004EC0C:
/* 8004EC0C 0004A86C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8004EC10 0004A870 7C 08 02 A6 */ mflr r0
/* 8004EC14 0004A874 90 01 00 44 */ stw r0, 0x44(r1)
/* 8004EC18 0004A878 DB E1 00 38 */ stfd f31, 0x38(r1)
/* 8004EC1C 0004A87C FF E0 08 90 */ fmr f31, f1
/* 8004EC20 0004A880 93 E1 00 34 */ stw r31, 0x34(r1)
/* 8004EC24 0004A884 7C BF 2B 78 */ mr r31, r5
/* 8004EC28 0004A888 93 C1 00 30 */ stw r30, 0x30(r1)
/* 8004EC2C 0004A88C 7C 9E 23 78 */ mr r30, r4
/* 8004EC30 0004A890 93 A1 00 2C */ stw r29, 0x2c(r1)
/* 8004EC34 0004A894 7C 7D 1B 78 */ mr r29, r3
/* 8004EC38 0004A898 80 03 00 00 */ lwz r0, 0(r3)
/* 8004EC3C 0004A89C 2C 00 00 00 */ cmpwi r0, 0
/* 8004EC40 0004A8A0 40 82 00 30 */ bne lbl_8004EC70
/* 8004EC44 0004A8A4 38 00 00 00 */ li r0, 0
/* 8004EC48 0004A8A8 38 61 00 08 */ addi r3, r1, 8
/* 8004EC4C 0004A8AC 98 01 00 08 */ stb r0, 8(r1)
/* 8004EC50 0004A8B0 38 80 00 00 */ li r4, 0
/* 8004EC54 0004A8B4 38 A0 00 00 */ li r5, 0
/* 8004EC58 0004A8B8 38 C0 00 00 */ li r6, 0
/* 8004EC5C 0004A8BC 98 01 00 09 */ stb r0, 9(r1)
/* 8004EC60 0004A8C0 98 01 00 0A */ stb r0, 0xa(r1)
/* 8004EC64 0004A8C4 98 01 00 0B */ stb r0, 0xb(r1)
/* 8004EC68 0004A8C8 48 19 1B A9 */ bl func_801E0810__11gUnkClass20FUlUcUc
/* 8004EC6C 0004A8CC 90 7D 00 00 */ stw r3, 0(r29)
lbl_8004EC70:
/* 8004EC70 0004A8D0 80 7D 00 00 */ lwz r3, 0(r29)
/* 8004EC74 0004A8D4 38 81 00 08 */ addi r4, r1, 8
/* 8004EC78 0004A8D8 48 19 1D 01 */ bl func_801E0978__11gUnkClass20CFP11gUnkClass21
/* 8004EC7C 0004A8DC 7F A3 EB 78 */ mr r3, r29
/* 8004EC80 0004A8E0 7F C4 F3 78 */ mr r4, r30
/* 8004EC84 0004A8E4 38 A1 00 10 */ addi r5, r1, 0x10
/* 8004EC88 0004A8E8 4B FF FE 51 */ bl func_8004EAD8
/* 8004EC8C 0004A8EC 7F A3 EB 78 */ mr r3, r29
/* 8004EC90 0004A8F0 38 81 00 08 */ addi r4, r1, 8
/* 8004EC94 0004A8F4 38 BD 00 04 */ addi r5, r29, 4
/* 8004EC98 0004A8F8 4B FF FE 41 */ bl func_8004EAD8
/* 8004EC9C 0004A8FC FC 20 F8 90 */ fmr f1, f31
/* 8004ECA0 0004A900 38 9D 00 04 */ addi r4, r29, 4
/* 8004ECA4 0004A904 7C 86 23 78 */ mr r6, r4
/* 8004ECA8 0004A908 7F E7 FB 78 */ mr r7, r31
/* 8004ECAC 0004A90C 38 7D 00 14 */ addi r3, r29, 0x14
/* 8004ECB0 0004A910 38 A1 00 10 */ addi r5, r1, 0x10
/* 8004ECB4 0004A914 48 00 1E 99 */ bl func_80050B4C
/* 8004ECB8 0004A918 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8004ECBC 0004A91C CB E1 00 38 */ lfd f31, 0x38(r1)
/* 8004ECC0 0004A920 83 E1 00 34 */ lwz r31, 0x34(r1)
/* 8004ECC4 0004A924 83 C1 00 30 */ lwz r30, 0x30(r1)
/* 8004ECC8 0004A928 83 A1 00 2C */ lwz r29, 0x2c(r1)
/* 8004ECCC 0004A92C 7C 08 03 A6 */ mtlr r0
/* 8004ECD0 0004A930 38 21 00 40 */ addi r1, r1, 0x40
/* 8004ECD4 0004A934 4E 80 00 20 */ blr
.global func_8004ECD8
func_8004ECD8:
/* 8004ECD8 0004A938 38 63 00 14 */ addi r3, r3, 0x14
/* 8004ECDC 0004A93C 48 00 1F 04 */ b func_80050BE0
.global func_8004ECE0
func_8004ECE0:
/* 8004ECE0 0004A940 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004ECE4 0004A944 7C 08 02 A6 */ mflr r0
/* 8004ECE8 0004A948 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004ECEC 0004A94C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8004ECF0 0004A950 7C 7F 1B 78 */ mr r31, r3
/* 8004ECF4 0004A954 80 03 00 00 */ lwz r0, 0(r3)
/* 8004ECF8 0004A958 2C 00 00 00 */ cmpwi r0, 0
/* 8004ECFC 0004A95C 41 82 00 3C */ beq lbl_8004ED38
/* 8004ED00 0004A960 81 83 00 4C */ lwz r12, 0x4c(r3)
/* 8004ED04 0004A964 81 8C 00 08 */ lwz r12, 8(r12)
/* 8004ED08 0004A968 7D 89 03 A6 */ mtctr r12
/* 8004ED0C 0004A96C 38 63 00 14 */ addi r3, r3, 0x14
/* 8004ED10 0004A970 4E 80 04 21 */ bctrl
/* 8004ED14 0004A974 2C 03 00 00 */ cmpwi r3, 0
/* 8004ED18 0004A978 41 82 00 20 */ beq lbl_8004ED38
/* 8004ED1C 0004A97C 7F E3 FB 78 */ mr r3, r31
/* 8004ED20 0004A980 38 9F 00 04 */ addi r4, r31, 4
/* 8004ED24 0004A984 38 A1 00 08 */ addi r5, r1, 8
/* 8004ED28 0004A988 4B FF FE 1D */ bl func_8004EB44
/* 8004ED2C 0004A98C 80 7F 00 00 */ lwz r3, 0(r31)
/* 8004ED30 0004A990 38 81 00 08 */ addi r4, r1, 8
/* 8004ED34 0004A994 48 19 1C A9 */ bl func_801E09DC__11gUnkClass20CFP11gUnkClass21
lbl_8004ED38:
/* 8004ED38 0004A998 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004ED3C 0004A99C 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8004ED40 0004A9A0 7C 08 03 A6 */ mtlr r0
/* 8004ED44 0004A9A4 38 21 00 20 */ addi r1, r1, 0x20
/* 8004ED48 0004A9A8 4E 80 00 20 */ blr
lbl_8004ED4C:
/* 8004ED4C 0004A9AC 38 00 00 00 */ li r0, 0
/* 8004ED50 0004A9B0 90 03 00 04 */ stw r0, 4(r3)
/* 8004ED54 0004A9B4 98 03 00 00 */ stb r0, 0(r3)
/* 8004ED58 0004A9B8 4E 80 00 20 */ blr
.global lbl_8004ED5C
lbl_8004ED5C:
/* 8004ED5C 0004A9BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004ED60 0004A9C0 7C 08 02 A6 */ mflr r0
/* 8004ED64 0004A9C4 2C 03 00 00 */ cmpwi r3, 0
/* 8004ED68 0004A9C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004ED6C 0004A9CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004ED70 0004A9D0 7C 9F 23 78 */ mr r31, r4
/* 8004ED74 0004A9D4 93 C1 00 08 */ stw r30, 8(r1)
/* 8004ED78 0004A9D8 7C 7E 1B 78 */ mr r30, r3
/* 8004ED7C 0004A9DC 41 82 00 18 */ beq lbl_8004ED94
/* 8004ED80 0004A9E0 48 00 00 31 */ bl func_8004EDB0
/* 8004ED84 0004A9E4 2C 1F 00 00 */ cmpwi r31, 0
/* 8004ED88 0004A9E8 40 81 00 0C */ ble lbl_8004ED94
/* 8004ED8C 0004A9EC 7F C3 F3 78 */ mr r3, r30
/* 8004ED90 0004A9F0 48 18 BD 29 */ bl __dl__FPv
lbl_8004ED94:
/* 8004ED94 0004A9F4 7F C3 F3 78 */ mr r3, r30
/* 8004ED98 0004A9F8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004ED9C 0004A9FC 83 C1 00 08 */ lwz r30, 8(r1)
/* 8004EDA0 0004AA00 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004EDA4 0004AA04 7C 08 03 A6 */ mtlr r0
/* 8004EDA8 0004AA08 38 21 00 10 */ addi r1, r1, 0x10
/* 8004EDAC 0004AA0C 4E 80 00 20 */ blr
.global func_8004EDB0
func_8004EDB0:
/* 8004EDB0 0004AA10 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004EDB4 0004AA14 7C 08 02 A6 */ mflr r0
/* 8004EDB8 0004AA18 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004EDBC 0004AA1C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8004EDC0 0004AA20 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8004EDC4 0004AA24 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8004EDC8 0004AA28 7C 7D 1B 78 */ mr r29, r3
/* 8004EDCC 0004AA2C 83 C3 00 04 */ lwz r30, 4(r3)
/* 8004EDD0 0004AA30 2C 1E 00 00 */ cmpwi r30, 0
/* 8004EDD4 0004AA34 41 82 00 70 */ beq lbl_8004EE44
/* 8004EDD8 0004AA38 88 1E 00 08 */ lbz r0, 8(r30)
/* 8004EDDC 0004AA3C 2C 00 00 00 */ cmpwi r0, 0
/* 8004EDE0 0004AA40 41 82 00 3C */ beq lbl_8004EE1C
/* 8004EDE4 0004AA44 83 FE 00 04 */ lwz r31, 4(r30)
/* 8004EDE8 0004AA48 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004EDEC 0004AA4C 48 1E C2 6D */ bl func_8023B058
/* 8004EDF0 0004AA50 2C 03 00 00 */ cmpwi r3, 0
/* 8004EDF4 0004AA54 41 82 00 0C */ beq lbl_8004EE00
/* 8004EDF8 0004AA58 7F E4 FB 78 */ mr r4, r31
/* 8004EDFC 0004AA5C 48 1E C6 25 */ bl func_8023B420
lbl_8004EE00:
/* 8004EE00 0004AA60 81 9E 00 0C */ lwz r12, 0xc(r30)
/* 8004EE04 0004AA64 7F C3 F3 78 */ mr r3, r30
/* 8004EE08 0004AA68 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8004EE0C 0004AA6C 7D 89 03 A6 */ mtctr r12
/* 8004EE10 0004AA70 4E 80 04 21 */ bctrl
/* 8004EE14 0004AA74 38 00 00 00 */ li r0, 0
/* 8004EE18 0004AA78 98 1E 00 08 */ stb r0, 8(r30)
lbl_8004EE1C:
/* 8004EE1C 0004AA7C 80 7D 00 04 */ lwz r3, 4(r29)
/* 8004EE20 0004AA80 2C 03 00 00 */ cmpwi r3, 0
/* 8004EE24 0004AA84 41 82 00 18 */ beq lbl_8004EE3C
/* 8004EE28 0004AA88 81 83 00 0C */ lwz r12, 0xc(r3)
/* 8004EE2C 0004AA8C 38 80 00 01 */ li r4, 1
/* 8004EE30 0004AA90 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 8004EE34 0004AA94 7D 89 03 A6 */ mtctr r12
/* 8004EE38 0004AA98 4E 80 04 21 */ bctrl
lbl_8004EE3C:
/* 8004EE3C 0004AA9C 38 00 00 00 */ li r0, 0
/* 8004EE40 0004AAA0 90 1D 00 04 */ stw r0, 4(r29)
lbl_8004EE44:
/* 8004EE44 0004AAA4 38 00 00 00 */ li r0, 0
/* 8004EE48 0004AAA8 98 1D 00 00 */ stb r0, 0(r29)
/* 8004EE4C 0004AAAC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8004EE50 0004AAB0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8004EE54 0004AAB4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8004EE58 0004AAB8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004EE5C 0004AABC 7C 08 03 A6 */ mtlr r0
/* 8004EE60 0004AAC0 38 21 00 20 */ addi r1, r1, 0x20
/* 8004EE64 0004AAC4 4E 80 00 20 */ blr
.global func_8004EE68
func_8004EE68:
/* 8004EE68 0004AAC8 88 63 00 00 */ lbz r3, 0(r3)
/* 8004EE6C 0004AACC 4E 80 00 20 */ blr
.global func_8004EE70
func_8004EE70:
/* 8004EE70 0004AAD0 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8004EE74 0004AAD4 7C 08 02 A6 */ mflr r0
/* 8004EE78 0004AAD8 90 01 00 44 */ stw r0, 0x44(r1)
/* 8004EE7C 0004AADC DB E1 00 30 */ stfd f31, 0x30(r1)
/* 8004EE80 0004AAE0 F3 E1 00 38 */ psq_st f31, 56(r1), 0, qr0
/* 8004EE84 0004AAE4 FF E0 08 90 */ fmr f31, f1
/* 8004EE88 0004AAE8 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 8004EE8C 0004AAEC 93 C1 00 28 */ stw r30, 0x28(r1)
/* 8004EE90 0004AAF0 7C FE 3B 78 */ mr r30, r7
/* 8004EE94 0004AAF4 93 A1 00 24 */ stw r29, 0x24(r1)
/* 8004EE98 0004AAF8 7C DD 33 78 */ mr r29, r6
/* 8004EE9C 0004AAFC 93 81 00 20 */ stw r28, 0x20(r1)
/* 8004EEA0 0004AB00 7C 7C 1B 78 */ mr r28, r3
/* 8004EEA4 0004AB04 7C 83 23 78 */ mr r3, r4
/* 8004EEA8 0004AB08 7C A4 2B 78 */ mr r4, r5
/* 8004EEAC 0004AB0C 48 18 C6 11 */ bl func_801DB4BC
/* 8004EEB0 0004AB10 2C 03 00 00 */ cmpwi r3, 0
/* 8004EEB4 0004AB14 7C 7F 1B 78 */ mr r31, r3
/* 8004EEB8 0004AB18 40 82 00 0C */ bne lbl_8004EEC4
/* 8004EEBC 0004AB1C 38 60 00 00 */ li r3, 0
/* 8004EEC0 0004AB20 48 00 00 FC */ b lbl_8004EFBC
lbl_8004EEC4:
/* 8004EEC4 0004AB24 7F 83 E3 78 */ mr r3, r28
/* 8004EEC8 0004AB28 4B FF FE E9 */ bl func_8004EDB0
/* 8004EECC 0004AB2C 48 18 BC 5D */ bl func_801DAB28
/* 8004EED0 0004AB30 2C 03 00 00 */ cmpwi r3, 0
/* 8004EED4 0004AB34 41 82 00 14 */ beq lbl_8004EEE8
/* 8004EED8 0004AB38 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004EEDC 0004AB3C 38 80 00 78 */ li r4, 0x78
/* 8004EEE0 0004AB40 48 18 BD B5 */ bl func_801DAC94
/* 8004EEE4 0004AB44 48 00 00 08 */ b lbl_8004EEEC
lbl_8004EEE8:
/* 8004EEE8 0004AB48 38 60 00 00 */ li r3, 0
lbl_8004EEEC:
/* 8004EEEC 0004AB4C 2C 03 00 00 */ cmpwi r3, 0
/* 8004EEF0 0004AB50 41 82 00 0C */ beq lbl_8004EEFC
/* 8004EEF4 0004AB54 7F E4 FB 78 */ mr r4, r31
/* 8004EEF8 0004AB58 48 1D 0C 4D */ bl func_8021FB44
lbl_8004EEFC:
/* 8004EEFC 0004AB5C 2C 03 00 00 */ cmpwi r3, 0
/* 8004EF00 0004AB60 90 7C 00 04 */ stw r3, 4(r28)
/* 8004EF04 0004AB64 40 82 00 0C */ bne lbl_8004EF10
/* 8004EF08 0004AB68 38 60 00 00 */ li r3, 0
/* 8004EF0C 0004AB6C 48 00 00 B0 */ b lbl_8004EFBC
lbl_8004EF10:
/* 8004EF10 0004AB70 C0 1D 00 00 */ lfs f0, 0(r29)
/* 8004EF14 0004AB74 38 81 00 08 */ addi r4, r1, 8
/* 8004EF18 0004AB78 C0 3D 00 04 */ lfs f1, 4(r29)
/* 8004EF1C 0004AB7C D0 03 00 14 */ stfs f0, 0x14(r3)
/* 8004EF20 0004AB80 C0 1D 00 08 */ lfs f0, 8(r29)
/* 8004EF24 0004AB84 D0 23 00 18 */ stfs f1, 0x18(r3)
/* 8004EF28 0004AB88 C0 22 84 58 */ lfs f1, lbl_80640A58-_SDA2_BASE_(r2)
/* 8004EF2C 0004AB8C D0 03 00 1C */ stfs f0, 0x1c(r3)
/* 8004EF30 0004AB90 C0 02 84 5C */ lfs f0, lbl_80640A5C-_SDA2_BASE_(r2)
/* 8004EF34 0004AB94 D0 21 00 08 */ stfs f1, 8(r1)
/* 8004EF38 0004AB98 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 8004EF3C 0004AB9C D0 21 00 10 */ stfs f1, 0x10(r1)
/* 8004EF40 0004ABA0 80 7C 00 04 */ lwz r3, 4(r28)
/* 8004EF44 0004ABA4 48 1D 15 C1 */ bl func_80220504
/* 8004EF48 0004ABA8 C0 02 84 58 */ lfs f0, lbl_80640A58-_SDA2_BASE_(r2)
/* 8004EF4C 0004ABAC 80 7C 00 04 */ lwz r3, 4(r28)
/* 8004EF50 0004ABB0 C0 3E 00 00 */ lfs f1, 0(r30)
/* 8004EF54 0004ABB4 D0 03 00 44 */ stfs f0, 0x44(r3)
/* 8004EF58 0004ABB8 C0 1E 00 04 */ lfs f0, 4(r30)
/* 8004EF5C 0004ABBC 80 7C 00 04 */ lwz r3, 4(r28)
/* 8004EF60 0004ABC0 D0 23 00 48 */ stfs f1, 0x48(r3)
/* 8004EF64 0004ABC4 D0 03 00 4C */ stfs f0, 0x4c(r3)
/* 8004EF68 0004ABC8 80 7C 00 04 */ lwz r3, 4(r28)
/* 8004EF6C 0004ABCC D3 E3 00 74 */ stfs f31, 0x74(r3)
/* 8004EF70 0004ABD0 83 FC 00 04 */ lwz r31, 4(r28)
/* 8004EF74 0004ABD4 81 9F 00 0C */ lwz r12, 0xc(r31)
/* 8004EF78 0004ABD8 7F E3 FB 78 */ mr r3, r31
/* 8004EF7C 0004ABDC 81 8C 00 08 */ lwz r12, 8(r12)
/* 8004EF80 0004ABE0 7D 89 03 A6 */ mtctr r12
/* 8004EF84 0004ABE4 4E 80 04 21 */ bctrl
/* 8004EF88 0004ABE8 54 60 06 3F */ clrlwi. r0, r3, 0x18
/* 8004EF8C 0004ABEC 98 7F 00 08 */ stb r3, 8(r31)
/* 8004EF90 0004ABF0 41 82 00 20 */ beq lbl_8004EFB0
/* 8004EF94 0004ABF4 83 FF 00 04 */ lwz r31, 4(r31)
/* 8004EF98 0004ABF8 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004EF9C 0004ABFC 48 1E C0 BD */ bl func_8023B058
/* 8004EFA0 0004AC00 2C 03 00 00 */ cmpwi r3, 0
/* 8004EFA4 0004AC04 41 82 00 0C */ beq lbl_8004EFB0
/* 8004EFA8 0004AC08 7F E4 FB 78 */ mr r4, r31
/* 8004EFAC 0004AC0C 48 1E C4 0D */ bl func_8023B3B8
lbl_8004EFB0:
/* 8004EFB0 0004AC10 38 00 00 01 */ li r0, 1
/* 8004EFB4 0004AC14 38 60 00 01 */ li r3, 1
/* 8004EFB8 0004AC18 98 1C 00 00 */ stb r0, 0(r28)
lbl_8004EFBC:
/* 8004EFBC 0004AC1C E3 E1 00 38 */ psq_l f31, 56(r1), 0, qr0
/* 8004EFC0 0004AC20 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8004EFC4 0004AC24 CB E1 00 30 */ lfd f31, 0x30(r1)
/* 8004EFC8 0004AC28 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 8004EFCC 0004AC2C 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 8004EFD0 0004AC30 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 8004EFD4 0004AC34 83 81 00 20 */ lwz r28, 0x20(r1)
/* 8004EFD8 0004AC38 7C 08 03 A6 */ mtlr r0
/* 8004EFDC 0004AC3C 38 21 00 40 */ addi r1, r1, 0x40
/* 8004EFE0 0004AC40 4E 80 00 20 */ blr
.global func_8004EFE4
func_8004EFE4:
/* 8004EFE4 0004AC44 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004EFE8 0004AC48 7C 08 02 A6 */ mflr r0
/* 8004EFEC 0004AC4C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004EFF0 0004AC50 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8004EFF4 0004AC54 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8004EFF8 0004AC58 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8004EFFC 0004AC5C 7C 7D 1B 78 */ mr r29, r3
/* 8004F000 0004AC60 4B FF FE 69 */ bl func_8004EE68
/* 8004F004 0004AC64 2C 03 00 00 */ cmpwi r3, 0
/* 8004F008 0004AC68 41 82 00 98 */ beq lbl_8004F0A0
/* 8004F00C 0004AC6C 83 DD 00 04 */ lwz r30, 4(r29)
/* 8004F010 0004AC70 C0 02 84 58 */ lfs f0, lbl_80640A58-_SDA2_BASE_(r2)
/* 8004F014 0004AC74 C0 3E 00 70 */ lfs f1, 0x70(r30)
/* 8004F018 0004AC78 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8004F01C 0004AC7C 4C 40 13 82 */ cror 2, 0, 2
/* 8004F020 0004AC80 40 82 00 80 */ bne lbl_8004F0A0
/* 8004F024 0004AC84 38 00 00 00 */ li r0, 0
/* 8004F028 0004AC88 2C 1E 00 00 */ cmpwi r30, 0
/* 8004F02C 0004AC8C 98 1D 00 00 */ stb r0, 0(r29)
/* 8004F030 0004AC90 41 82 00 70 */ beq lbl_8004F0A0
/* 8004F034 0004AC94 88 1E 00 08 */ lbz r0, 8(r30)
/* 8004F038 0004AC98 2C 00 00 00 */ cmpwi r0, 0
/* 8004F03C 0004AC9C 41 82 00 3C */ beq lbl_8004F078
/* 8004F040 0004ACA0 83 FE 00 04 */ lwz r31, 4(r30)
/* 8004F044 0004ACA4 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8004F048 0004ACA8 48 1E C0 11 */ bl func_8023B058
/* 8004F04C 0004ACAC 2C 03 00 00 */ cmpwi r3, 0
/* 8004F050 0004ACB0 41 82 00 0C */ beq lbl_8004F05C
/* 8004F054 0004ACB4 7F E4 FB 78 */ mr r4, r31
/* 8004F058 0004ACB8 48 1E C3 C9 */ bl func_8023B420
lbl_8004F05C:
/* 8004F05C 0004ACBC 81 9E 00 0C */ lwz r12, 0xc(r30)
/* 8004F060 0004ACC0 7F C3 F3 78 */ mr r3, r30
/* 8004F064 0004ACC4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8004F068 0004ACC8 7D 89 03 A6 */ mtctr r12
/* 8004F06C 0004ACCC 4E 80 04 21 */ bctrl
/* 8004F070 0004ACD0 38 00 00 00 */ li r0, 0
/* 8004F074 0004ACD4 98 1E 00 08 */ stb r0, 8(r30)
lbl_8004F078:
/* 8004F078 0004ACD8 80 7D 00 04 */ lwz r3, 4(r29)
/* 8004F07C 0004ACDC 2C 03 00 00 */ cmpwi r3, 0
/* 8004F080 0004ACE0 41 82 00 18 */ beq lbl_8004F098
/* 8004F084 0004ACE4 81 83 00 0C */ lwz r12, 0xc(r3)
/* 8004F088 0004ACE8 38 80 00 01 */ li r4, 1
/* 8004F08C 0004ACEC 81 8C 00 18 */ lwz r12, 0x18(r12)
/* 8004F090 0004ACF0 7D 89 03 A6 */ mtctr r12
/* 8004F094 0004ACF4 4E 80 04 21 */ bctrl
lbl_8004F098:
/* 8004F098 0004ACF8 38 00 00 00 */ li r0, 0
/* 8004F09C 0004ACFC 90 1D 00 04 */ stw r0, 4(r29)
lbl_8004F0A0:
/* 8004F0A0 0004AD00 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004F0A4 0004AD04 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8004F0A8 0004AD08 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8004F0AC 0004AD0C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8004F0B0 0004AD10 7C 08 03 A6 */ mtlr r0
/* 8004F0B4 0004AD14 38 21 00 20 */ addi r1, r1, 0x20
/* 8004F0B8 0004AD18 4E 80 00 20 */ blr
.global func_8004F0BC
func_8004F0BC:
/* 8004F0BC 0004AD1C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004F0C0 0004AD20 7C 08 02 A6 */ mflr r0
/* 8004F0C4 0004AD24 3C 80 80 05 */ lis r4, lbl_8004ED4C@ha
/* 8004F0C8 0004AD28 3C A0 80 05 */ lis r5, lbl_8004ED5C@ha
/* 8004F0CC 0004AD2C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004F0D0 0004AD30 38 C0 00 08 */ li r6, 8
/* 8004F0D4 0004AD34 38 84 ED 4C */ addi r4, r4, lbl_8004ED4C@l
/* 8004F0D8 0004AD38 38 A5 ED 5C */ addi r5, r5, lbl_8004ED5C@l
/* 8004F0DC 0004AD3C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004F0E0 0004AD40 7C 7F 1B 78 */ mr r31, r3
/* 8004F0E4 0004AD44 38 E0 00 20 */ li r7, 0x20
/* 8004F0E8 0004AD48 48 17 7D 81 */ bl __construct_array
/* 8004F0EC 0004AD4C 38 7F 01 00 */ addi r3, r31, 0x100
/* 8004F0F0 0004AD50 38 80 00 00 */ li r4, 0
/* 8004F0F4 0004AD54 38 A0 00 80 */ li r5, 0x80
/* 8004F0F8 0004AD58 4B FB 50 0D */ bl memset
/* 8004F0FC 0004AD5C 7F E3 FB 78 */ mr r3, r31
/* 8004F100 0004AD60 38 80 00 00 */ li r4, 0
/* 8004F104 0004AD64 38 A0 01 00 */ li r5, 0x100
/* 8004F108 0004AD68 4B FB 4F FD */ bl memset
/* 8004F10C 0004AD6C C0 02 84 60 */ lfs f0, lbl_80640A60-_SDA2_BASE_(r2)
/* 8004F110 0004AD70 7F E3 FB 78 */ mr r3, r31
/* 8004F114 0004AD74 D0 1F 01 80 */ stfs f0, 0x180(r31)
/* 8004F118 0004AD78 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004F11C 0004AD7C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004F120 0004AD80 7C 08 03 A6 */ mtlr r0
/* 8004F124 0004AD84 38 21 00 10 */ addi r1, r1, 0x10
/* 8004F128 0004AD88 4E 80 00 20 */ blr
.global func_8004F12C
func_8004F12C:
/* 8004F12C 0004AD8C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004F130 0004AD90 7C 08 02 A6 */ mflr r0
/* 8004F134 0004AD94 38 80 00 00 */ li r4, 0
/* 8004F138 0004AD98 38 A0 00 80 */ li r5, 0x80
/* 8004F13C 0004AD9C 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004F140 0004ADA0 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004F144 0004ADA4 7C 7F 1B 78 */ mr r31, r3
/* 8004F148 0004ADA8 38 63 01 00 */ addi r3, r3, 0x100
/* 8004F14C 0004ADAC 4B FB 4F B9 */ bl memset
/* 8004F150 0004ADB0 7F E3 FB 78 */ mr r3, r31
/* 8004F154 0004ADB4 38 80 00 00 */ li r4, 0
/* 8004F158 0004ADB8 38 A0 01 00 */ li r5, 0x100
/* 8004F15C 0004ADBC 4B FB 4F A9 */ bl memset
/* 8004F160 0004ADC0 C0 02 84 60 */ lfs f0, lbl_80640A60-_SDA2_BASE_(r2)
/* 8004F164 0004ADC4 3C A0 11 9C */ lis r5, 0x119C0C00@ha
/* 8004F168 0004ADC8 7F E3 FB 78 */ mr r3, r31
/* 8004F16C 0004ADCC 38 80 00 0C */ li r4, 0xc
/* 8004F170 0004ADD0 D0 1F 01 80 */ stfs f0, 0x180(r31)
/* 8004F174 0004ADD4 38 A5 0C 00 */ addi r5, r5, 0x119C0C00@l
/* 8004F178 0004ADD8 48 00 00 19 */ bl func_8004F190
/* 8004F17C 0004ADDC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004F180 0004ADE0 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004F184 0004ADE4 7C 08 03 A6 */ mtlr r0
/* 8004F188 0004ADE8 38 21 00 10 */ addi r1, r1, 0x10
/* 8004F18C 0004ADEC 4E 80 00 20 */ blr
.global func_8004F190
func_8004F190:
/* 8004F190 0004ADF0 38 00 00 10 */ li r0, 0x10
/* 8004F194 0004ADF4 7C 66 1B 78 */ mr r6, r3
/* 8004F198 0004ADF8 38 E0 00 00 */ li r7, 0
/* 8004F19C 0004ADFC 7C 09 03 A6 */ mtctr r0
lbl_8004F1A0:
/* 8004F1A0 0004AE00 80 06 01 00 */ lwz r0, 0x100(r6)
/* 8004F1A4 0004AE04 2C 00 00 00 */ cmpwi r0, 0
/* 8004F1A8 0004AE08 40 82 00 1C */ bne lbl_8004F1C4
/* 8004F1AC 0004AE0C 54 E0 18 38 */ slwi r0, r7, 3
/* 8004F1B0 0004AE10 7C C3 02 14 */ add r6, r3, r0
/* 8004F1B4 0004AE14 38 67 00 01 */ addi r3, r7, 1
/* 8004F1B8 0004AE18 90 86 01 00 */ stw r4, 0x100(r6)
/* 8004F1BC 0004AE1C 90 A6 01 04 */ stw r5, 0x104(r6)
/* 8004F1C0 0004AE20 4E 80 00 20 */ blr
lbl_8004F1C4:
/* 8004F1C4 0004AE24 38 C6 00 08 */ addi r6, r6, 8
/* 8004F1C8 0004AE28 38 E7 00 01 */ addi r7, r7, 1
/* 8004F1CC 0004AE2C 42 00 FF D4 */ bdnz lbl_8004F1A0
/* 8004F1D0 0004AE30 38 60 00 00 */ li r3, 0
/* 8004F1D4 0004AE34 4E 80 00 20 */ blr
.global func_8004F1D8
func_8004F1D8:
/* 8004F1D8 0004AE38 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004F1DC 0004AE3C 7C 08 02 A6 */ mflr r0
/* 8004F1E0 0004AE40 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004F1E4 0004AE44 39 61 00 20 */ addi r11, r1, 0x20
/* 8004F1E8 0004AE48 48 17 7F 3D */ bl _savegpr_26
/* 8004F1EC 0004AE4C 2C 04 00 00 */ cmpwi r4, 0
/* 8004F1F0 0004AE50 7C 7A 1B 78 */ mr r26, r3
/* 8004F1F4 0004AE54 7C BB 2B 78 */ mr r27, r5
/* 8004F1F8 0004AE58 7C DC 33 78 */ mr r28, r6
/* 8004F1FC 0004AE5C 41 82 00 14 */ beq lbl_8004F210
/* 8004F200 0004AE60 28 04 00 0F */ cmplwi r4, 0xf
/* 8004F204 0004AE64 41 80 00 0C */ blt lbl_8004F210
/* 8004F208 0004AE68 38 60 00 00 */ li r3, 0
/* 8004F20C 0004AE6C 48 00 00 80 */ b lbl_8004F28C
lbl_8004F210:
/* 8004F210 0004AE70 38 04 FF FF */ addi r0, r4, -1
/* 8004F214 0004AE74 54 00 18 38 */ slwi r0, r0, 3
/* 8004F218 0004AE78 7F E3 02 14 */ add r31, r3, r0
/* 8004F21C 0004AE7C 80 7F 01 00 */ lwz r3, 0x100(r31)
/* 8004F220 0004AE80 80 9F 01 04 */ lwz r4, 0x104(r31)
/* 8004F224 0004AE84 48 18 C2 99 */ bl func_801DB4BC
/* 8004F228 0004AE88 2C 03 00 00 */ cmpwi r3, 0
/* 8004F22C 0004AE8C 40 82 00 0C */ bne lbl_8004F238
/* 8004F230 0004AE90 38 60 00 00 */ li r3, 0
/* 8004F234 0004AE94 48 00 00 58 */ b lbl_8004F28C
lbl_8004F238:
/* 8004F238 0004AE98 7F 5E D3 78 */ mr r30, r26
/* 8004F23C 0004AE9C 3B A0 00 00 */ li r29, 0
lbl_8004F240:
/* 8004F240 0004AEA0 7F C3 F3 78 */ mr r3, r30
/* 8004F244 0004AEA4 4B FF FC 25 */ bl func_8004EE68
/* 8004F248 0004AEA8 2C 03 00 00 */ cmpwi r3, 0
/* 8004F24C 0004AEAC 40 82 00 2C */ bne lbl_8004F278
/* 8004F250 0004AEB0 57 A0 18 38 */ slwi r0, r29, 3
/* 8004F254 0004AEB4 80 9F 01 00 */ lwz r4, 0x100(r31)
/* 8004F258 0004AEB8 80 BF 01 04 */ lwz r5, 0x104(r31)
/* 8004F25C 0004AEBC 7F 66 DB 78 */ mr r6, r27
/* 8004F260 0004AEC0 C0 3A 01 80 */ lfs f1, 0x180(r26)
/* 8004F264 0004AEC4 7F 87 E3 78 */ mr r7, r28
/* 8004F268 0004AEC8 7C 7A 02 14 */ add r3, r26, r0
/* 8004F26C 0004AECC 4B FF FC 05 */ bl func_8004EE70
/* 8004F270 0004AED0 38 7D 00 01 */ addi r3, r29, 1
/* 8004F274 0004AED4 48 00 00 18 */ b lbl_8004F28C
lbl_8004F278:
/* 8004F278 0004AED8 3B BD 00 01 */ addi r29, r29, 1
/* 8004F27C 0004AEDC 3B DE 00 08 */ addi r30, r30, 8
/* 8004F280 0004AEE0 28 1D 00 20 */ cmplwi r29, 0x20
/* 8004F284 0004AEE4 41 80 FF BC */ blt lbl_8004F240
/* 8004F288 0004AEE8 38 60 00 00 */ li r3, 0
lbl_8004F28C:
/* 8004F28C 0004AEEC 39 61 00 20 */ addi r11, r1, 0x20
/* 8004F290 0004AEF0 48 17 7E E1 */ bl _restgpr_26
/* 8004F294 0004AEF4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004F298 0004AEF8 7C 08 03 A6 */ mtlr r0
/* 8004F29C 0004AEFC 38 21 00 20 */ addi r1, r1, 0x20
/* 8004F2A0 0004AF00 4E 80 00 20 */ blr
.global func_8004F2A4
func_8004F2A4:
/* 8004F2A4 0004AF04 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8004F2A8 0004AF08 7C 08 02 A6 */ mflr r0
/* 8004F2AC 0004AF0C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8004F2B0 0004AF10 DB E1 00 18 */ stfd f31, 0x18(r1)
/* 8004F2B4 0004AF14 FF E0 08 90 */ fmr f31, f1
/* 8004F2B8 0004AF18 93 E1 00 14 */ stw r31, 0x14(r1)
/* 8004F2BC 0004AF1C 7C 7F 1B 78 */ mr r31, r3
/* 8004F2C0 0004AF20 93 C1 00 10 */ stw r30, 0x10(r1)
/* 8004F2C4 0004AF24 3B C0 00 00 */ li r30, 0
lbl_8004F2C8:
/* 8004F2C8 0004AF28 FC 20 F8 90 */ fmr f1, f31
/* 8004F2CC 0004AF2C 7F E3 FB 78 */ mr r3, r31
/* 8004F2D0 0004AF30 4B FF FD 15 */ bl func_8004EFE4
/* 8004F2D4 0004AF34 3B DE 00 01 */ addi r30, r30, 1
/* 8004F2D8 0004AF38 3B FF 00 08 */ addi r31, r31, 8
/* 8004F2DC 0004AF3C 28 1E 00 20 */ cmplwi r30, 0x20
/* 8004F2E0 0004AF40 41 80 FF E8 */ blt lbl_8004F2C8
/* 8004F2E4 0004AF44 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8004F2E8 0004AF48 CB E1 00 18 */ lfd f31, 0x18(r1)
/* 8004F2EC 0004AF4C 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 8004F2F0 0004AF50 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 8004F2F4 0004AF54 7C 08 03 A6 */ mtlr r0
/* 8004F2F8 0004AF58 38 21 00 20 */ addi r1, r1, 0x20
/* 8004F2FC 0004AF5C 4E 80 00 20 */ blr
.global func_8004F300
func_8004F300:
/* 8004F300 0004AF60 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8004F304 0004AF64 7C 08 02 A6 */ mflr r0
/* 8004F308 0004AF68 90 01 00 14 */ stw r0, 0x14(r1)
/* 8004F30C 0004AF6C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8004F310 0004AF70 7C 7F 1B 78 */ mr r31, r3
/* 8004F314 0004AF74 93 C1 00 08 */ stw r30, 8(r1)
/* 8004F318 0004AF78 3B C0 00 00 */ li r30, 0
lbl_8004F31C:
/* 8004F31C 0004AF7C 7F E3 FB 78 */ mr r3, r31
/* 8004F320 0004AF80 4B FF FB 49 */ bl func_8004EE68
/* 8004F324 0004AF84 2C 03 00 00 */ cmpwi r3, 0
/* 8004F328 0004AF88 41 82 00 0C */ beq lbl_8004F334
/* 8004F32C 0004AF8C 7F E3 FB 78 */ mr r3, r31
/* 8004F330 0004AF90 4B FF FA 81 */ bl func_8004EDB0
lbl_8004F334:
/* 8004F334 0004AF94 3B DE 00 01 */ addi r30, r30, 1
/* 8004F338 0004AF98 3B FF 00 08 */ addi r31, r31, 8
/* 8004F33C 0004AF9C 28 1E 00 20 */ cmplwi r30, 0x20
/* 8004F340 0004AFA0 41 80 FF DC */ blt lbl_8004F31C
/* 8004F344 0004AFA4 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8004F348 0004AFA8 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8004F34C 0004AFAC 83 C1 00 08 */ lwz r30, 8(r1)
/* 8004F350 0004AFB0 7C 08 03 A6 */ mtlr r0
/* 8004F354 0004AFB4 38 21 00 10 */ addi r1, r1, 0x10
/* 8004F358 0004AFB8 4E 80 00 20 */ blr
.global func_8004F35C
func_8004F35C:
/* 8004F35C 0004AFBC 38 A0 00 01 */ li r5, 1
/* 8004F360 0004AFC0 38 6D 98 40 */ addi r3, r13, lbl_8063EB00-_SDA_BASE_
/* 8004F364 0004AFC4 38 80 00 04 */ li r4, 4
/* 8004F368 0004AFC8 38 00 00 00 */ li r0, 0
/* 8004F36C 0004AFCC 98 AD 98 40 */ stb r5, lbl_8063EB00-_SDA_BASE_(r13)
/* 8004F370 0004AFD0 B0 83 00 02 */ sth r4, 2(r3)
/* 8004F374 0004AFD4 98 03 00 04 */ stb r0, 4(r3)
/* 8004F378 0004AFD8 4E 80 00 20 */ blr
|