1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
|
.include "macros.inc"
.section .text, "ax" # 0x80006980 - 0x803E1E60
lbl_80245C60:
/* 80245C60 002418C0 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80245C64 002418C4 7C 08 02 A6 */ mflr r0
/* 80245C68 002418C8 90 01 00 14 */ stw r0, 0x14(r1)
/* 80245C6C 002418CC 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80245C70 002418D0 7C 7F 1B 78 */ mr r31, r3
/* 80245C74 002418D4 7C 83 23 78 */ mr r3, r4
/* 80245C78 002418D8 48 00 16 FD */ bl func_80247374
/* 80245C7C 002418DC 2C 03 00 00 */ cmpwi r3, 0
/* 80245C80 002418E0 41 82 00 20 */ beq lbl_80245CA0
/* 80245C84 002418E4 2C 1F 00 00 */ cmpwi r31, 0
/* 80245C88 002418E8 40 80 00 10 */ bge lbl_80245C98
/* 80245C8C 002418EC 38 80 FC 1E */ li r4, -994
/* 80245C90 002418F0 48 00 1B A5 */ bl func_80247834
/* 80245C94 002418F4 48 00 00 0C */ b lbl_80245CA0
lbl_80245C98:
/* 80245C98 002418F8 38 80 00 0B */ li r4, 0xb
/* 80245C9C 002418FC 48 00 1B 99 */ bl func_80247834
lbl_80245CA0:
/* 80245CA0 00241900 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80245CA4 00241904 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80245CA8 00241908 7C 08 03 A6 */ mtlr r0
/* 80245CAC 0024190C 38 21 00 10 */ addi r1, r1, 0x10
/* 80245CB0 00241910 4E 80 00 20 */ blr
.global func_80245CB4
func_80245CB4:
/* 80245CB4 00241914 80 0D A5 D4 */ lwz r0, lbl_8063F894-_SDA_BASE_(r13)
/* 80245CB8 00241918 80 8D A5 D0 */ lwz r4, lbl_8063F890-_SDA_BASE_(r13)
/* 80245CBC 0024191C 7C 09 03 A6 */ mtctr r0
/* 80245CC0 00241920 28 00 00 00 */ cmplwi r0, 0
/* 80245CC4 00241924 40 81 00 20 */ ble lbl_80245CE4
lbl_80245CC8:
/* 80245CC8 00241928 80 04 00 04 */ lwz r0, 4(r4)
/* 80245CCC 0024192C 7C 00 18 40 */ cmplw r0, r3
/* 80245CD0 00241930 40 82 00 0C */ bne lbl_80245CDC
/* 80245CD4 00241934 7C 83 23 78 */ mr r3, r4
/* 80245CD8 00241938 4E 80 00 20 */ blr
lbl_80245CDC:
/* 80245CDC 0024193C 38 84 00 10 */ addi r4, r4, 0x10
/* 80245CE0 00241940 42 00 FF E8 */ bdnz lbl_80245CC8
lbl_80245CE4:
/* 80245CE4 00241944 38 60 00 00 */ li r3, 0
/* 80245CE8 00241948 4E 80 00 20 */ blr
.global func_80245CEC
func_80245CEC:
/* 80245CEC 0024194C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80245CF0 00241950 7C 08 02 A6 */ mflr r0
/* 80245CF4 00241954 90 01 00 24 */ stw r0, 0x24(r1)
/* 80245CF8 00241958 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80245CFC 0024195C 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80245D00 00241960 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80245D04 00241964 7C 9D 23 78 */ mr r29, r4
/* 80245D08 00241968 93 81 00 10 */ stw r28, 0x10(r1)
/* 80245D0C 0024196C 7C 7C 1B 78 */ mr r28, r3
/* 80245D10 00241970 48 02 8A 4D */ bl OSDisableInterrupts
/* 80245D14 00241974 7C 7F 1B 78 */ mr r31, r3
/* 80245D18 00241978 48 00 19 E5 */ bl func_802476FC
/* 80245D1C 0024197C 2C 03 00 00 */ cmpwi r3, 0
/* 80245D20 00241980 7C 7E 1B 78 */ mr r30, r3
/* 80245D24 00241984 40 82 00 20 */ bne lbl_80245D44
/* 80245D28 00241988 7F A3 EB 78 */ mr r3, r29
/* 80245D2C 0024198C 38 80 00 04 */ li r4, 4
/* 80245D30 00241990 48 00 1B 45 */ bl func_80247874
/* 80245D34 00241994 7F E3 FB 78 */ mr r3, r31
/* 80245D38 00241998 48 02 8A 4D */ bl OSRestoreInterrupts
/* 80245D3C 0024199C 38 60 00 00 */ li r3, 0
/* 80245D40 002419A0 48 00 00 4C */ b lbl_80245D8C
lbl_80245D44:
/* 80245D44 002419A4 7F A3 EB 78 */ mr r3, r29
/* 80245D48 002419A8 38 80 00 01 */ li r4, 1
/* 80245D4C 002419AC 48 00 1B 29 */ bl func_80247874
/* 80245D50 002419B0 93 BE 00 10 */ stw r29, 0x10(r30)
/* 80245D54 002419B4 93 9E 00 0C */ stw r28, 0xc(r30)
/* 80245D58 002419B8 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 80245D5C 002419BC 54 00 00 01 */ rlwinm. r0, r0, 0, 0, 0
/* 80245D60 002419C0 41 82 00 10 */ beq lbl_80245D70
/* 80245D64 002419C4 38 00 00 01 */ li r0, 1
/* 80245D68 002419C8 98 1E 00 0A */ stb r0, 0xa(r30)
/* 80245D6C 002419CC 48 00 00 0C */ b lbl_80245D78
lbl_80245D70:
/* 80245D70 002419D0 38 00 00 00 */ li r0, 0
/* 80245D74 002419D4 98 1E 00 0A */ stb r0, 0xa(r30)
lbl_80245D78:
/* 80245D78 002419D8 7F C3 F3 78 */ mr r3, r30
/* 80245D7C 002419DC 48 00 1A 69 */ bl func_802477E4
/* 80245D80 002419E0 7F E3 FB 78 */ mr r3, r31
/* 80245D84 002419E4 48 02 8A 01 */ bl OSRestoreInterrupts
/* 80245D88 002419E8 38 60 00 01 */ li r3, 1
lbl_80245D8C:
/* 80245D8C 002419EC 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80245D90 002419F0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80245D94 002419F4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80245D98 002419F8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80245D9C 002419FC 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80245DA0 00241A00 7C 08 03 A6 */ mtlr r0
/* 80245DA4 00241A04 38 21 00 20 */ addi r1, r1, 0x20
/* 80245DA8 00241A08 4E 80 00 20 */ blr
.global func_80245DAC
func_80245DAC:
/* 80245DAC 00241A0C 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80245DB0 00241A10 7C 08 02 A6 */ mflr r0
/* 80245DB4 00241A14 90 01 00 14 */ stw r0, 0x14(r1)
/* 80245DB8 00241A18 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80245DBC 00241A1C 7C 7F 1B 78 */ mr r31, r3
/* 80245DC0 00241A20 48 00 00 F1 */ bl func_80245EB0
/* 80245DC4 00241A24 80 9F 00 28 */ lwz r4, 0x28(r31)
/* 80245DC8 00241A28 80 03 00 0C */ lwz r0, 0xc(r3)
/* 80245DCC 00241A2C 7C 04 00 40 */ cmplw r4, r0
/* 80245DD0 00241A30 41 80 00 0C */ blt lbl_80245DDC
/* 80245DD4 00241A34 38 60 00 00 */ li r3, 0
/* 80245DD8 00241A38 48 00 00 34 */ b lbl_80245E0C
lbl_80245DDC:
/* 80245DDC 00241A3C 7F E3 FB 78 */ mr r3, r31
/* 80245DE0 00241A40 48 00 01 01 */ bl func_80245EE0
/* 80245DE4 00241A44 2C 03 00 00 */ cmpwi r3, 0
/* 80245DE8 00241A48 7C 64 1B 78 */ mr r4, r3
/* 80245DEC 00241A4C 40 82 00 0C */ bne lbl_80245DF8
/* 80245DF0 00241A50 38 60 00 00 */ li r3, 0
/* 80245DF4 00241A54 48 00 00 18 */ b lbl_80245E0C
lbl_80245DF8:
/* 80245DF8 00241A58 80 BF 00 28 */ lwz r5, 0x28(r31)
/* 80245DFC 00241A5C 7F E3 FB 78 */ mr r3, r31
/* 80245E00 00241A60 38 05 00 01 */ addi r0, r5, 1
/* 80245E04 00241A64 90 1F 00 28 */ stw r0, 0x28(r31)
/* 80245E08 00241A68 4B FF FE E5 */ bl func_80245CEC
lbl_80245E0C:
/* 80245E0C 00241A6C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80245E10 00241A70 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80245E14 00241A74 7C 08 03 A6 */ mtlr r0
/* 80245E18 00241A78 38 21 00 10 */ addi r1, r1, 0x10
/* 80245E1C 00241A7C 4E 80 00 20 */ blr
.global func_80245E20
func_80245E20:
/* 80245E20 00241A80 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80245E24 00241A84 7C 08 02 A6 */ mflr r0
/* 80245E28 00241A88 90 01 00 24 */ stw r0, 0x24(r1)
/* 80245E2C 00241A8C 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80245E30 00241A90 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80245E34 00241A94 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80245E38 00241A98 7C 7D 1B 78 */ mr r29, r3
/* 80245E3C 00241A9C 48 00 00 75 */ bl func_80245EB0
/* 80245E40 00241AA0 7C 7F 1B 78 */ mr r31, r3
/* 80245E44 00241AA4 3B C0 00 00 */ li r30, 0
/* 80245E48 00241AA8 48 00 00 1C */ b lbl_80245E64
lbl_80245E4C:
/* 80245E4C 00241AAC 80 7D 00 00 */ lwz r3, 0(r29)
/* 80245E50 00241AB0 57 C4 04 3E */ clrlwi r4, r30, 0x10
/* 80245E54 00241AB4 4B FF FB B9 */ bl func_80245A0C
/* 80245E58 00241AB8 2C 03 00 00 */ cmpwi r3, 0
/* 80245E5C 00241ABC 41 82 00 18 */ beq lbl_80245E74
/* 80245E60 00241AC0 3B DE 00 01 */ addi r30, r30, 1
lbl_80245E64:
/* 80245E64 00241AC4 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80245E68 00241AC8 57 C3 04 3E */ clrlwi r3, r30, 0x10
/* 80245E6C 00241ACC 7C 03 00 40 */ cmplw r3, r0
/* 80245E70 00241AD0 41 80 FF DC */ blt lbl_80245E4C
lbl_80245E74:
/* 80245E74 00241AD4 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 80245E78 00241AD8 57 C3 04 3E */ clrlwi r3, r30, 0x10
/* 80245E7C 00241ADC 7C 03 00 40 */ cmplw r3, r0
/* 80245E80 00241AE0 41 80 00 0C */ blt lbl_80245E8C
/* 80245E84 00241AE4 38 60 00 00 */ li r3, 0
/* 80245E88 00241AE8 48 00 00 0C */ b lbl_80245E94
lbl_80245E8C:
/* 80245E8C 00241AEC 90 7D 00 24 */ stw r3, 0x24(r29)
/* 80245E90 00241AF0 38 60 00 01 */ li r3, 1
lbl_80245E94:
/* 80245E94 00241AF4 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80245E98 00241AF8 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80245E9C 00241AFC 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80245EA0 00241B00 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80245EA4 00241B04 7C 08 03 A6 */ mtlr r0
/* 80245EA8 00241B08 38 21 00 20 */ addi r1, r1, 0x20
/* 80245EAC 00241B0C 4E 80 00 20 */ blr
.global func_80245EB0
func_80245EB0:
/* 80245EB0 00241B10 80 83 00 20 */ lwz r4, 0x20(r3)
/* 80245EB4 00241B14 2C 04 00 00 */ cmpwi r4, 0
/* 80245EB8 00241B18 40 82 00 0C */ bne lbl_80245EC4
/* 80245EBC 00241B1C 38 60 00 00 */ li r3, 0
/* 80245EC0 00241B20 4E 80 00 20 */ blr
lbl_80245EC4:
/* 80245EC4 00241B24 88 03 00 2E */ lbz r0, 0x2e(r3)
/* 80245EC8 00241B28 2C 00 00 00 */ cmpwi r0, 0
/* 80245ECC 00241B2C 40 82 00 0C */ bne lbl_80245ED8
/* 80245ED0 00241B30 38 60 00 00 */ li r3, 0
/* 80245ED4 00241B34 4E 80 00 20 */ blr
lbl_80245ED8:
/* 80245ED8 00241B38 7C 83 23 78 */ mr r3, r4
/* 80245EDC 00241B3C 4E 80 00 20 */ blr
.global func_80245EE0
func_80245EE0:
/* 80245EE0 00241B40 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80245EE4 00241B44 7C 08 02 A6 */ mflr r0
/* 80245EE8 00241B48 90 01 00 14 */ stw r0, 0x14(r1)
/* 80245EEC 00241B4C 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80245EF0 00241B50 7C 9F 23 78 */ mr r31, r4
/* 80245EF4 00241B54 4B FF FF BD */ bl func_80245EB0
/* 80245EF8 00241B58 2C 03 00 00 */ cmpwi r3, 0
/* 80245EFC 00241B5C 40 82 00 0C */ bne lbl_80245F08
/* 80245F00 00241B60 38 60 00 00 */ li r3, 0
/* 80245F04 00241B64 48 00 00 2C */ b lbl_80245F30
lbl_80245F08:
/* 80245F08 00241B68 80 03 00 0C */ lwz r0, 0xc(r3)
/* 80245F0C 00241B6C 7C 1F 00 40 */ cmplw r31, r0
/* 80245F10 00241B70 41 80 00 0C */ blt lbl_80245F1C
/* 80245F14 00241B74 38 60 00 00 */ li r3, 0
/* 80245F18 00241B78 48 00 00 18 */ b lbl_80245F30
lbl_80245F1C:
/* 80245F1C 00241B7C 80 03 00 40 */ lwz r0, 0x40(r3)
/* 80245F20 00241B80 57 E4 10 3A */ slwi r4, r31, 2
/* 80245F24 00241B84 7C 03 02 14 */ add r0, r3, r0
/* 80245F28 00241B88 7C 04 00 2E */ lwzx r0, r4, r0
/* 80245F2C 00241B8C 7C 63 02 14 */ add r3, r3, r0
lbl_80245F30:
/* 80245F30 00241B90 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80245F34 00241B94 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80245F38 00241B98 7C 08 03 A6 */ mtlr r0
/* 80245F3C 00241B9C 38 21 00 10 */ addi r1, r1, 0x10
/* 80245F40 00241BA0 4E 80 00 20 */ blr
.global func_80245F44
func_80245F44:
/* 80245F44 00241BA4 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80245F48 00241BA8 7C 08 02 A6 */ mflr r0
/* 80245F4C 00241BAC 90 01 00 24 */ stw r0, 0x24(r1)
/* 80245F50 00241BB0 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80245F54 00241BB4 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80245F58 00241BB8 7C 9E 23 78 */ mr r30, r4
/* 80245F5C 00241BBC 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80245F60 00241BC0 7C 7D 1B 78 */ mr r29, r3
/* 80245F64 00241BC4 80 A4 00 28 */ lwz r5, 0x28(r4)
/* 80245F68 00241BC8 80 0D A5 18 */ lwz r0, lbl_8063F7D8-_SDA_BASE_(r13)
/* 80245F6C 00241BCC 7C 05 02 14 */ add r0, r5, r0
/* 80245F70 00241BD0 90 04 00 28 */ stw r0, 0x28(r4)
/* 80245F74 00241BD4 80 03 00 10 */ lwz r0, 0x10(r3)
/* 80245F78 00241BD8 2C 00 00 04 */ cmpwi r0, 4
/* 80245F7C 00241BDC 40 82 01 1C */ bne lbl_80246098
/* 80245F80 00241BE0 80 04 00 0C */ lwz r0, 0xc(r4)
/* 80245F84 00241BE4 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 80245F88 00241BE8 40 82 01 10 */ bne lbl_80246098
/* 80245F8C 00241BEC 48 00 0D 41 */ bl func_80246CCC
/* 80245F90 00241BF0 80 9E 00 44 */ lwz r4, 0x44(r30)
/* 80245F94 00241BF4 7C 7F 1B 78 */ mr r31, r3
/* 80245F98 00241BF8 80 0D A5 18 */ lwz r0, lbl_8063F7D8-_SDA_BASE_(r13)
/* 80245F9C 00241BFC 80 7E 00 48 */ lwz r3, 0x48(r30)
/* 80245FA0 00241C00 7C 04 02 14 */ add r0, r4, r0
/* 80245FA4 00241C04 90 1E 00 44 */ stw r0, 0x44(r30)
/* 80245FA8 00241C08 48 00 10 5D */ bl func_80247004
/* 80245FAC 00241C0C 80 1E 00 4C */ lwz r0, 0x4c(r30)
/* 80245FB0 00241C10 80 9E 00 48 */ lwz r4, 0x48(r30)
/* 80245FB4 00241C14 7C 00 1B 78 */ or r0, r0, r3
/* 80245FB8 00241C18 90 1E 00 4C */ stw r0, 0x4c(r30)
/* 80245FBC 00241C1C 80 0D A5 18 */ lwz r0, lbl_8063F7D8-_SDA_BASE_(r13)
/* 80245FC0 00241C20 7C 04 02 14 */ add r0, r4, r0
/* 80245FC4 00241C24 7C 00 F8 40 */ cmplw r0, r31
/* 80245FC8 00241C28 90 1E 00 48 */ stw r0, 0x48(r30)
/* 80245FCC 00241C2C 41 80 00 0C */ blt lbl_80245FD8
/* 80245FD0 00241C30 38 00 00 00 */ li r0, 0
/* 80245FD4 00241C34 90 1E 00 48 */ stw r0, 0x48(r30)
lbl_80245FD8:
/* 80245FD8 00241C38 88 1D 00 2C */ lbz r0, 0x2c(r29)
/* 80245FDC 00241C3C 2C 00 00 00 */ cmpwi r0, 0
/* 80245FE0 00241C40 41 82 00 14 */ beq lbl_80245FF4
/* 80245FE4 00241C44 7F A3 EB 78 */ mr r3, r29
/* 80245FE8 00241C48 38 80 00 0A */ li r4, 0xa
/* 80245FEC 00241C4C 48 00 3B 6D */ bl func_80249B58
/* 80245FF0 00241C50 48 00 01 B0 */ b lbl_802461A0
lbl_80245FF4:
/* 80245FF4 00241C54 80 9E 00 28 */ lwz r4, 0x28(r30)
/* 80245FF8 00241C58 80 1E 00 54 */ lwz r0, 0x54(r30)
/* 80245FFC 00241C5C 7C 04 00 40 */ cmplw r4, r0
/* 80246000 00241C60 41 80 00 50 */ blt lbl_80246050
/* 80246004 00241C64 80 7E 00 0C */ lwz r3, 0xc(r30)
/* 80246008 00241C68 54 60 05 29 */ rlwinm. r0, r3, 0, 0x14, 0x14
/* 8024600C 00241C6C 41 82 00 14 */ beq lbl_80246020
/* 80246010 00241C70 7F C3 F3 78 */ mr r3, r30
/* 80246014 00241C74 38 80 00 02 */ li r4, 2
/* 80246018 00241C78 48 00 18 5D */ bl func_80247874
/* 8024601C 00241C7C 48 00 01 84 */ b lbl_802461A0
lbl_80246020:
/* 80246020 00241C80 7C 04 F8 40 */ cmplw r4, r31
/* 80246024 00241C84 40 80 00 24 */ bge lbl_80246048
/* 80246028 00241C88 64 60 00 80 */ oris r0, r3, 0x80
/* 8024602C 00241C8C 7F C3 F3 78 */ mr r3, r30
/* 80246030 00241C90 90 1E 00 0C */ stw r0, 0xc(r30)
/* 80246034 00241C94 38 80 00 02 */ li r4, 2
/* 80246038 00241C98 48 00 18 3D */ bl func_80247874
/* 8024603C 00241C9C 38 00 FF FF */ li r0, -1
/* 80246040 00241CA0 90 1E 00 4C */ stw r0, 0x4c(r30)
/* 80246044 00241CA4 48 00 01 5C */ b lbl_802461A0
lbl_80246048:
/* 80246048 00241CA8 80 1E 00 50 */ lwz r0, 0x50(r30)
/* 8024604C 00241CAC 90 1E 00 28 */ stw r0, 0x28(r30)
lbl_80246050:
/* 80246050 00241CB0 80 1E 00 44 */ lwz r0, 0x44(r30)
/* 80246054 00241CB4 7C 00 F8 40 */ cmplw r0, r31
/* 80246058 00241CB8 41 80 00 14 */ blt lbl_8024606C
/* 8024605C 00241CBC 7F C3 F3 78 */ mr r3, r30
/* 80246060 00241CC0 38 80 00 05 */ li r4, 5
/* 80246064 00241CC4 48 00 18 11 */ bl func_80247874
/* 80246068 00241CC8 48 00 01 38 */ b lbl_802461A0
lbl_8024606C:
/* 8024606C 00241CCC 38 60 00 02 */ li r3, 2
/* 80246070 00241CD0 48 00 19 C5 */ bl func_80247A34
/* 80246074 00241CD4 7C 7F 1B 78 */ mr r31, r3
/* 80246078 00241CD8 38 60 00 01 */ li r3, 1
/* 8024607C 00241CDC 48 00 19 B9 */ bl func_80247A34
/* 80246080 00241CE0 7C 03 FA 15 */ add. r0, r3, r31
/* 80246084 00241CE4 41 82 01 10 */ beq lbl_80246194
/* 80246088 00241CE8 7F C3 F3 78 */ mr r3, r30
/* 8024608C 00241CEC 38 80 00 05 */ li r4, 5
/* 80246090 00241CF0 48 00 17 E5 */ bl func_80247874
/* 80246094 00241CF4 48 00 01 0C */ b lbl_802461A0
lbl_80246098:
/* 80246098 00241CF8 80 64 00 28 */ lwz r3, 0x28(r4)
/* 8024609C 00241CFC 80 04 00 14 */ lwz r0, 0x14(r4)
/* 802460A0 00241D00 7C 03 00 40 */ cmplw r3, r0
/* 802460A4 00241D04 41 80 00 F0 */ blt lbl_80246194
/* 802460A8 00241D08 80 64 00 38 */ lwz r3, 0x38(r4)
/* 802460AC 00241D0C 2C 03 00 00 */ cmpwi r3, 0
/* 802460B0 00241D10 41 82 00 10 */ beq lbl_802460C0
/* 802460B4 00241D14 38 00 00 00 */ li r0, 0
/* 802460B8 00241D18 90 04 00 38 */ stw r0, 0x38(r4)
/* 802460BC 00241D1C 4B F9 66 09 */ bl func_801DC6C4
lbl_802460C0:
/* 802460C0 00241D20 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 802460C4 00241D24 2C 00 00 04 */ cmpwi r0, 4
/* 802460C8 00241D28 40 82 00 20 */ bne lbl_802460E8
/* 802460CC 00241D2C 80 9D 00 34 */ lwz r4, 0x34(r29)
/* 802460D0 00241D30 2C 04 00 00 */ cmpwi r4, 0
/* 802460D4 00241D34 41 82 00 14 */ beq lbl_802460E8
/* 802460D8 00241D38 7F A3 EB 78 */ mr r3, r29
/* 802460DC 00241D3C 48 00 1B 81 */ bl func_80247C5C
/* 802460E0 00241D40 90 7D 00 24 */ stw r3, 0x24(r29)
/* 802460E4 00241D44 48 00 00 7C */ b lbl_80246160
lbl_802460E8:
/* 802460E8 00241D48 80 9D 00 08 */ lwz r4, 8(r29)
/* 802460EC 00241D4C 7F A3 EB 78 */ mr r3, r29
/* 802460F0 00241D50 48 00 1B 6D */ bl func_80247C5C
/* 802460F4 00241D54 28 03 FF FF */ cmplwi r3, 0xffff
/* 802460F8 00241D58 41 82 00 5C */ beq lbl_80246154
/* 802460FC 00241D5C 80 7D 00 44 */ lwz r3, 0x44(r29)
/* 80246100 00241D60 2C 03 00 00 */ cmpwi r3, 0
/* 80246104 00241D64 41 82 00 38 */ beq lbl_8024613C
/* 80246108 00241D68 80 83 00 00 */ lwz r4, 0(r3)
/* 8024610C 00241D6C 2C 04 00 00 */ cmpwi r4, 0
/* 80246110 00241D70 41 82 00 2C */ beq lbl_8024613C
/* 80246114 00241D74 38 03 00 04 */ addi r0, r3, 4
/* 80246118 00241D78 90 9D 00 08 */ stw r4, 8(r29)
/* 8024611C 00241D7C 7F A3 EB 78 */ mr r3, r29
/* 80246120 00241D80 90 1D 00 44 */ stw r0, 0x44(r29)
/* 80246124 00241D84 48 00 3A 31 */ bl func_80249B54
/* 80246128 00241D88 90 7D 00 24 */ stw r3, 0x24(r29)
/* 8024612C 00241D8C 90 7D 00 28 */ stw r3, 0x28(r29)
/* 80246130 00241D90 7F A3 EB 78 */ mr r3, r29
/* 80246134 00241D94 48 00 04 89 */ bl func_802465BC
/* 80246138 00241D98 48 00 00 68 */ b lbl_802461A0
lbl_8024613C:
/* 8024613C 00241D9C 38 00 00 00 */ li r0, 0
/* 80246140 00241DA0 7F A3 EB 78 */ mr r3, r29
/* 80246144 00241DA4 90 1D 00 44 */ stw r0, 0x44(r29)
/* 80246148 00241DA8 38 80 00 0A */ li r4, 0xa
/* 8024614C 00241DAC 48 00 3A 0D */ bl func_80249B58
/* 80246150 00241DB0 48 00 00 50 */ b lbl_802461A0
lbl_80246154:
/* 80246154 00241DB4 80 7D 00 24 */ lwz r3, 0x24(r29)
/* 80246158 00241DB8 38 03 00 01 */ addi r0, r3, 1
/* 8024615C 00241DBC 90 1D 00 24 */ stw r0, 0x24(r29)
lbl_80246160:
/* 80246160 00241DC0 7F A3 EB 78 */ mr r3, r29
/* 80246164 00241DC4 4B FF FD 4D */ bl func_80245EB0
/* 80246168 00241DC8 80 9D 00 24 */ lwz r4, 0x24(r29)
/* 8024616C 00241DCC 80 03 00 0C */ lwz r0, 0xc(r3)
/* 80246170 00241DD0 7C 04 00 40 */ cmplw r4, r0
/* 80246174 00241DD4 41 80 00 14 */ blt lbl_80246188
/* 80246178 00241DD8 7F A3 EB 78 */ mr r3, r29
/* 8024617C 00241DDC 38 80 00 0A */ li r4, 0xa
/* 80246180 00241DE0 48 00 39 D9 */ bl func_80249B58
/* 80246184 00241DE4 48 00 00 1C */ b lbl_802461A0
lbl_80246188:
/* 80246188 00241DE8 7F A3 EB 78 */ mr r3, r29
/* 8024618C 00241DEC 48 00 04 31 */ bl func_802465BC
/* 80246190 00241DF0 48 00 00 10 */ b lbl_802461A0
lbl_80246194:
/* 80246194 00241DF4 7F A3 EB 78 */ mr r3, r29
/* 80246198 00241DF8 7F C4 F3 78 */ mr r4, r30
/* 8024619C 00241DFC 48 00 02 4D */ bl func_802463E8
lbl_802461A0:
/* 802461A0 00241E00 80 01 00 24 */ lwz r0, 0x24(r1)
/* 802461A4 00241E04 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 802461A8 00241E08 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 802461AC 00241E0C 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 802461B0 00241E10 7C 08 03 A6 */ mtlr r0
/* 802461B4 00241E14 38 21 00 20 */ addi r1, r1, 0x20
/* 802461B8 00241E18 4E 80 00 20 */ blr
.global func_802461BC
func_802461BC:
/* 802461BC 00241E1C 88 03 00 2C */ lbz r0, 0x2c(r3)
/* 802461C0 00241E20 2C 00 00 00 */ cmpwi r0, 0
/* 802461C4 00241E24 40 82 00 30 */ bne lbl_802461F4
/* 802461C8 00241E28 80 03 00 10 */ lwz r0, 0x10(r3)
/* 802461CC 00241E2C 2C 00 00 01 */ cmpwi r0, 1
/* 802461D0 00241E30 41 82 00 18 */ beq lbl_802461E8
/* 802461D4 00241E34 2C 00 00 04 */ cmpwi r0, 4
/* 802461D8 00241E38 40 82 00 1C */ bne lbl_802461F4
/* 802461DC 00241E3C 80 04 00 0C */ lwz r0, 0xc(r4)
/* 802461E0 00241E40 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 802461E4 00241E44 41 82 00 10 */ beq lbl_802461F4
lbl_802461E8:
/* 802461E8 00241E48 38 64 00 30 */ addi r3, r4, 0x30
/* 802461EC 00241E4C 38 84 00 34 */ addi r4, r4, 0x34
/* 802461F0 00241E50 4B FF F0 18 */ b lbl_80245208
lbl_802461F4:
/* 802461F4 00241E54 38 64 00 30 */ addi r3, r4, 0x30
/* 802461F8 00241E58 38 80 00 00 */ li r4, 0
/* 802461FC 00241E5C 4B FF EE 74 */ b func_80245070
lbl_80246200:
/* 80246200 00241E60 2C 03 00 00 */ cmpwi r3, 0
/* 80246204 00241E64 7C 64 1B 78 */ mr r4, r3
/* 80246208 00241E68 4D 82 00 20 */ beqlr
/* 8024620C 00241E6C 80 63 00 10 */ lwz r3, 0x10(r3)
/* 80246210 00241E70 80 84 00 14 */ lwz r4, 0x14(r4)
/* 80246214 00241E74 4B FF FF A8 */ b func_802461BC
/* 80246218 00241E78 4E 80 00 20 */ blr
.global func_8024621C
func_8024621C:
/* 8024621C 00241E7C 80 0D A5 18 */ lwz r0, lbl_8063F7D8-_SDA_BASE_(r13)
/* 80246220 00241E80 7C 64 18 50 */ subf r3, r4, r3
/* 80246224 00241E84 7C 03 00 40 */ cmplw r3, r0
/* 80246228 00241E88 40 81 00 08 */ ble lbl_80246230
/* 8024622C 00241E8C 7C 03 03 78 */ mr r3, r0
lbl_80246230:
/* 80246230 00241E90 38 03 00 1F */ addi r0, r3, 0x1f
/* 80246234 00241E94 54 03 00 34 */ rlwinm r3, r0, 0, 0, 0x1a
/* 80246238 00241E98 4E 80 00 20 */ blr
lbl_8024623C:
/* 8024623C 00241E9C 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80246240 00241EA0 7C 08 02 A6 */ mflr r0
/* 80246244 00241EA4 90 01 00 24 */ stw r0, 0x24(r1)
/* 80246248 00241EA8 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 8024624C 00241EAC 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80246250 00241EB0 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80246254 00241EB4 7C 7D 1B 78 */ mr r29, r3
/* 80246258 00241EB8 7C 83 23 78 */ mr r3, r4
/* 8024625C 00241EBC 48 00 11 19 */ bl func_80247374
/* 80246260 00241EC0 2C 03 00 00 */ cmpwi r3, 0
/* 80246264 00241EC4 7C 7E 1B 78 */ mr r30, r3
/* 80246268 00241EC8 41 82 01 10 */ beq lbl_80246378
/* 8024626C 00241ECC 2C 1D 00 00 */ cmpwi r29, 0
/* 80246270 00241ED0 40 80 00 10 */ bge lbl_80246280
/* 80246274 00241ED4 38 80 FC 1C */ li r4, -996
/* 80246278 00241ED8 48 00 15 BD */ bl func_80247834
/* 8024627C 00241EDC 48 00 00 FC */ b lbl_80246378
lbl_80246280:
/* 80246280 00241EE0 80 83 00 24 */ lwz r4, 0x24(r3)
/* 80246284 00241EE4 4B FF FC 5D */ bl func_80245EE0
/* 80246288 00241EE8 2C 03 00 00 */ cmpwi r3, 0
/* 8024628C 00241EEC 7C 7D 1B 78 */ mr r29, r3
/* 80246290 00241EF0 41 82 00 E8 */ beq lbl_80246378
/* 80246294 00241EF4 80 83 00 0C */ lwz r4, 0xc(r3)
/* 80246298 00241EF8 54 80 03 DF */ rlwinm. r0, r4, 0, 0xf, 0xf
/* 8024629C 00241EFC 40 82 00 68 */ bne lbl_80246304
/* 802462A0 00241F00 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 802462A4 00241F04 2C 00 00 04 */ cmpwi r0, 4
/* 802462A8 00241F08 40 82 00 38 */ bne lbl_802462E0
/* 802462AC 00241F0C 54 80 03 5B */ rlwinm. r0, r4, 0, 0xd, 0xd
/* 802462B0 00241F10 41 82 00 10 */ beq lbl_802462C0
/* 802462B4 00241F14 38 00 00 00 */ li r0, 0
/* 802462B8 00241F18 90 03 00 2C */ stw r0, 0x2c(r3)
/* 802462BC 00241F1C 48 00 00 3C */ b lbl_802462F8
lbl_802462C0:
/* 802462C0 00241F20 48 00 0A 0D */ bl func_80246CCC
/* 802462C4 00241F24 80 9E 00 24 */ lwz r4, 0x24(r30)
/* 802462C8 00241F28 7C 65 1B 78 */ mr r5, r3
/* 802462CC 00241F2C 80 DE 00 3C */ lwz r6, 0x3c(r30)
/* 802462D0 00241F30 7F C3 F3 78 */ mr r3, r30
/* 802462D4 00241F34 4B FF EB 11 */ bl func_80244DE4
/* 802462D8 00241F38 90 7D 00 2C */ stw r3, 0x2c(r29)
/* 802462DC 00241F3C 48 00 00 1C */ b lbl_802462F8
lbl_802462E0:
/* 802462E0 00241F40 80 9E 00 24 */ lwz r4, 0x24(r30)
/* 802462E4 00241F44 7F C3 F3 78 */ mr r3, r30
/* 802462E8 00241F48 80 BD 00 14 */ lwz r5, 0x14(r29)
/* 802462EC 00241F4C 80 DE 00 3C */ lwz r6, 0x3c(r30)
/* 802462F0 00241F50 4B FF EA F5 */ bl func_80244DE4
/* 802462F4 00241F54 90 7D 00 2C */ stw r3, 0x2c(r29)
lbl_802462F8:
/* 802462F8 00241F58 80 1D 00 0C */ lwz r0, 0xc(r29)
/* 802462FC 00241F5C 64 00 00 01 */ oris r0, r0, 1
/* 80246300 00241F60 90 1D 00 0C */ stw r0, 0xc(r29)
lbl_80246304:
/* 80246304 00241F64 80 1D 00 2C */ lwz r0, 0x2c(r29)
/* 80246308 00241F68 2C 00 00 00 */ cmpwi r0, 0
/* 8024630C 00241F6C 41 82 00 54 */ beq lbl_80246360
/* 80246310 00241F70 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 80246314 00241F74 2C 00 00 04 */ cmpwi r0, 4
/* 80246318 00241F78 40 82 00 0C */ bne lbl_80246324
/* 8024631C 00241F7C 83 FD 00 48 */ lwz r31, 0x48(r29)
/* 80246320 00241F80 48 00 00 08 */ b lbl_80246328
lbl_80246324:
/* 80246324 00241F84 83 FD 00 28 */ lwz r31, 0x28(r29)
lbl_80246328:
/* 80246328 00241F88 80 7D 00 14 */ lwz r3, 0x14(r29)
/* 8024632C 00241F8C 80 9D 00 28 */ lwz r4, 0x28(r29)
/* 80246330 00241F90 4B FF FE ED */ bl func_8024621C
/* 80246334 00241F94 80 9D 00 30 */ lwz r4, 0x30(r29)
/* 80246338 00241F98 3D 20 80 24 */ lis r9, lbl_80246200@ha
/* 8024633C 00241F9C 7C 67 1B 78 */ mr r7, r3
/* 80246340 00241FA0 80 DD 00 2C */ lwz r6, 0x2c(r29)
/* 80246344 00241FA4 80 A4 00 08 */ lwz r5, 8(r4)
/* 80246348 00241FA8 7F C3 F3 78 */ mr r3, r30
/* 8024634C 00241FAC 7F A4 EB 78 */ mr r4, r29
/* 80246350 00241FB0 7F E8 FB 78 */ mr r8, r31
/* 80246354 00241FB4 39 29 62 00 */ addi r9, r9, lbl_80246200@l
/* 80246358 00241FB8 4B FF F8 4D */ bl func_80245BA4
/* 8024635C 00241FBC 48 00 00 10 */ b lbl_8024636C
lbl_80246360:
/* 80246360 00241FC0 7F C3 F3 78 */ mr r3, r30
/* 80246364 00241FC4 7F A4 EB 78 */ mr r4, r29
/* 80246368 00241FC8 4B FF FE 55 */ bl func_802461BC
lbl_8024636C:
/* 8024636C 00241FCC 7F C3 F3 78 */ mr r3, r30
/* 80246370 00241FD0 7F A4 EB 78 */ mr r4, r29
/* 80246374 00241FD4 4B FF FB D1 */ bl func_80245F44
lbl_80246378:
/* 80246378 00241FD8 80 01 00 24 */ lwz r0, 0x24(r1)
/* 8024637C 00241FDC 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80246380 00241FE0 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80246384 00241FE4 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80246388 00241FE8 7C 08 03 A6 */ mtlr r0
/* 8024638C 00241FEC 38 21 00 20 */ addi r1, r1, 0x20
/* 80246390 00241FF0 4E 80 00 20 */ blr
lbl_80246394:
/* 80246394 00241FF4 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80246398 00241FF8 7C 08 02 A6 */ mflr r0
/* 8024639C 00241FFC 2C 03 00 00 */ cmpwi r3, 0
/* 802463A0 00242000 90 01 00 14 */ stw r0, 0x14(r1)
/* 802463A4 00242004 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802463A8 00242008 93 C1 00 08 */ stw r30, 8(r1)
/* 802463AC 0024200C 41 82 00 24 */ beq lbl_802463D0
/* 802463B0 00242010 83 C3 00 14 */ lwz r30, 0x14(r3)
/* 802463B4 00242014 83 E3 00 10 */ lwz r31, 0x10(r3)
/* 802463B8 00242018 7F C4 F3 78 */ mr r4, r30
/* 802463BC 0024201C 7F E3 FB 78 */ mr r3, r31
/* 802463C0 00242020 4B FF FD FD */ bl func_802461BC
/* 802463C4 00242024 7F E3 FB 78 */ mr r3, r31
/* 802463C8 00242028 7F C4 F3 78 */ mr r4, r30
/* 802463CC 0024202C 4B FF FB 79 */ bl func_80245F44
lbl_802463D0:
/* 802463D0 00242030 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802463D4 00242034 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802463D8 00242038 83 C1 00 08 */ lwz r30, 8(r1)
/* 802463DC 0024203C 7C 08 03 A6 */ mtlr r0
/* 802463E0 00242040 38 21 00 10 */ addi r1, r1, 0x10
/* 802463E4 00242044 4E 80 00 20 */ blr
.global func_802463E8
func_802463E8:
/* 802463E8 00242048 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802463EC 0024204C 7C 08 02 A6 */ mflr r0
/* 802463F0 00242050 90 01 00 34 */ stw r0, 0x34(r1)
/* 802463F4 00242054 39 61 00 30 */ addi r11, r1, 0x30
/* 802463F8 00242058 4B F8 0D 31 */ bl _savegpr_27
/* 802463FC 0024205C 7C 7D 1B 78 */ mr r29, r3
/* 80246400 00242060 7C 9E 23 78 */ mr r30, r4
/* 80246404 00242064 48 02 83 59 */ bl OSDisableInterrupts
/* 80246408 00242068 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 8024640C 0024206C 7C 7F 1B 78 */ mr r31, r3
/* 80246410 00242070 2C 00 00 04 */ cmpwi r0, 4
/* 80246414 00242074 40 82 00 E4 */ bne lbl_802464F8
/* 80246418 00242078 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 8024641C 0024207C 54 00 03 19 */ rlwinm. r0, r0, 0, 0xc, 0xc
/* 80246420 00242080 40 82 00 D8 */ bne lbl_802464F8
/* 80246424 00242084 80 7E 00 20 */ lwz r3, 0x20(r30)
/* 80246428 00242088 4B FF F8 8D */ bl func_80245CB4
/* 8024642C 0024208C A0 83 00 02 */ lhz r4, 2(r3)
/* 80246430 00242090 7C 7C 1B 78 */ mr r28, r3
/* 80246434 00242094 54 80 07 FF */ clrlwi. r0, r4, 0x1f
/* 80246438 00242098 41 82 00 0C */ beq lbl_80246444
/* 8024643C 0024209C 54 80 07 BD */ rlwinm. r0, r4, 0, 0x1e, 0x1e
/* 80246440 002420A0 41 82 00 B8 */ beq lbl_802464F8
lbl_80246444:
/* 80246444 002420A4 80 9D 00 08 */ lwz r4, 8(r29)
/* 80246448 002420A8 7F A3 EB 78 */ mr r3, r29
/* 8024644C 002420AC 48 00 18 11 */ bl func_80247C5C
/* 80246450 002420B0 28 03 FF FF */ cmplwi r3, 0xffff
/* 80246454 002420B4 41 82 00 20 */ beq lbl_80246474
/* 80246458 002420B8 80 9D 00 08 */ lwz r4, 8(r29)
/* 8024645C 002420BC 7F A3 EB 78 */ mr r3, r29
/* 80246460 002420C0 48 00 17 FD */ bl func_80247C5C
/* 80246464 002420C4 7C 64 1B 78 */ mr r4, r3
/* 80246468 002420C8 7F A3 EB 78 */ mr r3, r29
/* 8024646C 002420CC 4B FF FA 75 */ bl func_80245EE0
/* 80246470 002420D0 48 00 00 10 */ b lbl_80246480
lbl_80246474:
/* 80246474 002420D4 7F A3 EB 78 */ mr r3, r29
/* 80246478 002420D8 38 80 00 00 */ li r4, 0
/* 8024647C 002420DC 4B FF FA 65 */ bl func_80245EE0
lbl_80246480:
/* 80246480 002420E0 2C 03 00 00 */ cmpwi r3, 0
/* 80246484 002420E4 40 82 00 20 */ bne lbl_802464A4
/* 80246488 002420E8 7F C3 F3 78 */ mr r3, r30
/* 8024648C 002420EC 38 80 00 03 */ li r4, 3
/* 80246490 002420F0 48 00 13 E5 */ bl func_80247874
/* 80246494 002420F4 7F E3 FB 78 */ mr r3, r31
/* 80246498 002420F8 48 02 82 ED */ bl OSRestoreInterrupts
/* 8024649C 002420FC 38 60 00 00 */ li r3, 0
/* 802464A0 00242100 48 00 01 04 */ b lbl_802465A4
lbl_802464A4:
/* 802464A4 00242104 80 03 00 0C */ lwz r0, 0xc(r3)
/* 802464A8 00242108 54 00 07 39 */ rlwinm. r0, r0, 0, 0x1c, 0x1c
/* 802464AC 0024210C 40 82 00 20 */ bne lbl_802464CC
/* 802464B0 00242110 7F C3 F3 78 */ mr r3, r30
/* 802464B4 00242114 38 80 00 03 */ li r4, 3
/* 802464B8 00242118 48 00 13 BD */ bl func_80247874
/* 802464BC 0024211C 7F E3 FB 78 */ mr r3, r31
/* 802464C0 00242120 48 02 82 C5 */ bl OSRestoreInterrupts
/* 802464C4 00242124 38 60 00 00 */ li r3, 0
/* 802464C8 00242128 48 00 00 DC */ b lbl_802465A4
lbl_802464CC:
/* 802464CC 0024212C 81 9C 00 08 */ lwz r12, 8(r28)
/* 802464D0 00242130 2C 0C 00 00 */ cmpwi r12, 0
/* 802464D4 00242134 41 82 00 18 */ beq lbl_802464EC
/* 802464D8 00242138 80 7D 00 00 */ lwz r3, 0(r29)
/* 802464DC 0024213C 80 9E 00 00 */ lwz r4, 0(r30)
/* 802464E0 00242140 80 BE 00 14 */ lwz r5, 0x14(r30)
/* 802464E4 00242144 7D 89 03 A6 */ mtctr r12
/* 802464E8 00242148 4E 80 04 21 */ bctrl
lbl_802464EC:
/* 802464EC 0024214C 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 802464F0 00242150 64 00 00 08 */ oris r0, r0, 8
/* 802464F4 00242154 90 1E 00 0C */ stw r0, 0xc(r30)
lbl_802464F8:
/* 802464F8 00242158 4B FF EA D1 */ bl func_80244FC8
/* 802464FC 0024215C 2C 03 00 00 */ cmpwi r3, 0
/* 80246500 00242160 7C 7C 1B 78 */ mr r28, r3
/* 80246504 00242164 40 82 00 20 */ bne lbl_80246524
/* 80246508 00242168 7F C3 F3 78 */ mr r3, r30
/* 8024650C 0024216C 38 80 00 03 */ li r4, 3
/* 80246510 00242170 48 00 13 65 */ bl func_80247874
/* 80246514 00242174 7F E3 FB 78 */ mr r3, r31
/* 80246518 00242178 48 02 82 6D */ bl OSRestoreInterrupts
/* 8024651C 0024217C 38 60 00 00 */ li r3, 0
/* 80246520 00242180 48 00 00 84 */ b lbl_802465A4
lbl_80246524:
/* 80246524 00242184 7F C3 F3 78 */ mr r3, r30
/* 80246528 00242188 38 80 00 01 */ li r4, 1
/* 8024652C 0024218C 48 00 13 49 */ bl func_80247874
/* 80246530 00242190 80 1E 00 28 */ lwz r0, 0x28(r30)
/* 80246534 00242194 7F 84 E3 78 */ mr r4, r28
/* 80246538 00242198 38 7E 00 30 */ addi r3, r30, 0x30
/* 8024653C 0024219C 90 1C 00 0C */ stw r0, 0xc(r28)
/* 80246540 002421A0 4B FF EC 49 */ bl func_80245188
/* 80246544 002421A4 80 1E 00 0C */ lwz r0, 0xc(r30)
/* 80246548 002421A8 83 9E 00 28 */ lwz r28, 0x28(r30)
/* 8024654C 002421AC 80 7E 00 14 */ lwz r3, 0x14(r30)
/* 80246550 002421B0 54 1B 7F FE */ rlwinm r27, r0, 0xf, 0x1f, 0x1f
/* 80246554 002421B4 7F 84 E3 78 */ mr r4, r28
/* 80246558 002421B8 4B FF FC C5 */ bl func_8024621C
/* 8024655C 002421BC 3C 80 80 24 */ lis r4, lbl_80246394@ha
/* 80246560 002421C0 3D 40 80 24 */ lis r10, lbl_8024623C@ha
/* 80246564 002421C4 38 84 63 94 */ addi r4, r4, lbl_80246394@l
/* 80246568 002421C8 7C 68 1B 78 */ mr r8, r3
/* 8024656C 002421CC 90 81 00 08 */ stw r4, 8(r1)
/* 80246570 002421D0 7F A3 EB 78 */ mr r3, r29
/* 80246574 002421D4 7F C4 F3 78 */ mr r4, r30
/* 80246578 002421D8 7F 65 DB 78 */ mr r5, r27
/* 8024657C 002421DC 80 FE 00 30 */ lwz r7, 0x30(r30)
/* 80246580 002421E0 7F 89 E3 78 */ mr r9, r28
/* 80246584 002421E4 80 DD 00 24 */ lwz r6, 0x24(r29)
/* 80246588 002421E8 39 4A 62 3C */ addi r10, r10, lbl_8024623C@l
/* 8024658C 002421EC 80 E7 00 08 */ lwz r7, 8(r7)
/* 80246590 002421F0 48 00 04 3D */ bl func_802469CC
/* 80246594 002421F4 7C 7B 1B 78 */ mr r27, r3
/* 80246598 002421F8 7F E3 FB 78 */ mr r3, r31
/* 8024659C 002421FC 48 02 81 E9 */ bl OSRestoreInterrupts
/* 802465A0 00242200 7F 63 DB 78 */ mr r3, r27
lbl_802465A4:
/* 802465A4 00242204 39 61 00 30 */ addi r11, r1, 0x30
/* 802465A8 00242208 4B F8 0B CD */ bl _restgpr_27
/* 802465AC 0024220C 80 01 00 34 */ lwz r0, 0x34(r1)
/* 802465B0 00242210 7C 08 03 A6 */ mtlr r0
/* 802465B4 00242214 38 21 00 30 */ addi r1, r1, 0x30
/* 802465B8 00242218 4E 80 00 20 */ blr
.global func_802465BC
func_802465BC:
/* 802465BC 0024221C 94 21 FF 60 */ stwu r1, -0xa0(r1)
/* 802465C0 00242220 7C 08 02 A6 */ mflr r0
/* 802465C4 00242224 90 01 00 A4 */ stw r0, 0xa4(r1)
/* 802465C8 00242228 93 E1 00 9C */ stw r31, 0x9c(r1)
/* 802465CC 0024222C 93 C1 00 98 */ stw r30, 0x98(r1)
/* 802465D0 00242230 93 A1 00 94 */ stw r29, 0x94(r1)
/* 802465D4 00242234 7C 7D 1B 78 */ mr r29, r3
/* 802465D8 00242238 88 03 00 2C */ lbz r0, 0x2c(r3)
/* 802465DC 0024223C 28 00 00 01 */ cmplwi r0, 1
/* 802465E0 00242240 40 82 00 14 */ bne lbl_802465F4
/* 802465E4 00242244 38 80 00 0A */ li r4, 0xa
/* 802465E8 00242248 48 00 12 4D */ bl func_80247834
/* 802465EC 0024224C 38 60 00 00 */ li r3, 0
/* 802465F0 00242250 48 00 01 98 */ b lbl_80246788
lbl_802465F4:
/* 802465F4 00242254 80 83 00 24 */ lwz r4, 0x24(r3)
/* 802465F8 00242258 4B FF F8 E9 */ bl func_80245EE0
/* 802465FC 0024225C 2C 03 00 00 */ cmpwi r3, 0
/* 80246600 00242260 7C 7F 1B 78 */ mr r31, r3
/* 80246604 00242264 40 82 00 0C */ bne lbl_80246610
/* 80246608 00242268 38 60 00 00 */ li r3, 0
/* 8024660C 0024226C 48 00 01 7C */ b lbl_80246788
lbl_80246610:
/* 80246610 00242270 81 1D 00 20 */ lwz r8, 0x20(r29)
/* 80246614 00242274 3C A0 00 01 */ lis r5, 0x0000FFFF@ha
/* 80246618 00242278 80 E3 00 1C */ lwz r7, 0x1c(r3)
/* 8024661C 0024227C 38 C0 00 00 */ li r6, 0
/* 80246620 00242280 3C 80 FF 71 */ lis r4, 0xFF70FFF7@ha
/* 80246624 00242284 38 A5 FF FF */ addi r5, r5, 0x0000FFFF@l
/* 80246628 00242288 90 C3 00 28 */ stw r6, 0x28(r3)
/* 8024662C 0024228C 38 04 FF F7 */ addi r0, r4, 0xFF70FFF7@l
/* 80246630 00242290 7F C8 3A 14 */ add r30, r8, r7
/* 80246634 00242294 90 C3 00 2C */ stw r6, 0x2c(r3)
/* 80246638 00242298 90 C3 00 30 */ stw r6, 0x30(r3)
/* 8024663C 0024229C 90 C3 00 34 */ stw r6, 0x34(r3)
/* 80246640 002422A0 90 C3 00 38 */ stw r6, 0x38(r3)
/* 80246644 002422A4 90 C3 00 3C */ stw r6, 0x3c(r3)
/* 80246648 002422A8 90 A3 00 40 */ stw r5, 0x40(r3)
/* 8024664C 002422AC 80 83 00 0C */ lwz r4, 0xc(r3)
/* 80246650 002422B0 7C 80 00 38 */ and r0, r4, r0
/* 80246654 002422B4 60 00 08 00 */ ori r0, r0, 0x800
/* 80246658 002422B8 90 03 00 0C */ stw r0, 0xc(r3)
/* 8024665C 002422BC 90 C3 00 44 */ stw r6, 0x44(r3)
/* 80246660 002422C0 90 C3 00 4C */ stw r6, 0x4c(r3)
/* 80246664 002422C4 90 C3 00 48 */ stw r6, 0x48(r3)
/* 80246668 002422C8 90 C3 00 50 */ stw r6, 0x50(r3)
/* 8024666C 002422CC 80 03 00 14 */ lwz r0, 0x14(r3)
/* 80246670 002422D0 90 03 00 54 */ stw r0, 0x54(r3)
/* 80246674 002422D4 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 80246678 002422D8 2C 00 00 04 */ cmpwi r0, 4
/* 8024667C 002422DC 40 82 00 2C */ bne lbl_802466A8
/* 80246680 002422E0 80 63 00 20 */ lwz r3, 0x20(r3)
/* 80246684 002422E4 4B FF F6 31 */ bl func_80245CB4
/* 80246688 002422E8 A0 63 00 02 */ lhz r3, 2(r3)
/* 8024668C 002422EC 54 60 07 FF */ clrlwi. r0, r3, 0x1f
/* 80246690 002422F0 41 82 00 18 */ beq lbl_802466A8
/* 80246694 002422F4 54 60 07 BD */ rlwinm. r0, r3, 0, 0x1e, 0x1e
/* 80246698 002422F8 40 82 00 10 */ bne lbl_802466A8
/* 8024669C 002422FC 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 802466A0 00242300 64 00 00 04 */ oris r0, r0, 4
/* 802466A4 00242304 90 1F 00 0C */ stw r0, 0xc(r31)
lbl_802466A8:
/* 802466A8 00242308 7F A3 EB 78 */ mr r3, r29
/* 802466AC 0024230C 4B FF F8 05 */ bl func_80245EB0
/* 802466B0 00242310 80 03 00 10 */ lwz r0, 0x10(r3)
/* 802466B4 00242314 54 00 07 FF */ clrlwi. r0, r0, 0x1f
/* 802466B8 00242318 41 82 00 50 */ beq lbl_80246708
/* 802466BC 0024231C 3C 80 80 42 */ lis r4, lbl_80424958@ha
/* 802466C0 00242320 7F C5 F3 78 */ mr r5, r30
/* 802466C4 00242324 38 61 00 08 */ addi r3, r1, 8
/* 802466C8 00242328 38 84 49 58 */ addi r4, r4, lbl_80424958@l
/* 802466CC 0024232C 4C C6 31 82 */ crclr 6
/* 802466D0 00242330 4B F8 64 2D */ bl sprintf
/* 802466D4 00242334 38 61 00 08 */ addi r3, r1, 8
/* 802466D8 00242338 4B F9 5C A9 */ bl func_801DC380
/* 802466DC 0024233C 28 03 00 01 */ cmplwi r3, 1
/* 802466E0 00242340 40 82 00 28 */ bne lbl_80246708
/* 802466E4 00242344 38 61 00 08 */ addi r3, r1, 8
/* 802466E8 00242348 4B F9 5B E9 */ bl func_801DC2D0
/* 802466EC 0024234C 90 7F 00 38 */ stw r3, 0x38(r31)
/* 802466F0 00242350 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 802466F4 00242354 54 00 00 7E */ clrlwi r0, r0, 1
/* 802466F8 00242358 90 1F 00 0C */ stw r0, 0xc(r31)
/* 802466FC 0024235C 4B F9 60 65 */ bl func_801DC760
/* 80246700 00242360 90 7F 00 14 */ stw r3, 0x14(r31)
/* 80246704 00242364 90 7F 00 08 */ stw r3, 8(r31)
lbl_80246708:
/* 80246708 00242368 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 8024670C 0024236C 2C 00 00 04 */ cmpwi r0, 4
/* 80246710 00242370 41 82 00 34 */ beq lbl_80246744
/* 80246714 00242374 80 7D 00 00 */ lwz r3, 0(r29)
/* 80246718 00242378 80 9D 00 24 */ lwz r4, 0x24(r29)
/* 8024671C 0024237C 4B FF F2 F1 */ bl func_80245A0C
/* 80246720 00242380 28 03 00 01 */ cmplwi r3, 1
/* 80246724 00242384 40 82 00 20 */ bne lbl_80246744
/* 80246728 00242388 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8024672C 0024238C 38 A0 00 01 */ li r5, 1
/* 80246730 00242390 64 00 00 02 */ oris r0, r0, 2
/* 80246734 00242394 90 1F 00 0C */ stw r0, 0xc(r31)
/* 80246738 00242398 80 7D 00 00 */ lwz r3, 0(r29)
/* 8024673C 0024239C 80 9D 00 24 */ lwz r4, 0x24(r29)
/* 80246740 002423A0 4B FF EF 4D */ bl func_8024568C
lbl_80246744:
/* 80246744 002423A4 80 1D 00 10 */ lwz r0, 0x10(r29)
/* 80246748 002423A8 2C 00 00 01 */ cmpwi r0, 1
/* 8024674C 002423AC 41 82 00 18 */ beq lbl_80246764
/* 80246750 002423B0 2C 00 00 04 */ cmpwi r0, 4
/* 80246754 002423B4 40 82 00 28 */ bne lbl_8024677C
/* 80246758 002423B8 80 1F 00 0C */ lwz r0, 0xc(r31)
/* 8024675C 002423BC 54 00 03 5B */ rlwinm. r0, r0, 0, 0xd, 0xd
/* 80246760 002423C0 41 82 00 1C */ beq lbl_8024677C
lbl_80246764:
/* 80246764 002423C4 7F A3 EB 78 */ mr r3, r29
/* 80246768 002423C8 4B FF F6 45 */ bl func_80245DAC
/* 8024676C 002423CC 2C 03 00 00 */ cmpwi r3, 0
/* 80246770 002423D0 40 82 00 0C */ bne lbl_8024677C
/* 80246774 002423D4 38 60 00 00 */ li r3, 0
/* 80246778 002423D8 48 00 00 10 */ b lbl_80246788
lbl_8024677C:
/* 8024677C 002423DC 7F A3 EB 78 */ mr r3, r29
/* 80246780 002423E0 7F E4 FB 78 */ mr r4, r31
/* 80246784 002423E4 4B FF FC 65 */ bl func_802463E8
lbl_80246788:
/* 80246788 002423E8 80 01 00 A4 */ lwz r0, 0xa4(r1)
/* 8024678C 002423EC 83 E1 00 9C */ lwz r31, 0x9c(r1)
/* 80246790 002423F0 83 C1 00 98 */ lwz r30, 0x98(r1)
/* 80246794 002423F4 83 A1 00 94 */ lwz r29, 0x94(r1)
/* 80246798 002423F8 7C 08 03 A6 */ mtlr r0
/* 8024679C 002423FC 38 21 00 A0 */ addi r1, r1, 0xa0
/* 802467A0 00242400 4E 80 00 20 */ blr
.global func_802467A4
func_802467A4:
/* 802467A4 00242404 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 802467A8 00242408 7C 08 02 A6 */ mflr r0
/* 802467AC 0024240C 90 01 00 14 */ stw r0, 0x14(r1)
/* 802467B0 00242410 93 E1 00 0C */ stw r31, 0xc(r1)
/* 802467B4 00242414 93 C1 00 08 */ stw r30, 8(r1)
/* 802467B8 00242418 7C 7E 1B 78 */ mr r30, r3
/* 802467BC 0024241C 48 02 7F A1 */ bl OSDisableInterrupts
/* 802467C0 00242420 80 1E 00 10 */ lwz r0, 0x10(r30)
/* 802467C4 00242424 38 80 00 01 */ li r4, 1
/* 802467C8 00242428 98 9E 00 2E */ stb r4, 0x2e(r30)
/* 802467CC 0024242C 7C 7F 1B 78 */ mr r31, r3
/* 802467D0 00242430 2C 00 00 03 */ cmpwi r0, 3
/* 802467D4 00242434 41 82 01 20 */ beq lbl_802468F4
/* 802467D8 00242438 40 80 00 14 */ bge lbl_802467EC
/* 802467DC 0024243C 2C 00 00 01 */ cmpwi r0, 1
/* 802467E0 00242440 41 82 00 14 */ beq lbl_802467F4
/* 802467E4 00242444 40 80 00 84 */ bge lbl_80246868
/* 802467E8 00242448 48 00 01 0C */ b lbl_802468F4
lbl_802467EC:
/* 802467EC 0024244C 2C 00 00 05 */ cmpwi r0, 5
/* 802467F0 00242450 40 80 01 04 */ bge lbl_802468F4
lbl_802467F4:
/* 802467F4 00242454 80 9E 00 08 */ lwz r4, 8(r30)
/* 802467F8 00242458 7F C3 F3 78 */ mr r3, r30
/* 802467FC 0024245C 48 00 14 61 */ bl func_80247C5C
/* 80246800 00242460 28 03 FF FF */ cmplwi r3, 0xffff
/* 80246804 00242464 41 82 00 58 */ beq lbl_8024685C
/* 80246808 00242468 80 9E 00 44 */ lwz r4, 0x44(r30)
/* 8024680C 0024246C 2C 04 00 00 */ cmpwi r4, 0
/* 80246810 00242470 41 82 00 38 */ beq lbl_80246848
/* 80246814 00242474 80 64 00 00 */ lwz r3, 0(r4)
/* 80246818 00242478 2C 03 00 00 */ cmpwi r3, 0
/* 8024681C 0024247C 41 82 00 14 */ beq lbl_80246830
/* 80246820 00242480 38 04 00 04 */ addi r0, r4, 4
/* 80246824 00242484 90 7E 00 08 */ stw r3, 8(r30)
/* 80246828 00242488 90 1E 00 44 */ stw r0, 0x44(r30)
/* 8024682C 0024248C 48 00 00 1C */ b lbl_80246848
lbl_80246830:
/* 80246830 00242490 38 00 00 00 */ li r0, 0
/* 80246834 00242494 7F C3 F3 78 */ mr r3, r30
/* 80246838 00242498 90 1E 00 44 */ stw r0, 0x44(r30)
/* 8024683C 0024249C 38 80 00 0A */ li r4, 0xa
/* 80246840 002424A0 48 00 0F F5 */ bl func_80247834
/* 80246844 002424A4 48 00 00 B0 */ b lbl_802468F4
lbl_80246848:
/* 80246848 002424A8 80 9E 00 08 */ lwz r4, 8(r30)
/* 8024684C 002424AC 7F C3 F3 78 */ mr r3, r30
/* 80246850 002424B0 48 00 33 05 */ bl func_80249B54
/* 80246854 002424B4 90 7E 00 24 */ stw r3, 0x24(r30)
/* 80246858 002424B8 90 7E 00 28 */ stw r3, 0x28(r30)
lbl_8024685C:
/* 8024685C 002424BC 7F C3 F3 78 */ mr r3, r30
/* 80246860 002424C0 4B FF FD 5D */ bl func_802465BC
/* 80246864 002424C4 48 00 00 90 */ b lbl_802468F4
lbl_80246868:
/* 80246868 002424C8 80 9E 00 08 */ lwz r4, 8(r30)
/* 8024686C 002424CC 7F C3 F3 78 */ mr r3, r30
/* 80246870 002424D0 48 00 13 ED */ bl func_80247C5C
/* 80246874 002424D4 28 03 FF FF */ cmplwi r3, 0xffff
/* 80246878 002424D8 41 82 00 54 */ beq lbl_802468CC
/* 8024687C 002424DC 80 9E 00 08 */ lwz r4, 8(r30)
/* 80246880 002424E0 7F C3 F3 78 */ mr r3, r30
/* 80246884 002424E4 48 00 13 D9 */ bl func_80247C5C
/* 80246888 002424E8 7C 64 1B 78 */ mr r4, r3
/* 8024688C 002424EC 80 7E 00 00 */ lwz r3, 0(r30)
/* 80246890 002424F0 4B FF F1 7D */ bl func_80245A0C
/* 80246894 002424F4 28 03 00 01 */ cmplwi r3, 1
/* 80246898 002424F8 40 82 00 14 */ bne lbl_802468AC
/* 8024689C 002424FC 7F C3 F3 78 */ mr r3, r30
/* 802468A0 00242500 38 80 00 0A */ li r4, 0xa
/* 802468A4 00242504 48 00 0F 91 */ bl func_80247834
/* 802468A8 00242508 48 00 00 4C */ b lbl_802468F4
lbl_802468AC:
/* 802468AC 0024250C 80 9E 00 08 */ lwz r4, 8(r30)
/* 802468B0 00242510 7F C3 F3 78 */ mr r3, r30
/* 802468B4 00242514 48 00 13 A9 */ bl func_80247C5C
/* 802468B8 00242518 90 7E 00 24 */ stw r3, 0x24(r30)
/* 802468BC 0024251C 90 7E 00 28 */ stw r3, 0x28(r30)
/* 802468C0 00242520 7F C3 F3 78 */ mr r3, r30
/* 802468C4 00242524 4B FF FC F9 */ bl func_802465BC
/* 802468C8 00242528 48 00 00 2C */ b lbl_802468F4
lbl_802468CC:
/* 802468CC 0024252C 7F C3 F3 78 */ mr r3, r30
/* 802468D0 00242530 4B FF F5 51 */ bl func_80245E20
/* 802468D4 00242534 28 03 00 01 */ cmplwi r3, 1
/* 802468D8 00242538 40 82 00 10 */ bne lbl_802468E8
/* 802468DC 0024253C 7F C3 F3 78 */ mr r3, r30
/* 802468E0 00242540 4B FF FC DD */ bl func_802465BC
/* 802468E4 00242544 48 00 00 10 */ b lbl_802468F4
lbl_802468E8:
/* 802468E8 00242548 7F C3 F3 78 */ mr r3, r30
/* 802468EC 0024254C 38 80 00 0A */ li r4, 0xa
/* 802468F0 00242550 48 00 0F 45 */ bl func_80247834
lbl_802468F4:
/* 802468F4 00242554 7F E3 FB 78 */ mr r3, r31
/* 802468F8 00242558 48 02 7E 8D */ bl OSRestoreInterrupts
/* 802468FC 0024255C 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80246900 00242560 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80246904 00242564 83 C1 00 08 */ lwz r30, 8(r1)
/* 80246908 00242568 7C 08 03 A6 */ mtlr r0
/* 8024690C 0024256C 38 21 00 10 */ addi r1, r1, 0x10
/* 80246910 00242570 4E 80 00 20 */ blr
lbl_80246914:
/* 80246914 00242574 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80246918 00242578 7C 08 02 A6 */ mflr r0
/* 8024691C 0024257C 90 01 00 14 */ stw r0, 0x14(r1)
/* 80246920 00242580 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80246924 00242584 93 C1 00 08 */ stw r30, 8(r1)
/* 80246928 00242588 7C 7E 1B 78 */ mr r30, r3
/* 8024692C 0024258C 7C 83 23 78 */ mr r3, r4
/* 80246930 00242590 48 00 0A 45 */ bl func_80247374
/* 80246934 00242594 2C 03 00 00 */ cmpwi r3, 0
/* 80246938 00242598 7C 7F 1B 78 */ mr r31, r3
/* 8024693C 0024259C 41 82 00 64 */ beq lbl_802469A0
/* 80246940 002425A0 2C 1E 00 00 */ cmpwi r30, 0
/* 80246944 002425A4 40 80 00 10 */ bge lbl_80246954
/* 80246948 002425A8 38 80 FC 1C */ li r4, -996
/* 8024694C 002425AC 48 00 0E E9 */ bl func_80247834
/* 80246950 002425B0 48 00 00 50 */ b lbl_802469A0
lbl_80246954:
/* 80246954 002425B4 80 A3 00 1C */ lwz r5, 0x1c(r3)
/* 80246958 002425B8 3C 80 00 01 */ lis r4, 0x0000FFFF@ha
/* 8024695C 002425BC 80 C3 00 3C */ lwz r6, 0x3c(r3)
/* 80246960 002425C0 38 84 FF FF */ addi r4, r4, 0x0000FFFF@l
/* 80246964 002425C4 80 A5 00 08 */ lwz r5, 8(r5)
/* 80246968 002425C8 4B FF E4 7D */ bl func_80244DE4
/* 8024696C 002425CC 2C 03 00 00 */ cmpwi r3, 0
/* 80246970 002425D0 7C 66 1B 78 */ mr r6, r3
/* 80246974 002425D4 41 82 00 24 */ beq lbl_80246998
/* 80246978 002425D8 80 9F 00 1C */ lwz r4, 0x1c(r31)
/* 8024697C 002425DC 7F E3 FB 78 */ mr r3, r31
/* 80246980 002425E0 80 BF 00 20 */ lwz r5, 0x20(r31)
/* 80246984 002425E4 39 00 00 00 */ li r8, 0
/* 80246988 002425E8 80 E4 00 08 */ lwz r7, 8(r4)
/* 8024698C 002425EC 38 80 00 00 */ li r4, 0
/* 80246990 002425F0 39 20 00 00 */ li r9, 0
/* 80246994 002425F4 4B FF F2 11 */ bl func_80245BA4
lbl_80246998:
/* 80246998 002425F8 7F E3 FB 78 */ mr r3, r31
/* 8024699C 002425FC 4B FF FE 09 */ bl func_802467A4
lbl_802469A0:
/* 802469A0 00242600 80 01 00 14 */ lwz r0, 0x14(r1)
/* 802469A4 00242604 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 802469A8 00242608 83 C1 00 08 */ lwz r30, 8(r1)
/* 802469AC 0024260C 7C 08 03 A6 */ mtlr r0
/* 802469B0 00242610 38 21 00 10 */ addi r1, r1, 0x10
/* 802469B4 00242614 4E 80 00 20 */ blr
lbl_802469B8:
/* 802469B8 00242618 2C 03 00 00 */ cmpwi r3, 0
/* 802469BC 0024261C 4D 82 00 20 */ beqlr
/* 802469C0 00242620 80 63 00 10 */ lwz r3, 0x10(r3)
/* 802469C4 00242624 4B FF FD E0 */ b func_802467A4
/* 802469C8 00242628 4E 80 00 20 */ blr
.global func_802469CC
func_802469CC:
/* 802469CC 0024262C 94 21 FF D0 */ stwu r1, -0x30(r1)
/* 802469D0 00242630 7C 08 02 A6 */ mflr r0
/* 802469D4 00242634 90 01 00 34 */ stw r0, 0x34(r1)
/* 802469D8 00242638 39 61 00 30 */ addi r11, r1, 0x30
/* 802469DC 0024263C 4B F8 07 45 */ bl _savegpr_25
/* 802469E0 00242640 28 05 00 01 */ cmplwi r5, 1
/* 802469E4 00242644 90 C3 00 04 */ stw r6, 4(r3)
/* 802469E8 00242648 83 C1 00 38 */ lwz r30, 0x38(r1)
/* 802469EC 0024264C 7C 79 1B 78 */ mr r25, r3
/* 802469F0 00242650 7C 9A 23 78 */ mr r26, r4
/* 802469F4 00242654 7C FB 3B 78 */ mr r27, r7
/* 802469F8 00242658 7D 1C 43 78 */ mr r28, r8
/* 802469FC 0024265C 7D 3D 4B 78 */ mr r29, r9
/* 80246A00 00242660 40 82 00 7C */ bne lbl_80246A7C
/* 80246A04 00242664 80 0D A5 78 */ lwz r0, lbl_8063F838-_SDA_BASE_(r13)
/* 80246A08 00242668 2C 00 00 00 */ cmpwi r0, 0
/* 80246A0C 0024266C 40 82 00 0C */ bne lbl_80246A18
/* 80246A10 00242670 48 02 7D 61 */ bl OSEnableInterrupts
/* 80246A14 00242674 7C 7F 1B 78 */ mr r31, r3
lbl_80246A18:
/* 80246A18 00242678 7F 23 CB 78 */ mr r3, r25
/* 80246A1C 0024267C 7F 44 D3 78 */ mr r4, r26
/* 80246A20 00242680 7F 65 DB 78 */ mr r5, r27
/* 80246A24 00242684 7F 86 E3 78 */ mr r6, r28
/* 80246A28 00242688 7F A7 EB 78 */ mr r7, r29
/* 80246A2C 0024268C 7F C8 F3 78 */ mr r8, r30
/* 80246A30 00242690 4B FF F1 1D */ bl func_80245B4C
/* 80246A34 00242694 2C 03 00 00 */ cmpwi r3, 0
/* 80246A38 00242698 40 82 00 2C */ bne lbl_80246A64
/* 80246A3C 0024269C 7F 23 CB 78 */ mr r3, r25
/* 80246A40 002426A0 38 80 FC 1C */ li r4, -996
/* 80246A44 002426A4 48 00 0D F1 */ bl func_80247834
/* 80246A48 002426A8 80 0D A5 78 */ lwz r0, lbl_8063F838-_SDA_BASE_(r13)
/* 80246A4C 002426AC 2C 00 00 00 */ cmpwi r0, 0
/* 80246A50 002426B0 40 82 00 0C */ bne lbl_80246A5C
/* 80246A54 002426B4 7F E3 FB 78 */ mr r3, r31
/* 80246A58 002426B8 48 02 7D 2D */ bl OSRestoreInterrupts
lbl_80246A5C:
/* 80246A5C 002426BC 38 60 00 00 */ li r3, 0
/* 80246A60 002426C0 48 00 00 AC */ b lbl_80246B0C
lbl_80246A64:
/* 80246A64 002426C4 80 0D A5 78 */ lwz r0, lbl_8063F838-_SDA_BASE_(r13)
/* 80246A68 002426C8 2C 00 00 00 */ cmpwi r0, 0
/* 80246A6C 002426CC 40 82 00 9C */ bne lbl_80246B08
/* 80246A70 002426D0 7F E3 FB 78 */ mr r3, r31
/* 80246A74 002426D4 48 02 7D 11 */ bl OSRestoreInterrupts
/* 80246A78 002426D8 48 00 00 90 */ b lbl_80246B08
lbl_80246A7C:
/* 80246A7C 002426DC 2C 04 00 00 */ cmpwi r4, 0
/* 80246A80 002426E0 41 82 00 44 */ beq lbl_80246AC4
/* 80246A84 002426E4 80 04 00 38 */ lwz r0, 0x38(r4)
/* 80246A88 002426E8 2C 00 00 00 */ cmpwi r0, 0
/* 80246A8C 002426EC 41 82 00 38 */ beq lbl_80246AC4
/* 80246A90 002426F0 7C 03 03 78 */ mr r3, r0
/* 80246A94 002426F4 7F 64 DB 78 */ mr r4, r27
/* 80246A98 002426F8 7F 85 E3 78 */ mr r5, r28
/* 80246A9C 002426FC 7F A6 EB 78 */ mr r6, r29
/* 80246AA0 00242700 7D 47 53 78 */ mr r7, r10
/* 80246AA4 00242704 4B F9 5A 4D */ bl func_801DC4F0
/* 80246AA8 00242708 2C 03 00 00 */ cmpwi r3, 0
/* 80246AAC 0024270C 40 82 00 5C */ bne lbl_80246B08
/* 80246AB0 00242710 7F 23 CB 78 */ mr r3, r25
/* 80246AB4 00242714 38 80 FC 1C */ li r4, -996
/* 80246AB8 00242718 48 00 0D 7D */ bl func_80247834
/* 80246ABC 0024271C 38 60 00 00 */ li r3, 0
/* 80246AC0 00242720 48 00 00 4C */ b lbl_80246B0C
lbl_80246AC4:
/* 80246AC4 00242724 2C 04 00 00 */ cmpwi r4, 0
/* 80246AC8 00242728 41 82 00 0C */ beq lbl_80246AD4
/* 80246ACC 0024272C 80 04 00 04 */ lwz r0, 4(r4)
/* 80246AD0 00242730 7F A9 02 14 */ add r29, r9, r0
lbl_80246AD4:
/* 80246AD4 00242734 80 63 00 0C */ lwz r3, 0xc(r3)
/* 80246AD8 00242738 7F 64 DB 78 */ mr r4, r27
/* 80246ADC 0024273C 7F 85 E3 78 */ mr r5, r28
/* 80246AE0 00242740 7F A6 EB 78 */ mr r6, r29
/* 80246AE4 00242744 7D 47 53 78 */ mr r7, r10
/* 80246AE8 00242748 4B F9 5A 09 */ bl func_801DC4F0
/* 80246AEC 0024274C 2C 03 00 00 */ cmpwi r3, 0
/* 80246AF0 00242750 40 82 00 18 */ bne lbl_80246B08
/* 80246AF4 00242754 7F 23 CB 78 */ mr r3, r25
/* 80246AF8 00242758 38 80 FC 1C */ li r4, -996
/* 80246AFC 0024275C 48 00 0D 39 */ bl func_80247834
/* 80246B00 00242760 38 60 00 00 */ li r3, 0
/* 80246B04 00242764 48 00 00 08 */ b lbl_80246B0C
lbl_80246B08:
/* 80246B08 00242768 38 60 00 01 */ li r3, 1
lbl_80246B0C:
/* 80246B0C 0024276C 39 61 00 30 */ addi r11, r1, 0x30
/* 80246B10 00242770 4B F8 06 5D */ bl _restgpr_25
/* 80246B14 00242774 80 01 00 34 */ lwz r0, 0x34(r1)
/* 80246B18 00242778 7C 08 03 A6 */ mtlr r0
/* 80246B1C 0024277C 38 21 00 30 */ addi r1, r1, 0x30
/* 80246B20 00242780 4E 80 00 20 */ blr
.global func_80246B24
func_80246B24:
/* 80246B24 00242784 94 21 FF E0 */ stwu r1, -0x20(r1)
/* 80246B28 00242788 7C 08 02 A6 */ mflr r0
/* 80246B2C 0024278C 90 01 00 24 */ stw r0, 0x24(r1)
/* 80246B30 00242790 93 E1 00 1C */ stw r31, 0x1c(r1)
/* 80246B34 00242794 93 C1 00 18 */ stw r30, 0x18(r1)
/* 80246B38 00242798 93 A1 00 14 */ stw r29, 0x14(r1)
/* 80246B3C 0024279C 93 81 00 10 */ stw r28, 0x10(r1)
/* 80246B40 002427A0 7C 7C 1B 78 */ mr r28, r3
/* 80246B44 002427A4 80 03 00 20 */ lwz r0, 0x20(r3)
/* 80246B48 002427A8 2C 00 00 00 */ cmpwi r0, 0
/* 80246B4C 002427AC 41 82 00 18 */ beq lbl_80246B64
/* 80246B50 002427B0 88 03 00 2E */ lbz r0, 0x2e(r3)
/* 80246B54 002427B4 28 00 00 01 */ cmplwi r0, 1
/* 80246B58 002427B8 40 82 00 0C */ bne lbl_80246B64
/* 80246B5C 002427BC 4B FF FC 49 */ bl func_802467A4
/* 80246B60 002427C0 48 00 00 DC */ b lbl_80246C3C
lbl_80246B64:
/* 80246B64 002427C4 3B E0 00 00 */ li r31, 0
lbl_80246B68:
/* 80246B68 002427C8 7F 83 E3 78 */ mr r3, r28
/* 80246B6C 002427CC 4B FF DF 45 */ bl func_80244AB0
/* 80246B70 002427D0 28 03 00 01 */ cmplwi r3, 1
/* 80246B74 002427D4 41 82 00 4C */ beq lbl_80246BC0
/* 80246B78 002427D8 48 02 7B E5 */ bl OSDisableInterrupts
/* 80246B7C 002427DC 7C 7D 1B 78 */ mr r29, r3
/* 80246B80 002427E0 48 00 0A 41 */ bl func_802475C0
/* 80246B84 002427E4 2C 03 00 00 */ cmpwi r3, 0
/* 80246B88 002427E8 7C 7E 1B 78 */ mr r30, r3
/* 80246B8C 002427EC 40 82 00 24 */ bne lbl_80246BB0
/* 80246B90 002427F0 7F A3 EB 78 */ mr r3, r29
/* 80246B94 002427F4 48 02 7B F1 */ bl OSRestoreInterrupts
/* 80246B98 002427F8 2C 1E 00 00 */ cmpwi r30, 0
/* 80246B9C 002427FC 41 82 00 A0 */ beq lbl_80246C3C
/* 80246BA0 00242800 7F 83 E3 78 */ mr r3, r28
/* 80246BA4 00242804 38 80 FC 1C */ li r4, -996
/* 80246BA8 00242808 48 00 0C 8D */ bl func_80247834
/* 80246BAC 0024280C 48 00 00 90 */ b lbl_80246C3C
lbl_80246BB0:
/* 80246BB0 00242810 93 E3 00 14 */ stw r31, 0x14(r3)
/* 80246BB4 00242814 7F A3 EB 78 */ mr r3, r29
/* 80246BB8 00242818 48 02 7B CD */ bl OSRestoreInterrupts
/* 80246BBC 0024281C 4B FF FF AC */ b lbl_80246B68
lbl_80246BC0:
/* 80246BC0 00242820 48 02 7B 9D */ bl OSDisableInterrupts
/* 80246BC4 00242824 7C 7E 1B 78 */ mr r30, r3
/* 80246BC8 00242828 3F E0 00 01 */ lis r31, 0x0000FFFF@ha
/* 80246BCC 0024282C 80 7C 00 00 */ lwz r3, 0(r28)
/* 80246BD0 00242830 38 9F FF FF */ addi r4, r31, 0x0000FFFF@l
/* 80246BD4 00242834 3B A0 00 00 */ li r29, 0
/* 80246BD8 00242838 4B FF EE 35 */ bl func_80245A0C
/* 80246BDC 0024283C 28 03 00 01 */ cmplwi r3, 1
/* 80246BE0 00242840 40 82 00 18 */ bne lbl_80246BF8
/* 80246BE4 00242844 80 7C 00 00 */ lwz r3, 0(r28)
/* 80246BE8 00242848 38 9F FF FF */ addi r4, r31, -1
/* 80246BEC 0024284C 38 A0 00 01 */ li r5, 1
/* 80246BF0 00242850 4B FF EA 9D */ bl func_8024568C
/* 80246BF4 00242854 3B A0 00 01 */ li r29, 1
lbl_80246BF8:
/* 80246BF8 00242858 7F C3 F3 78 */ mr r3, r30
/* 80246BFC 0024285C 48 02 7B 89 */ bl OSRestoreInterrupts
/* 80246C00 00242860 3C 60 80 24 */ lis r3, lbl_802469B8@ha
/* 80246C04 00242864 3C 80 00 01 */ lis r4, 0x0000FFFF@ha
/* 80246C08 00242868 38 63 69 B8 */ addi r3, r3, lbl_802469B8@l
/* 80246C0C 0024286C 3D 40 80 24 */ lis r10, lbl_80246914@ha
/* 80246C10 00242870 90 61 00 08 */ stw r3, 8(r1)
/* 80246C14 00242874 38 C4 FF FF */ addi r6, r4, 0x0000FFFF@l
/* 80246C18 00242878 7F 83 E3 78 */ mr r3, r28
/* 80246C1C 0024287C 7F A5 EB 78 */ mr r5, r29
/* 80246C20 00242880 81 1C 00 1C */ lwz r8, 0x1c(r28)
/* 80246C24 00242884 39 4A 69 14 */ addi r10, r10, lbl_80246914@l
/* 80246C28 00242888 80 FC 00 20 */ lwz r7, 0x20(r28)
/* 80246C2C 0024288C 38 80 00 00 */ li r4, 0
/* 80246C30 00242890 81 08 00 08 */ lwz r8, 8(r8)
/* 80246C34 00242894 39 20 00 00 */ li r9, 0
/* 80246C38 00242898 4B FF FD 95 */ bl func_802469CC
lbl_80246C3C:
/* 80246C3C 0024289C 80 01 00 24 */ lwz r0, 0x24(r1)
/* 80246C40 002428A0 83 E1 00 1C */ lwz r31, 0x1c(r1)
/* 80246C44 002428A4 83 C1 00 18 */ lwz r30, 0x18(r1)
/* 80246C48 002428A8 83 A1 00 14 */ lwz r29, 0x14(r1)
/* 80246C4C 002428AC 83 81 00 10 */ lwz r28, 0x10(r1)
/* 80246C50 002428B0 7C 08 03 A6 */ mtlr r0
/* 80246C54 002428B4 38 21 00 20 */ addi r1, r1, 0x20
/* 80246C58 002428B8 4E 80 00 20 */ blr
.global func_80246C5C
func_80246C5C:
/* 80246C5C 002428BC 94 21 FF F0 */ stwu r1, -0x10(r1)
/* 80246C60 002428C0 7C 08 02 A6 */ mflr r0
/* 80246C64 002428C4 3C A0 80 24 */ lis r5, lbl_80245C60@ha
/* 80246C68 002428C8 38 80 00 00 */ li r4, 0
/* 80246C6C 002428CC 90 01 00 14 */ stw r0, 0x14(r1)
/* 80246C70 002428D0 38 A5 5C 60 */ addi r5, r5, lbl_80245C60@l
/* 80246C74 002428D4 93 E1 00 0C */ stw r31, 0xc(r1)
/* 80246C78 002428D8 7C 7F 1B 78 */ mr r31, r3
/* 80246C7C 002428DC 80 63 00 0C */ lwz r3, 0xc(r3)
/* 80246C80 002428E0 4B F9 5B 79 */ bl func_801DC7F8
/* 80246C84 002428E4 2C 03 00 00 */ cmpwi r3, 0
/* 80246C88 002428E8 40 82 00 10 */ bne lbl_80246C98
/* 80246C8C 002428EC 7F E3 FB 78 */ mr r3, r31
/* 80246C90 002428F0 38 80 FC 1E */ li r4, -994
/* 80246C94 002428F4 48 00 0B A1 */ bl func_80247834
lbl_80246C98:
/* 80246C98 002428F8 80 01 00 14 */ lwz r0, 0x14(r1)
/* 80246C9C 002428FC 83 E1 00 0C */ lwz r31, 0xc(r1)
/* 80246CA0 00242900 7C 08 03 A6 */ mtlr r0
/* 80246CA4 00242904 38 21 00 10 */ addi r1, r1, 0x10
/* 80246CA8 00242908 4E 80 00 20 */ blr
.global func_80246CAC
func_80246CAC:
/* 80246CAC 0024290C 38 A0 00 01 */ li r5, 1
/* 80246CB0 00242910 38 6D A5 70 */ addi r3, r13, lbl_8063F830-_SDA_BASE_
/* 80246CB4 00242914 38 80 00 04 */ li r4, 4
/* 80246CB8 00242918 38 00 00 00 */ li r0, 0
/* 80246CBC 0024291C 98 AD A5 70 */ stb r5, lbl_8063F830-_SDA_BASE_(r13)
/* 80246CC0 00242920 B0 83 00 02 */ sth r4, 2(r3)
/* 80246CC4 00242924 98 03 00 04 */ stb r0, 4(r3)
/* 80246CC8 00242928 4E 80 00 20 */ blr
|