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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_8020B4F8
func_8020B4F8:
/* 8020B4F8 00207158 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 8020B4FC 0020715C 7C 08 02 A6 */ mflr r0
/* 8020B500 00207160 90 01 00 54 */ stw r0, 0x54(r1)
/* 8020B504 00207164 39 61 00 50 */ addi r11, r1, 0x50
/* 8020B508 00207168 4B FB BC 1D */ bl _savegpr_26
/* 8020B50C 0020716C 3C 00 43 30 */ lis r0, 0x4330
/* 8020B510 00207170 83 E5 00 00 */ lwz r31, 0(r5)
/* 8020B514 00207174 90 01 00 20 */ stw r0, 0x20(r1)
/* 8020B518 00207178 7C BE 2B 78 */ mr r30, r5
/* 8020B51C 0020717C 7C 7D 1B 78 */ mr r29, r3
/* 8020B520 00207180 7C 9A 23 78 */ mr r26, r4
/* 8020B524 00207184 90 01 00 28 */ stw r0, 0x28(r1)
/* 8020B528 00207188 7C C5 33 78 */ mr r5, r6
/* 8020B52C 0020718C 48 00 15 0D */ bl func_8020CA38
/* 8020B530 00207190 3B 60 00 00 */ li r27, 0
/* 8020B534 00207194 9B 7D 00 5A */ stb r27, 0x5a(r29)
/* 8020B538 00207198 48 01 82 F9 */ bl func_80223830
/* 8020B53C 0020719C 3F 80 00 03 */ lis r28, 0x000343FD@ha
/* 8020B540 002071A0 80 83 00 00 */ lwz r4, 0(r3)
/* 8020B544 002071A4 38 1C 43 FD */ addi r0, r28, 0x000343FD@l
/* 8020B548 002071A8 C8 42 99 E0 */ lfd f2, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B54C 002071AC 7C A4 01 D6 */ mullw r5, r4, r0
/* 8020B550 002071B0 C0 02 99 C8 */ lfs f0, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B554 002071B4 38 81 00 08 */ addi r4, r1, 8
/* 8020B558 002071B8 3C A5 00 27 */ addis r5, r5, 0x27
/* 8020B55C 002071BC 38 A5 9E C3 */ addi r5, r5, -24893
/* 8020B560 002071C0 54 A0 84 3E */ srwi r0, r5, 0x10
/* 8020B564 002071C4 90 A3 00 00 */ stw r5, 0(r3)
/* 8020B568 002071C8 38 7E 00 28 */ addi r3, r30, 0x28
/* 8020B56C 002071CC 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020B570 002071D0 C8 21 00 20 */ lfd f1, 0x20(r1)
/* 8020B574 002071D4 EC 21 10 28 */ fsubs f1, f1, f2
/* 8020B578 002071D8 EC 21 00 24 */ fdivs f1, f1, f0
/* 8020B57C 002071DC 48 07 17 91 */ bl PSVECScale
/* 8020B580 002071E0 C0 01 00 08 */ lfs f0, 8(r1)
/* 8020B584 002071E4 38 7D 00 80 */ addi r3, r29, 0x80
/* 8020B588 002071E8 7C 65 1B 78 */ mr r5, r3
/* 8020B58C 002071EC 38 9E 00 1C */ addi r4, r30, 0x1c
/* 8020B590 002071F0 D0 1D 00 80 */ stfs f0, 0x80(r29)
/* 8020B594 002071F4 C0 01 00 0C */ lfs f0, 0xc(r1)
/* 8020B598 002071F8 D0 1D 00 84 */ stfs f0, 0x84(r29)
/* 8020B59C 002071FC C0 01 00 10 */ lfs f0, 0x10(r1)
/* 8020B5A0 00207200 D0 1D 00 88 */ stfs f0, 0x88(r29)
/* 8020B5A4 00207204 48 07 17 21 */ bl PSVECAdd
/* 8020B5A8 00207208 C0 22 99 CC */ lfs f1, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020B5AC 0020720C 3C 80 80 49 */ lis r4, lbl_80493638@ha
/* 8020B5B0 00207210 C0 02 99 D0 */ lfs f0, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020B5B4 00207214 38 64 36 38 */ addi r3, r4, lbl_80493638@l
/* 8020B5B8 00207218 D0 3D 00 60 */ stfs f1, 0x60(r29)
/* 8020B5BC 0020721C D0 3D 00 64 */ stfs f1, 0x64(r29)
/* 8020B5C0 00207220 D0 3D 00 68 */ stfs f1, 0x68(r29)
/* 8020B5C4 00207224 D0 1D 00 6C */ stfs f0, 0x6c(r29)
/* 8020B5C8 00207228 D0 3D 00 30 */ stfs f1, 0x30(r29)
/* 8020B5CC 0020722C D0 3D 00 34 */ stfs f1, 0x34(r29)
/* 8020B5D0 00207230 D0 3D 00 38 */ stfs f1, 0x38(r29)
/* 8020B5D4 00207234 D0 3D 00 3C */ stfs f1, 0x3c(r29)
/* 8020B5D8 00207238 D0 3D 00 40 */ stfs f1, 0x40(r29)
/* 8020B5DC 0020723C D0 3D 00 44 */ stfs f1, 0x44(r29)
/* 8020B5E0 00207240 D0 1D 00 48 */ stfs f0, 0x48(r29)
/* 8020B5E4 00207244 C0 04 36 38 */ lfs f0, 0x3638(r4)
/* 8020B5E8 00207248 D0 1D 00 4C */ stfs f0, 0x4c(r29)
/* 8020B5EC 0020724C C0 03 00 04 */ lfs f0, 4(r3)
/* 8020B5F0 00207250 D0 1D 00 50 */ stfs f0, 0x50(r29)
/* 8020B5F4 00207254 C0 03 00 08 */ lfs f0, 8(r3)
/* 8020B5F8 00207258 D0 1D 00 54 */ stfs f0, 0x54(r29)
/* 8020B5FC 0020725C 9B 7D 00 5C */ stb r27, 0x5c(r29)
/* 8020B600 00207260 9B 7D 00 5D */ stb r27, 0x5d(r29)
/* 8020B604 00207264 9B 7D 00 5E */ stb r27, 0x5e(r29)
/* 8020B608 00207268 9B 7D 00 5F */ stb r27, 0x5f(r29)
/* 8020B60C 0020726C 9B 7D 00 5B */ stb r27, 0x5b(r29)
/* 8020B610 00207270 80 7A 00 FC */ lwz r3, 0xfc(r26)
/* 8020B614 00207274 80 03 00 00 */ lwz r0, 0(r3)
/* 8020B618 00207278 54 00 05 6B */ rlwinm. r0, r0, 0, 0x15, 0x15
/* 8020B61C 0020727C 40 82 02 48 */ bne lbl_8020B864
/* 8020B620 00207280 38 7D 00 70 */ addi r3, r29, 0x70
/* 8020B624 00207284 38 9E 00 04 */ addi r4, r30, 4
/* 8020B628 00207288 48 01 80 99 */ bl func_802236C0
/* 8020B62C 0020728C 73 E0 E3 80 */ andi. r0, r31, 0xe380
/* 8020B630 00207290 41 82 02 34 */ beq lbl_8020B864
/* 8020B634 00207294 57 E0 06 31 */ rlwinm. r0, r31, 0, 0x18, 0x18
/* 8020B638 00207298 41 82 00 4C */ beq lbl_8020B684
/* 8020B63C 0020729C 48 01 81 F5 */ bl func_80223830
/* 8020B640 002072A0 80 83 00 00 */ lwz r4, 0(r3)
/* 8020B644 002072A4 38 1C 43 FD */ addi r0, r28, 0x43fd
/* 8020B648 002072A8 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B64C 002072AC 7C 84 01 D6 */ mullw r4, r4, r0
/* 8020B650 002072B0 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B654 002072B4 C0 02 99 D4 */ lfs f0, lbl_80641FD4-_SDA2_BASE_(r2)
/* 8020B658 002072B8 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B65C 002072BC 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B660 002072C0 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B664 002072C4 90 83 00 00 */ stw r4, 0(r3)
/* 8020B668 002072C8 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8020B66C 002072CC C8 41 00 28 */ lfd f2, 0x28(r1)
/* 8020B670 002072D0 EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B674 002072D4 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B678 002072D8 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020B67C 002072DC D0 01 00 14 */ stfs f0, 0x14(r1)
/* 8020B680 002072E0 48 00 00 0C */ b lbl_8020B68C
lbl_8020B684:
/* 8020B684 002072E4 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020B688 002072E8 D0 01 00 14 */ stfs f0, 0x14(r1)
lbl_8020B68C:
/* 8020B68C 002072EC 57 E0 05 EF */ rlwinm. r0, r31, 0, 0x17, 0x17
/* 8020B690 002072F0 41 82 00 50 */ beq lbl_8020B6E0
/* 8020B694 002072F4 48 01 81 9D */ bl func_80223830
/* 8020B698 002072F8 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B69C 002072FC 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B6A0 00207300 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B6A4 00207304 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B6A8 00207308 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B6AC 0020730C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B6B0 00207310 C0 02 99 D4 */ lfs f0, lbl_80641FD4-_SDA2_BASE_(r2)
/* 8020B6B4 00207314 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B6B8 00207318 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B6BC 0020731C 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B6C0 00207320 90 83 00 00 */ stw r4, 0(r3)
/* 8020B6C4 00207324 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020B6C8 00207328 C8 41 00 20 */ lfd f2, 0x20(r1)
/* 8020B6CC 0020732C EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B6D0 00207330 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B6D4 00207334 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020B6D8 00207338 D0 01 00 18 */ stfs f0, 0x18(r1)
/* 8020B6DC 0020733C 48 00 00 0C */ b lbl_8020B6E8
lbl_8020B6E0:
/* 8020B6E0 00207340 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020B6E4 00207344 D0 01 00 18 */ stfs f0, 0x18(r1)
lbl_8020B6E8:
/* 8020B6E8 00207348 57 E0 05 AD */ rlwinm. r0, r31, 0, 0x16, 0x16
/* 8020B6EC 0020734C 41 82 00 50 */ beq lbl_8020B73C
/* 8020B6F0 00207350 48 01 81 41 */ bl func_80223830
/* 8020B6F4 00207354 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B6F8 00207358 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B6FC 0020735C 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B700 00207360 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B704 00207364 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B708 00207368 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B70C 0020736C C0 02 99 D4 */ lfs f0, lbl_80641FD4-_SDA2_BASE_(r2)
/* 8020B710 00207370 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B714 00207374 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B718 00207378 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B71C 0020737C 90 83 00 00 */ stw r4, 0(r3)
/* 8020B720 00207380 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8020B724 00207384 C8 41 00 28 */ lfd f2, 0x28(r1)
/* 8020B728 00207388 EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B72C 0020738C EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B730 00207390 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020B734 00207394 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 8020B738 00207398 48 00 00 0C */ b lbl_8020B744
lbl_8020B73C:
/* 8020B73C 0020739C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020B740 002073A0 D0 01 00 1C */ stfs f0, 0x1c(r1)
lbl_8020B744:
/* 8020B744 002073A4 57 E0 04 A5 */ rlwinm. r0, r31, 0, 0x12, 0x12
/* 8020B748 002073A8 41 82 00 58 */ beq lbl_8020B7A0
/* 8020B74C 002073AC 48 01 80 E5 */ bl func_80223830
/* 8020B750 002073B0 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B754 002073B4 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B758 002073B8 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B75C 002073BC C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B760 002073C0 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B764 002073C4 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B768 002073C8 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2)
/* 8020B76C 002073CC 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B770 002073D0 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B774 002073D4 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B778 002073D8 90 83 00 00 */ stw r4, 0(r3)
/* 8020B77C 002073DC 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020B780 002073E0 C8 41 00 20 */ lfd f2, 0x20(r1)
/* 8020B784 002073E4 EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B788 002073E8 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B78C 002073EC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020B790 002073F0 40 80 00 10 */ bge lbl_8020B7A0
/* 8020B794 002073F4 88 1D 00 5A */ lbz r0, 0x5a(r29)
/* 8020B798 002073F8 60 00 00 01 */ ori r0, r0, 1
/* 8020B79C 002073FC 98 1D 00 5A */ stb r0, 0x5a(r29)
lbl_8020B7A0:
/* 8020B7A0 00207400 57 E0 04 63 */ rlwinm. r0, r31, 0, 0x11, 0x11
/* 8020B7A4 00207404 41 82 00 58 */ beq lbl_8020B7FC
/* 8020B7A8 00207408 48 01 80 89 */ bl func_80223830
/* 8020B7AC 0020740C 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B7B0 00207410 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B7B4 00207414 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B7B8 00207418 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B7BC 0020741C 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B7C0 00207420 C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B7C4 00207424 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2)
/* 8020B7C8 00207428 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B7CC 0020742C 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B7D0 00207430 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B7D4 00207434 90 83 00 00 */ stw r4, 0(r3)
/* 8020B7D8 00207438 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8020B7DC 0020743C C8 41 00 28 */ lfd f2, 0x28(r1)
/* 8020B7E0 00207440 EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B7E4 00207444 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B7E8 00207448 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020B7EC 0020744C 40 80 00 10 */ bge lbl_8020B7FC
/* 8020B7F0 00207450 88 1D 00 5A */ lbz r0, 0x5a(r29)
/* 8020B7F4 00207454 60 00 00 02 */ ori r0, r0, 2
/* 8020B7F8 00207458 98 1D 00 5A */ stb r0, 0x5a(r29)
lbl_8020B7FC:
/* 8020B7FC 0020745C 57 E0 04 21 */ rlwinm. r0, r31, 0, 0x10, 0x10
/* 8020B800 00207460 41 82 00 58 */ beq lbl_8020B858
/* 8020B804 00207464 48 01 80 2D */ bl func_80223830
/* 8020B808 00207468 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B80C 0020746C 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B810 00207470 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B814 00207474 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B818 00207478 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B81C 0020747C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B820 00207480 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2)
/* 8020B824 00207484 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B828 00207488 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B82C 0020748C 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B830 00207490 90 83 00 00 */ stw r4, 0(r3)
/* 8020B834 00207494 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020B838 00207498 C8 41 00 20 */ lfd f2, 0x20(r1)
/* 8020B83C 0020749C EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B840 002074A0 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B844 002074A4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020B848 002074A8 40 80 00 10 */ bge lbl_8020B858
/* 8020B84C 002074AC 88 1D 00 5A */ lbz r0, 0x5a(r29)
/* 8020B850 002074B0 60 00 00 04 */ ori r0, r0, 4
/* 8020B854 002074B4 98 1D 00 5A */ stb r0, 0x5a(r29)
lbl_8020B858:
/* 8020B858 002074B8 38 7D 00 60 */ addi r3, r29, 0x60
/* 8020B85C 002074BC 38 81 00 14 */ addi r4, r1, 0x14
/* 8020B860 002074C0 48 01 7E 61 */ bl func_802236C0
lbl_8020B864:
/* 8020B864 002074C4 C0 1E 00 10 */ lfs f0, 0x10(r30)
/* 8020B868 002074C8 57 E0 05 6B */ rlwinm. r0, r31, 0, 0x15, 0x15
/* 8020B86C 002074CC D0 1D 00 8C */ stfs f0, 0x8c(r29)
/* 8020B870 002074D0 C0 1E 00 14 */ lfs f0, 0x14(r30)
/* 8020B874 002074D4 D0 1D 00 90 */ stfs f0, 0x90(r29)
/* 8020B878 002074D8 C0 1E 00 18 */ lfs f0, 0x18(r30)
/* 8020B87C 002074DC D0 1D 00 94 */ stfs f0, 0x94(r29)
/* 8020B880 002074E0 41 82 00 4C */ beq lbl_8020B8CC
/* 8020B884 002074E4 48 01 7F AD */ bl func_80223830
/* 8020B888 002074E8 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B88C 002074EC 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B890 002074F0 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B894 002074F4 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B898 002074F8 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B89C 002074FC C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B8A0 00207500 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B8A4 00207504 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B8A8 00207508 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B8AC 0020750C 90 83 00 00 */ stw r4, 0(r3)
/* 8020B8B0 00207510 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8020B8B4 00207514 C0 1D 00 8C */ lfs f0, 0x8c(r29)
/* 8020B8B8 00207518 C8 41 00 28 */ lfd f2, 0x28(r1)
/* 8020B8BC 0020751C EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B8C0 00207520 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B8C4 00207524 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020B8C8 00207528 D0 1D 00 8C */ stfs f0, 0x8c(r29)
lbl_8020B8CC:
/* 8020B8CC 0020752C 57 E0 05 29 */ rlwinm. r0, r31, 0, 0x14, 0x14
/* 8020B8D0 00207530 41 82 00 4C */ beq lbl_8020B91C
/* 8020B8D4 00207534 48 01 7F 5D */ bl func_80223830
/* 8020B8D8 00207538 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B8DC 0020753C 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B8E0 00207540 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B8E4 00207544 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B8E8 00207548 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B8EC 0020754C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B8F0 00207550 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B8F4 00207554 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B8F8 00207558 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B8FC 0020755C 90 83 00 00 */ stw r4, 0(r3)
/* 8020B900 00207560 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020B904 00207564 C0 1D 00 90 */ lfs f0, 0x90(r29)
/* 8020B908 00207568 C8 41 00 20 */ lfd f2, 0x20(r1)
/* 8020B90C 0020756C EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B910 00207570 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B914 00207574 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020B918 00207578 D0 1D 00 90 */ stfs f0, 0x90(r29)
lbl_8020B91C:
/* 8020B91C 0020757C 57 E0 04 E7 */ rlwinm. r0, r31, 0, 0x13, 0x13
/* 8020B920 00207580 41 82 00 4C */ beq lbl_8020B96C
/* 8020B924 00207584 48 01 7F 0D */ bl func_80223830
/* 8020B928 00207588 3C 80 00 03 */ lis r4, 0x000343FD@ha
/* 8020B92C 0020758C 80 A3 00 00 */ lwz r5, 0(r3)
/* 8020B930 00207590 38 04 43 FD */ addi r0, r4, 0x000343FD@l
/* 8020B934 00207594 C8 62 99 E0 */ lfd f3, lbl_80641FE0-_SDA2_BASE_(r2)
/* 8020B938 00207598 7C 85 01 D6 */ mullw r4, r5, r0
/* 8020B93C 0020759C C0 22 99 C8 */ lfs f1, lbl_80641FC8-_SDA2_BASE_(r2)
/* 8020B940 002075A0 3C 84 00 27 */ addis r4, r4, 0x27
/* 8020B944 002075A4 38 84 9E C3 */ addi r4, r4, -24893
/* 8020B948 002075A8 54 80 84 3E */ srwi r0, r4, 0x10
/* 8020B94C 002075AC 90 83 00 00 */ stw r4, 0(r3)
/* 8020B950 002075B0 90 01 00 2C */ stw r0, 0x2c(r1)
/* 8020B954 002075B4 C0 1D 00 94 */ lfs f0, 0x94(r29)
/* 8020B958 002075B8 C8 41 00 28 */ lfd f2, 0x28(r1)
/* 8020B95C 002075BC EC 42 18 28 */ fsubs f2, f2, f3
/* 8020B960 002075C0 EC 22 08 24 */ fdivs f1, f2, f1
/* 8020B964 002075C4 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020B968 002075C8 D0 1D 00 94 */ stfs f0, 0x94(r29)
lbl_8020B96C:
/* 8020B96C 002075CC 80 1E 00 00 */ lwz r0, 0(r30)
/* 8020B970 002075D0 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8020B974 002075D4 41 82 00 18 */ beq lbl_8020B98C
/* 8020B978 002075D8 80 7E 00 58 */ lwz r3, 0x58(r30)
/* 8020B97C 002075DC 38 03 FF FF */ addi r0, r3, -1
/* 8020B980 002075E0 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 8020B984 002075E4 48 01 0B A9 */ bl func_8021C52C
/* 8020B988 002075E8 B0 7D 00 58 */ sth r3, 0x58(r29)
lbl_8020B98C:
/* 8020B98C 002075EC 39 61 00 50 */ addi r11, r1, 0x50
/* 8020B990 002075F0 4B FB B7 E1 */ bl _restgpr_26
/* 8020B994 002075F4 80 01 00 54 */ lwz r0, 0x54(r1)
/* 8020B998 002075F8 7C 08 03 A6 */ mtlr r0
/* 8020B99C 002075FC 38 21 00 50 */ addi r1, r1, 0x50
/* 8020B9A0 00207600 4E 80 00 20 */ blr
.global func_8020B9A4
func_8020B9A4:
/* 8020B9A4 00207604 94 21 FF 10 */ stwu r1, -0xf0(r1)
/* 8020B9A8 00207608 7C 08 02 A6 */ mflr r0
/* 8020B9AC 0020760C 90 01 00 F4 */ stw r0, 0xf4(r1)
/* 8020B9B0 00207610 DB E1 00 E0 */ stfd f31, 0xe0(r1)
/* 8020B9B4 00207614 F3 E1 00 E8 */ psq_st f31, 232(r1), 0, qr0
/* 8020B9B8 00207618 DB C1 00 D0 */ stfd f30, 0xd0(r1)
/* 8020B9BC 0020761C F3 C1 00 D8 */ psq_st f30, 216(r1), 0, qr0
/* 8020B9C0 00207620 FF C0 08 90 */ fmr f30, f1
/* 8020B9C4 00207624 93 E1 00 CC */ stw r31, 0xcc(r1)
/* 8020B9C8 00207628 7C BF 2B 78 */ mr r31, r5
/* 8020B9CC 0020762C 93 C1 00 C8 */ stw r30, 0xc8(r1)
/* 8020B9D0 00207630 7C 9E 23 78 */ mr r30, r4
/* 8020B9D4 00207634 93 A1 00 C4 */ stw r29, 0xc4(r1)
/* 8020B9D8 00207638 7C 7D 1B 78 */ mr r29, r3
/* 8020B9DC 0020763C 93 81 00 C0 */ stw r28, 0xc0(r1)
/* 8020B9E0 00207640 83 85 00 00 */ lwz r28, 0(r5)
/* 8020B9E4 00207644 48 00 11 45 */ bl func_8020CB28
/* 8020B9E8 00207648 2C 03 00 00 */ cmpwi r3, 0
/* 8020B9EC 0020764C 41 81 00 0C */ bgt lbl_8020B9F8
/* 8020B9F0 00207650 38 60 00 00 */ li r3, 0
/* 8020B9F4 00207654 48 00 06 90 */ b lbl_8020C084
lbl_8020B9F8:
/* 8020B9F8 00207658 57 80 07 39 */ rlwinm. r0, r28, 0, 0x1c, 0x1c
/* 8020B9FC 0020765C 41 82 00 28 */ beq lbl_8020BA24
/* 8020BA00 00207660 C0 5D 00 00 */ lfs f2, 0(r29)
/* 8020BA04 00207664 C0 3D 00 04 */ lfs f1, 4(r29)
/* 8020BA08 00207668 C0 1F 00 5C */ lfs f0, 0x5c(r31)
/* 8020BA0C 0020766C EC 22 08 28 */ fsubs f1, f2, f1
/* 8020BA10 00207670 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BA14 00207674 4C 41 13 82 */ cror 2, 1, 2
/* 8020BA18 00207678 40 82 00 0C */ bne lbl_8020BA24
/* 8020BA1C 0020767C 38 60 00 00 */ li r3, 0
/* 8020BA20 00207680 48 00 06 64 */ b lbl_8020C084
lbl_8020BA24:
/* 8020BA24 00207684 C0 3D 00 04 */ lfs f1, 4(r29)
/* 8020BA28 00207688 C0 1D 00 00 */ lfs f0, 0(r29)
/* 8020BA2C 0020768C 80 7E 00 FC */ lwz r3, 0xfc(r30)
/* 8020BA30 00207690 EC 21 00 24 */ fdivs f1, f1, f0
/* 8020BA34 00207694 C0 02 99 D0 */ lfs f0, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BA38 00207698 80 03 00 00 */ lwz r0, 0(r3)
/* 8020BA3C 0020769C 54 00 05 6B */ rlwinm. r0, r0, 0, 0x15, 0x15
/* 8020BA40 002076A0 EF E0 08 28 */ fsubs f31, f0, f1
/* 8020BA44 002076A4 41 82 00 E0 */ beq lbl_8020BB24
/* 8020BA48 002076A8 C0 1D 00 14 */ lfs f0, 0x14(r29)
/* 8020BA4C 002076AC D0 01 00 60 */ stfs f0, 0x60(r1)
/* 8020BA50 002076B0 C0 1D 00 18 */ lfs f0, 0x18(r29)
/* 8020BA54 002076B4 D0 01 00 64 */ stfs f0, 0x64(r1)
/* 8020BA58 002076B8 C0 1D 00 1C */ lfs f0, 0x1c(r29)
/* 8020BA5C 002076BC D0 01 00 68 */ stfs f0, 0x68(r1)
/* 8020BA60 002076C0 80 7E 00 FC */ lwz r3, 0xfc(r30)
/* 8020BA64 002076C4 80 03 00 00 */ lwz r0, 0(r3)
/* 8020BA68 002076C8 54 00 06 73 */ rlwinm. r0, r0, 0, 0x19, 0x19
/* 8020BA6C 002076CC 41 82 00 48 */ beq lbl_8020BAB4
/* 8020BA70 002076D0 80 7D 00 20 */ lwz r3, 0x20(r29)
/* 8020BA74 002076D4 38 A1 00 40 */ addi r5, r1, 0x40
/* 8020BA78 002076D8 80 8D A1 F0 */ lwz r4, lbl_8063F4B0-_SDA_BASE_(r13)
/* 8020BA7C 002076DC 38 63 00 0C */ addi r3, r3, 0xc
/* 8020BA80 002076E0 38 84 01 20 */ addi r4, r4, 0x120
/* 8020BA84 002076E4 48 07 16 51 */ bl PSQUATDivide
/* 8020BA88 002076E8 C0 61 00 40 */ lfs f3, 0x40(r1)
/* 8020BA8C 002076EC 38 61 00 60 */ addi r3, r1, 0x60
/* 8020BA90 002076F0 C0 41 00 44 */ lfs f2, 0x44(r1)
/* 8020BA94 002076F4 38 81 00 70 */ addi r4, r1, 0x70
/* 8020BA98 002076F8 C0 21 00 48 */ lfs f1, 0x48(r1)
/* 8020BA9C 002076FC C0 01 00 4C */ lfs f0, 0x4c(r1)
/* 8020BAA0 00207700 D0 61 00 70 */ stfs f3, 0x70(r1)
/* 8020BAA4 00207704 D0 41 00 74 */ stfs f2, 0x74(r1)
/* 8020BAA8 00207708 D0 21 00 78 */ stfs f1, 0x78(r1)
/* 8020BAAC 0020770C D0 01 00 7C */ stfs f0, 0x7c(r1)
/* 8020BAB0 00207710 48 01 7F 5D */ bl func_80223A0C
lbl_8020BAB4:
/* 8020BAB4 00207714 C0 21 00 60 */ lfs f1, 0x60(r1)
/* 8020BAB8 00207718 C0 01 00 68 */ lfs f0, 0x68(r1)
/* 8020BABC 0020771C EC 21 00 72 */ fmuls f1, f1, f1
/* 8020BAC0 00207720 C0 42 99 CC */ lfs f2, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BAC4 00207724 EC 00 00 32 */ fmuls f0, f0, f0
/* 8020BAC8 00207728 EC 21 00 2A */ fadds f1, f1, f0
/* 8020BACC 0020772C FC 01 10 40 */ fcmpo cr0, f1, f2
/* 8020BAD0 00207730 4C 40 13 82 */ cror 2, 0, 2
/* 8020BAD4 00207734 40 82 00 08 */ bne lbl_8020BADC
/* 8020BAD8 00207738 48 00 00 0C */ b lbl_8020BAE4
lbl_8020BADC:
/* 8020BADC 0020773C 4B FC 8D 59 */ bl sqrt
/* 8020BAE0 00207740 FC 40 08 18 */ frsp f2, f1
lbl_8020BAE4:
/* 8020BAE4 00207744 C0 01 00 64 */ lfs f0, 0x64(r1)
/* 8020BAE8 00207748 FC 20 00 50 */ fneg f1, f0
/* 8020BAEC 0020774C 4B FC 8A F1 */ bl atan2
/* 8020BAF0 00207750 FC 00 08 18 */ frsp f0, f1
/* 8020BAF4 00207754 C0 41 00 68 */ lfs f2, 0x68(r1)
/* 8020BAF8 00207758 C0 21 00 60 */ lfs f1, 0x60(r1)
/* 8020BAFC 0020775C D0 01 00 80 */ stfs f0, 0x80(r1)
/* 8020BB00 00207760 4B FC 8A DD */ bl atan2
/* 8020BB04 00207764 FC 20 08 18 */ frsp f1, f1
/* 8020BB08 00207768 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BB0C 0020776C 38 7D 00 70 */ addi r3, r29, 0x70
/* 8020BB10 00207770 38 81 00 80 */ addi r4, r1, 0x80
/* 8020BB14 00207774 D0 01 00 88 */ stfs f0, 0x88(r1)
/* 8020BB18 00207778 D0 21 00 84 */ stfs f1, 0x84(r1)
/* 8020BB1C 0020777C 48 01 7B A5 */ bl func_802236C0
/* 8020BB20 00207780 48 00 01 98 */ b lbl_8020BCB8
lbl_8020BB24:
/* 8020BB24 00207784 57 80 06 B5 */ rlwinm. r0, r28, 0, 0x1a, 0x1a
/* 8020BB28 00207788 41 82 01 4C */ beq lbl_8020BC74
/* 8020BB2C 0020778C 80 7F 00 34 */ lwz r3, 0x34(r31)
/* 8020BB30 00207790 2C 03 00 00 */ cmpwi r3, 0
/* 8020BB34 00207794 41 82 00 10 */ beq lbl_8020BB44
/* 8020BB38 00207798 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BB3C 0020779C 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BB40 002077A0 40 82 00 0C */ bne lbl_8020BB4C
lbl_8020BB44:
/* 8020BB44 002077A4 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BB48 002077A8 48 00 00 40 */ b lbl_8020BB88
lbl_8020BB4C:
/* 8020BB4C 002077AC C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BB50 002077B0 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BB54 002077B4 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BB58 002077B8 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BB5C 002077BC 40 81 00 08 */ ble lbl_8020BB64
/* 8020BB60 002077C0 48 00 00 08 */ b lbl_8020BB68
lbl_8020BB64:
/* 8020BB64 002077C4 FC 20 08 50 */ fneg f1, f1
lbl_8020BB68:
/* 8020BB68 002077C8 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BB6C 002077CC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BB70 002077D0 4C 40 13 82 */ cror 2, 0, 2
/* 8020BB74 002077D4 40 82 00 0C */ bne lbl_8020BB80
/* 8020BB78 002077D8 C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BB7C 002077DC 48 00 00 0C */ b lbl_8020BB88
lbl_8020BB80:
/* 8020BB80 002077E0 FC 20 F8 90 */ fmr f1, f31
/* 8020BB84 002077E4 48 00 59 E1 */ bl func_80211564
lbl_8020BB88:
/* 8020BB88 002077E8 C0 1F 00 04 */ lfs f0, 4(r31)
/* 8020BB8C 002077EC EC 00 00 72 */ fmuls f0, f0, f1
/* 8020BB90 002077F0 D0 01 00 80 */ stfs f0, 0x80(r1)
/* 8020BB94 002077F4 80 7F 00 38 */ lwz r3, 0x38(r31)
/* 8020BB98 002077F8 2C 03 00 00 */ cmpwi r3, 0
/* 8020BB9C 002077FC 41 82 00 10 */ beq lbl_8020BBAC
/* 8020BBA0 00207800 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BBA4 00207804 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BBA8 00207808 40 82 00 0C */ bne lbl_8020BBB4
lbl_8020BBAC:
/* 8020BBAC 0020780C C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BBB0 00207810 48 00 00 40 */ b lbl_8020BBF0
lbl_8020BBB4:
/* 8020BBB4 00207814 C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BBB8 00207818 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BBBC 0020781C EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BBC0 00207820 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BBC4 00207824 40 81 00 08 */ ble lbl_8020BBCC
/* 8020BBC8 00207828 48 00 00 08 */ b lbl_8020BBD0
lbl_8020BBCC:
/* 8020BBCC 0020782C FC 20 08 50 */ fneg f1, f1
lbl_8020BBD0:
/* 8020BBD0 00207830 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BBD4 00207834 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BBD8 00207838 4C 40 13 82 */ cror 2, 0, 2
/* 8020BBDC 0020783C 40 82 00 0C */ bne lbl_8020BBE8
/* 8020BBE0 00207840 C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BBE4 00207844 48 00 00 0C */ b lbl_8020BBF0
lbl_8020BBE8:
/* 8020BBE8 00207848 FC 20 F8 90 */ fmr f1, f31
/* 8020BBEC 0020784C 48 00 59 79 */ bl func_80211564
lbl_8020BBF0:
/* 8020BBF0 00207850 C0 1F 00 08 */ lfs f0, 8(r31)
/* 8020BBF4 00207854 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020BBF8 00207858 D0 01 00 84 */ stfs f0, 0x84(r1)
/* 8020BBFC 0020785C 80 7F 00 3C */ lwz r3, 0x3c(r31)
/* 8020BC00 00207860 2C 03 00 00 */ cmpwi r3, 0
/* 8020BC04 00207864 41 82 00 10 */ beq lbl_8020BC14
/* 8020BC08 00207868 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BC0C 0020786C 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BC10 00207870 40 82 00 0C */ bne lbl_8020BC1C
lbl_8020BC14:
/* 8020BC14 00207874 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BC18 00207878 48 00 00 40 */ b lbl_8020BC58
lbl_8020BC1C:
/* 8020BC1C 0020787C C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BC20 00207880 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BC24 00207884 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BC28 00207888 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BC2C 0020788C 40 81 00 08 */ ble lbl_8020BC34
/* 8020BC30 00207890 48 00 00 08 */ b lbl_8020BC38
lbl_8020BC34:
/* 8020BC34 00207894 FC 20 08 50 */ fneg f1, f1
lbl_8020BC38:
/* 8020BC38 00207898 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BC3C 0020789C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BC40 002078A0 4C 40 13 82 */ cror 2, 0, 2
/* 8020BC44 002078A4 40 82 00 0C */ bne lbl_8020BC50
/* 8020BC48 002078A8 C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BC4C 002078AC 48 00 00 0C */ b lbl_8020BC58
lbl_8020BC50:
/* 8020BC50 002078B0 FC 20 F8 90 */ fmr f1, f31
/* 8020BC54 002078B4 48 00 59 11 */ bl func_80211564
lbl_8020BC58:
/* 8020BC58 002078B8 C0 1F 00 0C */ lfs f0, 0xc(r31)
/* 8020BC5C 002078BC 38 7D 00 70 */ addi r3, r29, 0x70
/* 8020BC60 002078C0 38 81 00 80 */ addi r4, r1, 0x80
/* 8020BC64 002078C4 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020BC68 002078C8 D0 01 00 88 */ stfs f0, 0x88(r1)
/* 8020BC6C 002078CC 48 01 7A 55 */ bl func_802236C0
/* 8020BC70 002078D0 48 00 00 48 */ b lbl_8020BCB8
lbl_8020BC74:
/* 8020BC74 002078D4 FC 20 F0 90 */ fmr f1, f30
/* 8020BC78 002078D8 38 7D 00 8C */ addi r3, r29, 0x8c
/* 8020BC7C 002078DC 38 81 00 30 */ addi r4, r1, 0x30
/* 8020BC80 002078E0 48 07 10 8D */ bl PSVECScale
/* 8020BC84 002078E4 C0 41 00 30 */ lfs f2, 0x30(r1)
/* 8020BC88 002078E8 38 61 00 50 */ addi r3, r1, 0x50
/* 8020BC8C 002078EC C0 21 00 34 */ lfs f1, 0x34(r1)
/* 8020BC90 002078F0 38 81 00 80 */ addi r4, r1, 0x80
/* 8020BC94 002078F4 C0 01 00 38 */ lfs f0, 0x38(r1)
/* 8020BC98 002078F8 D0 41 00 80 */ stfs f2, 0x80(r1)
/* 8020BC9C 002078FC D0 21 00 84 */ stfs f1, 0x84(r1)
/* 8020BCA0 00207900 D0 01 00 88 */ stfs f0, 0x88(r1)
/* 8020BCA4 00207904 48 01 7A 1D */ bl func_802236C0
/* 8020BCA8 00207908 38 7D 00 70 */ addi r3, r29, 0x70
/* 8020BCAC 0020790C 38 81 00 50 */ addi r4, r1, 0x50
/* 8020BCB0 00207910 7C 65 1B 78 */ mr r5, r3
/* 8020BCB4 00207914 48 07 13 71 */ bl PSQUATMultiply
lbl_8020BCB8:
/* 8020BCB8 00207918 88 1D 00 5A */ lbz r0, 0x5a(r29)
/* 8020BCBC 0020791C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8020BCC0 00207920 41 82 00 10 */ beq lbl_8020BCD0
/* 8020BCC4 00207924 C0 1D 00 70 */ lfs f0, 0x70(r29)
/* 8020BCC8 00207928 FC 00 00 50 */ fneg f0, f0
/* 8020BCCC 0020792C 48 00 00 08 */ b lbl_8020BCD4
lbl_8020BCD0:
/* 8020BCD0 00207930 C0 1D 00 70 */ lfs f0, 0x70(r29)
lbl_8020BCD4:
/* 8020BCD4 00207934 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 8020BCD8 00207938 88 1D 00 5A */ lbz r0, 0x5a(r29)
/* 8020BCDC 0020793C 54 00 07 BD */ rlwinm. r0, r0, 0, 0x1e, 0x1e
/* 8020BCE0 00207940 41 82 00 14 */ beq lbl_8020BCF4
/* 8020BCE4 00207944 C0 1D 00 74 */ lfs f0, 0x74(r29)
/* 8020BCE8 00207948 FC 00 00 50 */ fneg f0, f0
/* 8020BCEC 0020794C D0 01 00 74 */ stfs f0, 0x74(r1)
/* 8020BCF0 00207950 48 00 00 0C */ b lbl_8020BCFC
lbl_8020BCF4:
/* 8020BCF4 00207954 C0 1D 00 74 */ lfs f0, 0x74(r29)
/* 8020BCF8 00207958 D0 01 00 74 */ stfs f0, 0x74(r1)
lbl_8020BCFC:
/* 8020BCFC 0020795C 88 1D 00 5A */ lbz r0, 0x5a(r29)
/* 8020BD00 00207960 54 00 07 7B */ rlwinm. r0, r0, 0, 0x1d, 0x1d
/* 8020BD04 00207964 41 82 00 14 */ beq lbl_8020BD18
/* 8020BD08 00207968 C0 1D 00 78 */ lfs f0, 0x78(r29)
/* 8020BD0C 0020796C FC 00 00 50 */ fneg f0, f0
/* 8020BD10 00207970 D0 01 00 78 */ stfs f0, 0x78(r1)
/* 8020BD14 00207974 48 00 00 0C */ b lbl_8020BD20
lbl_8020BD18:
/* 8020BD18 00207978 C0 1D 00 78 */ lfs f0, 0x78(r29)
/* 8020BD1C 0020797C D0 01 00 78 */ stfs f0, 0x78(r1)
lbl_8020BD20:
/* 8020BD20 00207980 C0 1D 00 7C */ lfs f0, 0x7c(r29)
/* 8020BD24 00207984 D0 01 00 7C */ stfs f0, 0x7c(r1)
/* 8020BD28 00207988 80 1F 00 00 */ lwz r0, 0(r31)
/* 8020BD2C 0020798C 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8020BD30 00207990 40 82 01 A8 */ bne lbl_8020BED8
/* 8020BD34 00207994 FC 20 F8 90 */ fmr f1, f31
/* 8020BD38 00207998 80 9F 00 4C */ lwz r4, 0x4c(r31)
/* 8020BD3C 0020799C 38 7D 00 5C */ addi r3, r29, 0x5c
/* 8020BD40 002079A0 48 00 5A 21 */ bl func_80211760
/* 8020BD44 002079A4 88 1D 00 5C */ lbz r0, 0x5c(r29)
/* 8020BD48 002079A8 20 00 00 FF */ subfic r0, r0, 0xff
/* 8020BD4C 002079AC 98 01 00 0A */ stb r0, 0xa(r1)
/* 8020BD50 002079B0 E0 41 A0 0A */ psq_l f2, 10(r1), 1, qr2
/* 8020BD54 002079B4 C0 1E 00 3C */ lfs f0, 0x3c(r30)
/* 8020BD58 002079B8 C0 22 99 D8 */ lfs f1, lbl_80641FD8-_SDA2_BASE_(r2)
/* 8020BD5C 002079BC EC 02 00 32 */ fmuls f0, f2, f0
/* 8020BD60 002079C0 EC 01 00 2A */ fadds f0, f1, f0
/* 8020BD64 002079C4 F0 01 A0 1C */ psq_st f0, 28(r1), 1, qr2
/* 8020BD68 002079C8 88 81 00 1C */ lbz r4, 0x1c(r1)
/* 8020BD6C 002079CC 88 7D 00 5C */ lbz r3, 0x5c(r29)
/* 8020BD70 002079D0 88 1D 00 5D */ lbz r0, 0x5d(r29)
/* 8020BD74 002079D4 7C 63 22 14 */ add r3, r3, r4
/* 8020BD78 002079D8 98 7D 00 5C */ stb r3, 0x5c(r29)
/* 8020BD7C 002079DC 20 00 00 FF */ subfic r0, r0, 0xff
/* 8020BD80 002079E0 98 01 00 09 */ stb r0, 9(r1)
/* 8020BD84 002079E4 E0 41 A0 09 */ psq_l f2, 9(r1), 1, qr2
/* 8020BD88 002079E8 C0 1E 00 40 */ lfs f0, 0x40(r30)
/* 8020BD8C 002079EC EC 02 00 32 */ fmuls f0, f2, f0
/* 8020BD90 002079F0 EC 01 00 2A */ fadds f0, f1, f0
/* 8020BD94 002079F4 F0 01 A0 18 */ psq_st f0, 24(r1), 1, qr2
/* 8020BD98 002079F8 88 1D 00 5E */ lbz r0, 0x5e(r29)
/* 8020BD9C 002079FC 88 81 00 18 */ lbz r4, 0x18(r1)
/* 8020BDA0 00207A00 88 7D 00 5D */ lbz r3, 0x5d(r29)
/* 8020BDA4 00207A04 20 00 00 FF */ subfic r0, r0, 0xff
/* 8020BDA8 00207A08 7C 63 22 14 */ add r3, r3, r4
/* 8020BDAC 00207A0C 98 7D 00 5D */ stb r3, 0x5d(r29)
/* 8020BDB0 00207A10 98 01 00 08 */ stb r0, 8(r1)
/* 8020BDB4 00207A14 E0 41 A0 08 */ psq_l f2, 8(r1), 1, qr2
/* 8020BDB8 00207A18 C0 1E 00 44 */ lfs f0, 0x44(r30)
/* 8020BDBC 00207A1C EC 02 00 32 */ fmuls f0, f2, f0
/* 8020BDC0 00207A20 EC 01 00 2A */ fadds f0, f1, f0
/* 8020BDC4 00207A24 F0 01 A0 14 */ psq_st f0, 20(r1), 1, qr2
/* 8020BDC8 00207A28 88 61 00 14 */ lbz r3, 0x14(r1)
/* 8020BDCC 00207A2C 88 1D 00 5E */ lbz r0, 0x5e(r29)
/* 8020BDD0 00207A30 7C 00 1A 14 */ add r0, r0, r3
/* 8020BDD4 00207A34 98 1D 00 5E */ stb r0, 0x5e(r29)
/* 8020BDD8 00207A38 80 7F 00 50 */ lwz r3, 0x50(r31)
/* 8020BDDC 00207A3C 2C 03 00 00 */ cmpwi r3, 0
/* 8020BDE0 00207A40 41 82 00 10 */ beq lbl_8020BDF0
/* 8020BDE4 00207A44 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BDE8 00207A48 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BDEC 00207A4C 40 82 00 0C */ bne lbl_8020BDF8
lbl_8020BDF0:
/* 8020BDF0 00207A50 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BDF4 00207A54 48 00 00 40 */ b lbl_8020BE34
lbl_8020BDF8:
/* 8020BDF8 00207A58 C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BDFC 00207A5C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BE00 00207A60 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BE04 00207A64 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BE08 00207A68 40 81 00 08 */ ble lbl_8020BE10
/* 8020BE0C 00207A6C 48 00 00 08 */ b lbl_8020BE14
lbl_8020BE10:
/* 8020BE10 00207A70 FC 20 08 50 */ fneg f1, f1
lbl_8020BE14:
/* 8020BE14 00207A74 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BE18 00207A78 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BE1C 00207A7C 4C 40 13 82 */ cror 2, 0, 2
/* 8020BE20 00207A80 40 82 00 0C */ bne lbl_8020BE2C
/* 8020BE24 00207A84 C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BE28 00207A88 48 00 00 0C */ b lbl_8020BE34
lbl_8020BE2C:
/* 8020BE2C 00207A8C FC 20 F8 90 */ fmr f1, f31
/* 8020BE30 00207A90 48 00 57 35 */ bl func_80211564
lbl_8020BE34:
/* 8020BE34 00207A94 C0 1E 00 48 */ lfs f0, 0x48(r30)
/* 8020BE38 00207A98 C0 42 99 EC */ lfs f2, lbl_80641FEC-_SDA2_BASE_(r2)
/* 8020BE3C 00207A9C EC 21 00 32 */ fmuls f1, f1, f0
/* 8020BE40 00207AA0 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2)
/* 8020BE44 00207AA4 EC 22 00 72 */ fmuls f1, f2, f1
/* 8020BE48 00207AA8 EC 00 08 2A */ fadds f0, f0, f1
/* 8020BE4C 00207AAC F0 01 A0 10 */ psq_st f0, 16(r1), 1, qr2
/* 8020BE50 00207AB0 88 01 00 10 */ lbz r0, 0x10(r1)
/* 8020BE54 00207AB4 98 1D 00 5F */ stb r0, 0x5f(r29)
/* 8020BE58 00207AB8 80 7F 00 54 */ lwz r3, 0x54(r31)
/* 8020BE5C 00207ABC 2C 03 00 00 */ cmpwi r3, 0
/* 8020BE60 00207AC0 41 82 00 10 */ beq lbl_8020BE70
/* 8020BE64 00207AC4 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BE68 00207AC8 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BE6C 00207ACC 40 82 00 0C */ bne lbl_8020BE78
lbl_8020BE70:
/* 8020BE70 00207AD0 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BE74 00207AD4 48 00 00 40 */ b lbl_8020BEB4
lbl_8020BE78:
/* 8020BE78 00207AD8 C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BE7C 00207ADC C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BE80 00207AE0 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BE84 00207AE4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BE88 00207AE8 40 81 00 08 */ ble lbl_8020BE90
/* 8020BE8C 00207AEC 48 00 00 08 */ b lbl_8020BE94
lbl_8020BE90:
/* 8020BE90 00207AF0 FC 20 08 50 */ fneg f1, f1
lbl_8020BE94:
/* 8020BE94 00207AF4 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BE98 00207AF8 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BE9C 00207AFC 4C 40 13 82 */ cror 2, 0, 2
/* 8020BEA0 00207B00 40 82 00 0C */ bne lbl_8020BEAC
/* 8020BEA4 00207B04 C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BEA8 00207B08 48 00 00 0C */ b lbl_8020BEB4
lbl_8020BEAC:
/* 8020BEAC 00207B0C FC 20 F8 90 */ fmr f1, f31
/* 8020BEB0 00207B10 48 00 56 B5 */ bl func_80211564
lbl_8020BEB4:
/* 8020BEB4 00207B14 C0 1E 00 48 */ lfs f0, 0x48(r30)
/* 8020BEB8 00207B18 C0 42 99 EC */ lfs f2, lbl_80641FEC-_SDA2_BASE_(r2)
/* 8020BEBC 00207B1C EC 21 00 32 */ fmuls f1, f1, f0
/* 8020BEC0 00207B20 C0 02 99 D8 */ lfs f0, lbl_80641FD8-_SDA2_BASE_(r2)
/* 8020BEC4 00207B24 EC 22 00 72 */ fmuls f1, f2, f1
/* 8020BEC8 00207B28 EC 00 08 2A */ fadds f0, f0, f1
/* 8020BECC 00207B2C F0 01 A0 0C */ psq_st f0, 12(r1), 1, qr2
/* 8020BED0 00207B30 88 01 00 0C */ lbz r0, 0xc(r1)
/* 8020BED4 00207B34 98 1D 00 5B */ stb r0, 0x5b(r29)
lbl_8020BED8:
/* 8020BED8 00207B38 80 7F 00 40 */ lwz r3, 0x40(r31)
/* 8020BEDC 00207B3C 2C 03 00 00 */ cmpwi r3, 0
/* 8020BEE0 00207B40 41 82 00 10 */ beq lbl_8020BEF0
/* 8020BEE4 00207B44 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BEE8 00207B48 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BEEC 00207B4C 40 82 00 0C */ bne lbl_8020BEF8
lbl_8020BEF0:
/* 8020BEF0 00207B50 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BEF4 00207B54 48 00 00 40 */ b lbl_8020BF34
lbl_8020BEF8:
/* 8020BEF8 00207B58 C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BEFC 00207B5C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BF00 00207B60 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BF04 00207B64 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BF08 00207B68 40 81 00 08 */ ble lbl_8020BF10
/* 8020BF0C 00207B6C 48 00 00 08 */ b lbl_8020BF14
lbl_8020BF10:
/* 8020BF10 00207B70 FC 20 08 50 */ fneg f1, f1
lbl_8020BF14:
/* 8020BF14 00207B74 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BF18 00207B78 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BF1C 00207B7C 4C 40 13 82 */ cror 2, 0, 2
/* 8020BF20 00207B80 40 82 00 0C */ bne lbl_8020BF2C
/* 8020BF24 00207B84 C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BF28 00207B88 48 00 00 0C */ b lbl_8020BF34
lbl_8020BF2C:
/* 8020BF2C 00207B8C FC 20 F8 90 */ fmr f1, f31
/* 8020BF30 00207B90 48 00 56 35 */ bl func_80211564
lbl_8020BF34:
/* 8020BF34 00207B94 C0 1D 00 80 */ lfs f0, 0x80(r29)
/* 8020BF38 00207B98 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020BF3C 00207B9C D0 01 00 80 */ stfs f0, 0x80(r1)
/* 8020BF40 00207BA0 80 7F 00 44 */ lwz r3, 0x44(r31)
/* 8020BF44 00207BA4 2C 03 00 00 */ cmpwi r3, 0
/* 8020BF48 00207BA8 41 82 00 10 */ beq lbl_8020BF58
/* 8020BF4C 00207BAC 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BF50 00207BB0 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BF54 00207BB4 40 82 00 0C */ bne lbl_8020BF60
lbl_8020BF58:
/* 8020BF58 00207BB8 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BF5C 00207BBC 48 00 00 40 */ b lbl_8020BF9C
lbl_8020BF60:
/* 8020BF60 00207BC0 C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BF64 00207BC4 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BF68 00207BC8 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BF6C 00207BCC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BF70 00207BD0 40 81 00 08 */ ble lbl_8020BF78
/* 8020BF74 00207BD4 48 00 00 08 */ b lbl_8020BF7C
lbl_8020BF78:
/* 8020BF78 00207BD8 FC 20 08 50 */ fneg f1, f1
lbl_8020BF7C:
/* 8020BF7C 00207BDC C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BF80 00207BE0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BF84 00207BE4 4C 40 13 82 */ cror 2, 0, 2
/* 8020BF88 00207BE8 40 82 00 0C */ bne lbl_8020BF94
/* 8020BF8C 00207BEC C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BF90 00207BF0 48 00 00 0C */ b lbl_8020BF9C
lbl_8020BF94:
/* 8020BF94 00207BF4 FC 20 F8 90 */ fmr f1, f31
/* 8020BF98 00207BF8 48 00 55 CD */ bl func_80211564
lbl_8020BF9C:
/* 8020BF9C 00207BFC C0 1D 00 84 */ lfs f0, 0x84(r29)
/* 8020BFA0 00207C00 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020BFA4 00207C04 D0 01 00 84 */ stfs f0, 0x84(r1)
/* 8020BFA8 00207C08 80 7F 00 48 */ lwz r3, 0x48(r31)
/* 8020BFAC 00207C0C 2C 03 00 00 */ cmpwi r3, 0
/* 8020BFB0 00207C10 41 82 00 10 */ beq lbl_8020BFC0
/* 8020BFB4 00207C14 88 03 00 00 */ lbz r0, 0(r3)
/* 8020BFB8 00207C18 54 00 07 BF */ clrlwi. r0, r0, 0x1e
/* 8020BFBC 00207C1C 40 82 00 0C */ bne lbl_8020BFC8
lbl_8020BFC0:
/* 8020BFC0 00207C20 C0 22 99 D0 */ lfs f1, lbl_80641FD0-_SDA2_BASE_(r2)
/* 8020BFC4 00207C24 48 00 00 40 */ b lbl_8020C004
lbl_8020BFC8:
/* 8020BFC8 00207C28 C0 23 00 08 */ lfs f1, 8(r3)
/* 8020BFCC 00207C2C C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020BFD0 00207C30 EC 21 F8 28 */ fsubs f1, f1, f31
/* 8020BFD4 00207C34 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BFD8 00207C38 40 81 00 08 */ ble lbl_8020BFE0
/* 8020BFDC 00207C3C 48 00 00 08 */ b lbl_8020BFE4
lbl_8020BFE0:
/* 8020BFE0 00207C40 FC 20 08 50 */ fneg f1, f1
lbl_8020BFE4:
/* 8020BFE4 00207C44 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020BFE8 00207C48 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020BFEC 00207C4C 4C 40 13 82 */ cror 2, 0, 2
/* 8020BFF0 00207C50 40 82 00 0C */ bne lbl_8020BFFC
/* 8020BFF4 00207C54 C0 23 00 04 */ lfs f1, 4(r3)
/* 8020BFF8 00207C58 48 00 00 0C */ b lbl_8020C004
lbl_8020BFFC:
/* 8020BFFC 00207C5C FC 20 F8 90 */ fmr f1, f31
/* 8020C000 00207C60 48 00 55 65 */ bl func_80211564
lbl_8020C004:
/* 8020C004 00207C64 C0 1D 00 88 */ lfs f0, 0x88(r29)
/* 8020C008 00207C68 38 7D 00 60 */ addi r3, r29, 0x60
/* 8020C00C 00207C6C 38 81 00 70 */ addi r4, r1, 0x70
/* 8020C010 00207C70 38 A1 00 20 */ addi r5, r1, 0x20
/* 8020C014 00207C74 EC 00 00 72 */ fmuls f0, f0, f1
/* 8020C018 00207C78 D0 01 00 88 */ stfs f0, 0x88(r1)
/* 8020C01C 00207C7C C0 1D 00 08 */ lfs f0, 8(r29)
/* 8020C020 00207C80 D0 01 00 90 */ stfs f0, 0x90(r1)
/* 8020C024 00207C84 C0 1D 00 0C */ lfs f0, 0xc(r29)
/* 8020C028 00207C88 D0 01 00 94 */ stfs f0, 0x94(r1)
/* 8020C02C 00207C8C C0 1D 00 10 */ lfs f0, 0x10(r29)
/* 8020C030 00207C90 D0 01 00 98 */ stfs f0, 0x98(r1)
/* 8020C034 00207C94 48 07 0F F1 */ bl PSQUATMultiply
/* 8020C038 00207C98 C0 C1 00 20 */ lfs f6, 0x20(r1)
/* 8020C03C 00207C9C 38 7D 00 30 */ addi r3, r29, 0x30
/* 8020C040 00207CA0 C0 A1 00 24 */ lfs f5, 0x24(r1)
/* 8020C044 00207CA4 38 A1 00 90 */ addi r5, r1, 0x90
/* 8020C048 00207CA8 C0 81 00 28 */ lfs f4, 0x28(r1)
/* 8020C04C 00207CAC C0 61 00 2C */ lfs f3, 0x2c(r1)
/* 8020C050 00207CB0 C0 41 00 80 */ lfs f2, 0x80(r1)
/* 8020C054 00207CB4 C0 21 00 84 */ lfs f1, 0x84(r1)
/* 8020C058 00207CB8 C0 01 00 88 */ lfs f0, 0x88(r1)
/* 8020C05C 00207CBC D0 C1 00 9C */ stfs f6, 0x9c(r1)
/* 8020C060 00207CC0 D0 A1 00 A0 */ stfs f5, 0xa0(r1)
/* 8020C064 00207CC4 D0 81 00 A4 */ stfs f4, 0xa4(r1)
/* 8020C068 00207CC8 D0 61 00 A8 */ stfs f3, 0xa8(r1)
/* 8020C06C 00207CCC D0 41 00 AC */ stfs f2, 0xac(r1)
/* 8020C070 00207CD0 D0 21 00 B0 */ stfs f1, 0xb0(r1)
/* 8020C074 00207CD4 D0 01 00 B4 */ stfs f0, 0xb4(r1)
/* 8020C078 00207CD8 80 9D 00 20 */ lwz r4, 0x20(r29)
/* 8020C07C 00207CDC 48 00 10 B5 */ bl func_8020D130
/* 8020C080 00207CE0 38 60 00 01 */ li r3, 1
lbl_8020C084:
/* 8020C084 00207CE4 E3 E1 00 E8 */ psq_l f31, 232(r1), 0, qr0
/* 8020C088 00207CE8 CB E1 00 E0 */ lfd f31, 0xe0(r1)
/* 8020C08C 00207CEC E3 C1 00 D8 */ psq_l f30, 216(r1), 0, qr0
/* 8020C090 00207CF0 CB C1 00 D0 */ lfd f30, 0xd0(r1)
/* 8020C094 00207CF4 83 E1 00 CC */ lwz r31, 0xcc(r1)
/* 8020C098 00207CF8 83 C1 00 C8 */ lwz r30, 0xc8(r1)
/* 8020C09C 00207CFC 83 A1 00 C4 */ lwz r29, 0xc4(r1)
/* 8020C0A0 00207D00 80 01 00 F4 */ lwz r0, 0xf4(r1)
/* 8020C0A4 00207D04 83 81 00 C0 */ lwz r28, 0xc0(r1)
/* 8020C0A8 00207D08 7C 08 03 A6 */ mtlr r0
/* 8020C0AC 00207D0C 38 21 00 F0 */ addi r1, r1, 0xf0
/* 8020C0B0 00207D10 4E 80 00 20 */ blr
.global func_8020C0B4
func_8020C0B4:
/* 8020C0B4 00207D14 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 8020C0B8 00207D18 7C 08 02 A6 */ mflr r0
/* 8020C0BC 00207D1C 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 8020C0C0 00207D20 DB E1 00 90 */ stfd f31, 0x90(r1)
/* 8020C0C4 00207D24 F3 E1 00 98 */ psq_st f31, 152(r1), 0, qr0
/* 8020C0C8 00207D28 39 61 00 90 */ addi r11, r1, 0x90
/* 8020C0CC 00207D2C 4B FB B0 55 */ bl _savegpr_25
/* 8020C0D0 00207D30 C0 23 00 4C */ lfs f1, 0x4c(r3)
/* 8020C0D4 00207D34 7C 7B 1B 78 */ mr r27, r3
/* 8020C0D8 00207D38 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020C0DC 00207D3C 7C 9C 23 78 */ mr r28, r4
/* 8020C0E0 00207D40 7C BD 2B 78 */ mr r29, r5
/* 8020C0E4 00207D44 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C0E8 00207D48 40 80 00 10 */ bge lbl_8020C0F8
/* 8020C0EC 00207D4C C0 02 99 F0 */ lfs f0, lbl_80641FF0-_SDA2_BASE_(r2)
/* 8020C0F0 00207D50 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C0F4 00207D54 41 81 04 EC */ bgt lbl_8020C5E0
lbl_8020C0F8:
/* 8020C0F8 00207D58 C0 23 00 50 */ lfs f1, 0x50(r3)
/* 8020C0FC 00207D5C C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020C100 00207D60 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C104 00207D64 40 80 00 10 */ bge lbl_8020C114
/* 8020C108 00207D68 C0 02 99 F0 */ lfs f0, lbl_80641FF0-_SDA2_BASE_(r2)
/* 8020C10C 00207D6C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C110 00207D70 41 81 04 D0 */ bgt lbl_8020C5E0
lbl_8020C114:
/* 8020C114 00207D74 C0 23 00 54 */ lfs f1, 0x54(r3)
/* 8020C118 00207D78 C0 02 99 E8 */ lfs f0, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020C11C 00207D7C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C120 00207D80 40 80 00 14 */ bge lbl_8020C134
/* 8020C124 00207D84 C0 02 99 F0 */ lfs f0, lbl_80641FF0-_SDA2_BASE_(r2)
/* 8020C128 00207D88 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C12C 00207D8C 40 81 00 08 */ ble lbl_8020C134
/* 8020C130 00207D90 48 00 04 B0 */ b lbl_8020C5E0
lbl_8020C134:
/* 8020C134 00207D94 80 05 00 00 */ lwz r0, 0(r5)
/* 8020C138 00207D98 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8020C13C 00207D9C 41 82 01 20 */ beq lbl_8020C25C
/* 8020C140 00207DA0 38 61 00 08 */ addi r3, r1, 8
/* 8020C144 00207DA4 38 9B 00 3C */ addi r4, r27, 0x3c
/* 8020C148 00207DA8 48 07 04 79 */ bl PSMTXQuat
/* 8020C14C 00207DAC C0 3B 00 4C */ lfs f1, 0x4c(r27)
/* 8020C150 00207DB0 38 61 00 38 */ addi r3, r1, 0x38
/* 8020C154 00207DB4 C0 5B 00 50 */ lfs f2, 0x50(r27)
/* 8020C158 00207DB8 C0 7B 00 54 */ lfs f3, 0x54(r27)
/* 8020C15C 00207DBC 48 07 03 E5 */ bl PSMTXScale
/* 8020C160 00207DC0 38 81 00 38 */ addi r4, r1, 0x38
/* 8020C164 00207DC4 38 61 00 08 */ addi r3, r1, 8
/* 8020C168 00207DC8 7C 85 23 78 */ mr r5, r4
/* 8020C16C 00207DCC 48 06 FE 21 */ bl PSMTXConcat
/* 8020C170 00207DD0 38 61 00 38 */ addi r3, r1, 0x38
/* 8020C174 00207DD4 C0 3B 00 30 */ lfs f1, 0x30(r27)
/* 8020C178 00207DD8 C0 5B 00 34 */ lfs f2, 0x34(r27)
/* 8020C17C 00207DDC 7C 64 1B 78 */ mr r4, r3
/* 8020C180 00207DE0 C0 7B 00 38 */ lfs f3, 0x38(r27)
/* 8020C184 00207DE4 48 07 03 71 */ bl PSMTXTransApply
/* 8020C188 00207DE8 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8020C18C 00207DEC 38 00 00 00 */ li r0, 0
/* 8020C190 00207DF0 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8020C194 00207DF4 90 03 01 88 */ stw r0, 0x188(r3)
/* 8020C198 00207DF8 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8020C19C 00207DFC 80 03 00 10 */ lwz r0, 0x10(r3)
/* 8020C1A0 00207E00 60 00 00 04 */ ori r0, r0, 4
/* 8020C1A4 00207E04 90 03 00 10 */ stw r0, 0x10(r3)
/* 8020C1A8 00207E08 80 64 16 38 */ lwz r3, 0x1638(r4)
/* 8020C1AC 00207E0C 80 03 00 00 */ lwz r0, 0(r3)
/* 8020C1B0 00207E10 60 00 00 02 */ ori r0, r0, 2
/* 8020C1B4 00207E14 90 03 00 00 */ stw r0, 0(r3)
/* 8020C1B8 00207E18 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C1BC 00207E1C C0 3B 00 00 */ lfs f1, 0(r27)
/* 8020C1C0 00207E20 C0 1B 00 04 */ lfs f0, 4(r27)
/* 8020C1C4 00207E24 38 03 FF FF */ addi r0, r3, -1
/* 8020C1C8 00207E28 54 19 04 3E */ clrlwi r25, r0, 0x10
/* 8020C1CC 00207E2C A8 9B 00 58 */ lha r4, 0x58(r27)
/* 8020C1D0 00207E30 EC 21 00 28 */ fsubs f1, f1, f0
/* 8020C1D4 00207E34 7F 23 CB 78 */ mr r3, r25
/* 8020C1D8 00207E38 48 01 02 51 */ bl func_8021C428
/* 8020C1DC 00207E3C 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8020C1E0 00207E40 38 81 00 38 */ addi r4, r1, 0x38
/* 8020C1E4 00207E44 80 63 16 E8 */ lwz r3, 0x16e8(r3)
/* 8020C1E8 00207E48 48 02 A6 91 */ bl func_80236878
/* 8020C1EC 00207E4C 80 8D A4 70 */ lwz r4, lbl_8063F730-_SDA_BASE_(r13)
/* 8020C1F0 00207E50 2C 04 00 00 */ cmpwi r4, 0
/* 8020C1F4 00207E54 40 82 00 0C */ bne lbl_8020C200
/* 8020C1F8 00207E58 38 A0 00 00 */ li r5, 0
/* 8020C1FC 00207E5C 48 00 00 3C */ b lbl_8020C238
lbl_8020C200:
/* 8020C200 00207E60 80 A4 00 14 */ lwz r5, 0x14(r4)
/* 8020C204 00207E64 2C 05 00 00 */ cmpwi r5, 0
/* 8020C208 00207E68 41 82 00 2C */ beq lbl_8020C234
/* 8020C20C 00207E6C 80 65 00 00 */ lwz r3, 0(r5)
/* 8020C210 00207E70 80 04 00 00 */ lwz r0, 0(r4)
/* 8020C214 00207E74 80 83 00 00 */ lwz r4, 0(r3)
/* 8020C218 00207E78 80 65 00 04 */ lwz r3, 4(r5)
/* 8020C21C 00207E7C 54 05 80 1E */ slwi r5, r0, 0x10
/* 8020C220 00207E80 54 84 40 2E */ slwi r4, r4, 8
/* 8020C224 00207E84 88 03 00 04 */ lbz r0, 4(r3)
/* 8020C228 00207E88 7C A3 23 78 */ or r3, r5, r4
/* 8020C22C 00207E8C 7C 65 03 78 */ or r5, r3, r0
/* 8020C230 00207E90 48 00 00 08 */ b lbl_8020C238
lbl_8020C234:
/* 8020C234 00207E94 38 A0 00 00 */ li r5, 0
lbl_8020C238:
/* 8020C238 00207E98 A8 9B 00 58 */ lha r4, 0x58(r27)
/* 8020C23C 00207E9C 7F 23 CB 78 */ mr r3, r25
/* 8020C240 00207EA0 48 01 02 11 */ bl func_8021C450
/* 8020C244 00207EA4 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8020C248 00207EA8 80 83 16 E8 */ lwz r4, 0x16e8(r3)
/* 8020C24C 00207EAC 80 64 00 04 */ lwz r3, 4(r4)
/* 8020C250 00207EB0 38 03 FF 6C */ addi r0, r3, -148
/* 8020C254 00207EB4 90 04 00 04 */ stw r0, 4(r4)
/* 8020C258 00207EB8 48 00 03 88 */ b lbl_8020C5E0
lbl_8020C25C:
/* 8020C25C 00207EBC 8B E3 00 5B */ lbz r31, 0x5b(r3)
/* 8020C260 00207EC0 80 65 00 58 */ lwz r3, 0x58(r5)
/* 8020C264 00207EC4 4B FE 40 BD */ bl func_801F0320
/* 8020C268 00207EC8 C3 E2 99 CC */ lfs f31, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020C26C 00207ECC 54 7A 04 3E */ clrlwi r26, r3, 0x10
/* 8020C270 00207ED0 3B C0 00 00 */ li r30, 0
/* 8020C274 00207ED4 3B 20 00 80 */ li r25, 0x80
/* 8020C278 00207ED8 48 00 01 24 */ b lbl_8020C39C
lbl_8020C27C:
/* 8020C27C 00207EDC 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C280 00207EE0 57 C4 04 3E */ clrlwi r4, r30, 0x10
/* 8020C284 00207EE4 4B FE 40 6D */ bl func_801F02F0
/* 8020C288 00207EE8 2C 03 00 00 */ cmpwi r3, 0
/* 8020C28C 00207EEC 41 82 01 0C */ beq lbl_8020C398
/* 8020C290 00207EF0 80 63 00 14 */ lwz r3, 0x14(r3)
/* 8020C294 00207EF4 2C 03 00 00 */ cmpwi r3, 0
/* 8020C298 00207EF8 41 82 01 00 */ beq lbl_8020C398
/* 8020C29C 00207EFC 9B 23 00 30 */ stb r25, 0x30(r3)
/* 8020C2A0 00207F00 9B 23 00 31 */ stb r25, 0x31(r3)
/* 8020C2A4 00207F04 9B 23 00 32 */ stb r25, 0x32(r3)
/* 8020C2A8 00207F08 9B E3 00 33 */ stb r31, 0x33(r3)
/* 8020C2AC 00207F0C 88 1B 00 5C */ lbz r0, 0x5c(r27)
/* 8020C2B0 00207F10 98 03 00 2C */ stb r0, 0x2c(r3)
/* 8020C2B4 00207F14 88 1B 00 5D */ lbz r0, 0x5d(r27)
/* 8020C2B8 00207F18 98 03 00 2D */ stb r0, 0x2d(r3)
/* 8020C2BC 00207F1C 88 1B 00 5E */ lbz r0, 0x5e(r27)
/* 8020C2C0 00207F20 98 03 00 2E */ stb r0, 0x2e(r3)
/* 8020C2C4 00207F24 88 1B 00 5F */ lbz r0, 0x5f(r27)
/* 8020C2C8 00207F28 98 03 00 2F */ stb r0, 0x2f(r3)
/* 8020C2CC 00207F2C 80 63 00 04 */ lwz r3, 4(r3)
/* 8020C2D0 00207F30 2C 03 00 00 */ cmpwi r3, 0
/* 8020C2D4 00207F34 41 82 00 C4 */ beq lbl_8020C398
/* 8020C2D8 00207F38 A0 03 00 06 */ lhz r0, 6(r3)
/* 8020C2DC 00207F3C 54 00 06 F6 */ rlwinm r0, r0, 0, 0x1b, 0x1b
/* 8020C2E0 00207F40 2F 00 00 00 */ cmpwi cr6, r0, 0
/* 8020C2E4 00207F44 40 9A 00 B4 */ bne cr6, lbl_8020C398
/* 8020C2E8 00207F48 80 83 00 00 */ lwz r4, 0(r3)
/* 8020C2EC 00207F4C 2C 84 00 00 */ cmpwi cr1, r4, 0
/* 8020C2F0 00207F50 40 86 00 0C */ bne cr1, lbl_8020C2FC
/* 8020C2F4 00207F54 D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 8020C2F8 00207F58 48 00 00 A0 */ b lbl_8020C398
lbl_8020C2FC:
/* 8020C2FC 00207F5C C0 03 00 08 */ lfs f0, 8(r3)
/* 8020C300 00207F60 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 8020C304 00207F64 40 80 00 50 */ bge lbl_8020C354
/* 8020C308 00207F68 C0 24 00 08 */ lfs f1, 8(r4)
/* 8020C30C 00207F6C C0 03 00 0C */ lfs f0, 0xc(r3)
/* 8020C310 00207F70 EC 01 00 28 */ fsubs f0, f1, f0
/* 8020C314 00207F74 40 9A 00 84 */ bne cr6, lbl_8020C398
/* 8020C318 00207F78 40 86 00 0C */ bne cr1, lbl_8020C324
/* 8020C31C 00207F7C D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 8020C320 00207F80 48 00 00 78 */ b lbl_8020C398
lbl_8020C324:
/* 8020C324 00207F84 FC 00 F8 40 */ fcmpo cr0, f0, f31
/* 8020C328 00207F88 40 80 00 0C */ bge lbl_8020C334
/* 8020C32C 00207F8C D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 8020C330 00207F90 48 00 00 14 */ b lbl_8020C344
lbl_8020C334:
/* 8020C334 00207F94 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 8020C338 00207F98 40 81 00 08 */ ble lbl_8020C340
/* 8020C33C 00207F9C 48 00 00 08 */ b lbl_8020C344
lbl_8020C340:
/* 8020C340 00207FA0 D0 03 00 0C */ stfs f0, 0xc(r3)
lbl_8020C344:
/* 8020C344 00207FA4 A0 03 00 06 */ lhz r0, 6(r3)
/* 8020C348 00207FA8 60 00 00 02 */ ori r0, r0, 2
/* 8020C34C 00207FAC B0 03 00 06 */ sth r0, 6(r3)
/* 8020C350 00207FB0 48 00 00 48 */ b lbl_8020C398
lbl_8020C354:
/* 8020C354 00207FB4 C0 23 00 0C */ lfs f1, 0xc(r3)
/* 8020C358 00207FB8 40 9A 00 40 */ bne cr6, lbl_8020C398
/* 8020C35C 00207FBC 40 86 00 0C */ bne cr1, lbl_8020C368
/* 8020C360 00207FC0 D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 8020C364 00207FC4 48 00 00 34 */ b lbl_8020C398
lbl_8020C368:
/* 8020C368 00207FC8 FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 8020C36C 00207FCC 40 80 00 0C */ bge lbl_8020C378
/* 8020C370 00207FD0 D3 E3 00 0C */ stfs f31, 0xc(r3)
/* 8020C374 00207FD4 48 00 00 18 */ b lbl_8020C38C
lbl_8020C378:
/* 8020C378 00207FD8 C0 04 00 08 */ lfs f0, 8(r4)
/* 8020C37C 00207FDC FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C380 00207FE0 40 81 00 08 */ ble lbl_8020C388
/* 8020C384 00207FE4 48 00 00 08 */ b lbl_8020C38C
lbl_8020C388:
/* 8020C388 00207FE8 D0 23 00 0C */ stfs f1, 0xc(r3)
lbl_8020C38C:
/* 8020C38C 00207FEC A0 03 00 06 */ lhz r0, 6(r3)
/* 8020C390 00207FF0 60 00 00 02 */ ori r0, r0, 2
/* 8020C394 00207FF4 B0 03 00 06 */ sth r0, 6(r3)
lbl_8020C398:
/* 8020C398 00207FF8 3B DE 00 01 */ addi r30, r30, 1
lbl_8020C39C:
/* 8020C39C 00207FFC 57 C0 04 3E */ clrlwi r0, r30, 0x10
/* 8020C3A0 00208000 7C 00 D0 40 */ cmplw r0, r26
/* 8020C3A4 00208004 41 80 FE D8 */ blt lbl_8020C27C
/* 8020C3A8 00208008 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C3AC 0020800C C0 1B 00 4C */ lfs f0, 0x4c(r27)
/* 8020C3B0 00208010 C0 42 99 E8 */ lfs f2, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020C3B4 00208014 D0 03 00 48 */ stfs f0, 0x48(r3)
/* 8020C3B8 00208018 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 8020C3BC 0020801C C0 1B 00 50 */ lfs f0, 0x50(r27)
/* 8020C3C0 00208020 D0 03 00 4C */ stfs f0, 0x4c(r3)
/* 8020C3C4 00208024 C0 1B 00 54 */ lfs f0, 0x54(r27)
/* 8020C3C8 00208028 D0 03 00 50 */ stfs f0, 0x50(r3)
/* 8020C3CC 0020802C 40 80 00 2C */ bge lbl_8020C3F8
/* 8020C3D0 00208030 C0 23 00 48 */ lfs f1, 0x48(r3)
/* 8020C3D4 00208034 C0 62 99 F0 */ lfs f3, lbl_80641FF0-_SDA2_BASE_(r2)
/* 8020C3D8 00208038 FC 01 18 40 */ fcmpo cr0, f1, f3
/* 8020C3DC 0020803C 40 81 00 1C */ ble lbl_8020C3F8
/* 8020C3E0 00208040 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020C3E4 00208044 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C3E8 00208048 40 80 00 08 */ bge lbl_8020C3F0
/* 8020C3EC 0020804C 48 00 00 08 */ b lbl_8020C3F4
lbl_8020C3F0:
/* 8020C3F0 00208050 FC 60 10 90 */ fmr f3, f2
lbl_8020C3F4:
/* 8020C3F4 00208054 D0 63 00 48 */ stfs f3, 0x48(r3)
lbl_8020C3F8:
/* 8020C3F8 00208058 C0 43 00 4C */ lfs f2, 0x4c(r3)
/* 8020C3FC 0020805C C0 22 99 E8 */ lfs f1, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020C400 00208060 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 8020C404 00208064 40 80 00 28 */ bge lbl_8020C42C
/* 8020C408 00208068 C0 62 99 F0 */ lfs f3, lbl_80641FF0-_SDA2_BASE_(r2)
/* 8020C40C 0020806C FC 02 18 40 */ fcmpo cr0, f2, f3
/* 8020C410 00208070 40 81 00 1C */ ble lbl_8020C42C
/* 8020C414 00208074 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020C418 00208078 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8020C41C 0020807C 40 80 00 08 */ bge lbl_8020C424
/* 8020C420 00208080 48 00 00 08 */ b lbl_8020C428
lbl_8020C424:
/* 8020C424 00208084 FC 60 08 90 */ fmr f3, f1
lbl_8020C428:
/* 8020C428 00208088 D0 63 00 4C */ stfs f3, 0x4c(r3)
lbl_8020C42C:
/* 8020C42C 0020808C C0 43 00 50 */ lfs f2, 0x50(r3)
/* 8020C430 00208090 C0 22 99 E8 */ lfs f1, lbl_80641FE8-_SDA2_BASE_(r2)
/* 8020C434 00208094 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 8020C438 00208098 40 80 00 28 */ bge lbl_8020C460
/* 8020C43C 0020809C C0 62 99 F0 */ lfs f3, lbl_80641FF0-_SDA2_BASE_(r2)
/* 8020C440 002080A0 FC 02 18 40 */ fcmpo cr0, f2, f3
/* 8020C444 002080A4 40 81 00 1C */ ble lbl_8020C460
/* 8020C448 002080A8 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020C44C 002080AC FC 02 00 40 */ fcmpo cr0, f2, f0
/* 8020C450 002080B0 40 80 00 08 */ bge lbl_8020C458
/* 8020C454 002080B4 48 00 00 08 */ b lbl_8020C45C
lbl_8020C458:
/* 8020C458 002080B8 FC 60 08 90 */ fmr f3, f1
lbl_8020C45C:
/* 8020C45C 002080BC D0 63 00 50 */ stfs f3, 0x50(r3)
lbl_8020C460:
/* 8020C460 002080C0 38 80 00 01 */ li r4, 1
/* 8020C464 002080C4 4B FE 62 55 */ bl func_801F26B8
/* 8020C468 002080C8 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C46C 002080CC 38 80 00 01 */ li r4, 1
/* 8020C470 002080D0 C0 1B 00 3C */ lfs f0, 0x3c(r27)
/* 8020C474 002080D4 D0 03 00 2C */ stfs f0, 0x2c(r3)
/* 8020C478 002080D8 C0 1B 00 40 */ lfs f0, 0x40(r27)
/* 8020C47C 002080DC D0 03 00 30 */ stfs f0, 0x30(r3)
/* 8020C480 002080E0 C0 1B 00 44 */ lfs f0, 0x44(r27)
/* 8020C484 002080E4 D0 03 00 34 */ stfs f0, 0x34(r3)
/* 8020C488 002080E8 C0 1B 00 48 */ lfs f0, 0x48(r27)
/* 8020C48C 002080EC D0 03 00 38 */ stfs f0, 0x38(r3)
/* 8020C490 002080F0 A0 03 00 10 */ lhz r0, 0x10(r3)
/* 8020C494 002080F4 54 00 07 B8 */ rlwinm r0, r0, 0, 0x1e, 0x1c
/* 8020C498 002080F8 B0 03 00 10 */ sth r0, 0x10(r3)
/* 8020C49C 002080FC 4B FE 62 1D */ bl func_801F26B8
/* 8020C4A0 00208100 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C4A4 00208104 38 80 00 01 */ li r4, 1
/* 8020C4A8 00208108 C0 1B 00 30 */ lfs f0, 0x30(r27)
/* 8020C4AC 0020810C D0 03 00 20 */ stfs f0, 0x20(r3)
/* 8020C4B0 00208110 C0 1B 00 34 */ lfs f0, 0x34(r27)
/* 8020C4B4 00208114 D0 03 00 24 */ stfs f0, 0x24(r3)
/* 8020C4B8 00208118 C0 1B 00 38 */ lfs f0, 0x38(r27)
/* 8020C4BC 0020811C D0 03 00 28 */ stfs f0, 0x28(r3)
/* 8020C4C0 00208120 4B FE 61 F9 */ bl func_801F26B8
/* 8020C4C4 00208124 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C4C8 00208128 80 63 00 04 */ lwz r3, 4(r3)
/* 8020C4CC 0020812C 2C 03 00 00 */ cmpwi r3, 0
/* 8020C4D0 00208130 41 82 00 CC */ beq lbl_8020C59C
/* 8020C4D4 00208134 A0 03 00 06 */ lhz r0, 6(r3)
/* 8020C4D8 00208138 54 00 06 F6 */ rlwinm r0, r0, 0, 0x1b, 0x1b
/* 8020C4DC 0020813C 2F 00 00 00 */ cmpwi cr6, r0, 0
/* 8020C4E0 00208140 40 9A 00 BC */ bne cr6, lbl_8020C59C
/* 8020C4E4 00208144 80 83 00 00 */ lwz r4, 0(r3)
/* 8020C4E8 00208148 2C 84 00 00 */ cmpwi cr1, r4, 0
/* 8020C4EC 0020814C 40 86 00 10 */ bne cr1, lbl_8020C4FC
/* 8020C4F0 00208150 C0 02 99 CC */ lfs f0, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020C4F4 00208154 D0 03 00 0C */ stfs f0, 0xc(r3)
/* 8020C4F8 00208158 48 00 00 A4 */ b lbl_8020C59C
lbl_8020C4FC:
/* 8020C4FC 0020815C C0 03 00 08 */ lfs f0, 8(r3)
/* 8020C500 00208160 C0 42 99 CC */ lfs f2, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020C504 00208164 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 8020C508 00208168 40 80 00 50 */ bge lbl_8020C558
/* 8020C50C 0020816C C0 24 00 08 */ lfs f1, 8(r4)
/* 8020C510 00208170 C0 03 00 0C */ lfs f0, 0xc(r3)
/* 8020C514 00208174 EC 01 00 28 */ fsubs f0, f1, f0
/* 8020C518 00208178 40 9A 00 84 */ bne cr6, lbl_8020C59C
/* 8020C51C 0020817C 40 86 00 0C */ bne cr1, lbl_8020C528
/* 8020C520 00208180 D0 43 00 0C */ stfs f2, 0xc(r3)
/* 8020C524 00208184 48 00 00 78 */ b lbl_8020C59C
lbl_8020C528:
/* 8020C528 00208188 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 8020C52C 0020818C 40 80 00 0C */ bge lbl_8020C538
/* 8020C530 00208190 D0 43 00 0C */ stfs f2, 0xc(r3)
/* 8020C534 00208194 48 00 00 14 */ b lbl_8020C548
lbl_8020C538:
/* 8020C538 00208198 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 8020C53C 0020819C 40 81 00 08 */ ble lbl_8020C544
/* 8020C540 002081A0 48 00 00 08 */ b lbl_8020C548
lbl_8020C544:
/* 8020C544 002081A4 D0 03 00 0C */ stfs f0, 0xc(r3)
lbl_8020C548:
/* 8020C548 002081A8 A0 03 00 06 */ lhz r0, 6(r3)
/* 8020C54C 002081AC 60 00 00 02 */ ori r0, r0, 2
/* 8020C550 002081B0 B0 03 00 06 */ sth r0, 6(r3)
/* 8020C554 002081B4 48 00 00 48 */ b lbl_8020C59C
lbl_8020C558:
/* 8020C558 002081B8 C0 23 00 0C */ lfs f1, 0xc(r3)
/* 8020C55C 002081BC 40 9A 00 40 */ bne cr6, lbl_8020C59C
/* 8020C560 002081C0 40 86 00 0C */ bne cr1, lbl_8020C56C
/* 8020C564 002081C4 D0 43 00 0C */ stfs f2, 0xc(r3)
/* 8020C568 002081C8 48 00 00 34 */ b lbl_8020C59C
lbl_8020C56C:
/* 8020C56C 002081CC FC 01 10 40 */ fcmpo cr0, f1, f2
/* 8020C570 002081D0 40 80 00 0C */ bge lbl_8020C57C
/* 8020C574 002081D4 D0 43 00 0C */ stfs f2, 0xc(r3)
/* 8020C578 002081D8 48 00 00 18 */ b lbl_8020C590
lbl_8020C57C:
/* 8020C57C 002081DC C0 04 00 08 */ lfs f0, 8(r4)
/* 8020C580 002081E0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 8020C584 002081E4 40 81 00 08 */ ble lbl_8020C58C
/* 8020C588 002081E8 48 00 00 08 */ b lbl_8020C590
lbl_8020C58C:
/* 8020C58C 002081EC D0 23 00 0C */ stfs f1, 0xc(r3)
lbl_8020C590:
/* 8020C590 002081F0 A0 03 00 06 */ lhz r0, 6(r3)
/* 8020C594 002081F4 60 00 00 02 */ ori r0, r0, 2
/* 8020C598 002081F8 B0 03 00 06 */ sth r0, 6(r3)
lbl_8020C59C:
/* 8020C59C 002081FC 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C5A0 00208200 C0 22 99 CC */ lfs f1, lbl_80641FCC-_SDA2_BASE_(r2)
/* 8020C5A4 00208204 81 83 01 00 */ lwz r12, 0x100(r3)
/* 8020C5A8 00208208 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8020C5AC 0020820C 7D 89 03 A6 */ mtctr r12
/* 8020C5B0 00208210 4E 80 04 21 */ bctrl
/* 8020C5B4 00208214 88 1B 00 5B */ lbz r0, 0x5b(r27)
/* 8020C5B8 00208218 28 00 00 FF */ cmplwi r0, 0xff
/* 8020C5BC 0020821C 40 82 00 14 */ bne lbl_8020C5D0
/* 8020C5C0 00208220 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C5C4 00208224 7F 84 E3 78 */ mr r4, r28
/* 8020C5C8 00208228 38 A0 00 01 */ li r5, 1
/* 8020C5CC 0020822C 4B FE 45 B1 */ bl func_801F0B7C
lbl_8020C5D0:
/* 8020C5D0 00208230 80 7D 00 58 */ lwz r3, 0x58(r29)
/* 8020C5D4 00208234 7F 84 E3 78 */ mr r4, r28
/* 8020C5D8 00208238 38 A0 00 00 */ li r5, 0
/* 8020C5DC 0020823C 4B FE 45 A1 */ bl func_801F0B7C
lbl_8020C5E0:
/* 8020C5E0 00208240 E3 E1 00 98 */ psq_l f31, 152(r1), 0, qr0
/* 8020C5E4 00208244 39 61 00 90 */ addi r11, r1, 0x90
/* 8020C5E8 00208248 CB E1 00 90 */ lfd f31, 0x90(r1)
/* 8020C5EC 0020824C 4B FB AB 81 */ bl _restgpr_25
/* 8020C5F0 00208250 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 8020C5F4 00208254 7C 08 03 A6 */ mtlr r0
/* 8020C5F8 00208258 38 21 00 A0 */ addi r1, r1, 0xa0
/* 8020C5FC 0020825C 4E 80 00 20 */ blr
.global func_8020C600
func_8020C600:
/* 8020C600 00208260 80 04 00 00 */ lwz r0, 0(r4)
/* 8020C604 00208264 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 8020C608 00208268 4D 82 00 20 */ beqlr
/* 8020C60C 0020826C 80 A4 00 58 */ lwz r5, 0x58(r4)
/* 8020C610 00208270 A8 83 00 58 */ lha r4, 0x58(r3)
/* 8020C614 00208274 38 05 FF FF */ addi r0, r5, -1
/* 8020C618 00208278 54 03 04 3E */ clrlwi r3, r0, 0x10
/* 8020C61C 0020827C 48 00 FF 48 */ b lbl_8021C564
/* 8020C620 00208280 4E 80 00 20 */ blr
/* 8020C624 00208284 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8020C628 00208288 7C 08 02 A6 */ mflr r0
/* 8020C62C 0020828C 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020C630 00208290 39 61 00 20 */ addi r11, r1, 0x20
/* 8020C634 00208294 4B FB AA F5 */ bl _savegpr_27
/* 8020C638 00208298 88 03 00 18 */ lbz r0, 0x18(r3)
/* 8020C63C 0020829C 7C 7B 1B 78 */ mr r27, r3
/* 8020C640 002082A0 2C 00 00 00 */ cmpwi r0, 0
/* 8020C644 002082A4 40 82 00 0C */ bne lbl_8020C650
/* 8020C648 002082A8 38 60 00 00 */ li r3, 0
/* 8020C64C 002082AC 48 00 00 48 */ b lbl_8020C694
lbl_8020C650:
/* 8020C650 002082B0 4B FF B4 59 */ bl func_80207AA8
/* 8020C654 002082B4 7C 7F 1B 78 */ mr r31, r3
/* 8020C658 002082B8 83 CD A1 F8 */ lwz r30, lbl_8063F4B8-_SDA_BASE_(r13)
/* 8020C65C 002082BC 80 7B 00 10 */ lwz r3, 0x10(r27)
/* 8020C660 002082C0 7F FC FB 78 */ mr r28, r31
/* 8020C664 002082C4 48 00 00 24 */ b lbl_8020C688
lbl_8020C668:
/* 8020C668 002082C8 83 A3 00 28 */ lwz r29, 0x28(r3)
/* 8020C66C 002082CC 7F C6 F3 78 */ mr r6, r30
/* 8020C670 002082D0 80 9B 00 00 */ lwz r4, 0(r27)
/* 8020C674 002082D4 80 BB 00 20 */ lwz r5, 0x20(r27)
/* 8020C678 002082D8 4B FF EE 81 */ bl func_8020B4F8
/* 8020C67C 002082DC 7F A3 EB 78 */ mr r3, r29
/* 8020C680 002082E0 3B FF FF FF */ addi r31, r31, -1
/* 8020C684 002082E4 3B DE 00 48 */ addi r30, r30, 0x48
lbl_8020C688:
/* 8020C688 002082E8 57 E0 04 3F */ clrlwi. r0, r31, 0x10
/* 8020C68C 002082EC 40 82 FF DC */ bne lbl_8020C668
/* 8020C690 002082F0 7F 83 E3 78 */ mr r3, r28
lbl_8020C694:
/* 8020C694 002082F4 39 61 00 20 */ addi r11, r1, 0x20
/* 8020C698 002082F8 4B FB AA DD */ bl _restgpr_27
/* 8020C69C 002082FC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8020C6A0 00208300 7C 08 03 A6 */ mtlr r0
/* 8020C6A4 00208304 38 21 00 20 */ addi r1, r1, 0x20
/* 8020C6A8 00208308 4E 80 00 20 */ blr
/* 8020C6AC 0020830C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8020C6B0 00208310 7C 08 02 A6 */ mflr r0
/* 8020C6B4 00208314 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020C6B8 00208318 DB E1 00 18 */ stfd f31, 0x18(r1)
/* 8020C6BC 0020831C FF E0 08 90 */ fmr f31, f1
/* 8020C6C0 00208320 93 E1 00 14 */ stw r31, 0x14(r1)
/* 8020C6C4 00208324 93 C1 00 10 */ stw r30, 0x10(r1)
/* 8020C6C8 00208328 93 A1 00 0C */ stw r29, 0xc(r1)
/* 8020C6CC 0020832C 7C 7D 1B 78 */ mr r29, r3
/* 8020C6D0 00208330 88 03 00 18 */ lbz r0, 0x18(r3)
/* 8020C6D4 00208334 2C 00 00 00 */ cmpwi r0, 0
/* 8020C6D8 00208338 41 82 00 58 */ beq lbl_8020C730
/* 8020C6DC 0020833C 83 E3 00 10 */ lwz r31, 0x10(r3)
/* 8020C6E0 00208340 48 00 00 40 */ b lbl_8020C720
lbl_8020C6E4:
/* 8020C6E4 00208344 FC 20 F8 90 */ fmr f1, f31
/* 8020C6E8 00208348 83 DF 00 28 */ lwz r30, 0x28(r31)
/* 8020C6EC 0020834C 80 9D 00 00 */ lwz r4, 0(r29)
/* 8020C6F0 00208350 7F E3 FB 78 */ mr r3, r31
/* 8020C6F4 00208354 80 BD 00 20 */ lwz r5, 0x20(r29)
/* 8020C6F8 00208358 4B FF F2 AD */ bl func_8020B9A4
/* 8020C6FC 0020835C 2C 03 00 00 */ cmpwi r3, 0
/* 8020C700 00208360 40 82 00 1C */ bne lbl_8020C71C
/* 8020C704 00208364 80 9D 00 20 */ lwz r4, 0x20(r29)
/* 8020C708 00208368 7F E3 FB 78 */ mr r3, r31
/* 8020C70C 0020836C 4B FF FE F5 */ bl func_8020C600
/* 8020C710 00208370 7F A3 EB 78 */ mr r3, r29
/* 8020C714 00208374 7F E4 FB 78 */ mr r4, r31
/* 8020C718 00208378 4B FF B4 1D */ bl func_80207B34
lbl_8020C71C:
/* 8020C71C 0020837C 7F DF F3 78 */ mr r31, r30
lbl_8020C720:
/* 8020C720 00208380 2C 1F 00 00 */ cmpwi r31, 0
/* 8020C724 00208384 40 82 FF C0 */ bne lbl_8020C6E4
/* 8020C728 00208388 7F A3 EB 78 */ mr r3, r29
/* 8020C72C 0020838C 48 00 01 8D */ bl func_8020C8B8
lbl_8020C730:
/* 8020C730 00208390 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8020C734 00208394 CB E1 00 18 */ lfd f31, 0x18(r1)
/* 8020C738 00208398 83 E1 00 14 */ lwz r31, 0x14(r1)
/* 8020C73C 0020839C 83 C1 00 10 */ lwz r30, 0x10(r1)
/* 8020C740 002083A0 83 A1 00 0C */ lwz r29, 0xc(r1)
/* 8020C744 002083A4 7C 08 03 A6 */ mtlr r0
/* 8020C748 002083A8 38 21 00 20 */ addi r1, r1, 0x20
/* 8020C74C 002083AC 4E 80 00 20 */ blr
.global func_8020C750
func_8020C750:
/* 8020C750 002083B0 88 03 00 18 */ lbz r0, 0x18(r3)
/* 8020C754 002083B4 2C 00 00 00 */ cmpwi r0, 0
/* 8020C758 002083B8 40 82 00 0C */ bne lbl_8020C764
/* 8020C75C 002083BC 38 60 00 00 */ li r3, 0
/* 8020C760 002083C0 4E 80 00 20 */ blr
lbl_8020C764:
/* 8020C764 002083C4 A0 03 00 14 */ lhz r0, 0x14(r3)
/* 8020C768 002083C8 2C 00 00 00 */ cmpwi r0, 0
/* 8020C76C 002083CC 40 82 00 0C */ bne lbl_8020C778
/* 8020C770 002083D0 38 60 00 00 */ li r3, 0
/* 8020C774 002083D4 4E 80 00 20 */ blr
lbl_8020C778:
/* 8020C778 002083D8 80 63 00 20 */ lwz r3, 0x20(r3)
/* 8020C77C 002083DC 80 63 00 00 */ lwz r3, 0(r3)
/* 8020C780 002083E0 54 60 03 9D */ rlwinm. r0, r3, 0, 0xe, 0xe
/* 8020C784 002083E4 41 82 00 18 */ beq lbl_8020C79C
/* 8020C788 002083E8 80 6D A1 D8 */ lwz r3, lbl_8063F498-_SDA_BASE_(r13)
/* 8020C78C 002083EC 38 03 FF F6 */ addi r0, r3, -10
/* 8020C790 002083F0 7C 00 00 34 */ cntlzw r0, r0
/* 8020C794 002083F4 54 03 D9 7E */ srwi r3, r0, 5
/* 8020C798 002083F8 4E 80 00 20 */ blr
lbl_8020C79C:
/* 8020C79C 002083FC 54 60 03 5B */ rlwinm. r0, r3, 0, 0xd, 0xd
/* 8020C7A0 00208400 41 82 00 18 */ beq lbl_8020C7B8
/* 8020C7A4 00208404 80 6D A1 D8 */ lwz r3, lbl_8063F498-_SDA_BASE_(r13)
/* 8020C7A8 00208408 38 03 FF FB */ addi r0, r3, -5
/* 8020C7AC 0020840C 7C 00 00 34 */ cntlzw r0, r0
/* 8020C7B0 00208410 54 03 D9 7E */ srwi r3, r0, 5
/* 8020C7B4 00208414 4E 80 00 20 */ blr
lbl_8020C7B8:
/* 8020C7B8 00208418 80 6D A1 D8 */ lwz r3, lbl_8063F498-_SDA_BASE_(r13)
/* 8020C7BC 0020841C 38 03 FF F8 */ addi r0, r3, -8
/* 8020C7C0 00208420 7C 00 00 34 */ cntlzw r0, r0
/* 8020C7C4 00208424 54 03 D9 7E */ srwi r3, r0, 5
/* 8020C7C8 00208428 4E 80 00 20 */ blr
/* 8020C7CC 0020842C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 8020C7D0 00208430 7C 08 02 A6 */ mflr r0
/* 8020C7D4 00208434 90 01 00 24 */ stw r0, 0x24(r1)
/* 8020C7D8 00208438 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8020C7DC 0020843C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 8020C7E0 00208440 7C 9E 23 78 */ mr r30, r4
/* 8020C7E4 00208444 93 A1 00 14 */ stw r29, 0x14(r1)
/* 8020C7E8 00208448 7C 7D 1B 78 */ mr r29, r3
/* 8020C7EC 0020844C 4B FF FF 65 */ bl func_8020C750
/* 8020C7F0 00208450 2C 03 00 00 */ cmpwi r3, 0
/* 8020C7F4 00208454 41 82 00 38 */ beq lbl_8020C82C
/* 8020C7F8 00208458 83 FD 00 10 */ lwz r31, 0x10(r29)
/* 8020C7FC 0020845C 48 00 00 18 */ b lbl_8020C814
lbl_8020C800:
/* 8020C800 00208460 80 BD 00 20 */ lwz r5, 0x20(r29)
/* 8020C804 00208464 7F E3 FB 78 */ mr r3, r31
/* 8020C808 00208468 7F C4 F3 78 */ mr r4, r30
/* 8020C80C 0020846C 4B FF F8 A9 */ bl func_8020C0B4
/* 8020C810 00208470 83 FF 00 28 */ lwz r31, 0x28(r31)
lbl_8020C814:
/* 8020C814 00208474 2C 1F 00 00 */ cmpwi r31, 0
/* 8020C818 00208478 40 82 FF E8 */ bne lbl_8020C800
/* 8020C81C 0020847C 38 60 00 01 */ li r3, 1
/* 8020C820 00208480 4B FF 8A 59 */ bl func_80205278
/* 8020C824 00208484 38 00 00 01 */ li r0, 1
/* 8020C828 00208488 98 0D A1 F4 */ stb r0, lbl_8063F4B4-_SDA_BASE_(r13)
lbl_8020C82C:
/* 8020C82C 0020848C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8020C830 00208490 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 8020C834 00208494 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 8020C838 00208498 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 8020C83C 0020849C 7C 08 03 A6 */ mtlr r0
/* 8020C840 002084A0 38 21 00 20 */ addi r1, r1, 0x20
/* 8020C844 002084A4 4E 80 00 20 */ blr
/* 8020C848 002084A8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8020C84C 002084AC 7C 08 02 A6 */ mflr r0
/* 8020C850 002084B0 90 01 00 14 */ stw r0, 0x14(r1)
/* 8020C854 002084B4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8020C858 002084B8 93 C1 00 08 */ stw r30, 8(r1)
/* 8020C85C 002084BC 7C 7E 1B 78 */ mr r30, r3
/* 8020C860 002084C0 88 03 00 18 */ lbz r0, 0x18(r3)
/* 8020C864 002084C4 2C 00 00 00 */ cmpwi r0, 0
/* 8020C868 002084C8 41 82 00 38 */ beq lbl_8020C8A0
/* 8020C86C 002084CC 38 00 00 00 */ li r0, 0
/* 8020C870 002084D0 80 83 00 10 */ lwz r4, 0x10(r3)
/* 8020C874 002084D4 98 03 00 18 */ stb r0, 0x18(r3)
/* 8020C878 002084D8 48 00 00 18 */ b lbl_8020C890
lbl_8020C87C:
/* 8020C87C 002084DC 83 E4 00 28 */ lwz r31, 0x28(r4)
/* 8020C880 002084E0 7C 83 23 78 */ mr r3, r4
/* 8020C884 002084E4 80 9E 00 20 */ lwz r4, 0x20(r30)
/* 8020C888 002084E8 4B FF FD 79 */ bl func_8020C600
/* 8020C88C 002084EC 7F E4 FB 78 */ mr r4, r31
lbl_8020C890:
/* 8020C890 002084F0 2C 04 00 00 */ cmpwi r4, 0
/* 8020C894 002084F4 40 82 FF E8 */ bne lbl_8020C87C
/* 8020C898 002084F8 7F C3 F3 78 */ mr r3, r30
/* 8020C89C 002084FC 4B FF B2 F1 */ bl func_80207B8C
lbl_8020C8A0:
/* 8020C8A0 00208500 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8020C8A4 00208504 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8020C8A8 00208508 83 C1 00 08 */ lwz r30, 8(r1)
/* 8020C8AC 0020850C 7C 08 03 A6 */ mtlr r0
/* 8020C8B0 00208510 38 21 00 10 */ addi r1, r1, 0x10
/* 8020C8B4 00208514 4E 80 00 20 */ blr
.global func_8020C8B8
func_8020C8B8:
/* 8020C8B8 00208518 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 8020C8BC 0020851C 7C 08 02 A6 */ mflr r0
/* 8020C8C0 00208520 90 01 00 44 */ stw r0, 0x44(r1)
/* 8020C8C4 00208524 39 61 00 38 */ addi r11, r1, 0x38
/* 8020C8C8 00208528 DB E1 00 38 */ stfd f31, 0x38(r1)
/* 8020C8CC 0020852C 4B FB A8 59 */ bl _savegpr_26
/* 8020C8D0 00208530 88 03 00 18 */ lbz r0, 0x18(r3)
/* 8020C8D4 00208534 7C 7A 1B 78 */ mr r26, r3
/* 8020C8D8 00208538 2C 00 00 00 */ cmpwi r0, 0
/* 8020C8DC 0020853C 41 82 00 C4 */ beq lbl_8020C9A0
/* 8020C8E0 00208540 A0 03 00 14 */ lhz r0, 0x14(r3)
/* 8020C8E4 00208544 28 00 00 02 */ cmplwi r0, 2
/* 8020C8E8 00208548 41 80 00 B8 */ blt lbl_8020C9A0
/* 8020C8EC 0020854C 80 83 00 20 */ lwz r4, 0x20(r3)
/* 8020C8F0 00208550 80 04 00 00 */ lwz r0, 0(r4)
/* 8020C8F4 00208554 54 00 03 DF */ rlwinm. r0, r0, 0, 0xf, 0xf
/* 8020C8F8 00208558 40 82 00 08 */ bne lbl_8020C900
/* 8020C8FC 0020855C 48 00 00 A4 */ b lbl_8020C9A0
lbl_8020C900:
/* 8020C900 00208560 80 63 00 10 */ lwz r3, 0x10(r3)
/* 8020C904 00208564 3F C0 80 49 */ lis r30, 0x8049
/* 8020C908 00208568 3F E0 80 49 */ lis r31, 0x8049
/* 8020C90C 0020856C 83 A3 00 28 */ lwz r29, 0x28(r3)
/* 8020C910 00208570 48 00 00 88 */ b lbl_8020C998
lbl_8020C914:
/* 8020C914 00208574 38 7D 00 30 */ addi r3, r29, 0x30
/* 8020C918 00208578 38 9E 22 30 */ addi r4, r30, 0x2230
/* 8020C91C 0020857C 38 A1 00 14 */ addi r5, r1, 0x14
/* 8020C920 00208580 48 07 03 C9 */ bl PSVECSubtract
/* 8020C924 00208584 38 7F 22 3C */ addi r3, r31, 0x223c
/* 8020C928 00208588 38 81 00 14 */ addi r4, r1, 0x14
/* 8020C92C 0020858C 48 07 04 9D */ bl PSVECDotProduct
/* 8020C930 00208590 FF E0 08 90 */ fmr f31, f1
/* 8020C934 00208594 83 9D 00 2C */ lwz r28, 0x2c(r29)
/* 8020C938 00208598 7F BB EB 78 */ mr r27, r29
/* 8020C93C 0020859C 48 00 00 34 */ b lbl_8020C970
lbl_8020C940:
/* 8020C940 002085A0 38 7C 00 30 */ addi r3, r28, 0x30
/* 8020C944 002085A4 38 9E 22 30 */ addi r4, r30, 0x2230
/* 8020C948 002085A8 38 A1 00 08 */ addi r5, r1, 8
/* 8020C94C 002085AC 48 07 03 9D */ bl PSVECSubtract
/* 8020C950 002085B0 38 7F 22 3C */ addi r3, r31, 0x223c
/* 8020C954 002085B4 38 81 00 08 */ addi r4, r1, 8
/* 8020C958 002085B8 48 07 04 71 */ bl PSVECDotProduct
/* 8020C95C 002085BC FC 01 F8 40 */ fcmpo cr0, f1, f31
/* 8020C960 002085C0 4C 41 13 82 */ cror 2, 1, 2
/* 8020C964 002085C4 41 82 00 14 */ beq lbl_8020C978
/* 8020C968 002085C8 7F 9B E3 78 */ mr r27, r28
/* 8020C96C 002085CC 83 9C 00 2C */ lwz r28, 0x2c(r28)
lbl_8020C970:
/* 8020C970 002085D0 2C 1C 00 00 */ cmpwi r28, 0
/* 8020C974 002085D4 40 82 FF CC */ bne lbl_8020C940
lbl_8020C978:
/* 8020C978 002085D8 7C 1B E8 40 */ cmplw r27, r29
/* 8020C97C 002085DC 83 9D 00 28 */ lwz r28, 0x28(r29)
/* 8020C980 002085E0 41 82 00 14 */ beq lbl_8020C994
/* 8020C984 002085E4 7F 43 D3 78 */ mr r3, r26
/* 8020C988 002085E8 7F A4 EB 78 */ mr r4, r29
/* 8020C98C 002085EC 7F 65 DB 78 */ mr r5, r27
/* 8020C990 002085F0 4B FF B2 4D */ bl func_80207BDC
lbl_8020C994:
/* 8020C994 002085F4 7F 9D E3 78 */ mr r29, r28
lbl_8020C998:
/* 8020C998 002085F8 2C 1D 00 00 */ cmpwi r29, 0
/* 8020C99C 002085FC 40 82 FF 78 */ bne lbl_8020C914
lbl_8020C9A0:
/* 8020C9A0 00208600 39 61 00 38 */ addi r11, r1, 0x38
/* 8020C9A4 00208604 CB E1 00 38 */ lfd f31, 0x38(r1)
/* 8020C9A8 00208608 4B FB A7 C9 */ bl _restgpr_26
/* 8020C9AC 0020860C 80 01 00 44 */ lwz r0, 0x44(r1)
/* 8020C9B0 00208610 7C 08 03 A6 */ mtlr r0
/* 8020C9B4 00208614 38 21 00 40 */ addi r1, r1, 0x40
/* 8020C9B8 00208618 4E 80 00 20 */ blr
/* 8020C9BC 0020861C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8020C9C0 00208620 7C 08 02 A6 */ mflr r0
/* 8020C9C4 00208624 2C 03 00 00 */ cmpwi r3, 0
/* 8020C9C8 00208628 90 01 00 14 */ stw r0, 0x14(r1)
/* 8020C9CC 0020862C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8020C9D0 00208630 7C 9F 23 78 */ mr r31, r4
/* 8020C9D4 00208634 93 C1 00 08 */ stw r30, 8(r1)
/* 8020C9D8 00208638 7C 7E 1B 78 */ mr r30, r3
/* 8020C9DC 0020863C 41 82 00 20 */ beq lbl_8020C9FC
/* 8020C9E0 00208640 38 80 00 00 */ li r4, 0
/* 8020C9E4 00208644 4B FF AF D1 */ bl func_802079B4
/* 8020C9E8 00208648 2C 1F 00 00 */ cmpwi r31, 0
/* 8020C9EC 0020864C 40 81 00 10 */ ble lbl_8020C9FC
/* 8020C9F0 00208650 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8020C9F4 00208654 7F C4 F3 78 */ mr r4, r30
/* 8020C9F8 00208658 4B FC E3 51 */ bl func_801DAD48
lbl_8020C9FC:
/* 8020C9FC 0020865C 7F C3 F3 78 */ mr r3, r30
/* 8020CA00 00208660 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8020CA04 00208664 83 C1 00 08 */ lwz r30, 8(r1)
/* 8020CA08 00208668 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8020CA0C 0020866C 7C 08 03 A6 */ mtlr r0
/* 8020CA10 00208670 38 21 00 10 */ addi r1, r1, 0x10
/* 8020CA14 00208674 4E 80 00 20 */ blr
.global func_8020CA18
func_8020CA18:
/* 8020CA18 00208678 38 A0 00 01 */ li r5, 1
/* 8020CA1C 0020867C 38 6D A2 18 */ addi r3, r13, lbl_8063F4D8-_SDA_BASE_
/* 8020CA20 00208680 38 80 00 04 */ li r4, 4
/* 8020CA24 00208684 38 00 00 00 */ li r0, 0
/* 8020CA28 00208688 98 AD A2 18 */ stb r5, lbl_8063F4D8-_SDA_BASE_(r13)
/* 8020CA2C 0020868C B0 83 00 02 */ sth r4, 2(r3)
/* 8020CA30 00208690 98 03 00 04 */ stb r0, 4(r3)
/* 8020CA34 00208694 4E 80 00 20 */ blr
|