summaryrefslogtreecommitdiff
path: root/asm/code_8004DE88.s
blob: a9d6c9ad5646a7f954f95d3b30dd9083dafdaf7f (plain)
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
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
.include "macros.inc"

.section .text, "ax"  # 0x80006980 - 0x803E1E60

.global lbl_8004DE88
lbl_8004DE88:
/* 8004DE88 00049AE8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DE8C 00049AEC  7C 08 02 A6 */	mflr r0
/* 8004DE90 00049AF0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DE94 00049AF4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DE98 00049AF8  7C 7F 1B 78 */	mr r31, r3
/* 8004DE9C 00049AFC  48 00 26 91 */	bl func_8005052C
/* 8004DEA0 00049B00  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004DEA4 00049B04  38 00 00 00 */	li r0, 0
/* 8004DEA8 00049B08  90 1F 00 40 */	stw r0, 0x40(r31)
/* 8004DEAC 00049B0C  7F E3 FB 78 */	mr r3, r31
/* 8004DEB0 00049B10  90 1F 00 3C */	stw r0, 0x3c(r31)
/* 8004DEB4 00049B14  90 1F 00 38 */	stw r0, 0x38(r31)
/* 8004DEB8 00049B18  D0 1F 00 4C */	stfs f0, 0x4c(r31)
/* 8004DEBC 00049B1C  90 1F 00 34 */	stw r0, 0x34(r31)
/* 8004DEC0 00049B20  90 1F 00 44 */	stw r0, 0x44(r31)
/* 8004DEC4 00049B24  90 1F 00 48 */	stw r0, 0x48(r31)
/* 8004DEC8 00049B28  90 1F 00 54 */	stw r0, 0x54(r31)
/* 8004DECC 00049B2C  48 00 00 81 */	bl func_8004DF4C
/* 8004DED0 00049B30  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004DED4 00049B34  7F E3 FB 78 */	mr r3, r31
/* 8004DED8 00049B38  D0 1F 00 5C */	stfs f0, 0x5c(r31)
/* 8004DEDC 00049B3C  D0 1F 00 60 */	stfs f0, 0x60(r31)
/* 8004DEE0 00049B40  D0 1F 00 64 */	stfs f0, 0x64(r31)
/* 8004DEE4 00049B44  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DEE8 00049B48  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DEEC 00049B4C  7C 08 03 A6 */	mtlr r0
/* 8004DEF0 00049B50  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DEF4 00049B54  4E 80 00 20 */	blr

.global lbl_8004DEF8
lbl_8004DEF8:
/* 8004DEF8 00049B58  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DEFC 00049B5C  7C 08 02 A6 */	mflr r0
/* 8004DF00 00049B60  2C 03 00 00 */	cmpwi r3, 0
/* 8004DF04 00049B64  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DF08 00049B68  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DF0C 00049B6C  7C 9F 23 78 */	mr r31, r4
/* 8004DF10 00049B70  93 C1 00 08 */	stw r30, 8(r1)
/* 8004DF14 00049B74  7C 7E 1B 78 */	mr r30, r3
/* 8004DF18 00049B78  41 82 00 18 */	beq lbl_8004DF30
/* 8004DF1C 00049B7C  48 00 00 5D */	bl func_8004DF78
/* 8004DF20 00049B80  2C 1F 00 00 */	cmpwi r31, 0
/* 8004DF24 00049B84  40 81 00 0C */	ble lbl_8004DF30
/* 8004DF28 00049B88  7F C3 F3 78 */	mr r3, r30
/* 8004DF2C 00049B8C  48 18 CB 8D */	bl __dl__FPv
lbl_8004DF30:
/* 8004DF30 00049B90  7F C3 F3 78 */	mr r3, r30
/* 8004DF34 00049B94  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004DF38 00049B98  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004DF3C 00049B9C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004DF40 00049BA0  7C 08 03 A6 */	mtlr r0
/* 8004DF44 00049BA4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004DF48 00049BA8  4E 80 00 20 */	blr

.global func_8004DF4C
func_8004DF4C:
/* 8004DF4C 00049BAC  80 AD 81 88 */	lwz r5, lbl_8063D448-_SDA_BASE_(r13)
/* 8004DF50 00049BB0  3C 00 00 01 */	lis r0, 1
/* 8004DF54 00049BB4  64 A4 82 90 */	oris r4, r5, 0x8290
/* 8004DF58 00049BB8  38 A5 00 01 */	addi r5, r5, 1
/* 8004DF5C 00049BBC  90 83 00 50 */	stw r4, 0x50(r3)
/* 8004DF60 00049BC0  7C 05 00 40 */	cmplw r5, r0
/* 8004DF64 00049BC4  90 AD 81 88 */	stw r5, lbl_8063D448-_SDA_BASE_(r13)
/* 8004DF68 00049BC8  4C 81 00 20 */	blelr
/* 8004DF6C 00049BCC  38 00 00 01 */	li r0, 1
/* 8004DF70 00049BD0  90 0D 81 88 */	stw r0, lbl_8063D448-_SDA_BASE_(r13)
/* 8004DF74 00049BD4  4E 80 00 20 */	blr

.global func_8004DF78
func_8004DF78:
/* 8004DF78 00049BD8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004DF7C 00049BDC  7C 08 02 A6 */	mflr r0
/* 8004DF80 00049BE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004DF84 00049BE4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004DF88 00049BE8  93 C1 00 08 */	stw r30, 8(r1)
/* 8004DF8C 00049BEC  7C 7E 1B 78 */	mr r30, r3
/* 8004DF90 00049BF0  80 03 00 40 */	lwz r0, 0x40(r3)
/* 8004DF94 00049BF4  2C 00 00 00 */	cmpwi r0, 0
/* 8004DF98 00049BF8  41 82 00 28 */	beq lbl_8004DFC0
/* 8004DF9C 00049BFC  41 82 00 1C */	beq lbl_8004DFB8
/* 8004DFA0 00049C00  7C 03 03 78 */	mr r3, r0
/* 8004DFA4 00049C04  38 80 00 01 */	li r4, 1
/* 8004DFA8 00049C08  81 83 01 00 */	lwz r12, 0x100(r3)
/* 8004DFAC 00049C0C  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004DFB0 00049C10  7D 89 03 A6 */	mtctr r12
/* 8004DFB4 00049C14  4E 80 04 21 */	bctrl
lbl_8004DFB8:
/* 8004DFB8 00049C18  38 00 00 00 */	li r0, 0
/* 8004DFBC 00049C1C  90 1E 00 40 */	stw r0, 0x40(r30)
lbl_8004DFC0:
/* 8004DFC0 00049C20  80 7E 00 3C */	lwz r3, 0x3c(r30)
/* 8004DFC4 00049C24  2C 03 00 00 */	cmpwi r3, 0
/* 8004DFC8 00049C28  41 82 00 1C */	beq lbl_8004DFE4
/* 8004DFCC 00049C2C  80 9E 00 34 */	lwz r4, 0x34(r30)
/* 8004DFD0 00049C30  54 80 07 BD */	rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 8004DFD4 00049C34  41 82 00 10 */	beq lbl_8004DFE4
/* 8004DFD8 00049C38  54 80 07 FA */	rlwinm r0, r4, 0, 0x1f, 0x1d
/* 8004DFDC 00049C3C  90 1E 00 34 */	stw r0, 0x34(r30)
/* 8004DFE0 00049C40  48 1B 8E 15 */	bl func_80206DF4
lbl_8004DFE4:
/* 8004DFE4 00049C44  80 7E 00 38 */	lwz r3, 0x38(r30)
/* 8004DFE8 00049C48  3B E0 00 00 */	li r31, 0
/* 8004DFEC 00049C4C  93 FE 00 3C */	stw r31, 0x3c(r30)
/* 8004DFF0 00049C50  2C 03 00 00 */	cmpwi r3, 0
/* 8004DFF4 00049C54  41 82 00 0C */	beq lbl_8004E000
/* 8004DFF8 00049C58  48 18 CE AD */	bl func_801DAEA4
/* 8004DFFC 00049C5C  93 FE 00 38 */	stw r31, 0x38(r30)
lbl_8004E000:
/* 8004E000 00049C60  80 1E 00 34 */	lwz r0, 0x34(r30)
/* 8004E004 00049C64  54 00 06 73 */	rlwinm. r0, r0, 0, 0x19, 0x19
/* 8004E008 00049C68  41 82 00 1C */	beq lbl_8004E024
/* 8004E00C 00049C6C  80 7E 00 44 */	lwz r3, 0x44(r30)
/* 8004E010 00049C70  80 9E 00 48 */	lwz r4, 0x48(r30)
/* 8004E014 00049C74  48 18 D5 35 */	bl func_801DB548
/* 8004E018 00049C78  38 00 00 00 */	li r0, 0
/* 8004E01C 00049C7C  90 1E 00 44 */	stw r0, 0x44(r30)
/* 8004E020 00049C80  90 1E 00 48 */	stw r0, 0x48(r30)
lbl_8004E024:
/* 8004E024 00049C84  38 00 00 00 */	li r0, 0
/* 8004E028 00049C88  90 1E 00 34 */	stw r0, 0x34(r30)
/* 8004E02C 00049C8C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004E030 00049C90  83 C1 00 08 */	lwz r30, 8(r1)
/* 8004E034 00049C94  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004E038 00049C98  7C 08 03 A6 */	mtlr r0
/* 8004E03C 00049C9C  38 21 00 10 */	addi r1, r1, 0x10
/* 8004E040 00049CA0  4E 80 00 20 */	blr

