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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_8021D424
func_8021D424:
/* 8021D424 00219084 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8021D428 00219088 7C 08 02 A6 */ mflr r0
/* 8021D42C 0021908C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8021D430 00219090 39 61 00 20 */ addi r11, r1, 0x20
/* 8021D434 00219094 4B FA 9C F5 */ bl _savegpr_27
/* 8021D438 00219098 7C 7C 1B 78 */ mr r28, r3
/* 8021D43C 0021909C 7C 9D 23 78 */ mr r29, r4
/* 8021D440 002190A0 4B FF FC A1 */ bl func_8021D0E0
/* 8021D444 002190A4 C0 02 9B 84 */ lfs f0, lbl_80642184-_SDA2_BASE_(r2)
/* 8021D448 002190A8 3C 60 80 42 */ lis r3, lbl_80423B70@ha
/* 8021D44C 002190AC 38 A0 00 00 */ li r5, 0
/* 8021D450 002190B0 C0 22 9B 80 */ lfs f1, lbl_80642180-_SDA2_BASE_(r2)
/* 8021D454 002190B4 38 80 00 01 */ li r4, 1
/* 8021D458 002190B8 38 63 3B 70 */ addi r3, r3, lbl_80423B70@l
/* 8021D45C 002190BC 38 00 00 FF */ li r0, 0xff
/* 8021D460 002190C0 90 7C 00 0C */ stw r3, 0xc(r28)
/* 8021D464 002190C4 3B C0 00 00 */ li r30, 0
/* 8021D468 002190C8 38 60 00 00 */ li r3, 0
/* 8021D46C 002190CC 93 BC 00 10 */ stw r29, 0x10(r28)
/* 8021D470 002190D0 90 BC 00 14 */ stw r5, 0x14(r28)
/* 8021D474 002190D4 90 BC 00 18 */ stw r5, 0x18(r28)
/* 8021D478 002190D8 B0 BC 00 1C */ sth r5, 0x1c(r28)
/* 8021D47C 002190DC 98 BC 00 1E */ stb r5, 0x1e(r28)
/* 8021D480 002190E0 98 9C 00 1F */ stb r4, 0x1f(r28)
/* 8021D484 002190E4 98 9C 00 20 */ stb r4, 0x20(r28)
/* 8021D488 002190E8 98 9C 00 21 */ stb r4, 0x21(r28)
/* 8021D48C 002190EC D0 3C 00 24 */ stfs f1, 0x24(r28)
/* 8021D490 002190F0 98 BC 00 28 */ stb r5, 0x28(r28)
/* 8021D494 002190F4 98 BC 00 29 */ stb r5, 0x29(r28)
/* 8021D498 002190F8 98 BC 00 2A */ stb r5, 0x2a(r28)
/* 8021D49C 002190FC 98 1C 00 2B */ stb r0, 0x2b(r28)
/* 8021D4A0 00219100 D0 1C 00 2C */ stfs f0, 0x2c(r28)
/* 8021D4A4 00219104 D0 1C 00 30 */ stfs f0, 0x30(r28)
/* 8021D4A8 00219108 D0 1C 00 34 */ stfs f0, 0x34(r28)
/* 8021D4AC 0021910C D0 1C 00 38 */ stfs f0, 0x38(r28)
/* 8021D4B0 00219110 D0 1C 00 3C */ stfs f0, 0x3c(r28)
/* 8021D4B4 00219114 D0 1C 00 40 */ stfs f0, 0x40(r28)
/* 8021D4B8 00219118 D0 1C 00 44 */ stfs f0, 0x44(r28)
/* 8021D4BC 0021911C D0 1C 00 48 */ stfs f0, 0x48(r28)
/* 8021D4C0 00219120 D0 1C 00 4C */ stfs f0, 0x4c(r28)
/* 8021D4C4 00219124 D0 1C 00 50 */ stfs f0, 0x50(r28)
/* 8021D4C8 00219128 D0 1C 00 54 */ stfs f0, 0x54(r28)
/* 8021D4CC 0021912C D0 3C 00 58 */ stfs f1, 0x58(r28)
/* 8021D4D0 00219130 D0 1C 00 5C */ stfs f0, 0x5c(r28)
/* 8021D4D4 00219134 D0 1C 00 60 */ stfs f0, 0x60(r28)
/* 8021D4D8 00219138 D0 1C 00 64 */ stfs f0, 0x64(r28)
/* 8021D4DC 0021913C D0 1C 00 68 */ stfs f0, 0x68(r28)
/* 8021D4E0 00219140 D0 3C 00 6C */ stfs f1, 0x6c(r28)
/* 8021D4E4 00219144 A3 FD 00 EC */ lhz r31, 0xec(r29)
/* 8021D4E8 00219148 48 00 01 2C */ b lbl_8021D614
lbl_8021D4EC:
/* 8021D4EC 0021914C 80 BD 00 28 */ lwz r5, 0x28(r29)
/* 8021D4F0 00219150 2C 05 00 00 */ cmpwi r5, 0
/* 8021D4F4 00219154 40 82 00 0C */ bne lbl_8021D500
/* 8021D4F8 00219158 38 80 00 00 */ li r4, 0
/* 8021D4FC 0021915C 48 00 00 54 */ b lbl_8021D550
lbl_8021D500:
/* 8021D500 00219160 A0 1D 00 EC */ lhz r0, 0xec(r29)
/* 8021D504 00219164 54 64 04 3E */ clrlwi r4, r3, 0x10
/* 8021D508 00219168 7C 04 00 40 */ cmplw r4, r0
/* 8021D50C 0021916C 41 80 00 0C */ blt lbl_8021D518
/* 8021D510 00219170 38 80 00 00 */ li r4, 0
/* 8021D514 00219174 48 00 00 3C */ b lbl_8021D550
lbl_8021D518:
/* 8021D518 00219178 80 DD 00 08 */ lwz r6, 8(r29)
/* 8021D51C 0021917C 54 60 0B FC */ rlwinm r0, r3, 1, 0xf, 0x1e
/* 8021D520 00219180 7C 85 02 2E */ lhzx r4, r5, r0
/* 8021D524 00219184 2C 06 00 00 */ cmpwi r6, 0
/* 8021D528 00219188 40 82 00 0C */ bne lbl_8021D534
/* 8021D52C 0021918C 38 80 00 00 */ li r4, 0
/* 8021D530 00219190 48 00 00 20 */ b lbl_8021D550
lbl_8021D534:
/* 8021D534 00219194 A0 1D 00 DE */ lhz r0, 0xde(r29)
/* 8021D538 00219198 7C 04 00 40 */ cmplw r4, r0
/* 8021D53C 0021919C 41 80 00 0C */ blt lbl_8021D548
/* 8021D540 002191A0 38 80 00 00 */ li r4, 0
/* 8021D544 002191A4 48 00 00 0C */ b lbl_8021D550
lbl_8021D548:
/* 8021D548 002191A8 54 80 13 BA */ rlwinm r0, r4, 2, 0xe, 0x1d
/* 8021D54C 002191AC 7C 86 00 2E */ lwzx r4, r6, r0
lbl_8021D550:
/* 8021D550 002191B0 2C 04 00 00 */ cmpwi r4, 0
/* 8021D554 002191B4 41 82 00 BC */ beq lbl_8021D610
/* 8021D558 002191B8 80 84 01 44 */ lwz r4, 0x144(r4)
/* 8021D55C 002191BC 38 E0 00 00 */ li r7, 0
/* 8021D560 002191C0 A0 A4 00 34 */ lhz r5, 0x34(r4)
/* 8021D564 002191C4 80 C4 00 40 */ lwz r6, 0x40(r4)
/* 8021D568 002191C8 2C 05 00 00 */ cmpwi r5, 0
/* 8021D56C 002191CC 41 82 00 98 */ beq lbl_8021D604
/* 8021D570 002191D0 28 05 00 08 */ cmplwi r5, 8
/* 8021D574 002191D4 3C 85 00 01 */ addis r4, r5, 1
/* 8021D578 002191D8 38 84 FF F8 */ addi r4, r4, -8
/* 8021D57C 002191DC 40 81 00 7C */ ble lbl_8021D5F8
/* 8021D580 002191E0 54 84 04 3E */ clrlwi r4, r4, 0x10
/* 8021D584 002191E4 38 04 00 07 */ addi r0, r4, 7
/* 8021D588 002191E8 54 00 E8 FE */ srwi r0, r0, 3
/* 8021D58C 002191EC 7C 09 03 A6 */ mtctr r0
/* 8021D590 002191F0 28 04 00 00 */ cmplwi r4, 0
/* 8021D594 002191F4 40 81 00 64 */ ble lbl_8021D5F8
lbl_8021D598:
/* 8021D598 002191F8 88 86 00 03 */ lbz r4, 3(r6)
/* 8021D59C 002191FC 38 E7 00 08 */ addi r7, r7, 8
/* 8021D5A0 00219200 88 06 00 0B */ lbz r0, 0xb(r6)
/* 8021D5A4 00219204 7F DE 22 14 */ add r30, r30, r4
/* 8021D5A8 00219208 88 86 00 13 */ lbz r4, 0x13(r6)
/* 8021D5AC 0021920C 7F DE 02 14 */ add r30, r30, r0
/* 8021D5B0 00219210 88 06 00 1B */ lbz r0, 0x1b(r6)
/* 8021D5B4 00219214 7F DE 22 14 */ add r30, r30, r4
/* 8021D5B8 00219218 88 86 00 23 */ lbz r4, 0x23(r6)
/* 8021D5BC 0021921C 7F DE 02 14 */ add r30, r30, r0
/* 8021D5C0 00219220 88 06 00 2B */ lbz r0, 0x2b(r6)
/* 8021D5C4 00219224 7F DE 22 14 */ add r30, r30, r4
/* 8021D5C8 00219228 88 86 00 33 */ lbz r4, 0x33(r6)
/* 8021D5CC 0021922C 7F DE 02 14 */ add r30, r30, r0
/* 8021D5D0 00219230 88 06 00 3B */ lbz r0, 0x3b(r6)
/* 8021D5D4 00219234 7F DE 22 14 */ add r30, r30, r4
/* 8021D5D8 00219238 38 C6 00 40 */ addi r6, r6, 0x40
/* 8021D5DC 0021923C 7F DE 02 14 */ add r30, r30, r0
/* 8021D5E0 00219240 42 00 FF B8 */ bdnz lbl_8021D598
/* 8021D5E4 00219244 48 00 00 14 */ b lbl_8021D5F8
lbl_8021D5E8:
/* 8021D5E8 00219248 88 06 00 03 */ lbz r0, 3(r6)
/* 8021D5EC 0021924C 38 E7 00 01 */ addi r7, r7, 1
/* 8021D5F0 00219250 38 C6 00 08 */ addi r6, r6, 8
/* 8021D5F4 00219254 7F DE 02 14 */ add r30, r30, r0
lbl_8021D5F8:
/* 8021D5F8 00219258 54 E0 04 3E */ clrlwi r0, r7, 0x10
/* 8021D5FC 0021925C 7C 00 28 40 */ cmplw r0, r5
/* 8021D600 00219260 41 80 FF E8 */ blt lbl_8021D5E8
lbl_8021D604:
/* 8021D604 00219264 A0 1C 00 1C */ lhz r0, 0x1c(r28)
/* 8021D608 00219268 7C 00 2A 14 */ add r0, r0, r5
/* 8021D60C 0021926C B0 1C 00 1C */ sth r0, 0x1c(r28)
lbl_8021D610:
/* 8021D610 00219270 38 63 00 01 */ addi r3, r3, 1
lbl_8021D614:
/* 8021D614 00219274 54 60 04 3E */ clrlwi r0, r3, 0x10
/* 8021D618 00219278 7C 00 F8 40 */ cmplw r0, r31
/* 8021D61C 0021927C 41 80 FE D0 */ blt lbl_8021D4EC
/* 8021D620 00219280 A3 7C 00 1C */ lhz r27, 0x1c(r28)
/* 8021D624 00219284 2C 1B 00 00 */ cmpwi r27, 0
/* 8021D628 00219288 41 82 02 14 */ beq lbl_8021D83C
/* 8021D62C 0021928C 2C 1E 00 00 */ cmpwi r30, 0
/* 8021D630 00219290 41 82 02 0C */ beq lbl_8021D83C
/* 8021D634 00219294 1C 7B 00 3C */ mulli r3, r27, 0x3c
/* 8021D638 00219298 38 63 00 10 */ addi r3, r3, 0x10
/* 8021D63C 0021929C 4B FB D4 39 */ bl __nwa__FUl
/* 8021D640 002192A0 3C 80 80 22 */ lis r4, lbl_8021EA24@ha
/* 8021D644 002192A4 7F 67 DB 78 */ mr r7, r27
/* 8021D648 002192A8 38 84 EA 24 */ addi r4, r4, lbl_8021EA24@l
/* 8021D64C 002192AC 38 A0 00 00 */ li r5, 0
/* 8021D650 002192B0 38 C0 00 3C */ li r6, 0x3c
/* 8021D654 002192B4 4B FA 96 55 */ bl __construct_new_array
/* 8021D658 002192B8 2C 03 00 00 */ cmpwi r3, 0
/* 8021D65C 002192BC 90 7C 00 14 */ stw r3, 0x14(r28)
/* 8021D660 002192C0 41 82 01 DC */ beq lbl_8021D83C
/* 8021D664 002192C4 1C 7E 00 0C */ mulli r3, r30, 0xc
/* 8021D668 002192C8 38 63 00 10 */ addi r3, r3, 0x10
/* 8021D66C 002192CC 4B FB D4 09 */ bl __nwa__FUl
/* 8021D670 002192D0 3C 80 80 03 */ lis r4, func_8002A294@ha
/* 8021D674 002192D4 7F C7 F3 78 */ mr r7, r30
/* 8021D678 002192D8 38 84 A2 94 */ addi r4, r4, func_8002A294@l
/* 8021D67C 002192DC 38 A0 00 00 */ li r5, 0
/* 8021D680 002192E0 38 C0 00 0C */ li r6, 0xc
/* 8021D684 002192E4 4B FA 96 25 */ bl __construct_new_array
/* 8021D688 002192E8 2C 03 00 00 */ cmpwi r3, 0
/* 8021D68C 002192EC 90 7C 00 18 */ stw r3, 0x18(r28)
/* 8021D690 002192F0 41 82 01 AC */ beq lbl_8021D83C
/* 8021D694 002192F4 81 1C 00 14 */ lwz r8, 0x14(r28)
/* 8021D698 002192F8 38 80 00 00 */ li r4, 0
/* 8021D69C 002192FC 48 00 01 94 */ b lbl_8021D830
lbl_8021D6A0:
/* 8021D6A0 00219300 80 DD 00 28 */ lwz r6, 0x28(r29)
/* 8021D6A4 00219304 2C 06 00 00 */ cmpwi r6, 0
/* 8021D6A8 00219308 40 82 00 0C */ bne lbl_8021D6B4
/* 8021D6AC 0021930C 38 A0 00 00 */ li r5, 0
/* 8021D6B0 00219310 48 00 00 54 */ b lbl_8021D704
lbl_8021D6B4:
/* 8021D6B4 00219314 A0 1D 00 EC */ lhz r0, 0xec(r29)
/* 8021D6B8 00219318 54 85 04 3E */ clrlwi r5, r4, 0x10
/* 8021D6BC 0021931C 7C 05 00 40 */ cmplw r5, r0
/* 8021D6C0 00219320 41 80 00 0C */ blt lbl_8021D6CC
/* 8021D6C4 00219324 38 A0 00 00 */ li r5, 0
/* 8021D6C8 00219328 48 00 00 3C */ b lbl_8021D704
lbl_8021D6CC:
/* 8021D6CC 0021932C 80 FD 00 08 */ lwz r7, 8(r29)
/* 8021D6D0 00219330 54 80 0B FC */ rlwinm r0, r4, 1, 0xf, 0x1e
/* 8021D6D4 00219334 7C A6 02 2E */ lhzx r5, r6, r0
/* 8021D6D8 00219338 2C 07 00 00 */ cmpwi r7, 0
/* 8021D6DC 0021933C 40 82 00 0C */ bne lbl_8021D6E8
/* 8021D6E0 00219340 38 A0 00 00 */ li r5, 0
/* 8021D6E4 00219344 48 00 00 20 */ b lbl_8021D704
lbl_8021D6E8:
/* 8021D6E8 00219348 A0 1D 00 DE */ lhz r0, 0xde(r29)
/* 8021D6EC 0021934C 7C 05 00 40 */ cmplw r5, r0
/* 8021D6F0 00219350 41 80 00 0C */ blt lbl_8021D6FC
/* 8021D6F4 00219354 38 A0 00 00 */ li r5, 0
/* 8021D6F8 00219358 48 00 00 0C */ b lbl_8021D704
lbl_8021D6FC:
/* 8021D6FC 0021935C 54 A0 13 BA */ rlwinm r0, r5, 2, 0xe, 0x1d
/* 8021D700 00219360 7C A7 00 2E */ lwzx r5, r7, r0
lbl_8021D704:
/* 8021D704 00219364 2C 05 00 00 */ cmpwi r5, 0
/* 8021D708 00219368 41 82 01 24 */ beq lbl_8021D82C
/* 8021D70C 0021936C 80 A5 01 44 */ lwz r5, 0x144(r5)
/* 8021D710 00219370 38 C0 00 00 */ li r6, 0
/* 8021D714 00219374 A0 E5 00 34 */ lhz r7, 0x34(r5)
/* 8021D718 00219378 80 A5 00 40 */ lwz r5, 0x40(r5)
/* 8021D71C 0021937C 2C 07 00 00 */ cmpwi r7, 0
/* 8021D720 00219380 41 82 01 0C */ beq lbl_8021D82C
/* 8021D724 00219384 28 07 00 08 */ cmplwi r7, 8
/* 8021D728 00219388 3D 27 00 01 */ addis r9, r7, 1
/* 8021D72C 0021938C 39 29 FF F8 */ addi r9, r9, -8
/* 8021D730 00219390 40 81 00 F0 */ ble lbl_8021D820
/* 8021D734 00219394 55 29 04 3E */ clrlwi r9, r9, 0x10
/* 8021D738 00219398 38 09 00 07 */ addi r0, r9, 7
/* 8021D73C 0021939C 54 00 E8 FE */ srwi r0, r0, 3
/* 8021D740 002193A0 7C 09 03 A6 */ mtctr r0
/* 8021D744 002193A4 28 09 00 00 */ cmplwi r9, 0
/* 8021D748 002193A8 40 81 00 D8 */ ble lbl_8021D820
lbl_8021D74C:
/* 8021D74C 002193AC 88 05 00 03 */ lbz r0, 3(r5)
/* 8021D750 002193B0 38 C6 00 08 */ addi r6, r6, 8
/* 8021D754 002193B4 B0 08 00 10 */ sth r0, 0x10(r8)
/* 8021D758 002193B8 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D75C 002193BC 90 68 00 0C */ stw r3, 0xc(r8)
/* 8021D760 002193C0 7C 63 02 14 */ add r3, r3, r0
/* 8021D764 002193C4 88 05 00 0B */ lbz r0, 0xb(r5)
/* 8021D768 002193C8 B0 08 00 4C */ sth r0, 0x4c(r8)
/* 8021D76C 002193CC 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D770 002193D0 90 68 00 48 */ stw r3, 0x48(r8)
/* 8021D774 002193D4 7C 63 02 14 */ add r3, r3, r0
/* 8021D778 002193D8 88 05 00 13 */ lbz r0, 0x13(r5)
/* 8021D77C 002193DC B0 08 00 88 */ sth r0, 0x88(r8)
/* 8021D780 002193E0 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D784 002193E4 90 68 00 84 */ stw r3, 0x84(r8)
/* 8021D788 002193E8 7C 63 02 14 */ add r3, r3, r0
/* 8021D78C 002193EC 88 05 00 1B */ lbz r0, 0x1b(r5)
/* 8021D790 002193F0 B0 08 00 C4 */ sth r0, 0xc4(r8)
/* 8021D794 002193F4 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D798 002193F8 90 68 00 C0 */ stw r3, 0xc0(r8)
/* 8021D79C 002193FC 7C 63 02 14 */ add r3, r3, r0
/* 8021D7A0 00219400 88 05 00 23 */ lbz r0, 0x23(r5)
/* 8021D7A4 00219404 B0 08 01 00 */ sth r0, 0x100(r8)
/* 8021D7A8 00219408 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D7AC 0021940C 90 68 00 FC */ stw r3, 0xfc(r8)
/* 8021D7B0 00219410 7C 63 02 14 */ add r3, r3, r0
/* 8021D7B4 00219414 88 05 00 2B */ lbz r0, 0x2b(r5)
/* 8021D7B8 00219418 B0 08 01 3C */ sth r0, 0x13c(r8)
/* 8021D7BC 0021941C 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D7C0 00219420 90 68 01 38 */ stw r3, 0x138(r8)
/* 8021D7C4 00219424 7C 63 02 14 */ add r3, r3, r0
/* 8021D7C8 00219428 88 05 00 33 */ lbz r0, 0x33(r5)
/* 8021D7CC 0021942C B0 08 01 78 */ sth r0, 0x178(r8)
/* 8021D7D0 00219430 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D7D4 00219434 90 68 01 74 */ stw r3, 0x174(r8)
/* 8021D7D8 00219438 7C 63 02 14 */ add r3, r3, r0
/* 8021D7DC 0021943C 88 05 00 3B */ lbz r0, 0x3b(r5)
/* 8021D7E0 00219440 38 A5 00 40 */ addi r5, r5, 0x40
/* 8021D7E4 00219444 B0 08 01 B4 */ sth r0, 0x1b4(r8)
/* 8021D7E8 00219448 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D7EC 0021944C 90 68 01 B0 */ stw r3, 0x1b0(r8)
/* 8021D7F0 00219450 39 08 01 E0 */ addi r8, r8, 0x1e0
/* 8021D7F4 00219454 7C 63 02 14 */ add r3, r3, r0
/* 8021D7F8 00219458 42 00 FF 54 */ bdnz lbl_8021D74C
/* 8021D7FC 0021945C 48 00 00 24 */ b lbl_8021D820
lbl_8021D800:
/* 8021D800 00219460 88 05 00 03 */ lbz r0, 3(r5)
/* 8021D804 00219464 38 A5 00 08 */ addi r5, r5, 8
/* 8021D808 00219468 38 C6 00 01 */ addi r6, r6, 1
/* 8021D80C 0021946C B0 08 00 10 */ sth r0, 0x10(r8)
/* 8021D810 00219470 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021D814 00219474 90 68 00 0C */ stw r3, 0xc(r8)
/* 8021D818 00219478 39 08 00 3C */ addi r8, r8, 0x3c
/* 8021D81C 0021947C 7C 63 02 14 */ add r3, r3, r0
lbl_8021D820:
/* 8021D820 00219480 54 C0 04 3E */ clrlwi r0, r6, 0x10
/* 8021D824 00219484 7C 00 38 40 */ cmplw r0, r7
/* 8021D828 00219488 41 80 FF D8 */ blt lbl_8021D800
lbl_8021D82C:
/* 8021D82C 0021948C 38 84 00 01 */ addi r4, r4, 1
lbl_8021D830:
/* 8021D830 00219490 54 80 04 3E */ clrlwi r0, r4, 0x10
/* 8021D834 00219494 7C 00 F8 40 */ cmplw r0, r31
/* 8021D838 00219498 41 80 FE 68 */ blt lbl_8021D6A0
lbl_8021D83C:
/* 8021D83C 0021949C 80 8D A1 A8 */ lwz r4, lbl_8063F468-_SDA_BASE_(r13)
/* 8021D840 002194A0 39 61 00 20 */ addi r11, r1, 0x20
/* 8021D844 002194A4 7F 83 E3 78 */ mr r3, r28
/* 8021D848 002194A8 88 04 00 04 */ lbz r0, 4(r4)
/* 8021D84C 002194AC 64 00 00 02 */ oris r0, r0, 2
/* 8021D850 002194B0 60 00 08 00 */ ori r0, r0, 0x800
/* 8021D854 002194B4 90 1C 00 04 */ stw r0, 4(r28)
/* 8021D858 002194B8 4B FA 99 1D */ bl _restgpr_27
/* 8021D85C 002194BC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8021D860 002194C0 7C 08 03 A6 */ mtlr r0
/* 8021D864 002194C4 38 21 00 20 */ addi r1, r1, 0x20
/* 8021D868 002194C8 4E 80 00 20 */ blr
/* 8021D86C 002194CC 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8021D870 002194D0 7C 08 02 A6 */ mflr r0
/* 8021D874 002194D4 2C 03 00 00 */ cmpwi r3, 0
/* 8021D878 002194D8 90 01 00 24 */ stw r0, 0x24(r1)
/* 8021D87C 002194DC 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8021D880 002194E0 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8021D884 002194E4 7C 9E 23 78 */ mr r30, r4
/* 8021D888 002194E8 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8021D88C 002194EC 7C 7D 1B 78 */ mr r29, r3
/* 8021D890 002194F0 41 82 00 B4 */ beq lbl_8021D944
/* 8021D894 002194F4 88 03 00 08 */ lbz r0, 8(r3)
/* 8021D898 002194F8 3C 80 80 42 */ lis r4, lbl_80423B70@ha
/* 8021D89C 002194FC 38 84 3B 70 */ addi r4, r4, lbl_80423B70@l
/* 8021D8A0 00219500 2C 00 00 00 */ cmpwi r0, 0
/* 8021D8A4 00219504 90 83 00 0C */ stw r4, 0xc(r3)
/* 8021D8A8 00219508 41 82 00 3C */ beq lbl_8021D8E4
/* 8021D8AC 0021950C 83 E3 00 04 */ lwz r31, 4(r3)
/* 8021D8B0 00219510 57 E3 86 3E */ rlwinm r3, r31, 0x10, 0x18, 0x1f
/* 8021D8B4 00219514 48 01 D7 A5 */ bl func_8023B058
/* 8021D8B8 00219518 2C 03 00 00 */ cmpwi r3, 0
/* 8021D8BC 0021951C 41 82 00 0C */ beq lbl_8021D8C8
/* 8021D8C0 00219520 7F E4 FB 78 */ mr r4, r31
/* 8021D8C4 00219524 48 01 DB 5D */ bl func_8023B420
lbl_8021D8C8:
/* 8021D8C8 00219528 81 9D 00 0C */ lwz r12, 0xc(r29)
/* 8021D8CC 0021952C 7F A3 EB 78 */ mr r3, r29
/* 8021D8D0 00219530 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8021D8D4 00219534 7D 89 03 A6 */ mtctr r12
/* 8021D8D8 00219538 4E 80 04 21 */ bctrl
/* 8021D8DC 0021953C 38 00 00 00 */ li r0, 0
/* 8021D8E0 00219540 98 1D 00 08 */ stb r0, 8(r29)
lbl_8021D8E4:
/* 8021D8E4 00219544 80 7D 00 18 */ lwz r3, 0x18(r29)
/* 8021D8E8 00219548 2C 03 00 00 */ cmpwi r3, 0
/* 8021D8EC 0021954C 41 82 00 10 */ beq lbl_8021D8FC
/* 8021D8F0 00219550 41 82 00 0C */ beq lbl_8021D8FC
/* 8021D8F4 00219554 38 63 FF F0 */ addi r3, r3, -16
/* 8021D8F8 00219558 4B FB D1 C5 */ bl __dla__FPv
lbl_8021D8FC:
/* 8021D8FC 0021955C 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 8021D900 00219560 2C 03 00 00 */ cmpwi r3, 0
/* 8021D904 00219564 41 82 00 10 */ beq lbl_8021D914
/* 8021D908 00219568 41 82 00 0C */ beq lbl_8021D914
/* 8021D90C 0021956C 38 63 FF F0 */ addi r3, r3, -16
/* 8021D910 00219570 4B FB D1 AD */ bl __dla__FPv
lbl_8021D914:
/* 8021D914 00219574 38 00 00 00 */ li r0, 0
/* 8021D918 00219578 7F A3 EB 78 */ mr r3, r29
/* 8021D91C 0021957C 90 1D 00 18 */ stw r0, 0x18(r29)
/* 8021D920 00219580 38 80 00 00 */ li r4, 0
/* 8021D924 00219584 90 1D 00 14 */ stw r0, 0x14(r29)
/* 8021D928 00219588 B0 1D 00 1C */ sth r0, 0x1c(r29)
/* 8021D92C 0021958C 4B FF F8 19 */ bl func_8021D144
/* 8021D930 00219590 2C 1E 00 00 */ cmpwi r30, 0
/* 8021D934 00219594 40 81 00 10 */ ble lbl_8021D944
/* 8021D938 00219598 80 6D 96 38 */ lwz r3, lbl_8063E8F8-_SDA_BASE_(r13)
/* 8021D93C 0021959C 7F A4 EB 78 */ mr r4, r29
/* 8021D940 002195A0 4B FB D4 09 */ bl func_801DAD48
lbl_8021D944:
/* 8021D944 002195A4 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8021D948 002195A8 7F A3 EB 78 */ mr r3, r29
/* 8021D94C 002195AC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8021D950 002195B0 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8021D954 002195B4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8021D958 002195B8 7C 08 03 A6 */ mtlr r0
/* 8021D95C 002195BC 38 21 00 20 */ addi r1, r1, 0x20
/* 8021D960 002195C0 4E 80 00 20 */ blr
/* 8021D964 002195C4 94 21 FE 90 */ stwu r1, -0x170(r1)
/* 8021D968 002195C8 7C 08 02 A6 */ mflr r0
/* 8021D96C 002195CC 90 01 01 74 */ stw r0, 0x174(r1)
/* 8021D970 002195D0 DB E1 01 60 */ stfd f31, 0x160(r1)
/* 8021D974 002195D4 F3 E1 01 68 */ psq_st f31, 360(r1), 0, qr0
/* 8021D978 002195D8 DB C1 01 50 */ stfd f30, 0x150(r1)
/* 8021D97C 002195DC F3 C1 01 58 */ psq_st f30, 344(r1), 0, qr0
/* 8021D980 002195E0 DB A1 01 40 */ stfd f29, 0x140(r1)
/* 8021D984 002195E4 F3 A1 01 48 */ psq_st f29, 328(r1), 0, qr0
/* 8021D988 002195E8 DB 81 01 30 */ stfd f28, 0x130(r1)
/* 8021D98C 002195EC F3 81 01 38 */ psq_st f28, 312(r1), 0, qr0
/* 8021D990 002195F0 DB 61 01 20 */ stfd f27, 0x120(r1)
/* 8021D994 002195F4 F3 61 01 28 */ psq_st f27, 296(r1), 0, qr0
/* 8021D998 002195F8 DB 41 01 10 */ stfd f26, 0x110(r1)
/* 8021D99C 002195FC F3 41 01 18 */ psq_st f26, 280(r1), 0, qr0
/* 8021D9A0 00219600 DB 21 01 00 */ stfd f25, 0x100(r1)
/* 8021D9A4 00219604 F3 21 01 08 */ psq_st f25, 264(r1), 0, qr0
/* 8021D9A8 00219608 DB 01 00 F0 */ stfd f24, 0xf0(r1)
/* 8021D9AC 0021960C F3 01 00 F8 */ psq_st f24, 248(r1), 0, qr0
/* 8021D9B0 00219610 DA E1 00 E0 */ stfd f23, 0xe0(r1)
/* 8021D9B4 00219614 F2 E1 00 E8 */ psq_st f23, 232(r1), 0, qr0
/* 8021D9B8 00219618 DA C1 00 D0 */ stfd f22, 0xd0(r1)
/* 8021D9BC 0021961C F2 C1 00 D8 */ psq_st f22, 216(r1), 0, qr0
/* 8021D9C0 00219620 39 61 00 D0 */ addi r11, r1, 0xd0
/* 8021D9C4 00219624 4B FA 97 41 */ bl _savegpr_18
/* 8021D9C8 00219628 80 03 00 14 */ lwz r0, 0x14(r3)
/* 8021D9CC 0021962C 3C 80 43 30 */ lis r4, 0x4330
/* 8021D9D0 00219630 90 81 00 88 */ stw r4, 0x88(r1)
/* 8021D9D4 00219634 7C 72 1B 78 */ mr r18, r3
/* 8021D9D8 00219638 2C 00 00 00 */ cmpwi r0, 0
/* 8021D9DC 0021963C 90 81 00 90 */ stw r4, 0x90(r1)
/* 8021D9E0 00219640 41 82 00 10 */ beq lbl_8021D9F0
/* 8021D9E4 00219644 80 03 00 18 */ lwz r0, 0x18(r3)
/* 8021D9E8 00219648 2C 00 00 00 */ cmpwi r0, 0
/* 8021D9EC 0021964C 40 82 00 0C */ bne lbl_8021D9F8
lbl_8021D9F0:
/* 8021D9F0 00219650 38 60 00 00 */ li r3, 0
/* 8021D9F4 00219654 48 00 05 DC */ b lbl_8021DFD0
lbl_8021D9F8:
/* 8021D9F8 00219658 C0 02 9B 84 */ lfs f0, lbl_80642184-_SDA2_BASE_(r2)
/* 8021D9FC 0021965C 80 83 00 10 */ lwz r4, 0x10(r3)
/* 8021DA00 00219660 D0 03 00 68 */ stfs f0, 0x68(r3)
/* 8021DA04 00219664 38 61 00 60 */ addi r3, r1, 0x60
/* 8021DA08 00219668 3A 64 01 20 */ addi r19, r4, 0x120
/* 8021DA0C 0021966C 7E 64 9B 78 */ mr r4, r19
/* 8021DA10 00219670 48 00 2F 79 */ bl func_80220988
/* 8021DA14 00219674 88 12 00 21 */ lbz r0, 0x21(r18)
/* 8021DA18 00219678 2C 00 00 00 */ cmpwi r0, 0
/* 8021DA1C 0021967C 41 82 00 1C */ beq lbl_8021DA38
/* 8021DA20 00219680 38 61 00 60 */ addi r3, r1, 0x60
/* 8021DA24 00219684 48 05 F3 61 */ bl PSVECMag
/* 8021DA28 00219688 C0 02 9B 88 */ lfs f0, lbl_80642188-_SDA2_BASE_(r2)
/* 8021DA2C 0021968C EC 00 00 72 */ fmuls f0, f0, f1
/* 8021DA30 00219690 D0 12 00 24 */ stfs f0, 0x24(r18)
/* 8021DA34 00219694 48 00 00 0C */ b lbl_8021DA40
lbl_8021DA38:
/* 8021DA38 00219698 C0 02 9B 80 */ lfs f0, lbl_80642180-_SDA2_BASE_(r2)
/* 8021DA3C 0021969C D0 12 00 24 */ stfs f0, 0x24(r18)
lbl_8021DA40:
/* 8021DA40 002196A0 38 72 00 4C */ addi r3, r18, 0x4c
/* 8021DA44 002196A4 48 05 F3 41 */ bl PSVECMag
/* 8021DA48 002196A8 C0 12 00 24 */ lfs f0, 0x24(r18)
/* 8021DA4C 002196AC 88 12 00 20 */ lbz r0, 0x20(r18)
/* 8021DA50 002196B0 EE C0 00 72 */ fmuls f22, f0, f1
/* 8021DA54 002196B4 2C 00 00 00 */ cmpwi r0, 0
/* 8021DA58 002196B8 41 82 00 1C */ beq lbl_8021DA74
/* 8021DA5C 002196BC C0 02 9B 8C */ lfs f0, lbl_8064218C-_SDA2_BASE_(r2)
/* 8021DA60 002196C0 FC 16 00 40 */ fcmpo cr0, f22, f0
/* 8021DA64 002196C4 40 80 00 30 */ bge lbl_8021DA94
/* 8021DA68 002196C8 C0 02 9B 90 */ lfs f0, lbl_80642190-_SDA2_BASE_(r2)
/* 8021DA6C 002196CC FC 16 00 40 */ fcmpo cr0, f22, f0
/* 8021DA70 002196D0 40 81 00 24 */ ble lbl_8021DA94
lbl_8021DA74:
/* 8021DA74 002196D4 C2 E2 9B 84 */ lfs f23, lbl_80642184-_SDA2_BASE_(r2)
/* 8021DA78 002196D8 D2 E1 00 6C */ stfs f23, 0x6c(r1)
/* 8021DA7C 002196DC D2 E1 00 70 */ stfs f23, 0x70(r1)
/* 8021DA80 002196E0 D2 E1 00 74 */ stfs f23, 0x74(r1)
/* 8021DA84 002196E4 D2 E1 00 78 */ stfs f23, 0x78(r1)
/* 8021DA88 002196E8 D2 E1 00 7C */ stfs f23, 0x7c(r1)
/* 8021DA8C 002196EC D2 E1 00 80 */ stfs f23, 0x80(r1)
/* 8021DA90 002196F0 48 00 01 44 */ b lbl_8021DBD4
lbl_8021DA94:
/* 8021DA94 002196F4 FE E0 B0 90 */ fmr f23, f22
/* 8021DA98 002196F8 C0 32 00 24 */ lfs f1, 0x24(r18)
/* 8021DA9C 002196FC 38 72 00 4C */ addi r3, r18, 0x4c
/* 8021DAA0 00219700 38 81 00 48 */ addi r4, r1, 0x48
/* 8021DAA4 00219704 48 05 F2 69 */ bl PSVECScale
/* 8021DAA8 00219708 C0 22 9B 8C */ lfs f1, lbl_8064218C-_SDA2_BASE_(r2)
/* 8021DAAC 0021970C 38 61 00 48 */ addi r3, r1, 0x48
/* 8021DAB0 00219710 FC 16 08 40 */ fcmpo cr0, f22, f1
/* 8021DAB4 00219714 40 80 00 28 */ bge lbl_8021DADC
/* 8021DAB8 00219718 C0 42 9B 90 */ lfs f2, lbl_80642190-_SDA2_BASE_(r2)
/* 8021DABC 0021971C FC 16 10 40 */ fcmpo cr0, f22, f2
/* 8021DAC0 00219720 40 81 00 1C */ ble lbl_8021DADC
/* 8021DAC4 00219724 C0 02 9B 84 */ lfs f0, lbl_80642184-_SDA2_BASE_(r2)
/* 8021DAC8 00219728 FC 16 00 40 */ fcmpo cr0, f22, f0
/* 8021DACC 0021972C 40 80 00 08 */ bge lbl_8021DAD4
/* 8021DAD0 00219730 48 00 00 08 */ b lbl_8021DAD8
lbl_8021DAD4:
/* 8021DAD4 00219734 FC 40 08 90 */ fmr f2, f1
lbl_8021DAD8:
/* 8021DAD8 00219738 FE E0 10 90 */ fmr f23, f2
lbl_8021DADC:
/* 8021DADC 0021973C C0 02 9B 80 */ lfs f0, lbl_80642180-_SDA2_BASE_(r2)
/* 8021DAE0 00219740 38 81 00 54 */ addi r4, r1, 0x54
/* 8021DAE4 00219744 EC 20 B8 24 */ fdivs f1, f0, f23
/* 8021DAE8 00219748 48 05 F2 25 */ bl PSVECScale
/* 8021DAEC 0021974C C0 41 00 54 */ lfs f2, 0x54(r1)
/* 8021DAF0 00219750 7E 63 9B 78 */ mr r3, r19
/* 8021DAF4 00219754 C0 21 00 58 */ lfs f1, 0x58(r1)
/* 8021DAF8 00219758 C0 01 00 5C */ lfs f0, 0x5c(r1)
/* 8021DAFC 0021975C D0 41 00 6C */ stfs f2, 0x6c(r1)
/* 8021DB00 00219760 D0 21 00 70 */ stfs f1, 0x70(r1)
/* 8021DB04 00219764 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 8021DB08 00219768 48 00 2F E9 */ bl func_80220AF0
/* 8021DB0C 0021976C C2 E2 9B 94 */ lfs f23, lbl_80642194-_SDA2_BASE_(r2)
/* 8021DB10 00219770 7C 73 1B 78 */ mr r19, r3
/* 8021DB14 00219774 3A 80 00 00 */ li r20, 0
lbl_8021DB18:
/* 8021DB18 00219778 7E 64 9B 78 */ mr r4, r19
/* 8021DB1C 0021977C 38 61 00 6C */ addi r3, r1, 0x6c
/* 8021DB20 00219780 48 05 F2 A9 */ bl PSVECDotProduct
/* 8021DB24 00219784 FC 17 08 40 */ fcmpo cr0, f23, f1
/* 8021DB28 00219788 FF 00 08 90 */ fmr f24, f1
/* 8021DB2C 0021978C 40 81 00 2C */ ble lbl_8021DB58
/* 8021DB30 00219790 38 61 00 6C */ addi r3, r1, 0x6c
/* 8021DB34 00219794 38 81 00 3C */ addi r4, r1, 0x3c
/* 8021DB38 00219798 48 05 F1 D5 */ bl PSVECScale
/* 8021DB3C 0021979C C0 41 00 3C */ lfs f2, 0x3c(r1)
/* 8021DB40 002197A0 FE E0 C0 90 */ fmr f23, f24
/* 8021DB44 002197A4 C0 21 00 40 */ lfs f1, 0x40(r1)
/* 8021DB48 002197A8 C0 01 00 44 */ lfs f0, 0x44(r1)
/* 8021DB4C 002197AC D0 41 00 78 */ stfs f2, 0x78(r1)
/* 8021DB50 002197B0 D0 21 00 7C */ stfs f1, 0x7c(r1)
/* 8021DB54 002197B4 D0 01 00 80 */ stfs f0, 0x80(r1)
lbl_8021DB58:
/* 8021DB58 002197B8 3A 94 00 01 */ addi r20, r20, 1
/* 8021DB5C 002197BC 3A 73 00 0C */ addi r19, r19, 0xc
/* 8021DB60 002197C0 2C 14 00 08 */ cmpwi r20, 8
/* 8021DB64 002197C4 41 80 FF B4 */ blt lbl_8021DB18
/* 8021DB68 002197C8 C0 22 9B 8C */ lfs f1, lbl_8064218C-_SDA2_BASE_(r2)
/* 8021DB6C 002197CC FC 16 08 40 */ fcmpo cr0, f22, f1
/* 8021DB70 002197D0 40 80 00 28 */ bge lbl_8021DB98
/* 8021DB74 002197D4 C0 42 9B 90 */ lfs f2, lbl_80642190-_SDA2_BASE_(r2)
/* 8021DB78 002197D8 FC 16 10 40 */ fcmpo cr0, f22, f2
/* 8021DB7C 002197DC 40 81 00 1C */ ble lbl_8021DB98
/* 8021DB80 002197E0 C0 02 9B 84 */ lfs f0, lbl_80642184-_SDA2_BASE_(r2)
/* 8021DB84 002197E4 FC 16 00 40 */ fcmpo cr0, f22, f0
/* 8021DB88 002197E8 40 80 00 08 */ bge lbl_8021DB90
/* 8021DB8C 002197EC 48 00 00 08 */ b lbl_8021DB94
lbl_8021DB90:
/* 8021DB90 002197F0 FC 40 08 90 */ fmr f2, f1
lbl_8021DB94:
/* 8021DB94 002197F4 FE C0 10 90 */ fmr f22, f2
lbl_8021DB98:
/* 8021DB98 002197F8 C0 02 9B 80 */ lfs f0, lbl_80642180-_SDA2_BASE_(r2)
/* 8021DB9C 002197FC 38 61 00 6C */ addi r3, r1, 0x6c
/* 8021DBA0 00219800 7C 64 1B 78 */ mr r4, r3
/* 8021DBA4 00219804 EC 20 B0 24 */ fdivs f1, f0, f22
/* 8021DBA8 00219808 48 05 F1 65 */ bl PSVECScale
/* 8021DBAC 0021980C 38 61 00 60 */ addi r3, r1, 0x60
/* 8021DBB0 00219810 38 81 00 6C */ addi r4, r1, 0x6c
/* 8021DBB4 00219814 48 05 F2 15 */ bl PSVECDotProduct
/* 8021DBB8 00219818 C0 42 9B 98 */ lfs f2, lbl_80642198-_SDA2_BASE_(r2)
/* 8021DBBC 0021981C C0 02 9B 84 */ lfs f0, lbl_80642184-_SDA2_BASE_(r2)
/* 8021DBC0 00219820 EE E2 00 72 */ fmuls f23, f2, f1
/* 8021DBC4 00219824 FC 17 00 40 */ fcmpo cr0, f23, f0
/* 8021DBC8 00219828 40 81 00 08 */ ble lbl_8021DBD0
/* 8021DBCC 0021982C 48 00 00 08 */ b lbl_8021DBD4
lbl_8021DBD0:
/* 8021DBD0 00219830 FE E0 B8 50 */ fneg f23, f23
lbl_8021DBD4:
/* 8021DBD4 00219834 80 72 00 10 */ lwz r3, 0x10(r18)
/* 8021DBD8 00219838 3B 20 00 00 */ li r25, 0
/* 8021DBDC 0021983C 83 52 00 14 */ lwz r26, 0x14(r18)
/* 8021DBE0 00219840 3F E0 00 03 */ lis r31, 3
/* 8021DBE4 00219844 A3 C3 00 EC */ lhz r30, 0xec(r3)
/* 8021DBE8 00219848 C3 22 9B 84 */ lfs f25, lbl_80642184-_SDA2_BASE_(r2)
/* 8021DBEC 0021984C C3 62 9B 90 */ lfs f27, lbl_80642190-_SDA2_BASE_(r2)
/* 8021DBF0 00219850 C3 42 9B 8C */ lfs f26, lbl_8064218C-_SDA2_BASE_(r2)
/* 8021DBF4 00219854 C3 82 9B 80 */ lfs f28, lbl_80642180-_SDA2_BASE_(r2)
/* 8021DBF8 00219858 CB A2 9B A8 */ lfd f29, lbl_806421A8-_SDA2_BASE_(r2)
/* 8021DBFC 0021985C C3 C2 9B A0 */ lfs f30, lbl_806421A0-_SDA2_BASE_(r2)
/* 8021DC00 00219860 C3 E2 9B 98 */ lfs f31, lbl_80642198-_SDA2_BASE_(r2)
/* 8021DC04 00219864 48 00 03 BC */ b lbl_8021DFC0
lbl_8021DC08:
/* 8021DC08 00219868 80 92 00 10 */ lwz r4, 0x10(r18)
/* 8021DC0C 0021986C 80 A4 00 28 */ lwz r5, 0x28(r4)
/* 8021DC10 00219870 2C 05 00 00 */ cmpwi r5, 0
/* 8021DC14 00219874 40 82 00 0C */ bne lbl_8021DC20
/* 8021DC18 00219878 3A 60 00 00 */ li r19, 0
/* 8021DC1C 0021987C 48 00 00 54 */ b lbl_8021DC70
lbl_8021DC20:
/* 8021DC20 00219880 A0 04 00 EC */ lhz r0, 0xec(r4)
/* 8021DC24 00219884 57 23 04 3E */ clrlwi r3, r25, 0x10
/* 8021DC28 00219888 7C 03 00 40 */ cmplw r3, r0
/* 8021DC2C 0021988C 41 80 00 0C */ blt lbl_8021DC38
/* 8021DC30 00219890 3A 60 00 00 */ li r19, 0
/* 8021DC34 00219894 48 00 00 3C */ b lbl_8021DC70
lbl_8021DC38:
/* 8021DC38 00219898 80 C4 00 08 */ lwz r6, 8(r4)
/* 8021DC3C 0021989C 57 20 0B FC */ rlwinm r0, r25, 1, 0xf, 0x1e
/* 8021DC40 002198A0 7C 65 02 2E */ lhzx r3, r5, r0
/* 8021DC44 002198A4 2C 06 00 00 */ cmpwi r6, 0
/* 8021DC48 002198A8 40 82 00 0C */ bne lbl_8021DC54
/* 8021DC4C 002198AC 3A 60 00 00 */ li r19, 0
/* 8021DC50 002198B0 48 00 00 20 */ b lbl_8021DC70
lbl_8021DC54:
/* 8021DC54 002198B4 A0 04 00 DE */ lhz r0, 0xde(r4)
/* 8021DC58 002198B8 7C 03 00 40 */ cmplw r3, r0
/* 8021DC5C 002198BC 41 80 00 0C */ blt lbl_8021DC68
/* 8021DC60 002198C0 3A 60 00 00 */ li r19, 0
/* 8021DC64 002198C4 48 00 00 0C */ b lbl_8021DC70
lbl_8021DC68:
/* 8021DC68 002198C8 54 60 13 BA */ rlwinm r0, r3, 2, 0xe, 0x1d
/* 8021DC6C 002198CC 7E 66 00 2E */ lwzx r19, r6, r0
lbl_8021DC70:
/* 8021DC70 002198D0 2C 13 00 00 */ cmpwi r19, 0
/* 8021DC74 002198D4 41 82 03 48 */ beq lbl_8021DFBC
/* 8021DC78 002198D8 80 93 01 44 */ lwz r4, 0x144(r19)
/* 8021DC7C 002198DC 7E 63 9B 78 */ mr r3, r19
/* 8021DC80 002198E0 3B 13 00 D0 */ addi r24, r19, 0xd0
/* 8021DC84 002198E4 A2 E4 00 34 */ lhz r23, 0x34(r4)
/* 8021DC88 002198E8 82 C4 00 40 */ lwz r22, 0x40(r4)
/* 8021DC8C 002198EC 4B FC 23 71 */ bl func_801DFFFC
/* 8021DC90 002198F0 83 B3 01 3C */ lwz r29, 0x13c(r19)
/* 8021DC94 002198F4 7E 63 9B 78 */ mr r3, r19
/* 8021DC98 002198F8 4B FC 23 65 */ bl func_801DFFFC
/* 8021DC9C 002198FC 83 93 01 40 */ lwz r28, 0x140(r19)
/* 8021DCA0 00219900 3A A0 00 00 */ li r21, 0
/* 8021DCA4 00219904 48 00 03 0C */ b lbl_8021DFB0
lbl_8021DCA8:
/* 8021DCA8 00219908 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 8021DCAC 0021990C 2C 00 00 00 */ cmpwi r0, 0
/* 8021DCB0 00219910 41 82 02 F0 */ beq lbl_8021DFA0
/* 8021DCB4 00219914 A0 16 00 00 */ lhz r0, 0(r22)
/* 8021DCB8 00219918 7F 03 C3 78 */ mr r3, r24
/* 8021DCBC 0021991C 38 A1 00 30 */ addi r5, r1, 0x30
/* 8021DCC0 00219920 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021DCC4 00219924 7C 9C 02 14 */ add r4, r28, r0
/* 8021DCC8 00219928 48 05 ED 89 */ bl PSMTXMultVecSR
/* 8021DCCC 0021992C C0 01 00 30 */ lfs f0, 0x30(r1)
/* 8021DCD0 00219930 3A 60 00 00 */ li r19, 0
/* 8021DCD4 00219934 D0 1A 00 00 */ stfs f0, 0(r26)
/* 8021DCD8 00219938 C0 01 00 34 */ lfs f0, 0x34(r1)
/* 8021DCDC 0021993C D0 1A 00 04 */ stfs f0, 4(r26)
/* 8021DCE0 00219940 C0 01 00 38 */ lfs f0, 0x38(r1)
/* 8021DCE4 00219944 D0 1A 00 08 */ stfs f0, 8(r26)
/* 8021DCE8 00219948 D3 3A 00 14 */ stfs f25, 0x14(r26)
/* 8021DCEC 0021994C D3 3A 00 18 */ stfs f25, 0x18(r26)
/* 8021DCF0 00219950 D3 3A 00 1C */ stfs f25, 0x1c(r26)
/* 8021DCF4 00219954 8A 96 00 03 */ lbz r20, 3(r22)
/* 8021DCF8 00219958 48 00 00 88 */ b lbl_8021DD80
lbl_8021DCFC:
/* 8021DCFC 0021995C 80 96 00 04 */ lwz r4, 4(r22)
/* 8021DD00 00219960 56 60 0B FC */ rlwinm r0, r19, 1, 0xf, 0x1e
/* 8021DD04 00219964 7F 03 C3 78 */ mr r3, r24
/* 8021DD08 00219968 38 A1 00 24 */ addi r5, r1, 0x24
/* 8021DD0C 0021996C 7C 04 02 2E */ lhzx r0, r4, r0
/* 8021DD10 00219970 1C 00 00 0C */ mulli r0, r0, 0xc
/* 8021DD14 00219974 7C 9D 02 14 */ add r4, r29, r0
/* 8021DD18 00219978 48 05 EC E5 */ bl PSMTXMultVec
/* 8021DD1C 0021997C 56 63 04 3E */ clrlwi r3, r19, 0x10
/* 8021DD20 00219980 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 8021DD24 00219984 1F 63 00 0C */ mulli r27, r3, 0xc
/* 8021DD28 00219988 C0 01 00 24 */ lfs f0, 0x24(r1)
/* 8021DD2C 0021998C C0 22 9B 9C */ lfs f1, lbl_8064219C-_SDA2_BASE_(r2)
/* 8021DD30 00219990 7F 43 D3 78 */ mr r3, r26
/* 8021DD34 00219994 38 81 00 18 */ addi r4, r1, 0x18
/* 8021DD38 00219998 7C 1B 05 2E */ stfsx f0, r27, r0
/* 8021DD3C 0021999C 7C A0 DA 14 */ add r5, r0, r27
/* 8021DD40 002199A0 C0 01 00 28 */ lfs f0, 0x28(r1)
/* 8021DD44 002199A4 D0 05 00 04 */ stfs f0, 4(r5)
/* 8021DD48 002199A8 C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 8021DD4C 002199AC D0 05 00 08 */ stfs f0, 8(r5)
/* 8021DD50 002199B0 48 05 EF BD */ bl PSVECScale
/* 8021DD54 002199B4 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 8021DD58 002199B8 38 81 00 18 */ addi r4, r1, 0x18
/* 8021DD5C 002199BC 7C 60 DA 14 */ add r3, r0, r27
/* 8021DD60 002199C0 7C 65 1B 78 */ mr r5, r3
/* 8021DD64 002199C4 48 05 EF 61 */ bl PSVECAdd
/* 8021DD68 002199C8 80 1A 00 0C */ lwz r0, 0xc(r26)
/* 8021DD6C 002199CC 38 7A 00 14 */ addi r3, r26, 0x14
/* 8021DD70 002199D0 7C 65 1B 78 */ mr r5, r3
/* 8021DD74 002199D4 7C 80 DA 14 */ add r4, r0, r27
/* 8021DD78 002199D8 48 05 EF 4D */ bl PSVECAdd
/* 8021DD7C 002199DC 3A 73 00 01 */ addi r19, r19, 1
lbl_8021DD80:
/* 8021DD80 002199E0 56 60 04 3E */ clrlwi r0, r19, 0x10
/* 8021DD84 002199E4 7C 00 A0 40 */ cmplw r0, r20
/* 8021DD88 002199E8 41 80 FF 74 */ blt lbl_8021DCFC
/* 8021DD8C 002199EC B2 81 00 08 */ sth r20, 8(r1)
/* 8021DD90 002199F0 E0 01 B0 08 */ psq_l f0, 8(r1), 1, qr3
/* 8021DD94 002199F4 FC 00 D0 40 */ fcmpo cr0, f0, f26
/* 8021DD98 002199F8 40 80 00 20 */ bge lbl_8021DDB8
/* 8021DD9C 002199FC FC 00 D8 40 */ fcmpo cr0, f0, f27
/* 8021DDA0 00219A00 40 81 00 18 */ ble lbl_8021DDB8
/* 8021DDA4 00219A04 FC 00 C8 40 */ fcmpo cr0, f0, f25
/* 8021DDA8 00219A08 40 80 00 0C */ bge lbl_8021DDB4
/* 8021DDAC 00219A0C FC 00 D8 90 */ fmr f0, f27
/* 8021DDB0 00219A10 48 00 00 08 */ b lbl_8021DDB8
lbl_8021DDB4:
/* 8021DDB4 00219A14 FC 00 D0 90 */ fmr f0, f26
lbl_8021DDB8:
/* 8021DDB8 00219A18 EC 3C 00 24 */ fdivs f1, f28, f0
/* 8021DDBC 00219A1C 38 7A 00 14 */ addi r3, r26, 0x14
/* 8021DDC0 00219A20 7C 64 1B 78 */ mr r4, r3
/* 8021DDC4 00219A24 48 05 EF 49 */ bl PSVECScale
/* 8021DDC8 00219A28 38 7A 00 14 */ addi r3, r26, 0x14
/* 8021DDCC 00219A2C 38 81 00 78 */ addi r4, r1, 0x78
/* 8021DDD0 00219A30 38 A1 00 0C */ addi r5, r1, 0xc
/* 8021DDD4 00219A34 48 05 EF 15 */ bl PSVECSubtract
/* 8021DDD8 00219A38 38 61 00 6C */ addi r3, r1, 0x6c
/* 8021DDDC 00219A3C 38 81 00 0C */ addi r4, r1, 0xc
/* 8021DDE0 00219A40 48 05 EF E9 */ bl PSVECDotProduct
/* 8021DDE4 00219A44 EC 17 00 72 */ fmuls f0, f23, f1
/* 8021DDE8 00219A48 D0 1A 00 38 */ stfs f0, 0x38(r26)
/* 8021DDEC 00219A4C 48 00 5A 45 */ bl func_80223830
/* 8021DDF0 00219A50 80 83 00 00 */ lwz r4, 0(r3)
/* 8021DDF4 00219A54 38 1F 43 FD */ addi r0, r31, 0x43fd
/* 8021DDF8 00219A58 7C 84 01 D6 */ mullw r4, r4, r0
/* 8021DDFC 00219A5C 3C 84 00 27 */ addis r4, r4, 0x27
/* 8021DE00 00219A60 38 84 9E C3 */ addi r4, r4, -24893
/* 8021DE04 00219A64 54 80 84 3E */ srwi r0, r4, 0x10
/* 8021DE08 00219A68 90 83 00 00 */ stw r4, 0(r3)
/* 8021DE0C 00219A6C 90 01 00 8C */ stw r0, 0x8c(r1)
/* 8021DE10 00219A70 C0 32 00 34 */ lfs f1, 0x34(r18)
/* 8021DE14 00219A74 C8 41 00 88 */ lfd f2, 0x88(r1)
/* 8021DE18 00219A78 C0 12 00 24 */ lfs f0, 0x24(r18)
/* 8021DE1C 00219A7C EC 42 E8 28 */ fsubs f2, f2, f29
/* 8021DE20 00219A80 EC 01 00 32 */ fmuls f0, f1, f0
/* 8021DE24 00219A84 EC 22 F0 24 */ fdivs f1, f2, f30
/* 8021DE28 00219A88 EC 3F 00 72 */ fmuls f1, f31, f1
/* 8021DE2C 00219A8C EC 21 E0 28 */ fsubs f1, f1, f28
/* 8021DE30 00219A90 EF 00 00 72 */ fmuls f24, f0, f1
/* 8021DE34 00219A94 48 00 59 FD */ bl func_80223830
/* 8021DE38 00219A98 80 83 00 00 */ lwz r4, 0(r3)
/* 8021DE3C 00219A9C 38 1F 43 FD */ addi r0, r31, 0x43fd
/* 8021DE40 00219AA0 7C 84 01 D6 */ mullw r4, r4, r0
/* 8021DE44 00219AA4 3C 84 00 27 */ addis r4, r4, 0x27
/* 8021DE48 00219AA8 38 84 9E C3 */ addi r4, r4, -24893
/* 8021DE4C 00219AAC 54 80 84 3E */ srwi r0, r4, 0x10
/* 8021DE50 00219AB0 90 83 00 00 */ stw r4, 0(r3)
/* 8021DE54 00219AB4 90 01 00 94 */ stw r0, 0x94(r1)
/* 8021DE58 00219AB8 C0 32 00 30 */ lfs f1, 0x30(r18)
/* 8021DE5C 00219ABC C8 41 00 90 */ lfd f2, 0x90(r1)
/* 8021DE60 00219AC0 C0 12 00 24 */ lfs f0, 0x24(r18)
/* 8021DE64 00219AC4 EC 42 E8 28 */ fsubs f2, f2, f29
/* 8021DE68 00219AC8 EC 01 00 32 */ fmuls f0, f1, f0
/* 8021DE6C 00219ACC EC 22 F0 24 */ fdivs f1, f2, f30
/* 8021DE70 00219AD0 EC 3F 00 72 */ fmuls f1, f31, f1
/* 8021DE74 00219AD4 EC 21 E0 28 */ fsubs f1, f1, f28
/* 8021DE78 00219AD8 EE C0 00 72 */ fmuls f22, f0, f1
/* 8021DE7C 00219ADC 48 00 59 B5 */ bl func_80223830
/* 8021DE80 00219AE0 80 83 00 00 */ lwz r4, 0(r3)
/* 8021DE84 00219AE4 38 1F 43 FD */ addi r0, r31, 0x43fd
/* 8021DE88 00219AE8 7C 84 01 D6 */ mullw r4, r4, r0
/* 8021DE8C 00219AEC 3C 84 00 27 */ addis r4, r4, 0x27
/* 8021DE90 00219AF0 38 84 9E C3 */ addi r4, r4, -24893
/* 8021DE94 00219AF4 54 80 84 3E */ srwi r0, r4, 0x10
/* 8021DE98 00219AF8 90 83 00 00 */ stw r4, 0(r3)
/* 8021DE9C 00219AFC 90 01 00 8C */ stw r0, 0x8c(r1)
/* 8021DEA0 00219B00 C0 32 00 2C */ lfs f1, 0x2c(r18)
/* 8021DEA4 00219B04 C8 41 00 88 */ lfd f2, 0x88(r1)
/* 8021DEA8 00219B08 C0 12 00 24 */ lfs f0, 0x24(r18)
/* 8021DEAC 00219B0C EC 42 E8 28 */ fsubs f2, f2, f29
/* 8021DEB0 00219B10 EC 01 00 32 */ fmuls f0, f1, f0
/* 8021DEB4 00219B14 EC 22 F0 24 */ fdivs f1, f2, f30
/* 8021DEB8 00219B18 EC 3F 00 72 */ fmuls f1, f31, f1
/* 8021DEBC 00219B1C EC 21 E0 28 */ fsubs f1, f1, f28
/* 8021DEC0 00219B20 EC 00 00 72 */ fmuls f0, f0, f1
/* 8021DEC4 00219B24 D0 1A 00 20 */ stfs f0, 0x20(r26)
/* 8021DEC8 00219B28 D2 DA 00 24 */ stfs f22, 0x24(r26)
/* 8021DECC 00219B2C D3 1A 00 28 */ stfs f24, 0x28(r26)
/* 8021DED0 00219B30 48 00 59 61 */ bl func_80223830
/* 8021DED4 00219B34 80 83 00 00 */ lwz r4, 0(r3)
/* 8021DED8 00219B38 38 1F 43 FD */ addi r0, r31, 0x43fd
/* 8021DEDC 00219B3C 7C 84 01 D6 */ mullw r4, r4, r0
/* 8021DEE0 00219B40 3C 84 00 27 */ addis r4, r4, 0x27
/* 8021DEE4 00219B44 38 84 9E C3 */ addi r4, r4, -24893
/* 8021DEE8 00219B48 54 80 84 3E */ srwi r0, r4, 0x10
/* 8021DEEC 00219B4C 90 83 00 00 */ stw r4, 0(r3)
/* 8021DEF0 00219B50 90 01 00 94 */ stw r0, 0x94(r1)
/* 8021DEF4 00219B54 C0 12 00 40 */ lfs f0, 0x40(r18)
/* 8021DEF8 00219B58 C8 21 00 90 */ lfd f1, 0x90(r1)
/* 8021DEFC 00219B5C EC 21 E8 28 */ fsubs f1, f1, f29
/* 8021DF00 00219B60 EC 21 F0 24 */ fdivs f1, f1, f30
/* 8021DF04 00219B64 EC 3F 00 72 */ fmuls f1, f31, f1
/* 8021DF08 00219B68 EC 21 E0 28 */ fsubs f1, f1, f28
/* 8021DF0C 00219B6C EF 00 00 72 */ fmuls f24, f0, f1
/* 8021DF10 00219B70 48 00 59 21 */ bl func_80223830
/* 8021DF14 00219B74 80 83 00 00 */ lwz r4, 0(r3)
/* 8021DF18 00219B78 38 1F 43 FD */ addi r0, r31, 0x43fd
/* 8021DF1C 00219B7C 7C 84 01 D6 */ mullw r4, r4, r0
/* 8021DF20 00219B80 3C 84 00 27 */ addis r4, r4, 0x27
/* 8021DF24 00219B84 38 84 9E C3 */ addi r4, r4, -24893
/* 8021DF28 00219B88 54 80 84 3E */ srwi r0, r4, 0x10
/* 8021DF2C 00219B8C 90 83 00 00 */ stw r4, 0(r3)
/* 8021DF30 00219B90 90 01 00 8C */ stw r0, 0x8c(r1)
/* 8021DF34 00219B94 C0 12 00 3C */ lfs f0, 0x3c(r18)
/* 8021DF38 00219B98 C8 21 00 88 */ lfd f1, 0x88(r1)
/* 8021DF3C 00219B9C EC 21 E8 28 */ fsubs f1, f1, f29
/* 8021DF40 00219BA0 EC 21 F0 24 */ fdivs f1, f1, f30
/* 8021DF44 00219BA4 EC 3F 00 72 */ fmuls f1, f31, f1
/* 8021DF48 00219BA8 EC 21 E0 28 */ fsubs f1, f1, f28
/* 8021DF4C 00219BAC EE C0 00 72 */ fmuls f22, f0, f1
/* 8021DF50 00219BB0 48 00 58 E1 */ bl func_80223830
/* 8021DF54 00219BB4 80 83 00 00 */ lwz r4, 0(r3)
/* 8021DF58 00219BB8 38 1F 43 FD */ addi r0, r31, 0x43fd
/* 8021DF5C 00219BBC 7C 84 01 D6 */ mullw r4, r4, r0
/* 8021DF60 00219BC0 3C 84 00 27 */ addis r4, r4, 0x27
/* 8021DF64 00219BC4 38 84 9E C3 */ addi r4, r4, -24893
/* 8021DF68 00219BC8 54 80 84 3E */ srwi r0, r4, 0x10
/* 8021DF6C 00219BCC 90 83 00 00 */ stw r4, 0(r3)
/* 8021DF70 00219BD0 90 01 00 94 */ stw r0, 0x94(r1)
/* 8021DF74 00219BD4 C0 12 00 38 */ lfs f0, 0x38(r18)
/* 8021DF78 00219BD8 C8 21 00 90 */ lfd f1, 0x90(r1)
/* 8021DF7C 00219BDC EC 21 E8 28 */ fsubs f1, f1, f29
/* 8021DF80 00219BE0 EC 21 F0 24 */ fdivs f1, f1, f30
/* 8021DF84 00219BE4 EC 3F 00 72 */ fmuls f1, f31, f1
/* 8021DF88 00219BE8 EC 21 E0 28 */ fsubs f1, f1, f28
/* 8021DF8C 00219BEC EC 00 00 72 */ fmuls f0, f0, f1
/* 8021DF90 00219BF0 D0 1A 00 2C */ stfs f0, 0x2c(r26)
/* 8021DF94 00219BF4 D2 DA 00 30 */ stfs f22, 0x30(r26)
/* 8021DF98 00219BF8 D3 1A 00 34 */ stfs f24, 0x34(r26)
/* 8021DF9C 00219BFC 48 00 00 08 */ b lbl_8021DFA4
lbl_8021DFA0:
/* 8021DFA0 00219C00 D3 3A 00 38 */ stfs f25, 0x38(r26)
lbl_8021DFA4:
/* 8021DFA4 00219C04 3B 5A 00 3C */ addi r26, r26, 0x3c
/* 8021DFA8 00219C08 3A D6 00 08 */ addi r22, r22, 8
/* 8021DFAC 00219C0C 3A B5 00 01 */ addi r21, r21, 1
lbl_8021DFB0:
/* 8021DFB0 00219C10 56 A0 04 3E */ clrlwi r0, r21, 0x10
/* 8021DFB4 00219C14 7C 00 B8 40 */ cmplw r0, r23
/* 8021DFB8 00219C18 41 80 FC F0 */ blt lbl_8021DCA8
lbl_8021DFBC:
/* 8021DFBC 00219C1C 3B 39 00 01 */ addi r25, r25, 1
lbl_8021DFC0:
/* 8021DFC0 00219C20 57 20 04 3E */ clrlwi r0, r25, 0x10
/* 8021DFC4 00219C24 7C 00 F0 40 */ cmplw r0, r30
/* 8021DFC8 00219C28 41 80 FC 40 */ blt lbl_8021DC08
/* 8021DFCC 00219C2C 38 60 00 01 */ li r3, 1
lbl_8021DFD0:
/* 8021DFD0 00219C30 E3 E1 01 68 */ psq_l f31, 360(r1), 0, qr0
/* 8021DFD4 00219C34 CB E1 01 60 */ lfd f31, 0x160(r1)
/* 8021DFD8 00219C38 E3 C1 01 58 */ psq_l f30, 344(r1), 0, qr0
/* 8021DFDC 00219C3C CB C1 01 50 */ lfd f30, 0x150(r1)
/* 8021DFE0 00219C40 E3 A1 01 48 */ psq_l f29, 328(r1), 0, qr0
/* 8021DFE4 00219C44 CB A1 01 40 */ lfd f29, 0x140(r1)
/* 8021DFE8 00219C48 E3 81 01 38 */ psq_l f28, 312(r1), 0, qr0
/* 8021DFEC 00219C4C CB 81 01 30 */ lfd f28, 0x130(r1)
/* 8021DFF0 00219C50 E3 61 01 28 */ psq_l f27, 296(r1), 0, qr0
/* 8021DFF4 00219C54 CB 61 01 20 */ lfd f27, 0x120(r1)
/* 8021DFF8 00219C58 E3 41 01 18 */ psq_l f26, 280(r1), 0, qr0
/* 8021DFFC 00219C5C CB 41 01 10 */ lfd f26, 0x110(r1)
/* 8021E000 00219C60 E3 21 01 08 */ psq_l f25, 264(r1), 0, qr0
/* 8021E004 00219C64 CB 21 01 00 */ lfd f25, 0x100(r1)
/* 8021E008 00219C68 E3 01 00 F8 */ psq_l f24, 248(r1), 0, qr0
/* 8021E00C 00219C6C CB 01 00 F0 */ lfd f24, 0xf0(r1)
/* 8021E010 00219C70 E2 E1 00 E8 */ psq_l f23, 232(r1), 0, qr0
/* 8021E014 00219C74 CA E1 00 E0 */ lfd f23, 0xe0(r1)
/* 8021E018 00219C78 E2 C1 00 D8 */ psq_l f22, 216(r1), 0, qr0
/* 8021E01C 00219C7C 39 61 00 D0 */ addi r11, r1, 0xd0
/* 8021E020 00219C80 CA C1 00 D0 */ lfd f22, 0xd0(r1)
/* 8021E024 00219C84 4B FA 91 2D */ bl _restgpr_18
/* 8021E028 00219C88 80 01 01 74 */ lwz r0, 0x174(r1)
/* 8021E02C 00219C8C 7C 08 03 A6 */ mtlr r0
/* 8021E030 00219C90 38 21 01 70 */ addi r1, r1, 0x170
/* 8021E034 00219C94 4E 80 00 20 */ blr
/* 8021E038 00219C98 94 21 FF 40 */ stwu r1, -0xc0(r1)
/* 8021E03C 00219C9C 7C 08 02 A6 */ mflr r0
/* 8021E040 00219CA0 90 01 00 C4 */ stw r0, 0xc4(r1)
/* 8021E044 00219CA4 DB E1 00 B0 */ stfd f31, 0xb0(r1)
/* 8021E048 00219CA8 F3 E1 00 B8 */ psq_st f31, 184(r1), 0, qr0
/* 8021E04C 00219CAC DB C1 00 A0 */ stfd f30, 0xa0(r1)
/* 8021E050 00219CB0 F3 C1 00 A8 */ psq_st f30, 168(r1), 0, qr0
/* 8021E054 00219CB4 39 61 00 A0 */ addi r11, r1, 0xa0
/* 8021E058 00219CB8 4B FA 90 CD */ bl _savegpr_26
/* 8021E05C 00219CBC C0 43 00 68 */ lfs f2, 0x68(r3)
/* 8021E060 00219CC0 FF C0 08 90 */ fmr f30, f1
/* 8021E064 00219CC4 C0 03 00 6C */ lfs f0, 0x6c(r3)
/* 8021E068 00219CC8 7C 7A 1B 78 */ mr r26, r3
/* 8021E06C 00219CCC EC 22 08 2A */ fadds f1, f2, f1
/* 8021E070 00219CD0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8021E074 00219CD4 D0 23 00 68 */ stfs f1, 0x68(r3)
/* 8021E078 00219CD8 4C 41 13 82 */ cror 2, 1, 2
/* 8021E07C 00219CDC 40 82 00 0C */ bne lbl_8021E088
/* 8021E080 00219CE0 38 60 00 00 */ li r3, 0
/* 8021E084 00219CE4 48 00 02 10 */ b lbl_8021E294
lbl_8021E088:
/* 8021E088 00219CE8 83 E3 00 14 */ lwz r31, 0x14(r3)
/* 8021E08C 00219CEC 3B C0 00 00 */ li r30, 0
/* 8021E090 00219CF0 C3 E2 9B 84 */ lfs f31, lbl_80642184-_SDA2_BASE_(r2)
/* 8021E094 00219CF4 48 00 01 EC */ b lbl_8021E280
lbl_8021E098:
/* 8021E098 00219CF8 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8021E09C 00219CFC 2C 00 00 00 */ cmpwi r0, 0
/* 8021E0A0 00219D00 41 82 01 D8 */ beq lbl_8021E278
/* 8021E0A4 00219D04 C0 3F 00 38 */ lfs f1, 0x38(r31)
/* 8021E0A8 00219D08 C0 1A 00 68 */ lfs f0, 0x68(r26)
/* 8021E0AC 00219D0C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8021E0B0 00219D10 41 81 01 C8 */ bgt lbl_8021E278
/* 8021E0B4 00219D14 C0 3A 00 24 */ lfs f1, 0x24(r26)
/* 8021E0B8 00219D18 38 7A 00 4C */ addi r3, r26, 0x4c
/* 8021E0BC 00219D1C 38 81 00 44 */ addi r4, r1, 0x44
/* 8021E0C0 00219D20 48 05 EC 4D */ bl PSVECScale
/* 8021E0C4 00219D24 38 61 00 44 */ addi r3, r1, 0x44
/* 8021E0C8 00219D28 38 9F 00 20 */ addi r4, r31, 0x20
/* 8021E0CC 00219D2C 38 A1 00 78 */ addi r5, r1, 0x78
/* 8021E0D0 00219D30 48 05 EC 19 */ bl PSVECSubtract
/* 8021E0D4 00219D34 C0 21 00 78 */ lfs f1, 0x78(r1)
/* 8021E0D8 00219D38 C0 1A 00 4C */ lfs f0, 0x4c(r26)
/* 8021E0DC 00219D3C EC 01 00 32 */ fmuls f0, f1, f0
/* 8021E0E0 00219D40 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 8021E0E4 00219D44 40 80 00 08 */ bge lbl_8021E0EC
/* 8021E0E8 00219D48 D3 E1 00 78 */ stfs f31, 0x78(r1)
lbl_8021E0EC:
/* 8021E0EC 00219D4C C0 21 00 7C */ lfs f1, 0x7c(r1)
/* 8021E0F0 00219D50 C0 1A 00 50 */ lfs f0, 0x50(r26)
/* 8021E0F4 00219D54 EC 01 00 32 */ fmuls f0, f1, f0
/* 8021E0F8 00219D58 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 8021E0FC 00219D5C 40 80 00 08 */ bge lbl_8021E104
/* 8021E100 00219D60 D3 E1 00 7C */ stfs f31, 0x7c(r1)
lbl_8021E104:
/* 8021E104 00219D64 C0 21 00 80 */ lfs f1, 0x80(r1)
/* 8021E108 00219D68 C0 1A 00 54 */ lfs f0, 0x54(r26)
/* 8021E10C 00219D6C EC 01 00 32 */ fmuls f0, f1, f0
/* 8021E110 00219D70 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 8021E114 00219D74 40 80 00 08 */ bge lbl_8021E11C
/* 8021E118 00219D78 D3 E1 00 80 */ stfs f31, 0x80(r1)
lbl_8021E11C:
/* 8021E11C 00219D7C 38 61 00 78 */ addi r3, r1, 0x78
/* 8021E120 00219D80 C0 3A 00 58 */ lfs f1, 0x58(r26)
/* 8021E124 00219D84 7C 64 1B 78 */ mr r4, r3
/* 8021E128 00219D88 48 05 EB E5 */ bl PSVECScale
/* 8021E12C 00219D8C C0 3A 00 24 */ lfs f1, 0x24(r26)
/* 8021E130 00219D90 38 7A 00 5C */ addi r3, r26, 0x5c
/* 8021E134 00219D94 38 81 00 38 */ addi r4, r1, 0x38
/* 8021E138 00219D98 48 05 EB D5 */ bl PSVECScale
/* 8021E13C 00219D9C 38 61 00 78 */ addi r3, r1, 0x78
/* 8021E140 00219DA0 38 81 00 38 */ addi r4, r1, 0x38
/* 8021E144 00219DA4 7C 65 1B 78 */ mr r5, r3
/* 8021E148 00219DA8 48 05 EB 7D */ bl PSVECAdd
/* 8021E14C 00219DAC FC 20 F0 90 */ fmr f1, f30
/* 8021E150 00219DB0 38 61 00 78 */ addi r3, r1, 0x78
/* 8021E154 00219DB4 38 81 00 2C */ addi r4, r1, 0x2c
/* 8021E158 00219DB8 48 05 EB B5 */ bl PSVECScale
/* 8021E15C 00219DBC 38 7F 00 20 */ addi r3, r31, 0x20
/* 8021E160 00219DC0 38 81 00 2C */ addi r4, r1, 0x2c
/* 8021E164 00219DC4 7C 65 1B 78 */ mr r5, r3
/* 8021E168 00219DC8 48 05 EB 5D */ bl PSVECAdd
/* 8021E16C 00219DCC C0 3A 00 48 */ lfs f1, 0x48(r26)
/* 8021E170 00219DD0 7F E3 FB 78 */ mr r3, r31
/* 8021E174 00219DD4 C0 1A 00 24 */ lfs f0, 0x24(r26)
/* 8021E178 00219DD8 38 81 00 20 */ addi r4, r1, 0x20
/* 8021E17C 00219DDC EC 21 00 32 */ fmuls f1, f1, f0
/* 8021E180 00219DE0 48 05 EB 8D */ bl PSVECScale
/* 8021E184 00219DE4 38 7F 00 20 */ addi r3, r31, 0x20
/* 8021E188 00219DE8 38 81 00 20 */ addi r4, r1, 0x20
/* 8021E18C 00219DEC 38 A1 00 6C */ addi r5, r1, 0x6c
/* 8021E190 00219DF0 48 05 EB 35 */ bl PSVECAdd
/* 8021E194 00219DF4 C0 1F 00 14 */ lfs f0, 0x14(r31)
/* 8021E198 00219DF8 FC 20 F0 90 */ fmr f1, f30
/* 8021E19C 00219DFC 38 61 00 6C */ addi r3, r1, 0x6c
/* 8021E1A0 00219E00 38 81 00 14 */ addi r4, r1, 0x14
/* 8021E1A4 00219E04 D0 01 00 60 */ stfs f0, 0x60(r1)
/* 8021E1A8 00219E08 C0 1F 00 18 */ lfs f0, 0x18(r31)
/* 8021E1AC 00219E0C D0 01 00 64 */ stfs f0, 0x64(r1)
/* 8021E1B0 00219E10 C0 1F 00 1C */ lfs f0, 0x1c(r31)
/* 8021E1B4 00219E14 D0 01 00 68 */ stfs f0, 0x68(r1)
/* 8021E1B8 00219E18 48 05 EB 55 */ bl PSVECScale
/* 8021E1BC 00219E1C 38 7F 00 14 */ addi r3, r31, 0x14
/* 8021E1C0 00219E20 38 81 00 14 */ addi r4, r1, 0x14
/* 8021E1C4 00219E24 7C 65 1B 78 */ mr r5, r3
/* 8021E1C8 00219E28 48 05 EA FD */ bl PSVECAdd
/* 8021E1CC 00219E2C 88 1A 00 1E */ lbz r0, 0x1e(r26)
/* 8021E1D0 00219E30 2C 00 00 00 */ cmpwi r0, 0
/* 8021E1D4 00219E34 41 82 00 38 */ beq lbl_8021E20C
/* 8021E1D8 00219E38 C0 3F 00 18 */ lfs f1, 0x18(r31)
/* 8021E1DC 00219E3C C0 1A 00 44 */ lfs f0, 0x44(r26)
/* 8021E1E0 00219E40 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8021E1E4 00219E44 4C 40 13 82 */ cror 2, 0, 2
/* 8021E1E8 00219E48 40 82 00 24 */ bne lbl_8021E20C
/* 8021E1EC 00219E4C EC 00 08 28 */ fsubs f0, f0, f1
/* 8021E1F0 00219E50 D0 1F 00 18 */ stfs f0, 0x18(r31)
/* 8021E1F4 00219E54 C0 1F 00 24 */ lfs f0, 0x24(r31)
/* 8021E1F8 00219E58 FC 00 00 50 */ fneg f0, f0
/* 8021E1FC 00219E5C D0 1F 00 24 */ stfs f0, 0x24(r31)
/* 8021E200 00219E60 C0 1F 00 04 */ lfs f0, 4(r31)
/* 8021E204 00219E64 FC 00 00 50 */ fneg f0, f0
/* 8021E208 00219E68 D0 1F 00 04 */ stfs f0, 4(r31)
lbl_8021E20C:
/* 8021E20C 00219E6C FC 20 F0 90 */ fmr f1, f30
/* 8021E210 00219E70 38 7F 00 2C */ addi r3, r31, 0x2c
/* 8021E214 00219E74 38 81 00 08 */ addi r4, r1, 8
/* 8021E218 00219E78 48 05 EA F5 */ bl PSVECScale
/* 8021E21C 00219E7C 38 61 00 50 */ addi r3, r1, 0x50
/* 8021E220 00219E80 38 81 00 08 */ addi r4, r1, 8
/* 8021E224 00219E84 48 00 54 9D */ bl func_802236C0
/* 8021E228 00219E88 A3 BF 00 10 */ lhz r29, 0x10(r31)
/* 8021E22C 00219E8C 3B 60 00 00 */ li r27, 0
/* 8021E230 00219E90 83 9F 00 0C */ lwz r28, 0xc(r31)
/* 8021E234 00219E94 48 00 00 38 */ b lbl_8021E26C
lbl_8021E238:
/* 8021E238 00219E98 7F 83 E3 78 */ mr r3, r28
/* 8021E23C 00219E9C 7F 85 E3 78 */ mr r5, r28
/* 8021E240 00219EA0 38 81 00 60 */ addi r4, r1, 0x60
/* 8021E244 00219EA4 48 05 EA A5 */ bl PSVECSubtract
/* 8021E248 00219EA8 7F 83 E3 78 */ mr r3, r28
/* 8021E24C 00219EAC 38 81 00 50 */ addi r4, r1, 0x50
/* 8021E250 00219EB0 48 00 57 BD */ bl func_80223A0C
/* 8021E254 00219EB4 7F 83 E3 78 */ mr r3, r28
/* 8021E258 00219EB8 7F 85 E3 78 */ mr r5, r28
/* 8021E25C 00219EBC 38 9F 00 14 */ addi r4, r31, 0x14
/* 8021E260 00219EC0 48 05 EA 65 */ bl PSVECAdd
/* 8021E264 00219EC4 3B 7B 00 01 */ addi r27, r27, 1
/* 8021E268 00219EC8 3B 9C 00 0C */ addi r28, r28, 0xc
lbl_8021E26C:
/* 8021E26C 00219ECC 57 60 04 3E */ clrlwi r0, r27, 0x10
/* 8021E270 00219ED0 7C 00 E8 40 */ cmplw r0, r29
/* 8021E274 00219ED4 41 80 FF C4 */ blt lbl_8021E238
lbl_8021E278:
/* 8021E278 00219ED8 3B DE 00 01 */ addi r30, r30, 1
/* 8021E27C 00219EDC 3B FF 00 3C */ addi r31, r31, 0x3c
lbl_8021E280:
/* 8021E280 00219EE0 A0 1A 00 1C */ lhz r0, 0x1c(r26)
/* 8021E284 00219EE4 57 C3 04 3E */ clrlwi r3, r30, 0x10
/* 8021E288 00219EE8 7C 03 00 40 */ cmplw r3, r0
/* 8021E28C 00219EEC 41 80 FE 0C */ blt lbl_8021E098
/* 8021E290 00219EF0 38 60 00 01 */ li r3, 1
lbl_8021E294:
/* 8021E294 00219EF4 E3 E1 00 B8 */ psq_l f31, 184(r1), 0, qr0
/* 8021E298 00219EF8 CB E1 00 B0 */ lfd f31, 0xb0(r1)
/* 8021E29C 00219EFC E3 C1 00 A8 */ psq_l f30, 168(r1), 0, qr0
/* 8021E2A0 00219F00 39 61 00 A0 */ addi r11, r1, 0xa0
/* 8021E2A4 00219F04 CB C1 00 A0 */ lfd f30, 0xa0(r1)
/* 8021E2A8 00219F08 4B FA 8E C9 */ bl _restgpr_26
/* 8021E2AC 00219F0C 80 01 00 C4 */ lwz r0, 0xc4(r1)
/* 8021E2B0 00219F10 7C 08 03 A6 */ mtlr r0
/* 8021E2B4 00219F14 38 21 00 C0 */ addi r1, r1, 0xc0
/* 8021E2B8 00219F18 4E 80 00 20 */ blr
/* 8021E2BC 00219F1C 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8021E2C0 00219F20 7C 08 02 A6 */ mflr r0
/* 8021E2C4 00219F24 90 01 00 44 */ stw r0, 0x44(r1)
/* 8021E2C8 00219F28 39 61 00 40 */ addi r11, r1, 0x40
/* 8021E2CC 00219F2C 4B FA 8E 55 */ bl _savegpr_25
/* 8021E2D0 00219F30 80 CD A3 D8 */ lwz r6, render_context_ptr-_SDA_BASE_(r13)
/* 8021E2D4 00219F34 7C 7A 1B 78 */ mr r26, r3
/* 8021E2D8 00219F38 80 A6 16 38 */ lwz r5, 0x1638(r6)
/* 8021E2DC 00219F3C 88 85 0A 87 */ lbz r4, 0xa87(r5)
/* 8021E2E0 00219F40 7C 04 00 D0 */ neg r0, r4
/* 8021E2E4 00219F44 7C 00 23 78 */ or r0, r0, r4
/* 8021E2E8 00219F48 54 1B 0F FF */ rlwinm. r27, r0, 1, 0x1f, 0x1f
/* 8021E2EC 00219F4C 41 82 00 2C */ beq lbl_8021E318
/* 8021E2F0 00219F50 38 00 00 00 */ li r0, 0
/* 8021E2F4 00219F54 98 05 0A 87 */ stb r0, 0xa87(r5)
/* 8021E2F8 00219F58 80 86 16 38 */ lwz r4, 0x1638(r6)
/* 8021E2FC 00219F5C 80 04 00 64 */ lwz r0, 0x64(r4)
/* 8021E300 00219F60 60 00 00 40 */ ori r0, r0, 0x40
/* 8021E304 00219F64 90 04 00 64 */ stw r0, 0x64(r4)
/* 8021E308 00219F68 80 86 16 38 */ lwz r4, 0x1638(r6)
/* 8021E30C 00219F6C 80 04 00 00 */ lwz r0, 0(r4)
/* 8021E310 00219F70 60 00 00 40 */ ori r0, r0, 0x40
/* 8021E314 00219F74 90 04 00 00 */ stw r0, 0(r4)
lbl_8021E318:
/* 8021E318 00219F78 88 03 00 1F */ lbz r0, 0x1f(r3)
/* 8021E31C 00219F7C 88 C3 00 28 */ lbz r6, 0x28(r3)
/* 8021E320 00219F80 88 A3 00 29 */ lbz r5, 0x29(r3)
/* 8021E324 00219F84 2C 00 00 00 */ cmpwi r0, 0
/* 8021E328 00219F88 88 83 00 2A */ lbz r4, 0x2a(r3)
/* 8021E32C 00219F8C 88 03 00 2B */ lbz r0, 0x2b(r3)
/* 8021E330 00219F90 98 C1 00 18 */ stb r6, 0x18(r1)
/* 8021E334 00219F94 98 A1 00 19 */ stb r5, 0x19(r1)
/* 8021E338 00219F98 98 81 00 1A */ stb r4, 0x1a(r1)
/* 8021E33C 00219F9C 98 01 00 1B */ stb r0, 0x1b(r1)
/* 8021E340 00219FA0 41 82 00 38 */ beq lbl_8021E378
/* 8021E344 00219FA4 98 01 00 10 */ stb r0, 0x10(r1)
/* 8021E348 00219FA8 E0 61 A0 10 */ psq_l f3, 16(r1), 1, qr2
/* 8021E34C 00219FAC C0 43 00 68 */ lfs f2, 0x68(r3)
/* 8021E350 00219FB0 C0 03 00 6C */ lfs f0, 0x6c(r3)
/* 8021E354 00219FB4 C0 22 9B 80 */ lfs f1, lbl_80642180-_SDA2_BASE_(r2)
/* 8021E358 00219FB8 EC 42 00 24 */ fdivs f2, f2, f0
/* 8021E35C 00219FBC C0 02 9B B0 */ lfs f0, lbl_806421B0-_SDA2_BASE_(r2)
/* 8021E360 00219FC0 EC 21 10 28 */ fsubs f1, f1, f2
/* 8021E364 00219FC4 EC 23 00 72 */ fmuls f1, f3, f1
/* 8021E368 00219FC8 EC 00 08 2A */ fadds f0, f0, f1
/* 8021E36C 00219FCC F0 01 A0 14 */ psq_st f0, 20(r1), 1, qr2
/* 8021E370 00219FD0 88 01 00 14 */ lbz r0, 0x14(r1)
/* 8021E374 00219FD4 98 01 00 1B */ stb r0, 0x1b(r1)
lbl_8021E378:
/* 8021E378 00219FD8 80 ED A3 D8 */ lwz r7, render_context_ptr-_SDA_BASE_(r13)
/* 8021E37C 00219FDC 3B 80 00 00 */ li r28, 0
/* 8021E380 00219FE0 3B A0 00 01 */ li r29, 1
/* 8021E384 00219FE4 3B C0 00 04 */ li r30, 4
/* 8021E388 00219FE8 80 67 16 38 */ lwz r3, 0x1638(r7)
/* 8021E38C 00219FEC 38 A0 00 05 */ li r5, 5
/* 8021E390 00219FF0 38 80 00 03 */ li r4, 3
/* 8021E394 00219FF4 38 00 00 07 */ li r0, 7
/* 8021E398 00219FF8 93 83 01 84 */ stw r28, 0x184(r3)
/* 8021E39C 00219FFC 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E3A0 0021A000 80 66 00 10 */ lwz r3, 0x10(r6)
/* 8021E3A4 0021A004 60 63 00 02 */ ori r3, r3, 2
/* 8021E3A8 0021A008 90 66 00 10 */ stw r3, 0x10(r6)
/* 8021E3AC 0021A00C 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E3B0 0021A010 80 66 00 00 */ lwz r3, 0(r6)
/* 8021E3B4 0021A014 60 63 00 02 */ ori r3, r3, 2
/* 8021E3B8 0021A018 90 66 00 00 */ stw r3, 0(r6)
/* 8021E3BC 0021A01C 80 ED A3 D8 */ lwz r7, render_context_ptr-_SDA_BASE_(r13)
/* 8021E3C0 0021A020 80 67 16 38 */ lwz r3, 0x1638(r7)
/* 8021E3C4 0021A024 93 83 01 88 */ stw r28, 0x188(r3)
/* 8021E3C8 0021A028 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E3CC 0021A02C 80 66 00 10 */ lwz r3, 0x10(r6)
/* 8021E3D0 0021A030 60 63 00 04 */ ori r3, r3, 4
/* 8021E3D4 0021A034 90 66 00 10 */ stw r3, 0x10(r6)
/* 8021E3D8 0021A038 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E3DC 0021A03C 80 66 00 00 */ lwz r3, 0(r6)
/* 8021E3E0 0021A040 60 63 00 02 */ ori r3, r3, 2
/* 8021E3E4 0021A044 90 66 00 00 */ stw r3, 0(r6)
/* 8021E3E8 0021A048 80 ED A3 D8 */ lwz r7, render_context_ptr-_SDA_BASE_(r13)
/* 8021E3EC 0021A04C 80 67 16 38 */ lwz r3, 0x1638(r7)
/* 8021E3F0 0021A050 9B A3 0A 36 */ stb r29, 0xa36(r3)
/* 8021E3F4 0021A054 80 67 16 38 */ lwz r3, 0x1638(r7)
/* 8021E3F8 0021A058 9B 83 0A 37 */ stb r28, 0xa37(r3)
/* 8021E3FC 0021A05C 80 67 16 38 */ lwz r3, 0x1638(r7)
/* 8021E400 0021A060 9B 83 0A 38 */ stb r28, 0xa38(r3)
/* 8021E404 0021A064 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E408 0021A068 80 66 00 64 */ lwz r3, 0x64(r6)
/* 8021E40C 0021A06C 60 63 00 04 */ ori r3, r3, 4
/* 8021E410 0021A070 90 66 00 64 */ stw r3, 0x64(r6)
/* 8021E414 0021A074 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E418 0021A078 80 66 00 00 */ lwz r3, 0(r6)
/* 8021E41C 0021A07C 60 63 00 40 */ ori r3, r3, 0x40
/* 8021E420 0021A080 90 66 00 00 */ stw r3, 0(r6)
/* 8021E424 0021A084 80 CD A3 D8 */ lwz r6, render_context_ptr-_SDA_BASE_(r13)
/* 8021E428 0021A088 80 66 16 38 */ lwz r3, 0x1638(r6)
/* 8021E42C 0021A08C 93 A3 0A 24 */ stw r29, 0xa24(r3)
/* 8021E430 0021A090 80 66 16 38 */ lwz r3, 0x1638(r6)
/* 8021E434 0021A094 93 C3 0A 28 */ stw r30, 0xa28(r3)
/* 8021E438 0021A098 80 66 16 38 */ lwz r3, 0x1638(r6)
/* 8021E43C 0021A09C 90 A3 0A 2C */ stw r5, 0xa2c(r3)
/* 8021E440 0021A0A0 80 66 16 38 */ lwz r3, 0x1638(r6)
/* 8021E444 0021A0A4 90 A3 0A 30 */ stw r5, 0xa30(r3)
/* 8021E448 0021A0A8 80 A6 16 38 */ lwz r5, 0x1638(r6)
/* 8021E44C 0021A0AC 80 65 00 64 */ lwz r3, 0x64(r5)
/* 8021E450 0021A0B0 60 63 00 01 */ ori r3, r3, 1
/* 8021E454 0021A0B4 90 65 00 64 */ stw r3, 0x64(r5)
/* 8021E458 0021A0B8 80 A6 16 38 */ lwz r5, 0x1638(r6)
/* 8021E45C 0021A0BC 80 65 00 00 */ lwz r3, 0(r5)
/* 8021E460 0021A0C0 60 63 00 40 */ ori r3, r3, 0x40
/* 8021E464 0021A0C4 90 65 00 00 */ stw r3, 0(r5)
/* 8021E468 0021A0C8 80 AD A3 D8 */ lwz r5, render_context_ptr-_SDA_BASE_(r13)
/* 8021E46C 0021A0CC 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E470 0021A0D0 9B A3 0A 3C */ stb r29, 0xa3c(r3)
/* 8021E474 0021A0D4 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E478 0021A0D8 90 83 0A 40 */ stw r4, 0xa40(r3)
/* 8021E47C 0021A0DC 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E480 0021A0E0 80 64 00 64 */ lwz r3, 0x64(r4)
/* 8021E484 0021A0E4 60 63 00 08 */ ori r3, r3, 8
/* 8021E488 0021A0E8 90 64 00 64 */ stw r3, 0x64(r4)
/* 8021E48C 0021A0EC 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E490 0021A0F0 80 64 00 00 */ lwz r3, 0(r4)
/* 8021E494 0021A0F4 60 63 00 40 */ ori r3, r3, 0x40
/* 8021E498 0021A0F8 90 64 00 00 */ stw r3, 0(r4)
/* 8021E49C 0021A0FC 80 AD A3 D8 */ lwz r5, render_context_ptr-_SDA_BASE_(r13)
/* 8021E4A0 0021A100 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E4A4 0021A104 90 03 0A 44 */ stw r0, 0xa44(r3)
/* 8021E4A8 0021A108 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E4AC 0021A10C 9B 83 0A 50 */ stb r28, 0xa50(r3)
/* 8021E4B0 0021A110 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E4B4 0021A114 93 83 0A 48 */ stw r28, 0xa48(r3)
/* 8021E4B8 0021A118 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E4BC 0021A11C 90 03 0A 4C */ stw r0, 0xa4c(r3)
/* 8021E4C0 0021A120 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E4C4 0021A124 9B 83 0A 51 */ stb r28, 0xa51(r3)
/* 8021E4C8 0021A128 80 65 16 38 */ lwz r3, 0x1638(r5)
/* 8021E4CC 0021A12C 9B A3 0A 52 */ stb r29, 0xa52(r3)
/* 8021E4D0 0021A130 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E4D4 0021A134 3B E0 00 FF */ li r31, 0xff
/* 8021E4D8 0021A138 38 60 00 00 */ li r3, 0
/* 8021E4DC 0021A13C 80 04 00 64 */ lwz r0, 0x64(r4)
/* 8021E4E0 0021A140 60 00 00 10 */ ori r0, r0, 0x10
/* 8021E4E4 0021A144 90 04 00 64 */ stw r0, 0x64(r4)
/* 8021E4E8 0021A148 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E4EC 0021A14C 80 04 00 00 */ lwz r0, 0(r4)
/* 8021E4F0 0021A150 60 00 00 40 */ ori r0, r0, 0x40
/* 8021E4F4 0021A154 90 04 00 00 */ stw r0, 0(r4)
/* 8021E4F8 0021A158 80 AD A3 D8 */ lwz r5, render_context_ptr-_SDA_BASE_(r13)
/* 8021E4FC 0021A15C 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E500 0021A160 9B 84 0A 34 */ stb r28, 0xa34(r4)
/* 8021E504 0021A164 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E508 0021A168 9B E4 0A 35 */ stb r31, 0xa35(r4)
/* 8021E50C 0021A16C 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E510 0021A170 80 04 00 64 */ lwz r0, 0x64(r4)
/* 8021E514 0021A174 60 00 00 02 */ ori r0, r0, 2
/* 8021E518 0021A178 90 04 00 64 */ stw r0, 0x64(r4)
/* 8021E51C 0021A17C 80 85 16 38 */ lwz r4, 0x1638(r5)
/* 8021E520 0021A180 80 04 00 00 */ lwz r0, 0(r4)
/* 8021E524 0021A184 60 00 00 40 */ ori r0, r0, 0x40
/* 8021E528 0021A188 90 04 00 00 */ stw r0, 0(r4)
/* 8021E52C 0021A18C 48 01 E9 F1 */ bl func_8023CF1C
/* 8021E530 0021A190 80 AD A3 D8 */ lwz r5, render_context_ptr-_SDA_BASE_(r13)
/* 8021E534 0021A194 38 80 00 00 */ li r4, 0
/* 8021E538 0021A198 80 01 00 18 */ lwz r0, 0x18(r1)
/* 8021E53C 0021A19C 38 C0 00 00 */ li r6, 0
/* 8021E540 0021A1A0 90 65 17 3C */ stw r3, 0x173c(r5)
/* 8021E544 0021A1A4 38 A0 00 03 */ li r5, 3
/* 8021E548 0021A1A8 38 E0 00 00 */ li r7, 0
/* 8021E54C 0021A1AC 39 00 00 00 */ li r8, 0
/* 8021E550 0021A1B0 81 6D A3 D8 */ lwz r11, render_context_ptr-_SDA_BASE_(r13)
/* 8021E554 0021A1B4 39 20 00 00 */ li r9, 0
/* 8021E558 0021A1B8 39 40 00 02 */ li r10, 2
/* 8021E55C 0021A1BC 80 6B 16 38 */ lwz r3, 0x1638(r11)
/* 8021E560 0021A1C0 90 03 02 70 */ stw r0, 0x270(r3)
/* 8021E564 0021A1C4 80 6B 16 38 */ lwz r3, 0x1638(r11)
/* 8021E568 0021A1C8 90 03 02 78 */ stw r0, 0x278(r3)
/* 8021E56C 0021A1CC 80 6B 16 38 */ lwz r3, 0x1638(r11)
/* 8021E570 0021A1D0 80 03 00 1C */ lwz r0, 0x1c(r3)
/* 8021E574 0021A1D4 60 00 00 01 */ ori r0, r0, 1
/* 8021E578 0021A1D8 90 03 00 1C */ stw r0, 0x1c(r3)
/* 8021E57C 0021A1DC 80 6B 16 38 */ lwz r3, 0x1638(r11)
/* 8021E580 0021A1E0 80 03 00 20 */ lwz r0, 0x20(r3)
/* 8021E584 0021A1E4 60 00 00 01 */ ori r0, r0, 1
/* 8021E588 0021A1E8 90 03 00 20 */ stw r0, 0x20(r3)
/* 8021E58C 0021A1EC 80 6B 16 38 */ lwz r3, 0x1638(r11)
/* 8021E590 0021A1F0 80 03 00 00 */ lwz r0, 0(r3)
/* 8021E594 0021A1F4 60 00 00 04 */ ori r0, r0, 4
/* 8021E598 0021A1F8 90 03 00 00 */ stw r0, 0(r3)
/* 8021E59C 0021A1FC 93 81 00 08 */ stw r28, 8(r1)
/* 8021E5A0 0021A200 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8021E5A4 0021A204 48 01 51 E9 */ bl func_8023378C
/* 8021E5A8 0021A208 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8021E5AC 0021A20C 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E5B0 0021A210 9B A3 01 8C */ stb r29, 0x18c(r3)
/* 8021E5B4 0021A214 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E5B8 0021A218 80 03 00 14 */ lwz r0, 0x14(r3)
/* 8021E5BC 0021A21C 60 00 00 01 */ ori r0, r0, 1
/* 8021E5C0 0021A220 90 03 00 14 */ stw r0, 0x14(r3)
/* 8021E5C4 0021A224 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E5C8 0021A228 80 03 00 00 */ lwz r0, 0(r3)
/* 8021E5CC 0021A22C 60 00 00 04 */ ori r0, r0, 4
/* 8021E5D0 0021A230 90 03 00 00 */ stw r0, 0(r3)
/* 8021E5D4 0021A234 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8021E5D8 0021A238 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E5DC 0021A23C 9B 83 00 68 */ stb r28, 0x68(r3)
/* 8021E5E0 0021A240 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E5E4 0021A244 80 03 00 04 */ lwz r0, 4(r3)
/* 8021E5E8 0021A248 60 00 00 01 */ ori r0, r0, 1
/* 8021E5EC 0021A24C 90 03 00 04 */ stw r0, 4(r3)
/* 8021E5F0 0021A250 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E5F4 0021A254 80 03 00 00 */ lwz r0, 0(r3)
/* 8021E5F8 0021A258 60 00 00 01 */ ori r0, r0, 1
/* 8021E5FC 0021A25C 90 03 00 00 */ stw r0, 0(r3)
/* 8021E600 0021A260 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8021E604 0021A264 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E608 0021A268 9B A3 02 80 */ stb r29, 0x280(r3)
/* 8021E60C 0021A26C 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E610 0021A270 80 03 00 24 */ lwz r0, 0x24(r3)
/* 8021E614 0021A274 60 00 00 01 */ ori r0, r0, 1
/* 8021E618 0021A278 90 03 00 24 */ stw r0, 0x24(r3)
/* 8021E61C 0021A27C 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E620 0021A280 80 03 00 00 */ lwz r0, 0(r3)
/* 8021E624 0021A284 60 00 00 08 */ ori r0, r0, 8
/* 8021E628 0021A288 90 03 00 00 */ stw r0, 0(r3)
/* 8021E62C 0021A28C 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8021E630 0021A290 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E634 0021A294 9B 83 08 90 */ stb r28, 0x890(r3)
/* 8021E638 0021A298 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E63C 0021A29C 80 03 00 44 */ lwz r0, 0x44(r3)
/* 8021E640 0021A2A0 60 00 00 01 */ ori r0, r0, 1
/* 8021E644 0021A2A4 90 03 00 44 */ stw r0, 0x44(r3)
/* 8021E648 0021A2A8 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E64C 0021A2AC 80 03 00 00 */ lwz r0, 0(r3)
/* 8021E650 0021A2B0 60 00 00 80 */ ori r0, r0, 0x80
/* 8021E654 0021A2B4 90 03 00 00 */ stw r0, 0(r3)
/* 8021E658 0021A2B8 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8021E65C 0021A2BC 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E660 0021A2C0 93 83 09 64 */ stw r28, 0x964(r3)
/* 8021E664 0021A2C4 93 83 09 68 */ stw r28, 0x968(r3)
/* 8021E668 0021A2C8 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E66C 0021A2CC 80 03 00 5C */ lwz r0, 0x5c(r3)
/* 8021E670 0021A2D0 60 00 00 01 */ ori r0, r0, 1
/* 8021E674 0021A2D4 90 03 00 5C */ stw r0, 0x5c(r3)
/* 8021E678 0021A2D8 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E67C 0021A2DC 80 03 00 00 */ lwz r0, 0(r3)
/* 8021E680 0021A2E0 60 00 00 20 */ ori r0, r0, 0x20
/* 8021E684 0021A2E4 90 03 00 00 */ stw r0, 0(r3)
/* 8021E688 0021A2E8 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8021E68C 0021A2EC 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E690 0021A2F0 93 E3 02 84 */ stw r31, 0x284(r3)
/* 8021E694 0021A2F4 93 E3 02 88 */ stw r31, 0x288(r3)
/* 8021E698 0021A2F8 93 C3 02 8C */ stw r30, 0x28c(r3)
/* 8021E69C 0021A2FC 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E6A0 0021A300 80 03 00 28 */ lwz r0, 0x28(r3)
/* 8021E6A4 0021A304 60 00 00 01 */ ori r0, r0, 1
/* 8021E6A8 0021A308 90 03 00 28 */ stw r0, 0x28(r3)
/* 8021E6AC 0021A30C 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E6B0 0021A310 80 03 00 00 */ lwz r0, 0(r3)
/* 8021E6B4 0021A314 60 00 00 08 */ ori r0, r0, 8
/* 8021E6B8 0021A318 90 03 00 00 */ stw r0, 0(r3)
/* 8021E6BC 0021A31C 81 6D A3 D8 */ lwz r11, render_context_ptr-_SDA_BASE_(r13)
/* 8021E6C0 0021A320 80 6B 16 38 */ lwz r3, 0x1638(r11)
/* 8021E6C4 0021A324 80 03 07 F4 */ lwz r0, 0x7f4(r3)
/* 8021E6C8 0021A328 2C 00 00 07 */ cmpwi r0, 7
/* 8021E6CC 0021A32C 41 82 00 08 */ beq lbl_8021E6D4
/* 8021E6D0 0021A330 93 83 07 F4 */ stw r28, 0x7f4(r3)
lbl_8021E6D4:
/* 8021E6D4 0021A334 81 0B 16 38 */ lwz r8, 0x1638(r11)
/* 8021E6D8 0021A338 39 40 00 00 */ li r10, 0
/* 8021E6DC 0021A33C 39 20 00 01 */ li r9, 1
/* 8021E6E0 0021A340 38 C0 00 0F */ li r6, 0xf
/* 8021E6E4 0021A344 80 08 00 40 */ lwz r0, 0x40(r8)
/* 8021E6E8 0021A348 38 A0 00 0A */ li r5, 0xa
/* 8021E6EC 0021A34C 38 80 00 07 */ li r4, 7
/* 8021E6F0 0021A350 38 60 00 05 */ li r3, 5
/* 8021E6F4 0021A354 60 07 00 01 */ ori r7, r0, 1
/* 8021E6F8 0021A358 38 00 00 A0 */ li r0, 0xa0
/* 8021E6FC 0021A35C 90 E8 00 40 */ stw r7, 0x40(r8)
/* 8021E700 0021A360 3B 80 00 00 */ li r28, 0
/* 8021E704 0021A364 3F C0 CC 01 */ lis r30, 0xcc01
/* 8021E708 0021A368 3B A0 FF FF */ li r29, -1
/* 8021E70C 0021A36C 81 0B 16 38 */ lwz r8, 0x1638(r11)
/* 8021E710 0021A370 80 E8 00 00 */ lwz r7, 0(r8)
/* 8021E714 0021A374 60 E7 00 08 */ ori r7, r7, 8
/* 8021E718 0021A378 90 E8 00 00 */ stw r7, 0(r8)
/* 8021E71C 0021A37C 81 6D A3 D8 */ lwz r11, render_context_ptr-_SDA_BASE_(r13)
/* 8021E720 0021A380 80 EB 16 38 */ lwz r7, 0x1638(r11)
/* 8021E724 0021A384 91 47 05 44 */ stw r10, 0x544(r7)
/* 8021E728 0021A388 91 47 05 48 */ stw r10, 0x548(r7)
/* 8021E72C 0021A38C 91 47 05 4C */ stw r10, 0x54c(r7)
/* 8021E730 0021A390 99 27 05 50 */ stb r9, 0x550(r7)
/* 8021E734 0021A394 91 47 05 54 */ stw r10, 0x554(r7)
/* 8021E738 0021A398 81 0B 16 38 */ lwz r8, 0x1638(r11)
/* 8021E73C 0021A39C 80 E8 00 34 */ lwz r7, 0x34(r8)
/* 8021E740 0021A3A0 60 E7 00 01 */ ori r7, r7, 1
/* 8021E744 0021A3A4 90 E8 00 34 */ stw r7, 0x34(r8)
/* 8021E748 0021A3A8 81 0B 16 38 */ lwz r8, 0x1638(r11)
/* 8021E74C 0021A3AC 80 E8 00 00 */ lwz r7, 0(r8)
/* 8021E750 0021A3B0 60 E7 00 08 */ ori r7, r7, 8
/* 8021E754 0021A3B4 90 E8 00 00 */ stw r7, 0(r8)
/* 8021E758 0021A3B8 81 0D A3 D8 */ lwz r8, render_context_ptr-_SDA_BASE_(r13)
/* 8021E75C 0021A3BC 80 E8 16 38 */ lwz r7, 0x1638(r8)
/* 8021E760 0021A3C0 90 C7 03 44 */ stw r6, 0x344(r7)
/* 8021E764 0021A3C4 90 C7 03 48 */ stw r6, 0x348(r7)
/* 8021E768 0021A3C8 90 C7 03 4C */ stw r6, 0x34c(r7)
/* 8021E76C 0021A3CC 90 A7 03 50 */ stw r5, 0x350(r7)
/* 8021E770 0021A3D0 80 C8 16 38 */ lwz r6, 0x1638(r8)
/* 8021E774 0021A3D4 80 A6 00 2C */ lwz r5, 0x2c(r6)
/* 8021E778 0021A3D8 60 A5 00 01 */ ori r5, r5, 1
/* 8021E77C 0021A3DC 90 A6 00 2C */ stw r5, 0x2c(r6)
/* 8021E780 0021A3E0 80 C8 16 38 */ lwz r6, 0x1638(r8)
/* 8021E784 0021A3E4 80 A6 00 00 */ lwz r5, 0(r6)
/* 8021E788 0021A3E8 60 A5 00 08 */ ori r5, r5, 8
/* 8021E78C 0021A3EC 90 A6 00 00 */ stw r5, 0(r6)
/* 8021E790 0021A3F0 80 ED A3 D8 */ lwz r7, render_context_ptr-_SDA_BASE_(r13)
/* 8021E794 0021A3F4 80 A7 16 38 */ lwz r5, 0x1638(r7)
/* 8021E798 0021A3F8 91 45 06 84 */ stw r10, 0x684(r5)
/* 8021E79C 0021A3FC 91 45 06 88 */ stw r10, 0x688(r5)
/* 8021E7A0 0021A400 91 45 06 8C */ stw r10, 0x68c(r5)
/* 8021E7A4 0021A404 99 25 06 90 */ stb r9, 0x690(r5)
/* 8021E7A8 0021A408 91 45 06 94 */ stw r10, 0x694(r5)
/* 8021E7AC 0021A40C 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E7B0 0021A410 80 A6 00 38 */ lwz r5, 0x38(r6)
/* 8021E7B4 0021A414 60 A5 00 01 */ ori r5, r5, 1
/* 8021E7B8 0021A418 90 A6 00 38 */ stw r5, 0x38(r6)
/* 8021E7BC 0021A41C 80 C7 16 38 */ lwz r6, 0x1638(r7)
/* 8021E7C0 0021A420 80 A6 00 00 */ lwz r5, 0(r6)
/* 8021E7C4 0021A424 60 A5 00 08 */ ori r5, r5, 8
/* 8021E7C8 0021A428 90 A6 00 00 */ stw r5, 0(r6)
/* 8021E7CC 0021A42C 80 CD A3 D8 */ lwz r6, render_context_ptr-_SDA_BASE_(r13)
/* 8021E7D0 0021A430 80 A6 16 38 */ lwz r5, 0x1638(r6)
/* 8021E7D4 0021A434 90 85 04 44 */ stw r4, 0x444(r5)
/* 8021E7D8 0021A438 90 85 04 48 */ stw r4, 0x448(r5)
/* 8021E7DC 0021A43C 90 85 04 4C */ stw r4, 0x44c(r5)
/* 8021E7E0 0021A440 90 65 04 50 */ stw r3, 0x450(r5)
/* 8021E7E4 0021A444 80 86 16 38 */ lwz r4, 0x1638(r6)
/* 8021E7E8 0021A448 80 64 00 30 */ lwz r3, 0x30(r4)
/* 8021E7EC 0021A44C 60 63 00 01 */ ori r3, r3, 1
/* 8021E7F0 0021A450 90 64 00 30 */ stw r3, 0x30(r4)
/* 8021E7F4 0021A454 80 86 16 38 */ lwz r4, 0x1638(r6)
/* 8021E7F8 0021A458 80 64 00 00 */ lwz r3, 0(r4)
/* 8021E7FC 0021A45C 60 63 00 08 */ ori r3, r3, 8
/* 8021E800 0021A460 90 64 00 00 */ stw r3, 0(r4)
/* 8021E804 0021A464 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8021E808 0021A468 90 03 17 38 */ stw r0, 0x1738(r3)
/* 8021E80C 0021A46C 83 FA 00 14 */ lwz r31, 0x14(r26)
/* 8021E810 0021A470 48 00 01 88 */ b lbl_8021E998
lbl_8021E814:
/* 8021E814 0021A474 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8021E818 0021A478 2C 00 00 00 */ cmpwi r0, 0
/* 8021E81C 0021A47C 41 82 01 74 */ beq lbl_8021E990
/* 8021E820 0021A480 A3 3F 00 10 */ lhz r25, 0x10(r31)
/* 8021E824 0021A484 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8021E828 0021A488 7F 24 CB 78 */ mr r4, r25
/* 8021E82C 0021A48C 48 01 4D 01 */ bl begin_drawing
/* 8021E830 0021A490 2C 19 00 00 */ cmpwi r25, 0
/* 8021E834 0021A494 80 9F 00 0C */ lwz r4, 0xc(r31)
/* 8021E838 0021A498 38 A0 00 00 */ li r5, 0
/* 8021E83C 0021A49C 41 82 01 4C */ beq lbl_8021E988
/* 8021E840 0021A4A0 28 19 00 08 */ cmplwi r25, 8
/* 8021E844 0021A4A4 3C 79 00 01 */ addis r3, r25, 1
/* 8021E848 0021A4A8 38 63 FF F8 */ addi r3, r3, -8
/* 8021E84C 0021A4AC 40 81 01 30 */ ble lbl_8021E97C
/* 8021E850 0021A4B0 54 63 04 3E */ clrlwi r3, r3, 0x10
/* 8021E854 0021A4B4 38 03 00 07 */ addi r0, r3, 7
/* 8021E858 0021A4B8 54 00 E8 FE */ srwi r0, r0, 3
/* 8021E85C 0021A4BC 7C 09 03 A6 */ mtctr r0
/* 8021E860 0021A4C0 28 03 00 00 */ cmplwi r3, 0
/* 8021E864 0021A4C4 40 81 01 18 */ ble lbl_8021E97C
lbl_8021E868:
/* 8021E868 0021A4C8 C0 04 00 08 */ lfs f0, 8(r4)
/* 8021E86C 0021A4CC 38 A5 00 08 */ addi r5, r5, 8
/* 8021E870 0021A4D0 C0 24 00 04 */ lfs f1, 4(r4)
/* 8021E874 0021A4D4 C0 44 00 00 */ lfs f2, 0(r4)
/* 8021E878 0021A4D8 D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E87C 0021A4DC D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E880 0021A4E0 D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E884 0021A4E4 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E888 0021A4E8 C0 04 00 14 */ lfs f0, 0x14(r4)
/* 8021E88C 0021A4EC C0 24 00 10 */ lfs f1, 0x10(r4)
/* 8021E890 0021A4F0 C0 44 00 0C */ lfs f2, 0xc(r4)
/* 8021E894 0021A4F4 D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E898 0021A4F8 D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E89C 0021A4FC D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E8A0 0021A500 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E8A4 0021A504 C0 04 00 20 */ lfs f0, 0x20(r4)
/* 8021E8A8 0021A508 C0 24 00 1C */ lfs f1, 0x1c(r4)
/* 8021E8AC 0021A50C C0 44 00 18 */ lfs f2, 0x18(r4)
/* 8021E8B0 0021A510 D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E8B4 0021A514 D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E8B8 0021A518 D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E8BC 0021A51C 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E8C0 0021A520 C0 04 00 2C */ lfs f0, 0x2c(r4)
/* 8021E8C4 0021A524 C0 24 00 28 */ lfs f1, 0x28(r4)
/* 8021E8C8 0021A528 C0 44 00 24 */ lfs f2, 0x24(r4)
/* 8021E8CC 0021A52C D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E8D0 0021A530 D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E8D4 0021A534 D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E8D8 0021A538 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E8DC 0021A53C C0 04 00 38 */ lfs f0, 0x38(r4)
/* 8021E8E0 0021A540 C0 24 00 34 */ lfs f1, 0x34(r4)
/* 8021E8E4 0021A544 C0 44 00 30 */ lfs f2, 0x30(r4)
/* 8021E8E8 0021A548 D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E8EC 0021A54C D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E8F0 0021A550 D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E8F4 0021A554 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E8F8 0021A558 C0 04 00 44 */ lfs f0, 0x44(r4)
/* 8021E8FC 0021A55C C0 24 00 40 */ lfs f1, 0x40(r4)
/* 8021E900 0021A560 C0 44 00 3C */ lfs f2, 0x3c(r4)
/* 8021E904 0021A564 D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E908 0021A568 D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E90C 0021A56C D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E910 0021A570 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E914 0021A574 C0 04 00 50 */ lfs f0, 0x50(r4)
/* 8021E918 0021A578 C0 24 00 4C */ lfs f1, 0x4c(r4)
/* 8021E91C 0021A57C C0 44 00 48 */ lfs f2, 0x48(r4)
/* 8021E920 0021A580 D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E924 0021A584 D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E928 0021A588 D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E92C 0021A58C 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E930 0021A590 C0 04 00 5C */ lfs f0, 0x5c(r4)
/* 8021E934 0021A594 C0 24 00 58 */ lfs f1, 0x58(r4)
/* 8021E938 0021A598 C0 44 00 54 */ lfs f2, 0x54(r4)
/* 8021E93C 0021A59C 38 84 00 60 */ addi r4, r4, 0x60
/* 8021E940 0021A5A0 D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E944 0021A5A4 D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E948 0021A5A8 D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E94C 0021A5AC 93 BE 80 00 */ stw r29, -0x8000(r30)
/* 8021E950 0021A5B0 42 00 FF 18 */ bdnz lbl_8021E868
/* 8021E954 0021A5B4 48 00 00 28 */ b lbl_8021E97C
lbl_8021E958:
/* 8021E958 0021A5B8 C0 04 00 08 */ lfs f0, 8(r4)
/* 8021E95C 0021A5BC 38 A5 00 01 */ addi r5, r5, 1
/* 8021E960 0021A5C0 C0 24 00 04 */ lfs f1, 4(r4)
/* 8021E964 0021A5C4 C0 44 00 00 */ lfs f2, 0(r4)
/* 8021E968 0021A5C8 38 84 00 0C */ addi r4, r4, 0xc
/* 8021E96C 0021A5CC D0 5E 80 00 */ stfs f2, -0x8000(r30)
/* 8021E970 0021A5D0 D0 3E 80 00 */ stfs f1, -0x8000(r30)
/* 8021E974 0021A5D4 D0 1E 80 00 */ stfs f0, -0x8000(r30)
/* 8021E978 0021A5D8 93 BE 80 00 */ stw r29, -0x8000(r30)
lbl_8021E97C:
/* 8021E97C 0021A5DC 54 A0 04 3E */ clrlwi r0, r5, 0x10
/* 8021E980 0021A5E0 7C 00 C8 40 */ cmplw r0, r25
/* 8021E984 0021A5E4 41 80 FF D4 */ blt lbl_8021E958
lbl_8021E988:
/* 8021E988 0021A5E8 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8021E98C 0021A5EC 48 01 4B F5 */ bl end_drawing
lbl_8021E990:
/* 8021E990 0021A5F0 3B 9C 00 01 */ addi r28, r28, 1
/* 8021E994 0021A5F4 3B FF 00 3C */ addi r31, r31, 0x3c
lbl_8021E998:
/* 8021E998 0021A5F8 A0 1A 00 1C */ lhz r0, 0x1c(r26)
/* 8021E99C 0021A5FC 57 83 04 3E */ clrlwi r3, r28, 0x10
/* 8021E9A0 0021A600 7C 03 00 40 */ cmplw r3, r0
/* 8021E9A4 0021A604 41 80 FE 70 */ blt lbl_8021E814
/* 8021E9A8 0021A608 2C 1B 00 00 */ cmpwi r27, 0
/* 8021E9AC 0021A60C 41 82 00 60 */ beq lbl_8021EA0C
/* 8021E9B0 0021A610 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8021E9B4 0021A614 38 00 00 01 */ li r0, 1
/* 8021E9B8 0021A618 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E9BC 0021A61C 98 03 0A 87 */ stb r0, 0xa87(r3)
/* 8021E9C0 0021A620 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E9C4 0021A624 80 03 00 64 */ lwz r0, 0x64(r3)
/* 8021E9C8 0021A628 60 00 00 40 */ ori r0, r0, 0x40
/* 8021E9CC 0021A62C 90 03 00 64 */ stw r0, 0x64(r3)
/* 8021E9D0 0021A630 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E9D4 0021A634 80 03 00 64 */ lwz r0, 0x64(r3)
/* 8021E9D8 0021A638 60 00 02 00 */ ori r0, r0, 0x200
/* 8021E9DC 0021A63C 90 03 00 64 */ stw r0, 0x64(r3)
/* 8021E9E0 0021A640 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021E9E4 0021A644 88 03 0A 86 */ lbz r0, 0xa86(r3)
/* 8021E9E8 0021A648 2C 00 00 00 */ cmpwi r0, 0
/* 8021E9EC 0021A64C 41 82 00 10 */ beq lbl_8021E9FC
/* 8021E9F0 0021A650 80 03 00 64 */ lwz r0, 0x64(r3)
/* 8021E9F4 0021A654 60 00 01 00 */ ori r0, r0, 0x100
/* 8021E9F8 0021A658 90 03 00 64 */ stw r0, 0x64(r3)
lbl_8021E9FC:
/* 8021E9FC 0021A65C 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8021EA00 0021A660 80 03 00 00 */ lwz r0, 0(r3)
/* 8021EA04 0021A664 60 00 00 40 */ ori r0, r0, 0x40
/* 8021EA08 0021A668 90 03 00 00 */ stw r0, 0(r3)
lbl_8021EA0C:
/* 8021EA0C 0021A66C 39 61 00 40 */ addi r11, r1, 0x40
/* 8021EA10 0021A670 4B FA 87 5D */ bl _restgpr_25
/* 8021EA14 0021A674 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8021EA18 0021A678 7C 08 03 A6 */ mtlr r0
/* 8021EA1C 0021A67C 38 21 00 40 */ addi r1, r1, 0x40
/* 8021EA20 0021A680 4E 80 00 20 */ blr
lbl_8021EA24:
/* 8021EA24 0021A684 4E 80 00 20 */ blr
.global func_8021EA28
func_8021EA28:
/* 8021EA28 0021A688 38 A0 00 01 */ li r5, 1
/* 8021EA2C 0021A68C 38 6D A2 98 */ addi r3, r13, lbl_8063F558-_SDA_BASE_
/* 8021EA30 0021A690 38 80 00 04 */ li r4, 4
/* 8021EA34 0021A694 38 00 00 00 */ li r0, 0
/* 8021EA38 0021A698 98 AD A2 98 */ stb r5, lbl_8063F558-_SDA_BASE_(r13)
/* 8021EA3C 0021A69C B0 83 00 02 */ sth r4, 2(r3)
/* 8021EA40 0021A6A0 98 03 00 04 */ stb r0, 4(r3)
/* 8021EA44 0021A6A4 4E 80 00 20 */ blr
|