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

.section .text, "ax"  # 0x80005600 - 0x8036FBA0
.global GDSetVtxDescv
GDSetVtxDescv:
/* 800AF18C 000AC0CC  7C 08 02 A6 */	mflr r0
/* 800AF190 000AC0D0  3C 80 80 3B */	lis r4, "@121"@ha
/* 800AF194 000AC0D4  90 01 00 04 */	stw r0, 4(r1)
/* 800AF198 000AC0D8  38 84 1C 48 */	addi r4, r4, "@121"@l
/* 800AF19C 000AC0DC  94 21 FF A8 */	stwu r1, -0x58(r1)
/* 800AF1A0 000AC0E0  BD E1 00 14 */	stmw r15, 0x14(r1)
/* 800AF1A4 000AC0E4  3B E0 00 00 */	li r31, 0
/* 800AF1A8 000AC0E8  3B C0 00 00 */	li r30, 0
/* 800AF1AC 000AC0EC  3B A0 00 00 */	li r29, 0
/* 800AF1B0 000AC0F0  3B 80 00 00 */	li r28, 0
/* 800AF1B4 000AC0F4  3B 60 00 00 */	li r27, 0
/* 800AF1B8 000AC0F8  3B 40 00 01 */	li r26, 1
/* 800AF1BC 000AC0FC  3B 20 00 00 */	li r25, 0
/* 800AF1C0 000AC100  3B 00 00 00 */	li r24, 0
/* 800AF1C4 000AC104  3A E0 00 00 */	li r23, 0
/* 800AF1C8 000AC108  3A C0 00 00 */	li r22, 0
/* 800AF1CC 000AC10C  3A A0 00 00 */	li r21, 0
/* 800AF1D0 000AC110  3A 80 00 00 */	li r20, 0
/* 800AF1D4 000AC114  3A 60 00 00 */	li r19, 0
/* 800AF1D8 000AC118  3A 40 00 00 */	li r18, 0
/* 800AF1DC 000AC11C  3A 20 00 00 */	li r17, 0
/* 800AF1E0 000AC120  3A 00 00 00 */	li r16, 0
/* 800AF1E4 000AC124  39 E0 00 00 */	li r15, 0
/* 800AF1E8 000AC128  48 00 02 10 */	b lbl_800AF3F8
lbl_800AF1EC:
/* 800AF1EC 000AC12C  28 00 00 19 */	cmplwi r0, 0x19
/* 800AF1F0 000AC130  41 81 02 04 */	bgt lbl_800AF3F4
/* 800AF1F4 000AC134  54 00 10 3A */	slwi r0, r0, 2
/* 800AF1F8 000AC138  7C 04 00 2E */	lwzx r0, r4, r0
/* 800AF1FC 000AC13C  7C 09 03 A6 */	mtctr r0
/* 800AF200 000AC140  4E 80 04 20 */	bctr 
lbl_800AF204:
/* 800AF204 000AC144  83 83 00 04 */	lwz r28, 4(r3)
/* 800AF208 000AC148  48 00 01 EC */	b lbl_800AF3F4
lbl_800AF20C:
/* 800AF20C 000AC14C  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF210 000AC150  57 65 00 3C */	rlwinm r5, r27, 0, 0, 0x1e
/* 800AF214 000AC154  7C BB 03 78 */	or r27, r5, r0
/* 800AF218 000AC158  48 00 01 DC */	b lbl_800AF3F4
lbl_800AF21C:
/* 800AF21C 000AC15C  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF220 000AC160  57 65 07 FA */	rlwinm r5, r27, 0, 0x1f, 0x1d
/* 800AF224 000AC164  54 00 08 3C */	slwi r0, r0, 1
/* 800AF228 000AC168  7C BB 03 78 */	or r27, r5, r0
/* 800AF22C 000AC16C  48 00 01 C8 */	b lbl_800AF3F4
lbl_800AF230:
/* 800AF230 000AC170  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF234 000AC174  57 65 07 B8 */	rlwinm r5, r27, 0, 0x1e, 0x1c
/* 800AF238 000AC178  54 00 10 3A */	slwi r0, r0, 2
/* 800AF23C 000AC17C  7C BB 03 78 */	or r27, r5, r0
/* 800AF240 000AC180  48 00 01 B4 */	b lbl_800AF3F4
lbl_800AF244:
/* 800AF244 000AC184  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF248 000AC188  57 65 07 76 */	rlwinm r5, r27, 0, 0x1d, 0x1b
/* 800AF24C 000AC18C  54 00 18 38 */	slwi r0, r0, 3
/* 800AF250 000AC190  7C BB 03 78 */	or r27, r5, r0
/* 800AF254 000AC194  48 00 01 A0 */	b lbl_800AF3F4
lbl_800AF258:
/* 800AF258 000AC198  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF25C 000AC19C  57 65 07 34 */	rlwinm r5, r27, 0, 0x1c, 0x1a
/* 800AF260 000AC1A0  54 00 20 36 */	slwi r0, r0, 4
/* 800AF264 000AC1A4  7C BB 03 78 */	or r27, r5, r0
/* 800AF268 000AC1A8  48 00 01 8C */	b lbl_800AF3F4
lbl_800AF26C:
/* 800AF26C 000AC1AC  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF270 000AC1B0  57 65 06 F2 */	rlwinm r5, r27, 0, 0x1b, 0x19
/* 800AF274 000AC1B4  54 00 28 34 */	slwi r0, r0, 5
/* 800AF278 000AC1B8  7C BB 03 78 */	or r27, r5, r0
/* 800AF27C 000AC1BC  48 00 01 78 */	b lbl_800AF3F4
lbl_800AF280:
/* 800AF280 000AC1C0  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF284 000AC1C4  57 65 06 B0 */	rlwinm r5, r27, 0, 0x1a, 0x18
/* 800AF288 000AC1C8  54 00 30 32 */	slwi r0, r0, 6
/* 800AF28C 000AC1CC  7C BB 03 78 */	or r27, r5, r0
/* 800AF290 000AC1D0  48 00 01 64 */	b lbl_800AF3F4
lbl_800AF294:
/* 800AF294 000AC1D4  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF298 000AC1D8  57 65 06 6E */	rlwinm r5, r27, 0, 0x19, 0x17
/* 800AF29C 000AC1DC  54 00 38 30 */	slwi r0, r0, 7
/* 800AF2A0 000AC1E0  7C BB 03 78 */	or r27, r5, r0
/* 800AF2A4 000AC1E4  48 00 01 50 */	b lbl_800AF3F4
lbl_800AF2A8:
/* 800AF2A8 000AC1E8  83 43 00 04 */	lwz r26, 4(r3)
/* 800AF2AC 000AC1EC  48 00 01 48 */	b lbl_800AF3F4
lbl_800AF2B0:
/* 800AF2B0 000AC1F0  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF2B4 000AC1F4  2C 00 00 00 */	cmpwi r0, 0
/* 800AF2B8 000AC1F8  41 82 01 3C */	beq lbl_800AF3F4
/* 800AF2BC 000AC1FC  7C 19 03 78 */	mr r25, r0
/* 800AF2C0 000AC200  3B E0 00 01 */	li r31, 1
/* 800AF2C4 000AC204  48 00 01 30 */	b lbl_800AF3F4
lbl_800AF2C8:
/* 800AF2C8 000AC208  80 03 00 04 */	lwz r0, 4(r3)
/* 800AF2CC 000AC20C  2C 00 00 00 */	cmpwi r0, 0
/* 800AF2D0 000AC210  41 82 01 24 */	beq lbl_800AF3F4
/* 800AF2D4 000AC214  7C 19 03 78 */	mr r25, r0
/* 800AF2D8 000AC218  3B E0 00 02 */	li r31, 2
/* 800AF2DC 000AC21C  48 00 01 18 */	b lbl_800AF3F4
lbl_800AF2E0:
/* 800AF2E0 000AC220  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF2E4 000AC224  7C A6 00 D0 */	neg r5, r6
/* 800AF2E8 000AC228  30 05 FF FF */	addic r0, r5, -1
/* 800AF2EC 000AC22C  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF2F0 000AC230  3B 06 00 00 */	addi r24, r6, 0
/* 800AF2F4 000AC234  7F DE 02 14 */	add r30, r30, r0
/* 800AF2F8 000AC238  48 00 00 FC */	b lbl_800AF3F4
lbl_800AF2FC:
/* 800AF2FC 000AC23C  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF300 000AC240  7C A6 00 D0 */	neg r5, r6
/* 800AF304 000AC244  30 05 FF FF */	addic r0, r5, -1
/* 800AF308 000AC248  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF30C 000AC24C  3A E6 00 00 */	addi r23, r6, 0
/* 800AF310 000AC250  7F DE 02 14 */	add r30, r30, r0
/* 800AF314 000AC254  48 00 00 E0 */	b lbl_800AF3F4
lbl_800AF318:
/* 800AF318 000AC258  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF31C 000AC25C  7C A6 00 D0 */	neg r5, r6
/* 800AF320 000AC260  30 05 FF FF */	addic r0, r5, -1
/* 800AF324 000AC264  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF328 000AC268  3A C6 00 00 */	addi r22, r6, 0
/* 800AF32C 000AC26C  7F BD 02 14 */	add r29, r29, r0
/* 800AF330 000AC270  48 00 00 C4 */	b lbl_800AF3F4
lbl_800AF334:
/* 800AF334 000AC274  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF338 000AC278  7C A6 00 D0 */	neg r5, r6
/* 800AF33C 000AC27C  30 05 FF FF */	addic r0, r5, -1
/* 800AF340 000AC280  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF344 000AC284  3A A6 00 00 */	addi r21, r6, 0
/* 800AF348 000AC288  7F BD 02 14 */	add r29, r29, r0
/* 800AF34C 000AC28C  48 00 00 A8 */	b lbl_800AF3F4
lbl_800AF350:
/* 800AF350 000AC290  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF354 000AC294  7C A6 00 D0 */	neg r5, r6
/* 800AF358 000AC298  30 05 FF FF */	addic r0, r5, -1
/* 800AF35C 000AC29C  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF360 000AC2A0  3A 86 00 00 */	addi r20, r6, 0
/* 800AF364 000AC2A4  7F BD 02 14 */	add r29, r29, r0
/* 800AF368 000AC2A8  48 00 00 8C */	b lbl_800AF3F4
lbl_800AF36C:
/* 800AF36C 000AC2AC  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF370 000AC2B0  7C A6 00 D0 */	neg r5, r6
/* 800AF374 000AC2B4  30 05 FF FF */	addic r0, r5, -1
/* 800AF378 000AC2B8  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF37C 000AC2BC  3A 66 00 00 */	addi r19, r6, 0
/* 800AF380 000AC2C0  7F BD 02 14 */	add r29, r29, r0
/* 800AF384 000AC2C4  48 00 00 70 */	b lbl_800AF3F4
lbl_800AF388:
/* 800AF388 000AC2C8  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF38C 000AC2CC  7C A6 00 D0 */	neg r5, r6
/* 800AF390 000AC2D0  30 05 FF FF */	addic r0, r5, -1
/* 800AF394 000AC2D4  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF398 000AC2D8  3A 46 00 00 */	addi r18, r6, 0
/* 800AF39C 000AC2DC  7F BD 02 14 */	add r29, r29, r0
/* 800AF3A0 000AC2E0  48 00 00 54 */	b lbl_800AF3F4
lbl_800AF3A4:
/* 800AF3A4 000AC2E4  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF3A8 000AC2E8  7C A6 00 D0 */	neg r5, r6
/* 800AF3AC 000AC2EC  30 05 FF FF */	addic r0, r5, -1
/* 800AF3B0 000AC2F0  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF3B4 000AC2F4  3A 26 00 00 */	addi r17, r6, 0
/* 800AF3B8 000AC2F8  7F BD 02 14 */	add r29, r29, r0
/* 800AF3BC 000AC2FC  48 00 00 38 */	b lbl_800AF3F4
lbl_800AF3C0:
/* 800AF3C0 000AC300  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF3C4 000AC304  7C A6 00 D0 */	neg r5, r6
/* 800AF3C8 000AC308  30 05 FF FF */	addic r0, r5, -1
/* 800AF3CC 000AC30C  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF3D0 000AC310  3A 06 00 00 */	addi r16, r6, 0
/* 800AF3D4 000AC314  7F BD 02 14 */	add r29, r29, r0
/* 800AF3D8 000AC318  48 00 00 1C */	b lbl_800AF3F4
lbl_800AF3DC:
/* 800AF3DC 000AC31C  80 C3 00 04 */	lwz r6, 4(r3)
/* 800AF3E0 000AC320  7C A6 00 D0 */	neg r5, r6
/* 800AF3E4 000AC324  30 05 FF FF */	addic r0, r5, -1
/* 800AF3E8 000AC328  7C 00 29 10 */	subfe r0, r0, r5
/* 800AF3EC 000AC32C  39 E6 00 00 */	addi r15, r6, 0
/* 800AF3F0 000AC330  7F BD 02 14 */	add r29, r29, r0
lbl_800AF3F4:
/* 800AF3F4 000AC334  38 63 00 08 */	addi r3, r3, 8
lbl_800AF3F8:
/* 800AF3F8 000AC338  80 03 00 00 */	lwz r0, 0(r3)
/* 800AF3FC 000AC33C  2C 00 00 FF */	cmpwi r0, 0xff
/* 800AF400 000AC340  40 82 FD EC */	bne lbl_800AF1EC
/* 800AF404 000AC344  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF408 000AC348  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF40C 000AC34C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF410 000AC350  38 63 00 01 */	addi r3, r3, 1
/* 800AF414 000AC354  7C 03 00 40 */	cmplw r3, r0
/* 800AF418 000AC358  40 81 00 08 */	ble lbl_800AF420
/* 800AF41C 000AC35C  4B FF FD 39 */	bl GDOverflowed
lbl_800AF420:
/* 800AF420 000AC360  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF424 000AC364  38 A0 00 08 */	li r5, 8
/* 800AF428 000AC368  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF42C 000AC36C  38 03 00 01 */	addi r0, r3, 1
/* 800AF430 000AC370  90 04 00 08 */	stw r0, 8(r4)
/* 800AF434 000AC374  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF438 000AC378  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF43C 000AC37C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF440 000AC380  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF444 000AC384  38 63 00 01 */	addi r3, r3, 1
/* 800AF448 000AC388  7C 03 00 40 */	cmplw r3, r0
/* 800AF44C 000AC38C  40 81 00 08 */	ble lbl_800AF454
/* 800AF450 000AC390  4B FF FD 05 */	bl GDOverflowed
lbl_800AF454:
/* 800AF454 000AC394  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF458 000AC398  38 A0 00 50 */	li r5, 0x50
/* 800AF45C 000AC39C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF460 000AC3A0  38 03 00 01 */	addi r0, r3, 1
/* 800AF464 000AC3A4  90 04 00 08 */	stw r0, 8(r4)
/* 800AF468 000AC3A8  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF46C 000AC3AC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF470 000AC3B0  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF474 000AC3B4  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF478 000AC3B8  38 63 00 04 */	addi r3, r3, 4
/* 800AF47C 000AC3BC  7C 03 00 40 */	cmplw r3, r0
/* 800AF480 000AC3C0  40 81 00 08 */	ble lbl_800AF488
/* 800AF484 000AC3C4  4B FF FC D1 */	bl GDOverflowed
lbl_800AF488:
/* 800AF488 000AC3C8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF48C 000AC3CC  57 60 08 3C */	slwi r0, r27, 1
/* 800AF490 000AC3D0  57 45 48 2C */	slwi r5, r26, 9
/* 800AF494 000AC3D4  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF498 000AC3D8  7F 80 03 78 */	or r0, r28, r0
/* 800AF49C 000AC3DC  7C A5 03 78 */	or r5, r5, r0
/* 800AF4A0 000AC3E0  38 03 00 01 */	addi r0, r3, 1
/* 800AF4A4 000AC3E4  90 04 00 08 */	stw r0, 8(r4)
/* 800AF4A8 000AC3E8  57 26 58 28 */	slwi r6, r25, 0xb
/* 800AF4AC 000AC3EC  57 07 68 24 */	slwi r7, r24, 0xd
/* 800AF4B0 000AC3F0  7C C0 2B 78 */	or r0, r6, r5
/* 800AF4B4 000AC3F4  56 E4 78 20 */	slwi r4, r23, 0xf
/* 800AF4B8 000AC3F8  7C E0 03 78 */	or r0, r7, r0
/* 800AF4BC 000AC3FC  7C 87 03 78 */	or r7, r4, r0
/* 800AF4C0 000AC400  54 E0 46 3E */	srwi r0, r7, 0x18
/* 800AF4C4 000AC404  98 03 00 00 */	stb r0, 0(r3)
/* 800AF4C8 000AC408  54 E6 86 3E */	rlwinm r6, r7, 0x10, 0x18, 0x1f
/* 800AF4CC 000AC40C  54 E5 C6 3E */	rlwinm r5, r7, 0x18, 0x18, 0x1f
/* 800AF4D0 000AC410  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF4D4 000AC414  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF4D8 000AC418  38 03 00 01 */	addi r0, r3, 1
/* 800AF4DC 000AC41C  90 04 00 08 */	stw r0, 8(r4)
/* 800AF4E0 000AC420  98 C3 00 00 */	stb r6, 0(r3)
/* 800AF4E4 000AC424  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF4E8 000AC428  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF4EC 000AC42C  38 03 00 01 */	addi r0, r3, 1
/* 800AF4F0 000AC430  90 04 00 08 */	stw r0, 8(r4)
/* 800AF4F4 000AC434  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF4F8 000AC438  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF4FC 000AC43C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF500 000AC440  38 03 00 01 */	addi r0, r3, 1
/* 800AF504 000AC444  90 04 00 08 */	stw r0, 8(r4)
/* 800AF508 000AC448  98 E3 00 00 */	stb r7, 0(r3)
/* 800AF50C 000AC44C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF510 000AC450  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF514 000AC454  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF518 000AC458  38 63 00 01 */	addi r3, r3, 1
/* 800AF51C 000AC45C  7C 03 00 40 */	cmplw r3, r0
/* 800AF520 000AC460  40 81 00 08 */	ble lbl_800AF528
/* 800AF524 000AC464  4B FF FC 31 */	bl GDOverflowed
lbl_800AF528:
/* 800AF528 000AC468  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF52C 000AC46C  38 A0 00 08 */	li r5, 8
/* 800AF530 000AC470  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF534 000AC474  38 03 00 01 */	addi r0, r3, 1
/* 800AF538 000AC478  90 04 00 08 */	stw r0, 8(r4)
/* 800AF53C 000AC47C  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF540 000AC480  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF544 000AC484  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF548 000AC488  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF54C 000AC48C  38 63 00 01 */	addi r3, r3, 1
/* 800AF550 000AC490  7C 03 00 40 */	cmplw r3, r0
/* 800AF554 000AC494  40 81 00 08 */	ble lbl_800AF55C
/* 800AF558 000AC498  4B FF FB FD */	bl GDOverflowed
lbl_800AF55C:
/* 800AF55C 000AC49C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF560 000AC4A0  38 A0 00 60 */	li r5, 0x60
/* 800AF564 000AC4A4  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF568 000AC4A8  38 03 00 01 */	addi r0, r3, 1
/* 800AF56C 000AC4AC  90 04 00 08 */	stw r0, 8(r4)
/* 800AF570 000AC4B0  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF574 000AC4B4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF578 000AC4B8  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF57C 000AC4BC  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF580 000AC4C0  38 63 00 04 */	addi r3, r3, 4
/* 800AF584 000AC4C4  7C 03 00 40 */	cmplw r3, r0
/* 800AF588 000AC4C8  40 81 00 08 */	ble lbl_800AF590
/* 800AF58C 000AC4CC  4B FF FB C9 */	bl GDOverflowed
lbl_800AF590:
/* 800AF590 000AC4D0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF594 000AC4D4  56 A0 10 3A */	slwi r0, r21, 2
/* 800AF598 000AC4D8  56 85 20 36 */	slwi r5, r20, 4
/* 800AF59C 000AC4DC  7E C0 03 78 */	or r0, r22, r0
/* 800AF5A0 000AC4E0  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF5A4 000AC4E4  56 66 30 32 */	slwi r6, r19, 6
/* 800AF5A8 000AC4E8  7C A0 03 78 */	or r0, r5, r0
/* 800AF5AC 000AC4EC  7C C5 03 78 */	or r5, r6, r0
/* 800AF5B0 000AC4F0  38 03 00 01 */	addi r0, r3, 1
/* 800AF5B4 000AC4F4  90 04 00 08 */	stw r0, 8(r4)
/* 800AF5B8 000AC4F8  56 47 40 2E */	slwi r7, r18, 8
/* 800AF5BC 000AC4FC  7C E0 2B 78 */	or r0, r7, r5
/* 800AF5C0 000AC500  56 26 50 2A */	slwi r6, r17, 0xa
/* 800AF5C4 000AC504  56 04 60 26 */	slwi r4, r16, 0xc
/* 800AF5C8 000AC508  7C C0 03 78 */	or r0, r6, r0
/* 800AF5CC 000AC50C  55 E5 70 22 */	slwi r5, r15, 0xe
/* 800AF5D0 000AC510  7C 80 03 78 */	or r0, r4, r0
/* 800AF5D4 000AC514  7C A7 03 78 */	or r7, r5, r0
/* 800AF5D8 000AC518  54 E0 46 3E */	srwi r0, r7, 0x18
/* 800AF5DC 000AC51C  98 03 00 00 */	stb r0, 0(r3)
/* 800AF5E0 000AC520  54 E6 86 3E */	rlwinm r6, r7, 0x10, 0x18, 0x1f
/* 800AF5E4 000AC524  54 E5 C6 3E */	rlwinm r5, r7, 0x18, 0x18, 0x1f
/* 800AF5E8 000AC528  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF5EC 000AC52C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF5F0 000AC530  38 03 00 01 */	addi r0, r3, 1
/* 800AF5F4 000AC534  90 04 00 08 */	stw r0, 8(r4)
/* 800AF5F8 000AC538  98 C3 00 00 */	stb r6, 0(r3)
/* 800AF5FC 000AC53C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF600 000AC540  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF604 000AC544  38 03 00 01 */	addi r0, r3, 1
/* 800AF608 000AC548  90 04 00 08 */	stw r0, 8(r4)
/* 800AF60C 000AC54C  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF610 000AC550  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF614 000AC554  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF618 000AC558  38 03 00 01 */	addi r0, r3, 1
/* 800AF61C 000AC55C  90 04 00 08 */	stw r0, 8(r4)
/* 800AF620 000AC560  98 E3 00 00 */	stb r7, 0(r3)
/* 800AF624 000AC564  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF628 000AC568  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF62C 000AC56C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF630 000AC570  38 63 00 01 */	addi r3, r3, 1
/* 800AF634 000AC574  7C 03 00 40 */	cmplw r3, r0
/* 800AF638 000AC578  40 81 00 08 */	ble lbl_800AF640
/* 800AF63C 000AC57C  4B FF FB 19 */	bl GDOverflowed
lbl_800AF640:
/* 800AF640 000AC580  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF644 000AC584  38 A0 00 10 */	li r5, 0x10
/* 800AF648 000AC588  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF64C 000AC58C  38 03 00 01 */	addi r0, r3, 1
/* 800AF650 000AC590  90 04 00 08 */	stw r0, 8(r4)
/* 800AF654 000AC594  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF658 000AC598  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF65C 000AC59C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF660 000AC5A0  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF664 000AC5A4  38 63 00 02 */	addi r3, r3, 2
/* 800AF668 000AC5A8  7C 03 00 40 */	cmplw r3, r0
/* 800AF66C 000AC5AC  40 81 00 08 */	ble lbl_800AF674
/* 800AF670 000AC5B0  4B FF FA E5 */	bl GDOverflowed
lbl_800AF674:
/* 800AF674 000AC5B4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF678 000AC5B8  38 A0 00 00 */	li r5, 0
/* 800AF67C 000AC5BC  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF680 000AC5C0  38 03 00 01 */	addi r0, r3, 1
/* 800AF684 000AC5C4  90 04 00 08 */	stw r0, 8(r4)
/* 800AF688 000AC5C8  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF68C 000AC5CC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF690 000AC5D0  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF694 000AC5D4  38 03 00 01 */	addi r0, r3, 1
/* 800AF698 000AC5D8  90 04 00 08 */	stw r0, 8(r4)
/* 800AF69C 000AC5DC  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF6A0 000AC5E0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF6A4 000AC5E4  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF6A8 000AC5E8  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF6AC 000AC5EC  38 63 00 02 */	addi r3, r3, 2
/* 800AF6B0 000AC5F0  7C 03 00 40 */	cmplw r3, r0
/* 800AF6B4 000AC5F4  40 81 00 08 */	ble lbl_800AF6BC
/* 800AF6B8 000AC5F8  4B FF FA 9D */	bl GDOverflowed
lbl_800AF6BC:
/* 800AF6BC 000AC5FC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF6C0 000AC600  38 C0 00 10 */	li r6, 0x10
/* 800AF6C4 000AC604  38 A0 00 08 */	li r5, 8
/* 800AF6C8 000AC608  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF6CC 000AC60C  38 03 00 01 */	addi r0, r3, 1
/* 800AF6D0 000AC610  90 04 00 08 */	stw r0, 8(r4)
/* 800AF6D4 000AC614  98 C3 00 00 */	stb r6, 0(r3)
/* 800AF6D8 000AC618  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF6DC 000AC61C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF6E0 000AC620  38 03 00 01 */	addi r0, r3, 1
/* 800AF6E4 000AC624  90 04 00 08 */	stw r0, 8(r4)
/* 800AF6E8 000AC628  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF6EC 000AC62C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF6F0 000AC630  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF6F4 000AC634  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF6F8 000AC638  38 63 00 04 */	addi r3, r3, 4
/* 800AF6FC 000AC63C  7C 03 00 40 */	cmplw r3, r0
/* 800AF700 000AC640  40 81 00 08 */	ble lbl_800AF708
/* 800AF704 000AC644  4B FF FA 51 */	bl GDOverflowed
lbl_800AF708:
/* 800AF708 000AC648  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF70C 000AC64C  57 E0 10 3A */	slwi r0, r31, 2
/* 800AF710 000AC650  57 A5 20 36 */	slwi r5, r29, 4
/* 800AF714 000AC654  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF718 000AC658  7F C0 03 78 */	or r0, r30, r0
/* 800AF71C 000AC65C  7C A7 03 78 */	or r7, r5, r0
/* 800AF720 000AC660  38 03 00 01 */	addi r0, r3, 1
/* 800AF724 000AC664  90 04 00 08 */	stw r0, 8(r4)
/* 800AF728 000AC668  54 E0 46 3E */	srwi r0, r7, 0x18
/* 800AF72C 000AC66C  54 E6 86 3E */	rlwinm r6, r7, 0x10, 0x18, 0x1f
/* 800AF730 000AC670  98 03 00 00 */	stb r0, 0(r3)
/* 800AF734 000AC674  54 E5 C6 3E */	rlwinm r5, r7, 0x18, 0x18, 0x1f
/* 800AF738 000AC678  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF73C 000AC67C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF740 000AC680  38 03 00 01 */	addi r0, r3, 1
/* 800AF744 000AC684  90 04 00 08 */	stw r0, 8(r4)
/* 800AF748 000AC688  98 C3 00 00 */	stb r6, 0(r3)
/* 800AF74C 000AC68C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF750 000AC690  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF754 000AC694  38 03 00 01 */	addi r0, r3, 1
/* 800AF758 000AC698  90 04 00 08 */	stw r0, 8(r4)
/* 800AF75C 000AC69C  98 A3 00 00 */	stb r5, 0(r3)
/* 800AF760 000AC6A0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF764 000AC6A4  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF768 000AC6A8  38 03 00 01 */	addi r0, r3, 1
/* 800AF76C 000AC6AC  90 04 00 08 */	stw r0, 8(r4)
/* 800AF770 000AC6B0  98 E3 00 00 */	stb r7, 0(r3)
/* 800AF774 000AC6B4  B9 E1 00 14 */	lmw r15, 0x14(r1)
/* 800AF778 000AC6B8  80 01 00 5C */	lwz r0, 0x5c(r1)
/* 800AF77C 000AC6BC  38 21 00 58 */	addi r1, r1, 0x58
/* 800AF780 000AC6C0  7C 08 03 A6 */	mtlr r0
/* 800AF784 000AC6C4  4E 80 00 20 */	blr 

