summaryrefslogtreecommitdiff
path: root/asm/code_801E474C.s
blob: 52b7d0fe274057872e997aa6aac2f2f396a156ac (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
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
.include "macros.inc"

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

.global func_801E474C
func_801E474C:
/* 801E474C 001E03AC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 801E4750 001E03B0  7C 08 02 A6 */	mflr r0
/* 801E4754 001E03B4  90 01 00 24 */	stw r0, 0x24(r1)
/* 801E4758 001E03B8  39 61 00 20 */	addi r11, r1, 0x20
/* 801E475C 001E03BC  4B FE 29 C9 */	bl _savegpr_26
/* 801E4760 001E03C0  7C 7F 1B 78 */	mr r31, r3
/* 801E4764 001E03C4  4B FF 63 C5 */	bl func_801DAB28
/* 801E4768 001E03C8  2C 03 00 00 */	cmpwi r3, 0
/* 801E476C 001E03CC  41 82 00 18 */	beq lbl_801E4784
/* 801E4770 001E03D0  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801E4774 001E03D4  38 80 00 A4 */	li r4, 0xa4
/* 801E4778 001E03D8  4B FF 65 1D */	bl func_801DAC94
/* 801E477C 001E03DC  7C 7D 1B 78 */	mr r29, r3
/* 801E4780 001E03E0  48 00 00 08 */	b lbl_801E4788
lbl_801E4784:
/* 801E4784 001E03E4  3B A0 00 00 */	li r29, 0
lbl_801E4788:
/* 801E4788 001E03E8  2C 1D 00 00 */	cmpwi r29, 0
/* 801E478C 001E03EC  41 82 00 2C */	beq lbl_801E47B8
/* 801E4790 001E03F0  38 00 00 00 */	li r0, 0
/* 801E4794 001E03F4  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E4798 001E03F8  98 1D 00 00 */	stb r0, 0(r29)
/* 801E479C 001E03FC  B0 1D 00 02 */	sth r0, 2(r29)
/* 801E47A0 001E0400  90 1D 00 08 */	stw r0, 8(r29)
/* 801E47A4 001E0404  D0 1D 00 0C */	stfs f0, 0xc(r29)
/* 801E47A8 001E0408  D0 1D 00 10 */	stfs f0, 0x10(r29)
/* 801E47AC 001E040C  D0 1D 00 14 */	stfs f0, 0x14(r29)
/* 801E47B0 001E0410  90 1D 00 1C */	stw r0, 0x1c(r29)
/* 801E47B4 001E0414  90 1D 00 20 */	stw r0, 0x20(r29)
lbl_801E47B8:
/* 801E47B8 001E0418  2C 1D 00 00 */	cmpwi r29, 0
/* 801E47BC 001E041C  40 82 00 0C */	bne lbl_801E47C8
/* 801E47C0 001E0420  38 60 00 00 */	li r3, 0
/* 801E47C4 001E0424  48 00 00 E0 */	b lbl_801E48A4
lbl_801E47C8:
/* 801E47C8 001E0428  93 FD 00 1C */	stw r31, 0x1c(r29)
/* 801E47CC 001E042C  80 7F 00 00 */	lwz r3, 0(r31)
/* 801E47D0 001E0430  3C 03 84 E2 */	addis r0, r3, 0x84e2
/* 801E47D4 001E0434  28 00 E3 F2 */	cmplwi r0, 0xe3f2
/* 801E47D8 001E0438  41 82 00 18 */	beq lbl_801E47F0
/* 801E47DC 001E043C  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801E47E0 001E0440  7F A4 EB 78 */	mr r4, r29
/* 801E47E4 001E0444  4B FF 65 65 */	bl func_801DAD48
/* 801E47E8 001E0448  38 60 00 00 */	li r3, 0
/* 801E47EC 001E044C  48 00 00 B8 */	b lbl_801E48A4
lbl_801E47F0:
/* 801E47F0 001E0450  38 9F 00 2C */	addi r4, r31, 0x2c
/* 801E47F4 001E0454  3B 40 00 00 */	li r26, 0
/* 801E47F8 001E0458  90 9D 00 20 */	stw r4, 0x20(r29)
/* 801E47FC 001E045C  3F C0 80 00 */	lis r30, 0x8000
/* 801E4800 001E0460  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 801E4804 001E0464  A0 03 00 06 */	lhz r0, 6(r3)
/* 801E4808 001E0468  54 00 20 36 */	slwi r0, r0, 4
/* 801E480C 001E046C  7F 84 02 14 */	add r28, r4, r0
/* 801E4810 001E0470  48 00 00 78 */	b lbl_801E4888
lbl_801E4814:
/* 801E4814 001E0474  2C 1F 00 00 */	cmpwi r31, 0
/* 801E4818 001E0478  41 82 00 20 */	beq lbl_801E4838
/* 801E481C 001E047C  80 1C 00 04 */	lwz r0, 4(r28)
/* 801E4820 001E0480  2C 00 00 00 */	cmpwi r0, 0
/* 801E4824 001E0484  41 82 00 14 */	beq lbl_801E4838
/* 801E4828 001E0488  7C 00 F0 40 */	cmplw r0, r30
/* 801E482C 001E048C  40 80 00 0C */	bge lbl_801E4838
/* 801E4830 001E0490  7C 00 FA 14 */	add r0, r0, r31
/* 801E4834 001E0494  90 1C 00 04 */	stw r0, 4(r28)
lbl_801E4838:
/* 801E4838 001E0498  80 7C 00 04 */	lwz r3, 4(r28)
/* 801E483C 001E049C  48 05 8E 91 */	bl func_8023D6CC
/* 801E4840 001E04A0  2C 03 00 00 */	cmpwi r3, 0
/* 801E4844 001E04A4  7C 7B 1B 78 */	mr r27, r3
/* 801E4848 001E04A8  40 82 00 18 */	bne lbl_801E4860
/* 801E484C 001E04AC  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801E4850 001E04B0  7F A4 EB 78 */	mr r4, r29
/* 801E4854 001E04B4  4B FF 64 F5 */	bl func_801DAD48
/* 801E4858 001E04B8  38 60 00 00 */	li r3, 0
/* 801E485C 001E04BC  48 00 00 48 */	b lbl_801E48A4
lbl_801E4860:
/* 801E4860 001E04C0  38 80 00 02 */	li r4, 2
/* 801E4864 001E04C4  38 A0 00 02 */	li r5, 2
/* 801E4868 001E04C8  38 C0 00 00 */	li r6, 0
/* 801E486C 001E04CC  48 05 9B 5D */	bl func_8023E3C8
/* 801E4870 001E04D0  A0 1C 00 00 */	lhz r0, 0(r28)
/* 801E4874 001E04D4  3B 9C 00 08 */	addi r28, r28, 8
/* 801E4878 001E04D8  3B 5A 00 01 */	addi r26, r26, 1
/* 801E487C 001E04DC  54 00 10 3A */	slwi r0, r0, 2
/* 801E4880 001E04E0  7C 7D 02 14 */	add r3, r29, r0
/* 801E4884 001E04E4  93 63 00 24 */	stw r27, 0x24(r3)
lbl_801E4888:
/* 801E4888 001E04E8  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 801E488C 001E04EC  A0 03 00 04 */	lhz r0, 4(r3)
/* 801E4890 001E04F0  7C 1A 00 00 */	cmpw r26, r0
/* 801E4894 001E04F4  41 80 FF 80 */	blt lbl_801E4814
/* 801E4898 001E04F8  C0 02 96 C4 */	lfs f0, lbl_80641CC4-_SDA2_BASE_(r2)
/* 801E489C 001E04FC  7F A3 EB 78 */	mr r3, r29
/* 801E48A0 001E0500  D0 1D 00 18 */	stfs f0, 0x18(r29)
lbl_801E48A4:
/* 801E48A4 001E0504  39 61 00 20 */	addi r11, r1, 0x20
/* 801E48A8 001E0508  4B FE 28 C9 */	bl _restgpr_26
/* 801E48AC 001E050C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 801E48B0 001E0510  7C 08 03 A6 */	mtlr r0
/* 801E48B4 001E0514  38 21 00 20 */	addi r1, r1, 0x20
/* 801E48B8 001E0518  4E 80 00 20 */	blr

.global func_801E48BC
func_801E48BC:
/* 801E48BC 001E051C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 801E48C0 001E0520  7C 08 02 A6 */	mflr r0
/* 801E48C4 001E0524  3C 80 80 42 */	lis r4, lbl_80423540@ha
/* 801E48C8 001E0528  90 01 00 14 */	stw r0, 0x14(r1)
/* 801E48CC 001E052C  38 84 35 40 */	addi r4, r4, lbl_80423540@l
/* 801E48D0 001E0530  93 E1 00 0C */	stw r31, 0xc(r1)
/* 801E48D4 001E0534  7C 7F 1B 78 */	mr r31, r3
/* 801E48D8 001E0538  48 05 21 45 */	bl func_80236A1C
/* 801E48DC 001E053C  3C 80 80 42 */	lis r4, lbl_80423550@ha
/* 801E48E0 001E0540  38 00 00 00 */	li r0, 0
/* 801E48E4 001E0544  38 84 35 50 */	addi r4, r4, lbl_80423550@l
/* 801E48E8 001E0548  90 1F 00 10 */	stw r0, 0x10(r31)
/* 801E48EC 001E054C  7F E3 FB 78 */	mr r3, r31
/* 801E48F0 001E0550  90 9F 00 0C */	stw r4, 0xc(r31)
/* 801E48F4 001E0554  90 1F 00 14 */	stw r0, 0x14(r31)
/* 801E48F8 001E0558  93 ED A0 D0 */	stw r31, lbl_8063F390-_SDA_BASE_(r13)
/* 801E48FC 001E055C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 801E4900 001E0560  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801E4904 001E0564  7C 08 03 A6 */	mtlr r0
/* 801E4908 001E0568  38 21 00 10 */	addi r1, r1, 0x10
/* 801E490C 001E056C  4E 80 00 20 */	blr
/* 801E4910 001E0570  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 801E4914 001E0574  7C 08 02 A6 */	mflr r0
/* 801E4918 001E0578  2C 03 00 00 */	cmpwi r3, 0
/* 801E491C 001E057C  90 01 00 14 */	stw r0, 0x14(r1)
/* 801E4920 001E0580  93 E1 00 0C */	stw r31, 0xc(r1)
/* 801E4924 001E0584  7C 9F 23 78 */	mr r31, r4
/* 801E4928 001E0588  93 C1 00 08 */	stw r30, 8(r1)
/* 801E492C 001E058C  7C 7E 1B 78 */	mr r30, r3
/* 801E4930 001E0590  41 82 00 24 */	beq lbl_801E4954
/* 801E4934 001E0594  38 00 00 00 */	li r0, 0
/* 801E4938 001E0598  38 80 00 00 */	li r4, 0
/* 801E493C 001E059C  90 0D A0 D0 */	stw r0, lbl_8063F390-_SDA_BASE_(r13)
/* 801E4940 001E05A0  48 05 21 35 */	bl func_80236A74
/* 801E4944 001E05A4  2C 1F 00 00 */	cmpwi r31, 0
/* 801E4948 001E05A8  40 81 00 0C */	ble lbl_801E4954
/* 801E494C 001E05AC  7F C3 F3 78 */	mr r3, r30
/* 801E4950 001E05B0  4B FF 61 69 */	bl __dl__FPv
lbl_801E4954:
/* 801E4954 001E05B4  7F C3 F3 78 */	mr r3, r30
/* 801E4958 001E05B8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 801E495C 001E05BC  83 C1 00 08 */	lwz r30, 8(r1)
/* 801E4960 001E05C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 801E4964 001E05C4  7C 08 03 A6 */	mtlr r0
/* 801E4968 001E05C8  38 21 00 10 */	addi r1, r1, 0x10
/* 801E496C 001E05CC  4E 80 00 20 */	blr

.global func_801E4970
func_801E4970:
/* 801E4970 001E05D0  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 801E4974 001E05D4  7C 08 02 A6 */	mflr r0
/* 801E4978 001E05D8  2C 03 00 00 */	cmpwi r3, 0
/* 801E497C 001E05DC  90 01 00 24 */	stw r0, 0x24(r1)
/* 801E4980 001E05E0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 801E4984 001E05E4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 801E4988 001E05E8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 801E498C 001E05EC  40 82 00 0C */	bne lbl_801E4998
/* 801E4990 001E05F0  38 60 00 00 */	li r3, 0
/* 801E4994 001E05F4  48 00 00 D4 */	b lbl_801E4A68
lbl_801E4998:
/* 801E4998 001E05F8  3C 80 80 49 */	lis r4, lbl_804918C0@ha
/* 801E499C 001E05FC  38 00 00 04 */	li r0, 4
/* 801E49A0 001E0600  38 84 18 C0 */	addi r4, r4, lbl_804918C0@l
/* 801E49A4 001E0604  3B C0 00 00 */	li r30, 0
/* 801E49A8 001E0608  7C 09 03 A6 */	mtctr r0
lbl_801E49AC:
/* 801E49AC 001E060C  83 A4 00 00 */	lwz r29, 0(r4)
/* 801E49B0 001E0610  2C 1D 00 00 */	cmpwi r29, 0
/* 801E49B4 001E0614  41 82 00 10 */	beq lbl_801E49C4
/* 801E49B8 001E0618  80 1D 00 1C */	lwz r0, 0x1c(r29)
/* 801E49BC 001E061C  7C 00 18 40 */	cmplw r0, r3
/* 801E49C0 001E0620  40 82 00 98 */	bne lbl_801E4A58
lbl_801E49C4:
/* 801E49C4 001E0624  2C 1D 00 00 */	cmpwi r29, 0
/* 801E49C8 001E0628  40 82 00 0C */	bne lbl_801E49D4
/* 801E49CC 001E062C  4B FF FD 81 */	bl func_801E474C
/* 801E49D0 001E0630  7C 7D 1B 78 */	mr r29, r3
lbl_801E49D4:
/* 801E49D4 001E0634  2C 1D 00 00 */	cmpwi r29, 0
/* 801E49D8 001E0638  41 82 00 78 */	beq lbl_801E4A50
/* 801E49DC 001E063C  3C 60 80 49 */	lis r3, lbl_804918C0@ha
/* 801E49E0 001E0640  57 C0 10 3A */	slwi r0, r30, 2
/* 801E49E4 001E0644  38 63 18 C0 */	addi r3, r3, lbl_804918C0@l
/* 801E49E8 001E0648  7F A3 01 2E */	stwx r29, r3, r0
/* 801E49EC 001E064C  A0 7D 00 02 */	lhz r3, 2(r29)
/* 801E49F0 001E0650  38 03 00 01 */	addi r0, r3, 1
/* 801E49F4 001E0654  B0 1D 00 02 */	sth r0, 2(r29)
/* 801E49F8 001E0658  80 6D A0 D0 */	lwz r3, lbl_8063F390-_SDA_BASE_(r13)
/* 801E49FC 001E065C  83 E3 00 14 */	lwz r31, 0x14(r3)
/* 801E4A00 001E0660  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 801E4A04 001E0664  48 05 66 55 */	bl func_8023B058
/* 801E4A08 001E0668  2C 03 00 00 */	cmpwi r3, 0
/* 801E4A0C 001E066C  41 82 00 0C */	beq lbl_801E4A18
/* 801E4A10 001E0670  7F E4 FB 78 */	mr r4, r31
/* 801E4A14 001E0674  48 05 69 A5 */	bl func_8023B3B8
lbl_801E4A18:
/* 801E4A18 001E0678  80 7D 00 1C */	lwz r3, 0x1c(r29)
/* 801E4A1C 001E067C  80 03 00 08 */	lwz r0, 8(r3)
/* 801E4A20 001E0680  54 00 07 39 */	rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 801E4A24 001E0684  41 82 00 24 */	beq lbl_801E4A48
/* 801E4A28 001E0688  80 6D A0 D0 */	lwz r3, lbl_8063F390-_SDA_BASE_(r13)
/* 801E4A2C 001E068C  83 E3 00 10 */	lwz r31, 0x10(r3)
/* 801E4A30 001E0690  57 E3 86 3E */	rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 801E4A34 001E0694  48 05 66 25 */	bl func_8023B058
/* 801E4A38 001E0698  2C 03 00 00 */	cmpwi r3, 0
/* 801E4A3C 001E069C  41 82 00 0C */	beq lbl_801E4A48
/* 801E4A40 001E06A0  7F E4 FB 78 */	mr r4, r31
/* 801E4A44 001E06A4  48 05 69 75 */	bl func_8023B3B8
lbl_801E4A48:
/* 801E4A48 001E06A8  38 7E 00 01 */	addi r3, r30, 1
/* 801E4A4C 001E06AC  48 00 00 1C */	b lbl_801E4A68
lbl_801E4A50:
/* 801E4A50 001E06B0  38 60 00 00 */	li r3, 0
/* 801E4A54 001E06B4  48 00 00 14 */	b lbl_801E4A68
lbl_801E4A58:
/* 801E4A58 001E06B8  38 84 00 04 */	addi r4, r4, 4
/* 801E4A5C 001E06BC  3B DE 00 01 */	addi r30, r30, 1
/* 801E4A60 001E06C0  42 00 FF 4C */	bdnz lbl_801E49AC
/* 801E4A64 001E06C4  38 60 00 00 */	li r3, 0
lbl_801E4A68:
/* 801E4A68 001E06C8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 801E4A6C 001E06CC  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 801E4A70 001E06D0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 801E4A74 001E06D4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 801E4A78 001E06D8  7C 08 03 A6 */	mtlr r0
/* 801E4A7C 001E06DC  38 21 00 20 */	addi r1, r1, 0x20
/* 801E4A80 001E06E0  4E 80 00 20 */	blr

.global func_801E4A84
func_801E4A84:
/* 801E4A84 001E06E4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 801E4A88 001E06E8  7C 08 02 A6 */	mflr r0
/* 801E4A8C 001E06EC  2C 03 00 00 */	cmpwi r3, 0
/* 801E4A90 001E06F0  90 01 00 24 */	stw r0, 0x24(r1)
/* 801E4A94 001E06F4  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 801E4A98 001E06F8  93 C1 00 18 */	stw r30, 0x18(r1)
/* 801E4A9C 001E06FC  93 A1 00 14 */	stw r29, 0x14(r1)
/* 801E4AA0 001E0700  93 81 00 10 */	stw r28, 0x10(r1)
/* 801E4AA4 001E0704  41 82 00 9C */	beq lbl_801E4B40
/* 801E4AA8 001E0708  38 03 FF FF */	addi r0, r3, -1
/* 801E4AAC 001E070C  3F E0 80 49 */	lis r31, lbl_804918C0@ha
/* 801E4AB0 001E0710  54 1E 10 3A */	slwi r30, r0, 2
/* 801E4AB4 001E0714  3B FF 18 C0 */	addi r31, r31, lbl_804918C0@l
/* 801E4AB8 001E0718  7F 9F F0 2E */	lwzx r28, r31, r30
/* 801E4ABC 001E071C  2C 1C 00 00 */	cmpwi r28, 0
/* 801E4AC0 001E0720  41 82 00 80 */	beq lbl_801E4B40
/* 801E4AC4 001E0724  A0 7C 00 02 */	lhz r3, 2(r28)
/* 801E4AC8 001E0728  38 03 FF FF */	addi r0, r3, -1
/* 801E4ACC 001E072C  B0 1C 00 02 */	sth r0, 2(r28)
/* 801E4AD0 001E0730  80 6D A0 D0 */	lwz r3, lbl_8063F390-_SDA_BASE_(r13)
/* 801E4AD4 001E0734  83 A3 00 14 */	lwz r29, 0x14(r3)
/* 801E4AD8 001E0738  57 A3 86 3E */	rlwinm r3, r29, 0x10, 0x18, 0x1f
/* 801E4ADC 001E073C  48 05 65 7D */	bl func_8023B058
/* 801E4AE0 001E0740  2C 03 00 00 */	cmpwi r3, 0
/* 801E4AE4 001E0744  41 82 00 0C */	beq lbl_801E4AF0
/* 801E4AE8 001E0748  7F A4 EB 78 */	mr r4, r29
/* 801E4AEC 001E074C  48 05 69 35 */	bl func_8023B420
lbl_801E4AF0:
/* 801E4AF0 001E0750  80 7C 00 1C */	lwz r3, 0x1c(r28)
/* 801E4AF4 001E0754  80 03 00 08 */	lwz r0, 8(r3)
/* 801E4AF8 001E0758  54 00 07 39 */	rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 801E4AFC 001E075C  41 82 00 24 */	beq lbl_801E4B20
/* 801E4B00 001E0760  80 6D A0 D0 */	lwz r3, lbl_8063F390-_SDA_BASE_(r13)
/* 801E4B04 001E0764  83 A3 00 10 */	lwz r29, 0x10(r3)
/* 801E4B08 001E0768  57 A3 86 3E */	rlwinm r3, r29, 0x10, 0x18, 0x1f
/* 801E4B0C 001E076C  48 05 65 4D */	bl func_8023B058
/* 801E4B10 001E0770  2C 03 00 00 */	cmpwi r3, 0
/* 801E4B14 001E0774  41 82 00 0C */	beq lbl_801E4B20
/* 801E4B18 001E0778  7F A4 EB 78 */	mr r4, r29
/* 801E4B1C 001E077C  48 05 69 05 */	bl func_8023B420
lbl_801E4B20:
/* 801E4B20 001E0780  A0 1C 00 02 */	lhz r0, 2(r28)
/* 801E4B24 001E0784  2C 00 00 00 */	cmpwi r0, 0
/* 801E4B28 001E0788  40 82 00 18 */	bne lbl_801E4B40
/* 801E4B2C 001E078C  80 6D 96 38 */	lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 801E4B30 001E0790  7F 84 E3 78 */	mr r4, r28
/* 801E4B34 001E0794  4B FF 62 15 */	bl func_801DAD48
/* 801E4B38 001E0798  38 00 00 00 */	li r0, 0
/* 801E4B3C 001E079C  7C 1F F1 2E */	stwx r0, r31, r30
lbl_801E4B40:
/* 801E4B40 001E07A0  80 01 00 24 */	lwz r0, 0x24(r1)
/* 801E4B44 001E07A4  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 801E4B48 001E07A8  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 801E4B4C 001E07AC  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 801E4B50 001E07B0  83 81 00 10 */	lwz r28, 0x10(r1)
/* 801E4B54 001E07B4  7C 08 03 A6 */	mtlr r0
/* 801E4B58 001E07B8  38 21 00 20 */	addi r1, r1, 0x20
/* 801E4B5C 001E07BC  4E 80 00 20 */	blr

.global func_801E4B60
func_801E4B60:
/* 801E4B60 001E07C0  2C 03 00 00 */	cmpwi r3, 0
/* 801E4B64 001E07C4  4D 82 00 20 */	beqlr
/* 801E4B68 001E07C8  38 03 FF FF */	addi r0, r3, -1
/* 801E4B6C 001E07CC  3C 60 80 49 */	lis r3, lbl_804918C0@ha
/* 801E4B70 001E07D0  54 00 10 3A */	slwi r0, r0, 2
/* 801E4B74 001E07D4  38 63 18 C0 */	addi r3, r3, lbl_804918C0@l
/* 801E4B78 001E07D8  7C 63 00 2E */	lwzx r3, r3, r0
/* 801E4B7C 001E07DC  2C 03 00 00 */	cmpwi r3, 0
/* 801E4B80 001E07E0  4D 82 00 20 */	beqlr
/* 801E4B84 001E07E4  90 83 00 08 */	stw r4, 8(r3)
/* 801E4B88 001E07E8  4E 80 00 20 */	blr

.global func_801E4B8C
func_801E4B8C:
/* 801E4B8C 001E07EC  2C 03 00 00 */	cmpwi r3, 0
/* 801E4B90 001E07F0  4D 82 00 20 */	beqlr
/* 801E4B94 001E07F4  38 03 FF FF */	addi r0, r3, -1
/* 801E4B98 001E07F8  3C 60 80 49 */	lis r3, lbl_804918C0@ha
/* 801E4B9C 001E07FC  54 00 10 3A */	slwi r0, r0, 2
/* 801E4BA0 001E0800  38 63 18 C0 */	addi r3, r3, lbl_804918C0@l
/* 801E4BA4 001E0804  7C 63 00 2E */	lwzx r3, r3, r0
/* 801E4BA8 001E0808  2C 03 00 00 */	cmpwi r3, 0
/* 801E4BAC 001E080C  4D 82 00 20 */	beqlr
/* 801E4BB0 001E0810  C0 04 00 00 */	lfs f0, 0(r4)
/* 801E4BB4 001E0814  C0 24 00 04 */	lfs f1, 4(r4)
/* 801E4BB8 001E0818  D0 03 00 0C */	stfs f0, 0xc(r3)
/* 801E4BBC 001E081C  C0 04 00 08 */	lfs f0, 8(r4)
/* 801E4BC0 001E0820  D0 23 00 10 */	stfs f1, 0x10(r3)
/* 801E4BC4 001E0824  D0 03 00 14 */	stfs f0, 0x14(r3)
/* 801E4BC8 001E0828  4E 80 00 20 */	blr

.global func_801E4BCC
func_801E4BCC:
/* 801E4BCC 001E082C  2C 03 00 00 */	cmpwi r3, 0
/* 801E4BD0 001E0830  4D 82 00 20 */	beqlr
/* 801E4BD4 001E0834  38 03 FF FF */	addi r0, r3, -1
/* 801E4BD8 001E0838  3C 60 80 49 */	lis r3, lbl_804918C0@ha
/* 801E4BDC 001E083C  54 00 10 3A */	slwi r0, r0, 2
/* 801E4BE0 001E0840  38 63 18 C0 */	addi r3, r3, lbl_804918C0@l
/* 801E4BE4 001E0844  7C 63 00 2E */	lwzx r3, r3, r0
/* 801E4BE8 001E0848  2C 03 00 00 */	cmpwi r3, 0
/* 801E4BEC 001E084C  4D 82 00 20 */	beqlr
/* 801E4BF0 001E0850  98 83 00 00 */	stb r4, 0(r3)
/* 801E4BF4 001E0854  4E 80 00 20 */	blr
/* 801E4BF8 001E0858  3C 60 80 49 */	lis r3, lbl_804918C0@ha
/* 801E4BFC 001E085C  38 00 00 02 */	li r0, 2
/* 801E4C00 001E0860  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 801E4C04 001E0864  38 63 18 C0 */	addi r3, r3, lbl_804918C0@l
/* 801E4C08 001E0868  38 C0 00 00 */	li r6, 0
/* 801E4C0C 001E086C  7C 09 03 A6 */	mtctr r0
lbl_801E4C10:
/* 801E4C10 001E0870  54 C0 13 BA */	rlwinm r0, r6, 2, 0xe, 0x1d
/* 801E4C14 001E0874  7C A3 00 2E */	lwzx r5, r3, r0
/* 801E4C18 001E0878  2C 05 00 00 */	cmpwi r5, 0
/* 801E4C1C 001E087C  41 82 00 34 */	beq lbl_801E4C50
/* 801E4C20 001E0880  80 85 00 08 */	lwz r4, 8(r5)
/* 801E4C24 001E0884  2C 04 00 00 */	cmpwi r4, 0
/* 801E4C28 001E0888  41 82 00 28 */	beq lbl_801E4C50
/* 801E4C2C 001E088C  C0 44 00 DC */	lfs f2, 0xdc(r4)
/* 801E4C30 001E0890  C0 24 00 EC */	lfs f1, 0xec(r4)
/* 801E4C34 001E0894  C0 04 00 FC */	lfs f0, 0xfc(r4)
/* 801E4C38 001E0898  D0 41 00 08 */	stfs f2, 8(r1)
/* 801E4C3C 001E089C  D0 45 00 0C */	stfs f2, 0xc(r5)
/* 801E4C40 001E08A0  D0 25 00 10 */	stfs f1, 0x10(r5)
/* 801E4C44 001E08A4  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 801E4C48 001E08A8  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 801E4C4C 001E08AC  D0 05 00 14 */	stfs f0, 0x14(r5)
lbl_801E4C50:
/* 801E4C50 001E08B0  38 C6 00 01 */	addi r6, r6, 1
/* 801E4C54 001E08B4  54 C0 13 BA */	rlwinm r0, r6, 2, 0xe, 0x1d
/* 801E4C58 001E08B8  7C A3 00 2E */	lwzx r5, r3, r0
/* 801E4C5C 001E08BC  2C 05 00 00 */	cmpwi r5, 0
/* 801E4C60 001E08C0  41 82 00 34 */	beq lbl_801E4C94
/* 801E4C64 001E08C4  80 85 00 08 */	lwz r4, 8(r5)
/* 801E4C68 001E08C8  2C 04 00 00 */	cmpwi r4, 0
/* 801E4C6C 001E08CC  41 82 00 28 */	beq lbl_801E4C94
/* 801E4C70 001E08D0  C0 44 00 DC */	lfs f2, 0xdc(r4)
/* 801E4C74 001E08D4  C0 24 00 EC */	lfs f1, 0xec(r4)
/* 801E4C78 001E08D8  C0 04 00 FC */	lfs f0, 0xfc(r4)
/* 801E4C7C 001E08DC  D0 41 00 08 */	stfs f2, 8(r1)
/* 801E4C80 001E08E0  D0 45 00 0C */	stfs f2, 0xc(r5)
/* 801E4C84 001E08E4  D0 25 00 10 */	stfs f1, 0x10(r5)
/* 801E4C88 001E08E8  D0 21 00 0C */	stfs f1, 0xc(r1)
/* 801E4C8C 001E08EC  D0 01 00 10 */	stfs f0, 0x10(r1)
/* 801E4C90 001E08F0  D0 05 00 14 */	stfs f0, 0x14(r5)
lbl_801E4C94:
/* 801E4C94 001E08F4  38 C6 00 01 */	addi r6, r6, 1
/* 801E4C98 001E08F8  42 00 FF 78 */	bdnz lbl_801E4C10
/* 801E4C9C 001E08FC  38 21 00 20 */	addi r1, r1, 0x20
/* 801E4CA0 001E0900  4E 80 00 20 */	blr
/* 801E4CA4 001E0904  94 21 F9 30 */	stwu r1, -0x6d0(r1)
/* 801E4CA8 001E0908  7C 08 02 A6 */	mflr r0
/* 801E4CAC 001E090C  90 01 06 D4 */	stw r0, 0x6d4(r1)
/* 801E4CB0 001E0910  DB E1 06 C0 */	stfd f31, 0x6c0(r1)
/* 801E4CB4 001E0914  F3 E1 06 C8 */	psq_st f31, 1736(r1), 0, qr0
/* 801E4CB8 001E0918  DB C1 06 B0 */	stfd f30, 0x6b0(r1)
/* 801E4CBC 001E091C  F3 C1 06 B8 */	psq_st f30, 1720(r1), 0, qr0
/* 801E4CC0 001E0920  DB A1 06 A0 */	stfd f29, 0x6a0(r1)
/* 801E4CC4 001E0924  F3 A1 06 A8 */	psq_st f29, 1704(r1), 0, qr0
/* 801E4CC8 001E0928  DB 81 06 90 */	stfd f28, 0x690(r1)
/* 801E4CCC 001E092C  F3 81 06 98 */	psq_st f28, 1688(r1), 0, qr0
/* 801E4CD0 001E0930  DB 61 06 80 */	stfd f27, 0x680(r1)
/* 801E4CD4 001E0934  F3 61 06 88 */	psq_st f27, 1672(r1), 0, qr0
/* 801E4CD8 001E0938  DB 41 06 70 */	stfd f26, 0x670(r1)
/* 801E4CDC 001E093C  F3 41 06 78 */	psq_st f26, 1656(r1), 0, qr0
/* 801E4CE0 001E0940  DB 21 06 60 */	stfd f25, 0x660(r1)
/* 801E4CE4 001E0944  F3 21 06 68 */	psq_st f25, 1640(r1), 0, qr0
/* 801E4CE8 001E0948  DB 01 06 50 */	stfd f24, 0x650(r1)
/* 801E4CEC 001E094C  F3 01 06 58 */	psq_st f24, 1624(r1), 0, qr0
/* 801E4CF0 001E0950  DA E1 06 40 */	stfd f23, 0x640(r1)
/* 801E4CF4 001E0954  F2 E1 06 48 */	psq_st f23, 1608(r1), 0, qr0
/* 801E4CF8 001E0958  DA C1 06 30 */	stfd f22, 0x630(r1)
/* 801E4CFC 001E095C  F2 C1 06 38 */	psq_st f22, 1592(r1), 0, qr0
/* 801E4D00 001E0960  DA A1 06 20 */	stfd f21, 0x620(r1)
/* 801E4D04 001E0964  F2 A1 06 28 */	psq_st f21, 1576(r1), 0, qr0
/* 801E4D08 001E0968  DA 81 06 10 */	stfd f20, 0x610(r1)
/* 801E4D0C 001E096C  F2 81 06 18 */	psq_st f20, 1560(r1), 0, qr0
/* 801E4D10 001E0970  DA 61 06 00 */	stfd f19, 0x600(r1)
/* 801E4D14 001E0974  F2 61 06 08 */	psq_st f19, 1544(r1), 0, qr0
/* 801E4D18 001E0978  DA 41 05 F0 */	stfd f18, 0x5f0(r1)
/* 801E4D1C 001E097C  F2 41 05 F8 */	psq_st f18, 1528(r1), 0, qr0
/* 801E4D20 001E0980  DA 21 05 E0 */	stfd f17, 0x5e0(r1)
/* 801E4D24 001E0984  F2 21 05 E8 */	psq_st f17, 1512(r1), 0, qr0
/* 801E4D28 001E0988  DA 01 05 D0 */	stfd f16, 0x5d0(r1)
/* 801E4D2C 001E098C  F2 01 05 D8 */	psq_st f16, 1496(r1), 0, qr0
/* 801E4D30 001E0990  D9 E1 05 C0 */	stfd f15, 0x5c0(r1)
/* 801E4D34 001E0994  F1 E1 05 C8 */	psq_st f15, 1480(r1), 0, qr0
/* 801E4D38 001E0998  D9 C1 05 B0 */	stfd f14, 0x5b0(r1)
/* 801E4D3C 001E099C  F1 C1 05 B8 */	psq_st f14, 1464(r1), 0, qr0
/* 801E4D40 001E09A0  39 61 05 B0 */	addi r11, r1, 0x5b0
/* 801E4D44 001E09A4  4B FE 23 B1 */	bl __save_gpr
/* 801E4D48 001E09A8  80 AD A4 48 */	lwz r5, lbl_8063F708-_SDA_BASE_(r13)
/* 801E4D4C 001E09AC  3C 60 43 30 */	lis r3, 0x4330
/* 801E4D50 001E09B0  38 00 00 00 */	li r0, 0
/* 801E4D54 001E09B4  90 61 04 B0 */	stw r3, 0x4b0(r1)
/* 801E4D58 001E09B8  2C 05 00 00 */	cmpwi r5, 0
/* 801E4D5C 001E09BC  7C 8F 23 78 */	mr r15, r4
/* 801E4D60 001E09C0  98 01 05 59 */	stb r0, 0x559(r1)
/* 801E4D64 001E09C4  38 00 00 00 */	li r0, 0
/* 801E4D68 001E09C8  90 61 04 B8 */	stw r3, 0x4b8(r1)
/* 801E4D6C 001E09CC  98 01 05 58 */	stb r0, 0x558(r1)
/* 801E4D70 001E09D0  41 82 00 0C */	beq lbl_801E4D7C
/* 801E4D74 001E09D4  80 65 00 00 */	lwz r3, 0(r5)
/* 801E4D78 001E09D8  48 00 00 08 */	b lbl_801E4D80
lbl_801E4D7C:
/* 801E4D7C 001E09DC  38 60 00 00 */	li r3, 0
lbl_801E4D80:
/* 801E4D80 001E09E0  38 03 FF F7 */	addi r0, r3, -9
/* 801E4D84 001E09E4  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E4D88 001E09E8  7C 00 00 34 */	cntlzw r0, r0
/* 801E4D8C 001E09EC  54 10 D9 7E */	srwi r16, r0, 5
/* 801E4D90 001E09F0  48 05 05 2D */	bl func_802352BC
/* 801E4D94 001E09F4  80 AD A3 D8 */	lwz r5, render_context_ptr-_SDA_BASE_(r13)
/* 801E4D98 001E09F8  7C 7C 1B 78 */	mr r28, r3
/* 801E4D9C 001E09FC  80 85 16 38 */	lwz r4, 0x1638(r5)
/* 801E4DA0 001E0A00  88 64 0A 87 */	lbz r3, 0xa87(r4)
/* 801E4DA4 001E0A04  7C 03 00 D0 */	neg r0, r3
/* 801E4DA8 001E0A08  7C 00 1B 78 */	or r0, r0, r3
/* 801E4DAC 001E0A0C  54 00 0F FF */	rlwinm. r0, r0, 1, 0x1f, 0x1f
/* 801E4DB0 001E0A10  90 01 05 5C */	stw r0, 0x55c(r1)
/* 801E4DB4 001E0A14  41 82 00 2C */	beq lbl_801E4DE0
/* 801E4DB8 001E0A18  38 00 00 00 */	li r0, 0
/* 801E4DBC 001E0A1C  98 04 0A 87 */	stb r0, 0xa87(r4)
/* 801E4DC0 001E0A20  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 801E4DC4 001E0A24  80 03 00 64 */	lwz r0, 0x64(r3)
/* 801E4DC8 001E0A28  60 00 00 40 */	ori r0, r0, 0x40
/* 801E4DCC 001E0A2C  90 03 00 64 */	stw r0, 0x64(r3)
/* 801E4DD0 001E0A30  80 65 16 38 */	lwz r3, 0x1638(r5)
/* 801E4DD4 001E0A34  80 03 00 00 */	lwz r0, 0(r3)
/* 801E4DD8 001E0A38  60 00 00 40 */	ori r0, r0, 0x40
/* 801E4DDC 001E0A3C  90 03 00 00 */	stw r0, 0(r3)
lbl_801E4DE0:
/* 801E4DE0 001E0A40  C0 02 97 08 */	lfs f0, lbl_80641D08-_SDA2_BASE_(r2)
/* 801E4DE4 001E0A44  3C 00 80 49 */	lis r0, 0x8049
/* 801E4DE8 001E0A48  3C 60 80 49 */	lis r3, lbl_804918D0@ha
/* 801E4DEC 001E0A4C  90 01 05 60 */	stw r0, 0x560(r1)
/* 801E4DF0 001E0A50  3B A3 18 D0 */	addi r29, r3, lbl_804918D0@l
/* 801E4DF4 001E0A54  C3 02 96 C4 */	lfs f24, lbl_80641CC4-_SDA2_BASE_(r2)
/* 801E4DF8 001E0A58  D8 01 05 48 */	stfd f0, 0x548(r1)
/* 801E4DFC 001E0A5C  7C 03 03 78 */	mr r3, r0
/* 801E4E00 001E0A60  C0 02 97 20 */	lfs f0, lbl_80641D20-_SDA2_BASE_(r2)
/* 801E4E04 001E0A64  38 63 18 C0 */	addi r3, r3, 0x18c0
/* 801E4E08 001E0A68  C2 E2 96 C0 */	lfs f23, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E4E0C 001E0A6C  3B C1 02 98 */	addi r30, r1, 0x298
/* 801E4E10 001E0A70  D8 01 05 50 */	stfd f0, 0x550(r1)
/* 801E4E14 001E0A74  3A 20 00 00 */	li r17, 0
/* 801E4E18 001E0A78  C0 02 96 CC */	lfs f0, lbl_80641CCC-_SDA2_BASE_(r2)
/* 801E4E1C 001E0A7C  3F E0 CC 01 */	lis r31, 0xcc01
/* 801E4E20 001E0A80  C3 42 97 14 */	lfs f26, lbl_80641D14-_SDA2_BASE_(r2)
/* 801E4E24 001E0A84  39 C0 00 01 */	li r14, 1
/* 801E4E28 001E0A88  D8 01 04 D0 */	stfd f0, 0x4d0(r1)
/* 801E4E2C 001E0A8C  C0 02 96 D0 */	lfs f0, lbl_80641CD0-_SDA2_BASE_(r2)
/* 801E4E30 001E0A90  C3 22 97 10 */	lfs f25, lbl_80641D10-_SDA2_BASE_(r2)
/* 801E4E34 001E0A94  D8 01 04 D8 */	stfd f0, 0x4d8(r1)
/* 801E4E38 001E0A98  C0 02 96 D4 */	lfs f0, lbl_80641CD4-_SDA2_BASE_(r2)
/* 801E4E3C 001E0A9C  C3 62 97 18 */	lfs f27, lbl_80641D18-_SDA2_BASE_(r2)
/* 801E4E40 001E0AA0  D8 01 04 E0 */	stfd f0, 0x4e0(r1)
/* 801E4E44 001E0AA4  C0 02 96 D8 */	lfs f0, lbl_80641CD8-_SDA2_BASE_(r2)
/* 801E4E48 001E0AA8  CB 82 97 38 */	lfd f28, lbl_80641D38-_SDA2_BASE_(r2)
/* 801E4E4C 001E0AAC  D8 01 04 E8 */	stfd f0, 0x4e8(r1)
/* 801E4E50 001E0AB0  C0 02 96 DC */	lfs f0, lbl_80641CDC-_SDA2_BASE_(r2)
/* 801E4E54 001E0AB4  C3 A2 96 C8 */	lfs f29, lbl_80641CC8-_SDA2_BASE_(r2)
/* 801E4E58 001E0AB8  D8 01 04 F0 */	stfd f0, 0x4f0(r1)
/* 801E4E5C 001E0ABC  C0 02 96 E0 */	lfs f0, lbl_80641CE0-_SDA2_BASE_(r2)
/* 801E4E60 001E0AC0  CA C2 97 30 */	lfd f22, lbl_80641D30-_SDA2_BASE_(r2)
/* 801E4E64 001E0AC4  D8 01 04 F8 */	stfd f0, 0x4f8(r1)
/* 801E4E68 001E0AC8  C0 02 96 E4 */	lfs f0, lbl_80641CE4-_SDA2_BASE_(r2)
/* 801E4E6C 001E0ACC  90 61 05 60 */	stw r3, 0x560(r1)
/* 801E4E70 001E0AD0  D8 01 05 00 */	stfd f0, 0x500(r1)
/* 801E4E74 001E0AD4  C0 02 96 E8 */	lfs f0, lbl_80641CE8-_SDA2_BASE_(r2)
/* 801E4E78 001E0AD8  D8 01 05 08 */	stfd f0, 0x508(r1)
/* 801E4E7C 001E0ADC  C0 02 96 EC */	lfs f0, lbl_80641CEC-_SDA2_BASE_(r2)
/* 801E4E80 001E0AE0  D8 01 05 10 */	stfd f0, 0x510(r1)
/* 801E4E84 001E0AE4  C0 02 96 F0 */	lfs f0, lbl_80641CF0-_SDA2_BASE_(r2)
/* 801E4E88 001E0AE8  D8 01 05 18 */	stfd f0, 0x518(r1)
/* 801E4E8C 001E0AEC  C0 02 96 F4 */	lfs f0, lbl_80641CF4-_SDA2_BASE_(r2)
/* 801E4E90 001E0AF0  D8 01 05 20 */	stfd f0, 0x520(r1)
/* 801E4E94 001E0AF4  C0 02 96 F8 */	lfs f0, lbl_80641CF8-_SDA2_BASE_(r2)
/* 801E4E98 001E0AF8  D8 01 05 28 */	stfd f0, 0x528(r1)
/* 801E4E9C 001E0AFC  C0 02 96 FC */	lfs f0, lbl_80641CFC-_SDA2_BASE_(r2)
/* 801E4EA0 001E0B00  D8 01 05 30 */	stfd f0, 0x530(r1)
/* 801E4EA4 001E0B04  C0 02 97 00 */	lfs f0, lbl_80641D00-_SDA2_BASE_(r2)
/* 801E4EA8 001E0B08  D8 01 05 38 */	stfd f0, 0x538(r1)
/* 801E4EAC 001E0B0C  C0 02 97 04 */	lfs f0, lbl_80641D04-_SDA2_BASE_(r2)
/* 801E4EB0 001E0B10  D8 01 05 40 */	stfd f0, 0x540(r1)
lbl_801E4EB4:
/* 801E4EB4 001E0B14  80 61 05 60 */	lwz r3, 0x560(r1)
/* 801E4EB8 001E0B18  56 20 13 BA */	rlwinm r0, r17, 2, 0xe, 0x1d
/* 801E4EBC 001E0B1C  7E 63 00 2E */	lwzx r19, r3, r0
/* 801E4EC0 001E0B20  2C 13 00 00 */	cmpwi r19, 0
/* 801E4EC4 001E0B24  41 82 0F 7C */	beq lbl_801E5E40
/* 801E4EC8 001E0B28  88 13 00 00 */	lbz r0, 0(r19)
/* 801E4ECC 001E0B2C  2C 00 00 00 */	cmpwi r0, 0
/* 801E4ED0 001E0B30  41 82 0F 70 */	beq lbl_801E5E40
/* 801E4ED4 001E0B34  2C 10 00 00 */	cmpwi r16, 0
/* 801E4ED8 001E0B38  82 53 00 1C */	lwz r18, 0x1c(r19)
/* 801E4EDC 001E0B3C  41 82 00 10 */	beq lbl_801E4EEC
/* 801E4EE0 001E0B40  80 12 00 08 */	lwz r0, 8(r18)
/* 801E4EE4 001E0B44  54 00 07 39 */	rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 801E4EE8 001E0B48  41 82 0F 58 */	beq lbl_801E5E40
lbl_801E4EEC:
/* 801E4EEC 001E0B4C  88 01 05 59 */	lbz r0, 0x559(r1)
/* 801E4EF0 001E0B50  2C 00 00 00 */	cmpwi r0, 0
/* 801E4EF4 001E0B54  40 82 00 98 */	bne lbl_801E4F8C
/* 801E4EF8 001E0B58  C0 0F 01 AC */	lfs f0, 0x1ac(r15)
/* 801E4EFC 001E0B5C  38 00 00 01 */	li r0, 1
/* 801E4F00 001E0B60  98 01 05 59 */	stb r0, 0x559(r1)
/* 801E4F04 001E0B64  D0 01 00 C4 */	stfs f0, 0xc4(r1)
/* 801E4F08 001E0B68  C0 0F 01 B0 */	lfs f0, 0x1b0(r15)
/* 801E4F0C 001E0B6C  D2 E1 01 08 */	stfs f23, 0x108(r1)
/* 801E4F10 001E0B70  D0 01 00 C8 */	stfs f0, 0xc8(r1)
/* 801E4F14 001E0B74  C0 0F 01 B4 */	lfs f0, 0x1b4(r15)
/* 801E4F18 001E0B78  D0 01 00 CC */	stfs f0, 0xcc(r1)
/* 801E4F1C 001E0B7C  C0 2F 01 D8 */	lfs f1, 0x1d8(r15)
/* 801E4F20 001E0B80  C0 0F 01 E8 */	lfs f0, 0x1e8(r15)
/* 801E4F24 001E0B84  C0 EF 01 F8 */	lfs f7, 0x1f8(r15)
/* 801E4F28 001E0B88  D0 21 00 A0 */	stfs f1, 0xa0(r1)
/* 801E4F2C 001E0B8C  D0 21 00 DC */	stfs f1, 0xdc(r1)
/* 801E4F30 001E0B90  D0 01 00 E0 */	stfs f0, 0xe0(r1)
/* 801E4F34 001E0B94  D0 E1 00 E4 */	stfs f7, 0xe4(r1)
/* 801E4F38 001E0B98  C0 CF 01 D4 */	lfs f6, 0x1d4(r15)
/* 801E4F3C 001E0B9C  C0 AF 01 E4 */	lfs f5, 0x1e4(r15)
/* 801E4F40 001E0BA0  C0 8F 01 F4 */	lfs f4, 0x1f4(r15)
/* 801E4F44 001E0BA4  D0 01 00 A4 */	stfs f0, 0xa4(r1)
/* 801E4F48 001E0BA8  D0 C1 00 D0 */	stfs f6, 0xd0(r1)
/* 801E4F4C 001E0BAC  D0 A1 00 D4 */	stfs f5, 0xd4(r1)
/* 801E4F50 001E0BB0  D0 81 00 D8 */	stfs f4, 0xd8(r1)
/* 801E4F54 001E0BB4  C0 3C 00 08 */	lfs f1, 8(r28)
/* 801E4F58 001E0BB8  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 801E4F5C 001E0BBC  EC 7D 00 72 */	fmuls f3, f29, f1
/* 801E4F60 001E0BC0  C0 5C 00 00 */	lfs f2, 0(r28)
/* 801E4F64 001E0BC4  EC 3D 00 32 */	fmuls f1, f29, f0
/* 801E4F68 001E0BC8  C0 1C 00 04 */	lfs f0, 4(r28)
/* 801E4F6C 001E0BCC  D0 E1 00 A8 */	stfs f7, 0xa8(r1)
/* 801E4F70 001E0BD0  EC 42 18 2A */	fadds f2, f2, f3
/* 801E4F74 001E0BD4  EC 00 08 2A */	fadds f0, f0, f1
/* 801E4F78 001E0BD8  D0 C1 00 94 */	stfs f6, 0x94(r1)
/* 801E4F7C 001E0BDC  D0 A1 00 98 */	stfs f5, 0x98(r1)
/* 801E4F80 001E0BE0  D0 81 00 9C */	stfs f4, 0x9c(r1)
/* 801E4F84 001E0BE4  D0 41 01 00 */	stfs f2, 0x100(r1)
/* 801E4F88 001E0BE8  D0 01 01 04 */	stfs f0, 0x104(r1)
lbl_801E4F8C:
/* 801E4F8C 001E0BEC  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E4F90 001E0BF0  38 81 01 0C */	addi r4, r1, 0x10c
/* 801E4F94 001E0BF4  38 B3 00 0C */	addi r5, r19, 0xc
/* 801E4F98 001E0BF8  38 C0 00 01 */	li r6, 1
/* 801E4F9C 001E0BFC  48 04 DD 89 */	bl func_80232D24
/* 801E4FA0 001E0C00  2C 03 FF FF */	cmpwi r3, -1
/* 801E4FA4 001E0C04  7C 74 1B 78 */	mr r20, r3
/* 801E4FA8 001E0C08  41 82 0E 98 */	beq lbl_801E5E40
/* 801E4FAC 001E0C0C  C0 61 01 0C */	lfs f3, 0x10c(r1)
/* 801E4FB0 001E0C10  38 61 00 F4 */	addi r3, r1, 0xf4
/* 801E4FB4 001E0C14  C0 41 01 00 */	lfs f2, 0x100(r1)
/* 801E4FB8 001E0C18  C0 21 01 10 */	lfs f1, 0x110(r1)
/* 801E4FBC 001E0C1C  C0 01 01 04 */	lfs f0, 0x104(r1)
/* 801E4FC0 001E0C20  EC 43 10 28 */	fsubs f2, f3, f2
/* 801E4FC4 001E0C24  D2 E1 00 FC */	stfs f23, 0xfc(r1)
/* 801E4FC8 001E0C28  EC 01 00 28 */	fsubs f0, f1, f0
/* 801E4FCC 001E0C2C  D0 41 00 F4 */	stfs f2, 0xf4(r1)
/* 801E4FD0 001E0C30  D0 01 00 F8 */	stfs f0, 0xf8(r1)
/* 801E4FD4 001E0C34  48 09 7D B1 */	bl PSVECMag
/* 801E4FD8 001E0C38  80 12 00 0C */	lwz r0, 0xc(r18)
/* 801E4FDC 001E0C3C  FF E0 08 18 */	frsp f31, f1
/* 801E4FE0 001E0C40  D0 21 04 CC */	stfs f1, 0x4cc(r1)
/* 801E4FE4 001E0C44  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E4FE8 001E0C48  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E4FEC 001E0C4C  EC 00 B0 28 */	fsubs f0, f0, f22
/* 801E4FF0 001E0C50  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 801E4FF4 001E0C54  41 81 0E 4C */	bgt lbl_801E5E40
/* 801E4FF8 001E0C58  80 72 00 08 */	lwz r3, 8(r18)
/* 801E4FFC 001E0C5C  C1 C2 96 C4 */	lfs f14, lbl_80641CC4-_SDA2_BASE_(r2)
/* 801E5000 001E0C60  54 60 06 F7 */	rlwinm. r0, r3, 0, 0x1b, 0x1b
/* 801E5004 001E0C64  41 82 02 A0 */	beq lbl_801E52A4
/* 801E5008 001E0C68  54 60 06 B5 */	rlwinm. r0, r3, 0, 0x1a, 0x1a
/* 801E500C 001E0C6C  41 82 02 84 */	beq lbl_801E5290
/* 801E5010 001E0C70  88 0D A0 D4 */	lbz r0, lbl_8063F394-_SDA_BASE_(r13)
/* 801E5014 001E0C74  7C 00 07 75 */	extsb. r0, r0
/* 801E5018 001E0C78  40 82 01 24 */	bne lbl_801E513C
/* 801E501C 001E0C7C  C8 01 04 D0 */	lfd f0, 0x4d0(r1)
/* 801E5020 001E0C80  3C 60 80 49 */	lis r3, lbl_804918D0@ha
/* 801E5024 001E0C84  D2 FD 00 04 */	stfs f23, 4(r29)
/* 801E5028 001E0C88  D0 03 18 D0 */	stfs f0, lbl_804918D0@l(r3)
/* 801E502C 001E0C8C  D0 1D 00 0C */	stfs f0, 0xc(r29)
/* 801E5030 001E0C90  C8 01 04 D8 */	lfd f0, 0x4d8(r1)
/* 801E5034 001E0C94  D2 FD 00 08 */	stfs f23, 8(r29)
/* 801E5038 001E0C98  D0 1D 00 10 */	stfs f0, 0x10(r29)
/* 801E503C 001E0C9C  C8 01 04 E0 */	lfd f0, 0x4e0(r1)
/* 801E5040 001E0CA0  D1 DD 00 70 */	stfs f14, 0x70(r29)
/* 801E5044 001E0CA4  D0 1D 00 14 */	stfs f0, 0x14(r29)
/* 801E5048 001E0CA8  C8 01 04 D8 */	lfd f0, 0x4d8(r1)
/* 801E504C 001E0CAC  D2 FD 00 74 */	stfs f23, 0x74(r29)
/* 801E5050 001E0CB0  D0 1D 00 18 */	stfs f0, 0x18(r29)
/* 801E5054 001E0CB4  C8 01 04 E8 */	lfd f0, 0x4e8(r1)
/* 801E5058 001E0CB8  D2 FD 00 90 */	stfs f23, 0x90(r29)
/* 801E505C 001E0CBC  D0 1D 00 1C */	stfs f0, 0x1c(r29)
/* 801E5060 001E0CC0  D0 1D 00 20 */	stfs f0, 0x20(r29)
/* 801E5064 001E0CC4  C8 01 04 D8 */	lfd f0, 0x4d8(r1)
/* 801E5068 001E0CC8  D1 DD 00 94 */	stfs f14, 0x94(r29)
/* 801E506C 001E0CCC  D0 1D 00 24 */	stfs f0, 0x24(r29)
/* 801E5070 001E0CD0  C8 01 04 E0 */	lfd f0, 0x4e0(r1)
/* 801E5074 001E0CD4  99 CD A0 D4 */	stb r14, lbl_8063F394-_SDA_BASE_(r13)
/* 801E5078 001E0CD8  D0 1D 00 28 */	stfs f0, 0x28(r29)
/* 801E507C 001E0CDC  C8 01 04 F0 */	lfd f0, 0x4f0(r1)
/* 801E5080 001E0CE0  D0 1D 00 2C */	stfs f0, 0x2c(r29)
/* 801E5084 001E0CE4  C8 01 04 F8 */	lfd f0, 0x4f8(r1)
/* 801E5088 001E0CE8  D0 1D 00 30 */	stfs f0, 0x30(r29)
/* 801E508C 001E0CEC  C8 01 05 00 */	lfd f0, 0x500(r1)
/* 801E5090 001E0CF0  D0 1D 00 34 */	stfs f0, 0x34(r29)
/* 801E5094 001E0CF4  C8 01 05 08 */	lfd f0, 0x508(r1)
/* 801E5098 001E0CF8  D0 1D 00 38 */	stfs f0, 0x38(r29)
/* 801E509C 001E0CFC  C8 01 05 10 */	lfd f0, 0x510(r1)
/* 801E50A0 001E0D00  D0 1D 00 3C */	stfs f0, 0x3c(r29)
/* 801E50A4 001E0D04  C8 01 05 08 */	lfd f0, 0x508(r1)
/* 801E50A8 001E0D08  D0 1D 00 40 */	stfs f0, 0x40(r29)
/* 801E50AC 001E0D0C  C8 01 05 18 */	lfd f0, 0x518(r1)
/* 801E50B0 001E0D10  D0 1D 00 44 */	stfs f0, 0x44(r29)
/* 801E50B4 001E0D14  C8 01 04 F8 */	lfd f0, 0x4f8(r1)
/* 801E50B8 001E0D18  D0 1D 00 48 */	stfs f0, 0x48(r29)
/* 801E50BC 001E0D1C  D0 1D 00 4C */	stfs f0, 0x4c(r29)
/* 801E50C0 001E0D20  C8 01 05 18 */	lfd f0, 0x518(r1)
/* 801E50C4 001E0D24  D0 1D 00 50 */	stfs f0, 0x50(r29)
/* 801E50C8 001E0D28  C8 01 05 08 */	lfd f0, 0x508(r1)
/* 801E50CC 001E0D2C  D0 1D 00 54 */	stfs f0, 0x54(r29)
/* 801E50D0 001E0D30  C8 01 05 10 */	lfd f0, 0x510(r1)
/* 801E50D4 001E0D34  D0 1D 00 58 */	stfs f0, 0x58(r29)
/* 801E50D8 001E0D38  C8 01 05 08 */	lfd f0, 0x508(r1)
/* 801E50DC 001E0D3C  D0 1D 00 5C */	stfs f0, 0x5c(r29)
/* 801E50E0 001E0D40  C8 01 05 20 */	lfd f0, 0x520(r1)
/* 801E50E4 001E0D44  D0 1D 00 60 */	stfs f0, 0x60(r29)
/* 801E50E8 001E0D48  C8 01 05 28 */	lfd f0, 0x528(r1)
/* 801E50EC 001E0D4C  D0 1D 00 64 */	stfs f0, 0x64(r29)
/* 801E50F0 001E0D50  C8 01 05 30 */	lfd f0, 0x530(r1)
/* 801E50F4 001E0D54  D0 1D 00 68 */	stfs f0, 0x68(r29)
/* 801E50F8 001E0D58  C8 01 05 38 */	lfd f0, 0x538(r1)
/* 801E50FC 001E0D5C  D0 1D 00 6C */	stfs f0, 0x6c(r29)
/* 801E5100 001E0D60  C8 01 05 30 */	lfd f0, 0x530(r1)
/* 801E5104 001E0D64  D0 1D 00 78 */	stfs f0, 0x78(r29)
/* 801E5108 001E0D68  C8 01 05 38 */	lfd f0, 0x538(r1)
/* 801E510C 001E0D6C  D0 1D 00 7C */	stfs f0, 0x7c(r29)
/* 801E5110 001E0D70  C8 01 05 20 */	lfd f0, 0x520(r1)
/* 801E5114 001E0D74  D0 1D 00 80 */	stfs f0, 0x80(r29)
/* 801E5118 001E0D78  D0 1D 00 84 */	stfs f0, 0x84(r29)
/* 801E511C 001E0D7C  C8 01 05 40 */	lfd f0, 0x540(r1)
/* 801E5120 001E0D80  D0 1D 00 88 */	stfs f0, 0x88(r29)
/* 801E5124 001E0D84  C8 01 05 30 */	lfd f0, 0x530(r1)
/* 801E5128 001E0D88  D0 1D 00 8C */	stfs f0, 0x8c(r29)
/* 801E512C 001E0D8C  C8 01 05 38 */	lfd f0, 0x538(r1)
/* 801E5130 001E0D90  D0 1D 00 98 */	stfs f0, 0x98(r29)
/* 801E5134 001E0D94  C8 01 05 30 */	lfd f0, 0x530(r1)
/* 801E5138 001E0D98  D0 1D 00 9C */	stfs f0, 0x9c(r29)
lbl_801E513C:
/* 801E513C 001E0D9C  C1 F2 00 28 */	lfs f15, 0x28(r18)
/* 801E5140 001E0DA0  3A C1 02 C4 */	addi r22, r1, 0x2c4
/* 801E5144 001E0DA4  3A E0 00 00 */	li r23, 0
lbl_801E5148:
/* 801E5148 001E0DA8  56 E0 1B 78 */	rlwinm r0, r23, 3, 0xd, 0x1c
/* 801E514C 001E0DAC  38 61 00 D0 */	addi r3, r1, 0xd0
/* 801E5150 001E0DB0  7C 1D 04 2E */	lfsx f0, r29, r0
/* 801E5154 001E0DB4  7E BD 02 14 */	add r21, r29, r0
/* 801E5158 001E0DB8  38 81 00 88 */	addi r4, r1, 0x88
/* 801E515C 001E0DBC  EC 2F 00 32 */	fmuls f1, f15, f0
/* 801E5160 001E0DC0  48 09 7B AD */	bl PSVECScale
/* 801E5164 001E0DC4  C0 15 00 04 */	lfs f0, 4(r21)
/* 801E5168 001E0DC8  38 61 00 DC */	addi r3, r1, 0xdc
/* 801E516C 001E0DCC  C0 61 00 88 */	lfs f3, 0x88(r1)
/* 801E5170 001E0DD0  38 81 00 7C */	addi r4, r1, 0x7c
/* 801E5174 001E0DD4  EC 2F 00 32 */	fmuls f1, f15, f0
/* 801E5178 001E0DD8  C0 41 00 8C */	lfs f2, 0x8c(r1)
/* 801E517C 001E0DDC  C0 01 00 90 */	lfs f0, 0x90(r1)
/* 801E5180 001E0DE0  D0 61 00 B8 */	stfs f3, 0xb8(r1)
/* 801E5184 001E0DE4  D0 41 00 BC */	stfs f2, 0xbc(r1)
/* 801E5188 001E0DE8  D0 01 00 C0 */	stfs f0, 0xc0(r1)
/* 801E518C 001E0DEC  48 09 7B 81 */	bl PSVECScale
/* 801E5190 001E0DF0  C0 41 00 7C */	lfs f2, 0x7c(r1)
/* 801E5194 001E0DF4  7E C3 B3 78 */	mr r3, r22
/* 801E5198 001E0DF8  C0 21 00 80 */	lfs f1, 0x80(r1)
/* 801E519C 001E0DFC  7E C5 B3 78 */	mr r5, r22
/* 801E51A0 001E0E00  C0 01 00 84 */	lfs f0, 0x84(r1)
/* 801E51A4 001E0E04  38 81 00 B8 */	addi r4, r1, 0xb8
/* 801E51A8 001E0E08  D0 41 00 AC */	stfs f2, 0xac(r1)
/* 801E51AC 001E0E0C  D0 21 00 B0 */	stfs f1, 0xb0(r1)
/* 801E51B0 001E0E10  D0 01 00 B4 */	stfs f0, 0xb4(r1)
/* 801E51B4 001E0E14  C0 13 00 0C */	lfs f0, 0xc(r19)
/* 801E51B8 001E0E18  D0 16 00 00 */	stfs f0, 0(r22)
/* 801E51BC 001E0E1C  C0 13 00 10 */	lfs f0, 0x10(r19)
/* 801E51C0 001E0E20  D0 16 00 04 */	stfs f0, 4(r22)
/* 801E51C4 001E0E24  C0 13 00 14 */	lfs f0, 0x14(r19)
/* 801E51C8 001E0E28  D0 16 00 08 */	stfs f0, 8(r22)
/* 801E51CC 001E0E2C  48 09 7A F9 */	bl PSVECAdd
/* 801E51D0 001E0E30  7E C3 B3 78 */	mr r3, r22
/* 801E51D4 001E0E34  7E C5 B3 78 */	mr r5, r22
/* 801E51D8 001E0E38  38 81 00 AC */	addi r4, r1, 0xac
/* 801E51DC 001E0E3C  48 09 7A E9 */	bl PSVECAdd
/* 801E51E0 001E0E40  C0 13 00 0C */	lfs f0, 0xc(r19)
/* 801E51E4 001E0E44  38 76 00 0C */	addi r3, r22, 0xc
/* 801E51E8 001E0E48  7C 65 1B 78 */	mr r5, r3
/* 801E51EC 001E0E4C  38 81 00 B8 */	addi r4, r1, 0xb8
/* 801E51F0 001E0E50  D0 16 00 0C */	stfs f0, 0xc(r22)
/* 801E51F4 001E0E54  C0 13 00 10 */	lfs f0, 0x10(r19)
/* 801E51F8 001E0E58  D0 16 00 10 */	stfs f0, 0x10(r22)
/* 801E51FC 001E0E5C  C0 13 00 14 */	lfs f0, 0x14(r19)
/* 801E5200 001E0E60  D0 16 00 14 */	stfs f0, 0x14(r22)
/* 801E5204 001E0E64  48 09 7A E5 */	bl PSVECSubtract
/* 801E5208 001E0E68  38 76 00 0C */	addi r3, r22, 0xc
/* 801E520C 001E0E6C  38 81 00 AC */	addi r4, r1, 0xac
/* 801E5210 001E0E70  7C 65 1B 78 */	mr r5, r3
/* 801E5214 001E0E74  48 09 7A D5 */	bl PSVECSubtract
/* 801E5218 001E0E78  3A F7 00 01 */	addi r23, r23, 1
/* 801E521C 001E0E7C  3A D6 00 18 */	addi r22, r22, 0x18
/* 801E5220 001E0E80  28 17 00 14 */	cmplwi r23, 0x14
/* 801E5224 001E0E84  41 80 FF 24 */	blt lbl_801E5148
/* 801E5228 001E0E88  C0 13 00 0C */	lfs f0, 0xc(r19)
/* 801E522C 001E0E8C  38 61 02 98 */	addi r3, r1, 0x298
/* 801E5230 001E0E90  38 81 00 C4 */	addi r4, r1, 0xc4
/* 801E5234 001E0E94  38 A1 02 C4 */	addi r5, r1, 0x2c4
/* 801E5238 001E0E98  D0 16 00 00 */	stfs f0, 0(r22)
/* 801E523C 001E0E9C  38 C0 00 29 */	li r6, 0x29
/* 801E5240 001E0EA0  C0 13 00 10 */	lfs f0, 0x10(r19)
/* 801E5244 001E0EA4  D0 16 00 04 */	stfs f0, 4(r22)
/* 801E5248 001E0EA8  C0 13 00 14 */	lfs f0, 0x14(r19)
/* 801E524C 001E0EAC  D0 16 00 08 */	stfs f0, 8(r22)
/* 801E5250 001E0EB0  48 01 5E CD */	bl func_801FB11C
/* 801E5254 001E0EB4  2C 03 00 00 */	cmpwi r3, 0
/* 801E5258 001E0EB8  41 82 00 4C */	beq lbl_801E52A4
/* 801E525C 001E0EBC  38 00 00 29 */	li r0, 0x29
/* 801E5260 001E0EC0  C1 C2 96 C0 */	lfs f14, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5264 001E0EC4  38 60 00 00 */	li r3, 0
/* 801E5268 001E0EC8  7C 09 03 A6 */	mtctr r0
lbl_801E526C:
/* 801E526C 001E0ECC  54 60 04 3E */	clrlwi r0, r3, 0x10
/* 801E5270 001E0ED0  7C 1E 00 AE */	lbzx r0, r30, r0
/* 801E5274 001E0ED4  2C 00 00 00 */	cmpwi r0, 0
/* 801E5278 001E0ED8  40 82 00 0C */	bne lbl_801E5284
/* 801E527C 001E0EDC  C8 01 05 48 */	lfd f0, 0x548(r1)
/* 801E5280 001E0EE0  ED CE 00 2A */	fadds f14, f14, f0
lbl_801E5284:
/* 801E5284 001E0EE4  38 63 00 01 */	addi r3, r3, 1
/* 801E5288 001E0EE8  42 00 FF E4 */	bdnz lbl_801E526C
/* 801E528C 001E0EEC  48 00 00 18 */	b lbl_801E52A4
lbl_801E5290:
/* 801E5290 001E0EF0  38 73 00 0C */	addi r3, r19, 0xc
/* 801E5294 001E0EF4  38 81 00 C4 */	addi r4, r1, 0xc4
/* 801E5298 001E0EF8  48 01 5D D1 */	bl func_801FB068
/* 801E529C 001E0EFC  2C 03 00 00 */	cmpwi r3, 0
/* 801E52A0 001E0F00  40 82 0B A0 */	bne lbl_801E5E40
lbl_801E52A4:
/* 801E52A4 001E0F04  88 01 05 58 */	lbz r0, 0x558(r1)
/* 801E52A8 001E0F08  2C 00 00 00 */	cmpwi r0, 0
/* 801E52AC 001E0F0C  40 82 01 38 */	bne lbl_801E53E4
/* 801E52B0 001E0F10  C0 3C 00 00 */	lfs f1, 0(r28)
/* 801E52B4 001E0F14  C0 7C 00 08 */	lfs f3, 8(r28)
/* 801E52B8 001E0F18  C0 5C 00 04 */	lfs f2, 4(r28)
/* 801E52BC 001E0F1C  C0 1C 00 0C */	lfs f0, 0xc(r28)
/* 801E52C0 001E0F20  EC 61 18 2A */	fadds f3, f1, f3
/* 801E52C4 001E0F24  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E52C8 001E0F28  EC 82 00 2A */	fadds f4, f2, f0
/* 801E52CC 001E0F2C  C0 A2 96 C0 */	lfs f5, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E52D0 001E0F30  C0 C2 97 0C */	lfs f6, lbl_80641D0C-_SDA2_BASE_(r2)
/* 801E52D4 001E0F34  48 04 F9 25 */	bl func_80234BF8
/* 801E52D8 001E0F38  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E52DC 001E0F3C  38 00 00 01 */	li r0, 1
/* 801E52E0 001E0F40  98 01 05 58 */	stb r0, 0x558(r1)
/* 801E52E4 001E0F44  38 00 00 00 */	li r0, 0
/* 801E52E8 001E0F48  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E52EC 001E0F4C  99 C3 0A 36 */	stb r14, 0xa36(r3)
/* 801E52F0 001E0F50  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E52F4 001E0F54  99 C3 0A 37 */	stb r14, 0xa37(r3)
/* 801E52F8 001E0F58  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E52FC 001E0F5C  98 03 0A 38 */	stb r0, 0xa38(r3)
/* 801E5300 001E0F60  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5304 001E0F64  80 03 00 64 */	lwz r0, 0x64(r3)
/* 801E5308 001E0F68  60 00 00 04 */	ori r0, r0, 4
/* 801E530C 001E0F6C  90 03 00 64 */	stw r0, 0x64(r3)
/* 801E5310 001E0F70  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5314 001E0F74  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5318 001E0F78  60 00 00 40 */	ori r0, r0, 0x40
/* 801E531C 001E0F7C  90 03 00 00 */	stw r0, 0(r3)
/* 801E5320 001E0F80  38 00 00 00 */	li r0, 0
/* 801E5324 001E0F84  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E5328 001E0F88  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E532C 001E0F8C  98 03 0A 3C */	stb r0, 0xa3c(r3)
/* 801E5330 001E0F90  38 00 00 03 */	li r0, 3
/* 801E5334 001E0F94  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5338 001E0F98  90 03 0A 40 */	stw r0, 0xa40(r3)
/* 801E533C 001E0F9C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5340 001E0FA0  80 03 00 64 */	lwz r0, 0x64(r3)
/* 801E5344 001E0FA4  60 00 00 08 */	ori r0, r0, 8
/* 801E5348 001E0FA8  90 03 00 64 */	stw r0, 0x64(r3)
/* 801E534C 001E0FAC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5350 001E0FB0  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5354 001E0FB4  60 00 00 40 */	ori r0, r0, 0x40
/* 801E5358 001E0FB8  90 03 00 00 */	stw r0, 0(r3)
/* 801E535C 001E0FBC  38 00 00 02 */	li r0, 2
/* 801E5360 001E0FC0  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E5364 001E0FC4  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5368 001E0FC8  90 03 01 84 */	stw r0, 0x184(r3)
/* 801E536C 001E0FCC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5370 001E0FD0  80 03 00 10 */	lwz r0, 0x10(r3)
/* 801E5374 001E0FD4  60 00 00 02 */	ori r0, r0, 2
/* 801E5378 001E0FD8  90 03 00 10 */	stw r0, 0x10(r3)
/* 801E537C 001E0FDC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5380 001E0FE0  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5384 001E0FE4  60 00 00 02 */	ori r0, r0, 2
/* 801E5388 001E0FE8  90 03 00 00 */	stw r0, 0(r3)
/* 801E538C 001E0FEC  38 00 00 98 */	li r0, 0x98
/* 801E5390 001E0FF0  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5394 001E0FF4  90 03 17 38 */	stw r0, 0x1738(r3)
/* 801E5398 001E0FF8  38 00 00 04 */	li r0, 4
/* 801E539C 001E0FFC  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E53A0 001E1000  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E53A4 001E1004  91 C3 0A 24 */	stw r14, 0xa24(r3)
/* 801E53A8 001E1008  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E53AC 001E100C  90 03 0A 28 */	stw r0, 0xa28(r3)
/* 801E53B0 001E1010  38 00 00 05 */	li r0, 5
/* 801E53B4 001E1014  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E53B8 001E1018  91 C3 0A 2C */	stw r14, 0xa2c(r3)
/* 801E53BC 001E101C  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E53C0 001E1020  90 03 0A 30 */	stw r0, 0xa30(r3)
/* 801E53C4 001E1024  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E53C8 001E1028  80 03 00 64 */	lwz r0, 0x64(r3)
/* 801E53CC 001E102C  60 00 00 01 */	ori r0, r0, 1
/* 801E53D0 001E1030  90 03 00 64 */	stw r0, 0x64(r3)
/* 801E53D4 001E1034  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E53D8 001E1038  80 03 00 00 */	lwz r0, 0(r3)
/* 801E53DC 001E103C  60 00 00 40 */	ori r0, r0, 0x40
/* 801E53E0 001E1040  90 03 00 00 */	stw r0, 0(r3)
lbl_801E53E4:
/* 801E53E4 001E1044  2C 14 00 02 */	cmpwi r20, 2
/* 801E53E8 001E1048  40 82 08 14 */	bne lbl_801E5BFC
/* 801E53EC 001E104C  C0 02 96 C4 */	lfs f0, lbl_80641CC4-_SDA2_BASE_(r2)
/* 801E53F0 001E1050  A0 92 00 06 */	lhz r4, 6(r18)
/* 801E53F4 001E1054  D0 01 04 C8 */	stfs f0, 0x4c8(r1)
/* 801E53F8 001E1058  80 73 00 20 */	lwz r3, 0x20(r19)
/* 801E53FC 001E105C  7C 89 03 A6 */	mtctr r4
/* 801E5400 001E1060  2C 04 00 00 */	cmpwi r4, 0
/* 801E5404 001E1064  41 82 00 28 */	beq lbl_801E542C
lbl_801E5408:
/* 801E5408 001E1068  88 03 00 00 */	lbz r0, 0(r3)
/* 801E540C 001E106C  38 84 FF FF */	addi r4, r4, -1
/* 801E5410 001E1070  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 801E5414 001E1074  41 82 00 10 */	beq lbl_801E5424
/* 801E5418 001E1078  C0 03 00 08 */	lfs f0, 8(r3)
/* 801E541C 001E107C  D0 01 04 C8 */	stfs f0, 0x4c8(r1)
/* 801E5420 001E1080  48 00 00 0C */	b lbl_801E542C
lbl_801E5424:
/* 801E5424 001E1084  38 63 00 10 */	addi r3, r3, 0x10
/* 801E5428 001E1088  42 00 FF E0 */	bdnz lbl_801E5408
lbl_801E542C:
/* 801E542C 001E108C  C0 32 00 24 */	lfs f1, 0x24(r18)
/* 801E5430 001E1090  C0 01 04 CC */	lfs f0, 0x4cc(r1)
/* 801E5434 001E1094  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 801E5438 001E1098  40 80 00 08 */	bge lbl_801E5440
/* 801E543C 001E109C  FF E0 08 90 */	fmr f31, f1
lbl_801E5440:
/* 801E5440 001E10A0  80 72 00 10 */	lwz r3, 0x10(r18)
/* 801E5444 001E10A4  90 61 04 BC */	stw r3, 0x4bc(r1)
/* 801E5448 001E10A8  C8 01 04 B8 */	lfd f0, 0x4b8(r1)
/* 801E544C 001E10AC  EC 20 B0 28 */	fsubs f1, f0, f22
/* 801E5450 001E10B0  C0 01 04 CC */	lfs f0, 0x4cc(r1)
/* 801E5454 001E10B4  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 801E5458 001E10B8  40 80 00 0C */	bge lbl_801E5464
/* 801E545C 001E10BC  C1 E2 96 C4 */	lfs f15, lbl_80641CC4-_SDA2_BASE_(r2)
/* 801E5460 001E10C0  48 00 00 5C */	b lbl_801E54BC
lbl_801E5464:
/* 801E5464 001E10C4  80 12 00 0C */	lwz r0, 0xc(r18)
/* 801E5468 001E10C8  90 61 04 BC */	stw r3, 0x4bc(r1)
/* 801E546C 001E10CC  7C 03 00 50 */	subf r0, r3, r0
/* 801E5470 001E10D0  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5474 001E10D4  C8 01 04 B8 */	lfd f0, 0x4b8(r1)
/* 801E5478 001E10D8  C8 41 04 B0 */	lfd f2, 0x4b0(r1)
/* 801E547C 001E10DC  EC 20 B0 28 */	fsubs f1, f0, f22
/* 801E5480 001E10E0  C0 01 04 CC */	lfs f0, 0x4cc(r1)
/* 801E5484 001E10E4  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5488 001E10E8  EC 42 B0 28 */	fsubs f2, f2, f22
/* 801E548C 001E10EC  EC 20 08 28 */	fsubs f1, f0, f1
/* 801E5490 001E10F0  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E5494 001E10F4  EC 00 B0 28 */	fsubs f0, f0, f22
/* 801E5498 001E10F8  EC 22 08 28 */	fsubs f1, f2, f1
/* 801E549C 001E10FC  ED E1 00 24 */	fdivs f15, f1, f0
/* 801E54A0 001E1100  FC 0F B8 40 */	fcmpo cr0, f15, f23
/* 801E54A4 001E1104  40 80 00 0C */	bge lbl_801E54B0
/* 801E54A8 001E1108  FD E0 B8 90 */	fmr f15, f23
/* 801E54AC 001E110C  48 00 00 10 */	b lbl_801E54BC
lbl_801E54B0:
/* 801E54B0 001E1110  FC 0F C0 40 */	fcmpo cr0, f15, f24
/* 801E54B4 001E1114  40 81 00 08 */	ble lbl_801E54BC
/* 801E54B8 001E1118  FD E0 C0 90 */	fmr f15, f24
lbl_801E54BC:
/* 801E54BC 001E111C  80 12 00 08 */	lwz r0, 8(r18)
/* 801E54C0 001E1120  38 60 00 07 */	li r3, 7
/* 801E54C4 001E1124  C3 D2 00 20 */	lfs f30, 0x20(r18)
/* 801E54C8 001E1128  54 14 07 FE */	clrlwi r20, r0, 0x1f
/* 801E54CC 001E112C  48 05 7A 51 */	bl func_8023CF1C
/* 801E54D0 001E1130  7C 64 1B 78 */	mr r4, r3
/* 801E54D4 001E1134  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E54D8 001E1138  48 05 2B E5 */	bl func_802380BC
/* 801E54DC 001E113C  82 F3 00 20 */	lwz r23, 0x20(r19)
/* 801E54E0 001E1140  A2 D2 00 06 */	lhz r22, 6(r18)
/* 801E54E4 001E1144  48 00 05 58 */	b lbl_801E5A3C
lbl_801E54E8:
/* 801E54E8 001E1148  88 17 00 00 */	lbz r0, 0(r23)
/* 801E54EC 001E114C  54 00 FF FE */	rlwinm r0, r0, 0x1f, 0x1f, 0x1f
/* 801E54F0 001E1150  7C 10 00 40 */	cmplw r16, r0
/* 801E54F4 001E1154  41 82 00 0C */	beq lbl_801E5500
/* 801E54F8 001E1158  3A F7 00 10 */	addi r23, r23, 0x10
/* 801E54FC 001E115C  48 00 05 40 */	b lbl_801E5A3C
lbl_801E5500:
/* 801E5500 001E1160  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5504 001E1164  A0 17 00 02 */	lhz r0, 2(r23)
/* 801E5508 001E1168  83 03 16 E8 */	lwz r24, 0x16e8(r3)
/* 801E550C 001E116C  54 00 10 3A */	slwi r0, r0, 2
/* 801E5510 001E1170  7C 93 02 14 */	add r4, r19, r0
/* 801E5514 001E1174  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5518 001E1178  82 A4 00 24 */	lwz r21, 0x24(r4)
/* 801E551C 001E117C  38 63 00 04 */	addi r3, r3, 4
/* 801E5520 001E1180  48 09 6A 0D */	bl PSMTXIdentity
/* 801E5524 001E1184  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5528 001E1188  80 03 00 00 */	lwz r0, 0(r3)
/* 801E552C 001E118C  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 801E5530 001E1190  90 03 00 00 */	stw r0, 0(r3)
/* 801E5534 001E1194  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5538 001E1198  80 03 00 00 */	lwz r0, 0(r3)
/* 801E553C 001E119C  60 00 00 07 */	ori r0, r0, 7
/* 801E5540 001E11A0  90 03 00 00 */	stw r0, 0(r3)
/* 801E5544 001E11A4  88 17 00 00 */	lbz r0, 0(r23)
/* 801E5548 001E11A8  C2 17 00 08 */	lfs f16, 8(r23)
/* 801E554C 001E11AC  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 801E5550 001E11B0  41 82 00 68 */	beq lbl_801E55B8
/* 801E5554 001E11B4  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E5558 001E11B8  38 61 02 68 */	addi r3, r1, 0x268
/* 801E555C 001E11BC  C0 41 01 10 */	lfs f2, 0x110(r1)
/* 801E5560 001E11C0  C0 21 01 0C */	lfs f1, 0x10c(r1)
/* 801E5564 001E11C4  C0 62 96 C0 */	lfs f3, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5568 001E11C8  83 04 16 E8 */	lwz r24, 0x16e8(r4)
/* 801E556C 001E11CC  48 09 6F 55 */	bl PSMTXTrans
/* 801E5570 001E11D0  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5574 001E11D4  38 81 02 68 */	addi r4, r1, 0x268
/* 801E5578 001E11D8  38 A1 02 38 */	addi r5, r1, 0x238
/* 801E557C 001E11DC  3B 23 00 04 */	addi r25, r3, 4
/* 801E5580 001E11E0  7F 23 CB 78 */	mr r3, r25
/* 801E5584 001E11E4  48 09 6A 09 */	bl PSMTXConcat
/* 801E5588 001E11E8  7F 24 CB 78 */	mr r4, r25
/* 801E558C 001E11EC  38 61 02 38 */	addi r3, r1, 0x238
/* 801E5590 001E11F0  48 09 69 C9 */	bl PSMTXCopy
/* 801E5594 001E11F4  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5598 001E11F8  80 03 00 00 */	lwz r0, 0(r3)
/* 801E559C 001E11FC  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 801E55A0 001E1200  90 03 00 00 */	stw r0, 0(r3)
/* 801E55A4 001E1204  80 78 00 04 */	lwz r3, 4(r24)
/* 801E55A8 001E1208  80 03 00 00 */	lwz r0, 0(r3)
/* 801E55AC 001E120C  60 00 00 07 */	ori r0, r0, 7
/* 801E55B0 001E1210  90 03 00 00 */	stw r0, 0(r3)
/* 801E55B4 001E1214  48 00 01 38 */	b lbl_801E56EC
lbl_801E55B8:
/* 801E55B8 001E1218  C0 17 00 04 */	lfs f0, 4(r23)
/* 801E55BC 001E121C  FC 00 C8 40 */	fcmpo cr0, f0, f25
/* 801E55C0 001E1220  40 80 00 20 */	bge lbl_801E55E0
/* 801E55C4 001E1224  FC 00 D0 40 */	fcmpo cr0, f0, f26
/* 801E55C8 001E1228  40 81 00 18 */	ble lbl_801E55E0
/* 801E55CC 001E122C  FC 00 B8 40 */	fcmpo cr0, f0, f23
/* 801E55D0 001E1230  40 80 00 0C */	bge lbl_801E55DC
/* 801E55D4 001E1234  FC 00 D0 90 */	fmr f0, f26
/* 801E55D8 001E1238  48 00 00 08 */	b lbl_801E55E0
lbl_801E55DC:
/* 801E55DC 001E123C  FC 00 C8 90 */	fmr f0, f25
lbl_801E55E0:
/* 801E55E0 001E1240  EC 38 00 24 */	fdivs f1, f24, f0
/* 801E55E4 001E1244  38 61 00 F4 */	addi r3, r1, 0xf4
/* 801E55E8 001E1248  38 81 00 70 */	addi r4, r1, 0x70
/* 801E55EC 001E124C  48 09 77 21 */	bl PSVECScale
/* 801E55F0 001E1250  C0 41 00 70 */	lfs f2, 0x70(r1)
/* 801E55F4 001E1254  2C 14 00 00 */	cmpwi r20, 0
/* 801E55F8 001E1258  C0 21 00 74 */	lfs f1, 0x74(r1)
/* 801E55FC 001E125C  C0 01 00 78 */	lfs f0, 0x78(r1)
/* 801E5600 001E1260  D0 41 00 E8 */	stfs f2, 0xe8(r1)
/* 801E5604 001E1264  D0 21 00 EC */	stfs f1, 0xec(r1)
/* 801E5608 001E1268  D0 01 00 F0 */	stfs f0, 0xf0(r1)
/* 801E560C 001E126C  41 82 00 54 */	beq lbl_801E5660
/* 801E5610 001E1270  C0 17 00 04 */	lfs f0, 4(r23)
/* 801E5614 001E1274  FC 00 B8 40 */	fcmpo cr0, f0, f23
/* 801E5618 001E1278  40 81 00 18 */	ble lbl_801E5630
/* 801E561C 001E127C  FC 00 C0 40 */	fcmpo cr0, f0, f24
/* 801E5620 001E1280  40 80 00 10 */	bge lbl_801E5630
/* 801E5624 001E1284  EC 18 00 24 */	fdivs f0, f24, f0
/* 801E5628 001E1288  EC 40 C0 28 */	fsubs f2, f0, f24
/* 801E562C 001E128C  48 00 00 10 */	b lbl_801E563C
lbl_801E5630:
/* 801E5630 001E1290  C0 17 00 04 */	lfs f0, 4(r23)
/* 801E5634 001E1294  EC 18 00 24 */	fdivs f0, f24, f0
/* 801E5638 001E1298  EC 58 00 28 */	fsubs f2, f24, f0
lbl_801E563C:
/* 801E563C 001E129C  C0 01 04 C8 */	lfs f0, 0x4c8(r1)
/* 801E5640 001E12A0  EC 3B F8 24 */	fdivs f1, f27, f31
/* 801E5644 001E12A4  EC 1E 00 24 */	fdivs f0, f30, f0
/* 801E5648 001E12A8  EC 42 00 72 */	fmuls f2, f2, f1
/* 801E564C 001E12AC  EC 00 C0 28 */	fsubs f0, f0, f24
/* 801E5650 001E12B0  EC 42 00 32 */	fmuls f2, f2, f0
/* 801E5654 001E12B4  EC 18 10 2A */	fadds f0, f24, f2
/* 801E5658 001E12B8  EE 10 00 32 */	fmuls f16, f16, f0
/* 801E565C 001E12BC  48 00 00 20 */	b lbl_801E567C
lbl_801E5660:
/* 801E5660 001E12C0  38 61 00 E8 */	addi r3, r1, 0xe8
/* 801E5664 001E12C4  48 09 77 21 */	bl PSVECMag
/* 801E5668 001E12C8  EC 1E C0 28 */	fsubs f0, f30, f24
/* 801E566C 001E12CC  EC 00 00 72 */	fmuls f0, f0, f1
/* 801E5670 001E12D0  EC 00 D8 24 */	fdivs f0, f0, f27
/* 801E5674 001E12D4  EC 18 00 2A */	fadds f0, f24, f0
/* 801E5678 001E12D8  EE 10 00 32 */	fmuls f16, f16, f0
lbl_801E567C:
/* 801E567C 001E12DC  C0 61 00 EC */	lfs f3, 0xec(r1)
/* 801E5680 001E12E0  38 61 02 08 */	addi r3, r1, 0x208
/* 801E5684 001E12E4  C0 41 01 04 */	lfs f2, 0x104(r1)
/* 801E5688 001E12E8  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E568C 001E12EC  EC 43 10 2A */	fadds f2, f3, f2
/* 801E5690 001E12F0  C0 21 00 E8 */	lfs f1, 0xe8(r1)
/* 801E5694 001E12F4  C0 01 01 00 */	lfs f0, 0x100(r1)
/* 801E5698 001E12F8  C0 62 96 C0 */	lfs f3, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E569C 001E12FC  EC 21 00 2A */	fadds f1, f1, f0
/* 801E56A0 001E1300  83 04 16 E8 */	lwz r24, 0x16e8(r4)
/* 801E56A4 001E1304  48 09 6E 1D */	bl PSMTXTrans
/* 801E56A8 001E1308  80 78 00 04 */	lwz r3, 4(r24)
/* 801E56AC 001E130C  38 81 02 08 */	addi r4, r1, 0x208
/* 801E56B0 001E1310  38 A1 01 D8 */	addi r5, r1, 0x1d8
/* 801E56B4 001E1314  3B 23 00 04 */	addi r25, r3, 4
/* 801E56B8 001E1318  7F 23 CB 78 */	mr r3, r25
/* 801E56BC 001E131C  48 09 68 D1 */	bl PSMTXConcat
/* 801E56C0 001E1320  7F 24 CB 78 */	mr r4, r25
/* 801E56C4 001E1324  38 61 01 D8 */	addi r3, r1, 0x1d8
/* 801E56C8 001E1328  48 09 68 91 */	bl PSMTXCopy
/* 801E56CC 001E132C  80 78 00 04 */	lwz r3, 4(r24)
/* 801E56D0 001E1330  80 03 00 00 */	lwz r0, 0(r3)
/* 801E56D4 001E1334  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 801E56D8 001E1338  90 03 00 00 */	stw r0, 0(r3)
/* 801E56DC 001E133C  80 78 00 04 */	lwz r3, 4(r24)
/* 801E56E0 001E1340  80 03 00 00 */	lwz r0, 0(r3)
/* 801E56E4 001E1344  60 00 00 07 */	ori r0, r0, 7
/* 801E56E8 001E1348  90 03 00 00 */	stw r0, 0(r3)
lbl_801E56EC:
/* 801E56EC 001E134C  7E A3 AB 78 */	mr r3, r21
/* 801E56F0 001E1350  48 05 8E 51 */	bl func_8023E540
/* 801E56F4 001E1354  54 60 FC 7E */	rlwinm r0, r3, 0x1f, 0x11, 0x1f
/* 801E56F8 001E1358  7E A3 AB 78 */	mr r3, r21
/* 801E56FC 001E135C  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 801E5700 001E1360  90 01 04 BC */	stw r0, 0x4bc(r1)
/* 801E5704 001E1364  C8 01 04 B8 */	lfd f0, 0x4b8(r1)
/* 801E5708 001E1368  EC 00 E0 28 */	fsubs f0, f0, f28
/* 801E570C 001E136C  EC 10 00 32 */	fmuls f0, f16, f0
/* 801E5710 001E1370  FE 60 00 50 */	fneg f19, f0
/* 801E5714 001E1374  48 05 8E 35 */	bl func_8023E548
/* 801E5718 001E1378  54 60 FC 7E */	rlwinm r0, r3, 0x1f, 0x11, 0x1f
/* 801E571C 001E137C  7E A3 AB 78 */	mr r3, r21
/* 801E5720 001E1380  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 801E5724 001E1384  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5728 001E1388  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E572C 001E138C  EC 00 E0 28 */	fsubs f0, f0, f28
/* 801E5730 001E1390  EC 10 00 32 */	fmuls f0, f16, f0
/* 801E5734 001E1394  FE 40 00 50 */	fneg f18, f0
/* 801E5738 001E1398  48 05 8E 09 */	bl func_8023E540
/* 801E573C 001E139C  54 60 FC 7E */	rlwinm r0, r3, 0x1f, 0x11, 0x1f
/* 801E5740 001E13A0  7E A3 AB 78 */	mr r3, r21
/* 801E5744 001E13A4  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 801E5748 001E13A8  90 01 04 BC */	stw r0, 0x4bc(r1)
/* 801E574C 001E13AC  C8 01 04 B8 */	lfd f0, 0x4b8(r1)
/* 801E5750 001E13B0  EC 00 E0 28 */	fsubs f0, f0, f28
/* 801E5754 001E13B4  EE 30 00 32 */	fmuls f17, f16, f0
/* 801E5758 001E13B8  48 05 8D F1 */	bl func_8023E548
/* 801E575C 001E13BC  54 60 FC 7E */	rlwinm r0, r3, 0x1f, 0x11, 0x1f
/* 801E5760 001E13C0  80 72 00 08 */	lwz r3, 8(r18)
/* 801E5764 001E13C4  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 801E5768 001E13C8  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E576C 001E13CC  54 60 07 BD */	rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 801E5770 001E13D0  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E5774 001E13D4  EC 00 E0 28 */	fsubs f0, f0, f28
/* 801E5778 001E13D8  EE 10 00 32 */	fmuls f16, f16, f0
/* 801E577C 001E13DC  41 82 01 14 */	beq lbl_801E5890
/* 801E5780 001E13E0  54 60 07 7B */	rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 801E5784 001E13E4  41 82 00 8C */	beq lbl_801E5810
/* 801E5788 001E13E8  C0 41 00 F4 */	lfs f2, 0xf4(r1)
/* 801E578C 001E13EC  C0 21 00 F8 */	lfs f1, 0xf8(r1)
/* 801E5790 001E13F0  4B FE EE 4D */	bl atan2
/* 801E5794 001E13F4  FC 00 08 18 */	frsp f0, f1
/* 801E5798 001E13F8  80 AD A3 D8 */	lwz r5, render_context_ptr-_SDA_BASE_(r13)
/* 801E579C 001E13FC  38 61 00 48 */	addi r3, r1, 0x48
/* 801E57A0 001E1400  38 81 00 58 */	addi r4, r1, 0x58
/* 801E57A4 001E1404  83 05 16 E8 */	lwz r24, 0x16e8(r5)
/* 801E57A8 001E1408  FC 00 00 50 */	fneg f0, f0
/* 801E57AC 001E140C  D2 E1 00 58 */	stfs f23, 0x58(r1)
/* 801E57B0 001E1410  D2 E1 00 5C */	stfs f23, 0x5c(r1)
/* 801E57B4 001E1414  D0 01 00 60 */	stfs f0, 0x60(r1)
/* 801E57B8 001E1418  48 03 DF 09 */	bl func_802236C0
/* 801E57BC 001E141C  38 61 01 A8 */	addi r3, r1, 0x1a8
/* 801E57C0 001E1420  38 81 00 48 */	addi r4, r1, 0x48
/* 801E57C4 001E1424  48 09 6D FD */	bl PSMTXQuat
/* 801E57C8 001E1428  80 78 00 04 */	lwz r3, 4(r24)
/* 801E57CC 001E142C  38 81 01 A8 */	addi r4, r1, 0x1a8
/* 801E57D0 001E1430  38 A1 01 78 */	addi r5, r1, 0x178
/* 801E57D4 001E1434  3B 23 00 04 */	addi r25, r3, 4
/* 801E57D8 001E1438  7F 23 CB 78 */	mr r3, r25
/* 801E57DC 001E143C  48 09 67 B1 */	bl PSMTXConcat
/* 801E57E0 001E1440  7F 24 CB 78 */	mr r4, r25
/* 801E57E4 001E1444  38 61 01 78 */	addi r3, r1, 0x178
/* 801E57E8 001E1448  48 09 67 71 */	bl PSMTXCopy
/* 801E57EC 001E144C  80 78 00 04 */	lwz r3, 4(r24)
/* 801E57F0 001E1450  80 03 00 00 */	lwz r0, 0(r3)
/* 801E57F4 001E1454  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 801E57F8 001E1458  90 03 00 00 */	stw r0, 0(r3)
/* 801E57FC 001E145C  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5800 001E1460  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5804 001E1464  60 00 00 07 */	ori r0, r0, 7
/* 801E5808 001E1468  90 03 00 00 */	stw r0, 0(r3)
/* 801E580C 001E146C  48 00 00 84 */	b lbl_801E5890
lbl_801E5810:
/* 801E5810 001E1470  C0 41 00 F4 */	lfs f2, 0xf4(r1)
/* 801E5814 001E1474  C0 21 00 F8 */	lfs f1, 0xf8(r1)
/* 801E5818 001E1478  4B FE ED C5 */	bl atan2
/* 801E581C 001E147C  80 AD A3 D8 */	lwz r5, render_context_ptr-_SDA_BASE_(r13)
/* 801E5820 001E1480  FC 00 08 18 */	frsp f0, f1
/* 801E5824 001E1484  38 61 00 28 */	addi r3, r1, 0x28
/* 801E5828 001E1488  38 81 00 38 */	addi r4, r1, 0x38
/* 801E582C 001E148C  83 05 16 E8 */	lwz r24, 0x16e8(r5)
/* 801E5830 001E1490  D2 E1 00 38 */	stfs f23, 0x38(r1)
/* 801E5834 001E1494  D2 E1 00 3C */	stfs f23, 0x3c(r1)
/* 801E5838 001E1498  D0 01 00 40 */	stfs f0, 0x40(r1)
/* 801E583C 001E149C  48 03 DE 85 */	bl func_802236C0
/* 801E5840 001E14A0  38 61 01 48 */	addi r3, r1, 0x148
/* 801E5844 001E14A4  38 81 00 28 */	addi r4, r1, 0x28
/* 801E5848 001E14A8  48 09 6D 79 */	bl PSMTXQuat
/* 801E584C 001E14AC  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5850 001E14B0  38 81 01 48 */	addi r4, r1, 0x148
/* 801E5854 001E14B4  38 A1 01 18 */	addi r5, r1, 0x118
/* 801E5858 001E14B8  3B 23 00 04 */	addi r25, r3, 4
/* 801E585C 001E14BC  7F 23 CB 78 */	mr r3, r25
/* 801E5860 001E14C0  48 09 67 2D */	bl PSMTXConcat
/* 801E5864 001E14C4  7F 24 CB 78 */	mr r4, r25
/* 801E5868 001E14C8  38 61 01 18 */	addi r3, r1, 0x118
/* 801E586C 001E14CC  48 09 66 ED */	bl PSMTXCopy
/* 801E5870 001E14D0  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5874 001E14D4  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5878 001E14D8  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 801E587C 001E14DC  90 03 00 00 */	stw r0, 0(r3)
/* 801E5880 001E14E0  80 78 00 04 */	lwz r3, 4(r24)
/* 801E5884 001E14E4  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5888 001E14E8  60 00 00 07 */	ori r0, r0, 7
/* 801E588C 001E14EC  90 03 00 00 */	stw r0, 0(r3)
lbl_801E5890:
/* 801E5890 001E14F0  88 17 00 0C */	lbz r0, 0xc(r23)
/* 801E5894 001E14F4  98 01 00 0B */	stb r0, 0xb(r1)
/* 801E5898 001E14F8  E0 01 A0 0B */	psq_l f0, 11(r1), 1, qr2
/* 801E589C 001E14FC  EC 0F 00 32 */	fmuls f0, f15, f0
/* 801E58A0 001E1500  F0 01 A0 20 */	psq_st f0, 32(r1), 1, qr2
/* 801E58A4 001E1504  88 17 00 0D */	lbz r0, 0xd(r23)
/* 801E58A8 001E1508  8B 61 00 20 */	lbz r27, 0x20(r1)
/* 801E58AC 001E150C  98 01 00 0A */	stb r0, 0xa(r1)
/* 801E58B0 001E1510  E0 01 A0 0A */	psq_l f0, 10(r1), 1, qr2
/* 801E58B4 001E1514  EC 0F 00 32 */	fmuls f0, f15, f0
/* 801E58B8 001E1518  F0 01 A0 1C */	psq_st f0, 28(r1), 1, qr2
/* 801E58BC 001E151C  88 17 00 0E */	lbz r0, 0xe(r23)
/* 801E58C0 001E1520  8B 41 00 1C */	lbz r26, 0x1c(r1)
/* 801E58C4 001E1524  98 01 00 09 */	stb r0, 9(r1)
/* 801E58C8 001E1528  E0 01 A0 09 */	psq_l f0, 9(r1), 1, qr2
/* 801E58CC 001E152C  EC 0F 00 32 */	fmuls f0, f15, f0
/* 801E58D0 001E1530  F0 01 A0 18 */	psq_st f0, 24(r1), 1, qr2
/* 801E58D4 001E1534  88 17 00 0F */	lbz r0, 0xf(r23)
/* 801E58D8 001E1538  8B 21 00 18 */	lbz r25, 0x18(r1)
/* 801E58DC 001E153C  98 01 00 08 */	stb r0, 8(r1)
/* 801E58E0 001E1540  E0 21 A0 08 */	psq_l f1, 8(r1), 1, qr2
/* 801E58E4 001E1544  C0 13 00 18 */	lfs f0, 0x18(r19)
/* 801E58E8 001E1548  EC 2F 00 72 */	fmuls f1, f15, f1
/* 801E58EC 001E154C  EC 00 00 72 */	fmuls f0, f0, f1
/* 801E58F0 001E1550  EC 0E 00 32 */	fmuls f0, f14, f0
/* 801E58F4 001E1554  EC 1D 00 2A */	fadds f0, f29, f0
/* 801E58F8 001E1558  F0 01 A0 14 */	psq_st f0, 20(r1), 1, qr2
/* 801E58FC 001E155C  38 A0 00 00 */	li r5, 0
/* 801E5900 001E1560  88 77 00 00 */	lbz r3, 0(r23)
/* 801E5904 001E1564  8B 01 00 14 */	lbz r24, 0x14(r1)
/* 801E5908 001E1568  54 60 07 39 */	rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 801E590C 001E156C  41 82 00 08 */	beq lbl_801E5914
/* 801E5910 001E1570  38 A0 00 02 */	li r5, 2
lbl_801E5914:
/* 801E5914 001E1574  54 60 07 7B */	rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 801E5918 001E1578  7E A3 AB 78 */	mr r3, r21
/* 801E591C 001E157C  38 80 00 00 */	li r4, 0
/* 801E5920 001E1580  41 82 00 08 */	beq lbl_801E5928
/* 801E5924 001E1584  38 80 00 02 */	li r4, 2
lbl_801E5928:
/* 801E5928 001E1588  48 05 8A 45 */	bl func_8023E36C
/* 801E592C 001E158C  88 77 00 00 */	lbz r3, 0(r23)
/* 801E5930 001E1590  54 60 07 7B */	rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 801E5934 001E1594  41 82 00 0C */	beq lbl_801E5940
/* 801E5938 001E1598  C2 A2 97 1C */	lfs f21, lbl_80641D1C-_SDA2_BASE_(r2)
/* 801E593C 001E159C  48 00 00 08 */	b lbl_801E5944
lbl_801E5940:
/* 801E5940 001E15A0  C2 A2 96 C4 */	lfs f21, lbl_80641CC4-_SDA2_BASE_(r2)
lbl_801E5944:
/* 801E5944 001E15A4  54 60 07 39 */	rlwinm. r0, r3, 0, 0x1c, 0x1c
/* 801E5948 001E15A8  41 82 00 0C */	beq lbl_801E5954
/* 801E594C 001E15AC  C2 82 97 1C */	lfs f20, lbl_80641D1C-_SDA2_BASE_(r2)
/* 801E5950 001E15B0  48 00 00 08 */	b lbl_801E5958
lbl_801E5954:
/* 801E5954 001E15B4  C2 82 96 C4 */	lfs f20, lbl_80641CC4-_SDA2_BASE_(r2)
lbl_801E5958:
/* 801E5958 001E15B8  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E595C 001E15BC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5960 001E15C0  80 03 15 3C */	lwz r0, 0x153c(r3)
/* 801E5964 001E15C4  7C 00 A8 40 */	cmplw r0, r21
/* 801E5968 001E15C8  40 82 00 14 */	bne lbl_801E597C
/* 801E596C 001E15CC  88 15 00 07 */	lbz r0, 7(r21)
/* 801E5970 001E15D0  54 00 07 FE */	clrlwi r0, r0, 0x1f
/* 801E5974 001E15D4  2C 00 00 01 */	cmpwi r0, 1
/* 801E5978 001E15D8  40 82 00 1C */	bne lbl_801E5994
lbl_801E597C:
/* 801E597C 001E15DC  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5980 001E15E0  92 A3 15 3C */	stw r21, 0x153c(r3)
/* 801E5984 001E15E4  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5988 001E15E8  80 03 15 38 */	lwz r0, 0x1538(r3)
/* 801E598C 001E15EC  60 00 00 01 */	ori r0, r0, 1
/* 801E5990 001E15F0  90 03 15 38 */	stw r0, 0x1538(r3)
lbl_801E5994:
/* 801E5994 001E15F4  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5998 001E15F8  38 80 00 04 */	li r4, 4
/* 801E599C 001E15FC  48 04 DB 91 */	bl begin_drawing
/* 801E59A0 001E1600  D2 7F 80 00 */	stfs f19, -0x8000(r31)
/* 801E59A4 001E1604  D2 5F 80 00 */	stfs f18, -0x8000(r31)
/* 801E59A8 001E1608  9B 7F 80 00 */	stb r27, -0x8000(r31)
/* 801E59AC 001E160C  9B 5F 80 00 */	stb r26, -0x8000(r31)
/* 801E59B0 001E1610  9B 3F 80 00 */	stb r25, -0x8000(r31)
/* 801E59B4 001E1614  9B 1F 80 00 */	stb r24, -0x8000(r31)
/* 801E59B8 001E1618  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E59BC 001E161C  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E59C0 001E1620  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E59C4 001E1624  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E59C8 001E1628  D2 3F 80 00 */	stfs f17, -0x8000(r31)
/* 801E59CC 001E162C  D2 5F 80 00 */	stfs f18, -0x8000(r31)
/* 801E59D0 001E1630  9B 7F 80 00 */	stb r27, -0x8000(r31)
/* 801E59D4 001E1634  9B 5F 80 00 */	stb r26, -0x8000(r31)
/* 801E59D8 001E1638  9B 3F 80 00 */	stb r25, -0x8000(r31)
/* 801E59DC 001E163C  9B 1F 80 00 */	stb r24, -0x8000(r31)
/* 801E59E0 001E1640  D2 BF 80 00 */	stfs f21, -0x8000(r31)
/* 801E59E4 001E1644  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E59E8 001E1648  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E59EC 001E164C  D2 7F 80 00 */	stfs f19, -0x8000(r31)
/* 801E59F0 001E1650  D2 1F 80 00 */	stfs f16, -0x8000(r31)
/* 801E59F4 001E1654  9B 7F 80 00 */	stb r27, -0x8000(r31)
/* 801E59F8 001E1658  9B 5F 80 00 */	stb r26, -0x8000(r31)
/* 801E59FC 001E165C  9B 3F 80 00 */	stb r25, -0x8000(r31)
/* 801E5A00 001E1660  9B 1F 80 00 */	stb r24, -0x8000(r31)
/* 801E5A04 001E1664  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5A08 001E1668  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5A0C 001E166C  D2 9F 80 00 */	stfs f20, -0x8000(r31)
/* 801E5A10 001E1670  D2 3F 80 00 */	stfs f17, -0x8000(r31)
/* 801E5A14 001E1674  D2 1F 80 00 */	stfs f16, -0x8000(r31)
/* 801E5A18 001E1678  9B 7F 80 00 */	stb r27, -0x8000(r31)
/* 801E5A1C 001E167C  9B 5F 80 00 */	stb r26, -0x8000(r31)
/* 801E5A20 001E1680  9B 3F 80 00 */	stb r25, -0x8000(r31)
/* 801E5A24 001E1684  9B 1F 80 00 */	stb r24, -0x8000(r31)
/* 801E5A28 001E1688  D2 BF 80 00 */	stfs f21, -0x8000(r31)
/* 801E5A2C 001E168C  D2 9F 80 00 */	stfs f20, -0x8000(r31)
/* 801E5A30 001E1690  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5A34 001E1694  48 04 DB 4D */	bl end_drawing
/* 801E5A38 001E1698  3A F7 00 10 */	addi r23, r23, 0x10
lbl_801E5A3C:
/* 801E5A3C 001E169C  2C 16 00 00 */	cmpwi r22, 0
/* 801E5A40 001E16A0  3A D6 FF FF */	addi r22, r22, -1
/* 801E5A44 001E16A4  40 82 FA A4 */	bne lbl_801E54E8
/* 801E5A48 001E16A8  2C 10 00 00 */	cmpwi r16, 0
/* 801E5A4C 001E16AC  40 82 03 F4 */	bne lbl_801E5E40
/* 801E5A50 001E16B0  80 72 00 10 */	lwz r3, 0x10(r18)
/* 801E5A54 001E16B4  90 61 04 BC */	stw r3, 0x4bc(r1)
/* 801E5A58 001E16B8  C8 01 04 B8 */	lfd f0, 0x4b8(r1)
/* 801E5A5C 001E16BC  EC 20 B0 28 */	fsubs f1, f0, f22
/* 801E5A60 001E16C0  C0 01 04 CC */	lfs f0, 0x4cc(r1)
/* 801E5A64 001E16C4  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 801E5A68 001E16C8  40 80 03 D8 */	bge lbl_801E5E40
/* 801E5A6C 001E16CC  80 12 00 14 */	lwz r0, 0x14(r18)
/* 801E5A70 001E16D0  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5A74 001E16D4  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E5A78 001E16D8  EC 20 B0 28 */	fsubs f1, f0, f22
/* 801E5A7C 001E16DC  C0 01 04 CC */	lfs f0, 0x4cc(r1)
/* 801E5A80 001E16E0  FC 00 08 40 */	fcmpo cr0, f0, f1
/* 801E5A84 001E16E4  40 80 00 0C */	bge lbl_801E5A90
/* 801E5A88 001E16E8  C0 32 00 18 */	lfs f1, 0x18(r18)
/* 801E5A8C 001E16EC  48 00 00 60 */	b lbl_801E5AEC
lbl_801E5A90:
/* 801E5A90 001E16F0  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5A94 001E16F4  7C 00 18 50 */	subf r0, r0, r3
/* 801E5A98 001E16F8  C0 32 00 18 */	lfs f1, 0x18(r18)
/* 801E5A9C 001E16FC  90 01 04 BC */	stw r0, 0x4bc(r1)
/* 801E5AA0 001E1700  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E5AA4 001E1704  C8 61 04 B8 */	lfd f3, 0x4b8(r1)
/* 801E5AA8 001E1708  EC 40 B0 28 */	fsubs f2, f0, f22
/* 801E5AAC 001E170C  C0 01 04 CC */	lfs f0, 0x4cc(r1)
/* 801E5AB0 001E1710  90 01 04 BC */	stw r0, 0x4bc(r1)
/* 801E5AB4 001E1714  EC 63 B0 28 */	fsubs f3, f3, f22
/* 801E5AB8 001E1718  EC 40 10 28 */	fsubs f2, f0, f2
/* 801E5ABC 001E171C  C8 01 04 B8 */	lfd f0, 0x4b8(r1)
/* 801E5AC0 001E1720  EC 00 B0 28 */	fsubs f0, f0, f22
/* 801E5AC4 001E1724  EC 43 10 28 */	fsubs f2, f3, f2
/* 801E5AC8 001E1728  EC 02 00 24 */	fdivs f0, f2, f0
/* 801E5ACC 001E172C  EC 21 00 32 */	fmuls f1, f1, f0
/* 801E5AD0 001E1730  FC 01 B8 40 */	fcmpo cr0, f1, f23
/* 801E5AD4 001E1734  40 80 00 0C */	bge lbl_801E5AE0
/* 801E5AD8 001E1738  FC 20 B8 90 */	fmr f1, f23
/* 801E5ADC 001E173C  48 00 00 10 */	b lbl_801E5AEC
lbl_801E5AE0:
/* 801E5AE0 001E1740  FC 01 C0 40 */	fcmpo cr0, f1, f24
/* 801E5AE4 001E1744  40 81 00 08 */	ble lbl_801E5AEC
/* 801E5AE8 001E1748  FC 20 C0 90 */	fmr f1, f24
lbl_801E5AEC:
/* 801E5AEC 001E174C  C8 01 05 50 */	lfd f0, 0x550(r1)
/* 801E5AF0 001E1750  38 60 00 02 */	li r3, 2
/* 801E5AF4 001E1754  EC 00 00 72 */	fmuls f0, f0, f1
/* 801E5AF8 001E1758  FC 00 00 1E */	fctiwz f0, f0
/* 801E5AFC 001E175C  D8 01 04 C0 */	stfd f0, 0x4c0(r1)
/* 801E5B00 001E1760  82 41 04 C4 */	lwz r18, 0x4c4(r1)
/* 801E5B04 001E1764  48 05 74 19 */	bl func_8023CF1C
/* 801E5B08 001E1768  7C 64 1B 78 */	mr r4, r3
/* 801E5B0C 001E176C  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5B10 001E1770  48 05 25 AD */	bl func_802380BC
/* 801E5B14 001E1774  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5B18 001E1778  82 83 16 E8 */	lwz r20, 0x16e8(r3)
/* 801E5B1C 001E177C  80 74 00 04 */	lwz r3, 4(r20)
/* 801E5B20 001E1780  38 63 00 04 */	addi r3, r3, 4
/* 801E5B24 001E1784  48 09 64 09 */	bl PSMTXIdentity
/* 801E5B28 001E1788  80 74 00 04 */	lwz r3, 4(r20)
/* 801E5B2C 001E178C  C8 01 05 50 */	lfd f0, 0x550(r1)
/* 801E5B30 001E1790  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5B34 001E1794  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 801E5B38 001E1798  90 03 00 00 */	stw r0, 0(r3)
/* 801E5B3C 001E179C  80 74 00 04 */	lwz r3, 4(r20)
/* 801E5B40 001E17A0  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5B44 001E17A4  60 00 00 07 */	ori r0, r0, 7
/* 801E5B48 001E17A8  90 03 00 00 */	stw r0, 0(r3)
/* 801E5B4C 001E17AC  C0 33 00 18 */	lfs f1, 0x18(r19)
/* 801E5B50 001E17B0  EC 00 00 72 */	fmuls f0, f0, f1
/* 801E5B54 001E17B4  EC 00 03 B2 */	fmuls f0, f0, f14
/* 801E5B58 001E17B8  EC 1D 00 2A */	fadds f0, f29, f0
/* 801E5B5C 001E17BC  F0 01 A0 10 */	psq_st f0, 16(r1), 1, qr2
/* 801E5B60 001E17C0  38 80 00 04 */	li r4, 4
/* 801E5B64 001E17C4  8A 61 00 10 */	lbz r19, 0x10(r1)
/* 801E5B68 001E17C8  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5B6C 001E17CC  48 04 D9 C1 */	bl begin_drawing
/* 801E5B70 001E17D0  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5B74 001E17D4  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5B78 001E17D8  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5B7C 001E17DC  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5B80 001E17E0  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5B84 001E17E4  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5B88 001E17E8  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5B8C 001E17EC  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5B90 001E17F0  C0 02 97 24 */	lfs f0, lbl_80641D24-_SDA2_BASE_(r2)
/* 801E5B94 001E17F4  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5B98 001E17F8  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5B9C 001E17FC  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5BA0 001E1800  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BA4 001E1804  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BA8 001E1808  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BAC 001E180C  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5BB0 001E1810  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5BB4 001E1814  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5BB8 001E1818  C0 02 97 28 */	lfs f0, lbl_80641D28-_SDA2_BASE_(r2)
/* 801E5BBC 001E181C  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5BC0 001E1820  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BC4 001E1824  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BC8 001E1828  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BCC 001E182C  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5BD0 001E1830  C0 02 97 24 */	lfs f0, lbl_80641D24-_SDA2_BASE_(r2)
/* 801E5BD4 001E1834  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5BD8 001E1838  C0 02 97 28 */	lfs f0, lbl_80641D28-_SDA2_BASE_(r2)
/* 801E5BDC 001E183C  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5BE0 001E1840  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BE4 001E1844  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BE8 001E1848  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5BEC 001E184C  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5BF0 001E1850  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5BF4 001E1854  48 04 D9 8D */	bl end_drawing
/* 801E5BF8 001E1858  48 00 02 48 */	b lbl_801E5E40
lbl_801E5BFC:
/* 801E5BFC 001E185C  2C 10 00 00 */	cmpwi r16, 0
/* 801E5C00 001E1860  41 82 02 40 */	beq lbl_801E5E40
/* 801E5C04 001E1864  38 61 00 C4 */	addi r3, r1, 0xc4
/* 801E5C08 001E1868  38 93 00 0C */	addi r4, r19, 0xc
/* 801E5C0C 001E186C  38 A1 00 64 */	addi r5, r1, 0x64
/* 801E5C10 001E1870  48 09 70 D9 */	bl PSVECSubtract
/* 801E5C14 001E1874  C0 41 00 64 */	lfs f2, 0x64(r1)
/* 801E5C18 001E1878  38 61 00 F4 */	addi r3, r1, 0xf4
/* 801E5C1C 001E187C  C0 21 00 68 */	lfs f1, 0x68(r1)
/* 801E5C20 001E1880  7C 65 1B 78 */	mr r5, r3
/* 801E5C24 001E1884  C0 01 00 6C */	lfs f0, 0x6c(r1)
/* 801E5C28 001E1888  38 81 00 C4 */	addi r4, r1, 0xc4
/* 801E5C2C 001E188C  D0 41 00 F4 */	stfs f2, 0xf4(r1)
/* 801E5C30 001E1890  D0 21 00 F8 */	stfs f1, 0xf8(r1)
/* 801E5C34 001E1894  D0 01 00 FC */	stfs f0, 0xfc(r1)
/* 801E5C38 001E1898  48 09 70 8D */	bl PSVECAdd
/* 801E5C3C 001E189C  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5C40 001E18A0  38 81 01 0C */	addi r4, r1, 0x10c
/* 801E5C44 001E18A4  38 A1 00 F4 */	addi r5, r1, 0xf4
/* 801E5C48 001E18A8  38 C0 00 01 */	li r6, 1
/* 801E5C4C 001E18AC  48 04 D0 D9 */	bl func_80232D24
/* 801E5C50 001E18B0  2C 03 00 02 */	cmpwi r3, 2
/* 801E5C54 001E18B4  40 82 01 EC */	bne lbl_801E5E40
/* 801E5C58 001E18B8  C0 61 01 0C */	lfs f3, 0x10c(r1)
/* 801E5C5C 001E18BC  38 61 00 F4 */	addi r3, r1, 0xf4
/* 801E5C60 001E18C0  C0 41 01 00 */	lfs f2, 0x100(r1)
/* 801E5C64 001E18C4  C0 21 01 10 */	lfs f1, 0x110(r1)
/* 801E5C68 001E18C8  C0 01 01 04 */	lfs f0, 0x104(r1)
/* 801E5C6C 001E18CC  EC 43 10 28 */	fsubs f2, f3, f2
/* 801E5C70 001E18D0  D2 E1 00 FC */	stfs f23, 0xfc(r1)
/* 801E5C74 001E18D4  EC 01 00 28 */	fsubs f0, f1, f0
/* 801E5C78 001E18D8  D0 41 00 F4 */	stfs f2, 0xf4(r1)
/* 801E5C7C 001E18DC  D0 01 00 F8 */	stfs f0, 0xf8(r1)
/* 801E5C80 001E18E0  48 09 71 05 */	bl PSVECMag
/* 801E5C84 001E18E4  FC 01 C8 40 */	fcmpo cr0, f1, f25
/* 801E5C88 001E18E8  40 81 01 B8 */	ble lbl_801E5E40
/* 801E5C8C 001E18EC  80 12 00 0C */	lwz r0, 0xc(r18)
/* 801E5C90 001E18F0  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5C94 001E18F4  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E5C98 001E18F8  EC 00 B0 28 */	fsubs f0, f0, f22
/* 801E5C9C 001E18FC  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 801E5CA0 001E1900  40 80 01 A0 */	bge lbl_801E5E40
/* 801E5CA4 001E1904  80 72 00 10 */	lwz r3, 0x10(r18)
/* 801E5CA8 001E1908  90 61 04 BC */	stw r3, 0x4bc(r1)
/* 801E5CAC 001E190C  C8 01 04 B8 */	lfd f0, 0x4b8(r1)
/* 801E5CB0 001E1910  EC 00 B0 28 */	fsubs f0, f0, f22
/* 801E5CB4 001E1914  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 801E5CB8 001E1918  40 80 01 88 */	bge lbl_801E5E40
/* 801E5CBC 001E191C  80 12 00 14 */	lwz r0, 0x14(r18)
/* 801E5CC0 001E1920  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5CC4 001E1924  C8 01 04 B0 */	lfd f0, 0x4b0(r1)
/* 801E5CC8 001E1928  EC 00 B0 28 */	fsubs f0, f0, f22
/* 801E5CCC 001E192C  FC 01 00 40 */	fcmpo cr0, f1, f0
/* 801E5CD0 001E1930  40 80 00 0C */	bge lbl_801E5CDC
/* 801E5CD4 001E1934  C0 32 00 1C */	lfs f1, 0x1c(r18)
/* 801E5CD8 001E1938  48 00 00 5C */	b lbl_801E5D34
lbl_801E5CDC:
/* 801E5CDC 001E193C  90 01 04 B4 */	stw r0, 0x4b4(r1)
/* 801E5CE0 001E1940  7C 00 18 50 */	subf r0, r0, r3
/* 801E5CE4 001E1944  C0 12 00 1C */	lfs f0, 0x1c(r18)
/* 801E5CE8 001E1948  90 01 04 BC */	stw r0, 0x4bc(r1)
/* 801E5CEC 001E194C  C8 41 04 B0 */	lfd f2, 0x4b0(r1)
/* 801E5CF0 001E1950  C8 61 04 B8 */	lfd f3, 0x4b8(r1)
/* 801E5CF4 001E1954  EC 42 B0 28 */	fsubs f2, f2, f22
/* 801E5CF8 001E1958  90 01 04 BC */	stw r0, 0x4bc(r1)
/* 801E5CFC 001E195C  EC 63 B0 28 */	fsubs f3, f3, f22
/* 801E5D00 001E1960  EC 41 10 28 */	fsubs f2, f1, f2
/* 801E5D04 001E1964  C8 21 04 B8 */	lfd f1, 0x4b8(r1)
/* 801E5D08 001E1968  EC 21 B0 28 */	fsubs f1, f1, f22
/* 801E5D0C 001E196C  EC 43 10 28 */	fsubs f2, f3, f2
/* 801E5D10 001E1970  EC 22 08 24 */	fdivs f1, f2, f1
/* 801E5D14 001E1974  EC 20 00 72 */	fmuls f1, f0, f1
/* 801E5D18 001E1978  FC 01 B8 40 */	fcmpo cr0, f1, f23
/* 801E5D1C 001E197C  40 80 00 0C */	bge lbl_801E5D28
/* 801E5D20 001E1980  FC 20 B8 90 */	fmr f1, f23
/* 801E5D24 001E1984  48 00 00 10 */	b lbl_801E5D34
lbl_801E5D28:
/* 801E5D28 001E1988  FC 01 C0 40 */	fcmpo cr0, f1, f24
/* 801E5D2C 001E198C  40 81 00 08 */	ble lbl_801E5D34
/* 801E5D30 001E1990  FC 20 C0 90 */	fmr f1, f24
lbl_801E5D34:
/* 801E5D34 001E1994  C8 01 05 50 */	lfd f0, 0x550(r1)
/* 801E5D38 001E1998  38 60 00 02 */	li r3, 2
/* 801E5D3C 001E199C  EC 00 00 72 */	fmuls f0, f0, f1
/* 801E5D40 001E19A0  FC 00 00 1E */	fctiwz f0, f0
/* 801E5D44 001E19A4  D8 01 04 C0 */	stfd f0, 0x4c0(r1)
/* 801E5D48 001E19A8  82 41 04 C4 */	lwz r18, 0x4c4(r1)
/* 801E5D4C 001E19AC  48 05 71 D1 */	bl func_8023CF1C
/* 801E5D50 001E19B0  7C 64 1B 78 */	mr r4, r3
/* 801E5D54 001E19B4  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5D58 001E19B8  48 05 23 65 */	bl func_802380BC
/* 801E5D5C 001E19BC  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5D60 001E19C0  82 83 16 E8 */	lwz r20, 0x16e8(r3)
/* 801E5D64 001E19C4  80 74 00 04 */	lwz r3, 4(r20)
/* 801E5D68 001E19C8  38 63 00 04 */	addi r3, r3, 4
/* 801E5D6C 001E19CC  48 09 61 C1 */	bl PSMTXIdentity
/* 801E5D70 001E19D0  80 74 00 04 */	lwz r3, 4(r20)
/* 801E5D74 001E19D4  C8 01 05 50 */	lfd f0, 0x550(r1)
/* 801E5D78 001E19D8  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5D7C 001E19DC  54 00 07 76 */	rlwinm r0, r0, 0, 0x1d, 0x1b
/* 801E5D80 001E19E0  90 03 00 00 */	stw r0, 0(r3)
/* 801E5D84 001E19E4  80 74 00 04 */	lwz r3, 4(r20)
/* 801E5D88 001E19E8  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5D8C 001E19EC  60 00 00 07 */	ori r0, r0, 7
/* 801E5D90 001E19F0  90 03 00 00 */	stw r0, 0(r3)
/* 801E5D94 001E19F4  C0 33 00 18 */	lfs f1, 0x18(r19)
/* 801E5D98 001E19F8  EC 00 00 72 */	fmuls f0, f0, f1
/* 801E5D9C 001E19FC  EC 00 03 B2 */	fmuls f0, f0, f14
/* 801E5DA0 001E1A00  EC 1D 00 2A */	fadds f0, f29, f0
/* 801E5DA4 001E1A04  F0 01 A0 0C */	psq_st f0, 12(r1), 1, qr2
/* 801E5DA8 001E1A08  38 80 00 04 */	li r4, 4
/* 801E5DAC 001E1A0C  8A 61 00 0C */	lbz r19, 0xc(r1)
/* 801E5DB0 001E1A10  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5DB4 001E1A14  48 04 D7 79 */	bl begin_drawing
/* 801E5DB8 001E1A18  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5DBC 001E1A1C  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5DC0 001E1A20  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5DC4 001E1A24  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5DC8 001E1A28  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5DCC 001E1A2C  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5DD0 001E1A30  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5DD4 001E1A34  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5DD8 001E1A38  C0 02 97 24 */	lfs f0, lbl_80641D24-_SDA2_BASE_(r2)
/* 801E5DDC 001E1A3C  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5DE0 001E1A40  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5DE4 001E1A44  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5DE8 001E1A48  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5DEC 001E1A4C  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5DF0 001E1A50  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5DF4 001E1A54  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5DF8 001E1A58  C0 02 96 C0 */	lfs f0, lbl_80641CC0-_SDA2_BASE_(r2)
/* 801E5DFC 001E1A5C  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5E00 001E1A60  C0 02 97 28 */	lfs f0, lbl_80641D28-_SDA2_BASE_(r2)
/* 801E5E04 001E1A64  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5E08 001E1A68  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5E0C 001E1A6C  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5E10 001E1A70  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5E14 001E1A74  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5E18 001E1A78  C0 02 97 24 */	lfs f0, lbl_80641D24-_SDA2_BASE_(r2)
/* 801E5E1C 001E1A7C  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5E20 001E1A80  C0 02 97 28 */	lfs f0, lbl_80641D28-_SDA2_BASE_(r2)
/* 801E5E24 001E1A84  D0 1F 80 00 */	stfs f0, -0x8000(r31)
/* 801E5E28 001E1A88  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5E2C 001E1A8C  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5E30 001E1A90  9A 5F 80 00 */	stb r18, -0x8000(r31)
/* 801E5E34 001E1A94  9A 7F 80 00 */	stb r19, -0x8000(r31)
/* 801E5E38 001E1A98  80 6D A3 D8 */	lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 801E5E3C 001E1A9C  48 04 D7 45 */	bl end_drawing
lbl_801E5E40:
/* 801E5E40 001E1AA0  3A 31 00 01 */	addi r17, r17, 1
/* 801E5E44 001E1AA4  28 11 00 04 */	cmplwi r17, 4
/* 801E5E48 001E1AA8  41 80 F0 6C */	blt lbl_801E4EB4
/* 801E5E4C 001E1AAC  80 01 05 5C */	lwz r0, 0x55c(r1)
/* 801E5E50 001E1AB0  2C 00 00 00 */	cmpwi r0, 0
/* 801E5E54 001E1AB4  41 82 00 60 */	beq lbl_801E5EB4
/* 801E5E58 001E1AB8  80 8D A3 D8 */	lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 801E5E5C 001E1ABC  38 00 00 01 */	li r0, 1
/* 801E5E60 001E1AC0  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5E64 001E1AC4  98 03 0A 87 */	stb r0, 0xa87(r3)
/* 801E5E68 001E1AC8  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5E6C 001E1ACC  80 03 00 64 */	lwz r0, 0x64(r3)
/* 801E5E70 001E1AD0  60 00 00 40 */	ori r0, r0, 0x40
/* 801E5E74 001E1AD4  90 03 00 64 */	stw r0, 0x64(r3)
/* 801E5E78 001E1AD8  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5E7C 001E1ADC  80 03 00 64 */	lwz r0, 0x64(r3)
/* 801E5E80 001E1AE0  60 00 02 00 */	ori r0, r0, 0x200
/* 801E5E84 001E1AE4  90 03 00 64 */	stw r0, 0x64(r3)
/* 801E5E88 001E1AE8  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5E8C 001E1AEC  88 03 0A 86 */	lbz r0, 0xa86(r3)
/* 801E5E90 001E1AF0  2C 00 00 00 */	cmpwi r0, 0
/* 801E5E94 001E1AF4  41 82 00 10 */	beq lbl_801E5EA4
/* 801E5E98 001E1AF8  80 03 00 64 */	lwz r0, 0x64(r3)
/* 801E5E9C 001E1AFC  60 00 01 00 */	ori r0, r0, 0x100
/* 801E5EA0 001E1B00  90 03 00 64 */	stw r0, 0x64(r3)
lbl_801E5EA4:
/* 801E5EA4 001E1B04  80 64 16 38 */	lwz r3, 0x1638(r4)
/* 801E5EA8 001E1B08  80 03 00 00 */	lwz r0, 0(r3)
/* 801E5EAC 001E1B0C  60 00 00 40 */	ori r0, r0, 0x40
/* 801E5EB0 001E1B10  90 03 00 00 */	stw r0, 0(r3)
lbl_801E5EB4:
/* 801E5EB4 001E1B14  E3 E1 06 C8 */	psq_l f31, 1736(r1), 0, qr0
/* 801E5EB8 001E1B18  CB E1 06 C0 */	lfd f31, 0x6c0(r1)
/* 801E5EBC 001E1B1C  E3 C1 06 B8 */	psq_l f30, 1720(r1), 0, qr0
/* 801E5EC0 001E1B20  CB C1 06 B0 */	lfd f30, 0x6b0(r1)
/* 801E5EC4 001E1B24  E3 A1 06 A8 */	psq_l f29, 1704(r1), 0, qr0
/* 801E5EC8 001E1B28  CB A1 06 A0 */	lfd f29, 0x6a0(r1)
/* 801E5ECC 001E1B2C  E3 81 06 98 */	psq_l f28, 1688(r1), 0, qr0
/* 801E5ED0 001E1B30  CB 81 06 90 */	lfd f28, 0x690(r1)
/* 801E5ED4 001E1B34  E3 61 06 88 */	psq_l f27, 1672(r1), 0, qr0
/* 801E5ED8 001E1B38  CB 61 06 80 */	lfd f27, 0x680(r1)
/* 801E5EDC 001E1B3C  E3 41 06 78 */	psq_l f26, 1656(r1), 0, qr0
/* 801E5EE0 001E1B40  CB 41 06 70 */	lfd f26, 0x670(r1)
/* 801E5EE4 001E1B44  E3 21 06 68 */	psq_l f25, 1640(r1), 0, qr0
/* 801E5EE8 001E1B48  CB 21 06 60 */	lfd f25, 0x660(r1)
/* 801E5EEC 001E1B4C  E3 01 06 58 */	psq_l f24, 1624(r1), 0, qr0
/* 801E5EF0 001E1B50  CB 01 06 50 */	lfd f24, 0x650(r1)
/* 801E5EF4 001E1B54  E2 E1 06 48 */	psq_l f23, 1608(r1), 0, qr0
/* 801E5EF8 001E1B58  CA E1 06 40 */	lfd f23, 0x640(r1)
/* 801E5EFC 001E1B5C  E2 C1 06 38 */	psq_l f22, 1592(r1), 0, qr0
/* 801E5F00 001E1B60  CA C1 06 30 */	lfd f22, 0x630(r1)
/* 801E5F04 001E1B64  E2 A1 06 28 */	psq_l f21, 1576(r1), 0, qr0
/* 801E5F08 001E1B68  CA A1 06 20 */	lfd f21, 0x620(r1)
/* 801E5F0C 001E1B6C  E2 81 06 18 */	psq_l f20, 1560(r1), 0, qr0
/* 801E5F10 001E1B70  CA 81 06 10 */	lfd f20, 0x610(r1)
/* 801E5F14 001E1B74  E2 61 06 08 */	psq_l f19, 1544(r1), 0, qr0
/* 801E5F18 001E1B78  CA 61 06 00 */	lfd f19, 0x600(r1)
/* 801E5F1C 001E1B7C  E2 41 05 F8 */	psq_l f18, 1528(r1), 0, qr0
/* 801E5F20 001E1B80  CA 41 05 F0 */	lfd f18, 0x5f0(r1)
/* 801E5F24 001E1B84  E2 21 05 E8 */	psq_l f17, 1512(r1), 0, qr0
/* 801E5F28 001E1B88  CA 21 05 E0 */	lfd f17, 0x5e0(r1)
/* 801E5F2C 001E1B8C  E2 01 05 D8 */	psq_l f16, 1496(r1), 0, qr0
/* 801E5F30 001E1B90  CA 01 05 D0 */	lfd f16, 0x5d0(r1)
/* 801E5F34 001E1B94  E1 E1 05 C8 */	psq_l f15, 1480(r1), 0, qr0
/* 801E5F38 001E1B98  C9 E1 05 C0 */	lfd f15, 0x5c0(r1)
/* 801E5F3C 001E1B9C  E1 C1 05 B8 */	psq_l f14, 1464(r1), 0, qr0
/* 801E5F40 001E1BA0  39 61 05 B0 */	addi r11, r1, 0x5b0
/* 801E5F44 001E1BA4  C9 C1 05 B0 */	lfd f14, 0x5b0(r1)
/* 801E5F48 001E1BA8  4B FE 11 F9 */	bl __restore_gpr
/* 801E5F4C 001E1BAC  80 01 06 D4 */	lwz r0, 0x6d4(r1)
/* 801E5F50 001E1BB0  7C 08 03 A6 */	mtlr r0
/* 801E5F54 001E1BB4  38 21 06 D0 */	addi r1, r1, 0x6d0
/* 801E5F58 001E1BB8  4E 80 00 20 */	blr

.global func_801E5F5C
func_801E5F5C:
/* 801E5F5C 001E1BBC  38 A0 00 01 */	li r5, 1
/* 801E5F60 001E1BC0  38 6D A0 C8 */	addi r3, r13, lbl_8063F388-_SDA_BASE_
/* 801E5F64 001E1BC4  38 80 00 04 */	li r4, 4
/* 801E5F68 001E1BC8  38 00 00 00 */	li r0, 0
/* 801E5F6C 001E1BCC  98 AD A0 C8 */	stb r5, lbl_8063F388-_SDA_BASE_(r13)
/* 801E5F70 001E1BD0  B0 83 00 02 */	sth r4, 2(r3)
/* 801E5F74 001E1BD4  98 03 00 04 */	stb r0, 4(r3)
/* 801E5F78 001E1BD8  4E 80 00 20 */	blr