summaryrefslogtreecommitdiff
path: root/asm/code_8020B4F8.s
blob: e3b8187d44220afafeebfaf10b20b0a5e590e1ba (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
.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