.global GDSetVtxAttrFmtv
GDSetVtxAttrFmtv:
/* 800AF788 000AC6C8  7C 08 02 A6 */	mflr r0
/* 800AF78C 000AC6CC  3C A0 80 3B */	lis r5, "@207"@ha
/* 800AF790 000AC6D0  90 01 00 04 */	stw r0, 4(r1)
/* 800AF794 000AC6D4  38 00 00 01 */	li r0, 1
/* 800AF798 000AC6D8  94 21 FF 60 */	stwu r1, -0xa0(r1)
/* 800AF79C 000AC6DC  BD C1 00 58 */	stmw r14, 0x58(r1)
/* 800AF7A0 000AC6E0  3B C0 00 00 */	li r30, 0
/* 800AF7A4 000AC6E4  3B E0 00 00 */	li r31, 0
/* 800AF7A8 000AC6E8  90 01 00 50 */	stw r0, 0x50(r1)
/* 800AF7AC 000AC6EC  38 00 00 04 */	li r0, 4
/* 800AF7B0 000AC6F0  3B 00 00 00 */	li r24, 0
/* 800AF7B4 000AC6F4  90 01 00 4C */	stw r0, 0x4c(r1)
/* 800AF7B8 000AC6F8  38 00 00 00 */	li r0, 0
/* 800AF7BC 000AC6FC  3A E0 00 01 */	li r23, 1
/* 800AF7C0 000AC700  90 01 00 48 */	stw r0, 0x48(r1)
/* 800AF7C4 000AC704  38 00 00 04 */	li r0, 4
/* 800AF7C8 000AC708  3B 20 00 04 */	li r25, 4
/* 800AF7CC 000AC70C  90 01 00 44 */	stw r0, 0x44(r1)
/* 800AF7D0 000AC710  38 00 00 01 */	li r0, 1
/* 800AF7D4 000AC714  3A 80 00 00 */	li r20, 0
/* 800AF7D8 000AC718  90 01 00 40 */	stw r0, 0x40(r1)
/* 800AF7DC 000AC71C  38 00 00 05 */	li r0, 5
/* 800AF7E0 000AC720  3A A0 00 01 */	li r21, 1
/* 800AF7E4 000AC724  90 01 00 3C */	stw r0, 0x3c(r1)
/* 800AF7E8 000AC728  38 00 00 01 */	li r0, 1
/* 800AF7EC 000AC72C  3A C0 00 04 */	li r22, 4
/* 800AF7F0 000AC730  90 01 00 38 */	stw r0, 0x38(r1)
/* 800AF7F4 000AC734  38 00 00 05 */	li r0, 5
/* 800AF7F8 000AC738  39 C0 00 00 */	li r14, 0
/* 800AF7FC 000AC73C  90 01 00 34 */	stw r0, 0x34(r1)
/* 800AF800 000AC740  38 00 00 01 */	li r0, 1
/* 800AF804 000AC744  39 E0 00 01 */	li r15, 1
/* 800AF808 000AC748  90 01 00 30 */	stw r0, 0x30(r1)
/* 800AF80C 000AC74C  38 00 00 04 */	li r0, 4
/* 800AF810 000AC750  3A 00 00 04 */	li r16, 4
/* 800AF814 000AC754  90 01 00 2C */	stw r0, 0x2c(r1)
/* 800AF818 000AC758  38 00 00 00 */	li r0, 0
/* 800AF81C 000AC75C  3A 20 00 00 */	li r17, 0
/* 800AF820 000AC760  90 01 00 28 */	stw r0, 0x28(r1)
/* 800AF824 000AC764  38 00 00 01 */	li r0, 1
/* 800AF828 000AC768  3A 40 00 01 */	li r18, 1
/* 800AF82C 000AC76C  90 01 00 24 */	stw r0, 0x24(r1)
/* 800AF830 000AC770  38 00 00 04 */	li r0, 4
/* 800AF834 000AC774  3A 60 00 04 */	li r19, 4
/* 800AF838 000AC778  90 01 00 20 */	stw r0, 0x20(r1)
/* 800AF83C 000AC77C  38 00 00 00 */	li r0, 0
/* 800AF840 000AC780  3B 40 00 00 */	li r26, 0
/* 800AF844 000AC784  90 01 00 1C */	stw r0, 0x1c(r1)
/* 800AF848 000AC788  38 00 00 01 */	li r0, 1
/* 800AF84C 000AC78C  3B 60 00 01 */	li r27, 1
/* 800AF850 000AC790  90 01 00 18 */	stw r0, 0x18(r1)
/* 800AF854 000AC794  38 00 00 04 */	li r0, 4
/* 800AF858 000AC798  3B 80 00 04 */	li r28, 4
/* 800AF85C 000AC79C  90 61 00 10 */	stw r3, 0x10(r1)
/* 800AF860 000AC7A0  38 65 1C B0 */	addi r3, r5, "@207"@l
/* 800AF864 000AC7A4  3B A0 00 00 */	li r29, 0
/* 800AF868 000AC7A8  90 01 00 14 */	stw r0, 0x14(r1)
/* 800AF86C 000AC7AC  48 00 01 30 */	b lbl_800AF99C
lbl_800AF870:
/* 800AF870 000AC7B0  38 05 FF F7 */	addi r0, r5, -9
/* 800AF874 000AC7B4  28 00 00 10 */	cmplwi r0, 0x10
/* 800AF878 000AC7B8  41 81 01 20 */	bgt lbl_800AF998
/* 800AF87C 000AC7BC  54 00 10 3A */	slwi r0, r0, 2
/* 800AF880 000AC7C0  7C 03 00 2E */	lwzx r0, r3, r0
/* 800AF884 000AC7C4  7C 09 03 A6 */	mtctr r0
/* 800AF888 000AC7C8  4E 80 04 20 */	bctr 
lbl_800AF88C:
/* 800AF88C 000AC7CC  80 04 00 04 */	lwz r0, 4(r4)
/* 800AF890 000AC7D0  90 01 00 50 */	stw r0, 0x50(r1)
/* 800AF894 000AC7D4  80 04 00 08 */	lwz r0, 8(r4)
/* 800AF898 000AC7D8  90 01 00 4C */	stw r0, 0x4c(r1)
/* 800AF89C 000AC7DC  88 04 00 0C */	lbz r0, 0xc(r4)
/* 800AF8A0 000AC7E0  90 01 00 48 */	stw r0, 0x48(r1)
/* 800AF8A4 000AC7E4  48 00 00 F4 */	b lbl_800AF998
lbl_800AF8A8:
/* 800AF8A8 000AC7E8  80 A4 00 04 */	lwz r5, 4(r4)
/* 800AF8AC 000AC7EC  80 04 00 08 */	lwz r0, 8(r4)
/* 800AF8B0 000AC7F0  2C 05 00 02 */	cmpwi r5, 2
/* 800AF8B4 000AC7F4  90 01 00 44 */	stw r0, 0x44(r1)
/* 800AF8B8 000AC7F8  40 82 00 10 */	bne lbl_800AF8C8
/* 800AF8BC 000AC7FC  3B C0 00 01 */	li r30, 1
/* 800AF8C0 000AC800  3B E0 00 01 */	li r31, 1
/* 800AF8C4 000AC804  48 00 00 D4 */	b lbl_800AF998
lbl_800AF8C8:
/* 800AF8C8 000AC808  3B C5 00 00 */	addi r30, r5, 0
/* 800AF8CC 000AC80C  3B E0 00 00 */	li r31, 0
/* 800AF8D0 000AC810  48 00 00 C8 */	b lbl_800AF998
lbl_800AF8D4:
/* 800AF8D4 000AC814  80 04 00 04 */	lwz r0, 4(r4)
/* 800AF8D8 000AC818  90 01 00 40 */	stw r0, 0x40(r1)
/* 800AF8DC 000AC81C  80 04 00 08 */	lwz r0, 8(r4)
/* 800AF8E0 000AC820  90 01 00 3C */	stw r0, 0x3c(r1)
/* 800AF8E4 000AC824  48 00 00 B4 */	b lbl_800AF998
lbl_800AF8E8:
/* 800AF8E8 000AC828  80 04 00 04 */	lwz r0, 4(r4)
/* 800AF8EC 000AC82C  90 01 00 38 */	stw r0, 0x38(r1)
/* 800AF8F0 000AC830  80 04 00 08 */	lwz r0, 8(r4)
/* 800AF8F4 000AC834  90 01 00 34 */	stw r0, 0x34(r1)
/* 800AF8F8 000AC838  48 00 00 A0 */	b lbl_800AF998
lbl_800AF8FC:
/* 800AF8FC 000AC83C  80 04 00 04 */	lwz r0, 4(r4)
/* 800AF900 000AC840  90 01 00 30 */	stw r0, 0x30(r1)
/* 800AF904 000AC844  80 04 00 08 */	lwz r0, 8(r4)
/* 800AF908 000AC848  90 01 00 2C */	stw r0, 0x2c(r1)
/* 800AF90C 000AC84C  88 04 00 0C */	lbz r0, 0xc(r4)
/* 800AF910 000AC850  90 01 00 28 */	stw r0, 0x28(r1)
/* 800AF914 000AC854  48 00 00 84 */	b lbl_800AF998
lbl_800AF918:
/* 800AF918 000AC858  80 04 00 04 */	lwz r0, 4(r4)
/* 800AF91C 000AC85C  90 01 00 24 */	stw r0, 0x24(r1)
/* 800AF920 000AC860  80 04 00 08 */	lwz r0, 8(r4)
/* 800AF924 000AC864  90 01 00 20 */	stw r0, 0x20(r1)
/* 800AF928 000AC868  88 04 00 0C */	lbz r0, 0xc(r4)
/* 800AF92C 000AC86C  90 01 00 1C */	stw r0, 0x1c(r1)
/* 800AF930 000AC870  48 00 00 68 */	b lbl_800AF998
lbl_800AF934:
/* 800AF934 000AC874  80 04 00 04 */	lwz r0, 4(r4)
/* 800AF938 000AC878  8B 04 00 0C */	lbz r24, 0xc(r4)
/* 800AF93C 000AC87C  90 01 00 18 */	stw r0, 0x18(r1)
/* 800AF940 000AC880  80 04 00 08 */	lwz r0, 8(r4)
/* 800AF944 000AC884  90 01 00 14 */	stw r0, 0x14(r1)
/* 800AF948 000AC888  48 00 00 50 */	b lbl_800AF998
lbl_800AF94C:
/* 800AF94C 000AC88C  82 E4 00 04 */	lwz r23, 4(r4)
/* 800AF950 000AC890  83 24 00 08 */	lwz r25, 8(r4)
/* 800AF954 000AC894  8A 84 00 0C */	lbz r20, 0xc(r4)
/* 800AF958 000AC898  48 00 00 40 */	b lbl_800AF998
lbl_800AF95C:
/* 800AF95C 000AC89C  82 A4 00 04 */	lwz r21, 4(r4)
/* 800AF960 000AC8A0  82 C4 00 08 */	lwz r22, 8(r4)
/* 800AF964 000AC8A4  89 C4 00 0C */	lbz r14, 0xc(r4)
/* 800AF968 000AC8A8  48 00 00 30 */	b lbl_800AF998
lbl_800AF96C:
/* 800AF96C 000AC8AC  81 E4 00 04 */	lwz r15, 4(r4)
/* 800AF970 000AC8B0  82 04 00 08 */	lwz r16, 8(r4)
/* 800AF974 000AC8B4  8A 24 00 0C */	lbz r17, 0xc(r4)
/* 800AF978 000AC8B8  48 00 00 20 */	b lbl_800AF998
lbl_800AF97C:
/* 800AF97C 000AC8BC  82 44 00 04 */	lwz r18, 4(r4)
/* 800AF980 000AC8C0  82 64 00 08 */	lwz r19, 8(r4)
/* 800AF984 000AC8C4  8B 44 00 0C */	lbz r26, 0xc(r4)
/* 800AF988 000AC8C8  48 00 00 10 */	b lbl_800AF998
lbl_800AF98C:
/* 800AF98C 000AC8CC  83 64 00 04 */	lwz r27, 4(r4)
/* 800AF990 000AC8D0  83 84 00 08 */	lwz r28, 8(r4)
/* 800AF994 000AC8D4  8B A4 00 0C */	lbz r29, 0xc(r4)
lbl_800AF998:
/* 800AF998 000AC8D8  38 84 00 10 */	addi r4, r4, 0x10
lbl_800AF99C:
/* 800AF99C 000AC8DC  80 A4 00 00 */	lwz r5, 0(r4)
/* 800AF9A0 000AC8E0  2C 05 00 FF */	cmpwi r5, 0xff
/* 800AF9A4 000AC8E4  40 82 FE CC */	bne lbl_800AF870
/* 800AF9A8 000AC8E8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF9AC 000AC8EC  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF9B0 000AC8F0  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF9B4 000AC8F4  38 63 00 01 */	addi r3, r3, 1
/* 800AF9B8 000AC8F8  7C 03 00 40 */	cmplw r3, r0
/* 800AF9BC 000AC8FC  40 81 00 08 */	ble lbl_800AF9C4
/* 800AF9C0 000AC900  4B FF F7 95 */	bl GDOverflowed
lbl_800AF9C4:
/* 800AF9C4 000AC904  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF9C8 000AC908  38 00 00 08 */	li r0, 8
/* 800AF9CC 000AC90C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF9D0 000AC910  38 A3 00 01 */	addi r5, r3, 1
/* 800AF9D4 000AC914  90 A4 00 08 */	stw r5, 8(r4)
/* 800AF9D8 000AC918  98 03 00 00 */	stb r0, 0(r3)
/* 800AF9DC 000AC91C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AF9E0 000AC920  80 64 00 08 */	lwz r3, 8(r4)
/* 800AF9E4 000AC924  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AF9E8 000AC928  38 63 00 01 */	addi r3, r3, 1
/* 800AF9EC 000AC92C  7C 03 00 40 */	cmplw r3, r0
/* 800AF9F0 000AC930  40 81 00 08 */	ble lbl_800AF9F8
/* 800AF9F4 000AC934  4B FF F7 61 */	bl GDOverflowed
lbl_800AF9F8:
/* 800AF9F8 000AC938  80 61 00 10 */	lwz r3, 0x10(r1)
/* 800AF9FC 000AC93C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFA00 000AC940  38 03 00 70 */	addi r0, r3, 0x70
/* 800AFA04 000AC944  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFA08 000AC948  38 A3 00 01 */	addi r5, r3, 1
/* 800AFA0C 000AC94C  90 A4 00 08 */	stw r5, 8(r4)
/* 800AFA10 000AC950  98 03 00 00 */	stb r0, 0(r3)
/* 800AFA14 000AC954  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFA18 000AC958  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFA1C 000AC95C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFA20 000AC960  38 63 00 04 */	addi r3, r3, 4
/* 800AFA24 000AC964  7C 03 00 40 */	cmplw r3, r0
/* 800AFA28 000AC968  40 81 00 08 */	ble lbl_800AFA30
/* 800AFA2C 000AC96C  4B FF F7 29 */	bl GDOverflowed
lbl_800AFA30:
/* 800AFA30 000AC970  80 01 00 4C */	lwz r0, 0x4c(r1)
/* 800AFA34 000AC974  57 C5 48 2C */	slwi r5, r30, 9
/* 800AFA38 000AC978  80 ED 95 B8 */	lwz r7, __GDCurrentDL@sda21(r13)
/* 800AFA3C 000AC97C  54 03 08 3C */	slwi r3, r0, 1
/* 800AFA40 000AC980  80 01 00 48 */	lwz r0, 0x48(r1)
/* 800AFA44 000AC984  54 04 20 36 */	slwi r4, r0, 4
/* 800AFA48 000AC988  80 01 00 50 */	lwz r0, 0x50(r1)
/* 800AFA4C 000AC98C  7C 00 1B 78 */	or r0, r0, r3
/* 800AFA50 000AC990  80 67 00 08 */	lwz r3, 8(r7)
/* 800AFA54 000AC994  7C 84 03 78 */	or r4, r4, r0
/* 800AFA58 000AC998  80 01 00 44 */	lwz r0, 0x44(r1)
/* 800AFA5C 000AC99C  7C A5 23 78 */	or r5, r5, r4
/* 800AFA60 000AC9A0  80 81 00 40 */	lwz r4, 0x40(r1)
/* 800AFA64 000AC9A4  54 00 50 2A */	slwi r0, r0, 0xa
/* 800AFA68 000AC9A8  7C 05 2B 78 */	or r5, r0, r5
/* 800AFA6C 000AC9AC  80 01 00 3C */	lwz r0, 0x3c(r1)
/* 800AFA70 000AC9B0  54 84 68 24 */	slwi r4, r4, 0xd
/* 800AFA74 000AC9B4  7C 84 2B 78 */	or r4, r4, r5
/* 800AFA78 000AC9B8  80 A1 00 38 */	lwz r5, 0x38(r1)
/* 800AFA7C 000AC9BC  54 00 70 22 */	slwi r0, r0, 0xe
/* 800AFA80 000AC9C0  7C 04 23 78 */	or r4, r0, r4
/* 800AFA84 000AC9C4  80 01 00 34 */	lwz r0, 0x34(r1)
/* 800AFA88 000AC9C8  54 A5 88 1C */	slwi r5, r5, 0x11
/* 800AFA8C 000AC9CC  7C A5 23 78 */	or r5, r5, r4
/* 800AFA90 000AC9D0  80 81 00 30 */	lwz r4, 0x30(r1)
/* 800AFA94 000AC9D4  54 00 90 1A */	slwi r0, r0, 0x12
/* 800AFA98 000AC9D8  7C 00 2B 78 */	or r0, r0, r5
/* 800AFA9C 000AC9DC  80 A1 00 2C */	lwz r5, 0x2c(r1)
/* 800AFAA0 000AC9E0  54 84 A8 14 */	slwi r4, r4, 0x15
/* 800AFAA4 000AC9E4  7C 84 03 78 */	or r4, r4, r0
/* 800AFAA8 000AC9E8  80 01 00 28 */	lwz r0, 0x28(r1)
/* 800AFAAC 000AC9EC  54 A5 B0 12 */	slwi r5, r5, 0x16
/* 800AFAB0 000AC9F0  38 C3 00 01 */	addi r6, r3, 1
/* 800AFAB4 000AC9F4  54 00 C8 0C */	slwi r0, r0, 0x19
/* 800AFAB8 000AC9F8  90 C7 00 08 */	stw r6, 8(r7)
/* 800AFABC 000AC9FC  7C A4 23 78 */	or r4, r5, r4
/* 800AFAC0 000ACA00  7C 00 23 78 */	or r0, r0, r4
/* 800AFAC4 000ACA04  57 E4 F8 00 */	slwi r4, r31, 0x1f
/* 800AFAC8 000ACA08  64 00 40 00 */	oris r0, r0, 0x4000
/* 800AFACC 000ACA0C  7C 86 03 78 */	or r6, r4, r0
/* 800AFAD0 000ACA10  54 C0 46 3E */	srwi r0, r6, 0x18
/* 800AFAD4 000ACA14  98 03 00 00 */	stb r0, 0(r3)
/* 800AFAD8 000ACA18  54 C5 86 3E */	rlwinm r5, r6, 0x10, 0x18, 0x1f
/* 800AFADC 000ACA1C  54 C7 C6 3E */	rlwinm r7, r6, 0x18, 0x18, 0x1f
/* 800AFAE0 000ACA20  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFAE4 000ACA24  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFAE8 000ACA28  38 03 00 01 */	addi r0, r3, 1
/* 800AFAEC 000ACA2C  90 04 00 08 */	stw r0, 8(r4)
/* 800AFAF0 000ACA30  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFAF4 000ACA34  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFAF8 000ACA38  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFAFC 000ACA3C  38 03 00 01 */	addi r0, r3, 1
/* 800AFB00 000ACA40  90 04 00 08 */	stw r0, 8(r4)
/* 800AFB04 000ACA44  98 E3 00 00 */	stb r7, 0(r3)
/* 800AFB08 000ACA48  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFB0C 000ACA4C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFB10 000ACA50  38 03 00 01 */	addi r0, r3, 1
/* 800AFB14 000ACA54  90 04 00 08 */	stw r0, 8(r4)
/* 800AFB18 000ACA58  98 C3 00 00 */	stb r6, 0(r3)
/* 800AFB1C 000ACA5C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFB20 000ACA60  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFB24 000ACA64  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFB28 000ACA68  38 63 00 01 */	addi r3, r3, 1
/* 800AFB2C 000ACA6C  7C 03 00 40 */	cmplw r3, r0
/* 800AFB30 000ACA70  40 81 00 08 */	ble lbl_800AFB38
/* 800AFB34 000ACA74  4B FF F6 21 */	bl GDOverflowed
lbl_800AFB38:
/* 800AFB38 000ACA78  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFB3C 000ACA7C  38 A0 00 08 */	li r5, 8
/* 800AFB40 000ACA80  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFB44 000ACA84  38 03 00 01 */	addi r0, r3, 1
/* 800AFB48 000ACA88  90 04 00 08 */	stw r0, 8(r4)
/* 800AFB4C 000ACA8C  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFB50 000ACA90  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFB54 000ACA94  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFB58 000ACA98  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFB5C 000ACA9C  38 63 00 01 */	addi r3, r3, 1
/* 800AFB60 000ACAA0  7C 03 00 40 */	cmplw r3, r0
/* 800AFB64 000ACAA4  40 81 00 08 */	ble lbl_800AFB6C
/* 800AFB68 000ACAA8  4B FF F5 ED */	bl GDOverflowed
lbl_800AFB6C:
/* 800AFB6C 000ACAAC  80 61 00 10 */	lwz r3, 0x10(r1)
/* 800AFB70 000ACAB0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFB74 000ACAB4  38 A3 00 80 */	addi r5, r3, 0x80
/* 800AFB78 000ACAB8  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFB7C 000ACABC  38 03 00 01 */	addi r0, r3, 1
/* 800AFB80 000ACAC0  90 04 00 08 */	stw r0, 8(r4)
/* 800AFB84 000ACAC4  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFB88 000ACAC8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFB8C 000ACACC  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFB90 000ACAD0  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFB94 000ACAD4  38 63 00 04 */	addi r3, r3, 4
/* 800AFB98 000ACAD8  7C 03 00 40 */	cmplw r3, r0
/* 800AFB9C 000ACADC  40 81 00 08 */	ble lbl_800AFBA4
/* 800AFBA0 000ACAE0  4B FF F5 B5 */	bl GDOverflowed
lbl_800AFBA4:
/* 800AFBA4 000ACAE4  80 01 00 20 */	lwz r0, 0x20(r1)
/* 800AFBA8 000ACAE8  57 27 98 18 */	slwi r7, r25, 0x13
/* 800AFBAC 000ACAEC  80 C1 00 18 */	lwz r6, 0x18(r1)
/* 800AFBB0 000ACAF0  54 03 08 3C */	slwi r3, r0, 1
/* 800AFBB4 000ACAF4  80 01 00 1C */	lwz r0, 0x1c(r1)
/* 800AFBB8 000ACAF8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFBBC 000ACAFC  54 C6 48 2C */	slwi r6, r6, 9
/* 800AFBC0 000ACB00  54 05 20 36 */	slwi r5, r0, 4
/* 800AFBC4 000ACB04  80 01 00 24 */	lwz r0, 0x24(r1)
/* 800AFBC8 000ACB08  7C 00 1B 78 */	or r0, r0, r3
/* 800AFBCC 000ACB0C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFBD0 000ACB10  7C A5 03 78 */	or r5, r5, r0
/* 800AFBD4 000ACB14  80 01 00 14 */	lwz r0, 0x14(r1)
/* 800AFBD8 000ACB18  7C C5 2B 78 */	or r5, r6, r5
/* 800AFBDC 000ACB1C  54 00 50 2A */	slwi r0, r0, 0xa
/* 800AFBE0 000ACB20  7C 00 2B 78 */	or r0, r0, r5
/* 800AFBE4 000ACB24  57 06 68 24 */	slwi r6, r24, 0xd
/* 800AFBE8 000ACB28  7C C6 03 78 */	or r6, r6, r0
/* 800AFBEC 000ACB2C  38 03 00 01 */	addi r0, r3, 1
/* 800AFBF0 000ACB30  90 04 00 08 */	stw r0, 8(r4)
/* 800AFBF4 000ACB34  56 E5 90 1A */	slwi r5, r23, 0x12
/* 800AFBF8 000ACB38  7C A0 33 78 */	or r0, r5, r6
/* 800AFBFC 000ACB3C  56 84 B0 12 */	slwi r4, r20, 0x16
/* 800AFC00 000ACB40  7C E0 03 78 */	or r0, r7, r0
/* 800AFC04 000ACB44  7C 80 03 78 */	or r0, r4, r0
/* 800AFC08 000ACB48  56 A5 D8 08 */	slwi r5, r21, 0x1b
/* 800AFC0C 000ACB4C  56 C4 E0 06 */	slwi r4, r22, 0x1c
/* 800AFC10 000ACB50  7C A0 03 78 */	or r0, r5, r0
/* 800AFC14 000ACB54  7C 80 03 78 */	or r0, r4, r0
/* 800AFC18 000ACB58  64 00 80 00 */	oris r0, r0, 0x8000
/* 800AFC1C 000ACB5C  54 04 46 3E */	srwi r4, r0, 0x18
/* 800AFC20 000ACB60  98 83 00 00 */	stb r4, 0(r3)
/* 800AFC24 000ACB64  54 07 86 3E */	rlwinm r7, r0, 0x10, 0x18, 0x1f
/* 800AFC28 000ACB68  54 03 C6 3E */	rlwinm r3, r0, 0x18, 0x18, 0x1f
/* 800AFC2C 000ACB6C  80 CD 95 B8 */	lwz r6, __GDCurrentDL@sda21(r13)
/* 800AFC30 000ACB70  80 A6 00 08 */	lwz r5, 8(r6)
/* 800AFC34 000ACB74  38 85 00 01 */	addi r4, r5, 1
/* 800AFC38 000ACB78  90 86 00 08 */	stw r4, 8(r6)
/* 800AFC3C 000ACB7C  98 E5 00 00 */	stb r7, 0(r5)
/* 800AFC40 000ACB80  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800AFC44 000ACB84  80 85 00 08 */	lwz r4, 8(r5)
/* 800AFC48 000ACB88  38 C4 00 01 */	addi r6, r4, 1
/* 800AFC4C 000ACB8C  90 C5 00 08 */	stw r6, 8(r5)
/* 800AFC50 000ACB90  98 64 00 00 */	stb r3, 0(r4)
/* 800AFC54 000ACB94  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFC58 000ACB98  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFC5C 000ACB9C  38 A3 00 01 */	addi r5, r3, 1
/* 800AFC60 000ACBA0  90 A4 00 08 */	stw r5, 8(r4)
/* 800AFC64 000ACBA4  98 03 00 00 */	stb r0, 0(r3)
/* 800AFC68 000ACBA8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFC6C 000ACBAC  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFC70 000ACBB0  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFC74 000ACBB4  38 63 00 01 */	addi r3, r3, 1
/* 800AFC78 000ACBB8  7C 03 00 40 */	cmplw r3, r0
/* 800AFC7C 000ACBBC  40 81 00 08 */	ble lbl_800AFC84
/* 800AFC80 000ACBC0  4B FF F4 D5 */	bl GDOverflowed
lbl_800AFC84:
/* 800AFC84 000ACBC4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFC88 000ACBC8  38 A0 00 08 */	li r5, 8
/* 800AFC8C 000ACBCC  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFC90 000ACBD0  38 03 00 01 */	addi r0, r3, 1
/* 800AFC94 000ACBD4  90 04 00 08 */	stw r0, 8(r4)
/* 800AFC98 000ACBD8  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFC9C 000ACBDC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFCA0 000ACBE0  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFCA4 000ACBE4  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFCA8 000ACBE8  38 63 00 01 */	addi r3, r3, 1
/* 800AFCAC 000ACBEC  7C 03 00 40 */	cmplw r3, r0
/* 800AFCB0 000ACBF0  40 81 00 08 */	ble lbl_800AFCB8
/* 800AFCB4 000ACBF4  4B FF F4 A1 */	bl GDOverflowed
lbl_800AFCB8:
/* 800AFCB8 000ACBF8  80 81 00 10 */	lwz r4, 0x10(r1)
/* 800AFCBC 000ACBFC  80 6D 95 B8 */	lwz r3, __GDCurrentDL@sda21(r13)
/* 800AFCC0 000ACC00  38 A4 00 90 */	addi r5, r4, 0x90
/* 800AFCC4 000ACC04  80 83 00 08 */	lwz r4, 8(r3)
/* 800AFCC8 000ACC08  38 04 00 01 */	addi r0, r4, 1
/* 800AFCCC 000ACC0C  90 03 00 08 */	stw r0, 8(r3)
/* 800AFCD0 000ACC10  98 A4 00 00 */	stb r5, 0(r4)
/* 800AFCD4 000ACC14  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFCD8 000ACC18  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFCDC 000ACC1C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFCE0 000ACC20  38 63 00 04 */	addi r3, r3, 4
/* 800AFCE4 000ACC24  7C 03 00 40 */	cmplw r3, r0
/* 800AFCE8 000ACC28  40 81 00 08 */	ble lbl_800AFCF0
/* 800AFCEC 000ACC2C  4B FF F4 69 */	bl GDOverflowed
lbl_800AFCF0:
/* 800AFCF0 000ACC30  55 E0 28 34 */	slwi r0, r15, 5
/* 800AFCF4 000ACC34  80 6D 95 B8 */	lwz r3, __GDCurrentDL@sda21(r13)
/* 800AFCF8 000ACC38  56 04 30 32 */	slwi r4, r16, 6
/* 800AFCFC 000ACC3C  7D C0 03 78 */	or r0, r14, r0
/* 800AFD00 000ACC40  80 A3 00 08 */	lwz r5, 8(r3)
/* 800AFD04 000ACC44  7C 80 03 78 */	or r0, r4, r0
/* 800AFD08 000ACC48  56 26 48 2C */	slwi r6, r17, 9
/* 800AFD0C 000ACC4C  7C C0 03 78 */	or r0, r6, r0
/* 800AFD10 000ACC50  56 44 70 22 */	slwi r4, r18, 0xe
/* 800AFD14 000ACC54  7C 84 03 78 */	or r4, r4, r0
/* 800AFD18 000ACC58  38 05 00 01 */	addi r0, r5, 1
/* 800AFD1C 000ACC5C  90 03 00 08 */	stw r0, 8(r3)
/* 800AFD20 000ACC60  56 66 78 20 */	slwi r6, r19, 0xf
/* 800AFD24 000ACC64  7C C0 23 78 */	or r0, r6, r4
/* 800AFD28 000ACC68  57 47 90 1A */	slwi r7, r26, 0x12
/* 800AFD2C 000ACC6C  57 63 B8 10 */	slwi r3, r27, 0x17
/* 800AFD30 000ACC70  7C E0 03 78 */	or r0, r7, r0
/* 800AFD34 000ACC74  7C 60 03 78 */	or r0, r3, r0
/* 800AFD38 000ACC78  57 84 C0 0E */	slwi r4, r28, 0x18
/* 800AFD3C 000ACC7C  57 A3 D8 08 */	slwi r3, r29, 0x1b
/* 800AFD40 000ACC80  7C 80 03 78 */	or r0, r4, r0
/* 800AFD44 000ACC84  7C 60 03 78 */	or r0, r3, r0
/* 800AFD48 000ACC88  54 03 46 3E */	srwi r3, r0, 0x18
/* 800AFD4C 000ACC8C  98 65 00 00 */	stb r3, 0(r5)
/* 800AFD50 000ACC90  54 07 86 3E */	rlwinm r7, r0, 0x10, 0x18, 0x1f
/* 800AFD54 000ACC94  54 06 C6 3E */	rlwinm r6, r0, 0x18, 0x18, 0x1f
/* 800AFD58 000ACC98  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800AFD5C 000ACC9C  80 85 00 08 */	lwz r4, 8(r5)
/* 800AFD60 000ACCA0  38 64 00 01 */	addi r3, r4, 1
/* 800AFD64 000ACCA4  90 65 00 08 */	stw r3, 8(r5)
/* 800AFD68 000ACCA8  98 E4 00 00 */	stb r7, 0(r4)
/* 800AFD6C 000ACCAC  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800AFD70 000ACCB0  80 85 00 08 */	lwz r4, 8(r5)
/* 800AFD74 000ACCB4  38 64 00 01 */	addi r3, r4, 1
/* 800AFD78 000ACCB8  90 65 00 08 */	stw r3, 8(r5)
/* 800AFD7C 000ACCBC  98 C4 00 00 */	stb r6, 0(r4)
/* 800AFD80 000ACCC0  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800AFD84 000ACCC4  80 85 00 08 */	lwz r4, 8(r5)
/* 800AFD88 000ACCC8  38 64 00 01 */	addi r3, r4, 1
/* 800AFD8C 000ACCCC  90 65 00 08 */	stw r3, 8(r5)
/* 800AFD90 000ACCD0  98 04 00 00 */	stb r0, 0(r4)
/* 800AFD94 000ACCD4  B9 C1 00 58 */	lmw r14, 0x58(r1)
/* 800AFD98 000ACCD8  80 01 00 A4 */	lwz r0, 0xa4(r1)
/* 800AFD9C 000ACCDC  38 21 00 A0 */	addi r1, r1, 0xa0
/* 800AFDA0 000ACCE0  7C 08 03 A6 */	mtlr r0
/* 800AFDA4 000ACCE4  4E 80 00 20 */	blr 