.global func_8004E044
func_8004E044:
/* 8004E044 00049CA4  94 21 FE D0 */	stwu r1, -0x130(r1)
/* 8004E048 00049CA8  7C 08 02 A6 */	mflr r0
/* 8004E04C 00049CAC  90 01 01 34 */	stw r0, 0x134(r1)
/* 8004E050 00049CB0  39 61 01 30 */	addi r11, r1, 0x130
/* 8004E054 00049CB4  48 17 90 D5 */	bl _savegpr_27
/* 8004E058 00049CB8  3C A0 80 41 */	lis r5, lbl_8040AAF8@ha
/* 8004E05C 00049CBC  7C 7B 1B 78 */	mr r27, r3
/* 8004E060 00049CC0  7C 86 23 78 */	mr r6, r4
/* 8004E064 00049CC4  38 61 00 10 */	addi r3, r1, 0x10
/* 8004E068 00049CC8  38 85 AA F8 */	addi r4, r5, lbl_8040AAF8@l
/* 8004E06C 00049CCC  38 AD 81 90 */	addi r5, r13, lbl_8063D450-_SDA_BASE_
/* 8004E070 00049CD0  4C C6 31 82 */	crclr 6
/* 8004E074 00049CD4  48 17 EA 89 */	bl sprintf
/* 8004E078 00049CD8  38 61 00 10 */	addi r3, r1, 0x10
/* 8004E07C 00049CDC  38 81 00 08 */	addi r4, r1, 8
/* 8004E080 00049CE0  48 18 EB 41 */	bl func_801DCBC0
/* 8004E084 00049CE4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E088 00049CE8  7C 7E 1B 78 */	mr r30, r3
/* 8004E08C 00049CEC  40 82 00 0C */	bne lbl_8004E098
/* 8004E090 00049CF0  38 60 00 00 */	li r3, 0
/* 8004E094 00049CF4  48 00 00 BC */	b lbl_8004E150
lbl_8004E098:
/* 8004E098 00049CF8  48 1B 8C F5 */	bl func_80206D8C
/* 8004E09C 00049CFC  2C 03 00 00 */	cmpwi r3, 0
/* 8004E0A0 00049D00  7C 7D 1B 78 */	mr r29, r3
/* 8004E0A4 00049D04  40 82 00 14 */	bne lbl_8004E0B8
/* 8004E0A8 00049D08  7F C3 F3 78 */	mr r3, r30
/* 8004E0AC 00049D0C  48 18 CD F9 */	bl func_801DAEA4
/* 8004E0B0 00049D10  38 60 00 00 */	li r3, 0
/* 8004E0B4 00049D14  48 00 00 9C */	b lbl_8004E150
lbl_8004E0B8:
/* 8004E0B8 00049D18  48 18 CA 71 */	bl func_801DAB28
/* 8004E0BC 00049D1C  2C 03 00 00 */	cmpwi r3, 0
/* 8004E0C0 00049D20  41 82 00 14 */	beq lbl_8004E0D4
/* 8004E0C4 00049D24  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004E0C8 00049D28  38 80 01 40 */	li r4, 0x140
/* 8004E0CC 00049D2C  48 18 CB C9 */	bl func_801DAC94
/* 8004E0D0 00049D30  48 00 00 08 */	b lbl_8004E0D8
lbl_8004E0D4:
/* 8004E0D4 00049D34  38 60 00 00 */	li r3, 0
lbl_8004E0D8:
/* 8004E0D8 00049D38  2C 03 00 00 */	cmpwi r3, 0
/* 8004E0DC 00049D3C  7C 7F 1B 78 */	mr r31, r3
/* 8004E0E0 00049D40  41 82 00 10 */	beq lbl_8004E0F0
/* 8004E0E4 00049D44  7F A4 EB 78 */	mr r4, r29
/* 8004E0E8 00049D48  48 1A B8 05 */	bl func_801F98EC
/* 8004E0EC 00049D4C  7C 7F 1B 78 */	mr r31, r3
lbl_8004E0F0:
/* 8004E0F0 00049D50  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E0F4 00049D54  40 82 00 1C */	bne lbl_8004E110
/* 8004E0F8 00049D58  7F A3 EB 78 */	mr r3, r29
/* 8004E0FC 00049D5C  48 1B 8C F9 */	bl func_80206DF4
/* 8004E100 00049D60  7F C3 F3 78 */	mr r3, r30
/* 8004E104 00049D64  48 18 CD A1 */	bl func_801DAEA4
/* 8004E108 00049D68  38 60 00 00 */	li r3, 0
/* 8004E10C 00049D6C  48 00 00 44 */	b lbl_8004E150
lbl_8004E110:
/* 8004E110 00049D70  80 1B 00 34 */	lwz r0, 0x34(r27)
/* 8004E114 00049D74  7F 63 DB 78 */	mr r3, r27
/* 8004E118 00049D78  54 1C 07 7A */	rlwinm r28, r0, 0, 0x1d, 0x1d
/* 8004E11C 00049D7C  4B FF FE 5D */	bl func_8004DF78
/* 8004E120 00049D80  80 BB 00 34 */	lwz r5, 0x34(r27)
/* 8004E124 00049D84  63 83 00 03 */	ori r3, r28, 3
/* 8004E128 00049D88  38 80 1E DC */	li r4, 0x1edc
/* 8004E12C 00049D8C  38 00 00 00 */	li r0, 0
/* 8004E130 00049D90  7C A5 1B 78 */	or r5, r5, r3
/* 8004E134 00049D94  93 DB 00 38 */	stw r30, 0x38(r27)
/* 8004E138 00049D98  38 60 00 01 */	li r3, 1
/* 8004E13C 00049D9C  93 BB 00 3C */	stw r29, 0x3c(r27)
/* 8004E140 00049DA0  93 FB 00 40 */	stw r31, 0x40(r27)
/* 8004E144 00049DA4  90 BB 00 34 */	stw r5, 0x34(r27)
/* 8004E148 00049DA8  90 9B 00 44 */	stw r4, 0x44(r27)
/* 8004E14C 00049DAC  90 1B 00 48 */	stw r0, 0x48(r27)
lbl_8004E150:
/* 8004E150 00049DB0  39 61 01 30 */	addi r11, r1, 0x130
/* 8004E154 00049DB4  48 17 90 21 */	bl _restgpr_27
/* 8004E158 00049DB8  80 01 01 34 */	lwz r0, 0x134(r1)
/* 8004E15C 00049DBC  7C 08 03 A6 */	mtlr r0
/* 8004E160 00049DC0  38 21 01 30 */	addi r1, r1, 0x130
/* 8004E164 00049DC4  4E 80 00 20 */	blr

