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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_800097D8
func_800097D8:
/* 800097D8 00005438 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 800097DC 0000543C 2C 03 00 00 */ cmpwi r3, 0
/* 800097E0 00005440 41 82 00 08 */ beq lbl_800097E8
/* 800097E4 00005444 48 00 05 94 */ b lbl_80009D78
lbl_800097E8:
/* 800097E8 00005448 38 60 00 01 */ li r3, 1
/* 800097EC 0000544C 4E 80 00 20 */ blr
.global func_800097F0
func_800097F0:
/* 800097F0 00005450 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 800097F4 00005454 2C 03 00 00 */ cmpwi r3, 0
/* 800097F8 00005458 41 82 00 08 */ beq lbl_80009800
/* 800097FC 0000545C 48 00 05 98 */ b lbl_80009D94
lbl_80009800:
/* 80009800 00005460 38 60 00 01 */ li r3, 1
/* 80009804 00005464 4E 80 00 20 */ blr
.global func_80009808
func_80009808:
/* 80009808 00005468 80 8D 96 70 */ lwz r4, lbl_8063E930-_SDA_BASE_(r13)
/* 8000980C 0000546C 2C 04 00 00 */ cmpwi r4, 0
/* 80009810 00005470 4D 82 00 20 */ beqlr
/* 80009814 00005474 98 64 00 04 */ stb r3, 4(r4)
/* 80009818 00005478 4E 80 00 20 */ blr
.global func_8000981C
func_8000981C:
/* 8000981C 0000547C 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 80009820 00005480 2C 03 00 00 */ cmpwi r3, 0
/* 80009824 00005484 41 82 00 0C */ beq lbl_80009830
/* 80009828 00005488 88 63 00 04 */ lbz r3, 4(r3)
/* 8000982C 0000548C 4E 80 00 20 */ blr
lbl_80009830:
/* 80009830 00005490 38 60 00 00 */ li r3, 0
/* 80009834 00005494 4E 80 00 20 */ blr
.global func_80009838
func_80009838:
/* 80009838 00005498 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 8000983C 0000549C 2C 03 00 00 */ cmpwi r3, 0
/* 80009840 000054A0 41 82 00 0C */ beq lbl_8000984C
/* 80009844 000054A4 88 63 00 01 */ lbz r3, 1(r3)
/* 80009848 000054A8 4E 80 00 20 */ blr
lbl_8000984C:
/* 8000984C 000054AC 38 60 00 00 */ li r3, 0
/* 80009850 000054B0 4E 80 00 20 */ blr
.global func_80009854
func_80009854:
/* 80009854 000054B4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80009858 000054B8 7C 08 02 A6 */ mflr r0
/* 8000985C 000054BC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80009860 000054C0 80 0D 96 70 */ lwz r0, lbl_8063E930-_SDA_BASE_(r13)
/* 80009864 000054C4 2C 00 00 00 */ cmpwi r0, 0
/* 80009868 000054C8 40 82 00 0C */ bne lbl_80009874
/* 8000986C 000054CC 38 60 00 00 */ li r3, 0
/* 80009870 000054D0 48 00 00 7C */ b lbl_800098EC
lbl_80009874:
/* 80009874 000054D4 48 15 92 FD */ bl func_80162B70
/* 80009878 000054D8 2C 03 00 00 */ cmpwi r3, 0
/* 8000987C 000054DC 40 82 00 64 */ bne lbl_800098E0
/* 80009880 000054E0 38 60 02 61 */ li r3, 0x261
/* 80009884 000054E4 48 15 92 0D */ bl func_80162A90
/* 80009888 000054E8 28 03 00 03 */ cmplwi r3, 3
/* 8000988C 000054EC 41 82 00 54 */ beq lbl_800098E0
/* 80009890 000054F0 38 60 02 61 */ li r3, 0x261
/* 80009894 000054F4 48 15 91 FD */ bl func_80162A90
/* 80009898 000054F8 28 03 00 04 */ cmplwi r3, 4
/* 8000989C 000054FC 41 82 00 44 */ beq lbl_800098E0
/* 800098A0 00005500 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 800098A4 00005504 88 03 00 03 */ lbz r0, 3(r3)
/* 800098A8 00005508 2C 00 00 00 */ cmpwi r0, 0
/* 800098AC 0000550C 40 82 00 34 */ bne lbl_800098E0
/* 800098B0 00005510 88 03 00 04 */ lbz r0, 4(r3)
/* 800098B4 00005514 2C 00 00 00 */ cmpwi r0, 0
/* 800098B8 00005518 40 82 00 28 */ bne lbl_800098E0
/* 800098BC 0000551C 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 800098C0 00005520 2C 03 00 00 */ cmpwi r3, 0
/* 800098C4 00005524 41 82 00 10 */ beq lbl_800098D4
/* 800098C8 00005528 88 03 00 14 */ lbz r0, 0x14(r3)
/* 800098CC 0000552C 2C 00 00 00 */ cmpwi r0, 0
/* 800098D0 00005530 40 82 00 10 */ bne lbl_800098E0
lbl_800098D4:
/* 800098D4 00005534 80 0D 96 44 */ lwz r0, lbl_8063E904-_SDA_BASE_(r13)
/* 800098D8 00005538 2C 00 00 00 */ cmpwi r0, 0
/* 800098DC 0000553C 41 82 00 0C */ beq lbl_800098E8
lbl_800098E0:
/* 800098E0 00005540 38 60 00 00 */ li r3, 0
/* 800098E4 00005544 48 00 00 08 */ b lbl_800098EC
lbl_800098E8:
/* 800098E8 00005548 38 60 00 01 */ li r3, 1
lbl_800098EC:
/* 800098EC 0000554C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800098F0 00005550 7C 08 03 A6 */ mtlr r0
/* 800098F4 00005554 38 21 00 10 */ addi r1, r1, 0x10
/* 800098F8 00005558 4E 80 00 20 */ blr
.global func_800098FC
func_800098FC:
/* 800098FC 0000555C 80 8D 96 70 */ lwz r4, lbl_8063E930-_SDA_BASE_(r13)
/* 80009900 00005560 2C 04 00 00 */ cmpwi r4, 0
/* 80009904 00005564 41 82 00 38 */ beq lbl_8000993C
/* 80009908 00005568 88 04 00 05 */ lbz r0, 5(r4)
/* 8000990C 0000556C 2C 00 00 00 */ cmpwi r0, 0
/* 80009910 00005570 4C 82 00 20 */ bnelr
/* 80009914 00005574 88 04 00 06 */ lbz r0, 6(r4)
/* 80009918 00005578 2C 00 00 00 */ cmpwi r0, 0
/* 8000991C 0000557C 41 82 00 08 */ beq lbl_80009924
/* 80009920 00005580 4E 80 00 20 */ blr
lbl_80009924:
/* 80009924 00005584 2C 03 00 00 */ cmpwi r3, 0
/* 80009928 00005588 41 82 00 08 */ beq lbl_80009930
/* 8000992C 0000558C 98 64 00 06 */ stb r3, 6(r4)
lbl_80009930:
/* 80009930 00005590 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 80009934 00005594 38 00 00 01 */ li r0, 1
/* 80009938 00005598 98 03 00 05 */ stb r0, 5(r3)
lbl_8000993C:
/* 8000993C 0000559C 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 80009940 000055A0 38 00 00 01 */ li r0, 1
/* 80009944 000055A4 98 03 00 07 */ stb r0, 7(r3)
/* 80009948 000055A8 4E 80 00 20 */ blr
.global func_8000994C
func_8000994C:
/* 8000994C 000055AC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80009950 000055B0 7C 08 02 A6 */ mflr r0
/* 80009954 000055B4 C0 02 80 28 */ lfs f0, lbl_80640628-_SDA2_BASE_(r2)
/* 80009958 000055B8 38 C0 00 00 */ li r6, 0
/* 8000995C 000055BC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80009960 000055C0 38 00 00 01 */ li r0, 1
/* 80009964 000055C4 38 80 00 00 */ li r4, 0
/* 80009968 000055C8 38 A0 00 40 */ li r5, 0x40
/* 8000996C 000055CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80009970 000055D0 7C 7F 1B 78 */ mr r31, r3
/* 80009974 000055D4 98 C3 00 03 */ stb r6, 3(r3)
/* 80009978 000055D8 98 C3 00 00 */ stb r6, 0(r3)
/* 8000997C 000055DC 98 C3 00 04 */ stb r6, 4(r3)
/* 80009980 000055E0 98 C3 00 01 */ stb r6, 1(r3)
/* 80009984 000055E4 98 C3 00 02 */ stb r6, 2(r3)
/* 80009988 000055E8 98 C3 00 05 */ stb r6, 5(r3)
/* 8000998C 000055EC 98 C3 00 06 */ stb r6, 6(r3)
/* 80009990 000055F0 98 03 00 08 */ stb r0, 8(r3)
/* 80009994 000055F4 98 C3 00 07 */ stb r6, 7(r3)
/* 80009998 000055F8 D0 03 00 18 */ stfs f0, 0x18(r3)
/* 8000999C 000055FC 98 C3 00 0D */ stb r6, 0xd(r3)
/* 800099A0 00005600 98 C3 00 0E */ stb r6, 0xe(r3)
/* 800099A4 00005604 90 C3 00 10 */ stw r6, 0x10(r3)
/* 800099A8 00005608 98 C3 00 14 */ stb r6, 0x14(r3)
/* 800099AC 0000560C 98 C3 00 0C */ stb r6, 0xc(r3)
/* 800099B0 00005610 90 C3 00 D0 */ stw r6, 0xd0(r3)
/* 800099B4 00005614 38 63 00 20 */ addi r3, r3, 0x20
/* 800099B8 00005618 4B FF A7 4D */ bl memset
/* 800099BC 0000561C 38 7F 00 60 */ addi r3, r31, 0x60
/* 800099C0 00005620 38 80 00 00 */ li r4, 0
/* 800099C4 00005624 38 A0 00 40 */ li r5, 0x40
/* 800099C8 00005628 4B FF A7 3D */ bl memset
/* 800099CC 0000562C 7F E3 FB 78 */ mr r3, r31
/* 800099D0 00005630 48 00 03 F9 */ bl func_80009DC8
/* 800099D4 00005634 7F E3 FB 78 */ mr r3, r31
/* 800099D8 00005638 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 800099DC 0000563C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 800099E0 00005640 7C 08 03 A6 */ mtlr r0
/* 800099E4 00005644 38 21 00 10 */ addi r1, r1, 0x10
/* 800099E8 00005648 4E 80 00 20 */ blr
.global func_800099EC
func_800099EC:
/* 800099EC 0000564C 94 21 FF B0 */ stwu r1, -0x50(r1)
/* 800099F0 00005650 7C 08 02 A6 */ mflr r0
/* 800099F4 00005654 90 01 00 54 */ stw r0, 0x54(r1)
/* 800099F8 00005658 80 6D A4 C8 */ lwz r3, lbl_8063F788-_SDA_BASE_(r13)
/* 800099FC 0000565C 80 03 00 70 */ lwz r0, 0x70(r3)
/* 80009A00 00005660 2C 00 00 01 */ cmpwi r0, 1
/* 80009A04 00005664 40 82 00 0C */ bne lbl_80009A10
/* 80009A08 00005668 C0 02 80 2C */ lfs f0, lbl_8064062C-_SDA2_BASE_(r2)
/* 80009A0C 0000566C D0 0D 80 1C */ stfs f0, lbl_8063D2DC-_SDA_BASE_(r13)
lbl_80009A10:
/* 80009A10 00005670 2C 04 00 00 */ cmpwi r4, 0
/* 80009A14 00005674 41 82 00 28 */ beq lbl_80009A3C
/* 80009A18 00005678 C0 8D 80 1C */ lfs f4, lbl_8063D2DC-_SDA_BASE_(r13)
/* 80009A1C 0000567C 38 61 00 08 */ addi r3, r1, 8
/* 80009A20 00005680 C0 2D 80 18 */ lfs f1, lbl_8063D2D8-_SDA_BASE_(r13)
/* 80009A24 00005684 FC 60 20 50 */ fneg f3, f4
/* 80009A28 00005688 C0 A2 80 30 */ lfs f5, lbl_80640630-_SDA2_BASE_(r2)
/* 80009A2C 0000568C FC 40 08 50 */ fneg f2, f1
/* 80009A30 00005690 C0 C2 80 34 */ lfs f6, lbl_80640634-_SDA2_BASE_(r2)
/* 80009A34 00005694 48 27 31 F9 */ bl C_MTXOrtho
/* 80009A38 00005698 48 00 00 24 */ b lbl_80009A5C
lbl_80009A3C:
/* 80009A3C 0000569C C0 22 80 38 */ lfs f1, lbl_80640638-_SDA2_BASE_(r2)
/* 80009A40 000056A0 38 61 00 08 */ addi r3, r1, 8
/* 80009A44 000056A4 C0 42 80 3C */ lfs f2, lbl_8064063C-_SDA2_BASE_(r2)
/* 80009A48 000056A8 C0 62 80 40 */ lfs f3, lbl_80640640-_SDA2_BASE_(r2)
/* 80009A4C 000056AC C0 82 80 44 */ lfs f4, lbl_80640644-_SDA2_BASE_(r2)
/* 80009A50 000056B0 C0 A2 80 30 */ lfs f5, lbl_80640630-_SDA2_BASE_(r2)
/* 80009A54 000056B4 C0 C2 80 34 */ lfs f6, lbl_80640634-_SDA2_BASE_(r2)
/* 80009A58 000056B8 48 27 31 D5 */ bl C_MTXOrtho
lbl_80009A5C:
/* 80009A5C 000056BC 38 61 00 08 */ addi r3, r1, 8
/* 80009A60 000056C0 38 80 00 01 */ li r4, 1
/* 80009A64 000056C4 48 27 CF 75 */ bl GXSetProjection
/* 80009A68 000056C8 80 01 00 54 */ lwz r0, 0x54(r1)
/* 80009A6C 000056CC 7C 08 03 A6 */ mtlr r0
/* 80009A70 000056D0 38 21 00 50 */ addi r1, r1, 0x50
/* 80009A74 000056D4 4E 80 00 20 */ blr
.global func_80009A78
func_80009A78:
/* 80009A78 000056D8 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80009A7C 000056DC 7C 08 02 A6 */ mflr r0
/* 80009A80 000056E0 90 01 00 14 */ stw r0, 0x14(r1)
/* 80009A84 000056E4 48 27 62 01 */ bl GXClearVtxDesc
/* 80009A88 000056E8 38 60 00 04 */ li r3, 4
/* 80009A8C 000056EC 38 80 00 09 */ li r4, 9
/* 80009A90 000056F0 38 A0 00 00 */ li r5, 0
/* 80009A94 000056F4 38 C0 00 04 */ li r6, 4
/* 80009A98 000056F8 38 E0 00 00 */ li r7, 0
/* 80009A9C 000056FC 48 27 62 1D */ bl GXSetVtxAttrFmt
/* 80009AA0 00005700 38 60 00 04 */ li r3, 4
/* 80009AA4 00005704 38 80 00 0B */ li r4, 0xb
/* 80009AA8 00005708 38 A0 00 00 */ li r5, 0
/* 80009AAC 0000570C 38 C0 00 01 */ li r6, 1
/* 80009AB0 00005710 38 E0 00 00 */ li r7, 0
/* 80009AB4 00005714 48 27 62 05 */ bl GXSetVtxAttrFmt
/* 80009AB8 00005718 38 60 00 09 */ li r3, 9
/* 80009ABC 0000571C 38 80 00 01 */ li r4, 1
/* 80009AC0 00005720 48 27 59 35 */ bl GXSetVtxDesc
/* 80009AC4 00005724 38 60 00 0B */ li r3, 0xb
/* 80009AC8 00005728 38 80 00 01 */ li r4, 1
/* 80009ACC 0000572C 48 27 59 29 */ bl GXSetVtxDesc
/* 80009AD0 00005730 38 60 00 01 */ li r3, 1
/* 80009AD4 00005734 48 27 8A 75 */ bl GXSetNumChans
/* 80009AD8 00005738 38 60 00 00 */ li r3, 0
/* 80009ADC 0000573C 48 27 6B 19 */ bl GXSetNumTexGens
/* 80009AE0 00005740 38 60 00 01 */ li r3, 1
/* 80009AE4 00005744 48 27 A6 B9 */ bl GXSetNumTevStages
/* 80009AE8 00005748 38 60 00 00 */ li r3, 0
/* 80009AEC 0000574C 38 80 00 FF */ li r4, 0xff
/* 80009AF0 00005750 38 A0 00 FF */ li r5, 0xff
/* 80009AF4 00005754 38 C0 00 04 */ li r6, 4
/* 80009AF8 00005758 48 27 A5 49 */ bl GXSetTevOrder
/* 80009AFC 0000575C 38 60 00 00 */ li r3, 0
/* 80009B00 00005760 38 80 00 04 */ li r4, 4
/* 80009B04 00005764 48 27 A0 3D */ bl GXSetTevOp
/* 80009B08 00005768 38 60 00 00 */ li r3, 0
/* 80009B0C 0000576C 38 80 00 00 */ li r4, 0
/* 80009B10 00005770 38 A0 00 00 */ li r5, 0
/* 80009B14 00005774 38 C0 00 00 */ li r6, 0
/* 80009B18 00005778 48 27 AB 85 */ bl GXSetBlendMode
/* 80009B1C 0000577C 38 60 00 01 */ li r3, 1
/* 80009B20 00005780 38 80 00 03 */ li r4, 3
/* 80009B24 00005784 38 A0 00 01 */ li r5, 1
/* 80009B28 00005788 48 27 AC 1D */ bl GXSetZMode
/* 80009B2C 0000578C 38 60 00 03 */ li r3, 3
/* 80009B30 00005790 48 27 D0 01 */ bl GXSetCurrentMtx
/* 80009B34 00005794 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80009B38 00005798 7C 08 03 A6 */ mtlr r0
/* 80009B3C 0000579C 38 21 00 10 */ addi r1, r1, 0x10
/* 80009B40 000057A0 4E 80 00 20 */ blr
.global func_80009B44
func_80009B44:
/* 80009B44 000057A4 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80009B48 000057A8 7C 08 02 A6 */ mflr r0
/* 80009B4C 000057AC 90 01 00 44 */ stw r0, 0x44(r1)
/* 80009B50 000057B0 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80009B54 000057B4 7C 9F 23 78 */ mr r31, r4
/* 80009B58 000057B8 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80009B5C 000057BC 7C 7E 1B 78 */ mr r30, r3
/* 80009B60 000057C0 48 27 61 25 */ bl GXClearVtxDesc
/* 80009B64 000057C4 38 60 00 05 */ li r3, 5
/* 80009B68 000057C8 38 80 00 09 */ li r4, 9
/* 80009B6C 000057CC 38 A0 00 00 */ li r5, 0
/* 80009B70 000057D0 38 C0 00 03 */ li r6, 3
/* 80009B74 000057D4 38 E0 00 00 */ li r7, 0
/* 80009B78 000057D8 48 27 61 41 */ bl GXSetVtxAttrFmt
/* 80009B7C 000057DC 38 60 00 05 */ li r3, 5
/* 80009B80 000057E0 38 80 00 0D */ li r4, 0xd
/* 80009B84 000057E4 38 A0 00 01 */ li r5, 1
/* 80009B88 000057E8 38 C0 00 03 */ li r6, 3
/* 80009B8C 000057EC 38 E0 00 00 */ li r7, 0
/* 80009B90 000057F0 48 27 61 29 */ bl GXSetVtxAttrFmt
/* 80009B94 000057F4 38 60 00 09 */ li r3, 9
/* 80009B98 000057F8 38 80 00 01 */ li r4, 1
/* 80009B9C 000057FC 48 27 58 59 */ bl GXSetVtxDesc
/* 80009BA0 00005800 38 60 00 0D */ li r3, 0xd
/* 80009BA4 00005804 38 80 00 01 */ li r4, 1
/* 80009BA8 00005808 48 27 58 4D */ bl GXSetVtxDesc
/* 80009BAC 0000580C 38 60 00 01 */ li r3, 1
/* 80009BB0 00005810 48 27 89 99 */ bl GXSetNumChans
/* 80009BB4 00005814 38 60 00 04 */ li r3, 4
/* 80009BB8 00005818 38 80 00 00 */ li r4, 0
/* 80009BBC 0000581C 38 A0 00 01 */ li r5, 1
/* 80009BC0 00005820 38 C0 00 01 */ li r6, 1
/* 80009BC4 00005824 38 E0 00 00 */ li r7, 0
/* 80009BC8 00005828 39 00 00 00 */ li r8, 0
/* 80009BCC 0000582C 39 20 00 02 */ li r9, 2
/* 80009BD0 00005830 48 27 89 9D */ bl GXSetChanCtrl
/* 80009BD4 00005834 38 60 00 01 */ li r3, 1
/* 80009BD8 00005838 48 27 6A 1D */ bl GXSetNumTexGens
/* 80009BDC 0000583C 38 60 00 00 */ li r3, 0
/* 80009BE0 00005840 38 80 00 01 */ li r4, 1
/* 80009BE4 00005844 38 A0 00 04 */ li r5, 4
/* 80009BE8 00005848 38 C0 00 3C */ li r6, 0x3c
/* 80009BEC 0000584C 38 E0 00 00 */ li r7, 0
/* 80009BF0 00005850 39 00 00 7D */ li r8, 0x7d
/* 80009BF4 00005854 48 27 67 D9 */ bl GXSetTexCoordGen2
/* 80009BF8 00005858 38 60 00 01 */ li r3, 1
/* 80009BFC 0000585C 48 27 A5 A1 */ bl GXSetNumTevStages
/* 80009C00 00005860 88 C2 80 48 */ lbz r6, lbl_80640648-_SDA2_BASE_(r2)
/* 80009C04 00005864 38 81 00 0C */ addi r4, r1, 0xc
/* 80009C08 00005868 88 A2 80 49 */ lbz r5, lbl_80640649-_SDA2_BASE_(r2)
/* 80009C0C 0000586C 38 60 00 01 */ li r3, 1
/* 80009C10 00005870 88 02 80 4A */ lbz r0, lbl_8064064A-_SDA2_BASE_(r2)
/* 80009C14 00005874 98 C1 00 08 */ stb r6, 8(r1)
/* 80009C18 00005878 98 A1 00 09 */ stb r5, 9(r1)
/* 80009C1C 0000587C 98 01 00 0A */ stb r0, 0xa(r1)
/* 80009C20 00005880 9B E1 00 0B */ stb r31, 0xb(r1)
/* 80009C24 00005884 80 01 00 08 */ lwz r0, 8(r1)
/* 80009C28 00005888 90 01 00 0C */ stw r0, 0xc(r1)
/* 80009C2C 0000588C 48 27 A0 D9 */ bl GXSetTevColor
/* 80009C30 00005890 38 60 00 00 */ li r3, 0
/* 80009C34 00005894 38 80 00 00 */ li r4, 0
/* 80009C38 00005898 38 A0 00 00 */ li r5, 0
/* 80009C3C 0000589C 38 C0 00 FF */ li r6, 0xff
/* 80009C40 000058A0 48 27 A4 01 */ bl GXSetTevOrder
/* 80009C44 000058A4 38 60 00 00 */ li r3, 0
/* 80009C48 000058A8 38 80 00 0F */ li r4, 0xf
/* 80009C4C 000058AC 38 A0 00 0F */ li r5, 0xf
/* 80009C50 000058B0 38 C0 00 0F */ li r6, 0xf
/* 80009C54 000058B4 38 E0 00 08 */ li r7, 8
/* 80009C58 000058B8 48 27 9F 7D */ bl GXSetTevColorIn
/* 80009C5C 000058BC 38 60 00 00 */ li r3, 0
/* 80009C60 000058C0 38 80 00 00 */ li r4, 0
/* 80009C64 000058C4 38 A0 00 00 */ li r5, 0
/* 80009C68 000058C8 38 C0 00 00 */ li r6, 0
/* 80009C6C 000058CC 38 E0 00 01 */ li r7, 1
/* 80009C70 000058D0 39 00 00 00 */ li r8, 0
/* 80009C74 000058D4 48 27 9F E1 */ bl GXSetTevColorOp
/* 80009C78 000058D8 38 60 00 00 */ li r3, 0
/* 80009C7C 000058DC 38 80 00 07 */ li r4, 7
/* 80009C80 000058E0 38 A0 00 01 */ li r5, 1
/* 80009C84 000058E4 38 C0 00 04 */ li r6, 4
/* 80009C88 000058E8 38 E0 00 07 */ li r7, 7
/* 80009C8C 000058EC 48 27 9F 89 */ bl GXSetTevAlphaIn
/* 80009C90 000058F0 38 60 00 00 */ li r3, 0
/* 80009C94 000058F4 38 80 00 00 */ li r4, 0
/* 80009C98 000058F8 38 A0 00 00 */ li r5, 0
/* 80009C9C 000058FC 38 C0 00 00 */ li r6, 0
/* 80009CA0 00005900 38 E0 00 01 */ li r7, 1
/* 80009CA4 00005904 39 00 00 00 */ li r8, 0
/* 80009CA8 00005908 48 27 A0 05 */ bl GXSetTevAlphaOp
/* 80009CAC 0000590C 38 60 00 01 */ li r3, 1
/* 80009CB0 00005910 38 80 00 04 */ li r4, 4
/* 80009CB4 00005914 38 A0 00 05 */ li r5, 5
/* 80009CB8 00005918 38 C0 00 00 */ li r6, 0
/* 80009CBC 0000591C 48 27 A9 E1 */ bl GXSetBlendMode
/* 80009CC0 00005920 38 60 00 00 */ li r3, 0
/* 80009CC4 00005924 38 80 00 03 */ li r4, 3
/* 80009CC8 00005928 38 A0 00 00 */ li r5, 0
/* 80009CCC 0000592C 48 27 AA 79 */ bl GXSetZMode
/* 80009CD0 00005930 38 60 00 03 */ li r3, 3
/* 80009CD4 00005934 48 27 CE 5D */ bl GXSetCurrentMtx
/* 80009CD8 00005938 80 7E 00 1C */ lwz r3, 0x1c(r30)
/* 80009CDC 0000593C 38 81 00 10 */ addi r4, r1, 0x10
/* 80009CE0 00005940 38 A0 00 00 */ li r5, 0
/* 80009CE4 00005944 48 29 1D 69 */ bl TPLGetGXTexObjFromPalette
/* 80009CE8 00005948 38 61 00 10 */ addi r3, r1, 0x10
/* 80009CEC 0000594C 38 80 00 00 */ li r4, 0
/* 80009CF0 00005950 48 27 8E D5 */ bl GXLoadTexObj
/* 80009CF4 00005954 38 60 00 80 */ li r3, 0x80
/* 80009CF8 00005958 38 80 00 05 */ li r4, 5
/* 80009CFC 0000595C 38 A0 00 04 */ li r5, 4
/* 80009D00 00005960 48 27 74 49 */ bl GXBegin
/* 80009D04 00005964 3C E0 CC 01 */ lis r7, 0xCC008000@ha
/* 80009D08 00005968 39 00 FF 00 */ li r8, -256
/* 80009D0C 0000596C B1 07 80 00 */ sth r8, 0xCC008000@l(r7)
/* 80009D10 00005970 38 C0 00 84 */ li r6, 0x84
/* 80009D14 00005974 38 A0 00 00 */ li r5, 0
/* 80009D18 00005978 38 80 00 01 */ li r4, 1
/* 80009D1C 0000597C B0 C7 80 00 */ sth r6, -0x8000(r7)
/* 80009D20 00005980 38 60 00 BC */ li r3, 0xbc
/* 80009D24 00005984 38 00 FF 38 */ li r0, -200
/* 80009D28 00005988 B0 A7 80 00 */ sth r5, -0x8000(r7)
/* 80009D2C 0000598C B0 87 80 00 */ sth r4, -0x8000(r7)
/* 80009D30 00005990 B1 07 80 00 */ sth r8, -0x8000(r7)
/* 80009D34 00005994 B0 67 80 00 */ sth r3, -0x8000(r7)
/* 80009D38 00005998 B0 A7 80 00 */ sth r5, -0x8000(r7)
/* 80009D3C 0000599C B0 A7 80 00 */ sth r5, -0x8000(r7)
/* 80009D40 000059A0 B0 07 80 00 */ sth r0, -0x8000(r7)
/* 80009D44 000059A4 B0 67 80 00 */ sth r3, -0x8000(r7)
/* 80009D48 000059A8 B0 87 80 00 */ sth r4, -0x8000(r7)
/* 80009D4C 000059AC B0 A7 80 00 */ sth r5, -0x8000(r7)
/* 80009D50 000059B0 B0 07 80 00 */ sth r0, -0x8000(r7)
/* 80009D54 000059B4 B0 C7 80 00 */ sth r6, -0x8000(r7)
/* 80009D58 000059B8 B0 87 80 00 */ sth r4, -0x8000(r7)
/* 80009D5C 000059BC B0 87 80 00 */ sth r4, -0x8000(r7)
/* 80009D60 000059C0 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80009D64 000059C4 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 80009D68 000059C8 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80009D6C 000059CC 7C 08 03 A6 */ mtlr r0
/* 80009D70 000059D0 38 21 00 40 */ addi r1, r1, 0x40
/* 80009D74 000059D4 4E 80 00 20 */ blr
lbl_80009D78:
/* 80009D78 000059D8 88 83 00 03 */ lbz r4, 3(r3)
/* 80009D7C 000059DC 2C 04 00 00 */ cmpwi r4, 0
/* 80009D80 000059E0 41 82 00 0C */ beq lbl_80009D8C
/* 80009D84 000059E4 38 00 00 00 */ li r0, 0
/* 80009D88 000059E8 98 03 00 03 */ stb r0, 3(r3)
lbl_80009D8C:
/* 80009D8C 000059EC 7C 83 23 78 */ mr r3, r4
/* 80009D90 000059F0 4E 80 00 20 */ blr
lbl_80009D94:
/* 80009D94 000059F4 88 83 00 03 */ lbz r4, 3(r3)
/* 80009D98 000059F8 2C 04 00 00 */ cmpwi r4, 0
/* 80009D9C 000059FC 40 82 00 0C */ bne lbl_80009DA8
/* 80009DA0 00005A00 38 00 00 01 */ li r0, 1
/* 80009DA4 00005A04 98 03 00 03 */ stb r0, 3(r3)
lbl_80009DA8:
/* 80009DA8 00005A08 7C 83 23 78 */ mr r3, r4
/* 80009DAC 00005A0C 4E 80 00 20 */ blr
lbl_80009DB0:
/* 80009DB0 00005A10 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 80009DB4 00005A14 2C 03 00 00 */ cmpwi r3, 0
/* 80009DB8 00005A18 41 82 00 08 */ beq lbl_80009DC0
/* 80009DBC 00005A1C 98 83 00 0D */ stb r4, 0xd(r3)
lbl_80009DC0:
/* 80009DC0 00005A20 38 60 00 00 */ li r3, 0
/* 80009DC4 00005A24 4E 80 00 20 */ blr
.global func_80009DC8
func_80009DC8:
/* 80009DC8 00005A28 C0 02 80 30 */ lfs f0, lbl_80640630-_SDA2_BASE_(r2)
/* 80009DCC 00005A2C 38 00 00 00 */ li r0, 0
/* 80009DD0 00005A30 90 03 00 6C */ stw r0, 0x6c(r3)
/* 80009DD4 00005A34 D0 03 00 64 */ stfs f0, 0x64(r3)
/* 80009DD8 00005A38 D0 03 00 68 */ stfs f0, 0x68(r3)
/* 80009DDC 00005A3C D0 03 00 74 */ stfs f0, 0x74(r3)
/* 80009DE0 00005A40 D0 03 00 78 */ stfs f0, 0x78(r3)
/* 80009DE4 00005A44 90 03 00 7C */ stw r0, 0x7c(r3)
/* 80009DE8 00005A48 D0 03 00 84 */ stfs f0, 0x84(r3)
/* 80009DEC 00005A4C D0 03 00 88 */ stfs f0, 0x88(r3)
/* 80009DF0 00005A50 90 03 00 8C */ stw r0, 0x8c(r3)
/* 80009DF4 00005A54 D0 03 00 94 */ stfs f0, 0x94(r3)
/* 80009DF8 00005A58 D0 03 00 98 */ stfs f0, 0x98(r3)
/* 80009DFC 00005A5C 90 03 00 9C */ stw r0, 0x9c(r3)
/* 80009E00 00005A60 4E 80 00 20 */ blr
.global func_80009E04
func_80009E04:
/* 80009E04 00005A64 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80009E08 00005A68 7C 08 02 A6 */ mflr r0
/* 80009E0C 00005A6C 3C A0 80 40 */ lis r5, lbl_803FB718@ha
/* 80009E10 00005A70 90 01 00 44 */ stw r0, 0x44(r1)
/* 80009E14 00005A74 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80009E18 00005A78 93 C1 00 38 */ stw r30, 0x38(r1)
/* 80009E1C 00005A7C 3F C0 80 40 */ lis r30, lbl_80405DA0@ha
/* 80009E20 00005A80 3B DE 5D A0 */ addi r30, r30, lbl_80405DA0@l
/* 80009E24 00005A84 93 A1 00 34 */ stw r29, 0x34(r1)
/* 80009E28 00005A88 7C 9D 23 78 */ mr r29, r4
/* 80009E2C 00005A8C 38 85 B7 18 */ addi r4, r5, lbl_803FB718@l
/* 80009E30 00005A90 93 81 00 30 */ stw r28, 0x30(r1)
/* 80009E34 00005A94 7C 7C 1B 78 */ mr r28, r3
/* 80009E38 00005A98 38 61 00 08 */ addi r3, r1, 8
/* 80009E3C 00005A9C 48 1C 44 95 */ bl strcpy
/* 80009E40 00005AA0 48 2E 26 09 */ bl SCGetLanguage
/* 80009E44 00005AA4 54 60 06 3E */ clrlwi r0, r3, 0x18
/* 80009E48 00005AA8 28 00 00 06 */ cmplwi r0, 6
/* 80009E4C 00005AAC 90 1D 00 1C */ stw r0, 0x1c(r29)
/* 80009E50 00005AB0 41 81 00 8C */ bgt lbl_80009EDC
/* 80009E54 00005AB4 3C 60 80 40 */ lis r3, lbl_80405E64@ha
/* 80009E58 00005AB8 54 00 10 3A */ slwi r0, r0, 2
/* 80009E5C 00005ABC 38 63 5E 64 */ addi r3, r3, lbl_80405E64@l
/* 80009E60 00005AC0 7C 63 00 2E */ lwzx r3, r3, r0
/* 80009E64 00005AC4 7C 69 03 A6 */ mtctr r3
/* 80009E68 00005AC8 4E 80 04 20 */ bctr
.global lbl_80009E6C
lbl_80009E6C:
/* 80009E6C 00005ACC 38 61 00 08 */ addi r3, r1, 8
/* 80009E70 00005AD0 38 9E 00 00 */ addi r4, r30, 0
/* 80009E74 00005AD4 48 1C 45 61 */ bl strcat
/* 80009E78 00005AD8 48 00 00 78 */ b lbl_80009EF0
.global lbl_80009E7C
lbl_80009E7C:
/* 80009E7C 00005ADC 38 61 00 08 */ addi r3, r1, 8
/* 80009E80 00005AE0 38 9E 00 10 */ addi r4, r30, 0x10
/* 80009E84 00005AE4 48 1C 45 51 */ bl strcat
/* 80009E88 00005AE8 48 00 00 68 */ b lbl_80009EF0
.global lbl_80009E8C
lbl_80009E8C:
/* 80009E8C 00005AEC 38 61 00 08 */ addi r3, r1, 8
/* 80009E90 00005AF0 38 9E 00 24 */ addi r4, r30, 0x24
/* 80009E94 00005AF4 48 1C 45 41 */ bl strcat
/* 80009E98 00005AF8 48 00 00 58 */ b lbl_80009EF0
.global lbl_80009E9C
lbl_80009E9C:
/* 80009E9C 00005AFC 38 61 00 08 */ addi r3, r1, 8
/* 80009EA0 00005B00 38 9E 00 38 */ addi r4, r30, 0x38
/* 80009EA4 00005B04 48 1C 45 31 */ bl strcat
/* 80009EA8 00005B08 48 00 00 48 */ b lbl_80009EF0
.global lbl_80009EAC
lbl_80009EAC:
/* 80009EAC 00005B0C 38 61 00 08 */ addi r3, r1, 8
/* 80009EB0 00005B10 38 9E 00 4C */ addi r4, r30, 0x4c
/* 80009EB4 00005B14 48 1C 45 21 */ bl strcat
/* 80009EB8 00005B18 48 00 00 38 */ b lbl_80009EF0
.global lbl_80009EBC
lbl_80009EBC:
/* 80009EBC 00005B1C 38 61 00 08 */ addi r3, r1, 8
/* 80009EC0 00005B20 38 9E 00 60 */ addi r4, r30, 0x60
/* 80009EC4 00005B24 48 1C 45 11 */ bl strcat
/* 80009EC8 00005B28 48 00 00 28 */ b lbl_80009EF0
.global lbl_80009ECC
lbl_80009ECC:
/* 80009ECC 00005B2C 38 61 00 08 */ addi r3, r1, 8
/* 80009ED0 00005B30 38 9E 00 74 */ addi r4, r30, 0x74
/* 80009ED4 00005B34 48 1C 45 01 */ bl strcat
/* 80009ED8 00005B38 48 00 00 18 */ b lbl_80009EF0
lbl_80009EDC:
/* 80009EDC 00005B3C 38 00 00 00 */ li r0, 0
/* 80009EE0 00005B40 38 61 00 08 */ addi r3, r1, 8
/* 80009EE4 00005B44 90 1D 00 1C */ stw r0, 0x1c(r29)
/* 80009EE8 00005B48 38 9E 00 00 */ addi r4, r30, 0
/* 80009EEC 00005B4C 48 1C 44 E9 */ bl strcat
lbl_80009EF0:
/* 80009EF0 00005B50 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80009EF4 00005B54 38 61 00 08 */ addi r3, r1, 8
/* 80009EF8 00005B58 38 A0 00 00 */ li r5, 0
/* 80009EFC 00005B5C 48 1D 2D B1 */ bl func_801DCCAC
/* 80009F00 00005B60 90 7D 00 00 */ stw r3, 0(r29)
/* 80009F04 00005B64 3F E0 80 40 */ lis r31, lbl_803FB718@ha
/* 80009F08 00005B68 38 61 00 08 */ addi r3, r1, 8
/* 80009F0C 00005B6C 38 9F B7 18 */ addi r4, r31, lbl_803FB718@l
/* 80009F10 00005B70 48 1C 43 C1 */ bl strcpy
/* 80009F14 00005B74 38 61 00 08 */ addi r3, r1, 8
/* 80009F18 00005B78 38 9E 00 88 */ addi r4, r30, 0x88
/* 80009F1C 00005B7C 48 1C 44 B9 */ bl strcat
/* 80009F20 00005B80 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80009F24 00005B84 38 61 00 08 */ addi r3, r1, 8
/* 80009F28 00005B88 38 A0 00 00 */ li r5, 0
/* 80009F2C 00005B8C 48 1D 2D 81 */ bl func_801DCCAC
/* 80009F30 00005B90 90 7D 00 04 */ stw r3, 4(r29)
/* 80009F34 00005B94 38 61 00 08 */ addi r3, r1, 8
/* 80009F38 00005B98 38 9F B7 18 */ addi r4, r31, -18664
/* 80009F3C 00005B9C 48 1C 43 95 */ bl strcpy
/* 80009F40 00005BA0 38 61 00 08 */ addi r3, r1, 8
/* 80009F44 00005BA4 38 9E 00 98 */ addi r4, r30, 0x98
/* 80009F48 00005BA8 48 1C 44 8D */ bl strcat
/* 80009F4C 00005BAC 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80009F50 00005BB0 38 61 00 08 */ addi r3, r1, 8
/* 80009F54 00005BB4 38 A0 00 00 */ li r5, 0
/* 80009F58 00005BB8 48 1D 2D 55 */ bl func_801DCCAC
/* 80009F5C 00005BBC 90 7D 00 08 */ stw r3, 8(r29)
/* 80009F60 00005BC0 38 61 00 08 */ addi r3, r1, 8
/* 80009F64 00005BC4 38 9F B7 18 */ addi r4, r31, -18664
/* 80009F68 00005BC8 48 1C 43 69 */ bl strcpy
/* 80009F6C 00005BCC 38 61 00 08 */ addi r3, r1, 8
/* 80009F70 00005BD0 38 9E 00 A4 */ addi r4, r30, 0xa4
/* 80009F74 00005BD4 48 1C 44 61 */ bl strcat
/* 80009F78 00005BD8 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80009F7C 00005BDC 38 61 00 08 */ addi r3, r1, 8
/* 80009F80 00005BE0 38 A0 00 00 */ li r5, 0
/* 80009F84 00005BE4 48 1D 2D 29 */ bl func_801DCCAC
/* 80009F88 00005BE8 C0 02 80 28 */ lfs f0, lbl_80640628-_SDA2_BASE_(r2)
/* 80009F8C 00005BEC 3C A0 80 01 */ lis r5, lbl_80009DB0@ha
/* 80009F90 00005BF0 38 00 00 00 */ li r0, 0
/* 80009F94 00005BF4 C0 22 80 4C */ lfs f1, lbl_8064064C-_SDA2_BASE_(r2)
/* 80009F98 00005BF8 38 A5 9D B0 */ addi r5, r5, lbl_80009DB0@l
/* 80009F9C 00005BFC 90 7D 00 0C */ stw r3, 0xc(r29)
/* 80009FA0 00005C00 38 61 00 08 */ addi r3, r1, 8
/* 80009FA4 00005C04 38 9F B7 18 */ addi r4, r31, -18664
/* 80009FA8 00005C08 90 BD 00 14 */ stw r5, 0x14(r29)
/* 80009FAC 00005C0C 90 1D 00 18 */ stw r0, 0x18(r29)
/* 80009FB0 00005C10 90 1D 00 20 */ stw r0, 0x20(r29)
/* 80009FB4 00005C14 D0 3D 00 34 */ stfs f1, 0x34(r29)
/* 80009FB8 00005C18 D0 1D 00 38 */ stfs f0, 0x38(r29)
/* 80009FBC 00005C1C D0 1D 00 30 */ stfs f0, 0x30(r29)
/* 80009FC0 00005C20 48 1C 43 11 */ bl strcpy
/* 80009FC4 00005C24 38 61 00 08 */ addi r3, r1, 8
/* 80009FC8 00005C28 38 9E 00 B0 */ addi r4, r30, 0xb0
/* 80009FCC 00005C2C 48 1C 44 09 */ bl strcat
/* 80009FD0 00005C30 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13)
/* 80009FD4 00005C34 38 61 00 08 */ addi r3, r1, 8
/* 80009FD8 00005C38 38 A0 00 00 */ li r5, 0
/* 80009FDC 00005C3C 48 1D 2C D1 */ bl func_801DCCAC
/* 80009FE0 00005C40 90 7C 00 1C */ stw r3, 0x1c(r28)
/* 80009FE4 00005C44 48 29 19 35 */ bl TPLBind
/* 80009FE8 00005C48 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80009FEC 00005C4C 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 80009FF0 00005C50 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80009FF4 00005C54 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 80009FF8 00005C58 83 81 00 30 */ lwz r28, 0x30(r1)
/* 80009FFC 00005C5C 7C 08 03 A6 */ mtlr r0
/* 8000A000 00005C60 38 21 00 40 */ addi r1, r1, 0x40
/* 8000A004 00005C64 4E 80 00 20 */ blr
.global func_8000A008
func_8000A008:
/* 8000A008 00005C68 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8000A00C 00005C6C 7C 08 02 A6 */ mflr r0
/* 8000A010 00005C70 3C 80 80 40 */ lis r4, lbl_803FB728@ha
/* 8000A014 00005C74 90 01 00 34 */ stw r0, 0x34(r1)
/* 8000A018 00005C78 38 61 00 08 */ addi r3, r1, 8
/* 8000A01C 00005C7C 38 84 B7 28 */ addi r4, r4, lbl_803FB728@l
/* 8000A020 00005C80 48 1C 42 B1 */ bl strcpy
/* 8000A024 00005C84 3C 80 80 40 */ lis r4, lbl_80405E80@ha
/* 8000A028 00005C88 38 61 00 08 */ addi r3, r1, 8
/* 8000A02C 00005C8C 38 84 5E 80 */ addi r4, r4, lbl_80405E80@l
/* 8000A030 00005C90 48 1C 43 A5 */ bl strcat
/* 8000A034 00005C94 80 6D 96 2C */ lwz r3, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8000A038 00005C98 3C 80 00 08 */ lis r4, 8
/* 8000A03C 00005C9C 48 1D 0C C5 */ bl func_801DAD00
/* 8000A040 00005CA0 7C 64 1B 78 */ mr r4, r3
/* 8000A044 00005CA4 38 61 00 08 */ addi r3, r1, 8
/* 8000A048 00005CA8 3C A0 00 08 */ lis r5, 8
/* 8000A04C 00005CAC 48 39 03 BD */ bl HBMCreateMemorySound
/* 8000A050 00005CB0 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8000A054 00005CB4 7C 08 03 A6 */ mtlr r0
/* 8000A058 00005CB8 38 21 00 30 */ addi r1, r1, 0x30
/* 8000A05C 00005CBC 4E 80 00 20 */ blr
.global func_8000A060
func_8000A060:
/* 8000A060 00005CC0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8000A064 00005CC4 7C 08 02 A6 */ mflr r0
/* 8000A068 00005CC8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8000A06C 00005CCC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 8000A070 00005CD0 7C 7F 1B 78 */ mr r31, r3
/* 8000A074 00005CD4 80 8D A3 D8 */ lwz r4, render_context_ptr-_SDA_BASE_(r13)
/* 8000A078 00005CD8 88 04 00 7A */ lbz r0, 0x7a(r4)
/* 8000A07C 00005CDC 2C 00 00 00 */ cmpwi r0, 0
/* 8000A080 00005CE0 41 82 00 0C */ beq lbl_8000A08C
/* 8000A084 00005CE4 38 00 00 01 */ li r0, 1
/* 8000A088 00005CE8 98 03 00 02 */ stb r0, 2(r3)
lbl_8000A08C:
/* 8000A08C 00005CEC 7F E3 FB 78 */ mr r3, r31
/* 8000A090 00005CF0 38 9F 00 20 */ addi r4, r31, 0x20
/* 8000A094 00005CF4 4B FF FD 71 */ bl func_80009E04
/* 8000A098 00005CF8 80 8D 96 2C */ lwz r4, lbl_8063E8EC-_SDA_BASE_(r13)
/* 8000A09C 00005CFC 38 7F 00 A0 */ addi r3, r31, 0xa0
/* 8000A0A0 00005D00 38 A0 00 20 */ li r5, 0x20
/* 8000A0A4 00005D04 48 28 D6 A1 */ bl MEMInitAllocatorForExpHeap
/* 8000A0A8 00005D08 38 80 00 00 */ li r4, 0
/* 8000A0AC 00005D0C 38 1F 00 A0 */ addi r0, r31, 0xa0
/* 8000A0B0 00005D10 90 9F 00 30 */ stw r4, 0x30(r31)
/* 8000A0B4 00005D14 38 7F 00 20 */ addi r3, r31, 0x20
/* 8000A0B8 00005D18 90 1F 00 5C */ stw r0, 0x5c(r31)
/* 8000A0BC 00005D1C 90 9F 00 4C */ stw r4, 0x4c(r31)
/* 8000A0C0 00005D20 48 38 FF C1 */ bl HBMCreate
/* 8000A0C4 00005D24 7F E3 FB 78 */ mr r3, r31
/* 8000A0C8 00005D28 4B FF FF 41 */ bl func_8000A008
/* 8000A0CC 00005D2C 88 7F 00 02 */ lbz r3, 2(r31)
/* 8000A0D0 00005D30 48 39 03 19 */ bl HBMSetAdjustFlag
/* 8000A0D4 00005D34 38 00 00 01 */ li r0, 1
/* 8000A0D8 00005D38 98 1F 00 00 */ stb r0, 0(r31)
/* 8000A0DC 00005D3C 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 8000A0E0 00005D40 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8000A0E4 00005D44 7C 08 03 A6 */ mtlr r0
/* 8000A0E8 00005D48 38 21 00 10 */ addi r1, r1, 0x10
/* 8000A0EC 00005D4C 4E 80 00 20 */ blr
lbl_8000A0F0:
/* 8000A0F0 00005D50 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 8000A0F4 00005D54 7C 08 02 A6 */ mflr r0
/* 8000A0F8 00005D58 90 01 00 34 */ stw r0, 0x34(r1)
/* 8000A0FC 00005D5C 39 61 00 30 */ addi r11, r1, 0x30
/* 8000A100 00005D60 48 1B D0 1D */ bl _savegpr_24
/* 8000A104 00005D64 88 03 00 00 */ lbz r0, 0(r3)
/* 8000A108 00005D68 7C 7E 1B 78 */ mr r30, r3
/* 8000A10C 00005D6C 2C 00 00 00 */ cmpwi r0, 0
/* 8000A110 00005D70 41 82 04 24 */ beq lbl_8000A534
/* 8000A114 00005D74 80 0D 96 74 */ lwz r0, lbl_8063E934-_SDA_BASE_(r13)
/* 8000A118 00005D78 2C 00 00 00 */ cmpwi r0, 0
/* 8000A11C 00005D7C 40 82 00 0C */ bne lbl_8000A128
/* 8000A120 00005D80 48 26 91 25 */ bl OSGetResetButtonState
/* 8000A124 00005D84 90 6D 96 74 */ stw r3, lbl_8063E934-_SDA_BASE_(r13)
lbl_8000A128:
/* 8000A128 00005D88 48 23 A6 A5 */ bl func_802447CC
/* 8000A12C 00005D8C 7C 7F 1B 78 */ mr r31, r3
/* 8000A130 00005D90 7F DA F3 78 */ mr r26, r30
/* 8000A134 00005D94 7F D9 F3 78 */ mr r25, r30
/* 8000A138 00005D98 3B 7E 00 C0 */ addi r27, r30, 0xc0
/* 8000A13C 00005D9C 3B 00 00 00 */ li r24, 0
/* 8000A140 00005DA0 3B 80 00 00 */ li r28, 0
/* 8000A144 00005DA4 48 00 00 5C */ b lbl_8000A1A0
lbl_8000A148:
/* 8000A148 00005DA8 7F 03 C3 78 */ mr r3, r24
/* 8000A14C 00005DAC 48 23 A6 51 */ bl func_8024479C
/* 8000A150 00005DB0 2C 03 00 00 */ cmpwi r3, 0
/* 8000A154 00005DB4 7C 7D 1B 78 */ mr r29, r3
/* 8000A158 00005DB8 41 82 00 38 */ beq lbl_8000A190
/* 8000A15C 00005DBC 7F 03 C3 78 */ mr r3, r24
/* 8000A160 00005DC0 7F 64 DB 78 */ mr r4, r27
/* 8000A164 00005DC4 48 29 EC 15 */ bl WPADProbe
/* 8000A168 00005DC8 2C 03 00 00 */ cmpwi r3, 0
/* 8000A16C 00005DCC 90 7A 00 B0 */ stw r3, 0xb0(r26)
/* 8000A170 00005DD0 41 82 00 10 */ beq lbl_8000A180
/* 8000A174 00005DD4 38 03 00 03 */ addi r0, r3, 3
/* 8000A178 00005DD8 28 00 00 01 */ cmplwi r0, 1
/* 8000A17C 00005DDC 41 81 00 10 */ bgt lbl_8000A18C
lbl_8000A180:
/* 8000A180 00005DE0 38 1D 00 44 */ addi r0, r29, 0x44
/* 8000A184 00005DE4 90 19 00 60 */ stw r0, 0x60(r25)
/* 8000A188 00005DE8 48 00 00 08 */ b lbl_8000A190
lbl_8000A18C:
/* 8000A18C 00005DEC 93 99 00 60 */ stw r28, 0x60(r25)
lbl_8000A190:
/* 8000A190 00005DF0 3B 7B 00 04 */ addi r27, r27, 4
/* 8000A194 00005DF4 3B 5A 00 04 */ addi r26, r26, 4
/* 8000A198 00005DF8 3B 39 00 10 */ addi r25, r25, 0x10
/* 8000A19C 00005DFC 3B 18 00 01 */ addi r24, r24, 1
lbl_8000A1A0:
/* 8000A1A0 00005E00 7C 18 F8 00 */ cmpw r24, r31
/* 8000A1A4 00005E04 41 80 FF A4 */ blt lbl_8000A148
/* 8000A1A8 00005E08 88 1E 00 07 */ lbz r0, 7(r30)
/* 8000A1AC 00005E0C 2C 00 00 00 */ cmpwi r0, 0
/* 8000A1B0 00005E10 41 82 00 10 */ beq lbl_8000A1C0
/* 8000A1B4 00005E14 38 00 00 00 */ li r0, 0
/* 8000A1B8 00005E18 98 1E 00 07 */ stb r0, 7(r30)
/* 8000A1BC 00005E1C 48 39 02 39 */ bl HBMStartBlackOut
lbl_8000A1C0:
/* 8000A1C0 00005E20 88 1E 00 01 */ lbz r0, 1(r30)
/* 8000A1C4 00005E24 2C 00 00 00 */ cmpwi r0, 0
/* 8000A1C8 00005E28 41 82 01 F8 */ beq lbl_8000A3C0
/* 8000A1CC 00005E2C 7F DD F3 78 */ mr r29, r30
/* 8000A1D0 00005E30 3B 20 00 00 */ li r25, 0
/* 8000A1D4 00005E34 3B 80 00 00 */ li r28, 0
/* 8000A1D8 00005E38 48 00 00 50 */ b lbl_8000A228
lbl_8000A1DC:
/* 8000A1DC 00005E3C 7F 23 CB 78 */ mr r3, r25
/* 8000A1E0 00005E40 48 23 A5 BD */ bl func_8024479C
/* 8000A1E4 00005E44 2C 03 00 00 */ cmpwi r3, 0
/* 8000A1E8 00005E48 41 82 00 38 */ beq lbl_8000A220
/* 8000A1EC 00005E4C 80 03 00 3C */ lwz r0, 0x3c(r3)
/* 8000A1F0 00005E50 2C 00 00 00 */ cmpwi r0, 0
/* 8000A1F4 00005E54 40 82 00 2C */ bne lbl_8000A220
/* 8000A1F8 00005E58 80 03 00 40 */ lwz r0, 0x40(r3)
/* 8000A1FC 00005E5C 2C 00 00 00 */ cmpwi r0, 0
/* 8000A200 00005E60 40 81 00 20 */ ble lbl_8000A220
/* 8000A204 00005E64 80 1D 00 60 */ lwz r0, 0x60(r29)
/* 8000A208 00005E68 2C 00 00 00 */ cmpwi r0, 0
/* 8000A20C 00005E6C 41 82 00 14 */ beq lbl_8000A220
/* 8000A210 00005E70 80 1D 00 6C */ lwz r0, 0x6c(r29)
/* 8000A214 00005E74 28 00 00 02 */ cmplwi r0, 2
/* 8000A218 00005E78 40 82 00 08 */ bne lbl_8000A220
/* 8000A21C 00005E7C 93 9D 00 6C */ stw r28, 0x6c(r29)
lbl_8000A220:
/* 8000A220 00005E80 3B BD 00 10 */ addi r29, r29, 0x10
/* 8000A224 00005E84 3B 39 00 01 */ addi r25, r25, 1
lbl_8000A228:
/* 8000A228 00005E88 7C 19 F8 00 */ cmpw r25, r31
/* 8000A22C 00005E8C 41 80 FF B0 */ blt lbl_8000A1DC
/* 8000A230 00005E90 38 7E 00 60 */ addi r3, r30, 0x60
/* 8000A234 00005E94 48 39 00 25 */ bl HBMCalc
/* 8000A238 00005E98 2C 03 00 00 */ cmpwi r3, 0
/* 8000A23C 00005E9C 41 80 01 7C */ blt lbl_8000A3B8
/* 8000A240 00005EA0 48 39 01 89 */ bl HBMGetSelectBtnNum
/* 8000A244 00005EA4 7C 78 1B 78 */ mr r24, r3
/* 8000A248 00005EA8 48 39 01 B5 */ bl HBMIsReassignedControllers
/* 8000A24C 00005EAC 80 1E 00 D0 */ lwz r0, 0xd0(r30)
/* 8000A250 00005EB0 2C 00 00 00 */ cmpwi r0, 0
/* 8000A254 00005EB4 41 82 00 2C */ beq lbl_8000A280
/* 8000A258 00005EB8 48 39 01 A5 */ bl HBMIsReassignedControllers
/* 8000A25C 00005EBC 7C 03 00 D0 */ neg r0, r3
/* 8000A260 00005EC0 7F 04 C3 78 */ mr r4, r24
/* 8000A264 00005EC4 7C 00 1B 78 */ or r0, r0, r3
/* 8000A268 00005EC8 80 7E 00 D0 */ lwz r3, 0xd0(r30)
/* 8000A26C 00005ECC 54 05 0F FE */ srwi r5, r0, 0x1f
/* 8000A270 00005ED0 81 83 00 00 */ lwz r12, 0(r3)
/* 8000A274 00005ED4 81 8C 00 0C */ lwz r12, 0xc(r12)
/* 8000A278 00005ED8 7D 89 03 A6 */ mtctr r12
/* 8000A27C 00005EDC 4E 80 04 21 */ bctrl
lbl_8000A280:
/* 8000A280 00005EE0 2C 18 00 03 */ cmpwi r24, 3
/* 8000A284 00005EE4 40 80 00 88 */ bge lbl_8000A30C
/* 8000A288 00005EE8 2C 18 00 01 */ cmpwi r24, 1
/* 8000A28C 00005EEC 40 80 00 08 */ bge lbl_8000A294
/* 8000A290 00005EF0 48 00 00 7C */ b lbl_8000A30C
lbl_8000A294:
/* 8000A294 00005EF4 48 39 02 59 */ bl HBMDeleteSound
/* 8000A298 00005EF8 88 1E 00 06 */ lbz r0, 6(r30)
/* 8000A29C 00005EFC 2C 00 00 00 */ cmpwi r0, 0
/* 8000A2A0 00005F00 41 82 00 14 */ beq lbl_8000A2B4
/* 8000A2A4 00005F04 38 00 00 00 */ li r0, 0
/* 8000A2A8 00005F08 98 1E 00 01 */ stb r0, 1(r30)
/* 8000A2AC 00005F0C 4B FF D0 8D */ bl func_80007338
/* 8000A2B0 00005F10 48 00 00 EC */ b lbl_8000A39C
lbl_8000A2B4:
/* 8000A2B4 00005F14 48 38 FE F5 */ bl HBMDelete
/* 8000A2B8 00005F18 48 23 A6 05 */ bl func_802448BC
/* 8000A2BC 00005F1C 48 1D 2B 7D */ bl func_801DCE38
/* 8000A2C0 00005F20 38 60 00 00 */ li r3, 0
/* 8000A2C4 00005F24 38 80 00 00 */ li r4, 0
/* 8000A2C8 00005F28 38 A0 00 00 */ li r5, 0
/* 8000A2CC 00005F2C 38 C0 00 00 */ li r6, 0
/* 8000A2D0 00005F30 48 26 83 79 */ bl OSSetIdleFunction
/* 8000A2D4 00005F34 48 35 E1 F1 */ bl GetInstance__Q44nw4r3snd6detail9AxManagerFv
/* 8000A2D8 00005F38 48 35 F1 6D */ bl PrepareReset__Q44nw4r3snd6detail9AxManagerFv
/* 8000A2DC 00005F3C 48 37 20 B9 */ bl WaitForResetReady__Q34nw4r3snd11SoundSystemFv
/* 8000A2E0 00005F40 38 60 00 00 */ li r3, 0
/* 8000A2E4 00005F44 48 28 48 21 */ bl AIRegisterDMACallback
/* 8000A2E8 00005F48 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8000A2EC 00005F4C 48 22 6D D5 */ bl func_802310C0
/* 8000A2F0 00005F50 2C 18 00 01 */ cmpwi r24, 1
/* 8000A2F4 00005F54 40 82 00 0C */ bne lbl_8000A300
/* 8000A2F8 00005F58 48 26 5F 59 */ bl OSReturnToMenu
/* 8000A2FC 00005F5C 48 00 00 A0 */ b lbl_8000A39C
lbl_8000A300:
/* 8000A300 00005F60 38 60 00 00 */ li r3, 0
/* 8000A304 00005F64 48 26 5E C1 */ bl OSRestart
/* 8000A308 00005F68 48 00 00 94 */ b lbl_8000A39C
lbl_8000A30C:
/* 8000A30C 00005F6C 3B 20 00 00 */ li r25, 0
/* 8000A310 00005F70 48 00 00 1C */ b lbl_8000A32C
lbl_8000A314:
/* 8000A314 00005F74 7F 23 CB 78 */ mr r3, r25
/* 8000A318 00005F78 48 23 A4 85 */ bl func_8024479C
/* 8000A31C 00005F7C 2C 03 00 00 */ cmpwi r3, 0
/* 8000A320 00005F80 41 82 00 08 */ beq lbl_8000A328
/* 8000A324 00005F84 48 23 9A 95 */ bl func_80243DB8
lbl_8000A328:
/* 8000A328 00005F88 3B 39 00 01 */ addi r25, r25, 1
lbl_8000A32C:
/* 8000A32C 00005F8C 7C 19 F8 00 */ cmpw r25, r31
/* 8000A330 00005F90 41 80 FF E4 */ blt lbl_8000A314
/* 8000A334 00005F94 4B FF CD 3D */ bl func_80007070
/* 8000A338 00005F98 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8000A33C 00005F9C 38 00 00 00 */ li r0, 0
/* 8000A340 00005FA0 98 03 00 82 */ stb r0, 0x82(r3)
/* 8000A344 00005FA4 48 00 15 81 */ bl func_8000B8C4
/* 8000A348 00005FA8 C0 42 80 54 */ lfs f2, lbl_80640654-_SDA2_BASE_(r2)
/* 8000A34C 00005FAC C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 8000A350 00005FB0 C0 02 80 50 */ lfs f0, lbl_80640650-_SDA2_BASE_(r2)
/* 8000A354 00005FB4 EC 22 00 72 */ fmuls f1, f2, f1
/* 8000A358 00005FB8 EC 00 08 2A */ fadds f0, f0, f1
/* 8000A35C 00005FBC FC 00 00 1E */ fctiwz f0, f0
/* 8000A360 00005FC0 D8 01 00 08 */ stfd f0, 8(r1)
/* 8000A364 00005FC4 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8000A368 00005FC8 48 00 11 D1 */ bl func_8000B538
/* 8000A36C 00005FCC C0 3E 00 18 */ lfs f1, 0x18(r30)
/* 8000A370 00005FD0 48 00 13 D9 */ bl func_8000B748
/* 8000A374 00005FD4 48 24 F5 C1 */ bl func_80259934
/* 8000A378 00005FD8 48 1D 2A 4D */ bl func_801DCDC4
/* 8000A37C 00005FDC 2C 03 00 00 */ cmpwi r3, 0
/* 8000A380 00005FE0 41 82 00 08 */ beq lbl_8000A388
/* 8000A384 00005FE4 4B FF CD 0D */ bl func_80007090
lbl_8000A388:
/* 8000A388 00005FE8 3C 60 80 00 */ lis r3, func_80007090@ha
/* 8000A38C 00005FEC 3C 80 80 00 */ lis r4, lbl_80007164@ha
/* 8000A390 00005FF0 38 63 70 90 */ addi r3, r3, func_80007090@l
/* 8000A394 00005FF4 38 84 71 64 */ addi r4, r4, lbl_80007164@l
/* 8000A398 00005FF8 48 1D 2A 21 */ bl func_801DCDB8
lbl_8000A39C:
/* 8000A39C 00005FFC 88 1E 00 08 */ lbz r0, 8(r30)
/* 8000A3A0 00006000 2C 00 00 00 */ cmpwi r0, 0
/* 8000A3A4 00006004 40 82 00 0C */ bne lbl_8000A3B0
/* 8000A3A8 00006008 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 8000A3AC 0000600C 48 23 A3 9D */ bl func_80244748
lbl_8000A3B0:
/* 8000A3B0 00006010 38 00 00 00 */ li r0, 0
/* 8000A3B4 00006014 98 1E 00 01 */ stb r0, 1(r30)
lbl_8000A3B8:
/* 8000A3B8 00006018 48 39 01 69 */ bl HBMUpdateSound
/* 8000A3BC 0000601C 48 00 01 78 */ b lbl_8000A534
lbl_8000A3C0:
/* 8000A3C0 00006020 3B 20 00 00 */ li r25, 0
/* 8000A3C4 00006024 3B 80 00 00 */ li r28, 0
/* 8000A3C8 00006028 3B A0 00 01 */ li r29, 1
/* 8000A3CC 0000602C 48 00 01 60 */ b lbl_8000A52C
lbl_8000A3D0:
/* 8000A3D0 00006030 7F 23 CB 78 */ mr r3, r25
/* 8000A3D4 00006034 48 23 A3 C9 */ bl func_8024479C
/* 8000A3D8 00006038 2C 03 00 00 */ cmpwi r3, 0
/* 8000A3DC 0000603C 41 82 01 4C */ beq lbl_8000A528
/* 8000A3E0 00006040 80 03 00 20 */ lwz r0, 0x20(r3)
/* 8000A3E4 00006044 80 63 00 1C */ lwz r3, 0x1c(r3)
/* 8000A3E8 00006048 28 00 80 00 */ cmplwi r0, 0x8000
/* 8000A3EC 0000604C 40 82 01 3C */ bne lbl_8000A528
/* 8000A3F0 00006050 28 03 80 00 */ cmplwi r3, 0x8000
/* 8000A3F4 00006054 40 82 01 34 */ bne lbl_8000A528
/* 8000A3F8 00006058 48 15 87 79 */ bl func_80162B70
/* 8000A3FC 0000605C 2C 03 00 00 */ cmpwi r3, 0
/* 8000A400 00006060 40 82 00 58 */ bne lbl_8000A458
/* 8000A404 00006064 38 60 02 61 */ li r3, 0x261
/* 8000A408 00006068 48 15 86 89 */ bl func_80162A90
/* 8000A40C 0000606C 28 03 00 03 */ cmplwi r3, 3
/* 8000A410 00006070 41 82 00 48 */ beq lbl_8000A458
/* 8000A414 00006074 38 60 02 61 */ li r3, 0x261
/* 8000A418 00006078 48 15 86 79 */ bl func_80162A90
/* 8000A41C 0000607C 28 03 00 04 */ cmplwi r3, 4
/* 8000A420 00006080 41 82 00 38 */ beq lbl_8000A458
/* 8000A424 00006084 88 1E 00 03 */ lbz r0, 3(r30)
/* 8000A428 00006088 2C 00 00 00 */ cmpwi r0, 0
/* 8000A42C 0000608C 40 82 00 2C */ bne lbl_8000A458
/* 8000A430 00006090 88 1E 00 04 */ lbz r0, 4(r30)
/* 8000A434 00006094 2C 00 00 00 */ cmpwi r0, 0
/* 8000A438 00006098 40 82 00 20 */ bne lbl_8000A458
/* 8000A43C 0000609C 80 6D A3 80 */ lwz r3, lbl_8063F640-_SDA_BASE_(r13)
/* 8000A440 000060A0 88 03 00 14 */ lbz r0, 0x14(r3)
/* 8000A444 000060A4 2C 00 00 00 */ cmpwi r0, 0
/* 8000A448 000060A8 40 82 00 10 */ bne lbl_8000A458
/* 8000A44C 000060AC 80 0D 96 44 */ lwz r0, lbl_8063E904-_SDA_BASE_(r13)
/* 8000A450 000060B0 2C 00 00 00 */ cmpwi r0, 0
/* 8000A454 000060B4 41 82 00 24 */ beq lbl_8000A478
lbl_8000A458:
/* 8000A458 000060B8 88 1E 00 0C */ lbz r0, 0xc(r30)
/* 8000A45C 000060BC 2C 00 00 00 */ cmpwi r0, 0
/* 8000A460 000060C0 40 82 00 C8 */ bne lbl_8000A528
/* 8000A464 000060C4 9B 9E 00 0E */ stb r28, 0xe(r30)
/* 8000A468 000060C8 48 26 83 69 */ bl OSGetTick
/* 8000A46C 000060CC 90 7E 00 10 */ stw r3, 0x10(r30)
/* 8000A470 000060D0 9B BE 00 0C */ stb r29, 0xc(r30)
/* 8000A474 000060D4 48 00 00 B4 */ b lbl_8000A528
lbl_8000A478:
/* 8000A478 000060D8 57 20 20 36 */ slwi r0, r25, 4
/* 8000A47C 000060DC 7C 9E 02 14 */ add r4, r30, r0
/* 8000A480 000060E0 80 64 00 60 */ lwz r3, 0x60(r4)
/* 8000A484 000060E4 88 03 00 5C */ lbz r0, 0x5c(r3)
/* 8000A488 000060E8 90 04 00 6C */ stw r0, 0x6c(r4)
/* 8000A48C 000060EC 80 7E 00 D0 */ lwz r3, 0xd0(r30)
/* 8000A490 000060F0 2C 03 00 00 */ cmpwi r3, 0
/* 8000A494 000060F4 41 82 00 18 */ beq lbl_8000A4AC
/* 8000A498 000060F8 81 83 00 00 */ lwz r12, 0(r3)
/* 8000A49C 000060FC 7F 24 CB 78 */ mr r4, r25
/* 8000A4A0 00006100 81 8C 00 08 */ lwz r12, 8(r12)
/* 8000A4A4 00006104 7D 89 03 A6 */ mtctr r12
/* 8000A4A8 00006108 4E 80 04 21 */ bctrl
lbl_8000A4AC:
/* 8000A4AC 0000610C 48 00 13 9D */ bl func_8000B848
/* 8000A4B0 00006110 D0 3E 00 18 */ stfs f1, 0x18(r30)
/* 8000A4B4 00006114 C0 22 80 30 */ lfs f1, lbl_80640630-_SDA2_BASE_(r2)
/* 8000A4B8 00006118 48 00 12 91 */ bl func_8000B748
/* 8000A4BC 0000611C C0 42 80 54 */ lfs f2, lbl_80640654-_SDA2_BASE_(r2)
/* 8000A4C0 00006120 C0 2D 86 C8 */ lfs f1, lbl_8063D988-_SDA_BASE_(r13)
/* 8000A4C4 00006124 C0 02 80 50 */ lfs f0, lbl_80640650-_SDA2_BASE_(r2)
/* 8000A4C8 00006128 EC 22 00 72 */ fmuls f1, f2, f1
/* 8000A4CC 0000612C EC 00 08 2A */ fadds f0, f0, f1
/* 8000A4D0 00006130 FC 00 00 1E */ fctiwz f0, f0
/* 8000A4D4 00006134 D8 01 00 08 */ stfd f0, 8(r1)
/* 8000A4D8 00006138 80 61 00 0C */ lwz r3, 0xc(r1)
/* 8000A4DC 0000613C 48 00 10 25 */ bl func_8000B500
/* 8000A4E0 00006140 48 00 13 81 */ bl func_8000B860
/* 8000A4E4 00006144 48 24 F4 4D */ bl func_80259930
/* 8000A4E8 00006148 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8000A4EC 0000614C 3B E0 00 01 */ li r31, 1
/* 8000A4F0 00006150 9B E3 00 82 */ stb r31, 0x82(r3)
/* 8000A4F4 00006154 4B FF CB 69 */ bl func_8000705C
/* 8000A4F8 00006158 38 60 00 00 */ li r3, 0
/* 8000A4FC 0000615C 48 23 A2 A1 */ bl func_8024479C
/* 8000A500 00006160 88 03 00 00 */ lbz r0, 0(r3)
/* 8000A504 00006164 98 1E 00 08 */ stb r0, 8(r30)
/* 8000A508 00006168 80 6D A4 F0 */ lwz r3, lbl_8063F7B0-_SDA_BASE_(r13)
/* 8000A50C 0000616C 48 23 A1 F1 */ bl func_802446FC
/* 8000A510 00006170 48 38 FD 1D */ bl HBMInit
/* 8000A514 00006174 9B FE 00 01 */ stb r31, 1(r30)
/* 8000A518 00006178 38 60 00 00 */ li r3, 0
/* 8000A51C 0000617C 38 80 00 00 */ li r4, 0
/* 8000A520 00006180 48 1D 28 99 */ bl func_801DCDB8
/* 8000A524 00006184 48 00 00 10 */ b lbl_8000A534
lbl_8000A528:
/* 8000A528 00006188 3B 39 00 01 */ addi r25, r25, 1
lbl_8000A52C:
/* 8000A52C 0000618C 7C 19 F8 00 */ cmpw r25, r31
/* 8000A530 00006190 41 80 FE A0 */ blt lbl_8000A3D0
lbl_8000A534:
/* 8000A534 00006194 39 61 00 30 */ addi r11, r1, 0x30
/* 8000A538 00006198 48 1B CC 31 */ bl _restgpr_24
/* 8000A53C 0000619C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 8000A540 000061A0 7C 08 03 A6 */ mtlr r0
/* 8000A544 000061A4 38 21 00 30 */ addi r1, r1, 0x30
/* 8000A548 000061A8 4E 80 00 20 */ blr
lbl_8000A54C:
/* 8000A54C 000061AC 94 21 FF 80 */ stwu r1, -0x80(r1)
/* 8000A550 000061B0 7C 08 02 A6 */ mflr r0
/* 8000A554 000061B4 90 01 00 84 */ stw r0, 0x84(r1)
/* 8000A558 000061B8 93 E1 00 7C */ stw r31, 0x7c(r1)
/* 8000A55C 000061BC 7C 7F 1B 78 */ mr r31, r3
/* 8000A560 000061C0 88 03 00 00 */ lbz r0, 0(r3)
/* 8000A564 000061C4 2C 00 00 00 */ cmpwi r0, 0
/* 8000A568 000061C8 41 82 01 B0 */ beq lbl_8000A718
/* 8000A56C 000061CC 88 03 00 01 */ lbz r0, 1(r3)
/* 8000A570 000061D0 2C 00 00 00 */ cmpwi r0, 0
/* 8000A574 000061D4 41 82 00 40 */ beq lbl_8000A5B4
/* 8000A578 000061D8 88 83 00 02 */ lbz r4, 2(r3)
/* 8000A57C 000061DC 4B FF F4 71 */ bl func_800099EC
/* 8000A580 000061E0 38 60 00 00 */ li r3, 0
/* 8000A584 000061E4 48 27 6E 8D */ bl GXSetCullMode
/* 8000A588 000061E8 38 61 00 38 */ addi r3, r1, 0x38
/* 8000A58C 000061EC 48 27 19 A1 */ bl PSMTXIdentity
/* 8000A590 000061F0 38 61 00 38 */ addi r3, r1, 0x38
/* 8000A594 000061F4 38 80 00 03 */ li r4, 3
/* 8000A598 000061F8 48 27 C4 F1 */ bl GXLoadPosMtxImm
/* 8000A59C 000061FC 7F E3 FB 78 */ mr r3, r31
/* 8000A5A0 00006200 4B FF F4 D9 */ bl func_80009A78
/* 8000A5A4 00006204 48 38 FC F9 */ bl HBMDraw
/* 8000A5A8 00006208 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8000A5AC 0000620C 48 23 03 B1 */ bl func_8023A95C
/* 8000A5B0 00006210 48 00 01 68 */ b lbl_8000A718
lbl_8000A5B4:
/* 8000A5B4 00006214 88 03 00 0C */ lbz r0, 0xc(r3)
/* 8000A5B8 00006218 2C 00 00 00 */ cmpwi r0, 0
/* 8000A5BC 0000621C 41 82 01 5C */ beq lbl_8000A718
/* 8000A5C0 00006220 88 83 00 02 */ lbz r4, 2(r3)
/* 8000A5C4 00006224 4B FF F4 29 */ bl func_800099EC
/* 8000A5C8 00006228 38 60 00 00 */ li r3, 0
/* 8000A5CC 0000622C 48 27 6E 45 */ bl GXSetCullMode
/* 8000A5D0 00006230 38 61 00 08 */ addi r3, r1, 8
/* 8000A5D4 00006234 48 27 19 59 */ bl PSMTXIdentity
/* 8000A5D8 00006238 38 61 00 08 */ addi r3, r1, 8
/* 8000A5DC 0000623C 38 80 00 03 */ li r4, 3
/* 8000A5E0 00006240 48 27 C4 A9 */ bl GXLoadPosMtxImm
/* 8000A5E4 00006244 7F E3 FB 78 */ mr r3, r31
/* 8000A5E8 00006248 4B FF F4 91 */ bl func_80009A78
/* 8000A5EC 0000624C 48 26 81 E5 */ bl OSGetTick
/* 8000A5F0 00006250 3C 80 80 00 */ lis r4, 0x800000F8@ha
/* 8000A5F4 00006254 3C A0 10 62 */ lis r5, 0x10624DD3@ha
/* 8000A5F8 00006258 80 04 00 F8 */ lwz r0, 0x800000F8@l(r4)
/* 8000A5FC 0000625C 38 C5 4D D3 */ addi r6, r5, 0x10624DD3@l
/* 8000A600 00006260 3C 80 43 30 */ lis r4, 0x4330
/* 8000A604 00006264 80 FF 00 10 */ lwz r7, 0x10(r31)
/* 8000A608 00006268 54 05 F0 BE */ srwi r5, r0, 2
/* 8000A60C 0000626C 88 1F 00 0E */ lbz r0, 0xe(r31)
/* 8000A610 00006270 7C A6 28 16 */ mulhwu r5, r6, r5
/* 8000A614 00006274 7C C7 18 50 */ subf r6, r7, r3
/* 8000A618 00006278 7C 00 07 74 */ extsb r0, r0
/* 8000A61C 0000627C 90 81 00 68 */ stw r4, 0x68(r1)
/* 8000A620 00006280 C8 22 80 68 */ lfd f1, lbl_80640668-_SDA2_BASE_(r2)
/* 8000A624 00006284 2C 00 00 01 */ cmpwi r0, 1
/* 8000A628 00006288 54 A3 D1 BE */ srwi r3, r5, 6
/* 8000A62C 0000628C 7C 66 1B 96 */ divwu r3, r6, r3
/* 8000A630 00006290 90 61 00 6C */ stw r3, 0x6c(r1)
/* 8000A634 00006294 C8 01 00 68 */ lfd f0, 0x68(r1)
/* 8000A638 00006298 EC 60 08 28 */ fsubs f3, f0, f1
/* 8000A63C 0000629C 41 82 00 68 */ beq lbl_8000A6A4
/* 8000A640 000062A0 40 80 00 10 */ bge lbl_8000A650
/* 8000A644 000062A4 2C 00 00 00 */ cmpwi r0, 0
/* 8000A648 000062A8 40 80 00 14 */ bge lbl_8000A65C
/* 8000A64C 000062AC 48 00 00 B8 */ b lbl_8000A704
lbl_8000A650:
/* 8000A650 000062B0 2C 00 00 03 */ cmpwi r0, 3
/* 8000A654 000062B4 40 80 00 B0 */ bge lbl_8000A704
/* 8000A658 000062B8 48 00 00 70 */ b lbl_8000A6C8
lbl_8000A65C:
/* 8000A65C 000062BC C0 42 80 5C */ lfs f2, lbl_8064065C-_SDA2_BASE_(r2)
/* 8000A660 000062C0 C0 02 80 58 */ lfs f0, lbl_80640658-_SDA2_BASE_(r2)
/* 8000A664 000062C4 EC 23 10 24 */ fdivs f1, f3, f2
/* 8000A668 000062C8 EC 00 00 72 */ fmuls f0, f0, f1
/* 8000A66C 000062CC FC 03 10 40 */ fcmpo cr0, f3, f2
/* 8000A670 000062D0 FC 00 00 1E */ fctiwz f0, f0
/* 8000A674 000062D4 D8 01 00 68 */ stfd f0, 0x68(r1)
/* 8000A678 000062D8 80 01 00 6C */ lwz r0, 0x6c(r1)
/* 8000A67C 000062DC 98 1F 00 14 */ stb r0, 0x14(r31)
/* 8000A680 000062E0 4C 41 13 82 */ cror 2, 1, 2
/* 8000A684 000062E4 40 82 00 80 */ bne lbl_8000A704
/* 8000A688 000062E8 48 26 81 49 */ bl OSGetTick
/* 8000A68C 000062EC 38 80 00 01 */ li r4, 1
/* 8000A690 000062F0 38 00 00 FF */ li r0, 0xff
/* 8000A694 000062F4 90 7F 00 10 */ stw r3, 0x10(r31)
/* 8000A698 000062F8 98 9F 00 0E */ stb r4, 0xe(r31)
/* 8000A69C 000062FC 98 1F 00 14 */ stb r0, 0x14(r31)
/* 8000A6A0 00006300 48 00 00 64 */ b lbl_8000A704
lbl_8000A6A4:
/* 8000A6A4 00006304 C0 02 80 60 */ lfs f0, lbl_80640660-_SDA2_BASE_(r2)
/* 8000A6A8 00006308 FC 03 00 40 */ fcmpo cr0, f3, f0
/* 8000A6AC 0000630C 4C 41 13 82 */ cror 2, 1, 2
/* 8000A6B0 00006310 40 82 00 54 */ bne lbl_8000A704
/* 8000A6B4 00006314 48 26 81 1D */ bl OSGetTick
/* 8000A6B8 00006318 38 00 00 02 */ li r0, 2
/* 8000A6BC 0000631C 90 7F 00 10 */ stw r3, 0x10(r31)
/* 8000A6C0 00006320 98 1F 00 0E */ stb r0, 0xe(r31)
/* 8000A6C4 00006324 48 00 00 40 */ b lbl_8000A704
lbl_8000A6C8:
/* 8000A6C8 00006328 C0 42 80 5C */ lfs f2, lbl_8064065C-_SDA2_BASE_(r2)
/* 8000A6CC 0000632C C0 02 80 58 */ lfs f0, lbl_80640658-_SDA2_BASE_(r2)
/* 8000A6D0 00006330 EC 22 18 28 */ fsubs f1, f2, f3
/* 8000A6D4 00006334 FC 03 10 40 */ fcmpo cr0, f3, f2
/* 8000A6D8 00006338 EC 21 10 24 */ fdivs f1, f1, f2
/* 8000A6DC 0000633C EC 00 00 72 */ fmuls f0, f0, f1
/* 8000A6E0 00006340 FC 00 00 1E */ fctiwz f0, f0
/* 8000A6E4 00006344 D8 01 00 68 */ stfd f0, 0x68(r1)
/* 8000A6E8 00006348 80 01 00 6C */ lwz r0, 0x6c(r1)
/* 8000A6EC 0000634C 98 1F 00 14 */ stb r0, 0x14(r31)
/* 8000A6F0 00006350 4C 41 13 82 */ cror 2, 1, 2
/* 8000A6F4 00006354 40 82 00 10 */ bne lbl_8000A704
/* 8000A6F8 00006358 38 00 00 00 */ li r0, 0
/* 8000A6FC 0000635C 98 1F 00 14 */ stb r0, 0x14(r31)
/* 8000A700 00006360 98 1F 00 0C */ stb r0, 0xc(r31)
lbl_8000A704:
/* 8000A704 00006364 88 9F 00 14 */ lbz r4, 0x14(r31)
/* 8000A708 00006368 7F E3 FB 78 */ mr r3, r31
/* 8000A70C 0000636C 4B FF F4 39 */ bl func_80009B44
/* 8000A710 00006370 80 6D A3 D8 */ lwz r3, render_context_ptr-_SDA_BASE_(r13)
/* 8000A714 00006374 48 23 02 49 */ bl func_8023A95C
lbl_8000A718:
/* 8000A718 00006378 80 01 00 84 */ lwz r0, 0x84(r1)
/* 8000A71C 0000637C 83 E1 00 7C */ lwz r31, 0x7c(r1)
/* 8000A720 00006380 7C 08 03 A6 */ mtlr r0
/* 8000A724 00006384 38 21 00 80 */ addi r1, r1, 0x80
/* 8000A728 00006388 4E 80 00 20 */ blr
.global func_8000A72C
func_8000A72C:
/* 8000A72C 0000638C 90 83 00 D0 */ stw r4, 0xd0(r3)
/* 8000A730 00006390 4E 80 00 20 */ blr
.global func_8000A734
func_8000A734:
/* 8000A734 00006394 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 8000A738 00006398 4E 80 00 20 */ blr
.global func_8000A73C
func_8000A73C:
/* 8000A73C 0000639C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 8000A740 000063A0 7C 08 02 A6 */ mflr r0
/* 8000A744 000063A4 38 60 00 D4 */ li r3, 0xd4
/* 8000A748 000063A8 90 01 00 14 */ stw r0, 0x14(r1)
/* 8000A74C 000063AC 48 1D 02 E5 */ bl __nw__FUl
/* 8000A750 000063B0 2C 03 00 00 */ cmpwi r3, 0
/* 8000A754 000063B4 41 82 00 08 */ beq lbl_8000A75C
/* 8000A758 000063B8 4B FF F1 F5 */ bl func_8000994C
lbl_8000A75C:
/* 8000A75C 000063BC 2C 03 00 00 */ cmpwi r3, 0
/* 8000A760 000063C0 90 6D 96 70 */ stw r3, lbl_8063E930-_SDA_BASE_(r13)
/* 8000A764 000063C4 41 82 00 08 */ beq lbl_8000A76C
/* 8000A768 000063C8 4B FF F8 F9 */ bl func_8000A060
lbl_8000A76C:
/* 8000A76C 000063CC 80 01 00 14 */ lwz r0, 0x14(r1)
/* 8000A770 000063D0 7C 08 03 A6 */ mtlr r0
/* 8000A774 000063D4 38 21 00 10 */ addi r1, r1, 0x10
/* 8000A778 000063D8 4E 80 00 20 */ blr
.global lbl_8000A77C
lbl_8000A77C:
/* 8000A77C 000063DC 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 8000A780 000063E0 2C 03 00 00 */ cmpwi r3, 0
/* 8000A784 000063E4 4D 82 00 20 */ beqlr
/* 8000A788 000063E8 4B FF F9 68 */ b lbl_8000A0F0
/* 8000A78C 000063EC 4E 80 00 20 */ blr
.global lbl_8000A790
lbl_8000A790:
/* 8000A790 000063F0 80 6D 96 70 */ lwz r3, lbl_8063E930-_SDA_BASE_(r13)
/* 8000A794 000063F4 2C 03 00 00 */ cmpwi r3, 0
/* 8000A798 000063F8 4D 82 00 20 */ beqlr
/* 8000A79C 000063FC 4B FF FD B0 */ b lbl_8000A54C
/* 8000A7A0 00006400 4E 80 00 20 */ blr
.global func_8000A7A4
func_8000A7A4:
/* 8000A7A4 00006404 38 A0 00 01 */ li r5, 1
/* 8000A7A8 00006408 38 6D 96 68 */ addi r3, r13, lbl_8063E928-_SDA_BASE_
/* 8000A7AC 0000640C 38 80 00 04 */ li r4, 4
/* 8000A7B0 00006410 38 00 00 00 */ li r0, 0
/* 8000A7B4 00006414 98 AD 96 68 */ stb r5, lbl_8063E928-_SDA_BASE_(r13)
/* 8000A7B8 00006418 B0 83 00 02 */ sth r4, 2(r3)
/* 8000A7BC 0000641C 98 03 00 04 */ stb r0, 4(r3)
/* 8000A7C0 00006420 4E 80 00 20 */ blr
|