.global GDSetArray
GDSetArray:
/* 800AFDA8 000ACCE8  7C 08 02 A6 */	mflr r0
/* 800AFDAC 000ACCEC  2C 03 00 19 */	cmpwi r3, 0x19
/* 800AFDB0 000ACCF0  90 01 00 04 */	stw r0, 4(r1)
/* 800AFDB4 000ACCF4  94 21 FF D8 */	stwu r1, -0x28(r1)
/* 800AFDB8 000ACCF8  93 E1 00 24 */	stw r31, 0x24(r1)
/* 800AFDBC 000ACCFC  93 C1 00 20 */	stw r30, 0x20(r1)
/* 800AFDC0 000ACD00  3B C5 00 00 */	addi r30, r5, 0
/* 800AFDC4 000ACD04  93 A1 00 1C */	stw r29, 0x1c(r1)
/* 800AFDC8 000ACD08  3B A4 00 00 */	addi r29, r4, 0
/* 800AFDCC 000ACD0C  40 82 00 0C */	bne lbl_800AFDD8
/* 800AFDD0 000ACD10  3B E0 00 01 */	li r31, 1
/* 800AFDD4 000ACD14  48 00 00 08 */	b lbl_800AFDDC
lbl_800AFDD8:
/* 800AFDD8 000ACD18  3B E3 FF F7 */	addi r31, r3, -9
lbl_800AFDDC:
/* 800AFDDC 000ACD1C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFDE0 000ACD20  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFDE4 000ACD24  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFDE8 000ACD28  38 63 00 01 */	addi r3, r3, 1
/* 800AFDEC 000ACD2C  7C 03 00 40 */	cmplw r3, r0
/* 800AFDF0 000ACD30  40 81 00 08 */	ble lbl_800AFDF8
/* 800AFDF4 000ACD34  4B FF F3 61 */	bl GDOverflowed
lbl_800AFDF8:
/* 800AFDF8 000ACD38  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFDFC 000ACD3C  38 A0 00 08 */	li r5, 8
/* 800AFE00 000ACD40  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFE04 000ACD44  38 03 00 01 */	addi r0, r3, 1
/* 800AFE08 000ACD48  90 04 00 08 */	stw r0, 8(r4)
/* 800AFE0C 000ACD4C  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFE10 000ACD50  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFE14 000ACD54  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFE18 000ACD58  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFE1C 000ACD5C  38 63 00 01 */	addi r3, r3, 1
/* 800AFE20 000ACD60  7C 03 00 40 */	cmplw r3, r0
/* 800AFE24 000ACD64  40 81 00 08 */	ble lbl_800AFE2C
/* 800AFE28 000ACD68  4B FF F3 2D */	bl GDOverflowed
lbl_800AFE2C:
/* 800AFE2C 000ACD6C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFE30 000ACD70  38 BF 00 A0 */	addi r5, r31, 0xa0
/* 800AFE34 000ACD74  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFE38 000ACD78  38 03 00 01 */	addi r0, r3, 1
/* 800AFE3C 000ACD7C  90 04 00 08 */	stw r0, 8(r4)
/* 800AFE40 000ACD80  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFE44 000ACD84  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFE48 000ACD88  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFE4C 000ACD8C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFE50 000ACD90  38 63 00 04 */	addi r3, r3, 4
/* 800AFE54 000ACD94  7C 03 00 40 */	cmplw r3, r0
/* 800AFE58 000ACD98  40 81 00 08 */	ble lbl_800AFE60
/* 800AFE5C 000ACD9C  4B FF F2 F9 */	bl GDOverflowed
lbl_800AFE60:
/* 800AFE60 000ACDA0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFE64 000ACDA4  3D 1D 80 00 */	addis r8, r29, 0x8000
/* 800AFE68 000ACDA8  55 07 46 3E */	srwi r7, r8, 0x18
/* 800AFE6C 000ACDAC  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFE70 000ACDB0  55 06 86 3E */	rlwinm r6, r8, 0x10, 0x18, 0x1f
/* 800AFE74 000ACDB4  55 05 C6 3E */	rlwinm r5, r8, 0x18, 0x18, 0x1f
/* 800AFE78 000ACDB8  38 03 00 01 */	addi r0, r3, 1
/* 800AFE7C 000ACDBC  90 04 00 08 */	stw r0, 8(r4)
/* 800AFE80 000ACDC0  98 E3 00 00 */	stb r7, 0(r3)
/* 800AFE84 000ACDC4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFE88 000ACDC8  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFE8C 000ACDCC  38 03 00 01 */	addi r0, r3, 1
/* 800AFE90 000ACDD0  90 04 00 08 */	stw r0, 8(r4)
/* 800AFE94 000ACDD4  98 C3 00 00 */	stb r6, 0(r3)
/* 800AFE98 000ACDD8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFE9C 000ACDDC  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFEA0 000ACDE0  38 03 00 01 */	addi r0, r3, 1
/* 800AFEA4 000ACDE4  90 04 00 08 */	stw r0, 8(r4)
/* 800AFEA8 000ACDE8  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFEAC 000ACDEC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFEB0 000ACDF0  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFEB4 000ACDF4  38 03 00 01 */	addi r0, r3, 1
/* 800AFEB8 000ACDF8  90 04 00 08 */	stw r0, 8(r4)
/* 800AFEBC 000ACDFC  99 03 00 00 */	stb r8, 0(r3)
/* 800AFEC0 000ACE00  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFEC4 000ACE04  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFEC8 000ACE08  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFECC 000ACE0C  38 63 00 01 */	addi r3, r3, 1
/* 800AFED0 000ACE10  7C 03 00 40 */	cmplw r3, r0
/* 800AFED4 000ACE14  40 81 00 08 */	ble lbl_800AFEDC
/* 800AFED8 000ACE18  4B FF F2 7D */	bl GDOverflowed
lbl_800AFEDC:
/* 800AFEDC 000ACE1C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFEE0 000ACE20  38 A0 00 08 */	li r5, 8
/* 800AFEE4 000ACE24  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFEE8 000ACE28  38 03 00 01 */	addi r0, r3, 1
/* 800AFEEC 000ACE2C  90 04 00 08 */	stw r0, 8(r4)
/* 800AFEF0 000ACE30  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFEF4 000ACE34  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFEF8 000ACE38  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFEFC 000ACE3C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFF00 000ACE40  38 63 00 01 */	addi r3, r3, 1
/* 800AFF04 000ACE44  7C 03 00 40 */	cmplw r3, r0
/* 800AFF08 000ACE48  40 81 00 08 */	ble lbl_800AFF10
/* 800AFF0C 000ACE4C  4B FF F2 49 */	bl GDOverflowed
lbl_800AFF10:
/* 800AFF10 000ACE50  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFF14 000ACE54  38 BF 00 B0 */	addi r5, r31, 0xb0
/* 800AFF18 000ACE58  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFF1C 000ACE5C  38 03 00 01 */	addi r0, r3, 1
/* 800AFF20 000ACE60  90 04 00 08 */	stw r0, 8(r4)
/* 800AFF24 000ACE64  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFF28 000ACE68  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFF2C 000ACE6C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFF30 000ACE70  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFF34 000ACE74  38 63 00 04 */	addi r3, r3, 4
/* 800AFF38 000ACE78  7C 03 00 40 */	cmplw r3, r0
/* 800AFF3C 000ACE7C  40 81 00 08 */	ble lbl_800AFF44
/* 800AFF40 000ACE80  4B FF F2 15 */	bl GDOverflowed
lbl_800AFF44:
/* 800AFF44 000ACE84  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFF48 000ACE88  38 A0 00 00 */	li r5, 0
/* 800AFF4C 000ACE8C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFF50 000ACE90  38 03 00 01 */	addi r0, r3, 1
/* 800AFF54 000ACE94  90 04 00 08 */	stw r0, 8(r4)
/* 800AFF58 000ACE98  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFF5C 000ACE9C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFF60 000ACEA0  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFF64 000ACEA4  38 03 00 01 */	addi r0, r3, 1
/* 800AFF68 000ACEA8  90 04 00 08 */	stw r0, 8(r4)
/* 800AFF6C 000ACEAC  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFF70 000ACEB0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFF74 000ACEB4  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFF78 000ACEB8  38 03 00 01 */	addi r0, r3, 1
/* 800AFF7C 000ACEBC  90 04 00 08 */	stw r0, 8(r4)
/* 800AFF80 000ACEC0  98 A3 00 00 */	stb r5, 0(r3)
/* 800AFF84 000ACEC4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFF88 000ACEC8  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFF8C 000ACECC  38 03 00 01 */	addi r0, r3, 1
/* 800AFF90 000ACED0  90 04 00 08 */	stw r0, 8(r4)
/* 800AFF94 000ACED4  9B C3 00 00 */	stb r30, 0(r3)
/* 800AFF98 000ACED8  80 01 00 2C */	lwz r0, 0x2c(r1)
/* 800AFF9C 000ACEDC  83 E1 00 24 */	lwz r31, 0x24(r1)
/* 800AFFA0 000ACEE0  83 C1 00 20 */	lwz r30, 0x20(r1)
/* 800AFFA4 000ACEE4  83 A1 00 1C */	lwz r29, 0x1c(r1)
/* 800AFFA8 000ACEE8  38 21 00 28 */	addi r1, r1, 0x28
/* 800AFFAC 000ACEEC  7C 08 03 A6 */	mtlr r0
/* 800AFFB0 000ACEF0  4E 80 00 20 */	blr 

