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
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
.global func_80284950
func_80284950:
/* 80284950 002805B0 94 21 FF C0 */ stwu r1, -0x40(r1)
/* 80284954 002805B4 7C 08 02 A6 */ mflr r0
/* 80284958 002805B8 2C 03 00 00 */ cmpwi r3, 0
/* 8028495C 002805BC 90 01 00 44 */ stw r0, 0x44(r1)
/* 80284960 002805C0 93 E1 00 3C */ stw r31, 0x3c(r1)
/* 80284964 002805C4 7C 7F 1B 78 */ mr r31, r3
/* 80284968 002805C8 93 C1 00 38 */ stw r30, 0x38(r1)
/* 8028496C 002805CC 7C DE 33 78 */ mr r30, r6
/* 80284970 002805D0 93 A1 00 34 */ stw r29, 0x34(r1)
/* 80284974 002805D4 7C BD 2B 78 */ mr r29, r5
/* 80284978 002805D8 93 81 00 30 */ stw r28, 0x30(r1)
/* 8028497C 002805DC 7C 9C 23 78 */ mr r28, r4
/* 80284980 002805E0 40 82 00 AC */ bne lbl_80284A2C
/* 80284984 002805E4 38 60 00 90 */ li r3, 0x90
/* 80284988 002805E8 38 80 00 03 */ li r4, 3
/* 8028498C 002805EC 38 A0 00 03 */ li r5, 3
/* 80284990 002805F0 4B FF C7 B9 */ bl GXBegin
/* 80284994 002805F4 C0 5C 00 08 */ lfs f2, 8(r28)
/* 80284998 002805F8 3C 60 CC 01 */ lis r3, 0xCC008000@ha
/* 8028499C 002805FC C0 3C 00 04 */ lfs f1, 4(r28)
/* 802849A0 00280600 C0 1C 00 00 */ lfs f0, 0(r28)
/* 802849A4 00280604 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
/* 802849A8 00280608 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 802849AC 0028060C D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 802849B0 00280610 C0 5C 00 08 */ lfs f2, 8(r28)
/* 802849B4 00280614 C0 3C 00 04 */ lfs f1, 4(r28)
/* 802849B8 00280618 C0 1C 00 00 */ lfs f0, 0(r28)
/* 802849BC 0028061C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802849C0 00280620 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 802849C4 00280624 D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 802849C8 00280628 C0 5D 00 08 */ lfs f2, 8(r29)
/* 802849CC 0028062C C0 3D 00 04 */ lfs f1, 4(r29)
/* 802849D0 00280630 C0 1D 00 00 */ lfs f0, 0(r29)
/* 802849D4 00280634 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802849D8 00280638 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 802849DC 0028063C D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 802849E0 00280640 C0 5D 00 08 */ lfs f2, 8(r29)
/* 802849E4 00280644 C0 3D 00 04 */ lfs f1, 4(r29)
/* 802849E8 00280648 C0 1D 00 00 */ lfs f0, 0(r29)
/* 802849EC 0028064C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802849F0 00280650 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 802849F4 00280654 D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 802849F8 00280658 C0 5E 00 08 */ lfs f2, 8(r30)
/* 802849FC 0028065C C0 3E 00 04 */ lfs f1, 4(r30)
/* 80284A00 00280660 C0 1E 00 00 */ lfs f0, 0(r30)
/* 80284A04 00280664 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284A08 00280668 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80284A0C 0028066C D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 80284A10 00280670 C0 5E 00 08 */ lfs f2, 8(r30)
/* 80284A14 00280674 C0 3E 00 04 */ lfs f1, 4(r30)
/* 80284A18 00280678 C0 1E 00 00 */ lfs f0, 0(r30)
/* 80284A1C 0028067C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284A20 00280680 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80284A24 00280684 D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 80284A28 00280688 48 00 01 C0 */ b lbl_80284BE8
lbl_80284A2C:
/* 80284A2C 0028068C C0 24 00 00 */ lfs f1, 0(r4)
/* 80284A30 00280690 C0 05 00 00 */ lfs f0, 0(r5)
/* 80284A34 00280694 EC 01 00 2A */ fadds f0, f1, f0
/* 80284A38 00280698 D0 01 00 20 */ stfs f0, 0x20(r1)
/* 80284A3C 0028069C EC 20 00 32 */ fmuls f1, f0, f0
/* 80284A40 002806A0 C0 45 00 00 */ lfs f2, 0(r5)
/* 80284A44 002806A4 C0 06 00 00 */ lfs f0, 0(r6)
/* 80284A48 002806A8 EC 02 00 2A */ fadds f0, f2, f0
/* 80284A4C 002806AC D0 01 00 14 */ stfs f0, 0x14(r1)
/* 80284A50 002806B0 C0 46 00 00 */ lfs f2, 0(r6)
/* 80284A54 002806B4 C0 04 00 00 */ lfs f0, 0(r4)
/* 80284A58 002806B8 EC 02 00 2A */ fadds f0, f2, f0
/* 80284A5C 002806BC D0 01 00 08 */ stfs f0, 8(r1)
/* 80284A60 002806C0 C0 44 00 04 */ lfs f2, 4(r4)
/* 80284A64 002806C4 C0 05 00 04 */ lfs f0, 4(r5)
/* 80284A68 002806C8 EC 02 00 2A */ fadds f0, f2, f0
/* 80284A6C 002806CC D0 01 00 24 */ stfs f0, 0x24(r1)
/* 80284A70 002806D0 EC 00 00 32 */ fmuls f0, f0, f0
/* 80284A74 002806D4 C0 65 00 04 */ lfs f3, 4(r5)
/* 80284A78 002806D8 C0 46 00 04 */ lfs f2, 4(r6)
/* 80284A7C 002806DC EC 01 00 2A */ fadds f0, f1, f0
/* 80284A80 002806E0 EC 23 10 2A */ fadds f1, f3, f2
/* 80284A84 002806E4 D0 21 00 18 */ stfs f1, 0x18(r1)
/* 80284A88 002806E8 C0 46 00 04 */ lfs f2, 4(r6)
/* 80284A8C 002806EC C0 24 00 04 */ lfs f1, 4(r4)
/* 80284A90 002806F0 EC 22 08 2A */ fadds f1, f2, f1
/* 80284A94 002806F4 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80284A98 002806F8 C0 44 00 08 */ lfs f2, 8(r4)
/* 80284A9C 002806FC C0 25 00 08 */ lfs f1, 8(r5)
/* 80284AA0 00280700 EC 22 08 2A */ fadds f1, f2, f1
/* 80284AA4 00280704 D0 21 00 28 */ stfs f1, 0x28(r1)
/* 80284AA8 00280708 EC 21 00 72 */ fmuls f1, f1, f1
/* 80284AAC 0028070C C0 65 00 08 */ lfs f3, 8(r5)
/* 80284AB0 00280710 C0 46 00 08 */ lfs f2, 8(r6)
/* 80284AB4 00280714 EC 21 00 2A */ fadds f1, f1, f0
/* 80284AB8 00280718 EC 03 10 2A */ fadds f0, f3, f2
/* 80284ABC 0028071C D0 01 00 1C */ stfs f0, 0x1c(r1)
/* 80284AC0 00280720 C0 46 00 08 */ lfs f2, 8(r6)
/* 80284AC4 00280724 C0 04 00 08 */ lfs f0, 8(r4)
/* 80284AC8 00280728 EC 02 00 2A */ fadds f0, f2, f0
/* 80284ACC 0028072C D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80284AD0 00280730 4B F4 FD 65 */ bl sqrt
/* 80284AD4 00280734 FC C0 08 18 */ frsp f6, f1
/* 80284AD8 00280738 C0 01 00 20 */ lfs f0, 0x20(r1)
/* 80284ADC 0028073C C0 81 00 24 */ lfs f4, 0x24(r1)
/* 80284AE0 00280740 C0 61 00 28 */ lfs f3, 0x28(r1)
/* 80284AE4 00280744 EC A0 30 24 */ fdivs f5, f0, f6
/* 80284AE8 00280748 C0 21 00 14 */ lfs f1, 0x14(r1)
/* 80284AEC 0028074C C0 01 00 18 */ lfs f0, 0x18(r1)
/* 80284AF0 00280750 C0 41 00 1C */ lfs f2, 0x1c(r1)
/* 80284AF4 00280754 EC 84 30 24 */ fdivs f4, f4, f6
/* 80284AF8 00280758 D0 A1 00 20 */ stfs f5, 0x20(r1)
/* 80284AFC 0028075C EC 63 30 24 */ fdivs f3, f3, f6
/* 80284B00 00280760 D0 81 00 24 */ stfs f4, 0x24(r1)
/* 80284B04 00280764 EC 21 00 72 */ fmuls f1, f1, f1
/* 80284B08 00280768 D0 61 00 28 */ stfs f3, 0x28(r1)
/* 80284B0C 0028076C EC 00 00 32 */ fmuls f0, f0, f0
/* 80284B10 00280770 EC 42 00 B2 */ fmuls f2, f2, f2
/* 80284B14 00280774 EC 01 00 2A */ fadds f0, f1, f0
/* 80284B18 00280778 EC 22 00 2A */ fadds f1, f2, f0
/* 80284B1C 0028077C 4B F4 FD 19 */ bl sqrt
/* 80284B20 00280780 FC C0 08 18 */ frsp f6, f1
/* 80284B24 00280784 C0 01 00 14 */ lfs f0, 0x14(r1)
/* 80284B28 00280788 C0 81 00 18 */ lfs f4, 0x18(r1)
/* 80284B2C 0028078C C0 61 00 1C */ lfs f3, 0x1c(r1)
/* 80284B30 00280790 EC A0 30 24 */ fdivs f5, f0, f6
/* 80284B34 00280794 C0 21 00 08 */ lfs f1, 8(r1)
/* 80284B38 00280798 C0 01 00 0C */ lfs f0, 0xc(r1)
/* 80284B3C 0028079C C0 41 00 10 */ lfs f2, 0x10(r1)
/* 80284B40 002807A0 EC 84 30 24 */ fdivs f4, f4, f6
/* 80284B44 002807A4 D0 A1 00 14 */ stfs f5, 0x14(r1)
/* 80284B48 002807A8 EC 63 30 24 */ fdivs f3, f3, f6
/* 80284B4C 002807AC D0 81 00 18 */ stfs f4, 0x18(r1)
/* 80284B50 002807B0 EC 21 00 72 */ fmuls f1, f1, f1
/* 80284B54 002807B4 D0 61 00 1C */ stfs f3, 0x1c(r1)
/* 80284B58 002807B8 EC 00 00 32 */ fmuls f0, f0, f0
/* 80284B5C 002807BC EC 42 00 B2 */ fmuls f2, f2, f2
/* 80284B60 002807C0 EC 01 00 2A */ fadds f0, f1, f0
/* 80284B64 002807C4 EC 22 00 2A */ fadds f1, f2, f0
/* 80284B68 002807C8 4B F4 FC CD */ bl sqrt
/* 80284B6C 002807CC FC 60 08 18 */ frsp f3, f1
/* 80284B70 002807D0 C0 41 00 08 */ lfs f2, 8(r1)
/* 80284B74 002807D4 C0 21 00 0C */ lfs f1, 0xc(r1)
/* 80284B78 002807D8 3B FF FF FF */ addi r31, r31, -1
/* 80284B7C 002807DC C0 01 00 10 */ lfs f0, 0x10(r1)
/* 80284B80 002807E0 7F 84 E3 78 */ mr r4, r28
/* 80284B84 002807E4 EC 42 18 24 */ fdivs f2, f2, f3
/* 80284B88 002807E8 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 80284B8C 002807EC 38 A1 00 20 */ addi r5, r1, 0x20
/* 80284B90 002807F0 38 C1 00 08 */ addi r6, r1, 8
/* 80284B94 002807F4 EC 21 18 24 */ fdivs f1, f1, f3
/* 80284B98 002807F8 D0 41 00 08 */ stfs f2, 8(r1)
/* 80284B9C 002807FC EC 00 18 24 */ fdivs f0, f0, f3
/* 80284BA0 00280800 D0 21 00 0C */ stfs f1, 0xc(r1)
/* 80284BA4 00280804 D0 01 00 10 */ stfs f0, 0x10(r1)
/* 80284BA8 00280808 4B FF FD A9 */ bl func_80284950
/* 80284BAC 0028080C 7F A4 EB 78 */ mr r4, r29
/* 80284BB0 00280810 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 80284BB4 00280814 38 A1 00 14 */ addi r5, r1, 0x14
/* 80284BB8 00280818 38 C1 00 20 */ addi r6, r1, 0x20
/* 80284BBC 0028081C 4B FF FD 95 */ bl func_80284950
/* 80284BC0 00280820 7F C4 F3 78 */ mr r4, r30
/* 80284BC4 00280824 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 80284BC8 00280828 38 A1 00 08 */ addi r5, r1, 8
/* 80284BCC 0028082C 38 C1 00 14 */ addi r6, r1, 0x14
/* 80284BD0 00280830 4B FF FD 81 */ bl func_80284950
/* 80284BD4 00280834 57 E3 06 3E */ clrlwi r3, r31, 0x18
/* 80284BD8 00280838 38 81 00 20 */ addi r4, r1, 0x20
/* 80284BDC 0028083C 38 A1 00 14 */ addi r5, r1, 0x14
/* 80284BE0 00280840 38 C1 00 08 */ addi r6, r1, 8
/* 80284BE4 00280844 4B FF FD 6D */ bl func_80284950
lbl_80284BE8:
/* 80284BE8 00280848 80 01 00 44 */ lwz r0, 0x44(r1)
/* 80284BEC 0028084C 83 E1 00 3C */ lwz r31, 0x3c(r1)
/* 80284BF0 00280850 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 80284BF4 00280854 83 A1 00 34 */ lwz r29, 0x34(r1)
/* 80284BF8 00280858 83 81 00 30 */ lwz r28, 0x30(r1)
/* 80284BFC 0028085C 7C 08 03 A6 */ mtlr r0
/* 80284C00 00280860 38 21 00 40 */ addi r1, r1, 0x40
/* 80284C04 00280864 4E 80 00 20 */ blr
.global func_80284C08
func_80284C08:
/* 80284C08 00280868 94 21 FC 40 */ stwu r1, -0x3c0(r1)
/* 80284C0C 0028086C 7C 08 02 A6 */ mflr r0
/* 80284C10 00280870 90 01 03 C4 */ stw r0, 0x3c4(r1)
/* 80284C14 00280874 DB E1 03 B0 */ stfd f31, 0x3b0(r1)
/* 80284C18 00280878 F3 E1 03 B8 */ psq_st f31, 952(r1), 0, qr0
/* 80284C1C 0028087C DB C1 03 A0 */ stfd f30, 0x3a0(r1)
/* 80284C20 00280880 F3 C1 03 A8 */ psq_st f30, 936(r1), 0, qr0
/* 80284C24 00280884 DB A1 03 90 */ stfd f29, 0x390(r1)
/* 80284C28 00280888 F3 A1 03 98 */ psq_st f29, 920(r1), 0, qr0
/* 80284C2C 0028088C DB 81 03 80 */ stfd f28, 0x380(r1)
/* 80284C30 00280890 F3 81 03 88 */ psq_st f28, 904(r1), 0, qr0
/* 80284C34 00280894 DB 61 03 70 */ stfd f27, 0x370(r1)
/* 80284C38 00280898 F3 61 03 78 */ psq_st f27, 888(r1), 0, qr0
/* 80284C3C 0028089C DB 41 03 60 */ stfd f26, 0x360(r1)
/* 80284C40 002808A0 F3 41 03 68 */ psq_st f26, 872(r1), 0, qr0
/* 80284C44 002808A4 DB 21 03 50 */ stfd f25, 0x350(r1)
/* 80284C48 002808A8 F3 21 03 58 */ psq_st f25, 856(r1), 0, qr0
/* 80284C4C 002808AC 39 61 03 50 */ addi r11, r1, 0x350
/* 80284C50 002808B0 4B F4 24 D9 */ bl _savegpr_27
/* 80284C54 002808B4 C3 E2 A1 D0 */ lfs f31, lbl_806427D0-_SDA2_BASE_(r2)
/* 80284C58 002808B8 3C 80 80 51 */ lis r4, lbl_80515FF8@ha
/* 80284C5C 002808BC 7C 7E 1B 78 */ mr r30, r3
/* 80284C60 002808C0 FF C0 F8 50 */ fneg f30, f31
/* 80284C64 002808C4 38 64 5F F8 */ addi r3, r4, lbl_80515FF8@l
/* 80284C68 002808C8 4B FF AF 8D */ bl GXGetVtxDescv
/* 80284C6C 002808CC 3C 80 80 51 */ lis r4, lbl_805160D0@ha
/* 80284C70 002808D0 38 60 00 03 */ li r3, 3
/* 80284C74 002808D4 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
/* 80284C78 002808D8 4B FF B6 91 */ bl GXGetVtxAttrFmtv
/* 80284C7C 002808DC 4B FF B0 09 */ bl GXClearVtxDesc
/* 80284C80 002808E0 38 60 00 09 */ li r3, 9
/* 80284C84 002808E4 38 80 00 01 */ li r4, 1
/* 80284C88 002808E8 4B FF A7 6D */ bl GXSetVtxDesc
/* 80284C8C 002808EC 38 60 00 0A */ li r3, 0xa
/* 80284C90 002808F0 38 80 00 01 */ li r4, 1
/* 80284C94 002808F4 4B FF A7 61 */ bl GXSetVtxDesc
/* 80284C98 002808F8 38 60 00 03 */ li r3, 3
/* 80284C9C 002808FC 38 80 00 09 */ li r4, 9
/* 80284CA0 00280900 38 A0 00 01 */ li r5, 1
/* 80284CA4 00280904 38 C0 00 04 */ li r6, 4
/* 80284CA8 00280908 38 E0 00 00 */ li r7, 0
/* 80284CAC 0028090C 4B FF B0 0D */ bl GXSetVtxAttrFmt
/* 80284CB0 00280910 38 60 00 03 */ li r3, 3
/* 80284CB4 00280914 38 80 00 0A */ li r4, 0xa
/* 80284CB8 00280918 38 A0 00 00 */ li r5, 0
/* 80284CBC 0028091C 38 C0 00 04 */ li r6, 4
/* 80284CC0 00280920 38 E0 00 00 */ li r7, 0
/* 80284CC4 00280924 4B FF AF F5 */ bl GXSetVtxAttrFmt
/* 80284CC8 00280928 CB 42 A1 E8 */ lfd f26, lbl_806427E8-_SDA2_BASE_(r2)
/* 80284CCC 0028092C 3B A1 01 98 */ addi r29, r1, 0x198
/* 80284CD0 00280930 C3 62 A1 D8 */ lfs f27, lbl_806427D8-_SDA2_BASE_(r2)
/* 80284CD4 00280934 3B 81 00 08 */ addi r28, r1, 8
/* 80284CD8 00280938 C3 82 A1 D4 */ lfs f28, lbl_806427D4-_SDA2_BASE_(r2)
/* 80284CDC 0028093C 3B 60 00 00 */ li r27, 0
/* 80284CE0 00280940 CB A2 A1 F0 */ lfd f29, lbl_806427F0-_SDA2_BASE_(r2)
/* 80284CE4 00280944 3F E0 43 30 */ lis r31, 0x4330
/* 80284CE8 00280948 48 00 00 60 */ b lbl_80284D48
lbl_80284CEC:
/* 80284CEC 0028094C 6F 60 80 00 */ xoris r0, r27, 0x8000
/* 80284CF0 00280950 93 E1 03 28 */ stw r31, 0x328(r1)
/* 80284CF4 00280954 90 01 03 2C */ stw r0, 0x32c(r1)
/* 80284CF8 00280958 C8 01 03 28 */ lfd f0, 0x328(r1)
/* 80284CFC 0028095C 93 C1 03 34 */ stw r30, 0x334(r1)
/* 80284D00 00280960 EC 00 D0 28 */ fsubs f0, f0, f26
/* 80284D04 00280964 93 E1 03 30 */ stw r31, 0x330(r1)
/* 80284D08 00280968 EC 3B 00 32 */ fmuls f1, f27, f0
/* 80284D0C 0028096C C8 01 03 30 */ lfd f0, 0x330(r1)
/* 80284D10 00280970 EC 00 E8 28 */ fsubs f0, f0, f29
/* 80284D14 00280974 EC 3C 00 72 */ fmuls f1, f28, f1
/* 80284D18 00280978 EF 21 00 24 */ fdivs f25, f1, f0
/* 80284D1C 0028097C FC 20 C8 90 */ fmr f1, f25
/* 80284D20 00280980 4B F4 F3 59 */ bl cos
/* 80284D24 00280984 FC 00 08 18 */ frsp f0, f1
/* 80284D28 00280988 FC 20 C8 90 */ fmr f1, f25
/* 80284D2C 0028098C D0 1D 00 00 */ stfs f0, 0(r29)
/* 80284D30 00280990 4B F4 F7 55 */ bl sin
/* 80284D34 00280994 FC 00 08 18 */ frsp f0, f1
/* 80284D38 00280998 3B BD 00 04 */ addi r29, r29, 4
/* 80284D3C 0028099C 3B 7B 00 01 */ addi r27, r27, 1
/* 80284D40 002809A0 D0 1C 00 00 */ stfs f0, 0(r28)
/* 80284D44 002809A4 3B 9C 00 04 */ addi r28, r28, 4
lbl_80284D48:
/* 80284D48 002809A8 7C 1B F0 00 */ cmpw r27, r30
/* 80284D4C 002809AC 40 81 FF A0 */ ble lbl_80284CEC
/* 80284D50 002809B0 38 1E 00 01 */ addi r0, r30, 1
/* 80284D54 002809B4 38 60 00 98 */ li r3, 0x98
/* 80284D58 002809B8 54 05 0C 3C */ rlwinm r5, r0, 1, 0x10, 0x1e
/* 80284D5C 002809BC 38 80 00 03 */ li r4, 3
/* 80284D60 002809C0 4B FF C3 E9 */ bl GXBegin
/* 80284D64 002809C4 2C 1E 00 00 */ cmpwi r30, 0
/* 80284D68 002809C8 38 A1 00 08 */ addi r5, r1, 8
/* 80284D6C 002809CC 38 C1 01 98 */ addi r6, r1, 0x198
/* 80284D70 002809D0 38 7E 00 01 */ addi r3, r30, 1
/* 80284D74 002809D4 3C 80 CC 01 */ lis r4, 0xcc01
/* 80284D78 002809D8 41 80 00 F4 */ blt lbl_80284E6C
/* 80284D7C 002809DC 54 60 F8 7F */ rlwinm. r0, r3, 0x1f, 1, 0x1f
/* 80284D80 002809E0 7C 09 03 A6 */ mtctr r0
/* 80284D84 002809E4 41 82 00 98 */ beq lbl_80284E1C
lbl_80284D88:
/* 80284D88 002809E8 C0 26 00 00 */ lfs f1, 0(r6)
/* 80284D8C 002809EC C0 45 00 00 */ lfs f2, 0(r5)
/* 80284D90 002809F0 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284D94 002809F4 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284D98 002809F8 D3 C4 80 00 */ stfs f30, -0x8000(r4)
/* 80284D9C 002809FC D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284DA0 00280A00 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284DA4 00280A04 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284DA8 00280A08 D0 04 80 00 */ stfs f0, -0x8000(r4)
/* 80284DAC 00280A0C D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284DB0 00280A10 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284DB4 00280A14 D3 E4 80 00 */ stfs f31, -0x8000(r4)
/* 80284DB8 00280A18 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284DBC 00280A1C C0 26 00 04 */ lfs f1, 4(r6)
/* 80284DC0 00280A20 38 C6 00 08 */ addi r6, r6, 8
/* 80284DC4 00280A24 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284DC8 00280A28 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284DCC 00280A2C C0 45 00 04 */ lfs f2, 4(r5)
/* 80284DD0 00280A30 38 A5 00 08 */ addi r5, r5, 8
/* 80284DD4 00280A34 D0 04 80 00 */ stfs f0, -0x8000(r4)
/* 80284DD8 00280A38 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284DDC 00280A3C D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284DE0 00280A40 D3 C4 80 00 */ stfs f30, -0x8000(r4)
/* 80284DE4 00280A44 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284DE8 00280A48 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284DEC 00280A4C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284DF0 00280A50 D0 04 80 00 */ stfs f0, -0x8000(r4)
/* 80284DF4 00280A54 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284DF8 00280A58 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284DFC 00280A5C D3 E4 80 00 */ stfs f31, -0x8000(r4)
/* 80284E00 00280A60 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284E04 00280A64 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284E08 00280A68 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284E0C 00280A6C D0 04 80 00 */ stfs f0, -0x8000(r4)
/* 80284E10 00280A70 42 00 FF 78 */ bdnz lbl_80284D88
/* 80284E14 00280A74 70 63 00 01 */ andi. r3, r3, 1
/* 80284E18 00280A78 41 82 00 54 */ beq lbl_80284E6C
lbl_80284E1C:
/* 80284E1C 00280A7C 7C 69 03 A6 */ mtctr r3
lbl_80284E20:
/* 80284E20 00280A80 C0 26 00 00 */ lfs f1, 0(r6)
/* 80284E24 00280A84 38 C6 00 04 */ addi r6, r6, 4
/* 80284E28 00280A88 C0 45 00 00 */ lfs f2, 0(r5)
/* 80284E2C 00280A8C 38 A5 00 04 */ addi r5, r5, 4
/* 80284E30 00280A90 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284E34 00280A94 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284E38 00280A98 D3 C4 80 00 */ stfs f30, -0x8000(r4)
/* 80284E3C 00280A9C D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284E40 00280AA0 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284E44 00280AA4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284E48 00280AA8 D0 04 80 00 */ stfs f0, -0x8000(r4)
/* 80284E4C 00280AAC D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284E50 00280AB0 D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284E54 00280AB4 D3 E4 80 00 */ stfs f31, -0x8000(r4)
/* 80284E58 00280AB8 D0 24 80 00 */ stfs f1, -0x8000(r4)
/* 80284E5C 00280ABC D0 44 80 00 */ stfs f2, -0x8000(r4)
/* 80284E60 00280AC0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284E64 00280AC4 D0 04 80 00 */ stfs f0, -0x8000(r4)
/* 80284E68 00280AC8 42 00 FF B8 */ bdnz lbl_80284E20
lbl_80284E6C:
/* 80284E6C 00280ACC 3B FE 00 02 */ addi r31, r30, 2
/* 80284E70 00280AD0 38 60 00 A0 */ li r3, 0xa0
/* 80284E74 00280AD4 57 E5 04 3E */ clrlwi r5, r31, 0x10
/* 80284E78 00280AD8 38 80 00 03 */ li r4, 3
/* 80284E7C 00280ADC 4B FF C2 CD */ bl GXBegin
/* 80284E80 00280AE0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284E84 00280AE4 3C 60 CC 01 */ lis r3, 0xCC008000@ha
/* 80284E88 00280AE8 2C 9E 00 00 */ cmpwi cr1, r30, 0
/* 80284E8C 00280AEC 39 00 00 00 */ li r8, 0
/* 80284E90 00280AF0 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
/* 80284E94 00280AF4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284E98 00280AF8 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284E9C 00280AFC D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80284EA0 00280B00 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284EA4 00280B04 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284EA8 00280B08 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284EAC 00280B0C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284EB0 00280B10 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 80284EB4 00280B14 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284EB8 00280B18 41 84 02 80 */ blt cr1, lbl_80285138
/* 80284EBC 00280B1C 38 FE 00 01 */ addi r7, r30, 1
/* 80284EC0 00280B20 38 9E FF F8 */ addi r4, r30, -8
/* 80284EC4 00280B24 2C 07 00 08 */ cmpwi r7, 8
/* 80284EC8 00280B28 40 81 02 08 */ ble lbl_802850D0
/* 80284ECC 00280B2C 38 A0 00 00 */ li r5, 0
/* 80284ED0 00280B30 38 C0 00 00 */ li r6, 0
/* 80284ED4 00280B34 41 84 00 18 */ blt cr1, lbl_80284EEC
/* 80284ED8 00280B38 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
/* 80284EDC 00280B3C 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
/* 80284EE0 00280B40 7C 1E 00 00 */ cmpw r30, r0
/* 80284EE4 00280B44 41 81 00 08 */ bgt lbl_80284EEC
/* 80284EE8 00280B48 38 C0 00 01 */ li r6, 1
lbl_80284EEC:
/* 80284EEC 00280B4C 2C 06 00 00 */ cmpwi r6, 0
/* 80284EF0 00280B50 41 82 00 28 */ beq lbl_80284F18
/* 80284EF4 00280B54 57 C0 00 01 */ rlwinm. r0, r30, 0, 0, 0
/* 80284EF8 00280B58 38 60 00 01 */ li r3, 1
/* 80284EFC 00280B5C 40 82 00 10 */ bne lbl_80284F0C
/* 80284F00 00280B60 54 E0 00 01 */ rlwinm. r0, r7, 0, 0, 0
/* 80284F04 00280B64 41 82 00 08 */ beq lbl_80284F0C
/* 80284F08 00280B68 38 60 00 00 */ li r3, 0
lbl_80284F0C:
/* 80284F0C 00280B6C 2C 03 00 00 */ cmpwi r3, 0
/* 80284F10 00280B70 41 82 00 08 */ beq lbl_80284F18
/* 80284F14 00280B74 38 A0 00 01 */ li r5, 1
lbl_80284F18:
/* 80284F18 00280B78 2C 05 00 00 */ cmpwi r5, 0
/* 80284F1C 00280B7C 41 82 01 B4 */ beq lbl_802850D0
/* 80284F20 00280B80 38 04 00 08 */ addi r0, r4, 8
/* 80284F24 00280B84 38 A1 00 08 */ addi r5, r1, 8
/* 80284F28 00280B88 54 00 E8 FE */ srwi r0, r0, 3
/* 80284F2C 00280B8C 38 C1 01 98 */ addi r6, r1, 0x198
/* 80284F30 00280B90 3C 60 CC 01 */ lis r3, 0xcc01
/* 80284F34 00280B94 7C 09 03 A6 */ mtctr r0
/* 80284F38 00280B98 2C 04 00 00 */ cmpwi r4, 0
/* 80284F3C 00280B9C 41 80 01 94 */ blt lbl_802850D0
lbl_80284F40:
/* 80284F40 00280BA0 C0 05 00 00 */ lfs f0, 0(r5)
/* 80284F44 00280BA4 C0 26 00 00 */ lfs f1, 0(r6)
/* 80284F48 00280BA8 FC 40 00 50 */ fneg f2, f0
/* 80284F4C 00280BAC C0 05 00 04 */ lfs f0, 4(r5)
/* 80284F50 00280BB0 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80284F54 00280BB4 C0 25 00 08 */ lfs f1, 8(r5)
/* 80284F58 00280BB8 FC C0 00 50 */ fneg f6, f0
/* 80284F5C 00280BBC D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 80284F60 00280BC0 C0 05 00 0C */ lfs f0, 0xc(r5)
/* 80284F64 00280BC4 FC A0 08 50 */ fneg f5, f1
/* 80284F68 00280BC8 D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80284F6C 00280BCC C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284F70 00280BD0 FC 80 00 50 */ fneg f4, f0
/* 80284F74 00280BD4 C0 05 00 10 */ lfs f0, 0x10(r5)
/* 80284F78 00280BD8 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80284F7C 00280BDC C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284F80 00280BE0 FC 60 00 50 */ fneg f3, f0
/* 80284F84 00280BE4 C0 05 00 14 */ lfs f0, 0x14(r5)
/* 80284F88 00280BE8 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80284F8C 00280BEC C0 22 A1 D0 */ lfs f1, lbl_806427D0-_SDA2_BASE_(r2)
/* 80284F90 00280BF0 FC 40 00 50 */ fneg f2, f0
/* 80284F94 00280BF4 C0 06 00 04 */ lfs f0, 4(r6)
/* 80284F98 00280BF8 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80284F9C 00280BFC C1 06 00 08 */ lfs f8, 8(r6)
/* 80284FA0 00280C00 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284FA4 00280C04 C0 E6 00 0C */ lfs f7, 0xc(r6)
/* 80284FA8 00280C08 D0 C3 80 00 */ stfs f6, -0x8000(r3)
/* 80284FAC 00280C0C C0 C6 00 10 */ lfs f6, 0x10(r6)
/* 80284FB0 00280C10 D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80284FB4 00280C14 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284FB8 00280C18 C0 26 00 14 */ lfs f1, 0x14(r6)
/* 80284FBC 00280C1C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284FC0 00280C20 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284FC4 00280C24 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284FC8 00280C28 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 80284FCC 00280C2C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284FD0 00280C30 D1 03 80 00 */ stfs f8, -0x8000(r3)
/* 80284FD4 00280C34 D0 A3 80 00 */ stfs f5, -0x8000(r3)
/* 80284FD8 00280C38 D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80284FDC 00280C3C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284FE0 00280C40 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284FE4 00280C44 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80284FE8 00280C48 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284FEC 00280C4C C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 80284FF0 00280C50 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80284FF4 00280C54 D0 E3 80 00 */ stfs f7, -0x8000(r3)
/* 80284FF8 00280C58 D0 83 80 00 */ stfs f4, -0x8000(r3)
/* 80284FFC 00280C5C D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80285000 00280C60 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285004 00280C64 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285008 00280C68 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 8028500C 00280C6C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285010 00280C70 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 80285014 00280C74 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285018 00280C78 D0 C3 80 00 */ stfs f6, -0x8000(r3)
/* 8028501C 00280C7C D0 63 80 00 */ stfs f3, -0x8000(r3)
/* 80285020 00280C80 D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80285024 00280C84 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285028 00280C88 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 8028502C 00280C8C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285030 00280C90 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285034 00280C94 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 80285038 00280C98 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 8028503C 00280C9C D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80285040 00280CA0 D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 80285044 00280CA4 D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80285048 00280CA8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 8028504C 00280CAC D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285050 00280CB0 C0 22 A1 DC */ lfs f1, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285054 00280CB4 39 08 00 08 */ addi r8, r8, 8
/* 80285058 00280CB8 C0 05 00 18 */ lfs f0, 0x18(r5)
/* 8028505C 00280CBC D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80285060 00280CC0 C0 22 A1 D0 */ lfs f1, lbl_806427D0-_SDA2_BASE_(r2)
/* 80285064 00280CC4 FC 40 00 50 */ fneg f2, f0
/* 80285068 00280CC8 C0 66 00 18 */ lfs f3, 0x18(r6)
/* 8028506C 00280CCC D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80285070 00280CD0 C0 05 00 1C */ lfs f0, 0x1c(r5)
/* 80285074 00280CD4 38 A5 00 20 */ addi r5, r5, 0x20
/* 80285078 00280CD8 D0 63 80 00 */ stfs f3, -0x8000(r3)
/* 8028507C 00280CDC C0 66 00 1C */ lfs f3, 0x1c(r6)
/* 80285080 00280CE0 FC 20 00 50 */ fneg f1, f0
/* 80285084 00280CE4 D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 80285088 00280CE8 38 C6 00 20 */ addi r6, r6, 0x20
/* 8028508C 00280CEC D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 80285090 00280CF0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285094 00280CF4 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285098 00280CF8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 8028509C 00280CFC D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802850A0 00280D00 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 802850A4 00280D04 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802850A8 00280D08 D0 63 80 00 */ stfs f3, -0x8000(r3)
/* 802850AC 00280D0C D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 802850B0 00280D10 D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 802850B4 00280D14 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802850B8 00280D18 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802850BC 00280D1C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802850C0 00280D20 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802850C4 00280D24 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 802850C8 00280D28 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802850CC 00280D2C 42 00 FE 74 */ bdnz lbl_80284F40
lbl_802850D0:
/* 802850D0 00280D30 38 1E 00 01 */ addi r0, r30, 1
/* 802850D4 00280D34 55 06 10 3A */ slwi r6, r8, 2
/* 802850D8 00280D38 38 81 00 08 */ addi r4, r1, 8
/* 802850DC 00280D3C 38 A1 01 98 */ addi r5, r1, 0x198
/* 802850E0 00280D40 7C 08 00 50 */ subf r0, r8, r0
/* 802850E4 00280D44 3C 60 CC 01 */ lis r3, 0xcc01
/* 802850E8 00280D48 7C 84 32 14 */ add r4, r4, r6
/* 802850EC 00280D4C 7C A5 32 14 */ add r5, r5, r6
/* 802850F0 00280D50 7C 09 03 A6 */ mtctr r0
/* 802850F4 00280D54 7C 08 F0 00 */ cmpw r8, r30
/* 802850F8 00280D58 41 81 00 40 */ bgt lbl_80285138
lbl_802850FC:
/* 802850FC 00280D5C C0 04 00 00 */ lfs f0, 0(r4)
/* 80285100 00280D60 38 84 00 04 */ addi r4, r4, 4
/* 80285104 00280D64 C0 25 00 00 */ lfs f1, 0(r5)
/* 80285108 00280D68 38 A5 00 04 */ addi r5, r5, 4
/* 8028510C 00280D6C FC 00 00 50 */ fneg f0, f0
/* 80285110 00280D70 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80285114 00280D74 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285118 00280D78 D3 E3 80 00 */ stfs f31, -0x8000(r3)
/* 8028511C 00280D7C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285120 00280D80 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285124 00280D84 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285128 00280D88 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 8028512C 00280D8C C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 80285130 00280D90 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285134 00280D94 42 00 FF C8 */ bdnz lbl_802850FC
lbl_80285138:
/* 80285138 00280D98 57 E5 04 3E */ clrlwi r5, r31, 0x10
/* 8028513C 00280D9C 38 60 00 A0 */ li r3, 0xa0
/* 80285140 00280DA0 38 80 00 03 */ li r4, 3
/* 80285144 00280DA4 4B FF C0 05 */ bl GXBegin
/* 80285148 00280DA8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 8028514C 00280DAC 3C 60 CC 01 */ lis r3, 0xCC008000@ha
/* 80285150 00280DB0 2C 9E 00 00 */ cmpwi cr1, r30, 0
/* 80285154 00280DB4 39 00 00 00 */ li r8, 0
/* 80285158 00280DB8 D0 03 80 00 */ stfs f0, 0xCC008000@l(r3)
/* 8028515C 00280DBC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285160 00280DC0 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285164 00280DC4 D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 80285168 00280DC8 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 8028516C 00280DCC D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285170 00280DD0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285174 00280DD4 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285178 00280DD8 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 8028517C 00280DDC D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285180 00280DE0 41 84 02 5C */ blt cr1, lbl_802853DC
/* 80285184 00280DE4 38 FE 00 01 */ addi r7, r30, 1
/* 80285188 00280DE8 38 9E FF F8 */ addi r4, r30, -8
/* 8028518C 00280DEC 2C 07 00 08 */ cmpwi r7, 8
/* 80285190 00280DF0 40 81 01 E8 */ ble lbl_80285378
/* 80285194 00280DF4 38 A0 00 00 */ li r5, 0
/* 80285198 00280DF8 38 C0 00 00 */ li r6, 0
/* 8028519C 00280DFC 41 84 00 18 */ blt cr1, lbl_802851B4
/* 802851A0 00280E00 3C 60 80 00 */ lis r3, 0x7FFFFFFE@ha
/* 802851A4 00280E04 38 03 FF FE */ addi r0, r3, 0x7FFFFFFE@l
/* 802851A8 00280E08 7C 1E 00 00 */ cmpw r30, r0
/* 802851AC 00280E0C 41 81 00 08 */ bgt lbl_802851B4
/* 802851B0 00280E10 38 C0 00 01 */ li r6, 1
lbl_802851B4:
/* 802851B4 00280E14 2C 06 00 00 */ cmpwi r6, 0
/* 802851B8 00280E18 41 82 00 28 */ beq lbl_802851E0
/* 802851BC 00280E1C 57 C0 00 01 */ rlwinm. r0, r30, 0, 0, 0
/* 802851C0 00280E20 38 60 00 01 */ li r3, 1
/* 802851C4 00280E24 40 82 00 10 */ bne lbl_802851D4
/* 802851C8 00280E28 54 E0 00 01 */ rlwinm. r0, r7, 0, 0, 0
/* 802851CC 00280E2C 41 82 00 08 */ beq lbl_802851D4
/* 802851D0 00280E30 38 60 00 00 */ li r3, 0
lbl_802851D4:
/* 802851D4 00280E34 2C 03 00 00 */ cmpwi r3, 0
/* 802851D8 00280E38 41 82 00 08 */ beq lbl_802851E0
/* 802851DC 00280E3C 38 A0 00 01 */ li r5, 1
lbl_802851E0:
/* 802851E0 00280E40 2C 05 00 00 */ cmpwi r5, 0
/* 802851E4 00280E44 41 82 01 94 */ beq lbl_80285378
/* 802851E8 00280E48 38 04 00 08 */ addi r0, r4, 8
/* 802851EC 00280E4C 38 A1 00 08 */ addi r5, r1, 8
/* 802851F0 00280E50 54 00 E8 FE */ srwi r0, r0, 3
/* 802851F4 00280E54 38 C1 01 98 */ addi r6, r1, 0x198
/* 802851F8 00280E58 3C 60 CC 01 */ lis r3, 0xcc01
/* 802851FC 00280E5C 7C 09 03 A6 */ mtctr r0
/* 80285200 00280E60 2C 04 00 00 */ cmpwi r4, 0
/* 80285204 00280E64 41 80 01 74 */ blt lbl_80285378
lbl_80285208:
/* 80285208 00280E68 C0 06 00 00 */ lfs f0, 0(r6)
/* 8028520C 00280E6C C0 25 00 00 */ lfs f1, 0(r5)
/* 80285210 00280E70 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285214 00280E74 C0 46 00 04 */ lfs f2, 4(r6)
/* 80285218 00280E78 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 8028521C 00280E7C C0 25 00 04 */ lfs f1, 4(r5)
/* 80285220 00280E80 D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 80285224 00280E84 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285228 00280E88 C1 06 00 08 */ lfs f8, 8(r6)
/* 8028522C 00280E8C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285230 00280E90 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285234 00280E94 C0 85 00 08 */ lfs f4, 8(r5)
/* 80285238 00280E98 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 8028523C 00280E9C C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 80285240 00280EA0 C0 E6 00 0C */ lfs f7, 0xc(r6)
/* 80285244 00280EA4 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285248 00280EA8 C0 65 00 0C */ lfs f3, 0xc(r5)
/* 8028524C 00280EAC D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 80285250 00280EB0 C0 C6 00 10 */ lfs f6, 0x10(r6)
/* 80285254 00280EB4 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80285258 00280EB8 C0 45 00 10 */ lfs f2, 0x10(r5)
/* 8028525C 00280EBC D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 80285260 00280EC0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285264 00280EC4 C0 A6 00 14 */ lfs f5, 0x14(r6)
/* 80285268 00280EC8 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 8028526C 00280ECC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285270 00280ED0 C0 25 00 14 */ lfs f1, 0x14(r5)
/* 80285274 00280ED4 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285278 00280ED8 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 8028527C 00280EDC D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285280 00280EE0 D1 03 80 00 */ stfs f8, -0x8000(r3)
/* 80285284 00280EE4 D0 83 80 00 */ stfs f4, -0x8000(r3)
/* 80285288 00280EE8 D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 8028528C 00280EEC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285290 00280EF0 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285294 00280EF4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285298 00280EF8 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 8028529C 00280EFC C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 802852A0 00280F00 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802852A4 00280F04 D0 E3 80 00 */ stfs f7, -0x8000(r3)
/* 802852A8 00280F08 D0 63 80 00 */ stfs f3, -0x8000(r3)
/* 802852AC 00280F0C D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 802852B0 00280F10 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802852B4 00280F14 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802852B8 00280F18 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802852BC 00280F1C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802852C0 00280F20 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 802852C4 00280F24 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802852C8 00280F28 D0 C3 80 00 */ stfs f6, -0x8000(r3)
/* 802852CC 00280F2C D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 802852D0 00280F30 D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 802852D4 00280F34 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802852D8 00280F38 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802852DC 00280F3C C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802852E0 00280F40 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802852E4 00280F44 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 802852E8 00280F48 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802852EC 00280F4C D0 A3 80 00 */ stfs f5, -0x8000(r3)
/* 802852F0 00280F50 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 802852F4 00280F54 D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 802852F8 00280F58 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802852FC 00280F5C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285300 00280F60 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285304 00280F64 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285308 00280F68 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 8028530C 00280F6C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285310 00280F70 C0 06 00 18 */ lfs f0, 0x18(r6)
/* 80285314 00280F74 39 08 00 08 */ addi r8, r8, 8
/* 80285318 00280F78 C0 46 00 1C */ lfs f2, 0x1c(r6)
/* 8028531C 00280F7C 38 C6 00 20 */ addi r6, r6, 0x20
/* 80285320 00280F80 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285324 00280F84 C0 05 00 18 */ lfs f0, 0x18(r5)
/* 80285328 00280F88 C0 25 00 1C */ lfs f1, 0x1c(r5)
/* 8028532C 00280F8C 38 A5 00 20 */ addi r5, r5, 0x20
/* 80285330 00280F90 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285334 00280F94 D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 80285338 00280F98 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 8028533C 00280F9C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285340 00280FA0 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285344 00280FA4 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285348 00280FA8 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 8028534C 00280FAC D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285350 00280FB0 D0 43 80 00 */ stfs f2, -0x8000(r3)
/* 80285354 00280FB4 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 80285358 00280FB8 D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 8028535C 00280FBC C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285360 00280FC0 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285364 00280FC4 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 80285368 00280FC8 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 8028536C 00280FCC C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 80285370 00280FD0 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 80285374 00280FD4 42 00 FE 94 */ bdnz lbl_80285208
lbl_80285378:
/* 80285378 00280FD8 38 1E 00 01 */ addi r0, r30, 1
/* 8028537C 00280FDC 55 06 10 3A */ slwi r6, r8, 2
/* 80285380 00280FE0 38 81 00 08 */ addi r4, r1, 8
/* 80285384 00280FE4 38 A1 01 98 */ addi r5, r1, 0x198
/* 80285388 00280FE8 7C 08 00 50 */ subf r0, r8, r0
/* 8028538C 00280FEC 3C 60 CC 01 */ lis r3, 0xcc01
/* 80285390 00280FF0 7C 84 32 14 */ add r4, r4, r6
/* 80285394 00280FF4 7C A5 32 14 */ add r5, r5, r6
/* 80285398 00280FF8 7C 09 03 A6 */ mtctr r0
/* 8028539C 00280FFC 7C 08 F0 00 */ cmpw r8, r30
/* 802853A0 00281000 41 81 00 3C */ bgt lbl_802853DC
lbl_802853A4:
/* 802853A4 00281004 C0 25 00 00 */ lfs f1, 0(r5)
/* 802853A8 00281008 38 A5 00 04 */ addi r5, r5, 4
/* 802853AC 0028100C C0 04 00 00 */ lfs f0, 0(r4)
/* 802853B0 00281010 38 84 00 04 */ addi r4, r4, 4
/* 802853B4 00281014 D0 23 80 00 */ stfs f1, -0x8000(r3)
/* 802853B8 00281018 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802853BC 0028101C D3 C3 80 00 */ stfs f30, -0x8000(r3)
/* 802853C0 00281020 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802853C4 00281024 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802853C8 00281028 C0 02 A1 DC */ lfs f0, lbl_806427DC-_SDA2_BASE_(r2)
/* 802853CC 0028102C D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802853D0 00281030 C0 02 A1 E0 */ lfs f0, lbl_806427E0-_SDA2_BASE_(r2)
/* 802853D4 00281034 D0 03 80 00 */ stfs f0, -0x8000(r3)
/* 802853D8 00281038 42 00 FF CC */ bdnz lbl_802853A4
lbl_802853DC:
/* 802853DC 0028103C 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
/* 802853E0 00281040 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
/* 802853E4 00281044 4B FF A2 75 */ bl GXSetVtxDescv
/* 802853E8 00281048 3C 80 80 51 */ lis r4, lbl_805160D0@ha
/* 802853EC 0028104C 38 60 00 03 */ li r3, 3
/* 802853F0 00281050 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
/* 802853F4 00281054 4B FF AA 65 */ bl GXSetVtxAttrFmtv
/* 802853F8 00281058 E3 E1 03 B8 */ psq_l f31, 952(r1), 0, qr0
/* 802853FC 0028105C CB E1 03 B0 */ lfd f31, 0x3b0(r1)
/* 80285400 00281060 E3 C1 03 A8 */ psq_l f30, 936(r1), 0, qr0
/* 80285404 00281064 CB C1 03 A0 */ lfd f30, 0x3a0(r1)
/* 80285408 00281068 E3 A1 03 98 */ psq_l f29, 920(r1), 0, qr0
/* 8028540C 0028106C CB A1 03 90 */ lfd f29, 0x390(r1)
/* 80285410 00281070 E3 81 03 88 */ psq_l f28, 904(r1), 0, qr0
/* 80285414 00281074 CB 81 03 80 */ lfd f28, 0x380(r1)
/* 80285418 00281078 E3 61 03 78 */ psq_l f27, 888(r1), 0, qr0
/* 8028541C 0028107C CB 61 03 70 */ lfd f27, 0x370(r1)
/* 80285420 00281080 E3 41 03 68 */ psq_l f26, 872(r1), 0, qr0
/* 80285424 00281084 CB 41 03 60 */ lfd f26, 0x360(r1)
/* 80285428 00281088 E3 21 03 58 */ psq_l f25, 856(r1), 0, qr0
/* 8028542C 0028108C 39 61 03 50 */ addi r11, r1, 0x350
/* 80285430 00281090 CB 21 03 50 */ lfd f25, 0x350(r1)
/* 80285434 00281094 4B F4 1D 41 */ bl _restgpr_27
/* 80285438 00281098 80 01 03 C4 */ lwz r0, 0x3c4(r1)
/* 8028543C 0028109C 7C 08 03 A6 */ mtlr r0
/* 80285440 002810A0 38 21 03 C0 */ addi r1, r1, 0x3c0
/* 80285444 002810A4 4E 80 00 20 */ blr
.global func_80285448
func_80285448:
/* 80285448 002810A8 94 21 FF 20 */ stwu r1, -0xe0(r1)
/* 8028544C 002810AC 7C 08 02 A6 */ mflr r0
/* 80285450 002810B0 90 01 00 E4 */ stw r0, 0xe4(r1)
/* 80285454 002810B4 DB E1 00 D0 */ stfd f31, 0xd0(r1)
/* 80285458 002810B8 F3 E1 00 D8 */ psq_st f31, 216(r1), 0, qr0
/* 8028545C 002810BC DB C1 00 C0 */ stfd f30, 0xc0(r1)
/* 80285460 002810C0 F3 C1 00 C8 */ psq_st f30, 200(r1), 0, qr0
/* 80285464 002810C4 DB A1 00 B0 */ stfd f29, 0xb0(r1)
/* 80285468 002810C8 F3 A1 00 B8 */ psq_st f29, 184(r1), 0, qr0
/* 8028546C 002810CC DB 81 00 A0 */ stfd f28, 0xa0(r1)
/* 80285470 002810D0 F3 81 00 A8 */ psq_st f28, 168(r1), 0, qr0
/* 80285474 002810D4 DB 61 00 90 */ stfd f27, 0x90(r1)
/* 80285478 002810D8 F3 61 00 98 */ psq_st f27, 152(r1), 0, qr0
/* 8028547C 002810DC DB 41 00 80 */ stfd f26, 0x80(r1)
/* 80285480 002810E0 F3 41 00 88 */ psq_st f26, 136(r1), 0, qr0
/* 80285484 002810E4 DB 21 00 70 */ stfd f25, 0x70(r1)
/* 80285488 002810E8 F3 21 00 78 */ psq_st f25, 120(r1), 0, qr0
/* 8028548C 002810EC DB 01 00 60 */ stfd f24, 0x60(r1)
/* 80285490 002810F0 F3 01 00 68 */ psq_st f24, 104(r1), 0, qr0
/* 80285494 002810F4 DA E1 00 50 */ stfd f23, 0x50(r1)
/* 80285498 002810F8 F2 E1 00 58 */ psq_st f23, 88(r1), 0, qr0
/* 8028549C 002810FC 39 61 00 50 */ addi r11, r1, 0x50
/* 802854A0 00281100 4B F4 1C 75 */ bl _savegpr_22
/* 802854A4 00281104 C0 02 A1 D0 */ lfs f0, lbl_806427D0-_SDA2_BASE_(r2)
/* 802854A8 00281108 3C 00 43 30 */ lis r0, 0x4330
/* 802854AC 0028110C 7C 7B 1B 78 */ mr r27, r3
/* 802854B0 00281110 7C 9C 23 78 */ mr r28, r4
/* 802854B4 00281114 FF 00 08 90 */ fmr f24, f1
/* 802854B8 00281118 90 01 00 10 */ stw r0, 0x10(r1)
/* 802854BC 0028111C EF 20 08 28 */ fsubs f25, f0, f1
/* 802854C0 00281120 C3 42 A1 F8 */ lfs f26, lbl_806427F8-_SDA2_BASE_(r2)
/* 802854C4 00281124 90 01 00 18 */ stw r0, 0x18(r1)
/* 802854C8 00281128 38 81 00 08 */ addi r4, r1, 8
/* 802854CC 0028112C 38 60 00 0D */ li r3, 0xd
/* 802854D0 00281130 4B FF A5 71 */ bl GXGetVtxDesc
/* 802854D4 00281134 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
/* 802854D8 00281138 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
/* 802854DC 0028113C 4B FF A7 19 */ bl GXGetVtxDescv
/* 802854E0 00281140 3C 80 80 51 */ lis r4, lbl_805160D0@ha
/* 802854E4 00281144 38 60 00 03 */ li r3, 3
/* 802854E8 00281148 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
/* 802854EC 0028114C 4B FF AE 1D */ bl GXGetVtxAttrFmtv
/* 802854F0 00281150 4B FF A7 95 */ bl GXClearVtxDesc
/* 802854F4 00281154 38 60 00 09 */ li r3, 9
/* 802854F8 00281158 38 80 00 01 */ li r4, 1
/* 802854FC 0028115C 4B FF 9E F9 */ bl GXSetVtxDesc
/* 80285500 00281160 38 60 00 0A */ li r3, 0xa
/* 80285504 00281164 38 80 00 01 */ li r4, 1
/* 80285508 00281168 4B FF 9E ED */ bl GXSetVtxDesc
/* 8028550C 0028116C 38 60 00 03 */ li r3, 3
/* 80285510 00281170 38 80 00 09 */ li r4, 9
/* 80285514 00281174 38 A0 00 01 */ li r5, 1
/* 80285518 00281178 38 C0 00 04 */ li r6, 4
/* 8028551C 0028117C 38 E0 00 00 */ li r7, 0
/* 80285520 00281180 4B FF A7 99 */ bl GXSetVtxAttrFmt
/* 80285524 00281184 38 60 00 03 */ li r3, 3
/* 80285528 00281188 38 80 00 0A */ li r4, 0xa
/* 8028552C 0028118C 38 A0 00 00 */ li r5, 0
/* 80285530 00281190 38 C0 00 04 */ li r6, 4
/* 80285534 00281194 38 E0 00 00 */ li r7, 0
/* 80285538 00281198 4B FF A7 81 */ bl GXSetVtxAttrFmt
/* 8028553C 0028119C 80 01 00 08 */ lwz r0, 8(r1)
/* 80285540 002811A0 2C 00 00 00 */ cmpwi r0, 0
/* 80285544 002811A4 41 82 00 28 */ beq lbl_8028556C
/* 80285548 002811A8 38 60 00 0D */ li r3, 0xd
/* 8028554C 002811AC 38 80 00 01 */ li r4, 1
/* 80285550 002811B0 4B FF 9E A5 */ bl GXSetVtxDesc
/* 80285554 002811B4 38 60 00 03 */ li r3, 3
/* 80285558 002811B8 38 80 00 0D */ li r4, 0xd
/* 8028555C 002811BC 38 A0 00 01 */ li r5, 1
/* 80285560 002811C0 38 C0 00 04 */ li r6, 4
/* 80285564 002811C4 38 E0 00 00 */ li r7, 0
/* 80285568 002811C8 4B FF A7 51 */ bl GXSetVtxAttrFmt
lbl_8028556C:
/* 8028556C 002811CC 38 1C 00 01 */ addi r0, r28, 1
/* 80285570 002811D0 CB C2 A1 E8 */ lfd f30, lbl_806427E8-_SDA2_BASE_(r2)
/* 80285574 002811D4 CB E2 A1 F0 */ lfd f31, lbl_806427F0-_SDA2_BASE_(r2)
/* 80285578 002811D8 54 18 08 3C */ slwi r24, r0, 1
/* 8028557C 002811DC 3B E0 00 00 */ li r31, 0
/* 80285580 002811E0 3F 40 CC 01 */ lis r26, 0xcc01
/* 80285584 002811E4 48 00 02 24 */ b lbl_802857A8
lbl_80285588:
/* 80285588 002811E8 57 05 04 3E */ clrlwi r5, r24, 0x10
/* 8028558C 002811EC 38 60 00 98 */ li r3, 0x98
/* 80285590 002811F0 38 80 00 03 */ li r4, 3
/* 80285594 002811F4 4B FF BB B5 */ bl GXBegin
/* 80285598 002811F8 82 E1 00 08 */ lwz r23, 8(r1)
/* 8028559C 002811FC 3B C0 00 00 */ li r30, 0
/* 802855A0 00281200 48 00 01 FC */ b lbl_8028579C
lbl_802855A4:
/* 802855A4 00281204 7C 1E E3 D6 */ divw r0, r30, r28
/* 802855A8 00281208 3B A0 00 01 */ li r29, 1
/* 802855AC 0028120C 7C 00 E1 D6 */ mullw r0, r0, r28
/* 802855B0 00281210 7C 00 F0 50 */ subf r0, r0, r30
/* 802855B4 00281214 6C 19 80 00 */ xoris r25, r0, 0x8000
lbl_802855B8:
/* 802855B8 00281218 7E DF EA 14 */ add r22, r31, r29
/* 802855BC 0028121C 93 21 00 1C */ stw r25, 0x1c(r1)
/* 802855C0 00281220 7C 16 DB D6 */ divw r0, r22, r27
/* 802855C4 00281224 C8 01 00 18 */ lfd f0, 0x18(r1)
/* 802855C8 00281228 EF 60 F0 28 */ fsubs f27, f0, f30
/* 802855CC 0028122C EC 3B 06 B2 */ fmuls f1, f27, f26
/* 802855D0 00281230 7C 00 D9 D6 */ mullw r0, r0, r27
/* 802855D4 00281234 7C 00 B0 50 */ subf r0, r0, r22
/* 802855D8 00281238 6C 00 80 00 */ xoris r0, r0, 0x8000
/* 802855DC 0028123C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802855E0 00281240 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 802855E4 00281244 93 81 00 14 */ stw r28, 0x14(r1)
/* 802855E8 00281248 EF 80 F0 28 */ fsubs f28, f0, f30
/* 802855EC 0028124C C8 01 00 10 */ lfd f0, 0x10(r1)
/* 802855F0 00281250 EC 00 F8 28 */ fsubs f0, f0, f31
/* 802855F4 00281254 EC 21 00 24 */ fdivs f1, f1, f0
/* 802855F8 00281258 4B F4 EA 81 */ bl cos
/* 802855FC 0028125C 93 61 00 1C */ stw r27, 0x1c(r1)
/* 80285600 00281260 EC 5C 06 B2 */ fmuls f2, f28, f26
/* 80285604 00281264 FF A0 08 18 */ frsp f29, f1
/* 80285608 00281268 C8 01 00 18 */ lfd f0, 0x18(r1)
/* 8028560C 0028126C EC 00 F8 28 */ fsubs f0, f0, f31
/* 80285610 00281270 EC 22 00 24 */ fdivs f1, f2, f0
/* 80285614 00281274 4B F4 EA 65 */ bl cos
/* 80285618 00281278 93 81 00 14 */ stw r28, 0x14(r1)
/* 8028561C 0028127C FC 40 08 18 */ frsp f2, f1
/* 80285620 00281280 EC 3B 06 B2 */ fmuls f1, f27, f26
/* 80285624 00281284 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 80285628 00281288 EC 58 00 B2 */ fmuls f2, f24, f2
/* 8028562C 0028128C EC 00 F8 28 */ fsubs f0, f0, f31
/* 80285630 00281290 EC 59 10 28 */ fsubs f2, f25, f2
/* 80285634 00281294 EC 21 00 24 */ fdivs f1, f1, f0
/* 80285638 00281298 EF A2 07 72 */ fmuls f29, f2, f29
/* 8028563C 0028129C 4B F4 EE 49 */ bl sin
/* 80285640 002812A0 93 61 00 1C */ stw r27, 0x1c(r1)
/* 80285644 002812A4 EC 5C 06 B2 */ fmuls f2, f28, f26
/* 80285648 002812A8 FE E0 08 18 */ frsp f23, f1
/* 8028564C 002812AC C8 01 00 18 */ lfd f0, 0x18(r1)
/* 80285650 002812B0 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80285654 002812B4 EC 22 00 24 */ fdivs f1, f2, f0
/* 80285658 002812B8 4B F4 EA 21 */ bl cos
/* 8028565C 002812BC 93 61 00 14 */ stw r27, 0x14(r1)
/* 80285660 002812C0 FC 40 08 18 */ frsp f2, f1
/* 80285664 002812C4 EC 3C 06 B2 */ fmuls f1, f28, f26
/* 80285668 002812C8 C8 01 00 10 */ lfd f0, 0x10(r1)
/* 8028566C 002812CC EC 58 00 B2 */ fmuls f2, f24, f2
/* 80285670 002812D0 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80285674 002812D4 EC 59 10 28 */ fsubs f2, f25, f2
/* 80285678 002812D8 EC 21 00 24 */ fdivs f1, f1, f0
/* 8028567C 002812DC EE E2 05 F2 */ fmuls f23, f2, f23
/* 80285680 002812E0 4B F4 EE 05 */ bl sin
/* 80285684 002812E4 93 61 00 1C */ stw r27, 0x1c(r1)
/* 80285688 002812E8 FC 40 08 18 */ frsp f2, f1
/* 8028568C 002812EC EC 3C 06 B2 */ fmuls f1, f28, f26
/* 80285690 002812F0 C8 01 00 18 */ lfd f0, 0x18(r1)
/* 80285694 002812F4 D3 BA 80 00 */ stfs f29, -0x8000(r26)
/* 80285698 002812F8 EC 58 00 B2 */ fmuls f2, f24, f2
/* 8028569C 002812FC EC 00 F8 28 */ fsubs f0, f0, f31
/* 802856A0 00281300 D2 FA 80 00 */ stfs f23, -0x8000(r26)
/* 802856A4 00281304 EC 21 00 24 */ fdivs f1, f1, f0
/* 802856A8 00281308 D0 5A 80 00 */ stfs f2, -0x8000(r26)
/* 802856AC 0028130C 4B F4 E9 CD */ bl cos
/* 802856B0 00281310 93 81 00 14 */ stw r28, 0x14(r1)
/* 802856B4 00281314 EC 5B 06 B2 */ fmuls f2, f27, f26
/* 802856B8 00281318 FE E0 08 18 */ frsp f23, f1
/* 802856BC 0028131C C8 01 00 10 */ lfd f0, 0x10(r1)
/* 802856C0 00281320 EC 00 F8 28 */ fsubs f0, f0, f31
/* 802856C4 00281324 EC 22 00 24 */ fdivs f1, f2, f0
/* 802856C8 00281328 4B F4 E9 B1 */ bl cos
/* 802856CC 0028132C 93 61 00 1C */ stw r27, 0x1c(r1)
/* 802856D0 00281330 FC 40 08 18 */ frsp f2, f1
/* 802856D4 00281334 EC 3C 06 B2 */ fmuls f1, f28, f26
/* 802856D8 00281338 C8 01 00 18 */ lfd f0, 0x18(r1)
/* 802856DC 0028133C FC 40 10 50 */ fneg f2, f2
/* 802856E0 00281340 EC 00 F8 28 */ fsubs f0, f0, f31
/* 802856E4 00281344 EF A2 05 F2 */ fmuls f29, f2, f23
/* 802856E8 00281348 EC 21 00 24 */ fdivs f1, f1, f0
/* 802856EC 0028134C 4B F4 E9 8D */ bl cos
/* 802856F0 00281350 93 81 00 14 */ stw r28, 0x14(r1)
/* 802856F4 00281354 EC 5B 06 B2 */ fmuls f2, f27, f26
/* 802856F8 00281358 FE E0 08 18 */ frsp f23, f1
/* 802856FC 0028135C C8 01 00 10 */ lfd f0, 0x10(r1)
/* 80285700 00281360 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80285704 00281364 EC 22 00 24 */ fdivs f1, f2, f0
/* 80285708 00281368 4B F4 ED 7D */ bl sin
/* 8028570C 0028136C 93 61 00 1C */ stw r27, 0x1c(r1)
/* 80285710 00281370 FC 40 08 18 */ frsp f2, f1
/* 80285714 00281374 EC 3C 06 B2 */ fmuls f1, f28, f26
/* 80285718 00281378 C8 01 00 18 */ lfd f0, 0x18(r1)
/* 8028571C 0028137C FC 40 10 50 */ fneg f2, f2
/* 80285720 00281380 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80285724 00281384 EE E2 05 F2 */ fmuls f23, f2, f23
/* 80285728 00281388 EC 21 00 24 */ fdivs f1, f1, f0
/* 8028572C 0028138C 4B F4 ED 59 */ bl sin
/* 80285730 00281390 D3 BA 80 00 */ stfs f29, -0x8000(r26)
/* 80285734 00281394 FC 00 08 18 */ frsp f0, f1
/* 80285738 00281398 2C 17 00 00 */ cmpwi r23, 0
/* 8028573C 0028139C D2 FA 80 00 */ stfs f23, -0x8000(r26)
/* 80285740 002813A0 D0 1A 80 00 */ stfs f0, -0x8000(r26)
/* 80285744 002813A4 41 82 00 4C */ beq lbl_80285790
/* 80285748 002813A8 6E C3 80 00 */ xoris r3, r22, 0x8000
/* 8028574C 002813AC 93 61 00 1C */ stw r27, 0x1c(r1)
/* 80285750 002813B0 6F C0 80 00 */ xoris r0, r30, 0x8000
/* 80285754 002813B4 90 61 00 14 */ stw r3, 0x14(r1)
/* 80285758 002813B8 C8 01 00 18 */ lfd f0, 0x18(r1)
/* 8028575C 002813BC C8 21 00 10 */ lfd f1, 0x10(r1)
/* 80285760 002813C0 93 81 00 1C */ stw r28, 0x1c(r1)
/* 80285764 002813C4 EC 40 F8 28 */ fsubs f2, f0, f31
/* 80285768 002813C8 EC 61 F0 28 */ fsubs f3, f1, f30
/* 8028576C 002813CC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80285770 002813D0 C8 01 00 18 */ lfd f0, 0x18(r1)
/* 80285774 002813D4 C8 21 00 10 */ lfd f1, 0x10(r1)
/* 80285778 002813D8 EC 43 10 24 */ fdivs f2, f3, f2
/* 8028577C 002813DC EC 21 F0 28 */ fsubs f1, f1, f30
/* 80285780 002813E0 D0 5A 80 00 */ stfs f2, -0x8000(r26)
/* 80285784 002813E4 EC 00 F8 28 */ fsubs f0, f0, f31
/* 80285788 002813E8 EC 01 00 24 */ fdivs f0, f1, f0
/* 8028578C 002813EC D0 1A 80 00 */ stfs f0, -0x8000(r26)
lbl_80285790:
/* 80285790 002813F0 37 BD FF FF */ addic. r29, r29, -1
/* 80285794 002813F4 40 80 FE 24 */ bge lbl_802855B8
/* 80285798 002813F8 3B DE 00 01 */ addi r30, r30, 1
lbl_8028579C:
/* 8028579C 002813FC 7C 1E E0 00 */ cmpw r30, r28
/* 802857A0 00281400 40 81 FE 04 */ ble lbl_802855A4
/* 802857A4 00281404 3B FF 00 01 */ addi r31, r31, 1
lbl_802857A8:
/* 802857A8 00281408 7C 1F D8 00 */ cmpw r31, r27
/* 802857AC 0028140C 41 80 FD DC */ blt lbl_80285588
/* 802857B0 00281410 3C 60 80 51 */ lis r3, lbl_80515FF8@ha
/* 802857B4 00281414 38 63 5F F8 */ addi r3, r3, lbl_80515FF8@l
/* 802857B8 00281418 4B FF 9E A1 */ bl GXSetVtxDescv
/* 802857BC 0028141C 3C 80 80 51 */ lis r4, lbl_805160D0@ha
/* 802857C0 00281420 38 60 00 03 */ li r3, 3
/* 802857C4 00281424 38 84 60 D0 */ addi r4, r4, lbl_805160D0@l
/* 802857C8 00281428 4B FF A6 91 */ bl GXSetVtxAttrFmtv
/* 802857CC 0028142C E3 E1 00 D8 */ psq_l f31, 216(r1), 0, qr0
/* 802857D0 00281430 CB E1 00 D0 */ lfd f31, 0xd0(r1)
/* 802857D4 00281434 E3 C1 00 C8 */ psq_l f30, 200(r1), 0, qr0
/* 802857D8 00281438 CB C1 00 C0 */ lfd f30, 0xc0(r1)
/* 802857DC 0028143C E3 A1 00 B8 */ psq_l f29, 184(r1), 0, qr0
/* 802857E0 00281440 CB A1 00 B0 */ lfd f29, 0xb0(r1)
/* 802857E4 00281444 E3 81 00 A8 */ psq_l f28, 168(r1), 0, qr0
/* 802857E8 00281448 CB 81 00 A0 */ lfd f28, 0xa0(r1)
/* 802857EC 0028144C E3 61 00 98 */ psq_l f27, 152(r1), 0, qr0
/* 802857F0 00281450 CB 61 00 90 */ lfd f27, 0x90(r1)
/* 802857F4 00281454 E3 41 00 88 */ psq_l f26, 136(r1), 0, qr0
/* 802857F8 00281458 CB 41 00 80 */ lfd f26, 0x80(r1)
/* 802857FC 0028145C E3 21 00 78 */ psq_l f25, 120(r1), 0, qr0
/* 80285800 00281460 CB 21 00 70 */ lfd f25, 0x70(r1)
/* 80285804 00281464 E3 01 00 68 */ psq_l f24, 104(r1), 0, qr0
/* 80285808 00281468 CB 01 00 60 */ lfd f24, 0x60(r1)
/* 8028580C 0028146C E2 E1 00 58 */ psq_l f23, 88(r1), 0, qr0
/* 80285810 00281470 39 61 00 50 */ addi r11, r1, 0x50
/* 80285814 00281474 CA E1 00 50 */ lfd f23, 0x50(r1)
/* 80285818 00281478 4B F4 19 49 */ bl _restgpr_22
/* 8028581C 0028147C 80 01 00 E4 */ lwz r0, 0xe4(r1)
/* 80285820 00281480 7C 08 03 A6 */ mtlr r0
/* 80285824 00281484 38 21 00 E0 */ addi r1, r1, 0xe0
/* 80285828 00281488 4E 80 00 20 */ blr
|