.global func_8004E168
func_8004E168:
/* 8004E168 00049DC8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E16C 00049DCC  7C 08 02 A6 */	mflr r0
/* 8004E170 00049DD0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004E174 00049DD4  54 A0 00 01 */	rlwinm. r0, r5, 0, 0, 0
/* 8004E178 00049DD8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004E17C 00049DDC  7C BF 2B 78 */	mr r31, r5
/* 8004E180 00049DE0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004E184 00049DE4  7C 9E 23 78 */	mr r30, r4
/* 8004E188 00049DE8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004E18C 00049DEC  7C 7D 1B 78 */	mr r29, r3
/* 8004E190 00049DF0  40 82 00 4C */	bne lbl_8004E1DC
/* 8004E194 00049DF4  54 A0 07 39 */	rlwinm. r0, r5, 0, 0x1c, 0x1c
/* 8004E198 00049DF8  41 82 00 2C */	beq lbl_8004E1C4
/* 8004E19C 00049DFC  54 A0 07 FF */	clrlwi. r0, r5, 0x1f
/* 8004E1A0 00049E00  54 BF 07 76 */	rlwinm r31, r5, 0, 0x1d, 0x1b
/* 8004E1A4 00049E04  41 82 00 08 */	beq lbl_8004E1AC
/* 8004E1A8 00049E08  63 FF 00 40 */	ori r31, r31, 0x40
lbl_8004E1AC:
/* 8004E1AC 00049E0C  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 8004E1B0 00049E10  41 82 00 08 */	beq lbl_8004E1B8
/* 8004E1B4 00049E14  63 FF 00 80 */	ori r31, r31, 0x80
lbl_8004E1B8:
/* 8004E1B8 00049E18  57 E0 07 7B */	rlwinm. r0, r31, 0, 0x1d, 0x1d
/* 8004E1BC 00049E1C  41 82 00 08 */	beq lbl_8004E1C4
/* 8004E1C0 00049E20  63 FF 01 00 */	ori r31, r31, 0x100
lbl_8004E1C4:
/* 8004E1C4 00049E24  57 E0 07 FF */	clrlwi. r0, r31, 0x1f
/* 8004E1C8 00049E28  40 82 00 08 */	bne lbl_8004E1D0
/* 8004E1CC 00049E2C  63 FF 00 09 */	ori r31, r31, 9
lbl_8004E1D0:
/* 8004E1D0 00049E30  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 8004E1D4 00049E34  40 82 00 08 */	bne lbl_8004E1DC
/* 8004E1D8 00049E38  63 FF 00 12 */	ori r31, r31, 0x12
lbl_8004E1DC:
/* 8004E1DC 00049E3C  2C 04 00 00 */	cmpwi r4, 0
/* 8004E1E0 00049E40  41 82 00 38 */	beq lbl_8004E218
/* 8004E1E4 00049E44  80 83 00 40 */	lwz r4, 0x40(r3)
/* 8004E1E8 00049E48  2C 04 00 00 */	cmpwi r4, 0
/* 8004E1EC 00049E4C  41 82 00 2C */	beq lbl_8004E218
/* 8004E1F0 00049E50  80 64 00 C0 */	lwz r3, 0xc0(r4)
/* 8004E1F4 00049E54  2C 03 00 00 */	cmpwi r3, 0
/* 8004E1F8 00049E58  41 82 00 08 */	beq lbl_8004E200
/* 8004E1FC 00049E5C  48 1A 40 2D */	bl func_801F2228
lbl_8004E200:
/* 8004E200 00049E60  80 BD 00 40 */	lwz r5, 0x40(r29)
/* 8004E204 00049E64  7F C3 F3 78 */	mr r3, r30
/* 8004E208 00049E68  57 E4 04 3E */	clrlwi r4, r31, 0x10
/* 8004E20C 00049E6C  38 C0 00 00 */	li r6, 0
/* 8004E210 00049E70  38 E0 00 03 */	li r7, 3
/* 8004E214 00049E74  48 1A 3F 79 */	bl func_801F218C
lbl_8004E218:
/* 8004E218 00049E78  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004E21C 00049E7C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004E220 00049E80  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004E224 00049E84  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004E228 00049E88  7C 08 03 A6 */	mtlr r0
/* 8004E22C 00049E8C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E230 00049E90  4E 80 00 20 */	blr

.global func_8004E234
func_8004E234:
/* 8004E234 00049E94  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004E238 00049E98  7C 08 02 A6 */	mflr r0
/* 8004E23C 00049E9C  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004E240 00049EA0  39 61 00 30 */	addi r11, r1, 0x30
/* 8004E244 00049EA4  48 17 8E DD */	bl _savegpr_25
/* 8004E248 00049EA8  54 A0 BE BE */	rlwinm r0, r5, 0x17, 0x1a, 0x1f
/* 8004E24C 00049EAC  7C 79 1B 78 */	mr r25, r3
/* 8004E250 00049EB0  28 00 00 05 */	cmplwi r0, 5
/* 8004E254 00049EB4  7C 9A 23 78 */	mr r26, r4
/* 8004E258 00049EB8  7C DC 33 78 */	mr r28, r6
/* 8004E25C 00049EBC  41 82 00 0C */	beq lbl_8004E268
/* 8004E260 00049EC0  38 60 00 00 */	li r3, 0
/* 8004E264 00049EC4  48 00 00 D8 */	b lbl_8004E33C
lbl_8004E268:
/* 8004E268 00049EC8  54 A0 00 5E */	rlwinm r0, r5, 0, 1, 0xf
/* 8004E26C 00049ECC  7F 43 D3 78 */	mr r3, r26
/* 8004E270 00049ED0  60 1B 0E 00 */	ori r27, r0, 0xe00
/* 8004E274 00049ED4  7F 64 DB 78 */	mr r4, r27
/* 8004E278 00049ED8  48 18 D2 45 */	bl func_801DB4BC
/* 8004E27C 00049EDC  2C 03 00 00 */	cmpwi r3, 0
/* 8004E280 00049EE0  7C 7E 1B 78 */	mr r30, r3
/* 8004E284 00049EE4  40 82 00 0C */	bne lbl_8004E290
/* 8004E288 00049EE8  38 60 00 00 */	li r3, 0
/* 8004E28C 00049EEC  48 00 00 B0 */	b lbl_8004E33C
lbl_8004E290:
/* 8004E290 00049EF0  48 18 C8 99 */	bl func_801DAB28
/* 8004E294 00049EF4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E298 00049EF8  41 82 00 14 */	beq lbl_8004E2AC
/* 8004E29C 00049EFC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8004E2A0 00049F00  38 80 01 40 */	li r4, 0x140
/* 8004E2A4 00049F04  48 18 C9 F1 */	bl func_801DAC94
/* 8004E2A8 00049F08  48 00 00 08 */	b lbl_8004E2B0
lbl_8004E2AC:
/* 8004E2AC 00049F0C  38 60 00 00 */	li r3, 0
lbl_8004E2B0:
/* 8004E2B0 00049F10  2C 03 00 00 */	cmpwi r3, 0
/* 8004E2B4 00049F14  7C 7F 1B 78 */	mr r31, r3
/* 8004E2B8 00049F18  41 82 00 10 */	beq lbl_8004E2C8
/* 8004E2BC 00049F1C  7F C4 F3 78 */	mr r4, r30
/* 8004E2C0 00049F20  48 1A B6 2D */	bl func_801F98EC
/* 8004E2C4 00049F24  7C 7F 1B 78 */	mr r31, r3
lbl_8004E2C8:
/* 8004E2C8 00049F28  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E2CC 00049F2C  40 82 00 0C */	bne lbl_8004E2D8
/* 8004E2D0 00049F30  38 60 00 00 */	li r3, 0
/* 8004E2D4 00049F34  48 00 00 68 */	b lbl_8004E33C
lbl_8004E2D8:
/* 8004E2D8 00049F38  80 19 00 50 */	lwz r0, 0x50(r25)
/* 8004E2DC 00049F3C  7F 23 CB 78 */	mr r3, r25
/* 8004E2E0 00049F40  90 1F 01 3C */	stw r0, 0x13c(r31)
/* 8004E2E4 00049F44  80 19 00 34 */	lwz r0, 0x34(r25)
/* 8004E2E8 00049F48  54 1D 07 7A */	rlwinm r29, r0, 0, 0x1d, 0x1d
/* 8004E2EC 00049F4C  4B FF FC 8D */	bl func_8004DF78
/* 8004E2F0 00049F50  38 00 00 00 */	li r0, 0
/* 8004E2F4 00049F54  2C 1C 00 00 */	cmpwi r28, 0
/* 8004E2F8 00049F58  90 19 00 38 */	stw r0, 0x38(r25)
/* 8004E2FC 00049F5C  93 D9 00 3C */	stw r30, 0x3c(r25)
/* 8004E300 00049F60  93 F9 00 40 */	stw r31, 0x40(r25)
/* 8004E304 00049F64  93 59 00 44 */	stw r26, 0x44(r25)
/* 8004E308 00049F68  93 79 00 48 */	stw r27, 0x48(r25)
/* 8004E30C 00049F6C  41 82 00 1C */	beq lbl_8004E328
/* 8004E310 00049F70  7F 43 D3 78 */	mr r3, r26
/* 8004E314 00049F74  7F 64 DB 78 */	mr r4, r27
/* 8004E318 00049F78  48 18 D1 E5 */	bl func_801DB4FC
/* 8004E31C 00049F7C  80 19 00 34 */	lwz r0, 0x34(r25)
/* 8004E320 00049F80  60 00 00 40 */	ori r0, r0, 0x40
/* 8004E324 00049F84  90 19 00 34 */	stw r0, 0x34(r25)
lbl_8004E328:
/* 8004E328 00049F88  80 99 00 34 */	lwz r4, 0x34(r25)
/* 8004E32C 00049F8C  63 A0 00 01 */	ori r0, r29, 1
/* 8004E330 00049F90  38 60 00 01 */	li r3, 1
/* 8004E334 00049F94  7C 80 03 78 */	or r0, r4, r0
/* 8004E338 00049F98  90 19 00 34 */	stw r0, 0x34(r25)
lbl_8004E33C:
/* 8004E33C 00049F9C  39 61 00 30 */	addi r11, r1, 0x30
/* 8004E340 00049FA0  48 17 8E 2D */	bl _restgpr_25
/* 8004E344 00049FA4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004E348 00049FA8  7C 08 03 A6 */	mtlr r0
/* 8004E34C 00049FAC  38 21 00 30 */	addi r1, r1, 0x30
/* 8004E350 00049FB0  4E 80 00 20 */	blr