.global GDSetArrayRaw
GDSetArrayRaw:
/* 800AFFB4 000ACEF4  7C 08 02 A6 */	mflr r0
/* 800AFFB8 000ACEF8  2C 03 00 19 */	cmpwi r3, 0x19
/* 800AFFBC 000ACEFC  90 01 00 04 */	stw r0, 4(r1)
/* 800AFFC0 000ACF00  94 21 FF D8 */	stwu r1, -0x28(r1)
/* 800AFFC4 000ACF04  93 E1 00 24 */	stw r31, 0x24(r1)
/* 800AFFC8 000ACF08  93 C1 00 20 */	stw r30, 0x20(r1)
/* 800AFFCC 000ACF0C  3B C5 00 00 */	addi r30, r5, 0
/* 800AFFD0 000ACF10  93 A1 00 1C */	stw r29, 0x1c(r1)
/* 800AFFD4 000ACF14  3B A4 00 00 */	addi r29, r4, 0
/* 800AFFD8 000ACF18  40 82 00 0C */	bne lbl_800AFFE4
/* 800AFFDC 000ACF1C  3B E0 00 01 */	li r31, 1
/* 800AFFE0 000ACF20  48 00 00 08 */	b lbl_800AFFE8
lbl_800AFFE4:
/* 800AFFE4 000ACF24  3B E3 FF F7 */	addi r31, r3, -9
lbl_800AFFE8:
/* 800AFFE8 000ACF28  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800AFFEC 000ACF2C  80 64 00 08 */	lwz r3, 8(r4)
/* 800AFFF0 000ACF30  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800AFFF4 000ACF34  38 63 00 01 */	addi r3, r3, 1
/* 800AFFF8 000ACF38  7C 03 00 40 */	cmplw r3, r0
/* 800AFFFC 000ACF3C  40 81 00 08 */	ble lbl_800B0004
/* 800B0000 000ACF40  4B FF F1 55 */	bl GDOverflowed
lbl_800B0004:
/* 800B0004 000ACF44  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0008 000ACF48  38 A0 00 08 */	li r5, 8
/* 800B000C 000ACF4C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0010 000ACF50  38 03 00 01 */	addi r0, r3, 1
/* 800B0014 000ACF54  90 04 00 08 */	stw r0, 8(r4)
/* 800B0018 000ACF58  98 A3 00 00 */	stb r5, 0(r3)
/* 800B001C 000ACF5C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0020 000ACF60  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0024 000ACF64  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0028 000ACF68  38 63 00 01 */	addi r3, r3, 1
/* 800B002C 000ACF6C  7C 03 00 40 */	cmplw r3, r0
/* 800B0030 000ACF70  40 81 00 08 */	ble lbl_800B0038
/* 800B0034 000ACF74  4B FF F1 21 */	bl GDOverflowed
lbl_800B0038:
/* 800B0038 000ACF78  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B003C 000ACF7C  38 BF 00 A0 */	addi r5, r31, 0xa0
/* 800B0040 000ACF80  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0044 000ACF84  38 03 00 01 */	addi r0, r3, 1
/* 800B0048 000ACF88  90 04 00 08 */	stw r0, 8(r4)
/* 800B004C 000ACF8C  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0050 000ACF90  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0054 000ACF94  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0058 000ACF98  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B005C 000ACF9C  38 63 00 04 */	addi r3, r3, 4
/* 800B0060 000ACFA0  7C 03 00 40 */	cmplw r3, r0
/* 800B0064 000ACFA4  40 81 00 08 */	ble lbl_800B006C
/* 800B0068 000ACFA8  4B FF F0 ED */	bl GDOverflowed
lbl_800B006C:
/* 800B006C 000ACFAC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0070 000ACFB0  57 A7 46 3E */	srwi r7, r29, 0x18
/* 800B0074 000ACFB4  57 A6 86 3E */	rlwinm r6, r29, 0x10, 0x18, 0x1f
/* 800B0078 000ACFB8  80 64 00 08 */	lwz r3, 8(r4)
/* 800B007C 000ACFBC  57 A5 C6 3E */	rlwinm r5, r29, 0x18, 0x18, 0x1f
/* 800B0080 000ACFC0  38 03 00 01 */	addi r0, r3, 1
/* 800B0084 000ACFC4  90 04 00 08 */	stw r0, 8(r4)
/* 800B0088 000ACFC8  98 E3 00 00 */	stb r7, 0(r3)
/* 800B008C 000ACFCC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0090 000ACFD0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0094 000ACFD4  38 03 00 01 */	addi r0, r3, 1
/* 800B0098 000ACFD8  90 04 00 08 */	stw r0, 8(r4)
/* 800B009C 000ACFDC  98 C3 00 00 */	stb r6, 0(r3)
/* 800B00A0 000ACFE0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B00A4 000ACFE4  80 64 00 08 */	lwz r3, 8(r4)
/* 800B00A8 000ACFE8  38 03 00 01 */	addi r0, r3, 1
/* 800B00AC 000ACFEC  90 04 00 08 */	stw r0, 8(r4)
/* 800B00B0 000ACFF0  98 A3 00 00 */	stb r5, 0(r3)
/* 800B00B4 000ACFF4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B00B8 000ACFF8  80 64 00 08 */	lwz r3, 8(r4)
/* 800B00BC 000ACFFC  38 03 00 01 */	addi r0, r3, 1
/* 800B00C0 000AD000  90 04 00 08 */	stw r0, 8(r4)
/* 800B00C4 000AD004  9B A3 00 00 */	stb r29, 0(r3)
/* 800B00C8 000AD008  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B00CC 000AD00C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B00D0 000AD010  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B00D4 000AD014  38 63 00 01 */	addi r3, r3, 1
/* 800B00D8 000AD018  7C 03 00 40 */	cmplw r3, r0
/* 800B00DC 000AD01C  40 81 00 08 */	ble lbl_800B00E4
/* 800B00E0 000AD020  4B FF F0 75 */	bl GDOverflowed
lbl_800B00E4:
/* 800B00E4 000AD024  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B00E8 000AD028  38 A0 00 08 */	li r5, 8
/* 800B00EC 000AD02C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B00F0 000AD030  38 03 00 01 */	addi r0, r3, 1
/* 800B00F4 000AD034  90 04 00 08 */	stw r0, 8(r4)
/* 800B00F8 000AD038  98 A3 00 00 */	stb r5, 0(r3)
/* 800B00FC 000AD03C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0100 000AD040  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0104 000AD044  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0108 000AD048  38 63 00 01 */	addi r3, r3, 1
/* 800B010C 000AD04C  7C 03 00 40 */	cmplw r3, r0
/* 800B0110 000AD050  40 81 00 08 */	ble lbl_800B0118
/* 800B0114 000AD054  4B FF F0 41 */	bl GDOverflowed
lbl_800B0118:
/* 800B0118 000AD058  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B011C 000AD05C  38 BF 00 B0 */	addi r5, r31, 0xb0
/* 800B0120 000AD060  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0124 000AD064  38 03 00 01 */	addi r0, r3, 1
/* 800B0128 000AD068  90 04 00 08 */	stw r0, 8(r4)
/* 800B012C 000AD06C  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0130 000AD070  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0134 000AD074  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0138 000AD078  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B013C 000AD07C  38 63 00 04 */	addi r3, r3, 4
/* 800B0140 000AD080  7C 03 00 40 */	cmplw r3, r0
/* 800B0144 000AD084  40 81 00 08 */	ble lbl_800B014C
/* 800B0148 000AD088  4B FF F0 0D */	bl GDOverflowed
lbl_800B014C:
/* 800B014C 000AD08C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0150 000AD090  38 A0 00 00 */	li r5, 0
/* 800B0154 000AD094  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0158 000AD098  38 03 00 01 */	addi r0, r3, 1
/* 800B015C 000AD09C  90 04 00 08 */	stw r0, 8(r4)
/* 800B0160 000AD0A0  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0164 000AD0A4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0168 000AD0A8  80 64 00 08 */	lwz r3, 8(r4)
/* 800B016C 000AD0AC  38 03 00 01 */	addi r0, r3, 1
/* 800B0170 000AD0B0  90 04 00 08 */	stw r0, 8(r4)
/* 800B0174 000AD0B4  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0178 000AD0B8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B017C 000AD0BC  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0180 000AD0C0  38 03 00 01 */	addi r0, r3, 1
/* 800B0184 000AD0C4  90 04 00 08 */	stw r0, 8(r4)
/* 800B0188 000AD0C8  98 A3 00 00 */	stb r5, 0(r3)
/* 800B018C 000AD0CC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0190 000AD0D0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0194 000AD0D4  38 03 00 01 */	addi r0, r3, 1
/* 800B0198 000AD0D8  90 04 00 08 */	stw r0, 8(r4)
/* 800B019C 000AD0DC  9B C3 00 00 */	stb r30, 0(r3)
/* 800B01A0 000AD0E0  80 01 00 2C */	lwz r0, 0x2c(r1)
/* 800B01A4 000AD0E4  83 E1 00 24 */	lwz r31, 0x24(r1)
/* 800B01A8 000AD0E8  83 C1 00 20 */	lwz r30, 0x20(r1)
/* 800B01AC 000AD0EC  83 A1 00 1C */	lwz r29, 0x1c(r1)
/* 800B01B0 000AD0F0  38 21 00 28 */	addi r1, r1, 0x28
/* 800B01B4 000AD0F4  7C 08 03 A6 */	mtlr r0
/* 800B01B8 000AD0F8  4E 80 00 20 */	blr 

