summaryrefslogtreecommitdiff
path: root/asm/SDK/DVD/dvd.s
blob: e515fa069f58cc95c5b3c840130ed5b1db5d8fbe (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
1749
1750
1751
1752
1753
1754
1755
1756
1757
1758
1759
1760
1761
1762
1763
1764
1765
1766
1767
1768
1769
1770
1771
1772
1773
1774
1775
1776
1777
1778
1779
1780
1781
1782
1783
1784
1785
1786
1787
1788
1789
1790
1791
1792
1793
1794
1795
1796
1797
1798
1799
1800
1801
1802
1803
1804
1805
1806
1807
1808
1809
1810
1811
1812
1813
1814
1815
1816
1817
1818
1819
1820
1821
1822
1823
1824
1825
1826
1827
1828
1829
1830
1831
1832
1833
1834
1835
1836
1837
1838
1839
1840
1841
1842
1843
1844
1845
1846
1847
1848
1849
1850
1851
1852
1853
1854
1855
1856
1857
1858
1859
1860
1861
1862
1863
1864
1865
1866
1867
1868
1869
1870
1871
1872
1873
1874
1875
1876
1877
1878
1879
1880
1881
1882
1883
1884
1885
1886
1887
1888
1889
1890
1891
1892
1893
1894
1895
1896
1897
1898
1899
1900
1901
1902
1903
1904
1905
1906
1907
1908
1909
1910
1911
1912
1913
1914
1915
1916
1917
1918
1919
1920
1921
1922
1923
1924
1925
1926
1927
1928
1929
1930
1931
1932
1933
1934
1935
1936
1937
1938
1939
1940
1941
1942
1943
1944
1945
1946
1947
1948
1949
1950
1951
1952
1953
1954
1955
1956
1957
1958
1959
1960
1961
1962
1963
1964
1965
1966
1967
1968
1969
1970
1971
1972
1973
1974
1975
1976
1977
1978
1979
1980
1981
1982
1983
1984
1985
1986
1987
1988
1989
1990
1991
1992
1993
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
2027
2028
2029
2030
2031
2032
2033
2034
2035
2036
2037
2038
2039
2040
2041
2042
2043
2044
2045
2046
2047
2048
2049
2050
2051
2052
2053
2054
2055
2056
2057
2058
2059
2060
2061
2062
2063
2064
2065
2066
2067
2068
2069
2070
2071
2072
2073
2074
2075
2076
2077
2078
2079
2080
2081
2082
2083
2084
2085
2086
2087
2088
2089
2090
2091
2092
2093
2094
2095
2096
2097
2098
2099
2100
2101
2102
2103
2104
2105
2106
2107
2108
2109
2110
2111
2112
2113
2114
2115
2116
2117
2118
2119
2120
2121
2122
2123
2124
2125
2126
2127
2128
2129
2130
2131
2132
2133
2134
2135
2136
2137
2138
2139
2140
2141
2142
2143
2144
2145
2146
2147
2148
2149
2150
2151
2152
2153
2154
2155
2156
2157
2158
2159
2160
2161
2162
2163
2164
2165
2166
2167
2168
2169
2170
2171
2172
2173
2174
2175
2176
2177
2178
2179
2180
2181
2182
2183
2184
2185
2186
2187
2188
2189
2190
2191
2192
2193
2194
2195
2196
2197
2198
2199
2200
2201
2202
2203
2204
2205
2206
2207
2208
2209
2210
2211
2212
2213
2214
2215
2216
2217
2218
2219
2220
2221
2222
2223
2224
2225
2226
2227
2228
2229
2230
2231
2232
2233
2234
2235
2236
2237
2238
2239
2240
2241
2242
2243
2244
2245
2246
2247
2248
2249
2250
2251
2252
2253
2254
2255
2256
2257
2258
2259
2260
2261
2262
2263
2264
2265
2266
2267
2268
2269
2270
2271
2272
2273
2274
2275
2276
2277
2278
2279
2280
2281
2282
2283
2284
2285
2286
2287
2288
2289
2290
2291
2292
2293
2294
2295
2296
2297
2298
2299
2300
2301
2302
2303
2304
2305
2306
2307
2308
2309
2310
2311
2312
2313
2314
2315
2316
2317
2318
2319
2320
2321
2322
2323
2324
2325
2326
2327
2328
2329
2330
2331
2332
2333
2334
2335
2336
2337
2338
2339
2340
2341
2342
2343
2344
2345
2346
2347
2348
2349
2350
2351
2352
2353
2354
2355
2356
2357
2358
2359
2360
2361
2362
2363
2364
2365
2366
2367
2368
2369
2370
2371
2372
2373
2374
2375
2376
2377
2378
2379
2380
2381
2382
2383
2384
2385
2386
2387
2388
2389
2390
2391
2392
2393
2394
2395
2396
2397
2398
2399
2400
2401
2402
2403
2404
2405
2406
2407
2408
2409
2410
2411
2412
2413
2414
2415
2416
2417
2418
2419
2420
2421
2422
2423
2424
2425
2426
2427
2428
2429
2430
2431
2432
2433
2434
2435
2436
2437
2438
2439
2440
2441
2442
2443
2444
2445
2446
2447
2448
2449
2450
2451
2452
2453
2454
2455
2456
2457
2458
2459
2460
2461
2462
2463
2464
2465
2466
2467
2468
2469
2470
2471
2472
2473
2474
2475
2476
2477
2478
2479
2480
2481
2482
2483
2484
2485
2486
2487
2488
2489
2490
2491
2492
2493
2494
2495
2496
2497
2498
2499
2500
2501
2502
2503
2504
2505
2506
2507
2508
2509
2510
2511
2512
2513
2514
2515
2516
2517
2518
2519
2520
2521
2522
2523
2524
2525
2526
2527
2528
2529
2530
2531
2532
2533
2534
2535
2536
2537
2538
2539
2540
2541
2542
2543
2544
2545
2546
2547
2548
2549
2550
2551
2552
2553
2554
2555
2556
2557
2558
2559
2560
2561
2562
2563
2564
2565
2566
2567
2568
2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
2587
2588
2589
2590
2591
2592
2593
2594
2595
2596
2597
2598
2599
2600
2601
2602
2603
2604
2605
2606
2607
2608
2609
2610
2611
2612
2613
2614
2615
2616
2617
2618
2619
2620
2621
2622
2623
2624
2625
2626
2627
2628
2629
2630
2631
2632
2633
2634
2635
2636
2637
2638
2639
2640
2641
2642
2643
2644
2645
2646
2647
2648
2649
2650
2651
2652
2653
2654
2655
2656
2657
2658
2659
2660
2661
2662
2663
2664
2665
2666
2667
2668
2669
2670
2671
2672
2673
2674
2675
2676
2677
2678
2679
2680
2681
2682
2683
2684
2685
2686
2687
2688
2689
2690
2691
2692
2693
2694
2695
2696
2697
2698
2699
2700
2701
2702
2703
2704
2705
2706
2707
2708
2709
2710
2711
2712
2713
2714
2715
2716
2717
2718
2719
2720
2721
2722
2723
2724
2725
2726
2727
2728
2729
2730
2731
2732
2733
2734
2735
2736
2737
2738
2739
2740
2741
2742
2743
2744
2745
2746
2747
2748
2749
2750
2751
2752
2753
2754
2755
2756
2757
2758
2759
2760
2761
2762
2763
2764
2765
2766
2767
2768
2769
2770
2771
2772
2773
2774
2775
2776
2777
2778
2779
2780
2781
2782
2783
2784
2785
2786
2787
2788
2789
2790
2791
2792
2793
2794
2795
2796
2797
2798
2799
2800
2801
2802
2803
2804
2805
2806
2807
2808
2809
2810
2811
2812
2813
2814
2815
2816
2817
2818
2819
2820
2821
2822
2823
2824
2825
2826
2827
2828
2829
2830
2831
2832
2833
2834
2835
2836
2837
2838
2839
2840
2841
2842
2843
2844
2845
2846
2847
2848
2849
2850
2851
2852
2853
2854
2855
2856
2857
2858
2859
2860
2861
2862
2863
2864
2865
2866
2867
2868
2869
2870
2871
2872
2873
2874
2875
2876
2877
2878
2879
2880
2881
2882
2883
2884
2885
2886
2887
2888
2889
2890
2891
2892
2893
2894
2895
2896
2897
2898
2899
2900
2901
2902
2903
2904
2905
2906
2907
2908
2909
2910
2911
2912
2913
2914
2915
2916
2917
2918
2919
2920
2921
2922
2923
2924
2925
2926
2927
2928
2929
2930
2931
2932
2933
2934
2935
2936
2937
2938
2939
2940
2941
2942
2943
2944
2945
2946
2947
2948
2949
2950
2951
2952
2953
2954
2955
2956
2957
2958
2959
2960
2961
2962
2963
2964
2965
2966
2967
2968
2969
2970
2971
2972
2973
2974
2975
2976
2977
2978
2979
2980
2981
2982
2983
2984
2985
2986
2987
2988
2989
2990
2991
2992
2993
2994
2995
2996
2997
2998
2999
3000
3001
3002
3003
3004
3005
3006
3007
3008
3009
3010
3011
3012
3013
3014
3015
3016
3017
3018
3019
3020
3021
3022
3023
3024
3025
3026
3027
3028
3029
3030
3031
3032
3033
3034
3035
3036
3037
3038
3039
3040
3041
3042
3043
3044
3045
3046
3047
3048
3049
3050
3051
3052
3053
3054
3055
3056
3057
3058
3059
3060
3061
3062
3063
3064
3065
3066
3067
3068
3069
3070
3071
3072
3073
3074
3075
3076
3077
3078
3079
3080
3081
3082
3083
3084
3085
3086
3087
3088
3089
3090
3091
3092
3093
3094
3095
3096
3097
3098
3099
3100
3101
3102
3103
3104
3105
3106
3107
3108
3109
3110
3111
3112
3113
3114
3115
3116
3117
3118
3119
3120
3121
3122
3123
3124
3125
3126
3127
3128
3129
3130
3131
3132
3133
3134
3135
3136
3137
3138
3139
3140
3141
3142
3143
3144
3145
3146
3147
3148
3149
3150
3151
3152
3153
3154
3155
3156
3157
3158
3159
3160
3161
3162
3163
3164
3165
3166
3167
3168
3169
3170
3171
3172
3173
3174
3175
3176
3177
3178
3179
3180
3181
3182
3183
3184
3185
3186
3187
3188
3189
3190
3191
3192
3193
3194
3195
3196
3197
3198
3199
3200
3201
3202
3203
3204
3205
3206
3207
3208
3209
3210
3211
3212
3213
3214
3215
3216
3217
3218
3219
3220
3221
3222
3223
3224
3225
3226
3227
3228
3229
3230
3231
3232
3233
3234
3235
3236
3237
3238
3239
3240
3241
3242
3243
3244
3245
3246
3247
3248
3249
3250
3251
3252
3253
3254
3255
3256
3257
3258
3259
3260
3261
3262
3263
3264
3265
3266
3267
3268
3269
3270
3271
3272
3273
3274
3275
3276
3277
3278
3279
3280
3281
3282
3283
3284
3285
3286
3287
3288
3289
3290
3291
3292
3293
3294
3295
3296
3297
3298
3299
3300
3301
3302
3303
3304
3305
3306
3307
3308
3309
3310
3311
3312
3313
3314
3315
3316
3317
3318
3319
3320
3321
3322
3323
3324
3325
3326
3327
3328
3329
3330
3331
3332
3333
3334
3335
3336
3337
3338
3339
3340
3341
3342
3343
3344
3345
3346
3347
3348
3349
3350
3351
3352
3353
3354
3355
3356
3357
3358
3359
3360
3361
3362
3363
3364
3365
3366
3367
3368
3369
3370
3371
3372
3373
3374
3375
3376
3377
3378
3379
3380
3381
3382
3383
3384
3385
3386
3387
3388
3389
3390
3391
3392
3393
3394
3395
3396
3397
3398
3399
3400
3401
3402
3403
3404
3405
3406
3407
3408
3409
3410
3411
3412
3413
3414
3415
3416
3417
3418
3419
3420
3421
3422
3423
3424
3425
3426
3427
3428
3429
3430
3431
3432
3433
3434
3435
3436
3437
3438
3439
3440
3441
3442
3443
3444
3445
3446
3447
3448
3449
3450
3451
3452
3453
3454
3455
3456
3457
3458
3459
3460
3461
3462
3463
3464
3465
3466
3467
3468
3469
3470
3471
3472
3473
3474
3475
3476
3477
3478
3479
3480
3481
3482
3483
3484
3485
3486
3487
3488
3489
3490
3491
3492
3493
3494
3495
3496
3497
3498
3499
3500
3501
3502
3503
3504
3505
3506
3507
3508
3509
3510
3511
3512
3513
3514
3515
3516
3517
3518
3519
3520
3521
3522
3523
3524
3525
3526
3527
3528
3529
3530
3531
3532
3533
3534
3535
3536
3537
3538
3539
3540
3541
3542
3543
3544
3545
3546
3547
3548
3549
3550
3551
3552
3553
3554
3555
3556
3557
3558
3559
3560
3561
3562
3563
3564
3565
3566
3567
3568
3569
3570
3571
3572
3573
3574
3575
3576
3577
3578
3579
3580
3581
3582
3583
3584
3585
3586
3587
3588
3589
3590
3591
3592
3593
3594
3595
3596
3597
3598
3599
3600
3601
3602
3603
3604
3605
3606
3607
3608
3609
3610
3611
3612
3613
3614
3615
3616
3617
3618
3619
3620
3621
3622
3623
3624
3625
3626
3627
3628
3629
3630
3631
3632
3633
3634
3635
3636
3637
3638
3639
3640
3641
3642
3643
3644
3645
3646
3647
3648
3649
3650
3651
3652
3653
3654
3655
3656
3657
3658
3659
3660
3661
3662
3663
3664
3665
3666
3667
3668
3669
3670
3671
3672
3673
3674
3675
3676
3677
3678
3679
3680
3681
3682
3683
3684
3685
3686
3687
3688
3689
3690
3691
3692
3693
3694
3695
3696
3697
3698
3699
3700
3701
3702
3703
3704
3705
3706
3707
3708
3709
3710
3711
3712
3713
3714
3715
3716
3717
3718
3719
3720
3721
3722
3723
3724
3725
3726
3727
3728
3729
3730
3731
3732
3733
3734
3735
3736
3737
3738
3739
3740
3741
3742
3743
3744
3745
3746
3747
3748
3749
3750
3751
3752
3753
3754
3755
3756
3757
3758
3759
3760
3761
3762
3763
3764
3765
3766
3767
3768
3769
3770
3771
3772
3773
3774
3775
3776
3777
3778
3779
3780
3781
3782
3783
3784
3785
3786
3787
3788
3789
3790
3791
3792
3793
3794
3795
3796
3797
3798
3799
3800
3801
3802
3803
3804
3805
3806
3807
3808
3809
3810
3811
3812
3813
3814
3815
3816
3817
3818
3819
3820
3821
3822
3823
3824
3825
3826
3827
3828
3829
3830
3831
3832
3833
3834
3835
3836
3837
3838
3839
3840
3841
3842
3843
3844
3845
3846
3847
3848
3849
3850
3851
3852
3853
3854
3855
3856
3857
3858
3859
3860
3861
3862
3863
3864
3865
3866
3867
3868
3869
3870
3871
3872
3873
3874
3875
3876
3877
3878
3879
3880
3881
3882
3883
3884
3885
3886
3887
3888
3889
3890
3891
3892
3893
3894
3895
3896
3897
3898
3899
3900
3901
3902
3903
3904
3905
3906
3907
3908
3909
3910
3911
3912
3913
3914
3915
3916
3917
3918
3919
3920
3921
3922
3923
3924
3925
3926
3927
3928
3929
3930
3931
3932
3933
3934
3935
3936
3937
3938
3939
3940
3941
3942
3943
3944
3945
3946
3947
3948
3949
3950
3951
3952
3953
3954
3955
3956
3957
3958
3959
3960
3961
3962
3963
3964
3965
3966
3967
3968
3969
3970
3971
3972
3973
3974
3975
3976
3977
3978
3979
3980
3981
3982
3983
3984
3985
3986
3987
3988
3989
3990
3991
3992
3993
3994
3995
3996
3997
3998
3999
4000
4001
4002
4003
4004
4005
4006
4007
4008
4009
4010
4011
4012
4013
4014
4015
4016
4017
4018
4019
4020
4021
4022
4023
4024
4025
4026
4027
4028
4029
4030
4031
4032
4033
4034
4035
4036
4037
4038
4039
4040
4041
4042
4043
4044
4045
4046
4047
4048
4049
4050
4051
4052
4053
4054
4055
4056
4057
4058
4059
4060
4061
4062
4063
4064
4065
4066
4067
4068
4069
4070
4071
4072
4073
4074
4075
4076
4077
4078
4079
4080
4081
4082
4083
4084
4085
4086
4087
4088
4089
4090
4091
4092
4093
4094
4095
4096
4097
4098
4099
4100
4101
4102
4103
4104
4105
4106
4107
4108
4109
4110
4111
4112
4113
4114
4115
4116
4117
4118
4119
4120
4121
4122
4123
4124
4125
4126
4127
4128
4129
4130
4131
4132
4133
4134
4135
4136
4137
4138
4139
4140
4141
4142
4143
4144
4145
4146
4147
4148
4149
4150
4151
4152
4153
4154
4155
4156
4157
4158
4159
4160
4161
4162
4163
4164
4165
4166
4167
4168
4169
4170
4171
4172
4173
4174
4175
4176
4177
4178
4179
4180
4181
4182
4183
4184
4185
4186
4187
4188
4189
4190
4191
4192
4193
4194
4195
4196
4197
4198
4199
4200
4201
4202
4203
4204
4205
4206
4207
4208
4209
4210
4211
4212
4213
4214
4215
4216
4217
4218
4219
4220
4221
4222
4223
4224
4225
4226
4227
4228
4229
4230
4231
4232
4233
4234
4235
4236
4237
4238
4239
4240
4241
4242
4243
4244
4245
4246
4247
4248
4249
4250
4251
4252
4253
4254
4255
4256
4257
4258
4259
4260
4261
4262
4263
4264
4265
4266
4267
4268
4269
4270
4271
4272
4273
4274
4275
4276
4277
4278
4279
4280
4281
4282
4283
4284
4285
4286
4287
4288
4289
4290
4291
4292
4293
4294
4295
4296
4297
4298
4299
4300
4301
4302
4303
4304
4305
4306
4307
4308
4309
4310
4311
4312
4313
4314
4315
4316
4317
4318
4319
4320
4321
4322
4323
4324
4325
4326
4327
4328
4329
4330
4331
4332
4333
4334
4335
4336
4337
4338
4339
4340
4341
4342
4343
4344
4345
4346
4347
4348
4349
4350
4351
4352
4353
4354
4355
4356
4357
4358
4359
4360
4361
4362
4363
4364
4365
4366
4367
4368
4369
4370
4371
4372
4373
4374
4375
4376
4377
4378
4379
4380
4381
4382
4383
4384
4385
4386
4387
4388
4389
4390
4391
4392
4393
4394
4395
4396
4397
4398
4399
4400
4401
4402
4403
4404
4405
4406
4407
4408
4409
4410
4411
4412
4413
4414
4415
4416
4417
4418
4419
4420
4421
4422
4423
4424
4425
4426
4427
4428
4429
4430
4431
4432
4433
4434
4435
4436
4437
4438
4439
4440
4441
4442
4443
4444
4445
4446
4447
4448
4449
4450
4451
4452
4453
4454
4455
4456
4457
4458
4459
4460
4461
4462
4463
4464
4465
4466
4467
4468
4469
4470
4471
4472
4473
4474
4475
4476
4477
4478
4479
4480
4481
4482
4483
4484
4485
4486
4487
4488
4489
4490
4491
4492
4493
4494
4495
4496
4497
4498
4499
4500
4501
4502
4503
4504
4505
4506
4507
4508
4509
4510
4511
4512
4513
4514
4515
4516
4517
4518
4519
4520
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531
4532
4533
4534
4535
4536
4537
4538
4539
4540
4541
4542
4543
4544
4545
4546
4547
4548
4549
4550
4551
4552
4553
4554
4555
4556
4557
4558
4559
4560
4561
4562
4563
4564
4565
4566
4567
4568
4569
4570
4571
4572
4573
4574
4575
4576
4577
4578
4579
4580
4581
4582
4583
4584
4585
4586
4587
4588
4589
4590
4591
4592
4593
4594
4595
4596
4597
4598
4599
4600
4601
4602
4603
4604
4605
4606
4607
4608
4609
4610
4611
4612
4613
4614
4615
4616
4617
4618
4619
4620
4621
4622
4623
4624
4625
4626
4627
4628
4629
4630
4631
4632
4633
4634
4635
4636
4637
4638
4639
4640
4641
4642
4643
4644
4645
4646
4647
4648
4649
4650
4651
4652
4653
4654
4655
4656
4657
4658
4659
4660
4661
4662
4663
4664
4665
4666
4667
4668
4669
4670
4671
4672
4673
4674
4675
4676
4677
4678
4679
4680
4681
4682
4683
4684
4685
4686
4687
4688
4689
4690
4691
4692
4693
4694
4695
4696
4697
4698
4699
4700
4701
4702
4703
4704
4705
4706
4707
4708
4709
4710
4711
4712
4713
4714
4715
4716
4717
4718
4719
4720
4721
4722
4723
4724
4725
4726
4727
4728
4729
4730
4731
4732
4733
4734
4735
4736
4737
4738
4739
4740
4741
4742
4743
4744
4745
4746
4747
4748
4749
4750
4751
4752
4753
4754
4755
4756
4757
4758
4759
4760
4761
4762
4763
4764
4765
4766
4767
4768
4769
4770
4771
4772
4773
4774
4775
4776
4777
4778
4779
4780
4781
4782
4783
4784
4785
4786
4787
4788
4789
4790
4791
4792
4793
4794
4795
4796
4797
4798
4799
4800
4801
4802
4803
4804
4805
4806
4807
4808
4809
4810
4811
4812
4813
4814
4815
4816
4817
4818
4819
4820
4821
4822
4823
4824
4825
4826
4827
4828
4829
4830
4831
4832
4833
4834
4835
4836
4837
4838
4839
4840
4841
4842
4843
4844
4845
4846
4847
4848
4849
4850
4851
4852
4853
4854
4855
4856
4857
4858
4859
4860
4861
4862
4863
4864
4865
4866
4867
4868
4869
4870
4871
4872
4873
4874
4875
4876
4877
4878
4879
4880
4881
4882
4883
4884
4885
4886
4887
4888
4889
4890
4891
4892
4893
4894
4895
4896
4897
4898
4899
4900
4901
4902
4903
4904
4905
4906
4907
4908
4909
4910
4911
4912
4913
4914
4915
4916
4917
4918
4919
4920
4921
4922
4923
4924
4925
4926
4927
4928
4929
4930
4931
4932
4933
4934
4935
4936
4937
4938
4939
4940
4941
4942
4943
4944
4945
4946
4947
4948
4949
4950
4951
4952
4953
4954
4955
4956
4957
4958
4959
4960
4961
4962
4963
4964
4965
4966
4967
4968
4969
4970
4971
4972
4973
4974
4975
4976
4977
4978
4979
4980
4981
4982
4983
4984
4985
4986
4987
4988
4989
4990
4991
4992
4993
4994
4995
4996
4997
4998
4999
5000
5001
5002
5003
5004
5005
5006
5007
5008
5009
5010
5011
5012
5013
5014
5015
5016
5017
5018
5019
5020
5021
5022
5023
5024
5025
5026
5027
5028
5029
5030
5031
5032
5033
5034
5035
5036
5037
5038
5039
5040
5041
5042
5043
5044
5045
5046
5047
5048
5049
5050
5051
5052
5053
5054
5055
5056
5057
5058
5059
5060
5061
5062
5063
5064
5065
5066
5067
5068
5069
5070
5071
5072
5073
5074
5075
5076
5077
5078
5079
5080
5081
5082
5083
5084
5085
5086
5087
5088
5089
5090
5091
5092
5093
5094
5095
5096
5097
5098
5099
5100
5101
5102
5103
5104
5105
5106
5107
5108
5109
5110
5111
5112
5113
5114
5115
5116
5117
5118
5119
5120
5121
5122
5123
5124
5125
5126
5127
5128
5129
5130
5131
5132
5133
5134
.include "macros.inc"

.section .text, "ax"  # 0x80006980 - 0x803E1E60

.global StampCommand
StampCommand:
/* 8028818C 00283DEC  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80288190 00283DF0  7C 08 02 A6 */	mflr r0
/* 80288194 00283DF4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80288198 00283DF8  39 61 00 20 */	addi r11, r1, 0x20
/* 8028819C 00283DFC  4B F3 EF 8D */	bl _savegpr_27
/* 802881A0 00283E00  7C 7B 1B 78 */	mr r27, r3
/* 802881A4 00283E04  7C 9C 23 78 */	mr r28, r4
/* 802881A8 00283E08  7C BD 2B 78 */	mr r29, r5
/* 802881AC 00283E0C  4B FE 65 B1 */	bl OSDisableInterrupts
/* 802881B0 00283E10  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802881B4 00283E14  7C 7F 1B 78 */	mr r31, r3
/* 802881B8 00283E18  28 00 00 05 */	cmplwi r0, 5
/* 802881BC 00283E1C  41 80 00 0C */	blt lbl_802881C8
/* 802881C0 00283E20  38 00 00 00 */	li r0, 0
/* 802881C4 00283E24  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_802881C8:
/* 802881C8 00283E28  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802881CC 00283E2C  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 802881D0 00283E30  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802881D4 00283E34  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 802881D8 00283E38  1C 80 00 14 */	mulli r4, r0, 0x14
/* 802881DC 00283E3C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802881E0 00283E40  1C 63 00 14 */	mulli r3, r3, 0x14
/* 802881E4 00283E44  7C 9E 22 14 */	add r4, r30, r4
/* 802881E8 00283E48  93 64 00 1C */	stw r27, 0x1c(r4)
/* 802881EC 00283E4C  7C 7E 1A 14 */	add r3, r30, r3
/* 802881F0 00283E50  1C 00 00 14 */	mulli r0, r0, 0x14
/* 802881F4 00283E54  93 83 00 20 */	stw r28, 0x20(r3)
/* 802881F8 00283E58  7C 7E 02 14 */	add r3, r30, r0
/* 802881FC 00283E5C  93 A3 00 24 */	stw r29, 0x24(r3)
/* 80288200 00283E60  4B FE A5 D1 */	bl OSGetTick
/* 80288204 00283E64  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288208 00283E68  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028820C 00283E6C  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288210 00283E70  38 04 00 01 */	addi r0, r4, 1
/* 80288214 00283E74  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288218 00283E78  7C 9E 2A 14 */	add r4, r30, r5
/* 8028821C 00283E7C  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80288220 00283E80  7F E3 FB 78 */	mr r3, r31
/* 80288224 00283E84  4B FE 65 61 */	bl OSRestoreInterrupts
/* 80288228 00283E88  39 61 00 20 */	addi r11, r1, 0x20
/* 8028822C 00283E8C  4B F3 EF 49 */	bl _restgpr_27
/* 80288230 00283E90  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80288234 00283E94  7C 08 03 A6 */	mtlr r0
/* 80288238 00283E98  38 21 00 20 */	addi r1, r1, 0x20
/* 8028823C 00283E9C  4E 80 00 20 */	blr

.global defaultOptionalCommandChecker
defaultOptionalCommandChecker:
/* 80288240 00283EA0  4E 80 00 20 */	blr

.global DVDInit
DVDInit:
/* 80288244 00283EA4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80288248 00283EA8  7C 08 02 A6 */	mflr r0
/* 8028824C 00283EAC  90 01 00 14 */	stw r0, 0x14(r1)
/* 80288250 00283EB0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80288254 00283EB4  80 0D AA 4C */	lwz r0, lbl_8063FD0C-_SDA_BASE_(r13)
/* 80288258 00283EB8  2C 00 00 00 */	cmpwi r0, 0
/* 8028825C 00283EBC  40 82 00 B4 */	bne lbl_80288310
/* 80288260 00283EC0  80 6D 88 B8 */	lwz r3, lbl_8063DB78-_SDA_BASE_(r13)
/* 80288264 00283EC4  4B FE 13 ED */	bl OSRegisterVersion
/* 80288268 00283EC8  3B E0 00 01 */	li r31, 1
/* 8028826C 00283ECC  93 ED AA 4C */	stw r31, lbl_8063FD0C-_SDA_BASE_(r13)
/* 80288270 00283ED0  48 00 50 1D */	bl DVDLowInit
/* 80288274 00283ED4  4B FF F4 19 */	bl __DVDFSInit
/* 80288278 00283ED8  48 00 47 15 */	bl __DVDClearWaitingQueue
/* 8028827C 00283EDC  3C 00 80 00 */	lis r0, 0x8000
/* 80288280 00283EE0  38 60 00 00 */	li r3, 0
/* 80288284 00283EE4  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 80288288 00283EE8  38 6D A9 F8 */	addi r3, r13, lbl_8063FCB8-_SDA_BASE_
/* 8028828C 00283EEC  90 0D AA 88 */	stw r0, lbl_8063FD48-_SDA_BASE_(r13)
/* 80288290 00283EF0  90 0D AA 8C */	stw r0, lbl_8063FD4C-_SDA_BASE_(r13)
/* 80288294 00283EF4  4B FE 90 55 */	bl OSInitThreadQueue
/* 80288298 00283EF8  48 00 66 F1 */	bl DVDLowUnmaskStatusInterrupts
/* 8028829C 00283EFC  48 00 66 F5 */	bl DVDLowMaskCoverInterrupt
/* 802882A0 00283F00  80 6D AA 88 */	lwz r3, lbl_8063FD48-_SDA_BASE_(r13)
/* 802882A4 00283F04  80 63 00 20 */	lwz r3, 0x20(r3)
/* 802882A8 00283F08  3C 03 1A E0 */	addis r0, r3, 0x1ae0
/* 802882AC 00283F0C  28 00 7C 22 */	cmplwi r0, 0x7c22
/* 802882B0 00283F10  41 82 00 14 */	beq lbl_802882C4
/* 802882B4 00283F14  3C 03 F2 EB */	addis r0, r3, 0xf2eb
/* 802882B8 00283F18  28 00 EA 5E */	cmplwi r0, 0xea5e
/* 802882BC 00283F1C  41 82 00 08 */	beq lbl_802882C4
/* 802882C0 00283F20  93 ED AA 2C */	stw r31, lbl_8063FCEC-_SDA_BASE_(r13)
lbl_802882C4:
/* 802882C4 00283F24  3F E0 80 52 */	lis r31, lbl_8051B6E0@ha
/* 802882C8 00283F28  38 80 00 00 */	li r4, 0
/* 802882CC 00283F2C  38 7F B6 E0 */	addi r3, r31, lbl_8051B6E0@l
/* 802882D0 00283F30  38 A0 00 80 */	li r5, 0x80
/* 802882D4 00283F34  4B D7 BE 31 */	bl memset
/* 802882D8 00283F38  38 7F B6 E0 */	addi r3, r31, -18720
/* 802882DC 00283F3C  3C 80 80 00 */	lis r4, 0x8000
/* 802882E0 00283F40  38 A0 00 04 */	li r5, 4
/* 802882E4 00283F44  4B D7 BD 1D */	bl memcpy
/* 802882E8 00283F48  3C C0 80 00 */	lis r6, 0x80000006@ha
/* 802882EC 00283F4C  38 BF B6 E0 */	addi r5, r31, -18720
/* 802882F0 00283F50  88 86 00 06 */	lbz r4, 0x80000006@l(r6)
/* 802882F4 00283F54  38 00 00 00 */	li r0, 0
/* 802882F8 00283F58  38 60 00 01 */	li r3, 1
/* 802882FC 00283F5C  98 85 00 04 */	stb r4, 4(r5)
/* 80288300 00283F60  88 86 00 07 */	lbz r4, 7(r6)
/* 80288304 00283F64  98 85 00 05 */	stb r4, 5(r5)
/* 80288308 00283F68  90 0D AA 48 */	stw r0, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028830C 00283F6C  48 00 4D 85 */	bl DVDSetAutoFatalMessaging
lbl_80288310:
/* 80288310 00283F70  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80288314 00283F74  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80288318 00283F78  7C 08 03 A6 */	mtlr r0
/* 8028831C 00283F7C  38 21 00 10 */	addi r1, r1, 0x10
/* 80288320 00283F80  4E 80 00 20 */	blr

.global stateReadingFST
stateReadingFST:
/* 80288324 00283F84  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80288328 00283F88  7C 08 02 A6 */	mflr r0
/* 8028832C 00283F8C  3C A0 80 29 */	lis r5, stateReadingFST@ha
/* 80288330 00283F90  3C 60 80 51 */	lis r3, lbl_80516980@ha
/* 80288334 00283F94  90 01 00 24 */	stw r0, 0x24(r1)
/* 80288338 00283F98  38 A5 83 24 */	addi r5, r5, stateReadingFST@l
/* 8028833C 00283F9C  38 63 69 80 */	addi r3, r3, lbl_80516980@l
/* 80288340 00283FA0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80288344 00283FA4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80288348 00283FA8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028834C 00283FAC  93 81 00 10 */	stw r28, 0x10(r1)
/* 80288350 00283FB0  80 8D AA 88 */	lwz r4, lbl_8063FD48-_SDA_BASE_(r13)
/* 80288354 00283FB4  90 AD AA 94 */	stw r5, lbl_8063FD54-_SDA_BASE_(r13)
/* 80288358 00283FB8  80 03 00 08 */	lwz r0, 8(r3)
/* 8028835C 00283FBC  80 64 00 3C */	lwz r3, 0x3c(r4)
/* 80288360 00283FC0  7C 03 00 40 */	cmplw r3, r0
/* 80288364 00283FC4  40 80 00 1C */	bge lbl_80288380
/* 80288368 00283FC8  3C A0 80 43 */	lis r5, lbl_80435F40@ha
/* 8028836C 00283FCC  38 6D 88 C4 */	addi r3, r13, lbl_8063DB84-_SDA_BASE_
/* 80288370 00283FD0  38 A5 5F 40 */	addi r5, r5, lbl_80435F40@l
/* 80288374 00283FD4  38 80 04 0B */	li r4, 0x40b
/* 80288378 00283FD8  4C C6 31 82 */	crclr 6
/* 8028837C 00283FDC  4B FE 31 21 */	bl OSPanic
lbl_80288380:
/* 80288380 00283FE0  38 60 00 00 */	li r3, 0
/* 80288384 00283FE4  48 00 66 15 */	bl DVDLowClearCoverInterrupt
/* 80288388 00283FE8  80 6D AA 48 */	lwz r3, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028838C 00283FEC  3C C0 80 51 */	lis r6, lbl_80516980@ha
/* 80288390 00283FF0  38 C6 69 80 */	addi r6, r6, lbl_80516980@l
/* 80288394 00283FF4  80 0D AA 48 */	lwz r0, lbl_8063FD08-_SDA_BASE_(r13)
/* 80288398 00283FF8  7C 63 18 F8 */	nor r3, r3, r3
/* 8028839C 00283FFC  80 A6 00 08 */	lwz r5, 8(r6)
/* 802883A0 00284000  54 64 07 BC */	rlwinm r4, r3, 0, 0x1e, 0x1e
/* 802883A4 00284004  80 66 00 04 */	lwz r3, 4(r6)
/* 802883A8 00284008  7C A4 20 30 */	slw r4, r5, r4
/* 802883AC 0028400C  38 84 00 1F */	addi r4, r4, 0x1f
/* 802883B0 00284010  7C 7D 04 30 */	srw r29, r3, r0
/* 802883B4 00284014  54 9C 00 34 */	rlwinm r28, r4, 0, 0, 0x1a
/* 802883B8 00284018  4B FE 63 A5 */	bl OSDisableInterrupts
/* 802883BC 0028401C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802883C0 00284020  7C 7F 1B 78 */	mr r31, r3
/* 802883C4 00284024  28 00 00 05 */	cmplwi r0, 5
/* 802883C8 00284028  41 80 00 0C */	blt lbl_802883D4
/* 802883CC 0028402C  38 00 00 00 */	li r0, 0
/* 802883D0 00284030  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_802883D4:
/* 802883D4 00284034  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802883D8 00284038  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 802883DC 0028403C  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802883E0 00284040  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 802883E4 00284044  1C 80 00 14 */	mulli r4, r0, 0x14
/* 802883E8 00284048  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802883EC 0028404C  38 A0 00 01 */	li r5, 1
/* 802883F0 00284050  1C 63 00 14 */	mulli r3, r3, 0x14
/* 802883F4 00284054  7C 9E 22 14 */	add r4, r30, r4
/* 802883F8 00284058  90 A4 00 1C */	stw r5, 0x1c(r4)
/* 802883FC 0028405C  7C 7E 1A 14 */	add r3, r30, r3
/* 80288400 00284060  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80288404 00284064  93 A3 00 20 */	stw r29, 0x20(r3)
/* 80288408 00284068  7C 7E 02 14 */	add r3, r30, r0
/* 8028840C 0028406C  93 83 00 24 */	stw r28, 0x24(r3)
/* 80288410 00284070  4B FE A3 C1 */	bl OSGetTick
/* 80288414 00284074  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288418 00284078  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028841C 0028407C  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288420 00284080  38 04 00 01 */	addi r0, r4, 1
/* 80288424 00284084  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288428 00284088  7C 9E 2A 14 */	add r4, r30, r5
/* 8028842C 0028408C  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80288430 00284090  7F E3 FB 78 */	mr r3, r31
/* 80288434 00284094  4B FE 63 51 */	bl OSRestoreInterrupts
/* 80288438 00284098  80 0D AA 48 */	lwz r0, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028843C 0028409C  3C 80 80 51 */	lis r4, lbl_80516980@ha
/* 80288440 002840A0  38 84 69 80 */	addi r4, r4, lbl_80516980@l
/* 80288444 002840A4  3C C0 80 29 */	lis r6, cbForStateReadingFST@ha
/* 80288448 002840A8  7C 00 00 F8 */	nor r0, r0, r0
/* 8028844C 002840AC  80 64 00 08 */	lwz r3, 8(r4)
/* 80288450 002840B0  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 80288454 002840B4  80 ED AA 88 */	lwz r7, lbl_8063FD48-_SDA_BASE_(r13)
/* 80288458 002840B8  7C 63 00 30 */	slw r3, r3, r0
/* 8028845C 002840BC  80 A4 00 04 */	lwz r5, 4(r4)
/* 80288460 002840C0  38 83 00 1F */	addi r4, r3, 0x1f
/* 80288464 002840C4  80 0D AA 48 */	lwz r0, lbl_8063FD08-_SDA_BASE_(r13)
/* 80288468 002840C8  80 67 00 38 */	lwz r3, 0x38(r7)
/* 8028846C 002840CC  54 84 00 34 */	rlwinm r4, r4, 0, 0, 0x1a
/* 80288470 002840D0  7C A5 04 30 */	srw r5, r5, r0
/* 80288474 002840D4  38 C6 84 9C */	addi r6, r6, cbForStateReadingFST@l
/* 80288478 002840D8  48 00 60 61 */	bl DVDLowRead
/* 8028847C 002840DC  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80288480 002840E0  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80288484 002840E4  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80288488 002840E8  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028848C 002840EC  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80288490 002840F0  7C 08 03 A6 */	mtlr r0
/* 80288494 002840F4  38 21 00 20 */	addi r1, r1, 0x20
/* 80288498 002840F8  4E 80 00 20 */	blr

.global cbForStateReadingFST
cbForStateReadingFST:
/* 8028849C 002840FC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802884A0 00284100  7C 08 02 A6 */	mflr r0
/* 802884A4 00284104  90 01 00 14 */	stw r0, 0x14(r1)
/* 802884A8 00284108  93 E1 00 0C */	stw r31, 0xc(r1)
/* 802884AC 0028410C  93 C1 00 08 */	stw r30, 8(r1)
/* 802884B0 00284110  7C 7E 1B 78 */	mr r30, r3
/* 802884B4 00284114  4B FE 62 A9 */	bl OSDisableInterrupts
/* 802884B8 00284118  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802884BC 0028411C  2C 00 00 00 */	cmpwi r0, 0
/* 802884C0 00284120  40 82 00 14 */	bne lbl_802884D4
/* 802884C4 00284124  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 802884C8 00284128  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 802884CC 0028412C  93 C4 00 78 */	stw r30, 0x78(r4)
/* 802884D0 00284130  48 00 00 1C */	b lbl_802884EC
lbl_802884D4:
/* 802884D4 00284134  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802884D8 00284138  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 802884DC 0028413C  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 802884E0 00284140  1C 00 00 14 */	mulli r0, r0, 0x14
/* 802884E4 00284144  7C 84 02 14 */	add r4, r4, r0
/* 802884E8 00284148  93 C4 00 14 */	stw r30, 0x14(r4)
lbl_802884EC:
/* 802884EC 0028414C  4B FE 62 99 */	bl OSRestoreInterrupts
/* 802884F0 00284150  28 1E 00 10 */	cmplwi r30, 0x10
/* 802884F4 00284154  40 82 00 1C */	bne lbl_80288510
/* 802884F8 00284158  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 802884FC 0028415C  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80288500 00284160  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80288504 00284164  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80288508 00284168  48 00 49 41 */	bl __DVDStoreErrorCode
/* 8028850C 0028416C  48 00 00 FC */	b lbl_80288608
lbl_80288510:
/* 80288510 00284170  28 1E 00 20 */	cmplwi r30, 0x20
/* 80288514 00284174  40 82 00 1C */	bne lbl_80288530
/* 80288518 00284178  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 8028851C 0028417C  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80288520 00284180  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 80288524 00284184  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80288528 00284188  48 00 49 21 */	bl __DVDStoreErrorCode
/* 8028852C 0028418C  48 00 00 DC */	b lbl_80288608
lbl_80288530:
/* 80288530 00284190  57 C0 07 FF */	clrlwi. r0, r30, 0x1f
/* 80288534 00284194  41 82 00 44 */	beq lbl_80288578
/* 80288538 00284198  3B C0 00 00 */	li r30, 0
/* 8028853C 0028419C  93 CD AA 28 */	stw r30, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80288540 002841A0  4B FF F1 4D */	bl __DVDFSInit
/* 80288544 002841A4  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 80288548 002841A8  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028854C 002841AC  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 80288550 002841B0  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288554 002841B4  93 C4 00 0C */	stw r30, 0xc(r4)
/* 80288558 002841B8  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028855C 002841BC  2C 0C 00 00 */	cmpwi r12, 0
/* 80288560 002841C0  41 82 00 10 */	beq lbl_80288570
/* 80288564 002841C4  38 60 00 00 */	li r3, 0
/* 80288568 002841C8  7D 89 03 A6 */	mtctr r12
/* 8028856C 002841CC  4E 80 04 21 */	bctrl
lbl_80288570:
/* 80288570 002841D0  48 00 25 A1 */	bl stateReady
/* 80288574 002841D4  48 00 00 94 */	b lbl_80288608
lbl_80288578:
/* 80288578 002841D8  4B FE 61 E5 */	bl OSDisableInterrupts
/* 8028857C 002841DC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288580 002841E0  7C 7F 1B 78 */	mr r31, r3
/* 80288584 002841E4  28 00 00 05 */	cmplwi r0, 5
/* 80288588 002841E8  41 80 00 0C */	blt lbl_80288594
/* 8028858C 002841EC  38 00 00 00 */	li r0, 0
/* 80288590 002841F0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_80288594:
/* 80288594 002841F4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288598 002841F8  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 8028859C 002841FC  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802885A0 00284200  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 802885A4 00284204  1C A0 00 14 */	mulli r5, r0, 0x14
/* 802885A8 00284208  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802885AC 0028420C  38 C0 00 27 */	li r6, 0x27
/* 802885B0 00284210  38 80 00 00 */	li r4, 0
/* 802885B4 00284214  1C 63 00 14 */	mulli r3, r3, 0x14
/* 802885B8 00284218  7C BE 2A 14 */	add r5, r30, r5
/* 802885BC 0028421C  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 802885C0 00284220  7C 7E 1A 14 */	add r3, r30, r3
/* 802885C4 00284224  1C 00 00 14 */	mulli r0, r0, 0x14
/* 802885C8 00284228  90 83 00 20 */	stw r4, 0x20(r3)
/* 802885CC 0028422C  7C 7E 02 14 */	add r3, r30, r0
/* 802885D0 00284230  90 83 00 24 */	stw r4, 0x24(r3)
/* 802885D4 00284234  4B FE A1 FD */	bl OSGetTick
/* 802885D8 00284238  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802885DC 0028423C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802885E0 00284240  1C A0 00 14 */	mulli r5, r0, 0x14
/* 802885E4 00284244  38 04 00 01 */	addi r0, r4, 1
/* 802885E8 00284248  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802885EC 0028424C  7C 9E 2A 14 */	add r4, r30, r5
/* 802885F0 00284250  90 64 00 2C */	stw r3, 0x2c(r4)
/* 802885F4 00284254  7F E3 FB 78 */	mr r3, r31
/* 802885F8 00284258  4B FE 61 8D */	bl OSRestoreInterrupts
/* 802885FC 0028425C  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 80288600 00284260  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 80288604 00284264  48 00 58 D1 */	bl DVDLowRequestError
lbl_80288608:
/* 80288608 00284268  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028860C 0028426C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80288610 00284270  83 C1 00 08 */	lwz r30, 8(r1)
/* 80288614 00284274  7C 08 03 A6 */	mtlr r0
/* 80288618 00284278  38 21 00 10 */	addi r1, r1, 0x10
/* 8028861C 0028427C  4E 80 00 20 */	blr

.global FatalAlarmHandler
FatalAlarmHandler:
/* 80288620 00284280  48 00 4A E0 */	b __DVDPrintFatalMessage

.global cbForStateError
cbForStateError:
/* 80288624 00284284  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80288628 00284288  7C 08 02 A6 */	mflr r0
/* 8028862C 0028428C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80288630 00284290  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80288634 00284294  7C 7F 1B 78 */	mr r31, r3
/* 80288638 00284298  48 00 4A B5 */	bl __DVDGetAutoFatalMessaging
/* 8028863C 0028429C  2C 03 00 00 */	cmpwi r3, 0
/* 80288640 002842A0  41 82 00 2C */	beq lbl_8028866C
/* 80288644 002842A4  3F E0 80 51 */	lis r31, lbl_805169D0@ha
/* 80288648 002842A8  38 7F 69 D0 */	addi r3, r31, lbl_805169D0@l
/* 8028864C 002842AC  4B FE 10 D9 */	bl OSCreateAlarm
/* 80288650 002842B0  3C E0 80 29 */	lis r7, FatalAlarmHandler@ha
/* 80288654 002842B4  38 7F 69 D0 */	addi r3, r31, 0x69d0
/* 80288658 002842B8  38 E7 86 20 */	addi r7, r7, FatalAlarmHandler@l
/* 8028865C 002842BC  38 C0 00 01 */	li r6, 1
/* 80288660 002842C0  38 A0 00 00 */	li r5, 0
/* 80288664 002842C4  4B FE 13 21 */	bl OSSetAlarm
/* 80288668 002842C8  48 00 00 B8 */	b lbl_80288720
lbl_8028866C:
/* 8028866C 002842CC  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288670 002842D0  38 00 FF FF */	li r0, -1
/* 80288674 002842D4  28 1F 00 10 */	cmplwi r31, 0x10
/* 80288678 002842D8  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028867C 002842DC  40 82 00 1C */	bne lbl_80288698
/* 80288680 002842E0  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 80288684 002842E4  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80288688 002842E8  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 8028868C 002842EC  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80288690 002842F0  48 00 47 B9 */	bl __DVDStoreErrorCode
/* 80288694 002842F4  48 00 00 8C */	b lbl_80288720
lbl_80288698:
/* 80288698 002842F8  28 1F 00 20 */	cmplwi r31, 0x20
/* 8028869C 002842FC  40 82 00 1C */	bne lbl_802886B8
/* 802886A0 00284300  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 802886A4 00284304  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 802886A8 00284308  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 802886AC 0028430C  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 802886B0 00284310  48 00 47 99 */	bl __DVDStoreErrorCode
/* 802886B4 00284314  48 00 00 6C */	b lbl_80288720
lbl_802886B8:
/* 802886B8 00284318  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 802886BC 0028431C  83 ED AA 90 */	lwz r31, lbl_8063FD50-_SDA_BASE_(r13)
/* 802886C0 00284320  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 802886C4 00284324  38 00 00 01 */	li r0, 1
/* 802886C8 00284328  90 0D AA 1C */	stw r0, lbl_8063FCDC-_SDA_BASE_(r13)
/* 802886CC 0028432C  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 802886D0 00284330  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 802886D4 00284334  2C 0C 00 00 */	cmpwi r12, 0
/* 802886D8 00284338  41 82 00 14 */	beq lbl_802886EC
/* 802886DC 0028433C  7F E4 FB 78 */	mr r4, r31
/* 802886E0 00284340  38 60 FF FF */	li r3, -1
/* 802886E4 00284344  7D 89 03 A6 */	mtctr r12
/* 802886E8 00284348  4E 80 04 21 */	bctrl
lbl_802886EC:
/* 802886EC 0028434C  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 802886F0 00284350  2C 00 00 00 */	cmpwi r0, 0
/* 802886F4 00284354  41 82 00 28 */	beq lbl_8028871C
/* 802886F8 00284358  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 802886FC 0028435C  38 00 00 00 */	li r0, 0
/* 80288700 00284360  90 0D AA 20 */	stw r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80288704 00284364  2C 0C 00 00 */	cmpwi r12, 0
/* 80288708 00284368  41 82 00 14 */	beq lbl_8028871C
/* 8028870C 0028436C  7F E4 FB 78 */	mr r4, r31
/* 80288710 00284370  38 60 00 00 */	li r3, 0
/* 80288714 00284374  7D 89 03 A6 */	mtctr r12
/* 80288718 00284378  4E 80 04 21 */	bctrl
lbl_8028871C:
/* 8028871C 0028437C  48 00 23 F5 */	bl stateReady
lbl_80288720:
/* 80288720 00284380  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80288724 00284384  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80288728 00284388  7C 08 03 A6 */	mtlr r0
/* 8028872C 0028438C  38 21 00 10 */	addi r1, r1, 0x10
/* 80288730 00284390  4E 80 00 20 */	blr

.global cbForStoreErrorCode1
cbForStoreErrorCode1:
/* 80288734 00284394  3C A0 80 29 */	lis r5, cbForStateError@ha
/* 80288738 00284398  38 60 00 00 */	li r3, 0
/* 8028873C 0028439C  38 A5 86 24 */	addi r5, r5, cbForStateError@l
/* 80288740 002843A0  38 80 00 00 */	li r4, 0
/* 80288744 002843A4  48 00 54 94 */	b DVDLowStopMotor

.global cbForStoreErrorCode2
cbForStoreErrorCode2:
/* 80288748 002843A8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028874C 002843AC  7C 08 02 A6 */	mflr r0
/* 80288750 002843B0  38 60 00 00 */	li r3, 0
/* 80288754 002843B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80288758 002843B8  48 00 58 E5 */	bl DVDLowSetSpinupFlag
/* 8028875C 002843BC  3C 60 80 29 */	lis r3, cbForStateError@ha
/* 80288760 002843C0  38 63 86 24 */	addi r3, r3, cbForStateError@l
/* 80288764 002843C4  48 00 58 E5 */	bl DVDLowReset
/* 80288768 002843C8  38 00 00 00 */	li r0, 0
/* 8028876C 002843CC  90 0D AA 74 */	stw r0, lbl_8063FD34-_SDA_BASE_(r13)
/* 80288770 002843D0  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 80288774 002843D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80288778 002843D8  7C 08 03 A6 */	mtlr r0
/* 8028877C 002843DC  38 21 00 10 */	addi r1, r1, 0x10
/* 80288780 002843E0  4E 80 00 20 */	blr

.global CategorizeError
CategorizeError:
/* 80288784 002843E4  3C 03 FF FE */	addis r0, r3, 0xfffe
/* 80288788 002843E8  28 00 04 00 */	cmplwi r0, 0x400
/* 8028878C 002843EC  40 82 00 10 */	bne lbl_8028879C
/* 80288790 002843F0  90 6D AA 78 */	stw r3, lbl_8063FD38-_SDA_BASE_(r13)
/* 80288794 002843F4  38 60 00 01 */	li r3, 1
/* 80288798 002843F8  4E 80 00 20 */	blr
lbl_8028879C:
/* 8028879C 002843FC  54 64 02 3E */	clrlwi r4, r3, 8
/* 802887A0 00284400  3C 04 FF FA */	addis r0, r4, 0xfffa
/* 802887A4 00284404  28 00 28 00 */	cmplwi r0, 0x2800
/* 802887A8 00284408  41 82 00 28 */	beq lbl_802887D0
/* 802887AC 0028440C  3C 04 FF FE */	addis r0, r4, 0xfffe
/* 802887B0 00284410  28 00 3A 00 */	cmplwi r0, 0x3a00
/* 802887B4 00284414  41 82 00 1C */	beq lbl_802887D0
/* 802887B8 00284418  3C 64 FF FB */	addis r3, r4, 0xfffb
/* 802887BC 0028441C  28 03 30 00 */	cmplwi r3, 0x3000
/* 802887C0 00284420  41 82 00 10 */	beq lbl_802887D0
/* 802887C4 00284424  3C 04 FF F5 */	addis r0, r4, 0xfff5
/* 802887C8 00284428  28 00 5A 01 */	cmplwi r0, 0x5a01
/* 802887CC 0028442C  40 82 00 0C */	bne lbl_802887D8
lbl_802887D0:
/* 802887D0 00284430  38 60 00 00 */	li r3, 0
/* 802887D4 00284434  4E 80 00 20 */	blr
lbl_802887D8:
/* 802887D8 00284438  28 03 20 00 */	cmplwi r3, 0x2000
/* 802887DC 0028443C  40 82 00 30 */	bne lbl_8028880C
/* 802887E0 00284440  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 802887E4 00284444  80 03 00 08 */	lwz r0, 8(r3)
/* 802887E8 00284448  28 00 00 25 */	cmplwi r0, 0x25
/* 802887EC 0028444C  41 82 00 18 */	beq lbl_80288804
/* 802887F0 00284450  3C 60 80 29 */	lis r3, stateDownRotation@ha
/* 802887F4 00284454  80 0D AA 94 */	lwz r0, lbl_8063FD54-_SDA_BASE_(r13)
/* 802887F8 00284458  38 63 A5 5C */	addi r3, r3, stateDownRotation@l
/* 802887FC 0028445C  7C 00 18 40 */	cmplw r0, r3
/* 80288800 00284460  40 82 00 0C */	bne lbl_8028880C
lbl_80288804:
/* 80288804 00284464  38 60 00 00 */	li r3, 0
/* 80288808 00284468  4E 80 00 20 */	blr
lbl_8028880C:
/* 8028880C 0028446C  80 6D AA 28 */	lwz r3, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80288810 00284470  38 03 00 01 */	addi r0, r3, 1
/* 80288814 00284474  90 0D AA 28 */	stw r0, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80288818 00284478  80 0D AA 28 */	lwz r0, lbl_8063FCE8-_SDA_BASE_(r13)
/* 8028881C 0028447C  2C 00 00 02 */	cmpwi r0, 2
/* 80288820 00284480  40 82 00 28 */	bne lbl_80288848
/* 80288824 00284484  80 0D AA 78 */	lwz r0, lbl_8063FD38-_SDA_BASE_(r13)
/* 80288828 00284488  7C 04 00 40 */	cmplw r4, r0
/* 8028882C 0028448C  40 82 00 10 */	bne lbl_8028883C
/* 80288830 00284490  90 8D AA 78 */	stw r4, lbl_8063FD38-_SDA_BASE_(r13)
/* 80288834 00284494  38 60 00 01 */	li r3, 1
/* 80288838 00284498  4E 80 00 20 */	blr
lbl_8028883C:
/* 8028883C 0028449C  90 8D AA 78 */	stw r4, lbl_8063FD38-_SDA_BASE_(r13)
/* 80288840 002844A0  38 60 00 02 */	li r3, 2
/* 80288844 002844A4  4E 80 00 20 */	blr
lbl_80288848:
/* 80288848 002844A8  3C 04 FF FD */	addis r0, r4, 0xfffd
/* 8028884C 002844AC  90 8D AA 78 */	stw r4, lbl_8063FD38-_SDA_BASE_(r13)
/* 80288850 002844B0  28 00 11 00 */	cmplwi r0, 0x1100
/* 80288854 002844B4  41 82 00 14 */	beq lbl_80288868
/* 80288858 002844B8  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028885C 002844BC  80 03 00 08 */	lwz r0, 8(r3)
/* 80288860 002844C0  28 00 00 05 */	cmplwi r0, 5
/* 80288864 002844C4  40 82 00 0C */	bne lbl_80288870
lbl_80288868:
/* 80288868 002844C8  38 60 00 02 */	li r3, 2
/* 8028886C 002844CC  4E 80 00 20 */	blr
lbl_80288870:
/* 80288870 002844D0  38 60 00 03 */	li r3, 3
/* 80288874 002844D4  4E 80 00 20 */	blr

.global cbForStoreErrorCode3
cbForStoreErrorCode3:
/* 80288878 002844D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028887C 002844DC  7C 08 02 A6 */	mflr r0
/* 80288880 002844E0  90 01 00 14 */	stw r0, 0x14(r1)
/* 80288884 002844E4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80288888 002844E8  93 C1 00 08 */	stw r30, 8(r1)
/* 8028888C 002844EC  4B FE 5E D1 */	bl OSDisableInterrupts
/* 80288890 002844F0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288894 002844F4  7C 7F 1B 78 */	mr r31, r3
/* 80288898 002844F8  28 00 00 05 */	cmplwi r0, 5
/* 8028889C 002844FC  41 80 00 0C */	blt lbl_802888A8
/* 802888A0 00284500  38 00 00 00 */	li r0, 0
/* 802888A4 00284504  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_802888A8:
/* 802888A8 00284508  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802888AC 0028450C  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 802888B0 00284510  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802888B4 00284514  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 802888B8 00284518  1C A0 00 14 */	mulli r5, r0, 0x14
/* 802888BC 0028451C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802888C0 00284520  38 C0 00 10 */	li r6, 0x10
/* 802888C4 00284524  38 80 00 00 */	li r4, 0
/* 802888C8 00284528  1C 63 00 14 */	mulli r3, r3, 0x14
/* 802888CC 0028452C  7C BE 2A 14 */	add r5, r30, r5
/* 802888D0 00284530  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 802888D4 00284534  7C 7E 1A 14 */	add r3, r30, r3
/* 802888D8 00284538  1C 00 00 14 */	mulli r0, r0, 0x14
/* 802888DC 0028453C  90 83 00 20 */	stw r4, 0x20(r3)
/* 802888E0 00284540  7C 7E 02 14 */	add r3, r30, r0
/* 802888E4 00284544  90 83 00 24 */	stw r4, 0x24(r3)
/* 802888E8 00284548  4B FE 9E E9 */	bl OSGetTick
/* 802888EC 0028454C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802888F0 00284550  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802888F4 00284554  1C A0 00 14 */	mulli r5, r0, 0x14
/* 802888F8 00284558  38 04 00 01 */	addi r0, r4, 1
/* 802888FC 0028455C  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288900 00284560  7C 9E 2A 14 */	add r4, r30, r5
/* 80288904 00284564  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80288908 00284568  7F E3 FB 78 */	mr r3, r31
/* 8028890C 0028456C  4B FE 5E 79 */	bl OSRestoreInterrupts
/* 80288910 00284570  3C A0 80 29 */	lis r5, cbForStateGoToRetry@ha
/* 80288914 00284574  38 60 00 00 */	li r3, 0
/* 80288918 00284578  38 A5 90 F4 */	addi r5, r5, cbForStateGoToRetry@l
/* 8028891C 0028457C  38 80 00 00 */	li r4, 0
/* 80288920 00284580  48 00 52 B9 */	bl DVDLowStopMotor
/* 80288924 00284584  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80288928 00284588  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028892C 0028458C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80288930 00284590  7C 08 03 A6 */	mtlr r0
/* 80288934 00284594  38 21 00 10 */	addi r1, r1, 0x10
/* 80288938 00284598  4E 80 00 20 */	blr

.global cbForStateGettingError
cbForStateGettingError:
/* 8028893C 0028459C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80288940 002845A0  7C 08 02 A6 */	mflr r0
/* 80288944 002845A4  90 01 00 24 */	stw r0, 0x24(r1)
/* 80288948 002845A8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028894C 002845AC  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80288950 002845B0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80288954 002845B4  93 81 00 10 */	stw r28, 0x10(r1)
/* 80288958 002845B8  7C 7C 1B 78 */	mr r28, r3
/* 8028895C 002845BC  4B FE 5E 01 */	bl OSDisableInterrupts
/* 80288960 002845C0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288964 002845C4  2C 00 00 00 */	cmpwi r0, 0
/* 80288968 002845C8  40 82 00 14 */	bne lbl_8028897C
/* 8028896C 002845CC  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80288970 002845D0  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80288974 002845D4  93 84 00 78 */	stw r28, 0x78(r4)
/* 80288978 002845D8  48 00 00 1C */	b lbl_80288994
lbl_8028897C:
/* 8028897C 002845DC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288980 002845E0  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80288984 002845E4  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80288988 002845E8  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028898C 002845EC  7C 84 02 14 */	add r4, r4, r0
/* 80288990 002845F0  93 84 00 14 */	stw r28, 0x14(r4)
lbl_80288994:
/* 80288994 002845F4  4B FE 5D F1 */	bl OSRestoreInterrupts
/* 80288998 002845F8  28 1C 00 10 */	cmplwi r28, 0x10
/* 8028899C 002845FC  40 82 00 1C */	bne lbl_802889B8
/* 802889A0 00284600  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 802889A4 00284604  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 802889A8 00284608  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 802889AC 0028460C  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 802889B0 00284610  48 00 44 99 */	bl __DVDStoreErrorCode
/* 802889B4 00284614  48 00 04 6C */	b lbl_80288E20
lbl_802889B8:
/* 802889B8 00284618  28 1C 00 20 */	cmplwi r28, 0x20
/* 802889BC 0028461C  40 82 00 1C */	bne lbl_802889D8
/* 802889C0 00284620  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 802889C4 00284624  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 802889C8 00284628  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 802889CC 0028462C  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 802889D0 00284630  48 00 44 79 */	bl __DVDStoreErrorCode
/* 802889D4 00284634  48 00 04 4C */	b lbl_80288E20
lbl_802889D8:
/* 802889D8 00284638  57 80 07 BD */	rlwinm. r0, r28, 0, 0x1e, 0x1e
/* 802889DC 0028463C  41 82 00 1C */	beq lbl_802889F8
/* 802889E0 00284640  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 802889E4 00284644  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 802889E8 00284648  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 802889EC 0028464C  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 802889F0 00284650  48 00 44 59 */	bl __DVDStoreErrorCode
/* 802889F4 00284654  48 00 04 2C */	b lbl_80288E20
lbl_802889F8:
/* 802889F8 00284658  48 00 5F 85 */	bl DVDLowGetImmBufferReg
/* 802889FC 0028465C  7C 7D 1B 78 */	mr r29, r3
/* 80288A00 00284660  54 7C 00 0E */	rlwinm r28, r3, 0, 0, 7
/* 80288A04 00284664  4B FF FD 81 */	bl CategorizeError
/* 80288A08 00284668  28 03 00 01 */	cmplwi r3, 1
/* 80288A0C 0028466C  7C 7E 1B 78 */	mr r30, r3
/* 80288A10 00284670  40 82 00 18 */	bne lbl_80288A28
/* 80288A14 00284674  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 80288A18 00284678  7F A3 EB 78 */	mr r3, r29
/* 80288A1C 0028467C  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 80288A20 00284680  48 00 44 29 */	bl __DVDStoreErrorCode
/* 80288A24 00284684  48 00 03 FC */	b lbl_80288E20
lbl_80288A28:
/* 80288A28 00284688  38 03 FF FE */	addi r0, r3, -2
/* 80288A2C 0028468C  28 00 00 01 */	cmplwi r0, 1
/* 80288A30 00284690  41 81 00 0C */	bgt lbl_80288A3C
/* 80288A34 00284694  38 A0 00 00 */	li r5, 0
/* 80288A38 00284698  48 00 00 68 */	b lbl_80288AA0
lbl_80288A3C:
/* 80288A3C 0028469C  3C 1C FF 00 */	addis r0, r28, 0xff00
/* 80288A40 002846A0  28 00 00 00 */	cmplwi r0, 0
/* 80288A44 002846A4  40 82 00 0C */	bne lbl_80288A50
/* 80288A48 002846A8  38 A0 00 04 */	li r5, 4
/* 80288A4C 002846AC  48 00 00 54 */	b lbl_80288AA0
lbl_80288A50:
/* 80288A50 002846B0  3C 1C FE 00 */	addis r0, r28, 0xfe00
/* 80288A54 002846B4  28 00 00 00 */	cmplwi r0, 0
/* 80288A58 002846B8  40 82 00 0C */	bne lbl_80288A64
/* 80288A5C 002846BC  38 A0 00 06 */	li r5, 6
/* 80288A60 002846C0  48 00 00 40 */	b lbl_80288AA0
lbl_80288A64:
/* 80288A64 002846C4  3C 1C FD 00 */	addis r0, r28, 0xfd00
/* 80288A68 002846C8  28 00 00 00 */	cmplwi r0, 0
/* 80288A6C 002846CC  40 82 00 0C */	bne lbl_80288A78
/* 80288A70 002846D0  38 A0 00 03 */	li r5, 3
/* 80288A74 002846D4  48 00 00 2C */	b lbl_80288AA0
lbl_80288A78:
/* 80288A78 002846D8  2C 1C 00 00 */	cmpwi r28, 0
/* 80288A7C 002846DC  40 82 00 20 */	bne lbl_80288A9C
/* 80288A80 002846E0  3C 1D FF FB */	addis r0, r29, 0xfffb
/* 80288A84 002846E4  28 00 30 00 */	cmplwi r0, 0x3000
/* 80288A88 002846E8  40 82 00 0C */	bne lbl_80288A94
/* 80288A8C 002846EC  38 A0 00 01 */	li r5, 1
/* 80288A90 002846F0  48 00 00 10 */	b lbl_80288AA0
lbl_80288A94:
/* 80288A94 002846F4  38 A0 00 05 */	li r5, 5
/* 80288A98 002846F8  48 00 00 08 */	b lbl_80288AA0
lbl_80288A9C:
/* 80288A9C 002846FC  38 A0 00 05 */	li r5, 5
lbl_80288AA0:
/* 80288AA0 00284700  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80288AA4 00284704  2C 00 00 00 */	cmpwi r0, 0
/* 80288AA8 00284708  41 82 00 6C */	beq lbl_80288B14
/* 80288AAC 0028470C  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 80288AB0 00284710  83 ED AA 90 */	lwz r31, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288AB4 00284714  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 80288AB8 00284718  38 80 00 00 */	li r4, 0
/* 80288ABC 0028471C  90 AD AA 24 */	stw r5, lbl_8063FCE4-_SDA_BASE_(r13)
/* 80288AC0 00284720  38 00 00 0A */	li r0, 0xa
/* 80288AC4 00284724  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80288AC8 00284728  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288ACC 0028472C  90 1F 00 0C */	stw r0, 0xc(r31)
/* 80288AD0 00284730  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 80288AD4 00284734  2C 0C 00 00 */	cmpwi r12, 0
/* 80288AD8 00284738  41 82 00 14 */	beq lbl_80288AEC
/* 80288ADC 0028473C  7F E4 FB 78 */	mr r4, r31
/* 80288AE0 00284740  38 60 FF FD */	li r3, -3
/* 80288AE4 00284744  7D 89 03 A6 */	mtctr r12
/* 80288AE8 00284748  4E 80 04 21 */	bctrl
lbl_80288AEC:
/* 80288AEC 0028474C  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 80288AF0 00284750  2C 0C 00 00 */	cmpwi r12, 0
/* 80288AF4 00284754  41 82 00 14 */	beq lbl_80288B08
/* 80288AF8 00284758  7F E4 FB 78 */	mr r4, r31
/* 80288AFC 0028475C  38 60 00 00 */	li r3, 0
/* 80288B00 00284760  7D 89 03 A6 */	mtctr r12
/* 80288B04 00284764  4E 80 04 21 */	bctrl
lbl_80288B08:
/* 80288B08 00284768  48 00 20 09 */	bl stateReady
/* 80288B0C 0028476C  38 00 00 01 */	li r0, 1
/* 80288B10 00284770  48 00 00 08 */	b lbl_80288B18
lbl_80288B14:
/* 80288B14 00284774  38 00 00 00 */	li r0, 0
lbl_80288B18:
/* 80288B18 00284778  2C 00 00 00 */	cmpwi r0, 0
/* 80288B1C 0028477C  40 82 03 04 */	bne lbl_80288E20
/* 80288B20 00284780  28 1E 00 02 */	cmplwi r30, 2
/* 80288B24 00284784  40 82 00 18 */	bne lbl_80288B3C
/* 80288B28 00284788  3C 80 80 29 */	lis r4, cbForStoreErrorCode3@ha
/* 80288B2C 0028478C  7F A3 EB 78 */	mr r3, r29
/* 80288B30 00284790  38 84 88 78 */	addi r4, r4, cbForStoreErrorCode3@l
/* 80288B34 00284794  48 00 43 15 */	bl __DVDStoreErrorCode
/* 80288B38 00284798  48 00 02 E8 */	b lbl_80288E20
lbl_80288B3C:
/* 80288B3C 0028479C  28 1E 00 03 */	cmplwi r30, 3
/* 80288B40 002847A0  40 82 00 CC */	bne lbl_80288C0C
/* 80288B44 002847A4  57 A3 02 3E */	clrlwi r3, r29, 8
/* 80288B48 002847A8  3C 03 FF FD */	addis r0, r3, 0xfffd
/* 80288B4C 002847AC  28 00 11 00 */	cmplwi r0, 0x1100
/* 80288B50 002847B0  40 82 00 A8 */	bne lbl_80288BF8
/* 80288B54 002847B4  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288B58 002847B8  83 A3 00 10 */	lwz r29, 0x10(r3)
/* 80288B5C 002847BC  4B FE 5C 01 */	bl OSDisableInterrupts
/* 80288B60 002847C0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288B64 002847C4  7C 7F 1B 78 */	mr r31, r3
/* 80288B68 002847C8  28 00 00 05 */	cmplwi r0, 5
/* 80288B6C 002847CC  41 80 00 0C */	blt lbl_80288B78
/* 80288B70 002847D0  38 00 00 00 */	li r0, 0
/* 80288B74 002847D4  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_80288B78:
/* 80288B78 002847D8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288B7C 002847DC  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 80288B80 002847E0  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288B84 002847E4  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 80288B88 002847E8  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288B8C 002847EC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288B90 002847F0  38 C0 00 02 */	li r6, 2
/* 80288B94 002847F4  38 80 00 00 */	li r4, 0
/* 80288B98 002847F8  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80288B9C 002847FC  7C BE 2A 14 */	add r5, r30, r5
/* 80288BA0 00284800  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80288BA4 00284804  7C 7E 1A 14 */	add r3, r30, r3
/* 80288BA8 00284808  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80288BAC 0028480C  93 A3 00 20 */	stw r29, 0x20(r3)
/* 80288BB0 00284810  7C 7E 02 14 */	add r3, r30, r0
/* 80288BB4 00284814  90 83 00 24 */	stw r4, 0x24(r3)
/* 80288BB8 00284818  4B FE 9C 19 */	bl OSGetTick
/* 80288BBC 0028481C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288BC0 00284820  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288BC4 00284824  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288BC8 00284828  38 04 00 01 */	addi r0, r4, 1
/* 80288BCC 0028482C  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288BD0 00284830  7C 9E 2A 14 */	add r4, r30, r5
/* 80288BD4 00284834  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80288BD8 00284838  7F E3 FB 78 */	mr r3, r31
/* 80288BDC 0028483C  4B FE 5B A9 */	bl OSRestoreInterrupts
/* 80288BE0 00284840  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288BE4 00284844  3C 80 80 29 */	lis r4, cbForUnrecoveredError@ha
/* 80288BE8 00284848  38 84 8E 40 */	addi r4, r4, cbForUnrecoveredError@l
/* 80288BEC 0028484C  80 63 00 10 */	lwz r3, 0x10(r3)
/* 80288BF0 00284850  48 00 5A 99 */	bl DVDLowSeek
/* 80288BF4 00284854  48 00 02 2C */	b lbl_80288E20
lbl_80288BF8:
/* 80288BF8 00284858  81 8D AA 94 */	lwz r12, lbl_8063FD54-_SDA_BASE_(r13)
/* 80288BFC 0028485C  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288C00 00284860  7D 89 03 A6 */	mtctr r12
/* 80288C04 00284864  4E 80 04 21 */	bctrl
/* 80288C08 00284868  48 00 02 18 */	b lbl_80288E20
lbl_80288C0C:
/* 80288C0C 0028486C  3C 1C FF 00 */	addis r0, r28, 0xff00
/* 80288C10 00284870  28 00 00 00 */	cmplwi r0, 0
/* 80288C14 00284874  40 82 00 84 */	bne lbl_80288C98
/* 80288C18 00284878  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288C1C 0028487C  38 00 00 05 */	li r0, 5
/* 80288C20 00284880  38 60 00 01 */	li r3, 1
/* 80288C24 00284884  90 04 00 0C */	stw r0, 0xc(r4)
/* 80288C28 00284888  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 80288C2C 0028488C  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 80288C30 00284890  2C 00 00 00 */	cmpwi r0, 0
/* 80288C34 00284894  40 82 01 EC */	bne lbl_80288E20
/* 80288C38 00284898  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 80288C3C 0028489C  2C 00 00 00 */	cmpwi r0, 0
/* 80288C40 002848A0  40 82 01 E0 */	bne lbl_80288E20
/* 80288C44 002848A4  3F C0 80 51 */	lis r30, lbl_80516A00@ha
/* 80288C48 002848A8  90 6D AA 34 */	stw r3, lbl_8063FCF4-_SDA_BASE_(r13)
/* 80288C4C 002848AC  38 7E 6A 00 */	addi r3, r30, lbl_80516A00@l
/* 80288C50 002848B0  4B FE 0A D5 */	bl OSCreateAlarm
/* 80288C54 002848B4  4B FE 9B 7D */	bl OSGetTick
/* 80288C58 002848B8  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 80288C5C 002848BC  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 80288C60 002848C0  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 80288C64 002848C4  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 80288C68 002848C8  7C 66 1B 78 */	mr r6, r3
/* 80288C6C 002848CC  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 80288C70 002848D0  54 00 F0 BE */	srwi r0, r0, 2
/* 80288C74 002848D4  38 7E 6A 00 */	addi r3, r30, 0x6a00
/* 80288C78 002848D8  7C 04 00 16 */	mulhwu r0, r4, r0
/* 80288C7C 002848DC  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 80288C80 002848E0  38 A0 00 00 */	li r5, 0
/* 80288C84 002848E4  38 E0 00 00 */	li r7, 0
/* 80288C88 002848E8  54 00 D1 BE */	srwi r0, r0, 6
/* 80288C8C 002848EC  1D 00 00 64 */	mulli r8, r0, 0x64
/* 80288C90 002848F0  4B FE 0D 65 */	bl OSSetPeriodicAlarm
/* 80288C94 002848F4  48 00 01 8C */	b lbl_80288E20
lbl_80288C98:
/* 80288C98 002848F8  3C 1C FE 00 */	addis r0, r28, 0xfe00
/* 80288C9C 002848FC  28 00 00 00 */	cmplwi r0, 0
/* 80288CA0 00284900  40 82 00 18 */	bne lbl_80288CB8
/* 80288CA4 00284904  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288CA8 00284908  38 00 00 03 */	li r0, 3
/* 80288CAC 0028490C  90 03 00 0C */	stw r0, 0xc(r3)
/* 80288CB0 00284910  48 00 15 5D */	bl stateCoverClosed
/* 80288CB4 00284914  48 00 01 6C */	b lbl_80288E20
lbl_80288CB8:
/* 80288CB8 00284918  3C 1C FD 00 */	addis r0, r28, 0xfd00
/* 80288CBC 0028491C  28 00 00 00 */	cmplwi r0, 0
/* 80288CC0 00284920  40 82 00 84 */	bne lbl_80288D44
/* 80288CC4 00284924  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 80288CC8 00284928  38 00 00 04 */	li r0, 4
/* 80288CCC 0028492C  38 60 00 01 */	li r3, 1
/* 80288CD0 00284930  90 04 00 0C */	stw r0, 0xc(r4)
/* 80288CD4 00284934  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 80288CD8 00284938  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 80288CDC 0028493C  2C 00 00 00 */	cmpwi r0, 0
/* 80288CE0 00284940  40 82 01 40 */	bne lbl_80288E20
/* 80288CE4 00284944  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 80288CE8 00284948  2C 00 00 00 */	cmpwi r0, 0
/* 80288CEC 0028494C  40 82 01 34 */	bne lbl_80288E20
/* 80288CF0 00284950  3F C0 80 51 */	lis r30, lbl_80516A00@ha
/* 80288CF4 00284954  90 6D AA 34 */	stw r3, lbl_8063FCF4-_SDA_BASE_(r13)
/* 80288CF8 00284958  38 7E 6A 00 */	addi r3, r30, lbl_80516A00@l
/* 80288CFC 0028495C  4B FE 0A 29 */	bl OSCreateAlarm
/* 80288D00 00284960  4B FE 9A D1 */	bl OSGetTick
/* 80288D04 00284964  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 80288D08 00284968  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 80288D0C 0028496C  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 80288D10 00284970  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 80288D14 00284974  7C 66 1B 78 */	mr r6, r3
/* 80288D18 00284978  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 80288D1C 0028497C  54 00 F0 BE */	srwi r0, r0, 2
/* 80288D20 00284980  38 7E 6A 00 */	addi r3, r30, 0x6a00
/* 80288D24 00284984  7C 04 00 16 */	mulhwu r0, r4, r0
/* 80288D28 00284988  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 80288D2C 0028498C  38 A0 00 00 */	li r5, 0
/* 80288D30 00284990  38 E0 00 00 */	li r7, 0
/* 80288D34 00284994  54 00 D1 BE */	srwi r0, r0, 6
/* 80288D38 00284998  1D 00 00 64 */	mulli r8, r0, 0x64
/* 80288D3C 0028499C  4B FE 0C B9 */	bl OSSetPeriodicAlarm
/* 80288D40 002849A0  48 00 00 E0 */	b lbl_80288E20
lbl_80288D44:
/* 80288D44 002849A4  2C 1C 00 00 */	cmpwi r28, 0
/* 80288D48 002849A8  40 82 00 C4 */	bne lbl_80288E0C
/* 80288D4C 002849AC  3C 1D FF FB */	addis r0, r29, 0xfffb
/* 80288D50 002849B0  28 00 30 00 */	cmplwi r0, 0x3000
/* 80288D54 002849B4  40 82 00 A0 */	bne lbl_80288DF4
/* 80288D58 002849B8  4B FE 5A 05 */	bl OSDisableInterrupts
/* 80288D5C 002849BC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288D60 002849C0  7C 7F 1B 78 */	mr r31, r3
/* 80288D64 002849C4  28 00 00 05 */	cmplwi r0, 5
/* 80288D68 002849C8  41 80 00 0C */	blt lbl_80288D74
/* 80288D6C 002849CC  38 00 00 00 */	li r0, 0
/* 80288D70 002849D0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_80288D74:
/* 80288D74 002849D4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288D78 002849D8  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 80288D7C 002849DC  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288D80 002849E0  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 80288D84 002849E4  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288D88 002849E8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288D8C 002849EC  38 C0 00 10 */	li r6, 0x10
/* 80288D90 002849F0  38 80 00 00 */	li r4, 0
/* 80288D94 002849F4  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80288D98 002849F8  7C BE 2A 14 */	add r5, r30, r5
/* 80288D9C 002849FC  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80288DA0 00284A00  7C 7E 1A 14 */	add r3, r30, r3
/* 80288DA4 00284A04  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80288DA8 00284A08  90 83 00 20 */	stw r4, 0x20(r3)
/* 80288DAC 00284A0C  7C 7E 02 14 */	add r3, r30, r0
/* 80288DB0 00284A10  90 83 00 24 */	stw r4, 0x24(r3)
/* 80288DB4 00284A14  4B FE 9A 1D */	bl OSGetTick
/* 80288DB8 00284A18  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288DBC 00284A1C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288DC0 00284A20  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288DC4 00284A24  38 04 00 01 */	addi r0, r4, 1
/* 80288DC8 00284A28  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288DCC 00284A2C  7C 9E 2A 14 */	add r4, r30, r5
/* 80288DD0 00284A30  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80288DD4 00284A34  7F E3 FB 78 */	mr r3, r31
/* 80288DD8 00284A38  4B FE 59 AD */	bl OSRestoreInterrupts
/* 80288DDC 00284A3C  3C A0 80 29 */	lis r5, cbForStateCheckID1@ha
/* 80288DE0 00284A40  38 60 00 00 */	li r3, 0
/* 80288DE4 00284A44  38 A5 9E B0 */	addi r5, r5, cbForStateCheckID1@l
/* 80288DE8 00284A48  38 80 00 00 */	li r4, 0
/* 80288DEC 00284A4C  48 00 4D ED */	bl DVDLowStopMotor
/* 80288DF0 00284A50  48 00 00 30 */	b lbl_80288E20
lbl_80288DF4:
/* 80288DF4 00284A54  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 80288DF8 00284A58  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 80288DFC 00284A5C  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 80288E00 00284A60  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 80288E04 00284A64  48 00 40 45 */	bl __DVDStoreErrorCode
/* 80288E08 00284A68  48 00 00 18 */	b lbl_80288E20
lbl_80288E0C:
/* 80288E0C 00284A6C  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 80288E10 00284A70  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 80288E14 00284A74  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 80288E18 00284A78  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 80288E1C 00284A7C  48 00 40 2D */	bl __DVDStoreErrorCode
lbl_80288E20:
/* 80288E20 00284A80  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80288E24 00284A84  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80288E28 00284A88  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80288E2C 00284A8C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80288E30 00284A90  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80288E34 00284A94  7C 08 03 A6 */	mtlr r0
/* 80288E38 00284A98  38 21 00 20 */	addi r1, r1, 0x20
/* 80288E3C 00284A9C  4E 80 00 20 */	blr
cbForUnrecoveredError:
/* 80288E40 00284AA0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80288E44 00284AA4  7C 08 02 A6 */	mflr r0
/* 80288E48 00284AA8  90 01 00 14 */	stw r0, 0x14(r1)
/* 80288E4C 00284AAC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80288E50 00284AB0  93 C1 00 08 */	stw r30, 8(r1)
/* 80288E54 00284AB4  7C 7E 1B 78 */	mr r30, r3
/* 80288E58 00284AB8  4B FE 59 05 */	bl OSDisableInterrupts
/* 80288E5C 00284ABC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288E60 00284AC0  2C 00 00 00 */	cmpwi r0, 0
/* 80288E64 00284AC4  40 82 00 14 */	bne lbl_80288E78
/* 80288E68 00284AC8  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80288E6C 00284ACC  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80288E70 00284AD0  93 C4 00 78 */	stw r30, 0x78(r4)
/* 80288E74 00284AD4  48 00 00 1C */	b lbl_80288E90
lbl_80288E78:
/* 80288E78 00284AD8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288E7C 00284ADC  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80288E80 00284AE0  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80288E84 00284AE4  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80288E88 00284AE8  7C 84 02 14 */	add r4, r4, r0
/* 80288E8C 00284AEC  93 C4 00 14 */	stw r30, 0x14(r4)
lbl_80288E90:
/* 80288E90 00284AF0  4B FE 58 F5 */	bl OSRestoreInterrupts
/* 80288E94 00284AF4  28 1E 00 10 */	cmplwi r30, 0x10
/* 80288E98 00284AF8  40 82 00 1C */	bne lbl_80288EB4
/* 80288E9C 00284AFC  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 80288EA0 00284B00  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80288EA4 00284B04  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80288EA8 00284B08  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80288EAC 00284B0C  48 00 3F 9D */	bl __DVDStoreErrorCode
/* 80288EB0 00284B10  48 00 01 58 */	b lbl_80289008
lbl_80288EB4:
/* 80288EB4 00284B14  28 1E 00 20 */	cmplwi r30, 0x20
/* 80288EB8 00284B18  40 82 00 1C */	bne lbl_80288ED4
/* 80288EBC 00284B1C  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 80288EC0 00284B20  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80288EC4 00284B24  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 80288EC8 00284B28  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80288ECC 00284B2C  48 00 3F 7D */	bl __DVDStoreErrorCode
/* 80288ED0 00284B30  48 00 01 38 */	b lbl_80289008
lbl_80288ED4:
/* 80288ED4 00284B34  57 C0 07 FF */	clrlwi. r0, r30, 0x1f
/* 80288ED8 00284B38  41 82 00 A0 */	beq lbl_80288F78
/* 80288EDC 00284B3C  4B FE 58 81 */	bl OSDisableInterrupts
/* 80288EE0 00284B40  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288EE4 00284B44  7C 7F 1B 78 */	mr r31, r3
/* 80288EE8 00284B48  28 00 00 05 */	cmplwi r0, 5
/* 80288EEC 00284B4C  41 80 00 0C */	blt lbl_80288EF8
/* 80288EF0 00284B50  38 00 00 00 */	li r0, 0
/* 80288EF4 00284B54  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_80288EF8:
/* 80288EF8 00284B58  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288EFC 00284B5C  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 80288F00 00284B60  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288F04 00284B64  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 80288F08 00284B68  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288F0C 00284B6C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288F10 00284B70  38 C0 00 10 */	li r6, 0x10
/* 80288F14 00284B74  38 80 00 00 */	li r4, 0
/* 80288F18 00284B78  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80288F1C 00284B7C  7C BE 2A 14 */	add r5, r30, r5
/* 80288F20 00284B80  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80288F24 00284B84  7C 7E 1A 14 */	add r3, r30, r3
/* 80288F28 00284B88  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80288F2C 00284B8C  90 83 00 20 */	stw r4, 0x20(r3)
/* 80288F30 00284B90  7C 7E 02 14 */	add r3, r30, r0
/* 80288F34 00284B94  90 83 00 24 */	stw r4, 0x24(r3)
/* 80288F38 00284B98  4B FE 98 99 */	bl OSGetTick
/* 80288F3C 00284B9C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288F40 00284BA0  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288F44 00284BA4  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288F48 00284BA8  38 04 00 01 */	addi r0, r4, 1
/* 80288F4C 00284BAC  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288F50 00284BB0  7C 9E 2A 14 */	add r4, r30, r5
/* 80288F54 00284BB4  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80288F58 00284BB8  7F E3 FB 78 */	mr r3, r31
/* 80288F5C 00284BBC  4B FE 58 29 */	bl OSRestoreInterrupts
/* 80288F60 00284BC0  3C A0 80 29 */	lis r5, cbForStateGoToRetry@ha
/* 80288F64 00284BC4  38 60 00 00 */	li r3, 0
/* 80288F68 00284BC8  38 A5 90 F4 */	addi r5, r5, cbForStateGoToRetry@l
/* 80288F6C 00284BCC  38 80 00 00 */	li r4, 0
/* 80288F70 00284BD0  48 00 4C 69 */	bl DVDLowStopMotor
/* 80288F74 00284BD4  48 00 00 94 */	b lbl_80289008
lbl_80288F78:
/* 80288F78 00284BD8  4B FE 57 E5 */	bl OSDisableInterrupts
/* 80288F7C 00284BDC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288F80 00284BE0  7C 7F 1B 78 */	mr r31, r3
/* 80288F84 00284BE4  28 00 00 05 */	cmplwi r0, 5
/* 80288F88 00284BE8  41 80 00 0C */	blt lbl_80288F94
/* 80288F8C 00284BEC  38 00 00 00 */	li r0, 0
/* 80288F90 00284BF0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_80288F94:
/* 80288F94 00284BF4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288F98 00284BF8  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 80288F9C 00284BFC  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288FA0 00284C00  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 80288FA4 00284C04  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288FA8 00284C08  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288FAC 00284C0C  38 C0 00 27 */	li r6, 0x27
/* 80288FB0 00284C10  38 80 00 00 */	li r4, 0
/* 80288FB4 00284C14  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80288FB8 00284C18  7C BE 2A 14 */	add r5, r30, r5
/* 80288FBC 00284C1C  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80288FC0 00284C20  7C 7E 1A 14 */	add r3, r30, r3
/* 80288FC4 00284C24  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80288FC8 00284C28  90 83 00 20 */	stw r4, 0x20(r3)
/* 80288FCC 00284C2C  7C 7E 02 14 */	add r3, r30, r0
/* 80288FD0 00284C30  90 83 00 24 */	stw r4, 0x24(r3)
/* 80288FD4 00284C34  4B FE 97 FD */	bl OSGetTick
/* 80288FD8 00284C38  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288FDC 00284C3C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288FE0 00284C40  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80288FE4 00284C44  38 04 00 01 */	addi r0, r4, 1
/* 80288FE8 00284C48  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80288FEC 00284C4C  7C 9E 2A 14 */	add r4, r30, r5
/* 80288FF0 00284C50  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80288FF4 00284C54  7F E3 FB 78 */	mr r3, r31
/* 80288FF8 00284C58  4B FE 57 8D */	bl OSRestoreInterrupts
/* 80288FFC 00284C5C  3C 60 80 29 */	lis r3, cbForUnrecoveredErrorRetry@ha
/* 80289000 00284C60  38 63 90 20 */	addi r3, r3, cbForUnrecoveredErrorRetry@l
/* 80289004 00284C64  48 00 4E D1 */	bl DVDLowRequestError
lbl_80289008:
/* 80289008 00284C68  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028900C 00284C6C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80289010 00284C70  83 C1 00 08 */	lwz r30, 8(r1)
/* 80289014 00284C74  7C 08 03 A6 */	mtlr r0
/* 80289018 00284C78  38 21 00 10 */	addi r1, r1, 0x10
/* 8028901C 00284C7C  4E 80 00 20 */	blr

.global cbForUnrecoveredErrorRetry
cbForUnrecoveredErrorRetry:
/* 80289020 00284C80  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80289024 00284C84  7C 08 02 A6 */	mflr r0
/* 80289028 00284C88  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028902C 00284C8C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80289030 00284C90  7C 7F 1B 78 */	mr r31, r3
/* 80289034 00284C94  4B FE 57 29 */	bl OSDisableInterrupts
/* 80289038 00284C98  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028903C 00284C9C  2C 00 00 00 */	cmpwi r0, 0
/* 80289040 00284CA0  40 82 00 14 */	bne lbl_80289054
/* 80289044 00284CA4  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289048 00284CA8  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 8028904C 00284CAC  93 E4 00 78 */	stw r31, 0x78(r4)
/* 80289050 00284CB0  48 00 00 1C */	b lbl_8028906C
lbl_80289054:
/* 80289054 00284CB4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289058 00284CB8  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028905C 00284CBC  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289060 00284CC0  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289064 00284CC4  7C 84 02 14 */	add r4, r4, r0
/* 80289068 00284CC8  93 E4 00 14 */	stw r31, 0x14(r4)
lbl_8028906C:
/* 8028906C 00284CCC  4B FE 57 19 */	bl OSRestoreInterrupts
/* 80289070 00284CD0  28 1F 00 10 */	cmplwi r31, 0x10
/* 80289074 00284CD4  40 82 00 1C */	bne lbl_80289090
/* 80289078 00284CD8  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 8028907C 00284CDC  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289080 00284CE0  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80289084 00284CE4  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289088 00284CE8  48 00 3D C1 */	bl __DVDStoreErrorCode
/* 8028908C 00284CEC  48 00 00 54 */	b lbl_802890E0
lbl_80289090:
/* 80289090 00284CF0  28 1F 00 20 */	cmplwi r31, 0x20
/* 80289094 00284CF4  40 82 00 1C */	bne lbl_802890B0
/* 80289098 00284CF8  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 8028909C 00284CFC  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 802890A0 00284D00  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 802890A4 00284D04  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 802890A8 00284D08  48 00 3D A1 */	bl __DVDStoreErrorCode
/* 802890AC 00284D0C  48 00 00 34 */	b lbl_802890E0
lbl_802890B0:
/* 802890B0 00284D10  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 802890B4 00284D14  41 82 00 1C */	beq lbl_802890D0
/* 802890B8 00284D18  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 802890BC 00284D1C  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 802890C0 00284D20  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 802890C4 00284D24  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 802890C8 00284D28  48 00 3D 81 */	bl __DVDStoreErrorCode
/* 802890CC 00284D2C  48 00 00 14 */	b lbl_802890E0
lbl_802890D0:
/* 802890D0 00284D30  48 00 58 AD */	bl DVDLowGetImmBufferReg
/* 802890D4 00284D34  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 802890D8 00284D38  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 802890DC 00284D3C  48 00 3D 6D */	bl __DVDStoreErrorCode
lbl_802890E0:
/* 802890E0 00284D40  80 01 00 14 */	lwz r0, 0x14(r1)
/* 802890E4 00284D44  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 802890E8 00284D48  7C 08 03 A6 */	mtlr r0
/* 802890EC 00284D4C  38 21 00 10 */	addi r1, r1, 0x10
/* 802890F0 00284D50  4E 80 00 20 */	blr

.global cbForStateGoToRetry
cbForStateGoToRetry:
/* 802890F4 00284D54  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 802890F8 00284D58  7C 08 02 A6 */	mflr r0
/* 802890FC 00284D5C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80289100 00284D60  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80289104 00284D64  7C 7F 1B 78 */	mr r31, r3
/* 80289108 00284D68  4B FE 56 55 */	bl OSDisableInterrupts
/* 8028910C 00284D6C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289110 00284D70  2C 00 00 00 */	cmpwi r0, 0
/* 80289114 00284D74  40 82 00 14 */	bne lbl_80289128
/* 80289118 00284D78  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028911C 00284D7C  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289120 00284D80  93 E4 00 78 */	stw r31, 0x78(r4)
/* 80289124 00284D84  48 00 00 1C */	b lbl_80289140
lbl_80289128:
/* 80289128 00284D88  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028912C 00284D8C  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289130 00284D90  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289134 00284D94  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289138 00284D98  7C 84 02 14 */	add r4, r4, r0
/* 8028913C 00284D9C  93 E4 00 14 */	stw r31, 0x14(r4)
lbl_80289140:
/* 80289140 00284DA0  4B FE 56 45 */	bl OSRestoreInterrupts
/* 80289144 00284DA4  28 1F 00 10 */	cmplwi r31, 0x10
/* 80289148 00284DA8  40 82 00 1C */	bne lbl_80289164
/* 8028914C 00284DAC  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 80289150 00284DB0  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289154 00284DB4  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80289158 00284DB8  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028915C 00284DBC  48 00 3C ED */	bl __DVDStoreErrorCode
/* 80289160 00284DC0  48 00 01 A8 */	b lbl_80289308
lbl_80289164:
/* 80289164 00284DC4  28 1F 00 20 */	cmplwi r31, 0x20
/* 80289168 00284DC8  40 82 00 1C */	bne lbl_80289184
/* 8028916C 00284DCC  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 80289170 00284DD0  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289174 00284DD4  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 80289178 00284DD8  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028917C 00284DDC  48 00 3C CD */	bl __DVDStoreErrorCode
/* 80289180 00284DE0  48 00 01 88 */	b lbl_80289308
lbl_80289184:
/* 80289184 00284DE4  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 80289188 00284DE8  41 82 00 1C */	beq lbl_802891A4
/* 8028918C 00284DEC  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 80289190 00284DF0  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 80289194 00284DF4  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 80289198 00284DF8  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 8028919C 00284DFC  48 00 3C AD */	bl __DVDStoreErrorCode
/* 802891A0 00284E00  48 00 01 68 */	b lbl_80289308
lbl_802891A4:
/* 802891A4 00284E04  38 00 00 00 */	li r0, 0
/* 802891A8 00284E08  90 0D AA 28 */	stw r0, lbl_8063FCE8-_SDA_BASE_(r13)
/* 802891AC 00284E0C  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 802891B0 00284E10  28 00 00 04 */	cmplwi r0, 4
/* 802891B4 00284E14  41 82 00 4C */	beq lbl_80289200
/* 802891B8 00284E18  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 802891BC 00284E1C  28 00 00 05 */	cmplwi r0, 5
/* 802891C0 00284E20  41 82 00 40 */	beq lbl_80289200
/* 802891C4 00284E24  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 802891C8 00284E28  28 00 00 0D */	cmplwi r0, 0xd
/* 802891CC 00284E2C  41 82 00 34 */	beq lbl_80289200
/* 802891D0 00284E30  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 802891D4 00284E34  28 00 00 21 */	cmplwi r0, 0x21
/* 802891D8 00284E38  41 82 00 28 */	beq lbl_80289200
/* 802891DC 00284E3C  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 802891E0 00284E40  28 00 00 22 */	cmplwi r0, 0x22
/* 802891E4 00284E44  41 82 00 1C */	beq lbl_80289200
/* 802891E8 00284E48  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 802891EC 00284E4C  28 00 00 0F */	cmplwi r0, 0xf
/* 802891F0 00284E50  41 82 00 10 */	beq lbl_80289200
/* 802891F4 00284E54  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 802891F8 00284E58  28 00 00 25 */	cmplwi r0, 0x25
/* 802891FC 00284E5C  40 82 00 0C */	bne lbl_80289208
lbl_80289200:
/* 80289200 00284E60  38 00 00 01 */	li r0, 1
/* 80289204 00284E64  90 0D AA 74 */	stw r0, lbl_8063FD34-_SDA_BASE_(r13)
lbl_80289208:
/* 80289208 00284E68  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028920C 00284E6C  2C 00 00 00 */	cmpwi r0, 0
/* 80289210 00284E70  41 82 00 70 */	beq lbl_80289280
/* 80289214 00284E74  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 80289218 00284E78  83 ED AA 90 */	lwz r31, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028921C 00284E7C  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 80289220 00284E80  38 00 00 02 */	li r0, 2
/* 80289224 00284E84  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 80289228 00284E88  38 80 00 00 */	li r4, 0
/* 8028922C 00284E8C  38 00 00 0A */	li r0, 0xa
/* 80289230 00284E90  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80289234 00284E94  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289238 00284E98  90 1F 00 0C */	stw r0, 0xc(r31)
/* 8028923C 00284E9C  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 80289240 00284EA0  2C 0C 00 00 */	cmpwi r12, 0
/* 80289244 00284EA4  41 82 00 14 */	beq lbl_80289258
/* 80289248 00284EA8  7F E4 FB 78 */	mr r4, r31
/* 8028924C 00284EAC  38 60 FF FD */	li r3, -3
/* 80289250 00284EB0  7D 89 03 A6 */	mtctr r12
/* 80289254 00284EB4  4E 80 04 21 */	bctrl
lbl_80289258:
/* 80289258 00284EB8  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028925C 00284EBC  2C 0C 00 00 */	cmpwi r12, 0
/* 80289260 00284EC0  41 82 00 14 */	beq lbl_80289274
/* 80289264 00284EC4  7F E4 FB 78 */	mr r4, r31
/* 80289268 00284EC8  38 60 00 00 */	li r3, 0
/* 8028926C 00284ECC  7D 89 03 A6 */	mtctr r12
/* 80289270 00284ED0  4E 80 04 21 */	bctrl
lbl_80289274:
/* 80289274 00284ED4  48 00 18 9D */	bl stateReady
/* 80289278 00284ED8  38 00 00 01 */	li r0, 1
/* 8028927C 00284EDC  48 00 00 08 */	b lbl_80289284
lbl_80289280:
/* 80289280 00284EE0  38 00 00 00 */	li r0, 0
lbl_80289284:
/* 80289284 00284EE4  2C 00 00 00 */	cmpwi r0, 0
/* 80289288 00284EE8  40 82 00 80 */	bne lbl_80289308
/* 8028928C 00284EEC  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289290 00284EF0  38 00 00 0B */	li r0, 0xb
/* 80289294 00284EF4  38 60 00 01 */	li r3, 1
/* 80289298 00284EF8  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028929C 00284EFC  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 802892A0 00284F00  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 802892A4 00284F04  2C 00 00 00 */	cmpwi r0, 0
/* 802892A8 00284F08  40 82 00 60 */	bne lbl_80289308
/* 802892AC 00284F0C  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 802892B0 00284F10  2C 00 00 00 */	cmpwi r0, 0
/* 802892B4 00284F14  40 82 00 54 */	bne lbl_80289308
/* 802892B8 00284F18  3F E0 80 51 */	lis r31, lbl_80516A00@ha
/* 802892BC 00284F1C  90 6D AA 34 */	stw r3, lbl_8063FCF4-_SDA_BASE_(r13)
/* 802892C0 00284F20  38 7F 6A 00 */	addi r3, r31, lbl_80516A00@l
/* 802892C4 00284F24  4B FE 04 61 */	bl OSCreateAlarm
/* 802892C8 00284F28  4B FE 95 09 */	bl OSGetTick
/* 802892CC 00284F2C  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 802892D0 00284F30  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 802892D4 00284F34  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 802892D8 00284F38  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 802892DC 00284F3C  7C 66 1B 78 */	mr r6, r3
/* 802892E0 00284F40  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 802892E4 00284F44  54 00 F0 BE */	srwi r0, r0, 2
/* 802892E8 00284F48  38 7F 6A 00 */	addi r3, r31, 0x6a00
/* 802892EC 00284F4C  7C 04 00 16 */	mulhwu r0, r4, r0
/* 802892F0 00284F50  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 802892F4 00284F54  38 A0 00 00 */	li r5, 0
/* 802892F8 00284F58  38 E0 00 00 */	li r7, 0
/* 802892FC 00284F5C  54 00 D1 BE */	srwi r0, r0, 6
/* 80289300 00284F60  1D 00 00 64 */	mulli r8, r0, 0x64
/* 80289304 00284F64  4B FE 06 F1 */	bl OSSetPeriodicAlarm
lbl_80289308:
/* 80289308 00284F68  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028930C 00284F6C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80289310 00284F70  7C 08 03 A6 */	mtlr r0
/* 80289314 00284F74  38 21 00 10 */	addi r1, r1, 0x10
/* 80289318 00284F78  4E 80 00 20 */	blr

.global stateCheckID
stateCheckID:
/* 8028931C 00284F7C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80289320 00284F80  7C 08 02 A6 */	mflr r0
/* 80289324 00284F84  90 01 00 24 */	stw r0, 0x24(r1)
/* 80289328 00284F88  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028932C 00284F8C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80289330 00284F90  3F C0 80 51 */	lis r30, lbl_80516980@ha
/* 80289334 00284F94  3B DE 69 80 */	addi r30, r30, lbl_80516980@l
/* 80289338 00284F98  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028933C 00284F9C  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 80289340 00284FA0  2C 00 00 03 */	cmpwi r0, 3
/* 80289344 00284FA4  41 82 00 08 */	beq lbl_8028934C
/* 80289348 00284FA8  48 00 01 90 */	b lbl_802894D8
lbl_8028934C:
/* 8028934C 00284FAC  3B E0 00 00 */	li r31, 0
/* 80289350 00284FB0  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289354 00284FB4  93 ED AA 40 */	stw r31, lbl_8063FD00-_SDA_BASE_(r13)
/* 80289358 00284FB8  38 7E 00 C0 */	addi r3, r30, 0xc0
/* 8028935C 00284FBC  80 84 00 24 */	lwz r4, 0x24(r4)
/* 80289360 00284FC0  48 00 3B 8D */	bl DVDCompareDiskID
/* 80289364 00284FC4  2C 03 00 00 */	cmpwi r3, 0
/* 80289368 00284FC8  41 82 00 D8 */	beq lbl_80289440
/* 8028936C 00284FCC  80 6D AA 8C */	lwz r3, lbl_8063FD4C-_SDA_BASE_(r13)
/* 80289370 00284FD0  38 9E 00 C0 */	addi r4, r30, 0xc0
/* 80289374 00284FD4  38 A0 00 20 */	li r5, 0x20
/* 80289378 00284FD8  4B D7 AC 89 */	bl memcpy
/* 8028937C 00284FDC  80 AD AA 90 */	lwz r5, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289380 00284FE0  38 00 00 01 */	li r0, 1
/* 80289384 00284FE4  38 7E 00 00 */	addi r3, r30, 0
/* 80289388 00284FE8  38 80 00 20 */	li r4, 0x20
/* 8028938C 00284FEC  90 05 00 0C */	stw r0, 0xc(r5)
/* 80289390 00284FF0  4B FE 12 99 */	bl DCInvalidateRange
/* 80289394 00284FF4  93 ED AA 28 */	stw r31, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289398 00284FF8  38 60 00 00 */	li r3, 0
/* 8028939C 00284FFC  48 00 55 FD */	bl DVDLowClearCoverInterrupt
/* 802893A0 00285000  4B FE 53 BD */	bl OSDisableInterrupts
/* 802893A4 00285004  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802893A8 00285008  7C 7D 1B 78 */	mr r29, r3
/* 802893AC 0028500C  28 00 00 05 */	cmplwi r0, 5
/* 802893B0 00285010  41 80 00 08 */	blt lbl_802893B8
/* 802893B4 00285014  93 ED AA 10 */	stw r31, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_802893B8:
/* 802893B8 00285018  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802893BC 0028501C  3F E0 80 52 */	lis r31, lbl_8051B6E0@ha
/* 802893C0 00285020  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802893C4 00285024  3B FF B6 E0 */	addi r31, r31, lbl_8051B6E0@l
/* 802893C8 00285028  1C C0 00 14 */	mulli r6, r0, 0x14
/* 802893CC 0028502C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802893D0 00285030  38 E0 00 21 */	li r7, 0x21
/* 802893D4 00285034  3C A0 00 01 */	lis r5, 1
/* 802893D8 00285038  1C 63 00 14 */	mulli r3, r3, 0x14
/* 802893DC 0028503C  38 80 00 20 */	li r4, 0x20
/* 802893E0 00285040  7C DF 32 14 */	add r6, r31, r6
/* 802893E4 00285044  90 E6 00 1C */	stw r7, 0x1c(r6)
/* 802893E8 00285048  7C 7F 1A 14 */	add r3, r31, r3
/* 802893EC 0028504C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 802893F0 00285050  90 A3 00 20 */	stw r5, 0x20(r3)
/* 802893F4 00285054  7C 7F 02 14 */	add r3, r31, r0
/* 802893F8 00285058  90 83 00 24 */	stw r4, 0x24(r3)
/* 802893FC 0028505C  4B FE 93 D5 */	bl OSGetTick
/* 80289400 00285060  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289404 00285064  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289408 00285068  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028940C 0028506C  38 04 00 01 */	addi r0, r4, 1
/* 80289410 00285070  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289414 00285074  7C 9F 2A 14 */	add r4, r31, r5
/* 80289418 00285078  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028941C 0028507C  7F A3 EB 78 */	mr r3, r29
/* 80289420 00285080  4B FE 53 65 */	bl OSRestoreInterrupts
/* 80289424 00285084  3C C0 80 29 */	lis r6, cbForStateReadingTOC@ha
/* 80289428 00285088  38 7E 00 E0 */	addi r3, r30, 0xe0
/* 8028942C 0028508C  38 C6 96 54 */	addi r6, r6, cbForStateReadingTOC@l
/* 80289430 00285090  38 80 00 20 */	li r4, 0x20
/* 80289434 00285094  3C A0 00 01 */	lis r5, 1
/* 80289438 00285098  48 00 46 0D */	bl DVDLowUnencryptedRead
/* 8028943C 0028509C  48 00 01 FC */	b lbl_80289638
lbl_80289440:
/* 80289440 002850A0  4B FE 53 1D */	bl OSDisableInterrupts
/* 80289444 002850A4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289448 002850A8  7C 7D 1B 78 */	mr r29, r3
/* 8028944C 002850AC  28 00 00 05 */	cmplwi r0, 5
/* 80289450 002850B0  41 80 00 08 */	blt lbl_80289458
/* 80289454 002850B4  93 ED AA 10 */	stw r31, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_80289458:
/* 80289458 002850B8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028945C 002850BC  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 80289460 002850C0  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289464 002850C4  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 80289468 002850C8  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028946C 002850CC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289470 002850D0  38 C0 00 10 */	li r6, 0x10
/* 80289474 002850D4  38 80 00 00 */	li r4, 0
/* 80289478 002850D8  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028947C 002850DC  7C BE 2A 14 */	add r5, r30, r5
/* 80289480 002850E0  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80289484 002850E4  7C 7E 1A 14 */	add r3, r30, r3
/* 80289488 002850E8  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028948C 002850EC  90 83 00 20 */	stw r4, 0x20(r3)
/* 80289490 002850F0  7C 7E 02 14 */	add r3, r30, r0
/* 80289494 002850F4  90 83 00 24 */	stw r4, 0x24(r3)
/* 80289498 002850F8  4B FE 93 39 */	bl OSGetTick
/* 8028949C 002850FC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802894A0 00285100  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802894A4 00285104  1C A0 00 14 */	mulli r5, r0, 0x14
/* 802894A8 00285108  38 04 00 01 */	addi r0, r4, 1
/* 802894AC 0028510C  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802894B0 00285110  7C 9E 2A 14 */	add r4, r30, r5
/* 802894B4 00285114  90 64 00 2C */	stw r3, 0x2c(r4)
/* 802894B8 00285118  7F A3 EB 78 */	mr r3, r29
/* 802894BC 0028511C  4B FE 52 C9 */	bl OSRestoreInterrupts
/* 802894C0 00285120  3C A0 80 29 */	lis r5, cbForStateCheckID1@ha
/* 802894C4 00285124  38 60 00 00 */	li r3, 0
/* 802894C8 00285128  38 A5 9E B0 */	addi r5, r5, cbForStateCheckID1@l
/* 802894CC 0028512C  38 80 00 00 */	li r4, 0
/* 802894D0 00285130  48 00 47 09 */	bl DVDLowStopMotor
/* 802894D4 00285134  48 00 01 64 */	b lbl_80289638
lbl_802894D8:
/* 802894D8 00285138  80 8D AA 8C */	lwz r4, lbl_8063FD4C-_SDA_BASE_(r13)
/* 802894DC 0028513C  38 7E 00 C0 */	addi r3, r30, 0xc0
/* 802894E0 00285140  38 A0 00 20 */	li r5, 0x20
/* 802894E4 00285144  4B F4 0E B5 */	bl memcmp
/* 802894E8 00285148  2C 03 00 00 */	cmpwi r3, 0
/* 802894EC 0028514C  41 82 00 A0 */	beq lbl_8028958C
/* 802894F0 00285150  4B FE 52 6D */	bl OSDisableInterrupts
/* 802894F4 00285154  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802894F8 00285158  7C 7D 1B 78 */	mr r29, r3
/* 802894FC 0028515C  28 00 00 05 */	cmplwi r0, 5
/* 80289500 00285160  41 80 00 0C */	blt lbl_8028950C
/* 80289504 00285164  38 00 00 00 */	li r0, 0
/* 80289508 00285168  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028950C:
/* 8028950C 0028516C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289510 00285170  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 80289514 00285174  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289518 00285178  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 8028951C 0028517C  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80289520 00285180  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289524 00285184  38 C0 00 10 */	li r6, 0x10
/* 80289528 00285188  38 80 00 00 */	li r4, 0
/* 8028952C 0028518C  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80289530 00285190  7C BE 2A 14 */	add r5, r30, r5
/* 80289534 00285194  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80289538 00285198  7C 7E 1A 14 */	add r3, r30, r3
/* 8028953C 0028519C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289540 002851A0  90 83 00 20 */	stw r4, 0x20(r3)
/* 80289544 002851A4  7C 7E 02 14 */	add r3, r30, r0
/* 80289548 002851A8  90 83 00 24 */	stw r4, 0x24(r3)
/* 8028954C 002851AC  4B FE 92 85 */	bl OSGetTick
/* 80289550 002851B0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289554 002851B4  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289558 002851B8  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028955C 002851BC  38 04 00 01 */	addi r0, r4, 1
/* 80289560 002851C0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289564 002851C4  7C 9E 2A 14 */	add r4, r30, r5
/* 80289568 002851C8  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028956C 002851CC  7F A3 EB 78 */	mr r3, r29
/* 80289570 002851D0  4B FE 52 15 */	bl OSRestoreInterrupts
/* 80289574 002851D4  3C A0 80 29 */	lis r5, cbForStateCheckID1@ha
/* 80289578 002851D8  38 60 00 00 */	li r3, 0
/* 8028957C 002851DC  38 A5 9E B0 */	addi r5, r5, cbForStateCheckID1@l
/* 80289580 002851E0  38 80 00 00 */	li r4, 0
/* 80289584 002851E4  48 00 46 55 */	bl DVDLowStopMotor
/* 80289588 002851E8  48 00 00 B0 */	b lbl_80289638
lbl_8028958C:
/* 8028958C 002851EC  3B E0 00 00 */	li r31, 0
/* 80289590 002851F0  38 60 00 00 */	li r3, 0
/* 80289594 002851F4  93 ED AA 28 */	stw r31, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289598 002851F8  48 00 54 01 */	bl DVDLowClearCoverInterrupt
/* 8028959C 002851FC  4B FE 51 C1 */	bl OSDisableInterrupts
/* 802895A0 00285200  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802895A4 00285204  7C 7D 1B 78 */	mr r29, r3
/* 802895A8 00285208  28 00 00 05 */	cmplwi r0, 5
/* 802895AC 0028520C  41 80 00 08 */	blt lbl_802895B4
/* 802895B0 00285210  93 ED AA 10 */	stw r31, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_802895B4:
/* 802895B4 00285214  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802895B8 00285218  3F E0 80 52 */	lis r31, lbl_8051B6E0@ha
/* 802895BC 0028521C  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802895C0 00285220  3B FF B6 E0 */	addi r31, r31, lbl_8051B6E0@l
/* 802895C4 00285224  1C C0 00 14 */	mulli r6, r0, 0x14
/* 802895C8 00285228  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802895CC 0028522C  38 E0 00 21 */	li r7, 0x21
/* 802895D0 00285230  3C A0 00 01 */	lis r5, 1
/* 802895D4 00285234  1C 63 00 14 */	mulli r3, r3, 0x14
/* 802895D8 00285238  38 80 00 20 */	li r4, 0x20
/* 802895DC 0028523C  7C DF 32 14 */	add r6, r31, r6
/* 802895E0 00285240  90 E6 00 1C */	stw r7, 0x1c(r6)
/* 802895E4 00285244  7C 7F 1A 14 */	add r3, r31, r3
/* 802895E8 00285248  1C 00 00 14 */	mulli r0, r0, 0x14
/* 802895EC 0028524C  90 A3 00 20 */	stw r5, 0x20(r3)
/* 802895F0 00285250  7C 7F 02 14 */	add r3, r31, r0
/* 802895F4 00285254  90 83 00 24 */	stw r4, 0x24(r3)
/* 802895F8 00285258  4B FE 91 D9 */	bl OSGetTick
/* 802895FC 0028525C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289600 00285260  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289604 00285264  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80289608 00285268  38 04 00 01 */	addi r0, r4, 1
/* 8028960C 0028526C  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289610 00285270  7C 9F 2A 14 */	add r4, r31, r5
/* 80289614 00285274  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80289618 00285278  7F A3 EB 78 */	mr r3, r29
/* 8028961C 0028527C  4B FE 51 69 */	bl OSRestoreInterrupts
/* 80289620 00285280  3C C0 80 29 */	lis r6, cbForStateReadingTOC@ha
/* 80289624 00285284  38 7E 00 E0 */	addi r3, r30, 0xe0
/* 80289628 00285288  38 C6 96 54 */	addi r6, r6, cbForStateReadingTOC@l
/* 8028962C 0028528C  38 80 00 20 */	li r4, 0x20
/* 80289630 00285290  3C A0 00 01 */	lis r5, 1
/* 80289634 00285294  48 00 44 11 */	bl DVDLowUnencryptedRead
lbl_80289638:
/* 80289638 00285298  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028963C 0028529C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80289640 002852A0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80289644 002852A4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80289648 002852A8  7C 08 03 A6 */	mtlr r0
/* 8028964C 002852AC  38 21 00 20 */	addi r1, r1, 0x20
/* 80289650 002852B0  4E 80 00 20 */	blr
cbForStateReadingTOC:
/* 80289654 002852B4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 80289658 002852B8  7C 08 02 A6 */	mflr r0
/* 8028965C 002852BC  90 01 00 24 */	stw r0, 0x24(r1)
/* 80289660 002852C0  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80289664 002852C4  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80289668 002852C8  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028966C 002852CC  7C 7D 1B 78 */	mr r29, r3
/* 80289670 002852D0  4B FE 50 ED */	bl OSDisableInterrupts
/* 80289674 002852D4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289678 002852D8  2C 00 00 00 */	cmpwi r0, 0
/* 8028967C 002852DC  40 82 00 14 */	bne lbl_80289690
/* 80289680 002852E0  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289684 002852E4  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289688 002852E8  93 A4 00 78 */	stw r29, 0x78(r4)
/* 8028968C 002852EC  48 00 00 20 */	b lbl_802896AC
lbl_80289690:
/* 80289690 002852F0  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289694 002852F4  3C A0 80 52 */	lis r5, lbl_8051B6E0@ha
/* 80289698 002852F8  38 A5 B6 E0 */	addi r5, r5, lbl_8051B6E0@l
/* 8028969C 002852FC  38 04 FF FF */	addi r0, r4, -1
/* 802896A0 00285300  1C 00 00 14 */	mulli r0, r0, 0x14
/* 802896A4 00285304  7C 85 02 14 */	add r4, r5, r0
/* 802896A8 00285308  93 A4 00 28 */	stw r29, 0x28(r4)
lbl_802896AC:
/* 802896AC 0028530C  4B FE 50 D9 */	bl OSRestoreInterrupts
/* 802896B0 00285310  28 1D 00 10 */	cmplwi r29, 0x10
/* 802896B4 00285314  40 82 00 1C */	bne lbl_802896D0
/* 802896B8 00285318  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 802896BC 0028531C  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 802896C0 00285320  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 802896C4 00285324  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 802896C8 00285328  48 00 37 81 */	bl __DVDStoreErrorCode
/* 802896CC 0028532C  48 00 01 0C */	b lbl_802897D8
lbl_802896D0:
/* 802896D0 00285330  28 1D 00 20 */	cmplwi r29, 0x20
/* 802896D4 00285334  40 82 00 1C */	bne lbl_802896F0
/* 802896D8 00285338  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 802896DC 0028533C  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 802896E0 00285340  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 802896E4 00285344  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 802896E8 00285348  48 00 37 61 */	bl __DVDStoreErrorCode
/* 802896EC 0028534C  48 00 00 EC */	b lbl_802897D8
lbl_802896F0:
/* 802896F0 00285350  57 A0 07 FF */	clrlwi. r0, r29, 0x1f
/* 802896F4 00285354  41 82 00 C8 */	beq lbl_802897BC
/* 802896F8 00285358  3C 80 80 51 */	lis r4, lbl_80516A60@ha
/* 802896FC 0028535C  3B A0 00 00 */	li r29, 0
/* 80289700 00285360  38 84 6A 60 */	addi r4, r4, lbl_80516A60@l
/* 80289704 00285364  93 AD AA 28 */	stw r29, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289708 00285368  38 60 00 00 */	li r3, 0
/* 8028970C 0028536C  90 8D AA 60 */	stw r4, lbl_8063FD20-_SDA_BASE_(r13)
/* 80289710 00285370  48 00 52 89 */	bl DVDLowClearCoverInterrupt
/* 80289714 00285374  4B FE 50 49 */	bl OSDisableInterrupts
/* 80289718 00285378  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028971C 0028537C  7C 7E 1B 78 */	mr r30, r3
/* 80289720 00285380  28 00 00 05 */	cmplwi r0, 5
/* 80289724 00285384  41 80 00 08 */	blt lbl_8028972C
/* 80289728 00285388  93 AD AA 10 */	stw r29, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028972C:
/* 8028972C 0028538C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289730 00285390  3F E0 80 52 */	lis r31, lbl_8051B6E0@ha
/* 80289734 00285394  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289738 00285398  3F A0 00 01 */	lis r29, 0x00010008@ha
/* 8028973C 0028539C  1C 80 00 14 */	mulli r4, r0, 0x14
/* 80289740 002853A0  3B FF B6 E0 */	addi r31, r31, lbl_8051B6E0@l
/* 80289744 002853A4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289748 002853A8  38 C0 00 21 */	li r6, 0x21
/* 8028974C 002853AC  38 BD 00 08 */	addi r5, r29, 0x00010008@l
/* 80289750 002853B0  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80289754 002853B4  7C 9F 22 14 */	add r4, r31, r4
/* 80289758 002853B8  90 C4 00 1C */	stw r6, 0x1c(r4)
/* 8028975C 002853BC  7C 7F 1A 14 */	add r3, r31, r3
/* 80289760 002853C0  38 80 00 20 */	li r4, 0x20
/* 80289764 002853C4  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289768 002853C8  90 A3 00 20 */	stw r5, 0x20(r3)
/* 8028976C 002853CC  7C 7F 02 14 */	add r3, r31, r0
/* 80289770 002853D0  90 83 00 24 */	stw r4, 0x24(r3)
/* 80289774 002853D4  4B FE 90 5D */	bl OSGetTick
/* 80289778 002853D8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028977C 002853DC  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289780 002853E0  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80289784 002853E4  38 04 00 01 */	addi r0, r4, 1
/* 80289788 002853E8  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028978C 002853EC  7C 9F 2A 14 */	add r4, r31, r5
/* 80289790 002853F0  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80289794 002853F4  7F C3 F3 78 */	mr r3, r30
/* 80289798 002853F8  4B FE 4F ED */	bl OSRestoreInterrupts
/* 8028979C 002853FC  3C 60 80 51 */	lis r3, lbl_80516A80@ha
/* 802897A0 00285400  3C C0 80 29 */	lis r6, cbForStateReadingPartitionInfo@ha
/* 802897A4 00285404  38 BD 00 08 */	addi r5, r29, 8
/* 802897A8 00285408  38 80 00 20 */	li r4, 0x20
/* 802897AC 0028540C  38 63 6A 80 */	addi r3, r3, lbl_80516A80@l
/* 802897B0 00285410  38 C6 97 F4 */	addi r6, r6, cbForStateReadingPartitionInfo@l
/* 802897B4 00285414  48 00 42 91 */	bl DVDLowUnencryptedRead
/* 802897B8 00285418  48 00 00 20 */	b lbl_802897D8
lbl_802897BC:
/* 802897BC 0028541C  38 60 00 27 */	li r3, 0x27
/* 802897C0 00285420  38 80 00 00 */	li r4, 0
/* 802897C4 00285424  38 A0 00 00 */	li r5, 0
/* 802897C8 00285428  4B FF E9 C5 */	bl StampCommand
/* 802897CC 0028542C  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 802897D0 00285430  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 802897D4 00285434  48 00 47 01 */	bl DVDLowRequestError
lbl_802897D8:
/* 802897D8 00285438  80 01 00 24 */	lwz r0, 0x24(r1)
/* 802897DC 0028543C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 802897E0 00285440  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 802897E4 00285444  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 802897E8 00285448  7C 08 03 A6 */	mtlr r0
/* 802897EC 0028544C  38 21 00 20 */	addi r1, r1, 0x20
/* 802897F0 00285450  4E 80 00 20 */	blr

.global cbForStateReadingPartitionInfo
cbForStateReadingPartitionInfo:
/* 802897F4 00285454  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 802897F8 00285458  7C 08 02 A6 */	mflr r0
/* 802897FC 0028545C  90 01 00 24 */	stw r0, 0x24(r1)
/* 80289800 00285460  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 80289804 00285464  3F E0 80 51 */	lis r31, lbl_80516980@ha
/* 80289808 00285468  3B FF 69 80 */	addi r31, r31, lbl_80516980@l
/* 8028980C 0028546C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 80289810 00285470  93 A1 00 14 */	stw r29, 0x14(r1)
/* 80289814 00285474  93 81 00 10 */	stw r28, 0x10(r1)
/* 80289818 00285478  7C 7C 1B 78 */	mr r28, r3
/* 8028981C 0028547C  4B FE 4F 41 */	bl OSDisableInterrupts
/* 80289820 00285480  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289824 00285484  2C 00 00 00 */	cmpwi r0, 0
/* 80289828 00285488  40 82 00 14 */	bne lbl_8028983C
/* 8028982C 0028548C  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289830 00285490  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289834 00285494  93 84 00 78 */	stw r28, 0x78(r4)
/* 80289838 00285498  48 00 00 20 */	b lbl_80289858
lbl_8028983C:
/* 8028983C 0028549C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289840 002854A0  3C A0 80 52 */	lis r5, lbl_8051B6E0@ha
/* 80289844 002854A4  38 A5 B6 E0 */	addi r5, r5, lbl_8051B6E0@l
/* 80289848 002854A8  38 04 FF FF */	addi r0, r4, -1
/* 8028984C 002854AC  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289850 002854B0  7C 85 02 14 */	add r4, r5, r0
/* 80289854 002854B4  93 84 00 28 */	stw r28, 0x28(r4)
lbl_80289858:
/* 80289858 002854B8  4B FE 4F 2D */	bl OSRestoreInterrupts
/* 8028985C 002854BC  28 1C 00 10 */	cmplwi r28, 0x10
/* 80289860 002854C0  40 82 00 1C */	bne lbl_8028987C
/* 80289864 002854C4  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 80289868 002854C8  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028986C 002854CC  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80289870 002854D0  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289874 002854D4  48 00 35 D5 */	bl __DVDStoreErrorCode
/* 80289878 002854D8  48 00 03 2C */	b lbl_80289BA4
lbl_8028987C:
/* 8028987C 002854DC  28 1C 00 20 */	cmplwi r28, 0x20
/* 80289880 002854E0  40 82 00 1C */	bne lbl_8028989C
/* 80289884 002854E4  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 80289888 002854E8  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028988C 002854EC  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 80289890 002854F0  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289894 002854F4  48 00 35 B5 */	bl __DVDStoreErrorCode
/* 80289898 002854F8  48 00 03 0C */	b lbl_80289BA4
lbl_8028989C:
/* 8028989C 002854FC  57 80 07 FF */	clrlwi. r0, r28, 0x1f
/* 802898A0 00285500  41 82 02 E8 */	beq lbl_80289B88
/* 802898A4 00285504  38 C0 00 00 */	li r6, 0
/* 802898A8 00285508  38 7F 01 00 */	addi r3, r31, 0x100
/* 802898AC 0028550C  90 CD AA 28 */	stw r6, lbl_8063FCE8-_SDA_BASE_(r13)
/* 802898B0 00285510  38 E0 00 00 */	li r7, 0
/* 802898B4 00285514  80 8D AA 60 */	lwz r4, lbl_8063FD20-_SDA_BASE_(r13)
/* 802898B8 00285518  90 6D AA 5C */	stw r3, lbl_8063FD1C-_SDA_BASE_(r13)
/* 802898BC 0028551C  90 CD AA 58 */	stw r6, lbl_8063FD18-_SDA_BASE_(r13)
/* 802898C0 00285520  48 00 00 24 */	b lbl_802898E4
lbl_802898C4:
/* 802898C4 00285524  80 03 00 04 */	lwz r0, 4(r3)
/* 802898C8 00285528  2C 00 00 00 */	cmpwi r0, 0
/* 802898CC 0028552C  40 82 00 0C */	bne lbl_802898D8
/* 802898D0 00285530  7C 66 1B 78 */	mr r6, r3
/* 802898D4 00285534  90 6D AA 58 */	stw r3, lbl_8063FD18-_SDA_BASE_(r13)
lbl_802898D8:
/* 802898D8 00285538  38 63 00 08 */	addi r3, r3, 8
/* 802898DC 0028553C  38 E7 00 01 */	addi r7, r7, 1
/* 802898E0 00285540  90 6D AA 5C */	stw r3, lbl_8063FD1C-_SDA_BASE_(r13)
lbl_802898E4:
/* 802898E4 00285544  80 04 00 00 */	lwz r0, 0(r4)
/* 802898E8 00285548  7C E5 07 34 */	extsh r5, r7
/* 802898EC 0028554C  7C 05 00 40 */	cmplw r5, r0
/* 802898F0 00285550  41 80 FF D4 */	blt lbl_802898C4
/* 802898F4 00285554  2C 06 00 00 */	cmpwi r6, 0
/* 802898F8 00285558  41 82 01 94 */	beq lbl_80289A8C
/* 802898FC 0028555C  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 80289900 00285560  2C 00 00 03 */	cmpwi r0, 3
/* 80289904 00285564  41 82 00 08 */	beq lbl_8028990C
/* 80289908 00285568  48 00 00 C4 */	b lbl_802899CC
lbl_8028990C:
/* 8028990C 0028556C  3B A0 00 00 */	li r29, 0
/* 80289910 00285570  38 60 00 00 */	li r3, 0
/* 80289914 00285574  93 AD AA 28 */	stw r29, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289918 00285578  48 00 50 81 */	bl DVDLowClearCoverInterrupt
/* 8028991C 0028557C  80 6D AA 58 */	lwz r3, lbl_8063FD18-_SDA_BASE_(r13)
/* 80289920 00285580  83 83 00 00 */	lwz r28, 0(r3)
/* 80289924 00285584  4B FE 4E 39 */	bl OSDisableInterrupts
/* 80289928 00285588  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028992C 0028558C  7C 7E 1B 78 */	mr r30, r3
/* 80289930 00285590  28 00 00 05 */	cmplwi r0, 5
/* 80289934 00285594  41 80 00 08 */	blt lbl_8028993C
/* 80289938 00285598  93 AD AA 10 */	stw r29, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028993C:
/* 8028993C 0028559C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289940 002855A0  3F A0 80 52 */	lis r29, lbl_8051B6E0@ha
/* 80289944 002855A4  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289948 002855A8  3B BD B6 E0 */	addi r29, r29, lbl_8051B6E0@l
/* 8028994C 002855AC  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80289950 002855B0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289954 002855B4  38 C0 00 22 */	li r6, 0x22
/* 80289958 002855B8  38 80 00 00 */	li r4, 0
/* 8028995C 002855BC  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80289960 002855C0  7C BD 2A 14 */	add r5, r29, r5
/* 80289964 002855C4  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80289968 002855C8  7C 7D 1A 14 */	add r3, r29, r3
/* 8028996C 002855CC  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289970 002855D0  93 83 00 20 */	stw r28, 0x20(r3)
/* 80289974 002855D4  7C 7D 02 14 */	add r3, r29, r0
/* 80289978 002855D8  90 83 00 24 */	stw r4, 0x24(r3)
/* 8028997C 002855DC  4B FE 8E 55 */	bl OSGetTick
/* 80289980 002855E0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289984 002855E4  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289988 002855E8  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028998C 002855EC  38 04 00 01 */	addi r0, r4, 1
/* 80289990 002855F0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289994 002855F4  7C 9D 2A 14 */	add r4, r29, r5
/* 80289998 002855F8  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028999C 002855FC  7F C3 F3 78 */	mr r3, r30
/* 802899A0 00285600  4B FE 4D E5 */	bl OSRestoreInterrupts
/* 802899A4 00285604  80 6D AA 58 */	lwz r3, lbl_8063FD18-_SDA_BASE_(r13)
/* 802899A8 00285608  3D 00 80 29 */	lis r8, cbForStateOpenPartition@ha
/* 802899AC 0028560C  38 FF 01 40 */	addi r7, r31, 0x140
/* 802899B0 00285610  38 80 00 00 */	li r4, 0
/* 802899B4 00285614  80 63 00 00 */	lwz r3, 0(r3)
/* 802899B8 00285618  39 08 9B C4 */	addi r8, r8, cbForStateOpenPartition@l
/* 802899BC 0028561C  38 A0 00 00 */	li r5, 0
/* 802899C0 00285620  38 C0 00 00 */	li r6, 0
/* 802899C4 00285624  48 00 3C B5 */	bl DVDLowOpenPartition
/* 802899C8 00285628  48 00 01 DC */	b lbl_80289BA4
lbl_802899CC:
/* 802899CC 0028562C  3B A0 00 00 */	li r29, 0
/* 802899D0 00285630  38 60 00 00 */	li r3, 0
/* 802899D4 00285634  93 AD AA 28 */	stw r29, lbl_8063FCE8-_SDA_BASE_(r13)
/* 802899D8 00285638  48 00 4F C1 */	bl DVDLowClearCoverInterrupt
/* 802899DC 0028563C  80 6D AA 58 */	lwz r3, lbl_8063FD18-_SDA_BASE_(r13)
/* 802899E0 00285640  83 83 00 00 */	lwz r28, 0(r3)
/* 802899E4 00285644  4B FE 4D 79 */	bl OSDisableInterrupts
/* 802899E8 00285648  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 802899EC 0028564C  7C 7E 1B 78 */	mr r30, r3
/* 802899F0 00285650  28 00 00 05 */	cmplwi r0, 5
/* 802899F4 00285654  41 80 00 08 */	blt lbl_802899FC
/* 802899F8 00285658  93 AD AA 10 */	stw r29, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_802899FC:
/* 802899FC 0028565C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289A00 00285660  3F A0 80 52 */	lis r29, lbl_8051B6E0@ha
/* 80289A04 00285664  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289A08 00285668  3B BD B6 E0 */	addi r29, r29, lbl_8051B6E0@l
/* 80289A0C 0028566C  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80289A10 00285670  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289A14 00285674  38 C0 00 22 */	li r6, 0x22
/* 80289A18 00285678  38 80 00 00 */	li r4, 0
/* 80289A1C 0028567C  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80289A20 00285680  7C BD 2A 14 */	add r5, r29, r5
/* 80289A24 00285684  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 80289A28 00285688  7C 7D 1A 14 */	add r3, r29, r3
/* 80289A2C 0028568C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289A30 00285690  93 83 00 20 */	stw r28, 0x20(r3)
/* 80289A34 00285694  7C 7D 02 14 */	add r3, r29, r0
/* 80289A38 00285698  90 83 00 24 */	stw r4, 0x24(r3)
/* 80289A3C 0028569C  4B FE 8D 95 */	bl OSGetTick
/* 80289A40 002856A0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289A44 002856A4  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289A48 002856A8  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80289A4C 002856AC  38 04 00 01 */	addi r0, r4, 1
/* 80289A50 002856B0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289A54 002856B4  7C 9D 2A 14 */	add r4, r29, r5
/* 80289A58 002856B8  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80289A5C 002856BC  7F C3 F3 78 */	mr r3, r30
/* 80289A60 002856C0  4B FE 4D 25 */	bl OSRestoreInterrupts
/* 80289A64 002856C4  80 6D AA 58 */	lwz r3, lbl_8063FD18-_SDA_BASE_(r13)
/* 80289A68 002856C8  3D 00 80 29 */	lis r8, cbForStateOpenPartition2@ha
/* 80289A6C 002856CC  38 FF 01 40 */	addi r7, r31, 0x140
/* 80289A70 002856D0  38 80 00 00 */	li r4, 0
/* 80289A74 002856D4  80 63 00 00 */	lwz r3, 0(r3)
/* 80289A78 002856D8  39 08 9D 4C */	addi r8, r8, cbForStateOpenPartition2@l
/* 80289A7C 002856DC  38 A0 00 00 */	li r5, 0
/* 80289A80 002856E0  38 C0 00 00 */	li r6, 0
/* 80289A84 002856E4  48 00 3B F5 */	bl DVDLowOpenPartition
/* 80289A88 002856E8  48 00 01 1C */	b lbl_80289BA4
lbl_80289A8C:
/* 80289A8C 002856EC  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80289A90 002856F0  2C 00 00 00 */	cmpwi r0, 0
/* 80289A94 002856F4  41 82 00 6C */	beq lbl_80289B00
/* 80289A98 002856F8  83 8D AA 90 */	lwz r28, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289A9C 002856FC  38 7F 00 20 */	addi r3, r31, 0x20
/* 80289AA0 00285700  38 00 00 01 */	li r0, 1
/* 80289AA4 00285704  38 80 00 00 */	li r4, 0
/* 80289AA8 00285708  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 80289AAC 0028570C  38 00 00 0A */	li r0, 0xa
/* 80289AB0 00285710  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80289AB4 00285714  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289AB8 00285718  90 1C 00 0C */	stw r0, 0xc(r28)
/* 80289ABC 0028571C  81 9C 00 28 */	lwz r12, 0x28(r28)
/* 80289AC0 00285720  2C 0C 00 00 */	cmpwi r12, 0
/* 80289AC4 00285724  41 82 00 14 */	beq lbl_80289AD8
/* 80289AC8 00285728  7F 84 E3 78 */	mr r4, r28
/* 80289ACC 0028572C  38 60 FF FD */	li r3, -3
/* 80289AD0 00285730  7D 89 03 A6 */	mtctr r12
/* 80289AD4 00285734  4E 80 04 21 */	bctrl
lbl_80289AD8:
/* 80289AD8 00285738  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 80289ADC 0028573C  2C 0C 00 00 */	cmpwi r12, 0
/* 80289AE0 00285740  41 82 00 14 */	beq lbl_80289AF4
/* 80289AE4 00285744  7F 84 E3 78 */	mr r4, r28
/* 80289AE8 00285748  38 60 00 00 */	li r3, 0
/* 80289AEC 0028574C  7D 89 03 A6 */	mtctr r12
/* 80289AF0 00285750  4E 80 04 21 */	bctrl
lbl_80289AF4:
/* 80289AF4 00285754  48 00 10 1D */	bl stateReady
/* 80289AF8 00285758  38 00 00 01 */	li r0, 1
/* 80289AFC 0028575C  48 00 00 08 */	b lbl_80289B04
lbl_80289B00:
/* 80289B00 00285760  38 00 00 00 */	li r0, 0
lbl_80289B04:
/* 80289B04 00285764  2C 00 00 00 */	cmpwi r0, 0
/* 80289B08 00285768  40 82 00 9C */	bne lbl_80289BA4
/* 80289B0C 0028576C  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289B10 00285770  38 00 00 06 */	li r0, 6
/* 80289B14 00285774  38 60 00 01 */	li r3, 1
/* 80289B18 00285778  90 04 00 0C */	stw r0, 0xc(r4)
/* 80289B1C 0028577C  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 80289B20 00285780  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 80289B24 00285784  2C 00 00 00 */	cmpwi r0, 0
/* 80289B28 00285788  40 82 00 7C */	bne lbl_80289BA4
/* 80289B2C 0028578C  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 80289B30 00285790  2C 00 00 00 */	cmpwi r0, 0
/* 80289B34 00285794  40 82 00 70 */	bne lbl_80289BA4
/* 80289B38 00285798  90 6D AA 34 */	stw r3, lbl_8063FCF4-_SDA_BASE_(r13)
/* 80289B3C 0028579C  38 7F 00 80 */	addi r3, r31, 0x80
/* 80289B40 002857A0  4B FD FB E5 */	bl OSCreateAlarm
/* 80289B44 002857A4  4B FE 8C 8D */	bl OSGetTick
/* 80289B48 002857A8  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 80289B4C 002857AC  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 80289B50 002857B0  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 80289B54 002857B4  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 80289B58 002857B8  7C 66 1B 78 */	mr r6, r3
/* 80289B5C 002857BC  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 80289B60 002857C0  54 00 F0 BE */	srwi r0, r0, 2
/* 80289B64 002857C4  38 7F 00 80 */	addi r3, r31, 0x80
/* 80289B68 002857C8  7C 04 00 16 */	mulhwu r0, r4, r0
/* 80289B6C 002857CC  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 80289B70 002857D0  38 A0 00 00 */	li r5, 0
/* 80289B74 002857D4  38 E0 00 00 */	li r7, 0
/* 80289B78 002857D8  54 00 D1 BE */	srwi r0, r0, 6
/* 80289B7C 002857DC  1D 00 00 64 */	mulli r8, r0, 0x64
/* 80289B80 002857E0  4B FD FE 75 */	bl OSSetPeriodicAlarm
/* 80289B84 002857E4  48 00 00 20 */	b lbl_80289BA4
lbl_80289B88:
/* 80289B88 002857E8  38 60 00 27 */	li r3, 0x27
/* 80289B8C 002857EC  38 80 00 00 */	li r4, 0
/* 80289B90 002857F0  38 A0 00 00 */	li r5, 0
/* 80289B94 002857F4  4B FF E5 F9 */	bl StampCommand
/* 80289B98 002857F8  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 80289B9C 002857FC  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 80289BA0 00285800  48 00 43 35 */	bl DVDLowRequestError
lbl_80289BA4:
/* 80289BA4 00285804  80 01 00 24 */	lwz r0, 0x24(r1)
/* 80289BA8 00285808  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 80289BAC 0028580C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 80289BB0 00285810  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 80289BB4 00285814  83 81 00 10 */	lwz r28, 0x10(r1)
/* 80289BB8 00285818  7C 08 03 A6 */	mtlr r0
/* 80289BBC 0028581C  38 21 00 20 */	addi r1, r1, 0x20
/* 80289BC0 00285820  4E 80 00 20 */	blr

cbForStateOpenPartition:
/* 80289BC4 00285824  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80289BC8 00285828  7C 08 02 A6 */	mflr r0
/* 80289BCC 0028582C  90 01 00 14 */	stw r0, 0x14(r1)
/* 80289BD0 00285830  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80289BD4 00285834  93 C1 00 08 */	stw r30, 8(r1)
/* 80289BD8 00285838  7C 7E 1B 78 */	mr r30, r3
/* 80289BDC 0028583C  4B FE 4B 81 */	bl OSDisableInterrupts
/* 80289BE0 00285840  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289BE4 00285844  2C 00 00 00 */	cmpwi r0, 0
/* 80289BE8 00285848  40 82 00 14 */	bne lbl_80289BFC
/* 80289BEC 0028584C  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289BF0 00285850  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289BF4 00285854  93 C4 00 78 */	stw r30, 0x78(r4)
/* 80289BF8 00285858  48 00 00 20 */	b lbl_80289C18
lbl_80289BFC:
/* 80289BFC 0028585C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289C00 00285860  3C A0 80 52 */	lis r5, lbl_8051B6E0@ha
/* 80289C04 00285864  38 A5 B6 E0 */	addi r5, r5, lbl_8051B6E0@l
/* 80289C08 00285868  38 04 FF FF */	addi r0, r4, -1
/* 80289C0C 0028586C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289C10 00285870  7C 85 02 14 */	add r4, r5, r0
/* 80289C14 00285874  93 C4 00 28 */	stw r30, 0x28(r4)
lbl_80289C18:
/* 80289C18 00285878  4B FE 4B 6D */	bl OSRestoreInterrupts
/* 80289C1C 0028587C  28 1E 00 10 */	cmplwi r30, 0x10
/* 80289C20 00285880  40 82 00 1C */	bne lbl_80289C3C
/* 80289C24 00285884  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 80289C28 00285888  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289C2C 0028588C  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80289C30 00285890  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289C34 00285894  48 00 32 15 */	bl __DVDStoreErrorCode
/* 80289C38 00285898  48 00 00 FC */	b lbl_80289D34
lbl_80289C3C:
/* 80289C3C 0028589C  28 1E 00 20 */	cmplwi r30, 0x20
/* 80289C40 002858A0  40 82 00 1C */	bne lbl_80289C5C
/* 80289C44 002858A4  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 80289C48 002858A8  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289C4C 002858AC  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 80289C50 002858B0  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289C54 002858B4  48 00 31 F5 */	bl __DVDStoreErrorCode
/* 80289C58 002858B8  48 00 00 DC */	b lbl_80289D34
lbl_80289C5C:
/* 80289C5C 002858BC  57 C0 07 FF */	clrlwi. r0, r30, 0x1f
/* 80289C60 002858C0  41 82 00 B8 */	beq lbl_80289D18
/* 80289C64 002858C4  3B C0 00 00 */	li r30, 0
/* 80289C68 002858C8  38 60 00 00 */	li r3, 0
/* 80289C6C 002858CC  93 CD AA 28 */	stw r30, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289C70 002858D0  48 00 4D 29 */	bl DVDLowClearCoverInterrupt
/* 80289C74 002858D4  4B FE 4A E9 */	bl OSDisableInterrupts
/* 80289C78 002858D8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289C7C 002858DC  7C 7F 1B 78 */	mr r31, r3
/* 80289C80 002858E0  28 00 00 05 */	cmplwi r0, 5
/* 80289C84 002858E4  41 80 00 08 */	blt lbl_80289C8C
/* 80289C88 002858E8  93 CD AA 10 */	stw r30, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_80289C8C:
/* 80289C8C 002858EC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289C90 002858F0  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 80289C94 002858F4  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289C98 002858F8  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 80289C9C 002858FC  1C C0 00 14 */	mulli r6, r0, 0x14
/* 80289CA0 00285900  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289CA4 00285904  38 E0 00 01 */	li r7, 1
/* 80289CA8 00285908  38 A0 01 08 */	li r5, 0x108
/* 80289CAC 0028590C  1C 63 00 14 */	mulli r3, r3, 0x14
/* 80289CB0 00285910  38 80 00 20 */	li r4, 0x20
/* 80289CB4 00285914  7C DE 32 14 */	add r6, r30, r6
/* 80289CB8 00285918  90 E6 00 1C */	stw r7, 0x1c(r6)
/* 80289CBC 0028591C  7C 7E 1A 14 */	add r3, r30, r3
/* 80289CC0 00285920  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289CC4 00285924  90 A3 00 20 */	stw r5, 0x20(r3)
/* 80289CC8 00285928  7C 7E 02 14 */	add r3, r30, r0
/* 80289CCC 0028592C  90 83 00 24 */	stw r4, 0x24(r3)
/* 80289CD0 00285930  4B FE 8B 01 */	bl OSGetTick
/* 80289CD4 00285934  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289CD8 00285938  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289CDC 0028593C  1C A0 00 14 */	mulli r5, r0, 0x14
/* 80289CE0 00285940  38 04 00 01 */	addi r0, r4, 1
/* 80289CE4 00285944  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289CE8 00285948  7C 9E 2A 14 */	add r4, r30, r5
/* 80289CEC 0028594C  90 64 00 2C */	stw r3, 0x2c(r4)
/* 80289CF0 00285950  7F E3 FB 78 */	mr r3, r31
/* 80289CF4 00285954  4B FE 4A 91 */	bl OSRestoreInterrupts
/* 80289CF8 00285958  3C 60 80 51 */	lis r3, lbl_80516980@ha
/* 80289CFC 0028595C  3C C0 80 29 */	lis r6, cbForStateCheckID2@ha
/* 80289D00 00285960  38 63 69 80 */	addi r3, r3, lbl_80516980@l
/* 80289D04 00285964  38 80 00 20 */	li r4, 0x20
/* 80289D08 00285968  38 C6 A0 78 */	addi r6, r6, cbForStateCheckID2@l
/* 80289D0C 0028596C  38 A0 01 08 */	li r5, 0x108
/* 80289D10 00285970  48 00 47 C9 */	bl DVDLowRead
/* 80289D14 00285974  48 00 00 20 */	b lbl_80289D34
lbl_80289D18:
/* 80289D18 00285978  38 60 00 27 */	li r3, 0x27
/* 80289D1C 0028597C  38 80 00 00 */	li r4, 0
/* 80289D20 00285980  38 A0 00 00 */	li r5, 0
/* 80289D24 00285984  4B FF E4 69 */	bl StampCommand
/* 80289D28 00285988  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 80289D2C 0028598C  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 80289D30 00285990  48 00 41 A5 */	bl DVDLowRequestError
lbl_80289D34:
/* 80289D34 00285994  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80289D38 00285998  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80289D3C 0028599C  83 C1 00 08 */	lwz r30, 8(r1)
/* 80289D40 002859A0  7C 08 03 A6 */	mtlr r0
/* 80289D44 002859A4  38 21 00 10 */	addi r1, r1, 0x10
/* 80289D48 002859A8  4E 80 00 20 */	blr
cbForStateOpenPartition2:
/* 80289D4C 002859AC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80289D50 002859B0  7C 08 02 A6 */	mflr r0
/* 80289D54 002859B4  90 01 00 14 */	stw r0, 0x14(r1)
/* 80289D58 002859B8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80289D5C 002859BC  7C 7F 1B 78 */	mr r31, r3
/* 80289D60 002859C0  4B FE 49 FD */	bl OSDisableInterrupts
/* 80289D64 002859C4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289D68 002859C8  2C 00 00 00 */	cmpwi r0, 0
/* 80289D6C 002859CC  40 82 00 14 */	bne lbl_80289D80
/* 80289D70 002859D0  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289D74 002859D4  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289D78 002859D8  93 E4 00 78 */	stw r31, 0x78(r4)
/* 80289D7C 002859DC  48 00 00 1C */	b lbl_80289D98
lbl_80289D80:
/* 80289D80 002859E0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289D84 002859E4  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289D88 002859E8  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289D8C 002859EC  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289D90 002859F0  7C 84 02 14 */	add r4, r4, r0
/* 80289D94 002859F4  93 E4 00 14 */	stw r31, 0x14(r4)
lbl_80289D98:
/* 80289D98 002859F8  4B FE 49 ED */	bl OSRestoreInterrupts
/* 80289D9C 002859FC  28 1F 00 10 */	cmplwi r31, 0x10
/* 80289DA0 00285A00  40 82 00 1C */	bne lbl_80289DBC
/* 80289DA4 00285A04  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 80289DA8 00285A08  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289DAC 00285A0C  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80289DB0 00285A10  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289DB4 00285A14  48 00 30 95 */	bl __DVDStoreErrorCode
/* 80289DB8 00285A18  48 00 00 E4 */	b lbl_80289E9C
lbl_80289DBC:
/* 80289DBC 00285A1C  28 1F 00 20 */	cmplwi r31, 0x20
/* 80289DC0 00285A20  40 82 00 1C */	bne lbl_80289DDC
/* 80289DC4 00285A24  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 80289DC8 00285A28  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289DCC 00285A2C  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 80289DD0 00285A30  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289DD4 00285A34  48 00 30 75 */	bl __DVDStoreErrorCode
/* 80289DD8 00285A38  48 00 00 C4 */	b lbl_80289E9C
lbl_80289DDC:
/* 80289DDC 00285A3C  57 E0 07 FF */	clrlwi. r0, r31, 0x1f
/* 80289DE0 00285A40  41 82 00 A0 */	beq lbl_80289E80
/* 80289DE4 00285A44  38 80 00 00 */	li r4, 0
/* 80289DE8 00285A48  90 8D AA 28 */	stw r4, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289DEC 00285A4C  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80289DF0 00285A50  2C 00 00 00 */	cmpwi r0, 0
/* 80289DF4 00285A54  41 82 00 68 */	beq lbl_80289E5C
/* 80289DF8 00285A58  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 80289DFC 00285A5C  83 ED AA 90 */	lwz r31, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289E00 00285A60  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 80289E04 00285A64  90 8D AA 24 */	stw r4, lbl_8063FCE4-_SDA_BASE_(r13)
/* 80289E08 00285A68  38 00 00 0A */	li r0, 0xa
/* 80289E0C 00285A6C  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80289E10 00285A70  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289E14 00285A74  90 1F 00 0C */	stw r0, 0xc(r31)
/* 80289E18 00285A78  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 80289E1C 00285A7C  2C 0C 00 00 */	cmpwi r12, 0
/* 80289E20 00285A80  41 82 00 14 */	beq lbl_80289E34
/* 80289E24 00285A84  7F E4 FB 78 */	mr r4, r31
/* 80289E28 00285A88  38 60 FF FD */	li r3, -3
/* 80289E2C 00285A8C  7D 89 03 A6 */	mtctr r12
/* 80289E30 00285A90  4E 80 04 21 */	bctrl
lbl_80289E34:
/* 80289E34 00285A94  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 80289E38 00285A98  2C 0C 00 00 */	cmpwi r12, 0
/* 80289E3C 00285A9C  41 82 00 14 */	beq lbl_80289E50
/* 80289E40 00285AA0  7F E4 FB 78 */	mr r4, r31
/* 80289E44 00285AA4  38 60 00 00 */	li r3, 0
/* 80289E48 00285AA8  7D 89 03 A6 */	mtctr r12
/* 80289E4C 00285AAC  4E 80 04 21 */	bctrl
lbl_80289E50:
/* 80289E50 00285AB0  48 00 0C C1 */	bl stateReady
/* 80289E54 00285AB4  38 00 00 01 */	li r0, 1
/* 80289E58 00285AB8  48 00 00 08 */	b lbl_80289E60
lbl_80289E5C:
/* 80289E5C 00285ABC  38 00 00 00 */	li r0, 0
lbl_80289E60:
/* 80289E60 00285AC0  2C 00 00 00 */	cmpwi r0, 0
/* 80289E64 00285AC4  40 82 00 38 */	bne lbl_80289E9C
/* 80289E68 00285AC8  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289E6C 00285ACC  38 00 00 01 */	li r0, 1
/* 80289E70 00285AD0  90 03 00 0C */	stw r0, 0xc(r3)
/* 80289E74 00285AD4  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289E78 00285AD8  48 00 0F C1 */	bl stateBusy
/* 80289E7C 00285ADC  48 00 00 20 */	b lbl_80289E9C
lbl_80289E80:
/* 80289E80 00285AE0  38 60 00 27 */	li r3, 0x27
/* 80289E84 00285AE4  38 80 00 00 */	li r4, 0
/* 80289E88 00285AE8  38 A0 00 00 */	li r5, 0
/* 80289E8C 00285AEC  4B FF E3 01 */	bl StampCommand
/* 80289E90 00285AF0  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 80289E94 00285AF4  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 80289E98 00285AF8  48 00 40 3D */	bl DVDLowRequestError
lbl_80289E9C:
/* 80289E9C 00285AFC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 80289EA0 00285B00  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 80289EA4 00285B04  7C 08 03 A6 */	mtlr r0
/* 80289EA8 00285B08  38 21 00 10 */	addi r1, r1, 0x10
/* 80289EAC 00285B0C  4E 80 00 20 */	blr
cbForStateCheckID1:
/* 80289EB0 00285B10  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 80289EB4 00285B14  7C 08 02 A6 */	mflr r0
/* 80289EB8 00285B18  90 01 00 14 */	stw r0, 0x14(r1)
/* 80289EBC 00285B1C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 80289EC0 00285B20  7C 7F 1B 78 */	mr r31, r3
/* 80289EC4 00285B24  4B FE 48 99 */	bl OSDisableInterrupts
/* 80289EC8 00285B28  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289ECC 00285B2C  2C 00 00 00 */	cmpwi r0, 0
/* 80289ED0 00285B30  40 82 00 14 */	bne lbl_80289EE4
/* 80289ED4 00285B34  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289ED8 00285B38  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289EDC 00285B3C  93 E4 00 78 */	stw r31, 0x78(r4)
/* 80289EE0 00285B40  48 00 00 1C */	b lbl_80289EFC
lbl_80289EE4:
/* 80289EE4 00285B44  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 80289EE8 00285B48  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 80289EEC 00285B4C  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 80289EF0 00285B50  1C 00 00 14 */	mulli r0, r0, 0x14
/* 80289EF4 00285B54  7C 84 02 14 */	add r4, r4, r0
/* 80289EF8 00285B58  93 E4 00 14 */	stw r31, 0x14(r4)
lbl_80289EFC:
/* 80289EFC 00285B5C  4B FE 48 89 */	bl OSRestoreInterrupts
/* 80289F00 00285B60  28 1F 00 10 */	cmplwi r31, 0x10
/* 80289F04 00285B64  40 82 00 1C */	bne lbl_80289F20
/* 80289F08 00285B68  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 80289F0C 00285B6C  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289F10 00285B70  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 80289F14 00285B74  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289F18 00285B78  48 00 2F 31 */	bl __DVDStoreErrorCode
/* 80289F1C 00285B7C  48 00 01 48 */	b lbl_8028A064
lbl_80289F20:
/* 80289F20 00285B80  28 1F 00 20 */	cmplwi r31, 0x20
/* 80289F24 00285B84  40 82 00 1C */	bne lbl_80289F40
/* 80289F28 00285B88  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 80289F2C 00285B8C  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 80289F30 00285B90  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 80289F34 00285B94  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 80289F38 00285B98  48 00 2F 11 */	bl __DVDStoreErrorCode
/* 80289F3C 00285B9C  48 00 01 28 */	b lbl_8028A064
lbl_80289F40:
/* 80289F40 00285BA0  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 80289F44 00285BA4  41 82 00 1C */	beq lbl_80289F60
/* 80289F48 00285BA8  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 80289F4C 00285BAC  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 80289F50 00285BB0  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 80289F54 00285BB4  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 80289F58 00285BB8  48 00 2E F1 */	bl __DVDStoreErrorCode
/* 80289F5C 00285BBC  48 00 01 08 */	b lbl_8028A064
lbl_80289F60:
/* 80289F60 00285BC0  38 80 00 00 */	li r4, 0
/* 80289F64 00285BC4  90 8D AA 28 */	stw r4, lbl_8063FCE8-_SDA_BASE_(r13)
/* 80289F68 00285BC8  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80289F6C 00285BCC  2C 00 00 00 */	cmpwi r0, 0
/* 80289F70 00285BD0  41 82 00 6C */	beq lbl_80289FDC
/* 80289F74 00285BD4  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 80289F78 00285BD8  83 ED AA 90 */	lwz r31, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289F7C 00285BDC  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 80289F80 00285BE0  38 00 00 01 */	li r0, 1
/* 80289F84 00285BE4  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 80289F88 00285BE8  38 00 00 0A */	li r0, 0xa
/* 80289F8C 00285BEC  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 80289F90 00285BF0  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289F94 00285BF4  90 1F 00 0C */	stw r0, 0xc(r31)
/* 80289F98 00285BF8  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 80289F9C 00285BFC  2C 0C 00 00 */	cmpwi r12, 0
/* 80289FA0 00285C00  41 82 00 14 */	beq lbl_80289FB4
/* 80289FA4 00285C04  7F E4 FB 78 */	mr r4, r31
/* 80289FA8 00285C08  38 60 FF FD */	li r3, -3
/* 80289FAC 00285C0C  7D 89 03 A6 */	mtctr r12
/* 80289FB0 00285C10  4E 80 04 21 */	bctrl
lbl_80289FB4:
/* 80289FB4 00285C14  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 80289FB8 00285C18  2C 0C 00 00 */	cmpwi r12, 0
/* 80289FBC 00285C1C  41 82 00 14 */	beq lbl_80289FD0
/* 80289FC0 00285C20  7F E4 FB 78 */	mr r4, r31
/* 80289FC4 00285C24  38 60 00 00 */	li r3, 0
/* 80289FC8 00285C28  7D 89 03 A6 */	mtctr r12
/* 80289FCC 00285C2C  4E 80 04 21 */	bctrl
lbl_80289FD0:
/* 80289FD0 00285C30  48 00 0B 41 */	bl stateReady
/* 80289FD4 00285C34  38 00 00 01 */	li r0, 1
/* 80289FD8 00285C38  48 00 00 08 */	b lbl_80289FE0
lbl_80289FDC:
/* 80289FDC 00285C3C  38 00 00 00 */	li r0, 0
lbl_80289FE0:
/* 80289FE0 00285C40  2C 00 00 00 */	cmpwi r0, 0
/* 80289FE4 00285C44  40 82 00 80 */	bne lbl_8028A064
/* 80289FE8 00285C48  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 80289FEC 00285C4C  38 00 00 06 */	li r0, 6
/* 80289FF0 00285C50  38 60 00 01 */	li r3, 1
/* 80289FF4 00285C54  90 04 00 0C */	stw r0, 0xc(r4)
/* 80289FF8 00285C58  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 80289FFC 00285C5C  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028A000 00285C60  2C 00 00 00 */	cmpwi r0, 0
/* 8028A004 00285C64  40 82 00 60 */	bne lbl_8028A064
/* 8028A008 00285C68  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028A00C 00285C6C  2C 00 00 00 */	cmpwi r0, 0
/* 8028A010 00285C70  40 82 00 54 */	bne lbl_8028A064
/* 8028A014 00285C74  3F E0 80 51 */	lis r31, lbl_80516A00@ha
/* 8028A018 00285C78  90 6D AA 34 */	stw r3, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028A01C 00285C7C  38 7F 6A 00 */	addi r3, r31, lbl_80516A00@l
/* 8028A020 00285C80  4B FD F7 05 */	bl OSCreateAlarm
/* 8028A024 00285C84  4B FE 87 AD */	bl OSGetTick
/* 8028A028 00285C88  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 8028A02C 00285C8C  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 8028A030 00285C90  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 8028A034 00285C94  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 8028A038 00285C98  7C 66 1B 78 */	mr r6, r3
/* 8028A03C 00285C9C  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 8028A040 00285CA0  54 00 F0 BE */	srwi r0, r0, 2
/* 8028A044 00285CA4  38 7F 6A 00 */	addi r3, r31, 0x6a00
/* 8028A048 00285CA8  7C 04 00 16 */	mulhwu r0, r4, r0
/* 8028A04C 00285CAC  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 8028A050 00285CB0  38 A0 00 00 */	li r5, 0
/* 8028A054 00285CB4  38 E0 00 00 */	li r7, 0
/* 8028A058 00285CB8  54 00 D1 BE */	srwi r0, r0, 6
/* 8028A05C 00285CBC  1D 00 00 64 */	mulli r8, r0, 0x64
/* 8028A060 00285CC0  4B FD F9 95 */	bl OSSetPeriodicAlarm
lbl_8028A064:
/* 8028A064 00285CC4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A068 00285CC8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A06C 00285CCC  7C 08 03 A6 */	mtlr r0
/* 8028A070 00285CD0  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A074 00285CD4  4E 80 00 20 */	blr

.global cbForStateCheckID2
cbForStateCheckID2:
/* 8028A078 00285CD8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A07C 00285CDC  7C 08 02 A6 */	mflr r0
/* 8028A080 00285CE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A084 00285CE4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A088 00285CE8  7C 7F 1B 78 */	mr r31, r3
/* 8028A08C 00285CEC  4B FE 46 D1 */	bl OSDisableInterrupts
/* 8028A090 00285CF0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A094 00285CF4  2C 00 00 00 */	cmpwi r0, 0
/* 8028A098 00285CF8  40 82 00 14 */	bne lbl_8028A0AC
/* 8028A09C 00285CFC  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028A0A0 00285D00  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 8028A0A4 00285D04  93 E4 00 78 */	stw r31, 0x78(r4)
/* 8028A0A8 00285D08  48 00 00 20 */	b lbl_8028A0C8
lbl_8028A0AC:
/* 8028A0AC 00285D0C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A0B0 00285D10  3C A0 80 52 */	lis r5, lbl_8051B6E0@ha
/* 8028A0B4 00285D14  38 A5 B6 E0 */	addi r5, r5, lbl_8051B6E0@l
/* 8028A0B8 00285D18  38 04 FF FF */	addi r0, r4, -1
/* 8028A0BC 00285D1C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A0C0 00285D20  7C 85 02 14 */	add r4, r5, r0
/* 8028A0C4 00285D24  93 E4 00 28 */	stw r31, 0x28(r4)
lbl_8028A0C8:
/* 8028A0C8 00285D28  4B FE 46 BD */	bl OSRestoreInterrupts
/* 8028A0CC 00285D2C  28 1F 00 10 */	cmplwi r31, 0x10
/* 8028A0D0 00285D30  40 82 00 1C */	bne lbl_8028A0EC
/* 8028A0D4 00285D34  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 8028A0D8 00285D38  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A0DC 00285D3C  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 8028A0E0 00285D40  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A0E4 00285D44  48 00 2D 65 */	bl __DVDStoreErrorCode
/* 8028A0E8 00285D48  48 00 01 10 */	b lbl_8028A1F8
lbl_8028A0EC:
/* 8028A0EC 00285D4C  28 1F 00 20 */	cmplwi r31, 0x20
/* 8028A0F0 00285D50  40 82 00 1C */	bne lbl_8028A10C
/* 8028A0F4 00285D54  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 8028A0F8 00285D58  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A0FC 00285D5C  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 8028A100 00285D60  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A104 00285D64  48 00 2D 45 */	bl __DVDStoreErrorCode
/* 8028A108 00285D68  48 00 00 F0 */	b lbl_8028A1F8
lbl_8028A10C:
/* 8028A10C 00285D6C  57 E0 07 FF */	clrlwi. r0, r31, 0x1f
/* 8028A110 00285D70  41 82 00 CC */	beq lbl_8028A1DC
/* 8028A114 00285D74  3C A0 80 29 */	lis r5, stateReadingFST@ha
/* 8028A118 00285D78  38 00 00 00 */	li r0, 0
/* 8028A11C 00285D7C  38 A5 83 24 */	addi r5, r5, stateReadingFST@l
/* 8028A120 00285D80  3C 60 80 51 */	lis r3, lbl_80516980@ha
/* 8028A124 00285D84  90 0D AA 28 */	stw r0, lbl_8063FCE8-_SDA_BASE_(r13)
/* 8028A128 00285D88  38 63 69 80 */	addi r3, r3, lbl_80516980@l
/* 8028A12C 00285D8C  80 8D AA 88 */	lwz r4, lbl_8063FD48-_SDA_BASE_(r13)
/* 8028A130 00285D90  90 AD AA 94 */	stw r5, lbl_8063FD54-_SDA_BASE_(r13)
/* 8028A134 00285D94  80 03 00 08 */	lwz r0, 8(r3)
/* 8028A138 00285D98  80 64 00 3C */	lwz r3, 0x3c(r4)
/* 8028A13C 00285D9C  7C 03 00 40 */	cmplw r3, r0
/* 8028A140 00285DA0  40 80 00 1C */	bge lbl_8028A15C
/* 8028A144 00285DA4  3C A0 80 43 */	lis r5, lbl_80435F40@ha
/* 8028A148 00285DA8  38 6D 88 C4 */	addi r3, r13, lbl_8063DB84-_SDA_BASE_
/* 8028A14C 00285DAC  38 A5 5F 40 */	addi r5, r5, lbl_80435F40@l
/* 8028A150 00285DB0  38 80 04 0B */	li r4, 0x40b
/* 8028A154 00285DB4  4C C6 31 82 */	crclr 6
/* 8028A158 00285DB8  4B FE 13 45 */	bl OSPanic
lbl_8028A15C:
/* 8028A15C 00285DBC  38 60 00 00 */	li r3, 0
/* 8028A160 00285DC0  48 00 48 39 */	bl DVDLowClearCoverInterrupt
/* 8028A164 00285DC4  80 CD AA 48 */	lwz r6, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028A168 00285DC8  3F E0 80 51 */	lis r31, lbl_80516980@ha
/* 8028A16C 00285DCC  3B FF 69 80 */	addi r31, r31, lbl_80516980@l
/* 8028A170 00285DD0  80 0D AA 48 */	lwz r0, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028A174 00285DD4  80 9F 00 08 */	lwz r4, 8(r31)
/* 8028A178 00285DD8  38 60 00 01 */	li r3, 1
/* 8028A17C 00285DDC  7C 00 00 F8 */	nor r0, r0, r0
/* 8028A180 00285DE0  80 FF 00 04 */	lwz r7, 4(r31)
/* 8028A184 00285DE4  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 8028A188 00285DE8  7C 85 00 30 */	slw r5, r4, r0
/* 8028A18C 00285DEC  7C E4 34 30 */	srw r4, r7, r6
/* 8028A190 00285DF0  38 05 00 1F */	addi r0, r5, 0x1f
/* 8028A194 00285DF4  54 05 00 34 */	rlwinm r5, r0, 0, 0, 0x1a
/* 8028A198 00285DF8  4B FF DF F5 */	bl StampCommand
/* 8028A19C 00285DFC  80 0D AA 48 */	lwz r0, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028A1A0 00285E00  3C C0 80 29 */	lis r6, cbForStateReadingFST@ha
/* 8028A1A4 00285E04  80 7F 00 08 */	lwz r3, 8(r31)
/* 8028A1A8 00285E08  38 C6 84 9C */	addi r6, r6, cbForStateReadingFST@l
/* 8028A1AC 00285E0C  7C 00 00 F8 */	nor r0, r0, r0
/* 8028A1B0 00285E10  80 ED AA 88 */	lwz r7, lbl_8063FD48-_SDA_BASE_(r13)
/* 8028A1B4 00285E14  54 00 07 BC */	rlwinm r0, r0, 0, 0x1e, 0x1e
/* 8028A1B8 00285E18  80 BF 00 04 */	lwz r5, 4(r31)
/* 8028A1BC 00285E1C  7C 63 00 30 */	slw r3, r3, r0
/* 8028A1C0 00285E20  80 0D AA 48 */	lwz r0, lbl_8063FD08-_SDA_BASE_(r13)
/* 8028A1C4 00285E24  38 83 00 1F */	addi r4, r3, 0x1f
/* 8028A1C8 00285E28  80 67 00 38 */	lwz r3, 0x38(r7)
/* 8028A1CC 00285E2C  54 84 00 34 */	rlwinm r4, r4, 0, 0, 0x1a
/* 8028A1D0 00285E30  7C A5 04 30 */	srw r5, r5, r0
/* 8028A1D4 00285E34  48 00 43 05 */	bl DVDLowRead
/* 8028A1D8 00285E38  48 00 00 20 */	b lbl_8028A1F8
lbl_8028A1DC:
/* 8028A1DC 00285E3C  38 60 00 27 */	li r3, 0x27
/* 8028A1E0 00285E40  38 80 00 00 */	li r4, 0
/* 8028A1E4 00285E44  38 A0 00 00 */	li r5, 0
/* 8028A1E8 00285E48  4B FF DF A5 */	bl StampCommand
/* 8028A1EC 00285E4C  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 8028A1F0 00285E50  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 8028A1F4 00285E54  48 00 3C E1 */	bl DVDLowRequestError
lbl_8028A1F8:
/* 8028A1F8 00285E58  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A1FC 00285E5C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A200 00285E60  7C 08 03 A6 */	mtlr r0
/* 8028A204 00285E64  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A208 00285E68  4E 80 00 20 */	blr

.global stateCoverClosed
stateCoverClosed:
/* 8028A20C 00285E6C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A210 00285E70  7C 08 02 A6 */	mflr r0
/* 8028A214 00285E74  38 60 00 01 */	li r3, 1
/* 8028A218 00285E78  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A21C 00285E7C  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028A220 00285E80  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028A224 00285E84  28 00 00 26 */	cmplwi r0, 0x26
/* 8028A228 00285E88  41 81 00 7C */	bgt lbl_8028A2A4
/* 8028A22C 00285E8C  3C 60 80 43 */	lis r3, lbl_80435F74@ha
/* 8028A230 00285E90  54 00 10 3A */	slwi r0, r0, 2
/* 8028A234 00285E94  38 63 5F 74 */	addi r3, r3, lbl_80435F74@l
/* 8028A238 00285E98  7C 63 00 2E */	lwzx r3, r3, r0
/* 8028A23C 00285E9C  7C 69 03 A6 */	mtctr r3
/* 8028A240 00285EA0  4E 80 04 20 */	bctr
/* 8028A244 00285EA4  48 00 27 49 */	bl __DVDClearWaitingQueue
/* 8028A248 00285EA8  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028A24C 00285EAC  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A250 00285EB0  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028A254 00285EB4  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A258 00285EB8  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028A25C 00285EBC  2C 0C 00 00 */	cmpwi r12, 0
/* 8028A260 00285EC0  41 82 00 10 */	beq lbl_8028A270
/* 8028A264 00285EC4  38 60 FF FC */	li r3, -4
/* 8028A268 00285EC8  7D 89 03 A6 */	mtctr r12
/* 8028A26C 00285ECC  4E 80 04 21 */	bctrl
lbl_8028A270:
/* 8028A270 00285ED0  48 00 08 A1 */	bl stateReady
/* 8028A274 00285ED4  48 00 00 4C */	b lbl_8028A2C0
/* 8028A278 00285ED8  38 00 00 00 */	li r0, 0
/* 8028A27C 00285EDC  90 0D AA 70 */	stw r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028A280 00285EE0  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A284 00285EE4  38 00 00 01 */	li r0, 1
/* 8028A288 00285EE8  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028A28C 00285EEC  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A290 00285EF0  48 00 0B A9 */	bl stateBusy
/* 8028A294 00285EF4  48 00 00 2C */	b lbl_8028A2C0
/* 8028A298 00285EF8  80 0D A7 68 */	lwz r0, lbl_8063FA28-_SDA_BASE_(r13)
/* 8028A29C 00285EFC  2C 00 00 00 */	cmpwi r0, 0
/* 8028A2A0 00285F00  40 82 00 20 */	bne lbl_8028A2C0
lbl_8028A2A4:
/* 8028A2A4 00285F04  38 00 00 00 */	li r0, 0
/* 8028A2A8 00285F08  38 60 00 01 */	li r3, 1
/* 8028A2AC 00285F0C  90 0D AA 70 */	stw r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028A2B0 00285F10  48 00 3D 8D */	bl DVDLowSetSpinupFlag
/* 8028A2B4 00285F14  3C 60 80 29 */	lis r3, cbForStateReset@ha
/* 8028A2B8 00285F18  38 63 A4 78 */	addi r3, r3, cbForStateReset@l
/* 8028A2BC 00285F1C  48 00 3D 8D */	bl DVDLowReset
lbl_8028A2C0:
/* 8028A2C0 00285F20  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A2C4 00285F24  7C 08 03 A6 */	mtlr r0
/* 8028A2C8 00285F28  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A2CC 00285F2C  4E 80 00 20 */	blr

.global ResetAlarmHandler
ResetAlarmHandler:
/* 8028A2D0 00285F30  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A2D4 00285F34  7C 08 02 A6 */	mflr r0
/* 8028A2D8 00285F38  3C 60 80 00 */	lis r3, 0x800030E6@ha
/* 8028A2DC 00285F3C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A2E0 00285F40  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A2E4 00285F44  93 C1 00 08 */	stw r30, 8(r1)
/* 8028A2E8 00285F48  A0 03 30 E6 */	lhz r0, 0x800030E6@l(r3)
/* 8028A2EC 00285F4C  28 00 80 03 */	cmplwi r0, 0x8003
/* 8028A2F0 00285F50  40 82 00 B0 */	bne lbl_8028A3A0
/* 8028A2F4 00285F54  3C 80 80 29 */	lis r4, stateDownRotation@ha
/* 8028A2F8 00285F58  38 60 00 00 */	li r3, 0
/* 8028A2FC 00285F5C  38 84 A5 5C */	addi r4, r4, stateDownRotation@l
/* 8028A300 00285F60  90 8D AA 94 */	stw r4, lbl_8063FD54-_SDA_BASE_(r13)
/* 8028A304 00285F64  48 00 46 95 */	bl DVDLowClearCoverInterrupt
/* 8028A308 00285F68  4B FE 44 55 */	bl OSDisableInterrupts
/* 8028A30C 00285F6C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A310 00285F70  7C 7F 1B 78 */	mr r31, r3
/* 8028A314 00285F74  28 00 00 05 */	cmplwi r0, 5
/* 8028A318 00285F78  41 80 00 0C */	blt lbl_8028A324
/* 8028A31C 00285F7C  38 00 00 00 */	li r0, 0
/* 8028A320 00285F80  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028A324:
/* 8028A324 00285F84  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A328 00285F88  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 8028A32C 00285F8C  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A330 00285F90  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 8028A334 00285F94  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028A338 00285F98  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A33C 00285F9C  38 C0 00 25 */	li r6, 0x25
/* 8028A340 00285FA0  38 80 00 00 */	li r4, 0
/* 8028A344 00285FA4  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028A348 00285FA8  7C BE 2A 14 */	add r5, r30, r5
/* 8028A34C 00285FAC  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 8028A350 00285FB0  7C 7E 1A 14 */	add r3, r30, r3
/* 8028A354 00285FB4  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A358 00285FB8  90 83 00 20 */	stw r4, 0x20(r3)
/* 8028A35C 00285FBC  7C 7E 02 14 */	add r3, r30, r0
/* 8028A360 00285FC0  90 83 00 24 */	stw r4, 0x24(r3)
/* 8028A364 00285FC4  4B FE 84 6D */	bl OSGetTick
/* 8028A368 00285FC8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A36C 00285FCC  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A370 00285FD0  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028A374 00285FD4  38 04 00 01 */	addi r0, r4, 1
/* 8028A378 00285FD8  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A37C 00285FDC  7C 9E 2A 14 */	add r4, r30, r5
/* 8028A380 00285FE0  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028A384 00285FE4  7F E3 FB 78 */	mr r3, r31
/* 8028A388 00285FE8  4B FE 43 FD */	bl OSRestoreInterrupts
/* 8028A38C 00285FEC  3C 80 80 29 */	lis r4, cbForStateDownRotation@ha
/* 8028A390 00285FF0  3C 60 00 02 */	lis r3, 2
/* 8028A394 00285FF4  38 84 A6 24 */	addi r4, r4, cbForStateDownRotation@l
/* 8028A398 00285FF8  48 00 3F C1 */	bl DVDLowSetMaximumRotation
/* 8028A39C 00285FFC  48 00 00 C4 */	b lbl_8028A460
lbl_8028A3A0:
/* 8028A3A0 00286000  3C 60 80 51 */	lis r3, lbl_80516A40@ha
/* 8028A3A4 00286004  38 80 00 20 */	li r4, 0x20
/* 8028A3A8 00286008  38 63 6A 40 */	addi r3, r3, lbl_80516A40@l
/* 8028A3AC 0028600C  4B FE 02 7D */	bl DCInvalidateRange
/* 8028A3B0 00286010  3C 80 80 29 */	lis r4, stateCoverClosed_CMD@ha
/* 8028A3B4 00286014  38 60 00 00 */	li r3, 0
/* 8028A3B8 00286018  38 84 A7 BC */	addi r4, r4, stateCoverClosed_CMD@l
/* 8028A3BC 0028601C  90 8D AA 94 */	stw r4, lbl_8063FD54-_SDA_BASE_(r13)
/* 8028A3C0 00286020  48 00 45 D9 */	bl DVDLowClearCoverInterrupt
/* 8028A3C4 00286024  4B FE 43 99 */	bl OSDisableInterrupts
/* 8028A3C8 00286028  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A3CC 0028602C  7C 7F 1B 78 */	mr r31, r3
/* 8028A3D0 00286030  28 00 00 05 */	cmplwi r0, 5
/* 8028A3D4 00286034  41 80 00 0C */	blt lbl_8028A3E0
/* 8028A3D8 00286038  38 00 00 00 */	li r0, 0
/* 8028A3DC 0028603C  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028A3E0:
/* 8028A3E0 00286040  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A3E4 00286044  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 8028A3E8 00286048  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A3EC 0028604C  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 8028A3F0 00286050  1C C0 00 14 */	mulli r6, r0, 0x14
/* 8028A3F4 00286054  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A3F8 00286058  38 E0 00 05 */	li r7, 5
/* 8028A3FC 0028605C  38 A0 00 00 */	li r5, 0
/* 8028A400 00286060  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028A404 00286064  38 80 00 20 */	li r4, 0x20
/* 8028A408 00286068  7C DE 32 14 */	add r6, r30, r6
/* 8028A40C 0028606C  90 E6 00 1C */	stw r7, 0x1c(r6)
/* 8028A410 00286070  7C 7E 1A 14 */	add r3, r30, r3
/* 8028A414 00286074  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A418 00286078  90 A3 00 20 */	stw r5, 0x20(r3)
/* 8028A41C 0028607C  7C 7E 02 14 */	add r3, r30, r0
/* 8028A420 00286080  90 83 00 24 */	stw r4, 0x24(r3)
/* 8028A424 00286084  4B FE 83 AD */	bl OSGetTick
/* 8028A428 00286088  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A42C 0028608C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A430 00286090  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028A434 00286094  38 04 00 01 */	addi r0, r4, 1
/* 8028A438 00286098  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A43C 0028609C  7C 9E 2A 14 */	add r4, r30, r5
/* 8028A440 002860A0  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028A444 002860A4  7F E3 FB 78 */	mr r3, r31
/* 8028A448 002860A8  4B FE 43 3D */	bl OSRestoreInterrupts
/* 8028A44C 002860AC  3C 60 80 51 */	lis r3, lbl_80516A40@ha
/* 8028A450 002860B0  3C 80 80 29 */	lis r4, cbForStateCoverClosed@ha
/* 8028A454 002860B4  38 63 6A 40 */	addi r3, r3, lbl_80516A40@l
/* 8028A458 002860B8  38 84 A8 8C */	addi r4, r4, cbForStateCoverClosed@l
/* 8028A45C 002860BC  48 00 30 95 */	bl DVDLowReadDiskID
lbl_8028A460:
/* 8028A460 002860C0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A464 002860C4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A468 002860C8  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028A46C 002860CC  7C 08 03 A6 */	mtlr r0
/* 8028A470 002860D0  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A474 002860D4  4E 80 00 20 */	blr

.global cbForStateReset
cbForStateReset:
/* 8028A478 002860D8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A47C 002860DC  7C 08 02 A6 */	mflr r0
/* 8028A480 002860E0  28 03 00 10 */	cmplwi r3, 0x10
/* 8028A484 002860E4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A488 002860E8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A48C 002860EC  40 82 00 1C */	bne lbl_8028A4A8
/* 8028A490 002860F0  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 8028A494 002860F4  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A498 002860F8  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 8028A49C 002860FC  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A4A0 00286100  48 00 29 A9 */	bl __DVDStoreErrorCode
/* 8028A4A4 00286104  48 00 00 A4 */	b lbl_8028A548
lbl_8028A4A8:
/* 8028A4A8 00286108  28 03 00 20 */	cmplwi r3, 0x20
/* 8028A4AC 0028610C  40 82 00 1C */	bne lbl_8028A4C8
/* 8028A4B0 00286110  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 8028A4B4 00286114  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A4B8 00286118  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 8028A4BC 0028611C  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A4C0 00286120  48 00 29 89 */	bl __DVDStoreErrorCode
/* 8028A4C4 00286124  48 00 00 84 */	b lbl_8028A548
lbl_8028A4C8:
/* 8028A4C8 00286128  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 8028A4CC 0028612C  41 82 00 60 */	beq lbl_8028A52C
/* 8028A4D0 00286130  4B FE 83 09 */	bl __OSGetSystemTime
/* 8028A4D4 00286134  38 00 00 00 */	li r0, 0
/* 8028A4D8 00286138  90 8D AA 6C */	stw r4, lbl_8063FD2C-_SDA_BASE_(r13)
/* 8028A4DC 0028613C  3F E0 80 52 */	lis r31, lbl_8051B4C0@ha
/* 8028A4E0 00286140  90 6D AA 68 */	stw r3, lbl_8063FD28-_SDA_BASE_(r13)
/* 8028A4E4 00286144  38 7F B4 C0 */	addi r3, r31, lbl_8051B4C0@l
/* 8028A4E8 00286148  90 0D AA 74 */	stw r0, lbl_8063FD34-_SDA_BASE_(r13)
/* 8028A4EC 0028614C  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028A4F0 00286150  4B FD F2 35 */	bl OSCreateAlarm
/* 8028A4F4 00286154  3C 80 80 00 */	lis r4, 0x800000F8@ha
/* 8028A4F8 00286158  3C E0 80 29 */	lis r7, ResetAlarmHandler@ha
/* 8028A4FC 0028615C  80 04 00 F8 */	lwz r0, 0x800000F8@l(r4)
/* 8028A500 00286160  3C 60 10 62 */	lis r3, 0x10624DD3@ha
/* 8028A504 00286164  38 83 4D D3 */	addi r4, r3, 0x10624DD3@l
/* 8028A508 00286168  38 E7 A2 D0 */	addi r7, r7, ResetAlarmHandler@l
/* 8028A50C 0028616C  54 00 F0 BE */	srwi r0, r0, 2
/* 8028A510 00286170  38 7F B4 C0 */	addi r3, r31, -19264
/* 8028A514 00286174  7C 04 00 16 */	mulhwu r0, r4, r0
/* 8028A518 00286178  38 A0 00 00 */	li r5, 0
/* 8028A51C 0028617C  54 00 D1 BE */	srwi r0, r0, 6
/* 8028A520 00286180  1C C0 00 64 */	mulli r6, r0, 0x64
/* 8028A524 00286184  4B FD F4 61 */	bl OSSetAlarm
/* 8028A528 00286188  48 00 00 20 */	b lbl_8028A548
lbl_8028A52C:
/* 8028A52C 0028618C  38 60 00 27 */	li r3, 0x27
/* 8028A530 00286190  38 80 00 00 */	li r4, 0
/* 8028A534 00286194  38 A0 00 00 */	li r5, 0
/* 8028A538 00286198  4B FF DC 55 */	bl StampCommand
/* 8028A53C 0028619C  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 8028A540 002861A0  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 8028A544 002861A4  48 00 39 91 */	bl DVDLowRequestError
lbl_8028A548:
/* 8028A548 002861A8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A54C 002861AC  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A550 002861B0  7C 08 03 A6 */	mtlr r0
/* 8028A554 002861B4  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A558 002861B8  4E 80 00 20 */	blr
stateDownRotation:
/* 8028A55C 002861BC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A560 002861C0  7C 08 02 A6 */	mflr r0
/* 8028A564 002861C4  38 60 00 00 */	li r3, 0
/* 8028A568 002861C8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A56C 002861CC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A570 002861D0  93 C1 00 08 */	stw r30, 8(r1)
/* 8028A574 002861D4  48 00 44 25 */	bl DVDLowClearCoverInterrupt
/* 8028A578 002861D8  4B FE 41 E5 */	bl OSDisableInterrupts
/* 8028A57C 002861DC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A580 002861E0  7C 7F 1B 78 */	mr r31, r3
/* 8028A584 002861E4  28 00 00 05 */	cmplwi r0, 5
/* 8028A588 002861E8  41 80 00 0C */	blt lbl_8028A594
/* 8028A58C 002861EC  38 00 00 00 */	li r0, 0
/* 8028A590 002861F0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028A594:
/* 8028A594 002861F4  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A598 002861F8  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 8028A59C 002861FC  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A5A0 00286200  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 8028A5A4 00286204  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028A5A8 00286208  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A5AC 0028620C  38 C0 00 25 */	li r6, 0x25
/* 8028A5B0 00286210  38 80 00 00 */	li r4, 0
/* 8028A5B4 00286214  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028A5B8 00286218  7C BE 2A 14 */	add r5, r30, r5
/* 8028A5BC 0028621C  90 C5 00 1C */	stw r6, 0x1c(r5)
/* 8028A5C0 00286220  7C 7E 1A 14 */	add r3, r30, r3
/* 8028A5C4 00286224  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A5C8 00286228  90 83 00 20 */	stw r4, 0x20(r3)
/* 8028A5CC 0028622C  7C 7E 02 14 */	add r3, r30, r0
/* 8028A5D0 00286230  90 83 00 24 */	stw r4, 0x24(r3)
/* 8028A5D4 00286234  4B FE 81 FD */	bl OSGetTick
/* 8028A5D8 00286238  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A5DC 0028623C  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A5E0 00286240  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028A5E4 00286244  38 04 00 01 */	addi r0, r4, 1
/* 8028A5E8 00286248  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A5EC 0028624C  7C 9E 2A 14 */	add r4, r30, r5
/* 8028A5F0 00286250  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028A5F4 00286254  7F E3 FB 78 */	mr r3, r31
/* 8028A5F8 00286258  4B FE 41 8D */	bl OSRestoreInterrupts
/* 8028A5FC 0028625C  3C 80 80 29 */	lis r4, cbForStateDownRotation@ha
/* 8028A600 00286260  3C 60 00 02 */	lis r3, 2
/* 8028A604 00286264  38 84 A6 24 */	addi r4, r4, cbForStateDownRotation@l
/* 8028A608 00286268  48 00 3D 51 */	bl DVDLowSetMaximumRotation
/* 8028A60C 0028626C  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A610 00286270  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A614 00286274  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028A618 00286278  7C 08 03 A6 */	mtlr r0
/* 8028A61C 0028627C  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A620 00286280  4E 80 00 20 */	blr

.global cbForStateDownRotation
cbForStateDownRotation:
/* 8028A624 00286284  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A628 00286288  7C 08 02 A6 */	mflr r0
/* 8028A62C 0028628C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A630 00286290  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A634 00286294  93 C1 00 08 */	stw r30, 8(r1)
/* 8028A638 00286298  7C 7E 1B 78 */	mr r30, r3
/* 8028A63C 0028629C  4B FE 41 21 */	bl OSDisableInterrupts
/* 8028A640 002862A0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A644 002862A4  2C 00 00 00 */	cmpwi r0, 0
/* 8028A648 002862A8  40 82 00 14 */	bne lbl_8028A65C
/* 8028A64C 002862AC  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028A650 002862B0  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 8028A654 002862B4  93 C4 00 78 */	stw r30, 0x78(r4)
/* 8028A658 002862B8  48 00 00 20 */	b lbl_8028A678
lbl_8028A65C:
/* 8028A65C 002862BC  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A660 002862C0  3C A0 80 52 */	lis r5, lbl_8051B6E0@ha
/* 8028A664 002862C4  38 A5 B6 E0 */	addi r5, r5, lbl_8051B6E0@l
/* 8028A668 002862C8  38 04 FF FF */	addi r0, r4, -1
/* 8028A66C 002862CC  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A670 002862D0  7C 85 02 14 */	add r4, r5, r0
/* 8028A674 002862D4  93 C4 00 28 */	stw r30, 0x28(r4)
lbl_8028A678:
/* 8028A678 002862D8  4B FE 41 0D */	bl OSRestoreInterrupts
/* 8028A67C 002862DC  28 1E 00 10 */	cmplwi r30, 0x10
/* 8028A680 002862E0  40 82 00 1C */	bne lbl_8028A69C
/* 8028A684 002862E4  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 8028A688 002862E8  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A68C 002862EC  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 8028A690 002862F0  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A694 002862F4  48 00 27 B5 */	bl __DVDStoreErrorCode
/* 8028A698 002862F8  48 00 01 0C */	b lbl_8028A7A4
lbl_8028A69C:
/* 8028A69C 002862FC  28 1E 00 20 */	cmplwi r30, 0x20
/* 8028A6A0 00286300  40 82 00 1C */	bne lbl_8028A6BC
/* 8028A6A4 00286304  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 8028A6A8 00286308  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A6AC 0028630C  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 8028A6B0 00286310  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A6B4 00286314  48 00 27 95 */	bl __DVDStoreErrorCode
/* 8028A6B8 00286318  48 00 00 EC */	b lbl_8028A7A4
lbl_8028A6BC:
/* 8028A6BC 0028631C  57 C0 07 FF */	clrlwi. r0, r30, 0x1f
/* 8028A6C0 00286320  41 82 00 C8 */	beq lbl_8028A788
/* 8028A6C4 00286324  3C 60 80 51 */	lis r3, lbl_80516A40@ha
/* 8028A6C8 00286328  38 80 00 20 */	li r4, 0x20
/* 8028A6CC 0028632C  38 63 6A 40 */	addi r3, r3, lbl_80516A40@l
/* 8028A6D0 00286330  4B FD FF 59 */	bl DCInvalidateRange
/* 8028A6D4 00286334  3C 80 80 29 */	lis r4, stateCoverClosed_CMD@ha
/* 8028A6D8 00286338  38 60 00 00 */	li r3, 0
/* 8028A6DC 0028633C  38 84 A7 BC */	addi r4, r4, stateCoverClosed_CMD@l
/* 8028A6E0 00286340  90 8D AA 94 */	stw r4, lbl_8063FD54-_SDA_BASE_(r13)
/* 8028A6E4 00286344  48 00 42 B5 */	bl DVDLowClearCoverInterrupt
/* 8028A6E8 00286348  4B FE 40 75 */	bl OSDisableInterrupts
/* 8028A6EC 0028634C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A6F0 00286350  7C 7F 1B 78 */	mr r31, r3
/* 8028A6F4 00286354  28 00 00 05 */	cmplwi r0, 5
/* 8028A6F8 00286358  41 80 00 0C */	blt lbl_8028A704
/* 8028A6FC 0028635C  38 00 00 00 */	li r0, 0
/* 8028A700 00286360  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028A704:
/* 8028A704 00286364  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A708 00286368  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 8028A70C 0028636C  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A710 00286370  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 8028A714 00286374  1C C0 00 14 */	mulli r6, r0, 0x14
/* 8028A718 00286378  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A71C 0028637C  38 E0 00 05 */	li r7, 5
/* 8028A720 00286380  38 A0 00 00 */	li r5, 0
/* 8028A724 00286384  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028A728 00286388  38 80 00 20 */	li r4, 0x20
/* 8028A72C 0028638C  7C DE 32 14 */	add r6, r30, r6
/* 8028A730 00286390  90 E6 00 1C */	stw r7, 0x1c(r6)
/* 8028A734 00286394  7C 7E 1A 14 */	add r3, r30, r3
/* 8028A738 00286398  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A73C 0028639C  90 A3 00 20 */	stw r5, 0x20(r3)
/* 8028A740 002863A0  7C 7E 02 14 */	add r3, r30, r0
/* 8028A744 002863A4  90 83 00 24 */	stw r4, 0x24(r3)
/* 8028A748 002863A8  4B FE 80 89 */	bl OSGetTick
/* 8028A74C 002863AC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A750 002863B0  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A754 002863B4  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028A758 002863B8  38 04 00 01 */	addi r0, r4, 1
/* 8028A75C 002863BC  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A760 002863C0  7C 9E 2A 14 */	add r4, r30, r5
/* 8028A764 002863C4  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028A768 002863C8  7F E3 FB 78 */	mr r3, r31
/* 8028A76C 002863CC  4B FE 40 19 */	bl OSRestoreInterrupts
/* 8028A770 002863D0  3C 60 80 51 */	lis r3, lbl_80516A40@ha
/* 8028A774 002863D4  3C 80 80 29 */	lis r4, cbForStateCoverClosed@ha
/* 8028A778 002863D8  38 63 6A 40 */	addi r3, r3, lbl_80516A40@l
/* 8028A77C 002863DC  38 84 A8 8C */	addi r4, r4, cbForStateCoverClosed@l
/* 8028A780 002863E0  48 00 2D 71 */	bl DVDLowReadDiskID
/* 8028A784 002863E4  48 00 00 20 */	b lbl_8028A7A4
lbl_8028A788:
/* 8028A788 002863E8  38 60 00 27 */	li r3, 0x27
/* 8028A78C 002863EC  38 80 00 00 */	li r4, 0
/* 8028A790 002863F0  38 A0 00 00 */	li r5, 0
/* 8028A794 002863F4  4B FF D9 F9 */	bl StampCommand
/* 8028A798 002863F8  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 8028A79C 002863FC  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 8028A7A0 00286400  48 00 37 35 */	bl DVDLowRequestError
lbl_8028A7A4:
/* 8028A7A4 00286404  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A7A8 00286408  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A7AC 0028640C  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028A7B0 00286410  7C 08 03 A6 */	mtlr r0
/* 8028A7B4 00286414  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A7B8 00286418  4E 80 00 20 */	blr

.global stateCoverClosed_CMD
stateCoverClosed_CMD:
/* 8028A7BC 0028641C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A7C0 00286420  7C 08 02 A6 */	mflr r0
/* 8028A7C4 00286424  38 60 00 00 */	li r3, 0
/* 8028A7C8 00286428  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A7CC 0028642C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A7D0 00286430  93 C1 00 08 */	stw r30, 8(r1)
/* 8028A7D4 00286434  48 00 41 C5 */	bl DVDLowClearCoverInterrupt
/* 8028A7D8 00286438  4B FE 3F 85 */	bl OSDisableInterrupts
/* 8028A7DC 0028643C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A7E0 00286440  7C 7F 1B 78 */	mr r31, r3
/* 8028A7E4 00286444  28 00 00 05 */	cmplwi r0, 5
/* 8028A7E8 00286448  41 80 00 0C */	blt lbl_8028A7F4
/* 8028A7EC 0028644C  38 00 00 00 */	li r0, 0
/* 8028A7F0 00286450  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028A7F4:
/* 8028A7F4 00286454  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A7F8 00286458  3F C0 80 52 */	lis r30, lbl_8051B6E0@ha
/* 8028A7FC 0028645C  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A800 00286460  3B DE B6 E0 */	addi r30, r30, lbl_8051B6E0@l
/* 8028A804 00286464  1C C0 00 14 */	mulli r6, r0, 0x14
/* 8028A808 00286468  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A80C 0028646C  38 E0 00 05 */	li r7, 5
/* 8028A810 00286470  38 A0 00 00 */	li r5, 0
/* 8028A814 00286474  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028A818 00286478  38 80 00 20 */	li r4, 0x20
/* 8028A81C 0028647C  7C DE 32 14 */	add r6, r30, r6
/* 8028A820 00286480  90 E6 00 1C */	stw r7, 0x1c(r6)
/* 8028A824 00286484  7C 7E 1A 14 */	add r3, r30, r3
/* 8028A828 00286488  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A82C 0028648C  90 A3 00 20 */	stw r5, 0x20(r3)
/* 8028A830 00286490  7C 7E 02 14 */	add r3, r30, r0
/* 8028A834 00286494  90 83 00 24 */	stw r4, 0x24(r3)
/* 8028A838 00286498  4B FE 7F 99 */	bl OSGetTick
/* 8028A83C 0028649C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A840 002864A0  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A844 002864A4  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028A848 002864A8  38 04 00 01 */	addi r0, r4, 1
/* 8028A84C 002864AC  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A850 002864B0  7C 9E 2A 14 */	add r4, r30, r5
/* 8028A854 002864B4  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028A858 002864B8  7F E3 FB 78 */	mr r3, r31
/* 8028A85C 002864BC  4B FE 3F 29 */	bl OSRestoreInterrupts
/* 8028A860 002864C0  3C 60 80 51 */	lis r3, lbl_80516A40@ha
/* 8028A864 002864C4  3C 80 80 29 */	lis r4, cbForStateCoverClosed@ha
/* 8028A868 002864C8  38 63 6A 40 */	addi r3, r3, lbl_80516A40@l
/* 8028A86C 002864CC  38 84 A8 8C */	addi r4, r4, cbForStateCoverClosed@l
/* 8028A870 002864D0  48 00 2C 81 */	bl DVDLowReadDiskID
/* 8028A874 002864D4  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A878 002864D8  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A87C 002864DC  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028A880 002864E0  7C 08 03 A6 */	mtlr r0
/* 8028A884 002864E4  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A888 002864E8  4E 80 00 20 */	blr

.global cbForStateCoverClosed
cbForStateCoverClosed:
/* 8028A88C 002864EC  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A890 002864F0  7C 08 02 A6 */	mflr r0
/* 8028A894 002864F4  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A898 002864F8  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A89C 002864FC  7C 7F 1B 78 */	mr r31, r3
/* 8028A8A0 00286500  4B FE 3E BD */	bl OSDisableInterrupts
/* 8028A8A4 00286504  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A8A8 00286508  2C 00 00 00 */	cmpwi r0, 0
/* 8028A8AC 0028650C  40 82 00 14 */	bne lbl_8028A8C0
/* 8028A8B0 00286510  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028A8B4 00286514  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 8028A8B8 00286518  93 E4 00 78 */	stw r31, 0x78(r4)
/* 8028A8BC 0028651C  48 00 00 1C */	b lbl_8028A8D8
lbl_8028A8C0:
/* 8028A8C0 00286520  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028A8C4 00286524  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028A8C8 00286528  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 8028A8CC 0028652C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028A8D0 00286530  7C 84 02 14 */	add r4, r4, r0
/* 8028A8D4 00286534  93 E4 00 14 */	stw r31, 0x14(r4)
lbl_8028A8D8:
/* 8028A8D8 00286538  4B FE 3E AD */	bl OSRestoreInterrupts
/* 8028A8DC 0028653C  28 1F 00 10 */	cmplwi r31, 0x10
/* 8028A8E0 00286540  40 82 00 1C */	bne lbl_8028A8FC
/* 8028A8E4 00286544  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 8028A8E8 00286548  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A8EC 0028654C  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 8028A8F0 00286550  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A8F4 00286554  48 00 25 55 */	bl __DVDStoreErrorCode
/* 8028A8F8 00286558  48 00 00 58 */	b lbl_8028A950
lbl_8028A8FC:
/* 8028A8FC 0028655C  28 1F 00 20 */	cmplwi r31, 0x20
/* 8028A900 00286560  40 82 00 1C */	bne lbl_8028A91C
/* 8028A904 00286564  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 8028A908 00286568  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028A90C 0028656C  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 8028A910 00286570  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028A914 00286574  48 00 25 35 */	bl __DVDStoreErrorCode
/* 8028A918 00286578  48 00 00 38 */	b lbl_8028A950
lbl_8028A91C:
/* 8028A91C 0028657C  57 E0 07 FF */	clrlwi. r0, r31, 0x1f
/* 8028A920 00286580  41 82 00 14 */	beq lbl_8028A934
/* 8028A924 00286584  38 00 00 00 */	li r0, 0
/* 8028A928 00286588  90 0D AA 28 */	stw r0, lbl_8063FCE8-_SDA_BASE_(r13)
/* 8028A92C 0028658C  4B FF E9 F1 */	bl stateCheckID
/* 8028A930 00286590  48 00 00 20 */	b lbl_8028A950
lbl_8028A934:
/* 8028A934 00286594  38 60 00 27 */	li r3, 0x27
/* 8028A938 00286598  38 80 00 00 */	li r4, 0
/* 8028A93C 0028659C  38 A0 00 00 */	li r5, 0
/* 8028A940 002865A0  4B FF D8 4D */	bl StampCommand
/* 8028A944 002865A4  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 8028A948 002865A8  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 8028A94C 002865AC  48 00 35 89 */	bl DVDLowRequestError
lbl_8028A950:
/* 8028A950 002865B0  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028A954 002865B4  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028A958 002865B8  7C 08 03 A6 */	mtlr r0
/* 8028A95C 002865BC  38 21 00 10 */	addi r1, r1, 0x10
/* 8028A960 002865C0  4E 80 00 20 */	blr
cbForPrepareCoverRegister:
/* 8028A964 002865C4  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028A968 002865C8  7C 08 02 A6 */	mflr r0
/* 8028A96C 002865CC  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028A970 002865D0  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028A974 002865D4  3B E0 00 00 */	li r31, 0
/* 8028A978 002865D8  93 ED AA 44 */	stw r31, lbl_8063FD04-_SDA_BASE_(r13)
/* 8028A97C 002865DC  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028A980 002865E0  2C 00 00 00 */	cmpwi r0, 0
/* 8028A984 002865E4  41 82 00 88 */	beq lbl_8028AA0C
/* 8028A988 002865E8  48 00 3E 7D */	bl DVDLowGetCoverRegister
/* 8028A98C 002865EC  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 8028A990 002865F0  40 82 01 48 */	bne lbl_8028AAD8
/* 8028A994 002865F4  3C 60 80 51 */	lis r3, lbl_80516A00@ha
/* 8028A998 002865F8  38 63 6A 00 */	addi r3, r3, lbl_80516A00@l
/* 8028A99C 002865FC  4B FD F0 DD */	bl OSCancelAlarm
/* 8028A9A0 00286600  93 ED AA 38 */	stw r31, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028A9A4 00286604  93 ED AA 38 */	stw r31, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028A9A8 00286608  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028A9AC 0028660C  28 00 00 03 */	cmplwi r0, 3
/* 8028A9B0 00286610  40 82 00 0C */	bne lbl_8028A9BC
/* 8028A9B4 00286614  38 00 00 01 */	li r0, 1
/* 8028A9B8 00286618  90 0D AA 40 */	stw r0, lbl_8063FD00-_SDA_BASE_(r13)
lbl_8028A9BC:
/* 8028A9BC 0028661C  80 0D AA 70 */	lwz r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028A9C0 00286620  28 00 00 02 */	cmplwi r0, 2
/* 8028A9C4 00286624  40 82 00 1C */	bne lbl_8028A9E0
/* 8028A9C8 00286628  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A9CC 0028662C  2C 03 00 00 */	cmpwi r3, 0
/* 8028A9D0 00286630  41 82 01 08 */	beq lbl_8028AAD8
/* 8028A9D4 00286634  38 00 00 0C */	li r0, 0xc
/* 8028A9D8 00286638  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028A9DC 0028663C  48 00 00 FC */	b lbl_8028AAD8
lbl_8028A9E0:
/* 8028A9E0 00286640  48 00 3F B1 */	bl DVDLowMaskCoverInterrupt
/* 8028A9E4 00286644  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028A9E8 00286648  2C 03 00 00 */	cmpwi r3, 0
/* 8028A9EC 0028664C  41 82 00 14 */	beq lbl_8028AA00
/* 8028A9F0 00286650  38 00 00 03 */	li r0, 3
/* 8028A9F4 00286654  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028A9F8 00286658  4B FF F8 15 */	bl stateCoverClosed
/* 8028A9FC 0028665C  48 00 00 DC */	b lbl_8028AAD8
lbl_8028AA00:
/* 8028AA00 00286660  38 00 00 07 */	li r0, 7
/* 8028AA04 00286664  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028AA08 00286668  48 00 00 D0 */	b lbl_8028AAD8
lbl_8028AA0C:
/* 8028AA0C 0028666C  48 00 3D F9 */	bl DVDLowGetCoverRegister
/* 8028AA10 00286670  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 8028AA14 00286674  41 82 00 3C */	beq lbl_8028AA50
/* 8028AA18 00286678  80 0D AA 70 */	lwz r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028AA1C 0028667C  38 60 00 01 */	li r3, 1
/* 8028AA20 00286680  93 ED AA 34 */	stw r31, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028AA24 00286684  28 00 00 02 */	cmplwi r0, 2
/* 8028AA28 00286688  90 6D AA 38 */	stw r3, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028AA2C 0028668C  40 82 00 14 */	bne lbl_8028AA40
/* 8028AA30 00286690  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AA34 00286694  38 00 00 0C */	li r0, 0xc
/* 8028AA38 00286698  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AA3C 0028669C  48 00 00 9C */	b lbl_8028AAD8
lbl_8028AA40:
/* 8028AA40 002866A0  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AA44 002866A4  38 00 00 05 */	li r0, 5
/* 8028AA48 002866A8  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AA4C 002866AC  48 00 00 8C */	b lbl_8028AAD8
lbl_8028AA50:
/* 8028AA50 002866B0  48 00 3D B5 */	bl DVDLowGetCoverRegister
/* 8028AA54 002866B4  54 60 07 7B */	rlwinm. r0, r3, 0, 0x1d, 0x1d
/* 8028AA58 002866B8  41 82 00 80 */	beq lbl_8028AAD8
/* 8028AA5C 002866BC  3C 60 80 51 */	lis r3, lbl_80516A00@ha
/* 8028AA60 002866C0  38 63 6A 00 */	addi r3, r3, lbl_80516A00@l
/* 8028AA64 002866C4  4B FD F0 15 */	bl OSCancelAlarm
/* 8028AA68 002866C8  93 ED AA 34 */	stw r31, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028AA6C 002866CC  38 60 00 00 */	li r3, 0
/* 8028AA70 002866D0  48 00 3F 29 */	bl DVDLowClearCoverInterrupt
/* 8028AA74 002866D4  93 ED AA 38 */	stw r31, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028AA78 002866D8  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028AA7C 002866DC  28 00 00 03 */	cmplwi r0, 3
/* 8028AA80 002866E0  40 82 00 0C */	bne lbl_8028AA8C
/* 8028AA84 002866E4  38 00 00 01 */	li r0, 1
/* 8028AA88 002866E8  90 0D AA 40 */	stw r0, lbl_8063FD00-_SDA_BASE_(r13)
lbl_8028AA8C:
/* 8028AA8C 002866EC  80 0D AA 70 */	lwz r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028AA90 002866F0  28 00 00 02 */	cmplwi r0, 2
/* 8028AA94 002866F4  40 82 00 1C */	bne lbl_8028AAB0
/* 8028AA98 002866F8  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AA9C 002866FC  2C 03 00 00 */	cmpwi r3, 0
/* 8028AAA0 00286700  41 82 00 38 */	beq lbl_8028AAD8
/* 8028AAA4 00286704  38 00 00 0C */	li r0, 0xc
/* 8028AAA8 00286708  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AAAC 0028670C  48 00 00 2C */	b lbl_8028AAD8
lbl_8028AAB0:
/* 8028AAB0 00286710  48 00 3E E1 */	bl DVDLowMaskCoverInterrupt
/* 8028AAB4 00286714  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AAB8 00286718  2C 03 00 00 */	cmpwi r3, 0
/* 8028AABC 0028671C  41 82 00 14 */	beq lbl_8028AAD0
/* 8028AAC0 00286720  38 00 00 03 */	li r0, 3
/* 8028AAC4 00286724  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AAC8 00286728  4B FF F7 45 */	bl stateCoverClosed
/* 8028AACC 0028672C  48 00 00 0C */	b lbl_8028AAD8
lbl_8028AAD0:
/* 8028AAD0 00286730  38 00 00 07 */	li r0, 7
/* 8028AAD4 00286734  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
lbl_8028AAD8:
/* 8028AAD8 00286738  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028AADC 0028673C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028AAE0 00286740  7C 08 03 A6 */	mtlr r0
/* 8028AAE4 00286744  38 21 00 10 */	addi r1, r1, 0x10
/* 8028AAE8 00286748  4E 80 00 20 */	blr
CoverAlarmHandler:
/* 8028AAEC 0028674C  80 0D AA 44 */	lwz r0, lbl_8063FD04-_SDA_BASE_(r13)
/* 8028AAF0 00286750  2C 00 00 00 */	cmpwi r0, 0
/* 8028AAF4 00286754  4C 82 00 20 */	bnelr
/* 8028AAF8 00286758  38 00 00 01 */	li r0, 1
/* 8028AAFC 0028675C  3C 60 80 29 */	lis r3, cbForPrepareCoverRegister@ha
/* 8028AB00 00286760  90 0D AA 44 */	stw r0, lbl_8063FD04-_SDA_BASE_(r13)
/* 8028AB04 00286764  38 63 A9 64 */	addi r3, r3, cbForPrepareCoverRegister@l
/* 8028AB08 00286768  48 00 3D 0C */	b DVDLowPrepareCoverRegister
/* 8028AB0C 0028676C  4E 80 00 20 */	blr

.global stateReady
stateReady:
/* 8028AB10 00286770  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028AB14 00286774  7C 08 02 A6 */	mflr r0
/* 8028AB18 00286778  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028AB1C 0028677C  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028AB20 00286780  48 00 1F AD */	bl __DVDCheckWaitingQueue
/* 8028AB24 00286784  2C 03 00 00 */	cmpwi r3, 0
/* 8028AB28 00286788  40 82 00 10 */	bne lbl_8028AB38
/* 8028AB2C 0028678C  38 00 00 00 */	li r0, 0
/* 8028AB30 00286790  90 0D AA 90 */	stw r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AB34 00286794  48 00 02 F0 */	b lbl_8028AE24
lbl_8028AB38:
/* 8028AB38 00286798  80 0D AA 14 */	lwz r0, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028AB3C 0028679C  2C 00 00 00 */	cmpwi r0, 0
/* 8028AB40 002867A0  41 82 00 18 */	beq lbl_8028AB58
/* 8028AB44 002867A4  38 60 00 01 */	li r3, 1
/* 8028AB48 002867A8  38 00 00 00 */	li r0, 0
/* 8028AB4C 002867AC  90 6D AA 18 */	stw r3, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028AB50 002867B0  90 0D AA 90 */	stw r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AB54 002867B4  48 00 02 D0 */	b lbl_8028AE24
lbl_8028AB58:
/* 8028AB58 002867B8  48 00 1E D5 */	bl __DVDPopWaitingQueue
/* 8028AB5C 002867BC  80 0D AA 1C */	lwz r0, lbl_8063FCDC-_SDA_BASE_(r13)
/* 8028AB60 002867C0  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AB64 002867C4  2C 00 00 00 */	cmpwi r0, 0
/* 8028AB68 002867C8  41 82 00 3C */	beq lbl_8028ABA4
/* 8028AB6C 002867CC  38 00 FF FF */	li r0, -1
/* 8028AB70 002867D0  3C A0 80 51 */	lis r5, lbl_805169A0@ha
/* 8028AB74 002867D4  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AB78 002867D8  38 A5 69 A0 */	addi r5, r5, lbl_805169A0@l
/* 8028AB7C 002867DC  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AB80 002867E0  90 AD AA 90 */	stw r5, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AB84 002867E4  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028AB88 002867E8  2C 0C 00 00 */	cmpwi r12, 0
/* 8028AB8C 002867EC  41 82 00 10 */	beq lbl_8028AB9C
/* 8028AB90 002867F0  38 60 FF FF */	li r3, -1
/* 8028AB94 002867F4  7D 89 03 A6 */	mtctr r12
/* 8028AB98 002867F8  4E 80 04 21 */	bctrl
lbl_8028AB9C:
/* 8028AB9C 002867FC  4B FF FF 75 */	bl stateReady
/* 8028ABA0 00286800  48 00 02 84 */	b lbl_8028AE24
lbl_8028ABA4:
/* 8028ABA4 00286804  80 03 00 08 */	lwz r0, 8(r3)
/* 8028ABA8 00286808  90 0D AA 84 */	stw r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028ABAC 0028680C  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028ABB0 00286810  28 00 00 20 */	cmplwi r0, 0x20
/* 8028ABB4 00286814  41 82 00 1C */	beq lbl_8028ABD0
/* 8028ABB8 00286818  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028ABBC 0028681C  28 00 00 0E */	cmplwi r0, 0xe
/* 8028ABC0 00286820  41 82 00 10 */	beq lbl_8028ABD0
/* 8028ABC4 00286824  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028ABC8 00286828  28 00 00 23 */	cmplwi r0, 0x23
/* 8028ABCC 0028682C  40 82 00 0C */	bne lbl_8028ABD8
lbl_8028ABD0:
/* 8028ABD0 00286830  38 00 00 00 */	li r0, 0
/* 8028ABD4 00286834  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
lbl_8028ABD8:
/* 8028ABD8 00286838  80 0D AA 24 */	lwz r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028ABDC 0028683C  2C 00 00 00 */	cmpwi r0, 0
/* 8028ABE0 00286840  41 82 01 E0 */	beq lbl_8028ADC0
/* 8028ABE4 00286844  80 0D AA 24 */	lwz r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028ABE8 00286848  2C 00 00 04 */	cmpwi r0, 4
/* 8028ABEC 0028684C  41 82 01 2C */	beq lbl_8028AD18
/* 8028ABF0 00286850  40 80 00 1C */	bge lbl_8028AC0C
/* 8028ABF4 00286854  2C 00 00 02 */	cmpwi r0, 2
/* 8028ABF8 00286858  41 82 00 28 */	beq lbl_8028AC20
/* 8028ABFC 0028685C  40 80 00 A0 */	bge lbl_8028AC9C
/* 8028AC00 00286860  2C 00 00 01 */	cmpwi r0, 1
/* 8028AC04 00286864  40 80 01 90 */	bge lbl_8028AD94
/* 8028AC08 00286868  48 00 01 AC */	b lbl_8028ADB4
lbl_8028AC0C:
/* 8028AC0C 0028686C  2C 00 00 08 */	cmpwi r0, 8
/* 8028AC10 00286870  40 80 01 A4 */	bge lbl_8028ADB4
/* 8028AC14 00286874  2C 00 00 06 */	cmpwi r0, 6
/* 8028AC18 00286878  40 80 01 7C */	bge lbl_8028AD94
/* 8028AC1C 0028687C  48 00 01 88 */	b lbl_8028ADA4
lbl_8028AC20:
/* 8028AC20 00286880  38 00 00 0B */	li r0, 0xb
/* 8028AC24 00286884  38 80 00 01 */	li r4, 1
/* 8028AC28 00286888  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AC2C 0028688C  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028AC30 00286890  90 8D AA 70 */	stw r4, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028AC34 00286894  2C 00 00 00 */	cmpwi r0, 0
/* 8028AC38 00286898  40 82 01 7C */	bne lbl_8028ADB4
/* 8028AC3C 0028689C  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028AC40 002868A0  2C 00 00 00 */	cmpwi r0, 0
/* 8028AC44 002868A4  40 82 01 70 */	bne lbl_8028ADB4
/* 8028AC48 002868A8  3F E0 80 51 */	lis r31, lbl_80516A00@ha
/* 8028AC4C 002868AC  90 8D AA 34 */	stw r4, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028AC50 002868B0  38 7F 6A 00 */	addi r3, r31, lbl_80516A00@l
/* 8028AC54 002868B4  4B FD EA D1 */	bl OSCreateAlarm
/* 8028AC58 002868B8  4B FE 7B 79 */	bl OSGetTick
/* 8028AC5C 002868BC  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 8028AC60 002868C0  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 8028AC64 002868C4  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 8028AC68 002868C8  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 8028AC6C 002868CC  7C 66 1B 78 */	mr r6, r3
/* 8028AC70 002868D0  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 8028AC74 002868D4  54 00 F0 BE */	srwi r0, r0, 2
/* 8028AC78 002868D8  38 7F 6A 00 */	addi r3, r31, 0x6a00
/* 8028AC7C 002868DC  7C 04 00 16 */	mulhwu r0, r4, r0
/* 8028AC80 002868E0  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 8028AC84 002868E4  38 A0 00 00 */	li r5, 0
/* 8028AC88 002868E8  38 E0 00 00 */	li r7, 0
/* 8028AC8C 002868EC  54 00 D1 BE */	srwi r0, r0, 6
/* 8028AC90 002868F0  1D 00 00 64 */	mulli r8, r0, 0x64
/* 8028AC94 002868F4  4B FD ED 61 */	bl OSSetPeriodicAlarm
/* 8028AC98 002868F8  48 00 01 1C */	b lbl_8028ADB4
lbl_8028AC9C:
/* 8028AC9C 002868FC  38 00 00 04 */	li r0, 4
/* 8028ACA0 00286900  38 80 00 01 */	li r4, 1
/* 8028ACA4 00286904  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028ACA8 00286908  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028ACAC 0028690C  90 8D AA 70 */	stw r4, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028ACB0 00286910  2C 00 00 00 */	cmpwi r0, 0
/* 8028ACB4 00286914  40 82 01 00 */	bne lbl_8028ADB4
/* 8028ACB8 00286918  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028ACBC 0028691C  2C 00 00 00 */	cmpwi r0, 0
/* 8028ACC0 00286920  40 82 00 F4 */	bne lbl_8028ADB4
/* 8028ACC4 00286924  3F E0 80 51 */	lis r31, lbl_80516A00@ha
/* 8028ACC8 00286928  90 8D AA 34 */	stw r4, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028ACCC 0028692C  38 7F 6A 00 */	addi r3, r31, lbl_80516A00@l
/* 8028ACD0 00286930  4B FD EA 55 */	bl OSCreateAlarm
/* 8028ACD4 00286934  4B FE 7A FD */	bl OSGetTick
/* 8028ACD8 00286938  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 8028ACDC 0028693C  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 8028ACE0 00286940  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 8028ACE4 00286944  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 8028ACE8 00286948  7C 66 1B 78 */	mr r6, r3
/* 8028ACEC 0028694C  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 8028ACF0 00286950  54 00 F0 BE */	srwi r0, r0, 2
/* 8028ACF4 00286954  38 7F 6A 00 */	addi r3, r31, 0x6a00
/* 8028ACF8 00286958  7C 04 00 16 */	mulhwu r0, r4, r0
/* 8028ACFC 0028695C  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 8028AD00 00286960  38 A0 00 00 */	li r5, 0
/* 8028AD04 00286964  38 E0 00 00 */	li r7, 0
/* 8028AD08 00286968  54 00 D1 BE */	srwi r0, r0, 6
/* 8028AD0C 0028696C  1D 00 00 64 */	mulli r8, r0, 0x64
/* 8028AD10 00286970  4B FD EC E5 */	bl OSSetPeriodicAlarm
/* 8028AD14 00286974  48 00 00 A0 */	b lbl_8028ADB4
lbl_8028AD18:
/* 8028AD18 00286978  38 00 00 05 */	li r0, 5
/* 8028AD1C 0028697C  38 80 00 01 */	li r4, 1
/* 8028AD20 00286980  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AD24 00286984  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028AD28 00286988  90 8D AA 70 */	stw r4, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028AD2C 0028698C  2C 00 00 00 */	cmpwi r0, 0
/* 8028AD30 00286990  40 82 00 84 */	bne lbl_8028ADB4
/* 8028AD34 00286994  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028AD38 00286998  2C 00 00 00 */	cmpwi r0, 0
/* 8028AD3C 0028699C  40 82 00 78 */	bne lbl_8028ADB4
/* 8028AD40 002869A0  3F E0 80 51 */	lis r31, lbl_80516A00@ha
/* 8028AD44 002869A4  90 8D AA 34 */	stw r4, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028AD48 002869A8  38 7F 6A 00 */	addi r3, r31, lbl_80516A00@l
/* 8028AD4C 002869AC  4B FD E9 D9 */	bl OSCreateAlarm
/* 8028AD50 002869B0  4B FE 7A 81 */	bl OSGetTick
/* 8028AD54 002869B4  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 8028AD58 002869B8  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 8028AD5C 002869BC  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 8028AD60 002869C0  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 8028AD64 002869C4  7C 66 1B 78 */	mr r6, r3
/* 8028AD68 002869C8  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 8028AD6C 002869CC  54 00 F0 BE */	srwi r0, r0, 2
/* 8028AD70 002869D0  38 7F 6A 00 */	addi r3, r31, 0x6a00
/* 8028AD74 002869D4  7C 04 00 16 */	mulhwu r0, r4, r0
/* 8028AD78 002869D8  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 8028AD7C 002869DC  38 A0 00 00 */	li r5, 0
/* 8028AD80 002869E0  38 E0 00 00 */	li r7, 0
/* 8028AD84 002869E4  54 00 D1 BE */	srwi r0, r0, 6
/* 8028AD88 002869E8  1D 00 00 64 */	mulli r8, r0, 0x64
/* 8028AD8C 002869EC  4B FD EC 69 */	bl OSSetPeriodicAlarm
/* 8028AD90 002869F0  48 00 00 24 */	b lbl_8028ADB4
lbl_8028AD94:
/* 8028AD94 002869F4  38 00 00 03 */	li r0, 3
/* 8028AD98 002869F8  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AD9C 002869FC  4B FF F4 71 */	bl stateCoverClosed
/* 8028ADA0 00286A00  48 00 00 14 */	b lbl_8028ADB4
lbl_8028ADA4:
/* 8028ADA4 00286A04  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 8028ADA8 00286A08  80 6D AA 7C */	lwz r3, lbl_8063FD3C-_SDA_BASE_(r13)
/* 8028ADAC 00286A0C  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 8028ADB0 00286A10  48 00 20 99 */	bl __DVDStoreErrorCode
lbl_8028ADB4:
/* 8028ADB4 00286A14  38 00 00 00 */	li r0, 0
/* 8028ADB8 00286A18  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028ADBC 00286A1C  48 00 00 68 */	b lbl_8028AE24
lbl_8028ADC0:
/* 8028ADC0 00286A20  80 0D AA 70 */	lwz r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028ADC4 00286A24  2C 00 00 01 */	cmpwi r0, 1
/* 8028ADC8 00286A28  41 82 00 58 */	beq lbl_8028AE20
/* 8028ADCC 00286A2C  40 80 00 10 */	bge lbl_8028ADDC
/* 8028ADD0 00286A30  2C 00 00 00 */	cmpwi r0, 0
/* 8028ADD4 00286A34  40 80 00 38 */	bge lbl_8028AE0C
/* 8028ADD8 00286A38  48 00 00 48 */	b lbl_8028AE20
lbl_8028ADDC:
/* 8028ADDC 00286A3C  2C 00 00 03 */	cmpwi r0, 3
/* 8028ADE0 00286A40  40 80 00 40 */	bge lbl_8028AE20
/* 8028ADE4 00286A44  80 0D AA 3C */	lwz r0, lbl_8063FCFC-_SDA_BASE_(r13)
/* 8028ADE8 00286A48  2C 00 00 00 */	cmpwi r0, 0
/* 8028ADEC 00286A4C  41 82 00 10 */	beq lbl_8028ADFC
/* 8028ADF0 00286A50  38 00 00 0C */	li r0, 0xc
/* 8028ADF4 00286A54  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028ADF8 00286A58  48 00 00 2C */	b lbl_8028AE24
lbl_8028ADFC:
/* 8028ADFC 00286A5C  38 00 00 03 */	li r0, 3
/* 8028AE00 00286A60  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AE04 00286A64  4B FF F4 09 */	bl stateCoverClosed
/* 8028AE08 00286A68  48 00 00 1C */	b lbl_8028AE24
lbl_8028AE0C:
/* 8028AE0C 00286A6C  38 00 00 01 */	li r0, 1
/* 8028AE10 00286A70  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028AE14 00286A74  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AE18 00286A78  48 00 00 21 */	bl stateBusy
/* 8028AE1C 00286A7C  48 00 00 08 */	b lbl_8028AE24
lbl_8028AE20:
/* 8028AE20 00286A80  4B FF F3 ED */	bl stateCoverClosed
lbl_8028AE24:
/* 8028AE24 00286A84  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028AE28 00286A88  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028AE2C 00286A8C  7C 08 03 A6 */	mtlr r0
/* 8028AE30 00286A90  38 21 00 10 */	addi r1, r1, 0x10
/* 8028AE34 00286A94  4E 80 00 20 */	blr

.global stateBusy
stateBusy:
/* 8028AE38 00286A98  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028AE3C 00286A9C  7C 08 02 A6 */	mflr r0
/* 8028AE40 00286AA0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028AE44 00286AA4  39 61 00 20 */	addi r11, r1, 0x20
/* 8028AE48 00286AA8  4B F3 C2 DD */	bl _savegpr_26
/* 8028AE4C 00286AAC  3C 80 80 29 */	lis r4, stateBusy@ha
/* 8028AE50 00286AB0  7C 7D 1B 78 */	mr r29, r3
/* 8028AE54 00286AB4  38 84 AE 38 */	addi r4, r4, stateBusy@l
/* 8028AE58 00286AB8  90 8D AA 94 */	stw r4, lbl_8063FD54-_SDA_BASE_(r13)
/* 8028AE5C 00286ABC  83 43 00 08 */	lwz r26, 8(r3)
/* 8028AE60 00286AC0  2C 1A 00 11 */	cmpwi r26, 0x11
/* 8028AE64 00286AC4  40 80 00 30 */	bge lbl_8028AE94
/* 8028AE68 00286AC8  2C 1A 00 05 */	cmpwi r26, 5
/* 8028AE6C 00286ACC  41 82 00 40 */	beq lbl_8028AEAC
/* 8028AE70 00286AD0  40 80 00 18 */	bge lbl_8028AE88
/* 8028AE74 00286AD4  2C 1A 00 04 */	cmpwi r26, 4
/* 8028AE78 00286AD8  40 80 00 B8 */	bge lbl_8028AF30
/* 8028AE7C 00286ADC  2C 1A 00 02 */	cmpwi r26, 2
/* 8028AE80 00286AE0  40 80 00 2C */	bge lbl_8028AEAC
/* 8028AE84 00286AE4  48 00 00 AC */	b lbl_8028AF30
lbl_8028AE88:
/* 8028AE88 00286AE8  2C 1A 00 0D */	cmpwi r26, 0xd
/* 8028AE8C 00286AEC  40 80 00 20 */	bge lbl_8028AEAC
/* 8028AE90 00286AF0  48 00 00 A0 */	b lbl_8028AF30
lbl_8028AE94:
/* 8028AE94 00286AF4  2C 1A 00 25 */	cmpwi r26, 0x25
/* 8028AE98 00286AF8  41 82 00 14 */	beq lbl_8028AEAC
/* 8028AE9C 00286AFC  40 80 00 94 */	bge lbl_8028AF30
/* 8028AEA0 00286B00  2C 1A 00 22 */	cmpwi r26, 0x22
/* 8028AEA4 00286B04  41 82 00 08 */	beq lbl_8028AEAC
/* 8028AEA8 00286B08  48 00 00 88 */	b lbl_8028AF30
lbl_8028AEAC:
/* 8028AEAC 00286B0C  83 63 00 14 */	lwz r27, 0x14(r3)
/* 8028AEB0 00286B10  83 C3 00 10 */	lwz r30, 0x10(r3)
/* 8028AEB4 00286B14  4B FE 38 A9 */	bl OSDisableInterrupts
/* 8028AEB8 00286B18  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028AEBC 00286B1C  7C 7F 1B 78 */	mr r31, r3
/* 8028AEC0 00286B20  28 00 00 05 */	cmplwi r0, 5
/* 8028AEC4 00286B24  41 80 00 0C */	blt lbl_8028AED0
/* 8028AEC8 00286B28  38 00 00 00 */	li r0, 0
/* 8028AECC 00286B2C  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028AED0:
/* 8028AED0 00286B30  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028AED4 00286B34  3F 80 80 52 */	lis r28, lbl_8051B6E0@ha
/* 8028AED8 00286B38  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028AEDC 00286B3C  3B 9C B6 E0 */	addi r28, r28, lbl_8051B6E0@l
/* 8028AEE0 00286B40  1C 80 00 14 */	mulli r4, r0, 0x14
/* 8028AEE4 00286B44  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028AEE8 00286B48  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028AEEC 00286B4C  7C 9C 22 14 */	add r4, r28, r4
/* 8028AEF0 00286B50  93 44 00 1C */	stw r26, 0x1c(r4)
/* 8028AEF4 00286B54  7C 7C 1A 14 */	add r3, r28, r3
/* 8028AEF8 00286B58  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028AEFC 00286B5C  93 C3 00 20 */	stw r30, 0x20(r3)
/* 8028AF00 00286B60  7C 7C 02 14 */	add r3, r28, r0
/* 8028AF04 00286B64  93 63 00 24 */	stw r27, 0x24(r3)
/* 8028AF08 00286B68  4B FE 78 C9 */	bl OSGetTick
/* 8028AF0C 00286B6C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028AF10 00286B70  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028AF14 00286B74  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028AF18 00286B78  38 04 00 01 */	addi r0, r4, 1
/* 8028AF1C 00286B7C  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028AF20 00286B80  7C 9C 2A 14 */	add r4, r28, r5
/* 8028AF24 00286B84  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028AF28 00286B88  7F E3 FB 78 */	mr r3, r31
/* 8028AF2C 00286B8C  4B FE 38 59 */	bl OSRestoreInterrupts
lbl_8028AF30:
/* 8028AF30 00286B90  80 1D 00 08 */	lwz r0, 8(r29)
/* 8028AF34 00286B94  28 00 00 26 */	cmplwi r0, 0x26
/* 8028AF38 00286B98  41 81 03 D8 */	bgt lbl_8028B310
/* 8028AF3C 00286B9C  3C 60 80 43 */	lis r3, lbl_80436010@ha
/* 8028AF40 00286BA0  54 00 10 3A */	slwi r0, r0, 2
/* 8028AF44 00286BA4  38 63 60 10 */	addi r3, r3, lbl_80436010@l
/* 8028AF48 00286BA8  7C 63 00 2E */	lwzx r3, r3, r0
/* 8028AF4C 00286BAC  7C 69 03 A6 */	mtctr r3
/* 8028AF50 00286BB0  4E 80 04 20 */	bctr
/* 8028AF54 00286BB4  38 60 00 00 */	li r3, 0
/* 8028AF58 00286BB8  48 00 3A 41 */	bl DVDLowClearCoverInterrupt
/* 8028AF5C 00286BBC  38 00 00 20 */	li r0, 0x20
/* 8028AF60 00286BC0  3C 80 80 29 */	lis r4, cbForStateBusy@ha
/* 8028AF64 00286BC4  90 1D 00 1C */	stw r0, 0x1c(r29)
/* 8028AF68 00286BC8  38 84 B3 40 */	addi r4, r4, cbForStateBusy@l
/* 8028AF6C 00286BCC  80 7D 00 18 */	lwz r3, 0x18(r29)
/* 8028AF70 00286BD0  48 00 25 81 */	bl DVDLowReadDiskID
/* 8028AF74 00286BD4  48 00 03 B4 */	b lbl_8028B328
/* 8028AF78 00286BD8  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 8028AF7C 00286BDC  2C 00 00 00 */	cmpwi r0, 0
/* 8028AF80 00286BE0  40 82 00 3C */	bne lbl_8028AFBC
/* 8028AF84 00286BE4  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028AF88 00286BE8  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AF8C 00286BEC  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028AF90 00286BF0  38 00 00 00 */	li r0, 0
/* 8028AF94 00286BF4  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028AF98 00286BF8  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028AF9C 00286BFC  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028AFA0 00286C00  2C 0C 00 00 */	cmpwi r12, 0
/* 8028AFA4 00286C04  41 82 00 10 */	beq lbl_8028AFB4
/* 8028AFA8 00286C08  38 60 00 00 */	li r3, 0
/* 8028AFAC 00286C0C  7D 89 03 A6 */	mtctr r12
/* 8028AFB0 00286C10  4E 80 04 21 */	bctrl
lbl_8028AFB4:
/* 8028AFB4 00286C14  4B FF FB 5D */	bl stateReady
/* 8028AFB8 00286C18  48 00 03 70 */	b lbl_8028B328
lbl_8028AFBC:
/* 8028AFBC 00286C1C  38 60 00 00 */	li r3, 0
/* 8028AFC0 00286C20  48 00 39 D9 */	bl DVDLowClearCoverInterrupt
/* 8028AFC4 00286C24  80 7D 00 20 */	lwz r3, 0x20(r29)
/* 8028AFC8 00286C28  3F E0 00 08 */	lis r31, 8
/* 8028AFCC 00286C2C  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 8028AFD0 00286C30  7C 03 00 50 */	subf r0, r3, r0
/* 8028AFD4 00286C34  7C 00 F8 40 */	cmplw r0, r31
/* 8028AFD8 00286C38  41 81 00 08 */	bgt lbl_8028AFE0
/* 8028AFDC 00286C3C  7C 1F 03 78 */	mr r31, r0
lbl_8028AFE0:
/* 8028AFE0 00286C40  80 1D 00 20 */	lwz r0, 0x20(r29)
/* 8028AFE4 00286C44  80 7D 00 10 */	lwz r3, 0x10(r29)
/* 8028AFE8 00286C48  54 00 F0 BE */	srwi r0, r0, 2
/* 8028AFEC 00286C4C  93 FD 00 1C */	stw r31, 0x1c(r29)
/* 8028AFF0 00286C50  83 7D 00 08 */	lwz r27, 8(r29)
/* 8028AFF4 00286C54  7F 43 02 14 */	add r26, r3, r0
/* 8028AFF8 00286C58  4B FE 37 65 */	bl OSDisableInterrupts
/* 8028AFFC 00286C5C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B000 00286C60  7C 7E 1B 78 */	mr r30, r3
/* 8028B004 00286C64  28 00 00 05 */	cmplwi r0, 5
/* 8028B008 00286C68  41 80 00 0C */	blt lbl_8028B014
/* 8028B00C 00286C6C  38 00 00 00 */	li r0, 0
/* 8028B010 00286C70  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028B014:
/* 8028B014 00286C74  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B018 00286C78  3F 80 80 52 */	lis r28, lbl_8051B6E0@ha
/* 8028B01C 00286C7C  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B020 00286C80  3B 9C B6 E0 */	addi r28, r28, lbl_8051B6E0@l
/* 8028B024 00286C84  1C 80 00 14 */	mulli r4, r0, 0x14
/* 8028B028 00286C88  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B02C 00286C8C  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028B030 00286C90  7C 9C 22 14 */	add r4, r28, r4
/* 8028B034 00286C94  93 64 00 1C */	stw r27, 0x1c(r4)
/* 8028B038 00286C98  7C 7C 1A 14 */	add r3, r28, r3
/* 8028B03C 00286C9C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028B040 00286CA0  93 43 00 20 */	stw r26, 0x20(r3)
/* 8028B044 00286CA4  7C 7C 02 14 */	add r3, r28, r0
/* 8028B048 00286CA8  93 E3 00 24 */	stw r31, 0x24(r3)
/* 8028B04C 00286CAC  4B FE 77 85 */	bl OSGetTick
/* 8028B050 00286CB0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B054 00286CB4  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B058 00286CB8  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028B05C 00286CBC  38 04 00 01 */	addi r0, r4, 1
/* 8028B060 00286CC0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B064 00286CC4  7C 9C 2A 14 */	add r4, r28, r5
/* 8028B068 00286CC8  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028B06C 00286CCC  7F C3 F3 78 */	mr r3, r30
/* 8028B070 00286CD0  4B FE 37 15 */	bl OSRestoreInterrupts
/* 8028B074 00286CD4  80 FD 00 20 */	lwz r7, 0x20(r29)
/* 8028B078 00286CD8  3C C0 80 29 */	lis r6, cbForStateBusy@ha
/* 8028B07C 00286CDC  80 7D 00 18 */	lwz r3, 0x18(r29)
/* 8028B080 00286CE0  38 C6 B3 40 */	addi r6, r6, cbForStateBusy@l
/* 8028B084 00286CE4  80 BD 00 10 */	lwz r5, 0x10(r29)
/* 8028B088 00286CE8  54 E0 F0 BE */	srwi r0, r7, 2
/* 8028B08C 00286CEC  80 9D 00 1C */	lwz r4, 0x1c(r29)
/* 8028B090 00286CF0  7C 63 3A 14 */	add r3, r3, r7
/* 8028B094 00286CF4  7C A5 02 14 */	add r5, r5, r0
/* 8028B098 00286CF8  48 00 34 41 */	bl DVDLowRead
/* 8028B09C 00286CFC  48 00 02 8C */	b lbl_8028B328
/* 8028B0A0 00286D00  38 60 00 00 */	li r3, 0
/* 8028B0A4 00286D04  48 00 38 F5 */	bl DVDLowClearCoverInterrupt
/* 8028B0A8 00286D08  3C 80 80 29 */	lis r4, cbForStateBusy@ha
/* 8028B0AC 00286D0C  80 7D 00 10 */	lwz r3, 0x10(r29)
/* 8028B0B0 00286D10  38 84 B3 40 */	addi r4, r4, cbForStateBusy@l
/* 8028B0B4 00286D14  48 00 35 D5 */	bl DVDLowSeek
/* 8028B0B8 00286D18  48 00 02 70 */	b lbl_8028B328
/* 8028B0BC 00286D1C  3C A0 80 29 */	lis r5, cbForStateBusy@ha
/* 8028B0C0 00286D20  38 60 00 00 */	li r3, 0
/* 8028B0C4 00286D24  38 A5 B3 40 */	addi r5, r5, cbForStateBusy@l
/* 8028B0C8 00286D28  38 80 00 00 */	li r4, 0
/* 8028B0CC 00286D2C  48 00 2B 0D */	bl DVDLowStopMotor
/* 8028B0D0 00286D30  48 00 02 58 */	b lbl_8028B328
/* 8028B0D4 00286D34  3C A0 80 29 */	lis r5, cbForStateBusy@ha
/* 8028B0D8 00286D38  38 60 00 00 */	li r3, 0
/* 8028B0DC 00286D3C  38 A5 B3 40 */	addi r5, r5, cbForStateBusy@l
/* 8028B0E0 00286D40  38 80 00 00 */	li r4, 0
/* 8028B0E4 00286D44  48 00 2A F5 */	bl DVDLowStopMotor
/* 8028B0E8 00286D48  48 00 02 40 */	b lbl_8028B328
/* 8028B0EC 00286D4C  38 60 00 00 */	li r3, 0
/* 8028B0F0 00286D50  48 00 38 A9 */	bl DVDLowClearCoverInterrupt
/* 8028B0F4 00286D54  3C A0 80 29 */	lis r5, cbForStateBusy@ha
/* 8028B0F8 00286D58  80 7D 00 10 */	lwz r3, 0x10(r29)
/* 8028B0FC 00286D5C  80 9D 00 14 */	lwz r4, 0x14(r29)
/* 8028B100 00286D60  38 A5 B3 40 */	addi r5, r5, cbForStateBusy@l
/* 8028B104 00286D64  48 00 30 C1 */	bl DVDLowAudioBufferConfig
/* 8028B108 00286D68  48 00 02 20 */	b lbl_8028B328
/* 8028B10C 00286D6C  38 60 00 00 */	li r3, 0
/* 8028B110 00286D70  48 00 38 89 */	bl DVDLowClearCoverInterrupt
/* 8028B114 00286D74  38 00 00 20 */	li r0, 0x20
/* 8028B118 00286D78  3C 80 80 29 */	lis r4, cbForStateBusy@ha
/* 8028B11C 00286D7C  90 1D 00 1C */	stw r0, 0x1c(r29)
/* 8028B120 00286D80  38 84 B3 40 */	addi r4, r4, cbForStateBusy@l
/* 8028B124 00286D84  80 7D 00 18 */	lwz r3, 0x18(r29)
/* 8028B128 00286D88  48 00 2C 45 */	bl DVDLowInquiry
/* 8028B12C 00286D8C  48 00 01 FC */	b lbl_8028B328
/* 8028B130 00286D90  38 60 00 00 */	li r3, 0
/* 8028B134 00286D94  48 00 38 65 */	bl DVDLowClearCoverInterrupt
/* 8028B138 00286D98  3C A0 80 29 */	lis r5, cbForStateBusy@ha
/* 8028B13C 00286D9C  38 60 00 00 */	li r3, 0
/* 8028B140 00286DA0  38 A5 B3 40 */	addi r5, r5, cbForStateBusy@l
/* 8028B144 00286DA4  38 80 00 00 */	li r4, 0
/* 8028B148 00286DA8  48 00 2A 91 */	bl DVDLowStopMotor
/* 8028B14C 00286DAC  48 00 01 DC */	b lbl_8028B328
/* 8028B150 00286DB0  38 60 00 01 */	li r3, 1
/* 8028B154 00286DB4  48 00 2E E9 */	bl DVDLowSetSpinupFlag
/* 8028B158 00286DB8  3C 60 80 29 */	lis r3, cbForStateBusy@ha
/* 8028B15C 00286DBC  38 63 B3 40 */	addi r3, r3, cbForStateBusy@l
/* 8028B160 00286DC0  48 00 2E E9 */	bl DVDLowReset
/* 8028B164 00286DC4  48 00 01 C4 */	b lbl_8028B328
/* 8028B168 00286DC8  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 8028B16C 00286DCC  2C 00 00 00 */	cmpwi r0, 0
/* 8028B170 00286DD0  40 82 00 3C */	bne lbl_8028B1AC
/* 8028B174 00286DD4  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028B178 00286DD8  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B17C 00286DDC  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028B180 00286DE0  38 00 00 00 */	li r0, 0
/* 8028B184 00286DE4  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B188 00286DE8  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028B18C 00286DEC  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028B190 00286DF0  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B194 00286DF4  41 82 00 10 */	beq lbl_8028B1A4
/* 8028B198 00286DF8  38 60 00 00 */	li r3, 0
/* 8028B19C 00286DFC  7D 89 03 A6 */	mtctr r12
/* 8028B1A0 00286E00  4E 80 04 21 */	bctrl
lbl_8028B1A4:
/* 8028B1A4 00286E04  4B FF F9 6D */	bl stateReady
/* 8028B1A8 00286E08  48 00 01 80 */	b lbl_8028B328
lbl_8028B1AC:
/* 8028B1AC 00286E0C  38 60 00 00 */	li r3, 0
/* 8028B1B0 00286E10  48 00 37 E9 */	bl DVDLowClearCoverInterrupt
/* 8028B1B4 00286E14  80 7D 00 20 */	lwz r3, 0x20(r29)
/* 8028B1B8 00286E18  3F E0 00 08 */	lis r31, 8
/* 8028B1BC 00286E1C  80 1D 00 14 */	lwz r0, 0x14(r29)
/* 8028B1C0 00286E20  7C 03 00 50 */	subf r0, r3, r0
/* 8028B1C4 00286E24  7C 00 F8 40 */	cmplw r0, r31
/* 8028B1C8 00286E28  41 81 00 08 */	bgt lbl_8028B1D0
/* 8028B1CC 00286E2C  7C 1F 03 78 */	mr r31, r0
lbl_8028B1D0:
/* 8028B1D0 00286E30  80 1D 00 20 */	lwz r0, 0x20(r29)
/* 8028B1D4 00286E34  80 7D 00 10 */	lwz r3, 0x10(r29)
/* 8028B1D8 00286E38  54 00 F0 BE */	srwi r0, r0, 2
/* 8028B1DC 00286E3C  93 FD 00 1C */	stw r31, 0x1c(r29)
/* 8028B1E0 00286E40  83 5D 00 08 */	lwz r26, 8(r29)
/* 8028B1E4 00286E44  7F 63 02 14 */	add r27, r3, r0
/* 8028B1E8 00286E48  4B FE 35 75 */	bl OSDisableInterrupts
/* 8028B1EC 00286E4C  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B1F0 00286E50  7C 7E 1B 78 */	mr r30, r3
/* 8028B1F4 00286E54  28 00 00 05 */	cmplwi r0, 5
/* 8028B1F8 00286E58  41 80 00 0C */	blt lbl_8028B204
/* 8028B1FC 00286E5C  38 00 00 00 */	li r0, 0
/* 8028B200 00286E60  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
lbl_8028B204:
/* 8028B204 00286E64  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B208 00286E68  3F 80 80 52 */	lis r28, lbl_8051B6E0@ha
/* 8028B20C 00286E6C  80 6D AA 10 */	lwz r3, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B210 00286E70  3B 9C B6 E0 */	addi r28, r28, lbl_8051B6E0@l
/* 8028B214 00286E74  1C 80 00 14 */	mulli r4, r0, 0x14
/* 8028B218 00286E78  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B21C 00286E7C  1C 63 00 14 */	mulli r3, r3, 0x14
/* 8028B220 00286E80  7C 9C 22 14 */	add r4, r28, r4
/* 8028B224 00286E84  93 44 00 1C */	stw r26, 0x1c(r4)
/* 8028B228 00286E88  7C 7C 1A 14 */	add r3, r28, r3
/* 8028B22C 00286E8C  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028B230 00286E90  93 63 00 20 */	stw r27, 0x20(r3)
/* 8028B234 00286E94  7C 7C 02 14 */	add r3, r28, r0
/* 8028B238 00286E98  93 E3 00 24 */	stw r31, 0x24(r3)
/* 8028B23C 00286E9C  4B FE 75 95 */	bl OSGetTick
/* 8028B240 00286EA0  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B244 00286EA4  80 8D AA 10 */	lwz r4, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B248 00286EA8  1C A0 00 14 */	mulli r5, r0, 0x14
/* 8028B24C 00286EAC  38 04 00 01 */	addi r0, r4, 1
/* 8028B250 00286EB0  90 0D AA 10 */	stw r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B254 00286EB4  7C 9C 2A 14 */	add r4, r28, r5
/* 8028B258 00286EB8  90 64 00 2C */	stw r3, 0x2c(r4)
/* 8028B25C 00286EBC  7F C3 F3 78 */	mr r3, r30
/* 8028B260 00286EC0  4B FE 35 25 */	bl OSRestoreInterrupts
/* 8028B264 00286EC4  80 FD 00 20 */	lwz r7, 0x20(r29)
/* 8028B268 00286EC8  3C C0 80 29 */	lis r6, cbForStateBusy@ha
/* 8028B26C 00286ECC  80 7D 00 18 */	lwz r3, 0x18(r29)
/* 8028B270 00286ED0  38 C6 B3 40 */	addi r6, r6, cbForStateBusy@l
/* 8028B274 00286ED4  80 BD 00 10 */	lwz r5, 0x10(r29)
/* 8028B278 00286ED8  54 E0 F0 BE */	srwi r0, r7, 2
/* 8028B27C 00286EDC  80 9D 00 1C */	lwz r4, 0x1c(r29)
/* 8028B280 00286EE0  7C 63 3A 14 */	add r3, r3, r7
/* 8028B284 00286EE4  7C A5 02 14 */	add r5, r5, r0
/* 8028B288 00286EE8  48 00 27 BD */	bl DVDLowUnencryptedRead
/* 8028B28C 00286EEC  48 00 00 9C */	b lbl_8028B328
/* 8028B290 00286EF0  38 60 00 00 */	li r3, 0
/* 8028B294 00286EF4  48 00 37 05 */	bl DVDLowClearCoverInterrupt
/* 8028B298 00286EF8  3D 00 80 29 */	lis r8, cbForStateBusy@ha
/* 8028B29C 00286EFC  80 7D 00 10 */	lwz r3, 0x10(r29)
/* 8028B2A0 00286F00  80 FD 00 18 */	lwz r7, 0x18(r29)
/* 8028B2A4 00286F04  39 08 B3 40 */	addi r8, r8, cbForStateBusy@l
/* 8028B2A8 00286F08  38 80 00 00 */	li r4, 0
/* 8028B2AC 00286F0C  38 A0 00 00 */	li r5, 0
/* 8028B2B0 00286F10  38 C0 00 00 */	li r6, 0
/* 8028B2B4 00286F14  48 00 23 C5 */	bl DVDLowOpenPartition
/* 8028B2B8 00286F18  48 00 00 70 */	b lbl_8028B328
/* 8028B2BC 00286F1C  38 60 00 00 */	li r3, 0
/* 8028B2C0 00286F20  48 00 36 D9 */	bl DVDLowClearCoverInterrupt
/* 8028B2C4 00286F24  3C 60 80 29 */	lis r3, cbForStateBusy@ha
/* 8028B2C8 00286F28  38 63 B3 40 */	addi r3, r3, cbForStateBusy@l
/* 8028B2CC 00286F2C  48 00 26 15 */	bl DVDLowClosePartition
/* 8028B2D0 00286F30  48 00 00 58 */	b lbl_8028B328
/* 8028B2D4 00286F34  3C 60 80 29 */	lis r3, cbForStateBusy@ha
/* 8028B2D8 00286F38  38 63 B3 40 */	addi r3, r3, cbForStateBusy@l
/* 8028B2DC 00286F3C  48 00 35 39 */	bl DVDLowPrepareCoverRegister
/* 8028B2E0 00286F40  48 00 00 48 */	b lbl_8028B328
/* 8028B2E4 00286F44  3C 60 80 29 */	lis r3, cbForStateBusy@ha
/* 8028B2E8 00286F48  38 63 B3 40 */	addi r3, r3, cbForStateBusy@l
/* 8028B2EC 00286F4C  48 00 35 29 */	bl DVDLowPrepareCoverRegister
/* 8028B2F0 00286F50  48 00 00 38 */	b lbl_8028B328
/* 8028B2F4 00286F54  38 60 00 00 */	li r3, 0
/* 8028B2F8 00286F58  48 00 36 A1 */	bl DVDLowClearCoverInterrupt
/* 8028B2FC 00286F5C  3C 80 80 29 */	lis r4, cbForStateBusy@ha
/* 8028B300 00286F60  3C 60 00 02 */	lis r3, 2
/* 8028B304 00286F64  38 84 B3 40 */	addi r4, r4, cbForStateBusy@l
/* 8028B308 00286F68  48 00 30 51 */	bl DVDLowSetMaximumRotation
/* 8028B30C 00286F6C  48 00 00 1C */	b lbl_8028B328
lbl_8028B310:
/* 8028B310 00286F70  81 8D 88 C0 */	lwz r12, lbl_8063DB80-_SDA_BASE_(r13)
/* 8028B314 00286F74  3C 80 80 29 */	lis r4, cbForStateBusy@ha
/* 8028B318 00286F78  7F A3 EB 78 */	mr r3, r29
/* 8028B31C 00286F7C  38 84 B3 40 */	addi r4, r4, cbForStateBusy@l
/* 8028B320 00286F80  7D 89 03 A6 */	mtctr r12
/* 8028B324 00286F84  4E 80 04 21 */	bctrl
lbl_8028B328:
/* 8028B328 00286F88  39 61 00 20 */	addi r11, r1, 0x20
/* 8028B32C 00286F8C  4B F3 BE 45 */	bl _restgpr_26
/* 8028B330 00286F90  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028B334 00286F94  7C 08 03 A6 */	mtlr r0
/* 8028B338 00286F98  38 21 00 20 */	addi r1, r1, 0x20
/* 8028B33C 00286F9C  4E 80 00 20 */	blr

.global cbForStateBusy
cbForStateBusy:
/* 8028B340 00286FA0  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028B344 00286FA4  7C 08 02 A6 */	mflr r0
/* 8028B348 00286FA8  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028B34C 00286FAC  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028B350 00286FB0  7C 7F 1B 78 */	mr r31, r3
/* 8028B354 00286FB4  93 C1 00 08 */	stw r30, 8(r1)
/* 8028B358 00286FB8  4B FE 34 05 */	bl OSDisableInterrupts
/* 8028B35C 00286FBC  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B360 00286FC0  2C 00 00 00 */	cmpwi r0, 0
/* 8028B364 00286FC4  40 82 00 14 */	bne lbl_8028B378
/* 8028B368 00286FC8  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028B36C 00286FCC  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 8028B370 00286FD0  93 E4 00 78 */	stw r31, 0x78(r4)
/* 8028B374 00286FD4  48 00 00 1C */	b lbl_8028B390
lbl_8028B378:
/* 8028B378 00286FD8  80 0D AA 10 */	lwz r0, lbl_8063FCD0-_SDA_BASE_(r13)
/* 8028B37C 00286FDC  3C 80 80 52 */	lis r4, lbl_8051B6E0@ha
/* 8028B380 00286FE0  38 84 B6 E0 */	addi r4, r4, lbl_8051B6E0@l
/* 8028B384 00286FE4  1C 00 00 14 */	mulli r0, r0, 0x14
/* 8028B388 00286FE8  7C 84 02 14 */	add r4, r4, r0
/* 8028B38C 00286FEC  93 E4 00 14 */	stw r31, 0x14(r4)
lbl_8028B390:
/* 8028B390 00286FF0  4B FE 33 F5 */	bl OSRestoreInterrupts
/* 8028B394 00286FF4  28 1F 00 10 */	cmplwi r31, 0x10
/* 8028B398 00286FF8  40 82 00 1C */	bne lbl_8028B3B4
/* 8028B39C 00286FFC  3C 60 01 23 */	lis r3, 0x01234568@ha
/* 8028B3A0 00287000  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028B3A4 00287004  38 63 45 68 */	addi r3, r3, 0x01234568@l
/* 8028B3A8 00287008  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028B3AC 0028700C  48 00 1A 9D */	bl __DVDStoreErrorCode
/* 8028B3B0 00287010  48 00 07 AC */	b lbl_8028BB5C
lbl_8028B3B4:
/* 8028B3B4 00287014  28 1F 00 20 */	cmplwi r31, 0x20
/* 8028B3B8 00287018  40 82 00 1C */	bne lbl_8028B3D4
/* 8028B3BC 0028701C  3C 60 01 23 */	lis r3, 0x01234569@ha
/* 8028B3C0 00287020  3C 80 80 29 */	lis r4, cbForStoreErrorCode2@ha
/* 8028B3C4 00287024  38 63 45 69 */	addi r3, r3, 0x01234569@l
/* 8028B3C8 00287028  38 84 87 48 */	addi r4, r4, cbForStoreErrorCode2@l
/* 8028B3CC 0028702C  48 00 1A 7D */	bl __DVDStoreErrorCode
/* 8028B3D0 00287030  48 00 07 8C */	b lbl_8028BB5C
lbl_8028B3D4:
/* 8028B3D4 00287034  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B3D8 00287038  28 00 00 03 */	cmplwi r0, 3
/* 8028B3DC 0028703C  41 82 00 10 */	beq lbl_8028B3EC
/* 8028B3E0 00287040  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B3E4 00287044  28 00 00 0F */	cmplwi r0, 0xf
/* 8028B3E8 00287048  40 82 01 50 */	bne lbl_8028B538
lbl_8028B3EC:
/* 8028B3EC 0028704C  57 E0 07 BD */	rlwinm. r0, r31, 0, 0x1e, 0x1e
/* 8028B3F0 00287050  41 82 00 1C */	beq lbl_8028B40C
/* 8028B3F4 00287054  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 8028B3F8 00287058  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 8028B3FC 0028705C  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 8028B400 00287060  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 8028B404 00287064  48 00 1A 45 */	bl __DVDStoreErrorCode
/* 8028B408 00287068  48 00 07 54 */	b lbl_8028BB5C
lbl_8028B40C:
/* 8028B40C 0028706C  38 00 00 00 */	li r0, 0
/* 8028B410 00287070  90 0D AA 28 */	stw r0, lbl_8063FCE8-_SDA_BASE_(r13)
/* 8028B414 00287074  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B418 00287078  28 00 00 0F */	cmplwi r0, 0xf
/* 8028B41C 0028707C  40 82 00 0C */	bne lbl_8028B428
/* 8028B420 00287080  38 00 00 01 */	li r0, 1
/* 8028B424 00287084  90 0D AA 74 */	stw r0, lbl_8063FD34-_SDA_BASE_(r13)
lbl_8028B428:
/* 8028B428 00287088  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028B42C 0028708C  2C 00 00 00 */	cmpwi r0, 0
/* 8028B430 00287090  41 82 00 70 */	beq lbl_8028B4A0
/* 8028B434 00287094  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028B438 00287098  83 ED AA 90 */	lwz r31, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B43C 0028709C  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028B440 002870A0  38 00 00 07 */	li r0, 7
/* 8028B444 002870A4  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028B448 002870A8  38 80 00 00 */	li r4, 0
/* 8028B44C 002870AC  38 00 00 0A */	li r0, 0xa
/* 8028B450 002870B0  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028B454 002870B4  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B458 002870B8  90 1F 00 0C */	stw r0, 0xc(r31)
/* 8028B45C 002870BC  81 9F 00 28 */	lwz r12, 0x28(r31)
/* 8028B460 002870C0  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B464 002870C4  41 82 00 14 */	beq lbl_8028B478
/* 8028B468 002870C8  7F E4 FB 78 */	mr r4, r31
/* 8028B46C 002870CC  38 60 FF FD */	li r3, -3
/* 8028B470 002870D0  7D 89 03 A6 */	mtctr r12
/* 8028B474 002870D4  4E 80 04 21 */	bctrl
lbl_8028B478:
/* 8028B478 002870D8  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028B47C 002870DC  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B480 002870E0  41 82 00 14 */	beq lbl_8028B494
/* 8028B484 002870E4  7F E4 FB 78 */	mr r4, r31
/* 8028B488 002870E8  38 60 00 00 */	li r3, 0
/* 8028B48C 002870EC  7D 89 03 A6 */	mtctr r12
/* 8028B490 002870F0  4E 80 04 21 */	bctrl
lbl_8028B494:
/* 8028B494 002870F4  4B FF F6 7D */	bl stateReady
/* 8028B498 002870F8  38 00 00 01 */	li r0, 1
/* 8028B49C 002870FC  48 00 00 08 */	b lbl_8028B4A4
lbl_8028B4A0:
/* 8028B4A0 00287100  38 00 00 00 */	li r0, 0
lbl_8028B4A4:
/* 8028B4A4 00287104  2C 00 00 00 */	cmpwi r0, 0
/* 8028B4A8 00287108  40 82 06 B4 */	bne lbl_8028BB5C
/* 8028B4AC 0028710C  80 0D AA 70 */	lwz r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028B4B0 00287110  28 00 00 02 */	cmplwi r0, 2
/* 8028B4B4 00287114  41 82 06 A8 */	beq lbl_8028BB5C
/* 8028B4B8 00287118  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B4BC 0028711C  38 00 00 07 */	li r0, 7
/* 8028B4C0 00287120  38 60 00 01 */	li r3, 1
/* 8028B4C4 00287124  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028B4C8 00287128  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028B4CC 0028712C  90 6D AA 70 */	stw r3, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028B4D0 00287130  2C 00 00 00 */	cmpwi r0, 0
/* 8028B4D4 00287134  40 82 06 88 */	bne lbl_8028BB5C
/* 8028B4D8 00287138  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028B4DC 0028713C  2C 00 00 00 */	cmpwi r0, 0
/* 8028B4E0 00287140  40 82 06 7C */	bne lbl_8028BB5C
/* 8028B4E4 00287144  3F E0 80 51 */	lis r31, lbl_80516A00@ha
/* 8028B4E8 00287148  90 6D AA 34 */	stw r3, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028B4EC 0028714C  38 7F 6A 00 */	addi r3, r31, lbl_80516A00@l
/* 8028B4F0 00287150  4B FD E2 35 */	bl OSCreateAlarm
/* 8028B4F4 00287154  4B FE 72 DD */	bl OSGetTick
/* 8028B4F8 00287158  3C A0 80 00 */	lis r5, 0x800000F8@ha
/* 8028B4FC 0028715C  3C 80 10 62 */	lis r4, 0x10624DD3@ha
/* 8028B500 00287160  80 05 00 F8 */	lwz r0, 0x800000F8@l(r5)
/* 8028B504 00287164  3D 20 80 29 */	lis r9, CoverAlarmHandler@ha
/* 8028B508 00287168  7C 66 1B 78 */	mr r6, r3
/* 8028B50C 0028716C  38 84 4D D3 */	addi r4, r4, 0x10624DD3@l
/* 8028B510 00287170  54 00 F0 BE */	srwi r0, r0, 2
/* 8028B514 00287174  38 7F 6A 00 */	addi r3, r31, 0x6a00
/* 8028B518 00287178  7C 04 00 16 */	mulhwu r0, r4, r0
/* 8028B51C 0028717C  39 29 AA EC */	addi r9, r9, CoverAlarmHandler@l
/* 8028B520 00287180  38 A0 00 00 */	li r5, 0
/* 8028B524 00287184  38 E0 00 00 */	li r7, 0
/* 8028B528 00287188  54 00 D1 BE */	srwi r0, r0, 6
/* 8028B52C 0028718C  1D 00 00 64 */	mulli r8, r0, 0x64
/* 8028B530 00287190  4B FD E4 C5 */	bl OSSetPeriodicAlarm
/* 8028B534 00287194  48 00 06 28 */	b lbl_8028BB5C
lbl_8028B538:
/* 8028B538 00287198  80 6D AA 84 */	lwz r3, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B53C 0028719C  28 03 00 01 */	cmplwi r3, 1
/* 8028B540 002871A0  41 82 00 24 */	beq lbl_8028B564
/* 8028B544 002871A4  28 03 00 04 */	cmplwi r3, 4
/* 8028B548 002871A8  41 82 00 1C */	beq lbl_8028B564
/* 8028B54C 002871AC  28 03 00 05 */	cmplwi r3, 5
/* 8028B550 002871B0  41 82 00 14 */	beq lbl_8028B564
/* 8028B554 002871B4  28 03 00 21 */	cmplwi r3, 0x21
/* 8028B558 002871B8  41 82 00 0C */	beq lbl_8028B564
/* 8028B55C 002871BC  28 03 00 0E */	cmplwi r3, 0xe
/* 8028B560 002871C0  40 82 00 0C */	bne lbl_8028B56C
lbl_8028B564:
/* 8028B564 002871C4  38 00 00 01 */	li r0, 1
/* 8028B568 002871C8  48 00 00 1C */	b lbl_8028B584
lbl_8028B56C:
/* 8028B56C 002871CC  80 0D 88 CC */	lwz r0, lbl_8063DB8C-_SDA_BASE_(r13)
/* 8028B570 002871D0  7C 03 00 40 */	cmplw r3, r0
/* 8028B574 002871D4  40 82 00 0C */	bne lbl_8028B580
/* 8028B578 002871D8  38 00 00 01 */	li r0, 1
/* 8028B57C 002871DC  48 00 00 08 */	b lbl_8028B584
lbl_8028B580:
/* 8028B580 002871E0  38 00 00 00 */	li r0, 0
lbl_8028B584:
/* 8028B584 002871E4  2C 00 00 00 */	cmpwi r0, 0
/* 8028B588 002871E8  41 82 00 2C */	beq lbl_8028B5B4
/* 8028B58C 002871EC  73 E0 00 09 */	andi. r0, r31, 9
/* 8028B590 002871F0  41 82 00 10 */	beq lbl_8028B5A0
/* 8028B594 002871F4  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B598 002871F8  80 83 00 1C */	lwz r4, 0x1c(r3)
/* 8028B59C 002871FC  48 00 00 08 */	b lbl_8028B5A4
lbl_8028B5A0:
/* 8028B5A0 00287200  38 80 00 00 */	li r4, 0
lbl_8028B5A4:
/* 8028B5A4 00287204  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B5A8 00287208  80 03 00 20 */	lwz r0, 0x20(r3)
/* 8028B5AC 0028720C  7C 00 22 14 */	add r0, r0, r4
/* 8028B5B0 00287210  90 03 00 20 */	stw r0, 0x20(r3)
lbl_8028B5B4:
/* 8028B5B4 00287214  80 0D AA 30 */	lwz r0, lbl_8063FCF0-_SDA_BASE_(r13)
/* 8028B5B8 00287218  2C 00 00 00 */	cmpwi r0, 0
/* 8028B5BC 0028721C  41 82 00 68 */	beq lbl_8028B624
/* 8028B5C0 00287220  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028B5C4 00287224  83 CD AA 90 */	lwz r30, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B5C8 00287228  38 80 00 00 */	li r4, 0
/* 8028B5CC 0028722C  38 00 00 0A */	li r0, 0xa
/* 8028B5D0 00287230  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028B5D4 00287234  90 8D AA 30 */	stw r4, lbl_8063FCF0-_SDA_BASE_(r13)
/* 8028B5D8 00287238  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028B5DC 0028723C  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B5E0 00287240  90 1E 00 0C */	stw r0, 0xc(r30)
/* 8028B5E4 00287244  81 9E 00 28 */	lwz r12, 0x28(r30)
/* 8028B5E8 00287248  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B5EC 0028724C  41 82 00 14 */	beq lbl_8028B600
/* 8028B5F0 00287250  7F C4 F3 78 */	mr r4, r30
/* 8028B5F4 00287254  38 60 FF FD */	li r3, -3
/* 8028B5F8 00287258  7D 89 03 A6 */	mtctr r12
/* 8028B5FC 0028725C  4E 80 04 21 */	bctrl
lbl_8028B600:
/* 8028B600 00287260  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028B604 00287264  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B608 00287268  41 82 00 14 */	beq lbl_8028B61C
/* 8028B60C 0028726C  7F C4 F3 78 */	mr r4, r30
/* 8028B610 00287270  38 60 00 00 */	li r3, 0
/* 8028B614 00287274  7D 89 03 A6 */	mtctr r12
/* 8028B618 00287278  4E 80 04 21 */	bctrl
lbl_8028B61C:
/* 8028B61C 0028727C  4B FF F4 F5 */	bl stateReady
/* 8028B620 00287280  48 00 05 3C */	b lbl_8028BB5C
lbl_8028B624:
/* 8028B624 00287284  57 E0 07 FF */	clrlwi. r0, r31, 0x1f
/* 8028B628 00287288  41 82 03 F0 */	beq lbl_8028BA18
/* 8028B62C 0028728C  3B E0 00 00 */	li r31, 0
/* 8028B630 00287290  93 ED AA 28 */	stw r31, lbl_8063FCE8-_SDA_BASE_(r13)
/* 8028B634 00287294  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B638 00287298  28 00 00 10 */	cmplwi r0, 0x10
/* 8028B63C 0028729C  40 82 00 50 */	bne lbl_8028B68C
/* 8028B640 002872A0  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B644 002872A4  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028B648 002872A8  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028B64C 002872AC  80 A4 00 10 */	lwz r5, 0x10(r4)
/* 8028B650 002872B0  7C 05 00 D0 */	neg r0, r5
/* 8028B654 002872B4  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B658 002872B8  7C 00 2B 78 */	or r0, r0, r5
/* 8028B65C 002872BC  54 03 0F FE */	srwi r3, r0, 0x1f
/* 8028B660 002872C0  38 03 00 01 */	addi r0, r3, 1
/* 8028B664 002872C4  90 0D AA 70 */	stw r0, lbl_8063FD30-_SDA_BASE_(r13)
/* 8028B668 002872C8  93 E4 00 0C */	stw r31, 0xc(r4)
/* 8028B66C 002872CC  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028B670 002872D0  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B674 002872D4  41 82 00 10 */	beq lbl_8028B684
/* 8028B678 002872D8  38 60 00 00 */	li r3, 0
/* 8028B67C 002872DC  7D 89 03 A6 */	mtctr r12
/* 8028B680 002872E0  4E 80 04 21 */	bctrl
lbl_8028B684:
/* 8028B684 002872E4  4B FF F4 8D */	bl stateReady
/* 8028B688 002872E8  48 00 04 D4 */	b lbl_8028BB5C
lbl_8028B68C:
/* 8028B68C 002872EC  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B690 002872F0  28 00 00 20 */	cmplwi r0, 0x20
/* 8028B694 002872F4  40 82 00 50 */	bne lbl_8028B6E4
/* 8028B698 002872F8  4B FE 71 41 */	bl __OSGetSystemTime
/* 8028B69C 002872FC  3C A0 80 51 */	lis r5, lbl_805169A0@ha
/* 8028B6A0 00287300  80 CD AA 90 */	lwz r6, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B6A4 00287304  38 A5 69 A0 */	addi r5, r5, lbl_805169A0@l
/* 8028B6A8 00287308  90 8D AA 6C */	stw r4, lbl_8063FD2C-_SDA_BASE_(r13)
/* 8028B6AC 0028730C  90 6D AA 68 */	stw r3, lbl_8063FD28-_SDA_BASE_(r13)
/* 8028B6B0 00287310  93 ED AA 74 */	stw r31, lbl_8063FD34-_SDA_BASE_(r13)
/* 8028B6B4 00287314  93 ED AA 24 */	stw r31, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028B6B8 00287318  90 AD AA 90 */	stw r5, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B6BC 0028731C  93 E6 00 0C */	stw r31, 0xc(r6)
/* 8028B6C0 00287320  81 86 00 28 */	lwz r12, 0x28(r6)
/* 8028B6C4 00287324  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B6C8 00287328  41 82 00 14 */	beq lbl_8028B6DC
/* 8028B6CC 0028732C  7C C4 33 78 */	mr r4, r6
/* 8028B6D0 00287330  38 60 00 00 */	li r3, 0
/* 8028B6D4 00287334  7D 89 03 A6 */	mtctr r12
/* 8028B6D8 00287338  4E 80 04 21 */	bctrl
lbl_8028B6DC:
/* 8028B6DC 0028733C  4B FF F4 35 */	bl stateReady
/* 8028B6E0 00287340  48 00 04 7C */	b lbl_8028BB5C
lbl_8028B6E4:
/* 8028B6E4 00287344  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028B6E8 00287348  2C 00 00 00 */	cmpwi r0, 0
/* 8028B6EC 0028734C  41 82 00 68 */	beq lbl_8028B754
/* 8028B6F0 00287350  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028B6F4 00287354  83 CD AA 90 */	lwz r30, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B6F8 00287358  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028B6FC 0028735C  93 ED AA 24 */	stw r31, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028B700 00287360  38 00 00 0A */	li r0, 0xa
/* 8028B704 00287364  93 ED AA 20 */	stw r31, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028B708 00287368  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B70C 0028736C  90 1E 00 0C */	stw r0, 0xc(r30)
/* 8028B710 00287370  81 9E 00 28 */	lwz r12, 0x28(r30)
/* 8028B714 00287374  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B718 00287378  41 82 00 14 */	beq lbl_8028B72C
/* 8028B71C 0028737C  7F C4 F3 78 */	mr r4, r30
/* 8028B720 00287380  38 60 FF FD */	li r3, -3
/* 8028B724 00287384  7D 89 03 A6 */	mtctr r12
/* 8028B728 00287388  4E 80 04 21 */	bctrl
lbl_8028B72C:
/* 8028B72C 0028738C  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028B730 00287390  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B734 00287394  41 82 00 14 */	beq lbl_8028B748
/* 8028B738 00287398  7F C4 F3 78 */	mr r4, r30
/* 8028B73C 0028739C  38 60 00 00 */	li r3, 0
/* 8028B740 002873A0  7D 89 03 A6 */	mtctr r12
/* 8028B744 002873A4  4E 80 04 21 */	bctrl
lbl_8028B748:
/* 8028B748 002873A8  4B FF F3 C9 */	bl stateReady
/* 8028B74C 002873AC  38 00 00 01 */	li r0, 1
/* 8028B750 002873B0  48 00 00 08 */	b lbl_8028B758
lbl_8028B754:
/* 8028B754 002873B4  38 00 00 00 */	li r0, 0
lbl_8028B758:
/* 8028B758 002873B8  2C 00 00 00 */	cmpwi r0, 0
/* 8028B75C 002873BC  40 82 04 00 */	bne lbl_8028BB5C
/* 8028B760 002873C0  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B764 002873C4  28 00 00 26 */	cmplwi r0, 0x26
/* 8028B768 002873C8  40 82 00 AC */	bne lbl_8028B814
/* 8028B76C 002873CC  48 00 30 99 */	bl DVDLowGetCoverRegister
/* 8028B770 002873D0  7C 7F 1B 78 */	mr r31, r3
/* 8028B774 002873D4  4B FE 70 65 */	bl __OSGetSystemTime
/* 8028B778 002873D8  3C C0 80 00 */	lis r6, 0x800000F8@ha
/* 8028B77C 002873DC  3C A0 10 62 */	lis r5, 0x10624DD3@ha
/* 8028B780 002873E0  80 C6 00 F8 */	lwz r6, 0x800000F8@l(r6)
/* 8028B784 002873E4  38 E5 4D D3 */	addi r7, r5, 0x10624DD3@l
/* 8028B788 002873E8  81 0D AA 68 */	lwz r8, lbl_8063FD28-_SDA_BASE_(r13)
/* 8028B78C 002873EC  38 00 00 00 */	li r0, 0
/* 8028B790 002873F0  54 C5 F0 BE */	srwi r5, r6, 2
/* 8028B794 002873F4  81 2D AA 6C */	lwz r9, lbl_8063FD2C-_SDA_BASE_(r13)
/* 8028B798 002873F8  7C C7 28 16 */	mulhwu r6, r7, r5
/* 8028B79C 002873FC  7C 89 20 10 */	subfc r4, r9, r4
/* 8028B7A0 00287400  6C 05 80 00 */	xoris r5, r0, 0x8000
/* 8028B7A4 00287404  7C 08 19 10 */	subfe r0, r8, r3
/* 8028B7A8 00287408  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8028B7AC 0028740C  54 C3 D1 BE */	srwi r3, r6, 6
/* 8028B7B0 00287410  1C 63 00 64 */	mulli r3, r3, 0x64
/* 8028B7B4 00287414  7C 63 20 10 */	subfc r3, r3, r4
/* 8028B7B8 00287418  7C A5 01 10 */	subfe r5, r5, r0
/* 8028B7BC 0028741C  7C A0 01 10 */	subfe r5, r0, r0
/* 8028B7C0 00287420  7C A5 00 D1 */	neg. r5, r5
/* 8028B7C4 00287424  41 82 00 0C */	beq lbl_8028B7D0
/* 8028B7C8 00287428  38 60 00 00 */	li r3, 0
/* 8028B7CC 0028742C  48 00 00 10 */	b lbl_8028B7DC
lbl_8028B7D0:
/* 8028B7D0 00287430  57 E0 07 FE */	clrlwi r0, r31, 0x1f
/* 8028B7D4 00287434  7C 60 00 D0 */	neg r3, r0
/* 8028B7D8 00287438  38 63 00 02 */	addi r3, r3, 2
lbl_8028B7DC:
/* 8028B7DC 0028743C  3C A0 80 51 */	lis r5, lbl_805169A0@ha
/* 8028B7E0 00287440  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B7E4 00287444  38 A5 69 A0 */	addi r5, r5, lbl_805169A0@l
/* 8028B7E8 00287448  38 00 00 00 */	li r0, 0
/* 8028B7EC 0028744C  90 AD AA 90 */	stw r5, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B7F0 00287450  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028B7F4 00287454  90 64 00 10 */	stw r3, 0x10(r4)
/* 8028B7F8 00287458  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028B7FC 0028745C  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B800 00287460  41 82 00 0C */	beq lbl_8028B80C
/* 8028B804 00287464  7D 89 03 A6 */	mtctr r12
/* 8028B808 00287468  4E 80 04 21 */	bctrl
lbl_8028B80C:
/* 8028B80C 0028746C  4B FF F3 05 */	bl stateReady
/* 8028B810 00287470  48 00 03 4C */	b lbl_8028BB5C
lbl_8028B814:
/* 8028B814 00287474  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B818 00287478  28 00 00 24 */	cmplwi r0, 0x24
/* 8028B81C 0028747C  40 82 00 64 */	bne lbl_8028B880
/* 8028B820 00287480  48 00 2F E5 */	bl DVDLowGetCoverRegister
/* 8028B824 00287484  54 60 F7 FF */	rlwinm. r0, r3, 0x1e, 0x1f, 0x1f
/* 8028B828 00287488  40 82 00 0C */	bne lbl_8028B834
/* 8028B82C 0028748C  54 60 07 FF */	clrlwi. r0, r3, 0x1f
/* 8028B830 00287490  41 82 00 0C */	beq lbl_8028B83C
lbl_8028B834:
/* 8028B834 00287494  38 60 00 00 */	li r3, 0
/* 8028B838 00287498  48 00 00 10 */	b lbl_8028B848
lbl_8028B83C:
/* 8028B83C 0028749C  80 0D AA 24 */	lwz r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028B840 002874A0  7C 00 00 34 */	cntlzw r0, r0
/* 8028B844 002874A4  54 03 D9 7E */	srwi r3, r0, 5
lbl_8028B848:
/* 8028B848 002874A8  3C A0 80 51 */	lis r5, lbl_805169A0@ha
/* 8028B84C 002874AC  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B850 002874B0  38 A5 69 A0 */	addi r5, r5, lbl_805169A0@l
/* 8028B854 002874B4  38 00 00 00 */	li r0, 0
/* 8028B858 002874B8  90 AD AA 90 */	stw r5, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B85C 002874BC  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028B860 002874C0  90 64 00 10 */	stw r3, 0x10(r4)
/* 8028B864 002874C4  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028B868 002874C8  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B86C 002874CC  41 82 00 0C */	beq lbl_8028B878
/* 8028B870 002874D0  7D 89 03 A6 */	mtctr r12
/* 8028B874 002874D4  4E 80 04 21 */	bctrl
lbl_8028B878:
/* 8028B878 002874D8  4B FF F2 99 */	bl stateReady
/* 8028B87C 002874DC  48 00 02 E0 */	b lbl_8028BB5C
lbl_8028B880:
/* 8028B880 002874E0  80 6D AA 84 */	lwz r3, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B884 002874E4  28 03 00 01 */	cmplwi r3, 1
/* 8028B888 002874E8  41 82 00 24 */	beq lbl_8028B8AC
/* 8028B88C 002874EC  28 03 00 04 */	cmplwi r3, 4
/* 8028B890 002874F0  41 82 00 1C */	beq lbl_8028B8AC
/* 8028B894 002874F4  28 03 00 05 */	cmplwi r3, 5
/* 8028B898 002874F8  41 82 00 14 */	beq lbl_8028B8AC
/* 8028B89C 002874FC  28 03 00 21 */	cmplwi r3, 0x21
/* 8028B8A0 00287500  41 82 00 0C */	beq lbl_8028B8AC
/* 8028B8A4 00287504  28 03 00 0E */	cmplwi r3, 0xe
/* 8028B8A8 00287508  40 82 00 0C */	bne lbl_8028B8B4
lbl_8028B8AC:
/* 8028B8AC 0028750C  38 00 00 01 */	li r0, 1
/* 8028B8B0 00287510  48 00 00 1C */	b lbl_8028B8CC
lbl_8028B8B4:
/* 8028B8B4 00287514  80 0D 88 CC */	lwz r0, lbl_8063DB8C-_SDA_BASE_(r13)
/* 8028B8B8 00287518  7C 03 00 40 */	cmplw r3, r0
/* 8028B8BC 0028751C  40 82 00 0C */	bne lbl_8028B8C8
/* 8028B8C0 00287520  38 00 00 01 */	li r0, 1
/* 8028B8C4 00287524  48 00 00 08 */	b lbl_8028B8CC
lbl_8028B8C8:
/* 8028B8C8 00287528  38 00 00 00 */	li r0, 0
lbl_8028B8CC:
/* 8028B8CC 0028752C  2C 00 00 00 */	cmpwi r0, 0
/* 8028B8D0 00287530  41 82 00 58 */	beq lbl_8028B928
/* 8028B8D4 00287534  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B8D8 00287538  80 83 00 20 */	lwz r4, 0x20(r3)
/* 8028B8DC 0028753C  80 03 00 14 */	lwz r0, 0x14(r3)
/* 8028B8E0 00287540  7C 04 00 40 */	cmplw r4, r0
/* 8028B8E4 00287544  41 82 00 0C */	beq lbl_8028B8F0
/* 8028B8E8 00287548  4B FF F5 51 */	bl stateBusy
/* 8028B8EC 0028754C  48 00 02 70 */	b lbl_8028BB5C
lbl_8028B8F0:
/* 8028B8F0 00287550  3C 80 80 51 */	lis r4, lbl_805169A0@ha
/* 8028B8F4 00287554  38 00 00 00 */	li r0, 0
/* 8028B8F8 00287558  38 84 69 A0 */	addi r4, r4, lbl_805169A0@l
/* 8028B8FC 0028755C  90 8D AA 90 */	stw r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B900 00287560  90 03 00 0C */	stw r0, 0xc(r3)
/* 8028B904 00287564  81 83 00 28 */	lwz r12, 0x28(r3)
/* 8028B908 00287568  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B90C 0028756C  41 82 00 14 */	beq lbl_8028B920
/* 8028B910 00287570  7C 64 1B 78 */	mr r4, r3
/* 8028B914 00287574  80 63 00 20 */	lwz r3, 0x20(r3)
/* 8028B918 00287578  7D 89 03 A6 */	mtctr r12
/* 8028B91C 0028757C  4E 80 04 21 */	bctrl
lbl_8028B920:
/* 8028B920 00287580  4B FF F1 F1 */	bl stateReady
/* 8028B924 00287584  48 00 02 38 */	b lbl_8028BB5C
lbl_8028B928:
/* 8028B928 00287588  80 6D AA 84 */	lwz r3, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B92C 0028758C  38 03 FF F7 */	addi r0, r3, -9
/* 8028B930 00287590  28 00 00 03 */	cmplwi r0, 3
/* 8028B934 00287594  41 81 00 0C */	bgt lbl_8028B940
/* 8028B938 00287598  38 00 00 01 */	li r0, 1
/* 8028B93C 0028759C  48 00 00 48 */	b lbl_8028B984
lbl_8028B940:
/* 8028B940 002875A0  3C 80 80 43 */	lis r4, 0x8043
/* 8028B944 002875A4  84 04 60 AC */	lwzu r0, 0x60ac(r4)
/* 8028B948 002875A8  7C 03 00 40 */	cmplw r3, r0
/* 8028B94C 002875AC  40 82 00 0C */	bne lbl_8028B958
/* 8028B950 002875B0  38 00 00 01 */	li r0, 1
/* 8028B954 002875B4  48 00 00 30 */	b lbl_8028B984
lbl_8028B958:
/* 8028B958 002875B8  80 04 00 04 */	lwz r0, 4(r4)
/* 8028B95C 002875BC  7C 03 00 40 */	cmplw r3, r0
/* 8028B960 002875C0  40 82 00 0C */	bne lbl_8028B96C
/* 8028B964 002875C4  38 00 00 01 */	li r0, 1
/* 8028B968 002875C8  48 00 00 1C */	b lbl_8028B984
lbl_8028B96C:
/* 8028B96C 002875CC  80 04 00 08 */	lwz r0, 8(r4)
/* 8028B970 002875D0  7C 03 00 40 */	cmplw r3, r0
/* 8028B974 002875D4  40 82 00 0C */	bne lbl_8028B980
/* 8028B978 002875D8  38 00 00 01 */	li r0, 1
/* 8028B97C 002875DC  48 00 00 08 */	b lbl_8028B984
lbl_8028B980:
/* 8028B980 002875E0  38 00 00 00 */	li r0, 0
lbl_8028B984:
/* 8028B984 002875E4  2C 00 00 00 */	cmpwi r0, 0
/* 8028B988 002875E8  41 82 00 58 */	beq lbl_8028B9E0
/* 8028B98C 002875EC  80 6D AA 84 */	lwz r3, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028B990 002875F0  38 03 FF F6 */	addi r0, r3, -10
/* 8028B994 002875F4  28 00 00 01 */	cmplwi r0, 1
/* 8028B998 002875F8  41 81 00 10 */	bgt lbl_8028B9A8
/* 8028B99C 002875FC  48 00 2F E1 */	bl DVDLowGetImmBufferReg
/* 8028B9A0 00287600  54 63 10 3A */	slwi r3, r3, 2
/* 8028B9A4 00287604  48 00 00 08 */	b lbl_8028B9AC
lbl_8028B9A8:
/* 8028B9A8 00287608  48 00 2F D5 */	bl DVDLowGetImmBufferReg
lbl_8028B9AC:
/* 8028B9AC 0028760C  3C A0 80 51 */	lis r5, lbl_805169A0@ha
/* 8028B9B0 00287610  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B9B4 00287614  38 A5 69 A0 */	addi r5, r5, lbl_805169A0@l
/* 8028B9B8 00287618  38 00 00 00 */	li r0, 0
/* 8028B9BC 0028761C  90 AD AA 90 */	stw r5, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B9C0 00287620  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028B9C4 00287624  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028B9C8 00287628  2C 0C 00 00 */	cmpwi r12, 0
/* 8028B9CC 0028762C  41 82 00 0C */	beq lbl_8028B9D8
/* 8028B9D0 00287630  7D 89 03 A6 */	mtctr r12
/* 8028B9D4 00287634  4E 80 04 21 */	bctrl
lbl_8028B9D8:
/* 8028B9D8 00287638  4B FF F1 39 */	bl stateReady
/* 8028B9DC 0028763C  48 00 01 80 */	b lbl_8028BB5C
lbl_8028B9E0:
/* 8028B9E0 00287640  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028B9E4 00287644  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B9E8 00287648  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028B9EC 0028764C  38 00 00 00 */	li r0, 0
/* 8028B9F0 00287650  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028B9F4 00287654  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028B9F8 00287658  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028B9FC 0028765C  2C 0C 00 00 */	cmpwi r12, 0
/* 8028BA00 00287660  41 82 00 10 */	beq lbl_8028BA10
/* 8028BA04 00287664  38 60 00 00 */	li r3, 0
/* 8028BA08 00287668  7D 89 03 A6 */	mtctr r12
/* 8028BA0C 0028766C  4E 80 04 21 */	bctrl
lbl_8028BA10:
/* 8028BA10 00287670  4B FF F1 01 */	bl stateReady
/* 8028BA14 00287674  48 00 01 48 */	b lbl_8028BB5C
lbl_8028BA18:
/* 8028BA18 00287678  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028BA1C 0028767C  28 00 00 0E */	cmplwi r0, 0xe
/* 8028BA20 00287680  40 82 00 1C */	bne lbl_8028BA3C
/* 8028BA24 00287684  3C 60 01 23 */	lis r3, 0x01234567@ha
/* 8028BA28 00287688  3C 80 80 29 */	lis r4, cbForStoreErrorCode1@ha
/* 8028BA2C 0028768C  38 63 45 67 */	addi r3, r3, 0x01234567@l
/* 8028BA30 00287690  38 84 87 34 */	addi r4, r4, cbForStoreErrorCode1@l
/* 8028BA34 00287694  48 00 14 15 */	bl __DVDStoreErrorCode
/* 8028BA38 00287698  48 00 01 24 */	b lbl_8028BB5C
lbl_8028BA3C:
/* 8028BA3C 0028769C  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028BA40 002876A0  28 00 00 01 */	cmplwi r0, 1
/* 8028BA44 002876A4  41 82 00 34 */	beq lbl_8028BA78
/* 8028BA48 002876A8  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028BA4C 002876AC  28 00 00 04 */	cmplwi r0, 4
/* 8028BA50 002876B0  41 82 00 28 */	beq lbl_8028BA78
/* 8028BA54 002876B4  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028BA58 002876B8  28 00 00 05 */	cmplwi r0, 5
/* 8028BA5C 002876BC  41 82 00 1C */	beq lbl_8028BA78
/* 8028BA60 002876C0  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028BA64 002876C4  28 00 00 21 */	cmplwi r0, 0x21
/* 8028BA68 002876C8  41 82 00 10 */	beq lbl_8028BA78
/* 8028BA6C 002876CC  80 0D AA 84 */	lwz r0, lbl_8063FD44-_SDA_BASE_(r13)
/* 8028BA70 002876D0  28 00 00 0E */	cmplwi r0, 0xe
/* 8028BA74 002876D4  40 82 00 CC */	bne lbl_8028BB40
lbl_8028BA78:
/* 8028BA78 002876D8  83 CD AA 90 */	lwz r30, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BA7C 002876DC  80 7E 00 20 */	lwz r3, 0x20(r30)
/* 8028BA80 002876E0  80 1E 00 14 */	lwz r0, 0x14(r30)
/* 8028BA84 002876E4  7C 03 00 40 */	cmplw r3, r0
/* 8028BA88 002876E8  40 82 00 B8 */	bne lbl_8028BB40
/* 8028BA8C 002876EC  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028BA90 002876F0  2C 00 00 00 */	cmpwi r0, 0
/* 8028BA94 002876F4  41 82 00 68 */	beq lbl_8028BAFC
/* 8028BA98 002876F8  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028BA9C 002876FC  38 80 00 00 */	li r4, 0
/* 8028BAA0 00287700  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028BAA4 00287704  90 8D AA 24 */	stw r4, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028BAA8 00287708  38 00 00 0A */	li r0, 0xa
/* 8028BAAC 0028770C  90 8D AA 20 */	stw r4, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028BAB0 00287710  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BAB4 00287714  90 1E 00 0C */	stw r0, 0xc(r30)
/* 8028BAB8 00287718  81 9E 00 28 */	lwz r12, 0x28(r30)
/* 8028BABC 0028771C  2C 0C 00 00 */	cmpwi r12, 0
/* 8028BAC0 00287720  41 82 00 14 */	beq lbl_8028BAD4
/* 8028BAC4 00287724  7F C4 F3 78 */	mr r4, r30
/* 8028BAC8 00287728  38 60 FF FD */	li r3, -3
/* 8028BACC 0028772C  7D 89 03 A6 */	mtctr r12
/* 8028BAD0 00287730  4E 80 04 21 */	bctrl
lbl_8028BAD4:
/* 8028BAD4 00287734  81 8D AA 80 */	lwz r12, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028BAD8 00287738  2C 0C 00 00 */	cmpwi r12, 0
/* 8028BADC 0028773C  41 82 00 14 */	beq lbl_8028BAF0
/* 8028BAE0 00287740  7F C4 F3 78 */	mr r4, r30
/* 8028BAE4 00287744  38 60 00 00 */	li r3, 0
/* 8028BAE8 00287748  7D 89 03 A6 */	mtctr r12
/* 8028BAEC 0028774C  4E 80 04 21 */	bctrl
lbl_8028BAF0:
/* 8028BAF0 00287750  4B FF F0 21 */	bl stateReady
/* 8028BAF4 00287754  38 00 00 01 */	li r0, 1
/* 8028BAF8 00287758  48 00 00 08 */	b lbl_8028BB00
lbl_8028BAFC:
/* 8028BAFC 0028775C  38 00 00 00 */	li r0, 0
lbl_8028BB00:
/* 8028BB00 00287760  2C 00 00 00 */	cmpwi r0, 0
/* 8028BB04 00287764  40 82 00 58 */	bne lbl_8028BB5C
/* 8028BB08 00287768  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028BB0C 0028776C  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BB10 00287770  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028BB14 00287774  38 00 00 00 */	li r0, 0
/* 8028BB18 00287778  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BB1C 0028777C  90 04 00 0C */	stw r0, 0xc(r4)
/* 8028BB20 00287780  81 84 00 28 */	lwz r12, 0x28(r4)
/* 8028BB24 00287784  2C 0C 00 00 */	cmpwi r12, 0
/* 8028BB28 00287788  41 82 00 10 */	beq lbl_8028BB38
/* 8028BB2C 0028778C  80 64 00 20 */	lwz r3, 0x20(r4)
/* 8028BB30 00287790  7D 89 03 A6 */	mtctr r12
/* 8028BB34 00287794  4E 80 04 21 */	bctrl
lbl_8028BB38:
/* 8028BB38 00287798  4B FF EF D9 */	bl stateReady
/* 8028BB3C 0028779C  48 00 00 20 */	b lbl_8028BB5C
lbl_8028BB40:
/* 8028BB40 002877A0  38 60 00 27 */	li r3, 0x27
/* 8028BB44 002877A4  38 80 00 00 */	li r4, 0
/* 8028BB48 002877A8  38 A0 00 00 */	li r5, 0
/* 8028BB4C 002877AC  4B FF C6 41 */	bl StampCommand
/* 8028BB50 002877B0  3C 60 80 29 */	lis r3, cbForStateGettingError@ha
/* 8028BB54 002877B4  38 63 89 3C */	addi r3, r3, cbForStateGettingError@l
/* 8028BB58 002877B8  48 00 23 7D */	bl DVDLowRequestError
lbl_8028BB5C:
/* 8028BB5C 002877BC  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028BB60 002877C0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028BB64 002877C4  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028BB68 002877C8  7C 08 03 A6 */	mtlr r0
/* 8028BB6C 002877CC  38 21 00 10 */	addi r1, r1, 0x10
/* 8028BB70 002877D0  4E 80 00 20 */	blr

.global DVDReadAbsAsyncPrio
DVDReadAbsAsyncPrio:
/* 8028BB74 002877D4  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028BB78 002877D8  7C 08 02 A6 */	mflr r0
/* 8028BB7C 002877DC  39 20 00 01 */	li r9, 1
/* 8028BB80 002877E0  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028BB84 002877E4  38 00 00 00 */	li r0, 0
/* 8028BB88 002877E8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028BB8C 002877EC  7D 1F 43 78 */	mr r31, r8
/* 8028BB90 002877F0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028BB94 002877F4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028BB98 002877F8  7C 7D 1B 78 */	mr r29, r3
/* 8028BB9C 002877FC  91 23 00 08 */	stw r9, 8(r3)
/* 8028BBA0 00287800  90 83 00 18 */	stw r4, 0x18(r3)
/* 8028BBA4 00287804  90 A3 00 14 */	stw r5, 0x14(r3)
/* 8028BBA8 00287808  90 C3 00 10 */	stw r6, 0x10(r3)
/* 8028BBAC 0028780C  90 03 00 20 */	stw r0, 0x20(r3)
/* 8028BBB0 00287810  90 E3 00 28 */	stw r7, 0x28(r3)
/* 8028BBB4 00287814  80 0D 88 BC */	lwz r0, lbl_8063DB7C-_SDA_BASE_(r13)
/* 8028BBB8 00287818  2C 00 00 00 */	cmpwi r0, 0
/* 8028BBBC 0028781C  41 82 00 38 */	beq lbl_8028BBF4
/* 8028BBC0 00287820  28 09 00 01 */	cmplwi r9, 1
/* 8028BBC4 00287824  41 82 00 24 */	beq lbl_8028BBE8
/* 8028BBC8 00287828  28 09 00 04 */	cmplwi r9, 4
/* 8028BBCC 0028782C  41 82 00 1C */	beq lbl_8028BBE8
/* 8028BBD0 00287830  28 09 00 05 */	cmplwi r9, 5
/* 8028BBD4 00287834  41 82 00 14 */	beq lbl_8028BBE8
/* 8028BBD8 00287838  28 09 00 21 */	cmplwi r9, 0x21
/* 8028BBDC 0028783C  41 82 00 0C */	beq lbl_8028BBE8
/* 8028BBE0 00287840  28 09 00 0E */	cmplwi r9, 0xe
/* 8028BBE4 00287844  40 82 00 10 */	bne lbl_8028BBF4
lbl_8028BBE8:
/* 8028BBE8 00287848  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8028BBEC 0028784C  80 9D 00 14 */	lwz r4, 0x14(r29)
/* 8028BBF0 00287850  4B FD EA 39 */	bl DCInvalidateRange
lbl_8028BBF4:
/* 8028BBF4 00287854  4B FE 2B 69 */	bl OSDisableInterrupts
/* 8028BBF8 00287858  38 00 00 02 */	li r0, 2
/* 8028BBFC 0028785C  7C 7E 1B 78 */	mr r30, r3
/* 8028BC00 00287860  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8028BC04 00287864  7F E3 FB 78 */	mr r3, r31
/* 8028BC08 00287868  7F A4 EB 78 */	mr r4, r29
/* 8028BC0C 0028786C  48 00 0D B9 */	bl __DVDPushWaitingQueue
/* 8028BC10 00287870  80 0D AA 90 */	lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BC14 00287874  7C 7F 1B 78 */	mr r31, r3
/* 8028BC18 00287878  2C 00 00 00 */	cmpwi r0, 0
/* 8028BC1C 0028787C  40 82 00 14 */	bne lbl_8028BC30
/* 8028BC20 00287880  80 0D AA 14 */	lwz r0, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028BC24 00287884  2C 00 00 00 */	cmpwi r0, 0
/* 8028BC28 00287888  40 82 00 08 */	bne lbl_8028BC30
/* 8028BC2C 0028788C  4B FF EE E5 */	bl stateReady
lbl_8028BC30:
/* 8028BC30 00287890  7F C3 F3 78 */	mr r3, r30
/* 8028BC34 00287894  4B FE 2B 51 */	bl OSRestoreInterrupts
/* 8028BC38 00287898  7F E3 FB 78 */	mr r3, r31
/* 8028BC3C 0028789C  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8028BC40 002878A0  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028BC44 002878A4  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028BC48 002878A8  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028BC4C 002878AC  7C 08 03 A6 */	mtlr r0
/* 8028BC50 002878B0  38 21 00 20 */	addi r1, r1, 0x20
/* 8028BC54 002878B4  4E 80 00 20 */	blr

.global DVDSeekAbsAsyncPrio
DVDSeekAbsAsyncPrio:
/* 8028BC58 002878B8  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028BC5C 002878BC  7C 08 02 A6 */	mflr r0
/* 8028BC60 002878C0  38 E0 00 02 */	li r7, 2
/* 8028BC64 002878C4  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028BC68 002878C8  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028BC6C 002878CC  7C DF 33 78 */	mr r31, r6
/* 8028BC70 002878D0  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028BC74 002878D4  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028BC78 002878D8  7C 7D 1B 78 */	mr r29, r3
/* 8028BC7C 002878DC  90 83 00 10 */	stw r4, 0x10(r3)
/* 8028BC80 002878E0  90 E3 00 08 */	stw r7, 8(r3)
/* 8028BC84 002878E4  90 A3 00 28 */	stw r5, 0x28(r3)
/* 8028BC88 002878E8  80 0D 88 BC */	lwz r0, lbl_8063DB7C-_SDA_BASE_(r13)
/* 8028BC8C 002878EC  2C 00 00 00 */	cmpwi r0, 0
/* 8028BC90 002878F0  41 82 00 38 */	beq lbl_8028BCC8
/* 8028BC94 002878F4  28 07 00 01 */	cmplwi r7, 1
/* 8028BC98 002878F8  41 82 00 24 */	beq lbl_8028BCBC
/* 8028BC9C 002878FC  28 07 00 04 */	cmplwi r7, 4
/* 8028BCA0 00287900  41 82 00 1C */	beq lbl_8028BCBC
/* 8028BCA4 00287904  28 07 00 05 */	cmplwi r7, 5
/* 8028BCA8 00287908  41 82 00 14 */	beq lbl_8028BCBC
/* 8028BCAC 0028790C  28 07 00 21 */	cmplwi r7, 0x21
/* 8028BCB0 00287910  41 82 00 0C */	beq lbl_8028BCBC
/* 8028BCB4 00287914  28 07 00 0E */	cmplwi r7, 0xe
/* 8028BCB8 00287918  40 82 00 10 */	bne lbl_8028BCC8
lbl_8028BCBC:
/* 8028BCBC 0028791C  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8028BCC0 00287920  80 9D 00 14 */	lwz r4, 0x14(r29)
/* 8028BCC4 00287924  4B FD E9 65 */	bl DCInvalidateRange
lbl_8028BCC8:
/* 8028BCC8 00287928  4B FE 2A 95 */	bl OSDisableInterrupts
/* 8028BCCC 0028792C  38 00 00 02 */	li r0, 2
/* 8028BCD0 00287930  7C 7E 1B 78 */	mr r30, r3
/* 8028BCD4 00287934  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8028BCD8 00287938  7F E3 FB 78 */	mr r3, r31
/* 8028BCDC 0028793C  7F A4 EB 78 */	mr r4, r29
/* 8028BCE0 00287940  48 00 0C E5 */	bl __DVDPushWaitingQueue
/* 8028BCE4 00287944  80 0D AA 90 */	lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BCE8 00287948  7C 7F 1B 78 */	mr r31, r3
/* 8028BCEC 0028794C  2C 00 00 00 */	cmpwi r0, 0
/* 8028BCF0 00287950  40 82 00 14 */	bne lbl_8028BD04
/* 8028BCF4 00287954  80 0D AA 14 */	lwz r0, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028BCF8 00287958  2C 00 00 00 */	cmpwi r0, 0
/* 8028BCFC 0028795C  40 82 00 08 */	bne lbl_8028BD04
/* 8028BD00 00287960  4B FF EE 11 */	bl stateReady
lbl_8028BD04:
/* 8028BD04 00287964  7F C3 F3 78 */	mr r3, r30
/* 8028BD08 00287968  4B FE 2A 7D */	bl OSRestoreInterrupts
/* 8028BD0C 0028796C  7F E3 FB 78 */	mr r3, r31
/* 8028BD10 00287970  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8028BD14 00287974  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028BD18 00287978  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028BD1C 0028797C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028BD20 00287980  7C 08 03 A6 */	mtlr r0
/* 8028BD24 00287984  38 21 00 20 */	addi r1, r1, 0x20
/* 8028BD28 00287988  4E 80 00 20 */	blr

.global DVDInquiryAsync
DVDInquiryAsync:
/* 8028BD2C 0028798C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028BD30 00287990  7C 08 02 A6 */	mflr r0
/* 8028BD34 00287994  38 E0 00 0E */	li r7, 0xe
/* 8028BD38 00287998  38 C0 00 20 */	li r6, 0x20
/* 8028BD3C 0028799C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028BD40 002879A0  38 00 00 00 */	li r0, 0
/* 8028BD44 002879A4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028BD48 002879A8  7C 7F 1B 78 */	mr r31, r3
/* 8028BD4C 002879AC  93 C1 00 08 */	stw r30, 8(r1)
/* 8028BD50 002879B0  90 E3 00 08 */	stw r7, 8(r3)
/* 8028BD54 002879B4  90 83 00 18 */	stw r4, 0x18(r3)
/* 8028BD58 002879B8  90 C3 00 14 */	stw r6, 0x14(r3)
/* 8028BD5C 002879BC  90 03 00 20 */	stw r0, 0x20(r3)
/* 8028BD60 002879C0  90 A3 00 28 */	stw r5, 0x28(r3)
/* 8028BD64 002879C4  80 0D 88 BC */	lwz r0, lbl_8063DB7C-_SDA_BASE_(r13)
/* 8028BD68 002879C8  2C 00 00 00 */	cmpwi r0, 0
/* 8028BD6C 002879CC  41 82 00 38 */	beq lbl_8028BDA4
/* 8028BD70 002879D0  28 07 00 01 */	cmplwi r7, 1
/* 8028BD74 002879D4  41 82 00 24 */	beq lbl_8028BD98
/* 8028BD78 002879D8  28 07 00 04 */	cmplwi r7, 4
/* 8028BD7C 002879DC  41 82 00 1C */	beq lbl_8028BD98
/* 8028BD80 002879E0  28 07 00 05 */	cmplwi r7, 5
/* 8028BD84 002879E4  41 82 00 14 */	beq lbl_8028BD98
/* 8028BD88 002879E8  28 07 00 21 */	cmplwi r7, 0x21
/* 8028BD8C 002879EC  41 82 00 0C */	beq lbl_8028BD98
/* 8028BD90 002879F0  28 07 00 0E */	cmplwi r7, 0xe
/* 8028BD94 002879F4  40 82 00 10 */	bne lbl_8028BDA4
lbl_8028BD98:
/* 8028BD98 002879F8  80 63 00 18 */	lwz r3, 0x18(r3)
/* 8028BD9C 002879FC  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8028BDA0 00287A00  4B FD E8 89 */	bl DCInvalidateRange
lbl_8028BDA4:
/* 8028BDA4 00287A04  4B FE 29 B9 */	bl OSDisableInterrupts
/* 8028BDA8 00287A08  38 00 00 02 */	li r0, 2
/* 8028BDAC 00287A0C  7C 7E 1B 78 */	mr r30, r3
/* 8028BDB0 00287A10  90 1F 00 0C */	stw r0, 0xc(r31)
/* 8028BDB4 00287A14  7F E4 FB 78 */	mr r4, r31
/* 8028BDB8 00287A18  38 60 00 02 */	li r3, 2
/* 8028BDBC 00287A1C  48 00 0C 09 */	bl __DVDPushWaitingQueue
/* 8028BDC0 00287A20  80 0D AA 90 */	lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BDC4 00287A24  7C 7F 1B 78 */	mr r31, r3
/* 8028BDC8 00287A28  2C 00 00 00 */	cmpwi r0, 0
/* 8028BDCC 00287A2C  40 82 00 14 */	bne lbl_8028BDE0
/* 8028BDD0 00287A30  80 0D AA 14 */	lwz r0, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028BDD4 00287A34  2C 00 00 00 */	cmpwi r0, 0
/* 8028BDD8 00287A38  40 82 00 08 */	bne lbl_8028BDE0
/* 8028BDDC 00287A3C  4B FF ED 35 */	bl stateReady
lbl_8028BDE0:
/* 8028BDE0 00287A40  7F C3 F3 78 */	mr r3, r30
/* 8028BDE4 00287A44  4B FE 29 A1 */	bl OSRestoreInterrupts
/* 8028BDE8 00287A48  7F E3 FB 78 */	mr r3, r31
/* 8028BDEC 00287A4C  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028BDF0 00287A50  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028BDF4 00287A54  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028BDF8 00287A58  7C 08 03 A6 */	mtlr r0
/* 8028BDFC 00287A5C  38 21 00 10 */	addi r1, r1, 0x10
/* 8028BE00 00287A60  4E 80 00 20 */	blr

.global DVDGetCommandBlockStatus
DVDGetCommandBlockStatus:
/* 8028BE04 00287A64  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028BE08 00287A68  7C 08 02 A6 */	mflr r0
/* 8028BE0C 00287A6C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028BE10 00287A70  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028BE14 00287A74  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028BE18 00287A78  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028BE1C 00287A7C  7C 7D 1B 78 */	mr r29, r3
/* 8028BE20 00287A80  4B FE 29 3D */	bl OSDisableInterrupts
/* 8028BE24 00287A84  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8028BE28 00287A88  7C 7E 1B 78 */	mr r30, r3
/* 8028BE2C 00287A8C  2C 00 00 03 */	cmpwi r0, 3
/* 8028BE30 00287A90  40 82 00 0C */	bne lbl_8028BE3C
/* 8028BE34 00287A94  3B E0 00 01 */	li r31, 1
/* 8028BE38 00287A98  48 00 00 6C */	b lbl_8028BEA4
lbl_8028BE3C:
/* 8028BE3C 00287A9C  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8028BE40 00287AA0  2C 00 00 05 */	cmpwi r0, 5
/* 8028BE44 00287AA4  40 82 00 0C */	bne lbl_8028BE50
/* 8028BE48 00287AA8  3B E0 00 04 */	li r31, 4
/* 8028BE4C 00287AAC  48 00 00 58 */	b lbl_8028BEA4
lbl_8028BE50:
/* 8028BE50 00287AB0  3F E0 80 52 */	lis r31, lbl_8051B4F0@ha
/* 8028BE54 00287AB4  80 0D AA 90 */	lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BE58 00287AB8  3B FF B4 F0 */	addi r31, r31, lbl_8051B4F0@l
/* 8028BE5C 00287ABC  7C 00 F8 40 */	cmplw r0, r31
/* 8028BE60 00287AC0  40 82 00 40 */	bne lbl_8028BEA0
/* 8028BE64 00287AC4  48 00 0C C1 */	bl __DVDGetNextWaitingQueue
/* 8028BE68 00287AC8  2C 03 00 00 */	cmpwi r3, 0
/* 8028BE6C 00287ACC  41 82 00 1C */	beq lbl_8028BE88
/* 8028BE70 00287AD0  7C 1D 18 40 */	cmplw r29, r3
/* 8028BE74 00287AD4  40 82 00 0C */	bne lbl_8028BE80
/* 8028BE78 00287AD8  3B E0 00 01 */	li r31, 1
/* 8028BE7C 00287ADC  48 00 00 28 */	b lbl_8028BEA4
lbl_8028BE80:
/* 8028BE80 00287AE0  83 FD 00 0C */	lwz r31, 0xc(r29)
/* 8028BE84 00287AE4  48 00 00 20 */	b lbl_8028BEA4
lbl_8028BE88:
/* 8028BE88 00287AE8  7C 1D F8 40 */	cmplw r29, r31
/* 8028BE8C 00287AEC  40 82 00 0C */	bne lbl_8028BE98
/* 8028BE90 00287AF0  3B E0 00 00 */	li r31, 0
/* 8028BE94 00287AF4  48 00 00 10 */	b lbl_8028BEA4
lbl_8028BE98:
/* 8028BE98 00287AF8  83 FD 00 0C */	lwz r31, 0xc(r29)
/* 8028BE9C 00287AFC  48 00 00 08 */	b lbl_8028BEA4
lbl_8028BEA0:
/* 8028BEA0 00287B00  83 FD 00 0C */	lwz r31, 0xc(r29)
lbl_8028BEA4:
/* 8028BEA4 00287B04  7F C3 F3 78 */	mr r3, r30
/* 8028BEA8 00287B08  4B FE 28 DD */	bl OSRestoreInterrupts
/* 8028BEAC 00287B0C  7F E3 FB 78 */	mr r3, r31
/* 8028BEB0 00287B10  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8028BEB4 00287B14  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028BEB8 00287B18  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028BEBC 00287B1C  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028BEC0 00287B20  7C 08 03 A6 */	mtlr r0
/* 8028BEC4 00287B24  38 21 00 20 */	addi r1, r1, 0x20
/* 8028BEC8 00287B28  4E 80 00 20 */	blr

.global DVDGetDriveStatus
DVDGetDriveStatus:
/* 8028BECC 00287B2C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028BED0 00287B30  7C 08 02 A6 */	mflr r0
/* 8028BED4 00287B34  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028BED8 00287B38  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028BEDC 00287B3C  93 C1 00 08 */	stw r30, 8(r1)
/* 8028BEE0 00287B40  4B FE 28 7D */	bl OSDisableInterrupts
/* 8028BEE4 00287B44  80 0D AA 1C */	lwz r0, lbl_8063FCDC-_SDA_BASE_(r13)
/* 8028BEE8 00287B48  7C 7F 1B 78 */	mr r31, r3
/* 8028BEEC 00287B4C  2C 00 00 00 */	cmpwi r0, 0
/* 8028BEF0 00287B50  41 82 00 0C */	beq lbl_8028BEFC
/* 8028BEF4 00287B54  3B C0 FF FF */	li r30, -1
/* 8028BEF8 00287B58  48 00 00 4C */	b lbl_8028BF44
lbl_8028BEFC:
/* 8028BEFC 00287B5C  80 0D AA 18 */	lwz r0, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028BF00 00287B60  2C 00 00 00 */	cmpwi r0, 0
/* 8028BF04 00287B64  41 82 00 0C */	beq lbl_8028BF10
/* 8028BF08 00287B68  3B C0 00 08 */	li r30, 8
/* 8028BF0C 00287B6C  48 00 00 38 */	b lbl_8028BF44
lbl_8028BF10:
/* 8028BF10 00287B70  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028BF14 00287B74  2C 03 00 00 */	cmpwi r3, 0
/* 8028BF18 00287B78  40 82 00 0C */	bne lbl_8028BF24
/* 8028BF1C 00287B7C  3B C0 00 00 */	li r30, 0
/* 8028BF20 00287B80  48 00 00 24 */	b lbl_8028BF44
lbl_8028BF24:
/* 8028BF24 00287B84  3C 80 80 51 */	lis r4, lbl_805169A0@ha
/* 8028BF28 00287B88  38 84 69 A0 */	addi r4, r4, lbl_805169A0@l
/* 8028BF2C 00287B8C  7C 03 20 40 */	cmplw r3, r4
/* 8028BF30 00287B90  40 82 00 0C */	bne lbl_8028BF3C
/* 8028BF34 00287B94  38 60 00 00 */	li r3, 0
/* 8028BF38 00287B98  48 00 00 08 */	b lbl_8028BF40
lbl_8028BF3C:
/* 8028BF3C 00287B9C  4B FF FE C9 */	bl DVDGetCommandBlockStatus
lbl_8028BF40:
/* 8028BF40 00287BA0  7C 7E 1B 78 */	mr r30, r3
lbl_8028BF44:
/* 8028BF44 00287BA4  7F E3 FB 78 */	mr r3, r31
/* 8028BF48 00287BA8  4B FE 28 3D */	bl OSRestoreInterrupts
/* 8028BF4C 00287BAC  7F C3 F3 78 */	mr r3, r30
/* 8028BF50 00287BB0  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028BF54 00287BB4  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028BF58 00287BB8  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028BF5C 00287BBC  7C 08 03 A6 */	mtlr r0
/* 8028BF60 00287BC0  38 21 00 10 */	addi r1, r1, 0x10
/* 8028BF64 00287BC4  4E 80 00 20 */	blr

.global DVDSetAutoInvalidation
DVDSetAutoInvalidation:
/* 8028BF68 00287BC8  7C 60 1B 78 */	mr r0, r3
/* 8028BF6C 00287BCC  80 6D 88 BC */	lwz r3, lbl_8063DB7C-_SDA_BASE_(r13)
/* 8028BF70 00287BD0  90 0D 88 BC */	stw r0, lbl_8063DB7C-_SDA_BASE_(r13)
/* 8028BF74 00287BD4  4E 80 00 20 */	blr

.global DVDResume
DVDResume:
/* 8028BF78 00287BD8  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028BF7C 00287BDC  7C 08 02 A6 */	mflr r0
/* 8028BF80 00287BE0  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028BF84 00287BE4  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028BF88 00287BE8  4B FE 27 D5 */	bl OSDisableInterrupts
/* 8028BF8C 00287BEC  38 80 00 00 */	li r4, 0
/* 8028BF90 00287BF0  7C 7F 1B 78 */	mr r31, r3
/* 8028BF94 00287BF4  90 8D AA 14 */	stw r4, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028BF98 00287BF8  80 0D AA 18 */	lwz r0, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028BF9C 00287BFC  2C 00 00 00 */	cmpwi r0, 0
/* 8028BFA0 00287C00  41 82 00 0C */	beq lbl_8028BFAC
/* 8028BFA4 00287C04  90 8D AA 18 */	stw r4, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028BFA8 00287C08  4B FF EB 69 */	bl stateReady
lbl_8028BFAC:
/* 8028BFAC 00287C0C  7F E3 FB 78 */	mr r3, r31
/* 8028BFB0 00287C10  4B FE 27 D5 */	bl OSRestoreInterrupts
/* 8028BFB4 00287C14  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028BFB8 00287C18  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028BFBC 00287C1C  7C 08 03 A6 */	mtlr r0
/* 8028BFC0 00287C20  38 21 00 10 */	addi r1, r1, 0x10
/* 8028BFC4 00287C24  4E 80 00 20 */	blr

.global DVDCancelAsync
DVDCancelAsync:
/* 8028BFC8 00287C28  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028BFCC 00287C2C  7C 08 02 A6 */	mflr r0
/* 8028BFD0 00287C30  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028BFD4 00287C34  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028BFD8 00287C38  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028BFDC 00287C3C  7C 9E 23 78 */	mr r30, r4
/* 8028BFE0 00287C40  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028BFE4 00287C44  7C 7D 1B 78 */	mr r29, r3
/* 8028BFE8 00287C48  4B FE 27 75 */	bl OSDisableInterrupts
/* 8028BFEC 00287C4C  80 9D 00 0C */	lwz r4, 0xc(r29)
/* 8028BFF0 00287C50  7C 7F 1B 78 */	mr r31, r3
/* 8028BFF4 00287C54  38 04 00 01 */	addi r0, r4, 1
/* 8028BFF8 00287C58  28 00 00 0D */	cmplwi r0, 0xd
/* 8028BFFC 00287C5C  41 81 02 F8 */	bgt lbl_8028C2F4
/* 8028C000 00287C60  3C 80 80 43 */	lis r4, lbl_80436150@ha
/* 8028C004 00287C64  54 00 10 3A */	slwi r0, r0, 2
/* 8028C008 00287C68  38 84 61 50 */	addi r4, r4, lbl_80436150@l
/* 8028C00C 00287C6C  7C 84 00 2E */	lwzx r4, r4, r0
/* 8028C010 00287C70  7C 89 03 A6 */	mtctr r4
/* 8028C014 00287C74  4E 80 04 20 */	bctr
/* 8028C018 00287C78  2C 1E 00 00 */	cmpwi r30, 0
/* 8028C01C 00287C7C  41 82 02 D8 */	beq lbl_8028C2F4
/* 8028C020 00287C80  7F CC F3 78 */	mr r12, r30
/* 8028C024 00287C84  7F A4 EB 78 */	mr r4, r29
/* 8028C028 00287C88  38 60 00 00 */	li r3, 0
/* 8028C02C 00287C8C  7D 89 03 A6 */	mtctr r12
/* 8028C030 00287C90  4E 80 04 21 */	bctrl
/* 8028C034 00287C94  48 00 02 C0 */	b lbl_8028C2F4
/* 8028C038 00287C98  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C03C 00287C9C  2C 00 00 00 */	cmpwi r0, 0
/* 8028C040 00287CA0  41 82 00 10 */	beq lbl_8028C050
/* 8028C044 00287CA4  4B FE 27 41 */	bl OSRestoreInterrupts
/* 8028C048 00287CA8  38 60 00 00 */	li r3, 0
/* 8028C04C 00287CAC  48 00 02 B4 */	b lbl_8028C300
lbl_8028C050:
/* 8028C050 00287CB0  38 00 00 01 */	li r0, 1
/* 8028C054 00287CB4  93 CD AA 80 */	stw r30, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028C058 00287CB8  90 0D AA 20 */	stw r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C05C 00287CBC  80 1D 00 08 */	lwz r0, 8(r29)
/* 8028C060 00287CC0  28 00 00 04 */	cmplwi r0, 4
/* 8028C064 00287CC4  41 82 00 1C */	beq lbl_8028C080
/* 8028C068 00287CC8  28 00 00 21 */	cmplwi r0, 0x21
/* 8028C06C 00287CCC  41 82 00 14 */	beq lbl_8028C080
/* 8028C070 00287CD0  28 00 00 22 */	cmplwi r0, 0x22
/* 8028C074 00287CD4  41 82 00 0C */	beq lbl_8028C080
/* 8028C078 00287CD8  28 00 00 01 */	cmplwi r0, 1
/* 8028C07C 00287CDC  40 82 02 78 */	bne lbl_8028C2F4
lbl_8028C080:
/* 8028C080 00287CE0  38 00 00 01 */	li r0, 1
/* 8028C084 00287CE4  90 0D AA 30 */	stw r0, lbl_8063FCF0-_SDA_BASE_(r13)
/* 8028C088 00287CE8  48 00 02 6C */	b lbl_8028C2F4
/* 8028C08C 00287CEC  7F A3 EB 78 */	mr r3, r29
/* 8028C090 00287CF0  48 00 0A F5 */	bl __DVDDequeueWaitingQueue
/* 8028C094 00287CF4  81 9D 00 28 */	lwz r12, 0x28(r29)
/* 8028C098 00287CF8  38 00 00 0A */	li r0, 0xa
/* 8028C09C 00287CFC  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8028C0A0 00287D00  2C 0C 00 00 */	cmpwi r12, 0
/* 8028C0A4 00287D04  41 82 00 14 */	beq lbl_8028C0B8
/* 8028C0A8 00287D08  7F A4 EB 78 */	mr r4, r29
/* 8028C0AC 00287D0C  38 60 FF FD */	li r3, -3
/* 8028C0B0 00287D10  7D 89 03 A6 */	mtctr r12
/* 8028C0B4 00287D14  4E 80 04 21 */	bctrl
lbl_8028C0B8:
/* 8028C0B8 00287D18  2C 1E 00 00 */	cmpwi r30, 0
/* 8028C0BC 00287D1C  41 82 02 38 */	beq lbl_8028C2F4
/* 8028C0C0 00287D20  7F CC F3 78 */	mr r12, r30
/* 8028C0C4 00287D24  7F A4 EB 78 */	mr r4, r29
/* 8028C0C8 00287D28  38 60 00 00 */	li r3, 0
/* 8028C0CC 00287D2C  7D 89 03 A6 */	mtctr r12
/* 8028C0D0 00287D30  4E 80 04 21 */	bctrl
/* 8028C0D4 00287D34  48 00 02 20 */	b lbl_8028C2F4
/* 8028C0D8 00287D38  80 1D 00 08 */	lwz r0, 8(r29)
/* 8028C0DC 00287D3C  28 00 00 25 */	cmplwi r0, 0x25
/* 8028C0E0 00287D40  41 81 00 9C */	bgt lbl_8028C17C
/* 8028C0E4 00287D44  3C 60 80 43 */	lis r3, lbl_804360B8@ha
/* 8028C0E8 00287D48  54 00 10 3A */	slwi r0, r0, 2
/* 8028C0EC 00287D4C  38 63 60 B8 */	addi r3, r3, lbl_804360B8@l
/* 8028C0F0 00287D50  7C 63 00 2E */	lwzx r3, r3, r0
/* 8028C0F4 00287D54  7C 69 03 A6 */	mtctr r3
/* 8028C0F8 00287D58  4E 80 04 20 */	bctr
/* 8028C0FC 00287D5C  2C 1E 00 00 */	cmpwi r30, 0
/* 8028C100 00287D60  41 82 01 F4 */	beq lbl_8028C2F4
/* 8028C104 00287D64  7F CC F3 78 */	mr r12, r30
/* 8028C108 00287D68  7F A4 EB 78 */	mr r4, r29
/* 8028C10C 00287D6C  38 60 00 00 */	li r3, 0
/* 8028C110 00287D70  7D 89 03 A6 */	mtctr r12
/* 8028C114 00287D74  4E 80 04 21 */	bctrl
/* 8028C118 00287D78  48 00 01 DC */	b lbl_8028C2F4
/* 8028C11C 00287D7C  80 0D A7 68 */	lwz r0, lbl_8063FA28-_SDA_BASE_(r13)
/* 8028C120 00287D80  2C 00 00 00 */	cmpwi r0, 0
/* 8028C124 00287D84  41 82 00 58 */	beq lbl_8028C17C
/* 8028C128 00287D88  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028C12C 00287D8C  38 00 00 0A */	li r0, 0xa
/* 8028C130 00287D90  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028C134 00287D94  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C138 00287D98  81 9D 00 28 */	lwz r12, 0x28(r29)
/* 8028C13C 00287D9C  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8028C140 00287DA0  2C 0C 00 00 */	cmpwi r12, 0
/* 8028C144 00287DA4  41 82 00 14 */	beq lbl_8028C158
/* 8028C148 00287DA8  7F A4 EB 78 */	mr r4, r29
/* 8028C14C 00287DAC  38 60 FF FD */	li r3, -3
/* 8028C150 00287DB0  7D 89 03 A6 */	mtctr r12
/* 8028C154 00287DB4  4E 80 04 21 */	bctrl
lbl_8028C158:
/* 8028C158 00287DB8  2C 1E 00 00 */	cmpwi r30, 0
/* 8028C15C 00287DBC  41 82 00 18 */	beq lbl_8028C174
/* 8028C160 00287DC0  7F CC F3 78 */	mr r12, r30
/* 8028C164 00287DC4  7F A4 EB 78 */	mr r4, r29
/* 8028C168 00287DC8  38 60 00 00 */	li r3, 0
/* 8028C16C 00287DCC  7D 89 03 A6 */	mtctr r12
/* 8028C170 00287DD0  4E 80 04 21 */	bctrl
lbl_8028C174:
/* 8028C174 00287DD4  4B FF E9 9D */	bl stateReady
/* 8028C178 00287DD8  48 00 01 7C */	b lbl_8028C2F4
lbl_8028C17C:
/* 8028C17C 00287DDC  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C180 00287DE0  2C 00 00 00 */	cmpwi r0, 0
/* 8028C184 00287DE4  41 82 00 14 */	beq lbl_8028C198
/* 8028C188 00287DE8  7F E3 FB 78 */	mr r3, r31
/* 8028C18C 00287DEC  4B FE 25 F9 */	bl OSRestoreInterrupts
/* 8028C190 00287DF0  38 60 00 00 */	li r3, 0
/* 8028C194 00287DF4  48 00 01 6C */	b lbl_8028C300
lbl_8028C198:
/* 8028C198 00287DF8  38 00 00 01 */	li r0, 1
/* 8028C19C 00287DFC  93 CD AA 80 */	stw r30, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028C1A0 00287E00  90 0D AA 20 */	stw r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C1A4 00287E04  48 00 01 50 */	b lbl_8028C2F4
/* 8028C1A8 00287E08  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028C1AC 00287E0C  2C 00 00 00 */	cmpwi r0, 0
/* 8028C1B0 00287E10  40 82 00 1C */	bne lbl_8028C1CC
/* 8028C1B4 00287E14  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028C1B8 00287E18  2C 00 00 00 */	cmpwi r0, 0
/* 8028C1BC 00287E1C  40 82 00 10 */	bne lbl_8028C1CC
/* 8028C1C0 00287E20  4B FE 25 C5 */	bl OSRestoreInterrupts
/* 8028C1C4 00287E24  38 60 00 00 */	li r3, 0
/* 8028C1C8 00287E28  48 00 01 38 */	b lbl_8028C300
lbl_8028C1CC:
/* 8028C1CC 00287E2C  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028C1D0 00287E30  2C 00 00 00 */	cmpwi r0, 0
/* 8028C1D4 00287E34  41 82 00 18 */	beq lbl_8028C1EC
/* 8028C1D8 00287E38  3C 60 80 51 */	lis r3, lbl_80516A00@ha
/* 8028C1DC 00287E3C  38 63 6A 00 */	addi r3, r3, lbl_80516A00@l
/* 8028C1E0 00287E40  4B FD D8 99 */	bl OSCancelAlarm
/* 8028C1E4 00287E44  38 00 00 00 */	li r0, 0
/* 8028C1E8 00287E48  90 0D AA 34 */	stw r0, lbl_8063FCF4-_SDA_BASE_(r13)
lbl_8028C1EC:
/* 8028C1EC 00287E4C  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8028C1F0 00287E50  2C 00 00 04 */	cmpwi r0, 4
/* 8028C1F4 00287E54  40 82 00 0C */	bne lbl_8028C200
/* 8028C1F8 00287E58  38 00 00 03 */	li r0, 3
/* 8028C1FC 00287E5C  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
lbl_8028C200:
/* 8028C200 00287E60  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8028C204 00287E64  2C 00 00 05 */	cmpwi r0, 5
/* 8028C208 00287E68  40 82 00 0C */	bne lbl_8028C214
/* 8028C20C 00287E6C  38 00 00 04 */	li r0, 4
/* 8028C210 00287E70  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
lbl_8028C214:
/* 8028C214 00287E74  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8028C218 00287E78  2C 00 00 06 */	cmpwi r0, 6
/* 8028C21C 00287E7C  40 82 00 0C */	bne lbl_8028C228
/* 8028C220 00287E80  38 00 00 01 */	li r0, 1
/* 8028C224 00287E84  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
lbl_8028C228:
/* 8028C228 00287E88  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8028C22C 00287E8C  2C 00 00 0B */	cmpwi r0, 0xb
/* 8028C230 00287E90  40 82 00 0C */	bne lbl_8028C23C
/* 8028C234 00287E94  38 00 00 02 */	li r0, 2
/* 8028C238 00287E98  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
lbl_8028C23C:
/* 8028C23C 00287E9C  80 1D 00 0C */	lwz r0, 0xc(r29)
/* 8028C240 00287EA0  2C 00 00 07 */	cmpwi r0, 7
/* 8028C244 00287EA4  40 82 00 0C */	bne lbl_8028C250
/* 8028C248 00287EA8  38 00 00 07 */	li r0, 7
/* 8028C24C 00287EAC  90 0D AA 24 */	stw r0, lbl_8063FCE4-_SDA_BASE_(r13)
lbl_8028C250:
/* 8028C250 00287EB0  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028C254 00287EB4  38 00 00 0A */	li r0, 0xa
/* 8028C258 00287EB8  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028C25C 00287EBC  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C260 00287EC0  81 9D 00 28 */	lwz r12, 0x28(r29)
/* 8028C264 00287EC4  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8028C268 00287EC8  2C 0C 00 00 */	cmpwi r12, 0
/* 8028C26C 00287ECC  41 82 00 14 */	beq lbl_8028C280
/* 8028C270 00287ED0  7F A4 EB 78 */	mr r4, r29
/* 8028C274 00287ED4  38 60 FF FD */	li r3, -3
/* 8028C278 00287ED8  7D 89 03 A6 */	mtctr r12
/* 8028C27C 00287EDC  4E 80 04 21 */	bctrl
lbl_8028C280:
/* 8028C280 00287EE0  2C 1E 00 00 */	cmpwi r30, 0
/* 8028C284 00287EE4  41 82 00 18 */	beq lbl_8028C29C
/* 8028C288 00287EE8  7F CC F3 78 */	mr r12, r30
/* 8028C28C 00287EEC  7F A4 EB 78 */	mr r4, r29
/* 8028C290 00287EF0  38 60 00 00 */	li r3, 0
/* 8028C294 00287EF4  7D 89 03 A6 */	mtctr r12
/* 8028C298 00287EF8  4E 80 04 21 */	bctrl
lbl_8028C29C:
/* 8028C29C 00287EFC  4B FF E8 75 */	bl stateReady
/* 8028C2A0 00287F00  48 00 00 54 */	b lbl_8028C2F4
/* 8028C2A4 00287F04  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028C2A8 00287F08  38 00 00 0A */	li r0, 0xa
/* 8028C2AC 00287F0C  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028C2B0 00287F10  90 6D AA 90 */	stw r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C2B4 00287F14  81 9D 00 28 */	lwz r12, 0x28(r29)
/* 8028C2B8 00287F18  90 1D 00 0C */	stw r0, 0xc(r29)
/* 8028C2BC 00287F1C  2C 0C 00 00 */	cmpwi r12, 0
/* 8028C2C0 00287F20  41 82 00 14 */	beq lbl_8028C2D4
/* 8028C2C4 00287F24  7F A4 EB 78 */	mr r4, r29
/* 8028C2C8 00287F28  38 60 FF FD */	li r3, -3
/* 8028C2CC 00287F2C  7D 89 03 A6 */	mtctr r12
/* 8028C2D0 00287F30  4E 80 04 21 */	bctrl
lbl_8028C2D4:
/* 8028C2D4 00287F34  2C 1E 00 00 */	cmpwi r30, 0
/* 8028C2D8 00287F38  41 82 00 18 */	beq lbl_8028C2F0
/* 8028C2DC 00287F3C  7F CC F3 78 */	mr r12, r30
/* 8028C2E0 00287F40  7F A4 EB 78 */	mr r4, r29
/* 8028C2E4 00287F44  38 60 00 00 */	li r3, 0
/* 8028C2E8 00287F48  7D 89 03 A6 */	mtctr r12
/* 8028C2EC 00287F4C  4E 80 04 21 */	bctrl
lbl_8028C2F0:
/* 8028C2F0 00287F50  4B FF E8 21 */	bl stateReady
lbl_8028C2F4:
/* 8028C2F4 00287F54  7F E3 FB 78 */	mr r3, r31
/* 8028C2F8 00287F58  4B FE 24 8D */	bl OSRestoreInterrupts
/* 8028C2FC 00287F5C  38 60 00 01 */	li r3, 1
lbl_8028C300:
/* 8028C300 00287F60  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028C304 00287F64  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8028C308 00287F68  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028C30C 00287F6C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028C310 00287F70  7C 08 03 A6 */	mtlr r0
/* 8028C314 00287F74  38 21 00 20 */	addi r1, r1, 0x20
/* 8028C318 00287F78  4E 80 00 20 */	blr

.global DVDCancel
DVDCancel:
/* 8028C31C 00287F7C  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028C320 00287F80  7C 08 02 A6 */	mflr r0
/* 8028C324 00287F84  3C 80 80 29 */	lis r4, cbForCancelSync@ha
/* 8028C328 00287F88  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028C32C 00287F8C  38 84 C3 E8 */	addi r4, r4, cbForCancelSync@l
/* 8028C330 00287F90  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028C334 00287F94  93 C1 00 08 */	stw r30, 8(r1)
/* 8028C338 00287F98  7C 7E 1B 78 */	mr r30, r3
/* 8028C33C 00287F9C  4B FF FC 8D */	bl DVDCancelAsync
/* 8028C340 00287FA0  2C 03 00 00 */	cmpwi r3, 0
/* 8028C344 00287FA4  40 82 00 0C */	bne lbl_8028C350
/* 8028C348 00287FA8  38 60 FF FF */	li r3, -1
/* 8028C34C 00287FAC  48 00 00 84 */	b lbl_8028C3D0
lbl_8028C350:
/* 8028C350 00287FB0  4B FE 24 0D */	bl OSDisableInterrupts
/* 8028C354 00287FB4  7C 7F 1B 78 */	mr r31, r3
lbl_8028C358:
/* 8028C358 00287FB8  80 1E 00 0C */	lwz r0, 0xc(r30)
/* 8028C35C 00287FBC  2C 00 00 00 */	cmpwi r0, 0
/* 8028C360 00287FC0  41 82 00 64 */	beq lbl_8028C3C4
/* 8028C364 00287FC4  2C 00 FF FF */	cmpwi r0, -1
/* 8028C368 00287FC8  41 82 00 5C */	beq lbl_8028C3C4
/* 8028C36C 00287FCC  2C 00 00 0A */	cmpwi r0, 0xa
/* 8028C370 00287FD0  41 82 00 54 */	beq lbl_8028C3C4
/* 8028C374 00287FD4  2C 00 00 03 */	cmpwi r0, 3
/* 8028C378 00287FD8  40 82 00 40 */	bne lbl_8028C3B8
/* 8028C37C 00287FDC  80 1E 00 08 */	lwz r0, 8(r30)
/* 8028C380 00287FE0  28 00 00 04 */	cmplwi r0, 4
/* 8028C384 00287FE4  41 82 00 40 */	beq lbl_8028C3C4
/* 8028C388 00287FE8  28 00 00 05 */	cmplwi r0, 5
/* 8028C38C 00287FEC  41 82 00 38 */	beq lbl_8028C3C4
/* 8028C390 00287FF0  28 00 00 0D */	cmplwi r0, 0xd
/* 8028C394 00287FF4  41 82 00 30 */	beq lbl_8028C3C4
/* 8028C398 00287FF8  28 00 00 21 */	cmplwi r0, 0x21
/* 8028C39C 00287FFC  41 82 00 28 */	beq lbl_8028C3C4
/* 8028C3A0 00288000  28 00 00 22 */	cmplwi r0, 0x22
/* 8028C3A4 00288004  41 82 00 20 */	beq lbl_8028C3C4
/* 8028C3A8 00288008  28 00 00 0F */	cmplwi r0, 0xf
/* 8028C3AC 0028800C  41 82 00 18 */	beq lbl_8028C3C4
/* 8028C3B0 00288010  28 00 00 25 */	cmplwi r0, 0x25
/* 8028C3B4 00288014  41 82 00 10 */	beq lbl_8028C3C4
lbl_8028C3B8:
/* 8028C3B8 00288018  38 6D A9 F8 */	addi r3, r13, lbl_8063FCB8-_SDA_BASE_
/* 8028C3BC 0028801C  4B FE 5F B9 */	bl OSSleepThread
/* 8028C3C0 00288020  4B FF FF 98 */	b lbl_8028C358
lbl_8028C3C4:
/* 8028C3C4 00288024  7F E3 FB 78 */	mr r3, r31
/* 8028C3C8 00288028  4B FE 23 BD */	bl OSRestoreInterrupts
/* 8028C3CC 0028802C  38 60 00 00 */	li r3, 0
lbl_8028C3D0:
/* 8028C3D0 00288030  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028C3D4 00288034  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028C3D8 00288038  83 C1 00 08 */	lwz r30, 8(r1)
/* 8028C3DC 0028803C  7C 08 03 A6 */	mtlr r0
/* 8028C3E0 00288040  38 21 00 10 */	addi r1, r1, 0x10
/* 8028C3E4 00288044  4E 80 00 20 */	blr

.global cbForCancelSync
cbForCancelSync:
/* 8028C3E8 00288048  38 6D A9 F8 */	addi r3, r13, lbl_8063FCB8-_SDA_BASE_
/* 8028C3EC 0028804C  4B FE 60 74 */	b OSWakeupThread

.global DVDGetCurrentDiskID
DVDGetCurrentDiskID:
/* 8028C3F0 00288050  3C 60 80 00 */	lis r3, 0x8000
/* 8028C3F4 00288054  4E 80 00 20 */	blr

.global __BS2DVDLowCallback
__BS2DVDLowCallback:
/* 8028C3F8 00288058  90 6D AA 50 */	stw r3, lbl_8063FD10-_SDA_BASE_(r13)
/* 8028C3FC 0028805C  4E 80 00 20 */	blr

.global __DVDGetCoverStatus
__DVDGetCoverStatus:
/* 8028C400 00288060  94 21 FF F0 */	stwu r1, -0x10(r1)
/* 8028C404 00288064  7C 08 02 A6 */	mflr r0
/* 8028C408 00288068  3C 60 80 29 */	lis r3, __BS2DVDLowCallback@ha
/* 8028C40C 0028806C  90 01 00 14 */	stw r0, 0x14(r1)
/* 8028C410 00288070  38 00 00 00 */	li r0, 0
/* 8028C414 00288074  38 63 C3 F8 */	addi r3, r3, __BS2DVDLowCallback@l
/* 8028C418 00288078  93 E1 00 0C */	stw r31, 0xc(r1)
/* 8028C41C 0028807C  90 0D AA 50 */	stw r0, lbl_8063FD10-_SDA_BASE_(r13)
/* 8028C420 00288080  48 00 23 F5 */	bl DVDLowPrepareCoverRegister
lbl_8028C424:
/* 8028C424 00288084  80 0D AA 50 */	lwz r0, lbl_8063FD10-_SDA_BASE_(r13)
/* 8028C428 00288088  2C 00 00 00 */	cmpwi r0, 0
/* 8028C42C 0028808C  41 82 FF F8 */	beq lbl_8028C424
/* 8028C430 00288090  80 0D AA 50 */	lwz r0, lbl_8063FD10-_SDA_BASE_(r13)
/* 8028C434 00288094  54 00 07 FF */	clrlwi. r0, r0, 0x1f
/* 8028C438 00288098  40 82 00 0C */	bne lbl_8028C444
/* 8028C43C 0028809C  38 60 00 00 */	li r3, 0
/* 8028C440 002880A0  48 00 00 74 */	b lbl_8028C4B4
lbl_8028C444:
/* 8028C444 002880A4  48 00 23 C1 */	bl DVDLowGetCoverRegister
/* 8028C448 002880A8  7C 7F 1B 78 */	mr r31, r3
/* 8028C44C 002880AC  4B FE 63 8D */	bl __OSGetSystemTime
/* 8028C450 002880B0  3C C0 80 00 */	lis r6, 0x800000F8@ha
/* 8028C454 002880B4  3C A0 10 62 */	lis r5, 0x10624DD3@ha
/* 8028C458 002880B8  80 C6 00 F8 */	lwz r6, 0x800000F8@l(r6)
/* 8028C45C 002880BC  38 E5 4D D3 */	addi r7, r5, 0x10624DD3@l
/* 8028C460 002880C0  81 0D AA 68 */	lwz r8, lbl_8063FD28-_SDA_BASE_(r13)
/* 8028C464 002880C4  38 00 00 00 */	li r0, 0
/* 8028C468 002880C8  54 C5 F0 BE */	srwi r5, r6, 2
/* 8028C46C 002880CC  81 2D AA 6C */	lwz r9, lbl_8063FD2C-_SDA_BASE_(r13)
/* 8028C470 002880D0  7C C7 28 16 */	mulhwu r6, r7, r5
/* 8028C474 002880D4  7C 89 20 10 */	subfc r4, r9, r4
/* 8028C478 002880D8  6C 05 80 00 */	xoris r5, r0, 0x8000
/* 8028C47C 002880DC  7C 08 19 10 */	subfe r0, r8, r3
/* 8028C480 002880E0  6C 00 80 00 */	xoris r0, r0, 0x8000
/* 8028C484 002880E4  54 C3 D1 BE */	srwi r3, r6, 6
/* 8028C488 002880E8  1C 63 00 64 */	mulli r3, r3, 0x64
/* 8028C48C 002880EC  7C 63 20 10 */	subfc r3, r3, r4
/* 8028C490 002880F0  7C A5 01 10 */	subfe r5, r5, r0
/* 8028C494 002880F4  7C A0 01 10 */	subfe r5, r0, r0
/* 8028C498 002880F8  7C A5 00 D1 */	neg. r5, r5
/* 8028C49C 002880FC  41 82 00 0C */	beq lbl_8028C4A8
/* 8028C4A0 00288100  38 60 00 00 */	li r3, 0
/* 8028C4A4 00288104  48 00 00 10 */	b lbl_8028C4B4
lbl_8028C4A8:
/* 8028C4A8 00288108  57 E0 07 FE */	clrlwi r0, r31, 0x1f
/* 8028C4AC 0028810C  7C 60 00 D0 */	neg r3, r0
/* 8028C4B0 00288110  38 63 00 02 */	addi r3, r3, 2
lbl_8028C4B4:
/* 8028C4B4 00288114  80 01 00 14 */	lwz r0, 0x14(r1)
/* 8028C4B8 00288118  83 E1 00 0C */	lwz r31, 0xc(r1)
/* 8028C4BC 0028811C  7C 08 03 A6 */	mtlr r0
/* 8028C4C0 00288120  38 21 00 10 */	addi r1, r1, 0x10
/* 8028C4C4 00288124  4E 80 00 20 */	blr

.global DVDCheckDiskAsync
DVDCheckDiskAsync:
/* 8028C4C8 00288128  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028C4CC 0028812C  7C 08 02 A6 */	mflr r0
/* 8028C4D0 00288130  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028C4D4 00288134  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028C4D8 00288138  7C 7F 1B 78 */	mr r31, r3
/* 8028C4DC 0028813C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028C4E0 00288140  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028C4E4 00288144  93 81 00 10 */	stw r28, 0x10(r1)
/* 8028C4E8 00288148  7C 9C 23 78 */	mr r28, r4
/* 8028C4EC 0028814C  4B FE 22 71 */	bl OSDisableInterrupts
/* 8028C4F0 00288150  80 0D AA 1C */	lwz r0, lbl_8063FCDC-_SDA_BASE_(r13)
/* 8028C4F4 00288154  7C 7E 1B 78 */	mr r30, r3
/* 8028C4F8 00288158  2C 00 00 00 */	cmpwi r0, 0
/* 8028C4FC 0028815C  41 82 00 0C */	beq lbl_8028C508
/* 8028C500 00288160  38 60 FF FF */	li r3, -1
/* 8028C504 00288164  48 00 00 BC */	b lbl_8028C5C0
lbl_8028C508:
/* 8028C508 00288168  80 0D AA 18 */	lwz r0, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028C50C 0028816C  2C 00 00 00 */	cmpwi r0, 0
/* 8028C510 00288170  41 82 00 0C */	beq lbl_8028C51C
/* 8028C514 00288174  38 60 00 08 */	li r3, 8
/* 8028C518 00288178  48 00 00 A8 */	b lbl_8028C5C0
lbl_8028C51C:
/* 8028C51C 0028817C  80 0D AA 34 */	lwz r0, lbl_8063FCF4-_SDA_BASE_(r13)
/* 8028C520 00288180  80 0D AA 38 */	lwz r0, lbl_8063FCF8-_SDA_BASE_(r13)
/* 8028C524 00288184  2C 00 00 00 */	cmpwi r0, 0
/* 8028C528 00288188  41 82 00 0C */	beq lbl_8028C534
/* 8028C52C 0028818C  38 60 00 05 */	li r3, 5
/* 8028C530 00288190  48 00 00 90 */	b lbl_8028C5C0
lbl_8028C534:
/* 8028C534 00288194  80 8D AA 90 */	lwz r4, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C538 00288198  2C 04 00 00 */	cmpwi r4, 0
/* 8028C53C 0028819C  40 82 00 68 */	bne lbl_8028C5A4
/* 8028C540 002881A0  80 0D AA 24 */	lwz r0, lbl_8063FCE4-_SDA_BASE_(r13)
/* 8028C544 002881A4  2C 00 00 04 */	cmpwi r0, 4
/* 8028C548 002881A8  41 82 00 34 */	beq lbl_8028C57C
/* 8028C54C 002881AC  40 80 00 1C */	bge lbl_8028C568
/* 8028C550 002881B0  2C 00 00 02 */	cmpwi r0, 2
/* 8028C554 002881B4  41 82 00 38 */	beq lbl_8028C58C
/* 8028C558 002881B8  40 80 00 1C */	bge lbl_8028C574
/* 8028C55C 002881BC  2C 00 00 01 */	cmpwi r0, 1
/* 8028C560 002881C0  40 80 00 24 */	bge lbl_8028C584
/* 8028C564 002881C4  48 00 00 38 */	b lbl_8028C59C
lbl_8028C568:
/* 8028C568 002881C8  2C 00 00 07 */	cmpwi r0, 7
/* 8028C56C 002881CC  41 82 00 28 */	beq lbl_8028C594
/* 8028C570 002881D0  48 00 00 2C */	b lbl_8028C59C
lbl_8028C574:
/* 8028C574 002881D4  38 60 00 04 */	li r3, 4
/* 8028C578 002881D8  48 00 00 48 */	b lbl_8028C5C0
lbl_8028C57C:
/* 8028C57C 002881DC  38 60 00 05 */	li r3, 5
/* 8028C580 002881E0  48 00 00 40 */	b lbl_8028C5C0
lbl_8028C584:
/* 8028C584 002881E4  38 60 00 06 */	li r3, 6
/* 8028C588 002881E8  48 00 00 38 */	b lbl_8028C5C0
lbl_8028C58C:
/* 8028C58C 002881EC  38 60 00 0B */	li r3, 0xb
/* 8028C590 002881F0  48 00 00 30 */	b lbl_8028C5C0
lbl_8028C594:
/* 8028C594 002881F4  38 60 00 07 */	li r3, 7
/* 8028C598 002881F8  48 00 00 28 */	b lbl_8028C5C0
lbl_8028C59C:
/* 8028C59C 002881FC  38 60 00 00 */	li r3, 0
/* 8028C5A0 00288200  48 00 00 20 */	b lbl_8028C5C0
lbl_8028C5A4:
/* 8028C5A4 00288204  3C 60 80 51 */	lis r3, lbl_805169A0@ha
/* 8028C5A8 00288208  38 63 69 A0 */	addi r3, r3, lbl_805169A0@l
/* 8028C5AC 0028820C  7C 04 18 40 */	cmplw r4, r3
/* 8028C5B0 00288210  40 82 00 0C */	bne lbl_8028C5BC
/* 8028C5B4 00288214  38 60 00 00 */	li r3, 0
/* 8028C5B8 00288218  48 00 00 08 */	b lbl_8028C5C0
lbl_8028C5BC:
/* 8028C5BC 0028821C  80 64 00 0C */	lwz r3, 0xc(r4)
lbl_8028C5C0:
/* 8028C5C0 00288220  38 03 00 01 */	addi r0, r3, 1
/* 8028C5C4 00288224  3B A0 00 01 */	li r29, 1
/* 8028C5C8 00288228  28 00 00 0D */	cmplwi r0, 0xd
/* 8028C5CC 0028822C  41 81 01 14 */	bgt lbl_8028C6E0
/* 8028C5D0 00288230  3C 60 80 43 */	lis r3, lbl_80436188@ha
/* 8028C5D4 00288234  54 00 10 3A */	slwi r0, r0, 2
/* 8028C5D8 00288238  38 63 61 88 */	addi r3, r3, lbl_80436188@l
/* 8028C5DC 0028823C  7C 63 00 2E */	lwzx r3, r3, r0
/* 8028C5E0 00288240  7C 69 03 A6 */	mtctr r3
/* 8028C5E4 00288244  4E 80 04 20 */	bctr
/* 8028C5E8 00288248  38 00 00 00 */	li r0, 0
/* 8028C5EC 0028824C  2C 1C 00 00 */	cmpwi r28, 0
/* 8028C5F0 00288250  90 1F 00 0C */	stw r0, 0xc(r31)
/* 8028C5F4 00288254  41 82 00 18 */	beq lbl_8028C60C
/* 8028C5F8 00288258  7F 8C E3 78 */	mr r12, r28
/* 8028C5FC 0028825C  7F E4 FB 78 */	mr r4, r31
/* 8028C600 00288260  38 60 00 01 */	li r3, 1
/* 8028C604 00288264  7D 89 03 A6 */	mtctr r12
/* 8028C608 00288268  4E 80 04 21 */	bctrl
lbl_8028C60C:
/* 8028C60C 0028826C  7F C3 F3 78 */	mr r3, r30
/* 8028C610 00288270  4B FE 21 75 */	bl OSRestoreInterrupts
/* 8028C614 00288274  48 00 00 CC */	b lbl_8028C6E0
/* 8028C618 00288278  38 00 00 00 */	li r0, 0
/* 8028C61C 0028827C  2C 1C 00 00 */	cmpwi r28, 0
/* 8028C620 00288280  90 1F 00 0C */	stw r0, 0xc(r31)
/* 8028C624 00288284  41 82 00 18 */	beq lbl_8028C63C
/* 8028C628 00288288  7F 8C E3 78 */	mr r12, r28
/* 8028C62C 0028828C  7F E4 FB 78 */	mr r4, r31
/* 8028C630 00288290  38 60 00 00 */	li r3, 0
/* 8028C634 00288294  7D 89 03 A6 */	mtctr r12
/* 8028C638 00288298  4E 80 04 21 */	bctrl
lbl_8028C63C:
/* 8028C63C 0028829C  7F C3 F3 78 */	mr r3, r30
/* 8028C640 002882A0  4B FE 21 45 */	bl OSRestoreInterrupts
/* 8028C644 002882A4  48 00 00 9C */	b lbl_8028C6E0
/* 8028C648 002882A8  7F C3 F3 78 */	mr r3, r30
/* 8028C64C 002882AC  4B FE 21 39 */	bl OSRestoreInterrupts
/* 8028C650 002882B0  38 60 00 24 */	li r3, 0x24
/* 8028C654 002882B4  93 9F 00 28 */	stw r28, 0x28(r31)
/* 8028C658 002882B8  90 7F 00 08 */	stw r3, 8(r31)
/* 8028C65C 002882BC  80 0D 88 BC */	lwz r0, lbl_8063DB7C-_SDA_BASE_(r13)
/* 8028C660 002882C0  2C 00 00 00 */	cmpwi r0, 0
/* 8028C664 002882C4  41 82 00 38 */	beq lbl_8028C69C
/* 8028C668 002882C8  28 03 00 01 */	cmplwi r3, 1
/* 8028C66C 002882CC  41 82 00 24 */	beq lbl_8028C690
/* 8028C670 002882D0  28 03 00 04 */	cmplwi r3, 4
/* 8028C674 002882D4  41 82 00 1C */	beq lbl_8028C690
/* 8028C678 002882D8  28 03 00 05 */	cmplwi r3, 5
/* 8028C67C 002882DC  41 82 00 14 */	beq lbl_8028C690
/* 8028C680 002882E0  28 03 00 21 */	cmplwi r3, 0x21
/* 8028C684 002882E4  41 82 00 0C */	beq lbl_8028C690
/* 8028C688 002882E8  28 03 00 0E */	cmplwi r3, 0xe
/* 8028C68C 002882EC  40 82 00 10 */	bne lbl_8028C69C
lbl_8028C690:
/* 8028C690 002882F0  80 7F 00 18 */	lwz r3, 0x18(r31)
/* 8028C694 002882F4  80 9F 00 14 */	lwz r4, 0x14(r31)
/* 8028C698 002882F8  4B FD DF 91 */	bl DCInvalidateRange
lbl_8028C69C:
/* 8028C69C 002882FC  4B FE 20 C1 */	bl OSDisableInterrupts
/* 8028C6A0 00288300  38 00 00 02 */	li r0, 2
/* 8028C6A4 00288304  7C 7E 1B 78 */	mr r30, r3
/* 8028C6A8 00288308  90 1F 00 0C */	stw r0, 0xc(r31)
/* 8028C6AC 0028830C  7F E4 FB 78 */	mr r4, r31
/* 8028C6B0 00288310  38 60 00 02 */	li r3, 2
/* 8028C6B4 00288314  48 00 03 11 */	bl __DVDPushWaitingQueue
/* 8028C6B8 00288318  80 0D AA 90 */	lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C6BC 0028831C  7C 7D 1B 78 */	mr r29, r3
/* 8028C6C0 00288320  2C 00 00 00 */	cmpwi r0, 0
/* 8028C6C4 00288324  40 82 00 14 */	bne lbl_8028C6D8
/* 8028C6C8 00288328  80 0D AA 14 */	lwz r0, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028C6CC 0028832C  2C 00 00 00 */	cmpwi r0, 0
/* 8028C6D0 00288330  40 82 00 08 */	bne lbl_8028C6D8
/* 8028C6D4 00288334  4B FF E4 3D */	bl stateReady
lbl_8028C6D8:
/* 8028C6D8 00288338  7F C3 F3 78 */	mr r3, r30
/* 8028C6DC 0028833C  4B FE 20 A9 */	bl OSRestoreInterrupts
lbl_8028C6E0:
/* 8028C6E0 00288340  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8028C6E4 00288344  7F A3 EB 78 */	mr r3, r29
/* 8028C6E8 00288348  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028C6EC 0028834C  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028C6F0 00288350  83 81 00 10 */	lwz r28, 0x10(r1)
/* 8028C6F4 00288354  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028C6F8 00288358  7C 08 03 A6 */	mtlr r0
/* 8028C6FC 0028835C  38 21 00 20 */	addi r1, r1, 0x20
/* 8028C700 00288360  4E 80 00 20 */	blr

.global __DVDPrepareResetAsync
__DVDPrepareResetAsync:
/* 8028C704 00288364  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028C708 00288368  7C 08 02 A6 */	mflr r0
/* 8028C70C 0028836C  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028C710 00288370  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028C714 00288374  7C 7F 1B 78 */	mr r31, r3
/* 8028C718 00288378  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028C71C 0028837C  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028C720 00288380  4B FE 20 3D */	bl OSDisableInterrupts
/* 8028C724 00288384  7C 7D 1B 78 */	mr r29, r3
/* 8028C728 00288388  48 00 02 65 */	bl __DVDClearWaitingQueue
/* 8028C72C 0028838C  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C730 00288390  2C 00 00 00 */	cmpwi r0, 0
/* 8028C734 00288394  41 82 00 0C */	beq lbl_8028C740
/* 8028C738 00288398  93 ED AA 80 */	stw r31, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028C73C 0028839C  48 00 00 C0 */	b lbl_8028C7FC
lbl_8028C740:
/* 8028C740 002883A0  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C744 002883A4  2C 03 00 00 */	cmpwi r3, 0
/* 8028C748 002883A8  41 82 00 0C */	beq lbl_8028C754
/* 8028C74C 002883AC  38 00 00 00 */	li r0, 0
/* 8028C750 002883B0  90 03 00 28 */	stw r0, 0x28(r3)
lbl_8028C754:
/* 8028C754 002883B4  4B FE 20 09 */	bl OSDisableInterrupts
/* 8028C758 002883B8  7C 7E 1B 78 */	mr r30, r3
/* 8028C75C 002883BC  4B FE 20 01 */	bl OSDisableInterrupts
/* 8028C760 002883C0  80 0D AA 90 */	lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C764 002883C4  38 80 00 01 */	li r4, 1
/* 8028C768 002883C8  90 8D AA 14 */	stw r4, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028C76C 002883CC  2C 00 00 00 */	cmpwi r0, 0
/* 8028C770 002883D0  40 82 00 08 */	bne lbl_8028C778
/* 8028C774 002883D4  90 8D AA 18 */	stw r4, lbl_8063FCD8-_SDA_BASE_(r13)
lbl_8028C778:
/* 8028C778 002883D8  4B FE 20 0D */	bl OSRestoreInterrupts
/* 8028C77C 002883DC  48 00 00 0C */	b lbl_8028C788
lbl_8028C780:
/* 8028C780 002883E0  38 80 00 00 */	li r4, 0
/* 8028C784 002883E4  4B FF F8 45 */	bl DVDCancelAsync
lbl_8028C788:
/* 8028C788 002883E8  48 00 02 A5 */	bl __DVDPopWaitingQueue
/* 8028C78C 002883EC  2C 03 00 00 */	cmpwi r3, 0
/* 8028C790 002883F0  40 82 FF F0 */	bne lbl_8028C780
/* 8028C794 002883F4  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C798 002883F8  2C 03 00 00 */	cmpwi r3, 0
/* 8028C79C 002883FC  41 82 00 10 */	beq lbl_8028C7AC
/* 8028C7A0 00288400  7F E4 FB 78 */	mr r4, r31
/* 8028C7A4 00288404  4B FF F8 25 */	bl DVDCancelAsync
/* 8028C7A8 00288408  48 00 00 20 */	b lbl_8028C7C8
lbl_8028C7AC:
/* 8028C7AC 0028840C  2C 1F 00 00 */	cmpwi r31, 0
/* 8028C7B0 00288410  41 82 00 18 */	beq lbl_8028C7C8
/* 8028C7B4 00288414  7F EC FB 78 */	mr r12, r31
/* 8028C7B8 00288418  38 60 00 00 */	li r3, 0
/* 8028C7BC 0028841C  38 80 00 00 */	li r4, 0
/* 8028C7C0 00288420  7D 89 03 A6 */	mtctr r12
/* 8028C7C4 00288424  4E 80 04 21 */	bctrl
lbl_8028C7C8:
/* 8028C7C8 00288428  4B FE 1F 95 */	bl OSDisableInterrupts
/* 8028C7CC 0028842C  38 80 00 00 */	li r4, 0
/* 8028C7D0 00288430  7C 7F 1B 78 */	mr r31, r3
/* 8028C7D4 00288434  90 8D AA 14 */	stw r4, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028C7D8 00288438  80 0D AA 18 */	lwz r0, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028C7DC 0028843C  2C 00 00 00 */	cmpwi r0, 0
/* 8028C7E0 00288440  41 82 00 0C */	beq lbl_8028C7EC
/* 8028C7E4 00288444  90 8D AA 18 */	stw r4, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028C7E8 00288448  4B FF E3 29 */	bl stateReady
lbl_8028C7EC:
/* 8028C7EC 0028844C  7F E3 FB 78 */	mr r3, r31
/* 8028C7F0 00288450  4B FE 1F 95 */	bl OSRestoreInterrupts
/* 8028C7F4 00288454  7F C3 F3 78 */	mr r3, r30
/* 8028C7F8 00288458  4B FE 1F 8D */	bl OSRestoreInterrupts
lbl_8028C7FC:
/* 8028C7FC 0028845C  7F A3 EB 78 */	mr r3, r29
/* 8028C800 00288460  4B FE 1F 85 */	bl OSRestoreInterrupts
/* 8028C804 00288464  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028C808 00288468  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8028C80C 0028846C  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028C810 00288470  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028C814 00288474  7C 08 03 A6 */	mtlr r0
/* 8028C818 00288478  38 21 00 20 */	addi r1, r1, 0x20
/* 8028C81C 0028847C  4E 80 00 20 */	blr
Callback:
/* 8028C820 00288480  38 00 00 01 */	li r0, 1
/* 8028C824 00288484  90 0D AA 54 */	stw r0, lbl_8063FD14-_SDA_BASE_(r13)
/* 8028C828 00288488  4E 80 00 20 */	blr

.global __DVDPrepareReset
__DVDPrepareReset:
/* 8028C82C 0028848C  94 21 FF E0 */	stwu r1, -0x20(r1)
/* 8028C830 00288490  7C 08 02 A6 */	mflr r0
/* 8028C834 00288494  90 01 00 24 */	stw r0, 0x24(r1)
/* 8028C838 00288498  93 E1 00 1C */	stw r31, 0x1c(r1)
/* 8028C83C 0028849C  93 C1 00 18 */	stw r30, 0x18(r1)
/* 8028C840 002884A0  93 A1 00 14 */	stw r29, 0x14(r1)
/* 8028C844 002884A4  4B FE 1F 19 */	bl OSDisableInterrupts
/* 8028C848 002884A8  3B E0 00 00 */	li r31, 0
/* 8028C84C 002884AC  93 ED AA 54 */	stw r31, lbl_8063FD14-_SDA_BASE_(r13)
/* 8028C850 002884B0  4B FE 1F 0D */	bl OSDisableInterrupts
/* 8028C854 002884B4  7C 7D 1B 78 */	mr r29, r3
/* 8028C858 002884B8  48 00 01 35 */	bl __DVDClearWaitingQueue
/* 8028C85C 002884BC  80 0D AA 20 */	lwz r0, lbl_8063FCE0-_SDA_BASE_(r13)
/* 8028C860 002884C0  2C 00 00 00 */	cmpwi r0, 0
/* 8028C864 002884C4  41 82 00 14 */	beq lbl_8028C878
/* 8028C868 002884C8  3C 60 80 29 */	lis r3, Callback@ha
/* 8028C86C 002884CC  38 63 C8 20 */	addi r3, r3, Callback@l
/* 8028C870 002884D0  90 6D AA 80 */	stw r3, lbl_8063FD40-_SDA_BASE_(r13)
/* 8028C874 002884D4  48 00 00 B8 */	b lbl_8028C92C
lbl_8028C878:
/* 8028C878 002884D8  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C87C 002884DC  2C 03 00 00 */	cmpwi r3, 0
/* 8028C880 002884E0  41 82 00 08 */	beq lbl_8028C888
/* 8028C884 002884E4  93 E3 00 28 */	stw r31, 0x28(r3)
lbl_8028C888:
/* 8028C888 002884E8  4B FE 1E D5 */	bl OSDisableInterrupts
/* 8028C88C 002884EC  7C 7F 1B 78 */	mr r31, r3
/* 8028C890 002884F0  4B FE 1E CD */	bl OSDisableInterrupts
/* 8028C894 002884F4  80 0D AA 90 */	lwz r0, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C898 002884F8  38 80 00 01 */	li r4, 1
/* 8028C89C 002884FC  90 8D AA 14 */	stw r4, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028C8A0 00288500  2C 00 00 00 */	cmpwi r0, 0
/* 8028C8A4 00288504  40 82 00 08 */	bne lbl_8028C8AC
/* 8028C8A8 00288508  90 8D AA 18 */	stw r4, lbl_8063FCD8-_SDA_BASE_(r13)
lbl_8028C8AC:
/* 8028C8AC 0028850C  4B FE 1E D9 */	bl OSRestoreInterrupts
/* 8028C8B0 00288510  48 00 00 0C */	b lbl_8028C8BC
lbl_8028C8B4:
/* 8028C8B4 00288514  38 80 00 00 */	li r4, 0
/* 8028C8B8 00288518  4B FF F7 11 */	bl DVDCancelAsync
lbl_8028C8BC:
/* 8028C8BC 0028851C  48 00 01 71 */	bl __DVDPopWaitingQueue
/* 8028C8C0 00288520  2C 03 00 00 */	cmpwi r3, 0
/* 8028C8C4 00288524  40 82 FF F0 */	bne lbl_8028C8B4
/* 8028C8C8 00288528  80 6D AA 90 */	lwz r3, lbl_8063FD50-_SDA_BASE_(r13)
/* 8028C8CC 0028852C  2C 03 00 00 */	cmpwi r3, 0
/* 8028C8D0 00288530  41 82 00 14 */	beq lbl_8028C8E4
/* 8028C8D4 00288534  3C 80 80 29 */	lis r4, Callback@ha
/* 8028C8D8 00288538  38 84 C8 20 */	addi r4, r4, Callback@l
/* 8028C8DC 0028853C  4B FF F6 ED */	bl DVDCancelAsync
/* 8028C8E0 00288540  48 00 00 18 */	b lbl_8028C8F8
lbl_8028C8E4:
/* 8028C8E4 00288544  3C 00 80 29 */	lis r0, 0x8029
/* 8028C8E8 00288548  34 00 C8 20 */	addic. r0, r0, -14304
/* 8028C8EC 0028854C  41 82 00 0C */	beq lbl_8028C8F8
/* 8028C8F0 00288550  38 00 00 01 */	li r0, 1
/* 8028C8F4 00288554  90 0D AA 54 */	stw r0, lbl_8063FD14-_SDA_BASE_(r13)
lbl_8028C8F8:
/* 8028C8F8 00288558  4B FE 1E 65 */	bl OSDisableInterrupts
/* 8028C8FC 0028855C  38 80 00 00 */	li r4, 0
/* 8028C900 00288560  7C 7E 1B 78 */	mr r30, r3
/* 8028C904 00288564  90 8D AA 14 */	stw r4, lbl_8063FCD4-_SDA_BASE_(r13)
/* 8028C908 00288568  80 0D AA 18 */	lwz r0, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028C90C 0028856C  2C 00 00 00 */	cmpwi r0, 0
/* 8028C910 00288570  41 82 00 0C */	beq lbl_8028C91C
/* 8028C914 00288574  90 8D AA 18 */	stw r4, lbl_8063FCD8-_SDA_BASE_(r13)
/* 8028C918 00288578  4B FF E1 F9 */	bl stateReady
lbl_8028C91C:
/* 8028C91C 0028857C  7F C3 F3 78 */	mr r3, r30
/* 8028C920 00288580  4B FE 1E 65 */	bl OSRestoreInterrupts
/* 8028C924 00288584  7F E3 FB 78 */	mr r3, r31
/* 8028C928 00288588  4B FE 1E 5D */	bl OSRestoreInterrupts
lbl_8028C92C:
/* 8028C92C 0028858C  7F A3 EB 78 */	mr r3, r29
/* 8028C930 00288590  4B FE 1E 55 */	bl OSRestoreInterrupts
/* 8028C934 00288594  4B FE 1E 3D */	bl OSEnableInterrupts
lbl_8028C938:
/* 8028C938 00288598  80 0D AA 54 */	lwz r0, lbl_8063FD14-_SDA_BASE_(r13)
/* 8028C93C 0028859C  2C 00 00 01 */	cmpwi r0, 1
/* 8028C940 002885A0  40 82 FF F8 */	bne lbl_8028C938
/* 8028C944 002885A4  80 01 00 24 */	lwz r0, 0x24(r1)
/* 8028C948 002885A8  83 E1 00 1C */	lwz r31, 0x1c(r1)
/* 8028C94C 002885AC  83 C1 00 18 */	lwz r30, 0x18(r1)
/* 8028C950 002885B0  83 A1 00 14 */	lwz r29, 0x14(r1)
/* 8028C954 002885B4  7C 08 03 A6 */	mtlr r0
/* 8028C958 002885B8  38 21 00 20 */	addi r1, r1, 0x20
/* 8028C95C 002885BC  4E 80 00 20 */	blr

.global __DVDTestAlarm
__DVDTestAlarm:
/* 8028C960 002885C0  3C 80 80 52 */	lis r4, lbl_8051B4C0@ha
/* 8028C964 002885C4  38 84 B4 C0 */	addi r4, r4, lbl_8051B4C0@l
/* 8028C968 002885C8  7C 03 20 40 */	cmplw r3, r4
/* 8028C96C 002885CC  40 82 00 0C */	bne lbl_8028C978
/* 8028C970 002885D0  38 60 00 01 */	li r3, 1
/* 8028C974 002885D4  4E 80 00 20 */	blr
lbl_8028C978:
/* 8028C978 002885D8  48 00 21 84 */	b __DVDLowTestAlarm
/* 8028C97C 002885DC  4E 80 00 20 */	blr

.global __DVDStopMotorAsync
__DVDStopMotorAsync:
/* 8028C980 002885E0  38 60 00 01 */	li r3, 1
/* 8028C984 002885E4  4E 80 00 20 */	blr

.global __DVDRestartMotor
__DVDRestartMotor:
/* 8028C988 002885E8  4E 80 00 20 */	blr