.global func_8004E354
func_8004E354:
/* 8004E354 00049FB4  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004E358 00049FB8  7C 08 02 A6 */	mflr r0
/* 8004E35C 00049FBC  3D 40 80 40 */	lis r10, lbl_80400004@ha
/* 8004E360 00049FC0  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004E364 00049FC4  85 2A B7 78 */	lwzu r9, -0x4888(r10)
/* 8004E368 00049FC8  80 63 00 40 */	lwz r3, 0x40(r3)
/* 8004E36C 00049FCC  81 0A 00 04 */	lwz r8, lbl_80400004@l(r10)
/* 8004E370 00049FD0  80 EA 00 08 */	lwz r7, 8(r10)
/* 8004E374 00049FD4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E378 00049FD8  80 CA 00 0C */	lwz r6, 0xc(r10)
/* 8004E37C 00049FDC  80 AA 00 10 */	lwz r5, 0x10(r10)
/* 8004E380 00049FE0  80 0A 00 14 */	lwz r0, 0x14(r10)
/* 8004E384 00049FE4  91 21 00 18 */	stw r9, 0x18(r1)
/* 8004E388 00049FE8  91 01 00 1C */	stw r8, 0x1c(r1)
/* 8004E38C 00049FEC  90 E1 00 20 */	stw r7, 0x20(r1)
/* 8004E390 00049FF0  90 C1 00 24 */	stw r6, 0x24(r1)
/* 8004E394 00049FF4  90 A1 00 28 */	stw r5, 0x28(r1)
/* 8004E398 00049FF8  90 01 00 2C */	stw r0, 0x2c(r1)
/* 8004E39C 00049FFC  41 82 00 F0 */	beq lbl_8004E48C
/* 8004E3A0 0004A000  2C 04 00 01 */	cmpwi r4, 1
/* 8004E3A4 0004A004  41 80 00 0C */	blt lbl_8004E3B0
/* 8004E3A8 0004A008  2C 04 00 06 */	cmpwi r4, 6
/* 8004E3AC 0004A00C  40 81 00 08 */	ble lbl_8004E3B4
lbl_8004E3B0:
/* 8004E3B0 0004A010  38 80 00 03 */	li r4, 3
lbl_8004E3B4:
/* 8004E3B4 0004A014  38 04 FF FF */	addi r0, r4, -1
/* 8004E3B8 0004A018  38 81 00 18 */	addi r4, r1, 0x18
/* 8004E3BC 0004A01C  54 00 10 3A */	slwi r0, r0, 2
/* 8004E3C0 0004A020  2C 03 00 00 */	cmpwi r3, 0
/* 8004E3C4 0004A024  7C 04 04 2E */	lfsx f0, r4, r0
/* 8004E3C8 0004A028  EC 01 00 32 */	fmuls f0, f1, f0
/* 8004E3CC 0004A02C  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004E3D0 0004A030  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8004E3D4 0004A034  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 8004E3D8 0004A038  41 82 00 B4 */	beq lbl_8004E48C
/* 8004E3DC 0004A03C  D0 03 00 48 */	stfs f0, 0x48(r3)
/* 8004E3E0 0004A040  C0 42 84 34 */	lfs f2, lbl_80640A34-_SDA2_BASE_(r2)
/* 8004E3E4 0004A044  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004E3E8 0004A048  FC 00 10 40 */	fcmpo cr0, f0, f2
/* 8004E3EC 0004A04C  D0 03 00 50 */	stfs f0, 0x50(r3)
/* 8004E3F0 0004A050  40 80 00 2C */	bge lbl_8004E41C
/* 8004E3F4 0004A054  C0 23 00 48 */	lfs f1, 0x48(r3)
/* 8004E3F8 0004A058  C0 62 84 38 */	lfs f3, lbl_80640A38-_SDA2_BASE_(r2)
/* 8004E3FC 0004A05C  FC 01 18 40 */	fcmpo cr0, f1, f3
/* 8004E400 0004A060  40 81 00 1C */	ble lbl_8004E41C
/* 8004E404 0004A064  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E408 0004A068  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004E40C 0004A06C  40 80 00 08 */	bge lbl_8004E414
/* 8004E410 0004A070  48 00 00 08 */	b lbl_8004E418
lbl_8004E414:
/* 8004E414 0004A074  FC 60 10 90 */	fmr f3, f2
lbl_8004E418:
/* 8004E418 0004A078  D0 63 00 48 */	stfs f3, 0x48(r3)
lbl_8004E41C:
/* 8004E41C 0004A07C  C0 43 00 4C */	lfs f2, 0x4c(r3)
/* 8004E420 0004A080  C0 22 84 34 */	lfs f1, lbl_80640A34-_SDA2_BASE_(r2)
/* 8004E424 0004A084  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004E428 0004A088  40 80 00 28 */	bge lbl_8004E450
/* 8004E42C 0004A08C  C0 62 84 38 */	lfs f3, lbl_80640A38-_SDA2_BASE_(r2)
/* 8004E430 0004A090  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004E434 0004A094  40 81 00 1C */	ble lbl_8004E450
/* 8004E438 0004A098  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E43C 0004A09C  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004E440 0004A0A0  40 80 00 08 */	bge lbl_8004E448
/* 8004E444 0004A0A4  48 00 00 08 */	b lbl_8004E44C
lbl_8004E448:
/* 8004E448 0004A0A8  FC 60 08 90 */	fmr f3, f1
lbl_8004E44C:
/* 8004E44C 0004A0AC  D0 63 00 4C */	stfs f3, 0x4c(r3)
lbl_8004E450:
/* 8004E450 0004A0B0  C0 43 00 50 */	lfs f2, 0x50(r3)
/* 8004E454 0004A0B4  C0 22 84 34 */	lfs f1, lbl_80640A34-_SDA2_BASE_(r2)
/* 8004E458 0004A0B8  FC 02 08 40 */	fcmpo cr0, f2, f1
/* 8004E45C 0004A0BC  40 80 00 28 */	bge lbl_8004E484
/* 8004E460 0004A0C0  C0 62 84 38 */	lfs f3, lbl_80640A38-_SDA2_BASE_(r2)
/* 8004E464 0004A0C4  FC 02 18 40 */	fcmpo cr0, f2, f3
/* 8004E468 0004A0C8  40 81 00 1C */	ble lbl_8004E484
/* 8004E46C 0004A0CC  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E470 0004A0D0  FC 02 00 40 */	fcmpo cr0, f2, f0
/* 8004E474 0004A0D4  40 80 00 08 */	bge lbl_8004E47C
/* 8004E478 0004A0D8  48 00 00 08 */	b lbl_8004E480
lbl_8004E47C:
/* 8004E47C 0004A0DC  FC 60 08 90 */	fmr f3, f1
lbl_8004E480:
/* 8004E480 0004A0E0  D0 63 00 50 */	stfs f3, 0x50(r3)
lbl_8004E484:
/* 8004E484 0004A0E4  38 80 00 01 */	li r4, 1
/* 8004E488 0004A0E8  48 1A 42 31 */	bl func_801F26B8
lbl_8004E48C:
/* 8004E48C 0004A0EC  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004E490 0004A0F0  7C 08 03 A6 */	mtlr r0
/* 8004E494 0004A0F4  38 21 00 30 */	addi r1, r1, 0x30
/* 8004E498 0004A0F8  4E 80 00 20 */	blr