.global GDSetCullMode
GDSetCullMode:
/* 800B01BC 000AD0FC  7C 08 02 A6 */	mflr r0
/* 800B01C0 000AD100  90 01 00 04 */	stw r0, 4(r1)
/* 800B01C4 000AD104  94 21 FF E8 */	stwu r1, -0x18(r1)
/* 800B01C8 000AD108  93 E1 00 14 */	stw r31, 0x14(r1)
/* 800B01CC 000AD10C  7C 7F 1B 78 */	mr r31, r3
/* 800B01D0 000AD110  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B01D4 000AD114  80 64 00 08 */	lwz r3, 8(r4)
/* 800B01D8 000AD118  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B01DC 000AD11C  38 63 00 01 */	addi r3, r3, 1
/* 800B01E0 000AD120  7C 03 00 40 */	cmplw r3, r0
/* 800B01E4 000AD124  40 81 00 08 */	ble lbl_800B01EC
/* 800B01E8 000AD128  4B FF EF 6D */	bl GDOverflowed
lbl_800B01EC:
/* 800B01EC 000AD12C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B01F0 000AD130  38 A0 00 61 */	li r5, 0x61
/* 800B01F4 000AD134  80 64 00 08 */	lwz r3, 8(r4)
/* 800B01F8 000AD138  38 03 00 01 */	addi r0, r3, 1
/* 800B01FC 000AD13C  90 04 00 08 */	stw r0, 8(r4)
/* 800B0200 000AD140  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0204 000AD144  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0208 000AD148  80 64 00 08 */	lwz r3, 8(r4)
/* 800B020C 000AD14C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0210 000AD150  38 63 00 04 */	addi r3, r3, 4
/* 800B0214 000AD154  7C 03 00 40 */	cmplw r3, r0
/* 800B0218 000AD158  40 81 00 08 */	ble lbl_800B0220
/* 800B021C 000AD15C  4B FF EF 39 */	bl GDOverflowed
lbl_800B0220:
/* 800B0220 000AD160  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800B0224 000AD164  39 00 00 FE */	li r8, 0xfe
/* 800B0228 000AD168  38 E0 00 00 */	li r7, 0
/* 800B022C 000AD16C  80 85 00 08 */	lwz r4, 8(r5)
/* 800B0230 000AD170  38 C0 00 C0 */	li r6, 0xc0
/* 800B0234 000AD174  38 6D 82 F0 */	addi r3, r13, cm2hw$400@sda21
/* 800B0238 000AD178  38 04 00 01 */	addi r0, r4, 1
/* 800B023C 000AD17C  90 05 00 08 */	stw r0, 8(r5)
/* 800B0240 000AD180  99 04 00 00 */	stb r8, 0(r4)
/* 800B0244 000AD184  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800B0248 000AD188  80 85 00 08 */	lwz r4, 8(r5)
/* 800B024C 000AD18C  38 04 00 01 */	addi r0, r4, 1
/* 800B0250 000AD190  90 05 00 08 */	stw r0, 8(r5)
/* 800B0254 000AD194  98 E4 00 00 */	stb r7, 0(r4)
/* 800B0258 000AD198  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800B025C 000AD19C  80 85 00 08 */	lwz r4, 8(r5)
/* 800B0260 000AD1A0  38 04 00 01 */	addi r0, r4, 1
/* 800B0264 000AD1A4  90 05 00 08 */	stw r0, 8(r5)
/* 800B0268 000AD1A8  98 C4 00 00 */	stb r6, 0(r4)
/* 800B026C 000AD1AC  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800B0270 000AD1B0  80 85 00 08 */	lwz r4, 8(r5)
/* 800B0274 000AD1B4  38 04 00 01 */	addi r0, r4, 1
/* 800B0278 000AD1B8  90 05 00 08 */	stw r0, 8(r5)
/* 800B027C 000AD1BC  98 E4 00 00 */	stb r7, 0(r4)
/* 800B0280 000AD1C0  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800B0284 000AD1C4  7C 83 F8 AE */	lbzx r4, r3, r31
/* 800B0288 000AD1C8  80 65 00 08 */	lwz r3, 8(r5)
/* 800B028C 000AD1CC  80 05 00 0C */	lwz r0, 0xc(r5)
/* 800B0290 000AD1D0  54 9F 70 22 */	slwi r31, r4, 0xe
/* 800B0294 000AD1D4  38 63 00 01 */	addi r3, r3, 1
/* 800B0298 000AD1D8  7C 03 00 40 */	cmplw r3, r0
/* 800B029C 000AD1DC  40 81 00 08 */	ble lbl_800B02A4
/* 800B02A0 000AD1E0  4B FF EE B5 */	bl GDOverflowed
lbl_800B02A4:
/* 800B02A4 000AD1E4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B02A8 000AD1E8  38 A0 00 61 */	li r5, 0x61
/* 800B02AC 000AD1EC  80 64 00 08 */	lwz r3, 8(r4)
/* 800B02B0 000AD1F0  38 03 00 01 */	addi r0, r3, 1
/* 800B02B4 000AD1F4  90 04 00 08 */	stw r0, 8(r4)
/* 800B02B8 000AD1F8  98 A3 00 00 */	stb r5, 0(r3)
/* 800B02BC 000AD1FC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B02C0 000AD200  80 64 00 08 */	lwz r3, 8(r4)
/* 800B02C4 000AD204  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B02C8 000AD208  38 63 00 04 */	addi r3, r3, 4
/* 800B02CC 000AD20C  7C 03 00 40 */	cmplw r3, r0
/* 800B02D0 000AD210  40 81 00 08 */	ble lbl_800B02D8
/* 800B02D4 000AD214  4B FF EE 81 */	bl GDOverflowed
lbl_800B02D8:
/* 800B02D8 000AD218  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B02DC 000AD21C  57 E7 46 3E */	srwi r7, r31, 0x18
/* 800B02E0 000AD220  57 E6 86 3E */	rlwinm r6, r31, 0x10, 0x18, 0x1f
/* 800B02E4 000AD224  80 64 00 08 */	lwz r3, 8(r4)
/* 800B02E8 000AD228  57 E5 C6 3E */	rlwinm r5, r31, 0x18, 0x18, 0x1f
/* 800B02EC 000AD22C  38 03 00 01 */	addi r0, r3, 1
/* 800B02F0 000AD230  90 04 00 08 */	stw r0, 8(r4)
/* 800B02F4 000AD234  98 E3 00 00 */	stb r7, 0(r3)
/* 800B02F8 000AD238  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B02FC 000AD23C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0300 000AD240  38 03 00 01 */	addi r0, r3, 1
/* 800B0304 000AD244  90 04 00 08 */	stw r0, 8(r4)
/* 800B0308 000AD248  98 C3 00 00 */	stb r6, 0(r3)
/* 800B030C 000AD24C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0310 000AD250  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0314 000AD254  38 03 00 01 */	addi r0, r3, 1
/* 800B0318 000AD258  90 04 00 08 */	stw r0, 8(r4)
/* 800B031C 000AD25C  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0320 000AD260  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0324 000AD264  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0328 000AD268  38 03 00 01 */	addi r0, r3, 1
/* 800B032C 000AD26C  90 04 00 08 */	stw r0, 8(r4)
/* 800B0330 000AD270  9B E3 00 00 */	stb r31, 0(r3)
/* 800B0334 000AD274  80 01 00 1C */	lwz r0, 0x1c(r1)
/* 800B0338 000AD278  83 E1 00 14 */	lwz r31, 0x14(r1)
/* 800B033C 000AD27C  38 21 00 18 */	addi r1, r1, 0x18
/* 800B0340 000AD280  7C 08 03 A6 */	mtlr r0
/* 800B0344 000AD284  4E 80 00 20 */	blr 

