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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_80224B10
func_80224B10:
/* 80224B10 00220770 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 80224B14 00220774 7C 08 02 A6 */ mflr r0
/* 80224B18 00220778 90 01 00 34 */ stw r0, 0x34(r1)
/* 80224B1C 0022077C 38 04 FF F0 */ addi r0, r4, -16
/* 80224B20 00220780 38 80 00 00 */ li r4, 0
/* 80224B24 00220784 93 E1 00 2C */ stw r31, 0x2c(r1)
/* 80224B28 00220788 28 00 00 08 */ cmplwi r0, 8
/* 80224B2C 0022078C 7C DF 33 78 */ mr r31, r6
/* 80224B30 00220790 93 C1 00 28 */ stw r30, 0x28(r1)
/* 80224B34 00220794 7C BE 2B 78 */ mr r30, r5
/* 80224B38 00220798 93 A1 00 24 */ stw r29, 0x24(r1)
/* 80224B3C 0022079C 7C 7D 1B 78 */ mr r29, r3
/* 80224B40 002207A0 90 81 00 0C */ stw r4, 0xc(r1)
/* 80224B44 002207A4 41 81 04 88 */ bgt lbl_80224FCC
/* 80224B48 002207A8 3C 80 80 42 */ lis r4, lbl_80423C48@ha
/* 80224B4C 002207AC 54 00 10 3A */ slwi r0, r0, 2
/* 80224B50 002207B0 38 84 3C 48 */ addi r4, r4, lbl_80423C48@l
/* 80224B54 002207B4 7C 84 00 2E */ lwzx r4, r4, r0
/* 80224B58 002207B8 7C 89 03 A6 */ mtctr r4
/* 80224B5C 002207BC 4E 80 04 20 */ bctr
/* 80224B60 002207C0 A8 05 00 08 */ lha r0, 8(r5)
/* 80224B64 002207C4 2C 00 00 01 */ cmpwi r0, 1
/* 80224B68 002207C8 40 82 00 0C */ bne lbl_80224B74
/* 80224B6C 002207CC 80 65 00 0C */ lwz r3, 0xc(r5)
/* 80224B70 002207D0 48 00 00 28 */ b lbl_80224B98
lbl_80224B74:
/* 80224B74 002207D4 2C 00 00 02 */ cmpwi r0, 2
/* 80224B78 002207D8 40 82 00 18 */ bne lbl_80224B90
/* 80224B7C 002207DC C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80224B80 002207E0 FC 00 00 1E */ fctiwz f0, f0
/* 80224B84 002207E4 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224B88 002207E8 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224B8C 002207EC 48 00 00 0C */ b lbl_80224B98
lbl_80224B90:
/* 80224B90 002207F0 38 65 00 08 */ addi r3, r5, 8
/* 80224B94 002207F4 48 00 91 A1 */ bl func_8022DD34
lbl_80224B98:
/* 80224B98 002207F8 80 9D 09 48 */ lwz r4, 0x948(r29)
/* 80224B9C 002207FC 54 60 10 3A */ slwi r0, r3, 2
/* 80224BA0 00220800 7F A3 EB 78 */ mr r3, r29
/* 80224BA4 00220804 38 A1 00 0C */ addi r5, r1, 0xc
/* 80224BA8 00220808 7C 84 02 14 */ add r4, r4, r0
/* 80224BAC 0022080C 38 C1 00 08 */ addi r6, r1, 8
/* 80224BB0 00220810 48 00 5B B9 */ bl func_8022A768
/* 80224BB4 00220814 2C 03 00 00 */ cmpwi r3, 0
/* 80224BB8 00220818 41 82 04 14 */ beq lbl_80224FCC
/* 80224BBC 0022081C 80 61 00 08 */ lwz r3, 8(r1)
/* 80224BC0 00220820 38 00 00 01 */ li r0, 1
/* 80224BC4 00220824 B0 1F 00 00 */ sth r0, 0(r31)
/* 80224BC8 00220828 90 7F 00 04 */ stw r3, 4(r31)
/* 80224BCC 0022082C 48 00 04 00 */ b lbl_80224FCC
/* 80224BD0 00220830 A8 05 00 08 */ lha r0, 8(r5)
/* 80224BD4 00220834 2C 00 00 01 */ cmpwi r0, 1
/* 80224BD8 00220838 40 82 00 0C */ bne lbl_80224BE4
/* 80224BDC 0022083C 80 85 00 0C */ lwz r4, 0xc(r5)
/* 80224BE0 00220840 48 00 00 2C */ b lbl_80224C0C
lbl_80224BE4:
/* 80224BE4 00220844 2C 00 00 02 */ cmpwi r0, 2
/* 80224BE8 00220848 40 82 00 18 */ bne lbl_80224C00
/* 80224BEC 0022084C C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80224BF0 00220850 FC 00 00 1E */ fctiwz f0, f0
/* 80224BF4 00220854 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224BF8 00220858 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224BFC 0022085C 48 00 00 0C */ b lbl_80224C08
lbl_80224C00:
/* 80224C00 00220860 38 65 00 08 */ addi r3, r5, 8
/* 80224C04 00220864 48 00 91 31 */ bl func_8022DD34
lbl_80224C08:
/* 80224C08 00220868 7C 64 1B 78 */ mr r4, r3
lbl_80224C0C:
/* 80224C0C 0022086C 7F A3 EB 78 */ mr r3, r29
/* 80224C10 00220870 48 00 5C F1 */ bl func_8022A900
/* 80224C14 00220874 38 03 FF FF */ addi r0, r3, -1
/* 80224C18 00220878 38 60 00 01 */ li r3, 1
/* 80224C1C 0022087C 7C 00 00 34 */ cntlzw r0, r0
/* 80224C20 00220880 B0 7F 00 00 */ sth r3, 0(r31)
/* 80224C24 00220884 54 00 D9 7E */ srwi r0, r0, 5
/* 80224C28 00220888 90 1F 00 04 */ stw r0, 4(r31)
/* 80224C2C 0022088C 48 00 03 A0 */ b lbl_80224FCC
/* 80224C30 00220890 80 63 08 DC */ lwz r3, 0x8dc(r3)
/* 80224C34 00220894 38 00 00 01 */ li r0, 1
/* 80224C38 00220898 B0 06 00 00 */ sth r0, 0(r6)
/* 80224C3C 0022089C 90 66 00 04 */ stw r3, 4(r6)
/* 80224C40 002208A0 48 00 03 8C */ b lbl_80224FCC
/* 80224C44 002208A4 A8 05 00 08 */ lha r0, 8(r5)
/* 80224C48 002208A8 2C 00 00 01 */ cmpwi r0, 1
/* 80224C4C 002208AC 40 82 00 0C */ bne lbl_80224C58
/* 80224C50 002208B0 80 85 00 0C */ lwz r4, 0xc(r5)
/* 80224C54 002208B4 48 00 00 2C */ b lbl_80224C80
lbl_80224C58:
/* 80224C58 002208B8 2C 00 00 02 */ cmpwi r0, 2
/* 80224C5C 002208BC 40 82 00 18 */ bne lbl_80224C74
/* 80224C60 002208C0 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80224C64 002208C4 FC 00 00 1E */ fctiwz f0, f0
/* 80224C68 002208C8 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224C6C 002208CC 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224C70 002208D0 48 00 00 0C */ b lbl_80224C7C
lbl_80224C74:
/* 80224C74 002208D4 38 65 00 08 */ addi r3, r5, 8
/* 80224C78 002208D8 48 00 90 BD */ bl func_8022DD34
lbl_80224C7C:
/* 80224C7C 002208DC 7C 64 1B 78 */ mr r4, r3
lbl_80224C80:
/* 80224C80 002208E0 7F A3 EB 78 */ mr r3, r29
/* 80224C84 002208E4 48 00 5C 25 */ bl func_8022A8A8
/* 80224C88 002208E8 48 00 03 44 */ b lbl_80224FCC
/* 80224C8C 002208EC A8 05 00 08 */ lha r0, 8(r5)
/* 80224C90 002208F0 2C 00 00 01 */ cmpwi r0, 1
/* 80224C94 002208F4 40 82 00 0C */ bne lbl_80224CA0
/* 80224C98 002208F8 83 E5 00 0C */ lwz r31, 0xc(r5)
/* 80224C9C 002208FC 48 00 00 2C */ b lbl_80224CC8
lbl_80224CA0:
/* 80224CA0 00220900 2C 00 00 02 */ cmpwi r0, 2
/* 80224CA4 00220904 40 82 00 18 */ bne lbl_80224CBC
/* 80224CA8 00220908 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80224CAC 0022090C FC 00 00 1E */ fctiwz f0, f0
/* 80224CB0 00220910 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224CB4 00220914 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224CB8 00220918 48 00 00 0C */ b lbl_80224CC4
lbl_80224CBC:
/* 80224CBC 0022091C 38 65 00 08 */ addi r3, r5, 8
/* 80224CC0 00220920 48 00 90 75 */ bl func_8022DD34
lbl_80224CC4:
/* 80224CC4 00220924 7C 7F 1B 78 */ mr r31, r3
lbl_80224CC8:
/* 80224CC8 00220928 A8 1E 00 10 */ lha r0, 0x10(r30)
/* 80224CCC 0022092C 2C 00 00 01 */ cmpwi r0, 1
/* 80224CD0 00220930 40 82 00 0C */ bne lbl_80224CDC
/* 80224CD4 00220934 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 80224CD8 00220938 48 00 00 28 */ b lbl_80224D00
lbl_80224CDC:
/* 80224CDC 0022093C 2C 00 00 02 */ cmpwi r0, 2
/* 80224CE0 00220940 40 82 00 18 */ bne lbl_80224CF8
/* 80224CE4 00220944 C0 1E 00 14 */ lfs f0, 0x14(r30)
/* 80224CE8 00220948 FC 00 00 1E */ fctiwz f0, f0
/* 80224CEC 0022094C D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224CF0 00220950 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224CF4 00220954 48 00 00 0C */ b lbl_80224D00
lbl_80224CF8:
/* 80224CF8 00220958 38 7E 00 10 */ addi r3, r30, 0x10
/* 80224CFC 0022095C 48 00 90 39 */ bl func_8022DD34
lbl_80224D00:
/* 80224D00 00220960 2C 1F 00 10 */ cmpwi r31, 0x10
/* 80224D04 00220964 40 80 00 14 */ bge lbl_80224D18
/* 80224D08 00220968 2C 1F 00 00 */ cmpwi r31, 0
/* 80224D0C 0022096C 41 80 00 0C */ blt lbl_80224D18
/* 80224D10 00220970 38 00 00 01 */ li r0, 1
/* 80224D14 00220974 48 00 00 08 */ b lbl_80224D1C
lbl_80224D18:
/* 80224D18 00220978 38 00 00 00 */ li r0, 0
lbl_80224D1C:
/* 80224D1C 0022097C 2C 00 00 00 */ cmpwi r0, 0
/* 80224D20 00220980 41 82 02 AC */ beq lbl_80224FCC
/* 80224D24 00220984 7C 9D FA 14 */ add r4, r29, r31
/* 80224D28 00220988 98 64 09 18 */ stb r3, 0x918(r4)
/* 80224D2C 0022098C 48 00 02 A0 */ b lbl_80224FCC
/* 80224D30 00220990 A8 05 00 08 */ lha r0, 8(r5)
/* 80224D34 00220994 2C 00 00 01 */ cmpwi r0, 1
/* 80224D38 00220998 40 82 00 0C */ bne lbl_80224D44
/* 80224D3C 0022099C 80 65 00 0C */ lwz r3, 0xc(r5)
/* 80224D40 002209A0 48 00 00 28 */ b lbl_80224D68
lbl_80224D44:
/* 80224D44 002209A4 2C 00 00 02 */ cmpwi r0, 2
/* 80224D48 002209A8 40 82 00 18 */ bne lbl_80224D60
/* 80224D4C 002209AC C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80224D50 002209B0 FC 00 00 1E */ fctiwz f0, f0
/* 80224D54 002209B4 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224D58 002209B8 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224D5C 002209BC 48 00 00 0C */ b lbl_80224D68
lbl_80224D60:
/* 80224D60 002209C0 38 65 00 08 */ addi r3, r5, 8
/* 80224D64 002209C4 48 00 8F D1 */ bl func_8022DD34
lbl_80224D68:
/* 80224D68 002209C8 2C 03 00 10 */ cmpwi r3, 0x10
/* 80224D6C 002209CC 40 80 00 14 */ bge lbl_80224D80
/* 80224D70 002209D0 2C 03 00 00 */ cmpwi r3, 0
/* 80224D74 002209D4 41 80 00 0C */ blt lbl_80224D80
/* 80224D78 002209D8 38 00 00 01 */ li r0, 1
/* 80224D7C 002209DC 48 00 00 08 */ b lbl_80224D84
lbl_80224D80:
/* 80224D80 002209E0 38 00 00 00 */ li r0, 0
lbl_80224D84:
/* 80224D84 002209E4 2C 00 00 00 */ cmpwi r0, 0
/* 80224D88 002209E8 41 82 00 10 */ beq lbl_80224D98
/* 80224D8C 002209EC 7C 7D 1A 14 */ add r3, r29, r3
/* 80224D90 002209F0 88 63 09 18 */ lbz r3, 0x918(r3)
/* 80224D94 002209F4 48 00 00 08 */ b lbl_80224D9C
lbl_80224D98:
/* 80224D98 002209F8 38 60 00 00 */ li r3, 0
lbl_80224D9C:
/* 80224D9C 002209FC 38 00 00 01 */ li r0, 1
/* 80224DA0 00220A00 90 7F 00 04 */ stw r3, 4(r31)
/* 80224DA4 00220A04 B0 1F 00 00 */ sth r0, 0(r31)
/* 80224DA8 00220A08 48 00 02 24 */ b lbl_80224FCC
/* 80224DAC 00220A0C A8 05 00 08 */ lha r0, 8(r5)
/* 80224DB0 00220A10 2C 00 00 01 */ cmpwi r0, 1
/* 80224DB4 00220A14 40 82 00 0C */ bne lbl_80224DC0
/* 80224DB8 00220A18 80 65 00 0C */ lwz r3, 0xc(r5)
/* 80224DBC 00220A1C 48 00 00 28 */ b lbl_80224DE4
lbl_80224DC0:
/* 80224DC0 00220A20 2C 00 00 02 */ cmpwi r0, 2
/* 80224DC4 00220A24 40 82 00 18 */ bne lbl_80224DDC
/* 80224DC8 00220A28 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80224DCC 00220A2C FC 00 00 1E */ fctiwz f0, f0
/* 80224DD0 00220A30 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224DD4 00220A34 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224DD8 00220A38 48 00 00 0C */ b lbl_80224DE4
lbl_80224DDC:
/* 80224DDC 00220A3C 38 65 00 08 */ addi r3, r5, 8
/* 80224DE0 00220A40 48 00 8F 55 */ bl func_8022DD34
lbl_80224DE4:
/* 80224DE4 00220A44 2C 03 00 10 */ cmpwi r3, 0x10
/* 80224DE8 00220A48 40 80 00 14 */ bge lbl_80224DFC
/* 80224DEC 00220A4C 2C 03 00 00 */ cmpwi r3, 0
/* 80224DF0 00220A50 41 80 00 0C */ blt lbl_80224DFC
/* 80224DF4 00220A54 38 00 00 01 */ li r0, 1
/* 80224DF8 00220A58 48 00 00 08 */ b lbl_80224E00
lbl_80224DFC:
/* 80224DFC 00220A5C 38 00 00 00 */ li r0, 0
lbl_80224E00:
/* 80224E00 00220A60 2C 00 00 00 */ cmpwi r0, 0
/* 80224E04 00220A64 41 82 01 C8 */ beq lbl_80224FCC
/* 80224E08 00220A68 A8 1E 00 08 */ lha r0, 8(r30)
/* 80224E0C 00220A6C 2C 00 00 01 */ cmpwi r0, 1
/* 80224E10 00220A70 40 82 00 0C */ bne lbl_80224E1C
/* 80224E14 00220A74 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80224E18 00220A78 48 00 00 28 */ b lbl_80224E40
lbl_80224E1C:
/* 80224E1C 00220A7C 2C 00 00 02 */ cmpwi r0, 2
/* 80224E20 00220A80 40 82 00 18 */ bne lbl_80224E38
/* 80224E24 00220A84 C0 1E 00 0C */ lfs f0, 0xc(r30)
/* 80224E28 00220A88 FC 00 00 1E */ fctiwz f0, f0
/* 80224E2C 00220A8C D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224E30 00220A90 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224E34 00220A94 48 00 00 0C */ b lbl_80224E40
lbl_80224E38:
/* 80224E38 00220A98 38 7E 00 08 */ addi r3, r30, 8
/* 80224E3C 00220A9C 48 00 8E F9 */ bl func_8022DD34
lbl_80224E40:
/* 80224E40 00220AA0 2C 03 00 10 */ cmpwi r3, 0x10
/* 80224E44 00220AA4 40 80 00 14 */ bge lbl_80224E58
/* 80224E48 00220AA8 2C 03 00 00 */ cmpwi r3, 0
/* 80224E4C 00220AAC 41 80 00 0C */ blt lbl_80224E58
/* 80224E50 00220AB0 38 00 00 01 */ li r0, 1
/* 80224E54 00220AB4 48 00 00 08 */ b lbl_80224E5C
lbl_80224E58:
/* 80224E58 00220AB8 38 00 00 00 */ li r0, 0
lbl_80224E5C:
/* 80224E5C 00220ABC 2C 00 00 00 */ cmpwi r0, 0
/* 80224E60 00220AC0 41 82 00 10 */ beq lbl_80224E70
/* 80224E64 00220AC4 7C 7D 1A 14 */ add r3, r29, r3
/* 80224E68 00220AC8 8B A3 09 18 */ lbz r29, 0x918(r3)
/* 80224E6C 00220ACC 48 00 00 08 */ b lbl_80224E74
lbl_80224E70:
/* 80224E70 00220AD0 3B A0 00 00 */ li r29, 0
lbl_80224E74:
/* 80224E74 00220AD4 A8 1E 00 10 */ lha r0, 0x10(r30)
/* 80224E78 00220AD8 2C 00 00 01 */ cmpwi r0, 1
/* 80224E7C 00220ADC 40 82 00 0C */ bne lbl_80224E88
/* 80224E80 00220AE0 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 80224E84 00220AE4 48 00 00 28 */ b lbl_80224EAC
lbl_80224E88:
/* 80224E88 00220AE8 2C 00 00 02 */ cmpwi r0, 2
/* 80224E8C 00220AEC 40 82 00 18 */ bne lbl_80224EA4
/* 80224E90 00220AF0 C0 1E 00 14 */ lfs f0, 0x14(r30)
/* 80224E94 00220AF4 FC 00 00 1E */ fctiwz f0, f0
/* 80224E98 00220AF8 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224E9C 00220AFC 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224EA0 00220B00 48 00 00 0C */ b lbl_80224EAC
lbl_80224EA4:
/* 80224EA4 00220B04 38 7E 00 10 */ addi r3, r30, 0x10
/* 80224EA8 00220B08 48 00 8E 8D */ bl func_8022DD34
lbl_80224EAC:
/* 80224EAC 00220B0C 7C 1D 18 00 */ cmpw r29, r3
/* 80224EB0 00220B10 40 80 01 1C */ bge lbl_80224FCC
/* 80224EB4 00220B14 38 60 00 02 */ li r3, 2
/* 80224EB8 00220B18 48 00 01 18 */ b lbl_80224FD0
/* 80224EBC 00220B1C A8 05 00 08 */ lha r0, 8(r5)
/* 80224EC0 00220B20 2C 00 00 01 */ cmpwi r0, 1
/* 80224EC4 00220B24 40 82 00 0C */ bne lbl_80224ED0
/* 80224EC8 00220B28 80 65 00 0C */ lwz r3, 0xc(r5)
/* 80224ECC 00220B2C 48 00 00 28 */ b lbl_80224EF4
lbl_80224ED0:
/* 80224ED0 00220B30 2C 00 00 02 */ cmpwi r0, 2
/* 80224ED4 00220B34 40 82 00 18 */ bne lbl_80224EEC
/* 80224ED8 00220B38 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80224EDC 00220B3C FC 00 00 1E */ fctiwz f0, f0
/* 80224EE0 00220B40 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224EE4 00220B44 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224EE8 00220B48 48 00 00 0C */ b lbl_80224EF4
lbl_80224EEC:
/* 80224EEC 00220B4C 38 65 00 08 */ addi r3, r5, 8
/* 80224EF0 00220B50 48 00 8E 45 */ bl func_8022DD34
lbl_80224EF4:
/* 80224EF4 00220B54 2C 03 00 10 */ cmpwi r3, 0x10
/* 80224EF8 00220B58 40 80 00 14 */ bge lbl_80224F0C
/* 80224EFC 00220B5C 2C 03 00 00 */ cmpwi r3, 0
/* 80224F00 00220B60 41 80 00 0C */ blt lbl_80224F0C
/* 80224F04 00220B64 38 00 00 01 */ li r0, 1
/* 80224F08 00220B68 48 00 00 08 */ b lbl_80224F10
lbl_80224F0C:
/* 80224F0C 00220B6C 38 00 00 00 */ li r0, 0
lbl_80224F10:
/* 80224F10 00220B70 2C 00 00 00 */ cmpwi r0, 0
/* 80224F14 00220B74 41 82 00 B8 */ beq lbl_80224FCC
/* 80224F18 00220B78 A8 1E 00 08 */ lha r0, 8(r30)
/* 80224F1C 00220B7C 2C 00 00 01 */ cmpwi r0, 1
/* 80224F20 00220B80 40 82 00 0C */ bne lbl_80224F2C
/* 80224F24 00220B84 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80224F28 00220B88 48 00 00 28 */ b lbl_80224F50
lbl_80224F2C:
/* 80224F2C 00220B8C 2C 00 00 02 */ cmpwi r0, 2
/* 80224F30 00220B90 40 82 00 18 */ bne lbl_80224F48
/* 80224F34 00220B94 C0 1E 00 0C */ lfs f0, 0xc(r30)
/* 80224F38 00220B98 FC 00 00 1E */ fctiwz f0, f0
/* 80224F3C 00220B9C D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224F40 00220BA0 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224F44 00220BA4 48 00 00 0C */ b lbl_80224F50
lbl_80224F48:
/* 80224F48 00220BA8 38 7E 00 08 */ addi r3, r30, 8
/* 80224F4C 00220BAC 48 00 8D E9 */ bl func_8022DD34
lbl_80224F50:
/* 80224F50 00220BB0 2C 03 00 10 */ cmpwi r3, 0x10
/* 80224F54 00220BB4 40 80 00 14 */ bge lbl_80224F68
/* 80224F58 00220BB8 2C 03 00 00 */ cmpwi r3, 0
/* 80224F5C 00220BBC 41 80 00 0C */ blt lbl_80224F68
/* 80224F60 00220BC0 38 00 00 01 */ li r0, 1
/* 80224F64 00220BC4 48 00 00 08 */ b lbl_80224F6C
lbl_80224F68:
/* 80224F68 00220BC8 38 00 00 00 */ li r0, 0
lbl_80224F6C:
/* 80224F6C 00220BCC 2C 00 00 00 */ cmpwi r0, 0
/* 80224F70 00220BD0 41 82 00 10 */ beq lbl_80224F80
/* 80224F74 00220BD4 7C 7D 1A 14 */ add r3, r29, r3
/* 80224F78 00220BD8 8B A3 09 18 */ lbz r29, 0x918(r3)
/* 80224F7C 00220BDC 48 00 00 08 */ b lbl_80224F84
lbl_80224F80:
/* 80224F80 00220BE0 3B A0 00 00 */ li r29, 0
lbl_80224F84:
/* 80224F84 00220BE4 A8 1E 00 10 */ lha r0, 0x10(r30)
/* 80224F88 00220BE8 2C 00 00 01 */ cmpwi r0, 1
/* 80224F8C 00220BEC 40 82 00 0C */ bne lbl_80224F98
/* 80224F90 00220BF0 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 80224F94 00220BF4 48 00 00 28 */ b lbl_80224FBC
lbl_80224F98:
/* 80224F98 00220BF8 2C 00 00 02 */ cmpwi r0, 2
/* 80224F9C 00220BFC 40 82 00 18 */ bne lbl_80224FB4
/* 80224FA0 00220C00 C0 1E 00 14 */ lfs f0, 0x14(r30)
/* 80224FA4 00220C04 FC 00 00 1E */ fctiwz f0, f0
/* 80224FA8 00220C08 D8 01 00 10 */ stfd f0, 0x10(r1)
/* 80224FAC 00220C0C 80 61 00 14 */ lwz r3, 0x14(r1)
/* 80224FB0 00220C10 48 00 00 0C */ b lbl_80224FBC
lbl_80224FB4:
/* 80224FB4 00220C14 38 7E 00 10 */ addi r3, r30, 0x10
/* 80224FB8 00220C18 48 00 8D 7D */ bl func_8022DD34
lbl_80224FBC:
/* 80224FBC 00220C1C 7C 1D 18 00 */ cmpw r29, r3
/* 80224FC0 00220C20 41 82 00 0C */ beq lbl_80224FCC
/* 80224FC4 00220C24 38 60 00 02 */ li r3, 2
/* 80224FC8 00220C28 48 00 00 08 */ b lbl_80224FD0
lbl_80224FCC:
/* 80224FCC 00220C2C 38 60 00 01 */ li r3, 1
lbl_80224FD0:
/* 80224FD0 00220C30 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80224FD4 00220C34 83 E1 00 2C */ lwz r31, 0x2c(r1)
/* 80224FD8 00220C38 83 C1 00 28 */ lwz r30, 0x28(r1)
/* 80224FDC 00220C3C 83 A1 00 24 */ lwz r29, 0x24(r1)
/* 80224FE0 00220C40 7C 08 03 A6 */ mtlr r0
/* 80224FE4 00220C44 38 21 00 30 */ addi r1, r1, 0x30
/* 80224FE8 00220C48 4E 80 00 20 */ blr
.global func_80224FEC
func_80224FEC:
/* 80224FEC 00220C4C 94 21 FE 50 */ stwu r1, -0x1b0(r1)
/* 80224FF0 00220C50 7C 08 02 A6 */ mflr r0
/* 80224FF4 00220C54 90 01 01 B4 */ stw r0, 0x1b4(r1)
/* 80224FF8 00220C58 39 61 01 B0 */ addi r11, r1, 0x1b0
/* 80224FFC 00220C5C 4B FA 21 2D */ bl _savegpr_27
/* 80225000 00220C60 C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 80225004 00220C64 3C 00 43 30 */ lis r0, 0x4330
/* 80225008 00220C68 2C 04 00 01 */ cmpwi r4, 1
/* 8022500C 00220C6C 90 01 01 88 */ stw r0, 0x188(r1)
/* 80225010 00220C70 7C 7C 1B 78 */ mr r28, r3
/* 80225014 00220C74 7C 9B 23 78 */ mr r27, r4
/* 80225018 00220C78 90 01 01 90 */ stw r0, 0x190(r1)
/* 8022501C 00220C7C 7C BD 2B 78 */ mr r29, r5
/* 80225020 00220C80 7C DE 33 78 */ mr r30, r6
/* 80225024 00220C84 3B E0 00 00 */ li r31, 0
/* 80225028 00220C88 D0 01 00 78 */ stfs f0, 0x78(r1)
/* 8022502C 00220C8C D0 01 00 7C */ stfs f0, 0x7c(r1)
/* 80225030 00220C90 D0 01 00 80 */ stfs f0, 0x80(r1)
/* 80225034 00220C94 41 82 00 74 */ beq lbl_802250A8
/* 80225038 00220C98 A8 65 00 00 */ lha r3, 0(r5)
/* 8022503C 00220C9C 2C 03 00 04 */ cmpwi r3, 4
/* 80225040 00220CA0 41 82 00 64 */ beq lbl_802250A4
/* 80225044 00220CA4 38 03 FF FF */ addi r0, r3, -1
/* 80225048 00220CA8 54 00 04 3E */ clrlwi r0, r0, 0x10
/* 8022504C 00220CAC 28 00 00 01 */ cmplwi r0, 1
/* 80225050 00220CB0 41 81 00 10 */ bgt lbl_80225060
/* 80225054 00220CB4 38 00 00 00 */ li r0, 0
/* 80225058 00220CB8 B0 05 00 00 */ sth r0, 0(r5)
/* 8022505C 00220CBC 48 00 00 20 */ b lbl_8022507C
lbl_80225060:
/* 80225060 00220CC0 80 6D A3 B0 */ lwz r3, lbl_8063F670-_SDA_BASE_(r13)
/* 80225064 00220CC4 7F A4 EB 78 */ mr r4, r29
/* 80225068 00220CC8 80 63 09 10 */ lwz r3, 0x910(r3)
/* 8022506C 00220CCC 48 00 89 41 */ bl func_8022D9AC
/* 80225070 00220CD0 38 00 00 00 */ li r0, 0
/* 80225074 00220CD4 B0 1D 00 00 */ sth r0, 0(r29)
/* 80225078 00220CD8 B0 1D 00 02 */ sth r0, 2(r29)
lbl_8022507C:
/* 8022507C 00220CDC 38 80 00 04 */ li r4, 4
/* 80225080 00220CE0 38 01 00 78 */ addi r0, r1, 0x78
/* 80225084 00220CE4 38 60 00 00 */ li r3, 0
/* 80225088 00220CE8 B0 9D 00 00 */ sth r4, 0(r29)
/* 8022508C 00220CEC B0 7D 00 02 */ sth r3, 2(r29)
/* 80225090 00220CF0 90 1D 00 04 */ stw r0, 4(r29)
/* 80225094 00220CF4 80 6D A3 B0 */ lwz r3, lbl_8063F670-_SDA_BASE_(r13)
/* 80225098 00220CF8 7F A4 EB 78 */ mr r4, r29
/* 8022509C 00220CFC 80 63 09 10 */ lwz r3, 0x910(r3)
/* 802250A0 00220D00 48 00 88 41 */ bl func_8022D8E0
lbl_802250A4:
/* 802250A4 00220D04 83 FD 00 04 */ lwz r31, 4(r29)
lbl_802250A8:
/* 802250A8 00220D08 38 1B FF FD */ addi r0, r27, -3
/* 802250AC 00220D0C 28 00 00 1F */ cmplwi r0, 0x1f
/* 802250B0 00220D10 41 81 09 7C */ bgt lbl_80225A2C
/* 802250B4 00220D14 3C 60 80 42 */ lis r3, lbl_80423C80@ha
/* 802250B8 00220D18 54 00 10 3A */ slwi r0, r0, 2
/* 802250BC 00220D1C 38 63 3C 80 */ addi r3, r3, lbl_80423C80@l
/* 802250C0 00220D20 7C 63 00 2E */ lwzx r3, r3, r0
/* 802250C4 00220D24 7C 69 03 A6 */ mtctr r3
/* 802250C8 00220D28 4E 80 04 20 */ bctr
/* 802250CC 00220D2C 3C 80 80 42 */ lis r4, lbl_80423C6C@ha
/* 802250D0 00220D30 C0 3F 00 00 */ lfs f1, 0(r31)
/* 802250D4 00220D34 C0 5F 00 04 */ lfs f2, 4(r31)
/* 802250D8 00220D38 38 61 00 88 */ addi r3, r1, 0x88
/* 802250DC 00220D3C C0 7F 00 08 */ lfs f3, 8(r31)
/* 802250E0 00220D40 38 84 3C 6C */ addi r4, r4, lbl_80423C6C@l
/* 802250E4 00220D44 4C C6 32 42 */ crset 6
/* 802250E8 00220D48 4B FA 7A 15 */ bl sprintf
/* 802250EC 00220D4C 80 7C 09 14 */ lwz r3, 0x914(r28)
/* 802250F0 00220D50 38 81 00 88 */ addi r4, r1, 0x88
/* 802250F4 00220D54 38 A0 00 FF */ li r5, 0xff
/* 802250F8 00220D58 38 63 00 38 */ addi r3, r3, 0x38
/* 802250FC 00220D5C 4B FA 92 95 */ bl strncpy
/* 80225100 00220D60 80 9C 09 14 */ lwz r4, 0x914(r28)
/* 80225104 00220D64 38 00 00 03 */ li r0, 3
/* 80225108 00220D68 38 64 00 38 */ addi r3, r4, 0x38
/* 8022510C 00220D6C 90 64 00 14 */ stw r3, 0x14(r4)
/* 80225110 00220D70 80 7C 09 14 */ lwz r3, 0x914(r28)
/* 80225114 00220D74 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80225118 00220D78 48 00 09 14 */ b lbl_80225A2C
/* 8022511C 00220D7C C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 80225120 00220D80 D0 1F 00 08 */ stfs f0, 8(r31)
/* 80225124 00220D84 D0 1F 00 04 */ stfs f0, 4(r31)
/* 80225128 00220D88 D0 1F 00 00 */ stfs f0, 0(r31)
/* 8022512C 00220D8C 48 00 09 00 */ b lbl_80225A2C
/* 80225130 00220D90 C0 22 9C 80 */ lfs f1, lbl_80642280-_SDA2_BASE_(r2)
/* 80225134 00220D94 C0 1F 00 00 */ lfs f0, 0(r31)
/* 80225138 00220D98 FC 01 00 00 */ fcmpu cr0, f1, f0
/* 8022513C 00220D9C 40 82 00 1C */ bne lbl_80225158
/* 80225140 00220DA0 C0 1F 00 04 */ lfs f0, 4(r31)
/* 80225144 00220DA4 FC 01 00 00 */ fcmpu cr0, f1, f0
/* 80225148 00220DA8 40 82 00 10 */ bne lbl_80225158
/* 8022514C 00220DAC C0 1F 00 08 */ lfs f0, 8(r31)
/* 80225150 00220DB0 FC 01 00 00 */ fcmpu cr0, f1, f0
/* 80225154 00220DB4 41 82 08 D8 */ beq lbl_80225A2C
lbl_80225158:
/* 80225158 00220DB8 7F E3 FB 78 */ mr r3, r31
/* 8022515C 00220DBC 7F E4 FB 78 */ mr r4, r31
/* 80225160 00220DC0 48 05 7B C9 */ bl PSVECNormalize
/* 80225164 00220DC4 48 00 08 C8 */ b lbl_80225A2C
/* 80225168 00220DC8 A8 1D 00 08 */ lha r0, 8(r29)
/* 8022516C 00220DCC 2C 00 00 01 */ cmpwi r0, 1
/* 80225170 00220DD0 40 82 00 20 */ bne lbl_80225190
/* 80225174 00220DD4 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80225178 00220DD8 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 8022517C 00220DDC 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225180 00220DE0 90 01 01 8C */ stw r0, 0x18c(r1)
/* 80225184 00220DE4 C8 01 01 88 */ lfd f0, 0x188(r1)
/* 80225188 00220DE8 EC 20 08 28 */ fsubs f1, f0, f1
/* 8022518C 00220DEC 48 00 00 1C */ b lbl_802251A8
lbl_80225190:
/* 80225190 00220DF0 2C 00 00 02 */ cmpwi r0, 2
/* 80225194 00220DF4 40 82 00 0C */ bne lbl_802251A0
/* 80225198 00220DF8 C0 3D 00 0C */ lfs f1, 0xc(r29)
/* 8022519C 00220DFC 48 00 00 0C */ b lbl_802251A8
lbl_802251A0:
/* 802251A0 00220E00 38 7D 00 08 */ addi r3, r29, 8
/* 802251A4 00220E04 48 00 8B D5 */ bl func_8022DD78
lbl_802251A8:
/* 802251A8 00220E08 D0 3F 00 00 */ stfs f1, 0(r31)
/* 802251AC 00220E0C A8 1D 00 10 */ lha r0, 0x10(r29)
/* 802251B0 00220E10 2C 00 00 01 */ cmpwi r0, 1
/* 802251B4 00220E14 40 82 00 20 */ bne lbl_802251D4
/* 802251B8 00220E18 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 802251BC 00220E1C C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 802251C0 00220E20 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 802251C4 00220E24 90 01 01 94 */ stw r0, 0x194(r1)
/* 802251C8 00220E28 C8 01 01 90 */ lfd f0, 0x190(r1)
/* 802251CC 00220E2C EC 20 08 28 */ fsubs f1, f0, f1
/* 802251D0 00220E30 48 00 00 1C */ b lbl_802251EC
lbl_802251D4:
/* 802251D4 00220E34 2C 00 00 02 */ cmpwi r0, 2
/* 802251D8 00220E38 40 82 00 0C */ bne lbl_802251E4
/* 802251DC 00220E3C C0 3D 00 14 */ lfs f1, 0x14(r29)
/* 802251E0 00220E40 48 00 00 0C */ b lbl_802251EC
lbl_802251E4:
/* 802251E4 00220E44 38 7D 00 10 */ addi r3, r29, 0x10
/* 802251E8 00220E48 48 00 8B 91 */ bl func_8022DD78
lbl_802251EC:
/* 802251EC 00220E4C D0 3F 00 04 */ stfs f1, 4(r31)
/* 802251F0 00220E50 A8 1D 00 18 */ lha r0, 0x18(r29)
/* 802251F4 00220E54 2C 00 00 01 */ cmpwi r0, 1
/* 802251F8 00220E58 40 82 00 20 */ bne lbl_80225218
/* 802251FC 00220E5C 80 1D 00 1C */ lwz r0, 0x1c(r29)
/* 80225200 00220E60 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 80225204 00220E64 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225208 00220E68 90 01 01 8C */ stw r0, 0x18c(r1)
/* 8022520C 00220E6C C8 01 01 88 */ lfd f0, 0x188(r1)
/* 80225210 00220E70 EC 20 08 28 */ fsubs f1, f0, f1
/* 80225214 00220E74 48 00 00 1C */ b lbl_80225230
lbl_80225218:
/* 80225218 00220E78 2C 00 00 02 */ cmpwi r0, 2
/* 8022521C 00220E7C 40 82 00 0C */ bne lbl_80225228
/* 80225220 00220E80 C0 3D 00 1C */ lfs f1, 0x1c(r29)
/* 80225224 00220E84 48 00 00 0C */ b lbl_80225230
lbl_80225228:
/* 80225228 00220E88 38 7D 00 18 */ addi r3, r29, 0x18
/* 8022522C 00220E8C 48 00 8B 4D */ bl func_8022DD78
lbl_80225230:
/* 80225230 00220E90 D0 3F 00 08 */ stfs f1, 8(r31)
/* 80225234 00220E94 48 00 07 F8 */ b lbl_80225A2C
/* 80225238 00220E98 A8 1D 00 08 */ lha r0, 8(r29)
/* 8022523C 00220E9C 2C 00 00 01 */ cmpwi r0, 1
/* 80225240 00220EA0 40 82 00 20 */ bne lbl_80225260
/* 80225244 00220EA4 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80225248 00220EA8 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 8022524C 00220EAC 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225250 00220EB0 90 01 01 94 */ stw r0, 0x194(r1)
/* 80225254 00220EB4 C8 01 01 90 */ lfd f0, 0x190(r1)
/* 80225258 00220EB8 EC 20 08 28 */ fsubs f1, f0, f1
/* 8022525C 00220EBC 48 00 00 1C */ b lbl_80225278
lbl_80225260:
/* 80225260 00220EC0 2C 00 00 02 */ cmpwi r0, 2
/* 80225264 00220EC4 40 82 00 0C */ bne lbl_80225270
/* 80225268 00220EC8 C0 3D 00 0C */ lfs f1, 0xc(r29)
/* 8022526C 00220ECC 48 00 00 0C */ b lbl_80225278
lbl_80225270:
/* 80225270 00220ED0 38 7D 00 08 */ addi r3, r29, 8
/* 80225274 00220ED4 48 00 8B 05 */ bl func_8022DD78
lbl_80225278:
/* 80225278 00220ED8 D0 3F 00 00 */ stfs f1, 0(r31)
/* 8022527C 00220EDC A8 1D 00 10 */ lha r0, 0x10(r29)
/* 80225280 00220EE0 2C 00 00 01 */ cmpwi r0, 1
/* 80225284 00220EE4 40 82 00 20 */ bne lbl_802252A4
/* 80225288 00220EE8 80 1D 00 14 */ lwz r0, 0x14(r29)
/* 8022528C 00220EEC C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 80225290 00220EF0 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225294 00220EF4 90 01 01 8C */ stw r0, 0x18c(r1)
/* 80225298 00220EF8 C8 01 01 88 */ lfd f0, 0x188(r1)
/* 8022529C 00220EFC EC 20 08 28 */ fsubs f1, f0, f1
/* 802252A0 00220F00 48 00 00 1C */ b lbl_802252BC
lbl_802252A4:
/* 802252A4 00220F04 2C 00 00 02 */ cmpwi r0, 2
/* 802252A8 00220F08 40 82 00 0C */ bne lbl_802252B4
/* 802252AC 00220F0C C0 3D 00 14 */ lfs f1, 0x14(r29)
/* 802252B0 00220F10 48 00 00 0C */ b lbl_802252BC
lbl_802252B4:
/* 802252B4 00220F14 38 7D 00 10 */ addi r3, r29, 0x10
/* 802252B8 00220F18 48 00 8A C1 */ bl func_8022DD78
lbl_802252BC:
/* 802252BC 00220F1C D0 3F 00 04 */ stfs f1, 4(r31)
/* 802252C0 00220F20 A8 1D 00 18 */ lha r0, 0x18(r29)
/* 802252C4 00220F24 2C 00 00 01 */ cmpwi r0, 1
/* 802252C8 00220F28 40 82 00 20 */ bne lbl_802252E8
/* 802252CC 00220F2C 80 1D 00 1C */ lwz r0, 0x1c(r29)
/* 802252D0 00220F30 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 802252D4 00220F34 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 802252D8 00220F38 90 01 01 94 */ stw r0, 0x194(r1)
/* 802252DC 00220F3C C8 01 01 90 */ lfd f0, 0x190(r1)
/* 802252E0 00220F40 EC 20 08 28 */ fsubs f1, f0, f1
/* 802252E4 00220F44 48 00 00 1C */ b lbl_80225300
lbl_802252E8:
/* 802252E8 00220F48 2C 00 00 02 */ cmpwi r0, 2
/* 802252EC 00220F4C 40 82 00 0C */ bne lbl_802252F8
/* 802252F0 00220F50 C0 3D 00 1C */ lfs f1, 0x1c(r29)
/* 802252F4 00220F54 48 00 00 0C */ b lbl_80225300
lbl_802252F8:
/* 802252F8 00220F58 38 7D 00 18 */ addi r3, r29, 0x18
/* 802252FC 00220F5C 48 00 8A 7D */ bl func_8022DD78
lbl_80225300:
/* 80225300 00220F60 D0 3F 00 08 */ stfs f1, 8(r31)
/* 80225304 00220F64 48 00 07 28 */ b lbl_80225A2C
/* 80225308 00220F68 A8 1D 00 08 */ lha r0, 8(r29)
/* 8022530C 00220F6C 2C 00 00 01 */ cmpwi r0, 1
/* 80225310 00220F70 40 82 00 20 */ bne lbl_80225330
/* 80225314 00220F74 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80225318 00220F78 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 8022531C 00220F7C 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225320 00220F80 90 01 01 8C */ stw r0, 0x18c(r1)
/* 80225324 00220F84 C8 01 01 88 */ lfd f0, 0x188(r1)
/* 80225328 00220F88 EC 20 08 28 */ fsubs f1, f0, f1
/* 8022532C 00220F8C 48 00 00 1C */ b lbl_80225348
lbl_80225330:
/* 80225330 00220F90 2C 00 00 02 */ cmpwi r0, 2
/* 80225334 00220F94 40 82 00 0C */ bne lbl_80225340
/* 80225338 00220F98 C0 3D 00 0C */ lfs f1, 0xc(r29)
/* 8022533C 00220F9C 48 00 00 0C */ b lbl_80225348
lbl_80225340:
/* 80225340 00220FA0 38 7D 00 08 */ addi r3, r29, 8
/* 80225344 00220FA4 48 00 8A 35 */ bl func_8022DD78
lbl_80225348:
/* 80225348 00220FA8 D0 3F 00 08 */ stfs f1, 8(r31)
/* 8022534C 00220FAC D0 3F 00 04 */ stfs f1, 4(r31)
/* 80225350 00220FB0 D0 3F 00 00 */ stfs f1, 0(r31)
/* 80225354 00220FB4 48 00 06 D8 */ b lbl_80225A2C
/* 80225358 00220FB8 C0 3F 00 00 */ lfs f1, 0(r31)
/* 8022535C 00220FBC C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 80225360 00220FC0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80225364 00220FC4 4C 41 13 82 */ cror 2, 1, 2
/* 80225368 00220FC8 40 82 00 08 */ bne lbl_80225370
/* 8022536C 00220FCC 48 00 00 08 */ b lbl_80225374
lbl_80225370:
/* 80225370 00220FD0 FC 20 08 50 */ fneg f1, f1
lbl_80225374:
/* 80225374 00220FD4 D0 3F 00 00 */ stfs f1, 0(r31)
/* 80225378 00220FD8 C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 8022537C 00220FDC C0 3F 00 04 */ lfs f1, 4(r31)
/* 80225380 00220FE0 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80225384 00220FE4 4C 41 13 82 */ cror 2, 1, 2
/* 80225388 00220FE8 40 82 00 08 */ bne lbl_80225390
/* 8022538C 00220FEC 48 00 00 08 */ b lbl_80225394
lbl_80225390:
/* 80225390 00220FF0 FC 20 08 50 */ fneg f1, f1
lbl_80225394:
/* 80225394 00220FF4 D0 3F 00 04 */ stfs f1, 4(r31)
/* 80225398 00220FF8 C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 8022539C 00220FFC C0 3F 00 08 */ lfs f1, 8(r31)
/* 802253A0 00221000 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802253A4 00221004 4C 41 13 82 */ cror 2, 1, 2
/* 802253A8 00221008 40 82 00 08 */ bne lbl_802253B0
/* 802253AC 0022100C 48 00 00 08 */ b lbl_802253B4
lbl_802253B0:
/* 802253B0 00221010 FC 20 08 50 */ fneg f1, f1
lbl_802253B4:
/* 802253B4 00221014 D0 3F 00 08 */ stfs f1, 8(r31)
/* 802253B8 00221018 48 00 06 74 */ b lbl_80225A2C
/* 802253BC 0022101C C0 1F 00 00 */ lfs f0, 0(r31)
/* 802253C0 00221020 FC 00 00 50 */ fneg f0, f0
/* 802253C4 00221024 D0 1F 00 00 */ stfs f0, 0(r31)
/* 802253C8 00221028 C0 1F 00 04 */ lfs f0, 4(r31)
/* 802253CC 0022102C FC 00 00 50 */ fneg f0, f0
/* 802253D0 00221030 D0 1F 00 04 */ stfs f0, 4(r31)
/* 802253D4 00221034 C0 1F 00 08 */ lfs f0, 8(r31)
/* 802253D8 00221038 FC 00 00 50 */ fneg f0, f0
/* 802253DC 0022103C D0 1F 00 08 */ stfs f0, 8(r31)
/* 802253E0 00221040 48 00 06 4C */ b lbl_80225A2C
/* 802253E4 00221044 C0 1F 00 00 */ lfs f0, 0(r31)
/* 802253E8 00221048 C0 42 9C 84 */ lfs f2, lbl_80642284-_SDA2_BASE_(r2)
/* 802253EC 0022104C FC 00 10 40 */ fcmpo cr0, f0, f2
/* 802253F0 00221050 40 80 00 40 */ bge lbl_80225430
/* 802253F4 00221054 C0 22 9C 88 */ lfs f1, lbl_80642288-_SDA2_BASE_(r2)
/* 802253F8 00221058 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 802253FC 0022105C 40 81 00 34 */ ble lbl_80225430
/* 80225400 00221060 C0 1F 00 04 */ lfs f0, 4(r31)
/* 80225404 00221064 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 80225408 00221068 40 80 00 28 */ bge lbl_80225430
/* 8022540C 0022106C FC 00 08 40 */ fcmpo cr0, f0, f1
/* 80225410 00221070 40 81 00 20 */ ble lbl_80225430
/* 80225414 00221074 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80225418 00221078 FC 00 10 40 */ fcmpo cr0, f0, f2
/* 8022541C 0022107C 40 80 00 14 */ bge lbl_80225430
/* 80225420 00221080 FC 00 08 40 */ fcmpo cr0, f0, f1
/* 80225424 00221084 40 81 00 0C */ ble lbl_80225430
/* 80225428 00221088 38 00 00 01 */ li r0, 1
/* 8022542C 0022108C 48 00 00 08 */ b lbl_80225434
lbl_80225430:
/* 80225430 00221090 38 00 00 00 */ li r0, 0
lbl_80225434:
/* 80225434 00221094 2C 00 00 00 */ cmpwi r0, 0
/* 80225438 00221098 41 82 00 14 */ beq lbl_8022544C
/* 8022543C 0022109C 38 00 00 01 */ li r0, 1
/* 80225440 002210A0 B0 1E 00 00 */ sth r0, 0(r30)
/* 80225444 002210A4 90 1E 00 04 */ stw r0, 4(r30)
/* 80225448 002210A8 48 00 05 E4 */ b lbl_80225A2C
lbl_8022544C:
/* 8022544C 002210AC 38 60 00 01 */ li r3, 1
/* 80225450 002210B0 38 00 00 00 */ li r0, 0
/* 80225454 002210B4 B0 7E 00 00 */ sth r3, 0(r30)
/* 80225458 002210B8 90 1E 00 04 */ stw r0, 4(r30)
/* 8022545C 002210BC 48 00 05 D0 */ b lbl_80225A2C
/* 80225460 002210C0 A8 1D 00 08 */ lha r0, 8(r29)
/* 80225464 002210C4 2C 00 00 04 */ cmpwi r0, 4
/* 80225468 002210C8 40 82 05 C4 */ bne lbl_80225A2C
/* 8022546C 002210CC 40 82 00 0C */ bne lbl_80225478
/* 80225470 002210D0 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 80225474 002210D4 48 00 00 0C */ b lbl_80225480
lbl_80225478:
/* 80225478 002210D8 38 7D 00 08 */ addi r3, r29, 8
/* 8022547C 002210DC 4B E0 2E 65 */ bl func_800282E0
lbl_80225480:
/* 80225480 002210E0 7C 64 1B 78 */ mr r4, r3
/* 80225484 002210E4 7F E3 FB 78 */ mr r3, r31
/* 80225488 002210E8 38 A1 00 78 */ addi r5, r1, 0x78
/* 8022548C 002210EC 48 05 79 5D */ bl PSVECCrossProduct
/* 80225490 002210F0 80 7C 09 14 */ lwz r3, 0x914(r28)
/* 80225494 002210F4 38 00 00 04 */ li r0, 4
/* 80225498 002210F8 C0 01 00 78 */ lfs f0, 0x78(r1)
/* 8022549C 002210FC D0 03 01 38 */ stfs f0, 0x138(r3)
/* 802254A0 00221100 C0 01 00 7C */ lfs f0, 0x7c(r1)
/* 802254A4 00221104 D0 03 01 3C */ stfs f0, 0x13c(r3)
/* 802254A8 00221108 C0 01 00 80 */ lfs f0, 0x80(r1)
/* 802254AC 0022110C D0 03 01 40 */ stfs f0, 0x140(r3)
/* 802254B0 00221110 80 9C 09 14 */ lwz r4, 0x914(r28)
/* 802254B4 00221114 38 64 01 38 */ addi r3, r4, 0x138
/* 802254B8 00221118 90 64 00 14 */ stw r3, 0x14(r4)
/* 802254BC 0022111C 80 7C 09 14 */ lwz r3, 0x914(r28)
/* 802254C0 00221120 B0 03 00 10 */ sth r0, 0x10(r3)
/* 802254C4 00221124 48 00 05 68 */ b lbl_80225A2C
/* 802254C8 00221128 A8 1D 00 08 */ lha r0, 8(r29)
/* 802254CC 0022112C 2C 00 00 04 */ cmpwi r0, 4
/* 802254D0 00221130 40 82 00 34 */ bne lbl_80225504
/* 802254D4 00221134 40 82 00 0C */ bne lbl_802254E0
/* 802254D8 00221138 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 802254DC 0022113C 48 00 00 0C */ b lbl_802254E8
lbl_802254E0:
/* 802254E0 00221140 38 7D 00 08 */ addi r3, r29, 8
/* 802254E4 00221144 4B E0 2D FD */ bl func_800282E0
lbl_802254E8:
/* 802254E8 00221148 7C 64 1B 78 */ mr r4, r3
/* 802254EC 0022114C 7F E3 FB 78 */ mr r3, r31
/* 802254F0 00221150 48 05 78 D9 */ bl PSVECDotProduct
/* 802254F4 00221154 38 00 00 02 */ li r0, 2
/* 802254F8 00221158 D0 3E 00 04 */ stfs f1, 4(r30)
/* 802254FC 0022115C B0 1E 00 00 */ sth r0, 0(r30)
/* 80225500 00221160 48 00 05 2C */ b lbl_80225A2C
lbl_80225504:
/* 80225504 00221164 C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 80225508 00221168 38 00 00 02 */ li r0, 2
/* 8022550C 0022116C B0 1E 00 00 */ sth r0, 0(r30)
/* 80225510 00221170 D0 1E 00 04 */ stfs f0, 4(r30)
/* 80225514 00221174 48 00 05 18 */ b lbl_80225A2C
/* 80225518 00221178 7F E3 FB 78 */ mr r3, r31
/* 8022551C 0022117C 48 05 78 69 */ bl PSVECMag
/* 80225520 00221180 38 00 00 02 */ li r0, 2
/* 80225524 00221184 D0 3E 00 04 */ stfs f1, 4(r30)
/* 80225528 00221188 B0 1E 00 00 */ sth r0, 0(r30)
/* 8022552C 0022118C 48 00 05 00 */ b lbl_80225A2C
/* 80225530 00221190 7F E3 FB 78 */ mr r3, r31
/* 80225534 00221194 48 05 78 39 */ bl PSVECSquareMag
/* 80225538 00221198 38 00 00 02 */ li r0, 2
/* 8022553C 0022119C D0 3E 00 04 */ stfs f1, 4(r30)
/* 80225540 002211A0 B0 1E 00 00 */ sth r0, 0(r30)
/* 80225544 002211A4 48 00 04 E8 */ b lbl_80225A2C
/* 80225548 002211A8 A8 1D 00 08 */ lha r0, 8(r29)
/* 8022554C 002211AC 2C 00 00 04 */ cmpwi r0, 4
/* 80225550 002211B0 40 82 00 BC */ bne lbl_8022560C
/* 80225554 002211B4 7F E3 FB 78 */ mr r3, r31
/* 80225558 002211B8 38 81 00 6C */ addi r4, r1, 0x6c
/* 8022555C 002211BC 48 05 77 CD */ bl PSVECNormalize
/* 80225560 002211C0 A8 1D 00 08 */ lha r0, 8(r29)
/* 80225564 002211C4 2C 00 00 04 */ cmpwi r0, 4
/* 80225568 002211C8 40 82 00 0C */ bne lbl_80225574
/* 8022556C 002211CC 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 80225570 002211D0 48 00 00 0C */ b lbl_8022557C
lbl_80225574:
/* 80225574 002211D4 38 7D 00 08 */ addi r3, r29, 8
/* 80225578 002211D8 4B E0 2D 69 */ bl func_800282E0
lbl_8022557C:
/* 8022557C 002211DC 38 81 00 60 */ addi r4, r1, 0x60
/* 80225580 002211E0 48 05 77 A9 */ bl PSVECNormalize
/* 80225584 002211E4 38 61 00 6C */ addi r3, r1, 0x6c
/* 80225588 002211E8 38 81 00 60 */ addi r4, r1, 0x60
/* 8022558C 002211EC 48 05 78 3D */ bl PSVECDotProduct
/* 80225590 002211F0 C0 02 9C 8C */ lfs f0, lbl_8064228C-_SDA2_BASE_(r2)
/* 80225594 002211F4 FC 01 00 40 */ fcmpo cr0, f1, f0
/* 80225598 002211F8 4C 41 13 82 */ cror 2, 1, 2
/* 8022559C 002211FC 40 82 00 0C */ bne lbl_802255A8
/* 802255A0 00221200 C0 42 9C 80 */ lfs f2, lbl_80642280-_SDA2_BASE_(r2)
/* 802255A4 00221204 48 00 00 24 */ b lbl_802255C8
lbl_802255A8:
/* 802255A8 00221208 C0 02 9C 90 */ lfs f0, lbl_80642290-_SDA2_BASE_(r2)
/* 802255AC 0022120C FC 01 00 40 */ fcmpo cr0, f1, f0
/* 802255B0 00221210 4C 40 13 82 */ cror 2, 0, 2
/* 802255B4 00221214 40 82 00 0C */ bne lbl_802255C0
/* 802255B8 00221218 C0 42 9C 94 */ lfs f2, lbl_80642294-_SDA2_BASE_(r2)
/* 802255BC 0022121C 48 00 00 0C */ b lbl_802255C8
lbl_802255C0:
/* 802255C0 00221220 4B FA F0 15 */ bl acos
/* 802255C4 00221224 FC 40 08 18 */ frsp f2, f1
lbl_802255C8:
/* 802255C8 00221228 C0 22 9C 98 */ lfs f1, lbl_80642298-_SDA2_BASE_(r2)
/* 802255CC 0022122C C0 02 9C 9C */ lfs f0, lbl_8064229C-_SDA2_BASE_(r2)
/* 802255D0 00221230 EC 41 00 B2 */ fmuls f2, f1, f2
/* 802255D4 00221234 48 00 00 08 */ b lbl_802255DC
lbl_802255D8:
/* 802255D8 00221238 EC 42 00 28 */ fsubs f2, f2, f0
lbl_802255DC:
/* 802255DC 0022123C FC 02 00 40 */ fcmpo cr0, f2, f0
/* 802255E0 00221240 41 81 FF F8 */ bgt lbl_802255D8
/* 802255E4 00221244 C0 22 9C 9C */ lfs f1, lbl_8064229C-_SDA2_BASE_(r2)
/* 802255E8 00221248 C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 802255EC 0022124C 48 00 00 08 */ b lbl_802255F4
lbl_802255F0:
/* 802255F0 00221250 EC 42 08 2A */ fadds f2, f2, f1
lbl_802255F4:
/* 802255F4 00221254 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 802255F8 00221258 41 80 FF F8 */ blt lbl_802255F0
/* 802255FC 0022125C 38 00 00 02 */ li r0, 2
/* 80225600 00221260 D0 5E 00 04 */ stfs f2, 4(r30)
/* 80225604 00221264 B0 1E 00 00 */ sth r0, 0(r30)
/* 80225608 00221268 48 00 04 24 */ b lbl_80225A2C
lbl_8022560C:
/* 8022560C 0022126C C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 80225610 00221270 38 00 00 02 */ li r0, 2
/* 80225614 00221274 B0 1E 00 00 */ sth r0, 0(r30)
/* 80225618 00221278 D0 1E 00 04 */ stfs f0, 4(r30)
/* 8022561C 0022127C 48 00 04 10 */ b lbl_80225A2C
/* 80225620 00221280 A8 1D 00 08 */ lha r0, 8(r29)
/* 80225624 00221284 2C 00 00 04 */ cmpwi r0, 4
/* 80225628 00221288 40 82 00 58 */ bne lbl_80225680
/* 8022562C 0022128C 40 82 00 0C */ bne lbl_80225638
/* 80225630 00221290 80 7D 00 0C */ lwz r3, 0xc(r29)
/* 80225634 00221294 48 00 00 0C */ b lbl_80225640
lbl_80225638:
/* 80225638 00221298 38 7D 00 08 */ addi r3, r29, 8
/* 8022563C 0022129C 4B E0 2C A5 */ bl func_800282E0
lbl_80225640:
/* 80225640 002212A0 7C 64 1B 78 */ mr r4, r3
/* 80225644 002212A4 7F E3 FB 78 */ mr r3, r31
/* 80225648 002212A8 38 A1 00 44 */ addi r5, r1, 0x44
/* 8022564C 002212AC 48 05 76 9D */ bl PSVECSubtract
/* 80225650 002212B0 C0 41 00 44 */ lfs f2, 0x44(r1)
/* 80225654 002212B4 38 61 00 6C */ addi r3, r1, 0x6c
/* 80225658 002212B8 C0 21 00 48 */ lfs f1, 0x48(r1)
/* 8022565C 002212BC C0 01 00 4C */ lfs f0, 0x4c(r1)
/* 80225660 002212C0 D0 41 00 6C */ stfs f2, 0x6c(r1)
/* 80225664 002212C4 D0 21 00 70 */ stfs f1, 0x70(r1)
/* 80225668 002212C8 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 8022566C 002212CC 48 05 77 19 */ bl PSVECMag
/* 80225670 002212D0 38 00 00 02 */ li r0, 2
/* 80225674 002212D4 D0 3E 00 04 */ stfs f1, 4(r30)
/* 80225678 002212D8 B0 1E 00 00 */ sth r0, 0(r30)
/* 8022567C 002212DC 48 00 03 B0 */ b lbl_80225A2C
lbl_80225680:
/* 80225680 002212E0 C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 80225684 002212E4 38 00 00 02 */ li r0, 2
/* 80225688 002212E8 B0 1E 00 00 */ sth r0, 0(r30)
/* 8022568C 002212EC D0 1E 00 04 */ stfs f0, 4(r30)
/* 80225690 002212F0 48 00 03 9C */ b lbl_80225A2C
/* 80225694 002212F4 A8 1D 00 08 */ lha r0, 8(r29)
/* 80225698 002212F8 2C 00 00 04 */ cmpwi r0, 4
/* 8022569C 002212FC 40 82 00 A0 */ bne lbl_8022573C
/* 802256A0 00221300 C0 1F 00 00 */ lfs f0, 0(r31)
/* 802256A4 00221304 D0 01 00 6C */ stfs f0, 0x6c(r1)
/* 802256A8 00221308 C0 1F 00 04 */ lfs f0, 4(r31)
/* 802256AC 0022130C D0 01 00 70 */ stfs f0, 0x70(r1)
/* 802256B0 00221310 C0 1F 00 08 */ lfs f0, 8(r31)
/* 802256B4 00221314 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 802256B8 00221318 A8 1D 00 08 */ lha r0, 8(r29)
/* 802256BC 0022131C 2C 00 00 04 */ cmpwi r0, 4
/* 802256C0 00221320 40 82 00 0C */ bne lbl_802256CC
/* 802256C4 00221324 80 DD 00 0C */ lwz r6, 0xc(r29)
/* 802256C8 00221328 48 00 00 10 */ b lbl_802256D8
lbl_802256CC:
/* 802256CC 0022132C 38 7D 00 08 */ addi r3, r29, 8
/* 802256D0 00221330 4B E0 2C 11 */ bl func_800282E0
/* 802256D4 00221334 7C 66 1B 78 */ mr r6, r3
lbl_802256D8:
/* 802256D8 00221338 C0 26 00 00 */ lfs f1, 0(r6)
/* 802256DC 0022133C 38 61 00 6C */ addi r3, r1, 0x6c
/* 802256E0 00221340 C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 802256E4 00221344 38 81 00 60 */ addi r4, r1, 0x60
/* 802256E8 00221348 D0 21 00 60 */ stfs f1, 0x60(r1)
/* 802256EC 0022134C 38 A1 00 38 */ addi r5, r1, 0x38
/* 802256F0 00221350 C0 26 00 04 */ lfs f1, 4(r6)
/* 802256F4 00221354 D0 21 00 64 */ stfs f1, 0x64(r1)
/* 802256F8 00221358 C0 26 00 08 */ lfs f1, 8(r6)
/* 802256FC 0022135C D0 21 00 68 */ stfs f1, 0x68(r1)
/* 80225700 00221360 D0 01 00 64 */ stfs f0, 0x64(r1)
/* 80225704 00221364 D0 01 00 70 */ stfs f0, 0x70(r1)
/* 80225708 00221368 48 05 75 E1 */ bl PSVECSubtract
/* 8022570C 0022136C C0 41 00 38 */ lfs f2, 0x38(r1)
/* 80225710 00221370 38 61 00 6C */ addi r3, r1, 0x6c
/* 80225714 00221374 C0 21 00 3C */ lfs f1, 0x3c(r1)
/* 80225718 00221378 C0 01 00 40 */ lfs f0, 0x40(r1)
/* 8022571C 0022137C D0 41 00 6C */ stfs f2, 0x6c(r1)
/* 80225720 00221380 D0 21 00 70 */ stfs f1, 0x70(r1)
/* 80225724 00221384 D0 01 00 74 */ stfs f0, 0x74(r1)
/* 80225728 00221388 48 05 76 5D */ bl PSVECMag
/* 8022572C 0022138C 38 00 00 02 */ li r0, 2
/* 80225730 00221390 D0 3E 00 04 */ stfs f1, 4(r30)
/* 80225734 00221394 B0 1E 00 00 */ sth r0, 0(r30)
/* 80225738 00221398 48 00 02 F4 */ b lbl_80225A2C
lbl_8022573C:
/* 8022573C 0022139C C0 02 9C 80 */ lfs f0, lbl_80642280-_SDA2_BASE_(r2)
/* 80225740 002213A0 38 00 00 02 */ li r0, 2
/* 80225744 002213A4 B0 1E 00 00 */ sth r0, 0(r30)
/* 80225748 002213A8 D0 1E 00 04 */ stfs f0, 4(r30)
/* 8022574C 002213AC 48 00 02 E0 */ b lbl_80225A2C
/* 80225750 002213B0 A8 1D 00 08 */ lha r0, 8(r29)
/* 80225754 002213B4 2C 00 00 01 */ cmpwi r0, 1
/* 80225758 002213B8 40 82 00 20 */ bne lbl_80225778
/* 8022575C 002213BC 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80225760 002213C0 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 80225764 002213C4 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225768 002213C8 90 01 01 94 */ stw r0, 0x194(r1)
/* 8022576C 002213CC C8 01 01 90 */ lfd f0, 0x190(r1)
/* 80225770 002213D0 EC 20 08 28 */ fsubs f1, f0, f1
/* 80225774 002213D4 48 00 00 1C */ b lbl_80225790
lbl_80225778:
/* 80225778 002213D8 2C 00 00 02 */ cmpwi r0, 2
/* 8022577C 002213DC 40 82 00 0C */ bne lbl_80225788
/* 80225780 002213E0 C0 3D 00 0C */ lfs f1, 0xc(r29)
/* 80225784 002213E4 48 00 00 0C */ b lbl_80225790
lbl_80225788:
/* 80225788 002213E8 38 7D 00 08 */ addi r3, r29, 8
/* 8022578C 002213EC 48 00 85 ED */ bl func_8022DD78
lbl_80225790:
/* 80225790 002213F0 C0 02 9C A0 */ lfs f0, lbl_806422A0-_SDA2_BASE_(r2)
/* 80225794 002213F4 3C 80 80 49 */ lis r4, lbl_80493608@ha
/* 80225798 002213F8 38 61 00 50 */ addi r3, r1, 0x50
/* 8022579C 002213FC EC 20 00 72 */ fmuls f1, f0, f1
/* 802257A0 00221400 38 84 36 08 */ addi r4, r4, lbl_80493608@l
/* 802257A4 00221404 48 05 79 81 */ bl C_QUATRotAxisRad
/* 802257A8 00221408 C0 1F 00 00 */ lfs f0, 0(r31)
/* 802257AC 0022140C 38 61 00 2C */ addi r3, r1, 0x2c
/* 802257B0 00221410 38 81 00 50 */ addi r4, r1, 0x50
/* 802257B4 00221414 D0 01 00 2C */ stfs f0, 0x2c(r1)
/* 802257B8 00221418 C0 1F 00 04 */ lfs f0, 4(r31)
/* 802257BC 0022141C D0 01 00 30 */ stfs f0, 0x30(r1)
/* 802257C0 00221420 C0 1F 00 08 */ lfs f0, 8(r31)
/* 802257C4 00221424 D0 01 00 34 */ stfs f0, 0x34(r1)
/* 802257C8 00221428 4B FF E2 45 */ bl func_80223A0C
/* 802257CC 0022142C C0 01 00 2C */ lfs f0, 0x2c(r1)
/* 802257D0 00221430 D0 1F 00 00 */ stfs f0, 0(r31)
/* 802257D4 00221434 C0 01 00 30 */ lfs f0, 0x30(r1)
/* 802257D8 00221438 D0 1F 00 04 */ stfs f0, 4(r31)
/* 802257DC 0022143C C0 01 00 34 */ lfs f0, 0x34(r1)
/* 802257E0 00221440 D0 1F 00 08 */ stfs f0, 8(r31)
/* 802257E4 00221444 48 00 02 48 */ b lbl_80225A2C
/* 802257E8 00221448 A8 1D 00 08 */ lha r0, 8(r29)
/* 802257EC 0022144C 2C 00 00 01 */ cmpwi r0, 1
/* 802257F0 00221450 40 82 00 20 */ bne lbl_80225810
/* 802257F4 00221454 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 802257F8 00221458 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 802257FC 0022145C 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225800 00221460 90 01 01 8C */ stw r0, 0x18c(r1)
/* 80225804 00221464 C8 01 01 88 */ lfd f0, 0x188(r1)
/* 80225808 00221468 EC 20 08 28 */ fsubs f1, f0, f1
/* 8022580C 0022146C 48 00 00 1C */ b lbl_80225828
lbl_80225810:
/* 80225810 00221470 2C 00 00 02 */ cmpwi r0, 2
/* 80225814 00221474 40 82 00 0C */ bne lbl_80225820
/* 80225818 00221478 C0 3D 00 0C */ lfs f1, 0xc(r29)
/* 8022581C 0022147C 48 00 00 0C */ b lbl_80225828
lbl_80225820:
/* 80225820 00221480 38 7D 00 08 */ addi r3, r29, 8
/* 80225824 00221484 48 00 85 55 */ bl func_8022DD78
lbl_80225828:
/* 80225828 00221488 C0 02 9C A0 */ lfs f0, lbl_806422A0-_SDA2_BASE_(r2)
/* 8022582C 0022148C 3C 80 80 49 */ lis r4, lbl_80493614@ha
/* 80225830 00221490 38 61 00 50 */ addi r3, r1, 0x50
/* 80225834 00221494 EC 20 00 72 */ fmuls f1, f0, f1
/* 80225838 00221498 38 84 36 14 */ addi r4, r4, lbl_80493614@l
/* 8022583C 0022149C 48 05 78 E9 */ bl C_QUATRotAxisRad
/* 80225840 002214A0 C0 1F 00 00 */ lfs f0, 0(r31)
/* 80225844 002214A4 38 61 00 20 */ addi r3, r1, 0x20
/* 80225848 002214A8 38 81 00 50 */ addi r4, r1, 0x50
/* 8022584C 002214AC D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80225850 002214B0 C0 1F 00 04 */ lfs f0, 4(r31)
/* 80225854 002214B4 D0 01 00 24 */ stfs f0, 0x24(r1)
/* 80225858 002214B8 C0 1F 00 08 */ lfs f0, 8(r31)
/* 8022585C 002214BC D0 01 00 28 */ stfs f0, 0x28(r1)
/* 80225860 002214C0 4B FF E1 AD */ bl func_80223A0C
/* 80225864 002214C4 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80225868 002214C8 D0 1F 00 00 */ stfs f0, 0(r31)
/* 8022586C 002214CC C0 01 00 24 */ lfs f0, 0x24(r1)
/* 80225870 002214D0 D0 1F 00 04 */ stfs f0, 4(r31)
/* 80225874 002214D4 C0 01 00 28 */ lfs f0, 0x28(r1)
/* 80225878 002214D8 D0 1F 00 08 */ stfs f0, 8(r31)
/* 8022587C 002214DC 48 00 01 B0 */ b lbl_80225A2C
/* 80225880 002214E0 A8 1D 00 08 */ lha r0, 8(r29)
/* 80225884 002214E4 2C 00 00 01 */ cmpwi r0, 1
/* 80225888 002214E8 40 82 00 20 */ bne lbl_802258A8
/* 8022588C 002214EC 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80225890 002214F0 C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 80225894 002214F4 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 80225898 002214F8 90 01 01 94 */ stw r0, 0x194(r1)
/* 8022589C 002214FC C8 01 01 90 */ lfd f0, 0x190(r1)
/* 802258A0 00221500 EC 20 08 28 */ fsubs f1, f0, f1
/* 802258A4 00221504 48 00 00 1C */ b lbl_802258C0
lbl_802258A8:
/* 802258A8 00221508 2C 00 00 02 */ cmpwi r0, 2
/* 802258AC 0022150C 40 82 00 0C */ bne lbl_802258B8
/* 802258B0 00221510 C0 3D 00 0C */ lfs f1, 0xc(r29)
/* 802258B4 00221514 48 00 00 0C */ b lbl_802258C0
lbl_802258B8:
/* 802258B8 00221518 38 7D 00 08 */ addi r3, r29, 8
/* 802258BC 0022151C 48 00 84 BD */ bl func_8022DD78
lbl_802258C0:
/* 802258C0 00221520 C0 02 9C A0 */ lfs f0, lbl_806422A0-_SDA2_BASE_(r2)
/* 802258C4 00221524 3C 80 80 49 */ lis r4, lbl_80493620@ha
/* 802258C8 00221528 38 61 00 50 */ addi r3, r1, 0x50
/* 802258CC 0022152C EC 20 00 72 */ fmuls f1, f0, f1
/* 802258D0 00221530 38 84 36 20 */ addi r4, r4, lbl_80493620@l
/* 802258D4 00221534 48 05 78 51 */ bl C_QUATRotAxisRad
/* 802258D8 00221538 C0 1F 00 00 */ lfs f0, 0(r31)
/* 802258DC 0022153C 38 61 00 14 */ addi r3, r1, 0x14
/* 802258E0 00221540 38 81 00 50 */ addi r4, r1, 0x50
/* 802258E4 00221544 D0 01 00 14 */ stfs f0, 0x14(r1)
/* 802258E8 00221548 C0 1F 00 04 */ lfs f0, 4(r31)
/* 802258EC 0022154C D0 01 00 18 */ stfs f0, 0x18(r1)
/* 802258F0 00221550 C0 1F 00 08 */ lfs f0, 8(r31)
/* 802258F4 00221554 D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 802258F8 00221558 4B FF E1 15 */ bl func_80223A0C
/* 802258FC 0022155C C0 01 00 14 */ lfs f0, 0x14(r1)
/* 80225900 00221560 D0 1F 00 00 */ stfs f0, 0(r31)
/* 80225904 00221564 C0 01 00 18 */ lfs f0, 0x18(r1)
/* 80225908 00221568 D0 1F 00 04 */ stfs f0, 4(r31)
/* 8022590C 0022156C C0 01 00 1C */ lfs f0, 0x1c(r1)
/* 80225910 00221570 D0 1F 00 08 */ stfs f0, 8(r31)
/* 80225914 00221574 48 00 01 18 */ b lbl_80225A2C
/* 80225918 00221578 A8 1D 00 10 */ lha r0, 0x10(r29)
/* 8022591C 0022157C 2C 00 00 04 */ cmpwi r0, 4
/* 80225920 00221580 40 82 01 0C */ bne lbl_80225A2C
/* 80225924 00221584 40 82 00 0C */ bne lbl_80225930
/* 80225928 00221588 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 8022592C 0022158C 48 00 00 0C */ b lbl_80225938
lbl_80225930:
/* 80225930 00221590 38 7D 00 10 */ addi r3, r29, 0x10
/* 80225934 00221594 4B E0 29 AD */ bl func_800282E0
lbl_80225938:
/* 80225938 00221598 C0 83 00 00 */ lfs f4, 0(r3)
/* 8022593C 0022159C C0 22 9C 84 */ lfs f1, lbl_80642284-_SDA2_BASE_(r2)
/* 80225940 002215A0 D0 81 00 6C */ stfs f4, 0x6c(r1)
/* 80225944 002215A4 FC 04 08 40 */ fcmpo cr0, f4, f1
/* 80225948 002215A8 C0 63 00 04 */ lfs f3, 4(r3)
/* 8022594C 002215AC D0 61 00 70 */ stfs f3, 0x70(r1)
/* 80225950 002215B0 C0 43 00 08 */ lfs f2, 8(r3)
/* 80225954 002215B4 D0 41 00 74 */ stfs f2, 0x74(r1)
/* 80225958 002215B8 40 80 00 38 */ bge lbl_80225990
/* 8022595C 002215BC C0 02 9C 88 */ lfs f0, lbl_80642288-_SDA2_BASE_(r2)
/* 80225960 002215C0 FC 04 00 40 */ fcmpo cr0, f4, f0
/* 80225964 002215C4 40 81 00 2C */ ble lbl_80225990
/* 80225968 002215C8 FC 03 08 40 */ fcmpo cr0, f3, f1
/* 8022596C 002215CC 40 80 00 24 */ bge lbl_80225990
/* 80225970 002215D0 FC 03 00 40 */ fcmpo cr0, f3, f0
/* 80225974 002215D4 40 81 00 1C */ ble lbl_80225990
/* 80225978 002215D8 FC 02 08 40 */ fcmpo cr0, f2, f1
/* 8022597C 002215DC 40 80 00 14 */ bge lbl_80225990
/* 80225980 002215E0 FC 02 00 40 */ fcmpo cr0, f2, f0
/* 80225984 002215E4 40 81 00 0C */ ble lbl_80225990
/* 80225988 002215E8 38 00 00 01 */ li r0, 1
/* 8022598C 002215EC 48 00 00 08 */ b lbl_80225994
lbl_80225990:
/* 80225990 002215F0 38 00 00 00 */ li r0, 0
lbl_80225994:
/* 80225994 002215F4 2C 00 00 00 */ cmpwi r0, 0
/* 80225998 002215F8 40 82 00 94 */ bne lbl_80225A2C
/* 8022599C 002215FC A8 1D 00 08 */ lha r0, 8(r29)
/* 802259A0 00221600 2C 00 00 01 */ cmpwi r0, 1
/* 802259A4 00221604 40 82 00 20 */ bne lbl_802259C4
/* 802259A8 00221608 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 802259AC 0022160C C8 22 9C A8 */ lfd f1, lbl_806422A8-_SDA2_BASE_(r2)
/* 802259B0 00221610 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 802259B4 00221614 90 01 01 8C */ stw r0, 0x18c(r1)
/* 802259B8 00221618 C8 01 01 88 */ lfd f0, 0x188(r1)
/* 802259BC 0022161C EC 20 08 28 */ fsubs f1, f0, f1
/* 802259C0 00221620 48 00 00 1C */ b lbl_802259DC
lbl_802259C4:
/* 802259C4 00221624 2C 00 00 02 */ cmpwi r0, 2
/* 802259C8 00221628 40 82 00 0C */ bne lbl_802259D4
/* 802259CC 0022162C C0 3D 00 0C */ lfs f1, 0xc(r29)
/* 802259D0 00221630 48 00 00 0C */ b lbl_802259DC
lbl_802259D4:
/* 802259D4 00221634 38 7D 00 08 */ addi r3, r29, 8
/* 802259D8 00221638 48 00 83 A1 */ bl func_8022DD78
lbl_802259DC:
/* 802259DC 0022163C C0 02 9C A0 */ lfs f0, lbl_806422A0-_SDA2_BASE_(r2)
/* 802259E0 00221640 38 61 00 50 */ addi r3, r1, 0x50
/* 802259E4 00221644 38 81 00 6C */ addi r4, r1, 0x6c
/* 802259E8 00221648 EC 20 00 72 */ fmuls f1, f0, f1
/* 802259EC 0022164C 48 05 77 39 */ bl C_QUATRotAxisRad
/* 802259F0 00221650 C0 1F 00 00 */ lfs f0, 0(r31)
/* 802259F4 00221654 38 61 00 08 */ addi r3, r1, 8
/* 802259F8 00221658 38 81 00 50 */ addi r4, r1, 0x50
/* 802259FC 0022165C D0 01 00 08 */ stfs f0, 8(r1)
/* 80225A00 00221660 C0 1F 00 04 */ lfs f0, 4(r31)
/* 80225A04 00221664 D0 01 00 0C */ stfs f0, 0xc(r1)
/* 80225A08 00221668 C0 1F 00 08 */ lfs f0, 8(r31)
/* 80225A0C 0022166C D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80225A10 00221670 4B FF DF FD */ bl func_80223A0C
/* 80225A14 00221674 C0 01 00 08 */ lfs f0, 8(r1)
/* 80225A18 00221678 D0 1F 00 00 */ stfs f0, 0(r31)
/* 80225A1C 0022167C C0 01 00 0C */ lfs f0, 0xc(r1)
/* 80225A20 00221680 D0 1F 00 04 */ stfs f0, 4(r31)
/* 80225A24 00221684 C0 01 00 10 */ lfs f0, 0x10(r1)
/* 80225A28 00221688 D0 1F 00 08 */ stfs f0, 8(r31)
lbl_80225A2C:
/* 80225A2C 0022168C 39 61 01 B0 */ addi r11, r1, 0x1b0
/* 80225A30 00221690 38 60 00 01 */ li r3, 1
/* 80225A34 00221694 4B FA 17 41 */ bl _restgpr_27
/* 80225A38 00221698 80 01 01 B4 */ lwz r0, 0x1b4(r1)
/* 80225A3C 0022169C 7C 08 03 A6 */ mtlr r0
/* 80225A40 002216A0 38 21 01 B0 */ addi r1, r1, 0x1b0
/* 80225A44 002216A4 4E 80 00 20 */ blr
.global func_80225A48
func_80225A48:
/* 80225A48 002216A8 94 21 FE E0 */ stwu r1, -0x120(r1)
/* 80225A4C 002216AC 7C 08 02 A6 */ mflr r0
/* 80225A50 002216B0 2C 04 00 01 */ cmpwi r4, 1
/* 80225A54 002216B4 90 01 01 24 */ stw r0, 0x124(r1)
/* 80225A58 002216B8 93 E1 01 1C */ stw r31, 0x11c(r1)
/* 80225A5C 002216BC 7C DF 33 78 */ mr r31, r6
/* 80225A60 002216C0 93 C1 01 18 */ stw r30, 0x118(r1)
/* 80225A64 002216C4 7C 7E 1B 78 */ mr r30, r3
/* 80225A68 002216C8 93 A1 01 14 */ stw r29, 0x114(r1)
/* 80225A6C 002216CC 7C BD 2B 78 */ mr r29, r5
/* 80225A70 002216D0 93 81 01 10 */ stw r28, 0x110(r1)
/* 80225A74 002216D4 3B 80 00 00 */ li r28, 0
/* 80225A78 002216D8 41 82 00 24 */ beq lbl_80225A9C
/* 80225A7C 002216DC A8 05 00 00 */ lha r0, 0(r5)
/* 80225A80 002216E0 83 85 00 04 */ lwz r28, 4(r5)
/* 80225A84 002216E4 2C 00 00 07 */ cmpwi r0, 7
/* 80225A88 002216E8 40 82 00 0C */ bne lbl_80225A94
/* 80225A8C 002216EC 2C 1C 00 00 */ cmpwi r28, 0
/* 80225A90 002216F0 40 82 00 0C */ bne lbl_80225A9C
lbl_80225A94:
/* 80225A94 002216F4 38 60 00 01 */ li r3, 1
/* 80225A98 002216F8 48 00 03 6C */ b lbl_80225E04
lbl_80225A9C:
/* 80225A9C 002216FC 28 04 00 1A */ cmplwi r4, 0x1a
/* 80225AA0 00221700 41 81 03 60 */ bgt lbl_80225E00
/* 80225AA4 00221704 3C 60 80 42 */ lis r3, lbl_80423D10@ha
/* 80225AA8 00221708 54 80 10 3A */ slwi r0, r4, 2
/* 80225AAC 0022170C 38 63 3D 10 */ addi r3, r3, lbl_80423D10@l
/* 80225AB0 00221710 7C 63 00 2E */ lwzx r3, r3, r0
/* 80225AB4 00221714 7C 69 03 A6 */ mtctr r3
/* 80225AB8 00221718 4E 80 04 20 */ bctr
/* 80225ABC 0022171C 3C 80 80 42 */ lis r4, lbl_80423D00@ha
/* 80225AC0 00221720 80 BC 00 00 */ lwz r5, 0(r28)
/* 80225AC4 00221724 38 61 00 08 */ addi r3, r1, 8
/* 80225AC8 00221728 38 84 3D 00 */ addi r4, r4, lbl_80423D00@l
/* 80225ACC 0022172C 4C C6 31 82 */ crclr 6
/* 80225AD0 00221730 4B FA 70 2D */ bl sprintf
/* 80225AD4 00221734 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225AD8 00221738 38 81 00 08 */ addi r4, r1, 8
/* 80225ADC 0022173C 38 A0 00 FF */ li r5, 0xff
/* 80225AE0 00221740 38 63 00 38 */ addi r3, r3, 0x38
/* 80225AE4 00221744 4B FA 88 AD */ bl strncpy
/* 80225AE8 00221748 80 9E 09 14 */ lwz r4, 0x914(r30)
/* 80225AEC 0022174C 38 00 00 03 */ li r0, 3
/* 80225AF0 00221750 38 64 00 38 */ addi r3, r4, 0x38
/* 80225AF4 00221754 90 64 00 14 */ stw r3, 0x14(r4)
/* 80225AF8 00221758 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225AFC 0022175C B0 03 00 10 */ sth r0, 0x10(r3)
/* 80225B00 00221760 48 00 03 00 */ b lbl_80225E00
/* 80225B04 00221764 A8 05 00 08 */ lha r0, 8(r5)
/* 80225B08 00221768 83 BC 00 00 */ lwz r29, 0(r28)
/* 80225B0C 0022176C 2C 00 00 01 */ cmpwi r0, 1
/* 80225B10 00221770 40 82 00 0C */ bne lbl_80225B1C
/* 80225B14 00221774 80 85 00 0C */ lwz r4, 0xc(r5)
/* 80225B18 00221778 48 00 00 2C */ b lbl_80225B44
lbl_80225B1C:
/* 80225B1C 0022177C 2C 00 00 02 */ cmpwi r0, 2
/* 80225B20 00221780 40 82 00 18 */ bne lbl_80225B38
/* 80225B24 00221784 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80225B28 00221788 FC 00 00 1E */ fctiwz f0, f0
/* 80225B2C 0022178C D8 01 01 08 */ stfd f0, 0x108(r1)
/* 80225B30 00221790 80 61 01 0C */ lwz r3, 0x10c(r1)
/* 80225B34 00221794 48 00 00 0C */ b lbl_80225B40
lbl_80225B38:
/* 80225B38 00221798 38 65 00 08 */ addi r3, r5, 8
/* 80225B3C 0022179C 48 00 81 F9 */ bl func_8022DD34
lbl_80225B40:
/* 80225B40 002217A0 7C 64 1B 78 */ mr r4, r3
lbl_80225B44:
/* 80225B44 002217A4 7C 04 E8 00 */ cmpw r4, r29
/* 80225B48 002217A8 41 80 00 18 */ blt lbl_80225B60
/* 80225B4C 002217AC 38 60 00 01 */ li r3, 1
/* 80225B50 002217B0 38 00 00 00 */ li r0, 0
/* 80225B54 002217B4 B0 7F 00 00 */ sth r3, 0(r31)
/* 80225B58 002217B8 90 1F 00 04 */ stw r0, 4(r31)
/* 80225B5C 002217BC 48 00 02 A4 */ b lbl_80225E00
lbl_80225B60:
/* 80225B60 002217C0 7F 83 E3 78 */ mr r3, r28
/* 80225B64 002217C4 48 00 80 7D */ bl func_8022DBE0
/* 80225B68 002217C8 A8 03 00 00 */ lha r0, 0(r3)
/* 80225B6C 002217CC 2C 00 00 03 */ cmpwi r0, 3
/* 80225B70 002217D0 40 82 00 34 */ bne lbl_80225BA4
/* 80225B74 002217D4 80 DE 09 14 */ lwz r6, 0x914(r30)
/* 80225B78 002217D8 38 A0 00 FF */ li r5, 0xff
/* 80225B7C 002217DC 80 83 00 04 */ lwz r4, 4(r3)
/* 80225B80 002217E0 38 66 00 38 */ addi r3, r6, 0x38
/* 80225B84 002217E4 4B FA 88 0D */ bl strncpy
/* 80225B88 002217E8 80 9E 09 14 */ lwz r4, 0x914(r30)
/* 80225B8C 002217EC 38 00 00 03 */ li r0, 3
/* 80225B90 002217F0 38 64 00 38 */ addi r3, r4, 0x38
/* 80225B94 002217F4 90 64 00 14 */ stw r3, 0x14(r4)
/* 80225B98 002217F8 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225B9C 002217FC B0 03 00 10 */ sth r0, 0x10(r3)
/* 80225BA0 00221800 48 00 02 60 */ b lbl_80225E00
lbl_80225BA4:
/* 80225BA4 00221804 2C 00 00 04 */ cmpwi r0, 4
/* 80225BA8 00221808 40 82 00 40 */ bne lbl_80225BE8
/* 80225BAC 0022180C 80 83 00 04 */ lwz r4, 4(r3)
/* 80225BB0 00221810 38 00 00 04 */ li r0, 4
/* 80225BB4 00221814 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225BB8 00221818 C0 04 00 00 */ lfs f0, 0(r4)
/* 80225BBC 0022181C D0 03 01 38 */ stfs f0, 0x138(r3)
/* 80225BC0 00221820 C0 04 00 04 */ lfs f0, 4(r4)
/* 80225BC4 00221824 D0 03 01 3C */ stfs f0, 0x13c(r3)
/* 80225BC8 00221828 C0 04 00 08 */ lfs f0, 8(r4)
/* 80225BCC 0022182C D0 03 01 40 */ stfs f0, 0x140(r3)
/* 80225BD0 00221830 80 9E 09 14 */ lwz r4, 0x914(r30)
/* 80225BD4 00221834 38 64 01 38 */ addi r3, r4, 0x138
/* 80225BD8 00221838 90 64 00 14 */ stw r3, 0x14(r4)
/* 80225BDC 0022183C 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225BE0 00221840 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80225BE4 00221844 48 00 02 1C */ b lbl_80225E00
lbl_80225BE8:
/* 80225BE8 00221848 A8 03 00 00 */ lha r0, 0(r3)
/* 80225BEC 0022184C B0 1F 00 00 */ sth r0, 0(r31)
/* 80225BF0 00221850 A0 03 00 02 */ lhz r0, 2(r3)
/* 80225BF4 00221854 B0 1F 00 02 */ sth r0, 2(r31)
/* 80225BF8 00221858 80 03 00 04 */ lwz r0, 4(r3)
/* 80225BFC 0022185C 90 1F 00 04 */ stw r0, 4(r31)
/* 80225C00 00221860 48 00 02 00 */ b lbl_80225E00
/* 80225C04 00221864 A8 05 00 08 */ lha r0, 8(r5)
/* 80225C08 00221868 2C 00 00 01 */ cmpwi r0, 1
/* 80225C0C 0022186C 40 82 00 0C */ bne lbl_80225C18
/* 80225C10 00221870 80 85 00 0C */ lwz r4, 0xc(r5)
/* 80225C14 00221874 48 00 00 2C */ b lbl_80225C40
lbl_80225C18:
/* 80225C18 00221878 2C 00 00 02 */ cmpwi r0, 2
/* 80225C1C 0022187C 40 82 00 18 */ bne lbl_80225C34
/* 80225C20 00221880 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80225C24 00221884 FC 00 00 1E */ fctiwz f0, f0
/* 80225C28 00221888 D8 01 01 08 */ stfd f0, 0x108(r1)
/* 80225C2C 0022188C 80 61 01 0C */ lwz r3, 0x10c(r1)
/* 80225C30 00221890 48 00 00 0C */ b lbl_80225C3C
lbl_80225C34:
/* 80225C34 00221894 38 65 00 08 */ addi r3, r5, 8
/* 80225C38 00221898 48 00 80 FD */ bl func_8022DD34
lbl_80225C3C:
/* 80225C3C 0022189C 7C 64 1B 78 */ mr r4, r3
lbl_80225C40:
/* 80225C40 002218A0 7F 83 E3 78 */ mr r3, r28
/* 80225C44 002218A4 38 BD 00 10 */ addi r5, r29, 0x10
/* 80225C48 002218A8 48 00 7F D9 */ bl func_8022DC20
/* 80225C4C 002218AC 48 00 01 B4 */ b lbl_80225E00
/* 80225C50 002218B0 80 65 00 04 */ lwz r3, 4(r5)
/* 80225C54 002218B4 38 00 00 01 */ li r0, 1
/* 80225C58 002218B8 80 63 00 00 */ lwz r3, 0(r3)
/* 80225C5C 002218BC B0 06 00 00 */ sth r0, 0(r6)
/* 80225C60 002218C0 90 66 00 04 */ stw r3, 4(r6)
/* 80225C64 002218C4 48 00 01 9C */ b lbl_80225E00
/* 80225C68 002218C8 A8 05 00 08 */ lha r0, 8(r5)
/* 80225C6C 002218CC 2C 00 00 01 */ cmpwi r0, 1
/* 80225C70 002218D0 40 82 00 0C */ bne lbl_80225C7C
/* 80225C74 002218D4 80 85 00 0C */ lwz r4, 0xc(r5)
/* 80225C78 002218D8 48 00 00 2C */ b lbl_80225CA4
lbl_80225C7C:
/* 80225C7C 002218DC 2C 00 00 02 */ cmpwi r0, 2
/* 80225C80 002218E0 40 82 00 18 */ bne lbl_80225C98
/* 80225C84 002218E4 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80225C88 002218E8 FC 00 00 1E */ fctiwz f0, f0
/* 80225C8C 002218EC D8 01 01 08 */ stfd f0, 0x108(r1)
/* 80225C90 002218F0 80 61 01 0C */ lwz r3, 0x10c(r1)
/* 80225C94 002218F4 48 00 00 0C */ b lbl_80225CA0
lbl_80225C98:
/* 80225C98 002218F8 38 65 00 08 */ addi r3, r5, 8
/* 80225C9C 002218FC 48 00 80 99 */ bl func_8022DD34
lbl_80225CA0:
/* 80225CA0 00221900 7C 64 1B 78 */ mr r4, r3
lbl_80225CA4:
/* 80225CA4 00221904 7F 83 E3 78 */ mr r3, r28
/* 80225CA8 00221908 48 00 80 85 */ bl func_8022DD2C
/* 80225CAC 0022190C 48 00 01 54 */ b lbl_80225E00
/* 80225CB0 00221910 A8 05 00 08 */ lha r0, 8(r5)
/* 80225CB4 00221914 2C 00 00 01 */ cmpwi r0, 1
/* 80225CB8 00221918 40 82 00 0C */ bne lbl_80225CC4
/* 80225CBC 0022191C 83 C5 00 0C */ lwz r30, 0xc(r5)
/* 80225CC0 00221920 48 00 00 2C */ b lbl_80225CEC
lbl_80225CC4:
/* 80225CC4 00221924 2C 00 00 02 */ cmpwi r0, 2
/* 80225CC8 00221928 40 82 00 18 */ bne lbl_80225CE0
/* 80225CCC 0022192C C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80225CD0 00221930 FC 00 00 1E */ fctiwz f0, f0
/* 80225CD4 00221934 D8 01 01 08 */ stfd f0, 0x108(r1)
/* 80225CD8 00221938 80 61 01 0C */ lwz r3, 0x10c(r1)
/* 80225CDC 0022193C 48 00 00 0C */ b lbl_80225CE8
lbl_80225CE0:
/* 80225CE0 00221940 38 65 00 08 */ addi r3, r5, 8
/* 80225CE4 00221944 48 00 80 51 */ bl func_8022DD34
lbl_80225CE8:
/* 80225CE8 00221948 7C 7E 1B 78 */ mr r30, r3
lbl_80225CEC:
/* 80225CEC 0022194C 3B BD 00 10 */ addi r29, r29, 0x10
/* 80225CF0 00221950 3B E0 00 00 */ li r31, 0
/* 80225CF4 00221954 48 00 00 18 */ b lbl_80225D0C
lbl_80225CF8:
/* 80225CF8 00221958 7F 83 E3 78 */ mr r3, r28
/* 80225CFC 0022195C 7F A4 EB 78 */ mr r4, r29
/* 80225D00 00221960 48 00 80 31 */ bl func_8022DD30
/* 80225D04 00221964 3B BD 00 08 */ addi r29, r29, 8
/* 80225D08 00221968 3B FF 00 01 */ addi r31, r31, 1
lbl_80225D0C:
/* 80225D0C 0022196C 7C 1F F0 00 */ cmpw r31, r30
/* 80225D10 00221970 41 80 FF E8 */ blt lbl_80225CF8
/* 80225D14 00221974 48 00 00 EC */ b lbl_80225E00
/* 80225D18 00221978 7F 83 E3 78 */ mr r3, r28
/* 80225D1C 0022197C 38 85 00 08 */ addi r4, r5, 8
/* 80225D20 00221980 48 00 80 11 */ bl func_8022DD30
/* 80225D24 00221984 48 00 00 DC */ b lbl_80225E00
/* 80225D28 00221988 38 00 00 00 */ li r0, 0
/* 80225D2C 0022198C 90 1C 00 04 */ stw r0, 4(r28)
/* 80225D30 00221990 48 00 00 D0 */ b lbl_80225E00
/* 80225D34 00221994 7F 83 E3 78 */ mr r3, r28
/* 80225D38 00221998 48 00 7F B1 */ bl func_8022DCE8
/* 80225D3C 0022199C A8 03 00 00 */ lha r0, 0(r3)
/* 80225D40 002219A0 2C 00 00 03 */ cmpwi r0, 3
/* 80225D44 002219A4 40 82 00 34 */ bne lbl_80225D78
/* 80225D48 002219A8 80 DE 09 14 */ lwz r6, 0x914(r30)
/* 80225D4C 002219AC 38 A0 00 FF */ li r5, 0xff
/* 80225D50 002219B0 80 83 00 04 */ lwz r4, 4(r3)
/* 80225D54 002219B4 38 66 00 38 */ addi r3, r6, 0x38
/* 80225D58 002219B8 4B FA 86 39 */ bl strncpy
/* 80225D5C 002219BC 80 9E 09 14 */ lwz r4, 0x914(r30)
/* 80225D60 002219C0 38 00 00 03 */ li r0, 3
/* 80225D64 002219C4 38 64 00 38 */ addi r3, r4, 0x38
/* 80225D68 002219C8 90 64 00 14 */ stw r3, 0x14(r4)
/* 80225D6C 002219CC 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225D70 002219D0 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80225D74 002219D4 48 00 00 8C */ b lbl_80225E00
lbl_80225D78:
/* 80225D78 002219D8 2C 00 00 04 */ cmpwi r0, 4
/* 80225D7C 002219DC 40 82 00 40 */ bne lbl_80225DBC
/* 80225D80 002219E0 80 83 00 04 */ lwz r4, 4(r3)
/* 80225D84 002219E4 38 00 00 04 */ li r0, 4
/* 80225D88 002219E8 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225D8C 002219EC C0 04 00 00 */ lfs f0, 0(r4)
/* 80225D90 002219F0 D0 03 01 38 */ stfs f0, 0x138(r3)
/* 80225D94 002219F4 C0 04 00 04 */ lfs f0, 4(r4)
/* 80225D98 002219F8 D0 03 01 3C */ stfs f0, 0x13c(r3)
/* 80225D9C 002219FC C0 04 00 08 */ lfs f0, 8(r4)
/* 80225DA0 00221A00 D0 03 01 40 */ stfs f0, 0x140(r3)
/* 80225DA4 00221A04 80 9E 09 14 */ lwz r4, 0x914(r30)
/* 80225DA8 00221A08 38 64 01 38 */ addi r3, r4, 0x138
/* 80225DAC 00221A0C 90 64 00 14 */ stw r3, 0x14(r4)
/* 80225DB0 00221A10 80 7E 09 14 */ lwz r3, 0x914(r30)
/* 80225DB4 00221A14 B0 03 00 10 */ sth r0, 0x10(r3)
/* 80225DB8 00221A18 48 00 00 48 */ b lbl_80225E00
lbl_80225DBC:
/* 80225DBC 00221A1C A8 03 00 00 */ lha r0, 0(r3)
/* 80225DC0 00221A20 B0 1F 00 00 */ sth r0, 0(r31)
/* 80225DC4 00221A24 A0 03 00 02 */ lhz r0, 2(r3)
/* 80225DC8 00221A28 B0 1F 00 02 */ sth r0, 2(r31)
/* 80225DCC 00221A2C 80 03 00 04 */ lwz r0, 4(r3)
/* 80225DD0 00221A30 90 1F 00 04 */ stw r0, 4(r31)
/* 80225DD4 00221A34 48 00 00 2C */ b lbl_80225E00
/* 80225DD8 00221A38 38 80 00 01 */ li r4, 1
/* 80225DDC 00221A3C B0 86 00 00 */ sth r4, 0(r6)
/* 80225DE0 00221A40 80 7C 00 00 */ lwz r3, 0(r28)
/* 80225DE4 00221A44 80 1C 00 04 */ lwz r0, 4(r28)
/* 80225DE8 00221A48 7C 03 00 00 */ cmpw r3, r0
/* 80225DEC 00221A4C 41 81 00 0C */ bgt lbl_80225DF8
/* 80225DF0 00221A50 90 86 00 04 */ stw r4, 4(r6)
/* 80225DF4 00221A54 48 00 00 0C */ b lbl_80225E00
lbl_80225DF8:
/* 80225DF8 00221A58 38 00 00 00 */ li r0, 0
/* 80225DFC 00221A5C 90 06 00 04 */ stw r0, 4(r6)
lbl_80225E00:
/* 80225E00 00221A60 38 60 00 01 */ li r3, 1
lbl_80225E04:
/* 80225E04 00221A64 80 01 01 24 */ lwz r0, 0x124(r1)
/* 80225E08 00221A68 83 E1 01 1C */ lwz r31, 0x11c(r1)
/* 80225E0C 00221A6C 83 C1 01 18 */ lwz r30, 0x118(r1)
/* 80225E10 00221A70 83 A1 01 14 */ lwz r29, 0x114(r1)
/* 80225E14 00221A74 83 81 01 10 */ lwz r28, 0x110(r1)
/* 80225E18 00221A78 7C 08 03 A6 */ mtlr r0
/* 80225E1C 00221A7C 38 21 01 20 */ addi r1, r1, 0x120
/* 80225E20 00221A80 4E 80 00 20 */ blr
.global func_80225E24
func_80225E24:
/* 80225E24 00221A84 38 A0 00 01 */ li r5, 1
/* 80225E28 00221A88 38 6D A3 60 */ addi r3, r13, lbl_8063F620-_SDA_BASE_
/* 80225E2C 00221A8C 38 80 00 04 */ li r4, 4
/* 80225E30 00221A90 38 00 00 00 */ li r0, 0
/* 80225E34 00221A94 98 AD A3 60 */ stb r5, lbl_8063F620-_SDA_BASE_(r13)
/* 80225E38 00221A98 B0 83 00 02 */ sth r4, 2(r3)
/* 80225E3C 00221A9C 98 03 00 04 */ stb r0, 4(r3)
/* 80225E40 00221AA0 4E 80 00 20 */ blr
|