.global func_8004E49C
func_8004E49C:
/* 8004E49C 0004A0FC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E4A0 0004A100  3D 20 80 40 */	lis r9, lbl_80400004@ha
/* 8004E4A4 0004A104  2C 03 00 01 */	cmpwi r3, 1
/* 8004E4A8 0004A108  85 09 B7 90 */	lwzu r8, -0x4870(r9)
/* 8004E4AC 0004A10C  80 E9 00 04 */	lwz r7, lbl_80400004@l(r9)
/* 8004E4B0 0004A110  80 C9 00 08 */	lwz r6, 8(r9)
/* 8004E4B4 0004A114  80 A9 00 0C */	lwz r5, 0xc(r9)
/* 8004E4B8 0004A118  80 89 00 10 */	lwz r4, 0x10(r9)
/* 8004E4BC 0004A11C  80 09 00 14 */	lwz r0, 0x14(r9)
/* 8004E4C0 0004A120  91 01 00 08 */	stw r8, 8(r1)
/* 8004E4C4 0004A124  90 E1 00 0C */	stw r7, 0xc(r1)
/* 8004E4C8 0004A128  90 C1 00 10 */	stw r6, 0x10(r1)
/* 8004E4CC 0004A12C  90 A1 00 14 */	stw r5, 0x14(r1)
/* 8004E4D0 0004A130  90 81 00 18 */	stw r4, 0x18(r1)
/* 8004E4D4 0004A134  90 01 00 1C */	stw r0, 0x1c(r1)
/* 8004E4D8 0004A138  41 80 00 0C */	blt lbl_8004E4E4
/* 8004E4DC 0004A13C  2C 03 00 06 */	cmpwi r3, 6
/* 8004E4E0 0004A140  40 81 00 08 */	ble lbl_8004E4E8
lbl_8004E4E4:
/* 8004E4E4 0004A144  38 60 00 03 */	li r3, 3
lbl_8004E4E8:
/* 8004E4E8 0004A148  38 03 FF FF */	addi r0, r3, -1
/* 8004E4EC 0004A14C  38 61 00 08 */	addi r3, r1, 8
/* 8004E4F0 0004A150  54 00 10 3A */	slwi r0, r0, 2
/* 8004E4F4 0004A154  7C 03 04 2E */	lfsx f0, r3, r0
/* 8004E4F8 0004A158  EC 21 00 32 */	fmuls f1, f1, f0
/* 8004E4FC 0004A15C  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E500 0004A160  4E 80 00 20 */	blr

.global func_8004E504
func_8004E504:
/* 8004E504 0004A164  80 84 00 40 */	lwz r4, 0x40(r4)
/* 8004E508 0004A168  2C 04 00 00 */	cmpwi r4, 0
/* 8004E50C 0004A16C  41 82 00 20 */	beq lbl_8004E52C
/* 8004E510 0004A170  C0 04 00 20 */	lfs f0, 0x20(r4)
/* 8004E514 0004A174  D0 03 00 00 */	stfs f0, 0(r3)
/* 8004E518 0004A178  C0 04 00 24 */	lfs f0, 0x24(r4)
/* 8004E51C 0004A17C  D0 03 00 04 */	stfs f0, 4(r3)
/* 8004E520 0004A180  C0 04 00 28 */	lfs f0, 0x28(r4)
/* 8004E524 0004A184  D0 03 00 08 */	stfs f0, 8(r3)
/* 8004E528 0004A188  4E 80 00 20 */	blr
lbl_8004E52C:
/* 8004E52C 0004A18C  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E530 0004A190  D0 03 00 00 */	stfs f0, 0(r3)
/* 8004E534 0004A194  D0 03 00 04 */	stfs f0, 4(r3)
/* 8004E538 0004A198  D0 03 00 08 */	stfs f0, 8(r3)
/* 8004E53C 0004A19C  4E 80 00 20 */	blr

.global func_8004E540
func_8004E540:
/* 8004E540 0004A1A0  94 21 FF C0 */	stwu r1, -0x40(r1)
/* 8004E544 0004A1A4  7C 08 02 A6 */	mflr r0
/* 8004E548 0004A1A8  90 01 00 44 */	stw r0, 0x44(r1)
/* 8004E54C 0004A1AC  DB E1 00 30 */	stfd f31, 0x30(r1)
/* 8004E550 0004A1B0  F3 E1 00 38 */	psq_st f31, 56(r1), 0, qr0
/* 8004E554 0004A1B4  FF E0 08 90 */	fmr f31, f1
/* 8004E558 0004A1B8  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8004E55C 0004A1BC  7C BF 2B 78 */	mr r31, r5
/* 8004E560 0004A1C0  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8004E564 0004A1C4  7C 9E 23 78 */	mr r30, r4
/* 8004E568 0004A1C8  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8004E56C 0004A1CC  7C 7D 1B 78 */	mr r29, r3
/* 8004E570 0004A1D0  7F A4 EB 78 */	mr r4, r29
/* 8004E574 0004A1D4  38 61 00 08 */	addi r3, r1, 8
/* 8004E578 0004A1D8  4B FF FF 8D */	bl func_8004E504
/* 8004E57C 0004A1DC  C0 01 00 08 */	lfs f0, 8(r1)
/* 8004E580 0004A1E0  38 9D 00 5C */	addi r4, r29, 0x5c
/* 8004E584 0004A1E4  FC 20 F8 90 */	fmr f1, f31
/* 8004E588 0004A1E8  7F A3 EB 78 */	mr r3, r29
/* 8004E58C 0004A1EC  D0 1D 00 5C */	stfs f0, 0x5c(r29)
/* 8004E590 0004A1F0  7F C5 F3 78 */	mr r5, r30
/* 8004E594 0004A1F4  7C 86 23 78 */	mr r6, r4
/* 8004E598 0004A1F8  7F E7 FB 78 */	mr r7, r31
/* 8004E59C 0004A1FC  C0 01 00 0C */	lfs f0, 0xc(r1)
/* 8004E5A0 0004A200  D0 1D 00 60 */	stfs f0, 0x60(r29)
/* 8004E5A4 0004A204  C0 01 00 10 */	lfs f0, 0x10(r1)
/* 8004E5A8 0004A208  D0 1D 00 64 */	stfs f0, 0x64(r29)
/* 8004E5AC 0004A20C  48 00 1F 99 */	bl func_80050544
/* 8004E5B0 0004A210  E3 E1 00 38 */	psq_l f31, 56(r1), 0, qr0
/* 8004E5B4 0004A214  80 01 00 44 */	lwz r0, 0x44(r1)
/* 8004E5B8 0004A218  CB E1 00 30 */	lfd f31, 0x30(r1)
/* 8004E5BC 0004A21C  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8004E5C0 0004A220  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8004E5C4 0004A224  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8004E5C8 0004A228  7C 08 03 A6 */	mtlr r0
/* 8004E5CC 0004A22C  38 21 00 40 */	addi r1, r1, 0x40
/* 8004E5D0 0004A230  4E 80 00 20 */	blr