.global GDSetGenMode2
GDSetGenMode2:
/* 800B0348 000AD288  7C 08 02 A6 */	mflr r0
/* 800B034C 000AD28C  90 01 00 04 */	stw r0, 4(r1)
/* 800B0350 000AD290  94 21 FF D8 */	stwu r1, -0x28(r1)
/* 800B0354 000AD294  BF 61 00 14 */	stmw r27, 0x14(r1)
/* 800B0358 000AD298  3B A3 00 00 */	addi r29, r3, 0
/* 800B035C 000AD29C  3B 64 00 00 */	addi r27, r4, 0
/* 800B0360 000AD2A0  7C BE 2B 78 */	mr r30, r5
/* 800B0364 000AD2A4  3B 86 00 00 */	addi r28, r6, 0
/* 800B0368 000AD2A8  3B E7 00 00 */	addi r31, r7, 0
/* 800B036C 000AD2AC  81 0D 95 B8 */	lwz r8, __GDCurrentDL@sda21(r13)
/* 800B0370 000AD2B0  80 68 00 08 */	lwz r3, 8(r8)
/* 800B0374 000AD2B4  80 08 00 0C */	lwz r0, 0xc(r8)
/* 800B0378 000AD2B8  38 63 00 01 */	addi r3, r3, 1
/* 800B037C 000AD2BC  7C 03 00 40 */	cmplw r3, r0
/* 800B0380 000AD2C0  40 81 00 08 */	ble lbl_800B0388
/* 800B0384 000AD2C4  4B FF ED D1 */	bl GDOverflowed
lbl_800B0388:
/* 800B0388 000AD2C8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B038C 000AD2CC  38 A0 00 61 */	li r5, 0x61
/* 800B0390 000AD2D0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0394 000AD2D4  38 03 00 01 */	addi r0, r3, 1
/* 800B0398 000AD2D8  90 04 00 08 */	stw r0, 8(r4)
/* 800B039C 000AD2DC  98 A3 00 00 */	stb r5, 0(r3)
/* 800B03A0 000AD2E0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B03A4 000AD2E4  80 64 00 08 */	lwz r3, 8(r4)
/* 800B03A8 000AD2E8  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B03AC 000AD2EC  38 63 00 04 */	addi r3, r3, 4
/* 800B03B0 000AD2F0  7C 03 00 40 */	cmplw r3, r0
/* 800B03B4 000AD2F4  40 81 00 08 */	ble lbl_800B03BC
/* 800B03B8 000AD2F8  4B FF ED 9D */	bl GDOverflowed
lbl_800B03BC:
/* 800B03BC 000AD2FC  80 AD 95 B8 */	lwz r5, __GDCurrentDL@sda21(r13)
/* 800B03C0 000AD300  57 C3 06 3E */	clrlwi r3, r30, 0x18
/* 800B03C4 000AD304  38 63 FF FF */	addi r3, r3, -1
/* 800B03C8 000AD308  80 85 00 08 */	lwz r4, 8(r5)
/* 800B03CC 000AD30C  39 40 00 07 */	li r10, 7
/* 800B03D0 000AD310  57 BD 06 3E */	clrlwi r29, r29, 0x18
/* 800B03D4 000AD314  38 04 00 01 */	addi r0, r4, 1
/* 800B03D8 000AD318  90 05 00 08 */	stw r0, 8(r5)
/* 800B03DC 000AD31C  38 00 00 FE */	li r0, 0xfe
/* 800B03E0 000AD320  54 63 50 2A */	slwi r3, r3, 0xa
/* 800B03E4 000AD324  98 04 00 00 */	stb r0, 0(r4)
/* 800B03E8 000AD328  57 60 25 36 */	rlwinm r0, r27, 4, 0x14, 0x1b
/* 800B03EC 000AD32C  7F A0 03 78 */	or r0, r29, r0
/* 800B03F0 000AD330  80 ED 95 B8 */	lwz r7, __GDCurrentDL@sda21(r13)
/* 800B03F4 000AD334  39 20 00 FC */	li r9, 0xfc
/* 800B03F8 000AD338  39 00 00 3F */	li r8, 0x3f
/* 800B03FC 000AD33C  80 C7 00 08 */	lwz r6, 8(r7)
/* 800B0400 000AD340  38 AD 82 F4 */	addi r5, r13, cm2hw$515@sda21
/* 800B0404 000AD344  57 7E 06 3E */	clrlwi r30, r27, 0x18
/* 800B0408 000AD348  38 86 00 01 */	addi r4, r6, 1
/* 800B040C 000AD34C  90 87 00 08 */	stw r4, 8(r7)
/* 800B0410 000AD350  7C 64 03 78 */	or r4, r3, r0
/* 800B0414 000AD354  99 46 00 00 */	stb r10, 0(r6)
/* 800B0418 000AD358  57 86 82 1E */	rlwinm r6, r28, 0x10, 8, 0xf
/* 800B041C 000AD35C  80 ED 95 B8 */	lwz r7, __GDCurrentDL@sda21(r13)
/* 800B0420 000AD360  80 67 00 08 */	lwz r3, 8(r7)
/* 800B0424 000AD364  38 03 00 01 */	addi r0, r3, 1
/* 800B0428 000AD368  90 07 00 08 */	stw r0, 8(r7)
/* 800B042C 000AD36C  99 23 00 00 */	stb r9, 0(r3)
/* 800B0430 000AD370  80 ED 95 B8 */	lwz r7, __GDCurrentDL@sda21(r13)
/* 800B0434 000AD374  80 67 00 08 */	lwz r3, 8(r7)
/* 800B0438 000AD378  38 03 00 01 */	addi r0, r3, 1
/* 800B043C 000AD37C  90 07 00 08 */	stw r0, 8(r7)
/* 800B0440 000AD380  99 03 00 00 */	stb r8, 0(r3)
/* 800B0444 000AD384  80 ED 95 B8 */	lwz r7, __GDCurrentDL@sda21(r13)
/* 800B0448 000AD388  7C A5 F8 AE */	lbzx r5, r5, r31
/* 800B044C 000AD38C  80 67 00 08 */	lwz r3, 8(r7)
/* 800B0450 000AD390  80 07 00 0C */	lwz r0, 0xc(r7)
/* 800B0454 000AD394  54 A5 70 22 */	slwi r5, r5, 0xe
/* 800B0458 000AD398  38 63 00 01 */	addi r3, r3, 1
/* 800B045C 000AD39C  7C 03 00 40 */	cmplw r3, r0
/* 800B0460 000AD3A0  7C A0 23 78 */	or r0, r5, r4
/* 800B0464 000AD3A4  7C DF 03 78 */	or r31, r6, r0
/* 800B0468 000AD3A8  40 81 00 08 */	ble lbl_800B0470
/* 800B046C 000AD3AC  4B FF EC E9 */	bl GDOverflowed
lbl_800B0470:
/* 800B0470 000AD3B0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0474 000AD3B4  38 A0 00 61 */	li r5, 0x61
/* 800B0478 000AD3B8  80 64 00 08 */	lwz r3, 8(r4)
/* 800B047C 000AD3BC  38 03 00 01 */	addi r0, r3, 1
/* 800B0480 000AD3C0  90 04 00 08 */	stw r0, 8(r4)
/* 800B0484 000AD3C4  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0488 000AD3C8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B048C 000AD3CC  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0490 000AD3D0  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0494 000AD3D4  38 63 00 04 */	addi r3, r3, 4
/* 800B0498 000AD3D8  7C 03 00 40 */	cmplw r3, r0
/* 800B049C 000AD3DC  40 81 00 08 */	ble lbl_800B04A4
/* 800B04A0 000AD3E0  4B FF EC B5 */	bl GDOverflowed
lbl_800B04A4:
/* 800B04A4 000AD3E4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B04A8 000AD3E8  57 E7 46 3E */	srwi r7, r31, 0x18
/* 800B04AC 000AD3EC  57 E6 86 3E */	rlwinm r6, r31, 0x10, 0x18, 0x1f
/* 800B04B0 000AD3F0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B04B4 000AD3F4  57 E5 C6 3E */	rlwinm r5, r31, 0x18, 0x18, 0x1f
/* 800B04B8 000AD3F8  38 03 00 01 */	addi r0, r3, 1
/* 800B04BC 000AD3FC  90 04 00 08 */	stw r0, 8(r4)
/* 800B04C0 000AD400  98 E3 00 00 */	stb r7, 0(r3)
/* 800B04C4 000AD404  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B04C8 000AD408  80 64 00 08 */	lwz r3, 8(r4)
/* 800B04CC 000AD40C  38 03 00 01 */	addi r0, r3, 1
/* 800B04D0 000AD410  90 04 00 08 */	stw r0, 8(r4)
/* 800B04D4 000AD414  98 C3 00 00 */	stb r6, 0(r3)
/* 800B04D8 000AD418  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B04DC 000AD41C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B04E0 000AD420  38 03 00 01 */	addi r0, r3, 1
/* 800B04E4 000AD424  90 04 00 08 */	stw r0, 8(r4)
/* 800B04E8 000AD428  98 A3 00 00 */	stb r5, 0(r3)
/* 800B04EC 000AD42C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B04F0 000AD430  80 64 00 08 */	lwz r3, 8(r4)
/* 800B04F4 000AD434  38 03 00 01 */	addi r0, r3, 1
/* 800B04F8 000AD438  90 04 00 08 */	stw r0, 8(r4)
/* 800B04FC 000AD43C  9B E3 00 00 */	stb r31, 0(r3)
/* 800B0500 000AD440  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0504 000AD444  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0508 000AD448  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B050C 000AD44C  38 63 00 01 */	addi r3, r3, 1
/* 800B0510 000AD450  7C 03 00 40 */	cmplw r3, r0
/* 800B0514 000AD454  40 81 00 08 */	ble lbl_800B051C
/* 800B0518 000AD458  4B FF EC 3D */	bl GDOverflowed
lbl_800B051C:
/* 800B051C 000AD45C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0520 000AD460  38 A0 00 10 */	li r5, 0x10
/* 800B0524 000AD464  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0528 000AD468  38 03 00 01 */	addi r0, r3, 1
/* 800B052C 000AD46C  90 04 00 08 */	stw r0, 8(r4)
/* 800B0530 000AD470  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0534 000AD474  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0538 000AD478  80 64 00 08 */	lwz r3, 8(r4)
/* 800B053C 000AD47C  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0540 000AD480  38 63 00 02 */	addi r3, r3, 2
/* 800B0544 000AD484  7C 03 00 40 */	cmplw r3, r0
/* 800B0548 000AD488  40 81 00 08 */	ble lbl_800B0550
/* 800B054C 000AD48C  4B FF EC 09 */	bl GDOverflowed
lbl_800B0550:
/* 800B0550 000AD490  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0554 000AD494  38 A0 00 00 */	li r5, 0
/* 800B0558 000AD498  80 64 00 08 */	lwz r3, 8(r4)
/* 800B055C 000AD49C  38 03 00 01 */	addi r0, r3, 1
/* 800B0560 000AD4A0  90 04 00 08 */	stw r0, 8(r4)
/* 800B0564 000AD4A4  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0568 000AD4A8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B056C 000AD4AC  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0570 000AD4B0  38 03 00 01 */	addi r0, r3, 1
/* 800B0574 000AD4B4  90 04 00 08 */	stw r0, 8(r4)
/* 800B0578 000AD4B8  98 A3 00 00 */	stb r5, 0(r3)
/* 800B057C 000AD4BC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0580 000AD4C0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0584 000AD4C4  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0588 000AD4C8  38 63 00 02 */	addi r3, r3, 2
/* 800B058C 000AD4CC  7C 03 00 40 */	cmplw r3, r0
/* 800B0590 000AD4D0  40 81 00 08 */	ble lbl_800B0598
/* 800B0594 000AD4D4  4B FF EB C1 */	bl GDOverflowed
lbl_800B0598:
/* 800B0598 000AD4D8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B059C 000AD4DC  38 C0 00 10 */	li r6, 0x10
/* 800B05A0 000AD4E0  38 A0 00 09 */	li r5, 9
/* 800B05A4 000AD4E4  80 64 00 08 */	lwz r3, 8(r4)
/* 800B05A8 000AD4E8  38 03 00 01 */	addi r0, r3, 1
/* 800B05AC 000AD4EC  90 04 00 08 */	stw r0, 8(r4)
/* 800B05B0 000AD4F0  98 C3 00 00 */	stb r6, 0(r3)
/* 800B05B4 000AD4F4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B05B8 000AD4F8  80 64 00 08 */	lwz r3, 8(r4)
/* 800B05BC 000AD4FC  38 03 00 01 */	addi r0, r3, 1
/* 800B05C0 000AD500  90 04 00 08 */	stw r0, 8(r4)
/* 800B05C4 000AD504  98 A3 00 00 */	stb r5, 0(r3)
/* 800B05C8 000AD508  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B05CC 000AD50C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B05D0 000AD510  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B05D4 000AD514  38 63 00 04 */	addi r3, r3, 4
/* 800B05D8 000AD518  7C 03 00 40 */	cmplw r3, r0
/* 800B05DC 000AD51C  40 81 00 08 */	ble lbl_800B05E4
/* 800B05E0 000AD520  4B FF EB 75 */	bl GDOverflowed
lbl_800B05E4:
/* 800B05E4 000AD524  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B05E8 000AD528  38 A0 00 00 */	li r5, 0
/* 800B05EC 000AD52C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B05F0 000AD530  38 03 00 01 */	addi r0, r3, 1
/* 800B05F4 000AD534  90 04 00 08 */	stw r0, 8(r4)
/* 800B05F8 000AD538  98 A3 00 00 */	stb r5, 0(r3)
/* 800B05FC 000AD53C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0600 000AD540  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0604 000AD544  38 03 00 01 */	addi r0, r3, 1
/* 800B0608 000AD548  90 04 00 08 */	stw r0, 8(r4)
/* 800B060C 000AD54C  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0610 000AD550  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0614 000AD554  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0618 000AD558  38 03 00 01 */	addi r0, r3, 1
/* 800B061C 000AD55C  90 04 00 08 */	stw r0, 8(r4)
/* 800B0620 000AD560  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0624 000AD564  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0628 000AD568  80 64 00 08 */	lwz r3, 8(r4)
/* 800B062C 000AD56C  38 03 00 01 */	addi r0, r3, 1
/* 800B0630 000AD570  90 04 00 08 */	stw r0, 8(r4)
/* 800B0634 000AD574  9B C3 00 00 */	stb r30, 0(r3)
/* 800B0638 000AD578  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B063C 000AD57C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0640 000AD580  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0644 000AD584  38 63 00 01 */	addi r3, r3, 1
/* 800B0648 000AD588  7C 03 00 40 */	cmplw r3, r0
/* 800B064C 000AD58C  40 81 00 08 */	ble lbl_800B0654
/* 800B0650 000AD590  4B FF EB 05 */	bl GDOverflowed
lbl_800B0654:
/* 800B0654 000AD594  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0658 000AD598  38 A0 00 10 */	li r5, 0x10
/* 800B065C 000AD59C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0660 000AD5A0  38 03 00 01 */	addi r0, r3, 1
/* 800B0664 000AD5A4  90 04 00 08 */	stw r0, 8(r4)
/* 800B0668 000AD5A8  98 A3 00 00 */	stb r5, 0(r3)
/* 800B066C 000AD5AC  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0670 000AD5B0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0674 000AD5B4  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B0678 000AD5B8  38 63 00 02 */	addi r3, r3, 2
/* 800B067C 000AD5BC  7C 03 00 40 */	cmplw r3, r0
/* 800B0680 000AD5C0  40 81 00 08 */	ble lbl_800B0688
/* 800B0684 000AD5C4  4B FF EA D1 */	bl GDOverflowed
lbl_800B0688:
/* 800B0688 000AD5C8  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B068C 000AD5CC  38 A0 00 00 */	li r5, 0
/* 800B0690 000AD5D0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0694 000AD5D4  38 03 00 01 */	addi r0, r3, 1
/* 800B0698 000AD5D8  90 04 00 08 */	stw r0, 8(r4)
/* 800B069C 000AD5DC  98 A3 00 00 */	stb r5, 0(r3)
/* 800B06A0 000AD5E0  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B06A4 000AD5E4  80 64 00 08 */	lwz r3, 8(r4)
/* 800B06A8 000AD5E8  38 03 00 01 */	addi r0, r3, 1
/* 800B06AC 000AD5EC  90 04 00 08 */	stw r0, 8(r4)
/* 800B06B0 000AD5F0  98 A3 00 00 */	stb r5, 0(r3)
/* 800B06B4 000AD5F4  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B06B8 000AD5F8  80 64 00 08 */	lwz r3, 8(r4)
/* 800B06BC 000AD5FC  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B06C0 000AD600  38 63 00 02 */	addi r3, r3, 2
/* 800B06C4 000AD604  7C 03 00 40 */	cmplw r3, r0
/* 800B06C8 000AD608  40 81 00 08 */	ble lbl_800B06D0
/* 800B06CC 000AD60C  4B FF EA 89 */	bl GDOverflowed
lbl_800B06D0:
/* 800B06D0 000AD610  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B06D4 000AD614  38 C0 00 10 */	li r6, 0x10
/* 800B06D8 000AD618  38 A0 00 3F */	li r5, 0x3f
/* 800B06DC 000AD61C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B06E0 000AD620  38 03 00 01 */	addi r0, r3, 1
/* 800B06E4 000AD624  90 04 00 08 */	stw r0, 8(r4)
/* 800B06E8 000AD628  98 C3 00 00 */	stb r6, 0(r3)
/* 800B06EC 000AD62C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B06F0 000AD630  80 64 00 08 */	lwz r3, 8(r4)
/* 800B06F4 000AD634  38 03 00 01 */	addi r0, r3, 1
/* 800B06F8 000AD638  90 04 00 08 */	stw r0, 8(r4)
/* 800B06FC 000AD63C  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0700 000AD640  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0704 000AD644  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0708 000AD648  80 04 00 0C */	lwz r0, 0xc(r4)
/* 800B070C 000AD64C  38 63 00 04 */	addi r3, r3, 4
/* 800B0710 000AD650  7C 03 00 40 */	cmplw r3, r0
/* 800B0714 000AD654  40 81 00 08 */	ble lbl_800B071C
/* 800B0718 000AD658  4B FF EA 3D */	bl GDOverflowed
lbl_800B071C:
/* 800B071C 000AD65C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0720 000AD660  38 A0 00 00 */	li r5, 0
/* 800B0724 000AD664  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0728 000AD668  38 03 00 01 */	addi r0, r3, 1
/* 800B072C 000AD66C  90 04 00 08 */	stw r0, 8(r4)
/* 800B0730 000AD670  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0734 000AD674  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0738 000AD678  80 64 00 08 */	lwz r3, 8(r4)
/* 800B073C 000AD67C  38 03 00 01 */	addi r0, r3, 1
/* 800B0740 000AD680  90 04 00 08 */	stw r0, 8(r4)
/* 800B0744 000AD684  98 A3 00 00 */	stb r5, 0(r3)
/* 800B0748 000AD688  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B074C 000AD68C  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0750 000AD690  38 03 00 01 */	addi r0, r3, 1
/* 800B0754 000AD694  90 04 00 08 */	stw r0, 8(r4)
/* 800B0758 000AD698  98 A3 00 00 */	stb r5, 0(r3)
/* 800B075C 000AD69C  80 8D 95 B8 */	lwz r4, __GDCurrentDL@sda21(r13)
/* 800B0760 000AD6A0  80 64 00 08 */	lwz r3, 8(r4)
/* 800B0764 000AD6A4  38 03 00 01 */	addi r0, r3, 1
/* 800B0768 000AD6A8  90 04 00 08 */	stw r0, 8(r4)
/* 800B076C 000AD6AC  9B A3 00 00 */	stb r29, 0(r3)
/* 800B0770 000AD6B0  80 01 00 2C */	lwz r0, 0x2c(r1)
/* 800B0774 000AD6B4  BB 61 00 14 */	lmw r27, 0x14(r1)
/* 800B0778 000AD6B8  38 21 00 28 */	addi r1, r1, 0x28
/* 800B077C 000AD6BC  7C 08 03 A6 */	mtlr r0
/* 800B0780 000AD6C0  4E 80 00 20 */	blr 