.global func_8004E5D4
func_8004E5D4:
/* 8004E5D4 0004A234  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004E5D8 0004A238  7C 08 02 A6 */	mflr r0
/* 8004E5DC 0004A23C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004E5E0 0004A240  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004E5E4 0004A244  7C 7F 1B 78 */	mr r31, r3
/* 8004E5E8 0004A248  C0 03 00 4C */	lfs f0, 0x4c(r3)
/* 8004E5EC 0004A24C  EC 00 08 28 */	fsubs f0, f0, f1
/* 8004E5F0 0004A250  D0 03 00 4C */	stfs f0, 0x4c(r3)
/* 8004E5F4 0004A254  81 83 00 30 */	lwz r12, 0x30(r3)
/* 8004E5F8 0004A258  81 8C 00 08 */	lwz r12, 8(r12)
/* 8004E5FC 0004A25C  7D 89 03 A6 */	mtctr r12
/* 8004E600 0004A260  4E 80 04 21 */	bctrl
/* 8004E604 0004A264  2C 03 00 00 */	cmpwi r3, 0
/* 8004E608 0004A268  41 82 00 30 */	beq lbl_8004E638
/* 8004E60C 0004A26C  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 8004E610 0004A270  2C 03 00 00 */	cmpwi r3, 0
/* 8004E614 0004A274  41 82 00 24 */	beq lbl_8004E638
/* 8004E618 0004A278  C0 1F 00 5C */	lfs f0, 0x5c(r31)
/* 8004E61C 0004A27C  38 80 00 01 */	li r4, 1
/* 8004E620 0004A280  D0 03 00 20 */	stfs f0, 0x20(r3)
/* 8004E624 0004A284  C0 1F 00 60 */	lfs f0, 0x60(r31)
/* 8004E628 0004A288  D0 03 00 24 */	stfs f0, 0x24(r3)
/* 8004E62C 0004A28C  C0 1F 00 64 */	lfs f0, 0x64(r31)
/* 8004E630 0004A290  D0 03 00 28 */	stfs f0, 0x28(r3)
/* 8004E634 0004A294  48 1A 40 85 */	bl func_801F26B8
lbl_8004E638:
/* 8004E638 0004A298  80 7F 00 34 */	lwz r3, 0x34(r31)
/* 8004E63C 0004A29C  54 60 07 7B */	rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8004E640 0004A2A0  41 82 00 24 */	beq lbl_8004E664
/* 8004E644 0004A2A4  54 60 07 39 */	rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 8004E648 0004A2A8  41 82 00 1C */	beq lbl_8004E664
/* 8004E64C 0004A2AC  C0 3F 00 4C */	lfs f1, 0x4c(r31)
/* 8004E650 0004A2B0  C0 02 84 30 */	lfs f0, lbl_80640A30-_SDA2_BASE_(r2)
/* 8004E654 0004A2B4  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 8004E658 0004A2B8  40 80 00 0C */	bge lbl_8004E664
/* 8004E65C 0004A2BC  7F E3 FB 78 */	mr r3, r31
/* 8004E660 0004A2C0  4B FF F9 19 */	bl func_8004DF78
lbl_8004E664:
/* 8004E664 0004A2C4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004E668 0004A2C8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004E66C 0004A2CC  7C 08 03 A6 */	mtlr r0
/* 8004E670 0004A2D0  38 21 00 10 */	addi r1, r1, 0x10
/* 8004E674 0004A2D4  4E 80 00 20 */	blr

.global func_8004E678
func_8004E678:
/* 8004E678 0004A2D8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E67C 0004A2DC  7C 08 02 A6 */	mflr r0
/* 8004E680 0004A2E0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004E684 0004A2E4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8004E688 0004A2E8  7C BF 2B 78 */	mr r31, r5
/* 8004E68C 0004A2EC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8004E690 0004A2F0  7C 9E 23 78 */	mr r30, r4
/* 8004E694 0004A2F4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8004E698 0004A2F8  7C 7D 1B 78 */	mr r29, r3
/* 8004E69C 0004A2FC  80 03 00 40 */	lwz r0, 0x40(r3)
/* 8004E6A0 0004A300  2C 00 00 00 */	cmpwi r0, 0
/* 8004E6A4 0004A304  41 82 00 C0 */	beq lbl_8004E764
/* 8004E6A8 0004A308  4B FE 49 E1 */	bl func_80033088
/* 8004E6AC 0004A30C  80 9D 00 40 */	lwz r4, 0x40(r29)
/* 8004E6B0 0004A310  80 84 01 38 */	lwz r4, 0x138(r4)
/* 8004E6B4 0004A314  2C 04 00 00 */	cmpwi r4, 0
/* 8004E6B8 0004A318  41 82 00 10 */	beq lbl_8004E6C8
/* 8004E6BC 0004A31C  A0 04 01 48 */	lhz r0, 0x148(r4)
/* 8004E6C0 0004A320  60 00 00 08 */	ori r0, r0, 8
/* 8004E6C4 0004A324  B0 04 01 48 */	sth r0, 0x148(r4)
lbl_8004E6C8:
/* 8004E6C8 0004A328  2C 1E 00 00 */	cmpwi r30, 0
/* 8004E6CC 0004A32C  41 82 00 1C */	beq lbl_8004E6E8
/* 8004E6D0 0004A330  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E6D4 0004A334  41 82 00 14 */	beq lbl_8004E6E8
/* 8004E6D8 0004A338  80 7D 00 40 */	lwz r3, 0x40(r29)
/* 8004E6DC 0004A33C  38 00 00 00 */	li r0, 0
/* 8004E6E0 0004A340  90 03 01 2C */	stw r0, 0x12c(r3)
/* 8004E6E4 0004A344  48 00 00 80 */	b lbl_8004E764
lbl_8004E6E8:
/* 8004E6E8 0004A348  2C 1E 00 00 */	cmpwi r30, 0
/* 8004E6EC 0004A34C  41 82 00 2C */	beq lbl_8004E718
/* 8004E6F0 0004A350  2C 03 00 00 */	cmpwi r3, 0
/* 8004E6F4 0004A354  41 82 00 0C */	beq lbl_8004E700
/* 8004E6F8 0004A358  38 80 00 00 */	li r4, 0
/* 8004E6FC 0004A35C  4B FE 54 81 */	bl func_80033B7C
lbl_8004E700:
/* 8004E700 0004A360  2C 03 00 00 */	cmpwi r3, 0
/* 8004E704 0004A364  41 82 00 60 */	beq lbl_8004E764
/* 8004E708 0004A368  4B FE 72 69 */	bl func_80035970
/* 8004E70C 0004A36C  80 9D 00 40 */	lwz r4, 0x40(r29)
/* 8004E710 0004A370  90 64 01 2C */	stw r3, 0x12c(r4)
/* 8004E714 0004A374  48 00 00 50 */	b lbl_8004E764
lbl_8004E718:
/* 8004E718 0004A378  2C 1F 00 00 */	cmpwi r31, 0
/* 8004E71C 0004A37C  41 82 00 2C */	beq lbl_8004E748
/* 8004E720 0004A380  2C 03 00 00 */	cmpwi r3, 0
/* 8004E724 0004A384  41 82 00 0C */	beq lbl_8004E730
/* 8004E728 0004A388  38 80 00 01 */	li r4, 1
/* 8004E72C 0004A38C  4B FE 54 51 */	bl func_80033B7C
lbl_8004E730:
/* 8004E730 0004A390  2C 03 00 00 */	cmpwi r3, 0
/* 8004E734 0004A394  41 82 00 30 */	beq lbl_8004E764
/* 8004E738 0004A398  4B FE 72 39 */	bl func_80035970
/* 8004E73C 0004A39C  80 9D 00 40 */	lwz r4, 0x40(r29)
/* 8004E740 0004A3A0  90 64 01 2C */	stw r3, 0x12c(r4)
/* 8004E744 0004A3A4  48 00 00 20 */	b lbl_8004E764
lbl_8004E748:
/* 8004E748 0004A3A8  80 7D 00 40 */	lwz r3, 0x40(r29)
/* 8004E74C 0004A3AC  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8004E750 0004A3B0  2C 03 00 00 */	cmpwi r3, 0
/* 8004E754 0004A3B4  41 82 00 10 */	beq lbl_8004E764
/* 8004E758 0004A3B8  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 8004E75C 0004A3BC  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 8004E760 0004A3C0  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_8004E764:
/* 8004E764 0004A3C4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004E768 0004A3C8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8004E76C 0004A3CC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8004E770 0004A3D0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8004E774 0004A3D4  7C 08 03 A6 */	mtlr r0
/* 8004E778 0004A3D8  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E77C 0004A3DC  4E 80 00 20 */	blr

.global func_8004E780
func_8004E780:
/* 8004E780 0004A3E0  80 03 00 34 */	lwz r0, 0x34(r3)
/* 8004E784 0004A3E4  90 83 00 54 */	stw r4, 0x54(r3)
/* 8004E788 0004A3E8  60 00 00 10 */	ori r0, r0, 0x10
/* 8004E78C 0004A3EC  90 03 00 34 */	stw r0, 0x34(r3)
/* 8004E790 0004A3F0  4E 80 00 20 */	blr

.global func_8004E794
func_8004E794:
/* 8004E794 0004A3F4  80 03 00 34 */	lwz r0, 0x34(r3)
/* 8004E798 0004A3F8  80 83 00 40 */	lwz r4, 0x40(r3)
/* 8004E79C 0004A3FC  54 00 07 34 */	rlwinm r0, r0, 0, 0x1c, 0x1a
/* 8004E7A0 0004A400  2C 04 00 00 */	cmpwi r4, 0
/* 8004E7A4 0004A404  90 03 00 34 */	stw r0, 0x34(r3)
/* 8004E7A8 0004A408  4D 82 00 20 */	beqlr
/* 8004E7AC 0004A40C  80 64 01 38 */	lwz r3, 0x138(r4)
/* 8004E7B0 0004A410  2C 03 00 00 */	cmpwi r3, 0
/* 8004E7B4 0004A414  4D 82 00 20 */	beqlr
/* 8004E7B8 0004A418  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 8004E7BC 0004A41C  54 00 06 F2 */	rlwinm r0, r0, 0, 0x1b, 0x19
/* 8004E7C0 0004A420  B0 03 01 48 */	sth r0, 0x148(r3)
/* 8004E7C4 0004A424  4E 80 00 20 */	blr

.global func_8004E7C8
func_8004E7C8:
/* 8004E7C8 0004A428  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8004E7CC 0004A42C  7C 08 02 A6 */	mflr r0
/* 8004E7D0 0004A430  90 01 00 14 */	stw r0, 0x14(r1)
/* 8004E7D4 0004A434  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8004E7D8 0004A438  7C 7F 1B 78 */	mr r31, r3
/* 8004E7DC 0004A43C  80 83 00 40 */	lwz r4, 0x40(r3)
/* 8004E7E0 0004A440  2C 04 00 00 */	cmpwi r4, 0
/* 8004E7E4 0004A444  41 82 00 64 */	beq lbl_8004E848
/* 8004E7E8 0004A448  80 04 01 04 */	lwz r0, 0x104(r4)
/* 8004E7EC 0004A44C  60 00 00 01 */	ori r0, r0, 1
/* 8004E7F0 0004A450  54 00 07 F8 */	rlwinm r0, r0, 0, 0x1f, 0x1c
/* 8004E7F4 0004A454  90 04 01 04 */	stw r0, 0x104(r4)
/* 8004E7F8 0004A458  D0 24 01 08 */	stfs f1, 0x108(r4)
/* 8004E7FC 0004A45C  80 63 00 40 */	lwz r3, 0x40(r3)
/* 8004E800 0004A460  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8004E804 0004A464  48 1B 90 3D */	bl func_80207840
/* 8004E808 0004A468  80 1F 00 34 */	lwz r0, 0x34(r31)
/* 8004E80C 0004A46C  D0 3F 00 4C */	stfs f1, 0x4c(r31)
/* 8004E810 0004A470  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8004E814 0004A474  41 82 00 20 */	beq lbl_8004E834
/* 8004E818 0004A478  80 7F 00 40 */	lwz r3, 0x40(r31)
/* 8004E81C 0004A47C  80 63 01 38 */	lwz r3, 0x138(r3)
/* 8004E820 0004A480  2C 03 00 00 */	cmpwi r3, 0
/* 8004E824 0004A484  41 82 00 10 */	beq lbl_8004E834
/* 8004E828 0004A488  A0 03 01 48 */	lhz r0, 0x148(r3)
/* 8004E82C 0004A48C  60 00 00 20 */	ori r0, r0, 0x20
/* 8004E830 0004A490  B0 03 01 48 */	sth r0, 0x148(r3)
lbl_8004E834:
/* 8004E834 0004A494  80 7F 00 34 */	lwz r3, 0x34(r31)
/* 8004E838 0004A498  38 00 00 00 */	li r0, 0
/* 8004E83C 0004A49C  90 1F 00 58 */	stw r0, 0x58(r31)
/* 8004E840 0004A4A0  60 60 00 08 */	ori r0, r3, 8
/* 8004E844 0004A4A4  90 1F 00 34 */	stw r0, 0x34(r31)
lbl_8004E848:
/* 8004E848 0004A4A8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8004E84C 0004A4AC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8004E850 0004A4B0  7C 08 03 A6 */	mtlr r0
/* 8004E854 0004A4B4  38 21 00 10 */	addi r1, r1, 0x10
/* 8004E858 0004A4B8  4E 80 00 20 */	blr