.section .data, "wa"  # 0x803A8380 - 0x803E6000
    .balign 8
"@121":
    .4byte lbl_800AF204
    .4byte lbl_800AF20C
    .4byte lbl_800AF21C
    .4byte lbl_800AF230
    .4byte lbl_800AF244
    .4byte lbl_800AF258
    .4byte lbl_800AF26C
    .4byte lbl_800AF280
    .4byte lbl_800AF294
    .4byte lbl_800AF2A8
    .4byte lbl_800AF2B0
    .4byte lbl_800AF2E0
    .4byte lbl_800AF2FC
    .4byte lbl_800AF318
    .4byte lbl_800AF334
    .4byte lbl_800AF350
    .4byte lbl_800AF36C
    .4byte lbl_800AF388
    .4byte lbl_800AF3A4
    .4byte lbl_800AF3C0
    .4byte lbl_800AF3DC
    .4byte lbl_800AF3F4
    .4byte lbl_800AF3F4
    .4byte lbl_800AF3F4
    .4byte lbl_800AF3F4
    .4byte lbl_800AF2C8
"@207":
    .4byte lbl_800AF88C
    .4byte lbl_800AF8A8
    .4byte lbl_800AF8D4
    .4byte lbl_800AF8E8
    .4byte lbl_800AF8FC
    .4byte lbl_800AF918
    .4byte lbl_800AF934
    .4byte lbl_800AF94C
    .4byte lbl_800AF95C
    .4byte lbl_800AF96C
    .4byte lbl_800AF97C
    .4byte lbl_800AF98C
    .4byte lbl_800AF998
    .4byte lbl_800AF998
    .4byte lbl_800AF998
    .4byte lbl_800AF998
    .4byte lbl_800AF8A8
.section .sdata, "wa"  # 0x80408AC0 - 0x804097C0
cm2hw$400:
	.4byte 0x00020103
cm2hw$515:
	.4byte 0x00020103
	.4byte 0
	.4byte 0