.global func_8004E85C
func_8004E85C:
/* 8004E85C 0004A4BC  94 21 FF D0 */	stwu r1, -0x30(r1)
/* 8004E860 0004A4C0  7C 08 02 A6 */	mflr r0
/* 8004E864 0004A4C4  90 01 00 34 */	stw r0, 0x34(r1)
/* 8004E868 0004A4C8  93 E1 00 2C */	stw r31, 0x2c(r1)
/* 8004E86C 0004A4CC  7C DF 33 78 */	mr r31, r6
/* 8004E870 0004A4D0  93 C1 00 28 */	stw r30, 0x28(r1)
/* 8004E874 0004A4D4  7C 9E 23 78 */	mr r30, r4
/* 8004E878 0004A4D8  93 A1 00 24 */	stw r29, 0x24(r1)
/* 8004E87C 0004A4DC  7C 7D 1B 78 */	mr r29, r3
/* 8004E880 0004A4E0  80 03 00 34 */	lwz r0, 0x34(r3)
/* 8004E884 0004A4E4  54 00 06 F7 */	rlwinm. r0, r0, 0, 0x1b, 0x1b
/* 8004E888 0004A4E8  41 82 00 7C */	beq lbl_8004E904
/* 8004E88C 0004A4EC  4B FF 6D 05 */	bl func_80045590
/* 8004E890 0004A4F0  80 8D A4 C8 */	lwz r4, lbl_8063F788-_SDA_BASE_(r13)
/* 8004E894 0004A4F4  80 BD 00 58 */	lwz r5, 0x58(r29)
/* 8004E898 0004A4F8  80 04 00 88 */	lwz r0, 0x88(r4)
/* 8004E89C 0004A4FC  7C 05 00 40 */	cmplw r5, r0
/* 8004E8A0 0004A500  41 82 00 64 */	beq lbl_8004E904
/* 8004E8A4 0004A504  7F C4 F3 78 */	mr r4, r30
/* 8004E8A8 0004A508  4B FF 79 E5 */	bl func_8004628C
/* 8004E8AC 0004A50C  2C 03 00 00 */	cmpwi r3, 0
/* 8004E8B0 0004A510  41 82 00 54 */	beq lbl_8004E904
/* 8004E8B4 0004A514  80 6D A4 C8 */	lwz r3, lbl_8063F788-_SDA_BASE_(r13)
/* 8004E8B8 0004A518  80 03 00 88 */	lwz r0, 0x88(r3)
/* 8004E8BC 0004A51C  90 1D 00 58 */	stw r0, 0x58(r29)
/* 8004E8C0 0004A520  4B FF EF 4D */	bl func_8004D80C
/* 8004E8C4 0004A524  C0 3F 00 04 */	lfs f1, 4(r31)
/* 8004E8C8 0004A528  38 A1 00 10 */	addi r5, r1, 0x10
/* 8004E8CC 0004A52C  C0 02 84 3C */	lfs f0, lbl_80640A3C-_SDA2_BASE_(r2)
/* 8004E8D0 0004A530  38 C1 00 08 */	addi r6, r1, 8
/* 8004E8D4 0004A534  C0 7F 00 08 */	lfs f3, 8(r31)
/* 8004E8D8 0004A538  38 63 35 10 */	addi r3, r3, 0x3510
/* 8004E8DC 0004A53C  C0 5F 00 00 */	lfs f2, 0(r31)
/* 8004E8E0 0004A540  EC 21 00 28 */	fsubs f1, f1, f0
/* 8004E8E4 0004A544  C0 02 84 40 */	lfs f0, lbl_80640A40-_SDA2_BASE_(r2)
/* 8004E8E8 0004A548  D0 41 00 10 */	stfs f2, 0x10(r1)
/* 8004E8EC 0004A54C  D0 21 00 14 */	stfs f1, 0x14(r1)
/* 8004E8F0 0004A550  D0 61 00 18 */	stfs f3, 0x18(r1)
/* 8004E8F4 0004A554  D0 01 00 08 */	stfs f0, 8(r1)
/* 8004E8F8 0004A558  D0 01 00 0C */	stfs f0, 0xc(r1)
/* 8004E8FC 0004A55C  80 9D 00 54 */	lwz r4, 0x54(r29)
/* 8004E900 0004A560  48 00 08 D9 */	bl func_8004F1D8
lbl_8004E904:
/* 8004E904 0004A564  80 01 00 34 */	lwz r0, 0x34(r1)
/* 8004E908 0004A568  83 E1 00 2C */	lwz r31, 0x2c(r1)
/* 8004E90C 0004A56C  83 C1 00 28 */	lwz r30, 0x28(r1)
/* 8004E910 0004A570  83 A1 00 24 */	lwz r29, 0x24(r1)
/* 8004E914 0004A574  7C 08 03 A6 */	mtlr r0
/* 8004E918 0004A578  38 21 00 30 */	addi r1, r1, 0x30
/* 8004E91C 0004A57C  4E 80 00 20 */	blr

.global func_8004E920
func_8004E920:
/* 8004E920 0004A580  3C 60 80 05 */	lis r3, lbl_8004E92C@ha
/* 8004E924 0004A584  38 63 E9 2C */	addi r3, r3, lbl_8004E92C@l
/* 8004E928 0004A588  48 1B 6B B8 */	b func_802054E0
lbl_8004E92C:
/* 8004E92C 0004A58C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8004E930 0004A590  7C 08 02 A6 */	mflr r0
/* 8004E934 0004A594  2C 03 00 00 */	cmpwi r3, 0
/* 8004E938 0004A598  90 01 00 24 */	stw r0, 0x24(r1)
/* 8004E93C 0004A59C  DB E1 00 18 */	stfd f31, 0x18(r1)
/* 8004E940 0004A5A0  FF E0 08 90 */	fmr f31, f1
/* 8004E944 0004A5A4  93 E1 00 14 */	stw r31, 0x14(r1)
/* 8004E948 0004A5A8  7C DF 33 78 */	mr r31, r6
/* 8004E94C 0004A5AC  93 C1 00 10 */	stw r30, 0x10(r1)
/* 8004E950 0004A5B0  7C BE 2B 78 */	mr r30, r5
/* 8004E954 0004A5B4  93 A1 00 0C */	stw r29, 0xc(r1)
/* 8004E958 0004A5B8  7C 9D 23 78 */	mr r29, r4
/* 8004E95C 0004A5BC  93 81 00 08 */	stw r28, 8(r1)
/* 8004E960 0004A5C0  7C 7C 1B 78 */	mr r28, r3
/* 8004E964 0004A5C4  40 82 00 0C */	bne lbl_8004E970
/* 8004E968 0004A5C8  38 60 00 00 */	li r3, 0
/* 8004E96C 0004A5CC  48 00 00 40 */	b lbl_8004E9AC
lbl_8004E970:
/* 8004E970 0004A5D0  4B FF EE 9D */	bl func_8004D80C
/* 8004E974 0004A5D4  2C 03 00 00 */	cmpwi r3, 0
/* 8004E978 0004A5D8  41 82 00 30 */	beq lbl_8004E9A8
/* 8004E97C 0004A5DC  2C 1C 00 00 */	cmpwi r28, 0
/* 8004E980 0004A5E0  41 82 00 28 */	beq lbl_8004E9A8
/* 8004E984 0004A5E4  80 9C 01 3C */	lwz r4, 0x13c(r28)
/* 8004E988 0004A5E8  4B FF F4 A1 */	bl func_8004DE28
/* 8004E98C 0004A5EC  2C 03 00 00 */	cmpwi r3, 0
/* 8004E990 0004A5F0  41 82 00 18 */	beq lbl_8004E9A8
/* 8004E994 0004A5F4  FC 20 F8 90 */	fmr f1, f31
/* 8004E998 0004A5F8  7F A4 EB 78 */	mr r4, r29
/* 8004E99C 0004A5FC  7F C5 F3 78 */	mr r5, r30
/* 8004E9A0 0004A600  7F E6 FB 78 */	mr r6, r31
/* 8004E9A4 0004A604  4B FF FE B9 */	bl func_8004E85C
lbl_8004E9A8:
/* 8004E9A8 0004A608  38 60 00 00 */	li r3, 0
lbl_8004E9AC:
/* 8004E9AC 0004A60C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8004E9B0 0004A610  CB E1 00 18 */	lfd f31, 0x18(r1)
/* 8004E9B4 0004A614  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 8004E9B8 0004A618  83 C1 00 10 */	lwz r30, 0x10(r1)
/* 8004E9BC 0004A61C  83 A1 00 0C */	lwz r29, 0xc(r1)
/* 8004E9C0 0004A620  83 81 00 08 */	lwz r28, 8(r1)
/* 8004E9C4 0004A624  7C 08 03 A6 */	mtlr r0
/* 8004E9C8 0004A628  38 21 00 20 */	addi r1, r1, 0x20
/* 8004E9CC 0004A62C  4E 80 00 20 */	blr

.global func_8004E9D0
func_8004E9D0:
/* 8004E9D0 0004A630  38 A0 00 01 */	li r5, 1
/* 8004E9D4 0004A634  38 6D 98 38 */	addi r3, r13, lbl_8063EAF8-_SDA_BASE_
/* 8004E9D8 0004A638  38 80 00 04 */	li r4, 4
/* 8004E9DC 0004A63C  38 00 00 00 */	li r0, 0
/* 8004E9E0 0004A640  98 AD 98 38 */	stb r5, lbl_8063EAF8-_SDA_BASE_(r13)
/* 8004E9E4 0004A644  B0 83 00 02 */	sth r4, 2(r3)
/* 8004E9E8 0004A648  98 03 00 04 */	stb r0, 4(r3)
/* 8004E9EC 0004A64C  4E 80 00 20 */	blr