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
5135
5136
5137
5138
5139
5140
5141
5142
5143
5144
5145
5146
5147
5148
5149
5150
5151
5152
5153
5154
5155
5156
5157
5158
5159
5160
5161
5162
5163
5164
5165
5166
5167
5168
5169
5170
5171
5172
5173
5174
5175
5176
5177
5178
5179
5180
5181
5182
5183
5184
5185
5186
5187
5188
5189
5190
5191
5192
5193
5194
5195
5196
5197
5198
5199
5200
5201
5202
5203
5204
5205
5206
5207
5208
5209
5210
5211
5212
5213
5214
5215
5216
5217
5218
5219
5220
5221
5222
5223
5224
5225
5226
5227
5228
5229
5230
5231
5232
5233
5234
5235
5236
5237
5238
5239
5240
5241
5242
5243
5244
5245
5246
5247
5248
5249
5250
5251
5252
5253
5254
5255
5256
5257
5258
5259
5260
5261
5262
5263
5264
5265
5266
5267
5268
5269
5270
5271
5272
5273
5274
5275
5276
5277
5278
5279
5280
5281
5282
5283
5284
5285
5286
5287
5288
5289
5290
5291
5292
5293
5294
5295
5296
5297
5298
5299
5300
5301
5302
5303
5304
5305
5306
5307
5308
5309
5310
5311
5312
5313
5314
5315
5316
5317
5318
5319
5320
5321
5322
5323
5324
5325
5326
5327
5328
5329
5330
5331
5332
5333
5334
5335
5336
5337
5338
5339
5340
5341
5342
5343
5344
5345
5346
5347
5348
5349
5350
5351
5352
5353
5354
5355
5356
5357
5358
5359
5360
5361
5362
5363
5364
5365
5366
5367
5368
5369
5370
5371
5372
5373
5374
5375
5376
5377
5378
5379
5380
5381
5382
5383
5384
5385
5386
5387
5388
5389
5390
5391
5392
5393
5394
5395
5396
5397
5398
5399
5400
5401
5402
5403
5404
5405
5406
5407
5408
5409
5410
5411
5412
5413
5414
5415
5416
5417
5418
5419
5420
5421
5422
5423
5424
5425
5426
5427
5428
5429
5430
5431
5432
5433
5434
5435
5436
5437
5438
5439
5440
5441
5442
5443
5444
5445
5446
5447
5448
5449
5450
5451
5452
5453
5454
5455
5456
5457
5458
5459
5460
5461
5462
5463
5464
5465
5466
5467
5468
5469
5470
5471
5472
5473
5474
5475
5476
5477
5478
5479
5480
5481
5482
5483
5484
5485
5486
5487
5488
5489
5490
5491
5492
5493
5494
5495
5496
5497
5498
5499
5500
5501
5502
5503
5504
5505
5506
5507
5508
5509
5510
5511
5512
5513
5514
5515
5516
5517
5518
5519
5520
5521
5522
5523
5524
5525
5526
5527
5528
5529
5530
5531
5532
5533
5534
5535
5536
5537
5538
5539
5540
5541
5542
5543
5544
5545
5546
5547
5548
5549
5550
5551
5552
5553
5554
5555
5556
5557
5558
5559
5560
5561
5562
5563
5564
5565
5566
5567
5568
5569
5570
5571
5572
5573
5574
5575
5576
5577
5578
5579
5580
5581
5582
5583
5584
5585
5586
5587
5588
5589
5590
5591
5592
5593
5594
5595
5596
5597
5598
5599
5600
5601
5602
5603
5604
5605
5606
5607
5608
5609
5610
5611
5612
5613
5614
5615
5616
5617
5618
5619
5620
5621
5622
5623
5624
5625
5626
5627
5628
5629
5630
5631
5632
5633
5634
5635
5636
5637
5638
5639
5640
5641
5642
5643
5644
5645
5646
5647
5648
5649
5650
5651
5652
5653
5654
5655
5656
5657
5658
5659
5660
5661
5662
5663
5664
5665
5666
5667
5668
5669
5670
5671
5672
5673
5674
5675
5676
5677
5678
5679
5680
5681
5682
5683
5684
5685
5686
5687
5688
5689
5690
5691
5692
5693
5694
5695
5696
5697
5698
5699
5700
5701
5702
5703
5704
5705
5706
5707
5708
5709
5710
5711
5712
5713
5714
5715
5716
5717
5718
5719
5720
5721
5722
5723
5724
5725
5726
5727
5728
5729
5730
5731
5732
5733
5734
5735
5736
5737
5738
5739
5740
5741
5742
5743
5744
5745
5746
5747
5748
5749
5750
5751
5752
5753
5754
5755
5756
5757
5758
5759
5760
5761
5762
5763
5764
5765
5766
5767
5768
5769
5770
5771
5772
5773
5774
5775
5776
5777
5778
5779
5780
5781
5782
5783
5784
5785
5786
5787
5788
5789
5790
5791
5792
5793
5794
5795
5796
5797
5798
5799
5800
5801
5802
5803
5804
5805
5806
5807
5808
5809
5810
5811
5812
5813
5814
5815
5816
5817
5818
5819
5820
5821
5822
5823
5824
5825
5826
5827
5828
5829
5830
5831
5832
5833
5834
5835
5836
5837
5838
5839
5840
5841
5842
5843
5844
5845
5846
5847
5848
5849
5850
5851
5852
5853
5854
5855
5856
5857
5858
5859
5860
5861
5862
5863
5864
5865
5866
5867
5868
5869
5870
5871
5872
5873
5874
5875
5876
5877
5878
5879
5880
5881
5882
5883
5884
5885
5886
5887
5888
5889
5890
5891
5892
5893
5894
5895
5896
5897
5898
5899
5900
5901
5902
5903
5904
5905
5906
5907
5908
5909
5910
5911
5912
5913
5914
5915
5916
5917
5918
5919
5920
5921
5922
5923
5924
5925
5926
5927
5928
5929
5930
5931
5932
5933
5934
5935
5936
5937
5938
5939
5940
5941
5942
5943
5944
5945
5946
5947
5948
5949
5950
5951
5952
5953
5954
5955
5956
5957
5958
5959
5960
5961
5962
5963
5964
5965
5966
5967
5968
5969
5970
5971
5972
5973
5974
5975
5976
5977
5978
5979
5980
5981
5982
5983
5984
5985
5986
5987
5988
5989
5990
5991
5992
5993
5994
5995
5996
5997
5998
5999
6000
6001
6002
6003
6004
6005
6006
6007
6008
6009
6010
6011
6012
6013
6014
6015
6016
6017
6018
6019
6020
6021
6022
6023
6024
6025
6026
6027
6028
6029
6030
6031
6032
6033
6034
6035
6036
6037
6038
6039
6040
6041
6042
6043
6044
6045
6046
6047
6048
6049
6050
6051
6052
6053
6054
6055
6056
6057
6058
6059
6060
6061
6062
6063
6064
6065
6066
6067
6068
6069
6070
6071
6072
6073
6074
6075
6076
6077
6078
6079
6080
6081
6082
6083
6084
6085
6086
6087
6088
6089
6090
6091
6092
6093
6094
6095
6096
6097
6098
6099
6100
6101
6102
6103
6104
6105
6106
6107
6108
6109
6110
6111
6112
6113
6114
6115
6116
6117
6118
6119
6120
6121
6122
6123
6124
6125
6126
6127
6128
6129
6130
6131
6132
6133
6134
6135
6136
6137
6138
6139
6140
6141
6142
6143
6144
6145
6146
6147
6148
6149
6150
6151
6152
6153
6154
6155
6156
6157
6158
6159
6160
6161
6162
6163
6164
6165
6166
6167
6168
6169
6170
6171
6172
6173
6174
6175
6176
6177
6178
6179
6180
6181
6182
6183
6184
6185
6186
6187
6188
6189
6190
6191
6192
6193
6194
6195
6196
6197
6198
6199
6200
6201
6202
6203
6204
6205
6206
6207
6208
6209
6210
6211
6212
6213
6214
6215
6216
6217
6218
6219
6220
6221
6222
6223
6224
6225
6226
6227
6228
6229
6230
6231
6232
6233
6234
6235
6236
6237
6238
6239
6240
6241
6242
6243
6244
6245
6246
6247
6248
6249
6250
6251
6252
6253
6254
6255
6256
6257
6258
6259
6260
6261
6262
6263
6264
6265
6266
6267
6268
6269
6270
6271
6272
6273
6274
6275
6276
6277
6278
6279
6280
6281
6282
6283
6284
6285
6286
6287
6288
6289
6290
6291
6292
6293
6294
6295
6296
6297
6298
6299
6300
6301
6302
6303
6304
6305
6306
6307
6308
6309
6310
6311
6312
6313
6314
6315
6316
6317
6318
6319
6320
6321
6322
6323
6324
6325
6326
6327
6328
6329
6330
6331
6332
6333
6334
6335
6336
6337
6338
6339
6340
6341
6342
6343
6344
6345
6346
6347
6348
6349
6350
6351
6352
6353
6354
6355
6356
6357
6358
6359
6360
6361
6362
6363
6364
6365
6366
6367
6368
6369
6370
6371
6372
6373
6374
6375
6376
6377
6378
6379
6380
6381
6382
6383
6384
6385
6386
6387
6388
6389
6390
6391
6392
6393
6394
6395
6396
6397
6398
6399
6400
6401
6402
6403
6404
6405
6406
6407
6408
6409
6410
6411
6412
6413
6414
6415
6416
6417
6418
6419
6420
6421
6422
6423
6424
6425
6426
6427
6428
6429
6430
6431
6432
6433
6434
6435
6436
6437
6438
6439
6440
6441
6442
6443
6444
6445
6446
6447
6448
6449
6450
6451
6452
6453
6454
6455
6456
6457
6458
6459
6460
6461
6462
6463
6464
6465
6466
6467
6468
6469
6470
6471
6472
6473
6474
6475
6476
6477
6478
6479
6480
6481
6482
6483
6484
6485
6486
6487
6488
6489
6490
6491
6492
6493
6494
6495
6496
6497
6498
6499
6500
6501
6502
6503
6504
6505
6506
6507
6508
6509
6510
6511
6512
6513
6514
6515
6516
6517
6518
6519
6520
6521
6522
6523
6524
6525
6526
6527
6528
6529
6530
6531
6532
6533
6534
6535
6536
6537
6538
6539
6540
6541
6542
6543
6544
6545
6546
6547
6548
6549
6550
6551
6552
6553
6554
6555
6556
6557
6558
6559
6560
6561
6562
6563
6564
6565
6566
6567
6568
6569
6570
6571
6572
6573
6574
6575
6576
6577
6578
6579
6580
6581
6582
6583
6584
6585
6586
6587
6588
6589
6590
6591
6592
6593
6594
6595
6596
6597
6598
6599
6600
6601
6602
6603
6604
6605
6606
6607
6608
6609
6610
6611
6612
6613
6614
6615
6616
6617
6618
6619
6620
6621
6622
6623
6624
6625
6626
6627
6628
6629
6630
6631
6632
6633
6634
6635
6636
6637
6638
6639
6640
6641
6642
6643
6644
6645
6646
6647
6648
6649
6650
6651
6652
6653
6654
6655
6656
6657
6658
6659
6660
6661
6662
6663
6664
6665
6666
6667
6668
6669
6670
6671
6672
6673
6674
6675
6676
6677
6678
6679
6680
6681
6682
6683
6684
6685
6686
6687
6688
6689
6690
6691
6692
6693
6694
6695
6696
6697
6698
6699
6700
6701
6702
6703
6704
6705
6706
6707
6708
6709
6710
6711
6712
6713
6714
6715
6716
6717
6718
6719
6720
6721
6722
6723
6724
6725
6726
6727
6728
6729
6730
6731
6732
6733
6734
6735
6736
6737
6738
6739
6740
6741
6742
6743
6744
6745
6746
6747
6748
6749
6750
6751
6752
6753
6754
6755
6756
6757
6758
6759
6760
6761
6762
6763
6764
6765
6766
6767
6768
6769
6770
6771
6772
6773
6774
6775
6776
6777
6778
6779
6780
6781
6782
6783
6784
6785
6786
6787
6788
6789
6790
6791
6792
6793
6794
6795
6796
6797
6798
6799
6800
6801
6802
6803
6804
6805
6806
6807
6808
6809
6810
6811
6812
6813
6814
6815
6816
6817
6818
6819
6820
6821
6822
6823
6824
6825
6826
6827
6828
6829
6830
6831
6832
6833
6834
6835
6836
6837
6838
6839
6840
6841
6842
6843
6844
6845
6846
6847
6848
6849
6850
6851
6852
6853
6854
6855
6856
6857
6858
6859
6860
6861
6862
6863
6864
6865
6866
6867
6868
6869
6870
6871
6872
6873
6874
6875
6876
6877
6878
6879
6880
6881
6882
6883
6884
6885
6886
6887
6888
6889
6890
6891
6892
6893
6894
6895
6896
6897
6898
6899
6900
6901
6902
6903
6904
6905
6906
6907
6908
6909
6910
6911
6912
6913
6914
6915
6916
6917
6918
6919
6920
6921
6922
6923
6924
6925
6926
6927
6928
6929
6930
6931
6932
6933
6934
6935
6936
6937
6938
6939
6940
6941
6942
6943
6944
6945
6946
6947
6948
6949
6950
6951
6952
6953
6954
6955
6956
6957
6958
6959
6960
6961
6962
6963
6964
6965
6966
6967
6968
6969
6970
6971
6972
6973
6974
6975
6976
6977
6978
6979
6980
6981
6982
6983
6984
6985
6986
6987
6988
6989
6990
6991
6992
6993
6994
6995
6996
6997
6998
6999
7000
7001
7002
7003
7004
7005
7006
7007
7008
7009
7010
7011
7012
7013
7014
7015
7016
7017
7018
7019
7020
7021
7022
7023
7024
7025
7026
7027
7028
7029
7030
7031
7032
7033
7034
7035
7036
7037
7038
7039
7040
7041
7042
7043
7044
7045
7046
7047
7048
7049
7050
7051
7052
7053
7054
7055
7056
7057
7058
7059
7060
7061
7062
7063
7064
7065
7066
7067
7068
7069
7070
7071
7072
7073
7074
7075
7076
7077
7078
7079
7080
7081
7082
7083
7084
7085
7086
7087
7088
7089
7090
7091
7092
7093
7094
7095
7096
7097
7098
7099
7100
7101
7102
7103
7104
7105
7106
7107
7108
7109
7110
7111
7112
7113
7114
7115
7116
7117
7118
7119
7120
7121
7122
7123
7124
7125
7126
7127
7128
7129
7130
7131
7132
7133
7134
7135
7136
7137
7138
7139
7140
7141
7142
7143
7144
7145
7146
7147
7148
7149
7150
7151
7152
7153
7154
7155
7156
7157
7158
7159
7160
7161
7162
7163
7164
7165
7166
7167
7168
7169
7170
7171
7172
7173
7174
7175
7176
7177
7178
7179
7180
7181
7182
7183
7184
7185
7186
7187
7188
7189
7190
7191
7192
7193
7194
7195
7196
7197
7198
7199
7200
7201
7202
7203
7204
7205
7206
7207
7208
7209
7210
7211
7212
7213
7214
7215
7216
7217
7218
7219
7220
7221
7222
7223
7224
7225
7226
7227
7228
7229
7230
7231
7232
7233
7234
7235
7236
7237
7238
7239
7240
7241
7242
7243
7244
7245
7246
7247
7248
7249
7250
7251
7252
7253
7254
7255
7256
7257
7258
7259
7260
7261
7262
7263
7264
7265
7266
7267
7268
7269
7270
7271
7272
7273
7274
7275
7276
7277
7278
7279
7280
7281
7282
7283
7284
7285
7286
7287
7288
7289
7290
7291
7292
7293
7294
7295
7296
7297
7298
7299
7300
7301
7302
7303
7304
7305
7306
7307
7308
7309
7310
7311
7312
7313
7314
7315
7316
7317
7318
7319
7320
7321
7322
7323
7324
7325
7326
7327
7328
7329
7330
7331
7332
7333
7334
7335
7336
7337
7338
7339
7340
7341
7342
7343
7344
7345
7346
7347
7348
7349
7350
7351
7352
7353
7354
7355
7356
7357
7358
7359
7360
7361
7362
7363
7364
7365
7366
7367
7368
7369
7370
7371
7372
7373
7374
7375
7376
7377
7378
7379
7380
7381
7382
7383
7384
7385
7386
7387
7388
7389
7390
7391
7392
7393
7394
7395
7396
7397
7398
7399
7400
7401
7402
7403
7404
7405
7406
7407
7408
7409
7410
7411
7412
7413
7414
7415
7416
7417
7418
7419
7420
7421
7422
7423
7424
7425
7426
7427
7428
7429
7430
7431
7432
7433
7434
7435
7436
7437
7438
7439
7440
7441
7442
7443
7444
7445
7446
7447
7448
7449
7450
7451
7452
7453
7454
7455
7456
7457
7458
7459
7460
7461
7462
7463
7464
7465
7466
7467
7468
7469
7470
7471
7472
7473
7474
7475
7476
7477
7478
7479
7480
7481
7482
7483
7484
7485
7486
7487
7488
7489
7490
7491
7492
7493
7494
7495
7496
7497
7498
7499
7500
7501
7502
7503
7504
7505
7506
7507
7508
7509
7510
7511
7512
7513
7514
7515
7516
7517
7518
7519
7520
7521
7522
7523
7524
7525
7526
7527
7528
7529
7530
7531
7532
7533
7534
7535
7536
7537
7538
7539
7540
7541
7542
7543
7544
7545
7546
7547
7548
7549
7550
7551
7552
7553
7554
7555
7556
7557
7558
7559
7560
7561
7562
7563
7564
7565
7566
7567
7568
7569
7570
7571
7572
7573
7574
7575
7576
7577
7578
7579
7580
7581
7582
7583
7584
7585
7586
7587
7588
7589
7590
7591
7592
7593
7594
7595
7596
7597
7598
7599
7600
7601
7602
7603
7604
7605
7606
7607
7608
7609
7610
7611
7612
7613
7614
7615
7616
7617
7618
7619
7620
7621
7622
7623
7624
7625
7626
7627
7628
7629
7630
7631
7632
7633
7634
7635
7636
7637
7638
7639
7640
7641
7642
7643
7644
7645
7646
7647
7648
7649
7650
7651
7652
7653
7654
7655
7656
7657
7658
7659
7660
7661
7662
7663
7664
7665
7666
7667
7668
7669
7670
7671
7672
7673
7674
7675
7676
7677
7678
7679
7680
7681
7682
7683
7684
7685
7686
7687
7688
7689
7690
7691
7692
7693
7694
7695
7696
7697
7698
7699
7700
7701
7702
7703
7704
7705
7706
7707
7708
7709
7710
7711
7712
7713
7714
7715
7716
7717
7718
7719
7720
7721
7722
7723
7724
7725
7726
7727
7728
7729
7730
7731
7732
7733
7734
7735
7736
7737
7738
7739
7740
7741
7742
7743
7744
7745
7746
7747
7748
7749
7750
7751
7752
7753
7754
7755
7756
7757
7758
7759
7760
7761
7762
7763
7764
7765
7766
7767
7768
7769
7770
7771
7772
7773
7774
7775
7776
7777
7778
7779
7780
7781
7782
7783
7784
7785
7786
7787
7788
7789
7790
7791
7792
7793
7794
7795
7796
7797
7798
7799
7800
7801
7802
7803
7804
7805
7806
7807
7808
7809
7810
7811
7812
7813
7814
7815
7816
7817
7818
7819
7820
7821
7822
7823
7824
7825
7826
7827
7828
7829
7830
7831
7832
7833
7834
7835
7836
7837
7838
7839
7840
7841
7842
7843
7844
7845
7846
7847
7848
7849
7850
7851
7852
7853
7854
7855
7856
7857
7858
7859
7860
7861
7862
7863
7864
7865
7866
7867
7868
7869
7870
7871
7872
7873
7874
7875
7876
7877
7878
7879
7880
7881
7882
7883
7884
7885
7886
7887
7888
7889
7890
7891
7892
7893
7894
7895
7896
7897
7898
7899
7900
7901
7902
7903
7904
7905
7906
7907
7908
7909
7910
7911
7912
7913
7914
7915
7916
7917
7918
7919
7920
7921
7922
7923
7924
7925
7926
7927
7928
7929
7930
7931
7932
7933
7934
7935
7936
7937
7938
7939
7940
7941
7942
7943
7944
7945
7946
7947
7948
7949
7950
7951
7952
7953
7954
7955
7956
7957
7958
7959
7960
7961
7962
7963
7964
7965
7966
7967
7968
7969
7970
7971
7972
7973
7974
7975
7976
7977
7978
7979
7980
7981
7982
7983
7984
7985
7986
7987
7988
7989
7990
7991
7992
7993
7994
7995
7996
7997
7998
7999
8000
8001
8002
8003
8004
8005
8006
8007
8008
8009
8010
8011
8012
8013
8014
8015
8016
8017
8018
8019
8020
8021
8022
8023
8024
8025
8026
8027
8028
8029
8030
8031
8032
8033
8034
8035
8036
8037
8038
8039
8040
8041
8042
8043
8044
8045
8046
8047
8048
8049
8050
8051
8052
8053
8054
8055
8056
8057
8058
8059
8060
8061
8062
8063
8064
8065
8066
8067
8068
8069
8070
8071
8072
8073
8074
8075
8076
8077
8078
8079
8080
8081
8082
8083
8084
8085
8086
8087
8088
8089
8090
8091
8092
8093
8094
8095
8096
8097
8098
8099
8100
8101
8102
8103
8104
8105
8106
8107
8108
8109
8110
8111
8112
8113
8114
8115
8116
8117
8118
8119
8120
8121
8122
8123
8124
8125
8126
8127
8128
8129
8130
8131
8132
8133
8134
8135
8136
8137
8138
8139
8140
8141
8142
8143
8144
8145
8146
8147
8148
8149
8150
8151
8152
8153
8154
8155
8156
8157
8158
8159
8160
8161
8162
8163
8164
8165
8166
8167
8168
8169
8170
8171
8172
8173
8174
8175
8176
8177
8178
8179
8180
8181
8182
8183
8184
8185
8186
8187
8188
8189
8190
8191
8192
8193
8194
8195
8196
8197
8198
8199
8200
8201
8202
8203
8204
8205
8206
8207
8208
8209
8210
8211
8212
8213
8214
8215
8216
8217
8218
8219
8220
8221
8222
8223
8224
8225
8226
8227
8228
8229
8230
8231
8232
8233
8234
8235
8236
8237
8238
8239
8240
8241
8242
8243
8244
8245
8246
8247
8248
8249
8250
8251
8252
8253
8254
8255
8256
8257
8258
8259
8260
8261
8262
8263
8264
8265
8266
8267
8268
8269
8270
8271
8272
8273
8274
8275
8276
8277
8278
8279
8280
8281
8282
8283
8284
8285
8286
8287
8288
8289
8290
8291
8292
8293
8294
8295
8296
8297
8298
8299
8300
8301
8302
8303
8304
8305
8306
8307
8308
8309
8310
8311
8312
8313
8314
8315
8316
8317
8318
8319
8320
8321
8322
8323
8324
8325
8326
8327
8328
8329
8330
8331
8332
8333
8334
8335
8336
8337
8338
8339
8340
8341
8342
8343
8344
8345
8346
8347
8348
8349
8350
8351
8352
8353
8354
8355
8356
8357
8358
8359
8360
8361
8362
8363
8364
8365
8366
8367
8368
8369
8370
8371
8372
8373
8374
8375
8376
8377
8378
8379
8380
8381
8382
8383
8384
8385
8386
8387
8388
8389
8390
8391
8392
8393
8394
8395
8396
8397
8398
8399
8400
8401
8402
8403
8404
8405
8406
8407
8408
8409
8410
8411
8412
8413
8414
8415
8416
8417
8418
8419
8420
8421
8422
8423
8424
8425
8426
8427
8428
8429
8430
8431
8432
8433
8434
8435
8436
8437
8438
8439
8440
8441
8442
8443
8444
8445
8446
8447
8448
8449
8450
8451
8452
8453
8454
8455
8456
8457
8458
8459
8460
8461
8462
8463
8464
8465
8466
8467
8468
8469
8470
8471
8472
8473
8474
8475
8476
8477
8478
8479
8480
8481
8482
8483
8484
8485
8486
8487
8488
8489
8490
8491
8492
8493
8494
8495
8496
8497
8498
8499
8500
8501
8502
8503
8504
8505
8506
8507
8508
8509
8510
8511
8512
8513
8514
8515
8516
8517
8518
8519
8520
8521
8522
8523
8524
8525
8526
8527
8528
8529
8530
8531
8532
8533
8534
8535
8536
8537
8538
8539
8540
8541
8542
8543
8544
8545
8546
8547
8548
8549
8550
8551
8552
8553
8554
8555
8556
8557
8558
8559
8560
8561
8562
8563
8564
8565
8566
8567
8568
8569
8570
8571
8572
8573
8574
8575
8576
8577
8578
8579
8580
8581
8582
8583
8584
8585
8586
8587
8588
8589
8590
8591
8592
8593
8594
8595
8596
8597
8598
8599
8600
8601
8602
8603
8604
8605
8606
8607
8608
8609
8610
8611
8612
8613
8614
8615
8616
8617
8618
8619
8620
8621
8622
8623
8624
8625
8626
8627
8628
8629
8630
8631
8632
8633
8634
8635
8636
8637
8638
8639
8640
8641
8642
8643
8644
8645
8646
8647
8648
8649
8650
8651
8652
8653
8654
8655
8656
8657
8658
8659
8660
8661
8662
8663
8664
8665
8666
8667
8668
8669
8670
8671
8672
8673
8674
8675
8676
8677
8678
8679
8680
8681
8682
8683
8684
8685
8686
8687
8688
8689
8690
8691
8692
8693
8694
8695
8696
8697
8698
8699
8700
8701
8702
8703
8704
8705
8706
8707
8708
8709
8710
8711
8712
8713
8714
8715
8716
8717
8718
8719
8720
8721
8722
8723
8724
8725
8726
8727
8728
8729
8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
8747
8748
8749
8750
8751
8752
8753
8754
8755
8756
8757
8758
8759
8760
8761
8762
8763
8764
8765
8766
8767
8768
8769
8770
8771
8772
8773
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
8791
8792
8793
8794
8795
8796
8797
8798
8799
8800
8801
8802
8803
8804
8805
8806
8807
8808
8809
8810
8811
8812
8813
8814
8815
8816
8817
8818
8819
8820
8821
8822
8823
8824
8825
8826
8827
8828
8829
8830
8831
8832
8833
8834
8835
8836
8837
8838
8839
8840
8841
8842
8843
8844
8845
8846
8847
8848
8849
8850
8851
8852
8853
8854
8855
8856
8857
8858
8859
8860
8861
8862
8863
8864
8865
8866
8867
8868
8869
8870
8871
8872
8873
8874
8875
8876
8877
8878
8879
8880
8881
8882
8883
8884
8885
8886
8887
8888
8889
8890
8891
8892
8893
8894
8895
8896
8897
8898
8899
8900
8901
8902
8903
8904
8905
8906
8907
8908
8909
8910
8911
8912
8913
8914
8915
8916
8917
8918
8919
8920
8921
8922
8923
8924
8925
8926
8927
8928
8929
8930
8931
8932
8933
8934
8935
8936
8937
8938
8939
8940
8941
8942
8943
8944
8945
8946
8947
8948
8949
8950
8951
8952
8953
8954
8955
8956
8957
8958
8959
8960
8961
8962
8963
8964
8965
8966
8967
8968
8969
8970
8971
8972
8973
8974
8975
8976
8977
8978
8979
8980
8981
8982
8983
8984
8985
8986
8987
8988
8989
8990
8991
8992
8993
8994
8995
8996
8997
8998
8999
9000
9001
9002
9003
9004
9005
9006
9007
9008
9009
9010
9011
9012
9013
9014
9015
9016
9017
9018
9019
9020
9021
9022
9023
9024
9025
9026
9027
9028
9029
9030
9031
9032
9033
9034
9035
9036
9037
9038
9039
9040
9041
9042
9043
9044
9045
9046
9047
9048
9049
9050
9051
9052
9053
9054
9055
9056
9057
9058
9059
9060
9061
9062
9063
9064
9065
9066
9067
9068
9069
9070
9071
9072
9073
9074
9075
9076
9077
9078
9079
9080
9081
9082
9083
9084
9085
9086
9087
9088
9089
9090
9091
9092
9093
9094
9095
9096
9097
9098
9099
9100
9101
9102
9103
9104
9105
9106
9107
9108
9109
9110
9111
9112
9113
9114
9115
9116
9117
9118
9119
9120
9121
9122
9123
9124
9125
9126
9127
9128
9129
9130
9131
9132
9133
9134
9135
9136
9137
9138
9139
9140
9141
9142
9143
9144
9145
9146
9147
9148
9149
9150
9151
9152
9153
9154
9155
9156
9157
9158
9159
9160
9161
9162
9163
9164
9165
9166
9167
9168
9169
9170
9171
9172
9173
9174
9175
9176
9177
9178
9179
9180
9181
9182
9183
9184
9185
9186
9187
9188
9189
9190
9191
9192
9193
9194
9195
9196
9197
9198
9199
9200
9201
9202
9203
9204
9205
9206
9207
9208
9209
9210
9211
9212
9213
9214
9215
9216
9217
9218
9219
9220
9221
9222
9223
9224
9225
9226
9227
9228
9229
9230
9231
9232
9233
9234
9235
9236
9237
9238
9239
9240
9241
9242
9243
9244
9245
9246
9247
9248
9249
9250
9251
9252
9253
9254
9255
9256
9257
9258
9259
9260
9261
9262
9263
9264
9265
9266
9267
9268
9269
9270
9271
9272
9273
9274
9275
9276
9277
9278
9279
9280
9281
9282
9283
9284
9285
9286
9287
9288
9289
9290
9291
9292
9293
9294
9295
9296
9297
9298
9299
9300
9301
9302
9303
9304
9305
9306
9307
9308
9309
9310
9311
9312
9313
9314
9315
9316
9317
9318
9319
9320
9321
9322
9323
9324
9325
9326
9327
9328
9329
9330
9331
9332
9333
9334
9335
9336
9337
9338
9339
9340
9341
9342
9343
9344
9345
9346
9347
9348
9349
9350
9351
9352
9353
9354
9355
9356
9357
9358
9359
9360
9361
9362
9363
9364
9365
9366
9367
9368
9369
9370
9371
9372
9373
9374
9375
9376
9377
9378
9379
9380
9381
9382
9383
9384
9385
9386
9387
9388
9389
9390
9391
9392
9393
9394
9395
9396
9397
9398
9399
9400
9401
9402
9403
9404
9405
9406
9407
9408
9409
9410
9411
9412
9413
9414
9415
9416
9417
9418
9419
9420
9421
9422
9423
9424
9425
9426
9427
9428
9429
9430
9431
9432
9433
9434
9435
9436
9437
9438
9439
9440
9441
9442
9443
9444
9445
9446
9447
9448
9449
9450
9451
9452
9453
9454
9455
9456
9457
9458
9459
9460
9461
9462
9463
9464
9465
9466
9467
9468
9469
9470
9471
9472
9473
9474
9475
9476
9477
9478
9479
9480
9481
9482
9483
9484
9485
9486
9487
9488
9489
9490
9491
9492
9493
9494
9495
9496
9497
9498
9499
9500
9501
9502
9503
9504
9505
9506
9507
9508
9509
9510
9511
9512
9513
9514
9515
9516
9517
9518
9519
9520
9521
9522
9523
9524
9525
9526
9527
9528
9529
9530
9531
9532
9533
9534
9535
9536
9537
9538
9539
9540
9541
9542
9543
9544
9545
9546
9547
9548
9549
9550
9551
9552
9553
9554
9555
9556
9557
9558
9559
9560
9561
9562
9563
9564
9565
9566
9567
9568
9569
9570
9571
9572
9573
9574
9575
9576
9577
9578
9579
9580
9581
9582
9583
9584
9585
9586
9587
9588
9589
9590
9591
9592
9593
9594
9595
9596
9597
9598
9599
9600
9601
9602
9603
9604
9605
9606
9607
9608
9609
9610
9611
9612
9613
9614
9615
9616
9617
9618
9619
9620
9621
9622
9623
9624
9625
9626
9627
9628
9629
9630
9631
9632
9633
9634
9635
9636
9637
9638
9639
9640
9641
9642
9643
9644
9645
9646
9647
9648
9649
9650
9651
9652
9653
9654
9655
9656
9657
9658
9659
9660
9661
9662
9663
9664
9665
9666
9667
9668
9669
9670
9671
9672
9673
9674
9675
9676
9677
9678
9679
9680
9681
9682
9683
9684
9685
9686
9687
9688
9689
9690
9691
9692
9693
9694
9695
9696
9697
9698
9699
9700
9701
9702
9703
9704
9705
9706
9707
9708
9709
9710
9711
9712
9713
9714
9715
9716
9717
9718
9719
9720
9721
9722
9723
9724
9725
9726
9727
9728
9729
9730
9731
9732
9733
9734
9735
9736
9737
9738
9739
9740
9741
9742
9743
9744
9745
9746
9747
9748
9749
9750
9751
9752
9753
9754
9755
9756
9757
9758
9759
9760
9761
9762
9763
9764
9765
9766
9767
9768
9769
9770
9771
9772
9773
9774
9775
9776
9777
9778
9779
9780
9781
9782
9783
9784
9785
9786
9787
9788
9789
9790
9791
9792
9793
9794
9795
9796
9797
9798
9799
9800
9801
9802
9803
9804
9805
9806
9807
9808
9809
9810
9811
9812
9813
9814
9815
9816
9817
9818
9819
9820
9821
9822
9823
9824
9825
9826
9827
9828
9829
9830
9831
9832
9833
9834
9835
9836
9837
9838
9839
9840
9841
9842
9843
9844
9845
9846
9847
9848
9849
9850
9851
9852
9853
9854
9855
9856
9857
9858
9859
9860
9861
9862
9863
9864
9865
9866
9867
9868
9869
9870
9871
9872
9873
9874
9875
9876
9877
9878
9879
9880
9881
9882
9883
9884
9885
9886
9887
9888
9889
9890
9891
9892
9893
9894
9895
9896
9897
9898
9899
9900
9901
9902
9903
9904
9905
9906
9907
9908
9909
9910
9911
9912
9913
9914
9915
9916
9917
9918
9919
9920
9921
9922
9923
9924
9925
9926
9927
9928
9929
9930
9931
9932
9933
9934
9935
9936
9937
9938
9939
9940
9941
9942
9943
9944
9945
9946
9947
9948
9949
9950
9951
9952
9953
9954
9955
9956
9957
9958
9959
9960
9961
9962
9963
9964
9965
9966
9967
9968
9969
9970
9971
9972
9973
9974
9975
9976
9977
9978
9979
9980
9981
9982
9983
9984
9985
9986
9987
9988
9989
9990
9991
9992
9993
9994
9995
9996
9997
9998
9999
10000
10001
10002
10003
10004
10005
10006
10007
10008
10009
10010
10011
10012
10013
10014
10015
10016
10017
10018
10019
10020
10021
10022
10023
10024
10025
10026
10027
10028
10029
10030
10031
10032
10033
10034
10035
10036
10037
10038
10039
10040
10041
10042
10043
10044
10045
10046
10047
10048
10049
10050
10051
10052
10053
10054
10055
10056
10057
10058
10059
10060
10061
10062
10063
10064
10065
10066
10067
10068
10069
10070
10071
10072
10073
10074
10075
10076
10077
10078
10079
10080
10081
10082
10083
10084
10085
10086
10087
10088
10089
10090
10091
10092
10093
10094
10095
10096
10097
10098
10099
10100
10101
10102
10103
10104
10105
10106
10107
10108
10109
10110
10111
10112
10113
10114
10115
10116
10117
10118
10119
10120
10121
10122
10123
10124
10125
10126
10127
10128
10129
10130
10131
10132
10133
10134
10135
10136
10137
10138
10139
10140
10141
10142
10143
10144
10145
10146
10147
10148
10149
10150
10151
10152
10153
10154
10155
10156
10157
10158
10159
10160
10161
10162
10163
10164
10165
10166
10167
10168
10169
10170
10171
10172
10173
10174
10175
10176
10177
10178
10179
10180
10181
10182
10183
10184
10185
10186
10187
10188
10189
10190
10191
10192
10193
10194
10195
10196
10197
10198
10199
10200
10201
10202
10203
10204
10205
10206
10207
10208
10209
10210
10211
10212
10213
10214
10215
10216
10217
10218
10219
10220
10221
10222
10223
10224
10225
10226
10227
10228
10229
10230
10231
10232
10233
10234
10235
10236
10237
10238
10239
10240
10241
10242
10243
10244
10245
10246
10247
10248
10249
10250
10251
10252
10253
10254
10255
10256
10257
10258
10259
10260
10261
10262
10263
10264
10265
10266
10267
10268
10269
10270
10271
10272
10273
10274
10275
10276
10277
10278
10279
10280
10281
10282
10283
10284
10285
10286
10287
10288
10289
10290
10291
10292
10293
10294
10295
10296
10297
10298
10299
10300
10301
10302
10303
10304
10305
10306
10307
10308
10309
10310
10311
10312
10313
10314
10315
10316
10317
10318
10319
10320
10321
10322
10323
10324
10325
10326
10327
10328
10329
10330
10331
10332
10333
10334
10335
10336
10337
10338
10339
10340
10341
10342
10343
10344
10345
10346
10347
10348
10349
10350
10351
10352
10353
10354
10355
10356
10357
10358
10359
10360
10361
10362
10363
10364
10365
10366
10367
10368
10369
10370
10371
10372
10373
10374
10375
10376
10377
10378
10379
10380
10381
10382
10383
10384
10385
10386
10387
10388
10389
10390
10391
10392
10393
10394
10395
10396
10397
10398
10399
10400
10401
10402
10403
10404
10405
10406
10407
10408
10409
10410
10411
10412
10413
10414
10415
10416
10417
10418
10419
10420
10421
10422
10423
10424
10425
10426
10427
10428
10429
10430
10431
10432
10433
10434
10435
10436
10437
10438
10439
10440
10441
10442
10443
10444
10445
10446
10447
10448
10449
10450
10451
10452
10453
10454
10455
10456
10457
10458
10459
10460
10461
10462
10463
10464
10465
10466
10467
10468
10469
10470
10471
10472
10473
10474
10475
10476
10477
10478
10479
10480
10481
10482
10483
10484
10485
10486
10487
10488
10489
10490
10491
10492
10493
10494
10495
10496
10497
10498
10499
10500
10501
10502
10503
10504
10505
10506
10507
10508
10509
10510
10511
10512
10513
10514
10515
10516
10517
10518
10519
10520
10521
10522
10523
10524
10525
10526
10527
10528
10529
10530
10531
10532
10533
10534
10535
10536
10537
10538
10539
10540
10541
10542
10543
10544
10545
10546
10547
10548
10549
10550
10551
10552
10553
10554
10555
10556
10557
10558
10559
10560
10561
10562
10563
10564
10565
10566
10567
10568
10569
10570
10571
10572
10573
10574
10575
10576
10577
10578
10579
10580
10581
10582
10583
10584
10585
10586
10587
10588
10589
10590
10591
10592
10593
10594
10595
10596
10597
10598
10599
10600
10601
10602
10603
10604
10605
10606
10607
10608
10609
10610
10611
10612
10613
10614
10615
10616
10617
10618
10619
10620
10621
10622
10623
10624
10625
10626
10627
10628
10629
10630
10631
10632
10633
10634
10635
10636
10637
10638
10639
10640
10641
10642
10643
10644
10645
10646
10647
10648
10649
10650
10651
10652
10653
10654
10655
10656
10657
10658
10659
10660
10661
10662
10663
10664
10665
10666
10667
10668
10669
10670
10671
10672
10673
10674
10675
10676
10677
10678
10679
10680
10681
10682
10683
10684
10685
10686
10687
10688
10689
10690
10691
10692
10693
10694
10695
10696
10697
10698
10699
10700
10701
10702
10703
10704
10705
10706
10707
10708
10709
10710
10711
10712
10713
10714
10715
10716
10717
10718
10719
10720
10721
10722
10723
10724
10725
10726
10727
10728
10729
10730
10731
10732
10733
10734
10735
10736
10737
10738
10739
10740
10741
10742
10743
10744
10745
10746
10747
10748
10749
10750
10751
10752
10753
10754
10755
10756
10757
10758
10759
10760
10761
10762
10763
10764
10765
10766
10767
10768
10769
10770
10771
10772
10773
10774
10775
10776
10777
10778
10779
10780
10781
10782
10783
10784
10785
10786
10787
10788
10789
10790
10791
10792
10793
10794
10795
10796
10797
10798
10799
10800
10801
10802
10803
10804
10805
10806
10807
10808
10809
10810
10811
10812
10813
10814
10815
10816
10817
10818
10819
10820
10821
10822
10823
10824
10825
10826
10827
10828
10829
10830
10831
10832
10833
10834
10835
10836
10837
10838
10839
10840
10841
10842
10843
10844
10845
10846
10847
10848
10849
10850
10851
10852
10853
10854
10855
10856
10857
10858
10859
10860
10861
10862
10863
10864
10865
10866
10867
10868
10869
10870
10871
10872
10873
10874
10875
10876
10877
10878
10879
10880
10881
10882
10883
10884
10885
10886
10887
10888
10889
10890
10891
10892
10893
10894
10895
10896
10897
10898
10899
10900
10901
10902
10903
10904
10905
10906
10907
10908
10909
10910
10911
10912
10913
10914
10915
10916
10917
10918
10919
10920
10921
10922
10923
10924
10925
10926
10927
10928
10929
10930
10931
10932
10933
10934
10935
10936
10937
10938
10939
10940
10941
10942
10943
10944
10945
10946
10947
10948
10949
10950
10951
10952
10953
10954
10955
10956
10957
10958
10959
10960
10961
10962
10963
10964
10965
10966
10967
10968
10969
10970
10971
10972
10973
10974
10975
10976
10977
10978
10979
10980
10981
10982
10983
10984
10985
10986
10987
10988
10989
10990
10991
10992
10993
10994
10995
10996
10997
10998
10999
11000
11001
11002
11003
11004
11005
11006
11007
11008
11009
11010
11011
11012
11013
11014
11015
11016
11017
11018
11019
11020
11021
11022
11023
11024
11025
11026
11027
11028
11029
11030
11031
11032
11033
11034
11035
11036
11037
11038
11039
11040
11041
11042
11043
11044
11045
11046
11047
11048
11049
11050
11051
11052
11053
11054
11055
11056
11057
11058
11059
11060
11061
11062
11063
11064
11065
11066
11067
11068
11069
11070
11071
11072
11073
11074
11075
11076
11077
11078
11079
11080
11081
11082
11083
11084
11085
11086
11087
11088
11089
11090
11091
11092
11093
11094
11095
11096
11097
11098
11099
11100
11101
11102
11103
11104
11105
11106
11107
11108
11109
11110
11111
11112
11113
11114
11115
11116
11117
11118
11119
11120
11121
11122
11123
11124
11125
11126
11127
11128
11129
11130
11131
11132
11133
11134
11135
11136
11137
11138
11139
11140
11141
11142
11143
11144
11145
11146
11147
11148
11149
11150
11151
11152
11153
11154
11155
11156
11157
11158
11159
11160
11161
11162
11163
11164
11165
11166
11167
11168
11169
11170
11171
11172
11173
11174
11175
11176
11177
11178
11179
11180
11181
11182
11183
11184
11185
11186
11187
11188
11189
11190
11191
11192
11193
11194
11195
11196
11197
11198
11199
11200
11201
11202
11203
11204
11205
11206
11207
11208
11209
11210
11211
11212
11213
11214
11215
11216
11217
11218
11219
11220
11221
11222
11223
11224
11225
11226
11227
11228
11229
11230
11231
11232
11233
11234
11235
11236
11237
11238
11239
11240
11241
11242
11243
11244
11245
11246
11247
11248
11249
11250
11251
11252
11253
11254
11255
11256
11257
11258
11259
11260
11261
11262
11263
11264
11265
11266
11267
11268
11269
11270
11271
11272
11273
11274
11275
11276
11277
11278
11279
11280
11281
11282
11283
11284
11285
11286
11287
11288
11289
11290
11291
11292
11293
11294
11295
11296
11297
11298
11299
11300
11301
11302
11303
11304
11305
11306
11307
11308
11309
11310
11311
11312
11313
11314
11315
11316
11317
11318
11319
11320
11321
11322
11323
11324
11325
11326
11327
11328
11329
11330
11331
11332
11333
11334
11335
11336
11337
11338
11339
11340
11341
11342
11343
11344
11345
11346
11347
11348
11349
11350
11351
11352
11353
11354
11355
11356
11357
11358
11359
11360
11361
11362
11363
11364
11365
11366
11367
11368
11369
11370
11371
11372
11373
11374
11375
11376
11377
11378
11379
11380
11381
11382
11383
11384
11385
11386
11387
11388
11389
11390
11391
11392
11393
11394
11395
11396
11397
11398
11399
11400
11401
11402
11403
11404
11405
11406
11407
11408
11409
11410
11411
11412
11413
11414
11415
11416
11417
11418
11419
11420
11421
11422
11423
11424
11425
11426
11427
11428
11429
11430
11431
11432
11433
11434
11435
11436
11437
11438
11439
11440
11441
11442
11443
11444
11445
11446
11447
11448
11449
11450
11451
11452
11453
11454
11455
11456
11457
11458
11459
11460
11461
11462
11463
11464
11465
11466
11467
11468
11469
11470
11471
11472
11473
11474
11475
11476
11477
11478
11479
11480
11481
11482
11483
11484
11485
11486
11487
11488
11489
11490
11491
11492
11493
11494
11495
11496
11497
11498
11499
11500
11501
11502
11503
11504
11505
11506
11507
11508
11509
11510
11511
11512
11513
11514
11515
11516
11517
11518
11519
11520
11521
11522
11523
11524
11525
11526
11527
11528
11529
11530
11531
11532
11533
11534
11535
11536
11537
11538
11539
11540
11541
11542
11543
11544
11545
11546
11547
11548
11549
11550
11551
11552
11553
11554
11555
11556
11557
11558
11559
11560
11561
11562
11563
11564
11565
11566
11567
11568
11569
11570
11571
11572
11573
11574
11575
11576
11577
11578
11579
11580
11581
11582
11583
11584
11585
11586
11587
11588
11589
11590
11591
11592
11593
11594
11595
11596
11597
11598
11599
11600
11601
11602
11603
11604
11605
11606
11607
11608
11609
11610
11611
11612
11613
11614
11615
11616
11617
11618
11619
11620
11621
11622
11623
11624
11625
11626
11627
11628
11629
11630
11631
11632
11633
11634
11635
11636
11637
11638
11639
11640
11641
11642
11643
11644
11645
11646
11647
11648
11649
11650
11651
11652
11653
11654
11655
11656
11657
11658
11659
11660
11661
11662
11663
11664
11665
11666
11667
11668
11669
11670
11671
11672
11673
11674
11675
11676
11677
11678
11679
11680
11681
11682
11683
11684
11685
11686
11687
11688
11689
11690
11691
11692
11693
11694
11695
11696
11697
11698
11699
11700
11701
11702
11703
11704
11705
11706
11707
11708
11709
11710
11711
11712
11713
11714
11715
11716
11717
11718
11719
11720
11721
11722
11723
11724
11725
11726
11727
11728
11729
11730
11731
11732
11733
11734
11735
11736
11737
11738
11739
11740
11741
11742
11743
11744
11745
11746
11747
11748
11749
11750
11751
11752
11753
11754
11755
11756
11757
11758
11759
11760
11761
11762
11763
11764
11765
11766
11767
11768
11769
11770
11771
11772
11773
11774
11775
11776
11777
11778
11779
11780
11781
11782
11783
11784
11785
11786
11787
11788
11789
11790
11791
11792
11793
11794
11795
11796
11797
11798
11799
11800
11801
11802
11803
11804
11805
11806
11807
11808
11809
11810
11811
11812
11813
11814
11815
11816
11817
11818
11819
11820
11821
11822
11823
11824
11825
11826
11827
11828
11829
11830
11831
11832
11833
11834
11835
11836
11837
11838
11839
11840
11841
11842
11843
11844
11845
11846
11847
11848
11849
11850
11851
11852
11853
11854
11855
11856
11857
11858
11859
11860
11861
11862
11863
11864
11865
11866
11867
11868
11869
11870
11871
11872
11873
11874
11875
11876
11877
11878
11879
11880
11881
11882
11883
11884
11885
11886
11887
11888
11889
11890
11891
11892
11893
11894
11895
11896
11897
11898
11899
11900
11901
11902
11903
11904
11905
11906
11907
11908
11909
11910
11911
11912
11913
11914
11915
11916
11917
11918
11919
11920
11921
11922
11923
11924
11925
11926
11927
11928
11929
11930
11931
11932
11933
11934
11935
11936
11937
11938
11939
11940
11941
11942
11943
11944
11945
11946
11947
11948
11949
11950
11951
11952
11953
11954
11955
11956
11957
11958
11959
11960
11961
11962
11963
11964
11965
11966
11967
11968
11969
11970
11971
11972
11973
11974
11975
11976
11977
11978
11979
11980
11981
11982
11983
11984
11985
11986
11987
11988
11989
11990
11991
11992
11993
11994
11995
11996
11997
11998
11999
12000
12001
12002
12003
12004
12005
12006
12007
12008
12009
12010
12011
12012
12013
12014
12015
12016
12017
12018
12019
12020
12021
12022
12023
12024
12025
12026
12027
12028
12029
12030
12031
12032
12033
12034
12035
12036
12037
12038
12039
12040
12041
12042
12043
12044
12045
12046
12047
12048
12049
12050
12051
12052
12053
12054
12055
12056
12057
12058
12059
12060
12061
12062
12063
12064
12065
12066
12067
12068
12069
12070
12071
12072
12073
12074
12075
12076
12077
12078
12079
12080
12081
12082
12083
12084
12085
12086
12087
12088
12089
12090
12091
12092
12093
12094
12095
12096
12097
12098
12099
12100
12101
12102
12103
12104
12105
12106
12107
12108
12109
12110
12111
12112
12113
12114
12115
12116
12117
12118
12119
12120
12121
12122
12123
12124
12125
12126
12127
12128
12129
12130
12131
12132
12133
12134
12135
12136
12137
12138
12139
12140
12141
12142
12143
12144
12145
12146
12147
12148
12149
12150
12151
12152
12153
12154
12155
12156
12157
12158
12159
12160
12161
12162
12163
12164
12165
12166
12167
12168
12169
12170
12171
12172
12173
12174
12175
12176
12177
12178
12179
12180
12181
12182
12183
12184
12185
12186
12187
12188
12189
12190
12191
12192
12193
12194
12195
12196
12197
12198
12199
12200
12201
12202
12203
12204
12205
12206
12207
12208
12209
12210
12211
12212
12213
12214
12215
12216
12217
12218
12219
12220
12221
12222
12223
12224
12225
12226
12227
12228
12229
12230
12231
12232
12233
12234
12235
12236
12237
12238
12239
12240
12241
12242
12243
12244
12245
12246
12247
12248
12249
12250
12251
12252
12253
12254
12255
12256
12257
12258
12259
12260
12261
12262
12263
12264
12265
12266
12267
12268
12269
12270
12271
12272
12273
12274
12275
12276
12277
12278
12279
12280
12281
12282
12283
12284
12285
12286
12287
12288
12289
12290
12291
12292
12293
12294
12295
12296
12297
12298
12299
12300
12301
12302
12303
12304
12305
12306
12307
12308
12309
12310
12311
12312
12313
12314
12315
12316
12317
12318
12319
12320
12321
12322
12323
12324
12325
12326
12327
12328
12329
12330
12331
12332
12333
12334
12335
12336
12337
12338
12339
12340
12341
12342
12343
12344
12345
12346
12347
12348
12349
12350
12351
12352
12353
12354
12355
12356
12357
12358
12359
12360
12361
12362
12363
12364
12365
12366
12367
12368
12369
12370
12371
12372
12373
12374
12375
12376
12377
12378
12379
12380
12381
12382
12383
12384
12385
12386
12387
12388
12389
12390
12391
12392
12393
12394
12395
12396
12397
12398
12399
12400
12401
12402
12403
12404
12405
12406
12407
12408
12409
12410
12411
12412
12413
12414
12415
12416
12417
12418
12419
12420
12421
12422
12423
12424
12425
12426
12427
12428
12429
12430
12431
12432
12433
12434
12435
12436
12437
12438
12439
12440
12441
12442
12443
12444
12445
12446
12447
12448
12449
12450
12451
12452
12453
12454
12455
12456
12457
12458
12459
12460
12461
12462
12463
12464
12465
12466
12467
12468
12469
12470
12471
12472
12473
12474
12475
12476
12477
12478
12479
12480
12481
12482
12483
12484
12485
12486
12487
12488
12489
12490
12491
12492
12493
12494
12495
12496
12497
12498
12499
12500
12501
12502
12503
12504
12505
12506
12507
12508
12509
12510
12511
12512
12513
12514
12515
12516
12517
12518
12519
12520
12521
12522
12523
12524
12525
12526
12527
12528
12529
12530
12531
12532
12533
12534
12535
12536
12537
12538
12539
12540
12541
12542
12543
12544
12545
12546
12547
12548
12549
12550
12551
12552
12553
12554
12555
12556
12557
12558
12559
12560
12561
12562
12563
12564
12565
12566
12567
12568
12569
12570
12571
12572
12573
12574
12575
12576
12577
12578
12579
12580
12581
12582
12583
12584
12585
12586
12587
12588
12589
12590
12591
12592
12593
12594
12595
12596
12597
12598
12599
12600
12601
12602
12603
12604
12605
12606
12607
12608
12609
12610
12611
12612
12613
12614
12615
12616
12617
12618
12619
12620
12621
12622
12623
12624
12625
12626
12627
12628
12629
12630
12631
12632
12633
12634
12635
12636
12637
12638
12639
12640
12641
12642
12643
12644
12645
12646
12647
12648
12649
12650
12651
12652
12653
12654
12655
12656
12657
12658
12659
12660
12661
12662
12663
12664
12665
12666
12667
12668
12669
12670
12671
12672
12673
12674
12675
12676
12677
12678
12679
12680
12681
12682
12683
12684
12685
12686
12687
12688
12689
12690
12691
12692
12693
12694
12695
12696
12697
12698
12699
12700
12701
12702
12703
12704
12705
12706
12707
12708
12709
12710
12711
12712
12713
12714
12715
12716
12717
12718
12719
12720
12721
12722
12723
12724
12725
12726
12727
12728
12729
12730
12731
12732
12733
12734
12735
12736
12737
12738
12739
12740
12741
12742
12743
12744
12745
12746
12747
12748
12749
12750
12751
12752
12753
12754
12755
12756
12757
12758
12759
12760
12761
12762
12763
12764
12765
12766
12767
12768
12769
12770
12771
12772
12773
12774
12775
12776
12777
12778
12779
12780
12781
12782
12783
12784
12785
12786
12787
12788
12789
12790
12791
12792
12793
12794
12795
12796
12797
12798
12799
12800
12801
12802
12803
12804
12805
12806
12807
12808
12809
12810
12811
12812
12813
12814
12815
12816
12817
12818
12819
12820
12821
12822
12823
12824
12825
12826
12827
12828
12829
12830
12831
12832
12833
12834
12835
12836
12837
12838
12839
12840
12841
12842
12843
12844
12845
12846
12847
12848
12849
12850
12851
12852
12853
12854
12855
12856
12857
12858
12859
12860
12861
12862
12863
12864
12865
12866
12867
12868
12869
12870
12871
12872
12873
12874
12875
12876
12877
12878
12879
12880
12881
12882
12883
12884
12885
12886
12887
12888
12889
12890
12891
12892
12893
12894
12895
12896
12897
12898
12899
12900
12901
12902
12903
12904
12905
12906
12907
12908
12909
12910
12911
12912
12913
12914
12915
12916
12917
12918
12919
12920
12921
12922
12923
12924
12925
12926
12927
12928
12929
12930
12931
12932
12933
12934
12935
12936
12937
12938
12939
12940
12941
12942
12943
12944
12945
12946
12947
12948
12949
12950
12951
12952
12953
12954
12955
12956
12957
12958
12959
12960
12961
12962
12963
12964
12965
12966
12967
12968
12969
12970
12971
12972
12973
12974
12975
12976
12977
12978
12979
12980
12981
12982
12983
12984
12985
12986
12987
12988
12989
12990
12991
12992
12993
12994
12995
12996
12997
12998
12999
13000
13001
13002
13003
13004
13005
13006
13007
13008
13009
13010
13011
13012
13013
13014
13015
13016
13017
13018
13019
13020
13021
13022
13023
13024
13025
13026
13027
13028
13029
13030
13031
13032
13033
13034
13035
13036
13037
13038
13039
13040
13041
13042
13043
13044
13045
13046
13047
13048
13049
13050
13051
13052
13053
13054
13055
13056
13057
13058
13059
13060
13061
13062
13063
13064
13065
13066
13067
13068
13069
13070
13071
13072
13073
13074
13075
13076
13077
13078
13079
13080
13081
13082
13083
13084
13085
13086
13087
13088
13089
13090
13091
13092
13093
13094
13095
13096
13097
13098
13099
13100
13101
13102
13103
13104
13105
13106
13107
13108
13109
13110
13111
13112
13113
13114
13115
13116
13117
13118
13119
13120
13121
13122
13123
13124
13125
13126
13127
13128
13129
13130
13131
13132
13133
13134
13135
13136
13137
13138
13139
13140
13141
13142
13143
13144
13145
13146
13147
13148
13149
13150
13151
13152
13153
13154
13155
13156
13157
13158
13159
13160
13161
13162
13163
13164
13165
13166
13167
13168
13169
13170
13171
13172
13173
13174
13175
13176
13177
13178
13179
13180
13181
13182
13183
13184
13185
13186
13187
13188
13189
13190
13191
13192
13193
13194
13195
13196
13197
13198
13199
13200
13201
13202
13203
13204
13205
13206
13207
13208
13209
13210
13211
13212
13213
13214
13215
13216
13217
13218
13219
13220
13221
13222
13223
13224
13225
13226
13227
13228
13229
13230
13231
13232
13233
13234
13235
13236
13237
13238
13239
13240
13241
13242
13243
13244
13245
13246
13247
13248
13249
13250
13251
13252
13253
13254
13255
13256
13257
13258
13259
13260
13261
13262
13263
13264
13265
13266
13267
13268
13269
13270
13271
13272
13273
13274
13275
13276
13277
13278
13279
13280
13281
13282
13283
13284
13285
13286
13287
13288
13289
13290
13291
13292
13293
13294
13295
13296
13297
13298
13299
13300
13301
13302
13303
13304
13305
13306
13307
13308
13309
13310
13311
13312
13313
13314
13315
13316
13317
13318
13319
13320
13321
13322
13323
13324
13325
13326
13327
13328
13329
13330
13331
13332
13333
13334
13335
13336
13337
13338
13339
13340
13341
13342
13343
13344
13345
13346
13347
13348
13349
13350
13351
13352
13353
13354
13355
13356
13357
13358
13359
13360
13361
13362
13363
13364
13365
13366
13367
13368
13369
13370
13371
13372
13373
13374
13375
13376
13377
13378
13379
13380
13381
13382
13383
13384
13385
13386
13387
13388
13389
13390
13391
13392
13393
13394
13395
13396
13397
13398
13399
13400
13401
13402
13403
13404
13405
13406
13407
13408
13409
13410
13411
13412
13413
13414
13415
13416
13417
13418
13419
13420
13421
13422
13423
13424
13425
13426
13427
13428
13429
13430
13431
13432
13433
13434
13435
13436
13437
13438
13439
13440
13441
13442
13443
13444
13445
13446
13447
13448
13449
13450
13451
13452
13453
13454
13455
13456
13457
13458
13459
13460
13461
13462
13463
13464
13465
13466
13467
13468
13469
13470
13471
13472
13473
13474
13475
13476
13477
13478
13479
13480
13481
13482
13483
13484
13485
13486
13487
13488
13489
13490
13491
13492
13493
13494
13495
13496
13497
13498
13499
13500
13501
13502
13503
13504
13505
13506
13507
13508
13509
13510
13511
13512
13513
13514
13515
13516
13517
13518
13519
13520
13521
13522
13523
13524
13525
13526
13527
13528
13529
13530
13531
13532
13533
13534
13535
13536
13537
13538
13539
13540
13541
13542
13543
13544
13545
13546
13547
13548
13549
13550
13551
13552
13553
13554
13555
13556
13557
13558
13559
13560
13561
13562
13563
13564
13565
13566
13567
13568
13569
13570
13571
13572
13573
13574
13575
13576
13577
13578
13579
13580
13581
13582
13583
13584
13585
13586
13587
13588
13589
13590
13591
13592
13593
13594
13595
13596
13597
13598
13599
13600
13601
13602
13603
13604
13605
13606
13607
13608
13609
13610
13611
13612
13613
13614
13615
13616
13617
13618
13619
13620
13621
13622
13623
13624
13625
13626
13627
13628
13629
13630
13631
13632
13633
13634
13635
13636
13637
13638
13639
13640
13641
13642
13643
13644
13645
13646
13647
13648
13649
13650
13651
13652
13653
13654
13655
13656
13657
13658
13659
13660
13661
13662
13663
13664
13665
13666
13667
13668
13669
13670
13671
13672
13673
13674
13675
13676
13677
13678
13679
13680
13681
13682
13683
13684
13685
13686
13687
13688
13689
13690
13691
13692
13693
13694
13695
13696
13697
13698
13699
13700
13701
13702
13703
13704
13705
13706
13707
13708
13709
13710
13711
13712
13713
13714
13715
13716
13717
13718
13719
13720
13721
13722
13723
13724
13725
13726
13727
13728
13729
13730
13731
13732
13733
13734
13735
13736
13737
13738
13739
13740
13741
13742
13743
13744
13745
13746
13747
13748
13749
13750
13751
13752
13753
13754
13755
13756
13757
13758
13759
13760
13761
13762
13763
13764
13765
13766
13767
13768
13769
13770
13771
13772
13773
13774
13775
13776
13777
13778
13779
13780
13781
13782
13783
13784
13785
13786
13787
13788
13789
13790
13791
13792
13793
13794
13795
13796
13797
13798
13799
13800
13801
13802
13803
13804
13805
13806
13807
13808
13809
13810
13811
13812
13813
13814
13815
13816
13817
13818
13819
13820
13821
13822
13823
13824
13825
13826
13827
13828
13829
13830
13831
13832
13833
13834
13835
13836
13837
13838
13839
13840
13841
13842
13843
13844
13845
13846
13847
13848
13849
13850
13851
13852
13853
13854
13855
13856
13857
13858
13859
13860
13861
13862
13863
13864
13865
13866
13867
13868
13869
13870
13871
13872
13873
13874
13875
13876
13877
13878
13879
13880
13881
13882
13883
13884
13885
13886
13887
13888
13889
13890
13891
13892
13893
13894
13895
13896
13897
13898
13899
13900
13901
13902
13903
13904
13905
13906
13907
13908
13909
13910
13911
13912
13913
13914
13915
13916
13917
13918
13919
13920
13921
13922
13923
13924
13925
13926
13927
13928
13929
13930
13931
13932
13933
13934
13935
13936
13937
13938
13939
13940
13941
13942
13943
13944
13945
13946
13947
13948
13949
13950
13951
13952
13953
13954
13955
13956
13957
13958
13959
13960
13961
13962
13963
13964
13965
13966
13967
13968
13969
13970
13971
13972
13973
13974
13975
13976
13977
13978
13979
13980
13981
13982
13983
13984
13985
13986
13987
13988
13989
13990
13991
13992
13993
13994
13995
13996
13997
13998
13999
14000
14001
14002
14003
14004
14005
14006
14007
14008
14009
14010
14011
14012
14013
14014
14015
14016
14017
14018
14019
14020
14021
14022
14023
14024
14025
14026
14027
14028
14029
14030
14031
14032
14033
14034
14035
14036
14037
14038
14039
14040
14041
14042
14043
14044
14045
14046
14047
14048
14049
14050
14051
14052
14053
14054
14055
14056
14057
14058
14059
14060
14061
14062
14063
14064
14065
14066
14067
14068
14069
14070
14071
14072
14073
14074
14075
14076
14077
14078
14079
14080
14081
14082
14083
14084
14085
14086
14087
14088
14089
14090
14091
14092
14093
14094
14095
14096
14097
14098
14099
14100
14101
14102
14103
14104
14105
14106
14107
14108
14109
14110
14111
14112
14113
14114
14115
14116
14117
14118
14119
14120
14121
14122
14123
14124
14125
14126
14127
14128
14129
14130
14131
14132
14133
14134
14135
14136
14137
14138
14139
14140
14141
14142
14143
14144
14145
14146
14147
14148
14149
14150
14151
14152
14153
14154
14155
14156
14157
14158
14159
14160
14161
14162
14163
14164
14165
14166
14167
14168
14169
14170
14171
14172
14173
14174
14175
14176
14177
14178
14179
14180
14181
14182
14183
14184
14185
14186
14187
14188
14189
14190
14191
14192
14193
14194
14195
14196
14197
14198
14199
14200
14201
14202
14203
14204
14205
14206
14207
14208
14209
14210
14211
14212
14213
14214
14215
14216
14217
14218
14219
14220
14221
14222
14223
14224
14225
14226
14227
14228
14229
14230
14231
14232
14233
14234
14235
14236
14237
14238
14239
14240
14241
14242
14243
14244
14245
14246
14247
14248
14249
14250
14251
14252
14253
14254
14255
14256
14257
14258
14259
14260
14261
14262
14263
14264
14265
14266
14267
14268
14269
14270
14271
14272
14273
14274
14275
14276
14277
14278
14279
14280
14281
14282
14283
14284
14285
14286
14287
14288
14289
14290
14291
14292
14293
14294
14295
14296
14297
14298
14299
14300
14301
14302
14303
14304
14305
14306
14307
14308
14309
14310
14311
14312
14313
14314
14315
14316
14317
14318
14319
14320
14321
14322
14323
14324
14325
14326
14327
14328
14329
14330
14331
14332
14333
14334
14335
14336
14337
14338
14339
14340
14341
14342
14343
14344
14345
14346
14347
14348
14349
14350
14351
14352
14353
14354
14355
14356
14357
14358
14359
14360
14361
14362
14363
14364
14365
14366
14367
14368
14369
14370
14371
14372
14373
14374
14375
14376
14377
14378
14379
14380
14381
14382
14383
14384
14385
14386
14387
14388
14389
14390
14391
14392
14393
14394
14395
14396
14397
14398
14399
14400
14401
14402
14403
14404
14405
14406
14407
14408
14409
14410
14411
14412
14413
14414
14415
14416
14417
14418
14419
14420
14421
14422
14423
14424
14425
14426
14427
14428
14429
14430
14431
14432
14433
14434
14435
14436
14437
14438
14439
14440
14441
14442
14443
14444
14445
14446
14447
14448
14449
14450
14451
14452
14453
14454
14455
14456
14457
14458
14459
14460
14461
14462
14463
14464
14465
14466
14467
14468
14469
14470
14471
14472
14473
14474
14475
14476
14477
14478
14479
14480
14481
14482
14483
14484
14485
14486
14487
14488
14489
14490
14491
14492
14493
14494
14495
14496
14497
14498
14499
14500
14501
14502
14503
14504
14505
14506
14507
14508
14509
14510
14511
14512
14513
14514
14515
14516
14517
14518
14519
14520
14521
14522
14523
14524
14525
14526
14527
14528
14529
14530
14531
14532
14533
14534
14535
14536
14537
14538
14539
14540
14541
14542
14543
14544
14545
14546
14547
14548
14549
14550
14551
14552
14553
14554
14555
14556
14557
14558
14559
14560
14561
14562
14563
14564
14565
14566
14567
14568
14569
14570
14571
14572
14573
14574
14575
14576
14577
14578
14579
14580
14581
14582
14583
14584
14585
14586
14587
14588
14589
14590
14591
14592
14593
14594
14595
14596
14597
14598
14599
14600
14601
14602
14603
14604
14605
14606
14607
14608
14609
14610
14611
14612
14613
14614
14615
14616
14617
14618
14619
14620
14621
14622
14623
14624
14625
14626
14627
14628
14629
14630
14631
14632
14633
14634
14635
14636
14637
14638
14639
14640
14641
14642
14643
14644
14645
14646
14647
14648
14649
14650
14651
14652
14653
14654
14655
14656
14657
14658
14659
14660
14661
14662
14663
14664
14665
14666
14667
14668
14669
14670
14671
14672
14673
14674
14675
14676
14677
14678
14679
14680
14681
14682
14683
14684
14685
14686
14687
14688
14689
14690
14691
14692
14693
14694
14695
14696
14697
14698
14699
14700
14701
14702
14703
14704
14705
14706
14707
14708
14709
14710
14711
14712
14713
14714
14715
14716
14717
14718
14719
14720
14721
14722
14723
14724
14725
14726
14727
14728
14729
14730
14731
14732
14733
14734
14735
14736
14737
14738
14739
14740
14741
14742
14743
14744
14745
14746
14747
14748
14749
14750
14751
14752
14753
14754
14755
14756
14757
14758
14759
14760
14761
14762
14763
14764
14765
14766
14767
14768
14769
14770
14771
14772
14773
14774
14775
14776
14777
14778
14779
14780
14781
14782
14783
14784
14785
14786
14787
14788
14789
14790
14791
14792
14793
14794
14795
14796
14797
14798
14799
14800
14801
14802
14803
14804
14805
14806
14807
14808
14809
14810
14811
14812
14813
14814
14815
14816
14817
14818
14819
14820
14821
14822
14823
14824
14825
14826
14827
14828
14829
14830
14831
14832
14833
14834
14835
14836
14837
14838
14839
14840
14841
14842
14843
14844
14845
14846
14847
14848
14849
14850
14851
14852
14853
14854
14855
14856
14857
14858
14859
14860
14861
14862
14863
14864
14865
14866
14867
14868
14869
14870
14871
14872
14873
14874
14875
14876
14877
14878
14879
14880
14881
14882
14883
14884
14885
14886
14887
14888
14889
14890
14891
14892
14893
14894
14895
14896
14897
14898
14899
14900
14901
14902
14903
14904
14905
14906
14907
14908
14909
14910
14911
14912
14913
14914
14915
14916
14917
14918
14919
14920
14921
14922
14923
14924
14925
14926
14927
14928
14929
14930
14931
14932
14933
14934
14935
14936
14937
14938
14939
14940
14941
14942
14943
14944
14945
14946
14947
14948
14949
14950
14951
14952
14953
14954
14955
14956
14957
14958
14959
14960
14961
14962
14963
14964
14965
14966
14967
14968
14969
14970
14971
14972
14973
14974
14975
14976
14977
14978
14979
14980
14981
14982
14983
14984
14985
14986
14987
14988
14989
14990
14991
14992
14993
14994
14995
14996
14997
14998
14999
15000
15001
15002
15003
15004
15005
15006
15007
15008
15009
15010
15011
15012
15013
15014
15015
15016
15017
15018
15019
15020
15021
15022
15023
15024
15025
15026
15027
15028
15029
15030
15031
15032
15033
15034
15035
15036
15037
15038
15039
15040
15041
15042
15043
15044
15045
15046
15047
15048
15049
15050
15051
15052
15053
15054
15055
15056
15057
15058
15059
15060
15061
15062
15063
15064
15065
15066
15067
15068
15069
15070
15071
15072
15073
15074
15075
15076
15077
15078
15079
15080
15081
15082
15083
15084
15085
15086
15087
15088
15089
15090
15091
15092
15093
15094
15095
15096
15097
15098
15099
15100
15101
15102
15103
15104
15105
15106
15107
15108
15109
15110
15111
15112
15113
15114
15115
15116
15117
15118
15119
15120
15121
15122
15123
15124
15125
15126
15127
15128
15129
15130
15131
15132
15133
15134
15135
15136
15137
15138
15139
15140
15141
15142
15143
15144
15145
15146
15147
15148
15149
15150
15151
15152
15153
15154
15155
15156
15157
15158
15159
15160
15161
15162
15163
15164
15165
15166
15167
15168
15169
15170
15171
15172
15173
15174
15175
15176
15177
15178
15179
15180
15181
15182
15183
15184
15185
15186
15187
15188
15189
15190
15191
15192
15193
15194
15195
15196
15197
15198
15199
15200
15201
15202
15203
15204
15205
15206
15207
15208
15209
15210
15211
15212
15213
15214
15215
15216
15217
15218
15219
15220
15221
15222
15223
15224
15225
15226
15227
15228
15229
15230
15231
15232
15233
15234
15235
15236
15237
15238
15239
15240
15241
15242
15243
15244
15245
15246
15247
15248
15249
15250
15251
15252
15253
15254
15255
15256
15257
15258
15259
15260
15261
15262
15263
15264
15265
15266
15267
15268
15269
15270
15271
15272
15273
15274
15275
15276
15277
15278
15279
15280
15281
15282
15283
15284
15285
15286
15287
15288
15289
15290
15291
15292
15293
15294
15295
15296
15297
15298
15299
15300
15301
15302
15303
15304
15305
15306
15307
15308
15309
15310
15311
15312
15313
15314
15315
15316
15317
15318
15319
15320
15321
15322
15323
15324
15325
15326
15327
15328
15329
15330
15331
15332
15333
15334
15335
15336
15337
15338
15339
15340
15341
15342
15343
15344
15345
15346
15347
15348
15349
15350
15351
15352
15353
15354
15355
15356
15357
15358
15359
15360
15361
15362
15363
15364
15365
15366
15367
15368
15369
15370
15371
15372
15373
15374
15375
15376
15377
15378
15379
15380
15381
15382
15383
15384
15385
15386
15387
15388
15389
15390
15391
15392
15393
15394
15395
15396
15397
15398
15399
15400
15401
15402
15403
15404
15405
15406
15407
15408
15409
15410
15411
15412
15413
15414
15415
15416
15417
15418
15419
15420
15421
15422
15423
15424
15425
15426
15427
15428
15429
15430
15431
15432
15433
15434
15435
15436
15437
15438
15439
15440
15441
15442
15443
15444
15445
15446
15447
15448
15449
15450
15451
15452
15453
15454
15455
15456
15457
15458
15459
15460
15461
15462
15463
15464
15465
15466
15467
15468
15469
15470
15471
15472
15473
15474
15475
15476
15477
15478
15479
15480
15481
15482
15483
15484
15485
15486
15487
15488
15489
15490
15491
15492
15493
15494
15495
15496
15497
15498
15499
15500
15501
15502
15503
15504
15505
15506
15507
15508
15509
15510
15511
15512
15513
15514
15515
15516
15517
15518
15519
15520
15521
15522
15523
15524
15525
15526
15527
15528
15529
15530
15531
15532
15533
15534
15535
15536
15537
15538
15539
15540
15541
15542
15543
15544
15545
15546
15547
15548
15549
15550
15551
15552
15553
15554
15555
15556
15557
15558
15559
15560
15561
15562
15563
15564
15565
15566
15567
15568
15569
15570
15571
15572
15573
15574
15575
15576
15577
15578
15579
15580
15581
15582
15583
15584
15585
15586
15587
15588
15589
15590
15591
15592
15593
15594
15595
15596
15597
15598
15599
15600
15601
15602
15603
15604
15605
15606
15607
15608
15609
15610
15611
15612
15613
15614
15615
15616
15617
15618
15619
15620
15621
15622
15623
15624
15625
15626
15627
15628
15629
15630
15631
15632
15633
15634
15635
15636
15637
15638
15639
15640
15641
15642
15643
15644
15645
15646
15647
15648
15649
15650
15651
15652
15653
15654
15655
15656
15657
15658
15659
15660
15661
15662
15663
15664
15665
15666
15667
15668
15669
15670
15671
15672
15673
15674
15675
15676
15677
15678
15679
15680
15681
15682
15683
15684
15685
15686
15687
15688
15689
15690
15691
15692
15693
15694
15695
15696
15697
15698
15699
15700
15701
15702
15703
15704
15705
15706
15707
15708
15709
15710
15711
15712
15713
15714
15715
15716
15717
15718
15719
15720
15721
15722
15723
15724
15725
15726
15727
15728
15729
15730
15731
15732
15733
15734
15735
15736
15737
15738
15739
15740
15741
15742
15743
15744
15745
15746
15747
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757
15758
15759
15760
15761
15762
15763
15764
15765
15766
15767
15768
15769
15770
15771
15772
15773
15774
15775
15776
15777
15778
15779
15780
15781
15782
15783
15784
15785
15786
15787
15788
15789
15790
15791
15792
15793
15794
15795
15796
15797
15798
15799
15800
15801
15802
15803
15804
15805
15806
15807
15808
15809
15810
15811
15812
15813
15814
15815
15816
15817
15818
15819
15820
15821
15822
15823
15824
15825
15826
15827
15828
15829
15830
15831
15832
15833
15834
15835
15836
15837
15838
15839
15840
15841
15842
15843
15844
15845
15846
15847
15848
15849
15850
15851
15852
15853
15854
15855
15856
15857
15858
15859
15860
15861
15862
15863
15864
15865
15866
15867
15868
15869
15870
15871
15872
15873
15874
15875
15876
15877
15878
15879
15880
15881
15882
15883
15884
15885
15886
15887
15888
15889
15890
15891
15892
15893
15894
15895
15896
15897
15898
15899
15900
15901
15902
15903
15904
15905
15906
15907
15908
15909
15910
15911
15912
15913
15914
15915
15916
15917
15918
15919
15920
15921
15922
15923
15924
15925
15926
15927
15928
15929
15930
15931
15932
15933
15934
15935
15936
15937
15938
15939
15940
15941
15942
15943
15944
15945
15946
15947
15948
15949
15950
15951
15952
15953
15954
15955
15956
15957
15958
15959
15960
15961
15962
15963
15964
15965
15966
15967
15968
15969
15970
15971
15972
15973
15974
15975
15976
15977
15978
15979
15980
15981
15982
15983
15984
15985
15986
15987
15988
15989
15990
15991
15992
15993
15994
15995
15996
15997
15998
15999
16000
16001
16002
16003
16004
16005
16006
16007
16008
16009
16010
16011
16012
16013
16014
16015
16016
16017
16018
16019
16020
16021
16022
16023
16024
16025
16026
16027
16028
16029
16030
16031
16032
16033
16034
16035
16036
16037
16038
16039
16040
16041
16042
16043
16044
16045
16046
16047
16048
16049
16050
16051
16052
16053
16054
16055
16056
16057
16058
16059
16060
16061
16062
16063
16064
16065
16066
16067
16068
16069
16070
16071
16072
16073
16074
16075
16076
16077
16078
16079
16080
16081
16082
16083
16084
16085
16086
16087
16088
16089
16090
16091
16092
16093
16094
16095
16096
16097
16098
16099
16100
16101
16102
16103
16104
16105
16106
16107
16108
16109
16110
16111
16112
16113
16114
16115
16116
16117
16118
16119
16120
16121
16122
16123
16124
16125
16126
16127
16128
16129
16130
16131
16132
16133
16134
16135
16136
16137
16138
16139
16140
16141
16142
16143
16144
16145
16146
16147
16148
16149
16150
16151
16152
16153
16154
16155
16156
16157
16158
16159
16160
16161
16162
16163
16164
16165
16166
16167
16168
16169
16170
16171
16172
16173
16174
16175
16176
16177
16178
16179
16180
16181
16182
16183
16184
16185
16186
16187
16188
16189
16190
16191
16192
16193
16194
16195
16196
16197
16198
16199
16200
16201
16202
16203
16204
16205
16206
16207
16208
16209
16210
16211
16212
16213
16214
16215
16216
16217
16218
16219
16220
16221
16222
16223
16224
16225
16226
16227
16228
16229
16230
16231
16232
16233
16234
16235
16236
16237
16238
16239
16240
16241
16242
16243
16244
16245
16246
16247
16248
16249
16250
16251
16252
16253
16254
16255
16256
16257
16258
16259
16260
16261
16262
16263
16264
16265
16266
16267
16268
16269
16270
16271
16272
16273
16274
16275
16276
16277
16278
16279
16280
16281
16282
16283
16284
16285
16286
16287
16288
16289
16290
16291
16292
16293
16294
16295
16296
16297
16298
16299
16300
16301
16302
16303
16304
16305
16306
16307
16308
16309
16310
16311
16312
16313
16314
16315
16316
16317
16318
16319
16320
16321
16322
16323
16324
16325
16326
16327
16328
16329
16330
16331
16332
16333
16334
16335
16336
16337
16338
16339
16340
16341
16342
16343
16344
16345
16346
16347
16348
16349
16350
16351
16352
16353
16354
16355
16356
16357
16358
16359
16360
16361
16362
16363
16364
16365
16366
16367
16368
16369
16370
16371
16372
16373
16374
16375
16376
16377
16378
16379
16380
16381
16382
16383
16384
16385
16386
16387
16388
16389
16390
16391
16392
16393
16394
16395
16396
16397
16398
16399
16400
16401
16402
16403
16404
16405
16406
16407
16408
16409
16410
16411
16412
16413
16414
16415
16416
16417
16418
16419
16420
16421
16422
16423
16424
16425
16426
16427
16428
16429
16430
16431
16432
16433
16434
16435
16436
16437
16438
16439
16440
16441
16442
16443
16444
16445
16446
16447
16448
16449
16450
16451
16452
16453
16454
16455
16456
16457
16458
16459
16460
16461
16462
16463
16464
16465
16466
16467
16468
16469
16470
16471
16472
16473
16474
16475
16476
16477
16478
16479
16480
16481
16482
16483
16484
16485
16486
16487
16488
16489
16490
16491
16492
16493
16494
16495
16496
16497
16498
16499
16500
16501
16502
16503
16504
16505
16506
16507
16508
16509
16510
16511
16512
16513
16514
16515
16516
16517
16518
16519
16520
16521
16522
16523
16524
16525
16526
16527
16528
16529
16530
16531
16532
16533
16534
16535
16536
16537
16538
16539
16540
16541
16542
16543
16544
16545
16546
16547
16548
16549
16550
16551
16552
16553
16554
16555
16556
16557
16558
16559
16560
16561
16562
16563
16564
16565
16566
16567
16568
16569
16570
16571
16572
16573
16574
16575
16576
16577
16578
16579
16580
16581
16582
16583
16584
16585
16586
16587
16588
16589
16590
16591
16592
16593
16594
16595
16596
16597
16598
16599
16600
16601
16602
16603
16604
16605
16606
16607
16608
16609
16610
16611
16612
16613
16614
16615
16616
16617
16618
16619
16620
16621
16622
16623
16624
16625
16626
16627
16628
16629
16630
16631
16632
16633
16634
16635
16636
16637
16638
16639
16640
16641
16642
16643
16644
16645
16646
16647
16648
16649
16650
16651
16652
16653
16654
16655
16656
16657
16658
16659
16660
16661
16662
16663
16664
16665
16666
16667
16668
16669
16670
16671
16672
16673
16674
16675
16676
16677
16678
16679
16680
16681
16682
16683
16684
16685
16686
16687
16688
16689
16690
16691
16692
16693
16694
16695
16696
16697
16698
16699
16700
16701
16702
16703
16704
16705
16706
16707
16708
16709
16710
16711
16712
16713
16714
16715
16716
16717
16718
16719
16720
16721
16722
16723
16724
16725
16726
16727
16728
16729
16730
16731
16732
16733
16734
16735
16736
16737
16738
16739
16740
16741
16742
16743
16744
16745
16746
16747
16748
16749
16750
16751
16752
16753
16754
16755
16756
16757
16758
16759
16760
16761
16762
16763
16764
16765
16766
16767
16768
16769
16770
16771
16772
16773
16774
16775
16776
16777
16778
16779
16780
16781
16782
16783
16784
16785
16786
16787
16788
16789
16790
16791
16792
16793
16794
16795
16796
16797
16798
16799
16800
16801
16802
16803
16804
16805
16806
16807
16808
16809
16810
16811
16812
16813
16814
16815
16816
16817
16818
16819
16820
16821
16822
16823
16824
16825
16826
16827
16828
16829
16830
16831
16832
16833
16834
16835
16836
16837
16838
16839
16840
16841
16842
16843
16844
16845
16846
16847
16848
16849
16850
16851
16852
16853
16854
16855
16856
16857
16858
16859
16860
16861
16862
16863
16864
16865
16866
16867
16868
16869
16870
16871
16872
16873
16874
16875
16876
16877
16878
16879
16880
16881
16882
16883
16884
16885
16886
16887
16888
16889
16890
16891
16892
16893
16894
16895
16896
16897
16898
16899
16900
16901
16902
16903
16904
16905
16906
16907
16908
16909
16910
16911
16912
16913
16914
16915
16916
16917
16918
16919
16920
16921
16922
16923
16924
16925
16926
16927
16928
16929
16930
16931
16932
16933
16934
16935
16936
16937
16938
16939
16940
16941
16942
16943
16944
16945
16946
16947
16948
16949
16950
16951
16952
16953
16954
16955
16956
16957
16958
16959
16960
16961
16962
16963
16964
16965
16966
16967
16968
16969
16970
16971
16972
16973
16974
16975
16976
16977
16978
16979
16980
16981
16982
16983
16984
16985
16986
16987
16988
16989
16990
16991
16992
16993
16994
16995
16996
16997
16998
16999
17000
17001
17002
17003
17004
17005
17006
17007
17008
17009
17010
17011
17012
17013
17014
17015
17016
17017
17018
17019
17020
17021
17022
17023
17024
17025
17026
17027
17028
17029
17030
17031
17032
17033
17034
17035
17036
17037
17038
17039
17040
17041
17042
17043
17044
17045
17046
17047
17048
17049
17050
17051
17052
17053
17054
17055
17056
17057
17058
17059
17060
17061
17062
17063
17064
17065
17066
17067
17068
17069
17070
17071
17072
17073
17074
17075
17076
17077
17078
17079
17080
17081
17082
17083
17084
17085
17086
17087
17088
17089
17090
17091
17092
17093
17094
17095
17096
17097
17098
17099
17100
17101
17102
17103
17104
17105
17106
17107
17108
17109
17110
17111
17112
17113
17114
17115
17116
17117
17118
17119
17120
17121
17122
17123
17124
17125
17126
17127
17128
17129
17130
17131
17132
17133
17134
17135
17136
17137
17138
17139
17140
17141
17142
17143
17144
17145
17146
17147
17148
17149
17150
17151
17152
17153
17154
17155
17156
17157
17158
17159
17160
17161
17162
17163
17164
17165
17166
17167
17168
17169
17170
17171
17172
17173
17174
17175
17176
17177
17178
17179
17180
17181
17182
17183
17184
17185
17186
17187
17188
17189
17190
17191
17192
17193
17194
17195
17196
17197
17198
17199
17200
17201
17202
17203
17204
17205
17206
17207
17208
17209
17210
17211
17212
17213
17214
17215
17216
17217
17218
17219
17220
17221
17222
17223
17224
17225
17226
17227
17228
17229
17230
17231
17232
17233
17234
17235
17236
17237
17238
17239
17240
17241
17242
17243
17244
17245
17246
17247
17248
17249
17250
17251
17252
17253
17254
17255
17256
17257
17258
17259
17260
17261
17262
17263
17264
17265
17266
17267
17268
17269
17270
17271
17272
17273
17274
17275
17276
17277
17278
17279
17280
17281
17282
17283
17284
17285
17286
17287
17288
17289
17290
17291
17292
17293
17294
17295
17296
17297
17298
17299
17300
17301
17302
17303
17304
17305
17306
17307
17308
17309
17310
17311
17312
17313
17314
17315
17316
17317
17318
17319
17320
17321
17322
17323
17324
17325
17326
17327
17328
17329
17330
17331
17332
17333
17334
17335
17336
17337
17338
17339
17340
17341
17342
17343
17344
17345
17346
17347
17348
17349
17350
17351
17352
17353
17354
17355
17356
17357
17358
17359
17360
17361
17362
17363
17364
17365
17366
17367
17368
17369
17370
17371
17372
17373
17374
17375
17376
17377
17378
17379
17380
17381
17382
17383
17384
17385
17386
17387
17388
17389
17390
17391
17392
17393
17394
17395
17396
17397
17398
17399
17400
17401
17402
17403
17404
17405
17406
17407
17408
17409
17410
17411
17412
17413
17414
17415
17416
17417
17418
17419
17420
17421
17422
17423
17424
17425
17426
17427
17428
17429
17430
17431
17432
17433
17434
17435
17436
17437
17438
17439
17440
17441
17442
17443
17444
17445
17446
17447
17448
17449
17450
17451
17452
17453
17454
17455
17456
17457
17458
17459
17460
17461
17462
17463
17464
17465
17466
17467
17468
17469
17470
17471
17472
17473
17474
17475
17476
17477
17478
17479
17480
17481
17482
17483
17484
17485
17486
17487
17488
17489
17490
17491
17492
17493
17494
17495
17496
17497
17498
17499
17500
17501
17502
17503
17504
17505
17506
17507
17508
17509
17510
17511
17512
17513
17514
17515
17516
17517
17518
17519
17520
17521
17522
17523
17524
17525
17526
17527
17528
17529
17530
17531
17532
17533
17534
17535
17536
17537
17538
17539
17540
17541
17542
17543
17544
17545
17546
17547
17548
17549
17550
17551
17552
17553
17554
17555
17556
17557
17558
17559
17560
17561
17562
17563
17564
17565
17566
17567
17568
17569
17570
17571
17572
17573
17574
17575
17576
17577
17578
17579
17580
17581
17582
17583
17584
17585
17586
17587
17588
17589
17590
17591
17592
17593
17594
17595
17596
17597
17598
17599
17600
17601
17602
17603
17604
17605
17606
17607
17608
17609
17610
17611
17612
17613
17614
17615
17616
17617
17618
17619
17620
17621
17622
17623
17624
17625
17626
17627
17628
17629
17630
17631
17632
17633
17634
17635
17636
17637
17638
17639
17640
17641
17642
17643
17644
17645
17646
17647
17648
17649
17650
17651
17652
17653
17654
17655
17656
17657
17658
17659
17660
17661
17662
17663
17664
17665
17666
17667
17668
17669
17670
17671
17672
17673
17674
17675
17676
17677
17678
17679
17680
17681
17682
17683
17684
17685
17686
17687
17688
17689
17690
17691
17692
17693
17694
17695
17696
17697
17698
17699
17700
17701
17702
17703
17704
17705
17706
17707
17708
17709
17710
17711
17712
17713
17714
17715
17716
17717
17718
17719
17720
17721
17722
17723
17724
17725
17726
17727
17728
17729
17730
17731
17732
17733
17734
17735
17736
17737
17738
17739
17740
17741
17742
17743
17744
17745
17746
17747
17748
17749
17750
17751
17752
17753
17754
17755
17756
17757
17758
17759
17760
17761
17762
17763
17764
17765
17766
17767
17768
17769
17770
17771
17772
17773
17774
17775
17776
17777
17778
17779
17780
17781
17782
17783
17784
17785
17786
17787
17788
17789
17790
17791
17792
17793
17794
17795
17796
17797
17798
17799
17800
17801
17802
17803
17804
17805
17806
17807
17808
17809
17810
17811
17812
17813
17814
17815
17816
17817
17818
17819
17820
17821
17822
17823
17824
17825
17826
17827
17828
17829
17830
17831
17832
17833
17834
17835
17836
17837
17838
17839
17840
17841
17842
17843
17844
17845
17846
17847
17848
17849
17850
17851
17852
17853
17854
17855
17856
17857
17858
17859
17860
17861
17862
17863
17864
17865
17866
17867
17868
17869
17870
17871
17872
17873
17874
17875
17876
17877
17878
17879
17880
17881
17882
17883
17884
17885
17886
17887
17888
17889
17890
17891
17892
17893
17894
17895
17896
17897
17898
17899
17900
17901
17902
17903
17904
17905
17906
17907
17908
17909
17910
17911
17912
17913
17914
17915
17916
17917
17918
17919
17920
17921
17922
17923
17924
17925
17926
17927
17928
17929
17930
17931
17932
17933
17934
17935
17936
17937
17938
17939
17940
17941
17942
17943
17944
17945
17946
17947
17948
17949
17950
17951
17952
17953
17954
17955
17956
17957
17958
17959
17960
17961
17962
17963
17964
17965
17966
17967
17968
17969
17970
17971
17972
17973
17974
17975
17976
17977
17978
17979
17980
17981
17982
17983
17984
17985
17986
17987
17988
17989
17990
17991
17992
17993
17994
17995
17996
17997
17998
17999
18000
18001
18002
18003
18004
18005
18006
18007
18008
18009
18010
18011
18012
18013
18014
18015
18016
18017
18018
18019
18020
18021
18022
18023
18024
18025
18026
18027
18028
18029
18030
18031
18032
18033
18034
18035
18036
18037
18038
18039
18040
18041
18042
18043
18044
18045
18046
18047
18048
18049
18050
18051
18052
18053
18054
18055
18056
18057
18058
18059
18060
18061
18062
18063
18064
18065
18066
18067
18068
18069
18070
18071
18072
18073
18074
18075
18076
18077
18078
18079
18080
18081
18082
18083
18084
18085
18086
18087
18088
18089
18090
18091
18092
18093
18094
18095
18096
18097
18098
18099
18100
18101
18102
18103
18104
18105
18106
18107
18108
18109
18110
18111
18112
18113
18114
18115
18116
18117
18118
18119
18120
18121
18122
18123
18124
18125
18126
18127
18128
18129
18130
18131
18132
18133
18134
18135
18136
18137
18138
18139
18140
18141
18142
18143
18144
18145
18146
18147
18148
18149
18150
18151
18152
18153
18154
18155
18156
18157
18158
18159
18160
18161
18162
18163
18164
18165
18166
18167
18168
18169
18170
18171
18172
18173
18174
18175
18176
18177
18178
18179
18180
18181
18182
18183
18184
18185
18186
18187
18188
18189
18190
18191
18192
18193
18194
18195
18196
18197
18198
18199
18200
18201
18202
18203
18204
18205
18206
18207
18208
18209
18210
18211
18212
18213
18214
18215
18216
18217
18218
18219
18220
18221
18222
18223
18224
18225
18226
18227
18228
18229
18230
18231
18232
18233
18234
18235
18236
18237
18238
18239
18240
18241
18242
18243
18244
18245
18246
18247
18248
18249
18250
18251
18252
18253
18254
18255
18256
18257
18258
18259
18260
18261
18262
18263
18264
18265
18266
18267
18268
18269
18270
18271
18272
18273
18274
18275
18276
18277
18278
18279
18280
18281
18282
18283
18284
18285
18286
18287
18288
18289
18290
18291
18292
18293
18294
18295
18296
18297
18298
18299
18300
18301
18302
18303
18304
18305
18306
18307
18308
18309
18310
18311
18312
18313
18314
18315
18316
18317
18318
18319
18320
18321
18322
18323
18324
18325
18326
18327
18328
18329
18330
18331
18332
18333
18334
18335
18336
18337
18338
18339
18340
18341
18342
18343
18344
18345
18346
18347
18348
18349
18350
18351
18352
18353
18354
18355
18356
18357
18358
18359
18360
18361
18362
18363
18364
18365
18366
18367
18368
18369
18370
18371
18372
18373
18374
18375
18376
18377
18378
18379
18380
18381
18382
18383
18384
18385
18386
18387
18388
18389
18390
18391
18392
18393
18394
18395
18396
18397
18398
18399
18400
18401
18402
18403
18404
18405
18406
18407
18408
18409
18410
18411
18412
18413
18414
18415
18416
18417
18418
18419
18420
18421
18422
18423
18424
18425
18426
18427
18428
18429
18430
18431
18432
18433
18434
18435
18436
18437
18438
18439
18440
18441
18442
18443
18444
18445
18446
18447
18448
18449
18450
18451
18452
18453
18454
18455
18456
18457
18458
18459
18460
18461
18462
18463
18464
18465
18466
18467
18468
18469
18470
18471
18472
18473
18474
18475
18476
18477
18478
18479
18480
18481
18482
18483
18484
18485
18486
18487
18488
18489
18490
18491
18492
18493
18494
18495
18496
18497
18498
18499
18500
18501
18502
18503
18504
18505
18506
18507
18508
18509
18510
18511
18512
18513
18514
18515
18516
18517
18518
18519
18520
18521
18522
18523
18524
18525
18526
18527
18528
18529
18530
18531
18532
18533
18534
18535
18536
18537
18538
18539
18540
18541
18542
18543
18544
18545
18546
18547
18548
18549
18550
18551
18552
18553
18554
18555
18556
18557
18558
18559
18560
18561
18562
18563
18564
18565
18566
18567
18568
18569
18570
18571
18572
18573
18574
18575
18576
18577
18578
18579
18580
18581
18582
18583
18584
18585
18586
18587
18588
18589
18590
18591
18592
18593
18594
18595
18596
18597
18598
18599
18600
18601
18602
18603
18604
18605
18606
18607
18608
18609
18610
18611
18612
18613
18614
18615
18616
18617
18618
18619
18620
18621
18622
18623
18624
18625
18626
18627
18628
18629
18630
18631
18632
18633
18634
18635
18636
18637
18638
18639
18640
18641
18642
18643
18644
18645
18646
18647
18648
18649
18650
18651
18652
18653
18654
18655
18656
18657
18658
18659
18660
18661
18662
18663
18664
18665
18666
18667
18668
18669
18670
18671
18672
18673
18674
18675
18676
18677
18678
18679
18680
18681
18682
18683
18684
18685
18686
18687
18688
18689
18690
18691
18692
18693
18694
18695
18696
18697
18698
18699
18700
18701
18702
18703
18704
18705
18706
18707
18708
18709
18710
18711
18712
18713
18714
18715
18716
18717
18718
18719
18720
18721
18722
18723
18724
18725
18726
18727
18728
18729
18730
18731
18732
18733
18734
18735
18736
18737
18738
18739
18740
18741
18742
18743
18744
18745
18746
18747
18748
18749
18750
18751
18752
18753
18754
18755
18756
18757
18758
18759
18760
18761
18762
18763
18764
18765
18766
18767
18768
18769
18770
18771
18772
18773
18774
18775
18776
18777
18778
18779
18780
18781
18782
18783
18784
18785
18786
18787
18788
18789
18790
18791
18792
18793
18794
18795
18796
18797
18798
18799
18800
18801
18802
18803
18804
18805
18806
18807
18808
18809
18810
18811
18812
18813
18814
18815
18816
18817
18818
18819
18820
18821
18822
18823
18824
18825
18826
18827
18828
18829
18830
18831
18832
18833
18834
18835
18836
18837
18838
18839
18840
18841
18842
18843
18844
18845
18846
18847
18848
18849
18850
18851
18852
18853
18854
18855
18856
18857
18858
18859
18860
18861
18862
18863
18864
18865
18866
18867
18868
18869
18870
18871
18872
18873
18874
18875
18876
18877
18878
18879
18880
18881
18882
18883
18884
18885
18886
18887
18888
18889
18890
18891
18892
18893
18894
18895
18896
18897
18898
18899
18900
18901
18902
18903
18904
18905
18906
18907
18908
18909
18910
18911
18912
18913
18914
18915
18916
18917
18918
18919
18920
18921
18922
18923
18924
18925
18926
18927
18928
18929
18930
18931
18932
18933
18934
18935
18936
18937
18938
18939
18940
18941
18942
18943
18944
18945
18946
18947
18948
18949
18950
18951
18952
18953
18954
18955
18956
18957
18958
18959
18960
18961
18962
18963
18964
18965
18966
18967
18968
18969
18970
18971
18972
18973
18974
18975
18976
18977
18978
18979
18980
18981
18982
18983
18984
18985
18986
18987
18988
18989
18990
18991
18992
18993
18994
18995
18996
18997
18998
18999
19000
19001
19002
19003
19004
19005
19006
19007
19008
19009
19010
19011
19012
19013
19014
19015
19016
19017
19018
19019
19020
19021
19022
19023
19024
19025
19026
19027
19028
19029
19030
19031
19032
19033
19034
19035
19036
19037
19038
19039
19040
19041
19042
19043
19044
19045
19046
19047
19048
19049
19050
19051
19052
19053
19054
19055
19056
19057
19058
19059
19060
19061
19062
19063
19064
19065
19066
19067
19068
19069
19070
19071
19072
19073
19074
19075
19076
19077
19078
19079
19080
19081
19082
19083
19084
19085
19086
19087
19088
19089
19090
19091
19092
19093
19094
19095
19096
19097
19098
19099
19100
19101
19102
19103
19104
19105
19106
19107
19108
19109
19110
19111
19112
19113
19114
19115
19116
19117
19118
19119
19120
19121
19122
19123
19124
19125
19126
19127
19128
19129
19130
19131
19132
19133
19134
19135
19136
19137
19138
19139
19140
19141
19142
19143
19144
19145
19146
19147
19148
19149
19150
19151
19152
19153
19154
19155
19156
19157
19158
19159
19160
19161
19162
19163
19164
19165
19166
19167
19168
19169
19170
19171
19172
19173
19174
19175
19176
19177
19178
19179
19180
19181
19182
19183
19184
19185
19186
19187
19188
19189
19190
19191
19192
19193
19194
19195
19196
19197
19198
|
; $Id: VBoxBiosAlternative386.asm $
;; @file
; Auto Generated source file. Do not edit.
;
;
; Source file: post.c
;
; $Id: VBoxBiosAlternative386.asm $
; BIOS POST routines. Used only during initialization.
;
;
;
; Copyright (C) 2004-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: bios.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: print.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: ata.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ATA disk support.
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: floppy.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: floppyt.c
;
; $Id: VBoxBiosAlternative386.asm $
; Floppy drive tables.
;
;
;
; Copyright (C) 2011-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: eltorito.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: boot.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: keyboard.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: disk.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: serial.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: system.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: invop.c
;
; $Id: VBoxBiosAlternative386.asm $
; Real mode invalid opcode handler.
;
;
;
; Copyright (C) 2013-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: timepci.c
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: ps2mouse.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: parallel.c
;
; $Id: VBoxBiosAlternative386.asm $
; PC BIOS - ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: logo.c
;
; $Id: VBoxBiosAlternative386.asm $
; Stuff for drawing the BIOS logo.
;
;
;
; Copyright (C) 2004-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: scsi.c
;
; $Id: VBoxBiosAlternative386.asm $
; SCSI host adapter driver to boot from SCSI disks
;
;
;
; Copyright (C) 2004-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: ahci.c
;
; $Id: VBoxBiosAlternative386.asm $
; AHCI host adapter driver to boot from SATA disks.
;
;
;
; Copyright (C) 2011-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: virtio.c
;
; $Id: VBoxBiosAlternative386.asm $
; VirtIO-SCSI host adapter driver to boot from disks.
;
;
;
; Copyright (C) 2019-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: buslogic.c
;
; $Id: VBoxBiosAlternative386.asm $
; BusLogic SCSI host adapter driver to boot from disks.
;
;
;
; Copyright (C) 2021-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: lsilogic.c
;
; $Id: VBoxBiosAlternative386.asm $
; LsiLogic SCSI host adapter driver to boot from disks.
;
;
;
; Copyright (C) 2021-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: apm.c
;
; $Id: VBoxBiosAlternative386.asm $
; APM BIOS support. Implements APM version 1.2.
;
;
;
; Copyright (C) 2004-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: pcibios.c
;
; $Id: VBoxBiosAlternative386.asm $
; PCI BIOS support.
;
;
;
; Copyright (C) 2004-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: pciutil.c
;
; $Id: VBoxBiosAlternative386.asm $
; Utility routines for calling the PCI BIOS.
;
;
;
; Copyright (C) 2011-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: vds.c
;
; $Id: VBoxBiosAlternative386.asm $
; Utility routines for calling the Virtual DMA Services.
;
;
;
; Copyright (C) 2011-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
; Source file: __U4M.asm
;
; $Id: VBoxBiosAlternative386.asm $
; Compiler support routines.
;
;
;
; Copyright (C) 2012-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
;
; Source file: __U4D.asm
;
; $Id: VBoxBiosAlternative386.asm $
; Compiler support routines.
;
;
;
; Copyright (C) 2012-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
;
; Source file: __U8RS.asm
;
; $Id: VBoxBiosAlternative386.asm $
; Compiler support routines.
;
;
;
; Copyright (C) 2012-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
;
; Source file: __U8LS.asm
;
; $Id: VBoxBiosAlternative386.asm $
; Compiler support routines.
;
;
;
; Copyright (C) 2012-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
;
; Source file: fmemset.asm
;
; $Id: VBoxBiosAlternative386.asm $
; Compiler support routines.
;
;
;
; Copyright (C) 2012-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
;
; Source file: fmemcpy.asm
;
; $Id: VBoxBiosAlternative386.asm $
; Compiler support routines.
;
;
;
; Copyright (C) 2012-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
;
; Source file: pcibio32.asm
;
; $Id: VBoxBiosAlternative386.asm $
; BIOS32 service directory and 32-bit PCI BIOS entry point
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; Source file: apm_pm.asm
;
; $Id:
; Protected-mode APM implementation.
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
;
;
; Source file: orgs.asm
;
; $Id: VBoxBiosAlternative386.asm $
; ???
;
;
;
; Copyright (C) 2006-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
; --------------------------------------------------------------------
;
; This code is based on:
;
; ROM BIOS for use with Bochs/Plex86/QEMU emulation environment
;
; Copyright (C) 2002 MandrakeSoft S.A.
;
; MandrakeSoft S.A.
; 43, rue d'Aboukir
; 75002 Paris - France
; http://www.linux-mandrake.com/
; http://www.mandrakesoft.com/
;
; This library is free software; you can redistribute it and/or
; modify it under the terms of the GNU Lesser General Public
; License as published by the Free Software Foundation; either
; version 2 of the License, or (at your option) any later version.
;
; This library is distributed in the hope that it will be useful,
; but WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; Lesser General Public License for more details.
;
; You should have received a copy of the GNU Lesser General Public
; License along with this library; if not, write to the Free Software
; Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
;
;
; Source file: pci32.c
;
; $Id: VBoxBiosAlternative386.asm $
; 32-bit PCI BIOS wrapper.
;
;
;
; Copyright (C) 2004-2023 Oracle and/or its affiliates.
;
; This file is part of VirtualBox base platform packages, as
; available from https://www.virtualbox.org.
;
; This program is free software; you can redistribute it and/or
; modify it under the terms of the GNU General Public License
; as published by the Free Software Foundation, in version 3 of the
; License.
;
; This program is distributed in the hope that it will be useful, but
; WITHOUT ANY WARRANTY; without even the implied warranty of
; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
; General Public License for more details.
;
; You should have received a copy of the GNU General Public License
; along with this program; if not, see <https://www.gnu.org/licenses>.
;
; SPDX-License-Identifier: GPL-3.0-only
section _DATA progbits vstart=0x0 align=1 ; size=0xf0 class=DATA group=DGROUP
; disGetNextSymbol 0xf0000 LB 0xf0 -> off=0x0 cb=000000000000005b uValue=00000000000f0000 '_fd_parm'
_fd_parm: ; 0xf0000 LB 0x5b
db 0dfh, 002h, 025h, 002h, 009h, 02ah, 0ffh, 050h, 0f6h, 00fh, 008h, 027h, 080h, 0dfh, 002h, 025h
db 002h, 009h, 02ah, 0ffh, 050h, 0f6h, 00fh, 008h, 027h, 040h, 0dfh, 002h, 025h, 002h, 00fh, 01bh
db 0ffh, 054h, 0f6h, 00fh, 008h, 04fh, 000h, 0dfh, 002h, 025h, 002h, 009h, 02ah, 0ffh, 050h, 0f6h
db 00fh, 008h, 04fh, 080h, 0afh, 002h, 025h, 002h, 012h, 01bh, 0ffh, 06ch, 0f6h, 00fh, 008h, 04fh
db 000h, 0afh, 002h, 025h, 002h, 024h, 01bh, 0ffh, 054h, 0f6h, 00fh, 008h, 04fh, 0c0h, 0afh, 002h
db 025h, 002h, 0ffh, 01bh, 0ffh, 054h, 0f6h, 00fh, 008h, 0ffh, 000h
; disGetNextSymbol 0xf005b LB 0x95 -> off=0x0 cb=000000000000000f uValue=00000000000f005b '_fd_map'
_fd_map: ; 0xf005b LB 0xf
db 001h, 000h, 002h, 002h, 003h, 003h, 004h, 004h, 005h, 005h, 00eh, 006h, 00fh, 006h, 000h
; disGetNextSymbol 0xf006a LB 0x86 -> off=0x0 cb=000000000000000c uValue=00000000000f006a '_pktacc'
_pktacc: ; 0xf006a LB 0xc
db 000h, 000h, 000h, 000h, 000h, 000h, 0a9h, 02ch, 0cah, 07dh, 06ah, 08ch
; disGetNextSymbol 0xf0076 LB 0x7a -> off=0x0 cb=000000000000000c uValue=00000000000f0076 '_softrst'
_softrst: ; 0xf0076 LB 0xc
db 000h, 000h, 000h, 000h, 000h, 000h, 0e8h, 02eh, 053h, 03ch, 053h, 03ch
; disGetNextSymbol 0xf0082 LB 0x6e -> off=0x0 cb=0000000000000018 uValue=00000000000f0082 '_dskacc'
_dskacc: ; 0xf0082 LB 0x18
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 099h, 02bh, 04eh, 02ch, 000h, 000h, 000h, 000h
db 0c6h, 07bh, 0c8h, 07ch, 040h, 08bh, 0e6h, 08bh
; disGetNextSymbol 0xf009a LB 0x56 -> off=0x0 cb=0000000000000056 uValue=00000000000f009a '_hbaacc'
_hbaacc: ; 0xf009a LB 0x56
db 000h, 010h, 030h, 000h, 000h, 000h, 02fh, 0a6h, 092h, 0a3h, 068h, 0a4h, 000h, 010h, 054h, 000h
db 000h, 000h, 02fh, 0a6h, 092h, 0a3h, 068h, 0a4h, 04bh, 010h, 040h, 010h, 000h, 000h, 0ddh, 0a0h
db 053h, 09fh, 007h, 0a0h, 0f4h, 01ah, 048h, 010h, 000h, 000h, 0dch, 09dh, 011h, 098h, 067h, 099h
db 0ffh, 0ffh, 0ffh, 0ffh, 052h, 0a1h, 02eh, 0a1h, 053h, 09fh, 007h, 0a0h, 030h, 003h, 034h, 003h
db 000h, 000h, 000h, 000h, 000h, 000h, 05fh, 033h, 032h, 05fh, 000h, 0dah, 00fh, 000h, 000h, 001h
db 0f3h, 000h, 000h, 000h, 000h, 000h
section CONST progbits vstart=0xf0 align=1 ; size=0xd14 class=DATA group=DGROUP
; disGetNextSymbol 0xf00f0 LB 0xd14 -> off=0xd14 cb=0000000000000000 uValue=00000000000f0e04 'bios_cvs_version_string'
db 'CPUID EDX: 0x%lx', 00ah, 000h
db 'NMI Handler called', 00ah, 000h
db 'INT18: BOOT FAILURE', 00ah, 000h
db 'Bootfail', 000h
db '%s', 00ah, 000h
db 'FATAL: ', 000h
db 'bios_printf: unknown %ll format', 00ah, 000h
db 'bios_printf: unknown format', 00ah, 000h
db 'No PCI IDE controller, not probing IDE', 00ah, 000h
db 'ata-detect: Failed to detect ATA device', 00ah, 000h
db 'ata%d-%d: PCHS=%u/%u/%u LCHS=%u/%u/%u', 00ah, 000h
db 'ata-detect: Failed to detect ATAPI device', 00ah, 000h
db ' slave', 000h
db 'master', 000h
db 'ata%d %s: ', 000h
db '%c', 000h
db ' ATA-%d Hard-Disk (%lu MBytes)', 00ah, 000h
db ' ATAPI-%d CD-ROM/DVD-ROM', 00ah, 000h
db ' ATAPI-%d Device', 00ah, 000h
db 'ata%d %s: Unknown device', 00ah, 000h
db 'ata_cmd_packet', 000h
db '%s: DATA_OUT not supported yet', 00ah, 000h
db 'set_diskette_current_cyl: drive > 1', 00ah, 000h
db 'int13_diskette_function', 000h
db '%s: drive>1 || head>1 ...', 00ah, 000h
db '%s: ctrl not ready', 00ah, 000h
db '%s: write error', 00ah, 000h
db '%s: bad floppy type', 00ah, 000h
db '%s: unsupported AH=%02x', 00ah, 000h, 000h
db 'int13_eltorito', 000h
db '%s: call with AX=%04x not implemented.', 00ah, 000h
db '%s: unsupported AH=%02x', 00ah, 000h
db 'int13_cdemu', 000h
db '%s: function %02x, emulation not active for DL= %02x', 00ah, 000h
db '%s: function %02x, error %02x !', 00ah, 000h
db '%s: function %02x. Can', 027h, 't use 64bits lba', 00ah, 000h
db '%s: function %02x, status %02x !', 00ah, 000h
db '%s: function AH=%02x unsupported, returns fail', 00ah, 000h
db 'int13_cdrom', 000h
db '%s: function %02x, ELDL out of range %02x', 00ah, 000h
db '%s: function %02x, unmapped device for ELDL=%02x', 00ah, 000h, 000h
db 'Booting from %s...', 00ah, 000h
db 'Boot from %s failed', 00ah, 000h
db 'Boot from %s %d failed', 00ah, 000h
db 'No bootable medium found!', 00ah, 000h
db 'Could not read from the boot medium!', 00ah, 000h
db 'Please insert a bootable medium and reboot.', 00ah, 000h
db 'CDROM boot failure code : %04x', 00ah, 000h
db 'Boot : bseqnr=%d, bootseq=%x', 00dh, 00ah, 000h
db 'Keyboard error:%u', 00ah, 000h
db 'KBD: int09 handler: AL=0', 00ah, 000h
db 'KBD: int09h_handler(): unknown scancode read: 0x%02x!', 00ah, 000h
db 'KBD: int09h_handler(): scancode & asciicode are zero?', 00ah, 000h
db 'KBD: int16h: out of keyboard input', 00ah, 000h
db 'KBD: unsupported int 16h function %02x', 00ah, 000h
db 'AX=%04x BX=%04x CX=%04x DX=%04x ', 00ah, 000h, 000h
db 'int13_harddisk', 000h
db '%s: function %02x, ELDL out of range %02x', 00ah, 000h
db '%s: function %02x, unmapped device for ELDL=%02x', 00ah, 000h
db '%s: function %02x, count out of range!', 00ah, 000h
db '%s: function %02x, disk %02x, parameters out of range %04x/%04x/%04x!', 00ah
db 000h
db '%s: function %02x, error %02x !', 00ah, 000h
db 'format disk track called', 00ah, 000h
db '%s: function %02xh unimplemented, returns success', 00ah, 000h
db '%s: function %02xh unsupported, returns fail', 00ah, 000h
db 'int13_harddisk_ext', 000h
db '%s: function %02x. LBA out of range', 00ah, 000h, 000h
db 'int15: Func 24h, subfunc %02xh, A20 gate control not supported', 00ah, 000h
db '*** int 15h function AH=bf not yet supported!', 00ah, 000h
db 'EISA BIOS not present', 00ah, 000h
db '*** int 15h function AX=%04x, BX=%04x not yet supported!', 00ah, 000h
db 'sendmouse', 000h
db 'setkbdcomm', 000h
db 'Mouse reset returned %02x (should be ack)', 00ah, 000h
db 'Mouse status returned %02x (should be ack)', 00ah, 000h
db 'INT 15h C2 AL=6, BH=%02x', 00ah, 000h
db 'INT 15h C2 default case entered', 00ah, 000h, 000h
db 'Key pressed: %x', 00ah, 000h
db 00ah, 00ah, ' AHCI controller:', 000h
db 00ah, ' %d) Hard disk', 000h
db 00ah, 00ah, ' SCSI controller:', 000h
db ' IDE controller:', 000h
db 00ah, 00ah, 'AHCI controller:', 00ah, 000h
db 00ah, ' %d) ', 000h
db 'Secondary ', 000h
db 'Primary ', 000h
db 'Slave', 000h
db 'Master', 000h
db 'No hard disks found', 000h
db 00ah, 000h
db 'Press F12 to select boot device.', 00ah, 000h
db 00ah, 'VirtualBox temporary boot device selection', 00ah, 00ah, 'Detected H'
db 'ard disks:', 00ah, 00ah, 000h
db 00ah, 'Other boot devices:', 00ah, ' f) Floppy', 00ah, ' c) CD-ROM', 00ah
db ' l) LAN', 00ah, 00ah, ' b) Continue booting', 00ah, 000h
db 'Delaying boot for %d seconds:', 000h
db ' %d', 000h, 000h
db 'scsi_read_sectors', 000h
db '%s: device_id out of range %d', 00ah, 000h
db 'scsi_write_sectors', 000h
db 'scsi_cmd_packet', 000h
db '%s: DATA_OUT not supported yet', 00ah, 000h
db 'scsi_enumerate_attached_devices', 000h
db '%s: SCSI_READ_CAPACITY failed', 00ah, 000h
db 'Disk %d has an unsupported sector size of %u', 00ah, 000h
db 'SCSI %d-ID#%d: LCHS=%lu/%u/%u 0x%llx sectors', 00ah, 000h
db 'SCSI %d-ID#%d: CD/DVD-ROM', 00ah, 000h
db 'ahci_read_sectors', 000h
db '%s: device_id out of range %d', 00ah, 000h
db 'ahci_write_sectors', 000h
db 'ahci_cmd_packet', 000h
db '%s: DATA_OUT not supported yet', 00ah, 000h
db 'AHCI %d-P#%d: PCHS=%u/%u/%u LCHS=%u/%u/%u 0x%llx sectors', 00ah, 000h
db 'Standby', 000h
db 'Suspend', 000h
db 'Shutdown', 000h
db 'APM: Unsupported function AX=%04X BX=%04X called', 00ah, 000h, 000h
db 'PCI: Unsupported function AX=%04X BX=%04X called', 00ah, 000h
section CONST2 progbits vstart=0xe04 align=1 ; size=0x3fa class=DATA group=DGROUP
; disGetNextSymbol 0xf0e04 LB 0x3fa -> off=0x0 cb=0000000000000012 uValue=00000000000f0e04 'bios_cvs_version_string'
bios_cvs_version_string: ; 0xf0e04 LB 0x12
db 'VirtualBox 7.0.16', 000h
; disGetNextSymbol 0xf0e16 LB 0x3e8 -> off=0x0 cb=0000000000000008 uValue=00000000000f0e16 '_bios_prefix_string'
_bios_prefix_string: ; 0xf0e16 LB 0x8
db 'BIOS: ', 000h, 000h
; disGetNextSymbol 0xf0e1e LB 0x3e0 -> off=0x0 cb=0000000000000006 uValue=00000000000f0e1e 'isotag'
isotag: ; 0xf0e1e LB 0x6
db 'CD001', 000h
; disGetNextSymbol 0xf0e24 LB 0x3da -> off=0x0 cb=0000000000000018 uValue=00000000000f0e24 'eltorito'
eltorito: ; 0xf0e24 LB 0x18
db 'EL TORITO SPECIFICATION', 000h
; disGetNextSymbol 0xf0e3c LB 0x3c2 -> off=0x0 cb=0000000000000028 uValue=00000000000f0e3c 'drivetypes'
drivetypes: ; 0xf0e3c LB 0x28
db 046h, 06ch, 06fh, 070h, 070h, 079h, 000h, 000h, 000h, 000h, 048h, 061h, 072h, 064h, 020h, 044h
db 069h, 073h, 06bh, 000h, 043h, 044h, 02dh, 052h, 04fh, 04dh, 000h, 000h, 000h, 000h, 04ch, 041h
db 04eh, 000h, 000h, 000h, 000h, 000h, 000h, 000h
; disGetNextSymbol 0xf0e64 LB 0x39a -> off=0x0 cb=000000000000037a uValue=00000000000f0e64 'scan_to_scanascii'
scan_to_scanascii: ; 0xf0e64 LB 0x37a
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 01bh, 001h, 01bh, 001h, 01bh, 001h
db 000h, 001h, 000h, 000h, 031h, 002h, 021h, 002h, 000h, 000h, 000h, 078h, 000h, 000h, 032h, 003h
db 040h, 003h, 000h, 003h, 000h, 079h, 000h, 000h, 033h, 004h, 023h, 004h, 000h, 000h, 000h, 07ah
db 000h, 000h, 034h, 005h, 024h, 005h, 000h, 000h, 000h, 07bh, 000h, 000h, 035h, 006h, 025h, 006h
db 000h, 000h, 000h, 07ch, 000h, 000h, 036h, 007h, 05eh, 007h, 01eh, 007h, 000h, 07dh, 000h, 000h
db 037h, 008h, 026h, 008h, 000h, 000h, 000h, 07eh, 000h, 000h, 038h, 009h, 02ah, 009h, 000h, 000h
db 000h, 07fh, 000h, 000h, 039h, 00ah, 028h, 00ah, 000h, 000h, 000h, 080h, 000h, 000h, 030h, 00bh
db 029h, 00bh, 000h, 000h, 000h, 081h, 000h, 000h, 02dh, 00ch, 05fh, 00ch, 01fh, 00ch, 000h, 082h
db 000h, 000h, 03dh, 00dh, 02bh, 00dh, 000h, 000h, 000h, 083h, 000h, 000h, 008h, 00eh, 008h, 00eh
db 07fh, 00eh, 000h, 000h, 000h, 000h, 009h, 00fh, 000h, 00fh, 000h, 000h, 000h, 000h, 000h, 000h
db 071h, 010h, 051h, 010h, 011h, 010h, 000h, 010h, 040h, 000h, 077h, 011h, 057h, 011h, 017h, 011h
db 000h, 011h, 040h, 000h, 065h, 012h, 045h, 012h, 005h, 012h, 000h, 012h, 040h, 000h, 072h, 013h
db 052h, 013h, 012h, 013h, 000h, 013h, 040h, 000h, 074h, 014h, 054h, 014h, 014h, 014h, 000h, 014h
db 040h, 000h, 079h, 015h, 059h, 015h, 019h, 015h, 000h, 015h, 040h, 000h, 075h, 016h, 055h, 016h
db 015h, 016h, 000h, 016h, 040h, 000h, 069h, 017h, 049h, 017h, 009h, 017h, 000h, 017h, 040h, 000h
db 06fh, 018h, 04fh, 018h, 00fh, 018h, 000h, 018h, 040h, 000h, 070h, 019h, 050h, 019h, 010h, 019h
db 000h, 019h, 040h, 000h, 05bh, 01ah, 07bh, 01ah, 01bh, 01ah, 000h, 000h, 000h, 000h, 05dh, 01bh
db 07dh, 01bh, 01dh, 01bh, 000h, 000h, 000h, 000h, 00dh, 01ch, 00dh, 01ch, 00ah, 01ch, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 061h, 01eh, 041h, 01eh
db 001h, 01eh, 000h, 01eh, 040h, 000h, 073h, 01fh, 053h, 01fh, 013h, 01fh, 000h, 01fh, 040h, 000h
db 064h, 020h, 044h, 020h, 004h, 020h, 000h, 020h, 040h, 000h, 066h, 021h, 046h, 021h, 006h, 021h
db 000h, 021h, 040h, 000h, 067h, 022h, 047h, 022h, 007h, 022h, 000h, 022h, 040h, 000h, 068h, 023h
db 048h, 023h, 008h, 023h, 000h, 023h, 040h, 000h, 06ah, 024h, 04ah, 024h, 00ah, 024h, 000h, 024h
db 040h, 000h, 06bh, 025h, 04bh, 025h, 00bh, 025h, 000h, 025h, 040h, 000h, 06ch, 026h, 04ch, 026h
db 00ch, 026h, 000h, 026h, 040h, 000h, 03bh, 027h, 03ah, 027h, 000h, 000h, 000h, 000h, 000h, 000h
db 027h, 028h, 022h, 028h, 000h, 000h, 000h, 000h, 000h, 000h, 060h, 029h, 07eh, 029h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 05ch, 02bh
db 07ch, 02bh, 01ch, 02bh, 000h, 000h, 000h, 000h, 07ah, 02ch, 05ah, 02ch, 01ah, 02ch, 000h, 02ch
db 040h, 000h, 078h, 02dh, 058h, 02dh, 018h, 02dh, 000h, 02dh, 040h, 000h, 063h, 02eh, 043h, 02eh
db 003h, 02eh, 000h, 02eh, 040h, 000h, 076h, 02fh, 056h, 02fh, 016h, 02fh, 000h, 02fh, 040h, 000h
db 062h, 030h, 042h, 030h, 002h, 030h, 000h, 030h, 040h, 000h, 06eh, 031h, 04eh, 031h, 00eh, 031h
db 000h, 031h, 040h, 000h, 06dh, 032h, 04dh, 032h, 00dh, 032h, 000h, 032h, 040h, 000h, 02ch, 033h
db 03ch, 033h, 000h, 000h, 000h, 000h, 000h, 000h, 02eh, 034h, 03eh, 034h, 000h, 000h, 000h, 000h
db 000h, 000h, 02fh, 035h, 03fh, 035h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 02ah, 037h, 02ah, 037h, 000h, 000h, 000h, 000h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 020h, 039h, 020h, 039h, 020h, 039h
db 020h, 039h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 03bh
db 000h, 054h, 000h, 05eh, 000h, 068h, 000h, 000h, 000h, 03ch, 000h, 055h, 000h, 05fh, 000h, 069h
db 000h, 000h, 000h, 03dh, 000h, 056h, 000h, 060h, 000h, 06ah, 000h, 000h, 000h, 03eh, 000h, 057h
db 000h, 061h, 000h, 06bh, 000h, 000h, 000h, 03fh, 000h, 058h, 000h, 062h, 000h, 06ch, 000h, 000h
db 000h, 040h, 000h, 059h, 000h, 063h, 000h, 06dh, 000h, 000h, 000h, 041h, 000h, 05ah, 000h, 064h
db 000h, 06eh, 000h, 000h, 000h, 042h, 000h, 05bh, 000h, 065h, 000h, 06fh, 000h, 000h, 000h, 043h
db 000h, 05ch, 000h, 066h, 000h, 070h, 000h, 000h, 000h, 044h, 000h, 05dh, 000h, 067h, 000h, 071h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 047h, 037h, 047h, 000h, 077h, 000h, 000h, 020h, 000h
db 000h, 048h, 038h, 048h, 000h, 000h, 000h, 000h, 020h, 000h, 000h, 049h, 039h, 049h, 000h, 084h
db 000h, 000h, 020h, 000h, 02dh, 04ah, 02dh, 04ah, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 04bh
db 034h, 04bh, 000h, 073h, 000h, 000h, 020h, 000h, 000h, 04ch, 035h, 04ch, 000h, 000h, 000h, 000h
db 020h, 000h, 000h, 04dh, 036h, 04dh, 000h, 074h, 000h, 000h, 020h, 000h, 02bh, 04eh, 02bh, 04eh
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 04fh, 031h, 04fh, 000h, 075h, 000h, 000h, 020h, 000h
db 000h, 050h, 032h, 050h, 000h, 000h, 000h, 000h, 020h, 000h, 000h, 051h, 033h, 051h, 000h, 076h
db 000h, 000h, 020h, 000h, 000h, 052h, 030h, 052h, 000h, 000h, 000h, 000h, 020h, 000h, 000h, 053h
db 02eh, 053h, 000h, 000h, 000h, 000h, 020h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 05ch, 056h, 07ch, 056h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 085h, 000h, 087h, 000h, 089h, 000h, 08bh, 000h, 000h
db 000h, 086h, 000h, 088h, 000h, 08ah, 000h, 08ch, 000h, 000h
; disGetNextSymbol 0xf11de LB 0x20 -> off=0x0 cb=0000000000000020 uValue=00000000000f11de 'panic_msg_keyb_buffer_full'
panic_msg_keyb_buffer_full: ; 0xf11de LB 0x20
db '%s: keyboard input buffer full', 00ah, 000h
; Padding 0x402 bytes at 0xf11fe
times 1026 db 0
section _TEXT progbits vstart=0x1600 align=1 ; size=0x981c class=CODE group=AUTO
; disGetNextSymbol 0xf1600 LB 0x981c -> off=0x0 cb=0000000000000064 uValue=00000000000f0000 'rom_scan'
rom_scan: ; 0xf1600 LB 0x64
push bp ; 55 ; 0xf1600 post.c:106
mov bp, sp ; 89 e5 ; 0xf1601
push bx ; 53 ; 0xf1603
push cx ; 51 ; 0xf1604
push si ; 56 ; 0xf1605
push di ; 57 ; 0xf1606
sub sp, strict byte 00008h ; 83 ec 08 ; 0xf1607
push ax ; 50 ; 0xf160a
push dx ; 52 ; 0xf160b
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf160c post.c:113
cmp ax, word [bp-014h] ; 3b 46 ec ; 0xf160f
jnc short 0165bh ; 73 47 ; 0xf1612
mov word [bp-00ch], strict word 00000h ; c7 46 f4 00 00 ; 0xf1614 post.c:114
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf1619
mov es, ax ; 8e c0 ; 0xf161c post.c:116
mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xf161e
cmp word [es:bx], 0aa55h ; 26 81 3f 55 aa ; 0xf1621
jne short 01654h ; 75 2c ; 0xf1626
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf1628 post.c:122
mov word [bp-010h], strict word 00003h ; c7 46 f0 03 00 ; 0xf162b
call far [bp-010h] ; ff 5e f0 ; 0xf1630 post.c:123
cli ; fa ; 0xf1633 post.c:124
mov ax, 0f000h ; b8 00 f0 ; 0xf1634 post.c:125
mov ds, ax ; 8e d8 ; 0xf1637
les bx, [bp-00ch] ; c4 5e f4 ; 0xf1639 post.c:130
mov al, byte [es:bx+002h] ; 26 8a 47 02 ; 0xf163c
add AL, strict byte 003h ; 04 03 ; 0xf1640
and AL, strict byte 0fch ; 24 fc ; 0xf1642
xor ah, ah ; 30 e4 ; 0xf1644 post.c:131
cwd ; 99 ; 0xf1646
sal dx, 002h ; c1 e2 02 ; 0xf1647
db 01bh, 0c2h
; sbb ax, dx ; 1b c2 ; 0xf164a
sar ax, 002h ; c1 f8 02 ; 0xf164c
add word [bp-012h], ax ; 01 46 ee ; 0xf164f
jmp short 0160ch ; eb b8 ; 0xf1652 post.c:133
add word [bp-012h], 00080h ; 81 46 ee 80 00 ; 0xf1654 post.c:135
jmp short 0160ch ; eb b1 ; 0xf1659 post.c:137
lea sp, [bp-008h] ; 8d 66 f8 ; 0xf165b post.c:138
pop di ; 5f ; 0xf165e
pop si ; 5e ; 0xf165f
pop cx ; 59 ; 0xf1660
pop bx ; 5b ; 0xf1661
pop bp ; 5d ; 0xf1662
retn ; c3 ; 0xf1663
; disGetNextSymbol 0xf1664 LB 0x97b8 -> off=0x0 cb=0000000000000042 uValue=00000000000f0064 'is_cpuid_supported'
is_cpuid_supported: ; 0xf1664 LB 0x42
push bp ; 55 ; 0xf1664 post.c:145
mov bp, sp ; 89 e5 ; 0xf1665
push bx ; 53 ; 0xf1667
push cx ; 51 ; 0xf1668
push dx ; 52 ; 0xf1669
pushfd ; 66 9c ; 0xf166a post.c:149
pop edx ; 66 5a ; 0xf166c
db 08bh, 0c2h
; mov ax, dx ; 8b c2 ; 0xf166e
shr edx, 010h ; 66 c1 ea 10 ; 0xf1670
mov bx, ax ; 89 c3 ; 0xf1674
mov cx, dx ; 89 d1 ; 0xf1676
xor dl, 020h ; 80 f2 20 ; 0xf1678 post.c:150
sal edx, 010h ; 66 c1 e2 10 ; 0xf167b post.c:151
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf167f
push edx ; 66 52 ; 0xf1681
popfd ; 66 9d ; 0xf1683
pushfd ; 66 9c ; 0xf1685 post.c:152
pop edx ; 66 5a ; 0xf1687
db 08bh, 0c2h
; mov ax, dx ; 8b c2 ; 0xf1689
shr edx, 010h ; 66 c1 ea 10 ; 0xf168b
cmp cx, dx ; 39 d1 ; 0xf168f post.c:153
jne short 01697h ; 75 04 ; 0xf1691
cmp bx, ax ; 39 c3 ; 0xf1693
je short 0169ch ; 74 05 ; 0xf1695
mov ax, strict word 00001h ; b8 01 00 ; 0xf1697
jmp short 0169eh ; eb 02 ; 0xf169a
xor ax, ax ; 31 c0 ; 0xf169c
lea sp, [bp-006h] ; 8d 66 fa ; 0xf169e post.c:154
pop dx ; 5a ; 0xf16a1
pop cx ; 59 ; 0xf16a2
pop bx ; 5b ; 0xf16a3
pop bp ; 5d ; 0xf16a4
retn ; c3 ; 0xf16a5
; disGetNextSymbol 0xf16a6 LB 0x9776 -> off=0x0 cb=00000000000000c4 uValue=00000000000f00a6 'apic_setup'
apic_setup: ; 0xf16a6 LB 0xc4
push bp ; 55 ; 0xf16a6 post.c:179
mov bp, sp ; 89 e5 ; 0xf16a7
push si ; 56 ; 0xf16a9
push di ; 57 ; 0xf16aa
sub sp, strict byte 00012h ; 83 ec 12 ; 0xf16ab
call 01664h ; e8 b3 ff ; 0xf16ae post.c:188
test ax, ax ; 85 c0 ; 0xf16b1
je near 01763h ; 0f 84 ac 00 ; 0xf16b3
mov ax, strict word 00001h ; b8 01 00 ; 0xf16b7 post.c:193
xor dx, dx ; 31 d2 ; 0xf16ba
push SS ; 16 ; 0xf16bc
pop ES ; 07 ; 0xf16bd
lea di, [bp-016h] ; 8d 7e ea ; 0xf16be
sal edx, 010h ; 66 c1 e2 10 ; 0xf16c1
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf16c5
db 066h, 08bh, 0c2h
; mov eax, edx ; 66 8b c2 ; 0xf16c7
cpuid ; 0f a2 ; 0xf16ca
db 066h, 026h, 089h, 005h
; mov dword [es:di], eax ; 66 26 89 05 ; 0xf16cc
db 066h, 026h, 089h, 05dh, 004h
; mov dword [es:di+004h], ebx ; 66 26 89 5d 04 ; 0xf16d0
db 066h, 026h, 089h, 04dh, 008h
; mov dword [es:di+008h], ecx ; 66 26 89 4d 08 ; 0xf16d5
db 066h, 026h, 089h, 055h, 00ch
; mov dword [es:di+00ch], edx ; 66 26 89 55 0c ; 0xf16da
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf16df post.c:194
mov dx, word [bp-008h] ; 8b 56 f8 ; 0xf16e2
push dx ; 52 ; 0xf16e5
push ax ; 50 ; 0xf16e6
push 000f0h ; 68 f0 00 ; 0xf16e7
push strict byte 00004h ; 6a 04 ; 0xf16ea
call 01a68h ; e8 79 03 ; 0xf16ec
add sp, strict byte 00008h ; 83 c4 08 ; 0xf16ef
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf16f2 post.c:195
test ah, 002h ; f6 c4 02 ; 0xf16f5
je short 01763h ; 74 69 ; 0xf16f8
mov ax, strict word 00078h ; b8 78 00 ; 0xf16fa post.c:200
call 0176ah ; e8 6a 00 ; 0xf16fd
xor si, si ; 31 f6 ; 0xf1700 post.c:202
xor di, di ; 31 ff ; 0xf1702
cmp AL, strict byte 002h ; 3c 02 ; 0xf1704 post.c:203
jne short 0170dh ; 75 05 ; 0xf1706
mov di, 00400h ; bf 00 04 ; 0xf1708 post.c:204
jmp short 0171ch ; eb 0f ; 0xf170b post.c:205
test al, al ; 84 c0 ; 0xf170d
jne short 01714h ; 75 03 ; 0xf170f
mov si, 00800h ; be 00 08 ; 0xf1711 post.c:206
test di, di ; 85 ff ; 0xf1714 post.c:210
jne short 0171ch ; 75 04 ; 0xf1716
test si, si ; 85 f6 ; 0xf1718
je short 01763h ; 74 47 ; 0xf171a
mov ax, strict word 0001bh ; b8 1b 00 ; 0xf171c post.c:211
xor cx, cx ; 31 c9 ; 0xf171f
sal ecx, 010h ; 66 c1 e1 10 ; 0xf1721
db 08bh, 0c8h
; mov cx, ax ; 8b c8 ; 0xf1725
rdmsr ; 0f 32 ; 0xf1727
xchg edx, eax ; 66 92 ; 0xf1729
db 08bh, 0d8h
; mov bx, ax ; 8b d8 ; 0xf172b
shr eax, 010h ; 66 c1 e8 10 ; 0xf172d
db 08bh, 0cah
; mov cx, dx ; 8b ca ; 0xf1731
shr edx, 010h ; 66 c1 ea 10 ; 0xf1733
xchg dx, cx ; 87 ca ; 0xf1737
mov word [bp-006h], si ; 89 76 fa ; 0xf1739 post.c:212
not word [bp-006h] ; f7 56 fa ; 0xf173c
and dx, word [bp-006h] ; 23 56 fa ; 0xf173f
or dx, di ; 09 fa ; 0xf1742 post.c:213
mov si, strict word 0001bh ; be 1b 00 ; 0xf1744 post.c:214
xor di, di ; 31 ff ; 0xf1747
sal eax, 010h ; 66 c1 e0 10 ; 0xf1749
db 08bh, 0c3h
; mov ax, bx ; 8b c3 ; 0xf174d
xchg dx, cx ; 87 ca ; 0xf174f
sal edx, 010h ; 66 c1 e2 10 ; 0xf1751
db 08bh, 0d1h
; mov dx, cx ; 8b d1 ; 0xf1755
xchg edx, eax ; 66 92 ; 0xf1757
db 08bh, 0cfh
; mov cx, di ; 8b cf ; 0xf1759
sal ecx, 010h ; 66 c1 e1 10 ; 0xf175b
db 08bh, 0ceh
; mov cx, si ; 8b ce ; 0xf175f
wrmsr ; 0f 30 ; 0xf1761
lea sp, [bp-004h] ; 8d 66 fc ; 0xf1763 post.c:216
pop di ; 5f ; 0xf1766
pop si ; 5e ; 0xf1767
pop bp ; 5d ; 0xf1768
retn ; c3 ; 0xf1769
; disGetNextSymbol 0xf176a LB 0x96b2 -> off=0x0 cb=000000000000001d uValue=00000000000f016a 'inb_cmos'
inb_cmos: ; 0xf176a LB 0x1d
push bp ; 55 ; 0xf176a bios.c:76
mov bp, sp ; 89 e5 ; 0xf176b
push dx ; 52 ; 0xf176d
mov AH, strict byte 070h ; b4 70 ; 0xf176e bios.c:78
cmp AL, strict byte 080h ; 3c 80 ; 0xf1770 bios.c:80
jc short 01776h ; 72 02 ; 0xf1772
mov AH, strict byte 072h ; b4 72 ; 0xf1774 bios.c:81
movzx dx, ah ; 0f b6 d4 ; 0xf1776 bios.c:82
out DX, AL ; ee ; 0xf1779
movzx dx, ah ; 0f b6 d4 ; 0xf177a bios.c:83
inc dx ; 42 ; 0xf177d
in AL, DX ; ec ; 0xf177e
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf177f
lea sp, [bp-002h] ; 8d 66 fe ; 0xf1781 bios.c:84
pop dx ; 5a ; 0xf1784
pop bp ; 5d ; 0xf1785
retn ; c3 ; 0xf1786
; disGetNextSymbol 0xf1787 LB 0x9695 -> off=0x0 cb=000000000000001f uValue=00000000000f0187 'outb_cmos'
outb_cmos: ; 0xf1787 LB 0x1f
push bp ; 55 ; 0xf1787 bios.c:86
mov bp, sp ; 89 e5 ; 0xf1788
push bx ; 53 ; 0xf178a
mov ah, dl ; 88 d4 ; 0xf178b
mov BL, strict byte 070h ; b3 70 ; 0xf178d bios.c:88
cmp AL, strict byte 080h ; 3c 80 ; 0xf178f bios.c:90
jc short 01795h ; 72 02 ; 0xf1791
mov BL, strict byte 072h ; b3 72 ; 0xf1793 bios.c:91
movzx dx, bl ; 0f b6 d3 ; 0xf1795 bios.c:92
out DX, AL ; ee ; 0xf1798
movzx dx, bl ; 0f b6 d3 ; 0xf1799 bios.c:93
inc dx ; 42 ; 0xf179c
mov al, ah ; 88 e0 ; 0xf179d
out DX, AL ; ee ; 0xf179f
lea sp, [bp-002h] ; 8d 66 fe ; 0xf17a0 bios.c:94
pop bx ; 5b ; 0xf17a3
pop bp ; 5d ; 0xf17a4
retn ; c3 ; 0xf17a5
; disGetNextSymbol 0xf17a6 LB 0x9676 -> off=0x0 cb=0000000000000025 uValue=00000000000f01a6 'get_cmos_word'
get_cmos_word: ; 0xf17a6 LB 0x25
push bp ; 55 ; 0xf17a6 bios.c:99
mov bp, sp ; 89 e5 ; 0xf17a7
push bx ; 53 ; 0xf17a9
push dx ; 52 ; 0xf17aa
mov dl, al ; 88 c2 ; 0xf17ab
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf17ad bios.c:101
xor ah, ah ; 30 e4 ; 0xf17af
call 0176ah ; e8 b6 ff ; 0xf17b1
movzx bx, al ; 0f b6 d8 ; 0xf17b4
sal bx, 008h ; c1 e3 08 ; 0xf17b7
movzx ax, dl ; 0f b6 c2 ; 0xf17ba
call 0176ah ; e8 aa ff ; 0xf17bd
xor ah, ah ; 30 e4 ; 0xf17c0
or ax, bx ; 09 d8 ; 0xf17c2
lea sp, [bp-004h] ; 8d 66 fc ; 0xf17c4 bios.c:103
pop dx ; 5a ; 0xf17c7
pop bx ; 5b ; 0xf17c8
pop bp ; 5d ; 0xf17c9
retn ; c3 ; 0xf17ca
; disGetNextSymbol 0xf17cb LB 0x9651 -> off=0x0 cb=000000000000006a uValue=00000000000f01cb 'dummy_isr_function'
dummy_isr_function: ; 0xf17cb LB 0x6a
push bp ; 55 ; 0xf17cb bios.c:105
mov bp, sp ; 89 e5 ; 0xf17cc
push ax ; 50 ; 0xf17ce
mov CH, strict byte 0ffh ; b5 ff ; 0xf17cf bios.c:113
mov AL, strict byte 00bh ; b0 0b ; 0xf17d1 bios.c:115
mov dx, strict word 00020h ; ba 20 00 ; 0xf17d3
out DX, AL ; ee ; 0xf17d6
in AL, DX ; ec ; 0xf17d7 bios.c:116
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf17d8
mov bx, ax ; 89 c3 ; 0xf17da
mov cl, al ; 88 c1 ; 0xf17dc
test al, al ; 84 c0 ; 0xf17de bios.c:117
je short 01826h ; 74 44 ; 0xf17e0
mov AL, strict byte 00bh ; b0 0b ; 0xf17e2 bios.c:118
mov dx, 000a0h ; ba a0 00 ; 0xf17e4
out DX, AL ; ee ; 0xf17e7
in AL, DX ; ec ; 0xf17e8 bios.c:119
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf17e9
mov word [bp-002h], ax ; 89 46 fe ; 0xf17eb
cmp byte [bp-002h], 000h ; 80 7e fe 00 ; 0xf17ee bios.c:120
je short 0180ch ; 74 18 ; 0xf17f2
mov dx, 000a1h ; ba a1 00 ; 0xf17f4 bios.c:121
in AL, DX ; ec ; 0xf17f7
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf17f8
movzx bx, al ; 0f b6 d8 ; 0xf17fa bios.c:122
movzx ax, byte [bp-002h] ; 0f b6 46 fe ; 0xf17fd
or ax, bx ; 09 d8 ; 0xf1801
out DX, AL ; ee ; 0xf1803
mov AL, strict byte 020h ; b0 20 ; 0xf1804 bios.c:123
mov dx, 000a0h ; ba a0 00 ; 0xf1806
out DX, AL ; ee ; 0xf1809
jmp short 0181eh ; eb 12 ; 0xf180a bios.c:124
mov dx, strict word 00021h ; ba 21 00 ; 0xf180c bios.c:125
in AL, DX ; ec ; 0xf180f
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf1810
and cl, 0fbh ; 80 e1 fb ; 0xf1812 bios.c:126
movzx bx, al ; 0f b6 d8 ; 0xf1815 bios.c:127
movzx ax, cl ; 0f b6 c1 ; 0xf1818
or ax, bx ; 09 d8 ; 0xf181b
out DX, AL ; ee ; 0xf181d
mov AL, strict byte 020h ; b0 20 ; 0xf181e bios.c:129
mov dx, strict word 00020h ; ba 20 00 ; 0xf1820
out DX, AL ; ee ; 0xf1823
mov ch, cl ; 88 cd ; 0xf1824 bios.c:130
mov bx, strict word 0006bh ; bb 6b 00 ; 0xf1826 bios.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf1829
mov es, ax ; 8e c0 ; 0xf182c
mov byte [es:bx], ch ; 26 88 2f ; 0xf182e
mov sp, bp ; 89 ec ; 0xf1831 bios.c:133
pop bp ; 5d ; 0xf1833
retn ; c3 ; 0xf1834
; disGetNextSymbol 0xf1835 LB 0x95e7 -> off=0x0 cb=0000000000000012 uValue=00000000000f0235 'nmi_handler_msg'
nmi_handler_msg: ; 0xf1835 LB 0x12
push bp ; 55 ; 0xf1835 bios.c:136
mov bp, sp ; 89 e5 ; 0xf1836
push 00102h ; 68 02 01 ; 0xf1838 bios.c:138
push strict byte 00007h ; 6a 07 ; 0xf183b
call 01a68h ; e8 28 02 ; 0xf183d
add sp, strict byte 00004h ; 83 c4 04 ; 0xf1840
mov sp, bp ; 89 ec ; 0xf1843 bios.c:139
pop bp ; 5d ; 0xf1845
retn ; c3 ; 0xf1846
; disGetNextSymbol 0xf1847 LB 0x95d5 -> off=0x0 cb=000000000000002d uValue=00000000000f0247 'int18_panic_msg'
int18_panic_msg: ; 0xf1847 LB 0x2d
push bp ; 55 ; 0xf1847 bios.c:141
mov bp, sp ; 89 e5 ; 0xf1848
mov bx, 00e16h ; bb 16 0e ; 0xf184a bios.c:143
mov cx, ds ; 8c d9 ; 0xf184d
mov ax, strict word 00004h ; b8 04 00 ; 0xf184f
call 01a27h ; e8 d2 01 ; 0xf1852
push 00116h ; 68 16 01 ; 0xf1855
push strict byte 00004h ; 6a 04 ; 0xf1858
call 01a68h ; e8 0b 02 ; 0xf185a
add sp, strict byte 00004h ; 83 c4 04 ; 0xf185d
mov bx, 0012bh ; bb 2b 01 ; 0xf1860 bios.c:144
mov dx, 0040fh ; ba 0f 04 ; 0xf1863
mov al, byte [bx] ; 8a 07 ; 0xf1866
out DX, AL ; ee ; 0xf1868
inc bx ; 43 ; 0xf1869
mov al, byte [bx] ; 8a 07 ; 0xf186a
db 00ah, 0c0h
; or al, al ; 0a c0 ; 0xf186c
jne short 01868h ; 75 f8 ; 0xf186e
mov sp, bp ; 89 ec ; 0xf1870 bios.c:145
pop bp ; 5d ; 0xf1872
retn ; c3 ; 0xf1873
; disGetNextSymbol 0xf1874 LB 0x95a8 -> off=0x0 cb=0000000000000020 uValue=00000000000f0274 'log_bios_start'
log_bios_start: ; 0xf1874 LB 0x20
push bp ; 55 ; 0xf1874 bios.c:147
mov bp, sp ; 89 e5 ; 0xf1875
mov bx, 00e16h ; bb 16 0e ; 0xf1877 bios.c:152
mov cx, ds ; 8c d9 ; 0xf187a
mov ax, strict word 00004h ; b8 04 00 ; 0xf187c
call 01a27h ; e8 a5 01 ; 0xf187f
push 00e04h ; 68 04 0e ; 0xf1882
push 00134h ; 68 34 01 ; 0xf1885
push strict byte 00004h ; 6a 04 ; 0xf1888
call 01a68h ; e8 db 01 ; 0xf188a
add sp, strict byte 00006h ; 83 c4 06 ; 0xf188d
mov sp, bp ; 89 ec ; 0xf1890 bios.c:153
pop bp ; 5d ; 0xf1892
retn ; c3 ; 0xf1893
; disGetNextSymbol 0xf1894 LB 0x9588 -> off=0x0 cb=0000000000000027 uValue=00000000000f0294 'print_bios_banner'
print_bios_banner: ; 0xf1894 LB 0x27
push bp ; 55 ; 0xf1894 bios.c:172
mov bp, sp ; 89 e5 ; 0xf1895
mov bx, strict word 00072h ; bb 72 00 ; 0xf1897 bios.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf189a
mov es, ax ; 8e c0 ; 0xf189d
mov ax, word [es:bx] ; 26 8b 07 ; 0xf189f
mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xf18a2 bios.c:63
cmp ax, 01234h ; 3d 34 12 ; 0xf18a7 bios.c:178
jne short 018b4h ; 75 08 ; 0xf18aa
mov AL, strict byte 003h ; b0 03 ; 0xf18ac bios.c:181
mov AH, strict byte 000h ; b4 00 ; 0xf18ae
int 010h ; cd 10 ; 0xf18b0
jmp short 018b7h ; eb 03 ; 0xf18b2 bios.c:182
call 078d1h ; e8 1a 60 ; 0xf18b4 bios.c:185
mov sp, bp ; 89 ec ; 0xf18b7 bios.c:212
pop bp ; 5d ; 0xf18b9
retn ; c3 ; 0xf18ba
; disGetNextSymbol 0xf18bb LB 0x9561 -> off=0x0 cb=000000000000003b uValue=00000000000f02bb 'send'
send: ; 0xf18bb LB 0x3b
push bp ; 55 ; 0xf18bb print.c:82
mov bp, sp ; 89 e5 ; 0xf18bc
push bx ; 53 ; 0xf18be
push cx ; 51 ; 0xf18bf
mov bx, ax ; 89 c3 ; 0xf18c0
mov cl, dl ; 88 d1 ; 0xf18c2
test AL, strict byte 008h ; a8 08 ; 0xf18c4 print.c:90
je short 018ceh ; 74 06 ; 0xf18c6
mov al, dl ; 88 d0 ; 0xf18c8 print.c:91
mov dx, 00403h ; ba 03 04 ; 0xf18ca
out DX, AL ; ee ; 0xf18cd
test bl, 004h ; f6 c3 04 ; 0xf18ce print.c:92
je short 018d9h ; 74 06 ; 0xf18d1
mov al, cl ; 88 c8 ; 0xf18d3 print.c:93
mov dx, 00504h ; ba 04 05 ; 0xf18d5
out DX, AL ; ee ; 0xf18d8
test bl, 002h ; f6 c3 02 ; 0xf18d9 print.c:95
je short 018efh ; 74 11 ; 0xf18dc
cmp cl, 00ah ; 80 f9 0a ; 0xf18de print.c:96
jne short 018e9h ; 75 06 ; 0xf18e1
mov AL, strict byte 00dh ; b0 0d ; 0xf18e3 print.c:97
mov AH, strict byte 00eh ; b4 0e ; 0xf18e5
int 010h ; cd 10 ; 0xf18e7
mov al, cl ; 88 c8 ; 0xf18e9 print.c:98
mov AH, strict byte 00eh ; b4 0e ; 0xf18eb
int 010h ; cd 10 ; 0xf18ed
lea sp, [bp-004h] ; 8d 66 fc ; 0xf18ef print.c:100
pop cx ; 59 ; 0xf18f2
pop bx ; 5b ; 0xf18f3
pop bp ; 5d ; 0xf18f4
retn ; c3 ; 0xf18f5
; disGetNextSymbol 0xf18f6 LB 0x9526 -> off=0x0 cb=000000000000005f uValue=00000000000f02f6 'put_int'
put_int: ; 0xf18f6 LB 0x5f
push bp ; 55 ; 0xf18f6 print.c:102
mov bp, sp ; 89 e5 ; 0xf18f7
push si ; 56 ; 0xf18f9
push di ; 57 ; 0xf18fa
push ax ; 50 ; 0xf18fb
push ax ; 50 ; 0xf18fc
mov si, ax ; 89 c6 ; 0xf18fd
mov word [bp-008h], dx ; 89 56 f8 ; 0xf18ff
mov di, strict word 0000ah ; bf 0a 00 ; 0xf1902 print.c:104
mov ax, dx ; 89 d0 ; 0xf1905
cwd ; 99 ; 0xf1907
idiv di ; f7 ff ; 0xf1908
mov word [bp-006h], ax ; 89 46 fa ; 0xf190a
test ax, ax ; 85 c0 ; 0xf190d print.c:105
je short 0191bh ; 74 0a ; 0xf190f
dec bx ; 4b ; 0xf1911 print.c:106
mov dx, ax ; 89 c2 ; 0xf1912
mov ax, si ; 89 f0 ; 0xf1914
call 018f6h ; e8 dd ff ; 0xf1916
jmp short 01936h ; eb 1b ; 0xf1919 print.c:107
dec bx ; 4b ; 0xf191b print.c:108
test bx, bx ; 85 db ; 0xf191c
jle short 0192ah ; 7e 0a ; 0xf191e
mov dx, strict word 00020h ; ba 20 00 ; 0xf1920 print.c:109
mov ax, si ; 89 f0 ; 0xf1923
call 018bbh ; e8 93 ff ; 0xf1925
jmp short 0191bh ; eb f1 ; 0xf1928
test cx, cx ; 85 c9 ; 0xf192a print.c:110
je short 01936h ; 74 08 ; 0xf192c
mov dx, strict word 0002dh ; ba 2d 00 ; 0xf192e print.c:111
mov ax, si ; 89 f0 ; 0xf1931
call 018bbh ; e8 85 ff ; 0xf1933
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf1936 print.c:113
mov DL, strict byte 00ah ; b2 0a ; 0xf1939
mul dl ; f6 e2 ; 0xf193b
mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xf193d
sub dl, al ; 28 c2 ; 0xf1940
mov al, dl ; 88 d0 ; 0xf1942
add AL, strict byte 030h ; 04 30 ; 0xf1944
movzx dx, al ; 0f b6 d0 ; 0xf1946
mov ax, si ; 89 f0 ; 0xf1949
call 018bbh ; e8 6d ff ; 0xf194b
lea sp, [bp-004h] ; 8d 66 fc ; 0xf194e print.c:114
pop di ; 5f ; 0xf1951
pop si ; 5e ; 0xf1952
pop bp ; 5d ; 0xf1953
retn ; c3 ; 0xf1954
; disGetNextSymbol 0xf1955 LB 0x94c7 -> off=0x0 cb=0000000000000060 uValue=00000000000f0355 'put_uint'
put_uint: ; 0xf1955 LB 0x60
push bp ; 55 ; 0xf1955 print.c:116
mov bp, sp ; 89 e5 ; 0xf1956
push si ; 56 ; 0xf1958
push di ; 57 ; 0xf1959
push ax ; 50 ; 0xf195a
push ax ; 50 ; 0xf195b
mov si, ax ; 89 c6 ; 0xf195c
mov word [bp-008h], dx ; 89 56 f8 ; 0xf195e
mov ax, dx ; 89 d0 ; 0xf1961 print.c:118
xor dx, dx ; 31 d2 ; 0xf1963
mov di, strict word 0000ah ; bf 0a 00 ; 0xf1965
div di ; f7 f7 ; 0xf1968
mov word [bp-006h], ax ; 89 46 fa ; 0xf196a
test ax, ax ; 85 c0 ; 0xf196d print.c:119
je short 0197bh ; 74 0a ; 0xf196f
dec bx ; 4b ; 0xf1971 print.c:120
mov dx, ax ; 89 c2 ; 0xf1972
mov ax, si ; 89 f0 ; 0xf1974
call 01955h ; e8 dc ff ; 0xf1976
jmp short 01996h ; eb 1b ; 0xf1979 print.c:121
dec bx ; 4b ; 0xf197b print.c:122
test bx, bx ; 85 db ; 0xf197c
jle short 0198ah ; 7e 0a ; 0xf197e
mov dx, strict word 00020h ; ba 20 00 ; 0xf1980 print.c:123
mov ax, si ; 89 f0 ; 0xf1983
call 018bbh ; e8 33 ff ; 0xf1985
jmp short 0197bh ; eb f1 ; 0xf1988
test cx, cx ; 85 c9 ; 0xf198a print.c:124
je short 01996h ; 74 08 ; 0xf198c
mov dx, strict word 0002dh ; ba 2d 00 ; 0xf198e print.c:125
mov ax, si ; 89 f0 ; 0xf1991
call 018bbh ; e8 25 ff ; 0xf1993
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf1996 print.c:127
mov DL, strict byte 00ah ; b2 0a ; 0xf1999
mul dl ; f6 e2 ; 0xf199b
mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xf199d
sub dl, al ; 28 c2 ; 0xf19a0
mov al, dl ; 88 d0 ; 0xf19a2
add AL, strict byte 030h ; 04 30 ; 0xf19a4
movzx dx, al ; 0f b6 d0 ; 0xf19a6
mov ax, si ; 89 f0 ; 0xf19a9
call 018bbh ; e8 0d ff ; 0xf19ab
lea sp, [bp-004h] ; 8d 66 fc ; 0xf19ae print.c:128
pop di ; 5f ; 0xf19b1
pop si ; 5e ; 0xf19b2
pop bp ; 5d ; 0xf19b3
retn ; c3 ; 0xf19b4
; disGetNextSymbol 0xf19b5 LB 0x9467 -> off=0x0 cb=0000000000000072 uValue=00000000000f03b5 'put_luint'
put_luint: ; 0xf19b5 LB 0x72
push bp ; 55 ; 0xf19b5 print.c:130
mov bp, sp ; 89 e5 ; 0xf19b6
push si ; 56 ; 0xf19b8
push di ; 57 ; 0xf19b9
push ax ; 50 ; 0xf19ba
push ax ; 50 ; 0xf19bb
mov si, ax ; 89 c6 ; 0xf19bc
mov word [bp-006h], bx ; 89 5e fa ; 0xf19be
mov di, dx ; 89 d7 ; 0xf19c1
mov ax, bx ; 89 d8 ; 0xf19c3 print.c:132
mov dx, cx ; 89 ca ; 0xf19c5
mov bx, strict word 0000ah ; bb 0a 00 ; 0xf19c7
xor cx, cx ; 31 c9 ; 0xf19ca
call 0ad20h ; e8 51 93 ; 0xf19cc
mov word [bp-008h], ax ; 89 46 f8 ; 0xf19cf
mov cx, dx ; 89 d1 ; 0xf19d2
mov dx, ax ; 89 c2 ; 0xf19d4 print.c:133
or dx, cx ; 09 ca ; 0xf19d6
je short 019e9h ; 74 0f ; 0xf19d8
push word [bp+004h] ; ff 76 04 ; 0xf19da print.c:134
lea dx, [di-001h] ; 8d 55 ff ; 0xf19dd
mov bx, ax ; 89 c3 ; 0xf19e0
mov ax, si ; 89 f0 ; 0xf19e2
call 019b5h ; e8 ce ff ; 0xf19e4
jmp short 01a06h ; eb 1d ; 0xf19e7 print.c:135
dec di ; 4f ; 0xf19e9 print.c:136
test di, di ; 85 ff ; 0xf19ea
jle short 019f8h ; 7e 0a ; 0xf19ec
mov dx, strict word 00020h ; ba 20 00 ; 0xf19ee print.c:137
mov ax, si ; 89 f0 ; 0xf19f1
call 018bbh ; e8 c5 fe ; 0xf19f3
jmp short 019e9h ; eb f1 ; 0xf19f6
cmp word [bp+004h], strict byte 00000h ; 83 7e 04 00 ; 0xf19f8 print.c:138
je short 01a06h ; 74 08 ; 0xf19fc
mov dx, strict word 0002dh ; ba 2d 00 ; 0xf19fe print.c:139
mov ax, si ; 89 f0 ; 0xf1a01
call 018bbh ; e8 b5 fe ; 0xf1a03
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf1a06 print.c:141
mov DL, strict byte 00ah ; b2 0a ; 0xf1a09
mul dl ; f6 e2 ; 0xf1a0b
mov dl, byte [bp-006h] ; 8a 56 fa ; 0xf1a0d
sub dl, al ; 28 c2 ; 0xf1a10
mov al, dl ; 88 d0 ; 0xf1a12
add AL, strict byte 030h ; 04 30 ; 0xf1a14
movzx dx, al ; 0f b6 d0 ; 0xf1a16
mov ax, si ; 89 f0 ; 0xf1a19
call 018bbh ; e8 9d fe ; 0xf1a1b
lea sp, [bp-004h] ; 8d 66 fc ; 0xf1a1e print.c:142
pop di ; 5f ; 0xf1a21
pop si ; 5e ; 0xf1a22
pop bp ; 5d ; 0xf1a23
retn 00002h ; c2 02 00 ; 0xf1a24
; disGetNextSymbol 0xf1a27 LB 0x93f5 -> off=0x0 cb=0000000000000021 uValue=00000000000f0427 'put_str'
put_str: ; 0xf1a27 LB 0x21
push bp ; 55 ; 0xf1a27 print.c:144
mov bp, sp ; 89 e5 ; 0xf1a28
push dx ; 52 ; 0xf1a2a
push si ; 56 ; 0xf1a2b
mov si, ax ; 89 c6 ; 0xf1a2c
mov es, cx ; 8e c1 ; 0xf1a2e print.c:148
mov dl, byte [es:bx] ; 26 8a 17 ; 0xf1a30
test dl, dl ; 84 d2 ; 0xf1a33
je short 01a41h ; 74 0a ; 0xf1a35
xor dh, dh ; 30 f6 ; 0xf1a37 print.c:149
mov ax, si ; 89 f0 ; 0xf1a39
call 018bbh ; e8 7d fe ; 0xf1a3b
inc bx ; 43 ; 0xf1a3e print.c:150
jmp short 01a2eh ; eb ed ; 0xf1a3f print.c:151
lea sp, [bp-004h] ; 8d 66 fc ; 0xf1a41 print.c:152
pop si ; 5e ; 0xf1a44
pop dx ; 5a ; 0xf1a45
pop bp ; 5d ; 0xf1a46
retn ; c3 ; 0xf1a47
; disGetNextSymbol 0xf1a48 LB 0x93d4 -> off=0x0 cb=0000000000000020 uValue=00000000000f0448 'put_str_near'
put_str_near: ; 0xf1a48 LB 0x20
push bp ; 55 ; 0xf1a48 print.c:154
mov bp, sp ; 89 e5 ; 0xf1a49
push bx ; 53 ; 0xf1a4b
push cx ; 51 ; 0xf1a4c
mov cx, ax ; 89 c1 ; 0xf1a4d
mov bx, dx ; 89 d3 ; 0xf1a4f
mov dl, byte [bx] ; 8a 17 ; 0xf1a51 print.c:158
test dl, dl ; 84 d2 ; 0xf1a53
je short 01a61h ; 74 0a ; 0xf1a55
xor dh, dh ; 30 f6 ; 0xf1a57 print.c:159
mov ax, cx ; 89 c8 ; 0xf1a59
call 018bbh ; e8 5d fe ; 0xf1a5b
inc bx ; 43 ; 0xf1a5e print.c:160
jmp short 01a51h ; eb f0 ; 0xf1a5f print.c:161
lea sp, [bp-004h] ; 8d 66 fc ; 0xf1a61 print.c:162
pop cx ; 59 ; 0xf1a64
pop bx ; 5b ; 0xf1a65
pop bp ; 5d ; 0xf1a66
retn ; c3 ; 0xf1a67
; disGetNextSymbol 0xf1a68 LB 0x93b4 -> off=0x0 cb=000000000000033d uValue=00000000000f0468 'bios_printf'
bios_printf: ; 0xf1a68 LB 0x33d
push bp ; 55 ; 0xf1a68 print.c:175
mov bp, sp ; 89 e5 ; 0xf1a69
push bx ; 53 ; 0xf1a6b
push cx ; 51 ; 0xf1a6c
push dx ; 52 ; 0xf1a6d
push si ; 56 ; 0xf1a6e
push di ; 57 ; 0xf1a6f
sub sp, strict byte 0001ch ; 83 ec 1c ; 0xf1a70
lea bx, [bp+008h] ; 8d 5e 08 ; 0xf1a73 print.c:183
mov word [bp-016h], bx ; 89 5e ea ; 0xf1a76
mov [bp-014h], ss ; 8c 56 ec ; 0xf1a79
xor bx, bx ; 31 db ; 0xf1a7c print.c:185
xor di, di ; 31 ff ; 0xf1a7e print.c:186
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1a80 print.c:188
and ax, strict word 00007h ; 25 07 00 ; 0xf1a83
cmp ax, strict word 00007h ; 3d 07 00 ; 0xf1a86
jne short 01a96h ; 75 0b ; 0xf1a89
push 00138h ; 68 38 01 ; 0xf1a8b print.c:189
push strict byte 00002h ; 6a 02 ; 0xf1a8e
call 01a68h ; e8 d5 ff ; 0xf1a90
add sp, strict byte 00004h ; 83 c4 04 ; 0xf1a93
mov si, word [bp+006h] ; 8b 76 06 ; 0xf1a96 print.c:192
mov dl, byte [si] ; 8a 14 ; 0xf1a99
test dl, dl ; 84 d2 ; 0xf1a9b
je near 01d89h ; 0f 84 e8 02 ; 0xf1a9d
cmp dl, 025h ; 80 fa 25 ; 0xf1aa1 print.c:193
jne short 01aaeh ; 75 08 ; 0xf1aa4
mov bx, strict word 00001h ; bb 01 00 ; 0xf1aa6 print.c:194
xor di, di ; 31 ff ; 0xf1aa9 print.c:195
jmp near 01d83h ; e9 d5 02 ; 0xf1aab print.c:197
test bx, bx ; 85 db ; 0xf1aae
je near 01d7bh ; 0f 84 c7 02 ; 0xf1ab0
cmp dl, 030h ; 80 fa 30 ; 0xf1ab4 print.c:198
jc short 01acch ; 72 13 ; 0xf1ab7
cmp dl, 039h ; 80 fa 39 ; 0xf1ab9
jnbe short 01acch ; 77 0e ; 0xf1abc
movzx ax, dl ; 0f b6 c2 ; 0xf1abe print.c:199
imul di, di, strict byte 0000ah ; 6b ff 0a ; 0xf1ac1
sub ax, strict word 00030h ; 2d 30 00 ; 0xf1ac4
add di, ax ; 01 c7 ; 0xf1ac7
jmp near 01d83h ; e9 b7 02 ; 0xf1ac9 print.c:201
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf1acc print.c:202
mov word [bp-014h], ax ; 89 46 ec ; 0xf1acf
add word [bp-016h], strict byte 00002h ; 83 46 ea 02 ; 0xf1ad2
les bx, [bp-016h] ; c4 5e ea ; 0xf1ad6
mov ax, word [es:bx-002h] ; 26 8b 47 fe ; 0xf1ad9
mov word [bp-012h], ax ; 89 46 ee ; 0xf1add
cmp dl, 078h ; 80 fa 78 ; 0xf1ae0 print.c:203
je short 01aeah ; 74 05 ; 0xf1ae3
cmp dl, 058h ; 80 fa 58 ; 0xf1ae5
jne short 01b40h ; 75 56 ; 0xf1ae8
test di, di ; 85 ff ; 0xf1aea print.c:204
jne short 01af1h ; 75 03 ; 0xf1aec
mov di, strict word 00004h ; bf 04 00 ; 0xf1aee print.c:205
cmp dl, 078h ; 80 fa 78 ; 0xf1af1 print.c:206
jne short 01afdh ; 75 07 ; 0xf1af4
mov word [bp-00eh], strict word 00061h ; c7 46 f2 61 00 ; 0xf1af6 print.c:207
jmp short 01b02h ; eb 05 ; 0xf1afb print.c:208
mov word [bp-00eh], strict word 00041h ; c7 46 f2 41 00 ; 0xf1afd print.c:209
lea ax, [di-001h] ; 8d 45 ff ; 0xf1b02 print.c:210
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf1b05
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf1b08
test ax, ax ; 85 c0 ; 0xf1b0b
jl near 01d77h ; 0f 8c 66 02 ; 0xf1b0d
mov cx, ax ; 89 c1 ; 0xf1b11 print.c:211
sal cx, 002h ; c1 e1 02 ; 0xf1b13
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf1b16
shr ax, CL ; d3 e8 ; 0xf1b19
xor ah, ah ; 30 e4 ; 0xf1b1b
and AL, strict byte 00fh ; 24 0f ; 0xf1b1d
cmp ax, strict word 00009h ; 3d 09 00 ; 0xf1b1f print.c:212
jnbe short 01b2bh ; 77 07 ; 0xf1b22
mov dx, ax ; 89 c2 ; 0xf1b24
add dx, strict byte 00030h ; 83 c2 30 ; 0xf1b26
jmp short 01b33h ; eb 08 ; 0xf1b29
sub ax, strict word 0000ah ; 2d 0a 00 ; 0xf1b2b
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf1b2e
add dx, ax ; 01 c2 ; 0xf1b31
xor dh, dh ; 30 f6 ; 0xf1b33
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1b35
call 018bbh ; e8 80 fd ; 0xf1b38
dec word [bp-00ch] ; ff 4e f4 ; 0xf1b3b print.c:213
jmp short 01b08h ; eb c8 ; 0xf1b3e
cmp dl, 075h ; 80 fa 75 ; 0xf1b40 print.c:215
jne short 01b54h ; 75 0f ; 0xf1b43
xor cx, cx ; 31 c9 ; 0xf1b45 print.c:216
mov bx, di ; 89 fb ; 0xf1b47
mov dx, ax ; 89 c2 ; 0xf1b49
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1b4b
call 01955h ; e8 04 fe ; 0xf1b4e
jmp near 01d77h ; e9 23 02 ; 0xf1b51 print.c:218
cmp dl, 06ch ; 80 fa 6c ; 0xf1b54
jne near 01c36h ; 0f 85 db 00 ; 0xf1b57
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf1b5b
cmp dl, byte [bx+001h] ; 3a 57 01 ; 0xf1b5e
jne near 01c36h ; 0f 85 d1 00 ; 0xf1b61
add word [bp+006h], strict byte 00002h ; 83 46 06 02 ; 0xf1b65 print.c:222
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf1b69 print.c:223
mov dl, byte [bx] ; 8a 17 ; 0xf1b6c
mov word [bp-026h], ax ; 89 46 da ; 0xf1b6e print.c:225
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf1b71 print.c:226
mov word [bp-014h], ax ; 89 46 ec ; 0xf1b74
add word [bp-016h], strict byte 00002h ; 83 46 ea 02 ; 0xf1b77
les bx, [bp-016h] ; c4 5e ea ; 0xf1b7b
mov ax, word [es:bx-002h] ; 26 8b 47 fe ; 0xf1b7e
mov word [bp-024h], ax ; 89 46 dc ; 0xf1b82
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf1b85 print.c:227
mov word [bp-014h], ax ; 89 46 ec ; 0xf1b88
add word [bp-016h], strict byte 00002h ; 83 46 ea 02 ; 0xf1b8b
les bx, [bp-016h] ; c4 5e ea ; 0xf1b8f
mov ax, word [es:bx-002h] ; 26 8b 47 fe ; 0xf1b92
mov word [bp-022h], ax ; 89 46 de ; 0xf1b96
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf1b99 print.c:228
mov word [bp-014h], ax ; 89 46 ec ; 0xf1b9c
add word [bp-016h], strict byte 00002h ; 83 46 ea 02 ; 0xf1b9f
les bx, [bp-016h] ; c4 5e ea ; 0xf1ba3
mov ax, word [es:bx-002h] ; 26 8b 47 fe ; 0xf1ba6
mov word [bp-020h], ax ; 89 46 e0 ; 0xf1baa
cmp dl, 078h ; 80 fa 78 ; 0xf1bad print.c:229
je short 01bb7h ; 74 05 ; 0xf1bb0
cmp dl, 058h ; 80 fa 58 ; 0xf1bb2
jne short 01c28h ; 75 71 ; 0xf1bb5
test di, di ; 85 ff ; 0xf1bb7 print.c:230
jne short 01bbeh ; 75 03 ; 0xf1bb9
mov di, strict word 00010h ; bf 10 00 ; 0xf1bbb print.c:231
cmp dl, 078h ; 80 fa 78 ; 0xf1bbe print.c:232
jne short 01bcah ; 75 07 ; 0xf1bc1
mov word [bp-00eh], strict word 00061h ; c7 46 f2 61 00 ; 0xf1bc3 print.c:233
jmp short 01bcfh ; eb 05 ; 0xf1bc8 print.c:234
mov word [bp-00eh], strict word 00041h ; c7 46 f2 41 00 ; 0xf1bca print.c:235
lea ax, [di-001h] ; 8d 45 ff ; 0xf1bcf print.c:236
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf1bd2
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf1bd5
test ax, ax ; 85 c0 ; 0xf1bd8
jl near 01d77h ; 0f 8c 99 01 ; 0xf1bda
sal ax, 002h ; c1 e0 02 ; 0xf1bde print.c:237
mov word [bp-01eh], ax ; 89 46 e2 ; 0xf1be1
xor ax, ax ; 31 c0 ; 0xf1be4
mov word [bp-01ch], ax ; 89 46 e4 ; 0xf1be6
mov word [bp-01ah], ax ; 89 46 e6 ; 0xf1be9
mov word [bp-018h], ax ; 89 46 e8 ; 0xf1bec
mov ax, word [bp-020h] ; 8b 46 e0 ; 0xf1bef
mov bx, word [bp-022h] ; 8b 5e de ; 0xf1bf2
mov cx, word [bp-024h] ; 8b 4e dc ; 0xf1bf5
mov dx, word [bp-026h] ; 8b 56 da ; 0xf1bf8
mov si, word [bp-01eh] ; 8b 76 e2 ; 0xf1bfb
call 0ad60h ; e8 5f 91 ; 0xf1bfe
mov ax, dx ; 89 d0 ; 0xf1c01
xor ah, dh ; 30 f4 ; 0xf1c03
and AL, strict byte 00fh ; 24 0f ; 0xf1c05
cmp ax, strict word 00009h ; 3d 09 00 ; 0xf1c07 print.c:238
jnbe short 01c13h ; 77 07 ; 0xf1c0a
mov dx, ax ; 89 c2 ; 0xf1c0c
add dx, strict byte 00030h ; 83 c2 30 ; 0xf1c0e
jmp short 01c1bh ; eb 08 ; 0xf1c11
sub ax, strict word 0000ah ; 2d 0a 00 ; 0xf1c13
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf1c16
add dx, ax ; 01 c2 ; 0xf1c19
xor dh, dh ; 30 f6 ; 0xf1c1b
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1c1d
call 018bbh ; e8 98 fc ; 0xf1c20
dec word [bp-00ch] ; ff 4e f4 ; 0xf1c23 print.c:239
jmp short 01bd5h ; eb ad ; 0xf1c26
push 00140h ; 68 40 01 ; 0xf1c28 print.c:241
push strict byte 00007h ; 6a 07 ; 0xf1c2b
call 01a68h ; e8 38 fe ; 0xf1c2d
add sp, strict byte 00004h ; 83 c4 04 ; 0xf1c30
jmp near 01d77h ; e9 41 01 ; 0xf1c33 print.c:244
lea bx, [di-001h] ; 8d 5d ff ; 0xf1c36
cmp dl, 06ch ; 80 fa 6c ; 0xf1c39
jne near 01cffh ; 0f 85 bf 00 ; 0xf1c3c
inc word [bp+006h] ; ff 46 06 ; 0xf1c40 print.c:245
mov si, word [bp+006h] ; 8b 76 06 ; 0xf1c43 print.c:246
mov dl, byte [si] ; 8a 14 ; 0xf1c46
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf1c48 print.c:247
mov word [bp-014h], ax ; 89 46 ec ; 0xf1c4b
add word [bp-016h], strict byte 00002h ; 83 46 ea 02 ; 0xf1c4e
les si, [bp-016h] ; c4 76 ea ; 0xf1c52
mov ax, word [es:si-002h] ; 26 8b 44 fe ; 0xf1c55
mov word [bp-010h], ax ; 89 46 f0 ; 0xf1c59
cmp dl, 064h ; 80 fa 64 ; 0xf1c5c print.c:248
jne short 01c8eh ; 75 2d ; 0xf1c5f
test byte [bp-00fh], 080h ; f6 46 f1 80 ; 0xf1c61 print.c:249
je short 01c7ch ; 74 15 ; 0xf1c65
push strict byte 00001h ; 6a 01 ; 0xf1c67 print.c:250
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf1c69
mov cx, word [bp-010h] ; 8b 4e f0 ; 0xf1c6c
neg cx ; f7 d9 ; 0xf1c6f
neg ax ; f7 d8 ; 0xf1c71
sbb cx, strict byte 00000h ; 83 d9 00 ; 0xf1c73
mov dx, bx ; 89 da ; 0xf1c76
mov bx, ax ; 89 c3 ; 0xf1c78
jmp short 01c85h ; eb 09 ; 0xf1c7a print.c:251
push strict byte 00000h ; 6a 00 ; 0xf1c7c print.c:252
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf1c7e
mov dx, di ; 89 fa ; 0xf1c81
mov cx, ax ; 89 c1 ; 0xf1c83
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1c85
call 019b5h ; e8 2a fd ; 0xf1c88
jmp near 01d77h ; e9 e9 00 ; 0xf1c8b print.c:254
cmp dl, 075h ; 80 fa 75 ; 0xf1c8e
jne short 01c95h ; 75 02 ; 0xf1c91
jmp short 01c7ch ; eb e7 ; 0xf1c93
cmp dl, 078h ; 80 fa 78 ; 0xf1c95 print.c:257
je short 01ca1h ; 74 07 ; 0xf1c98
cmp dl, 058h ; 80 fa 58 ; 0xf1c9a
jne near 01d77h ; 0f 85 d6 00 ; 0xf1c9d
test di, di ; 85 ff ; 0xf1ca1 print.c:259
jne short 01ca8h ; 75 03 ; 0xf1ca3
mov di, strict word 00008h ; bf 08 00 ; 0xf1ca5 print.c:260
cmp dl, 078h ; 80 fa 78 ; 0xf1ca8 print.c:261
jne short 01cb4h ; 75 07 ; 0xf1cab
mov word [bp-00eh], strict word 00061h ; c7 46 f2 61 00 ; 0xf1cad print.c:262
jmp short 01cb9h ; eb 05 ; 0xf1cb2 print.c:263
mov word [bp-00eh], strict word 00041h ; c7 46 f2 41 00 ; 0xf1cb4 print.c:264
lea ax, [di-001h] ; 8d 45 ff ; 0xf1cb9 print.c:265
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf1cbc
cmp word [bp-00ch], strict byte 00000h ; 83 7e f4 00 ; 0xf1cbf
jl near 01d77h ; 0f 8c b0 00 ; 0xf1cc3
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf1cc7 print.c:266
mov cx, word [bp-00ch] ; 8b 4e f4 ; 0xf1cca
sal cx, 002h ; c1 e1 02 ; 0xf1ccd
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf1cd0
jcxz 01cdbh ; e3 06 ; 0xf1cd3
shr dx, 1 ; d1 ea ; 0xf1cd5
rcr ax, 1 ; d1 d8 ; 0xf1cd7
loop 01cd5h ; e2 fa ; 0xf1cd9
and ax, strict word 0000fh ; 25 0f 00 ; 0xf1cdb
cmp ax, strict word 00009h ; 3d 09 00 ; 0xf1cde print.c:267
jnbe short 01ceah ; 77 07 ; 0xf1ce1
mov dx, ax ; 89 c2 ; 0xf1ce3
add dx, strict byte 00030h ; 83 c2 30 ; 0xf1ce5
jmp short 01cf2h ; eb 08 ; 0xf1ce8
sub ax, strict word 0000ah ; 2d 0a 00 ; 0xf1cea
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf1ced
add dx, ax ; 01 c2 ; 0xf1cf0
xor dh, dh ; 30 f6 ; 0xf1cf2
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1cf4
call 018bbh ; e8 c1 fb ; 0xf1cf7
dec word [bp-00ch] ; ff 4e f4 ; 0xf1cfa print.c:268
jmp short 01cbfh ; eb c0 ; 0xf1cfd
cmp dl, 064h ; 80 fa 64 ; 0xf1cff print.c:271
jne short 01d23h ; 75 1f ; 0xf1d02
test byte [bp-011h], 080h ; f6 46 ef 80 ; 0xf1d04 print.c:272
je short 01d14h ; 74 0a ; 0xf1d08
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf1d0a print.c:273
neg dx ; f7 da ; 0xf1d0d
mov cx, strict word 00001h ; b9 01 00 ; 0xf1d0f
jmp short 01d1bh ; eb 07 ; 0xf1d12 print.c:274
xor cx, cx ; 31 c9 ; 0xf1d14 print.c:275
mov bx, di ; 89 fb ; 0xf1d16
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf1d18
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1d1b
call 018f6h ; e8 d5 fb ; 0xf1d1e
jmp short 01d77h ; eb 54 ; 0xf1d21 print.c:277
cmp dl, 073h ; 80 fa 73 ; 0xf1d23
jne short 01d35h ; 75 0d ; 0xf1d26
mov cx, ds ; 8c d9 ; 0xf1d28 print.c:278
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf1d2a
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1d2d
call 01a27h ; e8 f4 fc ; 0xf1d30
jmp short 01d77h ; eb 42 ; 0xf1d33 print.c:280
cmp dl, 053h ; 80 fa 53 ; 0xf1d35
jne short 01d5bh ; 75 21 ; 0xf1d38
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf1d3a print.c:281
mov word [bp-010h], ax ; 89 46 f0 ; 0xf1d3d
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf1d40 print.c:282
mov word [bp-014h], ax ; 89 46 ec ; 0xf1d43
add word [bp-016h], strict byte 00002h ; 83 46 ea 02 ; 0xf1d46
les bx, [bp-016h] ; c4 5e ea ; 0xf1d4a
mov ax, word [es:bx-002h] ; 26 8b 47 fe ; 0xf1d4d
mov word [bp-012h], ax ; 89 46 ee ; 0xf1d51
mov bx, ax ; 89 c3 ; 0xf1d54 print.c:283
mov cx, word [bp-010h] ; 8b 4e f0 ; 0xf1d56
jmp short 01d2dh ; eb d2 ; 0xf1d59
cmp dl, 063h ; 80 fa 63 ; 0xf1d5b print.c:285
jne short 01d6ch ; 75 0c ; 0xf1d5e
movzx dx, byte [bp-012h] ; 0f b6 56 ee ; 0xf1d60 print.c:286
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1d64
call 018bbh ; e8 51 fb ; 0xf1d67
jmp short 01d77h ; eb 0b ; 0xf1d6a print.c:288
push 00161h ; 68 61 01 ; 0xf1d6c print.c:289
push strict byte 00007h ; 6a 07 ; 0xf1d6f
call 01a68h ; e8 f4 fc ; 0xf1d71
add sp, strict byte 00004h ; 83 c4 04 ; 0xf1d74
xor bx, bx ; 31 db ; 0xf1d77 print.c:290
jmp short 01d83h ; eb 08 ; 0xf1d79 print.c:293
xor dh, dh ; 30 f6 ; 0xf1d7b print.c:294
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf1d7d
call 018bbh ; e8 38 fb ; 0xf1d80
inc word [bp+006h] ; ff 46 06 ; 0xf1d83 print.c:296
jmp near 01a96h ; e9 0d fd ; 0xf1d86 print.c:297
xor ax, ax ; 31 c0 ; 0xf1d89 print.c:298
mov word [bp-016h], ax ; 89 46 ea ; 0xf1d8b
mov word [bp-014h], ax ; 89 46 ec ; 0xf1d8e
test byte [bp+004h], 001h ; f6 46 04 01 ; 0xf1d91 print.c:299
je short 01d9bh ; 74 04 ; 0xf1d95
cli ; fa ; 0xf1d97 print.c:301
hlt ; f4 ; 0xf1d98 print.c:302
jmp short 01d98h ; eb fd ; 0xf1d99
lea sp, [bp-00ah] ; 8d 66 f6 ; 0xf1d9b print.c:304
pop di ; 5f ; 0xf1d9e
pop si ; 5e ; 0xf1d9f
pop dx ; 5a ; 0xf1da0
pop cx ; 59 ; 0xf1da1
pop bx ; 5b ; 0xf1da2
pop bp ; 5d ; 0xf1da3
retn ; c3 ; 0xf1da4
; disGetNextSymbol 0xf1da5 LB 0x9077 -> off=0x0 cb=00000000000000cc uValue=00000000000f07a5 'ata_init'
ata_init: ; 0xf1da5 LB 0xcc
push si ; 56 ; 0xf1da5 ata.c:89
push bp ; 55 ; 0xf1da6
mov bp, sp ; 89 e5 ; 0xf1da7
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf1da9 ata.c:58
mov si, strict word 00040h ; be 40 00 ; 0xf1dac
mov es, si ; 8e c6 ; 0xf1daf
mov bx, word [es:bx] ; 26 8b 1f ; 0xf1db1
mov si, strict word 0005eh ; be 5e 00 ; 0xf1db4 ata.c:59
mov dx, bx ; 89 da ; 0xf1db7
xor al, al ; 30 c0 ; 0xf1db9 ata.c:97
jmp short 01dc1h ; eb 04 ; 0xf1dbb
cmp AL, strict byte 004h ; 3c 04 ; 0xf1dbd
jnc short 01de5h ; 73 24 ; 0xf1dbf
movzx bx, al ; 0f b6 d8 ; 0xf1dc1 ata.c:98
imul bx, bx, strict byte 00006h ; 6b db 06 ; 0xf1dc4
mov es, dx ; 8e c2 ; 0xf1dc7
add bx, si ; 01 f3 ; 0xf1dc9
mov byte [es:bx+00278h], 000h ; 26 c6 87 78 02 00 ; 0xf1dcb
db 066h, 026h, 0c7h, 087h, 07ah, 002h, 000h, 000h, 000h, 000h
; mov dword [es:bx+0027ah], strict dword 000000000h ; 66 26 c7 87 7a 02 00 00 00 00; 0xf1dd1 ata.c:99
mov byte [es:bx+00279h], 000h ; 26 c6 87 79 02 00 ; 0xf1ddb ata.c:101
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf1de1 ata.c:102
jmp short 01dbdh ; eb d8 ; 0xf1de3
xor al, al ; 30 c0 ; 0xf1de5 ata.c:105
jmp short 01dedh ; eb 04 ; 0xf1de7
cmp AL, strict byte 008h ; 3c 08 ; 0xf1de9
jnc short 01e41h ; 73 54 ; 0xf1deb
movzx bx, al ; 0f b6 d8 ; 0xf1ded ata.c:106
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf1df0
mov es, dx ; 8e c2 ; 0xf1df3
add bx, si ; 01 f3 ; 0xf1df5
db 066h, 026h, 0c7h, 047h, 01eh, 000h, 000h, 000h, 000h
; mov dword [es:bx+01eh], strict dword 000000000h ; 66 26 c7 47 1e 00 00 00 00; 0xf1df7
mov byte [es:bx+022h], 000h ; 26 c6 47 22 00 ; 0xf1e00 ata.c:110
mov word [es:bx+024h], 00200h ; 26 c7 47 24 00 02 ; 0xf1e05 ata.c:111
mov byte [es:bx+023h], 000h ; 26 c6 47 23 00 ; 0xf1e0b ata.c:112
db 066h, 026h, 0c7h, 047h, 026h, 000h, 000h, 000h, 000h
; mov dword [es:bx+026h], strict dword 000000000h ; 66 26 c7 47 26 00 00 00 00; 0xf1e10 ata.c:113
db 066h, 026h, 0c7h, 047h, 02ah, 000h, 000h, 000h, 000h
; mov dword [es:bx+02ah], strict dword 000000000h ; 66 26 c7 47 2a 00 00 00 00; 0xf1e19 ata.c:115
db 066h, 026h, 0c7h, 047h, 02eh, 000h, 000h, 000h, 000h
; mov dword [es:bx+02eh], strict dword 000000000h ; 66 26 c7 47 2e 00 00 00 00; 0xf1e22 ata.c:117
db 066h, 026h, 0c7h, 047h, 036h, 000h, 000h, 000h, 000h
; mov dword [es:bx+036h], strict dword 000000000h ; 66 26 c7 47 36 00 00 00 00; 0xf1e2b ata.c:119
db 066h, 026h, 0c7h, 047h, 032h, 000h, 000h, 000h, 000h
; mov dword [es:bx+032h], strict dword 000000000h ; 66 26 c7 47 32 00 00 00 00; 0xf1e34
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf1e3d ata.c:120
jmp short 01de9h ; eb a8 ; 0xf1e3f
xor al, al ; 30 c0 ; 0xf1e41 ata.c:123
jmp short 01e49h ; eb 04 ; 0xf1e43
cmp AL, strict byte 014h ; 3c 14 ; 0xf1e45
jnc short 01e60h ; 73 17 ; 0xf1e47
movzx bx, al ; 0f b6 d8 ; 0xf1e49 ata.c:124
mov es, dx ; 8e c2 ; 0xf1e4c
add bx, si ; 01 f3 ; 0xf1e4e
mov byte [es:bx+0024fh], 014h ; 26 c6 87 4f 02 14 ; 0xf1e50
mov byte [es:bx+00264h], 014h ; 26 c6 87 64 02 14 ; 0xf1e56 ata.c:125
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf1e5c ata.c:126
jmp short 01e45h ; eb e5 ; 0xf1e5e
mov es, dx ; 8e c2 ; 0xf1e60 ata.c:128
mov byte [es:si+0024eh], 000h ; 26 c6 84 4e 02 00 ; 0xf1e62
mov byte [es:si+00263h], 000h ; 26 c6 84 63 02 00 ; 0xf1e68 ata.c:129
pop bp ; 5d ; 0xf1e6e ata.c:130
pop si ; 5e ; 0xf1e6f
retn ; c3 ; 0xf1e70
; disGetNextSymbol 0xf1e71 LB 0x8fab -> off=0x0 cb=00000000000000dd uValue=00000000000f0871 'ata_reset'
ata_reset: ; 0xf1e71 LB 0xdd
push bp ; 55 ; 0xf1e71 ata.c:138
mov bp, sp ; 89 e5 ; 0xf1e72
push bx ; 53 ; 0xf1e74
push cx ; 51 ; 0xf1e75
push dx ; 52 ; 0xf1e76
push si ; 56 ; 0xf1e77
push di ; 57 ; 0xf1e78
push ax ; 50 ; 0xf1e79
push ax ; 50 ; 0xf1e7a
push ax ; 50 ; 0xf1e7b
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf1e7c ata.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf1e7f
mov es, ax ; 8e c0 ; 0xf1e82
mov ax, word [es:bx] ; 26 8b 07 ; 0xf1e84
mov di, strict word 0005eh ; bf 5e 00 ; 0xf1e87 ata.c:59
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf1e8a
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf1e8d ata.c:147
shr dx, 1 ; d1 ea ; 0xf1e90
mov dh, byte [bp-010h] ; 8a 76 f0 ; 0xf1e92 ata.c:148
and dh, 001h ; 80 e6 01 ; 0xf1e95
mov byte [bp-00ch], dh ; 88 76 f4 ; 0xf1e98
xor dh, dh ; 30 f6 ; 0xf1e9b ata.c:150
imul bx, dx, strict byte 00006h ; 6b da 06 ; 0xf1e9d
mov es, ax ; 8e c0 ; 0xf1ea0
add bx, di ; 01 fb ; 0xf1ea2
mov cx, word [es:bx+0027ah] ; 26 8b 8f 7a 02 ; 0xf1ea4
mov si, word [es:bx+0027ch] ; 26 8b b7 7c 02 ; 0xf1ea9 ata.c:151
lea dx, [si+006h] ; 8d 54 06 ; 0xf1eae ata.c:156
mov AL, strict byte 00eh ; b0 0e ; 0xf1eb1
out DX, AL ; ee ; 0xf1eb3
mov bx, 000ffh ; bb ff 00 ; 0xf1eb4 ata.c:159
dec bx ; 4b ; 0xf1eb7 ata.c:160
test bx, bx ; 85 db ; 0xf1eb8
jbe short 01ec8h ; 76 0c ; 0xf1eba
mov dx, cx ; 89 ca ; 0xf1ebc ata.c:161
add dx, strict byte 00007h ; 83 c2 07 ; 0xf1ebe
in AL, DX ; ec ; 0xf1ec1
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf1ec2
test AL, strict byte 080h ; a8 80 ; 0xf1ec4 ata.c:162
je short 01eb7h ; 74 ef ; 0xf1ec6
lea dx, [si+006h] ; 8d 54 06 ; 0xf1ec8 ata.c:167
mov AL, strict byte 00ah ; b0 0a ; 0xf1ecb
out DX, AL ; ee ; 0xf1ecd
mov bx, strict word 0ffffh ; bb ff ff ; 0xf1ece ata.c:170
dec bx ; 4b ; 0xf1ed1 ata.c:171
test bx, bx ; 85 db ; 0xf1ed2
jbe short 01eech ; 76 16 ; 0xf1ed4
mov dx, cx ; 89 ca ; 0xf1ed6 ata.c:172
add dx, strict byte 00007h ; 83 c2 07 ; 0xf1ed8
in AL, DX ; ec ; 0xf1edb
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf1edc
test AL, strict byte 080h ; a8 80 ; 0xf1ede ata.c:173
je short 01eech ; 74 0a ; 0xf1ee0
mov ax, strict word 0ffffh ; b8 ff ff ; 0xf1ee2 ata.c:175
dec ax ; 48 ; 0xf1ee5 ata.c:176
test ax, ax ; 85 c0 ; 0xf1ee6
jnbe short 01ee5h ; 77 fb ; 0xf1ee8
jmp short 01ed1h ; eb e5 ; 0xf1eea ata.c:179
imul bx, word [bp-010h], strict byte 0001ch ; 6b 5e f0 1c ; 0xf1eec ata.c:181
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf1ef0
add bx, di ; 01 fb ; 0xf1ef3
cmp byte [es:bx+01eh], 000h ; 26 80 7f 1e 00 ; 0xf1ef5
je short 01f3eh ; 74 42 ; 0xf1efa
cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xf1efc ata.c:184
je short 01f07h ; 74 05 ; 0xf1f00
mov ax, 000b0h ; b8 b0 00 ; 0xf1f02
jmp short 01f0ah ; eb 03 ; 0xf1f05
mov ax, 000a0h ; b8 a0 00 ; 0xf1f07
mov dx, cx ; 89 ca ; 0xf1f0a
add dx, strict byte 00006h ; 83 c2 06 ; 0xf1f0c
out DX, AL ; ee ; 0xf1f0f
mov dx, cx ; 89 ca ; 0xf1f10 ata.c:185
inc dx ; 42 ; 0xf1f12
inc dx ; 42 ; 0xf1f13
in AL, DX ; ec ; 0xf1f14
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf1f15
mov bx, ax ; 89 c3 ; 0xf1f17
mov dx, cx ; 89 ca ; 0xf1f19 ata.c:186
add dx, strict byte 00003h ; 83 c2 03 ; 0xf1f1b
in AL, DX ; ec ; 0xf1f1e
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf1f1f
cmp bl, 001h ; 80 fb 01 ; 0xf1f21 ata.c:188
jne short 01f3eh ; 75 18 ; 0xf1f24
cmp al, bl ; 38 d8 ; 0xf1f26
jne short 01f3eh ; 75 14 ; 0xf1f28
mov bx, strict word 00010h ; bb 10 00 ; 0xf1f2a ata.c:190
dec bx ; 4b ; 0xf1f2d ata.c:191
test bx, bx ; 85 db ; 0xf1f2e
jbe short 01f3eh ; 76 0c ; 0xf1f30
mov dx, cx ; 89 ca ; 0xf1f32 ata.c:192
add dx, strict byte 00007h ; 83 c2 07 ; 0xf1f34
in AL, DX ; ec ; 0xf1f37
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf1f38
test AL, strict byte 040h ; a8 40 ; 0xf1f3a ata.c:193
je short 01f2dh ; 74 ef ; 0xf1f3c
lea dx, [si+006h] ; 8d 54 06 ; 0xf1f3e ata.c:200
mov AL, strict byte 008h ; b0 08 ; 0xf1f41
out DX, AL ; ee ; 0xf1f43
lea sp, [bp-00ah] ; 8d 66 f6 ; 0xf1f44 ata.c:201
pop di ; 5f ; 0xf1f47
pop si ; 5e ; 0xf1f48
pop dx ; 5a ; 0xf1f49
pop cx ; 59 ; 0xf1f4a
pop bx ; 5b ; 0xf1f4b
pop bp ; 5d ; 0xf1f4c
retn ; c3 ; 0xf1f4d
; disGetNextSymbol 0xf1f4e LB 0x8ece -> off=0x0 cb=00000000000002e2 uValue=00000000000f094e 'ata_cmd_data_in'
ata_cmd_data_in: ; 0xf1f4e LB 0x2e2
push bp ; 55 ; 0xf1f4e ata.c:215
mov bp, sp ; 89 e5 ; 0xf1f4f
push si ; 56 ; 0xf1f51
push di ; 57 ; 0xf1f52
sub sp, strict byte 00012h ; 83 ec 12 ; 0xf1f53
push ax ; 50 ; 0xf1f56
push dx ; 52 ; 0xf1f57
push bx ; 53 ; 0xf1f58
push cx ; 51 ; 0xf1f59
mov es, dx ; 8e c2 ; 0xf1f5a ata.c:225
mov bx, ax ; 89 c3 ; 0xf1f5c
mov al, byte [es:bx+00ch] ; 26 8a 47 0c ; 0xf1f5e
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf1f62
movzx bx, al ; 0f b6 d8 ; 0xf1f65 ata.c:227
mov ax, bx ; 89 d8 ; 0xf1f68
cwd ; 99 ; 0xf1f6a
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf1f6b
sar ax, 1 ; d1 f8 ; 0xf1f6d
imul ax, ax, strict byte 00006h ; 6b c0 06 ; 0xf1f6f
mov di, word [bp-018h] ; 8b 7e e8 ; 0xf1f72
add di, ax ; 01 c7 ; 0xf1f75
mov ax, word [es:di+0027ah] ; 26 8b 85 7a 02 ; 0xf1f77
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf1f7c
mov ax, word [es:di+0027ch] ; 26 8b 85 7c 02 ; 0xf1f7f ata.c:228
mov word [bp-010h], ax ; 89 46 f0 ; 0xf1f84
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf1f87 ata.c:229
mov di, word [bp-018h] ; 8b 7e e8 ; 0xf1f8a
add di, bx ; 01 df ; 0xf1f8d
mov al, byte [es:di+022h] ; 26 8a 45 22 ; 0xf1f8f
mov byte [bp-008h], al ; 88 46 f8 ; 0xf1f93
mov ax, word [es:di+024h] ; 26 8b 45 24 ; 0xf1f96 ata.c:230
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf1f9a
test ax, ax ; 85 c0 ; 0xf1f9d ata.c:231
jne short 01fb5h ; 75 14 ; 0xf1f9f
cmp byte [bp-008h], 001h ; 80 7e f8 01 ; 0xf1fa1 ata.c:233
jne short 01faeh ; 75 07 ; 0xf1fa5
mov word [bp-00eh], 04000h ; c7 46 f2 00 40 ; 0xf1fa7 ata.c:234
jmp short 01fc4h ; eb 16 ; 0xf1fac ata.c:235
mov word [bp-00eh], 08000h ; c7 46 f2 00 80 ; 0xf1fae ata.c:237
jmp short 01fc4h ; eb 0f ; 0xf1fb3 ata.c:238
cmp byte [bp-008h], 001h ; 80 7e f8 01 ; 0xf1fb5 ata.c:240
jne short 01fc1h ; 75 06 ; 0xf1fb9
shr word [bp-00eh], 002h ; c1 6e f2 02 ; 0xf1fbb ata.c:241
jmp short 01fc4h ; eb 03 ; 0xf1fbf ata.c:242
shr word [bp-00eh], 1 ; d1 6e f2 ; 0xf1fc1 ata.c:244
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf1fc4 ata.c:247
add dx, strict byte 00007h ; 83 c2 07 ; 0xf1fc7
in AL, DX ; ec ; 0xf1fca
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf1fcb
test AL, strict byte 080h ; a8 80 ; 0xf1fcd ata.c:248
je short 01fe0h ; 74 0f ; 0xf1fcf
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf1fd1 ata.c:252
add dx, strict byte 00006h ; 83 c2 06 ; 0xf1fd4
mov AL, strict byte 008h ; b0 08 ; 0xf1fd7
out DX, AL ; ee ; 0xf1fd9
mov dx, strict word 00001h ; ba 01 00 ; 0xf1fda ata.c:253
jmp near 02227h ; e9 47 02 ; 0xf1fdd
mov es, [bp-01ah] ; 8e 46 e6 ; 0xf1fe0 ata.c:256
mov di, word [bp-018h] ; 8b 7e e8 ; 0xf1fe3
mov di, word [es:di+008h] ; 26 8b 7d 08 ; 0xf1fe6
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf1fea
mov ax, word [es:bx+00ah] ; 26 8b 47 0a ; 0xf1fed
mov word [bp-012h], ax ; 89 46 ee ; 0xf1ff1
mov al, byte [es:bx+016h] ; 26 8a 47 16 ; 0xf1ff4 ata.c:257
mov byte [bp-006h], al ; 88 46 fa ; 0xf1ff8
mov ax, word [es:bx+012h] ; 26 8b 47 12 ; 0xf1ffb ata.c:258
mov word [bp-014h], ax ; 89 46 ec ; 0xf1fff
mov bl, byte [es:bx+014h] ; 26 8a 5f 14 ; 0xf2002 ata.c:259
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf2006 ata.c:262
test al, al ; 84 c0 ; 0xf2009
jne near 020f2h ; 0f 85 e3 00 ; 0xf200b
xor bx, bx ; 31 db ; 0xf200f ata.c:263
xor dx, dx ; 31 d2 ; 0xf2011
xor ah, ah ; 30 e4 ; 0xf2013
mov word [bp-016h], ax ; 89 46 ea ; 0xf2015
mov si, word [bp-018h] ; 8b 76 e8 ; 0xf2018
mov cx, word [es:si] ; 26 8b 0c ; 0xf201b
add cx, word [bp-01eh] ; 03 4e e2 ; 0xf201e
adc bx, word [es:si+002h] ; 26 13 5c 02 ; 0xf2021
adc dx, word [es:si+004h] ; 26 13 54 04 ; 0xf2025
mov ax, word [es:si+006h] ; 26 8b 44 06 ; 0xf2029
adc ax, word [bp-016h] ; 13 46 ea ; 0xf202d
test ax, ax ; 85 c0 ; 0xf2030
jnbe short 02044h ; 77 10 ; 0xf2032
jne short 020a8h ; 75 72 ; 0xf2034
test dx, dx ; 85 d2 ; 0xf2036
jnbe short 02044h ; 77 0a ; 0xf2038
jne short 020a8h ; 75 6c ; 0xf203a
cmp bx, 01000h ; 81 fb 00 10 ; 0xf203c
jnbe short 02044h ; 77 02 ; 0xf2040
jne short 020a8h ; 75 64 ; 0xf2042
mov bx, si ; 89 f3 ; 0xf2044 ata.c:265
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf2046
mov bx, word [es:bx+004h] ; 26 8b 5f 04 ; 0xf204a
mov cx, word [es:si+002h] ; 26 8b 4c 02 ; 0xf204e
mov dx, word [es:si] ; 26 8b 14 ; 0xf2052
mov si, strict word 00018h ; be 18 00 ; 0xf2055
call 0ad60h ; e8 05 8d ; 0xf2058
xor dh, dh ; 30 f6 ; 0xf205b
mov word [bp-016h], dx ; 89 56 ea ; 0xf205d
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf2060 ata.c:266
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf2063
mov bx, word [es:bx+004h] ; 26 8b 5f 04 ; 0xf2067
mov si, word [bp-018h] ; 8b 76 e8 ; 0xf206b
mov cx, word [es:si+002h] ; 26 8b 4c 02 ; 0xf206e
mov dx, word [es:si] ; 26 8b 14 ; 0xf2072
mov si, strict word 00020h ; be 20 00 ; 0xf2075
call 0ad60h ; e8 e5 8c ; 0xf2078
mov bx, dx ; 89 d3 ; 0xf207b
mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xf207d ata.c:267
xor al, al ; 30 c0 ; 0xf2080
shr ax, 008h ; c1 e8 08 ; 0xf2082
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2085
inc dx ; 42 ; 0xf2088
inc dx ; 42 ; 0xf2089
out DX, AL ; ee ; 0xf208a
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf208b ata.c:268
add dx, strict byte 00003h ; 83 c2 03 ; 0xf208e
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf2091
out DX, AL ; ee ; 0xf2094
mov ax, bx ; 89 d8 ; 0xf2095 ata.c:269
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2097
add dx, strict byte 00004h ; 83 c2 04 ; 0xf209a
out DX, AL ; ee ; 0xf209d
shr ax, 008h ; c1 e8 08 ; 0xf209e ata.c:270
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf20a1
add dx, strict byte 00005h ; 83 c2 05 ; 0xf20a4
out DX, AL ; ee ; 0xf20a7
mov es, [bp-01ah] ; 8e 46 e6 ; 0xf20a8 ata.c:274
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf20ab
mov ax, word [es:bx] ; 26 8b 07 ; 0xf20ae
mov byte [bp-006h], al ; 88 46 fa ; 0xf20b1
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf20b4 ata.c:275
mov bx, word [es:bx+004h] ; 26 8b 5f 04 ; 0xf20b8
mov si, word [bp-018h] ; 8b 76 e8 ; 0xf20bc
mov cx, word [es:si+002h] ; 26 8b 4c 02 ; 0xf20bf
mov dx, word [es:si] ; 26 8b 14 ; 0xf20c3
mov si, strict word 00008h ; be 08 00 ; 0xf20c6
call 0ad60h ; e8 94 8c ; 0xf20c9
mov word [bp-014h], dx ; 89 56 ec ; 0xf20cc
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf20cf ata.c:276
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf20d2
mov bx, word [es:bx+004h] ; 26 8b 5f 04 ; 0xf20d6
mov si, word [bp-018h] ; 8b 76 e8 ; 0xf20da
mov cx, word [es:si+002h] ; 26 8b 4c 02 ; 0xf20dd
mov dx, word [es:si] ; 26 8b 14 ; 0xf20e1
mov si, strict word 00018h ; be 18 00 ; 0xf20e4
call 0ad60h ; e8 76 8c ; 0xf20e7
and dx, strict byte 0000fh ; 83 e2 0f ; 0xf20ea
or dl, 040h ; 80 ca 40 ; 0xf20ed
mov bx, dx ; 89 d3 ; 0xf20f0
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf20f2 ata.c:279
add dx, strict byte 00006h ; 83 c2 06 ; 0xf20f5
mov AL, strict byte 00ah ; b0 0a ; 0xf20f8
out DX, AL ; ee ; 0xf20fa
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf20fb ata.c:280
inc dx ; 42 ; 0xf20fe
xor al, al ; 30 c0 ; 0xf20ff
out DX, AL ; ee ; 0xf2101
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2102 ata.c:281
inc dx ; 42 ; 0xf2105
inc dx ; 42 ; 0xf2106
mov al, byte [bp-01eh] ; 8a 46 e2 ; 0xf2107
out DX, AL ; ee ; 0xf210a
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf210b ata.c:282
add dx, strict byte 00003h ; 83 c2 03 ; 0xf210e
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf2111
out DX, AL ; ee ; 0xf2114
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf2115 ata.c:283
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2118
add dx, strict byte 00004h ; 83 c2 04 ; 0xf211b
out DX, AL ; ee ; 0xf211e
shr ax, 008h ; c1 e8 08 ; 0xf211f ata.c:284
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2122
add dx, strict byte 00005h ; 83 c2 05 ; 0xf2125
out DX, AL ; ee ; 0xf2128
test byte [bp-00ah], 001h ; f6 46 f6 01 ; 0xf2129 ata.c:285
je short 02134h ; 74 05 ; 0xf212d
mov ax, 000b0h ; b8 b0 00 ; 0xf212f
jmp short 02137h ; eb 03 ; 0xf2132
mov ax, 000a0h ; b8 a0 00 ; 0xf2134
movzx dx, bl ; 0f b6 d3 ; 0xf2137
or ax, dx ; 09 d0 ; 0xf213a
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf213c
add dx, strict byte 00006h ; 83 c2 06 ; 0xf213f
out DX, AL ; ee ; 0xf2142
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2143 ata.c:286
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2146
mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xf2149
out DX, AL ; ee ; 0xf214c
mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xf214d ata.c:288
cmp ax, 000c4h ; 3d c4 00 ; 0xf2150
je short 0215ah ; 74 05 ; 0xf2153
cmp ax, strict word 00029h ; 3d 29 00 ; 0xf2155
jne short 02164h ; 75 0a ; 0xf2158
mov bx, word [bp-01eh] ; 8b 5e e2 ; 0xf215a ata.c:289
mov word [bp-01eh], strict word 00001h ; c7 46 e2 01 00 ; 0xf215d ata.c:290
jmp short 02167h ; eb 03 ; 0xf2162 ata.c:291
mov bx, strict word 00001h ; bb 01 00 ; 0xf2164 ata.c:292
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2167 ata.c:296
add dx, strict byte 00007h ; 83 c2 07 ; 0xf216a
in AL, DX ; ec ; 0xf216d
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf216e
mov dl, al ; 88 c2 ; 0xf2170
test AL, strict byte 080h ; a8 80 ; 0xf2172 ata.c:297
jne short 02167h ; 75 f1 ; 0xf2174
test AL, strict byte 001h ; a8 01 ; 0xf2176 ata.c:301
je short 02189h ; 74 0f ; 0xf2178
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf217a ata.c:304
add dx, strict byte 00006h ; 83 c2 06 ; 0xf217d
mov AL, strict byte 008h ; b0 08 ; 0xf2180
out DX, AL ; ee ; 0xf2182
mov dx, strict word 00002h ; ba 02 00 ; 0xf2183 ata.c:305
jmp near 02227h ; e9 9e 00 ; 0xf2186
test dl, 008h ; f6 c2 08 ; 0xf2189 ata.c:306
jne short 0219dh ; 75 0f ; 0xf218c
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf218e ata.c:309
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2191
mov AL, strict byte 008h ; b0 08 ; 0xf2194
out DX, AL ; ee ; 0xf2196
mov dx, strict word 00003h ; ba 03 00 ; 0xf2197 ata.c:310
jmp near 02227h ; e9 8a 00 ; 0xf219a
sti ; fb ; 0xf219d ata.c:315
cmp di, 0f800h ; 81 ff 00 f8 ; 0xf219e ata.c:320
jc short 021b1h ; 72 0d ; 0xf21a2
sub di, 00800h ; 81 ef 00 08 ; 0xf21a4 ata.c:321
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf21a8
add ax, 00080h ; 05 80 00 ; 0xf21ab
mov word [bp-012h], ax ; 89 46 ee ; 0xf21ae
cmp byte [bp-008h], 001h ; 80 7e f8 01 ; 0xf21b1 ata.c:324
jne short 021c5h ; 75 0e ; 0xf21b5
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf21b7 ata.c:325
mov cx, word [bp-00eh] ; 8b 4e f2 ; 0xf21ba
mov es, [bp-012h] ; 8e 46 ee ; 0xf21bd
db 0f3h, 066h, 06dh
; rep insd ; f3 66 6d ; 0xf21c0
jmp short 021d0h ; eb 0b ; 0xf21c3 ata.c:326
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf21c5 ata.c:328
mov cx, word [bp-00eh] ; 8b 4e f2 ; 0xf21c8
mov es, [bp-012h] ; 8e 46 ee ; 0xf21cb
rep insw ; f3 6d ; 0xf21ce
mov es, [bp-01ah] ; 8e 46 e6 ; 0xf21d0 ata.c:329
mov si, word [bp-018h] ; 8b 76 e8 ; 0xf21d3
add word [es:si+018h], bx ; 26 01 5c 18 ; 0xf21d6
dec word [bp-01eh] ; ff 4e e2 ; 0xf21da ata.c:330
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf21dd ata.c:332
add dx, strict byte 00007h ; 83 c2 07 ; 0xf21e0
in AL, DX ; ec ; 0xf21e3
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf21e4
mov dl, al ; 88 c2 ; 0xf21e6
test AL, strict byte 080h ; a8 80 ; 0xf21e8 ata.c:333
jne short 021ddh ; 75 f1 ; 0xf21ea
cmp word [bp-01eh], strict byte 00000h ; 83 7e e2 00 ; 0xf21ec ata.c:336
jne short 02206h ; 75 14 ; 0xf21f0
and AL, strict byte 0c9h ; 24 c9 ; 0xf21f2 ata.c:337
cmp AL, strict byte 040h ; 3c 40 ; 0xf21f4
je short 0221ch ; 74 24 ; 0xf21f6
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf21f8 ata.c:341
add dx, strict byte 00006h ; 83 c2 06 ; 0xf21fb
mov AL, strict byte 008h ; b0 08 ; 0xf21fe
out DX, AL ; ee ; 0xf2200
mov dx, strict word 00004h ; ba 04 00 ; 0xf2201 ata.c:342
jmp short 02227h ; eb 21 ; 0xf2204
mov al, dl ; 88 d0 ; 0xf2206 ata.c:347
and AL, strict byte 0c9h ; 24 c9 ; 0xf2208
cmp AL, strict byte 048h ; 3c 48 ; 0xf220a
je short 0219eh ; 74 90 ; 0xf220c
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf220e ata.c:351
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2211
mov AL, strict byte 008h ; b0 08 ; 0xf2214
out DX, AL ; ee ; 0xf2216
mov dx, strict word 00005h ; ba 05 00 ; 0xf2217 ata.c:352
jmp short 02227h ; eb 0b ; 0xf221a
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf221c ata.c:358
add dx, strict byte 00006h ; 83 c2 06 ; 0xf221f
mov AL, strict byte 008h ; b0 08 ; 0xf2222
out DX, AL ; ee ; 0xf2224
xor dx, dx ; 31 d2 ; 0xf2225 ata.c:359
mov ax, dx ; 89 d0 ; 0xf2227 ata.c:360
lea sp, [bp-004h] ; 8d 66 fc ; 0xf2229
pop di ; 5f ; 0xf222c
pop si ; 5e ; 0xf222d
pop bp ; 5d ; 0xf222e
retn ; c3 ; 0xf222f
; disGetNextSymbol 0xf2230 LB 0x8bec -> off=0x0 cb=0000000000000094 uValue=00000000000f0c30 'ata_signature'
ata_signature: ; 0xf2230 LB 0x94
push bp ; 55 ; 0xf2230 ata.c:366
mov bp, sp ; 89 e5 ; 0xf2231
push cx ; 51 ; 0xf2233
sub sp, strict byte 00006h ; 83 ec 06 ; 0xf2234
mov cx, ax ; 89 c1 ; 0xf2237
mov al, bl ; 88 d8 ; 0xf2239
xor bx, bx ; 31 db ; 0xf223b ata.c:368
test al, al ; 84 c0 ; 0xf223d ata.c:376
je short 02246h ; 74 05 ; 0xf223f
mov ax, 000b0h ; b8 b0 00 ; 0xf2241
jmp short 02249h ; eb 03 ; 0xf2244
mov ax, 000a0h ; b8 a0 00 ; 0xf2246
mov dx, cx ; 89 ca ; 0xf2249
add dx, strict byte 00006h ; 83 c2 06 ; 0xf224b
out DX, AL ; ee ; 0xf224e
mov dx, cx ; 89 ca ; 0xf224f ata.c:378
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2251
in AL, DX ; ec ; 0xf2254
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2255
mov byte [bp-006h], al ; 88 46 fa ; 0xf2257
test AL, strict byte 080h ; a8 80 ; 0xf225a ata.c:379
jne short 0224fh ; 75 f1 ; 0xf225c
mov dx, cx ; 89 ca ; 0xf225e ata.c:387
inc dx ; 42 ; 0xf2260
inc dx ; 42 ; 0xf2261
in AL, DX ; ec ; 0xf2262
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2263
mov word [bp-008h], ax ; 89 46 f8 ; 0xf2265
mov dx, cx ; 89 ca ; 0xf2268 ata.c:388
add dx, strict byte 00003h ; 83 c2 03 ; 0xf226a
in AL, DX ; ec ; 0xf226d
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf226e
cmp byte [bp-008h], 001h ; 80 7e f8 01 ; 0xf2270 ata.c:389
jne short 022bch ; 75 46 ; 0xf2274
cmp AL, strict byte 001h ; 3c 01 ; 0xf2276
jne short 022bch ; 75 42 ; 0xf2278
mov dx, cx ; 89 ca ; 0xf227a ata.c:390
add dx, strict byte 00004h ; 83 c2 04 ; 0xf227c
in AL, DX ; ec ; 0xf227f
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2280
mov word [bp-008h], ax ; 89 46 f8 ; 0xf2282
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf2285
mov byte [bp-004h], al ; 88 46 fc ; 0xf2288
mov dx, cx ; 89 ca ; 0xf228b ata.c:391
add dx, strict byte 00005h ; 83 c2 05 ; 0xf228d
in AL, DX ; ec ; 0xf2290
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2291
mov dl, al ; 88 c2 ; 0xf2293
cmp byte [bp-008h], 014h ; 80 7e f8 14 ; 0xf2295 ata.c:398
jne short 022a4h ; 75 09 ; 0xf2299
cmp AL, strict byte 0ebh ; 3c eb ; 0xf229b
jne short 022a4h ; 75 05 ; 0xf229d
mov bx, strict word 00003h ; bb 03 00 ; 0xf229f ata.c:399
jmp short 022bch ; eb 18 ; 0xf22a2 ata.c:401
cmp byte [bp-004h], 000h ; 80 7e fc 00 ; 0xf22a4
jne short 022b9h ; 75 0f ; 0xf22a8
test dl, dl ; 84 d2 ; 0xf22aa
jne short 022b9h ; 75 0b ; 0xf22ac
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf22ae ata.c:402
je short 022bch ; 74 08 ; 0xf22b2
mov bx, strict word 00002h ; bb 02 00 ; 0xf22b4 ata.c:403
jmp short 022bch ; eb 03 ; 0xf22b7 ata.c:408
mov bx, strict word 00001h ; bb 01 00 ; 0xf22b9 ata.c:409
mov ax, bx ; 89 d8 ; 0xf22bc ata.c:416
lea sp, [bp-002h] ; 8d 66 fe ; 0xf22be
pop cx ; 59 ; 0xf22c1
pop bp ; 5d ; 0xf22c2
retn ; c3 ; 0xf22c3
; disGetNextSymbol 0xf22c4 LB 0x8b58 -> off=0x0 cb=0000000000000619 uValue=00000000000f0cc4 'ata_detect'
ata_detect: ; 0xf22c4 LB 0x619
push bp ; 55 ; 0xf22c4 ata.c:418
mov bp, sp ; 89 e5 ; 0xf22c5
push si ; 56 ; 0xf22c7
push di ; 57 ; 0xf22c8
sub sp, 0025eh ; 81 ec 5e 02 ; 0xf22c9
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf22cd ata.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf22d0
mov es, ax ; 8e c0 ; 0xf22d3
mov ax, word [es:bx] ; 26 8b 07 ; 0xf22d5
mov word [bp-02ch], ax ; 89 46 d4 ; 0xf22d8 ata.c:59
mov ax, 00101h ; b8 01 01 ; 0xf22db ata.c:434
call 0aae3h ; e8 02 88 ; 0xf22de
cmp ax, strict word 0ffffh ; 3d ff ff ; 0xf22e1 ata.c:435
jne short 022ffh ; 75 19 ; 0xf22e4
mov bx, 00e16h ; bb 16 0e ; 0xf22e6 ata.c:436
mov cx, ds ; 8c d9 ; 0xf22e9
mov ax, strict word 00004h ; b8 04 00 ; 0xf22eb
call 01a27h ; e8 36 f7 ; 0xf22ee
push 0017eh ; 68 7e 01 ; 0xf22f1
push strict byte 00004h ; 6a 04 ; 0xf22f4
call 01a68h ; e8 6f f7 ; 0xf22f6
add sp, strict byte 00004h ; 83 c4 04 ; 0xf22f9
jmp near 028d6h ; e9 d7 05 ; 0xf22fc ata.c:437
mov bx, strict word 0005eh ; bb 5e 00 ; 0xf22ff ata.c:441
mov es, [bp-02ch] ; 8e 46 d4 ; 0xf2302
mov word [bp-018h], bx ; 89 5e e8 ; 0xf2305
mov [bp-02ah], es ; 8c 46 d6 ; 0xf2308
mov byte [es:bx+00278h], 000h ; 26 c6 87 78 02 00 ; 0xf230b ata.c:444
db 066h, 026h, 0c7h, 087h, 07ah, 002h, 0f0h, 001h, 0f0h, 003h
; mov dword [es:bx+0027ah], strict dword 003f001f0h ; 66 26 c7 87 7a 02 f0 01 f0 03; 0xf2311 ata.c:445
mov byte [es:bx+00279h], 00eh ; 26 c6 87 79 02 0e ; 0xf231b ata.c:447
mov byte [es:bx+0027eh], 000h ; 26 c6 87 7e 02 00 ; 0xf2321 ata.c:450
db 066h, 026h, 0c7h, 087h, 080h, 002h, 070h, 001h, 070h, 003h
; mov dword [es:bx+00280h], strict dword 003700170h ; 66 26 c7 87 80 02 70 01 70 03; 0xf2327 ata.c:451
mov byte [es:bx+0027fh], 00fh ; 26 c6 87 7f 02 0f ; 0xf2331 ata.c:453
mov byte [es:bx+00284h], 000h ; 26 c6 87 84 02 00 ; 0xf2337 ata.c:456
db 066h, 026h, 0c7h, 087h, 086h, 002h, 0e8h, 001h, 0e0h, 003h
; mov dword [es:bx+00286h], strict dword 003e001e8h ; 66 26 c7 87 86 02 e8 01 e0 03; 0xf233d ata.c:457
mov byte [es:bx+00285h], 00ch ; 26 c6 87 85 02 0c ; 0xf2347 ata.c:459
mov byte [es:bx+0028ah], 000h ; 26 c6 87 8a 02 00 ; 0xf234d ata.c:462
db 066h, 026h, 0c7h, 087h, 08ch, 002h, 068h, 001h, 060h, 003h
; mov dword [es:bx+0028ch], strict dword 003600168h ; 66 26 c7 87 8c 02 68 01 60 03; 0xf2353 ata.c:463
mov byte [es:bx+0028bh], 00bh ; 26 c6 87 8b 02 0b ; 0xf235d ata.c:465
xor al, al ; 30 c0 ; 0xf2363 ata.c:472
mov byte [bp-010h], al ; 88 46 f0 ; 0xf2365
mov byte [bp-00ch], al ; 88 46 f4 ; 0xf2368
mov byte [bp-016h], al ; 88 46 ea ; 0xf236b ata.c:474
jmp near 02867h ; e9 f6 04 ; 0xf236e
test cl, cl ; 84 c9 ; 0xf2371 ata.c:519
jne short 023d1h ; 75 5c ; 0xf2373
mov dx, word [bp-01ch] ; 8b 56 e4 ; 0xf2375 ata.c:520
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2378
mov AL, strict byte 00eh ; b0 0e ; 0xf237b
out DX, AL ; ee ; 0xf237d
mov bx, strict word 00020h ; bb 20 00 ; 0xf237e ata.c:526
dec bx ; 4b ; 0xf2381 ata.c:527
test bx, bx ; 85 db ; 0xf2382
jbe short 02390h ; 76 0a ; 0xf2384
lea dx, [si+007h] ; 8d 54 07 ; 0xf2386 ata.c:528
in AL, DX ; ec ; 0xf2389
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf238a
test AL, strict byte 080h ; a8 80 ; 0xf238c ata.c:529
je short 02381h ; 74 f1 ; 0xf238e
mov dx, word [bp-01ch] ; 8b 56 e4 ; 0xf2390 ata.c:533
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2393
mov AL, strict byte 00ah ; b0 0a ; 0xf2396
out DX, AL ; ee ; 0xf2398
movzx di, byte [bp-00ah] ; 0f b6 7e f6 ; 0xf2399 ata.c:540
xor bx, bx ; 31 db ; 0xf239d
mov dx, di ; 89 fa ; 0xf239f
mov ax, si ; 89 f0 ; 0xf23a1
call 02230h ; e8 8a fe ; 0xf23a3
movzx cx, byte [bp-016h] ; 0f b6 4e ea ; 0xf23a6
imul bx, cx, strict byte 0001ch ; 6b d9 1c ; 0xf23aa
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf23ad
add bx, word [bp-018h] ; 03 5e e8 ; 0xf23b0
mov byte [es:bx+01eh], al ; 26 88 47 1e ; 0xf23b3
mov bx, strict word 00001h ; bb 01 00 ; 0xf23b7 ata.c:541
mov dx, di ; 89 fa ; 0xf23ba
mov ax, si ; 89 f0 ; 0xf23bc
call 02230h ; e8 6f fe ; 0xf23be
mov bx, cx ; 89 cb ; 0xf23c1
inc bx ; 43 ; 0xf23c3
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf23c4
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf23c7
add bx, word [bp-018h] ; 03 5e e8 ; 0xf23ca
mov byte [es:bx+01eh], al ; 26 88 47 1e ; 0xf23cd
mov dx, word [bp-01ch] ; 8b 56 e4 ; 0xf23d1 ata.c:545
add dx, strict byte 00006h ; 83 c2 06 ; 0xf23d4
mov AL, strict byte 008h ; b0 08 ; 0xf23d7
out DX, AL ; ee ; 0xf23d9
movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xf23da ata.c:547
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf23de
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf23e1
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf23e4
add bx, ax ; 01 c3 ; 0xf23e7
mov al, byte [es:bx+01eh] ; 26 8a 47 1e ; 0xf23e9
mov byte [bp-008h], al ; 88 46 f8 ; 0xf23ed
cmp AL, strict byte 002h ; 3c 02 ; 0xf23f0 ata.c:550
jne near 02639h ; 0f 85 43 02 ; 0xf23f2
mov byte [es:bx+01fh], 0ffh ; 26 c6 47 1f ff ; 0xf23f6 ata.c:558
mov byte [es:bx+022h], 000h ; 26 c6 47 22 00 ; 0xf23fb ata.c:559
lea dx, [bp-00262h] ; 8d 96 9e fd ; 0xf2400 ata.c:560
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf2404
mov word [es:bx+008h], dx ; 26 89 57 08 ; 0xf2407
mov [es:bx+00ah], ss ; 26 8c 57 0a ; 0xf240b
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf240f ata.c:561
mov byte [es:bx+00ch], al ; 26 88 47 0c ; 0xf2412
mov cx, strict word 00001h ; b9 01 00 ; 0xf2416 ata.c:563
mov bx, 000ech ; bb ec 00 ; 0xf2419
mov ax, word [bp-018h] ; 8b 46 e8 ; 0xf241c
mov dx, es ; 8c c2 ; 0xf241f
call 01f4eh ; e8 2a fb ; 0xf2421
test ax, ax ; 85 c0 ; 0xf2424
je short 02433h ; 74 0b ; 0xf2426
push 001a6h ; 68 a6 01 ; 0xf2428 ata.c:564
push strict byte 00007h ; 6a 07 ; 0xf242b
call 01a68h ; e8 38 f6 ; 0xf242d
add sp, strict byte 00004h ; 83 c4 04 ; 0xf2430
test byte [bp-00262h], 080h ; f6 86 9e fd 80 ; 0xf2433 ata.c:566
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf2438
xor ah, ah ; 30 e4 ; 0xf243b
mov byte [bp-014h], al ; 88 46 ec ; 0xf243d
cmp byte [bp-00202h], 000h ; 80 be fe fd 00 ; 0xf2440 ata.c:568
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf2445
xor ah, ah ; 30 e4 ; 0xf2448
mov byte [bp-012h], al ; 88 46 ee ; 0xf244a
mov word [bp-028h], 00200h ; c7 46 d8 00 02 ; 0xf244d ata.c:572
mov ax, word [bp-00260h] ; 8b 86 a0 fd ; 0xf2452 ata.c:574
mov word [bp-01eh], ax ; 89 46 e2 ; 0xf2456
mov ax, word [bp-0025ch] ; 8b 86 a4 fd ; 0xf2459 ata.c:575
mov word [bp-01ah], ax ; 89 46 e6 ; 0xf245d
mov ax, word [bp-00256h] ; 8b 86 aa fd ; 0xf2460 ata.c:576
mov word [bp-024h], ax ; 89 46 dc ; 0xf2464
mov si, word [bp-001eah] ; 8b b6 16 fe ; 0xf2467 ata.c:578
mov ax, word [bp-001e8h] ; 8b 86 18 fe ; 0xf246b
mov word [bp-02eh], ax ; 89 46 d2 ; 0xf246f
xor ax, ax ; 31 c0 ; 0xf2472
mov word [bp-020h], ax ; 89 46 e0 ; 0xf2474
mov word [bp-022h], ax ; 89 46 de ; 0xf2477
cmp word [bp-02eh], 00fffh ; 81 7e d2 ff 0f ; 0xf247a ata.c:579
jne short 0249fh ; 75 1e ; 0xf247f
cmp si, strict byte 0ffffh ; 83 fe ff ; 0xf2481
jne short 0249fh ; 75 19 ; 0xf2484
mov ax, word [bp-00194h] ; 8b 86 6c fe ; 0xf2486 ata.c:580
mov word [bp-022h], ax ; 89 46 de ; 0xf248a
mov ax, word [bp-00196h] ; 8b 86 6a fe ; 0xf248d
mov word [bp-020h], ax ; 89 46 e0 ; 0xf2491
mov ax, word [bp-00198h] ; 8b 86 68 fe ; 0xf2494
mov word [bp-02eh], ax ; 89 46 d2 ; 0xf2498
mov si, word [bp-0019ah] ; 8b b6 66 fe ; 0xf249b
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf249f ata.c:581
cmp AL, strict byte 001h ; 3c 01 ; 0xf24a2
jc short 024b2h ; 72 0c ; 0xf24a4
jbe short 024bah ; 76 12 ; 0xf24a6
cmp AL, strict byte 003h ; 3c 03 ; 0xf24a8
je short 024c2h ; 74 16 ; 0xf24aa
cmp AL, strict byte 002h ; 3c 02 ; 0xf24ac
je short 024beh ; 74 0e ; 0xf24ae
jmp short 024ebh ; eb 39 ; 0xf24b0
test al, al ; 84 c0 ; 0xf24b2
jne short 024ebh ; 75 35 ; 0xf24b4
mov BL, strict byte 01eh ; b3 1e ; 0xf24b6 ata.c:584
jmp short 024c4h ; eb 0a ; 0xf24b8 ata.c:585
mov BL, strict byte 026h ; b3 26 ; 0xf24ba ata.c:587
jmp short 024c4h ; eb 06 ; 0xf24bc ata.c:588
mov BL, strict byte 067h ; b3 67 ; 0xf24be ata.c:590
jmp short 024c4h ; eb 02 ; 0xf24c0 ata.c:591
mov BL, strict byte 070h ; b3 70 ; 0xf24c2 ata.c:593
movzx ax, bl ; 0f b6 c3 ; 0xf24c4 ata.c:600
call 017a6h ; e8 dc f2 ; 0xf24c7
mov word [bp-036h], ax ; 89 46 ca ; 0xf24ca
mov al, bl ; 88 d8 ; 0xf24cd ata.c:601
add AL, strict byte 002h ; 04 02 ; 0xf24cf
xor ah, ah ; 30 e4 ; 0xf24d1
call 0176ah ; e8 94 f2 ; 0xf24d3
xor ah, ah ; 30 e4 ; 0xf24d6
mov word [bp-038h], ax ; 89 46 c8 ; 0xf24d8
mov al, bl ; 88 d8 ; 0xf24db ata.c:602
add AL, strict byte 007h ; 04 07 ; 0xf24dd
xor ah, ah ; 30 e4 ; 0xf24df
call 0176ah ; e8 86 f2 ; 0xf24e1
xor ah, ah ; 30 e4 ; 0xf24e4
mov word [bp-034h], ax ; 89 46 cc ; 0xf24e6
jmp short 024fdh ; eb 12 ; 0xf24e9 ata.c:604
push word [bp-022h] ; ff 76 de ; 0xf24eb ata.c:605
push word [bp-020h] ; ff 76 e0 ; 0xf24ee
push word [bp-02eh] ; ff 76 d2 ; 0xf24f1
push si ; 56 ; 0xf24f4
mov dx, ss ; 8c d2 ; 0xf24f5
lea ax, [bp-038h] ; 8d 46 c8 ; 0xf24f7
call 05880h ; e8 83 33 ; 0xf24fa
mov bx, 00e16h ; bb 16 0e ; 0xf24fd ata.c:608
mov cx, ds ; 8c d9 ; 0xf2500
mov ax, strict word 00004h ; b8 04 00 ; 0xf2502
call 01a27h ; e8 1f f5 ; 0xf2505
mov ax, word [bp-034h] ; 8b 46 cc ; 0xf2508
push ax ; 50 ; 0xf250b
mov ax, word [bp-038h] ; 8b 46 c8 ; 0xf250c
push ax ; 50 ; 0xf250f
mov ax, word [bp-036h] ; 8b 46 ca ; 0xf2510
push ax ; 50 ; 0xf2513
push word [bp-024h] ; ff 76 dc ; 0xf2514
push word [bp-01ah] ; ff 76 e6 ; 0xf2517
push word [bp-01eh] ; ff 76 e2 ; 0xf251a
movzx ax, byte [bp-00eh] ; 0f b6 46 f2 ; 0xf251d
push ax ; 50 ; 0xf2521
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf2522
push ax ; 50 ; 0xf2526
push 001cfh ; 68 cf 01 ; 0xf2527
push strict byte 00004h ; 6a 04 ; 0xf252a
call 01a68h ; e8 39 f5 ; 0xf252c
add sp, strict byte 00014h ; 83 c4 14 ; 0xf252f
movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xf2532 ata.c:610
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf2536
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf2539
mov di, word [bp-018h] ; 8b 7e e8 ; 0xf253c
add di, ax ; 01 c7 ; 0xf253f
mov byte [es:di+01fh], 0ffh ; 26 c6 45 1f ff ; 0xf2541
mov al, byte [bp-014h] ; 8a 46 ec ; 0xf2546 ata.c:611
mov byte [es:di+020h], al ; 26 88 45 20 ; 0xf2549
mov al, byte [bp-012h] ; 8a 46 ee ; 0xf254d ata.c:612
mov byte [es:di+022h], al ; 26 88 45 22 ; 0xf2550
mov ax, word [bp-028h] ; 8b 46 d8 ; 0xf2554 ata.c:613
mov word [es:di+024h], ax ; 26 89 45 24 ; 0xf2557
mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xf255b ata.c:614
mov word [es:di+02ch], ax ; 26 89 45 2c ; 0xf255e
mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xf2562 ata.c:615
mov word [es:di+02eh], ax ; 26 89 45 2e ; 0xf2565
mov ax, word [bp-024h] ; 8b 46 dc ; 0xf2569 ata.c:616
mov word [es:di+030h], ax ; 26 89 45 30 ; 0xf256c
mov ax, word [bp-022h] ; 8b 46 de ; 0xf2570 ata.c:617
mov word [es:di+038h], ax ; 26 89 45 38 ; 0xf2573
mov ax, word [bp-020h] ; 8b 46 e0 ; 0xf2577
mov word [es:di+036h], ax ; 26 89 45 36 ; 0xf257a
mov ax, word [bp-02eh] ; 8b 46 d2 ; 0xf257e
mov word [es:di+034h], ax ; 26 89 45 34 ; 0xf2581
mov word [es:di+032h], si ; 26 89 75 32 ; 0xf2585
lea di, [di+026h] ; 8d 7d 26 ; 0xf2589 ata.c:618
push DS ; 1e ; 0xf258c
push SS ; 16 ; 0xf258d
pop DS ; 1f ; 0xf258e
lea si, [bp-038h] ; 8d 76 c8 ; 0xf258f
movsw ; a5 ; 0xf2592
movsw ; a5 ; 0xf2593
movsw ; a5 ; 0xf2594
pop DS ; 1f ; 0xf2595
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf2596 ata.c:619
cmp AL, strict byte 002h ; 3c 02 ; 0xf2599
jnc near 02624h ; 0f 83 85 00 ; 0xf259b
test al, al ; 84 c0 ; 0xf259f ata.c:625
jne short 025a8h ; 75 05 ; 0xf25a1
mov bx, strict word 0003dh ; bb 3d 00 ; 0xf25a3 ata.c:626
jmp short 025abh ; eb 03 ; 0xf25a6 ata.c:627
mov bx, strict word 0004dh ; bb 4d 00 ; 0xf25a8 ata.c:628
mov dx, word [bp-02ch] ; 8b 56 d4 ; 0xf25ab
movzx si, byte [bp-016h] ; 0f b6 76 ea ; 0xf25ae ata.c:640
imul si, si, strict byte 00005h ; 6b f6 05 ; 0xf25b2
sal si, 002h ; c1 e6 02 ; 0xf25b5
add si, 00104h ; 81 c6 04 01 ; 0xf25b8
xor ax, ax ; 31 c0 ; 0xf25bc
mov es, ax ; 8e c0 ; 0xf25be
mov word [es:si], bx ; 26 89 1c ; 0xf25c0 ata.c:641
mov word [es:si+002h], dx ; 26 89 54 02 ; 0xf25c3
mov es, dx ; 8e c2 ; 0xf25c7 ata.c:647
mov word [es:bx+00ch], ax ; 26 89 47 0c ; 0xf25c9
mov word [es:bx+005h], ax ; 26 89 47 05 ; 0xf25cd
mov word [es:bx+007h], ax ; 26 89 47 07 ; 0xf25d1
mov ax, word [bp-036h] ; 8b 46 ca ; 0xf25d5 ata.c:649
mov word [es:bx], ax ; 26 89 07 ; 0xf25d8
mov al, byte [bp-038h] ; 8a 46 c8 ; 0xf25db ata.c:650
mov byte [es:bx+002h], al ; 26 88 47 02 ; 0xf25de
mov byte [es:bx+003h], 0a0h ; 26 c6 47 03 a0 ; 0xf25e2 ata.c:651
mov al, byte [bp-024h] ; 8a 46 dc ; 0xf25e7 ata.c:652
mov byte [es:bx+004h], al ; 26 88 47 04 ; 0xf25ea
mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xf25ee ata.c:653
mov word [es:bx+009h], ax ; 26 89 47 09 ; 0xf25f1
mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xf25f5 ata.c:654
mov byte [es:bx+00bh], al ; 26 88 47 0b ; 0xf25f8
mov al, byte [bp-034h] ; 8a 46 cc ; 0xf25fc ata.c:655
mov byte [es:bx+00eh], al ; 26 88 47 0e ; 0xf25ff
xor al, al ; 30 c0 ; 0xf2603 ata.c:656
xor ah, ah ; 30 e4 ; 0xf2605 ata.c:657
jmp short 0260eh ; eb 05 ; 0xf2607
cmp ah, 00fh ; 80 fc 0f ; 0xf2609
jnc short 0261ch ; 73 0e ; 0xf260c
movzx si, ah ; 0f b6 f4 ; 0xf260e ata.c:658
mov es, dx ; 8e c2 ; 0xf2611
add si, bx ; 01 de ; 0xf2613
add al, byte [es:si] ; 26 02 04 ; 0xf2615
db 0feh, 0c4h
; inc ah ; fe c4 ; 0xf2618
jmp short 02609h ; eb ed ; 0xf261a
neg al ; f6 d8 ; 0xf261c ata.c:659
mov es, dx ; 8e c2 ; 0xf261e ata.c:660
mov byte [es:bx+00fh], al ; 26 88 47 0f ; 0xf2620
movzx bx, byte [bp-00ch] ; 0f b6 5e f4 ; 0xf2624 ata.c:664
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf2628
add bx, word [bp-018h] ; 03 5e e8 ; 0xf262b
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf262e
mov byte [es:bx+0024fh], al ; 26 88 87 4f 02 ; 0xf2631
inc byte [bp-00ch] ; fe 46 f4 ; 0xf2636 ata.c:665
cmp byte [bp-008h], 003h ; 80 7e f8 03 ; 0xf2639 ata.c:669
jne near 026d9h ; 0f 85 98 00 ; 0xf263d
movzx bx, byte [bp-016h] ; 0f b6 5e ea ; 0xf2641 ata.c:674
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf2645
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf2648
add bx, word [bp-018h] ; 03 5e e8 ; 0xf264b
mov byte [es:bx+01fh], 005h ; 26 c6 47 1f 05 ; 0xf264e
mov byte [es:bx+022h], 000h ; 26 c6 47 22 00 ; 0xf2653 ata.c:675
lea dx, [bp-00262h] ; 8d 96 9e fd ; 0xf2658 ata.c:676
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf265c
mov word [es:bx+008h], dx ; 26 89 57 08 ; 0xf265f
mov [es:bx+00ah], ss ; 26 8c 57 0a ; 0xf2663
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf2667 ata.c:677
mov byte [es:bx+00ch], al ; 26 88 47 0c ; 0xf266a
mov cx, strict word 00001h ; b9 01 00 ; 0xf266e ata.c:679
mov bx, 000a1h ; bb a1 00 ; 0xf2671
mov ax, word [bp-018h] ; 8b 46 e8 ; 0xf2674
mov dx, es ; 8c c2 ; 0xf2677
call 01f4eh ; e8 d2 f8 ; 0xf2679
test ax, ax ; 85 c0 ; 0xf267c
je short 0268bh ; 74 0b ; 0xf267e
push 001f6h ; 68 f6 01 ; 0xf2680 ata.c:680
push strict byte 00007h ; 6a 07 ; 0xf2683
call 01a68h ; e8 e0 f3 ; 0xf2685
add sp, strict byte 00004h ; 83 c4 04 ; 0xf2688
mov cl, byte [bp-00261h] ; 8a 8e 9f fd ; 0xf268b ata.c:682
and cl, 01fh ; 80 e1 1f ; 0xf268f
test byte [bp-00262h], 080h ; f6 86 9e fd 80 ; 0xf2692 ata.c:683
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf2697
xor ah, ah ; 30 e4 ; 0xf269a
mov dx, ax ; 89 c2 ; 0xf269c
cmp byte [bp-00202h], 000h ; 80 be fe fd 00 ; 0xf269e ata.c:685
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf26a3
xor ah, ah ; 30 e4 ; 0xf26a6
movzx bx, byte [bp-016h] ; 0f b6 5e ea ; 0xf26a8 ata.c:691
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf26ac
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf26af
add bx, word [bp-018h] ; 03 5e e8 ; 0xf26b2
mov byte [es:bx+01fh], cl ; 26 88 4f 1f ; 0xf26b5
mov byte [es:bx+020h], dl ; 26 88 57 20 ; 0xf26b9 ata.c:692
mov byte [es:bx+022h], al ; 26 88 47 22 ; 0xf26bd ata.c:693
mov word [es:bx+024h], 00800h ; 26 c7 47 24 00 08 ; 0xf26c1 ata.c:694
movzx bx, byte [bp-010h] ; 0f b6 5e f0 ; 0xf26c7 ata.c:697
add bx, word [bp-018h] ; 03 5e e8 ; 0xf26cb
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf26ce
mov byte [es:bx+00264h], al ; 26 88 87 64 02 ; 0xf26d1
inc byte [bp-010h] ; fe 46 f0 ; 0xf26d6 ata.c:698
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf26d9 ata.c:707
cmp AL, strict byte 003h ; 3c 03 ; 0xf26dc
je short 0270fh ; 74 2f ; 0xf26de
cmp AL, strict byte 002h ; 3c 02 ; 0xf26e0
jne near 02772h ; 0f 85 8c 00 ; 0xf26e2
movzx si, byte [bp-016h] ; 0f b6 76 ea ; 0xf26e6 ata.c:709
imul si, si, strict byte 0001ch ; 6b f6 1c ; 0xf26ea
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf26ed
add si, word [bp-018h] ; 03 76 e8 ; 0xf26f0
mov ax, word [es:si+038h] ; 26 8b 44 38 ; 0xf26f3
mov bx, word [es:si+036h] ; 26 8b 5c 36 ; 0xf26f7
mov cx, word [es:si+034h] ; 26 8b 4c 34 ; 0xf26fb
mov dx, word [es:si+032h] ; 26 8b 54 32 ; 0xf26ff
mov si, strict word 0000bh ; be 0b 00 ; 0xf2703
call 0ad60h ; e8 57 86 ; 0xf2706
mov word [bp-030h], dx ; 89 56 d0 ; 0xf2709
mov word [bp-026h], cx ; 89 4e da ; 0xf270c
movzx dx, byte [bp-001c1h] ; 0f b6 96 3f fe ; 0xf270f ata.c:712
sal dx, 008h ; c1 e2 08 ; 0xf2714
movzx ax, byte [bp-001c2h] ; 0f b6 86 3e fe ; 0xf2717
or dx, ax ; 09 c2 ; 0xf271c
mov byte [bp-006h], 00fh ; c6 46 fa 0f ; 0xf271e ata.c:713
jmp short 0272dh ; eb 09 ; 0xf2722
dec byte [bp-006h] ; fe 4e fa ; 0xf2724 ata.c:716
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf2727
jbe short 0273ah ; 76 0d ; 0xf272b
movzx cx, byte [bp-006h] ; 0f b6 4e fa ; 0xf272d
mov ax, strict word 00001h ; b8 01 00 ; 0xf2731
sal ax, CL ; d3 e0 ; 0xf2734
test dx, ax ; 85 c2 ; 0xf2736
je short 02724h ; 74 ea ; 0xf2738
xor di, di ; 31 ff ; 0xf273a ata.c:719
jmp short 02743h ; eb 05 ; 0xf273c
cmp di, strict byte 00014h ; 83 ff 14 ; 0xf273e
jnl short 02758h ; 7d 15 ; 0xf2741
mov si, di ; 89 fe ; 0xf2743 ata.c:720
add si, di ; 01 fe ; 0xf2745
mov al, byte [bp+si-0022bh] ; 8a 82 d5 fd ; 0xf2747
mov byte [bp+si-062h], al ; 88 42 9e ; 0xf274b
mov al, byte [bp+si-0022ch] ; 8a 82 d4 fd ; 0xf274e ata.c:721
mov byte [bp+si-061h], al ; 88 42 9f ; 0xf2752
inc di ; 47 ; 0xf2755 ata.c:722
jmp short 0273eh ; eb e6 ; 0xf2756
mov byte [bp-03ah], 000h ; c6 46 c6 00 ; 0xf2758 ata.c:725
mov di, strict word 00027h ; bf 27 00 ; 0xf275c ata.c:726
jmp short 02766h ; eb 05 ; 0xf275f
dec di ; 4f ; 0xf2761 ata.c:731
test di, di ; 85 ff ; 0xf2762
jle short 02772h ; 7e 0c ; 0xf2764
cmp byte [bp+di-062h], 020h ; 80 7b 9e 20 ; 0xf2766
jne short 02772h ; 75 06 ; 0xf276a
mov byte [bp+di-062h], 000h ; c6 43 9e 00 ; 0xf276c
jmp short 02761h ; eb ef ; 0xf2770
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf2772 ata.c:738
cmp AL, strict byte 003h ; 3c 03 ; 0xf2775
je short 027d7h ; 74 5e ; 0xf2777
cmp AL, strict byte 002h ; 3c 02 ; 0xf2779
je short 02786h ; 74 09 ; 0xf277b
cmp AL, strict byte 001h ; 3c 01 ; 0xf277d
je near 0283fh ; 0f 84 bc 00 ; 0xf277f
jmp near 0285eh ; e9 d8 00 ; 0xf2783
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf2786 ata.c:741
je short 02791h ; 74 05 ; 0xf278a
mov ax, 00221h ; b8 21 02 ; 0xf278c
jmp short 02794h ; eb 03 ; 0xf278f
mov ax, 00228h ; b8 28 02 ; 0xf2791
push ax ; 50 ; 0xf2794
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf2795
push ax ; 50 ; 0xf2799
push 0022fh ; 68 2f 02 ; 0xf279a
push strict byte 00002h ; 6a 02 ; 0xf279d
call 01a68h ; e8 c6 f2 ; 0xf279f
add sp, strict byte 00008h ; 83 c4 08 ; 0xf27a2
xor di, di ; 31 ff ; 0xf27a5 ata.c:742
movzx ax, byte [bp+di-062h] ; 0f b6 43 9e ; 0xf27a7 ata.c:743
inc di ; 47 ; 0xf27ab
test ax, ax ; 85 c0 ; 0xf27ac
je short 027beh ; 74 0e ; 0xf27ae
push ax ; 50 ; 0xf27b0 ata.c:744
push 0023ah ; 68 3a 02 ; 0xf27b1
push strict byte 00002h ; 6a 02 ; 0xf27b4
call 01a68h ; e8 af f2 ; 0xf27b6
add sp, strict byte 00006h ; 83 c4 06 ; 0xf27b9
jmp short 027a7h ; eb e9 ; 0xf27bc
push word [bp-026h] ; ff 76 da ; 0xf27be ata.c:745
push word [bp-030h] ; ff 76 d0 ; 0xf27c1
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf27c4
push ax ; 50 ; 0xf27c8
push 0023dh ; 68 3d 02 ; 0xf27c9
push strict byte 00002h ; 6a 02 ; 0xf27cc
call 01a68h ; e8 97 f2 ; 0xf27ce
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf27d1
jmp near 0285eh ; e9 87 00 ; 0xf27d4 ata.c:746
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf27d7 ata.c:748
je short 027e2h ; 74 05 ; 0xf27db
mov ax, 00221h ; b8 21 02 ; 0xf27dd
jmp short 027e5h ; eb 03 ; 0xf27e0
mov ax, 00228h ; b8 28 02 ; 0xf27e2
push ax ; 50 ; 0xf27e5
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf27e6
push ax ; 50 ; 0xf27ea
push 0022fh ; 68 2f 02 ; 0xf27eb
push strict byte 00002h ; 6a 02 ; 0xf27ee
call 01a68h ; e8 75 f2 ; 0xf27f0
add sp, strict byte 00008h ; 83 c4 08 ; 0xf27f3
xor di, di ; 31 ff ; 0xf27f6 ata.c:749
movzx ax, byte [bp+di-062h] ; 0f b6 43 9e ; 0xf27f8 ata.c:750
inc di ; 47 ; 0xf27fc
test ax, ax ; 85 c0 ; 0xf27fd
je short 0280fh ; 74 0e ; 0xf27ff
push ax ; 50 ; 0xf2801 ata.c:751
push 0023ah ; 68 3a 02 ; 0xf2802
push strict byte 00002h ; 6a 02 ; 0xf2805
call 01a68h ; e8 5e f2 ; 0xf2807
add sp, strict byte 00006h ; 83 c4 06 ; 0xf280a
jmp short 027f8h ; eb e9 ; 0xf280d
movzx bx, byte [bp-016h] ; 0f b6 5e ea ; 0xf280f ata.c:752
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf2813
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf2816
add bx, word [bp-018h] ; 03 5e e8 ; 0xf2819
cmp byte [es:bx+01fh], 005h ; 26 80 7f 1f 05 ; 0xf281c
jne short 0282dh ; 75 0a ; 0xf2821
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf2823 ata.c:753
push ax ; 50 ; 0xf2827
push 0025dh ; 68 5d 02 ; 0xf2828
jmp short 02835h ; eb 08 ; 0xf282b ata.c:754
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf282d ata.c:755
push ax ; 50 ; 0xf2831
push 00277h ; 68 77 02 ; 0xf2832
push strict byte 00002h ; 6a 02 ; 0xf2835
call 01a68h ; e8 2e f2 ; 0xf2837
add sp, strict byte 00006h ; 83 c4 06 ; 0xf283a
jmp short 0285eh ; eb 1f ; 0xf283d ata.c:756
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf283f ata.c:758
je short 0284ah ; 74 05 ; 0xf2843
mov ax, 00221h ; b8 21 02 ; 0xf2845
jmp short 0284dh ; eb 03 ; 0xf2848
mov ax, 00228h ; b8 28 02 ; 0xf284a
push ax ; 50 ; 0xf284d
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf284e
push ax ; 50 ; 0xf2852
push 00289h ; 68 89 02 ; 0xf2853
push strict byte 00002h ; 6a 02 ; 0xf2856
call 01a68h ; e8 0d f2 ; 0xf2858
add sp, strict byte 00008h ; 83 c4 08 ; 0xf285b
inc byte [bp-016h] ; fe 46 ea ; 0xf285e ata.c:763
cmp byte [bp-016h], 008h ; 80 7e ea 08 ; 0xf2861
jnc short 028b2h ; 73 4b ; 0xf2865
movzx bx, byte [bp-016h] ; 0f b6 5e ea ; 0xf2867
mov ax, bx ; 89 d8 ; 0xf286b
cwd ; 99 ; 0xf286d
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf286e
sar ax, 1 ; d1 f8 ; 0xf2870
mov word [bp-032h], ax ; 89 46 ce ; 0xf2872
mov al, byte [bp-032h] ; 8a 46 ce ; 0xf2875
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf2878
mov ax, bx ; 89 d8 ; 0xf287b
cwd ; 99 ; 0xf287d
mov bx, strict word 00002h ; bb 02 00 ; 0xf287e
idiv bx ; f7 fb ; 0xf2881
mov cx, dx ; 89 d1 ; 0xf2883
mov byte [bp-00eh], dl ; 88 56 f2 ; 0xf2885
movzx ax, byte [bp-032h] ; 0f b6 46 ce ; 0xf2888
imul ax, ax, strict byte 00006h ; 6b c0 06 ; 0xf288c
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf288f
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf2892
add bx, ax ; 01 c3 ; 0xf2895
mov si, word [es:bx+0027ah] ; 26 8b b7 7a 02 ; 0xf2897
mov ax, word [es:bx+0027ch] ; 26 8b 87 7c 02 ; 0xf289c
mov word [bp-01ch], ax ; 89 46 e4 ; 0xf28a1
lea dx, [si+007h] ; 8d 54 07 ; 0xf28a4
in AL, DX ; ec ; 0xf28a7
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf28a8
cmp AL, strict byte 0ffh ; 3c ff ; 0xf28aa
jne near 02371h ; 0f 85 c1 fa ; 0xf28ac
jmp short 0285eh ; eb ac ; 0xf28b0
mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xf28b2 ata.c:766
mov es, [bp-02ah] ; 8e 46 d6 ; 0xf28b5
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf28b8
mov byte [es:bx+0024eh], al ; 26 88 87 4e 02 ; 0xf28bb
mov al, byte [bp-010h] ; 8a 46 f0 ; 0xf28c0 ata.c:767
mov byte [es:bx+00263h], al ; 26 88 87 63 02 ; 0xf28c3
mov bx, strict word 00075h ; bb 75 00 ; 0xf28c8 ata.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf28cb
mov es, ax ; 8e c0 ; 0xf28ce
mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xf28d0
mov byte [es:bx], al ; 26 88 07 ; 0xf28d3
lea sp, [bp-004h] ; 8d 66 fc ; 0xf28d6 ata.c:780
pop di ; 5f ; 0xf28d9
pop si ; 5e ; 0xf28da
pop bp ; 5d ; 0xf28db
retn ; c3 ; 0xf28dc
; disGetNextSymbol 0xf28dd LB 0x853f -> off=0x0 cb=00000000000002bc uValue=00000000000f12dd 'ata_cmd_data_out'
ata_cmd_data_out: ; 0xf28dd LB 0x2bc
push bp ; 55 ; 0xf28dd ata.c:794
mov bp, sp ; 89 e5 ; 0xf28de
push si ; 56 ; 0xf28e0
push di ; 57 ; 0xf28e1
sub sp, strict byte 00022h ; 83 ec 22 ; 0xf28e2
mov di, ax ; 89 c7 ; 0xf28e5
mov word [bp-00ch], dx ; 89 56 f4 ; 0xf28e7
mov word [bp-024h], bx ; 89 5e dc ; 0xf28ea
mov word [bp-01ah], cx ; 89 4e e6 ; 0xf28ed
mov es, dx ; 8e c2 ; 0xf28f0 ata.c:806
movzx ax, byte [es:di+00ch] ; 26 0f b6 45 0c ; 0xf28f2
mov dx, ax ; 89 c2 ; 0xf28f7 ata.c:807
shr dx, 1 ; d1 ea ; 0xf28f9
mov dh, al ; 88 c6 ; 0xf28fb ata.c:808
and dh, 001h ; 80 e6 01 ; 0xf28fd
mov byte [bp-006h], dh ; 88 76 fa ; 0xf2900
xor dh, dh ; 30 f6 ; 0xf2903 ata.c:810
imul dx, dx, strict byte 00006h ; 6b d2 06 ; 0xf2905
mov bx, di ; 89 fb ; 0xf2908
add bx, dx ; 01 d3 ; 0xf290a
mov dx, word [es:bx+0027ah] ; 26 8b 97 7a 02 ; 0xf290c
mov word [bp-00ah], dx ; 89 56 f6 ; 0xf2911
mov dx, word [es:bx+0027ch] ; 26 8b 97 7c 02 ; 0xf2914 ata.c:811
mov word [bp-012h], dx ; 89 56 ee ; 0xf2919
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf291c ata.c:812
mov bx, di ; 89 fb ; 0xf291f
add bx, ax ; 01 c3 ; 0xf2921
mov al, byte [es:bx+022h] ; 26 8a 47 22 ; 0xf2923
mov byte [bp-008h], al ; 88 46 f8 ; 0xf2927
cmp AL, strict byte 001h ; 3c 01 ; 0xf292a ata.c:815
jne short 02935h ; 75 07 ; 0xf292c
mov word [bp-020h], 00080h ; c7 46 e0 80 00 ; 0xf292e ata.c:816
jmp short 0293ah ; eb 05 ; 0xf2933 ata.c:817
mov word [bp-020h], 00100h ; c7 46 e0 00 01 ; 0xf2935 ata.c:819
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf293a ata.c:821
add dx, strict byte 00007h ; 83 c2 07 ; 0xf293d
in AL, DX ; ec ; 0xf2940
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2941
test AL, strict byte 080h ; a8 80 ; 0xf2943 ata.c:822
je short 02956h ; 74 0f ; 0xf2945
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf2947 ata.c:825
add dx, strict byte 00006h ; 83 c2 06 ; 0xf294a
mov AL, strict byte 008h ; b0 08 ; 0xf294d
out DX, AL ; ee ; 0xf294f
mov dx, strict word 00001h ; ba 01 00 ; 0xf2950 ata.c:826
jmp near 02b90h ; e9 3a 02 ; 0xf2953
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf2956 ata.c:829
mov ax, word [es:di+006h] ; 26 8b 45 06 ; 0xf2959
mov word [bp-010h], ax ; 89 46 f0 ; 0xf295d
mov ax, word [es:di+004h] ; 26 8b 45 04 ; 0xf2960
mov word [bp-014h], ax ; 89 46 ec ; 0xf2964
mov ax, word [es:di+002h] ; 26 8b 45 02 ; 0xf2967
mov word [bp-016h], ax ; 89 46 ea ; 0xf296b
mov ax, word [es:di] ; 26 8b 05 ; 0xf296e
mov word [bp-01eh], ax ; 89 46 e2 ; 0xf2971
mov ax, word [es:di+008h] ; 26 8b 45 08 ; 0xf2974 ata.c:830
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf2978
mov ax, word [es:di+00ah] ; 26 8b 45 0a ; 0xf297b
mov word [bp-018h], ax ; 89 46 e8 ; 0xf297f
mov ax, word [es:di+016h] ; 26 8b 45 16 ; 0xf2982 ata.c:831
mov word [bp-01ch], ax ; 89 46 e4 ; 0xf2986
mov ax, word [es:di+012h] ; 26 8b 45 12 ; 0xf2989 ata.c:832
mov word [bp-026h], ax ; 89 46 da ; 0xf298d
mov ax, word [es:di+014h] ; 26 8b 45 14 ; 0xf2990 ata.c:833
mov word [bp-022h], ax ; 89 46 de ; 0xf2994
mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xf2997 ata.c:836
test ax, ax ; 85 c0 ; 0xf299a
jne near 02a67h ; 0f 85 c7 00 ; 0xf299c
xor dx, dx ; 31 d2 ; 0xf29a0 ata.c:837
xor bx, bx ; 31 db ; 0xf29a2
mov si, word [bp-01eh] ; 8b 76 e2 ; 0xf29a4
add si, word [bp-01ah] ; 03 76 e6 ; 0xf29a7
adc dx, word [bp-016h] ; 13 56 ea ; 0xf29aa
adc bx, word [bp-014h] ; 13 5e ec ; 0xf29ad
adc ax, word [bp-010h] ; 13 46 f0 ; 0xf29b0
test ax, ax ; 85 c0 ; 0xf29b3
jnbe short 029c7h ; 77 10 ; 0xf29b5
jne short 02a2ah ; 75 71 ; 0xf29b7
test bx, bx ; 85 db ; 0xf29b9
jnbe short 029c7h ; 77 0a ; 0xf29bb
jne short 02a2ah ; 75 6b ; 0xf29bd
cmp dx, 01000h ; 81 fa 00 10 ; 0xf29bf
jnbe short 029c7h ; 77 02 ; 0xf29c3
jne short 02a2ah ; 75 63 ; 0xf29c5
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf29c7 ata.c:839
mov bx, word [bp-014h] ; 8b 5e ec ; 0xf29ca
mov cx, word [bp-016h] ; 8b 4e ea ; 0xf29cd
mov dx, word [bp-01eh] ; 8b 56 e2 ; 0xf29d0
mov si, strict word 00018h ; be 18 00 ; 0xf29d3
call 0ad60h ; e8 87 83 ; 0xf29d6
xor dh, dh ; 30 f6 ; 0xf29d9
mov word [bp-01ch], dx ; 89 56 e4 ; 0xf29db
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf29de ata.c:840
mov bx, word [bp-014h] ; 8b 5e ec ; 0xf29e1
mov cx, word [bp-016h] ; 8b 4e ea ; 0xf29e4
mov dx, word [bp-01eh] ; 8b 56 e2 ; 0xf29e7
mov si, strict word 00020h ; be 20 00 ; 0xf29ea
call 0ad60h ; e8 70 83 ; 0xf29ed
mov bx, dx ; 89 d3 ; 0xf29f0
mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xf29f2 ata.c:841
xor al, al ; 30 c0 ; 0xf29f5
shr ax, 008h ; c1 e8 08 ; 0xf29f7
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf29fa
inc dx ; 42 ; 0xf29fd
inc dx ; 42 ; 0xf29fe
out DX, AL ; ee ; 0xf29ff
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a00 ata.c:842
add dx, strict byte 00003h ; 83 c2 03 ; 0xf2a03
mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xf2a06
out DX, AL ; ee ; 0xf2a09
mov ax, bx ; 89 d8 ; 0xf2a0a ata.c:843
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a0c
add dx, strict byte 00004h ; 83 c2 04 ; 0xf2a0f
out DX, AL ; ee ; 0xf2a12
shr ax, 008h ; c1 e8 08 ; 0xf2a13 ata.c:844
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a16
add dx, strict byte 00005h ; 83 c2 05 ; 0xf2a19
out DX, AL ; ee ; 0xf2a1c
xor al, al ; 30 c0 ; 0xf2a1d ata.c:847
mov byte [bp-015h], al ; 88 46 eb ; 0xf2a1f
xor ah, ah ; 30 e4 ; 0xf2a22
mov word [bp-014h], ax ; 89 46 ec ; 0xf2a24
mov word [bp-010h], ax ; 89 46 f0 ; 0xf2a27
mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xf2a2a ata.c:849
xor ah, ah ; 30 e4 ; 0xf2a2d
mov word [bp-01ch], ax ; 89 46 e4 ; 0xf2a2f
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf2a32 ata.c:850
mov bx, word [bp-014h] ; 8b 5e ec ; 0xf2a35
mov cx, word [bp-016h] ; 8b 4e ea ; 0xf2a38
mov dx, word [bp-01eh] ; 8b 56 e2 ; 0xf2a3b
mov si, strict word 00008h ; be 08 00 ; 0xf2a3e
call 0ad60h ; e8 1c 83 ; 0xf2a41
mov word [bp-010h], ax ; 89 46 f0 ; 0xf2a44
mov word [bp-014h], bx ; 89 5e ec ; 0xf2a47
mov word [bp-016h], cx ; 89 4e ea ; 0xf2a4a
mov word [bp-01eh], dx ; 89 56 e2 ; 0xf2a4d
mov word [bp-026h], dx ; 89 56 da ; 0xf2a50 ata.c:851
mov si, strict word 00010h ; be 10 00 ; 0xf2a53 ata.c:852
call 0ad60h ; e8 07 83 ; 0xf2a56
mov word [bp-01eh], dx ; 89 56 e2 ; 0xf2a59
mov ax, dx ; 89 d0 ; 0xf2a5c ata.c:853
xor ah, dh ; 30 f4 ; 0xf2a5e
and AL, strict byte 00fh ; 24 0f ; 0xf2a60
or AL, strict byte 040h ; 0c 40 ; 0xf2a62
mov word [bp-022h], ax ; 89 46 de ; 0xf2a64
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf2a67 ata.c:856
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2a6a
mov AL, strict byte 00ah ; b0 0a ; 0xf2a6d
out DX, AL ; ee ; 0xf2a6f
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a70 ata.c:857
inc dx ; 42 ; 0xf2a73
xor al, al ; 30 c0 ; 0xf2a74
out DX, AL ; ee ; 0xf2a76
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a77 ata.c:858
inc dx ; 42 ; 0xf2a7a
inc dx ; 42 ; 0xf2a7b
mov al, byte [bp-01ah] ; 8a 46 e6 ; 0xf2a7c
out DX, AL ; ee ; 0xf2a7f
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a80 ata.c:859
add dx, strict byte 00003h ; 83 c2 03 ; 0xf2a83
mov al, byte [bp-01ch] ; 8a 46 e4 ; 0xf2a86
out DX, AL ; ee ; 0xf2a89
mov ax, word [bp-026h] ; 8b 46 da ; 0xf2a8a ata.c:860
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a8d
add dx, strict byte 00004h ; 83 c2 04 ; 0xf2a90
out DX, AL ; ee ; 0xf2a93
shr ax, 008h ; c1 e8 08 ; 0xf2a94 ata.c:861
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2a97
add dx, strict byte 00005h ; 83 c2 05 ; 0xf2a9a
out DX, AL ; ee ; 0xf2a9d
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf2a9e ata.c:862
je short 02aa9h ; 74 05 ; 0xf2aa2
mov ax, 000b0h ; b8 b0 00 ; 0xf2aa4
jmp short 02aach ; eb 03 ; 0xf2aa7
mov ax, 000a0h ; b8 a0 00 ; 0xf2aa9
movzx dx, byte [bp-022h] ; 0f b6 56 de ; 0xf2aac
or ax, dx ; 09 d0 ; 0xf2ab0
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2ab2
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2ab5
out DX, AL ; ee ; 0xf2ab8
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2ab9 ata.c:863
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2abc
mov al, byte [bp-024h] ; 8a 46 dc ; 0xf2abf
out DX, AL ; ee ; 0xf2ac2
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2ac3 ata.c:866
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2ac6
in AL, DX ; ec ; 0xf2ac9
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2aca
mov dl, al ; 88 c2 ; 0xf2acc
test AL, strict byte 080h ; a8 80 ; 0xf2ace ata.c:867
jne short 02ac3h ; 75 f1 ; 0xf2ad0
test AL, strict byte 001h ; a8 01 ; 0xf2ad2 ata.c:871
je short 02ae5h ; 74 0f ; 0xf2ad4
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf2ad6 ata.c:874
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2ad9
mov AL, strict byte 008h ; b0 08 ; 0xf2adc
out DX, AL ; ee ; 0xf2ade
mov dx, strict word 00002h ; ba 02 00 ; 0xf2adf ata.c:875
jmp near 02b90h ; e9 ab 00 ; 0xf2ae2
test dl, 008h ; f6 c2 08 ; 0xf2ae5 ata.c:876
jne short 02af9h ; 75 0f ; 0xf2ae8
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf2aea ata.c:879
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2aed
mov AL, strict byte 008h ; b0 08 ; 0xf2af0
out DX, AL ; ee ; 0xf2af2
mov dx, strict word 00003h ; ba 03 00 ; 0xf2af3 ata.c:880
jmp near 02b90h ; e9 97 00 ; 0xf2af6
sti ; fb ; 0xf2af9 ata.c:885
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf2afa ata.c:890
cmp ax, 0f800h ; 3d 00 f8 ; 0xf2afd
jc short 02b12h ; 72 10 ; 0xf2b00
sub ax, 00800h ; 2d 00 08 ; 0xf2b02 ata.c:891
mov dx, word [bp-018h] ; 8b 56 e8 ; 0xf2b05
add dx, 00080h ; 81 c2 80 00 ; 0xf2b08
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf2b0c
mov word [bp-018h], dx ; 89 56 e8 ; 0xf2b0f
cmp byte [bp-008h], 001h ; 80 7e f8 01 ; 0xf2b12 ata.c:894
jne short 02b2ah ; 75 12 ; 0xf2b16
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2b18 ata.c:895
mov cx, word [bp-020h] ; 8b 4e e0 ; 0xf2b1b
mov si, word [bp-00eh] ; 8b 76 f2 ; 0xf2b1e
mov es, [bp-018h] ; 8e 46 e8 ; 0xf2b21
db 0f3h, 066h, 026h, 06fh
; rep es outsd ; f3 66 26 6f ; 0xf2b24
jmp short 02b39h ; eb 0f ; 0xf2b28 ata.c:896
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2b2a ata.c:898
mov cx, word [bp-020h] ; 8b 4e e0 ; 0xf2b2d
mov si, word [bp-00eh] ; 8b 76 f2 ; 0xf2b30
mov es, [bp-018h] ; 8e 46 e8 ; 0xf2b33
db 0f3h, 026h, 06fh
; rep es outsw ; f3 26 6f ; 0xf2b36
mov word [bp-00eh], si ; 89 76 f2 ; 0xf2b39
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf2b3c ata.c:900
inc word [es:di+018h] ; 26 ff 45 18 ; 0xf2b3f
dec word [bp-01ah] ; ff 4e e6 ; 0xf2b43 ata.c:901
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf2b46 ata.c:903
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2b49
in AL, DX ; ec ; 0xf2b4c
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2b4d
mov dl, al ; 88 c2 ; 0xf2b4f
test AL, strict byte 080h ; a8 80 ; 0xf2b51 ata.c:904
jne short 02b46h ; 75 f1 ; 0xf2b53
cmp word [bp-01ah], strict byte 00000h ; 83 7e e6 00 ; 0xf2b55 ata.c:907
jne short 02b6fh ; 75 14 ; 0xf2b59
and AL, strict byte 0e9h ; 24 e9 ; 0xf2b5b ata.c:908
cmp AL, strict byte 040h ; 3c 40 ; 0xf2b5d
je short 02b85h ; 74 24 ; 0xf2b5f
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf2b61 ata.c:912
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2b64
mov AL, strict byte 008h ; b0 08 ; 0xf2b67
out DX, AL ; ee ; 0xf2b69
mov dx, strict word 00006h ; ba 06 00 ; 0xf2b6a ata.c:913
jmp short 02b90h ; eb 21 ; 0xf2b6d
mov al, dl ; 88 d0 ; 0xf2b6f ata.c:918
and AL, strict byte 0c9h ; 24 c9 ; 0xf2b71
cmp AL, strict byte 048h ; 3c 48 ; 0xf2b73
je short 02afah ; 74 83 ; 0xf2b75
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf2b77 ata.c:922
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2b7a
mov AL, strict byte 008h ; b0 08 ; 0xf2b7d
out DX, AL ; ee ; 0xf2b7f
mov dx, strict word 00007h ; ba 07 00 ; 0xf2b80 ata.c:923
jmp short 02b90h ; eb 0b ; 0xf2b83
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf2b85 ata.c:929
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2b88
mov AL, strict byte 008h ; b0 08 ; 0xf2b8b
out DX, AL ; ee ; 0xf2b8d
xor dx, dx ; 31 d2 ; 0xf2b8e ata.c:930
mov ax, dx ; 89 d0 ; 0xf2b90 ata.c:931
lea sp, [bp-004h] ; 8d 66 fc ; 0xf2b92
pop di ; 5f ; 0xf2b95
pop si ; 5e ; 0xf2b96
pop bp ; 5d ; 0xf2b97
retn ; c3 ; 0xf2b98
; disGetNextSymbol 0xf2b99 LB 0x8283 -> off=0x0 cb=00000000000000b5 uValue=00000000000f1599 'ata_read_sectors'
ata_read_sectors: ; 0xf2b99 LB 0xb5
push bp ; 55 ; 0xf2b99 ata.c:941
mov bp, sp ; 89 e5 ; 0xf2b9a
push si ; 56 ; 0xf2b9c
push di ; 57 ; 0xf2b9d
sub sp, strict byte 00008h ; 83 ec 08 ; 0xf2b9e
mov si, word [bp+004h] ; 8b 76 04 ; 0xf2ba1
mov es, [bp+006h] ; 8e 46 06 ; 0xf2ba4 ata.c:947
mov al, byte [es:si+00ch] ; 26 8a 44 0c ; 0xf2ba7
mov cx, word [es:si+00eh] ; 26 8b 4c 0e ; 0xf2bab ata.c:948
mov dx, cx ; 89 ca ; 0xf2baf
sal dx, 009h ; c1 e2 09 ; 0xf2bb1
cmp word [es:si+016h], strict byte 00000h ; 26 83 7c 16 00 ; 0xf2bb4 ata.c:950
je short 02bdah ; 74 1f ; 0xf2bb9
xor ah, ah ; 30 e4 ; 0xf2bbb ata.c:952
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf2bbd
mov [bp-00ah], es ; 8c 46 f6 ; 0xf2bc0
mov di, si ; 89 f7 ; 0xf2bc3
add di, ax ; 01 c7 ; 0xf2bc5
mov word [es:di+024h], dx ; 26 89 55 24 ; 0xf2bc7
mov bx, 000c4h ; bb c4 00 ; 0xf2bcb ata.c:954
mov ax, si ; 89 f0 ; 0xf2bce
mov dx, es ; 8c c2 ; 0xf2bd0
call 01f4eh ; e8 79 f3 ; 0xf2bd2
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf2bd5 ata.c:955
jmp short 02c3fh ; eb 65 ; 0xf2bd8 ata.c:956
xor bx, bx ; 31 db ; 0xf2bda ata.c:958
mov word [bp-00ah], bx ; 89 5e f6 ; 0xf2bdc
mov word [bp-00ch], bx ; 89 5e f4 ; 0xf2bdf
mov di, word [es:si] ; 26 8b 3c ; 0xf2be2
add di, cx ; 01 cf ; 0xf2be5
mov word [bp-008h], di ; 89 7e f8 ; 0xf2be7
mov di, word [es:si+002h] ; 26 8b 7c 02 ; 0xf2bea
adc di, bx ; 11 df ; 0xf2bee
mov word [bp-006h], di ; 89 7e fa ; 0xf2bf0
mov bx, word [es:si+004h] ; 26 8b 5c 04 ; 0xf2bf3
adc bx, word [bp-00ah] ; 13 5e f6 ; 0xf2bf7
mov di, word [es:si+006h] ; 26 8b 7c 06 ; 0xf2bfa
adc di, word [bp-00ch] ; 13 7e f4 ; 0xf2bfe
test di, di ; 85 ff ; 0xf2c01
jnbe short 02c16h ; 77 11 ; 0xf2c03
jne short 02c22h ; 75 1b ; 0xf2c05
test bx, bx ; 85 db ; 0xf2c07
jnbe short 02c16h ; 77 0b ; 0xf2c09
jne short 02c22h ; 75 15 ; 0xf2c0b
cmp word [bp-006h], 01000h ; 81 7e fa 00 10 ; 0xf2c0d
jnbe short 02c16h ; 77 02 ; 0xf2c12
jne short 02c22h ; 75 0c ; 0xf2c14
mov bx, strict word 00024h ; bb 24 00 ; 0xf2c16 ata.c:960
mov ax, si ; 89 f0 ; 0xf2c19
mov dx, es ; 8c c2 ; 0xf2c1b
call 01f4eh ; e8 2e f3 ; 0xf2c1d
jmp short 02c45h ; eb 23 ; 0xf2c20 ata.c:961
xor ah, ah ; 30 e4 ; 0xf2c22 ata.c:962
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf2c24
mov [bp-006h], es ; 8c 46 fa ; 0xf2c27
mov di, si ; 89 f7 ; 0xf2c2a
add di, ax ; 01 c7 ; 0xf2c2c
mov word [es:di+024h], dx ; 26 89 55 24 ; 0xf2c2e
mov bx, 000c4h ; bb c4 00 ; 0xf2c32 ata.c:964
mov ax, si ; 89 f0 ; 0xf2c35
mov dx, es ; 8c c2 ; 0xf2c37
call 01f4eh ; e8 12 f3 ; 0xf2c39
mov es, [bp-006h] ; 8e 46 fa ; 0xf2c3c ata.c:965
mov word [es:di+024h], 00200h ; 26 c7 45 24 00 02 ; 0xf2c3f
lea sp, [bp-004h] ; 8d 66 fc ; 0xf2c45 ata.c:969
pop di ; 5f ; 0xf2c48
pop si ; 5e ; 0xf2c49
pop bp ; 5d ; 0xf2c4a
retn 00004h ; c2 04 00 ; 0xf2c4b
; disGetNextSymbol 0xf2c4e LB 0x81ce -> off=0x0 cb=000000000000005b uValue=00000000000f164e 'ata_write_sectors'
ata_write_sectors: ; 0xf2c4e LB 0x5b
push bp ; 55 ; 0xf2c4e ata.c:978
mov bp, sp ; 89 e5 ; 0xf2c4f
push si ; 56 ; 0xf2c51
push di ; 57 ; 0xf2c52
push ax ; 50 ; 0xf2c53
les si, [bp+004h] ; c4 76 04 ; 0xf2c54
mov cx, word [es:si+00eh] ; 26 8b 4c 0e ; 0xf2c57 ata.c:982
cmp word [es:si+016h], strict byte 00000h ; 26 83 7c 16 00 ; 0xf2c5b ata.c:984
je short 02c6eh ; 74 0c ; 0xf2c60
mov bx, strict word 00030h ; bb 30 00 ; 0xf2c62 ata.c:986
mov ax, si ; 89 f0 ; 0xf2c65
mov dx, es ; 8c c2 ; 0xf2c67
call 028ddh ; e8 71 fc ; 0xf2c69
jmp short 02ca0h ; eb 32 ; 0xf2c6c
xor ax, ax ; 31 c0 ; 0xf2c6e ata.c:989
xor bx, bx ; 31 db ; 0xf2c70
xor dx, dx ; 31 d2 ; 0xf2c72
mov di, word [es:si] ; 26 8b 3c ; 0xf2c74
add di, cx ; 01 cf ; 0xf2c77
mov word [bp-006h], di ; 89 7e fa ; 0xf2c79
adc ax, word [es:si+002h] ; 26 13 44 02 ; 0xf2c7c
adc bx, word [es:si+004h] ; 26 13 5c 04 ; 0xf2c80
adc dx, word [es:si+006h] ; 26 13 54 06 ; 0xf2c84
test dx, dx ; 85 d2 ; 0xf2c88
jnbe short 02c9bh ; 77 0f ; 0xf2c8a
jne short 02c62h ; 75 d4 ; 0xf2c8c
test bx, bx ; 85 db ; 0xf2c8e
jnbe short 02c9bh ; 77 09 ; 0xf2c90
jne short 02c62h ; 75 ce ; 0xf2c92
cmp ax, 01000h ; 3d 00 10 ; 0xf2c94
jnbe short 02c9bh ; 77 02 ; 0xf2c97
jne short 02c62h ; 75 c7 ; 0xf2c99
mov bx, strict word 00034h ; bb 34 00 ; 0xf2c9b ata.c:990
jmp short 02c65h ; eb c5 ; 0xf2c9e
lea sp, [bp-004h] ; 8d 66 fc ; 0xf2ca0 ata.c:994
pop di ; 5f ; 0xf2ca3
pop si ; 5e ; 0xf2ca4
pop bp ; 5d ; 0xf2ca5
retn 00004h ; c2 04 00 ; 0xf2ca6
; disGetNextSymbol 0xf2ca9 LB 0x8173 -> off=0x0 cb=000000000000023f uValue=00000000000f16a9 'ata_cmd_packet'
ata_cmd_packet: ; 0xf2ca9 LB 0x23f
push bp ; 55 ; 0xf2ca9 ata.c:1006
mov bp, sp ; 89 e5 ; 0xf2caa
push si ; 56 ; 0xf2cac
push di ; 57 ; 0xf2cad
sub sp, strict byte 00012h ; 83 ec 12 ; 0xf2cae
mov byte [bp-006h], dl ; 88 56 fa ; 0xf2cb1
mov di, bx ; 89 df ; 0xf2cb4
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf2cb6 ata.c:58
mov dx, strict word 00040h ; ba 40 00 ; 0xf2cb9
mov es, dx ; 8e c2 ; 0xf2cbc
mov dx, word [es:bx] ; 26 8b 17 ; 0xf2cbe
mov bx, strict word 0005eh ; bb 5e 00 ; 0xf2cc1 ata.c:59
mov word [bp-010h], dx ; 89 56 f0 ; 0xf2cc4
mov dx, ax ; 89 c2 ; 0xf2cc7 ata.c:1018
shr dx, 1 ; d1 ea ; 0xf2cc9
mov word [bp-016h], dx ; 89 56 ea ; 0xf2ccb
mov dl, byte [bp-016h] ; 8a 56 ea ; 0xf2cce
mov dh, al ; 88 c6 ; 0xf2cd1 ata.c:1019
and dh, 001h ; 80 e6 01 ; 0xf2cd3
mov byte [bp-00ah], dh ; 88 76 f6 ; 0xf2cd6
cmp byte [bp+008h], 002h ; 80 7e 08 02 ; 0xf2cd9 ata.c:1022
jne short 02cfeh ; 75 1f ; 0xf2cdd
mov bx, 00e16h ; bb 16 0e ; 0xf2cdf ata.c:1023
mov cx, ds ; 8c d9 ; 0xf2ce2
mov ax, strict word 00004h ; b8 04 00 ; 0xf2ce4
call 01a27h ; e8 3d ed ; 0xf2ce7
push 002a3h ; 68 a3 02 ; 0xf2cea
push 002b2h ; 68 b2 02 ; 0xf2ced
push strict byte 00004h ; 6a 04 ; 0xf2cf0
call 01a68h ; e8 73 ed ; 0xf2cf2
add sp, strict byte 00006h ; 83 c4 06 ; 0xf2cf5
mov dx, strict word 00001h ; ba 01 00 ; 0xf2cf8 ata.c:1024
jmp near 02eddh ; e9 df 01 ; 0xf2cfb
xor dh, dh ; 30 f6 ; 0xf2cfe ata.c:1027
imul dx, dx, strict byte 00006h ; 6b d2 06 ; 0xf2d00
mov es, [bp-010h] ; 8e 46 f0 ; 0xf2d03
mov si, bx ; 89 de ; 0xf2d06
add si, dx ; 01 d6 ; 0xf2d08
mov dx, word [es:si+0027ah] ; 26 8b 94 7a 02 ; 0xf2d0a
mov word [bp-00ch], dx ; 89 56 f4 ; 0xf2d0f
mov dx, word [es:si+0027ch] ; 26 8b 94 7c 02 ; 0xf2d12 ata.c:1028
mov word [bp-00eh], dx ; 89 56 f2 ; 0xf2d17
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf2d1a ata.c:1029
mov si, bx ; 89 de ; 0xf2d1d
add si, ax ; 01 c6 ; 0xf2d1f
mov al, byte [es:si+022h] ; 26 8a 44 22 ; 0xf2d21
mov byte [bp-008h], al ; 88 46 f8 ; 0xf2d25
xor ax, ax ; 31 c0 ; 0xf2d28 ata.c:1030
mov word [bp-014h], ax ; 89 46 ec ; 0xf2d2a
mov word [bp-012h], ax ; 89 46 ee ; 0xf2d2d
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf2d30 ata.c:1032
cmp AL, strict byte 00ch ; 3c 0c ; 0xf2d33
jnc short 02d3dh ; 73 06 ; 0xf2d35
mov byte [bp-006h], 00ch ; c6 46 fa 0c ; 0xf2d37 ata.c:1033
jmp short 02d43h ; eb 06 ; 0xf2d3b
jbe short 02d43h ; 76 04 ; 0xf2d3d ata.c:1034
mov byte [bp-006h], 010h ; c6 46 fa 10 ; 0xf2d3f ata.c:1035
shr byte [bp-006h], 1 ; d0 6e fa ; 0xf2d43 ata.c:1036
mov es, [bp-010h] ; 8e 46 f0 ; 0xf2d46 ata.c:1040
db 066h, 026h, 0c7h, 047h, 018h, 000h, 000h, 000h, 000h
; mov dword [es:bx+018h], strict dword 000000000h ; 66 26 c7 47 18 00 00 00 00; 0xf2d49
mov word [es:bx+01ch], strict word 00000h ; 26 c7 47 1c 00 00 ; 0xf2d52 ata.c:1041
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2d58 ata.c:1043
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2d5b
in AL, DX ; ec ; 0xf2d5e
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2d5f
test AL, strict byte 080h ; a8 80 ; 0xf2d61 ata.c:1044
je short 02d6bh ; 74 06 ; 0xf2d63
mov dx, strict word 00002h ; ba 02 00 ; 0xf2d65 ata.c:1045
jmp near 02eddh ; e9 72 01 ; 0xf2d68
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf2d6b ata.c:1047
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2d6e
mov AL, strict byte 00ah ; b0 0a ; 0xf2d71
out DX, AL ; ee ; 0xf2d73
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2d74 ata.c:1051
add dx, strict byte 00004h ; 83 c2 04 ; 0xf2d77
mov AL, strict byte 0f0h ; b0 f0 ; 0xf2d7a
out DX, AL ; ee ; 0xf2d7c
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2d7d ata.c:1052
add dx, strict byte 00005h ; 83 c2 05 ; 0xf2d80
mov AL, strict byte 0ffh ; b0 ff ; 0xf2d83
out DX, AL ; ee ; 0xf2d85
cmp byte [bp-00ah], 000h ; 80 7e f6 00 ; 0xf2d86 ata.c:1053
je short 02d91h ; 74 05 ; 0xf2d8a
mov ax, 000b0h ; b8 b0 00 ; 0xf2d8c
jmp short 02d94h ; eb 03 ; 0xf2d8f
mov ax, 000a0h ; b8 a0 00 ; 0xf2d91
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2d94
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2d97
out DX, AL ; ee ; 0xf2d9a
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2d9b ata.c:1054
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2d9e
mov AL, strict byte 0a0h ; b0 a0 ; 0xf2da1
out DX, AL ; ee ; 0xf2da3
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2da4 ata.c:1058
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2da7
in AL, DX ; ec ; 0xf2daa
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2dab
mov dl, al ; 88 c2 ; 0xf2dad
test AL, strict byte 080h ; a8 80 ; 0xf2daf ata.c:1059
jne short 02da4h ; 75 f1 ; 0xf2db1
test AL, strict byte 001h ; a8 01 ; 0xf2db3 ata.c:1062
je short 02dc6h ; 74 0f ; 0xf2db5
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf2db7 ata.c:1065
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2dba
mov AL, strict byte 008h ; b0 08 ; 0xf2dbd
out DX, AL ; ee ; 0xf2dbf
mov dx, strict word 00003h ; ba 03 00 ; 0xf2dc0 ata.c:1066
jmp near 02eddh ; e9 17 01 ; 0xf2dc3
test dl, 008h ; f6 c2 08 ; 0xf2dc6 ata.c:1067
jne short 02ddah ; 75 0f ; 0xf2dc9
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf2dcb ata.c:1070
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2dce
mov AL, strict byte 008h ; b0 08 ; 0xf2dd1
out DX, AL ; ee ; 0xf2dd3
mov dx, strict word 00004h ; ba 04 00 ; 0xf2dd4 ata.c:1071
jmp near 02eddh ; e9 03 01 ; 0xf2dd7
sti ; fb ; 0xf2dda ata.c:1074
mov ax, di ; 89 f8 ; 0xf2ddb ata.c:1078
shr ax, 004h ; c1 e8 04 ; 0xf2ddd
add ax, cx ; 01 c8 ; 0xf2de0
mov si, di ; 89 fe ; 0xf2de2
and si, strict byte 0000fh ; 83 e6 0f ; 0xf2de4
movzx cx, byte [bp-006h] ; 0f b6 4e fa ; 0xf2de7 ata.c:1083
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2deb
mov es, ax ; 8e c0 ; 0xf2dee
db 0f3h, 026h, 06fh
; rep es outsw ; f3 26 6f ; 0xf2df0
cmp byte [bp+008h], 000h ; 80 7e 08 00 ; 0xf2df3 ata.c:1085
jne short 02e04h ; 75 0b ; 0xf2df7
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2df9 ata.c:1086
in AL, DX ; ec ; 0xf2dfc
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2dfd
mov dl, al ; 88 c2 ; 0xf2dff
jmp near 02ebeh ; e9 ba 00 ; 0xf2e01 ata.c:1088
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2e04 ata.c:1092
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2e07
in AL, DX ; ec ; 0xf2e0a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2e0b
mov dl, al ; 88 c2 ; 0xf2e0d
test AL, strict byte 080h ; a8 80 ; 0xf2e0f ata.c:1093
jne short 02e04h ; 75 f1 ; 0xf2e11
test AL, strict byte 088h ; a8 88 ; 0xf2e13 ata.c:1098
je near 02ebeh ; 0f 84 a5 00 ; 0xf2e15
test AL, strict byte 001h ; a8 01 ; 0xf2e19 ata.c:1101
je short 02e28h ; 74 0b ; 0xf2e1b
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf2e1d ata.c:1104
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2e20
mov AL, strict byte 008h ; b0 08 ; 0xf2e23
out DX, AL ; ee ; 0xf2e25
jmp short 02dc0h ; eb 98 ; 0xf2e26
mov al, dl ; 88 d0 ; 0xf2e28 ata.c:1109
and AL, strict byte 0c9h ; 24 c9 ; 0xf2e2a
cmp AL, strict byte 048h ; 3c 48 ; 0xf2e2c
je short 02e3bh ; 74 0b ; 0xf2e2e
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf2e30 ata.c:1113
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2e33
mov AL, strict byte 008h ; b0 08 ; 0xf2e36
out DX, AL ; ee ; 0xf2e38
jmp short 02dd4h ; eb 99 ; 0xf2e39
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf2e3b ata.c:1119
shr ax, 004h ; c1 e8 04 ; 0xf2e3e
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xf2e41
add dx, ax ; 01 c2 ; 0xf2e44
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf2e46
and ax, strict word 0000fh ; 25 0f 00 ; 0xf2e49
mov word [bp+00ah], ax ; 89 46 0a ; 0xf2e4c
mov word [bp+00ch], dx ; 89 56 0c ; 0xf2e4f
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2e52 ata.c:1124
add dx, strict byte 00005h ; 83 c2 05 ; 0xf2e55
in AL, DX ; ec ; 0xf2e58
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2e59
mov cx, ax ; 89 c1 ; 0xf2e5b
sal cx, 008h ; c1 e1 08 ; 0xf2e5d
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2e60
add dx, strict byte 00004h ; 83 c2 04 ; 0xf2e63
in AL, DX ; ec ; 0xf2e66
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2e67
add cx, ax ; 01 c1 ; 0xf2e69
mov si, cx ; 89 ce ; 0xf2e6b ata.c:1127
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf2e6d ata.c:1133
test cl, 003h ; f6 c1 03 ; 0xf2e70 ata.c:1134
je short 02e77h ; 74 02 ; 0xf2e73
xor al, al ; 30 c0 ; 0xf2e75 ata.c:1135
test cl, 001h ; f6 c1 01 ; 0xf2e77 ata.c:1138
je short 02e7dh ; 74 01 ; 0xf2e7a
inc cx ; 41 ; 0xf2e7c ata.c:1139
cmp AL, strict byte 001h ; 3c 01 ; 0xf2e7d ata.c:1143
jne short 02e86h ; 75 05 ; 0xf2e7f
shr cx, 002h ; c1 e9 02 ; 0xf2e81 ata.c:1144
jmp short 02e88h ; eb 02 ; 0xf2e84 ata.c:1145
shr cx, 1 ; d1 e9 ; 0xf2e86 ata.c:1148
cmp AL, strict byte 001h ; 3c 01 ; 0xf2e88 ata.c:1152
jne short 02e97h ; 75 0b ; 0xf2e8a
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2e8c ata.c:1153
les di, [bp+00ah] ; c4 7e 0a ; 0xf2e8f
db 0f3h, 066h, 06dh
; rep insd ; f3 66 6d ; 0xf2e92
jmp short 02e9fh ; eb 08 ; 0xf2e95 ata.c:1154
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf2e97 ata.c:1157
les di, [bp+00ah] ; c4 7e 0a ; 0xf2e9a
rep insw ; f3 6d ; 0xf2e9d
add word [bp+00ah], si ; 01 76 0a ; 0xf2e9f ata.c:1162
xor ax, ax ; 31 c0 ; 0xf2ea2 ata.c:1165
add word [bp-014h], si ; 01 76 ec ; 0xf2ea4
adc word [bp-012h], ax ; 11 46 ee ; 0xf2ea7
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf2eaa ata.c:1166
mov es, [bp-010h] ; 8e 46 f0 ; 0xf2ead
mov word [es:bx+01ah], ax ; 26 89 47 1a ; 0xf2eb0
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf2eb4
mov word [es:bx+01ch], ax ; 26 89 47 1c ; 0xf2eb7
jmp near 02e04h ; e9 46 ff ; 0xf2ebb ata.c:1167
mov al, dl ; 88 d0 ; 0xf2ebe ata.c:1171
and AL, strict byte 0e9h ; 24 e9 ; 0xf2ec0
cmp AL, strict byte 040h ; 3c 40 ; 0xf2ec2
je short 02ed2h ; 74 0c ; 0xf2ec4
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf2ec6 ata.c:1175
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2ec9
mov AL, strict byte 008h ; b0 08 ; 0xf2ecc
out DX, AL ; ee ; 0xf2ece
jmp near 02dd4h ; e9 02 ff ; 0xf2ecf
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf2ed2 ata.c:1180
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2ed5
mov AL, strict byte 008h ; b0 08 ; 0xf2ed8
out DX, AL ; ee ; 0xf2eda
xor dx, dx ; 31 d2 ; 0xf2edb ata.c:1181
mov ax, dx ; 89 d0 ; 0xf2edd ata.c:1182
lea sp, [bp-004h] ; 8d 66 fc ; 0xf2edf
pop di ; 5f ; 0xf2ee2
pop si ; 5e ; 0xf2ee3
pop bp ; 5d ; 0xf2ee4
retn 0000ah ; c2 0a 00 ; 0xf2ee5
; disGetNextSymbol 0xf2ee8 LB 0x7f34 -> off=0x0 cb=000000000000007a uValue=00000000000f18e8 'ata_soft_reset'
ata_soft_reset: ; 0xf2ee8 LB 0x7a
push bp ; 55 ; 0xf2ee8 ata.c:1190
mov bp, sp ; 89 e5 ; 0xf2ee9
push bx ; 53 ; 0xf2eeb
push cx ; 51 ; 0xf2eec
push dx ; 52 ; 0xf2eed
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf2eee ata.c:58
mov dx, strict word 00040h ; ba 40 00 ; 0xf2ef1
mov es, dx ; 8e c2 ; 0xf2ef4
mov es, [es:bx] ; 26 8e 07 ; 0xf2ef6
mov dx, ax ; 89 c2 ; 0xf2ef9 ata.c:1199
shr dx, 1 ; d1 ea ; 0xf2efb
mov ah, al ; 88 c4 ; 0xf2efd ata.c:1200
and ah, 001h ; 80 e4 01 ; 0xf2eff
movzx bx, dl ; 0f b6 da ; 0xf2f02 ata.c:1202
imul bx, bx, strict byte 00006h ; 6b db 06 ; 0xf2f05
add bx, strict byte 0005eh ; 83 c3 5e ; 0xf2f08
mov cx, word [es:bx+0027ah] ; 26 8b 8f 7a 02 ; 0xf2f0b
mov bx, word [es:bx+0027ch] ; 26 8b 9f 7c 02 ; 0xf2f10 ata.c:1203
lea dx, [bx+006h] ; 8d 57 06 ; 0xf2f15 ata.c:1206
mov AL, strict byte 00ah ; b0 0a ; 0xf2f18
out DX, AL ; ee ; 0xf2f1a
test ah, ah ; 84 e4 ; 0xf2f1b ata.c:1207
je short 02f24h ; 74 05 ; 0xf2f1d
mov ax, 000b0h ; b8 b0 00 ; 0xf2f1f
jmp short 02f27h ; eb 03 ; 0xf2f22
mov ax, 000a0h ; b8 a0 00 ; 0xf2f24
mov dx, cx ; 89 ca ; 0xf2f27
add dx, strict byte 00006h ; 83 c2 06 ; 0xf2f29
out DX, AL ; ee ; 0xf2f2c
mov dx, cx ; 89 ca ; 0xf2f2d ata.c:1208
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2f2f
mov AL, strict byte 008h ; b0 08 ; 0xf2f32
out DX, AL ; ee ; 0xf2f34
mov dx, cx ; 89 ca ; 0xf2f35 ata.c:1212
add dx, strict byte 00007h ; 83 c2 07 ; 0xf2f37
in AL, DX ; ec ; 0xf2f3a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2f3b
test AL, strict byte 080h ; a8 80 ; 0xf2f3d ata.c:1213
jne short 02f35h ; 75 f4 ; 0xf2f3f
and AL, strict byte 0e9h ; 24 e9 ; 0xf2f41 ata.c:1217
cmp AL, strict byte 040h ; 3c 40 ; 0xf2f43
je short 02f52h ; 74 0b ; 0xf2f45
lea dx, [bx+006h] ; 8d 57 06 ; 0xf2f47 ata.c:1221
mov AL, strict byte 008h ; b0 08 ; 0xf2f4a
out DX, AL ; ee ; 0xf2f4c
mov ax, strict word 00001h ; b8 01 00 ; 0xf2f4d ata.c:1222
jmp short 02f5ah ; eb 08 ; 0xf2f50
lea dx, [bx+006h] ; 8d 57 06 ; 0xf2f52 ata.c:1226
mov AL, strict byte 008h ; b0 08 ; 0xf2f55
out DX, AL ; ee ; 0xf2f57
xor ax, ax ; 31 c0 ; 0xf2f58 ata.c:1227
lea sp, [bp-006h] ; 8d 66 fa ; 0xf2f5a ata.c:1228
pop dx ; 5a ; 0xf2f5d
pop cx ; 59 ; 0xf2f5e
pop bx ; 5b ; 0xf2f5f
pop bp ; 5d ; 0xf2f60
retn ; c3 ; 0xf2f61
; disGetNextSymbol 0xf2f62 LB 0x7eba -> off=0x0 cb=000000000000002a uValue=00000000000f1962 'set_diskette_current_cyl'
set_diskette_current_cyl: ; 0xf2f62 LB 0x2a
push bp ; 55 ; 0xf2f62 floppy.c:81
mov bp, sp ; 89 e5 ; 0xf2f63
push bx ; 53 ; 0xf2f65
mov dh, al ; 88 c6 ; 0xf2f66
cmp AL, strict byte 001h ; 3c 01 ; 0xf2f68 floppy.c:83
jbe short 02f77h ; 76 0b ; 0xf2f6a
push 002d2h ; 68 d2 02 ; 0xf2f6c floppy.c:84
push strict byte 00007h ; 6a 07 ; 0xf2f6f
call 01a68h ; e8 f4 ea ; 0xf2f71
add sp, strict byte 00004h ; 83 c4 04 ; 0xf2f74
movzx bx, dh ; 0f b6 de ; 0xf2f77 floppy.c:85
add bx, 00094h ; 81 c3 94 00 ; 0xf2f7a
mov ax, strict word 00040h ; b8 40 00 ; 0xf2f7e floppy.c:53
mov es, ax ; 8e c0 ; 0xf2f81
mov byte [es:bx], dl ; 26 88 17 ; 0xf2f83
lea sp, [bp-002h] ; 8d 66 fe ; 0xf2f86 floppy.c:86
pop bx ; 5b ; 0xf2f89
pop bp ; 5d ; 0xf2f8a
retn ; c3 ; 0xf2f8b
; disGetNextSymbol 0xf2f8c LB 0x7e90 -> off=0x0 cb=0000000000000023 uValue=00000000000f198c 'floppy_wait_for_interrupt'
floppy_wait_for_interrupt: ; 0xf2f8c LB 0x23
push bp ; 55 ; 0xf2f8c floppy.c:106
mov bp, sp ; 89 e5 ; 0xf2f8d
push bx ; 53 ; 0xf2f8f
cli ; fa ; 0xf2f90 floppy.c:108
mov bx, strict word 0003eh ; bb 3e 00 ; 0xf2f91 floppy.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf2f94
mov es, ax ; 8e c0 ; 0xf2f97
mov al, byte [es:bx] ; 26 8a 07 ; 0xf2f99
test AL, strict byte 080h ; a8 80 ; 0xf2f9c floppy.c:112
je short 02fa4h ; 74 04 ; 0xf2f9e
and AL, strict byte 080h ; 24 80 ; 0xf2fa0 floppy.c:113
jmp short 02fa9h ; eb 05 ; 0xf2fa2
sti ; fb ; 0xf2fa4 floppy.c:114
hlt ; f4 ; 0xf2fa5
cli ; fa ; 0xf2fa6
jmp short 02f91h ; eb e8 ; 0xf2fa7 floppy.c:115
lea sp, [bp-002h] ; 8d 66 fe ; 0xf2fa9 floppy.c:116
pop bx ; 5b ; 0xf2fac
pop bp ; 5d ; 0xf2fad
retn ; c3 ; 0xf2fae
; disGetNextSymbol 0xf2faf LB 0x7e6d -> off=0x0 cb=0000000000000038 uValue=00000000000f19af 'floppy_wait_for_interrupt_or_timeout'
floppy_wait_for_interrupt_or_timeout: ; 0xf2faf LB 0x38
push bp ; 55 ; 0xf2faf floppy.c:126
mov bp, sp ; 89 e5 ; 0xf2fb0
push bx ; 53 ; 0xf2fb2
cli ; fa ; 0xf2fb3 floppy.c:128
mov bx, strict word 00040h ; bb 40 00 ; 0xf2fb4 floppy.c:48
mov es, bx ; 8e c3 ; 0xf2fb7
mov al, byte [es:bx] ; 26 8a 07 ; 0xf2fb9
test al, al ; 84 c0 ; 0xf2fbc floppy.c:132
jne short 02fc3h ; 75 03 ; 0xf2fbe
sti ; fb ; 0xf2fc0 floppy.c:133
jmp short 02fe1h ; eb 1e ; 0xf2fc1 floppy.c:134
mov bx, strict word 0003eh ; bb 3e 00 ; 0xf2fc3 floppy.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf2fc6
mov es, ax ; 8e c0 ; 0xf2fc9
mov al, byte [es:bx] ; 26 8a 07 ; 0xf2fcb
test AL, strict byte 080h ; a8 80 ; 0xf2fce floppy.c:138
je short 02fdch ; 74 0a ; 0xf2fd0
mov ah, al ; 88 c4 ; 0xf2fd2 floppy.c:139
and ah, 07fh ; 80 e4 7f ; 0xf2fd4
mov byte [es:bx], ah ; 26 88 27 ; 0xf2fd7 floppy.c:53
jmp short 02fe1h ; eb 05 ; 0xf2fda floppy.c:140
sti ; fb ; 0xf2fdc floppy.c:142
hlt ; f4 ; 0xf2fdd
cli ; fa ; 0xf2fde
jmp short 02fb4h ; eb d3 ; 0xf2fdf floppy.c:143
lea sp, [bp-002h] ; 8d 66 fe ; 0xf2fe1 floppy.c:144
pop bx ; 5b ; 0xf2fe4
pop bp ; 5d ; 0xf2fe5
retn ; c3 ; 0xf2fe6
; disGetNextSymbol 0xf2fe7 LB 0x7e35 -> off=0x0 cb=0000000000000042 uValue=00000000000f19e7 'floppy_reset_controller'
floppy_reset_controller: ; 0xf2fe7 LB 0x42
push bp ; 55 ; 0xf2fe7 floppy.c:148
mov bp, sp ; 89 e5 ; 0xf2fe8
push bx ; 53 ; 0xf2fea
push cx ; 51 ; 0xf2feb
push dx ; 52 ; 0xf2fec
mov cx, ax ; 89 c1 ; 0xf2fed
mov dx, 003f2h ; ba f2 03 ; 0xf2fef floppy.c:153
in AL, DX ; ec ; 0xf2ff2
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf2ff3
mov bx, ax ; 89 c3 ; 0xf2ff5
movzx ax, bl ; 0f b6 c3 ; 0xf2ff7 floppy.c:154
and AL, strict byte 0fbh ; 24 fb ; 0xf2ffa
out DX, AL ; ee ; 0xf2ffc
mov al, bl ; 88 d8 ; 0xf2ffd floppy.c:155
or AL, strict byte 004h ; 0c 04 ; 0xf2fff
out DX, AL ; ee ; 0xf3001
mov dx, 003f4h ; ba f4 03 ; 0xf3002 floppy.c:159
in AL, DX ; ec ; 0xf3005
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf3006
and AL, strict byte 0c0h ; 24 c0 ; 0xf3008 floppy.c:160
cmp AL, strict byte 080h ; 3c 80 ; 0xf300a
jne short 03002h ; 75 f4 ; 0xf300c
mov bx, cx ; 89 cb ; 0xf300e floppy.c:163
add bx, 00090h ; 81 c3 90 00 ; 0xf3010
mov ax, strict word 00040h ; b8 40 00 ; 0xf3014 floppy.c:48
mov es, ax ; 8e c0 ; 0xf3017
mov al, byte [es:bx] ; 26 8a 07 ; 0xf3019
and AL, strict byte 0efh ; 24 ef ; 0xf301c floppy.c:164
mov byte [es:bx], al ; 26 88 07 ; 0xf301e floppy.c:53
lea sp, [bp-006h] ; 8d 66 fa ; 0xf3021 floppy.c:167
pop dx ; 5a ; 0xf3024
pop cx ; 59 ; 0xf3025
pop bx ; 5b ; 0xf3026
pop bp ; 5d ; 0xf3027
retn ; c3 ; 0xf3028
; disGetNextSymbol 0xf3029 LB 0x7df3 -> off=0x0 cb=0000000000000074 uValue=00000000000f1a29 'floppy_prepare_controller'
floppy_prepare_controller: ; 0xf3029 LB 0x74
push bp ; 55 ; 0xf3029 floppy.c:169
mov bp, sp ; 89 e5 ; 0xf302a
push bx ; 53 ; 0xf302c
push cx ; 51 ; 0xf302d
push dx ; 52 ; 0xf302e
push ax ; 50 ; 0xf302f
mov cx, ax ; 89 c1 ; 0xf3030
mov bx, strict word 0003eh ; bb 3e 00 ; 0xf3032 floppy.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf3035
mov es, ax ; 8e c0 ; 0xf3038
mov al, byte [es:bx] ; 26 8a 07 ; 0xf303a
and AL, strict byte 07fh ; 24 7f ; 0xf303d floppy.c:175
mov byte [es:bx], al ; 26 88 07 ; 0xf303f floppy.c:53
mov dx, 003f2h ; ba f2 03 ; 0xf3042 floppy.c:179
in AL, DX ; ec ; 0xf3045
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf3046
and AL, strict byte 004h ; 24 04 ; 0xf3048
mov byte [bp-008h], al ; 88 46 f8 ; 0xf304a
test cx, cx ; 85 c9 ; 0xf304d floppy.c:180
je short 03055h ; 74 04 ; 0xf304f
mov AL, strict byte 020h ; b0 20 ; 0xf3051 floppy.c:181
jmp short 03057h ; eb 02 ; 0xf3053 floppy.c:182
mov AL, strict byte 010h ; b0 10 ; 0xf3055 floppy.c:183
or AL, strict byte 00ch ; 0c 0c ; 0xf3057 floppy.c:184
or al, cl ; 08 c8 ; 0xf3059 floppy.c:185
mov dx, 003f2h ; ba f2 03 ; 0xf305b floppy.c:186
out DX, AL ; ee ; 0xf305e
mov bx, strict word 00040h ; bb 40 00 ; 0xf305f floppy.c:53
mov es, bx ; 8e c3 ; 0xf3062
mov byte [es:bx], 025h ; 26 c6 07 25 ; 0xf3064
mov bx, 0008bh ; bb 8b 00 ; 0xf3068 floppy.c:48
mov al, byte [es:bx] ; 26 8a 07 ; 0xf306b
shr al, 006h ; c0 e8 06 ; 0xf306e floppy.c:193
mov dx, 003f7h ; ba f7 03 ; 0xf3071 floppy.c:194
out DX, AL ; ee ; 0xf3074
mov dx, 003f4h ; ba f4 03 ; 0xf3075 floppy.c:198
in AL, DX ; ec ; 0xf3078
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf3079
and AL, strict byte 0c0h ; 24 c0 ; 0xf307b floppy.c:199
cmp AL, strict byte 080h ; 3c 80 ; 0xf307d
jne short 03075h ; 75 f4 ; 0xf307f
cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xf3081 floppy.c:201
jne short 03095h ; 75 0e ; 0xf3085
call 02f8ch ; e8 02 ff ; 0xf3087 floppy.c:212
mov bx, strict word 0003eh ; bb 3e 00 ; 0xf308a floppy.c:53
mov dx, strict word 00040h ; ba 40 00 ; 0xf308d
mov es, dx ; 8e c2 ; 0xf3090
mov byte [es:bx], al ; 26 88 07 ; 0xf3092
lea sp, [bp-006h] ; 8d 66 fa ; 0xf3095 floppy.c:216
pop dx ; 5a ; 0xf3098
pop cx ; 59 ; 0xf3099
pop bx ; 5b ; 0xf309a
pop bp ; 5d ; 0xf309b
retn ; c3 ; 0xf309c
; disGetNextSymbol 0xf309d LB 0x7d7f -> off=0x0 cb=0000000000000049 uValue=00000000000f1a9d 'floppy_media_known'
floppy_media_known: ; 0xf309d LB 0x49
push bx ; 53 ; 0xf309d floppy.c:218
push dx ; 52 ; 0xf309e
push bp ; 55 ; 0xf309f
mov bp, sp ; 89 e5 ; 0xf30a0
mov bx, strict word 0003eh ; bb 3e 00 ; 0xf30a2 floppy.c:48
mov dx, strict word 00040h ; ba 40 00 ; 0xf30a5
mov es, dx ; 8e c2 ; 0xf30a8
mov bh, byte [es:bx] ; 26 8a 3f ; 0xf30aa
mov bl, bh ; 88 fb ; 0xf30ad floppy.c:49
test ax, ax ; 85 c0 ; 0xf30af floppy.c:224
je short 030b5h ; 74 02 ; 0xf30b1
shr bl, 1 ; d0 eb ; 0xf30b3 floppy.c:225
and bl, 001h ; 80 e3 01 ; 0xf30b5 floppy.c:226
jne short 030beh ; 75 04 ; 0xf30b8 floppy.c:227
xor bh, bh ; 30 ff ; 0xf30ba floppy.c:228
jmp short 030e0h ; eb 22 ; 0xf30bc
mov bx, 00090h ; bb 90 00 ; 0xf30be floppy.c:230
test ax, ax ; 85 c0 ; 0xf30c1 floppy.c:231
je short 030c8h ; 74 03 ; 0xf30c3
mov bx, 00091h ; bb 91 00 ; 0xf30c5 floppy.c:232
mov ax, strict word 00040h ; b8 40 00 ; 0xf30c8 floppy.c:48
mov es, ax ; 8e c0 ; 0xf30cb
mov al, byte [es:bx] ; 26 8a 07 ; 0xf30cd
xor ah, ah ; 30 e4 ; 0xf30d0 floppy.c:235
sar ax, 004h ; c1 f8 04 ; 0xf30d2
and AL, strict byte 001h ; 24 01 ; 0xf30d5
jne short 030ddh ; 75 04 ; 0xf30d7 floppy.c:236
xor bx, bx ; 31 db ; 0xf30d9 floppy.c:237
jmp short 030e0h ; eb 03 ; 0xf30db
mov bx, strict word 00001h ; bb 01 00 ; 0xf30dd floppy.c:240
mov ax, bx ; 89 d8 ; 0xf30e0 floppy.c:241
pop bp ; 5d ; 0xf30e2
pop dx ; 5a ; 0xf30e3
pop bx ; 5b ; 0xf30e4
retn ; c3 ; 0xf30e5
; disGetNextSymbol 0xf30e6 LB 0x7d36 -> off=0x0 cb=000000000000004e uValue=00000000000f1ae6 'floppy_read_id'
floppy_read_id: ; 0xf30e6 LB 0x4e
push bp ; 55 ; 0xf30e6 floppy.c:243
mov bp, sp ; 89 e5 ; 0xf30e7
push bx ; 53 ; 0xf30e9
push dx ; 52 ; 0xf30ea
push si ; 56 ; 0xf30eb
mov bx, ax ; 89 c3 ; 0xf30ec
call 03029h ; e8 38 ff ; 0xf30ee floppy.c:250
mov AL, strict byte 04ah ; b0 4a ; 0xf30f1 floppy.c:253
mov dx, 003f5h ; ba f5 03 ; 0xf30f3
out DX, AL ; ee ; 0xf30f6
mov al, bl ; 88 d8 ; 0xf30f7 floppy.c:254
out DX, AL ; ee ; 0xf30f9
call 02f8ch ; e8 8f fe ; 0xf30fa floppy.c:269
xor bx, bx ; 31 db ; 0xf30fd floppy.c:273
jmp short 03106h ; eb 05 ; 0xf30ff
cmp bx, strict byte 00007h ; 83 fb 07 ; 0xf3101
jnl short 0311ah ; 7d 14 ; 0xf3104
mov dx, 003f5h ; ba f5 03 ; 0xf3106 floppy.c:274
in AL, DX ; ec ; 0xf3109
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf310a
lea si, [bx+042h] ; 8d 77 42 ; 0xf310c
mov dx, strict word 00040h ; ba 40 00 ; 0xf310f floppy.c:53
mov es, dx ; 8e c2 ; 0xf3112
mov byte [es:si], al ; 26 88 04 ; 0xf3114
inc bx ; 43 ; 0xf3117 floppy.c:274
jmp short 03101h ; eb e7 ; 0xf3118
mov bx, strict word 00042h ; bb 42 00 ; 0xf311a floppy.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf311d
mov es, ax ; 8e c0 ; 0xf3120
mov al, byte [es:bx] ; 26 8a 07 ; 0xf3122
test AL, strict byte 0c0h ; a8 c0 ; 0xf3125 floppy.c:49
db 00fh, 094h, 0c0h
; sete al ; 0f 94 c0 ; 0xf3127
xor ah, ah ; 30 e4 ; 0xf312a
lea sp, [bp-006h] ; 8d 66 fa ; 0xf312c floppy.c:280
pop si ; 5e ; 0xf312f
pop dx ; 5a ; 0xf3130
pop bx ; 5b ; 0xf3131
pop bp ; 5d ; 0xf3132
retn ; c3 ; 0xf3133
; disGetNextSymbol 0xf3134 LB 0x7ce8 -> off=0x0 cb=0000000000000041 uValue=00000000000f1b34 'floppy_drive_recal'
floppy_drive_recal: ; 0xf3134 LB 0x41
push bp ; 55 ; 0xf3134 floppy.c:282
mov bp, sp ; 89 e5 ; 0xf3135
push bx ; 53 ; 0xf3137
push dx ; 52 ; 0xf3138
push si ; 56 ; 0xf3139
mov bx, ax ; 89 c3 ; 0xf313a
call 03029h ; e8 ea fe ; 0xf313c floppy.c:287
mov AL, strict byte 007h ; b0 07 ; 0xf313f floppy.c:290
mov dx, 003f5h ; ba f5 03 ; 0xf3141
out DX, AL ; ee ; 0xf3144
mov al, bl ; 88 d8 ; 0xf3145 floppy.c:291
out DX, AL ; ee ; 0xf3147
call 02f8ch ; e8 41 fe ; 0xf3148 floppy.c:310
test bx, bx ; 85 db ; 0xf314b floppy.c:314
je short 03156h ; 74 07 ; 0xf314d
or AL, strict byte 002h ; 0c 02 ; 0xf314f floppy.c:315
mov bx, 00095h ; bb 95 00 ; 0xf3151 floppy.c:316
jmp short 0315bh ; eb 05 ; 0xf3154 floppy.c:317
or AL, strict byte 001h ; 0c 01 ; 0xf3156 floppy.c:318
mov bx, 00094h ; bb 94 00 ; 0xf3158 floppy.c:319
mov si, strict word 0003eh ; be 3e 00 ; 0xf315b floppy.c:53
mov dx, strict word 00040h ; ba 40 00 ; 0xf315e
mov es, dx ; 8e c2 ; 0xf3161
mov byte [es:si], al ; 26 88 04 ; 0xf3163
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf3166 floppy.c:53
mov ax, strict word 00001h ; b8 01 00 ; 0xf316a floppy.c:325
lea sp, [bp-006h] ; 8d 66 fa ; 0xf316d
pop si ; 5e ; 0xf3170
pop dx ; 5a ; 0xf3171
pop bx ; 5b ; 0xf3172
pop bp ; 5d ; 0xf3173
retn ; c3 ; 0xf3174
; disGetNextSymbol 0xf3175 LB 0x7ca7 -> off=0x0 cb=00000000000000e4 uValue=00000000000f1b75 'floppy_media_sense'
floppy_media_sense: ; 0xf3175 LB 0xe4
push bp ; 55 ; 0xf3175 floppy.c:328
mov bp, sp ; 89 e5 ; 0xf3176
push bx ; 53 ; 0xf3178
push cx ; 51 ; 0xf3179
push dx ; 52 ; 0xf317a
push si ; 56 ; 0xf317b
mov bx, ax ; 89 c3 ; 0xf317c
call 03134h ; e8 b3 ff ; 0xf317e floppy.c:334
test ax, ax ; 85 c0 ; 0xf3181
jne short 0318ah ; 75 05 ; 0xf3183
xor dx, dx ; 31 d2 ; 0xf3185 floppy.c:335
jmp near 0324eh ; e9 c4 00 ; 0xf3187
mov ax, strict word 00010h ; b8 10 00 ; 0xf318a floppy.c:370
call 0176ah ; e8 da e5 ; 0xf318d
test bx, bx ; 85 db ; 0xf3190 floppy.c:371
jne short 0319bh ; 75 07 ; 0xf3192
mov dl, al ; 88 c2 ; 0xf3194 floppy.c:372
shr dl, 004h ; c0 ea 04 ; 0xf3196
jmp short 031a0h ; eb 05 ; 0xf3199 floppy.c:373
mov dl, al ; 88 c2 ; 0xf319b floppy.c:374
and dl, 00fh ; 80 e2 0f ; 0xf319d
cmp dl, 001h ; 80 fa 01 ; 0xf31a0 floppy.c:375
jne short 031aeh ; 75 09 ; 0xf31a3
xor dl, dl ; 30 d2 ; 0xf31a5 floppy.c:377
mov DH, strict byte 015h ; b6 15 ; 0xf31a7 floppy.c:378
mov cx, strict word 00001h ; b9 01 00 ; 0xf31a9 floppy.c:379
jmp short 031ech ; eb 3e ; 0xf31ac floppy.c:381
cmp dl, 002h ; 80 fa 02 ; 0xf31ae
jne short 031b9h ; 75 06 ; 0xf31b1
xor dl, dl ; 30 d2 ; 0xf31b3 floppy.c:383
mov DH, strict byte 035h ; b6 35 ; 0xf31b5 floppy.c:384
jmp short 031a9h ; eb f0 ; 0xf31b7
cmp dl, 003h ; 80 fa 03 ; 0xf31b9 floppy.c:387
jne short 031c4h ; 75 06 ; 0xf31bc
xor dl, dl ; 30 d2 ; 0xf31be floppy.c:389
mov DH, strict byte 017h ; b6 17 ; 0xf31c0 floppy.c:390
jmp short 031a9h ; eb e5 ; 0xf31c2
cmp dl, 004h ; 80 fa 04 ; 0xf31c4 floppy.c:393
jne short 031cfh ; 75 06 ; 0xf31c7
xor dl, dl ; 30 d2 ; 0xf31c9 floppy.c:395
mov DH, strict byte 017h ; b6 17 ; 0xf31cb floppy.c:396
jmp short 031a9h ; eb da ; 0xf31cd
cmp dl, 005h ; 80 fa 05 ; 0xf31cf floppy.c:399
jne short 031dah ; 75 06 ; 0xf31d2
mov DL, strict byte 0cch ; b2 cc ; 0xf31d4 floppy.c:401
mov DH, strict byte 0d7h ; b6 d7 ; 0xf31d6 floppy.c:402
jmp short 031a9h ; eb cf ; 0xf31d8
cmp dl, 00eh ; 80 fa 0e ; 0xf31da floppy.c:406
je short 031e4h ; 74 05 ; 0xf31dd
cmp dl, 00fh ; 80 fa 0f ; 0xf31df
jne short 031e6h ; 75 02 ; 0xf31e2
jmp short 031d4h ; eb ee ; 0xf31e4
xor dl, dl ; 30 d2 ; 0xf31e6 floppy.c:414
xor dh, dh ; 30 f6 ; 0xf31e8 floppy.c:415
xor cx, cx ; 31 c9 ; 0xf31ea floppy.c:416
mov si, 0008bh ; be 8b 00 ; 0xf31ec floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf31ef
mov es, ax ; 8e c0 ; 0xf31f2
mov byte [es:si], dl ; 26 88 14 ; 0xf31f4
mov ax, bx ; 89 d8 ; 0xf31f7 floppy.c:420
call 030e6h ; e8 ea fe ; 0xf31f9
test ax, ax ; 85 c0 ; 0xf31fc
jne short 03232h ; 75 32 ; 0xf31fe
mov al, dl ; 88 d0 ; 0xf3200 floppy.c:421
and AL, strict byte 0c0h ; 24 c0 ; 0xf3202
cmp AL, strict byte 080h ; 3c 80 ; 0xf3204
je short 03232h ; 74 2a ; 0xf3206
mov al, dl ; 88 d0 ; 0xf3208 floppy.c:425
and AL, strict byte 0c0h ; 24 c0 ; 0xf320a
cmp AL, strict byte 0c0h ; 3c c0 ; 0xf320c
je short 0321fh ; 74 0f ; 0xf320e
mov ah, dl ; 88 d4 ; 0xf3210
and ah, 03fh ; 80 e4 3f ; 0xf3212
cmp AL, strict byte 040h ; 3c 40 ; 0xf3215
je short 0322bh ; 74 12 ; 0xf3217
test al, al ; 84 c0 ; 0xf3219
je short 03224h ; 74 07 ; 0xf321b
jmp short 031ech ; eb cd ; 0xf321d
and dl, 03fh ; 80 e2 3f ; 0xf321f floppy.c:427
jmp short 031ech ; eb c8 ; 0xf3222 floppy.c:428
mov dl, ah ; 88 e2 ; 0xf3224 floppy.c:430
or dl, 040h ; 80 ca 40 ; 0xf3226
jmp short 031ech ; eb c1 ; 0xf3229 floppy.c:431
mov dl, ah ; 88 e2 ; 0xf322b floppy.c:433
or dl, 080h ; 80 ca 80 ; 0xf322d
jmp short 031ech ; eb ba ; 0xf3230 floppy.c:437
test bx, bx ; 85 db ; 0xf3232 floppy.c:439
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf3234
movzx bx, al ; 0f b6 d8 ; 0xf3237
add bx, 00090h ; 81 c3 90 00 ; 0xf323a
mov si, 0008bh ; be 8b 00 ; 0xf323e floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3241
mov es, ax ; 8e c0 ; 0xf3244
mov byte [es:si], dl ; 26 88 14 ; 0xf3246
mov byte [es:bx], dh ; 26 88 37 ; 0xf3249 floppy.c:53
mov dx, cx ; 89 ca ; 0xf324c floppy.c:446
mov ax, dx ; 89 d0 ; 0xf324e floppy.c:447
lea sp, [bp-008h] ; 8d 66 f8 ; 0xf3250
pop si ; 5e ; 0xf3253
pop dx ; 5a ; 0xf3254
pop cx ; 59 ; 0xf3255
pop bx ; 5b ; 0xf3256
pop bp ; 5d ; 0xf3257
retn ; c3 ; 0xf3258
; disGetNextSymbol 0xf3259 LB 0x7bc3 -> off=0x0 cb=0000000000000024 uValue=00000000000f1c59 'floppy_drive_exists'
floppy_drive_exists: ; 0xf3259 LB 0x24
push bp ; 55 ; 0xf3259 floppy.c:450
mov bp, sp ; 89 e5 ; 0xf325a
push dx ; 52 ; 0xf325c
mov dx, ax ; 89 c2 ; 0xf325d
mov ax, strict word 00010h ; b8 10 00 ; 0xf325f floppy.c:456
call 0176ah ; e8 05 e5 ; 0xf3262
test dx, dx ; 85 d2 ; 0xf3265 floppy.c:457
jne short 0326eh ; 75 05 ; 0xf3267
shr al, 004h ; c0 e8 04 ; 0xf3269 floppy.c:458
jmp short 03270h ; eb 02 ; 0xf326c floppy.c:459
and AL, strict byte 00fh ; 24 0f ; 0xf326e floppy.c:460
test al, al ; 84 c0 ; 0xf3270 floppy.c:461
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf3272
xor ah, ah ; 30 e4 ; 0xf3275
lea sp, [bp-002h] ; 8d 66 fe ; 0xf3277 floppy.c:462
pop dx ; 5a ; 0xf327a
pop bp ; 5d ; 0xf327b
retn ; c3 ; 0xf327c
; disGetNextSymbol 0xf327d LB 0x7b9f -> off=0x23 cb=0000000000000984 uValue=00000000000f1ca0 'int13_diskette_function'
db 018h, 017h, 016h, 015h, 008h, 005h, 004h, 003h, 002h, 001h, 000h, 001h, 03ch, 0e0h, 032h, 05dh
db 033h, 07dh, 033h, 07dh, 033h, 07dh, 033h, 0f8h, 036h, 0b6h, 038h, 0a6h, 039h, 0e8h, 039h, 01ch
db 03ah, 08eh, 03ah
int13_diskette_function: ; 0xf32a0 LB 0x984
push bp ; 55 ; 0xf32a0 floppy.c:477
mov bp, sp ; 89 e5 ; 0xf32a1
sub sp, strict byte 0000ch ; 83 ec 0c ; 0xf32a3
or byte [bp+01dh], 002h ; 80 4e 1d 02 ; 0xf32a6 floppy.c:488
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf32aa floppy.c:490
shr ax, 008h ; c1 e8 08 ; 0xf32ad
cmp ax, strict word 00018h ; 3d 18 00 ; 0xf32b0
jnbe near 03c01h ; 0f 87 4a 09 ; 0xf32b3
push CS ; 0e ; 0xf32b7
pop ES ; 07 ; 0xf32b8
mov cx, strict word 0000ch ; b9 0c 00 ; 0xf32b9
mov di, 0327dh ; bf 7d 32 ; 0xf32bc
repne scasb ; f2 ae ; 0xf32bf
sal cx, 1 ; d1 e1 ; 0xf32c1
mov di, cx ; 89 cf ; 0xf32c3
mov di, word [cs:di+03288h] ; 2e 8b bd 88 32 ; 0xf32c5
mov dx, word [bp+016h] ; 8b 56 16 ; 0xf32ca
xor dh, dh ; 30 f6 ; 0xf32cd
mov ah, byte [bp+00eh] ; 8a 66 0e ; 0xf32cf
mov cx, word [bp+01ch] ; 8b 4e 1c ; 0xf32d2
or cl, 001h ; 80 c9 01 ; 0xf32d5
mov si, dx ; 89 d6 ; 0xf32d8
or si, 00100h ; 81 ce 00 01 ; 0xf32da
jmp di ; ff e7 ; 0xf32de
mov bl, byte [bp+00eh] ; 8a 5e 0e ; 0xf32e0 floppy.c:493
cmp bl, 001h ; 80 fb 01 ; 0xf32e3 floppy.c:494
jbe short 03302h ; 76 1a ; 0xf32e6
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf32e8 floppy.c:495
xor ah, ah ; 30 e4 ; 0xf32eb
or ah, 001h ; 80 cc 01 ; 0xf32ed
mov word [bp+016h], ax ; 89 46 16 ; 0xf32f0
mov bx, strict word 00041h ; bb 41 00 ; 0xf32f3 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf32f6
mov es, ax ; 8e c0 ; 0xf32f9
mov byte [es:bx], 001h ; 26 c6 07 01 ; 0xf32fb
jmp near 03aeeh ; e9 ec 07 ; 0xf32ff
mov ax, strict word 00010h ; b8 10 00 ; 0xf3302 floppy.c:501
call 0176ah ; e8 62 e4 ; 0xf3305
test bl, bl ; 84 db ; 0xf3308 floppy.c:502
jne short 03313h ; 75 07 ; 0xf330a
mov dl, al ; 88 c2 ; 0xf330c floppy.c:503
shr dl, 004h ; c0 ea 04 ; 0xf330e
jmp short 03318h ; eb 05 ; 0xf3311 floppy.c:504
mov dl, al ; 88 c2 ; 0xf3313 floppy.c:505
and dl, 00fh ; 80 e2 0f ; 0xf3315
test dl, dl ; 84 d2 ; 0xf3318 floppy.c:506
jne short 03336h ; 75 1a ; 0xf331a
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf331c floppy.c:507
xor ah, ah ; 30 e4 ; 0xf331f
or ah, 080h ; 80 cc 80 ; 0xf3321
mov word [bp+016h], ax ; 89 46 16 ; 0xf3324
mov bx, strict word 00041h ; bb 41 00 ; 0xf3327 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf332a
mov es, ax ; 8e c0 ; 0xf332d
mov byte [es:bx], 080h ; 26 c6 07 80 ; 0xf332f
jmp near 03aeeh ; e9 b8 07 ; 0xf3333
mov si, strict word 0003eh ; be 3e 00 ; 0xf3336 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3339
mov es, ax ; 8e c0 ; 0xf333c
mov byte [es:si], 000h ; 26 c6 04 00 ; 0xf333e
xor al, al ; 30 c0 ; 0xf3342 floppy.c:516
mov byte [bp+017h], al ; 88 46 17 ; 0xf3344
mov si, strict word 00041h ; be 41 00 ; 0xf3347 floppy.c:53
mov byte [es:si], al ; 26 88 04 ; 0xf334a
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf334d floppy.c:518
movzx ax, bl ; 0f b6 c3 ; 0xf3351 floppy.c:519
xor dx, dx ; 31 d2 ; 0xf3354
call 02f62h ; e8 09 fc ; 0xf3356
mov sp, bp ; 89 ec ; 0xf3359 floppy.c:520
pop bp ; 5d ; 0xf335b
retn ; c3 ; 0xf335c
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf335d floppy.c:523
mov bx, 00441h ; bb 41 04 ; 0xf3361 floppy.c:48
xor ax, ax ; 31 c0 ; 0xf3364
mov es, ax ; 8e c0 ; 0xf3366
mov al, byte [es:bx] ; 26 8a 07 ; 0xf3368
movzx bx, al ; 0f b6 d8 ; 0xf336b floppy.c:525
sal bx, 008h ; c1 e3 08 ; 0xf336e
or dx, bx ; 09 da ; 0xf3371
mov word [bp+016h], dx ; 89 56 16 ; 0xf3373
test al, al ; 84 c0 ; 0xf3376 floppy.c:526
je short 03359h ; 74 df ; 0xf3378
jmp near 03aeeh ; e9 71 07 ; 0xf337a
mov bh, byte [bp+016h] ; 8a 7e 16 ; 0xf337d floppy.c:534
mov ax, word [bp+014h] ; 8b 46 14 ; 0xf3380 floppy.c:535
shr ax, 008h ; c1 e8 08 ; 0xf3383
mov byte [bp-002h], al ; 88 46 fe ; 0xf3386
mov al, byte [bp+014h] ; 8a 46 14 ; 0xf3389 floppy.c:536
mov byte [bp-006h], al ; 88 46 fa ; 0xf338c
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf338f floppy.c:537
shr ax, 008h ; c1 e8 08 ; 0xf3392
mov byte [bp-004h], al ; 88 46 fc ; 0xf3395
mov bl, byte [bp+00eh] ; 8a 5e 0e ; 0xf3398 floppy.c:538
cmp bl, 001h ; 80 fb 01 ; 0xf339b floppy.c:540
jnbe short 033adh ; 77 0d ; 0xf339e
cmp AL, strict byte 001h ; 3c 01 ; 0xf33a0
jnbe short 033adh ; 77 09 ; 0xf33a2
test bh, bh ; 84 ff ; 0xf33a4
je short 033adh ; 74 05 ; 0xf33a6
cmp bh, 048h ; 80 ff 48 ; 0xf33a8
jbe short 033e0h ; 76 33 ; 0xf33ab
mov bx, 00e16h ; bb 16 0e ; 0xf33ad floppy.c:542
mov cx, ds ; 8c d9 ; 0xf33b0
mov ax, strict word 00004h ; b8 04 00 ; 0xf33b2
call 01a27h ; e8 6f e6 ; 0xf33b5
push 002f7h ; 68 f7 02 ; 0xf33b8
push 0030fh ; 68 0f 03 ; 0xf33bb
push strict byte 00004h ; 6a 04 ; 0xf33be
call 01a68h ; e8 a5 e6 ; 0xf33c0
add sp, strict byte 00006h ; 83 c4 06 ; 0xf33c3
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf33c6 floppy.c:543
xor ah, ah ; 30 e4 ; 0xf33c9
or ah, 001h ; 80 cc 01 ; 0xf33cb
mov word [bp+016h], ax ; 89 46 16 ; 0xf33ce
mov bx, strict word 00041h ; bb 41 00 ; 0xf33d1 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf33d4
mov es, ax ; 8e c0 ; 0xf33d7
mov byte [es:bx], 001h ; 26 c6 07 01 ; 0xf33d9
jmp near 0346bh ; e9 8b 00 ; 0xf33dd
movzx ax, bl ; 0f b6 c3 ; 0xf33e0 floppy.c:545
call 03259h ; e8 73 fe ; 0xf33e3
test ax, ax ; 85 c0 ; 0xf33e6
je near 03502h ; 0f 84 16 01 ; 0xf33e8
movzx cx, bl ; 0f b6 cb ; 0xf33ec floppy.c:561
mov ax, cx ; 89 c8 ; 0xf33ef
call 0309dh ; e8 a9 fc ; 0xf33f1
test ax, ax ; 85 c0 ; 0xf33f4
jne short 0341ah ; 75 22 ; 0xf33f6
mov ax, cx ; 89 c8 ; 0xf33f8 floppy.c:562
call 03175h ; e8 78 fd ; 0xf33fa
test ax, ax ; 85 c0 ; 0xf33fd
jne short 0341ah ; 75 19 ; 0xf33ff
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3401 floppy.c:564
xor ah, ah ; 30 e4 ; 0xf3404
or ah, 00ch ; 80 cc 0c ; 0xf3406
mov word [bp+016h], ax ; 89 46 16 ; 0xf3409
mov bx, strict word 00041h ; bb 41 00 ; 0xf340c floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf340f
mov es, ax ; 8e c0 ; 0xf3412
mov byte [es:bx], 00ch ; 26 c6 07 0c ; 0xf3414
jmp short 0346bh ; eb 51 ; 0xf3418
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf341a floppy.c:572
shr ax, 008h ; c1 e8 08 ; 0xf341d
cmp ax, strict word 00002h ; 3d 02 00 ; 0xf3420
jne near 035b6h ; 0f 85 8f 01 ; 0xf3423
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf3427 floppy.c:583
shr dx, 00ch ; c1 ea 0c ; 0xf342a
mov ah, dl ; 88 d4 ; 0xf342d
mov cx, word [bp+006h] ; 8b 4e 06 ; 0xf342f floppy.c:584
sal cx, 004h ; c1 e1 04 ; 0xf3432
mov si, word [bp+010h] ; 8b 76 10 ; 0xf3435 floppy.c:585
add si, cx ; 01 ce ; 0xf3438
mov word [bp-008h], si ; 89 76 f8 ; 0xf343a
cmp cx, si ; 39 f1 ; 0xf343d floppy.c:587
jbe short 03443h ; 76 02 ; 0xf343f
db 0feh, 0c4h
; inc ah ; fe c4 ; 0xf3441 floppy.c:589
movzx cx, bh ; 0f b6 cf ; 0xf3443 floppy.c:591
sal cx, 009h ; c1 e1 09 ; 0xf3446
dec cx ; 49 ; 0xf3449
mov dx, word [bp-008h] ; 8b 56 f8 ; 0xf344a floppy.c:594
add dx, cx ; 01 ca ; 0xf344d
cmp dx, word [bp-008h] ; 3b 56 f8 ; 0xf344f floppy.c:595
jnc short 03472h ; 73 1e ; 0xf3452
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3454 floppy.c:596
xor ah, ah ; 30 e4 ; 0xf3457
or ah, 009h ; 80 cc 09 ; 0xf3459
mov word [bp+016h], ax ; 89 46 16 ; 0xf345c
mov bx, strict word 00041h ; bb 41 00 ; 0xf345f floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3462
mov es, ax ; 8e c0 ; 0xf3465
mov byte [es:bx], 009h ; 26 c6 07 09 ; 0xf3467
mov byte [bp+016h], 000h ; c6 46 16 00 ; 0xf346b
jmp near 03aeeh ; e9 7c 06 ; 0xf346f
mov AL, strict byte 006h ; b0 06 ; 0xf3472 floppy.c:604
mov dx, strict word 0000ah ; ba 0a 00 ; 0xf3474
out DX, AL ; ee ; 0xf3477
xor al, al ; 30 c0 ; 0xf3478 floppy.c:607
mov dx, strict word 0000ch ; ba 0c 00 ; 0xf347a
out DX, AL ; ee ; 0xf347d
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf347e floppy.c:608
mov dx, strict word 00004h ; ba 04 00 ; 0xf3481
out DX, AL ; ee ; 0xf3484
mov dx, word [bp-008h] ; 8b 56 f8 ; 0xf3485 floppy.c:609
shr dx, 008h ; c1 ea 08 ; 0xf3488
mov al, dl ; 88 d0 ; 0xf348b
mov dx, strict word 00004h ; ba 04 00 ; 0xf348d
out DX, AL ; ee ; 0xf3490
xor al, al ; 30 c0 ; 0xf3491 floppy.c:611
mov dx, strict word 0000ch ; ba 0c 00 ; 0xf3493
out DX, AL ; ee ; 0xf3496
mov al, cl ; 88 c8 ; 0xf3497 floppy.c:612
mov dx, strict word 00005h ; ba 05 00 ; 0xf3499
out DX, AL ; ee ; 0xf349c
shr cx, 008h ; c1 e9 08 ; 0xf349d floppy.c:613
mov al, cl ; 88 c8 ; 0xf34a0
out DX, AL ; ee ; 0xf34a2
mov AL, strict byte 046h ; b0 46 ; 0xf34a3 floppy.c:621
mov dx, strict word 0000bh ; ba 0b 00 ; 0xf34a5
out DX, AL ; ee ; 0xf34a8
mov al, ah ; 88 e0 ; 0xf34a9 floppy.c:625
mov dx, 00081h ; ba 81 00 ; 0xf34ab
out DX, AL ; ee ; 0xf34ae
mov AL, strict byte 002h ; b0 02 ; 0xf34af floppy.c:628
mov dx, strict word 0000ah ; ba 0a 00 ; 0xf34b1
out DX, AL ; ee ; 0xf34b4
movzx cx, bl ; 0f b6 cb ; 0xf34b5 floppy.c:633
mov ax, cx ; 89 c8 ; 0xf34b8
call 03029h ; e8 6c fb ; 0xf34ba
mov AL, strict byte 0e6h ; b0 e6 ; 0xf34bd floppy.c:636
mov dx, 003f5h ; ba f5 03 ; 0xf34bf
out DX, AL ; ee ; 0xf34c2
movzx dx, byte [bp-004h] ; 0f b6 56 fc ; 0xf34c3 floppy.c:637
sal dx, 002h ; c1 e2 02 ; 0xf34c7
movzx ax, bl ; 0f b6 c3 ; 0xf34ca
or ax, dx ; 09 d0 ; 0xf34cd
mov dx, 003f5h ; ba f5 03 ; 0xf34cf
out DX, AL ; ee ; 0xf34d2
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf34d3 floppy.c:638
out DX, AL ; ee ; 0xf34d6
mov al, byte [bp-004h] ; 8a 46 fc ; 0xf34d7 floppy.c:639
out DX, AL ; ee ; 0xf34da
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf34db floppy.c:640
out DX, AL ; ee ; 0xf34de
mov AL, strict byte 002h ; b0 02 ; 0xf34df floppy.c:641
out DX, AL ; ee ; 0xf34e1
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf34e2 floppy.c:642
movzx dx, bh ; 0f b6 d7 ; 0xf34e6
add ax, dx ; 01 d0 ; 0xf34e9
dec ax ; 48 ; 0xf34eb
mov dx, 003f5h ; ba f5 03 ; 0xf34ec
out DX, AL ; ee ; 0xf34ef
xor al, al ; 30 c0 ; 0xf34f0 floppy.c:643
out DX, AL ; ee ; 0xf34f2
mov AL, strict byte 0ffh ; b0 ff ; 0xf34f3 floppy.c:644
out DX, AL ; ee ; 0xf34f5
call 02fafh ; e8 b6 fa ; 0xf34f6 floppy.c:676
test al, al ; 84 c0 ; 0xf34f9 floppy.c:677
jne short 0351ch ; 75 1f ; 0xf34fb
mov ax, cx ; 89 c8 ; 0xf34fd floppy.c:679
call 02fe7h ; e8 e5 fa ; 0xf34ff
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3502 floppy.c:78
xor ah, ah ; 30 e4 ; 0xf3505
or ah, 080h ; 80 cc 80 ; 0xf3507
mov word [bp+016h], ax ; 89 46 16 ; 0xf350a
mov bx, strict word 00041h ; bb 41 00 ; 0xf350d
mov ax, strict word 00040h ; b8 40 00 ; 0xf3510
mov es, ax ; 8e c0 ; 0xf3513
mov byte [es:bx], 080h ; 26 c6 07 80 ; 0xf3515
jmp near 0346bh ; e9 4f ff ; 0xf3519
mov dx, 003f4h ; ba f4 03 ; 0xf351c floppy.c:689
in AL, DX ; ec ; 0xf351f
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf3520
and AL, strict byte 0c0h ; 24 c0 ; 0xf3522 floppy.c:690
cmp AL, strict byte 0c0h ; 3c c0 ; 0xf3524
je short 03536h ; 74 0e ; 0xf3526
push 002f7h ; 68 f7 02 ; 0xf3528 floppy.c:691
push 0032ah ; 68 2a 03 ; 0xf352b
push strict byte 00007h ; 6a 07 ; 0xf352e
call 01a68h ; e8 35 e5 ; 0xf3530
add sp, strict byte 00006h ; 83 c4 06 ; 0xf3533
xor cx, cx ; 31 c9 ; 0xf3536 floppy.c:694
jmp short 0353fh ; eb 05 ; 0xf3538
cmp cx, strict byte 00007h ; 83 f9 07 ; 0xf353a
jnl short 03555h ; 7d 16 ; 0xf353d
mov dx, 003f5h ; ba f5 03 ; 0xf353f floppy.c:695
in AL, DX ; ec ; 0xf3542
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf3543
mov si, cx ; 89 ce ; 0xf3545
add si, strict byte 00042h ; 83 c6 42 ; 0xf3547
mov dx, strict word 00040h ; ba 40 00 ; 0xf354a floppy.c:53
mov es, dx ; 8e c2 ; 0xf354d
mov byte [es:si], al ; 26 88 04 ; 0xf354f
inc cx ; 41 ; 0xf3552 floppy.c:695
jmp short 0353ah ; eb e5 ; 0xf3553
mov si, strict word 00042h ; be 42 00 ; 0xf3555 floppy.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf3558
mov es, ax ; 8e c0 ; 0xf355b
mov al, byte [es:si] ; 26 8a 04 ; 0xf355d
test AL, strict byte 0c0h ; a8 c0 ; 0xf3560 floppy.c:49
je short 03584h ; 74 20 ; 0xf3562
movzx ax, bl ; 0f b6 c3 ; 0xf3564 floppy.c:699
call 02fe7h ; e8 7d fa ; 0xf3567
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf356a floppy.c:700
xor ah, ah ; 30 e4 ; 0xf356d
or ah, 020h ; 80 cc 20 ; 0xf356f
mov word [bp+016h], ax ; 89 46 16 ; 0xf3572
mov bx, strict word 00041h ; bb 41 00 ; 0xf3575 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3578
mov es, ax ; 8e c0 ; 0xf357b
mov byte [es:bx], 020h ; 26 c6 07 20 ; 0xf357d
jmp near 0346bh ; e9 e7 fe ; 0xf3581
movzx ax, bh ; 0f b6 c7 ; 0xf3584 floppy.c:708
sal ax, 009h ; c1 e0 09 ; 0xf3587
cwd ; 99 ; 0xf358a
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf358b
sar ax, 1 ; d1 f8 ; 0xf358d
mov si, word [bp+010h] ; 8b 76 10 ; 0xf358f
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf3592
mov di, si ; 89 f7 ; 0xf3595
mov cx, ax ; 89 c1 ; 0xf3597
mov es, dx ; 8e c2 ; 0xf3599
push DS ; 1e ; 0xf359b
mov ds, dx ; 8e da ; 0xf359c
rep movsw ; f3 a5 ; 0xf359e
pop DS ; 1f ; 0xf35a0
movzx dx, byte [bp-002h] ; 0f b6 56 fe ; 0xf35a1 floppy.c:712
movzx ax, bl ; 0f b6 c3 ; 0xf35a5
call 02f62h ; e8 b7 f9 ; 0xf35a8
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf35ab floppy.c:714
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf35af floppy.c:715
jmp near 03359h ; e9 a3 fd ; 0xf35b3 floppy.c:716
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf35b6 floppy.c:717
shr ax, 008h ; c1 e8 08 ; 0xf35b9
cmp ax, strict word 00003h ; 3d 03 00 ; 0xf35bc
jne near 036e3h ; 0f 85 20 01 ; 0xf35bf
mov cx, word [bp+006h] ; 8b 4e 06 ; 0xf35c3 floppy.c:728
shr cx, 00ch ; c1 e9 0c ; 0xf35c6
mov ah, cl ; 88 cc ; 0xf35c9
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf35cb floppy.c:729
sal dx, 004h ; c1 e2 04 ; 0xf35ce
mov si, word [bp+010h] ; 8b 76 10 ; 0xf35d1 floppy.c:730
add si, dx ; 01 d6 ; 0xf35d4
mov word [bp-008h], si ; 89 76 f8 ; 0xf35d6
cmp dx, si ; 39 f2 ; 0xf35d9 floppy.c:732
jbe short 035dfh ; 76 02 ; 0xf35db
db 0feh, 0c4h
; inc ah ; fe c4 ; 0xf35dd floppy.c:734
movzx cx, bh ; 0f b6 cf ; 0xf35df floppy.c:736
sal cx, 009h ; c1 e1 09 ; 0xf35e2
dec cx ; 49 ; 0xf35e5
mov dx, word [bp-008h] ; 8b 56 f8 ; 0xf35e6 floppy.c:739
add dx, cx ; 01 ca ; 0xf35e9
cmp dx, word [bp-008h] ; 3b 56 f8 ; 0xf35eb floppy.c:740
jc near 03454h ; 0f 82 62 fe ; 0xf35ee
mov AL, strict byte 006h ; b0 06 ; 0xf35f2 floppy.c:749
mov dx, strict word 0000ah ; ba 0a 00 ; 0xf35f4
out DX, AL ; ee ; 0xf35f7
xor al, al ; 30 c0 ; 0xf35f8 floppy.c:751
mov dx, strict word 0000ch ; ba 0c 00 ; 0xf35fa
out DX, AL ; ee ; 0xf35fd
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf35fe floppy.c:752
mov dx, strict word 00004h ; ba 04 00 ; 0xf3601
out DX, AL ; ee ; 0xf3604
mov dx, word [bp-008h] ; 8b 56 f8 ; 0xf3605 floppy.c:753
shr dx, 008h ; c1 ea 08 ; 0xf3608
mov al, dl ; 88 d0 ; 0xf360b
mov dx, strict word 00004h ; ba 04 00 ; 0xf360d
out DX, AL ; ee ; 0xf3610
xor al, al ; 30 c0 ; 0xf3611 floppy.c:754
mov dx, strict word 0000ch ; ba 0c 00 ; 0xf3613
out DX, AL ; ee ; 0xf3616
mov al, cl ; 88 c8 ; 0xf3617 floppy.c:755
mov dx, strict word 00005h ; ba 05 00 ; 0xf3619
out DX, AL ; ee ; 0xf361c
shr cx, 008h ; c1 e9 08 ; 0xf361d floppy.c:756
mov al, cl ; 88 c8 ; 0xf3620
out DX, AL ; ee ; 0xf3622
mov AL, strict byte 04ah ; b0 4a ; 0xf3623 floppy.c:763
mov dx, strict word 0000bh ; ba 0b 00 ; 0xf3625
out DX, AL ; ee ; 0xf3628
mov al, ah ; 88 e0 ; 0xf3629 floppy.c:766
mov dx, 00081h ; ba 81 00 ; 0xf362b
out DX, AL ; ee ; 0xf362e
mov AL, strict byte 002h ; b0 02 ; 0xf362f floppy.c:769
mov dx, strict word 0000ah ; ba 0a 00 ; 0xf3631
out DX, AL ; ee ; 0xf3634
movzx cx, bl ; 0f b6 cb ; 0xf3635 floppy.c:774
mov ax, cx ; 89 c8 ; 0xf3638
call 03029h ; e8 ec f9 ; 0xf363a
mov AL, strict byte 0c5h ; b0 c5 ; 0xf363d floppy.c:777
mov dx, 003f5h ; ba f5 03 ; 0xf363f
out DX, AL ; ee ; 0xf3642
movzx dx, byte [bp-004h] ; 0f b6 56 fc ; 0xf3643 floppy.c:778
sal dx, 002h ; c1 e2 02 ; 0xf3647
movzx ax, bl ; 0f b6 c3 ; 0xf364a
or ax, dx ; 09 d0 ; 0xf364d
mov dx, 003f5h ; ba f5 03 ; 0xf364f
out DX, AL ; ee ; 0xf3652
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf3653 floppy.c:779
out DX, AL ; ee ; 0xf3656
mov al, byte [bp-004h] ; 8a 46 fc ; 0xf3657 floppy.c:780
out DX, AL ; ee ; 0xf365a
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf365b floppy.c:781
out DX, AL ; ee ; 0xf365e
mov AL, strict byte 002h ; b0 02 ; 0xf365f floppy.c:782
out DX, AL ; ee ; 0xf3661
movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xf3662 floppy.c:783
movzx ax, bh ; 0f b6 c7 ; 0xf3666
add ax, dx ; 01 d0 ; 0xf3669
dec ax ; 48 ; 0xf366b
mov dx, 003f5h ; ba f5 03 ; 0xf366c
out DX, AL ; ee ; 0xf366f
xor al, al ; 30 c0 ; 0xf3670 floppy.c:784
out DX, AL ; ee ; 0xf3672
mov AL, strict byte 0ffh ; b0 ff ; 0xf3673 floppy.c:785
out DX, AL ; ee ; 0xf3675
call 02fafh ; e8 36 f9 ; 0xf3676 floppy.c:814
test al, al ; 84 c0 ; 0xf3679 floppy.c:815
je near 034fdh ; 0f 84 7e fe ; 0xf367b
mov dx, 003f4h ; ba f4 03 ; 0xf367f floppy.c:826
in AL, DX ; ec ; 0xf3682
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf3683
and AL, strict byte 0c0h ; 24 c0 ; 0xf3685 floppy.c:827
cmp AL, strict byte 0c0h ; 3c c0 ; 0xf3687
je short 03699h ; 74 0e ; 0xf3689
push 002f7h ; 68 f7 02 ; 0xf368b floppy.c:828
push 0032ah ; 68 2a 03 ; 0xf368e
push strict byte 00007h ; 6a 07 ; 0xf3691
call 01a68h ; e8 d2 e3 ; 0xf3693
add sp, strict byte 00006h ; 83 c4 06 ; 0xf3696
xor cx, cx ; 31 c9 ; 0xf3699 floppy.c:831
jmp short 036a2h ; eb 05 ; 0xf369b
cmp cx, strict byte 00007h ; 83 f9 07 ; 0xf369d
jnl short 036b8h ; 7d 16 ; 0xf36a0
mov dx, 003f5h ; ba f5 03 ; 0xf36a2 floppy.c:832
in AL, DX ; ec ; 0xf36a5
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf36a6
mov si, cx ; 89 ce ; 0xf36a8
add si, strict byte 00042h ; 83 c6 42 ; 0xf36aa
mov dx, strict word 00040h ; ba 40 00 ; 0xf36ad floppy.c:53
mov es, dx ; 8e c2 ; 0xf36b0
mov byte [es:si], al ; 26 88 04 ; 0xf36b2
inc cx ; 41 ; 0xf36b5 floppy.c:832
jmp short 0369dh ; eb e5 ; 0xf36b6
mov si, strict word 00042h ; be 42 00 ; 0xf36b8 floppy.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf36bb
mov es, ax ; 8e c0 ; 0xf36be
mov al, byte [es:si] ; 26 8a 04 ; 0xf36c0
test AL, strict byte 0c0h ; a8 c0 ; 0xf36c3 floppy.c:49
je near 035a1h ; 0f 84 d8 fe ; 0xf36c5
mov bx, strict word 00043h ; bb 43 00 ; 0xf36c9 floppy.c:48
mov al, byte [es:bx] ; 26 8a 07 ; 0xf36cc
test AL, strict byte 002h ; a8 02 ; 0xf36cf floppy.c:49
je short 036dbh ; 74 08 ; 0xf36d1
mov word [bp+016h], 00300h ; c7 46 16 00 03 ; 0xf36d3 floppy.c:839
jmp near 03aeeh ; e9 13 04 ; 0xf36d8
mov word [bp+016h], 00100h ; c7 46 16 00 01 ; 0xf36db floppy.c:842
jmp near 03aeeh ; e9 0b 04 ; 0xf36e0 floppy.c:843
movzx dx, byte [bp-002h] ; 0f b6 56 fe ; 0xf36e3 floppy.c:858
movzx ax, bl ; 0f b6 c3 ; 0xf36e7
call 02f62h ; e8 75 f8 ; 0xf36ea
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf36ed floppy.c:860
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf36f1 floppy.c:861
jmp near 03359h ; e9 61 fc ; 0xf36f5 floppy.c:862
mov bh, byte [bp+016h] ; 8a 7e 16 ; 0xf36f8 floppy.c:869
mov ax, word [bp+014h] ; 8b 46 14 ; 0xf36fb floppy.c:870
shr ax, 008h ; c1 e8 08 ; 0xf36fe
mov byte [bp-002h], al ; 88 46 fe ; 0xf3701
mov dx, word [bp+012h] ; 8b 56 12 ; 0xf3704 floppy.c:871
shr dx, 008h ; c1 ea 08 ; 0xf3707
mov byte [bp-004h], dl ; 88 56 fc ; 0xf370a
mov bl, byte [bp+00eh] ; 8a 5e 0e ; 0xf370d floppy.c:872
cmp bl, 001h ; 80 fb 01 ; 0xf3710 floppy.c:874
jnbe short 03727h ; 77 12 ; 0xf3713
cmp dl, 001h ; 80 fa 01 ; 0xf3715
jnbe short 03727h ; 77 0d ; 0xf3718
cmp AL, strict byte 04fh ; 3c 4f ; 0xf371a
jnbe short 03727h ; 77 09 ; 0xf371c
test bh, bh ; 84 ff ; 0xf371e
je short 03727h ; 74 05 ; 0xf3720
cmp bh, 012h ; 80 ff 12 ; 0xf3722
jbe short 03742h ; 76 1b ; 0xf3725
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3727 floppy.c:876
xor ah, ah ; 30 e4 ; 0xf372a
or ah, 001h ; 80 cc 01 ; 0xf372c
mov word [bp+016h], ax ; 89 46 16 ; 0xf372f
mov si, strict word 00041h ; be 41 00 ; 0xf3732 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3735
mov es, ax ; 8e c0 ; 0xf3738
mov byte [es:si], 001h ; 26 c6 04 01 ; 0xf373a
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf373e floppy.c:878
movzx ax, bl ; 0f b6 c3 ; 0xf3742 floppy.c:882
call 03259h ; e8 11 fb ; 0xf3745
test ax, ax ; 85 c0 ; 0xf3748
jne short 03766h ; 75 1a ; 0xf374a
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf374c floppy.c:883
xor ah, ah ; 30 e4 ; 0xf374f
or ah, 080h ; 80 cc 80 ; 0xf3751
mov word [bp+016h], ax ; 89 46 16 ; 0xf3754
mov bx, strict word 00041h ; bb 41 00 ; 0xf3757 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf375a
mov es, ax ; 8e c0 ; 0xf375d
mov byte [es:bx], 080h ; 26 c6 07 80 ; 0xf375f
jmp near 03aeeh ; e9 88 03 ; 0xf3763
movzx cx, bl ; 0f b6 cb ; 0xf3766 floppy.c:890
mov ax, cx ; 89 c8 ; 0xf3769
call 0309dh ; e8 2f f9 ; 0xf376b
test ax, ax ; 85 c0 ; 0xf376e
jne short 0377dh ; 75 0b ; 0xf3770
mov ax, cx ; 89 c8 ; 0xf3772 floppy.c:891
call 03175h ; e8 fe f9 ; 0xf3774
test ax, ax ; 85 c0 ; 0xf3777
je near 03401h ; 0f 84 84 fc ; 0xf3779
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf377d floppy.c:902
shr dx, 00ch ; c1 ea 0c ; 0xf3780
mov ah, dl ; 88 d4 ; 0xf3783
mov cx, word [bp+006h] ; 8b 4e 06 ; 0xf3785 floppy.c:903
sal cx, 004h ; c1 e1 04 ; 0xf3788
mov si, word [bp+010h] ; 8b 76 10 ; 0xf378b floppy.c:904
add si, cx ; 01 ce ; 0xf378e
mov word [bp-008h], si ; 89 76 f8 ; 0xf3790
cmp cx, si ; 39 f1 ; 0xf3793 floppy.c:906
jbe short 03799h ; 76 02 ; 0xf3795
db 0feh, 0c4h
; inc ah ; fe c4 ; 0xf3797 floppy.c:908
movzx cx, bh ; 0f b6 cf ; 0xf3799 floppy.c:910
sal cx, 002h ; c1 e1 02 ; 0xf379c
dec cx ; 49 ; 0xf379f
mov dx, word [bp-008h] ; 8b 56 f8 ; 0xf37a0 floppy.c:913
add dx, cx ; 01 ca ; 0xf37a3
cmp dx, word [bp-008h] ; 3b 56 f8 ; 0xf37a5 floppy.c:914
jc near 03454h ; 0f 82 a8 fc ; 0xf37a8
mov AL, strict byte 006h ; b0 06 ; 0xf37ac floppy.c:922
mov dx, strict word 0000ah ; ba 0a 00 ; 0xf37ae
out DX, AL ; ee ; 0xf37b1
xor al, al ; 30 c0 ; 0xf37b2 floppy.c:923
mov dx, strict word 0000ch ; ba 0c 00 ; 0xf37b4
out DX, AL ; ee ; 0xf37b7
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf37b8 floppy.c:924
mov dx, strict word 00004h ; ba 04 00 ; 0xf37bb
out DX, AL ; ee ; 0xf37be
mov dx, word [bp-008h] ; 8b 56 f8 ; 0xf37bf floppy.c:925
shr dx, 008h ; c1 ea 08 ; 0xf37c2
mov al, dl ; 88 d0 ; 0xf37c5
mov dx, strict word 00004h ; ba 04 00 ; 0xf37c7
out DX, AL ; ee ; 0xf37ca
xor al, al ; 30 c0 ; 0xf37cb floppy.c:926
mov dx, strict word 0000ch ; ba 0c 00 ; 0xf37cd
out DX, AL ; ee ; 0xf37d0
mov al, cl ; 88 c8 ; 0xf37d1 floppy.c:927
mov dx, strict word 00005h ; ba 05 00 ; 0xf37d3
out DX, AL ; ee ; 0xf37d6
shr cx, 008h ; c1 e9 08 ; 0xf37d7 floppy.c:928
mov al, cl ; 88 c8 ; 0xf37da
out DX, AL ; ee ; 0xf37dc
mov AL, strict byte 04ah ; b0 4a ; 0xf37dd floppy.c:931
mov dx, strict word 0000bh ; ba 0b 00 ; 0xf37df
out DX, AL ; ee ; 0xf37e2
mov al, ah ; 88 e0 ; 0xf37e3 floppy.c:933
mov dx, 00081h ; ba 81 00 ; 0xf37e5
out DX, AL ; ee ; 0xf37e8
mov AL, strict byte 002h ; b0 02 ; 0xf37e9 floppy.c:934
mov dx, strict word 0000ah ; ba 0a 00 ; 0xf37eb
out DX, AL ; ee ; 0xf37ee
movzx cx, bl ; 0f b6 cb ; 0xf37ef floppy.c:937
mov ax, cx ; 89 c8 ; 0xf37f2
call 03029h ; e8 32 f8 ; 0xf37f4
mov AL, strict byte 00fh ; b0 0f ; 0xf37f7 floppy.c:940
mov dx, 003f5h ; ba f5 03 ; 0xf37f9
out DX, AL ; ee ; 0xf37fc
movzx dx, byte [bp-004h] ; 0f b6 56 fc ; 0xf37fd floppy.c:941
sal dx, 002h ; c1 e2 02 ; 0xf3801
movzx ax, bl ; 0f b6 c3 ; 0xf3804
or dx, ax ; 09 c2 ; 0xf3807
mov word [bp-00ah], dx ; 89 56 f6 ; 0xf3809
mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xf380c
mov dx, 003f5h ; ba f5 03 ; 0xf380f
out DX, AL ; ee ; 0xf3812
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf3813 floppy.c:942
out DX, AL ; ee ; 0xf3816
mov AL, strict byte 04dh ; b0 4d ; 0xf3817 floppy.c:945
out DX, AL ; ee ; 0xf3819
mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xf381a floppy.c:946
out DX, AL ; ee ; 0xf381d
mov AL, strict byte 002h ; b0 02 ; 0xf381e floppy.c:947
out DX, AL ; ee ; 0xf3820
mov al, bh ; 88 f8 ; 0xf3821 floppy.c:948
out DX, AL ; ee ; 0xf3823
xor al, bh ; 30 f8 ; 0xf3824 floppy.c:949
out DX, AL ; ee ; 0xf3826
mov AL, strict byte 0f6h ; b0 f6 ; 0xf3827 floppy.c:950
out DX, AL ; ee ; 0xf3829
call 02fafh ; e8 82 f7 ; 0xf382a floppy.c:978
test al, al ; 84 c0 ; 0xf382d floppy.c:979
jne short 03839h ; 75 08 ; 0xf382f
mov ax, cx ; 89 c8 ; 0xf3831 floppy.c:980
call 02fe7h ; e8 b1 f7 ; 0xf3833
jmp near 0374ch ; e9 13 ff ; 0xf3836 floppy.c:78
mov dx, 003f4h ; ba f4 03 ; 0xf3839 floppy.c:989
in AL, DX ; ec ; 0xf383c
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf383d
and AL, strict byte 0c0h ; 24 c0 ; 0xf383f floppy.c:990
cmp AL, strict byte 0c0h ; 3c c0 ; 0xf3841
je short 03853h ; 74 0e ; 0xf3843
push 002f7h ; 68 f7 02 ; 0xf3845 floppy.c:991
push 0032ah ; 68 2a 03 ; 0xf3848
push strict byte 00007h ; 6a 07 ; 0xf384b
call 01a68h ; e8 18 e2 ; 0xf384d
add sp, strict byte 00006h ; 83 c4 06 ; 0xf3850
xor cx, cx ; 31 c9 ; 0xf3853 floppy.c:994
jmp short 0385ch ; eb 05 ; 0xf3855
cmp cx, strict byte 00007h ; 83 f9 07 ; 0xf3857
jnl short 03872h ; 7d 16 ; 0xf385a
mov dx, 003f5h ; ba f5 03 ; 0xf385c floppy.c:995
in AL, DX ; ec ; 0xf385f
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf3860
mov si, cx ; 89 ce ; 0xf3862
add si, strict byte 00042h ; 83 c6 42 ; 0xf3864
mov dx, strict word 00040h ; ba 40 00 ; 0xf3867 floppy.c:53
mov es, dx ; 8e c2 ; 0xf386a
mov byte [es:si], al ; 26 88 04 ; 0xf386c
inc cx ; 41 ; 0xf386f floppy.c:995
jmp short 03857h ; eb e5 ; 0xf3870
mov si, strict word 00042h ; be 42 00 ; 0xf3872 floppy.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf3875
mov es, ax ; 8e c0 ; 0xf3878
mov al, byte [es:si] ; 26 8a 04 ; 0xf387a
test AL, strict byte 0c0h ; a8 c0 ; 0xf387d floppy.c:49
je short 0389bh ; 74 1a ; 0xf387f
mov si, strict word 00043h ; be 43 00 ; 0xf3881 floppy.c:48
mov al, byte [es:si] ; 26 8a 04 ; 0xf3884
test AL, strict byte 002h ; a8 02 ; 0xf3887 floppy.c:49
jne near 036d3h ; 0f 85 46 fe ; 0xf3889
push 002f7h ; 68 f7 02 ; 0xf388d floppy.c:1006
push 0033eh ; 68 3e 03 ; 0xf3890
push strict byte 00007h ; 6a 07 ; 0xf3893
call 01a68h ; e8 d0 e1 ; 0xf3895
add sp, strict byte 00006h ; 83 c4 06 ; 0xf3898
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf389b floppy.c:1010
mov si, strict word 00041h ; be 41 00 ; 0xf389f floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf38a2
mov es, ax ; 8e c0 ; 0xf38a5
mov byte [es:si], 000h ; 26 c6 04 00 ; 0xf38a7
movzx ax, bl ; 0f b6 c3 ; 0xf38ab floppy.c:1012
xor dx, dx ; 31 d2 ; 0xf38ae
call 02f62h ; e8 af f6 ; 0xf38b0
jmp near 035afh ; e9 f9 fc ; 0xf38b3
mov bl, ah ; 88 e3 ; 0xf38b6 floppy.c:1019
cmp ah, 001h ; 80 fc 01 ; 0xf38b8 floppy.c:1021
jbe short 038dah ; 76 1d ; 0xf38bb
xor ax, ax ; 31 c0 ; 0xf38bd floppy.c:1022
mov word [bp+016h], ax ; 89 46 16 ; 0xf38bf
mov word [bp+010h], ax ; 89 46 10 ; 0xf38c2 floppy.c:1023
mov word [bp+014h], ax ; 89 46 14 ; 0xf38c5 floppy.c:1024
mov word [bp+012h], ax ; 89 46 12 ; 0xf38c8 floppy.c:1025
mov word [bp+006h], ax ; 89 46 06 ; 0xf38cb floppy.c:1026
mov word [bp+008h], ax ; 89 46 08 ; 0xf38ce floppy.c:1027
movzx ax, bh ; 0f b6 c7 ; 0xf38d1 floppy.c:1028
mov word [bp+012h], ax ; 89 46 12 ; 0xf38d4
jmp near 039fch ; e9 22 01 ; 0xf38d7
mov ax, strict word 00010h ; b8 10 00 ; 0xf38da floppy.c:1029
call 0176ah ; e8 8a de ; 0xf38dd
mov dl, al ; 88 c2 ; 0xf38e0
xor bh, bh ; 30 ff ; 0xf38e2 floppy.c:1035
test AL, strict byte 0f0h ; a8 f0 ; 0xf38e4 floppy.c:1036
je short 038eah ; 74 02 ; 0xf38e6
mov BH, strict byte 001h ; b7 01 ; 0xf38e8 floppy.c:1037
test dl, 00fh ; f6 c2 0f ; 0xf38ea floppy.c:1038
je short 038f1h ; 74 02 ; 0xf38ed
db 0feh, 0c7h
; inc bh ; fe c7 ; 0xf38ef floppy.c:1039
test bl, bl ; 84 db ; 0xf38f1 floppy.c:1041
jne short 038fah ; 75 05 ; 0xf38f3
shr dl, 004h ; c0 ea 04 ; 0xf38f5 floppy.c:1042
jmp short 038fdh ; eb 03 ; 0xf38f8 floppy.c:1043
and dl, 00fh ; 80 e2 0f ; 0xf38fa floppy.c:1044
mov byte [bp+011h], 000h ; c6 46 11 00 ; 0xf38fd floppy.c:1047
movzx ax, dl ; 0f b6 c2 ; 0xf3901
mov word [bp+010h], ax ; 89 46 10 ; 0xf3904
mov word [bp+016h], strict word 00000h ; c7 46 16 00 00 ; 0xf3907 floppy.c:1048
mov cx, word [bp+012h] ; 8b 4e 12 ; 0xf390c floppy.c:1050
xor cl, cl ; 30 c9 ; 0xf390f
movzx ax, bh ; 0f b6 c7 ; 0xf3911
or cx, ax ; 09 c1 ; 0xf3914
mov word [bp+012h], cx ; 89 4e 12 ; 0xf3916
mov ax, cx ; 89 c8 ; 0xf3919 floppy.c:1051
xor ah, ch ; 30 ec ; 0xf391b
or ah, 001h ; 80 cc 01 ; 0xf391d
mov word [bp+012h], ax ; 89 46 12 ; 0xf3920
cmp dl, 003h ; 80 fa 03 ; 0xf3923 floppy.c:1053
jc short 0393dh ; 72 15 ; 0xf3926
jbe short 03964h ; 76 3a ; 0xf3928
cmp dl, 005h ; 80 fa 05 ; 0xf392a
jc short 0396bh ; 72 3c ; 0xf392d
jbe short 03972h ; 76 41 ; 0xf392f
cmp dl, 00fh ; 80 fa 0f ; 0xf3931
je short 03980h ; 74 4a ; 0xf3934
cmp dl, 00eh ; 80 fa 0e ; 0xf3936
je short 03979h ; 74 3e ; 0xf3939
jmp short 03987h ; eb 4a ; 0xf393b
cmp dl, 002h ; 80 fa 02 ; 0xf393d
je short 0395dh ; 74 1b ; 0xf3940
cmp dl, 001h ; 80 fa 01 ; 0xf3942
je short 03956h ; 74 0f ; 0xf3945
test dl, dl ; 84 d2 ; 0xf3947
jne short 03987h ; 75 3c ; 0xf3949
mov word [bp+014h], strict word 00000h ; c7 46 14 00 00 ; 0xf394b floppy.c:1055
mov byte [bp+013h], 000h ; c6 46 13 00 ; 0xf3950 floppy.c:1056
jmp short 03995h ; eb 3f ; 0xf3954 floppy.c:1057
mov word [bp+014h], 02709h ; c7 46 14 09 27 ; 0xf3956 floppy.c:1060
jmp short 03995h ; eb 38 ; 0xf395b floppy.c:1061
mov word [bp+014h], 04f0fh ; c7 46 14 0f 4f ; 0xf395d floppy.c:1064
jmp short 03995h ; eb 31 ; 0xf3962 floppy.c:1065
mov word [bp+014h], 04f09h ; c7 46 14 09 4f ; 0xf3964 floppy.c:1068
jmp short 03995h ; eb 2a ; 0xf3969 floppy.c:1069
mov word [bp+014h], 04f12h ; c7 46 14 12 4f ; 0xf396b floppy.c:1072
jmp short 03995h ; eb 23 ; 0xf3970 floppy.c:1073
mov word [bp+014h], 04f24h ; c7 46 14 24 4f ; 0xf3972 floppy.c:1076
jmp short 03995h ; eb 1c ; 0xf3977 floppy.c:1077
mov word [bp+014h], 0fe3fh ; c7 46 14 3f fe ; 0xf3979 floppy.c:1080
jmp short 03995h ; eb 15 ; 0xf397e floppy.c:1081
mov word [bp+014h], 0feffh ; c7 46 14 ff fe ; 0xf3980 floppy.c:1084
jmp short 03995h ; eb 0e ; 0xf3985 floppy.c:1085
push 002f7h ; 68 f7 02 ; 0xf3987 floppy.c:1089
push 0034fh ; 68 4f 03 ; 0xf398a
push strict byte 00007h ; 6a 07 ; 0xf398d
call 01a68h ; e8 d6 e0 ; 0xf398f
add sp, strict byte 00006h ; 83 c4 06 ; 0xf3992
mov word [bp+006h], 0f000h ; c7 46 06 00 f0 ; 0xf3995 floppy.c:1093
movzx ax, dl ; 0f b6 c2 ; 0xf399a floppy.c:1094
call 03c24h ; e8 84 02 ; 0xf399d
mov word [bp+008h], ax ; 89 46 08 ; 0xf39a0
jmp near 035afh ; e9 09 fc ; 0xf39a3
mov bl, ah ; 88 e3 ; 0xf39a6 floppy.c:1101
cmp ah, 001h ; 80 fc 01 ; 0xf39a8 floppy.c:1102
jbe short 039b2h ; 76 05 ; 0xf39ab
mov word [bp+016h], dx ; 89 56 16 ; 0xf39ad floppy.c:1103
jmp short 039fch ; eb 4a ; 0xf39b0
mov ax, strict word 00010h ; b8 10 00 ; 0xf39b2 floppy.c:1109
call 0176ah ; e8 b2 dd ; 0xf39b5
test bl, bl ; 84 db ; 0xf39b8 floppy.c:1110
jne short 039c3h ; 75 07 ; 0xf39ba
mov dl, al ; 88 c2 ; 0xf39bc floppy.c:1111
shr dl, 004h ; c0 ea 04 ; 0xf39be
jmp short 039c8h ; eb 05 ; 0xf39c1 floppy.c:1112
mov dl, al ; 88 c2 ; 0xf39c3 floppy.c:1113
and dl, 00fh ; 80 e2 0f ; 0xf39c5
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf39c8 floppy.c:1114
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf39cc
xor ah, ah ; 30 e4 ; 0xf39cf
test dl, dl ; 84 d2 ; 0xf39d1 floppy.c:1115
je short 039e2h ; 74 0d ; 0xf39d3
cmp dl, 001h ; 80 fa 01 ; 0xf39d5 floppy.c:1116
jbe short 039dfh ; 76 05 ; 0xf39d8
or ah, 002h ; 80 cc 02 ; 0xf39da floppy.c:1118
jmp short 039e2h ; eb 03 ; 0xf39dd floppy.c:1119
or ah, 001h ; 80 cc 01 ; 0xf39df floppy.c:1120
mov word [bp+016h], ax ; 89 46 16 ; 0xf39e2
jmp near 03359h ; e9 71 f9 ; 0xf39e5 floppy.c:1123
cmp ah, 001h ; 80 fc 01 ; 0xf39e8 floppy.c:1128
jbe short 03a02h ; 76 15 ; 0xf39eb
mov word [bp+016h], si ; 89 76 16 ; 0xf39ed floppy.c:1129
mov bx, strict word 00041h ; bb 41 00 ; 0xf39f0 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf39f3
mov es, ax ; 8e c0 ; 0xf39f6
mov byte [es:bx], 001h ; 26 c6 07 01 ; 0xf39f8
mov word [bp+01ch], cx ; 89 4e 1c ; 0xf39fc
jmp near 03359h ; e9 57 f9 ; 0xf39ff
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3a02 floppy.c:1135
xor ah, ah ; 30 e4 ; 0xf3a05
or ah, 006h ; 80 cc 06 ; 0xf3a07
mov word [bp+016h], ax ; 89 46 16 ; 0xf3a0a
mov bx, strict word 00041h ; bb 41 00 ; 0xf3a0d floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3a10
mov es, ax ; 8e c0 ; 0xf3a13
mov byte [es:bx], 006h ; 26 c6 07 06 ; 0xf3a15
jmp near 03aeeh ; e9 d2 00 ; 0xf3a19
mov bl, ah ; 88 e3 ; 0xf3a1c floppy.c:1144
mov dl, byte [bp+016h] ; 8a 56 16 ; 0xf3a1e floppy.c:1152
cmp ah, 001h ; 80 fc 01 ; 0xf3a21 floppy.c:1156
jnbe short 039edh ; 77 c7 ; 0xf3a24
movzx ax, bl ; 0f b6 c3 ; 0xf3a26 floppy.c:1164
call 03259h ; e8 2d f8 ; 0xf3a29
test ax, ax ; 85 c0 ; 0xf3a2c
je near 0374ch ; 0f 84 1a fd ; 0xf3a2e
test bl, bl ; 84 db ; 0xf3a32 floppy.c:1172
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf3a34
movzx bx, al ; 0f b6 d8 ; 0xf3a37
add bx, 00090h ; 81 c3 90 00 ; 0xf3a3a
mov word [bp-008h], bx ; 89 5e f8 ; 0xf3a3e
mov ax, strict word 00040h ; b8 40 00 ; 0xf3a41 floppy.c:48
mov es, ax ; 8e c0 ; 0xf3a44
mov bl, byte [es:bx] ; 26 8a 1f ; 0xf3a46
and bl, 00fh ; 80 e3 0f ; 0xf3a49 floppy.c:1176
cmp dl, 002h ; 80 fa 02 ; 0xf3a4c floppy.c:1178
jc short 03a60h ; 72 0f ; 0xf3a4f
jbe short 03a6dh ; 76 1a ; 0xf3a51
cmp dl, 004h ; 80 fa 04 ; 0xf3a53
je short 03a68h ; 74 10 ; 0xf3a56
cmp dl, 003h ; 80 fa 03 ; 0xf3a58
je short 03a72h ; 74 15 ; 0xf3a5b
jmp near 032e8h ; e9 88 f8 ; 0xf3a5d
cmp dl, 001h ; 80 fa 01 ; 0xf3a60
je short 03a68h ; 74 03 ; 0xf3a63
jmp near 032e8h ; e9 80 f8 ; 0xf3a65
or bl, 090h ; 80 cb 90 ; 0xf3a68 floppy.c:1181
jmp short 03a75h ; eb 08 ; 0xf3a6b floppy.c:1182
or bl, 070h ; 80 cb 70 ; 0xf3a6d floppy.c:1185
jmp short 03a75h ; eb 03 ; 0xf3a70 floppy.c:1186
or bl, 010h ; 80 cb 10 ; 0xf3a72 floppy.c:1189
mov ax, strict word 00040h ; b8 40 00 ; 0xf3a75 floppy.c:53
mov es, ax ; 8e c0 ; 0xf3a78
mov si, word [bp-008h] ; 8b 76 f8 ; 0xf3a7a
mov byte [es:si], bl ; 26 88 1c ; 0xf3a7d
xor al, al ; 30 c0 ; 0xf3a80 floppy.c:1208
mov byte [bp+017h], al ; 88 46 17 ; 0xf3a82
mov bx, strict word 00041h ; bb 41 00 ; 0xf3a85 floppy.c:53
mov byte [es:bx], al ; 26 88 07 ; 0xf3a88
jmp near 035afh ; e9 21 fb ; 0xf3a8b
mov bl, ah ; 88 e3 ; 0xf3a8e floppy.c:1218
mov dl, byte [bp+014h] ; 8a 56 14 ; 0xf3a90 floppy.c:1220
mov bh, dl ; 88 d7 ; 0xf3a93 floppy.c:1221
and bh, 03fh ; 80 e7 3f ; 0xf3a95
xor dh, dh ; 30 f6 ; 0xf3a98 floppy.c:1222
sar dx, 006h ; c1 fa 06 ; 0xf3a9a
sal dx, 008h ; c1 e2 08 ; 0xf3a9d
mov word [bp-00ch], dx ; 89 56 f4 ; 0xf3aa0
mov dx, word [bp+014h] ; 8b 56 14 ; 0xf3aa3
shr dx, 008h ; c1 ea 08 ; 0xf3aa6
add dx, word [bp-00ch] ; 03 56 f4 ; 0xf3aa9
mov byte [bp-002h], dl ; 88 56 fe ; 0xf3aac
cmp ah, 001h ; 80 fc 01 ; 0xf3aaf floppy.c:1227
jnbe near 039edh ; 0f 87 37 ff ; 0xf3ab2
movzx ax, bl ; 0f b6 c3 ; 0xf3ab6 floppy.c:1235
call 03259h ; e8 9d f7 ; 0xf3ab9
test ax, ax ; 85 c0 ; 0xf3abc
je near 0374ch ; 0f 84 8a fc ; 0xf3abe
movzx cx, bl ; 0f b6 cb ; 0xf3ac2 floppy.c:1243
mov ax, cx ; 89 c8 ; 0xf3ac5
call 0309dh ; e8 d3 f5 ; 0xf3ac7
test ax, ax ; 85 c0 ; 0xf3aca
jne short 03af5h ; 75 27 ; 0xf3acc
mov ax, cx ; 89 c8 ; 0xf3ace floppy.c:1244
call 03175h ; e8 a2 f6 ; 0xf3ad0
test ax, ax ; 85 c0 ; 0xf3ad3
jne short 03af5h ; 75 1e ; 0xf3ad5
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3ad7 floppy.c:1245
xor ah, ah ; 30 e4 ; 0xf3ada
or ah, 00ch ; 80 cc 0c ; 0xf3adc
mov word [bp+016h], ax ; 89 46 16 ; 0xf3adf
mov bx, strict word 00041h ; bb 41 00 ; 0xf3ae2 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3ae5
mov es, ax ; 8e c0 ; 0xf3ae8
mov byte [es:bx], 00ch ; 26 c6 07 0c ; 0xf3aea
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf3aee
jmp near 03359h ; e9 64 f8 ; 0xf3af2
mov ax, strict word 00010h ; b8 10 00 ; 0xf3af5 floppy.c:1253
call 0176ah ; e8 6f dc ; 0xf3af8
test bl, bl ; 84 db ; 0xf3afb floppy.c:1254
jne short 03b06h ; 75 07 ; 0xf3afd
mov dl, al ; 88 c2 ; 0xf3aff floppy.c:1255
shr dl, 004h ; c0 ea 04 ; 0xf3b01
jmp short 03b0bh ; eb 05 ; 0xf3b04 floppy.c:1256
mov dl, al ; 88 c2 ; 0xf3b06 floppy.c:1257
and dl, 00fh ; 80 e2 0f ; 0xf3b08
test bl, bl ; 84 db ; 0xf3b0b floppy.c:1260
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf3b0d
movzx si, al ; 0f b6 f0 ; 0xf3b10
add si, 00090h ; 81 c6 90 00 ; 0xf3b13
mov word [bp-008h], si ; 89 76 f8 ; 0xf3b17
mov ax, strict word 00040h ; b8 40 00 ; 0xf3b1a floppy.c:48
mov es, ax ; 8e c0 ; 0xf3b1d
mov bl, byte [es:si] ; 26 8a 1c ; 0xf3b1f
and bl, 00fh ; 80 e3 0f ; 0xf3b22 floppy.c:49
cmp dl, 003h ; 80 fa 03 ; 0xf3b25 floppy.c:1266
jc short 03b47h ; 72 1d ; 0xf3b28
mov al, bl ; 88 d8 ; 0xf3b2a
or AL, strict byte 090h ; 0c 90 ; 0xf3b2c
cmp dl, 003h ; 80 fa 03 ; 0xf3b2e
jbe short 03b88h ; 76 55 ; 0xf3b31
mov ah, bl ; 88 dc ; 0xf3b33
or ah, 010h ; 80 cc 10 ; 0xf3b35
cmp dl, 005h ; 80 fa 05 ; 0xf3b38
je near 03badh ; 0f 84 6e 00 ; 0xf3b3b
cmp dl, 004h ; 80 fa 04 ; 0xf3b3f
je short 03b97h ; 74 53 ; 0xf3b42
jmp near 03bc9h ; e9 82 00 ; 0xf3b44
cmp dl, 002h ; 80 fa 02 ; 0xf3b47
je short 03b68h ; 74 1c ; 0xf3b4a
cmp dl, 001h ; 80 fa 01 ; 0xf3b4c
jne near 03bc9h ; 0f 85 76 00 ; 0xf3b4f
cmp byte [bp-002h], 027h ; 80 7e fe 27 ; 0xf3b53 floppy.c:1268
jne near 03bc9h ; 0f 85 6e 00 ; 0xf3b57
cmp bh, 009h ; 80 ff 09 ; 0xf3b5b
jne near 03bc9h ; 0f 85 67 00 ; 0xf3b5e
or bl, 090h ; 80 cb 90 ; 0xf3b62 floppy.c:1269
jmp near 03bc9h ; e9 61 00 ; 0xf3b65 floppy.c:1271
cmp byte [bp-002h], 027h ; 80 7e fe 27 ; 0xf3b68 floppy.c:1273
jne short 03b78h ; 75 0a ; 0xf3b6c
cmp bh, 009h ; 80 ff 09 ; 0xf3b6e
jne short 03b78h ; 75 05 ; 0xf3b71
or bl, 070h ; 80 cb 70 ; 0xf3b73 floppy.c:1274
jmp short 03bc9h ; eb 51 ; 0xf3b76 floppy.c:1275
cmp byte [bp-002h], 04fh ; 80 7e fe 4f ; 0xf3b78
jne short 03bc9h ; 75 4b ; 0xf3b7c
cmp bh, 00fh ; 80 ff 0f ; 0xf3b7e
jne short 03bc9h ; 75 46 ; 0xf3b81
or bl, 010h ; 80 cb 10 ; 0xf3b83 floppy.c:1276
jmp short 03bc9h ; eb 41 ; 0xf3b86 floppy.c:1278
cmp byte [bp-002h], 04fh ; 80 7e fe 4f ; 0xf3b88 floppy.c:1280
jne short 03bc9h ; 75 3b ; 0xf3b8c
cmp bh, 009h ; 80 ff 09 ; 0xf3b8e
jne short 03bc9h ; 75 36 ; 0xf3b91
mov bl, al ; 88 c3 ; 0xf3b93 floppy.c:1281
jmp short 03bc9h ; eb 32 ; 0xf3b95 floppy.c:1283
cmp byte [bp-002h], 04fh ; 80 7e fe 4f ; 0xf3b97 floppy.c:1285
jne short 03bc9h ; 75 2c ; 0xf3b9b
cmp bh, 009h ; 80 ff 09 ; 0xf3b9d floppy.c:1286
jne short 03ba4h ; 75 02 ; 0xf3ba0
jmp short 03b93h ; eb ef ; 0xf3ba2
cmp bh, 012h ; 80 ff 12 ; 0xf3ba4 floppy.c:1287
jne short 03bc9h ; 75 20 ; 0xf3ba7
mov bl, ah ; 88 e3 ; 0xf3ba9 floppy.c:1289
jmp short 03bc9h ; eb 1c ; 0xf3bab floppy.c:1292
cmp byte [bp-002h], 04fh ; 80 7e fe 4f ; 0xf3bad floppy.c:1294
jne short 03bc9h ; 75 16 ; 0xf3bb1
cmp bh, 009h ; 80 ff 09 ; 0xf3bb3 floppy.c:1295
jne short 03bbah ; 75 02 ; 0xf3bb6
jmp short 03b93h ; eb d9 ; 0xf3bb8
cmp bh, 012h ; 80 ff 12 ; 0xf3bba floppy.c:1296
jne short 03bc1h ; 75 02 ; 0xf3bbd
jmp short 03ba9h ; eb e8 ; 0xf3bbf
cmp bh, 024h ; 80 ff 24 ; 0xf3bc1 floppy.c:1298
jne short 03bc9h ; 75 03 ; 0xf3bc4
or bl, 0d0h ; 80 cb d0 ; 0xf3bc6 floppy.c:1300
movzx ax, bl ; 0f b6 c3 ; 0xf3bc9 floppy.c:1309
sar ax, 004h ; c1 f8 04 ; 0xf3bcc
test AL, strict byte 001h ; a8 01 ; 0xf3bcf
je near 03ad7h ; 0f 84 02 ff ; 0xf3bd1
mov ax, strict word 00040h ; b8 40 00 ; 0xf3bd5 floppy.c:53
mov es, ax ; 8e c0 ; 0xf3bd8
mov si, word [bp-008h] ; 8b 76 f8 ; 0xf3bda
mov byte [es:si], bl ; 26 88 1c ; 0xf3bdd
mov word [bp+006h], 0f000h ; c7 46 06 00 f0 ; 0xf3be0 floppy.c:1322
movzx ax, dl ; 0f b6 c2 ; 0xf3be5 floppy.c:1323
call 03c24h ; e8 39 00 ; 0xf3be8
mov word [bp+008h], ax ; 89 46 08 ; 0xf3beb
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf3bee floppy.c:1326
mov bx, strict word 00041h ; bb 41 00 ; 0xf3bf2 floppy.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf3bf5
mov es, ax ; 8e c0 ; 0xf3bf8
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf3bfa
jmp near 035afh ; e9 ae f9 ; 0xf3bfe
mov bx, 00e16h ; bb 16 0e ; 0xf3c01 floppy.c:1332
mov cx, ds ; 8c d9 ; 0xf3c04
mov ax, strict word 00004h ; b8 04 00 ; 0xf3c06
call 01a27h ; e8 1b de ; 0xf3c09
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3c0c
shr ax, 008h ; c1 e8 08 ; 0xf3c0f
push ax ; 50 ; 0xf3c12
push 002f7h ; 68 f7 02 ; 0xf3c13
push 00364h ; 68 64 03 ; 0xf3c16
push strict byte 00004h ; 6a 04 ; 0xf3c19
call 01a68h ; e8 4a de ; 0xf3c1b
add sp, strict byte 00008h ; 83 c4 08 ; 0xf3c1e
jmp near 032e8h ; e9 c4 f6 ; 0xf3c21 floppy.c:78
; disGetNextSymbol 0xf3c24 LB 0x71f8 -> off=0x0 cb=000000000000002f uValue=00000000000f2624 'get_floppy_dpt'
get_floppy_dpt: ; 0xf3c24 LB 0x2f
push bx ; 53 ; 0xf3c24 floppyt.c:104
push dx ; 52 ; 0xf3c25
push bp ; 55 ; 0xf3c26
mov bp, sp ; 89 e5 ; 0xf3c27
mov dl, al ; 88 c2 ; 0xf3c29
xor ax, ax ; 31 c0 ; 0xf3c2b floppyt.c:108
jmp short 03c35h ; eb 06 ; 0xf3c2d
inc ax ; 40 ; 0xf3c2f floppyt.c:110
cmp ax, strict word 00007h ; 3d 07 00 ; 0xf3c30
jnc short 03c4ch ; 73 17 ; 0xf3c33
mov bx, ax ; 89 c3 ; 0xf3c35
add bx, ax ; 01 c3 ; 0xf3c37
cmp dl, byte [word bx+0005bh] ; 3a 97 5b 00 ; 0xf3c39
jne short 03c2fh ; 75 f0 ; 0xf3c3d
movzx ax, byte [word bx+0005ch] ; 0f b6 87 5c 00 ; 0xf3c3f
imul ax, ax, strict byte 0000dh ; 6b c0 0d ; 0xf3c44
add ax, strict word 00000h ; 05 00 00 ; 0xf3c47
jmp short 03c4fh ; eb 03 ; 0xf3c4a
mov ax, strict word 00041h ; b8 41 00 ; 0xf3c4c floppyt.c:113
pop bp ; 5d ; 0xf3c4f floppyt.c:114
pop dx ; 5a ; 0xf3c50
pop bx ; 5b ; 0xf3c51
retn ; c3 ; 0xf3c52
; disGetNextSymbol 0xf3c53 LB 0x71c9 -> off=0x0 cb=0000000000000007 uValue=00000000000f2653 'dummy_soft_reset'
dummy_soft_reset: ; 0xf3c53 LB 0x7
push bp ; 55 ; 0xf3c53 eltorito.c:137
mov bp, sp ; 89 e5 ; 0xf3c54
xor ax, ax ; 31 c0 ; 0xf3c56 eltorito.c:140
pop bp ; 5d ; 0xf3c58
retn ; c3 ; 0xf3c59
; disGetNextSymbol 0xf3c5a LB 0x71c2 -> off=0x0 cb=000000000000003b uValue=00000000000f265a 'cdemu_bounce_buf_alloc'
cdemu_bounce_buf_alloc: ; 0xf3c5a LB 0x3b
push bx ; 53 ; 0xf3c5a eltorito.c:169
push cx ; 51 ; 0xf3c5b
push dx ; 52 ; 0xf3c5c
push di ; 57 ; 0xf3c5d
push bp ; 55 ; 0xf3c5e
mov bp, sp ; 89 e5 ; 0xf3c5f
mov di, 00413h ; bf 13 04 ; 0xf3c61 eltorito.c:58
xor ax, ax ; 31 c0 ; 0xf3c64
mov es, ax ; 8e c0 ; 0xf3c66
mov ax, word [es:di] ; 26 8b 05 ; 0xf3c68
test ax, ax ; 85 c0 ; 0xf3c6b eltorito.c:175
je short 03c8fh ; 74 20 ; 0xf3c6d
dec ax ; 48 ; 0xf3c6f eltorito.c:176
dec ax ; 48 ; 0xf3c70
mov bx, ax ; 89 c3 ; 0xf3c71
xor dx, dx ; 31 d2 ; 0xf3c73 eltorito.c:179
mov cx, strict word 0000ah ; b9 0a 00 ; 0xf3c75
sal ax, 1 ; d1 e0 ; 0xf3c78
rcl dx, 1 ; d1 d2 ; 0xf3c7a
loop 03c78h ; e2 fa ; 0xf3c7c
mov di, dx ; 89 d7 ; 0xf3c7e
mov cx, strict word 00004h ; b9 04 00 ; 0xf3c80
shr di, 1 ; d1 ef ; 0xf3c83
rcr ax, 1 ; d1 d8 ; 0xf3c85
loop 03c83h ; e2 fa ; 0xf3c87
mov di, 00413h ; bf 13 04 ; 0xf3c89 eltorito.c:63
mov word [es:di], bx ; 26 89 1d ; 0xf3c8c
pop bp ; 5d ; 0xf3c8f eltorito.c:184
pop di ; 5f ; 0xf3c90
pop dx ; 5a ; 0xf3c91
pop cx ; 59 ; 0xf3c92
pop bx ; 5b ; 0xf3c93
retn ; c3 ; 0xf3c94
; disGetNextSymbol 0xf3c95 LB 0x7187 -> off=0x0 cb=0000000000000017 uValue=00000000000f2695 'cdemu_init'
cdemu_init: ; 0xf3c95 LB 0x17
push bp ; 55 ; 0xf3c95 eltorito.c:186
mov bp, sp ; 89 e5 ; 0xf3c96
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf3c98 eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf3c9b
mov es, ax ; 8e c0 ; 0xf3c9e
mov es, [es:bx] ; 26 8e 07 ; 0xf3ca0
mov bx, 00316h ; bb 16 03 ; 0xf3ca3 eltorito.c:190
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf3ca6 eltorito.c:193
pop bp ; 5d ; 0xf3caa eltorito.c:194
retn ; c3 ; 0xf3cab
; disGetNextSymbol 0xf3cac LB 0x7170 -> off=0x0 cb=0000000000000016 uValue=00000000000f26ac 'cdemu_isactive'
cdemu_isactive: ; 0xf3cac LB 0x16
push bp ; 55 ; 0xf3cac eltorito.c:196
mov bp, sp ; 89 e5 ; 0xf3cad
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf3caf eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf3cb2
mov es, ax ; 8e c0 ; 0xf3cb5
mov es, [es:bx] ; 26 8e 07 ; 0xf3cb7
mov bx, 00316h ; bb 16 03 ; 0xf3cba eltorito.c:48
mov al, byte [es:bx] ; 26 8a 07 ; 0xf3cbd
pop bp ; 5d ; 0xf3cc0 eltorito.c:202
retn ; c3 ; 0xf3cc1
; disGetNextSymbol 0xf3cc2 LB 0x715a -> off=0x0 cb=0000000000000016 uValue=00000000000f26c2 'cdemu_emulated_drive'
cdemu_emulated_drive: ; 0xf3cc2 LB 0x16
push bp ; 55 ; 0xf3cc2 eltorito.c:204
mov bp, sp ; 89 e5 ; 0xf3cc3
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf3cc5 eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf3cc8
mov es, ax ; 8e c0 ; 0xf3ccb
mov es, [es:bx] ; 26 8e 07 ; 0xf3ccd
mov bx, 00318h ; bb 18 03 ; 0xf3cd0 eltorito.c:48
mov al, byte [es:bx] ; 26 8a 07 ; 0xf3cd3
pop bp ; 5d ; 0xf3cd6 eltorito.c:210
retn ; c3 ; 0xf3cd7
; disGetNextSymbol 0xf3cd8 LB 0x7144 -> off=0x0 cb=000000000000017a uValue=00000000000f26d8 'int13_eltorito'
int13_eltorito: ; 0xf3cd8 LB 0x17a
push bp ; 55 ; 0xf3cd8 eltorito.c:216
mov bp, sp ; 89 e5 ; 0xf3cd9
push si ; 56 ; 0xf3cdb
push di ; 57 ; 0xf3cdc
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf3cdd eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf3ce0
mov es, ax ; 8e c0 ; 0xf3ce3
mov di, word [es:bx] ; 26 8b 3f ; 0xf3ce5
mov bx, 00316h ; bb 16 03 ; 0xf3ce8 eltorito.c:222
mov si, word [bp+016h] ; 8b 76 16 ; 0xf3ceb eltorito.c:228
shr si, 008h ; c1 ee 08 ; 0xf3cee
cmp si, strict byte 0004bh ; 83 fe 4b ; 0xf3cf1
jc short 03d00h ; 72 0a ; 0xf3cf4
jbe short 03d26h ; 76 2e ; 0xf3cf6
cmp si, strict byte 0004dh ; 83 fe 4d ; 0xf3cf8
jbe short 03d07h ; 76 0a ; 0xf3cfb
jmp near 03e18h ; e9 18 01 ; 0xf3cfd
cmp si, strict byte 0004ah ; 83 fe 4a ; 0xf3d00
jne near 03e18h ; 0f 85 11 01 ; 0xf3d03
mov bx, 00e16h ; bb 16 0e ; 0xf3d07 eltorito.c:234
mov cx, ds ; 8c d9 ; 0xf3d0a
mov ax, strict word 00004h ; b8 04 00 ; 0xf3d0c
call 01a27h ; e8 15 dd ; 0xf3d0f
push word [bp+016h] ; ff 76 16 ; 0xf3d12
push 0037eh ; 68 7e 03 ; 0xf3d15
push 0038dh ; 68 8d 03 ; 0xf3d18
push strict byte 00004h ; 6a 04 ; 0xf3d1b
call 01a68h ; e8 48 dd ; 0xf3d1d
add sp, strict byte 00008h ; 83 c4 08 ; 0xf3d20
jmp near 03e33h ; e9 0d 01 ; 0xf3d23 eltorito.c:235
mov es, [bp+004h] ; 8e 46 04 ; 0xf3d26 eltorito.c:51
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3d29
mov byte [es:si], 013h ; 26 c6 04 13 ; 0xf3d2c
inc si ; 46 ; 0xf3d30 eltorito.c:242
mov ax, es ; 8c c0 ; 0xf3d31 eltorito.c:51
mov es, di ; 8e c7 ; 0xf3d33
mov dl, byte [es:bx+001h] ; 26 8a 57 01 ; 0xf3d35
mov es, ax ; 8e c0 ; 0xf3d39 eltorito.c:53
mov byte [es:si], dl ; 26 88 14 ; 0xf3d3b
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3d3e eltorito.c:243
inc si ; 46 ; 0xf3d41
inc si ; 46 ; 0xf3d42
mov es, di ; 8e c7 ; 0xf3d43 eltorito.c:51
mov dl, byte [es:bx+002h] ; 26 8a 57 02 ; 0xf3d45
mov es, ax ; 8e c0 ; 0xf3d49 eltorito.c:53
mov byte [es:si], dl ; 26 88 14 ; 0xf3d4b
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3d4e eltorito.c:244
add si, strict byte 00003h ; 83 c6 03 ; 0xf3d51
mov es, di ; 8e c7 ; 0xf3d54 eltorito.c:51
mov dl, byte [es:bx+003h] ; 26 8a 57 03 ; 0xf3d56
mov es, ax ; 8e c0 ; 0xf3d5a eltorito.c:53
mov byte [es:si], dl ; 26 88 14 ; 0xf3d5c
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3d5f eltorito.c:245
add si, strict byte 00004h ; 83 c6 04 ; 0xf3d62
mov es, di ; 8e c7 ; 0xf3d65 eltorito.c:71
mov dx, word [es:bx+008h] ; 26 8b 57 08 ; 0xf3d67
mov cx, word [es:bx+00ah] ; 26 8b 4f 0a ; 0xf3d6b
mov es, ax ; 8e c0 ; 0xf3d6f eltorito.c:73
mov word [es:si], dx ; 26 89 14 ; 0xf3d71
mov word [es:si+002h], cx ; 26 89 4c 02 ; 0xf3d74
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3d78 eltorito.c:246
add si, strict byte 00008h ; 83 c6 08 ; 0xf3d7b
mov es, di ; 8e c7 ; 0xf3d7e eltorito.c:61
mov dx, word [es:bx+004h] ; 26 8b 57 04 ; 0xf3d80
mov es, ax ; 8e c0 ; 0xf3d84 eltorito.c:63
mov word [es:si], dx ; 26 89 14 ; 0xf3d86
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3d89 eltorito.c:247
add si, strict byte 0000ah ; 83 c6 0a ; 0xf3d8c
mov es, di ; 8e c7 ; 0xf3d8f eltorito.c:61
mov dx, word [es:bx+006h] ; 26 8b 57 06 ; 0xf3d91
mov es, ax ; 8e c0 ; 0xf3d95 eltorito.c:63
mov word [es:si], dx ; 26 89 14 ; 0xf3d97
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3d9a eltorito.c:248
add si, strict byte 0000ch ; 83 c6 0c ; 0xf3d9d
mov es, di ; 8e c7 ; 0xf3da0 eltorito.c:61
mov dx, word [es:bx+00ch] ; 26 8b 57 0c ; 0xf3da2
mov es, ax ; 8e c0 ; 0xf3da6 eltorito.c:63
mov word [es:si], dx ; 26 89 14 ; 0xf3da8
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3dab eltorito.c:249
add si, strict byte 0000eh ; 83 c6 0e ; 0xf3dae
mov es, di ; 8e c7 ; 0xf3db1 eltorito.c:61
mov dx, word [es:bx+00eh] ; 26 8b 57 0e ; 0xf3db3
mov es, ax ; 8e c0 ; 0xf3db7 eltorito.c:63
mov word [es:si], dx ; 26 89 14 ; 0xf3db9
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3dbc eltorito.c:250
add si, strict byte 00010h ; 83 c6 10 ; 0xf3dbf
mov es, di ; 8e c7 ; 0xf3dc2 eltorito.c:51
mov dl, byte [es:bx+012h] ; 26 8a 57 12 ; 0xf3dc4
mov es, ax ; 8e c0 ; 0xf3dc8 eltorito.c:53
mov byte [es:si], dl ; 26 88 14 ; 0xf3dca
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3dcd eltorito.c:251
add si, strict byte 00011h ; 83 c6 11 ; 0xf3dd0
mov es, di ; 8e c7 ; 0xf3dd3 eltorito.c:51
mov dl, byte [es:bx+014h] ; 26 8a 57 14 ; 0xf3dd5
mov es, ax ; 8e c0 ; 0xf3dd9 eltorito.c:53
mov byte [es:si], dl ; 26 88 14 ; 0xf3ddb
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf3dde eltorito.c:252
add si, strict byte 00012h ; 83 c6 12 ; 0xf3de1
mov dx, ax ; 89 c2 ; 0xf3de4 eltorito.c:51
mov es, di ; 8e c7 ; 0xf3de6
mov al, byte [es:bx+010h] ; 26 8a 47 10 ; 0xf3de8
mov es, dx ; 8e c2 ; 0xf3dec eltorito.c:53
mov byte [es:si], al ; 26 88 04 ; 0xf3dee
test byte [bp+016h], 0ffh ; f6 46 16 ff ; 0xf3df1 eltorito.c:255
jne short 03dfdh ; 75 06 ; 0xf3df5
mov es, di ; 8e c7 ; 0xf3df7 eltorito.c:257
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf3df9
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf3dfd eltorito.c:260
mov bx, strict word 00074h ; bb 74 00 ; 0xf3e01
mov ax, strict word 00040h ; b8 40 00 ; 0xf3e04
mov es, ax ; 8e c0 ; 0xf3e07
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf3e09
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf3e0d
lea sp, [bp-004h] ; 8d 66 fc ; 0xf3e11
pop di ; 5f ; 0xf3e14
pop si ; 5e ; 0xf3e15
pop bp ; 5d ; 0xf3e16
retn ; c3 ; 0xf3e17
mov bx, 00e16h ; bb 16 0e ; 0xf3e18 eltorito.c:264
mov cx, ds ; 8c d9 ; 0xf3e1b
mov ax, strict word 00004h ; b8 04 00 ; 0xf3e1d
call 01a27h ; e8 04 dc ; 0xf3e20
mov bx, word [bp+016h] ; 8b 5e 16 ; 0xf3e23
shr bx, 008h ; c1 eb 08 ; 0xf3e26
push bx ; 53 ; 0xf3e29
push 0037eh ; 68 7e 03 ; 0xf3e2a
push 003b5h ; 68 b5 03 ; 0xf3e2d
jmp near 03d1bh ; e9 e8 fe ; 0xf3e30
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf3e33 eltorito.c:270
xor ah, ah ; 30 e4 ; 0xf3e36
or ah, 001h ; 80 cc 01 ; 0xf3e38
mov word [bp+016h], ax ; 89 46 16 ; 0xf3e3b
shr ax, 008h ; c1 e8 08 ; 0xf3e3e eltorito.c:271
mov bx, strict word 00074h ; bb 74 00 ; 0xf3e41 eltorito.c:53
mov dx, strict word 00040h ; ba 40 00 ; 0xf3e44
mov es, dx ; 8e c2 ; 0xf3e47
mov byte [es:bx], al ; 26 88 07 ; 0xf3e49
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf3e4c eltorito.c:272
jmp short 03e11h ; eb bf ; 0xf3e50 eltorito.c:273
; disGetNextSymbol 0xf3e52 LB 0x6fca -> off=0x0 cb=0000000000000032 uValue=00000000000f2852 'device_is_cdrom'
device_is_cdrom: ; 0xf3e52 LB 0x32
push bx ; 53 ; 0xf3e52 eltorito.c:288
push dx ; 52 ; 0xf3e53
push bp ; 55 ; 0xf3e54
mov bp, sp ; 89 e5 ; 0xf3e55
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf3e57 eltorito.c:58
mov dx, strict word 00040h ; ba 40 00 ; 0xf3e5a
mov es, dx ; 8e c2 ; 0xf3e5d
mov bx, word [es:bx] ; 26 8b 1f ; 0xf3e5f
cmp AL, strict byte 014h ; 3c 14 ; 0xf3e62 eltorito.c:294
jc short 03e6ah ; 72 04 ; 0xf3e64
xor ax, ax ; 31 c0 ; 0xf3e66 eltorito.c:295
jmp short 03e80h ; eb 16 ; 0xf3e68
xor ah, ah ; 30 e4 ; 0xf3e6a eltorito.c:300
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf3e6c
mov es, bx ; 8e c3 ; 0xf3e6f
mov bx, ax ; 89 c3 ; 0xf3e71
add bx, strict byte 0005eh ; 83 c3 5e ; 0xf3e73
cmp byte [es:bx+01fh], 005h ; 26 80 7f 1f 05 ; 0xf3e76
jne short 03e66h ; 75 e9 ; 0xf3e7b
mov ax, strict word 00001h ; b8 01 00 ; 0xf3e7d eltorito.c:301
pop bp ; 5d ; 0xf3e80 eltorito.c:304
pop dx ; 5a ; 0xf3e81
pop bx ; 5b ; 0xf3e82
retn ; c3 ; 0xf3e83
; disGetNextSymbol 0xf3e84 LB 0x6f98 -> off=0x0 cb=000000000000007f uValue=00000000000f2884 'cdrom_read'
cdrom_read: ; 0xf3e84 LB 0x7f
push bp ; 55 ; 0xf3e84 eltorito.c:306
mov bp, sp ; 89 e5 ; 0xf3e85
push si ; 56 ; 0xf3e87
sub sp, strict byte 0000eh ; 83 ec 0e ; 0xf3e88
mov byte [bp-004h], al ; 88 46 fc ; 0xf3e8b
mov ax, bx ; 89 d8 ; 0xf3e8e
mov si, cx ; 89 ce ; 0xf3e90
mov cx, dx ; 89 d1 ; 0xf3e92
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf3e94 eltorito.c:58
mov dx, strict word 00040h ; ba 40 00 ; 0xf3e97
mov es, dx ; 8e c2 ; 0xf3e9a
mov es, [es:bx] ; 26 8e 07 ; 0xf3e9c
mov bx, strict word 0005eh ; bb 5e 00 ; 0xf3e9f eltorito.c:310
mov word [bp-010h], strict word 00028h ; c7 46 f0 28 00 ; 0xf3ea2 eltorito.c:312
mov dx, si ; 89 f2 ; 0xf3ea7 eltorito.c:313
xchg ah, al ; 86 c4 ; 0xf3ea9
xchg dh, dl ; 86 d6 ; 0xf3eab
xchg dx, ax ; 92 ; 0xf3ead
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf3eae
mov word [bp-00ch], dx ; 89 56 f4 ; 0xf3eb1
mov ax, cx ; 89 c8 ; 0xf3eb4 eltorito.c:314
xchg ah, al ; 86 c4 ; 0xf3eb6
mov word [bp-009h], ax ; 89 46 f7 ; 0xf3eb8
mov word [es:bx+00eh], cx ; 26 89 4f 0e ; 0xf3ebb eltorito.c:316
mov word [es:bx+010h], 00800h ; 26 c7 47 10 00 08 ; 0xf3ebf eltorito.c:317
movzx bx, byte [bp-004h] ; 0f b6 5e fc ; 0xf3ec5 eltorito.c:319
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf3ec9
add bx, strict byte 0005eh ; 83 c3 5e ; 0xf3ecc
movzx si, byte [es:bx+01eh] ; 26 0f b6 77 1e ; 0xf3ecf
add si, si ; 01 f6 ; 0xf3ed4
push dword [bp+004h] ; 66 ff 76 04 ; 0xf3ed6
push strict byte 00001h ; 6a 01 ; 0xf3eda
mov ax, cx ; 89 c8 ; 0xf3edc
xor dx, dx ; 31 d2 ; 0xf3ede
mov cx, strict word 0000bh ; b9 0b 00 ; 0xf3ee0
sal ax, 1 ; d1 e0 ; 0xf3ee3
rcl dx, 1 ; d1 d2 ; 0xf3ee5
loop 03ee3h ; e2 fa ; 0xf3ee7
push dx ; 52 ; 0xf3ee9
push ax ; 50 ; 0xf3eea
movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xf3eeb
mov cx, ss ; 8c d1 ; 0xf3eef
lea bx, [bp-010h] ; 8d 5e f0 ; 0xf3ef1
mov dx, strict word 0000ch ; ba 0c 00 ; 0xf3ef4
call word [word si+0006ah] ; ff 94 6a 00 ; 0xf3ef7
lea sp, [bp-002h] ; 8d 66 fe ; 0xf3efb eltorito.c:320
pop si ; 5e ; 0xf3efe
pop bp ; 5d ; 0xf3eff
retn 00004h ; c2 04 00 ; 0xf3f00
; disGetNextSymbol 0xf3f03 LB 0x6f19 -> off=0x0 cb=0000000000000167 uValue=00000000000f2903 'cdemu_read'
cdemu_read: ; 0xf3f03 LB 0x167
push bp ; 55 ; 0xf3f03 eltorito.c:322
mov bp, sp ; 89 e5 ; 0xf3f04
push si ; 56 ; 0xf3f06
push di ; 57 ; 0xf3f07
sub sp, strict byte 0001ch ; 83 ec 1c ; 0xf3f08
mov byte [bp-006h], al ; 88 46 fa ; 0xf3f0b
mov word [bp-01eh], bx ; 89 5e e2 ; 0xf3f0e
mov di, dx ; 89 d7 ; 0xf3f11
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf3f13 eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf3f16
mov es, ax ; 8e c0 ; 0xf3f19
mov ax, word [es:bx] ; 26 8b 07 ; 0xf3f1b
mov bx, 00316h ; bb 16 03 ; 0xf3f1e eltorito.c:326
mov es, ax ; 8e c0 ; 0xf3f21
mov si, bx ; 89 de ; 0xf3f23
mov word [bp-008h], ax ; 89 46 f8 ; 0xf3f25
mov ax, word [es:bx+008h] ; 26 8b 47 08 ; 0xf3f28 eltorito.c:327
mov word [bp-018h], ax ; 89 46 e8 ; 0xf3f2c
mov ax, word [es:bx+00ah] ; 26 8b 47 0a ; 0xf3f2f
mov word [bp-014h], ax ; 89 46 ec ; 0xf3f33
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf3f36 eltorito.c:330
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf3f39
mov ax, word [bp+006h] ; 8b 46 06 ; 0xf3f3c
mov word [bp-01ah], ax ; 89 46 e6 ; 0xf3f3f
mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xf3f42 eltorito.c:335
mov dx, cx ; 89 ca ; 0xf3f45
shr dx, 1 ; d1 ea ; 0xf3f47
rcr ax, 1 ; d1 d8 ; 0xf3f49
shr dx, 1 ; d1 ea ; 0xf3f4b
rcr ax, 1 ; d1 d8 ; 0xf3f4d
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf3f4f
mov word [bp-00ah], dx ; 89 56 f6 ; 0xf3f52
mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xf3f55 eltorito.c:336
and ax, strict word 00003h ; 25 03 00 ; 0xf3f58
mov word [bp-016h], ax ; 89 46 ea ; 0xf3f5b
test ax, ax ; 85 c0 ; 0xf3f5e eltorito.c:339
je short 03fd2h ; 74 70 ; 0xf3f60
mov ax, strict word 00004h ; b8 04 00 ; 0xf3f62 eltorito.c:341
sub ax, word [bp-016h] ; 2b 46 ea ; 0xf3f65
cmp di, ax ; 39 c7 ; 0xf3f68
jnc short 03f71h ; 73 05 ; 0xf3f6a
mov word [bp-01ch], di ; 89 7e e4 ; 0xf3f6c
jmp short 03f74h ; eb 03 ; 0xf3f6f
mov word [bp-01ch], ax ; 89 46 e4 ; 0xf3f71
mov es, [bp-008h] ; 8e 46 f8 ; 0xf3f74 eltorito.c:343
db 066h, 026h, 0ffh, 074h, 016h
; push dword [es:si+016h] ; 66 26 ff 74 16 ; 0xf3f77
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf3f7c
add bx, word [bp-00ch] ; 03 5e f4 ; 0xf3f7f
mov cx, word [bp-014h] ; 8b 4e ec ; 0xf3f82
adc cx, word [bp-00ah] ; 13 4e f6 ; 0xf3f85
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf3f88
mov dx, strict word 00001h ; ba 01 00 ; 0xf3f8c
call 03e84h ; e8 f2 fe ; 0xf3f8f
mov word [bp-012h], ax ; 89 46 ee ; 0xf3f92
test ax, ax ; 85 c0 ; 0xf3f95 eltorito.c:344
jne near 04061h ; 0f 85 c6 00 ; 0xf3f97
mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xf3f9b eltorito.c:345
sal ax, 009h ; c1 e0 09 ; 0xf3f9e
mov word [bp-020h], ax ; 89 46 e0 ; 0xf3fa1
push ax ; 50 ; 0xf3fa4
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf3fa5
sal ax, 009h ; c1 e0 09 ; 0xf3fa8
mov es, [bp-008h] ; 8e 46 f8 ; 0xf3fab
mov bx, word [es:si+016h] ; 26 8b 5c 16 ; 0xf3fae
mov cx, word [es:si+018h] ; 26 8b 4c 18 ; 0xf3fb2
add bx, ax ; 01 c3 ; 0xf3fb6
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf3fb8
mov dx, word [bp-01ah] ; 8b 56 e6 ; 0xf3fbb
call 0ad90h ; e8 cf 6d ; 0xf3fbe
mov ax, word [bp-020h] ; 8b 46 e0 ; 0xf3fc1 eltorito.c:348
add word [bp-00eh], ax ; 01 46 f2 ; 0xf3fc4
sub di, word [bp-01ch] ; 2b 7e e4 ; 0xf3fc7 eltorito.c:349
add word [bp-00ch], strict byte 00001h ; 83 46 f4 01 ; 0xf3fca eltorito.c:350
adc word [bp-00ah], strict byte 00000h ; 83 56 f6 00 ; 0xf3fce
mov ax, di ; 89 f8 ; 0xf3fd2 eltorito.c:354
shr ax, 002h ; c1 e8 02 ; 0xf3fd4
mov word [bp-010h], ax ; 89 46 f0 ; 0xf3fd7
test ax, ax ; 85 c0 ; 0xf3fda
je short 0401dh ; 74 3f ; 0xf3fdc
push word [bp-01ah] ; ff 76 e6 ; 0xf3fde eltorito.c:358
push word [bp-00eh] ; ff 76 f2 ; 0xf3fe1
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf3fe4
add bx, word [bp-00ch] ; 03 5e f4 ; 0xf3fe7
mov cx, word [bp-014h] ; 8b 4e ec ; 0xf3fea
adc cx, word [bp-00ah] ; 13 4e f6 ; 0xf3fed
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf3ff0
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf3ff4
call 03e84h ; e8 8a fe ; 0xf3ff7
mov word [bp-012h], ax ; 89 46 ee ; 0xf3ffa
test ax, ax ; 85 c0 ; 0xf3ffd eltorito.c:359
jne short 04061h ; 75 60 ; 0xf3fff
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf4001 eltorito.c:360
sal ax, 00bh ; c1 e0 0b ; 0xf4004
add word [bp-00eh], ax ; 01 46 f2 ; 0xf4007
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf400a eltorito.c:362
sal ax, 002h ; c1 e0 02 ; 0xf400d
sub di, ax ; 29 c7 ; 0xf4010
xor ax, ax ; 31 c0 ; 0xf4012 eltorito.c:363
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf4014
add word [bp-00ch], dx ; 01 56 f4 ; 0xf4017
adc word [bp-00ah], ax ; 11 46 f6 ; 0xf401a
test di, di ; 85 ff ; 0xf401d eltorito.c:367
je short 0405eh ; 74 3d ; 0xf401f
mov es, [bp-008h] ; 8e 46 f8 ; 0xf4021 eltorito.c:369
db 066h, 026h, 0ffh, 074h, 016h
; push dword [es:si+016h] ; 66 26 ff 74 16 ; 0xf4024
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf4029
add bx, word [bp-00ch] ; 03 5e f4 ; 0xf402c
mov cx, word [bp-014h] ; 8b 4e ec ; 0xf402f
adc cx, word [bp-00ah] ; 13 4e f6 ; 0xf4032
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf4035
mov dx, strict word 00001h ; ba 01 00 ; 0xf4039
call 03e84h ; e8 45 fe ; 0xf403c
mov word [bp-012h], ax ; 89 46 ee ; 0xf403f
test ax, ax ; 85 c0 ; 0xf4042 eltorito.c:370
jne short 04061h ; 75 1b ; 0xf4044
sal di, 009h ; c1 e7 09 ; 0xf4046 eltorito.c:371
push di ; 57 ; 0xf4049
mov es, [bp-008h] ; 8e 46 f8 ; 0xf404a
mov bx, word [es:si+016h] ; 26 8b 5c 16 ; 0xf404d
mov cx, word [es:si+018h] ; 26 8b 4c 18 ; 0xf4051
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf4055
mov dx, word [bp-01ah] ; 8b 56 e6 ; 0xf4058
call 0ad90h ; e8 32 6d ; 0xf405b
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf405e eltorito.c:376
lea sp, [bp-004h] ; 8d 66 fc ; 0xf4061 eltorito.c:377
pop di ; 5f ; 0xf4064
pop si ; 5e ; 0xf4065
pop bp ; 5d ; 0xf4066
retn 00004h ; c2 04 00 ; 0xf4067
; disGetNextSymbol 0xf406a LB 0x6db2 -> off=0x0 cb=00000000000002ba uValue=00000000000f2a6a 'cdrom_boot'
cdrom_boot: ; 0xf406a LB 0x2ba
push bp ; 55 ; 0xf406a eltorito.c:387
mov bp, sp ; 89 e5 ; 0xf406b
push bx ; 53 ; 0xf406d
push cx ; 51 ; 0xf406e
push dx ; 52 ; 0xf406f
push si ; 56 ; 0xf4070
push di ; 57 ; 0xf4071
sub sp, 00808h ; 81 ec 08 08 ; 0xf4072
mov si, strict word 0000eh ; be 0e 00 ; 0xf4076 eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf4079
mov es, ax ; 8e c0 ; 0xf407c
mov ax, word [es:si] ; 26 8b 04 ; 0xf407e
mov word [bp-012h], ax ; 89 46 ee ; 0xf4081 eltorito.c:59
mov si, 00316h ; be 16 03 ; 0xf4084 eltorito.c:399
mov word [bp-010h], ax ; 89 46 f0 ; 0xf4087
mov byte [bp-00ch], 000h ; c6 46 f4 00 ; 0xf408a eltorito.c:403
jmp short 04099h ; eb 09 ; 0xf408e
inc byte [bp-00ch] ; fe 46 f4 ; 0xf4090 eltorito.c:406
cmp byte [bp-00ch], 014h ; 80 7e f4 14 ; 0xf4093
jnc short 040a4h ; 73 0b ; 0xf4097
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf4099
call 03e52h ; e8 b2 fd ; 0xf409d
test ax, ax ; 85 c0 ; 0xf40a0
je short 04090h ; 74 ec ; 0xf40a2
cmp byte [bp-00ch], 014h ; 80 7e f4 14 ; 0xf40a4 eltorito.c:409
jc short 040b0h ; 72 06 ; 0xf40a8
mov ax, strict word 00002h ; b8 02 00 ; 0xf40aa eltorito.c:410
jmp near 0431ah ; e9 6a 02 ; 0xf40ad
mov byte [bp-00eh], 000h ; c6 46 f2 00 ; 0xf40b0 eltorito.c:413
jmp short 040bfh ; eb 09 ; 0xf40b4
inc byte [bp-00eh] ; fe 46 f2 ; 0xf40b6 eltorito.c:418
cmp byte [bp-00eh], 004h ; 80 7e f2 04 ; 0xf40b9
jnbe short 040d8h ; 77 19 ; 0xf40bd
lea dx, [bp-00812h] ; 8d 96 ee f7 ; 0xf40bf
push SS ; 16 ; 0xf40c3
push dx ; 52 ; 0xf40c4
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf40c5
mov dx, strict word 00001h ; ba 01 00 ; 0xf40c9
mov bx, strict word 00011h ; bb 11 00 ; 0xf40cc
xor cx, cx ; 31 c9 ; 0xf40cf
call 03e84h ; e8 b0 fd ; 0xf40d1
test ax, ax ; 85 c0 ; 0xf40d4
jne short 040b6h ; 75 de ; 0xf40d6
test ax, ax ; 85 c0 ; 0xf40d8 eltorito.c:419
je short 040e2h ; 74 06 ; 0xf40da
mov ax, strict word 00003h ; b8 03 00 ; 0xf40dc eltorito.c:420
jmp near 0431ah ; e9 38 02 ; 0xf40df
cmp byte [bp-00812h], 000h ; 80 be ee f7 00 ; 0xf40e2 eltorito.c:423
je short 040efh ; 74 06 ; 0xf40e7
mov ax, strict word 00004h ; b8 04 00 ; 0xf40e9 eltorito.c:424
jmp near 0431ah ; e9 2b 02 ; 0xf40ec
xor di, di ; 31 ff ; 0xf40ef eltorito.c:426
jmp short 040f9h ; eb 06 ; 0xf40f1
inc di ; 47 ; 0xf40f3 eltorito.c:428
cmp di, strict byte 00005h ; 83 ff 05 ; 0xf40f4
jnc short 04109h ; 73 10 ; 0xf40f7
mov al, byte [bp+di-00811h] ; 8a 83 ef f7 ; 0xf40f9
cmp al, byte [di+00e1eh] ; 3a 85 1e 0e ; 0xf40fd
je short 040f3h ; 74 f0 ; 0xf4101
mov ax, strict word 00005h ; b8 05 00 ; 0xf4103
jmp near 0431ah ; e9 11 02 ; 0xf4106
xor di, di ; 31 ff ; 0xf4109 eltorito.c:430
jmp short 04113h ; eb 06 ; 0xf410b
inc di ; 47 ; 0xf410d eltorito.c:432
cmp di, strict byte 00017h ; 83 ff 17 ; 0xf410e
jnc short 04123h ; 73 10 ; 0xf4111
mov al, byte [bp+di-0080bh] ; 8a 83 f5 f7 ; 0xf4113
cmp al, byte [di+00e24h] ; 3a 85 24 0e ; 0xf4117
je short 0410dh ; 74 f0 ; 0xf411b
mov ax, strict word 00006h ; b8 06 00 ; 0xf411d
jmp near 0431ah ; e9 f7 01 ; 0xf4120
mov bx, word [bp-007cbh] ; 8b 9e 35 f8 ; 0xf4123 eltorito.c:435
mov cx, word [bp-007c9h] ; 8b 8e 37 f8 ; 0xf4127
lea dx, [bp-00812h] ; 8d 96 ee f7 ; 0xf412b eltorito.c:439
push SS ; 16 ; 0xf412f
push dx ; 52 ; 0xf4130
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf4131
mov dx, strict word 00001h ; ba 01 00 ; 0xf4135
call 03e84h ; e8 49 fd ; 0xf4138
test ax, ax ; 85 c0 ; 0xf413b eltorito.c:440
je short 04145h ; 74 06 ; 0xf413d
mov ax, strict word 00007h ; b8 07 00 ; 0xf413f eltorito.c:441
jmp near 0431ah ; e9 d5 01 ; 0xf4142
cmp byte [bp-00812h], 001h ; 80 be ee f7 01 ; 0xf4145 eltorito.c:446
je short 04152h ; 74 06 ; 0xf414a
mov ax, strict word 00008h ; b8 08 00 ; 0xf414c eltorito.c:447
jmp near 0431ah ; e9 c8 01 ; 0xf414f
cmp byte [bp-00811h], 000h ; 80 be ef f7 00 ; 0xf4152 eltorito.c:448
je short 0415fh ; 74 06 ; 0xf4157
mov ax, strict word 00009h ; b8 09 00 ; 0xf4159 eltorito.c:449
jmp near 0431ah ; e9 bb 01 ; 0xf415c
cmp byte [bp-007f4h], 055h ; 80 be 0c f8 55 ; 0xf415f eltorito.c:450
je short 0416ch ; 74 06 ; 0xf4164
mov ax, strict word 0000ah ; b8 0a 00 ; 0xf4166 eltorito.c:451
jmp near 0431ah ; e9 ae 01 ; 0xf4169
cmp byte [bp-007f3h], 0aah ; 80 be 0d f8 aa ; 0xf416c eltorito.c:452
jne short 04166h ; 75 f3 ; 0xf4171
cmp byte [bp-007f2h], 088h ; 80 be 0e f8 88 ; 0xf4173 eltorito.c:453
je short 04180h ; 74 06 ; 0xf4178
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf417a eltorito.c:457
jmp near 0431ah ; e9 9a 01 ; 0xf417d
mov al, byte [bp-007f1h] ; 8a 86 0f f8 ; 0xf4180 eltorito.c:459
mov es, [bp-010h] ; 8e 46 f0 ; 0xf4184
mov byte [es:si+001h], al ; 26 88 44 01 ; 0xf4187
cmp byte [bp-007f1h], 000h ; 80 be 0f f8 00 ; 0xf418b eltorito.c:460
jne short 04199h ; 75 07 ; 0xf4190
mov byte [es:si+002h], 0e0h ; 26 c6 44 02 e0 ; 0xf4192 eltorito.c:463
jmp short 041ach ; eb 13 ; 0xf4197 eltorito.c:465
cmp byte [bp-007f1h], 004h ; 80 be 0f f8 04 ; 0xf4199
jnc short 041a7h ; 73 07 ; 0xf419e
mov byte [es:si+002h], 000h ; 26 c6 44 02 00 ; 0xf41a0 eltorito.c:466
jmp short 041ach ; eb 05 ; 0xf41a5 eltorito.c:467
mov byte [es:si+002h], 080h ; 26 c6 44 02 80 ; 0xf41a7 eltorito.c:468
movzx di, byte [bp-00ch] ; 0f b6 7e f4 ; 0xf41ac eltorito.c:470
mov ax, di ; 89 f8 ; 0xf41b0
cwd ; 99 ; 0xf41b2
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf41b3
sar ax, 1 ; d1 f8 ; 0xf41b5
mov es, [bp-010h] ; 8e 46 f0 ; 0xf41b7
mov byte [es:si+003h], al ; 26 88 44 03 ; 0xf41ba
mov ax, di ; 89 f8 ; 0xf41be eltorito.c:471
cwd ; 99 ; 0xf41c0
mov bx, strict word 00002h ; bb 02 00 ; 0xf41c1
idiv bx ; f7 fb ; 0xf41c4
mov word [es:si+004h], dx ; 26 89 54 04 ; 0xf41c6
mov di, word [bp-007f0h] ; 8b be 10 f8 ; 0xf41ca eltorito.c:473
test di, di ; 85 ff ; 0xf41ce eltorito.c:474
jne short 041d5h ; 75 03 ; 0xf41d0
mov di, 007c0h ; bf c0 07 ; 0xf41d2 eltorito.c:475
mov es, [bp-010h] ; 8e 46 f0 ; 0xf41d5 eltorito.c:477
mov word [es:si+00ch], di ; 26 89 7c 0c ; 0xf41d8
mov word [es:si+006h], strict word 00000h ; 26 c7 44 06 00 00 ; 0xf41dc eltorito.c:478
mov dx, word [bp-007ech] ; 8b 96 14 f8 ; 0xf41e2 eltorito.c:480
mov word [es:si+00eh], dx ; 26 89 54 0e ; 0xf41e6 eltorito.c:481
test dx, dx ; 85 d2 ; 0xf41ea eltorito.c:486
je short 041f4h ; 74 06 ; 0xf41ec
cmp dx, 00400h ; 81 fa 00 04 ; 0xf41ee
jbe short 041fah ; 76 06 ; 0xf41f2
mov ax, strict word 0000ch ; b8 0c 00 ; 0xf41f4 eltorito.c:487
jmp near 0431ah ; e9 20 01 ; 0xf41f7
mov ax, word [bp-007eah] ; 8b 86 16 f8 ; 0xf41fa eltorito.c:489
mov bx, word [bp-007e8h] ; 8b 9e 18 f8 ; 0xf41fe
mov word [es:si+008h], ax ; 26 89 44 08 ; 0xf4202 eltorito.c:490
mov word [es:si+00ah], bx ; 26 89 5c 0a ; 0xf4206
call 03c5ah ; e8 4d fa ; 0xf420a eltorito.c:496
mov es, [bp-010h] ; 8e 46 f0 ; 0xf420d
mov word [es:si+016h], strict word 00000h ; 26 c7 44 16 00 00 ; 0xf4210
mov word [es:si+018h], ax ; 26 89 44 18 ; 0xf4216
mov ax, word [es:si+016h] ; 26 8b 44 16 ; 0xf421a eltorito.c:497
mov bx, word [es:si+018h] ; 26 8b 5c 18 ; 0xf421e
test bx, bx ; 85 db ; 0xf4222
jne short 04230h ; 75 0a ; 0xf4224
test ax, ax ; 85 c0 ; 0xf4226
jne short 04230h ; 75 06 ; 0xf4228
mov ax, strict word 0000dh ; b8 0d 00 ; 0xf422a eltorito.c:498
jmp near 0431ah ; e9 ea 00 ; 0xf422d
push di ; 57 ; 0xf4230 eltorito.c:501
push strict byte 00000h ; 6a 00 ; 0xf4231
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf4233
xor bx, bx ; 31 db ; 0xf4237
xor cx, cx ; 31 c9 ; 0xf4239
call 03f03h ; e8 c5 fc ; 0xf423b
test ax, ax ; 85 c0 ; 0xf423e eltorito.c:502
je short 04248h ; 74 06 ; 0xf4240
mov ax, strict word 0000eh ; b8 0e 00 ; 0xf4242 eltorito.c:503
jmp near 0431ah ; e9 d2 00 ; 0xf4245
mov es, [bp-010h] ; 8e 46 f0 ; 0xf4248 eltorito.c:508
mov al, byte [es:si+001h] ; 26 8a 44 01 ; 0xf424b
cmp AL, strict byte 002h ; 3c 02 ; 0xf424f
jc short 0425fh ; 72 0c ; 0xf4251
jbe short 04277h ; 76 22 ; 0xf4253
cmp AL, strict byte 004h ; 3c 04 ; 0xf4255
je short 0428dh ; 74 34 ; 0xf4257
cmp AL, strict byte 003h ; 3c 03 ; 0xf4259
je short 04282h ; 74 25 ; 0xf425b
jmp short 042d1h ; eb 72 ; 0xf425d
cmp AL, strict byte 001h ; 3c 01 ; 0xf425f
jne short 042d1h ; 75 6e ; 0xf4261
mov es, [bp-010h] ; 8e 46 f0 ; 0xf4263 eltorito.c:510
db 066h, 026h, 0c7h, 044h, 012h, 050h, 000h, 00fh, 000h
; mov dword [es:si+012h], strict dword 0000f0050h ; 66 26 c7 44 12 50 00 0f 00; 0xf4266
mov word [es:si+010h], strict word 00002h ; 26 c7 44 10 02 00 ; 0xf426f eltorito.c:512
jmp short 042d1h ; eb 5a ; 0xf4275 eltorito.c:513
db 066h, 026h, 0c7h, 044h, 012h, 050h, 000h, 012h, 000h
; mov dword [es:si+012h], strict dword 000120050h ; 66 26 c7 44 12 50 00 12 00; 0xf4277 eltorito.c:515
jmp short 0426fh ; eb ed ; 0xf4280
db 066h, 026h, 0c7h, 044h, 012h, 050h, 000h, 024h, 000h
; mov dword [es:si+012h], strict dword 000240050h ; 66 26 c7 44 12 50 00 24 00; 0xf4282 eltorito.c:520
jmp short 0426fh ; eb e2 ; 0xf428b
mov bx, 001c4h ; bb c4 01 ; 0xf428d eltorito.c:48
mov es, di ; 8e c7 ; 0xf4290
mov al, byte [es:bx] ; 26 8a 07 ; 0xf4292
and AL, strict byte 03fh ; 24 3f ; 0xf4295 eltorito.c:49
xor ah, ah ; 30 e4 ; 0xf4297
mov es, [bp-010h] ; 8e 46 f0 ; 0xf4299
mov word [es:si+014h], ax ; 26 89 44 14 ; 0xf429c
mov es, di ; 8e c7 ; 0xf42a0 eltorito.c:48
mov al, byte [es:bx] ; 26 8a 07 ; 0xf42a2
and ax, 000c0h ; 25 c0 00 ; 0xf42a5 eltorito.c:49
mov dx, ax ; 89 c2 ; 0xf42a8
sal dx, 002h ; c1 e2 02 ; 0xf42aa
mov bx, 001c5h ; bb c5 01 ; 0xf42ad eltorito.c:48
mov al, byte [es:bx] ; 26 8a 07 ; 0xf42b0
xor ah, ah ; 30 e4 ; 0xf42b3 eltorito.c:49
add ax, dx ; 01 d0 ; 0xf42b5
inc ax ; 40 ; 0xf42b7
mov es, [bp-010h] ; 8e 46 f0 ; 0xf42b8
mov word [es:si+012h], ax ; 26 89 44 12 ; 0xf42bb
mov bx, 001c3h ; bb c3 01 ; 0xf42bf eltorito.c:48
mov es, di ; 8e c7 ; 0xf42c2
mov al, byte [es:bx] ; 26 8a 07 ; 0xf42c4
xor ah, ah ; 30 e4 ; 0xf42c7 eltorito.c:49
inc ax ; 40 ; 0xf42c9
mov es, [bp-010h] ; 8e 46 f0 ; 0xf42ca
mov word [es:si+010h], ax ; 26 89 44 10 ; 0xf42cd
mov es, [bp-010h] ; 8e 46 f0 ; 0xf42d1 eltorito.c:533
cmp byte [es:si+001h], 000h ; 26 80 7c 01 00 ; 0xf42d4
je short 04301h ; 74 26 ; 0xf42d9
cmp byte [es:si+002h], 000h ; 26 80 7c 02 00 ; 0xf42db eltorito.c:535
jne short 042f3h ; 75 11 ; 0xf42e0
mov bx, strict word 00010h ; bb 10 00 ; 0xf42e2 eltorito.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf42e5
mov es, ax ; 8e c0 ; 0xf42e8
mov al, byte [es:bx] ; 26 8a 07 ; 0xf42ea
or AL, strict byte 041h ; 0c 41 ; 0xf42ed eltorito.c:49
mov di, bx ; 89 df ; 0xf42ef eltorito.c:53
jmp short 042feh ; eb 0b ; 0xf42f1 eltorito.c:537
mov di, 002ach ; bf ac 02 ; 0xf42f3 eltorito.c:48
mov es, [bp-012h] ; 8e 46 ee ; 0xf42f6
mov al, byte [es:di] ; 26 8a 05 ; 0xf42f9
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf42fc eltorito.c:49
mov byte [es:di], al ; 26 88 05 ; 0xf42fe eltorito.c:53
mov es, [bp-010h] ; 8e 46 f0 ; 0xf4301 eltorito.c:542
cmp byte [es:si+001h], 000h ; 26 80 7c 01 00 ; 0xf4304
je short 0430fh ; 74 04 ; 0xf4309
mov byte [es:si], 001h ; 26 c6 04 01 ; 0xf430b eltorito.c:543
mov es, [bp-010h] ; 8e 46 f0 ; 0xf430f eltorito.c:546
movzx ax, byte [es:si+002h] ; 26 0f b6 44 02 ; 0xf4312
sal ax, 008h ; c1 e0 08 ; 0xf4317
lea sp, [bp-00ah] ; 8d 66 f6 ; 0xf431a eltorito.c:547
pop di ; 5f ; 0xf431d
pop si ; 5e ; 0xf431e
pop dx ; 5a ; 0xf431f
pop cx ; 59 ; 0xf4320
pop bx ; 5b ; 0xf4321
pop bp ; 5d ; 0xf4322
retn ; c3 ; 0xf4323
; disGetNextSymbol 0xf4324 LB 0x6af8 -> off=0x59 cb=00000000000003eb uValue=00000000000f2d7d 'int13_cdemu'
db 050h, 04eh, 049h, 048h, 047h, 046h, 045h, 044h, 043h, 042h, 041h, 018h, 016h, 015h, 014h, 011h
db 010h, 00dh, 00ch, 00bh, 00ah, 009h, 008h, 005h, 004h, 003h, 002h, 001h, 000h, 04bh, 047h, 026h
db 044h, 071h, 044h, 095h, 044h, 066h, 044h, 095h, 044h, 066h, 044h, 086h, 045h, 04bh, 044h, 04bh
db 047h, 04bh, 047h, 04bh, 044h, 04bh, 044h, 04bh, 044h, 04bh, 044h, 04bh, 044h, 02dh, 046h, 04bh
db 044h, 04bh, 047h, 036h, 046h, 049h, 046h, 04bh, 047h, 049h, 046h, 04bh, 047h, 04bh, 047h, 049h
db 046h, 00eh, 047h, 04bh, 047h, 04bh, 047h, 04bh, 047h
int13_cdemu: ; 0xf437d LB 0x3eb
push bp ; 55 ; 0xf437d eltorito.c:557
mov bp, sp ; 89 e5 ; 0xf437e
push si ; 56 ; 0xf4380
push di ; 57 ; 0xf4381
sub sp, strict byte 00018h ; 83 ec 18 ; 0xf4382
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf4385 eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf4388
mov es, ax ; 8e c0 ; 0xf438b
mov ax, word [es:bx] ; 26 8b 07 ; 0xf438d
mov si, 00316h ; be 16 03 ; 0xf4390 eltorito.c:572
mov dx, ax ; 89 c2 ; 0xf4393
mov bx, si ; 89 f3 ; 0xf4395
mov word [bp-008h], ax ; 89 46 f8 ; 0xf4397
mov word [bp-00ch], strict word 0005eh ; c7 46 f4 5e 00 ; 0xf439a eltorito.c:573
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf439f
mov es, ax ; 8e c0 ; 0xf43a2 eltorito.c:580
mov al, byte [es:si+003h] ; 26 8a 44 03 ; 0xf43a4
add al, al ; 00 c0 ; 0xf43a8
mov byte [bp-006h], al ; 88 46 fa ; 0xf43aa
mov al, byte [es:si+004h] ; 26 8a 44 04 ; 0xf43ad eltorito.c:581
add byte [bp-006h], al ; 00 46 fa ; 0xf43b1
mov di, strict word 00074h ; bf 74 00 ; 0xf43b4 eltorito.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf43b7
mov es, ax ; 8e c0 ; 0xf43ba
mov byte [es:di], 000h ; 26 c6 05 00 ; 0xf43bc
mov es, dx ; 8e c2 ; 0xf43c0 eltorito.c:586
cmp byte [es:si], 000h ; 26 80 3c 00 ; 0xf43c2
je short 043d6h ; 74 0e ; 0xf43c6
movzx dx, byte [es:si+002h] ; 26 0f b6 54 02 ; 0xf43c8
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf43cd
xor ah, ah ; 30 e4 ; 0xf43d0
cmp dx, ax ; 39 c2 ; 0xf43d2
je short 043ffh ; 74 29 ; 0xf43d4
mov bx, 00e16h ; bb 16 0e ; 0xf43d6 eltorito.c:587
mov cx, ds ; 8c d9 ; 0xf43d9
mov ax, strict word 00004h ; b8 04 00 ; 0xf43db
call 01a27h ; e8 46 d6 ; 0xf43de
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf43e1
xor ah, ah ; 30 e4 ; 0xf43e4
push ax ; 50 ; 0xf43e6
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf43e7
shr ax, 008h ; c1 e8 08 ; 0xf43ea
push ax ; 50 ; 0xf43ed
push 003ceh ; 68 ce 03 ; 0xf43ee
push 003dah ; 68 da 03 ; 0xf43f1
push strict byte 00004h ; 6a 04 ; 0xf43f4
call 01a68h ; e8 6f d6 ; 0xf43f6
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf43f9
jmp near 04728h ; e9 29 03 ; 0xf43fc eltorito.c:588
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf43ff eltorito.c:591
shr ax, 008h ; c1 e8 08 ; 0xf4402
cmp ax, strict word 00050h ; 3d 50 00 ; 0xf4405
jnbe near 0474bh ; 0f 87 3f 03 ; 0xf4408
push CS ; 0e ; 0xf440c
pop ES ; 07 ; 0xf440d
mov cx, strict word 0001eh ; b9 1e 00 ; 0xf440e
mov di, 04324h ; bf 24 43 ; 0xf4411
repne scasb ; f2 ae ; 0xf4414
sal cx, 1 ; d1 e1 ; 0xf4416
mov di, cx ; 89 cf ; 0xf4418
mov dx, word [cs:di+04341h] ; 2e 8b 95 41 43 ; 0xf441a
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf441f
xor ah, ah ; 30 e4 ; 0xf4422
jmp dx ; ff e2 ; 0xf4424
movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xf4426 eltorito.c:594
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf442a
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf442d
add bx, word [bp-00ch] ; 03 5e f4 ; 0xf4430
movzx bx, byte [es:bx+01eh] ; 26 0f b6 5f 1e ; 0xf4433
add bx, bx ; 01 db ; 0xf4438
cmp word [word bx+0006ah], strict byte 00000h ; 83 bf 6a 00 00 ; 0xf443a
je near 0444bh ; 0f 84 08 00 ; 0xf443f
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf4443 eltorito.c:596
call word [word bx+00076h] ; ff 97 76 00 ; 0xf4447
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf444b eltorito.c:598
mov bx, strict word 00074h ; bb 74 00 ; 0xf444f
mov ax, strict word 00040h ; b8 40 00 ; 0xf4452
mov es, ax ; 8e c0 ; 0xf4455
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf4457
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf445b
lea sp, [bp-004h] ; 8d 66 fc ; 0xf445f
pop di ; 5f ; 0xf4462
pop si ; 5e ; 0xf4463
pop bp ; 5d ; 0xf4464
retn ; c3 ; 0xf4465
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf4466 eltorito.c:614
xor ah, ah ; 30 e4 ; 0xf4469
or ah, 003h ; 80 cc 03 ; 0xf446b
jmp near 04730h ; e9 bf 02 ; 0xf446e eltorito.c:615
mov bx, strict word 00074h ; bb 74 00 ; 0xf4471 eltorito.c:48
mov dx, strict word 00040h ; ba 40 00 ; 0xf4474
mov es, dx ; 8e c2 ; 0xf4477
mov dl, byte [es:bx] ; 26 8a 17 ; 0xf4479
movzx bx, dl ; 0f b6 da ; 0xf447c eltorito.c:620
sal bx, 008h ; c1 e3 08 ; 0xf447f
or ax, bx ; 09 d8 ; 0xf4482
mov word [bp+016h], ax ; 89 46 16 ; 0xf4484
mov bx, strict word 00074h ; bb 74 00 ; 0xf4487 eltorito.c:53
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf448a
test dl, dl ; 84 d2 ; 0xf448e eltorito.c:624
je short 0444fh ; 74 bd ; 0xf4490
jmp near 04744h ; e9 af 02 ; 0xf4492 eltorito.c:625
mov es, [bp-008h] ; 8e 46 f8 ; 0xf4495 eltorito.c:632
mov si, word [es:bx+014h] ; 26 8b 77 14 ; 0xf4498
mov ax, word [es:bx+012h] ; 26 8b 47 12 ; 0xf449c eltorito.c:633
mov cx, word [es:bx+010h] ; 26 8b 4f 10 ; 0xf44a0 eltorito.c:634
mov dx, word [bp+014h] ; 8b 56 14 ; 0xf44a4 eltorito.c:636
and dx, strict byte 0003fh ; 83 e2 3f ; 0xf44a7
mov word [bp-018h], dx ; 89 56 e8 ; 0xf44aa
mov bx, word [bp+014h] ; 8b 5e 14 ; 0xf44ad eltorito.c:637
and bx, 000c0h ; 81 e3 c0 00 ; 0xf44b0
sal bx, 002h ; c1 e3 02 ; 0xf44b4
mov dx, word [bp+014h] ; 8b 56 14 ; 0xf44b7
shr dx, 008h ; c1 ea 08 ; 0xf44ba
or dx, bx ; 09 da ; 0xf44bd
mov bx, word [bp+012h] ; 8b 5e 12 ; 0xf44bf eltorito.c:638
shr bx, 008h ; c1 eb 08 ; 0xf44c2
mov word [bp-014h], bx ; 89 5e ec ; 0xf44c5
mov di, word [bp+016h] ; 8b 7e 16 ; 0xf44c8 eltorito.c:639
and di, 000ffh ; 81 e7 ff 00 ; 0xf44cb
jne short 044d4h ; 75 03 ; 0xf44cf eltorito.c:647
jmp near 0444bh ; e9 77 ff ; 0xf44d1 eltorito.c:648
cmp si, word [bp-018h] ; 3b 76 e8 ; 0xf44d4 eltorito.c:651
jc near 04728h ; 0f 82 4d 02 ; 0xf44d7
cmp dx, ax ; 39 c2 ; 0xf44db
jnc near 04728h ; 0f 83 47 02 ; 0xf44dd
cmp cx, bx ; 39 d9 ; 0xf44e1
jbe near 04728h ; 0f 86 41 02 ; 0xf44e3
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf44e7 eltorito.c:658
shr ax, 008h ; c1 e8 08 ; 0xf44ea
cmp ax, strict word 00004h ; 3d 04 00 ; 0xf44ed
jne short 044f5h ; 75 03 ; 0xf44f0
jmp near 0444bh ; e9 56 ff ; 0xf44f2 eltorito.c:659
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf44f5 eltorito.c:661
shr ax, 004h ; c1 e8 04 ; 0xf44f8
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf44fb
add bx, ax ; 01 c3 ; 0xf44fe
mov word [bp-010h], bx ; 89 5e f0 ; 0xf4500
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf4503 eltorito.c:662
and ax, strict word 0000fh ; 25 0f 00 ; 0xf4506
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf4509
mov ax, dx ; 89 d0 ; 0xf450c eltorito.c:665
xor dx, dx ; 31 d2 ; 0xf450e
mov bx, cx ; 89 cb ; 0xf4510
xor cx, cx ; 31 c9 ; 0xf4512
call 0ace0h ; e8 c9 67 ; 0xf4514
xor bx, bx ; 31 db ; 0xf4517
add ax, word [bp-014h] ; 03 46 ec ; 0xf4519
adc dx, bx ; 11 da ; 0xf451c
mov bx, si ; 89 f3 ; 0xf451e
xor cx, cx ; 31 c9 ; 0xf4520
call 0ace0h ; e8 bb 67 ; 0xf4522
mov bx, word [bp-018h] ; 8b 5e e8 ; 0xf4525
dec bx ; 4b ; 0xf4528
xor cx, cx ; 31 c9 ; 0xf4529
add bx, ax ; 01 c3 ; 0xf452b
adc cx, dx ; 11 d1 ; 0xf452d
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf452f eltorito.c:668
xor al, al ; 30 c0 ; 0xf4532
or ax, di ; 09 f8 ; 0xf4534
mov word [bp+016h], ax ; 89 46 16 ; 0xf4536
push word [bp-010h] ; ff 76 f0 ; 0xf4539 eltorito.c:670
push word [bp-00eh] ; ff 76 f2 ; 0xf453c
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf453f
mov dx, di ; 89 fa ; 0xf4543
call 03f03h ; e8 bb f9 ; 0xf4545
mov dx, ax ; 89 c2 ; 0xf4548
test al, al ; 84 c0 ; 0xf454a eltorito.c:671
je near 0444bh ; 0f 84 fb fe ; 0xf454c
mov bx, 00e16h ; bb 16 0e ; 0xf4550 eltorito.c:672
mov cx, ds ; 8c d9 ; 0xf4553
mov ax, strict word 00004h ; b8 04 00 ; 0xf4555
call 01a27h ; e8 cc d4 ; 0xf4558
movzx ax, dl ; 0f b6 c2 ; 0xf455b
push ax ; 50 ; 0xf455e
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf455f
shr ax, 008h ; c1 e8 08 ; 0xf4562
push ax ; 50 ; 0xf4565
push 003ceh ; 68 ce 03 ; 0xf4566
push 00410h ; 68 10 04 ; 0xf4569
push strict byte 00004h ; 6a 04 ; 0xf456c
call 01a68h ; e8 f7 d4 ; 0xf456e
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf4571
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf4574 eltorito.c:673
xor ah, ah ; 30 e4 ; 0xf4577
or ah, 002h ; 80 cc 02 ; 0xf4579
mov word [bp+016h], ax ; 89 46 16 ; 0xf457c
mov byte [bp+016h], 000h ; c6 46 16 00 ; 0xf457f eltorito.c:674
jmp near 04733h ; e9 ad 01 ; 0xf4583 eltorito.c:675
mov es, [bp-008h] ; 8e 46 f8 ; 0xf4586 eltorito.c:682
mov si, word [es:bx+014h] ; 26 8b 77 14 ; 0xf4589
mov ax, word [es:bx+012h] ; 26 8b 47 12 ; 0xf458d eltorito.c:683
dec ax ; 48 ; 0xf4591
mov cx, word [es:bx+010h] ; 26 8b 4f 10 ; 0xf4592 eltorito.c:684
dec cx ; 49 ; 0xf4596
mov byte [bp+016h], 000h ; c6 46 16 00 ; 0xf4597 eltorito.c:686
mov dx, word [bp+010h] ; 8b 56 10 ; 0xf459b eltorito.c:687
xor dl, dl ; 30 d2 ; 0xf459e
mov di, word [bp+014h] ; 8b 7e 14 ; 0xf45a0 eltorito.c:688
and di, 000ffh ; 81 e7 ff 00 ; 0xf45a3
mov word [bp-01ch], di ; 89 7e e4 ; 0xf45a7
mov di, ax ; 89 c7 ; 0xf45aa
and di, 000ffh ; 81 e7 ff 00 ; 0xf45ac
sal di, 008h ; c1 e7 08 ; 0xf45b0
mov word [bp-01ah], di ; 89 7e e6 ; 0xf45b3
mov di, word [bp-01ch] ; 8b 7e e4 ; 0xf45b6
or di, word [bp-01ah] ; 0b 7e e6 ; 0xf45b9
mov word [bp+014h], di ; 89 7e 14 ; 0xf45bc
shr ax, 002h ; c1 e8 02 ; 0xf45bf eltorito.c:689
xor ah, ah ; 30 e4 ; 0xf45c2
and AL, strict byte 0c0h ; 24 c0 ; 0xf45c4
and si, strict byte 0003fh ; 83 e6 3f ; 0xf45c6
or si, ax ; 09 c6 ; 0xf45c9
mov ax, di ; 89 f8 ; 0xf45cb
xor al, al ; 30 c0 ; 0xf45cd
or ax, si ; 09 f0 ; 0xf45cf
mov word [bp+014h], ax ; 89 46 14 ; 0xf45d1
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf45d4 eltorito.c:690
xor ah, ah ; 30 e4 ; 0xf45d7
sal cx, 008h ; c1 e1 08 ; 0xf45d9
or ax, cx ; 09 c8 ; 0xf45dc
mov word [bp+012h], ax ; 89 46 12 ; 0xf45de
xor al, al ; 30 c0 ; 0xf45e1 eltorito.c:691
or AL, strict byte 002h ; 0c 02 ; 0xf45e3
mov word [bp+012h], ax ; 89 46 12 ; 0xf45e5
mov al, byte [es:bx+001h] ; 26 8a 47 01 ; 0xf45e8 eltorito.c:694
mov word [bp+010h], dx ; 89 56 10 ; 0xf45ec
cmp AL, strict byte 003h ; 3c 03 ; 0xf45ef
je short 0460fh ; 74 1c ; 0xf45f1
cmp AL, strict byte 002h ; 3c 02 ; 0xf45f3
je short 04607h ; 74 10 ; 0xf45f5
cmp AL, strict byte 001h ; 3c 01 ; 0xf45f7
jne short 04614h ; 75 19 ; 0xf45f9
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf45fb eltorito.c:695
xor al, al ; 30 c0 ; 0xf45fe
or AL, strict byte 002h ; 0c 02 ; 0xf4600
mov word [bp+010h], ax ; 89 46 10 ; 0xf4602
jmp short 04614h ; eb 0d ; 0xf4605
or dl, 004h ; 80 ca 04 ; 0xf4607 eltorito.c:696
mov word [bp+010h], dx ; 89 56 10 ; 0xf460a
jmp short 04614h ; eb 05 ; 0xf460d
or dl, 005h ; 80 ca 05 ; 0xf460f eltorito.c:697
jmp short 0460ah ; eb f6 ; 0xf4612
mov es, [bp-008h] ; 8e 46 f8 ; 0xf4614 eltorito.c:701
cmp byte [es:bx+001h], 004h ; 26 80 7f 01 04 ; 0xf4617
jnc near 0444bh ; 0f 83 2b fe ; 0xf461c
mov word [bp+008h], 0efc7h ; c7 46 08 c7 ef ; 0xf4620 eltorito.c:702
mov word [bp+006h], 0f000h ; c7 46 06 00 f0 ; 0xf4625 eltorito.c:703
jmp near 0444bh ; e9 1e fe ; 0xf462a eltorito.c:705
or ah, 003h ; 80 cc 03 ; 0xf462d eltorito.c:710
mov word [bp+016h], ax ; 89 46 16 ; 0xf4630
jmp near 0444fh ; e9 19 fe ; 0xf4633 eltorito.c:711
mov word [bp+010h], 0aa55h ; c7 46 10 55 aa ; 0xf4636 eltorito.c:715
or ah, 030h ; 80 cc 30 ; 0xf463b eltorito.c:716
mov word [bp+016h], ax ; 89 46 16 ; 0xf463e
mov word [bp+014h], strict word 00007h ; c7 46 14 07 00 ; 0xf4641 eltorito.c:717
jmp near 0444fh ; e9 06 fe ; 0xf4646 eltorito.c:718
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf4649 eltorito.c:726
mov es, [bp+004h] ; 8e 46 04 ; 0xf464c
mov si, bx ; 89 de ; 0xf464f
mov [bp-012h], es ; 8c 46 ee ; 0xf4651
mov dx, word [es:bx+002h] ; 26 8b 57 02 ; 0xf4654 eltorito.c:728
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf4658 eltorito.c:729
mov word [bp-010h], ax ; 89 46 f0 ; 0xf465c
mov ax, word [es:bx+004h] ; 26 8b 47 04 ; 0xf465f eltorito.c:730
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf4663
mov ax, word [es:bx+00ch] ; 26 8b 47 0c ; 0xf4666 eltorito.c:733
mov cx, word [es:bx+00eh] ; 26 8b 4f 0e ; 0xf466a
or ax, cx ; 09 c8 ; 0xf466e eltorito.c:734
je short 0468ah ; 74 18 ; 0xf4670
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf4672 eltorito.c:735
shr ax, 008h ; c1 e8 08 ; 0xf4675
push ax ; 50 ; 0xf4678
push 003ceh ; 68 ce 03 ; 0xf4679
push 00431h ; 68 31 04 ; 0xf467c
push strict byte 00007h ; 6a 07 ; 0xf467f
call 01a68h ; e8 e4 d3 ; 0xf4681
add sp, strict byte 00008h ; 83 c4 08 ; 0xf4684
jmp near 04728h ; e9 9e 00 ; 0xf4687 eltorito.c:736
mov es, [bp-012h] ; 8e 46 ee ; 0xf468a eltorito.c:740
mov ax, word [es:si+008h] ; 26 8b 44 08 ; 0xf468d
mov cx, word [es:si+00ah] ; 26 8b 4c 0a ; 0xf4691
mov di, word [bp+016h] ; 8b 7e 16 ; 0xf4695 eltorito.c:743
shr di, 008h ; c1 ef 08 ; 0xf4698
cmp di, strict byte 00044h ; 83 ff 44 ; 0xf469b
je near 0444bh ; 0f 84 a9 fd ; 0xf469e
cmp di, strict byte 00047h ; 83 ff 47 ; 0xf46a2
jne short 046aah ; 75 03 ; 0xf46a5
jmp near 0444bh ; e9 a1 fd ; 0xf46a7 eltorito.c:744
push word [bp-010h] ; ff 76 f0 ; 0xf46aa eltorito.c:749
push word [bp-00eh] ; ff 76 f2 ; 0xf46ad
movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xf46b0
mov word [bp-01ah], bx ; 89 5e e6 ; 0xf46b4
mov bx, ax ; 89 c3 ; 0xf46b7
mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xf46b9
call 03f03h ; e8 44 f8 ; 0xf46bc
mov word [bp-016h], ax ; 89 46 ea ; 0xf46bf
les bx, [bp-00ch] ; c4 5e f4 ; 0xf46c2 eltorito.c:750
mov ax, word [es:bx+01ah] ; 26 8b 47 1a ; 0xf46c5
mov dx, word [es:bx+01ch] ; 26 8b 57 1c ; 0xf46c9
mov cx, strict word 00009h ; b9 09 00 ; 0xf46cd
shr dx, 1 ; d1 ea ; 0xf46d0
rcr ax, 1 ; d1 d8 ; 0xf46d2
loop 046d0h ; e2 fa ; 0xf46d4
mov es, [bp-012h] ; 8e 46 ee ; 0xf46d6 eltorito.c:751
mov word [es:si+002h], ax ; 26 89 44 02 ; 0xf46d9
cmp byte [bp-016h], 000h ; 80 7e ea 00 ; 0xf46dd eltorito.c:753
je near 0444bh ; 0f 84 66 fd ; 0xf46e1
mov bx, 00e16h ; bb 16 0e ; 0xf46e5 eltorito.c:754
mov cx, ds ; 8c d9 ; 0xf46e8
mov ax, strict word 00004h ; b8 04 00 ; 0xf46ea
call 01a27h ; e8 37 d3 ; 0xf46ed
movzx ax, byte [bp-016h] ; 0f b6 46 ea ; 0xf46f0
push ax ; 50 ; 0xf46f4
push di ; 57 ; 0xf46f5
push 003ceh ; 68 ce 03 ; 0xf46f6
push 0045ah ; 68 5a 04 ; 0xf46f9
push strict byte 00004h ; 6a 04 ; 0xf46fc
call 01a68h ; e8 67 d3 ; 0xf46fe
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf4701
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf4704 eltorito.c:755
xor ah, ah ; 30 e4 ; 0xf4707
or ah, 00ch ; 80 cc 0c ; 0xf4709
jmp short 04730h ; eb 22 ; 0xf470c
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf470e eltorito.c:763
push ax ; 50 ; 0xf4712
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf4713
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf4716
mov bx, word [bp-00ch] ; 8b 5e f4 ; 0xf4719
mov cx, word [bp-00ah] ; 8b 4e f6 ; 0xf471c
call 05933h ; e8 11 12 ; 0xf471f
test ax, ax ; 85 c0 ; 0xf4722
je near 0444bh ; 0f 84 23 fd ; 0xf4724
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf4728 eltorito.c:764
xor ah, ah ; 30 e4 ; 0xf472b
or ah, 001h ; 80 cc 01 ; 0xf472d
mov word [bp+016h], ax ; 89 46 16 ; 0xf4730
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf4733
shr ax, 008h ; c1 e8 08 ; 0xf4736
mov bx, strict word 00074h ; bb 74 00 ; 0xf4739
mov dx, strict word 00040h ; ba 40 00 ; 0xf473c
mov es, dx ; 8e c2 ; 0xf473f
mov byte [es:bx], al ; 26 88 07 ; 0xf4741
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf4744
jmp near 0445fh ; e9 14 fd ; 0xf4748
mov bx, 00e16h ; bb 16 0e ; 0xf474b eltorito.c:780
mov cx, ds ; 8c d9 ; 0xf474e
mov ax, strict word 00004h ; b8 04 00 ; 0xf4750
call 01a27h ; e8 d1 d2 ; 0xf4753
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf4756
shr ax, 008h ; c1 e8 08 ; 0xf4759
push ax ; 50 ; 0xf475c
push 003ceh ; 68 ce 03 ; 0xf475d
push 0047ch ; 68 7c 04 ; 0xf4760
push strict byte 00004h ; 6a 04 ; 0xf4763
jmp near 04681h ; e9 19 ff ; 0xf4765
; disGetNextSymbol 0xf4768 LB 0x66b4 -> off=0x59 cb=0000000000000301 uValue=00000000000f31c1 'int13_cdrom'
db 050h, 04eh, 049h, 048h, 047h, 046h, 045h, 044h, 043h, 042h, 041h, 018h, 016h, 015h, 014h, 011h
db 010h, 00dh, 00ch, 00bh, 00ah, 009h, 008h, 005h, 004h, 003h, 002h, 001h, 000h, 0a5h, 04ah, 009h
db 04ah, 066h, 048h, 0a5h, 04ah, 05bh, 048h, 0a5h, 04ah, 05bh, 048h, 0a5h, 04ah, 009h, 04ah, 0a5h
db 04ah, 0a5h, 04ah, 009h, 04ah, 009h, 04ah, 009h, 04ah, 009h, 04ah, 009h, 04ah, 08ch, 048h, 009h
db 04ah, 0a5h, 04ah, 092h, 048h, 0a5h, 048h, 05bh, 048h, 0a5h, 048h, 06dh, 049h, 024h, 04ah, 0a5h
db 048h, 047h, 04ah, 07fh, 04ah, 087h, 04ah, 0a5h, 04ah
int13_cdrom: ; 0xf47c1 LB 0x301
push bp ; 55 ; 0xf47c1 eltorito.c:805
mov bp, sp ; 89 e5 ; 0xf47c2
push si ; 56 ; 0xf47c4
push di ; 57 ; 0xf47c5
sub sp, strict byte 0000eh ; 83 ec 0e ; 0xf47c6
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf47c9 eltorito.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf47cc
mov es, ax ; 8e c0 ; 0xf47cf
mov ax, word [es:bx] ; 26 8b 07 ; 0xf47d1
mov si, strict word 0005eh ; be 5e 00 ; 0xf47d4 eltorito.c:814
mov word [bp-006h], ax ; 89 46 fa ; 0xf47d7
mov bx, strict word 00074h ; bb 74 00 ; 0xf47da eltorito.c:53
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf47dd
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf47e1 eltorito.c:821
xor ah, ah ; 30 e4 ; 0xf47e4
cmp ax, 000e0h ; 3d e0 00 ; 0xf47e6
jc short 047f0h ; 72 05 ; 0xf47e9
cmp ax, 000f4h ; 3d f4 00 ; 0xf47eb
jc short 0480eh ; 72 1e ; 0xf47ee
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf47f0 eltorito.c:822
xor ah, ah ; 30 e4 ; 0xf47f3
push ax ; 50 ; 0xf47f5
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf47f6
shr ax, 008h ; c1 e8 08 ; 0xf47f9
push ax ; 50 ; 0xf47fc
push 004ach ; 68 ac 04 ; 0xf47fd
push 004b8h ; 68 b8 04 ; 0xf4800
push strict byte 00004h ; 6a 04 ; 0xf4803
call 01a68h ; e8 60 d2 ; 0xf4805
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf4808
jmp near 04a5dh ; e9 4f 02 ; 0xf480b eltorito.c:823
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf480e eltorito.c:827
xor ah, ah ; 30 e4 ; 0xf4811
mov es, [bp-006h] ; 8e 46 fa ; 0xf4813
mov bx, si ; 89 f3 ; 0xf4816
add bx, ax ; 01 c3 ; 0xf4818
mov dl, byte [es:bx+00184h] ; 26 8a 97 84 01 ; 0xf481a
cmp dl, 014h ; 80 fa 14 ; 0xf481f eltorito.c:830
jc short 04834h ; 72 10 ; 0xf4822
push ax ; 50 ; 0xf4824 eltorito.c:831
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4825
shr ax, 008h ; c1 e8 08 ; 0xf4828
push ax ; 50 ; 0xf482b
push 004ach ; 68 ac 04 ; 0xf482c
push 004e3h ; 68 e3 04 ; 0xf482f
jmp short 04803h ; eb cf ; 0xf4832
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4834 eltorito.c:835
shr ax, 008h ; c1 e8 08 ; 0xf4837
cmp ax, strict word 00050h ; 3d 50 00 ; 0xf483a
jnbe near 04aa5h ; 0f 87 64 02 ; 0xf483d
push CS ; 0e ; 0xf4841
pop ES ; 07 ; 0xf4842
mov cx, strict word 0001eh ; b9 1e 00 ; 0xf4843
mov di, 04768h ; bf 68 47 ; 0xf4846
repne scasb ; f2 ae ; 0xf4849
sal cx, 1 ; d1 e1 ; 0xf484b
mov di, cx ; 89 cf ; 0xf484d
mov bx, word [cs:di+04785h] ; 2e 8b 9d 85 47 ; 0xf484f
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4854
xor ah, ah ; 30 e4 ; 0xf4857
jmp bx ; ff e3 ; 0xf4859
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf485b eltorito.c:853
xor ah, ah ; 30 e4 ; 0xf485e
or ah, 003h ; 80 cc 03 ; 0xf4860
jmp near 04a65h ; e9 ff 01 ; 0xf4863
mov bx, strict word 00074h ; bb 74 00 ; 0xf4866 eltorito.c:48
mov dx, strict word 00040h ; ba 40 00 ; 0xf4869
mov es, dx ; 8e c2 ; 0xf486c
mov dl, byte [es:bx] ; 26 8a 17 ; 0xf486e
movzx bx, dl ; 0f b6 da ; 0xf4871 eltorito.c:859
sal bx, 008h ; c1 e3 08 ; 0xf4874
or ax, bx ; 09 d8 ; 0xf4877
mov word [bp+018h], ax ; 89 46 18 ; 0xf4879
mov bx, strict word 00074h ; bb 74 00 ; 0xf487c eltorito.c:53
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf487f
test dl, dl ; 84 d2 ; 0xf4883 eltorito.c:863
je near 04a0dh ; 0f 84 84 01 ; 0xf4885
jmp near 04a79h ; e9 ed 01 ; 0xf4889 eltorito.c:864
or ah, 002h ; 80 cc 02 ; 0xf488c eltorito.c:870
jmp near 04a65h ; e9 d3 01 ; 0xf488f
mov word [bp+012h], 0aa55h ; c7 46 12 55 aa ; 0xf4892 eltorito.c:875
or ah, 030h ; 80 cc 30 ; 0xf4897 eltorito.c:876
mov word [bp+018h], ax ; 89 46 18 ; 0xf489a
mov word [bp+016h], strict word 00007h ; c7 46 16 07 00 ; 0xf489d eltorito.c:877
jmp near 04a0dh ; e9 68 01 ; 0xf48a2 eltorito.c:878
mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xf48a5 eltorito.c:886
mov es, [bp+006h] ; 8e 46 06 ; 0xf48a8
mov di, bx ; 89 df ; 0xf48ab
mov [bp-00ah], es ; 8c 46 f6 ; 0xf48ad
mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xf48b0 eltorito.c:888
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf48b4
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf48b7 eltorito.c:889
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf48bb
mov ax, word [es:bx+004h] ; 26 8b 47 04 ; 0xf48be eltorito.c:890
mov word [bp-010h], ax ; 89 46 f0 ; 0xf48c2
mov ax, word [es:bx+00ch] ; 26 8b 47 0c ; 0xf48c5 eltorito.c:893
mov cx, word [es:bx+00eh] ; 26 8b 4f 0e ; 0xf48c9
or ax, cx ; 09 c8 ; 0xf48cd eltorito.c:894
je short 048e9h ; 74 18 ; 0xf48cf
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf48d1 eltorito.c:895
shr ax, 008h ; c1 e8 08 ; 0xf48d4
push ax ; 50 ; 0xf48d7
push 004ach ; 68 ac 04 ; 0xf48d8
push 00431h ; 68 31 04 ; 0xf48db
push strict byte 00007h ; 6a 07 ; 0xf48de
call 01a68h ; e8 85 d1 ; 0xf48e0
add sp, strict byte 00008h ; 83 c4 08 ; 0xf48e3
jmp near 04a5dh ; e9 74 01 ; 0xf48e6 eltorito.c:896
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf48e9 eltorito.c:900
mov ax, word [es:di+008h] ; 26 8b 45 08 ; 0xf48ec
mov cx, word [es:di+00ah] ; 26 8b 4d 0a ; 0xf48f0
mov bx, word [bp+018h] ; 8b 5e 18 ; 0xf48f4 eltorito.c:903
shr bx, 008h ; c1 eb 08 ; 0xf48f7
mov word [bp-008h], bx ; 89 5e f8 ; 0xf48fa
cmp bx, strict byte 00044h ; 83 fb 44 ; 0xf48fd
je near 04a09h ; 0f 84 05 01 ; 0xf4900
cmp bx, strict byte 00047h ; 83 fb 47 ; 0xf4904
je near 04a09h ; 0f 84 fe 00 ; 0xf4907
push dword [bp-010h] ; 66 ff 76 f0 ; 0xf490b eltorito.c:909
xor dh, dh ; 30 f6 ; 0xf490f
mov word [bp-012h], dx ; 89 56 ee ; 0xf4911
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf4914
mov bx, ax ; 89 c3 ; 0xf4917
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf4919
call 03e84h ; e8 65 f5 ; 0xf491c
mov dx, ax ; 89 c2 ; 0xf491f
mov es, [bp-006h] ; 8e 46 fa ; 0xf4921 eltorito.c:910
mov ax, word [es:si+01ah] ; 26 8b 44 1a ; 0xf4924
mov bx, word [es:si+01ch] ; 26 8b 5c 1c ; 0xf4928
mov cx, strict word 0000bh ; b9 0b 00 ; 0xf492c
shr bx, 1 ; d1 eb ; 0xf492f
rcr ax, 1 ; d1 d8 ; 0xf4931
loop 0492fh ; e2 fa ; 0xf4933
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf4935 eltorito.c:911
mov word [es:di+002h], ax ; 26 89 45 02 ; 0xf4938
test dl, dl ; 84 d2 ; 0xf493c eltorito.c:913
je near 04a09h ; 0f 84 c7 00 ; 0xf493e
mov bx, 00e16h ; bb 16 0e ; 0xf4942 eltorito.c:914
mov cx, ds ; 8c d9 ; 0xf4945
mov ax, strict word 00004h ; b8 04 00 ; 0xf4947
call 01a27h ; e8 da d0 ; 0xf494a
movzx ax, dl ; 0f b6 c2 ; 0xf494d
push ax ; 50 ; 0xf4950
push word [bp-008h] ; ff 76 f8 ; 0xf4951
push 004ach ; 68 ac 04 ; 0xf4954
push 0045ah ; 68 5a 04 ; 0xf4957
push strict byte 00004h ; 6a 04 ; 0xf495a
call 01a68h ; e8 09 d1 ; 0xf495c
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf495f
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4962 eltorito.c:915
xor ah, ah ; 30 e4 ; 0xf4965
or ah, 00ch ; 80 cc 0c ; 0xf4967
jmp near 04a65h ; e9 f8 00 ; 0xf496a
cmp ax, strict word 00002h ; 3d 02 00 ; 0xf496d eltorito.c:923
jnbe near 04a5dh ; 0f 87 e9 00 ; 0xf4970
movzx bx, dl ; 0f b6 da ; 0xf4974 eltorito.c:926
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf4977
mov es, [bp-006h] ; 8e 46 fa ; 0xf497a
add bx, si ; 01 f3 ; 0xf497d
mov bl, byte [es:bx+021h] ; 26 8a 5f 21 ; 0xf497f
cmp ax, strict word 00002h ; 3d 02 00 ; 0xf4983 eltorito.c:928
je short 049fah ; 74 72 ; 0xf4986
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf4988
je short 049c8h ; 74 3b ; 0xf498b
test ax, ax ; 85 c0 ; 0xf498d
jne near 04a09h ; 0f 85 76 00 ; 0xf498f
cmp bl, 0ffh ; 80 fb ff ; 0xf4993 eltorito.c:930
jne short 049aah ; 75 12 ; 0xf4996
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4998 eltorito.c:931
xor ah, ah ; 30 e4 ; 0xf499b
or ah, 0b4h ; 80 cc b4 ; 0xf499d
mov word [bp+018h], ax ; 89 46 18 ; 0xf49a0
xor al, al ; 30 c0 ; 0xf49a3 eltorito.c:932
or AL, strict byte 001h ; 0c 01 ; 0xf49a5
jmp near 04a65h ; e9 bb 00 ; 0xf49a7
movzx ax, dl ; 0f b6 c2 ; 0xf49aa eltorito.c:934
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf49ad
db 0feh, 0c3h
; inc bl ; fe c3 ; 0xf49b0 eltorito.c:935
mov es, [bp-006h] ; 8e 46 fa ; 0xf49b2
add si, ax ; 01 c6 ; 0xf49b5
mov byte [es:si+021h], bl ; 26 88 5c 21 ; 0xf49b7
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf49bb eltorito.c:936
xor al, al ; 30 c0 ; 0xf49be
or AL, strict byte 001h ; 0c 01 ; 0xf49c0
mov word [bp+018h], ax ; 89 46 18 ; 0xf49c2
jmp near 04a09h ; e9 41 00 ; 0xf49c5 eltorito.c:937
test bl, bl ; 84 db ; 0xf49c8 eltorito.c:939
jne short 049d8h ; 75 0c ; 0xf49ca
or ah, 0b0h ; 80 cc b0 ; 0xf49cc eltorito.c:940
mov word [bp+018h], ax ; 89 46 18 ; 0xf49cf
mov byte [bp+018h], bl ; 88 5e 18 ; 0xf49d2 eltorito.c:941
jmp near 04a68h ; e9 90 00 ; 0xf49d5 eltorito.c:942
movzx ax, dl ; 0f b6 c2 ; 0xf49d8 eltorito.c:943
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf49db
db 0feh, 0cbh
; dec bl ; fe cb ; 0xf49de eltorito.c:944
mov es, [bp-006h] ; 8e 46 fa ; 0xf49e0
add si, ax ; 01 c6 ; 0xf49e3
mov byte [es:si+021h], bl ; 26 88 5c 21 ; 0xf49e5
test bl, bl ; 84 db ; 0xf49e9 eltorito.c:945
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf49eb
movzx dx, al ; 0f b6 d0 ; 0xf49ee
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf49f1
xor al, al ; 30 c0 ; 0xf49f4
or ax, dx ; 09 d0 ; 0xf49f6
jmp short 049c2h ; eb c8 ; 0xf49f8
test bl, bl ; 84 db ; 0xf49fa eltorito.c:948
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf49fc
xor ah, ah ; 30 e4 ; 0xf49ff
mov dx, word [bp+018h] ; 8b 56 18 ; 0xf4a01
mov dl, al ; 88 c2 ; 0xf4a04
mov word [bp+018h], dx ; 89 56 18 ; 0xf4a06
mov byte [bp+019h], 000h ; c6 46 19 00 ; 0xf4a09 eltorito.c:951
mov bx, strict word 00074h ; bb 74 00 ; 0xf4a0d
mov ax, strict word 00040h ; b8 40 00 ; 0xf4a10
mov es, ax ; 8e c0 ; 0xf4a13
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf4a15
and byte [bp+01eh], 0feh ; 80 66 1e fe ; 0xf4a19
lea sp, [bp-004h] ; 8d 66 fc ; 0xf4a1d
pop di ; 5f ; 0xf4a20
pop si ; 5e ; 0xf4a21
pop bp ; 5d ; 0xf4a22
retn ; c3 ; 0xf4a23
movzx bx, dl ; 0f b6 da ; 0xf4a24 eltorito.c:955
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf4a27
mov es, [bp-006h] ; 8e 46 fa ; 0xf4a2a
add bx, si ; 01 f3 ; 0xf4a2d
mov bl, byte [es:bx+021h] ; 26 8a 5f 21 ; 0xf4a2f
test bl, bl ; 84 db ; 0xf4a33 eltorito.c:957
je short 04a3ch ; 74 05 ; 0xf4a35
or ah, 0b1h ; 80 cc b1 ; 0xf4a37 eltorito.c:958
jmp short 04a65h ; eb 29 ; 0xf4a3a
test dh, dh ; 84 f6 ; 0xf4a3c eltorito.c:980
je short 04a09h ; 74 c9 ; 0xf4a3e
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4a40 eltorito.c:981
xor ah, ah ; 30 e4 ; 0xf4a43
jmp short 04a37h ; eb f0 ; 0xf4a45
movzx ax, dl ; 0f b6 c2 ; 0xf4a47 eltorito.c:989
push ax ; 50 ; 0xf4a4a
mov ax, word [bp+00ch] ; 8b 46 0c ; 0xf4a4b
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf4a4e
mov bx, si ; 89 f3 ; 0xf4a51
mov cx, word [bp-006h] ; 8b 4e fa ; 0xf4a53
call 05933h ; e8 da 0e ; 0xf4a56
test ax, ax ; 85 c0 ; 0xf4a59
je short 04a09h ; 74 ac ; 0xf4a5b
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4a5d eltorito.c:990
xor ah, ah ; 30 e4 ; 0xf4a60
or ah, 001h ; 80 cc 01 ; 0xf4a62
mov word [bp+018h], ax ; 89 46 18 ; 0xf4a65
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4a68
shr ax, 008h ; c1 e8 08 ; 0xf4a6b
mov bx, strict word 00074h ; bb 74 00 ; 0xf4a6e
mov dx, strict word 00040h ; ba 40 00 ; 0xf4a71
mov es, dx ; 8e c2 ; 0xf4a74
mov byte [es:bx], al ; 26 88 07 ; 0xf4a76
or byte [bp+01eh], 001h ; 80 4e 1e 01 ; 0xf4a79
jmp short 04a1dh ; eb 9e ; 0xf4a7d
or ah, 006h ; 80 cc 06 ; 0xf4a7f eltorito.c:997
mov word [bp+018h], ax ; 89 46 18 ; 0xf4a82
jmp short 04a79h ; eb f2 ; 0xf4a85 eltorito.c:998
cmp ax, strict word 00006h ; 3d 06 00 ; 0xf4a87 eltorito.c:1003
je near 04a09h ; 0f 84 7b ff ; 0xf4a8a
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf4a8e
jc short 04a5dh ; 72 ca ; 0xf4a91
jbe near 04a09h ; 0f 86 72 ff ; 0xf4a93
cmp ax, strict word 00003h ; 3d 03 00 ; 0xf4a97
jc short 04a5dh ; 72 c1 ; 0xf4a9a
cmp ax, strict word 00004h ; 3d 04 00 ; 0xf4a9c
jbe near 04a09h ; 0f 86 66 ff ; 0xf4a9f
jmp short 04a5dh ; eb b8 ; 0xf4aa3 eltorito.c:1011
mov bx, 00e16h ; bb 16 0e ; 0xf4aa5 eltorito.c:1024
mov cx, ds ; 8c d9 ; 0xf4aa8
mov ax, strict word 00004h ; b8 04 00 ; 0xf4aaa
call 01a27h ; e8 77 cf ; 0xf4aad
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf4ab0
shr ax, 008h ; c1 e8 08 ; 0xf4ab3
push ax ; 50 ; 0xf4ab6
push 004ach ; 68 ac 04 ; 0xf4ab7
push 003b5h ; 68 b5 03 ; 0xf4aba
push strict byte 00004h ; 6a 04 ; 0xf4abd
jmp near 048e0h ; e9 1e fe ; 0xf4abf
; disGetNextSymbol 0xf4ac2 LB 0x635a -> off=0x0 cb=000000000000004b uValue=00000000000f34c2 'print_boot_device'
print_boot_device: ; 0xf4ac2 LB 0x4b
push bp ; 55 ; 0xf4ac2 boot.c:119
mov bp, sp ; 89 e5 ; 0xf4ac3
push cx ; 51 ; 0xf4ac5
test al, al ; 84 c0 ; 0xf4ac6 boot.c:127
je short 04acfh ; 74 05 ; 0xf4ac8
mov dx, strict word 00002h ; ba 02 00 ; 0xf4aca
jmp short 04ae9h ; eb 1a ; 0xf4acd boot.c:128
test dl, dl ; 84 d2 ; 0xf4acf
je short 04ad8h ; 74 05 ; 0xf4ad1
mov dx, strict word 00003h ; ba 03 00 ; 0xf4ad3
jmp short 04ae9h ; eb 11 ; 0xf4ad6 boot.c:129
test bl, 080h ; f6 c3 80 ; 0xf4ad8
jne short 04ae1h ; 75 04 ; 0xf4adb
xor dh, dh ; 30 f6 ; 0xf4add
jmp short 04ae9h ; eb 08 ; 0xf4adf boot.c:130
test bl, 080h ; f6 c3 80 ; 0xf4ae1
je short 04b07h ; 74 21 ; 0xf4ae4
mov dx, strict word 00001h ; ba 01 00 ; 0xf4ae6
mov bx, 00e16h ; bb 16 0e ; 0xf4ae9 boot.c:133
mov cx, ds ; 8c d9 ; 0xf4aec
mov ax, strict word 00004h ; b8 04 00 ; 0xf4aee
call 01a27h ; e8 33 cf ; 0xf4af1
imul dx, dx, strict byte 0000ah ; 6b d2 0a ; 0xf4af4
add dx, 00e3ch ; 81 c2 3c 0e ; 0xf4af7
push dx ; 52 ; 0xf4afb
push 00516h ; 68 16 05 ; 0xf4afc
push strict byte 00004h ; 6a 04 ; 0xf4aff
call 01a68h ; e8 64 cf ; 0xf4b01
add sp, strict byte 00006h ; 83 c4 06 ; 0xf4b04
lea sp, [bp-002h] ; 8d 66 fe ; 0xf4b07 boot.c:134
pop cx ; 59 ; 0xf4b0a
pop bp ; 5d ; 0xf4b0b
retn ; c3 ; 0xf4b0c
; disGetNextSymbol 0xf4b0d LB 0x630f -> off=0x0 cb=00000000000000bf uValue=00000000000f350d 'print_boot_failure'
print_boot_failure: ; 0xf4b0d LB 0xbf
push bp ; 55 ; 0xf4b0d boot.c:141
mov bp, sp ; 89 e5 ; 0xf4b0e
push si ; 56 ; 0xf4b10
mov dh, cl ; 88 ce ; 0xf4b11
mov ah, bl ; 88 dc ; 0xf4b13 boot.c:144
and ah, 07fh ; 80 e4 7f ; 0xf4b15
movzx si, ah ; 0f b6 f4 ; 0xf4b18
test al, al ; 84 c0 ; 0xf4b1b boot.c:152
je short 04b3ah ; 74 1b ; 0xf4b1d
mov bx, 00e16h ; bb 16 0e ; 0xf4b1f boot.c:153
mov cx, ds ; 8c d9 ; 0xf4b22
mov ax, strict word 00004h ; b8 04 00 ; 0xf4b24
call 01a27h ; e8 fd ce ; 0xf4b27
push 00e50h ; 68 50 0e ; 0xf4b2a
push 0052ah ; 68 2a 05 ; 0xf4b2d
push strict byte 00004h ; 6a 04 ; 0xf4b30
call 01a68h ; e8 33 cf ; 0xf4b32
add sp, strict byte 00006h ; 83 c4 06 ; 0xf4b35
jmp short 04b7eh ; eb 44 ; 0xf4b38 boot.c:154
test dl, dl ; 84 d2 ; 0xf4b3a
je short 04b4eh ; 74 10 ; 0xf4b3c
mov bx, 00e16h ; bb 16 0e ; 0xf4b3e boot.c:155
mov cx, ds ; 8c d9 ; 0xf4b41
mov ax, strict word 00004h ; b8 04 00 ; 0xf4b43
call 01a27h ; e8 de ce ; 0xf4b46
push 00e5ah ; 68 5a 0e ; 0xf4b49
jmp short 04b2dh ; eb df ; 0xf4b4c
test bl, 080h ; f6 c3 80 ; 0xf4b4e boot.c:156
je short 04b64h ; 74 11 ; 0xf4b51
mov bx, 00e16h ; bb 16 0e ; 0xf4b53 boot.c:157
mov cx, ds ; 8c d9 ; 0xf4b56
mov ax, strict word 00004h ; b8 04 00 ; 0xf4b58
call 01a27h ; e8 c9 ce ; 0xf4b5b
push si ; 56 ; 0xf4b5e
push 00e46h ; 68 46 0e ; 0xf4b5f
jmp short 04b73h ; eb 0f ; 0xf4b62 boot.c:158
mov bx, 00e16h ; bb 16 0e ; 0xf4b64 boot.c:159
mov cx, ds ; 8c d9 ; 0xf4b67
mov ax, strict word 00004h ; b8 04 00 ; 0xf4b69
call 01a27h ; e8 b8 ce ; 0xf4b6c
push si ; 56 ; 0xf4b6f
push 00e3ch ; 68 3c 0e ; 0xf4b70
push 0053fh ; 68 3f 05 ; 0xf4b73
push strict byte 00004h ; 6a 04 ; 0xf4b76
call 01a68h ; e8 ed ce ; 0xf4b78
add sp, strict byte 00008h ; 83 c4 08 ; 0xf4b7b
cmp byte [bp+004h], 001h ; 80 7e 04 01 ; 0xf4b7e boot.c:161
jne short 04bc4h ; 75 40 ; 0xf4b82
test dh, dh ; 84 f6 ; 0xf4b84 boot.c:162
jne short 04b98h ; 75 10 ; 0xf4b86
mov bx, 00e16h ; bb 16 0e ; 0xf4b88 boot.c:163
mov cx, ds ; 8c d9 ; 0xf4b8b
mov ax, strict word 00004h ; b8 04 00 ; 0xf4b8d
call 01a27h ; e8 94 ce ; 0xf4b90
push 00557h ; 68 57 05 ; 0xf4b93
jmp short 04ba6h ; eb 0e ; 0xf4b96 boot.c:164
mov bx, 00e16h ; bb 16 0e ; 0xf4b98 boot.c:165
mov cx, ds ; 8c d9 ; 0xf4b9b
mov ax, strict word 00004h ; b8 04 00 ; 0xf4b9d
call 01a27h ; e8 84 ce ; 0xf4ba0
push 00572h ; 68 72 05 ; 0xf4ba3
push strict byte 00006h ; 6a 06 ; 0xf4ba6
call 01a68h ; e8 bd ce ; 0xf4ba8
add sp, strict byte 00004h ; 83 c4 04 ; 0xf4bab
mov bx, 00e16h ; bb 16 0e ; 0xf4bae boot.c:166
mov cx, ds ; 8c d9 ; 0xf4bb1
mov ax, strict word 00004h ; b8 04 00 ; 0xf4bb3
call 01a27h ; e8 6e ce ; 0xf4bb6
push 00598h ; 68 98 05 ; 0xf4bb9
push strict byte 00006h ; 6a 06 ; 0xf4bbc
call 01a68h ; e8 a7 ce ; 0xf4bbe
add sp, strict byte 00004h ; 83 c4 04 ; 0xf4bc1
lea sp, [bp-002h] ; 8d 66 fe ; 0xf4bc4 boot.c:168
pop si ; 5e ; 0xf4bc7
pop bp ; 5d ; 0xf4bc8
retn 00002h ; c2 02 00 ; 0xf4bc9
; disGetNextSymbol 0xf4bcc LB 0x6250 -> off=0x0 cb=0000000000000027 uValue=00000000000f35cc 'print_cdromboot_failure'
print_cdromboot_failure: ; 0xf4bcc LB 0x27
push bp ; 55 ; 0xf4bcc boot.c:174
mov bp, sp ; 89 e5 ; 0xf4bcd
push bx ; 53 ; 0xf4bcf
push cx ; 51 ; 0xf4bd0
push dx ; 52 ; 0xf4bd1
mov dx, ax ; 89 c2 ; 0xf4bd2
mov bx, 00e16h ; bb 16 0e ; 0xf4bd4 boot.c:176
mov cx, ds ; 8c d9 ; 0xf4bd7
mov ax, strict word 00004h ; b8 04 00 ; 0xf4bd9
call 01a27h ; e8 48 ce ; 0xf4bdc
push dx ; 52 ; 0xf4bdf
push 005c5h ; 68 c5 05 ; 0xf4be0
push strict byte 00004h ; 6a 04 ; 0xf4be3
call 01a68h ; e8 80 ce ; 0xf4be5
add sp, strict byte 00006h ; 83 c4 06 ; 0xf4be8
lea sp, [bp-006h] ; 8d 66 fa ; 0xf4beb boot.c:178
pop dx ; 5a ; 0xf4bee
pop cx ; 59 ; 0xf4bef
pop bx ; 5b ; 0xf4bf0
pop bp ; 5d ; 0xf4bf1
retn ; c3 ; 0xf4bf2
; disGetNextSymbol 0xf4bf3 LB 0x6229 -> off=0x0 cb=0000000000000245 uValue=00000000000f35f3 'int19_function'
int19_function: ; 0xf4bf3 LB 0x245
push bp ; 55 ; 0xf4bf3 boot.c:181
mov bp, sp ; 89 e5 ; 0xf4bf4
push si ; 56 ; 0xf4bf6
push di ; 57 ; 0xf4bf7
sub sp, strict byte 0000eh ; 83 ec 0e ; 0xf4bf8
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf4bfb boot.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf4bfe
mov es, ax ; 8e c0 ; 0xf4c01
mov bx, word [es:bx] ; 26 8b 1f ; 0xf4c03
mov word [bp-00eh], bx ; 89 5e f2 ; 0xf4c06 boot.c:59
mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xf4c09 boot.c:192
mov ax, strict word 0003dh ; b8 3d 00 ; 0xf4c0d boot.c:215
call 0176ah ; e8 57 cb ; 0xf4c10
movzx dx, al ; 0f b6 d0 ; 0xf4c13
mov ax, strict word 00038h ; b8 38 00 ; 0xf4c16 boot.c:216
call 0176ah ; e8 4e cb ; 0xf4c19
and AL, strict byte 0f0h ; 24 f0 ; 0xf4c1c
xor ah, ah ; 30 e4 ; 0xf4c1e
sal ax, 004h ; c1 e0 04 ; 0xf4c20
or dx, ax ; 09 c2 ; 0xf4c23
mov ax, strict word 0003ch ; b8 3c 00 ; 0xf4c25 boot.c:217
call 0176ah ; e8 3f cb ; 0xf4c28
and AL, strict byte 00fh ; 24 0f ; 0xf4c2b
xor ah, ah ; 30 e4 ; 0xf4c2d
sal ax, 00ch ; c1 e0 0c ; 0xf4c2f
or dx, ax ; 09 c2 ; 0xf4c32
mov di, 00331h ; bf 31 03 ; 0xf4c34 boot.c:48
mov es, bx ; 8e c3 ; 0xf4c37
mov al, byte [es:di] ; 26 8a 05 ; 0xf4c39
test al, al ; 84 c0 ; 0xf4c3c boot.c:49
je short 04c43h ; 74 03 ; 0xf4c3e
movzx dx, al ; 0f b6 d0 ; 0xf4c40 boot.c:49
cmp byte [bp+004h], 001h ; 80 7e 04 01 ; 0xf4c43 boot.c:221
jne short 04c59h ; 75 10 ; 0xf4c47
mov ax, strict word 0003ch ; b8 3c 00 ; 0xf4c49 boot.c:222
call 0176ah ; e8 1b cb ; 0xf4c4c
and AL, strict byte 0f0h ; 24 f0 ; 0xf4c4f
xor ah, ah ; 30 e4 ; 0xf4c51
sar ax, 004h ; c1 f8 04 ; 0xf4c53
call 07b25h ; e8 cc 2e ; 0xf4c56
cmp byte [bp+004h], 002h ; 80 7e 04 02 ; 0xf4c59 boot.c:224
jne short 04c62h ; 75 03 ; 0xf4c5d
shr dx, 004h ; c1 ea 04 ; 0xf4c5f
cmp byte [bp+004h], 003h ; 80 7e 04 03 ; 0xf4c62 boot.c:225
jne short 04c6bh ; 75 03 ; 0xf4c66
shr dx, 008h ; c1 ea 08 ; 0xf4c68
cmp byte [bp+004h], 004h ; 80 7e 04 04 ; 0xf4c6b boot.c:226
jne short 04c74h ; 75 03 ; 0xf4c6f
shr dx, 00ch ; c1 ea 0c ; 0xf4c71
cmp dx, strict byte 00010h ; 83 fa 10 ; 0xf4c74 boot.c:227
jnc short 04c7dh ; 73 04 ; 0xf4c77
mov byte [bp-006h], 001h ; c6 46 fa 01 ; 0xf4c79
xor al, al ; 30 c0 ; 0xf4c7d boot.c:228
mov byte [bp-008h], al ; 88 46 f8 ; 0xf4c7f
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf4c82
mov byte [bp-00ch], al ; 88 46 f4 ; 0xf4c85 boot.c:229
mov bx, 00e16h ; bb 16 0e ; 0xf4c88 boot.c:230
mov cx, ds ; 8c d9 ; 0xf4c8b
mov ax, strict word 00004h ; b8 04 00 ; 0xf4c8d
call 01a27h ; e8 94 cd ; 0xf4c90
push dx ; 52 ; 0xf4c93
movzx ax, byte [bp+004h] ; 0f b6 46 04 ; 0xf4c94
push ax ; 50 ; 0xf4c98
push 005e5h ; 68 e5 05 ; 0xf4c99
push strict byte 00004h ; 6a 04 ; 0xf4c9c
call 01a68h ; e8 c7 cd ; 0xf4c9e
add sp, strict byte 00008h ; 83 c4 08 ; 0xf4ca1
and dx, strict byte 0000fh ; 83 e2 0f ; 0xf4ca4 boot.c:232
cmp dx, strict byte 00002h ; 83 fa 02 ; 0xf4ca7
jc short 04cbah ; 72 0e ; 0xf4caa
jbe short 04cc9h ; 76 1b ; 0xf4cac
cmp dx, strict byte 00004h ; 83 fa 04 ; 0xf4cae
je short 04ce6h ; 74 33 ; 0xf4cb1
cmp dx, strict byte 00003h ; 83 fa 03 ; 0xf4cb3
je short 04cdch ; 74 24 ; 0xf4cb6
jmp short 04d13h ; eb 59 ; 0xf4cb8
cmp dx, strict byte 00001h ; 83 fa 01 ; 0xf4cba
jne short 04d13h ; 75 54 ; 0xf4cbd
xor al, al ; 30 c0 ; 0xf4cbf boot.c:234
mov byte [bp-008h], al ; 88 46 f8 ; 0xf4cc1
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf4cc4 boot.c:235
jmp short 04d29h ; eb 60 ; 0xf4cc7 boot.c:236
mov bx, 00330h ; bb 30 03 ; 0xf4cc9 boot.c:48
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf4ccc
mov al, byte [es:bx] ; 26 8a 07 ; 0xf4ccf
add AL, strict byte 080h ; 04 80 ; 0xf4cd2 boot.c:242
mov byte [bp-008h], al ; 88 46 f8 ; 0xf4cd4
mov byte [bp-00ah], dh ; 88 76 f6 ; 0xf4cd7 boot.c:243
jmp short 04d29h ; eb 4d ; 0xf4cda boot.c:244
mov byte [bp-008h], 000h ; c6 46 f8 00 ; 0xf4cdc boot.c:247
mov byte [bp-00ah], 001h ; c6 46 f6 01 ; 0xf4ce0 boot.c:248
jmp short 04cf0h ; eb 0a ; 0xf4ce4 boot.c:249
mov byte [bp-00ch], 001h ; c6 46 f4 01 ; 0xf4ce6 boot.c:250
cmp byte [bp-00ah], 000h ; 80 7e f6 00 ; 0xf4cea boot.c:266
je short 04d29h ; 74 39 ; 0xf4cee
call 0406ah ; e8 77 f3 ; 0xf4cf0 boot.c:267
mov dx, ax ; 89 c2 ; 0xf4cf3
test AL, strict byte 0ffh ; a8 ff ; 0xf4cf5 boot.c:270
je short 04d1ah ; 74 21 ; 0xf4cf7
call 04bcch ; e8 d0 fe ; 0xf4cf9 boot.c:271
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf4cfc boot.c:272
push ax ; 50 ; 0xf4d00
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf4d01
movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xf4d05
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf4d09
mov cx, strict word 00001h ; b9 01 00 ; 0xf4d0d
call 04b0dh ; e8 fa fd ; 0xf4d10
xor ax, ax ; 31 c0 ; 0xf4d13
xor dx, dx ; 31 d2 ; 0xf4d15
jmp near 04e31h ; e9 17 01 ; 0xf4d17
mov bx, 00322h ; bb 22 03 ; 0xf4d1a boot.c:58
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf4d1d
mov si, word [es:bx] ; 26 8b 37 ; 0xf4d20
shr dx, 008h ; c1 ea 08 ; 0xf4d23 boot.c:277
mov byte [bp-008h], dl ; 88 56 f8 ; 0xf4d26
cmp byte [bp-00ch], 001h ; 80 7e f4 01 ; 0xf4d29 boot.c:283
jne near 04da5h ; 0f 85 74 00 ; 0xf4d2d
xor si, si ; 31 f6 ; 0xf4d31 boot.c:286
mov ax, 0e200h ; b8 00 e2 ; 0xf4d33
mov es, ax ; 8e c0 ; 0xf4d36
cmp word [es:si], 0aa55h ; 26 81 3c 55 aa ; 0xf4d38 boot.c:287
jne short 04cfch ; 75 bd ; 0xf4d3d
mov di, ax ; 89 c7 ; 0xf4d3f boot.c:293
mov si, word [es:si+01ah] ; 26 8b 74 1a ; 0xf4d41
cmp word [es:si+002h], 0506eh ; 26 81 7c 02 6e 50 ; 0xf4d45 boot.c:294
jne short 04cfch ; 75 af ; 0xf4d4b
cmp word [es:si], 05024h ; 26 81 3c 24 50 ; 0xf4d4d
jne short 04cfch ; 75 a8 ; 0xf4d52
mov bx, word [es:si+00eh] ; 26 8b 5c 0e ; 0xf4d54 boot.c:296
mov dx, word [es:bx] ; 26 8b 17 ; 0xf4d58
mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xf4d5b
cmp ax, 06568h ; 3d 68 65 ; 0xf4d5f boot.c:297
jne short 04d83h ; 75 1f ; 0xf4d62
cmp dx, 07445h ; 81 fa 45 74 ; 0xf4d64
jne short 04d83h ; 75 19 ; 0xf4d68
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf4d6a boot.c:299
movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xf4d6e
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf4d72
call 04ac2h ; e8 49 fd ; 0xf4d76
mov word [bp-012h], strict word 00006h ; c7 46 ee 06 00 ; 0xf4d79 boot.c:300
mov word [bp-010h], di ; 89 7e f0 ; 0xf4d7e
jmp short 04d9fh ; eb 1c ; 0xf4d81 boot.c:303
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf4d83 boot.c:306
movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xf4d87
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf4d8b
call 04ac2h ; e8 30 fd ; 0xf4d8f
sti ; fb ; 0xf4d92 boot.c:307
mov word [bp-010h], di ; 89 7e f0 ; 0xf4d93 boot.c:308
mov es, di ; 8e c7 ; 0xf4d96
mov ax, word [es:si+01ah] ; 26 8b 44 1a ; 0xf4d98
mov word [bp-012h], ax ; 89 46 ee ; 0xf4d9c
call far [bp-012h] ; ff 5e ee ; 0xf4d9f boot.c:309
jmp near 04cfch ; e9 57 ff ; 0xf4da2 boot.c:312
cmp byte [bp-00ah], 000h ; 80 7e f6 00 ; 0xf4da5 boot.c:320
jne short 04dd1h ; 75 26 ; 0xf4da9
cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xf4dab
jne short 04dd1h ; 75 20 ; 0xf4daf
mov si, 007c0h ; be c0 07 ; 0xf4db1 boot.c:321
mov es, si ; 8e c6 ; 0xf4db4 boot.c:323
mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xf4db6
mov ax, 00201h ; b8 01 02 ; 0xf4db9
mov DH, strict byte 000h ; b6 00 ; 0xf4dbc
mov cx, strict word 00001h ; b9 01 00 ; 0xf4dbe
db 033h, 0dbh
; xor bx, bx ; 33 db ; 0xf4dc1
int 013h ; cd 13 ; 0xf4dc3
mov ax, strict word 00000h ; b8 00 00 ; 0xf4dc5
sbb ax, strict byte 00000h ; 83 d8 00 ; 0xf4dc8
test ax, ax ; 85 c0 ; 0xf4dcb boot.c:324
jne near 04cfch ; 0f 85 2b ff ; 0xf4dcd
cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xf4dd1 boot.c:339
db 00fh, 094h, 0c0h
; sete al ; 0f 94 c0 ; 0xf4dd5
cmp byte [bp-00ah], 000h ; 80 7e f6 00 ; 0xf4dd8 boot.c:344
je short 04de0h ; 74 02 ; 0xf4ddc
mov AL, strict byte 001h ; b0 01 ; 0xf4dde boot.c:345
xor bx, bx ; 31 db ; 0xf4de0 boot.c:58
mov es, si ; 8e c6 ; 0xf4de2
mov dx, word [es:bx] ; 26 8b 17 ; 0xf4de4
mov bx, strict word 00004h ; bb 04 00 ; 0xf4de7 boot.c:58
mov bx, word [es:bx] ; 26 8b 1f ; 0xf4dea
cmp dx, bx ; 39 da ; 0xf4ded boot.c:59
je short 04e00h ; 74 0f ; 0xf4def
test al, al ; 84 c0 ; 0xf4df1
jne short 04e16h ; 75 21 ; 0xf4df3
mov bx, 001feh ; bb fe 01 ; 0xf4df5 boot.c:58
mov ax, word [es:bx] ; 26 8b 07 ; 0xf4df8
cmp ax, 0aa55h ; 3d 55 aa ; 0xf4dfb boot.c:59
je short 04e16h ; 74 16 ; 0xf4dfe
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf4e00 boot.c:351
push ax ; 50 ; 0xf4e04
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf4e05
movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xf4e09
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf4e0d
xor cx, cx ; 31 c9 ; 0xf4e11
jmp near 04d10h ; e9 fa fe ; 0xf4e13
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf4e16 boot.c:357
movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xf4e1a
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf4e1e
call 04ac2h ; e8 9d fc ; 0xf4e22
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf4e25 boot.c:363
xor dx, dx ; 31 d2 ; 0xf4e29
xor ax, ax ; 31 c0 ; 0xf4e2b
add ax, si ; 01 f0 ; 0xf4e2d
adc dx, bx ; 11 da ; 0xf4e2f
lea sp, [bp-004h] ; 8d 66 fc ; 0xf4e31 boot.c:364
pop di ; 5f ; 0xf4e34
pop si ; 5e ; 0xf4e35
pop bp ; 5d ; 0xf4e36
retn ; c3 ; 0xf4e37
; disGetNextSymbol 0xf4e38 LB 0x5fe4 -> off=0x0 cb=0000000000000013 uValue=00000000000f3838 'keyboard_panic'
keyboard_panic: ; 0xf4e38 LB 0x13
push bp ; 55 ; 0xf4e38 keyboard.c:204
mov bp, sp ; 89 e5 ; 0xf4e39
push ax ; 50 ; 0xf4e3b keyboard.c:209
push 00604h ; 68 04 06 ; 0xf4e3c
push strict byte 00007h ; 6a 07 ; 0xf4e3f
call 01a68h ; e8 24 cc ; 0xf4e41
add sp, strict byte 00006h ; 83 c4 06 ; 0xf4e44
mov sp, bp ; 89 ec ; 0xf4e47 keyboard.c:210
pop bp ; 5d ; 0xf4e49
retn ; c3 ; 0xf4e4a
; disGetNextSymbol 0xf4e4b LB 0x5fd1 -> off=0x0 cb=000000000000026a uValue=00000000000f384b 'keyboard_init'
keyboard_init: ; 0xf4e4b LB 0x26a
push bp ; 55 ; 0xf4e4b keyboard.c:218
mov bp, sp ; 89 e5 ; 0xf4e4c
mov AL, strict byte 0aah ; b0 aa ; 0xf4e4e keyboard.c:224
mov dx, strict word 00064h ; ba 64 00 ; 0xf4e50
out DX, AL ; ee ; 0xf4e53
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4e54 keyboard.c:227
mov dx, strict word 00064h ; ba 64 00 ; 0xf4e57 keyboard.c:228
in AL, DX ; ec ; 0xf4e5a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4e5b
test AL, strict byte 002h ; a8 02 ; 0xf4e5d
je short 04e6eh ; 74 0d ; 0xf4e5f
dec bx ; 4b ; 0xf4e61
test bx, bx ; 85 db ; 0xf4e62
jbe short 04e6eh ; 76 08 ; 0xf4e64
xor al, al ; 30 c0 ; 0xf4e66
mov dx, 00080h ; ba 80 00 ; 0xf4e68
out DX, AL ; ee ; 0xf4e6b
jmp short 04e57h ; eb e9 ; 0xf4e6c
test bx, bx ; 85 db ; 0xf4e6e keyboard.c:229
jne short 04e77h ; 75 05 ; 0xf4e70
xor ax, ax ; 31 c0 ; 0xf4e72
call 04e38h ; e8 c1 ff ; 0xf4e74
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4e77 keyboard.c:232
mov dx, strict word 00064h ; ba 64 00 ; 0xf4e7a keyboard.c:233
in AL, DX ; ec ; 0xf4e7d
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4e7e
test AL, strict byte 001h ; a8 01 ; 0xf4e80
jne short 04e91h ; 75 0d ; 0xf4e82
dec bx ; 4b ; 0xf4e84
test bx, bx ; 85 db ; 0xf4e85
jbe short 04e91h ; 76 08 ; 0xf4e87
mov AL, strict byte 001h ; b0 01 ; 0xf4e89
mov dx, 00080h ; ba 80 00 ; 0xf4e8b
out DX, AL ; ee ; 0xf4e8e
jmp short 04e7ah ; eb e9 ; 0xf4e8f
test bx, bx ; 85 db ; 0xf4e91 keyboard.c:234
jne short 04e9bh ; 75 06 ; 0xf4e93
mov ax, strict word 00001h ; b8 01 00 ; 0xf4e95
call 04e38h ; e8 9d ff ; 0xf4e98
mov dx, strict word 00060h ; ba 60 00 ; 0xf4e9b keyboard.c:237
in AL, DX ; ec ; 0xf4e9e
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4e9f
cmp ax, strict word 00055h ; 3d 55 00 ; 0xf4ea1
je short 04each ; 74 06 ; 0xf4ea4
mov ax, 003dfh ; b8 df 03 ; 0xf4ea6 keyboard.c:238
call 04e38h ; e8 8c ff ; 0xf4ea9
mov AL, strict byte 0abh ; b0 ab ; 0xf4eac keyboard.c:242
mov dx, strict word 00064h ; ba 64 00 ; 0xf4eae
out DX, AL ; ee ; 0xf4eb1
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4eb2 keyboard.c:245
mov dx, strict word 00064h ; ba 64 00 ; 0xf4eb5 keyboard.c:246
in AL, DX ; ec ; 0xf4eb8
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4eb9
test AL, strict byte 002h ; a8 02 ; 0xf4ebb
je short 04ecch ; 74 0d ; 0xf4ebd
dec bx ; 4b ; 0xf4ebf
test bx, bx ; 85 db ; 0xf4ec0
jbe short 04ecch ; 76 08 ; 0xf4ec2
mov AL, strict byte 010h ; b0 10 ; 0xf4ec4
mov dx, 00080h ; ba 80 00 ; 0xf4ec6
out DX, AL ; ee ; 0xf4ec9
jmp short 04eb5h ; eb e9 ; 0xf4eca
test bx, bx ; 85 db ; 0xf4ecc keyboard.c:247
jne short 04ed6h ; 75 06 ; 0xf4ece
mov ax, strict word 0000ah ; b8 0a 00 ; 0xf4ed0
call 04e38h ; e8 62 ff ; 0xf4ed3
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4ed6 keyboard.c:250
mov dx, strict word 00064h ; ba 64 00 ; 0xf4ed9 keyboard.c:251
in AL, DX ; ec ; 0xf4edc
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4edd
test AL, strict byte 001h ; a8 01 ; 0xf4edf
jne short 04ef0h ; 75 0d ; 0xf4ee1
dec bx ; 4b ; 0xf4ee3
test bx, bx ; 85 db ; 0xf4ee4
jbe short 04ef0h ; 76 08 ; 0xf4ee6
mov AL, strict byte 011h ; b0 11 ; 0xf4ee8
mov dx, 00080h ; ba 80 00 ; 0xf4eea
out DX, AL ; ee ; 0xf4eed
jmp short 04ed9h ; eb e9 ; 0xf4eee
test bx, bx ; 85 db ; 0xf4ef0 keyboard.c:252
jne short 04efah ; 75 06 ; 0xf4ef2
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf4ef4
call 04e38h ; e8 3e ff ; 0xf4ef7
mov dx, strict word 00060h ; ba 60 00 ; 0xf4efa keyboard.c:256
in AL, DX ; ec ; 0xf4efd
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4efe
test ax, ax ; 85 c0 ; 0xf4f00
je short 04f0ah ; 74 06 ; 0xf4f02
mov ax, 003e0h ; b8 e0 03 ; 0xf4f04 keyboard.c:257
call 04e38h ; e8 2e ff ; 0xf4f07
mov AL, strict byte 0ffh ; b0 ff ; 0xf4f0a keyboard.c:263
mov dx, strict word 00060h ; ba 60 00 ; 0xf4f0c
out DX, AL ; ee ; 0xf4f0f
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4f10 keyboard.c:266
mov dx, strict word 00064h ; ba 64 00 ; 0xf4f13 keyboard.c:267
in AL, DX ; ec ; 0xf4f16
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4f17
test AL, strict byte 002h ; a8 02 ; 0xf4f19
je short 04f2ah ; 74 0d ; 0xf4f1b
dec bx ; 4b ; 0xf4f1d
test bx, bx ; 85 db ; 0xf4f1e
jbe short 04f2ah ; 76 08 ; 0xf4f20
mov AL, strict byte 020h ; b0 20 ; 0xf4f22
mov dx, 00080h ; ba 80 00 ; 0xf4f24
out DX, AL ; ee ; 0xf4f27
jmp short 04f13h ; eb e9 ; 0xf4f28
test bx, bx ; 85 db ; 0xf4f2a keyboard.c:268
jne short 04f34h ; 75 06 ; 0xf4f2c
mov ax, strict word 00014h ; b8 14 00 ; 0xf4f2e
call 04e38h ; e8 04 ff ; 0xf4f31
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4f34 keyboard.c:271
mov dx, strict word 00064h ; ba 64 00 ; 0xf4f37 keyboard.c:272
in AL, DX ; ec ; 0xf4f3a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4f3b
test AL, strict byte 001h ; a8 01 ; 0xf4f3d
jne short 04f4eh ; 75 0d ; 0xf4f3f
dec bx ; 4b ; 0xf4f41
test bx, bx ; 85 db ; 0xf4f42
jbe short 04f4eh ; 76 08 ; 0xf4f44
mov AL, strict byte 021h ; b0 21 ; 0xf4f46
mov dx, 00080h ; ba 80 00 ; 0xf4f48
out DX, AL ; ee ; 0xf4f4b
jmp short 04f37h ; eb e9 ; 0xf4f4c
test bx, bx ; 85 db ; 0xf4f4e keyboard.c:273
jne short 04f58h ; 75 06 ; 0xf4f50
mov ax, strict word 00015h ; b8 15 00 ; 0xf4f52
call 04e38h ; e8 e0 fe ; 0xf4f55
mov dx, strict word 00060h ; ba 60 00 ; 0xf4f58 keyboard.c:276
in AL, DX ; ec ; 0xf4f5b
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4f5c
cmp ax, 000fah ; 3d fa 00 ; 0xf4f5e
je short 04f69h ; 74 06 ; 0xf4f61
mov ax, 003e1h ; b8 e1 03 ; 0xf4f63 keyboard.c:277
call 04e38h ; e8 cf fe ; 0xf4f66
mov dx, strict word 00064h ; ba 64 00 ; 0xf4f69 keyboard.c:281
in AL, DX ; ec ; 0xf4f6c
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4f6d
test AL, strict byte 001h ; a8 01 ; 0xf4f6f
jne short 04f7bh ; 75 08 ; 0xf4f71
mov AL, strict byte 031h ; b0 31 ; 0xf4f73
mov dx, 00080h ; ba 80 00 ; 0xf4f75
out DX, AL ; ee ; 0xf4f78
jmp short 04f69h ; eb ee ; 0xf4f79
mov dx, strict word 00060h ; ba 60 00 ; 0xf4f7b keyboard.c:283
in AL, DX ; ec ; 0xf4f7e
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4f7f
cmp ax, 000aah ; 3d aa 00 ; 0xf4f81
je short 04f94h ; 74 0e ; 0xf4f84
in AL, DX ; ec ; 0xf4f86
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4f87
cmp ax, 000aah ; 3d aa 00 ; 0xf4f89
je short 04f94h ; 74 06 ; 0xf4f8c
mov ax, 003e2h ; b8 e2 03 ; 0xf4f8e keyboard.c:284
call 04e38h ; e8 a4 fe ; 0xf4f91
mov AL, strict byte 0f5h ; b0 f5 ; 0xf4f94 keyboard.c:288
mov dx, strict word 00060h ; ba 60 00 ; 0xf4f96
out DX, AL ; ee ; 0xf4f99
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4f9a keyboard.c:291
mov dx, strict word 00064h ; ba 64 00 ; 0xf4f9d keyboard.c:292
in AL, DX ; ec ; 0xf4fa0
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4fa1
test AL, strict byte 002h ; a8 02 ; 0xf4fa3
je short 04fb4h ; 74 0d ; 0xf4fa5
dec bx ; 4b ; 0xf4fa7
test bx, bx ; 85 db ; 0xf4fa8
jbe short 04fb4h ; 76 08 ; 0xf4faa
mov AL, strict byte 040h ; b0 40 ; 0xf4fac
mov dx, 00080h ; ba 80 00 ; 0xf4fae
out DX, AL ; ee ; 0xf4fb1
jmp short 04f9dh ; eb e9 ; 0xf4fb2
test bx, bx ; 85 db ; 0xf4fb4 keyboard.c:293
jne short 04fbeh ; 75 06 ; 0xf4fb6
mov ax, strict word 00028h ; b8 28 00 ; 0xf4fb8
call 04e38h ; e8 7a fe ; 0xf4fbb
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4fbe keyboard.c:296
mov dx, strict word 00064h ; ba 64 00 ; 0xf4fc1 keyboard.c:297
in AL, DX ; ec ; 0xf4fc4
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4fc5
test AL, strict byte 001h ; a8 01 ; 0xf4fc7
jne short 04fd8h ; 75 0d ; 0xf4fc9
dec bx ; 4b ; 0xf4fcb
test bx, bx ; 85 db ; 0xf4fcc
jbe short 04fd8h ; 76 08 ; 0xf4fce
mov AL, strict byte 041h ; b0 41 ; 0xf4fd0
mov dx, 00080h ; ba 80 00 ; 0xf4fd2
out DX, AL ; ee ; 0xf4fd5
jmp short 04fc1h ; eb e9 ; 0xf4fd6
test bx, bx ; 85 db ; 0xf4fd8 keyboard.c:298
jne short 04fe2h ; 75 06 ; 0xf4fda
mov ax, strict word 00029h ; b8 29 00 ; 0xf4fdc
call 04e38h ; e8 56 fe ; 0xf4fdf
mov dx, strict word 00060h ; ba 60 00 ; 0xf4fe2 keyboard.c:301
in AL, DX ; ec ; 0xf4fe5
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf4fe6
cmp ax, 000fah ; 3d fa 00 ; 0xf4fe8
je short 04ff3h ; 74 06 ; 0xf4feb
mov ax, 003e3h ; b8 e3 03 ; 0xf4fed keyboard.c:302
call 04e38h ; e8 45 fe ; 0xf4ff0
mov AL, strict byte 060h ; b0 60 ; 0xf4ff3 keyboard.c:306
mov dx, strict word 00064h ; ba 64 00 ; 0xf4ff5
out DX, AL ; ee ; 0xf4ff8
mov bx, strict word 0ffffh ; bb ff ff ; 0xf4ff9 keyboard.c:309
mov dx, strict word 00064h ; ba 64 00 ; 0xf4ffc keyboard.c:310
in AL, DX ; ec ; 0xf4fff
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5000
test AL, strict byte 002h ; a8 02 ; 0xf5002
je short 05013h ; 74 0d ; 0xf5004
dec bx ; 4b ; 0xf5006
test bx, bx ; 85 db ; 0xf5007
jbe short 05013h ; 76 08 ; 0xf5009
mov AL, strict byte 050h ; b0 50 ; 0xf500b
mov dx, 00080h ; ba 80 00 ; 0xf500d
out DX, AL ; ee ; 0xf5010
jmp short 04ffch ; eb e9 ; 0xf5011
test bx, bx ; 85 db ; 0xf5013 keyboard.c:311
jne short 0501dh ; 75 06 ; 0xf5015
mov ax, strict word 00032h ; b8 32 00 ; 0xf5017
call 04e38h ; e8 1b fe ; 0xf501a
mov AL, strict byte 065h ; b0 65 ; 0xf501d keyboard.c:314
mov dx, strict word 00060h ; ba 60 00 ; 0xf501f
out DX, AL ; ee ; 0xf5022
mov bx, strict word 0ffffh ; bb ff ff ; 0xf5023 keyboard.c:317
mov dx, strict word 00064h ; ba 64 00 ; 0xf5026 keyboard.c:318
in AL, DX ; ec ; 0xf5029
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf502a
test AL, strict byte 002h ; a8 02 ; 0xf502c
je short 0503dh ; 74 0d ; 0xf502e
dec bx ; 4b ; 0xf5030
test bx, bx ; 85 db ; 0xf5031
jbe short 0503dh ; 76 08 ; 0xf5033
mov AL, strict byte 060h ; b0 60 ; 0xf5035
mov dx, 00080h ; ba 80 00 ; 0xf5037
out DX, AL ; ee ; 0xf503a
jmp short 05026h ; eb e9 ; 0xf503b
test bx, bx ; 85 db ; 0xf503d keyboard.c:319
jne short 05047h ; 75 06 ; 0xf503f
mov ax, strict word 0003ch ; b8 3c 00 ; 0xf5041
call 04e38h ; e8 f1 fd ; 0xf5044
mov AL, strict byte 0f4h ; b0 f4 ; 0xf5047 keyboard.c:322
mov dx, strict word 00060h ; ba 60 00 ; 0xf5049
out DX, AL ; ee ; 0xf504c
mov bx, strict word 0ffffh ; bb ff ff ; 0xf504d keyboard.c:325
mov dx, strict word 00064h ; ba 64 00 ; 0xf5050 keyboard.c:326
in AL, DX ; ec ; 0xf5053
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5054
test AL, strict byte 002h ; a8 02 ; 0xf5056
je short 05067h ; 74 0d ; 0xf5058
dec bx ; 4b ; 0xf505a
test bx, bx ; 85 db ; 0xf505b
jbe short 05067h ; 76 08 ; 0xf505d
mov AL, strict byte 070h ; b0 70 ; 0xf505f
mov dx, 00080h ; ba 80 00 ; 0xf5061
out DX, AL ; ee ; 0xf5064
jmp short 05050h ; eb e9 ; 0xf5065
test bx, bx ; 85 db ; 0xf5067 keyboard.c:327
jne short 05071h ; 75 06 ; 0xf5069
mov ax, strict word 00046h ; b8 46 00 ; 0xf506b
call 04e38h ; e8 c7 fd ; 0xf506e
mov bx, strict word 0ffffh ; bb ff ff ; 0xf5071 keyboard.c:330
mov dx, strict word 00064h ; ba 64 00 ; 0xf5074 keyboard.c:331
in AL, DX ; ec ; 0xf5077
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5078
test AL, strict byte 001h ; a8 01 ; 0xf507a
jne short 0508bh ; 75 0d ; 0xf507c
dec bx ; 4b ; 0xf507e
test bx, bx ; 85 db ; 0xf507f
jbe short 0508bh ; 76 08 ; 0xf5081
mov AL, strict byte 071h ; b0 71 ; 0xf5083
mov dx, 00080h ; ba 80 00 ; 0xf5085
out DX, AL ; ee ; 0xf5088
jmp short 05074h ; eb e9 ; 0xf5089
test bx, bx ; 85 db ; 0xf508b keyboard.c:332
jne short 05095h ; 75 06 ; 0xf508d
mov ax, strict word 00046h ; b8 46 00 ; 0xf508f
call 04e38h ; e8 a3 fd ; 0xf5092
mov dx, strict word 00060h ; ba 60 00 ; 0xf5095 keyboard.c:335
in AL, DX ; ec ; 0xf5098
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5099
cmp ax, 000fah ; 3d fa 00 ; 0xf509b
je short 050a6h ; 74 06 ; 0xf509e
mov ax, 003e4h ; b8 e4 03 ; 0xf50a0 keyboard.c:336
call 04e38h ; e8 92 fd ; 0xf50a3
mov AL, strict byte 0a8h ; b0 a8 ; 0xf50a6 keyboard.c:340
mov dx, strict word 00064h ; ba 64 00 ; 0xf50a8
out DX, AL ; ee ; 0xf50ab
xor ax, ax ; 31 c0 ; 0xf50ac keyboard.c:345
call 06490h ; e8 df 13 ; 0xf50ae
mov sp, bp ; 89 ec ; 0xf50b1 keyboard.c:346
pop bp ; 5d ; 0xf50b3
retn ; c3 ; 0xf50b4
; disGetNextSymbol 0xf50b5 LB 0x5d67 -> off=0x0 cb=0000000000000053 uValue=00000000000f3ab5 'enqueue_key'
enqueue_key: ; 0xf50b5 LB 0x53
push bx ; 53 ; 0xf50b5 keyboard.c:349
push cx ; 51 ; 0xf50b6
push si ; 56 ; 0xf50b7
push di ; 57 ; 0xf50b8
push bp ; 55 ; 0xf50b9
mov bp, sp ; 89 e5 ; 0xf50ba
mov dh, al ; 88 c6 ; 0xf50bc
mov bx, 00080h ; bb 80 00 ; 0xf50be keyboard.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf50c1
mov es, ax ; 8e c0 ; 0xf50c4
mov di, word [es:bx] ; 26 8b 3f ; 0xf50c6
mov bx, 00082h ; bb 82 00 ; 0xf50c9 keyboard.c:58
mov si, word [es:bx] ; 26 8b 37 ; 0xf50cc
mov bx, strict word 0001ah ; bb 1a 00 ; 0xf50cf keyboard.c:58
mov cx, word [es:bx] ; 26 8b 0f ; 0xf50d2
mov bx, strict word 0001ch ; bb 1c 00 ; 0xf50d5 keyboard.c:58
mov ax, word [es:bx] ; 26 8b 07 ; 0xf50d8
mov bx, ax ; 89 c3 ; 0xf50db keyboard.c:364
inc ax ; 40 ; 0xf50dd keyboard.c:365
inc ax ; 40 ; 0xf50de
cmp ax, si ; 39 f0 ; 0xf50df keyboard.c:366
jc short 050e5h ; 72 02 ; 0xf50e1
mov ax, di ; 89 f8 ; 0xf50e3 keyboard.c:367
cmp ax, cx ; 39 c8 ; 0xf50e5 keyboard.c:369
jne short 050edh ; 75 04 ; 0xf50e7
xor ax, cx ; 31 c8 ; 0xf50e9 keyboard.c:370
jmp short 05102h ; eb 15 ; 0xf50eb
mov cx, strict word 00040h ; b9 40 00 ; 0xf50ed keyboard.c:53
mov es, cx ; 8e c1 ; 0xf50f0
mov byte [es:bx], dl ; 26 88 17 ; 0xf50f2
inc bx ; 43 ; 0xf50f5 keyboard.c:373
mov byte [es:bx], dh ; 26 88 37 ; 0xf50f6 keyboard.c:53
mov bx, strict word 0001ch ; bb 1c 00 ; 0xf50f9 keyboard.c:63
mov word [es:bx], ax ; 26 89 07 ; 0xf50fc
mov ax, strict word 00001h ; b8 01 00 ; 0xf50ff keyboard.c:375
pop bp ; 5d ; 0xf5102 keyboard.c:376
pop di ; 5f ; 0xf5103
pop si ; 5e ; 0xf5104
pop cx ; 59 ; 0xf5105
pop bx ; 5b ; 0xf5106
retn ; c3 ; 0xf5107
; disGetNextSymbol 0xf5108 LB 0x5d14 -> off=0x35 cb=00000000000003cd uValue=00000000000f3b3d 'int09_function'
db 0d4h, 0c6h, 0c5h, 0bah, 0b8h, 0b6h, 0aah, 09dh, 054h, 053h, 046h, 045h, 03ah, 038h, 036h, 02ah
db 01dh, 0c9h, 053h, 019h, 052h, 0c2h, 051h, 0c2h, 051h, 07eh, 052h, 09dh, 051h, 0d1h, 052h, 02ch
db 053h, 0aeh, 053h, 091h, 053h, 049h, 052h, 0c2h, 051h, 0c2h, 051h, 0aah, 052h, 0b4h, 051h, 014h
db 053h, 079h, 053h, 0a9h, 053h
int09_function: ; 0xf513d LB 0x3cd
push bp ; 55 ; 0xf513d keyboard.c:381
mov bp, sp ; 89 e5 ; 0xf513e
push si ; 56 ; 0xf5140
push di ; 57 ; 0xf5141
push ax ; 50 ; 0xf5142
push ax ; 50 ; 0xf5143
mov al, byte [bp+014h] ; 8a 46 14 ; 0xf5144 keyboard.c:392
mov byte [bp-006h], al ; 88 46 fa ; 0xf5147
test al, al ; 84 c0 ; 0xf514a keyboard.c:394
jne short 05167h ; 75 19 ; 0xf514c
mov bx, 00e16h ; bb 16 0e ; 0xf514e keyboard.c:395
mov cx, ds ; 8c d9 ; 0xf5151
mov ax, strict word 00004h ; b8 04 00 ; 0xf5153
call 01a27h ; e8 ce c8 ; 0xf5156
push 00617h ; 68 17 06 ; 0xf5159
push strict byte 00004h ; 6a 04 ; 0xf515c
call 01a68h ; e8 07 c9 ; 0xf515e
add sp, strict byte 00004h ; 83 c4 04 ; 0xf5161
jmp near 05212h ; e9 ab 00 ; 0xf5164 keyboard.c:396
mov bx, strict word 00018h ; bb 18 00 ; 0xf5167 keyboard.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf516a
mov es, ax ; 8e c0 ; 0xf516d
mov bl, byte [es:bx] ; 26 8a 1f ; 0xf516f
mov dl, bl ; 88 da ; 0xf5172 keyboard.c:49
mov si, 00096h ; be 96 00 ; 0xf5174 keyboard.c:48
mov bh, byte [es:si] ; 26 8a 3c ; 0xf5177
mov byte [bp-008h], bh ; 88 7e f8 ; 0xf517a keyboard.c:49
mov si, strict word 00017h ; be 17 00 ; 0xf517d keyboard.c:48
mov ah, byte [es:si] ; 26 8a 24 ; 0xf5180
mov dh, ah ; 88 e6 ; 0xf5183 keyboard.c:49
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf5185 keyboard.c:404
push CS ; 0e ; 0xf5188
pop ES ; 07 ; 0xf5189
mov cx, strict word 00012h ; b9 12 00 ; 0xf518a
mov di, 05108h ; bf 08 51 ; 0xf518d
repne scasb ; f2 ae ; 0xf5190
sal cx, 1 ; d1 e1 ; 0xf5192
mov di, cx ; 89 cf ; 0xf5194
mov si, word [cs:di+05119h] ; 2e 8b b5 19 51 ; 0xf5196
jmp si ; ff e6 ; 0xf519b
xor dh, 040h ; 80 f6 40 ; 0xf519d keyboard.c:406
mov bx, strict word 00017h ; bb 17 00 ; 0xf51a0 keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf51a3
mov es, ax ; 8e c0 ; 0xf51a6
mov byte [es:bx], dh ; 26 88 37 ; 0xf51a8
or dl, 040h ; 80 ca 40 ; 0xf51ab keyboard.c:408
mov bx, strict word 00018h ; bb 18 00 ; 0xf51ae keyboard.c:53
jmp near 053a3h ; e9 ef 01 ; 0xf51b1
and dl, 0bfh ; 80 e2 bf ; 0xf51b4 keyboard.c:412
mov bx, strict word 00018h ; bb 18 00 ; 0xf51b7 keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf51ba
mov es, ax ; 8e c0 ; 0xf51bd
jmp near 053a3h ; e9 e1 01 ; 0xf51bf
test byte [bp-008h], 002h ; f6 46 f8 02 ; 0xf51c2 keyboard.c:421
jne near 051f3h ; 0f 85 29 00 ; 0xf51c6
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf51ca keyboard.c:422
and AL, strict byte 07fh ; 24 7f ; 0xf51cd
cmp AL, strict byte 02ah ; 3c 2a ; 0xf51cf
db 00fh, 094h, 0c0h
; sete al ; 0f 94 c0 ; 0xf51d1
movzx bx, al ; 0f b6 d8 ; 0xf51d4
inc bx ; 43 ; 0xf51d7
test byte [bp-006h], 080h ; f6 46 fa 80 ; 0xf51d8 keyboard.c:423
je short 051e6h ; 74 08 ; 0xf51dc
mov al, bl ; 88 d8 ; 0xf51de keyboard.c:424
not al ; f6 d0 ; 0xf51e0
and dh, al ; 20 c6 ; 0xf51e2
jmp short 051e8h ; eb 02 ; 0xf51e4 keyboard.c:425
or dh, bl ; 08 de ; 0xf51e6 keyboard.c:426
mov bx, strict word 00017h ; bb 17 00 ; 0xf51e8 keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf51eb
mov es, ax ; 8e c0 ; 0xf51ee
mov byte [es:bx], dh ; 26 88 37 ; 0xf51f0
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf51f3 keyboard.c:429
and AL, strict byte 07fh ; 24 7f ; 0xf51f6
cmp AL, strict byte 01dh ; 3c 1d ; 0xf51f8
je short 05200h ; 74 04 ; 0xf51fa
and byte [bp-008h], 0feh ; 80 66 f8 fe ; 0xf51fc
and byte [bp-008h], 0fdh ; 80 66 f8 fd ; 0xf5200
mov bx, 00096h ; bb 96 00 ; 0xf5204
mov ax, strict word 00040h ; b8 40 00 ; 0xf5207
mov es, ax ; 8e c0 ; 0xf520a
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf520c
mov byte [es:bx], al ; 26 88 07 ; 0xf520f
lea sp, [bp-004h] ; 8d 66 fc ; 0xf5212
pop di ; 5f ; 0xf5215
pop si ; 5e ; 0xf5216
pop bp ; 5d ; 0xf5217
retn ; c3 ; 0xf5218
test bh, 001h ; f6 c7 01 ; 0xf5219 keyboard.c:432
jne short 051f3h ; 75 d5 ; 0xf521c
or dh, 004h ; 80 ce 04 ; 0xf521e keyboard.c:433
mov ax, strict word 00040h ; b8 40 00 ; 0xf5221 keyboard.c:51
mov bx, strict word 00017h ; bb 17 00 ; 0xf5224
mov es, ax ; 8e c0 ; 0xf5227 keyboard.c:53
mov byte [es:bx], dh ; 26 88 37 ; 0xf5229
test byte [bp-008h], 002h ; f6 46 f8 02 ; 0xf522c keyboard.c:435
je short 0523eh ; 74 0c ; 0xf5230
or byte [bp-008h], 004h ; 80 4e f8 04 ; 0xf5232 keyboard.c:436
mov bx, 00096h ; bb 96 00 ; 0xf5236 keyboard.c:51
mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xf5239
jmp short 05244h ; eb 06 ; 0xf523c keyboard.c:438
or dl, 001h ; 80 ca 01 ; 0xf523e keyboard.c:439
mov bx, strict word 00018h ; bb 18 00 ; 0xf5241 keyboard.c:51
mov byte [es:bx], dl ; 26 88 17 ; 0xf5244 keyboard.c:53
jmp short 051f3h ; eb aa ; 0xf5247 keyboard.c:443
test bh, 001h ; f6 c7 01 ; 0xf5249 keyboard.c:445
jne short 051f3h ; 75 a5 ; 0xf524c
and dh, 0fbh ; 80 e6 fb ; 0xf524e keyboard.c:446
mov si, strict word 00017h ; be 17 00 ; 0xf5251 keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf5254
mov es, ax ; 8e c0 ; 0xf5257
mov byte [es:si], dh ; 26 88 34 ; 0xf5259
test bh, 002h ; f6 c7 02 ; 0xf525c keyboard.c:448
je short 05272h ; 74 11 ; 0xf525f
and bh, 0fbh ; 80 e7 fb ; 0xf5261 keyboard.c:449
mov byte [bp-008h], bh ; 88 7e f8 ; 0xf5264
mov bx, 00096h ; bb 96 00 ; 0xf5267 keyboard.c:53
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf526a
mov byte [es:bx], al ; 26 88 07 ; 0xf526d
jmp short 051f3h ; eb 81 ; 0xf5270 keyboard.c:451
and dl, 0feh ; 80 e2 fe ; 0xf5272 keyboard.c:452
mov bx, strict word 00018h ; bb 18 00 ; 0xf5275 keyboard.c:53
mov byte [es:bx], dl ; 26 88 17 ; 0xf5278
jmp near 051f3h ; e9 75 ff ; 0xf527b keyboard.c:456
or dh, 008h ; 80 ce 08 ; 0xf527e keyboard.c:459
mov ax, strict word 00040h ; b8 40 00 ; 0xf5281 keyboard.c:51
mov bx, strict word 00017h ; bb 17 00 ; 0xf5284
mov es, ax ; 8e c0 ; 0xf5287 keyboard.c:53
mov byte [es:bx], dh ; 26 88 37 ; 0xf5289
test byte [bp-008h], 002h ; f6 46 f8 02 ; 0xf528c keyboard.c:461
je short 0529eh ; 74 0c ; 0xf5290
or byte [bp-008h], 008h ; 80 4e f8 08 ; 0xf5292 keyboard.c:462
mov bx, 00096h ; bb 96 00 ; 0xf5296 keyboard.c:51
mov dl, byte [bp-008h] ; 8a 56 f8 ; 0xf5299
jmp short 052a4h ; eb 06 ; 0xf529c keyboard.c:464
or dl, 002h ; 80 ca 02 ; 0xf529e keyboard.c:465
mov bx, strict word 00018h ; bb 18 00 ; 0xf52a1 keyboard.c:51
mov byte [es:bx], dl ; 26 88 17 ; 0xf52a4 keyboard.c:53
jmp near 051f3h ; e9 49 ff ; 0xf52a7 keyboard.c:468
and dh, 0f7h ; 80 e6 f7 ; 0xf52aa keyboard.c:470
mov si, strict word 00017h ; be 17 00 ; 0xf52ad keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf52b0
mov es, ax ; 8e c0 ; 0xf52b3
mov byte [es:si], dh ; 26 88 34 ; 0xf52b5
test bh, 002h ; f6 c7 02 ; 0xf52b8 keyboard.c:472
je short 052c5h ; 74 08 ; 0xf52bb
and bh, 0f7h ; 80 e7 f7 ; 0xf52bd keyboard.c:473
mov byte [bp-008h], bh ; 88 7e f8 ; 0xf52c0
jmp short 05267h ; eb a2 ; 0xf52c3 keyboard.c:474
and dl, 0fdh ; 80 e2 fd ; 0xf52c5 keyboard.c:476
mov bx, strict word 00018h ; bb 18 00 ; 0xf52c8 keyboard.c:53
mov byte [es:bx], dl ; 26 88 17 ; 0xf52cb
jmp near 051f3h ; e9 22 ff ; 0xf52ce keyboard.c:479
test bh, 003h ; f6 c7 03 ; 0xf52d1 keyboard.c:482
jne short 052eah ; 75 14 ; 0xf52d4
or dl, 020h ; 80 ca 20 ; 0xf52d6 keyboard.c:484
mov ax, strict word 00040h ; b8 40 00 ; 0xf52d9 keyboard.c:51
mov es, ax ; 8e c0 ; 0xf52dc
mov bx, strict word 00018h ; bb 18 00 ; 0xf52de
mov byte [es:bx], dl ; 26 88 17 ; 0xf52e1 keyboard.c:53
xor dh, 020h ; 80 f6 20 ; 0xf52e4 keyboard.c:486
jmp near 05370h ; e9 86 00 ; 0xf52e7 keyboard.c:487
or dl, 008h ; 80 ca 08 ; 0xf52ea keyboard.c:490
mov ax, strict word 00040h ; b8 40 00 ; 0xf52ed keyboard.c:51
mov bx, strict word 00018h ; bb 18 00 ; 0xf52f0
mov es, ax ; 8e c0 ; 0xf52f3 keyboard.c:53
mov byte [es:bx], dl ; 26 88 17 ; 0xf52f5
mov ax, 000aeh ; b8 ae 00 ; 0xf52f8 keyboard.c:494
mov dx, strict word 00064h ; ba 64 00 ; 0xf52fb
out DX, AL ; ee ; 0xf52fe
call 0e034h ; e8 32 8d ; 0xf52ff keyboard.c:495
mov bx, strict word 00018h ; bb 18 00 ; 0xf5302 keyboard.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf5305
mov es, ax ; 8e c0 ; 0xf5308
mov al, byte [es:bx] ; 26 8a 07 ; 0xf530a
test AL, strict byte 008h ; a8 08 ; 0xf530d keyboard.c:49
jne short 05302h ; 75 f1 ; 0xf530f
jmp near 051f3h ; e9 df fe ; 0xf5311 keyboard.c:502
test bh, 003h ; f6 c7 03 ; 0xf5314 keyboard.c:504
jne near 051f3h ; 0f 85 d8 fe ; 0xf5317
and dl, 0dfh ; 80 e2 df ; 0xf531b keyboard.c:505
mov bx, strict word 00018h ; bb 18 00 ; 0xf531e keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf5321
mov es, ax ; 8e c0 ; 0xf5324
mov byte [es:bx], dl ; 26 88 17 ; 0xf5326
jmp near 051f3h ; e9 c7 fe ; 0xf5329 keyboard.c:508
test bh, 002h ; f6 c7 02 ; 0xf532c keyboard.c:511
je short 0535fh ; 74 2e ; 0xf532f
mov ax, strict word 00040h ; b8 40 00 ; 0xf5331 keyboard.c:56
mov bx, strict word 0001ah ; bb 1a 00 ; 0xf5334
mov es, ax ; 8e c0 ; 0xf5337 keyboard.c:58
mov ax, word [es:bx] ; 26 8b 07 ; 0xf5339
mov bx, strict word 0001ch ; bb 1c 00 ; 0xf533c keyboard.c:61
mov word [es:bx], ax ; 26 89 07 ; 0xf533f keyboard.c:63
mov bx, strict word 00071h ; bb 71 00 ; 0xf5342 keyboard.c:51
mov DL, strict byte 080h ; b2 80 ; 0xf5345
mov byte [es:bx], dl ; 26 88 17 ; 0xf5347 keyboard.c:53
mov ax, 000aeh ; b8 ae 00 ; 0xf534a keyboard.c:516
mov dx, strict word 00064h ; ba 64 00 ; 0xf534d
out DX, AL ; ee ; 0xf5350
push bp ; 55 ; 0xf5351 keyboard.c:517
int 01bh ; cd 1b ; 0xf5352
pop bp ; 5d ; 0xf5354
xor dx, dx ; 31 d2 ; 0xf5355 keyboard.c:518
xor ax, ax ; 31 c0 ; 0xf5357
call 050b5h ; e8 59 fd ; 0xf5359
jmp near 051f3h ; e9 94 fe ; 0xf535c keyboard.c:519
or dl, 010h ; 80 ca 10 ; 0xf535f keyboard.c:520
mov ax, strict word 00040h ; b8 40 00 ; 0xf5362 keyboard.c:51
mov es, ax ; 8e c0 ; 0xf5365
mov bx, strict word 00018h ; bb 18 00 ; 0xf5367
mov byte [es:bx], dl ; 26 88 17 ; 0xf536a keyboard.c:53
xor dh, 010h ; 80 f6 10 ; 0xf536d keyboard.c:522
mov bx, strict word 00017h ; bb 17 00 ; 0xf5370 keyboard.c:51
mov byte [es:bx], dh ; 26 88 37 ; 0xf5373 keyboard.c:53
jmp near 051f3h ; e9 7a fe ; 0xf5376 keyboard.c:525
test bh, 002h ; f6 c7 02 ; 0xf5379 keyboard.c:528
jne near 051f3h ; 0f 85 73 fe ; 0xf537c
and dl, 0efh ; 80 e2 ef ; 0xf5380 keyboard.c:529
mov bx, strict word 00018h ; bb 18 00 ; 0xf5383 keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf5386
mov es, ax ; 8e c0 ; 0xf5389
mov byte [es:bx], dl ; 26 88 17 ; 0xf538b
jmp near 051f3h ; e9 62 fe ; 0xf538e keyboard.c:532
test bl, 004h ; f6 c3 04 ; 0xf5391 keyboard.c:535
jne near 051f3h ; 0f 85 5b fe ; 0xf5394
or dl, 004h ; 80 ca 04 ; 0xf5398 keyboard.c:536
mov bx, strict word 00018h ; bb 18 00 ; 0xf539b keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf539e
mov es, ax ; 8e c0 ; 0xf53a1
mov byte [es:bx], dl ; 26 88 17 ; 0xf53a3
jmp near 051f3h ; e9 4a fe ; 0xf53a6 keyboard.c:540
and dl, 0fbh ; 80 e2 fb ; 0xf53a9 keyboard.c:543
jmp short 0539bh ; eb ed ; 0xf53ac keyboard.c:544
mov al, ah ; 88 e0 ; 0xf53ae keyboard.c:549
and AL, strict byte 00ch ; 24 0c ; 0xf53b0
cmp AL, strict byte 00ch ; 3c 0c ; 0xf53b2
jne short 053c9h ; 75 13 ; 0xf53b4
mov ax, strict word 00040h ; b8 40 00 ; 0xf53b6 keyboard.c:61
mov es, ax ; 8e c0 ; 0xf53b9
mov bx, strict word 00072h ; bb 72 00 ; 0xf53bb
mov ax, 01234h ; b8 34 12 ; 0xf53be
mov word [es:bx], ax ; 26 89 07 ; 0xf53c1 keyboard.c:63
jmp far 0f000h:0e05bh ; ea 5b e0 00 f0 ; 0xf53c4 keyboard.c:552
test dl, 008h ; f6 c2 08 ; 0xf53c9 keyboard.c:558
je short 053dfh ; 74 11 ; 0xf53cc
and dl, 0f7h ; 80 e2 f7 ; 0xf53ce keyboard.c:560
mov bx, strict word 00018h ; bb 18 00 ; 0xf53d1 keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf53d4
mov es, ax ; 8e c0 ; 0xf53d7
mov byte [es:bx], dl ; 26 88 17 ; 0xf53d9
jmp near 05212h ; e9 33 fe ; 0xf53dc keyboard.c:562
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf53df keyboard.c:565
test AL, strict byte 080h ; a8 80 ; 0xf53e2
je short 05414h ; 74 2e ; 0xf53e4
cmp AL, strict byte 0fah ; 3c fa ; 0xf53e6 keyboard.c:567
jne short 053fah ; 75 10 ; 0xf53e8
mov bx, 00097h ; bb 97 00 ; 0xf53ea keyboard.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf53ed
mov es, ax ; 8e c0 ; 0xf53f0
mov ah, byte [es:bx] ; 26 8a 27 ; 0xf53f2
or ah, 010h ; 80 cc 10 ; 0xf53f5 keyboard.c:49
jmp short 0540eh ; eb 14 ; 0xf53f8 keyboard.c:570
cmp AL, strict byte 0feh ; 3c fe ; 0xf53fa
jne near 051f3h ; 0f 85 f3 fd ; 0xf53fc
mov bx, 00097h ; bb 97 00 ; 0xf5400 keyboard.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf5403
mov es, ax ; 8e c0 ; 0xf5406
mov ah, byte [es:bx] ; 26 8a 27 ; 0xf5408
or ah, 020h ; 80 cc 20 ; 0xf540b keyboard.c:49
mov byte [es:bx], ah ; 26 88 27 ; 0xf540e keyboard.c:53
jmp near 051f3h ; e9 df fd ; 0xf5411 keyboard.c:574
cmp byte [bp-006h], 058h ; 80 7e fa 58 ; 0xf5414 keyboard.c:576
jbe short 05438h ; 76 1e ; 0xf5418
mov bx, 00e16h ; bb 16 0e ; 0xf541a keyboard.c:577
mov cx, ds ; 8c d9 ; 0xf541d
mov ax, strict word 00004h ; b8 04 00 ; 0xf541f
call 01a27h ; e8 02 c6 ; 0xf5422
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf5425
push ax ; 50 ; 0xf5429
push 00631h ; 68 31 06 ; 0xf542a
push strict byte 00004h ; 6a 04 ; 0xf542d
call 01a68h ; e8 36 c6 ; 0xf542f
add sp, strict byte 00006h ; 83 c4 06 ; 0xf5432
jmp near 05212h ; e9 da fd ; 0xf5435 keyboard.c:578
test dh, 008h ; f6 c6 08 ; 0xf5438 keyboard.c:580
je short 0544fh ; 74 12 ; 0xf543b
movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xf543d keyboard.c:581
imul bx, bx, strict byte 0000ah ; 6b db 0a ; 0xf5441
mov dl, byte [bx+00e6ah] ; 8a 97 6a 0e ; 0xf5444
mov ax, word [bx+00e6ah] ; 8b 87 6a 0e ; 0xf5448 keyboard.c:582
jmp near 054dbh ; e9 8c 00 ; 0xf544c keyboard.c:583
test dh, 004h ; f6 c6 04 ; 0xf544f
je short 05466h ; 74 12 ; 0xf5452
movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xf5454 keyboard.c:584
imul bx, bx, strict byte 0000ah ; 6b db 0a ; 0xf5458
mov dl, byte [bx+00e68h] ; 8a 97 68 0e ; 0xf545b
mov ax, word [bx+00e68h] ; 8b 87 68 0e ; 0xf545f keyboard.c:585
jmp near 054dbh ; e9 75 00 ; 0xf5463 keyboard.c:586
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf5466
and AL, strict byte 002h ; 24 02 ; 0xf5469
test al, al ; 84 c0 ; 0xf546b
jbe short 05484h ; 76 15 ; 0xf546d
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf546f
cmp AL, strict byte 047h ; 3c 47 ; 0xf5472
jc short 05484h ; 72 0e ; 0xf5474
cmp AL, strict byte 053h ; 3c 53 ; 0xf5476
jnbe short 05484h ; 77 0a ; 0xf5478
mov DL, strict byte 0e0h ; b2 e0 ; 0xf547a keyboard.c:588
movzx bx, al ; 0f b6 d8 ; 0xf547c keyboard.c:589
imul bx, bx, strict byte 0000ah ; 6b db 0a ; 0xf547f
jmp short 054d7h ; eb 53 ; 0xf5482 keyboard.c:590
test dh, 003h ; f6 c6 03 ; 0xf5484
je short 054b6h ; 74 2d ; 0xf5487
movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xf5489 keyboard.c:594
imul bx, bx, strict byte 0000ah ; 6b db 0a ; 0xf548d
movzx ax, byte [bx+00e6ch] ; 0f b6 87 6c 0e ; 0xf5490
movzx dx, dh ; 0f b6 d6 ; 0xf5495
test dx, ax ; 85 c2 ; 0xf5498
je short 054a6h ; 74 0a ; 0xf549a
mov dl, byte [bx+00e64h] ; 8a 97 64 0e ; 0xf549c keyboard.c:595
mov ax, word [bx+00e64h] ; 8b 87 64 0e ; 0xf54a0 keyboard.c:596
jmp short 054aeh ; eb 08 ; 0xf54a4 keyboard.c:597
mov dl, byte [bx+00e66h] ; 8a 97 66 0e ; 0xf54a6 keyboard.c:598
mov ax, word [bx+00e66h] ; 8b 87 66 0e ; 0xf54aa keyboard.c:599
shr ax, 008h ; c1 e8 08 ; 0xf54ae
mov byte [bp-006h], al ; 88 46 fa ; 0xf54b1
jmp short 054e1h ; eb 2b ; 0xf54b4 keyboard.c:601
movzx bx, byte [bp-006h] ; 0f b6 5e fa ; 0xf54b6 keyboard.c:603
imul bx, bx, strict byte 0000ah ; 6b db 0a ; 0xf54ba
movzx si, byte [bx+00e6ch] ; 0f b6 b7 6c 0e ; 0xf54bd
movzx ax, dh ; 0f b6 c6 ; 0xf54c2
test ax, si ; 85 f0 ; 0xf54c5
je short 054d3h ; 74 0a ; 0xf54c7
mov dl, byte [bx+00e66h] ; 8a 97 66 0e ; 0xf54c9 keyboard.c:604
mov ax, word [bx+00e66h] ; 8b 87 66 0e ; 0xf54cd keyboard.c:605
jmp short 054dbh ; eb 08 ; 0xf54d1 keyboard.c:606
mov dl, byte [bx+00e64h] ; 8a 97 64 0e ; 0xf54d3 keyboard.c:607
mov ax, word [bx+00e64h] ; 8b 87 64 0e ; 0xf54d7 keyboard.c:608
shr ax, 008h ; c1 e8 08 ; 0xf54db
mov byte [bp-006h], al ; 88 46 fa ; 0xf54de
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf54e1 keyboard.c:611
jne short 05501h ; 75 1a ; 0xf54e5
test dl, dl ; 84 d2 ; 0xf54e7
jne short 05501h ; 75 16 ; 0xf54e9
mov bx, 00e16h ; bb 16 0e ; 0xf54eb keyboard.c:612
mov cx, ds ; 8c d9 ; 0xf54ee
mov ax, strict word 00004h ; b8 04 00 ; 0xf54f0
call 01a27h ; e8 31 c5 ; 0xf54f3
push 00668h ; 68 68 06 ; 0xf54f6
push strict byte 00004h ; 6a 04 ; 0xf54f9
call 01a68h ; e8 6a c5 ; 0xf54fb
add sp, strict byte 00004h ; 83 c4 04 ; 0xf54fe
xor dh, dh ; 30 f6 ; 0xf5501 keyboard.c:614
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf5503
jmp near 05359h ; e9 4f fe ; 0xf5507
; disGetNextSymbol 0xf550a LB 0x5912 -> off=0x0 cb=000000000000006c uValue=00000000000f3f0a 'dequeue_key'
dequeue_key: ; 0xf550a LB 0x6c
push si ; 56 ; 0xf550a keyboard.c:624
push di ; 57 ; 0xf550b
enter 00002h, 000h ; c8 02 00 00 ; 0xf550c
push ax ; 50 ; 0xf5510
push dx ; 52 ; 0xf5511
mov si, bx ; 89 de ; 0xf5512
mov bx, 00080h ; bb 80 00 ; 0xf5514 keyboard.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf5517
mov es, ax ; 8e c0 ; 0xf551a
mov ax, word [es:bx] ; 26 8b 07 ; 0xf551c
mov word [bp-002h], ax ; 89 46 fe ; 0xf551f
mov bx, 00082h ; bb 82 00 ; 0xf5522 keyboard.c:58
mov dx, word [es:bx] ; 26 8b 17 ; 0xf5525
mov bx, strict word 0001ah ; bb 1a 00 ; 0xf5528 keyboard.c:58
mov bx, word [es:bx] ; 26 8b 1f ; 0xf552b
mov di, strict word 0001ch ; bf 1c 00 ; 0xf552e keyboard.c:58
mov ax, word [es:di] ; 26 8b 05 ; 0xf5531
cmp bx, ax ; 39 c3 ; 0xf5534 keyboard.c:640
je short 0556eh ; 74 36 ; 0xf5536
mov al, byte [es:bx] ; 26 8a 07 ; 0xf5538 keyboard.c:48
lea di, [bx+001h] ; 8d 7f 01 ; 0xf553b keyboard.c:642
mov ah, byte [es:di] ; 26 8a 25 ; 0xf553e keyboard.c:48
mov es, cx ; 8e c1 ; 0xf5541 keyboard.c:643
mov byte [es:si], al ; 26 88 04 ; 0xf5543
mov es, [bp-006h] ; 8e 46 fa ; 0xf5546 keyboard.c:644
mov si, word [bp-004h] ; 8b 76 fc ; 0xf5549
mov byte [es:si], ah ; 26 88 24 ; 0xf554c
cmp word [bp+008h], strict byte 00000h ; 83 7e 08 00 ; 0xf554f keyboard.c:647
je short 05569h ; 74 14 ; 0xf5553
inc bx ; 43 ; 0xf5555 keyboard.c:648
inc bx ; 43 ; 0xf5556
cmp bx, dx ; 39 d3 ; 0xf5557 keyboard.c:649
jc short 0555eh ; 72 03 ; 0xf5559
mov bx, word [bp-002h] ; 8b 5e fe ; 0xf555b keyboard.c:650
mov si, strict word 0001ah ; be 1a 00 ; 0xf555e keyboard.c:63
mov ax, strict word 00040h ; b8 40 00 ; 0xf5561
mov es, ax ; 8e c0 ; 0xf5564
mov word [es:si], bx ; 26 89 1c ; 0xf5566
mov ax, strict word 00001h ; b8 01 00 ; 0xf5569 keyboard.c:653
jmp short 05570h ; eb 02 ; 0xf556c
xor ax, ax ; 31 c0 ; 0xf556e keyboard.c:656
leave ; c9 ; 0xf5570 keyboard.c:658
pop di ; 5f ; 0xf5571
pop si ; 5e ; 0xf5572
retn 00002h ; c2 02 00 ; 0xf5573
; disGetNextSymbol 0xf5576 LB 0x58a6 -> off=0x23 cb=00000000000002e7 uValue=00000000000f3f99 'int16_function'
db 0a2h, 092h, 012h, 011h, 010h, 00ah, 009h, 005h, 002h, 001h, 000h, 036h, 058h, 04eh, 056h, 095h
db 056h, 0e2h, 056h, 0f4h, 056h, 01eh, 057h, 027h, 057h, 098h, 057h, 0c9h, 057h, 0f7h, 057h, 02bh
db 058h, 079h, 058h
int16_function: ; 0xf5599 LB 0x2e7
push bp ; 55 ; 0xf5599 keyboard.c:675
mov bp, sp ; 89 e5 ; 0xf559a
push si ; 56 ; 0xf559c
push di ; 57 ; 0xf559d
sub sp, strict byte 00006h ; 83 ec 06 ; 0xf559e
mov bx, strict word 00017h ; bb 17 00 ; 0xf55a1 keyboard.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf55a4
mov es, ax ; 8e c0 ; 0xf55a7
mov al, byte [es:bx] ; 26 8a 07 ; 0xf55a9
mov bl, al ; 88 c3 ; 0xf55ac keyboard.c:49
mov si, 00097h ; be 97 00 ; 0xf55ae keyboard.c:48
mov ah, byte [es:si] ; 26 8a 24 ; 0xf55b1
mov bh, ah ; 88 e7 ; 0xf55b4 keyboard.c:49
movzx dx, al ; 0f b6 d0 ; 0xf55b6 keyboard.c:684
sar dx, 004h ; c1 fa 04 ; 0xf55b9
and dl, 007h ; 80 e2 07 ; 0xf55bc
mov al, ah ; 88 e0 ; 0xf55bf
and AL, strict byte 007h ; 24 07 ; 0xf55c1
xor ah, ah ; 30 e4 ; 0xf55c3
xor al, dl ; 30 d0 ; 0xf55c5
test ax, ax ; 85 c0 ; 0xf55c7
je short 0562ch ; 74 61 ; 0xf55c9
cli ; fa ; 0xf55cb keyboard.c:685
mov AL, strict byte 0edh ; b0 ed ; 0xf55cc keyboard.c:686
mov dx, strict word 00060h ; ba 60 00 ; 0xf55ce
out DX, AL ; ee ; 0xf55d1
mov dx, strict word 00064h ; ba 64 00 ; 0xf55d2 keyboard.c:687
in AL, DX ; ec ; 0xf55d5
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf55d6
test AL, strict byte 001h ; a8 01 ; 0xf55d8
jne short 055e4h ; 75 08 ; 0xf55da
mov AL, strict byte 021h ; b0 21 ; 0xf55dc
mov dx, 00080h ; ba 80 00 ; 0xf55de
out DX, AL ; ee ; 0xf55e1
jmp short 055d2h ; eb ee ; 0xf55e2
mov dx, strict word 00060h ; ba 60 00 ; 0xf55e4 keyboard.c:688
in AL, DX ; ec ; 0xf55e7
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf55e8
cmp ax, 000fah ; 3d fa 00 ; 0xf55ea
jne short 0562bh ; 75 3c ; 0xf55ed
and bh, 0c8h ; 80 e7 c8 ; 0xf55ef keyboard.c:689
movzx dx, bl ; 0f b6 d3 ; 0xf55f2 keyboard.c:690
sar dx, 004h ; c1 fa 04 ; 0xf55f5
and dx, strict byte 00007h ; 83 e2 07 ; 0xf55f8
movzx ax, bh ; 0f b6 c7 ; 0xf55fb
or ax, dx ; 09 d0 ; 0xf55fe
mov bh, al ; 88 c7 ; 0xf5600
and AL, strict byte 007h ; 24 07 ; 0xf5602 keyboard.c:691
mov dx, strict word 00060h ; ba 60 00 ; 0xf5604
out DX, AL ; ee ; 0xf5607
mov dx, strict word 00064h ; ba 64 00 ; 0xf5608 keyboard.c:692
in AL, DX ; ec ; 0xf560b
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf560c
test AL, strict byte 001h ; a8 01 ; 0xf560e
jne short 0561ah ; 75 08 ; 0xf5610
mov AL, strict byte 021h ; b0 21 ; 0xf5612 keyboard.c:693
mov dx, 00080h ; ba 80 00 ; 0xf5614
out DX, AL ; ee ; 0xf5617
jmp short 05608h ; eb ee ; 0xf5618
mov dx, strict word 00060h ; ba 60 00 ; 0xf561a keyboard.c:694
in AL, DX ; ec ; 0xf561d
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf561e
mov si, 00097h ; be 97 00 ; 0xf5620 keyboard.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf5623
mov es, ax ; 8e c0 ; 0xf5626
mov byte [es:si], bh ; 26 88 3c ; 0xf5628
sti ; fb ; 0xf562b keyboard.c:697
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf562c keyboard.c:700
shr ax, 008h ; c1 e8 08 ; 0xf562f
cmp ax, 000a2h ; 3d a2 00 ; 0xf5632
jnbe near 05836h ; 0f 87 fd 01 ; 0xf5635
push CS ; 0e ; 0xf5639
pop ES ; 07 ; 0xf563a
mov cx, strict word 0000ch ; b9 0c 00 ; 0xf563b
mov di, 05576h ; bf 76 55 ; 0xf563e
repne scasb ; f2 ae ; 0xf5641
sal cx, 1 ; d1 e1 ; 0xf5643
mov di, cx ; 89 cf ; 0xf5645
mov ax, word [cs:di+05581h] ; 2e 8b 85 81 55 ; 0xf5647
jmp ax ; ff e0 ; 0xf564c
push strict byte 00001h ; 6a 01 ; 0xf564e keyboard.c:702
mov cx, ss ; 8c d1 ; 0xf5650
lea bx, [bp-00ah] ; 8d 5e f6 ; 0xf5652
mov dx, ss ; 8c d2 ; 0xf5655
lea ax, [bp-006h] ; 8d 46 fa ; 0xf5657
call 0550ah ; e8 ad fe ; 0xf565a
test ax, ax ; 85 c0 ; 0xf565d
jne short 0566ch ; 75 0b ; 0xf565f
push 0069fh ; 68 9f 06 ; 0xf5661 keyboard.c:703
push strict byte 00007h ; 6a 07 ; 0xf5664
call 01a68h ; e8 ff c3 ; 0xf5666
add sp, strict byte 00004h ; 83 c4 04 ; 0xf5669
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf566c keyboard.c:705
je short 05678h ; 74 06 ; 0xf5670
cmp byte [bp-00ah], 0f0h ; 80 7e f6 f0 ; 0xf5672
je short 0567eh ; 74 06 ; 0xf5676
cmp byte [bp-00ah], 0e0h ; 80 7e f6 e0 ; 0xf5678 keyboard.c:707
jne short 05682h ; 75 04 ; 0xf567c
mov byte [bp-00ah], 000h ; c6 46 f6 00 ; 0xf567e keyboard.c:708
movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xf5682 keyboard.c:709
sal dx, 008h ; c1 e2 08 ; 0xf5686
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf5689
or dx, ax ; 09 c2 ; 0xf568d
mov word [bp+012h], dx ; 89 56 12 ; 0xf568f
jmp near 05879h ; e9 e4 01 ; 0xf5692 keyboard.c:710
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf5695 keyboard.c:714
mov word [bp+01eh], ax ; 89 46 1e ; 0xf5698
push strict byte 00000h ; 6a 00 ; 0xf569b keyboard.c:715
mov cx, ss ; 8c d1 ; 0xf569d
lea bx, [bp-00ah] ; 8d 5e f6 ; 0xf569f
mov dx, ss ; 8c d2 ; 0xf56a2
lea ax, [bp-006h] ; 8d 46 fa ; 0xf56a4
call 0550ah ; e8 60 fe ; 0xf56a7
test ax, ax ; 85 c0 ; 0xf56aa
jne short 056b5h ; 75 07 ; 0xf56ac
or word [bp+01eh], strict byte 00040h ; 83 4e 1e 40 ; 0xf56ae keyboard.c:716
jmp near 05879h ; e9 c4 01 ; 0xf56b2 keyboard.c:717
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf56b5 keyboard.c:719
je short 056c1h ; 74 06 ; 0xf56b9
cmp byte [bp-00ah], 0f0h ; 80 7e f6 f0 ; 0xf56bb
je short 056c7h ; 74 06 ; 0xf56bf
cmp byte [bp-00ah], 0e0h ; 80 7e f6 e0 ; 0xf56c1 keyboard.c:721
jne short 056cbh ; 75 04 ; 0xf56c5
mov byte [bp-00ah], 000h ; c6 46 f6 00 ; 0xf56c7 keyboard.c:722
movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xf56cb keyboard.c:723
sal dx, 008h ; c1 e2 08 ; 0xf56cf
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf56d2
or dx, ax ; 09 c2 ; 0xf56d6
mov word [bp+012h], dx ; 89 56 12 ; 0xf56d8
and word [bp+01eh], strict byte 0ffbfh ; 83 66 1e bf ; 0xf56db keyboard.c:724
jmp near 05879h ; e9 97 01 ; 0xf56df keyboard.c:725
mov bx, strict word 00017h ; bb 17 00 ; 0xf56e2 keyboard.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf56e5
mov es, ax ; 8e c0 ; 0xf56e8
mov al, byte [es:bx] ; 26 8a 07 ; 0xf56ea
mov dx, word [bp+012h] ; 8b 56 12 ; 0xf56ed keyboard.c:729
mov dl, al ; 88 c2 ; 0xf56f0
jmp short 0568fh ; eb 9b ; 0xf56f2
mov al, byte [bp+010h] ; 8a 46 10 ; 0xf56f4 keyboard.c:733
movzx dx, al ; 0f b6 d0 ; 0xf56f7
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf56fa
shr ax, 008h ; c1 e8 08 ; 0xf56fd
xor ah, ah ; 30 e4 ; 0xf5700
call 050b5h ; e8 b0 f9 ; 0xf5702
test ax, ax ; 85 c0 ; 0xf5705
jne short 05716h ; 75 0d ; 0xf5707
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf5709 keyboard.c:734
xor al, al ; 30 c0 ; 0xf570c
or AL, strict byte 001h ; 0c 01 ; 0xf570e
mov word [bp+012h], ax ; 89 46 12 ; 0xf5710
jmp near 05879h ; e9 63 01 ; 0xf5713 keyboard.c:736
and word [bp+012h], 0ff00h ; 81 66 12 00 ff ; 0xf5716 keyboard.c:737
jmp near 05879h ; e9 5b 01 ; 0xf571b keyboard.c:739
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf571e keyboard.c:752
xor al, al ; 30 c0 ; 0xf5721
or AL, strict byte 030h ; 0c 30 ; 0xf5723
jmp short 05710h ; eb e9 ; 0xf5725
mov byte [bp-008h], 002h ; c6 46 f8 02 ; 0xf5727 keyboard.c:756
xor cx, cx ; 31 c9 ; 0xf572b keyboard.c:757
cli ; fa ; 0xf572d keyboard.c:759
mov AL, strict byte 0f2h ; b0 f2 ; 0xf572e keyboard.c:760
mov dx, strict word 00060h ; ba 60 00 ; 0xf5730
out DX, AL ; ee ; 0xf5733
mov bx, strict word 0ffffh ; bb ff ff ; 0xf5734 keyboard.c:762
mov dx, strict word 00064h ; ba 64 00 ; 0xf5737 keyboard.c:763
in AL, DX ; ec ; 0xf573a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf573b
test AL, strict byte 001h ; a8 01 ; 0xf573d
jne short 0574eh ; 75 0d ; 0xf573f
dec bx ; 4b ; 0xf5741
test bx, bx ; 85 db ; 0xf5742
jbe short 0574eh ; 76 08 ; 0xf5744
mov dx, 00080h ; ba 80 00 ; 0xf5746 keyboard.c:764
in AL, DX ; ec ; 0xf5749
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf574a
jmp short 05737h ; eb e9 ; 0xf574c
test bx, bx ; 85 db ; 0xf574e keyboard.c:765
jbe short 05792h ; 76 40 ; 0xf5750
mov dx, strict word 00060h ; ba 60 00 ; 0xf5752 keyboard.c:766
in AL, DX ; ec ; 0xf5755
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5756
cmp ax, 000fah ; 3d fa 00 ; 0xf5758
jne short 05792h ; 75 35 ; 0xf575b
mov bx, strict word 0ffffh ; bb ff ff ; 0xf575d keyboard.c:768
mov dx, strict word 00064h ; ba 64 00 ; 0xf5760 keyboard.c:769
in AL, DX ; ec ; 0xf5763
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5764
test AL, strict byte 001h ; a8 01 ; 0xf5766
jne short 05777h ; 75 0d ; 0xf5768
dec bx ; 4b ; 0xf576a
test bx, bx ; 85 db ; 0xf576b
jbe short 05777h ; 76 08 ; 0xf576d
mov dx, 00080h ; ba 80 00 ; 0xf576f keyboard.c:770
in AL, DX ; ec ; 0xf5772
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5773
jmp short 05760h ; eb e9 ; 0xf5775
test bx, bx ; 85 db ; 0xf5777 keyboard.c:771
jbe short 05789h ; 76 0e ; 0xf5779
shr cx, 008h ; c1 e9 08 ; 0xf577b keyboard.c:772
mov dx, strict word 00060h ; ba 60 00 ; 0xf577e keyboard.c:773
in AL, DX ; ec ; 0xf5781
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5782
sal ax, 008h ; c1 e0 08 ; 0xf5784
or cx, ax ; 09 c1 ; 0xf5787
dec byte [bp-008h] ; fe 4e f8 ; 0xf5789 keyboard.c:775
cmp byte [bp-008h], 000h ; 80 7e f8 00 ; 0xf578c
jnbe short 0575dh ; 77 cb ; 0xf5790
mov word [bp+00ch], cx ; 89 4e 0c ; 0xf5792 keyboard.c:778
jmp near 05879h ; e9 e1 00 ; 0xf5795 keyboard.c:779
push strict byte 00001h ; 6a 01 ; 0xf5798 keyboard.c:782
mov cx, ss ; 8c d1 ; 0xf579a
lea bx, [bp-00ah] ; 8d 5e f6 ; 0xf579c
mov dx, ss ; 8c d2 ; 0xf579f
lea ax, [bp-006h] ; 8d 46 fa ; 0xf57a1
call 0550ah ; e8 63 fd ; 0xf57a4
test ax, ax ; 85 c0 ; 0xf57a7
jne short 057b6h ; 75 0b ; 0xf57a9
push 0069fh ; 68 9f 06 ; 0xf57ab keyboard.c:783
push strict byte 00007h ; 6a 07 ; 0xf57ae
call 01a68h ; e8 b5 c2 ; 0xf57b0
add sp, strict byte 00004h ; 83 c4 04 ; 0xf57b3
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf57b6 keyboard.c:785
je near 05682h ; 0f 84 c4 fe ; 0xf57ba
cmp byte [bp-00ah], 0f0h ; 80 7e f6 f0 ; 0xf57be
je near 0567eh ; 0f 84 b8 fe ; 0xf57c2
jmp near 05682h ; e9 b9 fe ; 0xf57c6
mov ax, word [bp+018h] ; 8b 46 18 ; 0xf57c9 keyboard.c:792
mov word [bp+01eh], ax ; 89 46 1e ; 0xf57cc
push strict byte 00000h ; 6a 00 ; 0xf57cf keyboard.c:793
mov cx, ss ; 8c d1 ; 0xf57d1
lea bx, [bp-00ah] ; 8d 5e f6 ; 0xf57d3
mov dx, ss ; 8c d2 ; 0xf57d6
lea ax, [bp-006h] ; 8d 46 fa ; 0xf57d8
call 0550ah ; e8 2c fd ; 0xf57db
test ax, ax ; 85 c0 ; 0xf57de
je near 056aeh ; 0f 84 ca fe ; 0xf57e0
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf57e4 keyboard.c:797
je near 056cbh ; 0f 84 df fe ; 0xf57e8
cmp byte [bp-00ah], 0f0h ; 80 7e f6 f0 ; 0xf57ec
je near 056c7h ; 0f 84 d3 fe ; 0xf57f0
jmp near 056cbh ; e9 d4 fe ; 0xf57f4
mov bx, strict word 00017h ; bb 17 00 ; 0xf57f7 keyboard.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf57fa
mov es, ax ; 8e c0 ; 0xf57fd
mov al, byte [es:bx] ; 26 8a 07 ; 0xf57ff
mov dx, word [bp+012h] ; 8b 56 12 ; 0xf5802 keyboard.c:805
mov dl, al ; 88 c2 ; 0xf5805
mov word [bp+012h], dx ; 89 56 12 ; 0xf5807
mov bx, strict word 00018h ; bb 18 00 ; 0xf580a keyboard.c:48
mov bl, byte [es:bx] ; 26 8a 1f ; 0xf580d
and bl, 073h ; 80 e3 73 ; 0xf5810 keyboard.c:49
mov si, 00096h ; be 96 00 ; 0xf5813 keyboard.c:48
mov al, byte [es:si] ; 26 8a 04 ; 0xf5816
and AL, strict byte 00ch ; 24 0c ; 0xf5819 keyboard.c:49
or bl, al ; 08 c3 ; 0xf581b
mov dx, word [bp+012h] ; 8b 56 12 ; 0xf581d keyboard.c:808
xor dh, dh ; 30 f6 ; 0xf5820
movzx ax, bl ; 0f b6 c3 ; 0xf5822
sal ax, 008h ; c1 e0 08 ; 0xf5825
jmp near 0568dh ; e9 62 fe ; 0xf5828
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf582b keyboard.c:813
xor ah, ah ; 30 e4 ; 0xf582e
or ah, 080h ; 80 cc 80 ; 0xf5830
jmp near 05710h ; e9 da fe ; 0xf5833
mov bx, 00e16h ; bb 16 0e ; 0xf5836 keyboard.c:828
mov cx, ds ; 8c d9 ; 0xf5839
mov ax, strict word 00004h ; b8 04 00 ; 0xf583b
call 01a27h ; e8 e6 c1 ; 0xf583e
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf5841
shr ax, 008h ; c1 e8 08 ; 0xf5844
push ax ; 50 ; 0xf5847
push 006c3h ; 68 c3 06 ; 0xf5848
push strict byte 00004h ; 6a 04 ; 0xf584b
call 01a68h ; e8 18 c2 ; 0xf584d
add sp, strict byte 00006h ; 83 c4 06 ; 0xf5850
mov bx, 00e16h ; bb 16 0e ; 0xf5853 keyboard.c:829
mov cx, ds ; 8c d9 ; 0xf5856
mov ax, strict word 00004h ; b8 04 00 ; 0xf5858
call 01a27h ; e8 c9 c1 ; 0xf585b
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf585e
push ax ; 50 ; 0xf5861
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf5862
push ax ; 50 ; 0xf5865
mov ax, word [bp+00ch] ; 8b 46 0c ; 0xf5866
push ax ; 50 ; 0xf5869
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf586a
push ax ; 50 ; 0xf586d
push 006ebh ; 68 eb 06 ; 0xf586e
push strict byte 00004h ; 6a 04 ; 0xf5871
call 01a68h ; e8 f2 c1 ; 0xf5873
add sp, strict byte 0000ch ; 83 c4 0c ; 0xf5876
lea sp, [bp-004h] ; 8d 66 fc ; 0xf5879 keyboard.c:832
pop di ; 5f ; 0xf587c
pop si ; 5e ; 0xf587d
pop bp ; 5d ; 0xf587e
retn ; c3 ; 0xf587f
; disGetNextSymbol 0xf5880 LB 0x559c -> off=0x0 cb=00000000000000b3 uValue=00000000000f4280 'set_geom_lba'
set_geom_lba: ; 0xf5880 LB 0xb3
push bx ; 53 ; 0xf5880 disk.c:125
push cx ; 51 ; 0xf5881
push si ; 56 ; 0xf5882
push di ; 57 ; 0xf5883
enter 00008h, 000h ; c8 08 00 00 ; 0xf5884
mov di, ax ; 89 c7 ; 0xf5888
mov es, dx ; 8e c2 ; 0xf588a
mov dword [bp-008h], strict dword 0007e0000h ; 66 c7 46 f8 00 00 7e 00 ; 0xf588c disk.c:127
mov word [bp-002h], 000ffh ; c7 46 fe ff 00 ; 0xf5894 disk.c:129
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf5899 disk.c:132
mov bx, word [bp+010h] ; 8b 5e 10 ; 0xf589c
mov cx, word [bp+00eh] ; 8b 4e 0e ; 0xf589f
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xf58a2
mov si, strict word 00020h ; be 20 00 ; 0xf58a5
call 0ad60h ; e8 b5 54 ; 0xf58a8
test ax, ax ; 85 c0 ; 0xf58ab
jne short 058bbh ; 75 0c ; 0xf58ad
test bx, bx ; 85 db ; 0xf58af
jne short 058bbh ; 75 08 ; 0xf58b1
test cx, cx ; 85 c9 ; 0xf58b3
jne short 058bbh ; 75 04 ; 0xf58b5
test dx, dx ; 85 d2 ; 0xf58b7
je short 058c2h ; 74 07 ; 0xf58b9
mov bx, strict word 0ffffh ; bb ff ff ; 0xf58bb
mov si, bx ; 89 de ; 0xf58be
jmp short 058c8h ; eb 06 ; 0xf58c0
mov bx, word [bp+00ch] ; 8b 5e 0c ; 0xf58c2
mov si, word [bp+00eh] ; 8b 76 0e ; 0xf58c5
mov word [bp-004h], bx ; 89 5e fc ; 0xf58c8
xor bx, bx ; 31 db ; 0xf58cb disk.c:134
jmp short 058d4h ; eb 05 ; 0xf58cd
cmp bx, strict byte 00004h ; 83 fb 04 ; 0xf58cf
jnl short 058f7h ; 7d 23 ; 0xf58d2
mov ax, word [bp-006h] ; 8b 46 fa ; 0xf58d4 disk.c:135
cmp si, ax ; 39 c6 ; 0xf58d7
jc short 058e5h ; 72 0a ; 0xf58d9
jne short 058eeh ; 75 11 ; 0xf58db
mov ax, word [bp-004h] ; 8b 46 fc ; 0xf58dd
cmp ax, word [bp-008h] ; 3b 46 f8 ; 0xf58e0
jnbe short 058eeh ; 77 09 ; 0xf58e3
mov ax, word [bp-002h] ; 8b 46 fe ; 0xf58e5 disk.c:136
inc ax ; 40 ; 0xf58e8
shr ax, 1 ; d1 e8 ; 0xf58e9
mov word [bp-002h], ax ; 89 46 fe ; 0xf58eb
shr word [bp-006h], 1 ; d1 6e fa ; 0xf58ee disk.c:137
rcr word [bp-008h], 1 ; d1 5e f8 ; 0xf58f1
inc bx ; 43 ; 0xf58f4 disk.c:138
jmp short 058cfh ; eb d8 ; 0xf58f5
mov ax, word [bp-002h] ; 8b 46 fe ; 0xf58f7 disk.c:140
xor dx, dx ; 31 d2 ; 0xf58fa
mov bx, strict word 0003fh ; bb 3f 00 ; 0xf58fc
xor cx, cx ; 31 c9 ; 0xf58ff
call 0ace0h ; e8 dc 53 ; 0xf5901
mov bx, ax ; 89 c3 ; 0xf5904
mov cx, dx ; 89 d1 ; 0xf5906
mov ax, word [bp-004h] ; 8b 46 fc ; 0xf5908
mov dx, si ; 89 f2 ; 0xf590b
call 0ad20h ; e8 10 54 ; 0xf590d
mov word [es:di+002h], ax ; 26 89 45 02 ; 0xf5910
cmp ax, 00400h ; 3d 00 04 ; 0xf5914 disk.c:141
jbe short 0591fh ; 76 06 ; 0xf5917
mov word [es:di+002h], 00400h ; 26 c7 45 02 00 04 ; 0xf5919 disk.c:142
mov ax, word [bp-002h] ; 8b 46 fe ; 0xf591f disk.c:143
mov word [es:di], ax ; 26 89 05 ; 0xf5922
mov word [es:di+004h], strict word 0003fh ; 26 c7 45 04 3f 00 ; 0xf5925 disk.c:144
leave ; c9 ; 0xf592b disk.c:145
pop di ; 5f ; 0xf592c
pop si ; 5e ; 0xf592d
pop cx ; 59 ; 0xf592e
pop bx ; 5b ; 0xf592f
retn 00008h ; c2 08 00 ; 0xf5930
; disGetNextSymbol 0xf5933 LB 0x54e9 -> off=0x0 cb=00000000000002ed uValue=00000000000f4333 'edd_fill_dpt'
edd_fill_dpt: ; 0xf5933 LB 0x2ed
push si ; 56 ; 0xf5933 disk.c:147
push di ; 57 ; 0xf5934
enter 0000eh, 000h ; c8 0e 00 00 ; 0xf5935
mov di, ax ; 89 c7 ; 0xf5939
mov word [bp-004h], dx ; 89 56 fc ; 0xf593b
mov word [bp-00eh], bx ; 89 5e f2 ; 0xf593e
mov word [bp-006h], cx ; 89 4e fa ; 0xf5941
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf5944 disk.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf5947
mov es, ax ; 8e c0 ; 0xf594a
mov ax, word [es:bx] ; 26 8b 07 ; 0xf594c
mov word [bp-008h], ax ; 89 46 f8 ; 0xf594f disk.c:59
mov es, dx ; 8e c2 ; 0xf5952 disk.c:152
mov ax, word [es:di] ; 26 8b 05 ; 0xf5954
cmp ax, strict word 0001ah ; 3d 1a 00 ; 0xf5957
jnc short 05962h ; 73 06 ; 0xf595a
mov ax, strict word 0ffffh ; b8 ff ff ; 0xf595c disk.c:153
jmp near 05c1ah ; e9 b8 02 ; 0xf595f
jc near 05a34h ; 0f 82 ce 00 ; 0xf5962 disk.c:156
mov word [es:di], strict word 0001ah ; 26 c7 05 1a 00 ; 0xf5966 disk.c:159
movzx bx, byte [bp+008h] ; 0f b6 5e 08 ; 0xf596b disk.c:160
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf596f
mov dx, cx ; 89 ca ; 0xf5972
add bx, word [bp-00eh] ; 03 5e f2 ; 0xf5974
mov es, cx ; 8e c1 ; 0xf5977
mov ax, word [es:bx+024h] ; 26 8b 47 24 ; 0xf5979
mov es, [bp-004h] ; 8e 46 fc ; 0xf597d
mov word [es:di+018h], ax ; 26 89 45 18 ; 0xf5980
mov es, cx ; 8e c1 ; 0xf5984 disk.c:162
cmp byte [es:bx+01fh], 005h ; 26 80 7f 1f 05 ; 0xf5986
jne short 059c5h ; 75 38 ; 0xf598b
mov es, [bp-004h] ; 8e 46 fc ; 0xf598d disk.c:163
db 066h, 026h, 0c7h, 045h, 002h, 074h, 000h, 0ffh, 0ffh
; mov dword [es:di+002h], strict dword 0ffff0074h ; 66 26 c7 45 02 74 00 ff ff; 0xf5990
db 066h, 026h, 0c7h, 045h, 006h, 0ffh, 0ffh, 0ffh, 0ffh
; mov dword [es:di+006h], strict dword 0ffffffffh ; 66 26 c7 45 06 ff ff ff ff; 0xf5999 disk.c:164
db 066h, 026h, 0c7h, 045h, 00ah, 0ffh, 0ffh, 0ffh, 0ffh
; mov dword [es:di+00ah], strict dword 0ffffffffh ; 66 26 c7 45 0a ff ff ff ff; 0xf59a2 disk.c:165
db 066h, 026h, 0c7h, 045h, 00eh, 0ffh, 0ffh, 0ffh, 0ffh
; mov dword [es:di+00eh], strict dword 0ffffffffh ; 66 26 c7 45 0e ff ff ff ff; 0xf59ab disk.c:166
db 066h, 026h, 0c7h, 045h, 012h, 0ffh, 0ffh, 0ffh, 0ffh
; mov dword [es:di+012h], strict dword 0ffffffffh ; 66 26 c7 45 12 ff ff ff ff; 0xf59b4 disk.c:167
mov word [es:di+016h], strict word 0ffffh ; 26 c7 45 16 ff ff ; 0xf59bd disk.c:168
jmp short 05a34h ; eb 6f ; 0xf59c3 disk.c:169
mov es, [bp-004h] ; 8e 46 fc ; 0xf59c5 disk.c:170
mov word [es:di+002h], strict word 00002h ; 26 c7 45 02 02 00 ; 0xf59c8
mov es, cx ; 8e c1 ; 0xf59ce disk.c:171
mov ax, word [es:bx+02eh] ; 26 8b 47 2e ; 0xf59d0
mov es, [bp-004h] ; 8e 46 fc ; 0xf59d4
mov word [es:di+004h], ax ; 26 89 45 04 ; 0xf59d7
mov word [es:di+006h], strict word 00000h ; 26 c7 45 06 00 00 ; 0xf59db
mov es, cx ; 8e c1 ; 0xf59e1 disk.c:172
mov ax, word [es:bx+02ch] ; 26 8b 47 2c ; 0xf59e3
mov es, [bp-004h] ; 8e 46 fc ; 0xf59e7
mov word [es:di+008h], ax ; 26 89 45 08 ; 0xf59ea
mov word [es:di+00ah], strict word 00000h ; 26 c7 45 0a 00 00 ; 0xf59ee
mov es, cx ; 8e c1 ; 0xf59f4 disk.c:173
mov ax, word [es:bx+030h] ; 26 8b 47 30 ; 0xf59f6
mov es, [bp-004h] ; 8e 46 fc ; 0xf59fa
mov word [es:di+00ch], ax ; 26 89 45 0c ; 0xf59fd
mov word [es:di+00eh], strict word 00000h ; 26 c7 45 0e 00 00 ; 0xf5a01
mov es, cx ; 8e c1 ; 0xf5a07 disk.c:174
mov ax, word [es:bx+038h] ; 26 8b 47 38 ; 0xf5a09
mov si, word [es:bx+036h] ; 26 8b 77 36 ; 0xf5a0d
mov cx, word [es:bx+034h] ; 26 8b 4f 34 ; 0xf5a11
mov dx, word [es:bx+032h] ; 26 8b 57 32 ; 0xf5a15
mov es, [bp-004h] ; 8e 46 fc ; 0xf5a19 disk.c:175
mov word [es:di+010h], dx ; 26 89 55 10 ; 0xf5a1c
mov word [es:di+012h], cx ; 26 89 4d 12 ; 0xf5a20
mov bx, si ; 89 f3 ; 0xf5a24 disk.c:176
mov si, strict word 00020h ; be 20 00 ; 0xf5a26
call 0ad60h ; e8 34 53 ; 0xf5a29
mov word [es:di+014h], dx ; 26 89 55 14 ; 0xf5a2c
mov word [es:di+016h], cx ; 26 89 4d 16 ; 0xf5a30
mov es, [bp-004h] ; 8e 46 fc ; 0xf5a34 disk.c:181
cmp word [es:di], strict byte 0001eh ; 26 83 3d 1e ; 0xf5a37
jc near 05b5dh ; 0f 82 1e 01 ; 0xf5a3b
mov word [es:di], strict word 0001eh ; 26 c7 05 1e 00 ; 0xf5a3f disk.c:185
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf5a44 disk.c:186
mov word [es:di+01ch], ax ; 26 89 45 1c ; 0xf5a47
mov word [es:di+01ah], 00306h ; 26 c7 45 1a 06 03 ; 0xf5a4b disk.c:187
movzx cx, byte [bp+008h] ; 0f b6 4e 08 ; 0xf5a51 disk.c:190
mov ax, cx ; 89 c8 ; 0xf5a55
cwd ; 99 ; 0xf5a57
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf5a58
sar ax, 1 ; d1 f8 ; 0xf5a5a
xor ah, ah ; 30 e4 ; 0xf5a5c disk.c:191
imul ax, ax, strict byte 00006h ; 6b c0 06 ; 0xf5a5e
mov es, [bp-006h] ; 8e 46 fa ; 0xf5a61
mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xf5a64
add bx, ax ; 01 c3 ; 0xf5a67
mov ax, word [es:bx+0027ah] ; 26 8b 87 7a 02 ; 0xf5a69
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf5a6e
mov ax, word [es:bx+0027ch] ; 26 8b 87 7c 02 ; 0xf5a71 disk.c:192
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf5a76
mov al, byte [es:bx+00279h] ; 26 8a 87 79 02 ; 0xf5a79 disk.c:193
mov byte [bp-002h], al ; 88 46 fe ; 0xf5a7e
imul bx, cx, strict byte 0001ch ; 6b d9 1c ; 0xf5a81 disk.c:194
add bx, word [bp-00eh] ; 03 5e f2 ; 0xf5a84
mov ah, byte [es:bx+022h] ; 26 8a 67 22 ; 0xf5a87
mov al, byte [es:bx+023h] ; 26 8a 47 23 ; 0xf5a8b disk.c:195
test al, al ; 84 c0 ; 0xf5a8f disk.c:197
jne short 05a97h ; 75 04 ; 0xf5a91
xor bx, bx ; 31 db ; 0xf5a93
jmp short 05a9ah ; eb 03 ; 0xf5a95
mov bx, strict word 00008h ; bb 08 00 ; 0xf5a97
or bl, 010h ; 80 cb 10 ; 0xf5a9a disk.c:198
movzx dx, byte [bp+008h] ; 0f b6 56 08 ; 0xf5a9d disk.c:199
imul dx, dx, strict byte 0001ch ; 6b d2 1c ; 0xf5aa1
mov es, [bp-006h] ; 8e 46 fa ; 0xf5aa4
mov si, word [bp-00eh] ; 8b 76 f2 ; 0xf5aa7
add si, dx ; 01 d6 ; 0xf5aaa
cmp byte [es:si+01fh], 005h ; 26 80 7c 1f 05 ; 0xf5aac
jne short 05ab6h ; 75 03 ; 0xf5ab1
or bl, 060h ; 80 cb 60 ; 0xf5ab3 disk.c:200
cmp ah, 001h ; 80 fc 01 ; 0xf5ab6 disk.c:204
db 00fh, 094h, 0c4h
; sete ah ; 0f 94 c4 ; 0xf5ab9
movzx dx, ah ; 0f b6 d4 ; 0xf5abc
or bx, dx ; 09 d3 ; 0xf5abf
cmp AL, strict byte 001h ; 3c 01 ; 0xf5ac1 disk.c:206
db 00fh, 094h, 0c4h
; sete ah ; 0f 94 c4 ; 0xf5ac3
movzx dx, ah ; 0f b6 d4 ; 0xf5ac6
or bx, dx ; 09 d3 ; 0xf5ac9
cmp AL, strict byte 003h ; 3c 03 ; 0xf5acb disk.c:207
jne short 05ad4h ; 75 05 ; 0xf5acd
mov ax, strict word 00003h ; b8 03 00 ; 0xf5acf
jmp short 05ad6h ; eb 02 ; 0xf5ad2
xor ax, ax ; 31 c0 ; 0xf5ad4
or bx, ax ; 09 c3 ; 0xf5ad6
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf5ad8 disk.c:209
mov es, [bp-006h] ; 8e 46 fa ; 0xf5adb
mov si, word [bp-00eh] ; 8b 76 f2 ; 0xf5ade
mov word [es:si+002a8h], ax ; 26 89 84 a8 02 ; 0xf5ae1
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf5ae6 disk.c:210
mov word [es:si+002aah], ax ; 26 89 84 aa 02 ; 0xf5ae9
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xf5aee disk.c:211
cwd ; 99 ; 0xf5af2
mov cx, strict word 00002h ; b9 02 00 ; 0xf5af3
idiv cx ; f7 f9 ; 0xf5af6
or dl, 00eh ; 80 ca 0e ; 0xf5af8
sal dx, 004h ; c1 e2 04 ; 0xf5afb
mov byte [es:si+002ach], dl ; 26 88 94 ac 02 ; 0xf5afe
mov byte [es:si+002adh], 0cbh ; 26 c6 84 ad 02 cb ; 0xf5b03 disk.c:212
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf5b09 disk.c:213
mov byte [es:si+002aeh], al ; 26 88 84 ae 02 ; 0xf5b0c
mov word [es:si+002afh], strict word 00001h ; 26 c7 84 af 02 01 00 ; 0xf5b11 disk.c:214
mov byte [es:si+002b1h], 000h ; 26 c6 84 b1 02 00 ; 0xf5b18 disk.c:216
mov word [es:si+002b2h], bx ; 26 89 9c b2 02 ; 0xf5b1e disk.c:217
mov bx, si ; 89 f3 ; 0xf5b23 disk.c:218
mov word [es:bx+002b4h], strict word 00000h ; 26 c7 87 b4 02 00 00 ; 0xf5b25
mov byte [es:bx+002b6h], 011h ; 26 c6 87 b6 02 11 ; 0xf5b2c disk.c:219
xor al, al ; 30 c0 ; 0xf5b32 disk.c:221
xor ah, ah ; 30 e4 ; 0xf5b34 disk.c:222
jmp short 05b3dh ; eb 05 ; 0xf5b36
cmp ah, 00fh ; 80 fc 0f ; 0xf5b38
jnc short 05b50h ; 73 13 ; 0xf5b3b
movzx bx, ah ; 0f b6 dc ; 0xf5b3d disk.c:223
add bx, 00306h ; 81 c3 06 03 ; 0xf5b40
mov es, [bp-008h] ; 8e 46 f8 ; 0xf5b44 disk.c:48
mov dl, byte [es:bx] ; 26 8a 17 ; 0xf5b47
add al, dl ; 00 d0 ; 0xf5b4a disk.c:49
db 0feh, 0c4h
; inc ah ; fe c4 ; 0xf5b4c disk.c:223
jmp short 05b38h ; eb e8 ; 0xf5b4e
neg al ; f6 d8 ; 0xf5b50 disk.c:224
mov es, [bp-006h] ; 8e 46 fa ; 0xf5b52 disk.c:225
mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xf5b55
mov byte [es:bx+002b7h], al ; 26 88 87 b7 02 ; 0xf5b58
mov es, [bp-004h] ; 8e 46 fc ; 0xf5b5d disk.c:229
cmp word [es:di], strict byte 00042h ; 26 83 3d 42 ; 0xf5b60
jc near 05c18h ; 0f 82 b0 00 ; 0xf5b64
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xf5b68 disk.c:233
cwd ; 99 ; 0xf5b6c
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf5b6d
sar ax, 1 ; d1 f8 ; 0xf5b6f
xor ah, ah ; 30 e4 ; 0xf5b71 disk.c:234
imul ax, ax, strict byte 00006h ; 6b c0 06 ; 0xf5b73
mov es, [bp-006h] ; 8e 46 fa ; 0xf5b76
mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xf5b79
add bx, ax ; 01 c3 ; 0xf5b7c
mov al, byte [es:bx+00278h] ; 26 8a 87 78 02 ; 0xf5b7e
mov dx, word [es:bx+0027ah] ; 26 8b 97 7a 02 ; 0xf5b83 disk.c:235
mov es, [bp-004h] ; 8e 46 fc ; 0xf5b88 disk.c:237
mov word [es:di], strict word 00042h ; 26 c7 05 42 00 ; 0xf5b8b
db 066h, 026h, 0c7h, 045h, 01eh, 0ddh, 0beh, 024h, 000h
; mov dword [es:di+01eh], strict dword 00024beddh ; 66 26 c7 45 1e dd be 24 00; 0xf5b90 disk.c:238
mov word [es:di+022h], strict word 00000h ; 26 c7 45 22 00 00 ; 0xf5b99 disk.c:241
test al, al ; 84 c0 ; 0xf5b9f disk.c:243
jne short 05bach ; 75 09 ; 0xf5ba1
db 066h, 026h, 0c7h, 045h, 024h, 049h, 053h, 041h, 020h
; mov dword [es:di+024h], strict dword 020415349h ; 66 26 c7 45 24 49 53 41 20; 0xf5ba3 disk.c:244
mov es, [bp-004h] ; 8e 46 fc ; 0xf5bac disk.c:252
db 066h, 026h, 0c7h, 045h, 028h, 041h, 054h, 041h, 020h
; mov dword [es:di+028h], strict dword 020415441h ; 66 26 c7 45 28 41 54 41 20; 0xf5baf
db 066h, 026h, 0c7h, 045h, 02ch, 020h, 020h, 020h, 020h
; mov dword [es:di+02ch], strict dword 020202020h ; 66 26 c7 45 2c 20 20 20 20; 0xf5bb8 disk.c:256
test al, al ; 84 c0 ; 0xf5bc1 disk.c:261
jne short 05bd8h ; 75 13 ; 0xf5bc3
mov word [es:di+030h], dx ; 26 89 55 30 ; 0xf5bc5 disk.c:262
db 066h, 026h, 0c7h, 045h, 032h, 000h, 000h, 000h, 000h
; mov dword [es:di+032h], strict dword 000000000h ; 66 26 c7 45 32 00 00 00 00; 0xf5bc9 disk.c:263
mov word [es:di+036h], strict word 00000h ; 26 c7 45 36 00 00 ; 0xf5bd2 disk.c:264
mov al, byte [bp+008h] ; 8a 46 08 ; 0xf5bd8 disk.c:269
and AL, strict byte 001h ; 24 01 ; 0xf5bdb
xor ah, ah ; 30 e4 ; 0xf5bdd
mov es, [bp-004h] ; 8e 46 fc ; 0xf5bdf
mov word [es:di+038h], ax ; 26 89 45 38 ; 0xf5be2
db 066h, 026h, 0c7h, 045h, 03ah, 000h, 000h, 000h, 000h
; mov dword [es:di+03ah], strict dword 000000000h ; 66 26 c7 45 3a 00 00 00 00; 0xf5be6 disk.c:270
mov word [es:di+03eh], strict word 00000h ; 26 c7 45 3e 00 00 ; 0xf5bef disk.c:271
xor al, al ; 30 c0 ; 0xf5bf5 disk.c:273
mov AH, strict byte 01eh ; b4 1e ; 0xf5bf7 disk.c:274
jmp short 05c00h ; eb 05 ; 0xf5bf9
cmp ah, 040h ; 80 fc 40 ; 0xf5bfb
jnc short 05c0fh ; 73 0f ; 0xf5bfe
movzx bx, ah ; 0f b6 dc ; 0xf5c00 disk.c:275
mov es, [bp-004h] ; 8e 46 fc ; 0xf5c03
add bx, di ; 01 fb ; 0xf5c06
add al, byte [es:bx] ; 26 02 07 ; 0xf5c08
db 0feh, 0c4h
; inc ah ; fe c4 ; 0xf5c0b
jmp short 05bfbh ; eb ec ; 0xf5c0d
neg al ; f6 d8 ; 0xf5c0f disk.c:276
mov es, [bp-004h] ; 8e 46 fc ; 0xf5c11 disk.c:277
mov byte [es:di+041h], al ; 26 88 45 41 ; 0xf5c14
xor ax, ax ; 31 c0 ; 0xf5c18 disk.c:279
leave ; c9 ; 0xf5c1a disk.c:280
pop di ; 5f ; 0xf5c1b
pop si ; 5e ; 0xf5c1c
retn 00002h ; c2 02 00 ; 0xf5c1d
; disGetNextSymbol 0xf5c20 LB 0x51fc -> off=0x32 cb=000000000000042f uValue=00000000000f4652 'int13_harddisk'
db 0e8h, 05ch, 00fh, 05dh, 036h, 05dh, 036h, 05dh, 036h, 05dh, 01bh, 05fh, 043h, 060h, 043h, 060h
db 034h, 05fh, 020h, 060h, 043h, 060h, 043h, 060h, 020h, 060h, 020h, 060h, 043h, 060h, 043h, 060h
db 0a1h, 05fh, 020h, 060h, 043h, 060h, 043h, 060h, 020h, 060h, 0d9h, 05fh, 043h, 060h, 043h, 060h
db 043h, 060h
int13_harddisk: ; 0xf5c52 LB 0x42f
push bp ; 55 ; 0xf5c52 disk.c:282
mov bp, sp ; 89 e5 ; 0xf5c53
sub sp, strict byte 00012h ; 83 ec 12 ; 0xf5c55
or byte [bp+01dh], 002h ; 80 4e 1d 02 ; 0xf5c58 disk.c:293
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf5c5c disk.c:58
mov dx, strict word 00040h ; ba 40 00 ; 0xf5c5f
mov es, dx ; 8e c2 ; 0xf5c62
mov dx, word [es:bx] ; 26 8b 17 ; 0xf5c64
mov si, strict word 0005eh ; be 5e 00 ; 0xf5c67 disk.c:59
mov word [bp-004h], dx ; 89 56 fc ; 0xf5c6a
mov bx, 0008eh ; bb 8e 00 ; 0xf5c6d disk.c:53
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf5c70
mov dx, word [bp+00eh] ; 8b 56 0e ; 0xf5c74 disk.c:299
xor dh, dh ; 30 f6 ; 0xf5c77
cmp dx, 00080h ; 81 fa 80 00 ; 0xf5c79
jc short 05c85h ; 72 06 ; 0xf5c7d
cmp dx, 00094h ; 81 fa 94 00 ; 0xf5c7f
jc short 05ca3h ; 72 1e ; 0xf5c83
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf5c85 disk.c:300
xor ah, ah ; 30 e4 ; 0xf5c88
push ax ; 50 ; 0xf5c8a
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5c8b
shr ax, 008h ; c1 e8 08 ; 0xf5c8e
push ax ; 50 ; 0xf5c91
push 0070eh ; 68 0e 07 ; 0xf5c92
push 0071dh ; 68 1d 07 ; 0xf5c95
push strict byte 00004h ; 6a 04 ; 0xf5c98
call 01a68h ; e8 cb bd ; 0xf5c9a
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf5c9d
jmp near 0605eh ; e9 bb 03 ; 0xf5ca0 disk.c:301
mov dx, word [bp+00eh] ; 8b 56 0e ; 0xf5ca3 disk.c:305
xor dh, dh ; 30 f6 ; 0xf5ca6
mov es, [bp-004h] ; 8e 46 fc ; 0xf5ca8
mov bx, si ; 89 f3 ; 0xf5cab
add bx, dx ; 01 d3 ; 0xf5cad
mov bl, byte [es:bx+001cfh] ; 26 8a 9f cf 01 ; 0xf5caf
mov byte [bp-002h], bl ; 88 5e fe ; 0xf5cb4
cmp bl, 014h ; 80 fb 14 ; 0xf5cb7 disk.c:308
jc short 05ccch ; 72 10 ; 0xf5cba
push dx ; 52 ; 0xf5cbc disk.c:309
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5cbd
shr ax, 008h ; c1 e8 08 ; 0xf5cc0
push ax ; 50 ; 0xf5cc3
push 0070eh ; 68 0e 07 ; 0xf5cc4
push 00748h ; 68 48 07 ; 0xf5cc7
jmp short 05c98h ; eb cc ; 0xf5cca
mov bx, word [bp+016h] ; 8b 5e 16 ; 0xf5ccc disk.c:313
shr bx, 008h ; c1 eb 08 ; 0xf5ccf
cmp bx, strict byte 00018h ; 83 fb 18 ; 0xf5cd2
jnbe near 06043h ; 0f 87 6a 03 ; 0xf5cd5
add bx, bx ; 01 db ; 0xf5cd9
mov dx, word [bp+016h] ; 8b 56 16 ; 0xf5cdb
xor dh, dh ; 30 f6 ; 0xf5cde
mov word [bp-010h], dx ; 89 56 f0 ; 0xf5ce0
jmp word [cs:bx+05c20h] ; 2e ff a7 20 5c ; 0xf5ce3
cmp byte [bp-002h], 008h ; 80 7e fe 08 ; 0xf5ce8 disk.c:318
jnc near 05cf7h ; 0f 83 07 00 ; 0xf5cec
movzx ax, byte [bp-002h] ; 0f b6 46 fe ; 0xf5cf0 disk.c:320
call 01e71h ; e8 7a c1 ; 0xf5cf4
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf5cf7 disk.c:321
mov bx, strict word 00074h ; bb 74 00 ; 0xf5cfb
mov ax, strict word 00040h ; b8 40 00 ; 0xf5cfe
mov es, ax ; 8e c0 ; 0xf5d01
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf5d03
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf5d07
mov sp, bp ; 89 ec ; 0xf5d0b
pop bp ; 5d ; 0xf5d0d
retn ; c3 ; 0xf5d0e
mov bx, strict word 00074h ; bb 74 00 ; 0xf5d0f disk.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf5d12
mov es, ax ; 8e c0 ; 0xf5d15
mov al, byte [es:bx] ; 26 8a 07 ; 0xf5d17
movzx dx, al ; 0f b6 d0 ; 0xf5d1a disk.c:326
sal dx, 008h ; c1 e2 08 ; 0xf5d1d
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xf5d20
or bx, dx ; 09 d3 ; 0xf5d23
mov word [bp+016h], bx ; 89 5e 16 ; 0xf5d25
mov bx, strict word 00074h ; bb 74 00 ; 0xf5d28 disk.c:53
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf5d2b
test al, al ; 84 c0 ; 0xf5d2f disk.c:329
je short 05cfbh ; 74 c8 ; 0xf5d31
jmp near 0607ah ; e9 44 03 ; 0xf5d33
mov dx, word [bp+016h] ; 8b 56 16 ; 0xf5d36 disk.c:337
xor dh, dh ; 30 f6 ; 0xf5d39
mov word [bp-00ch], dx ; 89 56 f4 ; 0xf5d3b
mov di, word [bp+014h] ; 8b 7e 14 ; 0xf5d3e disk.c:338
shr di, 008h ; c1 ef 08 ; 0xf5d41
mov dx, word [bp+014h] ; 8b 56 14 ; 0xf5d44 disk.c:339
xor dh, dh ; 30 f6 ; 0xf5d47
sal dx, 002h ; c1 e2 02 ; 0xf5d49
xor dl, dl ; 30 d2 ; 0xf5d4c
and dh, 003h ; 80 e6 03 ; 0xf5d4e
or di, dx ; 09 d7 ; 0xf5d51
mov dx, word [bp+014h] ; 8b 56 14 ; 0xf5d53 disk.c:340
and dx, strict byte 0003fh ; 83 e2 3f ; 0xf5d56
mov word [bp-006h], dx ; 89 56 fa ; 0xf5d59
mov dx, word [bp+012h] ; 8b 56 12 ; 0xf5d5c disk.c:341
shr dx, 008h ; c1 ea 08 ; 0xf5d5f
mov word [bp-008h], dx ; 89 56 f8 ; 0xf5d62
cmp word [bp-00ch], 00080h ; 81 7e f4 80 00 ; 0xf5d65 disk.c:344
jnbe short 05d72h ; 77 06 ; 0xf5d6a
cmp word [bp-00ch], strict byte 00000h ; 83 7e f4 00 ; 0xf5d6c
jne short 05d95h ; 75 23 ; 0xf5d70
mov bx, 00e16h ; bb 16 0e ; 0xf5d72 disk.c:345
mov cx, ds ; 8c d9 ; 0xf5d75
mov ax, strict word 00004h ; b8 04 00 ; 0xf5d77
call 01a27h ; e8 aa bc ; 0xf5d7a
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5d7d
shr ax, 008h ; c1 e8 08 ; 0xf5d80
push ax ; 50 ; 0xf5d83
push 0070eh ; 68 0e 07 ; 0xf5d84
push 0077ah ; 68 7a 07 ; 0xf5d87
push strict byte 00004h ; 6a 04 ; 0xf5d8a
call 01a68h ; e8 d9 bc ; 0xf5d8c
add sp, strict byte 00008h ; 83 c4 08 ; 0xf5d8f
jmp near 0605eh ; e9 c9 02 ; 0xf5d92 disk.c:346
movzx bx, byte [bp-002h] ; 0f b6 5e fe ; 0xf5d95 disk.c:350
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf5d99
mov es, [bp-004h] ; 8e 46 fc ; 0xf5d9c
add bx, si ; 01 f3 ; 0xf5d9f
mov dx, word [es:bx+028h] ; 26 8b 57 28 ; 0xf5da1
mov word [bp-012h], dx ; 89 56 ee ; 0xf5da5
mov cx, word [es:bx+026h] ; 26 8b 4f 26 ; 0xf5da8 disk.c:351
mov dx, word [es:bx+02ah] ; 26 8b 57 2a ; 0xf5dac disk.c:352
mov word [bp-00ah], dx ; 89 56 f6 ; 0xf5db0
cmp di, word [bp-012h] ; 3b 7e ee ; 0xf5db3 disk.c:355
jnc short 05dc5h ; 73 0d ; 0xf5db6
cmp cx, word [bp-008h] ; 3b 4e f8 ; 0xf5db8
jbe short 05dc5h ; 76 08 ; 0xf5dbb
mov dx, word [bp-006h] ; 8b 56 fa ; 0xf5dbd
cmp dx, word [bp-00ah] ; 3b 56 f6 ; 0xf5dc0
jbe short 05df3h ; 76 2e ; 0xf5dc3
mov bx, 00e16h ; bb 16 0e ; 0xf5dc5 disk.c:356
mov cx, ds ; 8c d9 ; 0xf5dc8
mov ax, strict word 00004h ; b8 04 00 ; 0xf5dca
call 01a27h ; e8 57 bc ; 0xf5dcd
push dword [bp-008h] ; 66 ff 76 f8 ; 0xf5dd0
push di ; 57 ; 0xf5dd4
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf5dd5
xor ah, ah ; 30 e4 ; 0xf5dd8
push ax ; 50 ; 0xf5dda
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5ddb
shr ax, 008h ; c1 e8 08 ; 0xf5dde
push ax ; 50 ; 0xf5de1
push 0070eh ; 68 0e 07 ; 0xf5de2
push 007a2h ; 68 a2 07 ; 0xf5de5
push strict byte 00004h ; 6a 04 ; 0xf5de8
call 01a68h ; e8 7b bc ; 0xf5dea
add sp, strict byte 00010h ; 83 c4 10 ; 0xf5ded
jmp near 0605eh ; e9 6b 02 ; 0xf5df0 disk.c:357
mov dx, word [bp+016h] ; 8b 56 16 ; 0xf5df3 disk.c:361
shr dx, 008h ; c1 ea 08 ; 0xf5df6
cmp dx, strict byte 00004h ; 83 fa 04 ; 0xf5df9
jne short 05e01h ; 75 03 ; 0xf5dfc
jmp near 05cf7h ; e9 f6 fe ; 0xf5dfe disk.c:362
movzx dx, byte [bp-002h] ; 0f b6 56 fe ; 0xf5e01 disk.c:366
imul dx, dx, strict byte 0001ch ; 6b d2 1c ; 0xf5e05
mov es, [bp-004h] ; 8e 46 fc ; 0xf5e08
mov bx, si ; 89 f3 ; 0xf5e0b
add bx, dx ; 01 d3 ; 0xf5e0d
cmp cx, word [es:bx+02ch] ; 26 3b 4f 2c ; 0xf5e0f
jne short 05e24h ; 75 0f ; 0xf5e13
mov dx, word [es:bx+030h] ; 26 8b 57 30 ; 0xf5e15
cmp dx, word [bp-00ah] ; 3b 56 f6 ; 0xf5e19
jne short 05e24h ; 75 06 ; 0xf5e1c
cmp byte [bp-002h], 008h ; 80 7e fe 08 ; 0xf5e1e
jc short 05e55h ; 72 31 ; 0xf5e22
mov ax, di ; 89 f8 ; 0xf5e24 disk.c:367
xor dx, dx ; 31 d2 ; 0xf5e26
mov bx, cx ; 89 cb ; 0xf5e28
xor cx, cx ; 31 c9 ; 0xf5e2a
call 0ace0h ; e8 b1 4e ; 0xf5e2c
xor bx, bx ; 31 db ; 0xf5e2f
add ax, word [bp-008h] ; 03 46 f8 ; 0xf5e31
adc dx, bx ; 11 da ; 0xf5e34
mov bx, word [bp-00ah] ; 8b 5e f6 ; 0xf5e36
xor cx, cx ; 31 c9 ; 0xf5e39
call 0ace0h ; e8 a2 4e ; 0xf5e3b
xor cx, cx ; 31 c9 ; 0xf5e3e
mov bx, word [bp-006h] ; 8b 5e fa ; 0xf5e40
add bx, ax ; 01 c3 ; 0xf5e43
mov ax, dx ; 89 d0 ; 0xf5e45
adc ax, cx ; 11 c8 ; 0xf5e47
add bx, strict byte 0ffffh ; 83 c3 ff ; 0xf5e49
mov word [bp-00eh], bx ; 89 5e f2 ; 0xf5e4c
adc ax, strict word 0ffffh ; 15 ff ff ; 0xf5e4f
mov word [bp-006h], cx ; 89 4e fa ; 0xf5e52 disk.c:368
mov es, [bp-004h] ; 8e 46 fc ; 0xf5e55 disk.c:378
db 066h, 026h, 0c7h, 044h, 018h, 000h, 000h, 000h, 000h
; mov dword [es:si+018h], strict dword 000000000h ; 66 26 c7 44 18 00 00 00 00; 0xf5e58
mov word [es:si+01ch], strict word 00000h ; 26 c7 44 1c 00 00 ; 0xf5e61 disk.c:379
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf5e67 disk.c:382
mov word [es:si], dx ; 26 89 14 ; 0xf5e6a
mov word [es:si+002h], ax ; 26 89 44 02 ; 0xf5e6d
db 066h, 026h, 0c7h, 044h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000000h ; 66 26 c7 44 04 00 00 00 00; 0xf5e71
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf5e7a disk.c:383
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf5e7d
mov word [es:si+008h], ax ; 26 89 44 08 ; 0xf5e80
mov word [es:si+00ah], dx ; 26 89 54 0a ; 0xf5e84
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf5e88 disk.c:384
mov word [es:si+00eh], ax ; 26 89 44 0e ; 0xf5e8b
mov word [es:si+010h], 00200h ; 26 c7 44 10 00 02 ; 0xf5e8f disk.c:385
mov word [es:si+012h], di ; 26 89 7c 12 ; 0xf5e95 disk.c:386
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf5e99 disk.c:387
mov word [es:si+014h], ax ; 26 89 44 14 ; 0xf5e9c
mov ax, word [bp-006h] ; 8b 46 fa ; 0xf5ea0 disk.c:388
mov word [es:si+016h], ax ; 26 89 44 16 ; 0xf5ea3
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf5ea7 disk.c:389
mov byte [es:si+00ch], al ; 26 88 44 0c ; 0xf5eaa
movzx ax, byte [bp-002h] ; 0f b6 46 fe ; 0xf5eae disk.c:391
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf5eb2
mov bx, si ; 89 f3 ; 0xf5eb5
add bx, ax ; 01 c3 ; 0xf5eb7
movzx ax, byte [es:bx+01eh] ; 26 0f b6 47 1e ; 0xf5eb9
mov bx, ax ; 89 c3 ; 0xf5ebe
sal bx, 002h ; c1 e3 02 ; 0xf5ec0
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5ec3
shr ax, 008h ; c1 e8 08 ; 0xf5ec6
add ax, ax ; 01 c0 ; 0xf5ec9
add bx, ax ; 01 c3 ; 0xf5ecb
push ES ; 06 ; 0xf5ecd
push si ; 56 ; 0xf5ece
call word [word bx+0007eh] ; ff 97 7e 00 ; 0xf5ecf
mov dx, ax ; 89 c2 ; 0xf5ed3
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5ed5 disk.c:394
xor al, al ; 30 c0 ; 0xf5ed8
mov es, [bp-004h] ; 8e 46 fc ; 0xf5eda
mov bx, word [es:si+018h] ; 26 8b 5c 18 ; 0xf5edd
or bx, ax ; 09 c3 ; 0xf5ee1
mov word [bp+016h], bx ; 89 5e 16 ; 0xf5ee3
test dl, dl ; 84 d2 ; 0xf5ee6 disk.c:396
je near 05cf7h ; 0f 84 0b fe ; 0xf5ee8
mov bx, 00e16h ; bb 16 0e ; 0xf5eec disk.c:397
mov cx, ds ; 8c d9 ; 0xf5eef
mov ax, strict word 00004h ; b8 04 00 ; 0xf5ef1
call 01a27h ; e8 30 bb ; 0xf5ef4
movzx ax, dl ; 0f b6 c2 ; 0xf5ef7
push ax ; 50 ; 0xf5efa
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5efb
shr ax, 008h ; c1 e8 08 ; 0xf5efe
push ax ; 50 ; 0xf5f01
push 0070eh ; 68 0e 07 ; 0xf5f02
push 007e9h ; 68 e9 07 ; 0xf5f05
push strict byte 00004h ; 6a 04 ; 0xf5f08
call 01a68h ; e8 5b bb ; 0xf5f0a
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf5f0d
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5f10 disk.c:398
xor ah, ah ; 30 e4 ; 0xf5f13
or ah, 00ch ; 80 cc 0c ; 0xf5f15
jmp near 06066h ; e9 4b 01 ; 0xf5f18 disk.c:399
mov bx, 00e16h ; bb 16 0e ; 0xf5f1b disk.c:406
mov cx, ds ; 8c d9 ; 0xf5f1e
mov ax, strict word 00004h ; b8 04 00 ; 0xf5f20
call 01a27h ; e8 01 bb ; 0xf5f23
push 0080ah ; 68 0a 08 ; 0xf5f26
push strict byte 00004h ; 6a 04 ; 0xf5f29
call 01a68h ; e8 3a bb ; 0xf5f2b
add sp, strict byte 00004h ; 83 c4 04 ; 0xf5f2e
jmp near 05cf7h ; e9 c3 fd ; 0xf5f31 disk.c:407
movzx di, byte [bp-002h] ; 0f b6 7e fe ; 0xf5f34 disk.c:413
imul di, di, strict byte 0001ch ; 6b ff 1c ; 0xf5f38
mov es, [bp-004h] ; 8e 46 fc ; 0xf5f3b
add di, si ; 01 f7 ; 0xf5f3e
mov bx, word [es:di+028h] ; 26 8b 5d 28 ; 0xf5f40
mov cx, word [es:di+026h] ; 26 8b 4d 26 ; 0xf5f44 disk.c:414
mov ax, word [es:di+02ah] ; 26 8b 45 2a ; 0xf5f48 disk.c:415
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf5f4c
movzx ax, byte [es:si+0024eh] ; 26 0f b6 84 4e 02 ; 0xf5f4f disk.c:417
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf5f55
mov byte [bp+016h], dh ; 88 76 16 ; 0xf5f58 disk.c:423
mov dx, word [bp+014h] ; 8b 56 14 ; 0xf5f5b disk.c:424
xor dh, dh ; 30 f6 ; 0xf5f5e
dec bx ; 4b ; 0xf5f60 disk.c:422
mov ax, bx ; 89 d8 ; 0xf5f61
xor ah, bh ; 30 fc ; 0xf5f63
sal ax, 008h ; c1 e0 08 ; 0xf5f65
or dx, ax ; 09 c2 ; 0xf5f68
mov word [bp+014h], dx ; 89 56 14 ; 0xf5f6a
shr bx, 002h ; c1 eb 02 ; 0xf5f6d disk.c:425
and bl, 0c0h ; 80 e3 c0 ; 0xf5f70
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf5f73
mov dl, al ; 88 c2 ; 0xf5f76
and dl, 03fh ; 80 e2 3f ; 0xf5f78
or dl, bl ; 08 da ; 0xf5f7b
mov word [bp+014h], dx ; 89 56 14 ; 0xf5f7d
mov dx, word [bp+012h] ; 8b 56 12 ; 0xf5f80 disk.c:426
xor dh, dh ; 30 f6 ; 0xf5f83
mov ax, cx ; 89 c8 ; 0xf5f85
sal ax, 008h ; c1 e0 08 ; 0xf5f87
sub ax, 00100h ; 2d 00 01 ; 0xf5f8a
or dx, ax ; 09 c2 ; 0xf5f8d
mov word [bp+012h], dx ; 89 56 12 ; 0xf5f8f
mov ax, dx ; 89 d0 ; 0xf5f92 disk.c:427
xor al, dl ; 30 d0 ; 0xf5f94
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf5f96
or dx, ax ; 09 c2 ; 0xf5f99
mov word [bp+012h], dx ; 89 56 12 ; 0xf5f9b
jmp near 05cf7h ; e9 56 fd ; 0xf5f9e disk.c:432
cmp byte [bp-002h], 008h ; 80 7e fe 08 ; 0xf5fa1 disk.c:440
jnc near 05cf7h ; 0f 83 4e fd ; 0xf5fa5
movzx ax, byte [bp-002h] ; 0f b6 46 fe ; 0xf5fa9 disk.c:443
cwd ; 99 ; 0xf5fad
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf5fae
sar ax, 1 ; d1 f8 ; 0xf5fb0
imul ax, ax, strict byte 00006h ; 6b c0 06 ; 0xf5fb2
mov es, [bp-004h] ; 8e 46 fc ; 0xf5fb5
add si, ax ; 01 c6 ; 0xf5fb8
mov dx, word [es:si+0027ah] ; 26 8b 94 7a 02 ; 0xf5fba
add dx, strict byte 00007h ; 83 c2 07 ; 0xf5fbf
in AL, DX ; ec ; 0xf5fc2
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf5fc3
and AL, strict byte 0c0h ; 24 c0 ; 0xf5fc5 disk.c:444
cmp AL, strict byte 040h ; 3c 40 ; 0xf5fc7
jne short 05fceh ; 75 03 ; 0xf5fc9
jmp near 05cf7h ; e9 29 fd ; 0xf5fcb disk.c:445
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf5fce disk.c:447
xor ah, ah ; 30 e4 ; 0xf5fd1
or ah, 0aah ; 80 cc aa ; 0xf5fd3
jmp near 06066h ; e9 8d 00 ; 0xf5fd6
movzx ax, byte [bp-002h] ; 0f b6 46 fe ; 0xf5fd9 disk.c:459
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf5fdd
mov es, [bp-004h] ; 8e 46 fc ; 0xf5fe0
add si, ax ; 01 c6 ; 0xf5fe3
mov di, word [es:si+02eh] ; 26 8b 7c 2e ; 0xf5fe5
mov ax, word [es:si+02ch] ; 26 8b 44 2c ; 0xf5fe9 disk.c:460
mov word [bp-008h], ax ; 89 46 f8 ; 0xf5fed
mov ax, word [es:si+030h] ; 26 8b 44 30 ; 0xf5ff0 disk.c:461
mov word [bp-006h], ax ; 89 46 fa ; 0xf5ff4
mov ax, di ; 89 f8 ; 0xf5ff7 disk.c:464
xor dl, dl ; 30 d2 ; 0xf5ff9
mov bx, word [bp-008h] ; 8b 5e f8 ; 0xf5ffb
xor cx, cx ; 31 c9 ; 0xf5ffe
call 0ace0h ; e8 dd 4c ; 0xf6000
mov bx, word [bp-006h] ; 8b 5e fa ; 0xf6003
xor cx, cx ; 31 c9 ; 0xf6006
call 0ace0h ; e8 d5 4c ; 0xf6008
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf600b
mov word [bp+014h], dx ; 89 56 14 ; 0xf600e disk.c:465
mov word [bp+012h], ax ; 89 46 12 ; 0xf6011 disk.c:466
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf6014 disk.c:468
or ah, 003h ; 80 cc 03 ; 0xf6017
mov word [bp+016h], ax ; 89 46 16 ; 0xf601a
jmp near 05cfbh ; e9 db fc ; 0xf601d disk.c:469
mov bx, 00e16h ; bb 16 0e ; 0xf6020 disk.c:477
mov cx, ds ; 8c d9 ; 0xf6023
mov ax, strict word 00004h ; b8 04 00 ; 0xf6025
call 01a27h ; e8 fc b9 ; 0xf6028
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf602b
shr ax, 008h ; c1 e8 08 ; 0xf602e
push ax ; 50 ; 0xf6031
push 0070eh ; 68 0e 07 ; 0xf6032
push 00824h ; 68 24 08 ; 0xf6035
push strict byte 00004h ; 6a 04 ; 0xf6038
call 01a68h ; e8 2b ba ; 0xf603a
add sp, strict byte 00008h ; 83 c4 08 ; 0xf603d
jmp near 05cf7h ; e9 b4 fc ; 0xf6040 disk.c:478
mov bx, 00e16h ; bb 16 0e ; 0xf6043 disk.c:485
mov cx, ds ; 8c d9 ; 0xf6046
mov ax, strict word 00004h ; b8 04 00 ; 0xf6048
call 01a27h ; e8 d9 b9 ; 0xf604b
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf604e
shr ax, 008h ; c1 e8 08 ; 0xf6051
push ax ; 50 ; 0xf6054
push 0070eh ; 68 0e 07 ; 0xf6055
push 00857h ; 68 57 08 ; 0xf6058
jmp near 05d8ah ; e9 2c fd ; 0xf605b
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf605e disk.c:491
xor ah, ah ; 30 e4 ; 0xf6061
or ah, 001h ; 80 cc 01 ; 0xf6063
mov word [bp+016h], ax ; 89 46 16 ; 0xf6066
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf6069 disk.c:493
shr ax, 008h ; c1 e8 08 ; 0xf606c
mov bx, strict word 00074h ; bb 74 00 ; 0xf606f disk.c:53
mov dx, strict word 00040h ; ba 40 00 ; 0xf6072
mov es, dx ; 8e c2 ; 0xf6075
mov byte [es:bx], al ; 26 88 07 ; 0xf6077
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf607a disk.c:495
jmp near 05d0bh ; e9 8a fc ; 0xf607e disk.c:496
; disGetNextSymbol 0xf6081 LB 0x4d9b -> off=0x20 cb=000000000000029e uValue=00000000000f4aa1 'int13_harddisk_ext'
db 031h, 061h, 049h, 061h, 049h, 061h, 049h, 061h, 027h, 063h, 0b3h, 062h, 049h, 061h, 0bbh, 062h
db 027h, 063h, 00ch, 063h, 00ch, 063h, 00ch, 063h, 00ch, 063h, 0f4h, 062h, 00ch, 063h, 00ch, 063h
int13_harddisk_ext: ; 0xf60a1 LB 0x29e
push bp ; 55 ; 0xf60a1 disk.c:506
mov bp, sp ; 89 e5 ; 0xf60a2
sub sp, strict byte 00016h ; 83 ec 16 ; 0xf60a4
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf60a7 disk.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf60aa
mov es, ax ; 8e c0 ; 0xf60ad
mov ax, word [es:bx] ; 26 8b 07 ; 0xf60af
mov di, strict word 0005eh ; bf 5e 00 ; 0xf60b2 disk.c:59
mov word [bp-006h], ax ; 89 46 fa ; 0xf60b5
mov bx, 0008eh ; bb 8e 00 ; 0xf60b8 disk.c:53
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf60bb
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf60bf disk.c:530
xor ah, ah ; 30 e4 ; 0xf60c2
cmp ax, 00080h ; 3d 80 00 ; 0xf60c4
jc short 060ceh ; 72 05 ; 0xf60c7
cmp ax, 00094h ; 3d 94 00 ; 0xf60c9
jc short 060ech ; 72 1e ; 0xf60cc
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf60ce disk.c:531
xor ah, ah ; 30 e4 ; 0xf60d1
push ax ; 50 ; 0xf60d3
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf60d4
shr ax, 008h ; c1 e8 08 ; 0xf60d7
push ax ; 50 ; 0xf60da
push 00885h ; 68 85 08 ; 0xf60db
push 0071dh ; 68 1d 07 ; 0xf60de
push strict byte 00004h ; 6a 04 ; 0xf60e1
call 01a68h ; e8 82 b9 ; 0xf60e3
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf60e6
jmp near 062d2h ; e9 e6 01 ; 0xf60e9 disk.c:532
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf60ec disk.c:536
xor ah, ah ; 30 e4 ; 0xf60ef
mov es, [bp-006h] ; 8e 46 fa ; 0xf60f1
mov bx, di ; 89 fb ; 0xf60f4
add bx, ax ; 01 c3 ; 0xf60f6
mov dl, byte [es:bx+001cfh] ; 26 8a 97 cf 01 ; 0xf60f8
mov byte [bp-002h], dl ; 88 56 fe ; 0xf60fd
cmp dl, 014h ; 80 fa 14 ; 0xf6100 disk.c:539
jc short 06115h ; 72 10 ; 0xf6103
push ax ; 50 ; 0xf6105 disk.c:540
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf6106
shr ax, 008h ; c1 e8 08 ; 0xf6109
push ax ; 50 ; 0xf610c
push 00885h ; 68 85 08 ; 0xf610d
push 00748h ; 68 48 07 ; 0xf6110
jmp short 060e1h ; eb cc ; 0xf6113
mov bx, word [bp+016h] ; 8b 5e 16 ; 0xf6115 disk.c:544
shr bx, 008h ; c1 eb 08 ; 0xf6118
sub bx, strict byte 00041h ; 83 eb 41 ; 0xf611b
cmp bx, strict byte 0000fh ; 83 fb 0f ; 0xf611e
jnbe near 0630ch ; 0f 87 e7 01 ; 0xf6121
add bx, bx ; 01 db ; 0xf6125
mov cx, word [bp+016h] ; 8b 4e 16 ; 0xf6127
xor ch, ch ; 30 ed ; 0xf612a
jmp word [cs:bx+06081h] ; 2e ff a7 81 60 ; 0xf612c
mov word [bp+010h], 0aa55h ; c7 46 10 55 aa ; 0xf6131 disk.c:546
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf6136 disk.c:547
xor ah, ah ; 30 e4 ; 0xf6139
or ah, 030h ; 80 cc 30 ; 0xf613b
mov word [bp+016h], ax ; 89 46 16 ; 0xf613e
mov word [bp+014h], strict word 00007h ; c7 46 14 07 00 ; 0xf6141 disk.c:548
jmp near 0632bh ; e9 e2 01 ; 0xf6146 disk.c:549
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6149 disk.c:558
mov word [bp-016h], bx ; 89 5e ea ; 0xf614c
mov es, [bp+004h] ; 8e 46 04 ; 0xf614f
mov word [bp-012h], bx ; 89 5e ee ; 0xf6152
mov [bp-010h], es ; 8c 46 f0 ; 0xf6155
mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xf6158 disk.c:560
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf615c
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf615f disk.c:561
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf6163
mov ax, word [es:bx+004h] ; 26 8b 47 04 ; 0xf6166 disk.c:562
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf616a
mov dx, word [es:bx+00ch] ; 26 8b 57 0c ; 0xf616d disk.c:565
mov cx, word [es:bx+00eh] ; 26 8b 4f 0e ; 0xf6171
xor ax, ax ; 31 c0 ; 0xf6175 disk.c:566
xor bx, bx ; 31 db ; 0xf6177
mov si, strict word 00020h ; be 20 00 ; 0xf6179
call 0ad70h ; e8 f1 4b ; 0xf617c
mov si, ax ; 89 c6 ; 0xf617f
mov word [bp-014h], bx ; 89 5e ec ; 0xf6181
mov bx, word [bp-016h] ; 8b 5e ea ; 0xf6184 disk.c:567
mov ax, word [es:bx+008h] ; 26 8b 47 08 ; 0xf6187
mov word [bp-016h], ax ; 89 46 ea ; 0xf618b
mov ax, word [es:bx+00ah] ; 26 8b 47 0a ; 0xf618e
or dx, word [bp-016h] ; 0b 56 ea ; 0xf6192
or cx, ax ; 09 c1 ; 0xf6195
movzx ax, byte [bp-002h] ; 0f b6 46 fe ; 0xf6197 disk.c:572
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf619b
mov es, [bp-006h] ; 8e 46 fa ; 0xf619e
mov bx, di ; 89 fb ; 0xf61a1
add bx, ax ; 01 c3 ; 0xf61a3
mov al, byte [es:bx+01eh] ; 26 8a 47 1e ; 0xf61a5
mov byte [bp-004h], al ; 88 46 fc ; 0xf61a9
mov ax, word [es:bx+038h] ; 26 8b 47 38 ; 0xf61ac disk.c:573
cmp si, ax ; 39 c6 ; 0xf61b0
jnbe short 061d6h ; 77 22 ; 0xf61b2
jne short 061f9h ; 75 43 ; 0xf61b4
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf61b6
cmp ax, word [es:bx+036h] ; 26 3b 47 36 ; 0xf61b9
jnbe short 061d6h ; 77 17 ; 0xf61bd
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf61bf
cmp ax, word [es:bx+036h] ; 26 3b 47 36 ; 0xf61c2
jne short 061f9h ; 75 31 ; 0xf61c6
cmp cx, word [es:bx+034h] ; 26 3b 4f 34 ; 0xf61c8
jnbe short 061d6h ; 77 08 ; 0xf61cc
jne short 061f9h ; 75 29 ; 0xf61ce
cmp dx, word [es:bx+032h] ; 26 3b 57 32 ; 0xf61d0
jc short 061f9h ; 72 23 ; 0xf61d4
mov bx, 00e16h ; bb 16 0e ; 0xf61d6 disk.c:574
mov cx, ds ; 8c d9 ; 0xf61d9
mov ax, strict word 00004h ; b8 04 00 ; 0xf61db
call 01a27h ; e8 46 b8 ; 0xf61de
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf61e1
shr ax, 008h ; c1 e8 08 ; 0xf61e4
push ax ; 50 ; 0xf61e7
push 00885h ; 68 85 08 ; 0xf61e8
push 00898h ; 68 98 08 ; 0xf61eb
push strict byte 00004h ; 6a 04 ; 0xf61ee
call 01a68h ; e8 75 b8 ; 0xf61f0
add sp, strict byte 00008h ; 83 c4 08 ; 0xf61f3
jmp near 062d2h ; e9 d9 00 ; 0xf61f6 disk.c:575
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf61f9 disk.c:579
shr ax, 008h ; c1 e8 08 ; 0xf61fc
mov word [bp-008h], ax ; 89 46 f8 ; 0xf61ff
cmp ax, strict word 00044h ; 3d 44 00 ; 0xf6202
je near 06327h ; 0f 84 1e 01 ; 0xf6205
cmp ax, strict word 00047h ; 3d 47 00 ; 0xf6209
je near 06327h ; 0f 84 17 01 ; 0xf620c
mov es, [bp-006h] ; 8e 46 fa ; 0xf6210 disk.c:583
db 066h, 026h, 0c7h, 045h, 018h, 000h, 000h, 000h, 000h
; mov dword [es:di+018h], strict dword 000000000h ; 66 26 c7 45 18 00 00 00 00; 0xf6213
mov word [es:di+01ch], strict word 00000h ; 26 c7 45 1c 00 00 ; 0xf621c disk.c:584
mov word [es:di+006h], si ; 26 89 75 06 ; 0xf6222 disk.c:587
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf6226
mov word [es:di+004h], ax ; 26 89 45 04 ; 0xf6229
mov word [es:di+002h], cx ; 26 89 4d 02 ; 0xf622d
mov word [es:di], dx ; 26 89 15 ; 0xf6231
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf6234 disk.c:588
mov word [es:di+008h], ax ; 26 89 45 08 ; 0xf6237
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf623b
mov word [es:di+00ah], ax ; 26 89 45 0a ; 0xf623e
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf6242 disk.c:589
mov word [es:di+00eh], ax ; 26 89 45 0e ; 0xf6245
mov word [es:di+010h], 00200h ; 26 c7 45 10 00 02 ; 0xf6249 disk.c:590
mov word [es:di+016h], strict word 00000h ; 26 c7 45 16 00 00 ; 0xf624f disk.c:591
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf6255 disk.c:592
mov byte [es:di+00ch], al ; 26 88 45 0c ; 0xf6258
mov bx, word [bp-008h] ; 8b 5e f8 ; 0xf625c disk.c:595
add bx, bx ; 01 db ; 0xf625f
movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xf6261
sal ax, 002h ; c1 e0 02 ; 0xf6265
add bx, ax ; 01 c3 ; 0xf6268
push ES ; 06 ; 0xf626a
push di ; 57 ; 0xf626b
call word [word bx-00002h] ; ff 97 fe ff ; 0xf626c
mov dx, ax ; 89 c2 ; 0xf6270
mov es, [bp-006h] ; 8e 46 fa ; 0xf6272 disk.c:596
mov ax, word [es:di+018h] ; 26 8b 45 18 ; 0xf6275
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf6279
les bx, [bp-012h] ; c4 5e ee ; 0xf627c disk.c:597
mov word [es:bx+002h], ax ; 26 89 47 02 ; 0xf627f
test dl, dl ; 84 d2 ; 0xf6283 disk.c:599
je near 06327h ; 0f 84 9e 00 ; 0xf6285
mov bx, 00e16h ; bb 16 0e ; 0xf6289 disk.c:600
mov cx, ds ; 8c d9 ; 0xf628c
mov ax, strict word 00004h ; b8 04 00 ; 0xf628e
call 01a27h ; e8 93 b7 ; 0xf6291
movzx ax, dl ; 0f b6 c2 ; 0xf6294
push ax ; 50 ; 0xf6297
push word [bp-008h] ; ff 76 f8 ; 0xf6298
push 00885h ; 68 85 08 ; 0xf629b
push 007e9h ; 68 e9 07 ; 0xf629e
push strict byte 00004h ; 6a 04 ; 0xf62a1
call 01a68h ; e8 c2 b7 ; 0xf62a3
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf62a6
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf62a9 disk.c:601
xor ah, ah ; 30 e4 ; 0xf62ac
or ah, 00ch ; 80 cc 0c ; 0xf62ae
jmp short 062dah ; eb 27 ; 0xf62b1 disk.c:602
or ch, 0b2h ; 80 cd b2 ; 0xf62b3 disk.c:614
mov word [bp+016h], cx ; 89 4e 16 ; 0xf62b6
jmp short 062ddh ; eb 22 ; 0xf62b9 disk.c:615
movzx ax, byte [bp-002h] ; 0f b6 46 fe ; 0xf62bb disk.c:619
push ax ; 50 ; 0xf62bf
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf62c0
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf62c3
mov bx, di ; 89 fb ; 0xf62c6
mov cx, word [bp-006h] ; 8b 4e fa ; 0xf62c8
call 05933h ; e8 65 f6 ; 0xf62cb
test ax, ax ; 85 c0 ; 0xf62ce
je short 06327h ; 74 55 ; 0xf62d0
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf62d2 disk.c:620
xor ah, ah ; 30 e4 ; 0xf62d5
or ah, 001h ; 80 cc 01 ; 0xf62d7
mov word [bp+016h], ax ; 89 46 16 ; 0xf62da
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf62dd
shr ax, 008h ; c1 e8 08 ; 0xf62e0
mov bx, strict word 00074h ; bb 74 00 ; 0xf62e3
mov dx, strict word 00040h ; ba 40 00 ; 0xf62e6
mov es, dx ; 8e c2 ; 0xf62e9
mov byte [es:bx], al ; 26 88 07 ; 0xf62eb
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf62ee
jmp short 0633bh ; eb 47 ; 0xf62f2
cmp cx, strict byte 00006h ; 83 f9 06 ; 0xf62f4 disk.c:627
je short 06327h ; 74 2e ; 0xf62f7
cmp cx, strict byte 00001h ; 83 f9 01 ; 0xf62f9
jc short 062d2h ; 72 d4 ; 0xf62fc
jbe short 06327h ; 76 27 ; 0xf62fe
cmp cx, strict byte 00003h ; 83 f9 03 ; 0xf6300
jc short 062d2h ; 72 cd ; 0xf6303
cmp cx, strict byte 00004h ; 83 f9 04 ; 0xf6305
jbe short 06327h ; 76 1d ; 0xf6308
jmp short 062d2h ; eb c6 ; 0xf630a disk.c:635
mov bx, 00e16h ; bb 16 0e ; 0xf630c disk.c:641
mov cx, ds ; 8c d9 ; 0xf630f
mov ax, strict word 00004h ; b8 04 00 ; 0xf6311
call 01a27h ; e8 10 b7 ; 0xf6314
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf6317
shr ax, 008h ; c1 e8 08 ; 0xf631a
push ax ; 50 ; 0xf631d
push 00885h ; 68 85 08 ; 0xf631e
push 00857h ; 68 57 08 ; 0xf6321
jmp near 061eeh ; e9 c7 fe ; 0xf6324
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf6327 disk.c:654
mov bx, strict word 00074h ; bb 74 00 ; 0xf632b disk.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf632e
mov es, ax ; 8e c0 ; 0xf6331
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf6333
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf6337 disk.c:657
mov sp, bp ; 89 ec ; 0xf633b disk.c:659
pop bp ; 5d ; 0xf633d
retn ; c3 ; 0xf633e
; disGetNextSymbol 0xf633f LB 0x4add -> off=0x0 cb=0000000000000151 uValue=00000000000f4d3f 'int14_function'
int14_function: ; 0xf633f LB 0x151
push bp ; 55 ; 0xf633f serial.c:70
mov bp, sp ; 89 e5 ; 0xf6340
push si ; 56 ; 0xf6342
push di ; 57 ; 0xf6343
sti ; fb ; 0xf6344 serial.c:75
mov si, word [bp+00eh] ; 8b 76 0e ; 0xf6345 serial.c:77
add si, si ; 01 f6 ; 0xf6348
mov ax, strict word 00040h ; b8 40 00 ; 0xf634a serial.c:58
mov es, ax ; 8e c0 ; 0xf634d
mov si, word [es:si] ; 26 8b 34 ; 0xf634f
mov bx, si ; 89 f3 ; 0xf6352 serial.c:59
mov di, word [bp+00eh] ; 8b 7e 0e ; 0xf6354 serial.c:78
add di, strict byte 0007ch ; 83 c7 7c ; 0xf6357
mov cl, byte [es:di] ; 26 8a 0d ; 0xf635a serial.c:48
cmp word [bp+00eh], strict byte 00004h ; 83 7e 0e 04 ; 0xf635d serial.c:79
jnc near 06485h ; 0f 83 20 01 ; 0xf6361
test si, si ; 85 f6 ; 0xf6365
jbe near 06485h ; 0f 86 1a 01 ; 0xf6367
mov al, byte [bp+013h] ; 8a 46 13 ; 0xf636b serial.c:80
cmp AL, strict byte 001h ; 3c 01 ; 0xf636e
jc short 06383h ; 72 11 ; 0xf6370
jbe short 063dch ; 76 68 ; 0xf6372
cmp AL, strict byte 003h ; 3c 03 ; 0xf6374
je near 0646eh ; 0f 84 f4 00 ; 0xf6376
cmp AL, strict byte 002h ; 3c 02 ; 0xf637a
je near 06427h ; 0f 84 a7 00 ; 0xf637c
jmp near 0647fh ; e9 fc 00 ; 0xf6380
test al, al ; 84 c0 ; 0xf6383
jne near 0647fh ; 0f 85 f6 00 ; 0xf6385
lea dx, [bx+003h] ; 8d 57 03 ; 0xf6389 serial.c:82
in AL, DX ; ec ; 0xf638c
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf638d
or AL, strict byte 080h ; 0c 80 ; 0xf638f
out DX, AL ; ee ; 0xf6391
lea si, [bx+001h] ; 8d 77 01 ; 0xf6392
mov al, byte [bp+012h] ; 8a 46 12 ; 0xf6395 serial.c:83
test AL, strict byte 0e0h ; a8 e0 ; 0xf6398
jne short 063a8h ; 75 0c ; 0xf639a
mov AL, strict byte 017h ; b0 17 ; 0xf639c serial.c:84
mov dx, bx ; 89 da ; 0xf639e
out DX, AL ; ee ; 0xf63a0
mov AL, strict byte 004h ; b0 04 ; 0xf63a1 serial.c:85
mov dx, si ; 89 f2 ; 0xf63a3
out DX, AL ; ee ; 0xf63a5
jmp short 063beh ; eb 16 ; 0xf63a6 serial.c:86
and AL, strict byte 0e0h ; 24 e0 ; 0xf63a8 serial.c:87
movzx cx, al ; 0f b6 c8 ; 0xf63aa
sar cx, 005h ; c1 f9 05 ; 0xf63ad
mov ax, 00600h ; b8 00 06 ; 0xf63b0
sar ax, CL ; d3 f8 ; 0xf63b3
mov dx, bx ; 89 da ; 0xf63b5 serial.c:88
out DX, AL ; ee ; 0xf63b7
shr ax, 008h ; c1 e8 08 ; 0xf63b8 serial.c:89
mov dx, si ; 89 f2 ; 0xf63bb
out DX, AL ; ee ; 0xf63bd
mov al, byte [bp+012h] ; 8a 46 12 ; 0xf63be serial.c:91
and AL, strict byte 01fh ; 24 1f ; 0xf63c1
lea dx, [bx+003h] ; 8d 57 03 ; 0xf63c3
out DX, AL ; ee ; 0xf63c6
lea dx, [bx+005h] ; 8d 57 05 ; 0xf63c7 serial.c:92
in AL, DX ; ec ; 0xf63ca
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf63cb
mov byte [bp+013h], al ; 88 46 13 ; 0xf63cd
lea dx, [bx+006h] ; 8d 57 06 ; 0xf63d0 serial.c:93
in AL, DX ; ec ; 0xf63d3
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf63d4
mov byte [bp+012h], al ; 88 46 12 ; 0xf63d6
jmp near 06460h ; e9 84 00 ; 0xf63d9
mov si, strict word 0006ch ; be 6c 00 ; 0xf63dc serial.c:58
mov si, word [es:si] ; 26 8b 34 ; 0xf63df
lea dx, [bx+005h] ; 8d 57 05 ; 0xf63e2 serial.c:98
in AL, DX ; ec ; 0xf63e5
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf63e6
and ax, strict word 00060h ; 25 60 00 ; 0xf63e8
cmp ax, strict word 00060h ; 3d 60 00 ; 0xf63eb
je short 06409h ; 74 19 ; 0xf63ee
test cl, cl ; 84 c9 ; 0xf63f0
je short 06409h ; 74 15 ; 0xf63f2
mov di, strict word 0006ch ; bf 6c 00 ; 0xf63f4 serial.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf63f7
mov es, ax ; 8e c0 ; 0xf63fa
mov ax, word [es:di] ; 26 8b 05 ; 0xf63fc
cmp ax, si ; 39 f0 ; 0xf63ff serial.c:100
je short 063e2h ; 74 df ; 0xf6401
mov si, ax ; 89 c6 ; 0xf6403 serial.c:101
db 0feh, 0c9h
; dec cl ; fe c9 ; 0xf6405 serial.c:102
jmp short 063e2h ; eb d9 ; 0xf6407 serial.c:104
test cl, cl ; 84 c9 ; 0xf6409 serial.c:105
je short 06413h ; 74 06 ; 0xf640b
mov al, byte [bp+012h] ; 8a 46 12 ; 0xf640d
mov dx, bx ; 89 da ; 0xf6410
out DX, AL ; ee ; 0xf6412
lea dx, [bx+005h] ; 8d 57 05 ; 0xf6413 serial.c:106
in AL, DX ; ec ; 0xf6416
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf6417
mov byte [bp+013h], al ; 88 46 13 ; 0xf6419
test cl, cl ; 84 c9 ; 0xf641c serial.c:107
jne short 06460h ; 75 40 ; 0xf641e
or AL, strict byte 080h ; 0c 80 ; 0xf6420
mov byte [bp+013h], al ; 88 46 13 ; 0xf6422
jmp short 06460h ; eb 39 ; 0xf6425
mov si, strict word 0006ch ; be 6c 00 ; 0xf6427 serial.c:58
mov si, word [es:si] ; 26 8b 34 ; 0xf642a
lea dx, [bx+005h] ; 8d 57 05 ; 0xf642d serial.c:112
in AL, DX ; ec ; 0xf6430
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf6431
test AL, strict byte 001h ; a8 01 ; 0xf6433
jne short 06450h ; 75 19 ; 0xf6435
test cl, cl ; 84 c9 ; 0xf6437
je short 06450h ; 74 15 ; 0xf6439
mov di, strict word 0006ch ; bf 6c 00 ; 0xf643b serial.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf643e
mov es, ax ; 8e c0 ; 0xf6441
mov ax, word [es:di] ; 26 8b 05 ; 0xf6443
cmp ax, si ; 39 f0 ; 0xf6446 serial.c:114
je short 0642dh ; 74 e3 ; 0xf6448
mov si, ax ; 89 c6 ; 0xf644a serial.c:115
db 0feh, 0c9h
; dec cl ; fe c9 ; 0xf644c serial.c:116
jmp short 0642dh ; eb dd ; 0xf644e serial.c:118
test cl, cl ; 84 c9 ; 0xf6450 serial.c:119
je short 06466h ; 74 12 ; 0xf6452
mov byte [bp+013h], 000h ; c6 46 13 00 ; 0xf6454 serial.c:120
mov dx, bx ; 89 da ; 0xf6458 serial.c:121
in AL, DX ; ec ; 0xf645a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf645b
mov byte [bp+012h], al ; 88 46 12 ; 0xf645d
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf6460 serial.c:122
jmp short 06489h ; eb 23 ; 0xf6464
lea dx, [bx+005h] ; 8d 57 05 ; 0xf6466 serial.c:123
in AL, DX ; ec ; 0xf6469
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf646a
jmp short 06422h ; eb b4 ; 0xf646c
lea dx, [si+005h] ; 8d 54 05 ; 0xf646e serial.c:128
in AL, DX ; ec ; 0xf6471
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf6472
mov byte [bp+013h], al ; 88 46 13 ; 0xf6474
lea dx, [si+006h] ; 8d 54 06 ; 0xf6477 serial.c:129
in AL, DX ; ec ; 0xf647a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf647b
jmp short 0645dh ; eb de ; 0xf647d
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf647f serial.c:133
jmp short 06489h ; eb 04 ; 0xf6483 serial.c:135
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf6485 serial.c:136
lea sp, [bp-004h] ; 8d 66 fc ; 0xf6489 serial.c:138
pop di ; 5f ; 0xf648c
pop si ; 5e ; 0xf648d
pop bp ; 5d ; 0xf648e
retn ; c3 ; 0xf648f
; disGetNextSymbol 0xf6490 LB 0x498c -> off=0x0 cb=000000000000002c uValue=00000000000f4e90 'set_enable_a20'
set_enable_a20: ; 0xf6490 LB 0x2c
push bp ; 55 ; 0xf6490 system.c:298
mov bp, sp ; 89 e5 ; 0xf6491
push bx ; 53 ; 0xf6493
push cx ; 51 ; 0xf6494
push dx ; 52 ; 0xf6495
mov bx, ax ; 89 c3 ; 0xf6496
mov dx, 00092h ; ba 92 00 ; 0xf6498 system.c:305
in AL, DX ; ec ; 0xf649b
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf649c
mov cl, al ; 88 c1 ; 0xf649e
test bx, bx ; 85 db ; 0xf64a0 system.c:308
je short 064a9h ; 74 05 ; 0xf64a2
or AL, strict byte 002h ; 0c 02 ; 0xf64a4 system.c:309
out DX, AL ; ee ; 0xf64a6
jmp short 064ach ; eb 03 ; 0xf64a7 system.c:310
and AL, strict byte 0fdh ; 24 fd ; 0xf64a9 system.c:311
out DX, AL ; ee ; 0xf64ab
test cl, 002h ; f6 c1 02 ; 0xf64ac system.c:313
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf64af
xor ah, ah ; 30 e4 ; 0xf64b2
lea sp, [bp-006h] ; 8d 66 fa ; 0xf64b4 system.c:314
pop dx ; 5a ; 0xf64b7
pop cx ; 59 ; 0xf64b8
pop bx ; 5b ; 0xf64b9
pop bp ; 5d ; 0xf64ba
retn ; c3 ; 0xf64bb
; disGetNextSymbol 0xf64bc LB 0x4960 -> off=0x3b cb=0000000000000349 uValue=00000000000f4ef7 'int15_function'
db 0ech, 0e9h, 0d8h, 0c7h, 0c1h, 0c0h, 0bfh, 091h, 090h, 089h, 088h, 086h, 083h, 052h, 04fh, 041h
db 024h, 022h, 000h, 021h, 068h, 034h, 065h, 0bch, 067h, 047h, 065h, 0bch, 067h, 01ah, 068h, 08bh
db 065h, 0c1h, 065h, 05bh, 066h, 0c9h, 066h, 0deh, 066h, 054h, 066h, 054h, 066h, 0a6h, 067h, 0ceh
db 067h, 0e1h, 067h, 0bch, 067h, 0f5h, 067h, 0fch, 067h, 002h, 068h
int15_function: ; 0xf64f7 LB 0x349
push bp ; 55 ; 0xf64f7 system.c:335
mov bp, sp ; 89 e5 ; 0xf64f8
push si ; 56 ; 0xf64fa
push di ; 57 ; 0xf64fb
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf64fc system.c:342
shr ax, 008h ; c1 e8 08 ; 0xf64ff
cmp ax, 000ech ; 3d ec 00 ; 0xf6502
jnbe near 06821h ; 0f 87 18 03 ; 0xf6505
push CS ; 0e ; 0xf6509
pop ES ; 07 ; 0xf650a
mov cx, strict word 00014h ; b9 14 00 ; 0xf650b
mov di, 064bch ; bf bc 64 ; 0xf650e
repne scasb ; f2 ae ; 0xf6511
sal cx, 1 ; d1 e1 ; 0xf6513
mov di, cx ; 89 cf ; 0xf6515
mov si, word [cs:di+064cfh] ; 2e 8b b5 cf 64 ; 0xf6517
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf651c
xor ah, ah ; 30 e4 ; 0xf651f
mov dx, word [bp+018h] ; 8b 56 18 ; 0xf6521
and dl, 0feh ; 80 e2 fe ; 0xf6524
mov cx, word [bp+018h] ; 8b 4e 18 ; 0xf6527
or cl, 001h ; 80 c9 01 ; 0xf652a
mov bx, ax ; 89 c3 ; 0xf652d
or bh, 086h ; 80 cf 86 ; 0xf652f
jmp si ; ff e6 ; 0xf6532
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf6534 system.c:344
xor ah, ah ; 30 e4 ; 0xf6537
cmp ax, 000c0h ; 3d c0 00 ; 0xf6539
jne near 06821h ; 0f 85 e1 02 ; 0xf653c
or byte [bp+018h], 001h ; 80 4e 18 01 ; 0xf6540 system.c:351
jmp near 067c5h ; e9 7e 02 ; 0xf6544
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf6547 system.c:355
xor ah, ah ; 30 e4 ; 0xf654a
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf654c
jc short 0655fh ; 72 0e ; 0xf654f
jbe short 06573h ; 76 20 ; 0xf6551
cmp ax, strict word 00003h ; 3d 03 00 ; 0xf6553
je short 06595h ; 74 3d ; 0xf6556
cmp ax, strict word 00002h ; 3d 02 00 ; 0xf6558
je short 06578h ; 74 1b ; 0xf655b
jmp short 065a2h ; eb 43 ; 0xf655d
test ax, ax ; 85 c0 ; 0xf655f
jne short 065a2h ; 75 3f ; 0xf6561
xor ax, ax ; 31 c0 ; 0xf6563 system.c:357
call 06490h ; e8 28 ff ; 0xf6565
and byte [bp+018h], 0feh ; 80 66 18 fe ; 0xf6568 system.c:358
mov byte [bp+013h], 000h ; c6 46 13 00 ; 0xf656c system.c:359
jmp near 06654h ; e9 e1 00 ; 0xf6570 system.c:360
mov ax, strict word 00001h ; b8 01 00 ; 0xf6573 system.c:362
jmp short 06565h ; eb ed ; 0xf6576
mov dx, 00092h ; ba 92 00 ; 0xf6578 system.c:367
in AL, DX ; ec ; 0xf657b
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf657c
shr ax, 1 ; d1 e8 ; 0xf657e
and ax, strict word 00001h ; 25 01 00 ; 0xf6580
mov dx, word [bp+012h] ; 8b 56 12 ; 0xf6583
mov dl, al ; 88 c2 ; 0xf6586
mov word [bp+012h], dx ; 89 56 12 ; 0xf6588
and byte [bp+018h], 0feh ; 80 66 18 fe ; 0xf658b system.c:368
mov byte [bp+013h], ah ; 88 66 13 ; 0xf658f system.c:369
jmp near 06654h ; e9 bf 00 ; 0xf6592 system.c:370
and byte [bp+018h], 0feh ; 80 66 18 fe ; 0xf6595 system.c:372
mov byte [bp+013h], ah ; 88 66 13 ; 0xf6599 system.c:373
mov word [bp+00ch], ax ; 89 46 0c ; 0xf659c system.c:374
jmp near 06654h ; e9 b2 00 ; 0xf659f system.c:375
mov bx, 00e16h ; bb 16 0e ; 0xf65a2 system.c:377
mov cx, ds ; 8c d9 ; 0xf65a5
mov ax, strict word 00004h ; b8 04 00 ; 0xf65a7
call 01a27h ; e8 7a b4 ; 0xf65aa
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf65ad
xor ah, ah ; 30 e4 ; 0xf65b0
push ax ; 50 ; 0xf65b2
push 008beh ; 68 be 08 ; 0xf65b3
push strict byte 00004h ; 6a 04 ; 0xf65b6
call 01a68h ; e8 ad b4 ; 0xf65b8
add sp, strict byte 00006h ; 83 c4 06 ; 0xf65bb
jmp near 067bch ; e9 fb 01 ; 0xf65be
test byte [bp+012h], 0ffh ; f6 46 12 ff ; 0xf65c1 system.c:409
jne short 06626h ; 75 5f ; 0xf65c5
mov bx, 000a0h ; bb a0 00 ; 0xf65c7 system.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf65ca
mov es, ax ; 8e c0 ; 0xf65cd
mov al, byte [es:bx] ; 26 8a 07 ; 0xf65cf
test AL, strict byte 001h ; a8 01 ; 0xf65d2 system.c:49
jne short 06620h ; 75 4a ; 0xf65d4
mov DL, strict byte 001h ; b2 01 ; 0xf65d6 system.c:51
mov byte [es:bx], dl ; 26 88 17 ; 0xf65d8 system.c:53
mov bx, 00098h ; bb 98 00 ; 0xf65db system.c:61
mov ax, word [bp+014h] ; 8b 46 14 ; 0xf65de
mov word [es:bx], ax ; 26 89 07 ; 0xf65e1 system.c:63
mov bx, 0009ah ; bb 9a 00 ; 0xf65e4 system.c:61
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xf65e7
mov word [es:bx], dx ; 26 89 17 ; 0xf65ea system.c:63
mov bx, 0009ch ; bb 9c 00 ; 0xf65ed system.c:61
mov dx, word [bp+00eh] ; 8b 56 0e ; 0xf65f0
mov word [es:bx], dx ; 26 89 17 ; 0xf65f3 system.c:63
mov bx, 0009eh ; bb 9e 00 ; 0xf65f6 system.c:61
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf65f9
mov word [es:bx], ax ; 26 89 07 ; 0xf65fc system.c:63
and byte [bp+018h], 0feh ; 80 66 18 fe ; 0xf65ff system.c:418
mov dx, 000a1h ; ba a1 00 ; 0xf6603 system.c:420
in AL, DX ; ec ; 0xf6606
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf6607
and AL, strict byte 0feh ; 24 fe ; 0xf6609 system.c:421
out DX, AL ; ee ; 0xf660b
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf660c system.c:422
call 0176ah ; e8 58 b1 ; 0xf660f
or AL, strict byte 040h ; 0c 40 ; 0xf6612 system.c:424
movzx dx, al ; 0f b6 d0 ; 0xf6614
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf6617
call 01787h ; e8 6a b1 ; 0xf661a
jmp near 06654h ; e9 34 00 ; 0xf661d system.c:425
mov word [bp+018h], cx ; 89 4e 18 ; 0xf6620 system.c:428
jmp near 06654h ; e9 2e 00 ; 0xf6623 system.c:430
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf6626
jne short 06645h ; 75 1a ; 0xf6629
mov bx, 000a0h ; bb a0 00 ; 0xf662b system.c:53
mov ax, strict word 00040h ; b8 40 00 ; 0xf662e
mov es, ax ; 8e c0 ; 0xf6631
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf6633
and byte [bp+018h], 0feh ; 80 66 18 fe ; 0xf6637 system.c:433
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf663b system.c:434
call 0176ah ; e8 29 b1 ; 0xf663e
and AL, strict byte 0bfh ; 24 bf ; 0xf6641 system.c:435
jmp short 06614h ; eb cf ; 0xf6643
mov word [bp+018h], cx ; 89 4e 18 ; 0xf6645 system.c:438
mov ax, bx ; 89 d8 ; 0xf6648 system.c:440
xor ah, bh ; 30 fc ; 0xf664a
xor bl, bl ; 30 db ; 0xf664c
dec ax ; 48 ; 0xf664e
or bx, ax ; 09 c3 ; 0xf664f
mov word [bp+012h], bx ; 89 5e 12 ; 0xf6651
lea sp, [bp-004h] ; 8d 66 fc ; 0xf6654 system.c:443
pop di ; 5f ; 0xf6657
pop si ; 5e ; 0xf6658
pop bp ; 5d ; 0xf6659
retn ; c3 ; 0xf665a
mov bx, 000a0h ; bb a0 00 ; 0xf665b system.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf665e
mov es, ax ; 8e c0 ; 0xf6661
mov al, byte [es:bx] ; 26 8a 07 ; 0xf6663
test AL, strict byte 001h ; a8 01 ; 0xf6666 system.c:49
jne short 066c3h ; 75 59 ; 0xf6668
mov byte [es:bx], 001h ; 26 c6 07 01 ; 0xf666a system.c:53
mov bx, 00098h ; bb 98 00 ; 0xf666e system.c:63
mov [es:bx], es ; 26 8c 07 ; 0xf6671
mov bx, 0009ah ; bb 9a 00 ; 0xf6674 system.c:63
mov word [es:bx], 000a0h ; 26 c7 07 a0 00 ; 0xf6677
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf667c system.c:61
mov bx, 0009ch ; bb 9c 00 ; 0xf667f system.c:63
mov word [es:bx], ax ; 26 89 07 ; 0xf6682
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf6685 system.c:61
mov bx, 0009eh ; bb 9e 00 ; 0xf6688 system.c:63
mov word [es:bx], ax ; 26 89 07 ; 0xf668b
mov dx, 000a1h ; ba a1 00 ; 0xf668e system.c:456
in AL, DX ; ec ; 0xf6691
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf6692
and AL, strict byte 0feh ; 24 fe ; 0xf6694 system.c:457
out DX, AL ; ee ; 0xf6696
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf6697 system.c:458
call 0176ah ; e8 cd b0 ; 0xf669a
or AL, strict byte 040h ; 0c 40 ; 0xf669d system.c:460
movzx dx, al ; 0f b6 d0 ; 0xf669f
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf66a2
call 01787h ; e8 df b0 ; 0xf66a5
sti ; fb ; 0xf66a8 system.c:462
hlt ; f4 ; 0xf66a9 system.c:464
mov bx, 000a0h ; bb a0 00 ; 0xf66aa system.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf66ad
mov es, ax ; 8e c0 ; 0xf66b0
mov al, byte [es:bx] ; 26 8a 07 ; 0xf66b2
test AL, strict byte 080h ; a8 80 ; 0xf66b5 system.c:467
je short 066a9h ; 74 f0 ; 0xf66b7
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf66b9 system.c:53
and byte [bp+018h], 0feh ; 80 66 18 fe ; 0xf66bd system.c:469
jmp short 06654h ; eb 91 ; 0xf66c1 system.c:470
or byte [bp+018h], 001h ; 80 4e 18 01 ; 0xf66c3 system.c:473
jmp short 06654h ; eb 8b ; 0xf66c7 system.c:475
mov ax, strict word 00030h ; b8 30 00 ; 0xf66c9 system.c:480
call 017a6h ; e8 d7 b0 ; 0xf66cc
mov word [bp+012h], ax ; 89 46 12 ; 0xf66cf
cmp ax, strict word 0ffc0h ; 3d c0 ff ; 0xf66d2 system.c:485
jbe short 066bdh ; 76 e6 ; 0xf66d5
mov word [bp+012h], strict word 0ffc0h ; c7 46 12 c0 ff ; 0xf66d7 system.c:486
jmp short 066bdh ; eb df ; 0xf66dc
cli ; fa ; 0xf66de system.c:509
mov ax, strict word 00001h ; b8 01 00 ; 0xf66df system.c:511
call 06490h ; e8 ab fd ; 0xf66e2
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf66e5 system.c:514
add bx, strict byte 00038h ; 83 c3 38 ; 0xf66e8
mov es, [bp+014h] ; 8e 46 14 ; 0xf66eb system.c:61
mov word [es:bx], strict word 0ffffh ; 26 c7 07 ff ff ; 0xf66ee
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf66f3 system.c:515
add bx, strict byte 0003ah ; 83 c3 3a ; 0xf66f6
mov es, [bp+014h] ; 8e 46 14 ; 0xf66f9 system.c:61
mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xf66fc
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf6701 system.c:516
add bx, strict byte 0003ch ; 83 c3 3c ; 0xf6704
mov es, [bp+014h] ; 8e 46 14 ; 0xf6707 system.c:51
mov byte [es:bx], 00fh ; 26 c6 07 0f ; 0xf670a
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf670e system.c:517
add bx, strict byte 0003dh ; 83 c3 3d ; 0xf6711
mov es, [bp+014h] ; 8e 46 14 ; 0xf6714 system.c:51
mov byte [es:bx], 09bh ; 26 c6 07 9b ; 0xf6717
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf671b system.c:518
add bx, strict byte 0003eh ; 83 c3 3e ; 0xf671e
mov es, [bp+014h] ; 8e 46 14 ; 0xf6721 system.c:61
mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xf6724
mov AL, strict byte 011h ; b0 11 ; 0xf6729 system.c:521
mov dx, strict word 00020h ; ba 20 00 ; 0xf672b
out DX, AL ; ee ; 0xf672e
mov dx, 000a0h ; ba a0 00 ; 0xf672f system.c:522
out DX, AL ; ee ; 0xf6732
mov ax, word [bp+00ch] ; 8b 46 0c ; 0xf6733 system.c:523
shr ax, 008h ; c1 e8 08 ; 0xf6736
mov dx, strict word 00021h ; ba 21 00 ; 0xf6739
out DX, AL ; ee ; 0xf673c
mov ax, word [bp+00ch] ; 8b 46 0c ; 0xf673d system.c:524
mov dx, 000a1h ; ba a1 00 ; 0xf6740
out DX, AL ; ee ; 0xf6743
mov AL, strict byte 004h ; b0 04 ; 0xf6744 system.c:525
mov dx, strict word 00021h ; ba 21 00 ; 0xf6746
out DX, AL ; ee ; 0xf6749
mov AL, strict byte 002h ; b0 02 ; 0xf674a system.c:526
mov dx, 000a1h ; ba a1 00 ; 0xf674c
out DX, AL ; ee ; 0xf674f
mov AL, strict byte 001h ; b0 01 ; 0xf6750 system.c:527
mov dx, strict word 00021h ; ba 21 00 ; 0xf6752
out DX, AL ; ee ; 0xf6755
mov dx, 000a1h ; ba a1 00 ; 0xf6756 system.c:528
out DX, AL ; ee ; 0xf6759
mov AL, strict byte 0ffh ; b0 ff ; 0xf675a system.c:530
mov dx, strict word 00021h ; ba 21 00 ; 0xf675c
out DX, AL ; ee ; 0xf675f
mov dx, 000a1h ; ba a1 00 ; 0xf6760 system.c:531
out DX, AL ; ee ; 0xf6763
mov si, word [bp+006h] ; 8b 76 06 ; 0xf6764 system.c:533
lgdt [es:si+008h] ; 26 0f 01 54 08 ; 0xf6767
lidt [es:si+010h] ; 26 0f 01 5c 10 ; 0xf676c
push strict byte 00038h ; 6a 38 ; 0xf6771
call 06776h ; e8 00 00 ; 0xf6773
pop ax ; 58 ; 0xf6776
add ax, strict byte 0000eh ; 83 c0 0e ; 0xf6777
push ax ; 50 ; 0xf677a
smsw ax ; 0f 01 e0 ; 0xf677b
or AL, strict byte 001h ; 0c 01 ; 0xf677e
lmsw ax ; 0f 01 f0 ; 0xf6780
retf ; cb ; 0xf6783
mov ax, strict word 00018h ; b8 18 00 ; 0xf6784
mov ds, ax ; 8e d8 ; 0xf6787
add AL, strict byte 008h ; 04 08 ; 0xf6789
mov es, ax ; 8e c0 ; 0xf678b
add AL, strict byte 008h ; 04 08 ; 0xf678d
mov ss, ax ; 8e d0 ; 0xf678f
lea ax, [bp+004h] ; 8d 46 04 ; 0xf6791 system.c:534
db 08bh, 0e0h
; mov sp, ax ; 8b e0 ; 0xf6794
popaw ; 61 ; 0xf6796
add sp, strict byte 00006h ; 83 c4 06 ; 0xf6797
pop cx ; 59 ; 0xf679a
pop ax ; 58 ; 0xf679b
pop ax ; 58 ; 0xf679c
mov ax, strict word 00030h ; b8 30 00 ; 0xf679d
push ax ; 50 ; 0xf67a0
push cx ; 51 ; 0xf67a1
retf ; cb ; 0xf67a2
jmp near 06654h ; e9 ae fe ; 0xf67a3 system.c:540
mov bx, 00e16h ; bb 16 0e ; 0xf67a6 system.c:547
mov cx, ds ; 8c d9 ; 0xf67a9
mov ax, strict word 00004h ; b8 04 00 ; 0xf67ab
call 01a27h ; e8 76 b2 ; 0xf67ae
push 008feh ; 68 fe 08 ; 0xf67b1
push strict byte 00004h ; 6a 04 ; 0xf67b4
call 01a68h ; e8 af b2 ; 0xf67b6
add sp, strict byte 00004h ; 83 c4 04 ; 0xf67b9
or byte [bp+018h], 001h ; 80 4e 18 01 ; 0xf67bc
mov ax, word [bp+012h] ; 8b 46 12 ; 0xf67c0
xor ah, ah ; 30 e4 ; 0xf67c3
or ah, 086h ; 80 cc 86 ; 0xf67c5
mov word [bp+012h], ax ; 89 46 12 ; 0xf67c8
jmp near 06654h ; e9 86 fe ; 0xf67cb
mov word [bp+018h], dx ; 89 56 18 ; 0xf67ce system.c:553
mov word [bp+012h], ax ; 89 46 12 ; 0xf67d1 system.c:554
mov word [bp+00ch], 0e6f5h ; c7 46 0c f5 e6 ; 0xf67d4 system.c:555
mov word [bp+014h], 0f000h ; c7 46 14 00 f0 ; 0xf67d9 system.c:556
jmp near 06654h ; e9 73 fe ; 0xf67de system.c:557
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf67e1 system.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf67e4
mov es, ax ; 8e c0 ; 0xf67e7
mov ax, word [es:bx] ; 26 8b 07 ; 0xf67e9
mov word [bp+014h], ax ; 89 46 14 ; 0xf67ec system.c:59
mov word [bp+018h], dx ; 89 56 18 ; 0xf67ef system.c:561
jmp near 06654h ; e9 5f fe ; 0xf67f2 system.c:562
push 0092dh ; 68 2d 09 ; 0xf67f5 system.c:565
push strict byte 00008h ; 6a 08 ; 0xf67f8
jmp short 067b6h ; eb ba ; 0xf67fa
mov word [bp+018h], cx ; 89 4e 18 ; 0xf67fc system.c:573
jmp near 06651h ; e9 4f fe ; 0xf67ff
test byte [bp+012h], 0ffh ; f6 46 12 ff ; 0xf6802 system.c:577
jne short 06821h ; 75 19 ; 0xf6806
mov word [bp+012h], ax ; 89 46 12 ; 0xf6808 system.c:579
mov ax, word [bp+00ch] ; 8b 46 0c ; 0xf680b system.c:580
xor ah, ah ; 30 e4 ; 0xf680e
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf6810
jc short 0681ah ; 72 05 ; 0xf6813
cmp ax, strict word 00003h ; 3d 03 00 ; 0xf6815
jbe short 067efh ; 76 d5 ; 0xf6818
or byte [bp+018h], 001h ; 80 4e 18 01 ; 0xf681a system.c:583
jmp near 06654h ; e9 33 fe ; 0xf681e system.c:584
mov bx, 00e16h ; bb 16 0e ; 0xf6821 system.c:588
mov cx, ds ; 8c d9 ; 0xf6824
mov ax, strict word 00004h ; b8 04 00 ; 0xf6826
call 01a27h ; e8 fb b1 ; 0xf6829
push word [bp+00ch] ; ff 76 0c ; 0xf682c
push word [bp+012h] ; ff 76 12 ; 0xf682f
push 00944h ; 68 44 09 ; 0xf6832
push strict byte 00004h ; 6a 04 ; 0xf6835
call 01a68h ; e8 2e b2 ; 0xf6837
add sp, strict byte 00008h ; 83 c4 08 ; 0xf683a
jmp near 067bch ; e9 7c ff ; 0xf683d
; disGetNextSymbol 0xf6840 LB 0x45dc -> off=0x0 cb=0000000000000042 uValue=00000000000f5240 'set_e820_range_len'
set_e820_range_len: ; 0xf6840 LB 0x42
push si ; 56 ; 0xf6840 system.c:605
push bp ; 55 ; 0xf6841
mov bp, sp ; 89 e5 ; 0xf6842
mov es, ax ; 8e c0 ; 0xf6844
mov si, dx ; 89 d6 ; 0xf6846
mov word [es:si], bx ; 26 89 1c ; 0xf6848 system.c:608
mov word [es:si+002h], cx ; 26 89 4c 02 ; 0xf684b
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf684f system.c:609
mov word [es:si+008h], bx ; 26 89 5c 08 ; 0xf6852
mov bx, word [bp+008h] ; 8b 5e 08 ; 0xf6856
mov word [es:si+00ah], bx ; 26 89 5c 0a ; 0xf6859
movzx bx, byte [bp+00ah] ; 0f b6 5e 0a ; 0xf685d system.c:610
mov word [es:si+010h], bx ; 26 89 5c 10 ; 0xf6861
mov word [es:si+012h], strict word 00000h ; 26 c7 44 12 00 00 ; 0xf6865
db 066h, 026h, 0c7h, 044h, 00ch, 000h, 000h, 000h, 000h
; mov dword [es:si+00ch], strict dword 000000000h ; 66 26 c7 44 0c 00 00 00 00; 0xf686b system.c:611
db 066h, 026h, 0c7h, 044h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000000h ; 66 26 c7 44 04 00 00 00 00; 0xf6874 system.c:612
pop bp ; 5d ; 0xf687d system.c:613
pop si ; 5e ; 0xf687e
retn 00006h ; c2 06 00 ; 0xf687f
; disGetNextSymbol 0xf6882 LB 0x459a -> off=0x0 cb=0000000000000039 uValue=00000000000f5282 'set_e820_range_above_4g'
set_e820_range_above_4g: ; 0xf6882 LB 0x39
push si ; 56 ; 0xf6882 system.c:617
push bp ; 55 ; 0xf6883
mov bp, sp ; 89 e5 ; 0xf6884
mov es, ax ; 8e c0 ; 0xf6886
mov si, dx ; 89 d6 ; 0xf6888
db 066h, 026h, 0c7h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si], strict dword 000000000h ; 66 26 c7 04 00 00 00 00 ; 0xf688a system.c:620
db 066h, 026h, 0c7h, 044h, 004h, 001h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000001h ; 66 26 c7 44 04 01 00 00 00; 0xf6892 system.c:621
mov word [es:si+00ah], bx ; 26 89 5c 0a ; 0xf689b system.c:622
mov word [es:si+008h], strict word 00000h ; 26 c7 44 08 00 00 ; 0xf689f
mov word [es:si+00ch], cx ; 26 89 4c 0c ; 0xf68a5 system.c:623
db 066h, 026h, 0c7h, 044h, 00eh, 000h, 000h, 001h, 000h
; mov dword [es:si+00eh], strict dword 000010000h ; 66 26 c7 44 0e 00 00 01 00; 0xf68a9
mov word [es:si+012h], strict word 00000h ; 26 c7 44 12 00 00 ; 0xf68b2 system.c:624
pop bp ; 5d ; 0xf68b8 system.c:625
pop si ; 5e ; 0xf68b9
retn ; c3 ; 0xf68ba
; disGetNextSymbol 0xf68bb LB 0x4561 -> off=0x14 cb=00000000000002a4 uValue=00000000000f52cf 'int15_function32'
db 0d3h, 069h, 006h, 06ah, 026h, 06ah, 044h, 06ah, 066h, 06ah, 088h, 06ah, 0a8h, 06ah, 0c8h, 06ah
db 042h, 06bh, 0fbh, 06ah
int15_function32: ; 0xf68cf LB 0x2a4
push bp ; 55 ; 0xf68cf system.c:627
mov bp, sp ; 89 e5 ; 0xf68d0
push si ; 56 ; 0xf68d2
push di ; 57 ; 0xf68d3
push ax ; 50 ; 0xf68d4
push ax ; 50 ; 0xf68d5
mov ax, word [bp+020h] ; 8b 46 20 ; 0xf68d6 system.c:631
shr ax, 008h ; c1 e8 08 ; 0xf68d9
cmp ax, 000e8h ; 3d e8 00 ; 0xf68dc
je near 06955h ; 0f 84 72 00 ; 0xf68df
cmp ax, 000d0h ; 3d d0 00 ; 0xf68e3
jne near 06b42h ; 0f 85 58 02 ; 0xf68e6
mov ax, word [bp+020h] ; 8b 46 20 ; 0xf68ea system.c:633
xor ah, ah ; 30 e4 ; 0xf68ed
cmp ax, strict word 0004fh ; 3d 4f 00 ; 0xf68ef
jne near 06b42h ; 0f 85 4c 02 ; 0xf68f2
cmp word [bp+016h], 05052h ; 81 7e 16 52 50 ; 0xf68f6 system.c:635
jne near 06b42h ; 0f 85 43 02 ; 0xf68fb
cmp word [bp+014h], 04f43h ; 81 7e 14 43 4f ; 0xf68ff
jne near 06b42h ; 0f 85 3a 02 ; 0xf6904
cmp word [bp+01eh], 04d4fh ; 81 7e 1e 4f 4d ; 0xf6908
jne near 06b42h ; 0f 85 31 02 ; 0xf690d
cmp word [bp+01ch], 04445h ; 81 7e 1c 45 44 ; 0xf6911
jne near 06b42h ; 0f 85 28 02 ; 0xf6916
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf691a
or ax, word [bp+008h] ; 0b 46 08 ; 0xf691d
jne near 06b42h ; 0f 85 1e 02 ; 0xf6920
mov ax, word [bp+006h] ; 8b 46 06 ; 0xf6924
or ax, word [bp+004h] ; 0b 46 04 ; 0xf6927
jne near 06b42h ; 0f 85 14 02 ; 0xf692a
and byte [bp+028h], 0feh ; 80 66 28 fe ; 0xf692e system.c:637
mov ax, word [bp+014h] ; 8b 46 14 ; 0xf6932 system.c:638
mov word [bp+008h], ax ; 89 46 08 ; 0xf6935
mov ax, word [bp+016h] ; 8b 46 16 ; 0xf6938
mov word [bp+00ah], ax ; 89 46 0a ; 0xf693b
mov ax, word [bp+01ch] ; 8b 46 1c ; 0xf693e system.c:639
mov word [bp+004h], ax ; 89 46 04 ; 0xf6941
mov ax, word [bp+01eh] ; 8b 46 1e ; 0xf6944
mov word [bp+006h], ax ; 89 46 06 ; 0xf6947
mov dword [bp+020h], strict dword 049413332h ; 66 c7 46 20 32 33 41 49 ; 0xf694a system.c:640
jmp near 06b6ch ; e9 17 02 ; 0xf6952 system.c:644
mov ax, word [bp+020h] ; 8b 46 20 ; 0xf6955 system.c:647
xor ah, ah ; 30 e4 ; 0xf6958
cmp ax, strict word 00020h ; 3d 20 00 ; 0xf695a
je short 06969h ; 74 0a ; 0xf695d
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf695f
je near 06b15h ; 0f 84 af 01 ; 0xf6962
jmp near 06b42h ; e9 d9 01 ; 0xf6966
cmp word [bp+01ah], 0534dh ; 81 7e 1a 4d 53 ; 0xf6969 system.c:649
jne near 06b42h ; 0f 85 d0 01 ; 0xf696e
cmp word [bp+018h], 04150h ; 81 7e 18 50 41 ; 0xf6972
jne near 06b42h ; 0f 85 c7 01 ; 0xf6977
mov ax, strict word 00034h ; b8 34 00 ; 0xf697b system.c:658
call 017a6h ; e8 25 ae ; 0xf697e
mov bx, ax ; 89 c3 ; 0xf6981
xor dx, dx ; 31 d2 ; 0xf6983
test ax, ax ; 85 c0 ; 0xf6985 system.c:659
jbe short 06993h ; 76 0a ; 0xf6987
mov dx, ax ; 89 c2 ; 0xf6989 system.c:661
add dx, 00100h ; 81 c2 00 01 ; 0xf698b
xor bx, ax ; 31 c3 ; 0xf698f
jmp short 069aah ; eb 17 ; 0xf6991 system.c:664
mov ax, strict word 00030h ; b8 30 00 ; 0xf6993 system.c:667
call 017a6h ; e8 0d ae ; 0xf6996
mov bx, ax ; 89 c3 ; 0xf6999 system.c:668
add bx, 00400h ; 81 c3 00 04 ; 0xf699b
adc dx, dx ; 11 d2 ; 0xf699f
mov cx, strict word 0000ah ; b9 0a 00 ; 0xf69a1 system.c:669
sal bx, 1 ; d1 e3 ; 0xf69a4
rcl dx, 1 ; d1 d2 ; 0xf69a6
loop 069a4h ; e2 fa ; 0xf69a8
mov ax, strict word 00061h ; b8 61 00 ; 0xf69aa system.c:674
call 017a6h ; e8 f6 ad ; 0xf69ad
mov word [bp-006h], ax ; 89 46 fa ; 0xf69b0
mov word [bp-008h], ax ; 89 46 f8 ; 0xf69b3
mov ax, strict word 00063h ; b8 63 00 ; 0xf69b6 system.c:675
call 017a6h ; e8 ea ad ; 0xf69b9
mov si, ax ; 89 c6 ; 0xf69bc
mov cx, ax ; 89 c1 ; 0xf69be
mov ax, word [bp+014h] ; 8b 46 14 ; 0xf69c0 system.c:681
cmp ax, strict word 00009h ; 3d 09 00 ; 0xf69c3
jnbe near 06b42h ; 0f 87 78 01 ; 0xf69c6
mov di, ax ; 89 c7 ; 0xf69ca
add di, ax ; 01 c7 ; 0xf69cc
jmp word [cs:di+068bbh] ; 2e ff a5 bb 68 ; 0xf69ce
push strict byte 00001h ; 6a 01 ; 0xf69d3 system.c:684
push strict byte 00009h ; 6a 09 ; 0xf69d5
push 0fc00h ; 68 00 fc ; 0xf69d7
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf69da
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf69dd
xor bx, bx ; 31 db ; 0xf69e0
xor cx, cx ; 31 c9 ; 0xf69e2
call 06840h ; e8 59 fe ; 0xf69e4
mov dword [bp+014h], strict dword 000000001h ; 66 c7 46 14 01 00 00 00 ; 0xf69e7 system.c:685
mov dword [bp+020h], strict dword 0534d4150h ; 66 c7 46 20 50 41 4d 53 ; 0xf69ef system.c:686
mov dword [bp+01ch], strict dword 000000014h ; 66 c7 46 1c 14 00 00 00 ; 0xf69f7
and byte [bp+028h], 0feh ; 80 66 28 fe ; 0xf69ff
jmp near 06b6ch ; e9 66 01 ; 0xf6a03
push strict byte 00002h ; 6a 02 ; 0xf6a06 system.c:688
push strict byte 00000h ; 6a 00 ; 0xf6a08
push 00400h ; 68 00 04 ; 0xf6a0a
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6a0d
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6a10
mov bx, 0fc00h ; bb 00 fc ; 0xf6a13
mov cx, strict word 00009h ; b9 09 00 ; 0xf6a16
call 06840h ; e8 24 fe ; 0xf6a19
mov dword [bp+014h], strict dword 000000002h ; 66 c7 46 14 02 00 00 00 ; 0xf6a1c system.c:689
jmp short 069efh ; eb c9 ; 0xf6a24 system.c:690
push strict byte 00002h ; 6a 02 ; 0xf6a26 system.c:703
push strict byte 00001h ; 6a 01 ; 0xf6a28
push strict byte 00000h ; 6a 00 ; 0xf6a2a
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6a2c
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6a2f
xor bx, bx ; 31 db ; 0xf6a32
mov cx, strict word 0000fh ; b9 0f 00 ; 0xf6a34
call 06840h ; e8 06 fe ; 0xf6a37
mov dword [bp+014h], strict dword 000000003h ; 66 c7 46 14 03 00 00 00 ; 0xf6a3a system.c:704
jmp short 069efh ; eb ab ; 0xf6a42 system.c:705
push strict byte 00001h ; 6a 01 ; 0xf6a44 system.c:707
add bx, strict byte 00000h ; 83 c3 00 ; 0xf6a46
adc dx, strict byte 0ffefh ; 83 d2 ef ; 0xf6a49
push dx ; 52 ; 0xf6a4c
push bx ; 53 ; 0xf6a4d
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6a4e
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6a51
xor bx, bx ; 31 db ; 0xf6a54
mov cx, strict word 00010h ; b9 10 00 ; 0xf6a56
call 06840h ; e8 e4 fd ; 0xf6a59
mov dword [bp+014h], strict dword 000000004h ; 66 c7 46 14 04 00 00 00 ; 0xf6a5c system.c:708
jmp short 069efh ; eb 89 ; 0xf6a64 system.c:709
push strict byte 00003h ; 6a 03 ; 0xf6a66 system.c:711
push strict byte 00001h ; 6a 01 ; 0xf6a68
push strict byte 00000h ; 6a 00 ; 0xf6a6a
add bx, strict byte 00000h ; 83 c3 00 ; 0xf6a6c
mov cx, dx ; 89 d1 ; 0xf6a6f
adc cx, strict byte 0ffffh ; 83 d1 ff ; 0xf6a71
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6a74
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6a77
call 06840h ; e8 c3 fd ; 0xf6a7a
mov dword [bp+014h], strict dword 000000005h ; 66 c7 46 14 05 00 00 00 ; 0xf6a7d system.c:712
jmp near 069efh ; e9 67 ff ; 0xf6a85 system.c:713
push strict byte 00002h ; 6a 02 ; 0xf6a88 system.c:715
push strict byte 00000h ; 6a 00 ; 0xf6a8a
push 01000h ; 68 00 10 ; 0xf6a8c
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6a8f
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6a92
xor bx, bx ; 31 db ; 0xf6a95
mov cx, 0fec0h ; b9 c0 fe ; 0xf6a97
call 06840h ; e8 a3 fd ; 0xf6a9a
mov dword [bp+014h], strict dword 000000006h ; 66 c7 46 14 06 00 00 00 ; 0xf6a9d system.c:716
jmp near 069efh ; e9 47 ff ; 0xf6aa5 system.c:717
push strict byte 00002h ; 6a 02 ; 0xf6aa8 system.c:719
push strict byte 00000h ; 6a 00 ; 0xf6aaa
push 01000h ; 68 00 10 ; 0xf6aac
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6aaf
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6ab2
xor bx, bx ; 31 db ; 0xf6ab5
mov cx, 0fee0h ; b9 e0 fe ; 0xf6ab7
call 06840h ; e8 83 fd ; 0xf6aba
mov dword [bp+014h], strict dword 000000007h ; 66 c7 46 14 07 00 00 00 ; 0xf6abd system.c:720
jmp near 069efh ; e9 27 ff ; 0xf6ac5 system.c:721
push strict byte 00002h ; 6a 02 ; 0xf6ac8 system.c:724
push strict byte 00004h ; 6a 04 ; 0xf6aca
push strict byte 00000h ; 6a 00 ; 0xf6acc
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6ace
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6ad1
xor bx, bx ; 31 db ; 0xf6ad4
mov cx, strict word 0fffch ; b9 fc ff ; 0xf6ad6
call 06840h ; e8 64 fd ; 0xf6ad9
mov ax, word [bp-006h] ; 8b 46 fa ; 0xf6adc system.c:730
test ax, ax ; 85 c0 ; 0xf6adf
jne short 06ae7h ; 75 04 ; 0xf6ae1
test si, si ; 85 f6 ; 0xf6ae3
je short 06af2h ; 74 0b ; 0xf6ae5
mov dword [bp+014h], strict dword 000000009h ; 66 c7 46 14 09 00 00 00 ; 0xf6ae7 system.c:731
jmp near 069efh ; e9 fd fe ; 0xf6aef system.c:732
mov word [bp+014h], ax ; 89 46 14 ; 0xf6af2 system.c:733
mov word [bp+016h], ax ; 89 46 16 ; 0xf6af5
jmp near 069efh ; e9 f4 fe ; 0xf6af8 system.c:734
cmp word [bp-006h], strict byte 00000h ; 83 7e fa 00 ; 0xf6afb system.c:747
jne short 06b05h ; 75 04 ; 0xf6aff
test si, si ; 85 f6 ; 0xf6b01
je short 06b42h ; 74 3d ; 0xf6b03
mov dx, word [bp+004h] ; 8b 56 04 ; 0xf6b05 system.c:749
mov ax, word [bp+024h] ; 8b 46 24 ; 0xf6b08
mov bx, word [bp-008h] ; 8b 5e f8 ; 0xf6b0b
call 06882h ; e8 71 fd ; 0xf6b0e
xor ax, ax ; 31 c0 ; 0xf6b11 system.c:750
jmp short 06af2h ; eb dd ; 0xf6b13
and byte [bp+028h], 0feh ; 80 66 28 fe ; 0xf6b15 system.c:769
mov ax, strict word 00030h ; b8 30 00 ; 0xf6b19 system.c:779
call 017a6h ; e8 87 ac ; 0xf6b1c
mov word [bp+01ch], ax ; 89 46 1c ; 0xf6b1f
cmp ax, 03c00h ; 3d 00 3c ; 0xf6b22 system.c:782
jbe short 06b2ch ; 76 05 ; 0xf6b25
mov word [bp+01ch], 03c00h ; c7 46 1c 00 3c ; 0xf6b27 system.c:783
mov ax, strict word 00034h ; b8 34 00 ; 0xf6b2c system.c:786
call 017a6h ; e8 74 ac ; 0xf6b2f
mov dx, ax ; 89 c2 ; 0xf6b32
mov word [bp+018h], ax ; 89 46 18 ; 0xf6b34
mov ax, word [bp+01ch] ; 8b 46 1c ; 0xf6b37 system.c:789
mov word [bp+020h], ax ; 89 46 20 ; 0xf6b3a
mov word [bp+014h], dx ; 89 56 14 ; 0xf6b3d system.c:790
jmp short 06b6ch ; eb 2a ; 0xf6b40 system.c:795
mov bx, 00e16h ; bb 16 0e ; 0xf6b42 system.c:800
mov cx, ds ; 8c d9 ; 0xf6b45
mov ax, strict word 00004h ; b8 04 00 ; 0xf6b47
call 01a27h ; e8 da ae ; 0xf6b4a
push word [bp+014h] ; ff 76 14 ; 0xf6b4d
push word [bp+020h] ; ff 76 20 ; 0xf6b50
push 00944h ; 68 44 09 ; 0xf6b53
push strict byte 00004h ; 6a 04 ; 0xf6b56
call 01a68h ; e8 0d af ; 0xf6b58
add sp, strict byte 00008h ; 83 c4 08 ; 0xf6b5b
or byte [bp+028h], 001h ; 80 4e 28 01 ; 0xf6b5e system.c:801
mov ax, word [bp+020h] ; 8b 46 20 ; 0xf6b62 system.c:802
xor al, al ; 30 c0 ; 0xf6b65
or AL, strict byte 086h ; 0c 86 ; 0xf6b67
mov word [bp+020h], ax ; 89 46 20 ; 0xf6b69
lea sp, [bp-004h] ; 8d 66 fc ; 0xf6b6c system.c:805
pop di ; 5f ; 0xf6b6f
pop si ; 5e ; 0xf6b70
pop bp ; 5d ; 0xf6b71
retn ; c3 ; 0xf6b72
; disGetNextSymbol 0xf6b73 LB 0x42a9 -> off=0x0 cb=0000000000000156 uValue=00000000000f5573 'int15_blkmove'
int15_blkmove: ; 0xf6b73 LB 0x156
push bp ; 55 ; 0xf6b73 system.c:814
mov bp, sp ; 89 e5 ; 0xf6b74
push si ; 56 ; 0xf6b76
push di ; 57 ; 0xf6b77
cli ; fa ; 0xf6b78 system.c:824
mov ax, strict word 00001h ; b8 01 00 ; 0xf6b79 system.c:826
call 06490h ; e8 11 f9 ; 0xf6b7c
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xf6b7f system.c:849
sal bx, 004h ; c1 e3 04 ; 0xf6b82
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf6b85
add ax, bx ; 01 d8 ; 0xf6b88
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf6b8a system.c:850
shr dx, 00ch ; c1 ea 0c ; 0xf6b8d
mov cl, dl ; 88 d1 ; 0xf6b90
cmp ax, bx ; 39 d8 ; 0xf6b92 system.c:851
jnc short 06b98h ; 73 02 ; 0xf6b94
db 0feh, 0c1h
; inc cl ; fe c1 ; 0xf6b96 system.c:852
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6b98 system.c:853
add bx, strict byte 00008h ; 83 c3 08 ; 0xf6b9b
mov es, [bp+006h] ; 8e 46 06 ; 0xf6b9e system.c:61
mov word [es:bx], strict word 0002fh ; 26 c7 07 2f 00 ; 0xf6ba1
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6ba6 system.c:854
add bx, strict byte 0000ah ; 83 c3 0a ; 0xf6ba9
mov word [es:bx], ax ; 26 89 07 ; 0xf6bac system.c:61
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6baf system.c:855
add bx, strict byte 0000ch ; 83 c3 0c ; 0xf6bb2
mov byte [es:bx], cl ; 26 88 0f ; 0xf6bb5 system.c:53
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6bb8 system.c:856
add bx, strict byte 0000dh ; 83 c3 0d ; 0xf6bbb
mov byte [es:bx], 093h ; 26 c6 07 93 ; 0xf6bbe system.c:53
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6bc2 system.c:857
add bx, strict byte 0000eh ; 83 c3 0e ; 0xf6bc5
mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xf6bc8 system.c:61
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6bcd system.c:860
add bx, strict byte 00020h ; 83 c3 20 ; 0xf6bd0
mov word [es:bx], strict word 0ffffh ; 26 c7 07 ff ff ; 0xf6bd3 system.c:61
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6bd8 system.c:861
add bx, strict byte 00022h ; 83 c3 22 ; 0xf6bdb
mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xf6bde system.c:63
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6be3 system.c:862
add bx, strict byte 00024h ; 83 c3 24 ; 0xf6be6
mov byte [es:bx], 00fh ; 26 c6 07 0f ; 0xf6be9 system.c:51
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6bed system.c:863
add bx, strict byte 00025h ; 83 c3 25 ; 0xf6bf0
mov byte [es:bx], 09bh ; 26 c6 07 9b ; 0xf6bf3 system.c:51
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6bf7 system.c:864
add bx, strict byte 00026h ; 83 c3 26 ; 0xf6bfa
mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xf6bfd system.c:61
mov ax, ss ; 8c d0 ; 0xf6c02 system.c:867
mov cx, ax ; 89 c1 ; 0xf6c04
sal ax, 004h ; c1 e0 04 ; 0xf6c06 system.c:868
shr cx, 00ch ; c1 e9 0c ; 0xf6c09
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6c0c system.c:870
add bx, strict byte 00028h ; 83 c3 28 ; 0xf6c0f
mov word [es:bx], strict word 0ffffh ; 26 c7 07 ff ff ; 0xf6c12 system.c:61
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6c17 system.c:871
add bx, strict byte 0002ah ; 83 c3 2a ; 0xf6c1a
mov word [es:bx], ax ; 26 89 07 ; 0xf6c1d system.c:61
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6c20 system.c:872
add bx, strict byte 0002ch ; 83 c3 2c ; 0xf6c23
mov byte [es:bx], cl ; 26 88 0f ; 0xf6c26 system.c:51
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6c29 system.c:873
add bx, strict byte 0002dh ; 83 c3 2d ; 0xf6c2c
mov byte [es:bx], 093h ; 26 c6 07 93 ; 0xf6c2f system.c:53
mov bx, word [bp+00ah] ; 8b 5e 0a ; 0xf6c33 system.c:874
add bx, strict byte 0002eh ; 83 c3 2e ; 0xf6c36
mov word [es:bx], strict word 00000h ; 26 c7 07 00 00 ; 0xf6c39 system.c:63
mov si, word [bp+00ah] ; 8b 76 0a ; 0xf6c3e system.c:880
mov cx, word [bp+014h] ; 8b 4e 14 ; 0xf6c41
push DS ; 1e ; 0xf6c44
push eax ; 66 50 ; 0xf6c45
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xf6c47
mov ds, ax ; 8e d8 ; 0xf6c49
mov word [00467h], sp ; 89 26 67 04 ; 0xf6c4b
mov [00469h], ss ; 8c 16 69 04 ; 0xf6c4f
lgdt [es:si+008h] ; 26 0f 01 54 08 ; 0xf6c53 system.c:884
lidt [cs:0efe1h] ; 2e 0f 01 1e e1 ef ; 0xf6c58
push strict byte 00020h ; 6a 20 ; 0xf6c5e
call 06c63h ; e8 00 00 ; 0xf6c60
pop ax ; 58 ; 0xf6c63
add ax, strict byte 0000eh ; 83 c0 0e ; 0xf6c64
push ax ; 50 ; 0xf6c67
mov eax, cr0 ; 0f 20 c0 ; 0xf6c68
or AL, strict byte 001h ; 0c 01 ; 0xf6c6b
mov cr0, eax ; 0f 22 c0 ; 0xf6c6d
retf ; cb ; 0xf6c70
mov ax, strict word 00010h ; b8 10 00 ; 0xf6c71
mov ds, ax ; 8e d8 ; 0xf6c74
add AL, strict byte 008h ; 04 08 ; 0xf6c76
mov es, ax ; 8e c0 ; 0xf6c78
add AL, strict byte 010h ; 04 10 ; 0xf6c7a
mov ss, ax ; 8e d0 ; 0xf6c7c
db 033h, 0f6h
; xor si, si ; 33 f6 ; 0xf6c7e system.c:885
db 033h, 0ffh
; xor di, di ; 33 ff ; 0xf6c80
cld ; fc ; 0xf6c82
rep movsw ; f3 a5 ; 0xf6c83
mov ax, strict word 00028h ; b8 28 00 ; 0xf6c85 system.c:886
mov ds, ax ; 8e d8 ; 0xf6c88
mov es, ax ; 8e c0 ; 0xf6c8a
push 0f000h ; 68 00 f0 ; 0xf6c8c
call 06c92h ; e8 00 00 ; 0xf6c8f
pop ax ; 58 ; 0xf6c92
add ax, strict byte 0000eh ; 83 c0 0e ; 0xf6c93
push ax ; 50 ; 0xf6c96
mov eax, cr0 ; 0f 20 c0 ; 0xf6c97
and AL, strict byte 0feh ; 24 fe ; 0xf6c9a
mov cr0, eax ; 0f 22 c0 ; 0xf6c9c
retf ; cb ; 0xf6c9f
lidt [cs:0efe7h] ; 2e 0f 01 1e e7 ef ; 0xf6ca0
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xf6ca6 system.c:887
mov ds, ax ; 8e d8 ; 0xf6ca8
mov es, ax ; 8e c0 ; 0xf6caa
lss sp, [00467h] ; 0f b2 26 67 04 ; 0xf6cac
pop eax ; 66 58 ; 0xf6cb1
pop DS ; 1f ; 0xf6cb3
xor ax, ax ; 31 c0 ; 0xf6cb4 system.c:889
call 06490h ; e8 d7 f7 ; 0xf6cb6
sti ; fb ; 0xf6cb9 system.c:892
mov byte [bp+017h], 000h ; c6 46 17 00 ; 0xf6cba system.c:894
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf6cbe system.c:895
lea sp, [bp-004h] ; 8d 66 fc ; 0xf6cc2 system.c:896
pop di ; 5f ; 0xf6cc5
pop si ; 5e ; 0xf6cc6
pop bp ; 5d ; 0xf6cc7
retn ; c3 ; 0xf6cc8
; disGetNextSymbol 0xf6cc9 LB 0x4153 -> off=0x0 cb=0000000000000195 uValue=00000000000f56c9 'inv_op_handler'
inv_op_handler: ; 0xf6cc9 LB 0x195
push bp ; 55 ; 0xf6cc9 invop.c:247
mov bp, sp ; 89 e5 ; 0xf6cca
push si ; 56 ; 0xf6ccc
push di ; 57 ; 0xf6ccd
push ax ; 50 ; 0xf6cce
push ax ; 50 ; 0xf6ccf
les bx, [bp+018h] ; c4 5e 18 ; 0xf6cd0 invop.c:249
cmp byte [es:bx], 0f0h ; 26 80 3f f0 ; 0xf6cd3 invop.c:251
jne short 06cdfh ; 75 06 ; 0xf6cd7
inc word [bp+018h] ; ff 46 18 ; 0xf6cd9 invop.c:253
jmp near 06e57h ; e9 78 01 ; 0xf6cdc invop.c:254
cmp word [es:bx], 0050fh ; 26 81 3f 0f 05 ; 0xf6cdf
jne near 06e53h ; 0f 85 6b 01 ; 0xf6ce4
mov si, 00800h ; be 00 08 ; 0xf6ce8 invop.c:256
xor ax, ax ; 31 c0 ; 0xf6ceb
mov word [bp-006h], ax ; 89 46 fa ; 0xf6ced
mov word [bp-008h], ax ; 89 46 f8 ; 0xf6cf0 invop.c:259
mov es, ax ; 8e c0 ; 0xf6cf3 invop.c:267
mov bx, word [es:si+02ch] ; 26 8b 5c 2c ; 0xf6cf5
sub bx, strict byte 00006h ; 83 eb 06 ; 0xf6cf9
mov dx, word [es:si+020h] ; 26 8b 54 20 ; 0xf6cfc
mov ax, word [es:si+01ah] ; 26 8b 44 1a ; 0xf6d00 invop.c:268
mov es, dx ; 8e c2 ; 0xf6d04
mov word [es:bx], ax ; 26 89 07 ; 0xf6d06
mov es, [bp-006h] ; 8e 46 fa ; 0xf6d09 invop.c:269
mov ax, word [es:si+022h] ; 26 8b 44 22 ; 0xf6d0c
mov es, dx ; 8e c2 ; 0xf6d10
mov word [es:bx+002h], ax ; 26 89 47 02 ; 0xf6d12
mov es, [bp-006h] ; 8e 46 fa ; 0xf6d16 invop.c:270
mov ax, word [es:si+018h] ; 26 8b 44 18 ; 0xf6d19
mov es, dx ; 8e c2 ; 0xf6d1d
mov word [es:bx+004h], ax ; 26 89 47 04 ; 0xf6d1f
mov es, [bp-006h] ; 8e 46 fa ; 0xf6d23 invop.c:273
movzx bx, byte [es:si+038h] ; 26 0f b6 5c 38 ; 0xf6d26
mov di, word [es:si+036h] ; 26 8b 7c 36 ; 0xf6d2b
mov ax, word [es:si+024h] ; 26 8b 44 24 ; 0xf6d2f invop.c:274
xor dx, dx ; 31 d2 ; 0xf6d33
mov cx, strict word 00004h ; b9 04 00 ; 0xf6d35
sal ax, 1 ; d1 e0 ; 0xf6d38
rcl dx, 1 ; d1 d2 ; 0xf6d3a
loop 06d38h ; e2 fa ; 0xf6d3c
cmp bx, dx ; 39 d3 ; 0xf6d3e
jne short 06d46h ; 75 04 ; 0xf6d40
cmp di, ax ; 39 c7 ; 0xf6d42
je short 06d4bh ; 74 05 ; 0xf6d44
mov word [bp-008h], strict word 00001h ; c7 46 f8 01 00 ; 0xf6d46 invop.c:275
mov es, [bp-006h] ; 8e 46 fa ; 0xf6d4b invop.c:276
movzx di, byte [es:si+04ah] ; 26 0f b6 7c 4a ; 0xf6d4e
mov bx, word [es:si+048h] ; 26 8b 5c 48 ; 0xf6d53
mov ax, word [es:si+01eh] ; 26 8b 44 1e ; 0xf6d57 invop.c:277
xor dx, dx ; 31 d2 ; 0xf6d5b
mov cx, strict word 00004h ; b9 04 00 ; 0xf6d5d
sal ax, 1 ; d1 e0 ; 0xf6d60
rcl dx, 1 ; d1 d2 ; 0xf6d62
loop 06d60h ; e2 fa ; 0xf6d64
cmp di, dx ; 39 d7 ; 0xf6d66
jne short 06d6eh ; 75 04 ; 0xf6d68
cmp bx, ax ; 39 c3 ; 0xf6d6a
je short 06d72h ; 74 04 ; 0xf6d6c
or byte [bp-008h], 002h ; 80 4e f8 02 ; 0xf6d6e invop.c:278
push strict byte 00000h ; 6a 00 ; 0xf6d72 invop.c:281
push 00800h ; 68 00 08 ; 0xf6d74
push strict byte 0001fh ; 6a 1f ; 0xf6d77
db 08bh, 0dch
; mov bx, sp ; 8b dc ; 0xf6d79
lgdt [ss:bx] ; 36 0f 01 17 ; 0xf6d7b
add sp, strict byte 00006h ; 83 c4 06 ; 0xf6d7f
mov es, [bp-006h] ; 8e 46 fa ; 0xf6d82 invop.c:284
mov ax, word [es:si+03ah] ; 26 8b 44 3a ; 0xf6d85
mov word [es:si+008h], ax ; 26 89 44 08 ; 0xf6d89
mov ax, word [es:si+036h] ; 26 8b 44 36 ; 0xf6d8d invop.c:285
mov word [es:si+00ah], ax ; 26 89 44 0a ; 0xf6d91
movzx dx, byte [es:si+039h] ; 26 0f b6 54 39 ; 0xf6d95 invop.c:286
sal dx, 008h ; c1 e2 08 ; 0xf6d9a
movzx ax, byte [es:si+038h] ; 26 0f b6 44 38 ; 0xf6d9d
or dx, ax ; 09 c2 ; 0xf6da2
mov word [es:si+00ch], dx ; 26 89 54 0c ; 0xf6da4
mov word [es:si+00eh], strict word 00000h ; 26 c7 44 0e 00 00 ; 0xf6da8 invop.c:287
mov ax, word [es:si+04ch] ; 26 8b 44 4c ; 0xf6dae invop.c:290
mov word [es:si], ax ; 26 89 04 ; 0xf6db2
mov ax, word [es:si+048h] ; 26 8b 44 48 ; 0xf6db5 invop.c:291
mov word [es:si+002h], ax ; 26 89 44 02 ; 0xf6db9
movzx dx, byte [es:si+04bh] ; 26 0f b6 54 4b ; 0xf6dbd invop.c:292
sal dx, 008h ; c1 e2 08 ; 0xf6dc2
movzx ax, byte [es:si+04ah] ; 26 0f b6 44 4a ; 0xf6dc5
or dx, ax ; 09 c2 ; 0xf6dca
mov word [es:si+004h], dx ; 26 89 54 04 ; 0xf6dcc
movzx ax, byte [es:si+05ch] ; 26 0f b6 44 5c ; 0xf6dd0 invop.c:295
mov dx, word [es:si+05ah] ; 26 8b 54 5a ; 0xf6dd5
push ax ; 50 ; 0xf6dd9 invop.c:296
push dx ; 52 ; 0xf6dda
push word [es:si+05eh] ; 26 ff 74 5e ; 0xf6ddb
db 08bh, 0dch
; mov bx, sp ; 8b dc ; 0xf6ddf
lidt [ss:bx] ; 36 0f 01 1f ; 0xf6de1
add sp, strict byte 00006h ; 83 c4 06 ; 0xf6de5
mov cx, word [bp-008h] ; 8b 4e f8 ; 0xf6de8 invop.c:299
mov ax, 00080h ; b8 80 00 ; 0xf6deb
mov ss, ax ; 8e d0 ; 0xf6dee
mov ax, word [ss:0001eh] ; 36 a1 1e 00 ; 0xf6df0
mov ds, ax ; 8e d8 ; 0xf6df4
mov ax, word [ss:00024h] ; 36 a1 24 00 ; 0xf6df6
mov es, ax ; 8e c0 ; 0xf6dfa
smsw ax ; 0f 01 e0 ; 0xf6dfc invop.c:300
inc ax ; 40 ; 0xf6dff
lmsw ax ; 0f 01 f0 ; 0xf6e00
mov ax, strict word 00008h ; b8 08 00 ; 0xf6e03
test cx, strict word 00001h ; f7 c1 01 00 ; 0xf6e06
je near 06e10h ; 0f 84 02 00 ; 0xf6e0a
mov es, ax ; 8e c0 ; 0xf6e0e
test cx, strict word 00002h ; f7 c1 02 00 ; 0xf6e10
je near 06e38h ; 0f 84 20 00 ; 0xf6e14
mov bx, word [word ss:00000h] ; 36 8b 1e 00 00 ; 0xf6e18
mov word [word ss:00008h], bx ; 36 89 1e 08 00 ; 0xf6e1d
mov bx, word [word ss:00002h] ; 36 8b 1e 02 00 ; 0xf6e22
mov word [word ss:0000ah], bx ; 36 89 1e 0a 00 ; 0xf6e27
mov bx, word [word ss:00004h] ; 36 8b 1e 04 00 ; 0xf6e2c
mov word [word ss:0000ch], bx ; 36 89 1e 0c 00 ; 0xf6e31
mov ds, ax ; 8e d8 ; 0xf6e36
mov eax, cr0 ; 0f 20 c0 ; 0xf6e38
dec ax ; 48 ; 0xf6e3b
mov cr0, eax ; 0f 22 c0 ; 0xf6e3c
mov sp, strict word 00026h ; bc 26 00 ; 0xf6e3f invop.c:301
popaw ; 61 ; 0xf6e42
mov sp, word [word ss:0002ch] ; 36 8b 26 2c 00 ; 0xf6e43
sub sp, strict byte 00006h ; 83 ec 06 ; 0xf6e48
mov ss, [word ss:00020h] ; 36 8e 16 20 00 ; 0xf6e4b
iret ; cf ; 0xf6e50
jmp short 06e57h ; eb 04 ; 0xf6e51 invop.c:353
sti ; fb ; 0xf6e53 invop.c:357
hlt ; f4 ; 0xf6e54 invop.c:358
jmp short 06e54h ; eb fd ; 0xf6e55
lea sp, [bp-004h] ; 8d 66 fc ; 0xf6e57 invop.c:360
pop di ; 5f ; 0xf6e5a
pop si ; 5e ; 0xf6e5b
pop bp ; 5d ; 0xf6e5c
retn ; c3 ; 0xf6e5d
; disGetNextSymbol 0xf6e5e LB 0x3fbe -> off=0x0 cb=0000000000000028 uValue=00000000000f585e 'init_rtc'
init_rtc: ; 0xf6e5e LB 0x28
push bp ; 55 ; 0xf6e5e timepci.c:84
mov bp, sp ; 89 e5 ; 0xf6e5f
push dx ; 52 ; 0xf6e61
mov dx, strict word 00026h ; ba 26 00 ; 0xf6e62 timepci.c:86
mov ax, strict word 0000ah ; b8 0a 00 ; 0xf6e65
call 01787h ; e8 1c a9 ; 0xf6e68
mov dx, strict word 00002h ; ba 02 00 ; 0xf6e6b timepci.c:87
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf6e6e
call 01787h ; e8 13 a9 ; 0xf6e71
mov ax, strict word 0000ch ; b8 0c 00 ; 0xf6e74 timepci.c:88
call 0176ah ; e8 f0 a8 ; 0xf6e77
mov ax, strict word 0000dh ; b8 0d 00 ; 0xf6e7a timepci.c:89
call 0176ah ; e8 ea a8 ; 0xf6e7d
lea sp, [bp-002h] ; 8d 66 fe ; 0xf6e80 timepci.c:90
pop dx ; 5a ; 0xf6e83
pop bp ; 5d ; 0xf6e84
retn ; c3 ; 0xf6e85
; disGetNextSymbol 0xf6e86 LB 0x3f96 -> off=0x0 cb=0000000000000021 uValue=00000000000f5886 'rtc_updating'
rtc_updating: ; 0xf6e86 LB 0x21
push bp ; 55 ; 0xf6e86 timepci.c:92
mov bp, sp ; 89 e5 ; 0xf6e87
push dx ; 52 ; 0xf6e89
mov dx, 061a8h ; ba a8 61 ; 0xf6e8a timepci.c:105
dec dx ; 4a ; 0xf6e8d timepci.c:106
je short 06e9eh ; 74 0e ; 0xf6e8e
mov ax, strict word 0000ah ; b8 0a 00 ; 0xf6e90 timepci.c:107
call 0176ah ; e8 d4 a8 ; 0xf6e93
test AL, strict byte 080h ; a8 80 ; 0xf6e96
jne short 06e8dh ; 75 f3 ; 0xf6e98
xor ax, ax ; 31 c0 ; 0xf6e9a timepci.c:108
jmp short 06ea1h ; eb 03 ; 0xf6e9c
mov ax, strict word 00001h ; b8 01 00 ; 0xf6e9e timepci.c:110
lea sp, [bp-002h] ; 8d 66 fe ; 0xf6ea1 timepci.c:111
pop dx ; 5a ; 0xf6ea4
pop bp ; 5d ; 0xf6ea5
retn ; c3 ; 0xf6ea6
; disGetNextSymbol 0xf6ea7 LB 0x3f75 -> off=0x0 cb=0000000000000091 uValue=00000000000f58a7 'int70_function'
int70_function: ; 0xf6ea7 LB 0x91
push bp ; 55 ; 0xf6ea7 timepci.c:120
mov bp, sp ; 89 e5 ; 0xf6ea8
push si ; 56 ; 0xf6eaa
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf6eab timepci.c:126
call 0176ah ; e8 b9 a8 ; 0xf6eae
mov bl, al ; 88 c3 ; 0xf6eb1
mov dh, al ; 88 c6 ; 0xf6eb3
mov ax, strict word 0000ch ; b8 0c 00 ; 0xf6eb5 timepci.c:127
call 0176ah ; e8 af a8 ; 0xf6eb8
mov dl, al ; 88 c2 ; 0xf6ebb
test bl, 060h ; f6 c3 60 ; 0xf6ebd timepci.c:129
je short 06f2fh ; 74 6d ; 0xf6ec0
test AL, strict byte 020h ; a8 20 ; 0xf6ec2 timepci.c:130
je short 06ecah ; 74 04 ; 0xf6ec4
sti ; fb ; 0xf6ec6 timepci.c:132
int 04ah ; cd 4a ; 0xf6ec7 timepci.c:133
cli ; fa ; 0xf6ec9 timepci.c:134
test dl, 040h ; f6 c2 40 ; 0xf6eca timepci.c:136
je short 06f2fh ; 74 60 ; 0xf6ecd
mov bx, 000a0h ; bb a0 00 ; 0xf6ecf timepci.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf6ed2
mov es, ax ; 8e c0 ; 0xf6ed5
mov al, byte [es:bx] ; 26 8a 07 ; 0xf6ed7
test al, al ; 84 c0 ; 0xf6eda timepci.c:49
je short 06f2fh ; 74 51 ; 0xf6edc
mov bx, 0009ch ; bb 9c 00 ; 0xf6ede timepci.c:68
mov ax, word [es:bx] ; 26 8b 07 ; 0xf6ee1
mov bx, word [es:bx+002h] ; 26 8b 5f 02 ; 0xf6ee4
test bx, bx ; 85 db ; 0xf6ee8 timepci.c:144
jne short 06f1dh ; 75 31 ; 0xf6eea
cmp ax, 003d1h ; 3d d1 03 ; 0xf6eec
jnc short 06f1dh ; 73 2c ; 0xf6eef
mov bx, 00098h ; bb 98 00 ; 0xf6ef1 timepci.c:58
mov cx, word [es:bx] ; 26 8b 0f ; 0xf6ef4
mov bx, 0009ah ; bb 9a 00 ; 0xf6ef7 timepci.c:58
mov bx, word [es:bx] ; 26 8b 1f ; 0xf6efa
mov si, 000a0h ; be a0 00 ; 0xf6efd timepci.c:53
mov byte [es:si], 000h ; 26 c6 04 00 ; 0xf6f00
mov al, dh ; 88 f0 ; 0xf6f04 timepci.c:151
and AL, strict byte 037h ; 24 37 ; 0xf6f06
movzx dx, al ; 0f b6 d0 ; 0xf6f08
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf6f0b
call 01787h ; e8 76 a8 ; 0xf6f0e
mov es, cx ; 8e c1 ; 0xf6f11 timepci.c:48
mov al, byte [es:bx] ; 26 8a 07 ; 0xf6f13
or AL, strict byte 080h ; 0c 80 ; 0xf6f16 timepci.c:49
mov byte [es:bx], al ; 26 88 07 ; 0xf6f18 timepci.c:53
jmp short 06f2fh ; eb 12 ; 0xf6f1b timepci.c:153
add ax, 0fc2fh ; 05 2f fc ; 0xf6f1d timepci.c:155
mov dx, bx ; 89 da ; 0xf6f20
adc dx, strict byte 0ffffh ; 83 d2 ff ; 0xf6f22
mov bx, 0009ch ; bb 9c 00 ; 0xf6f25 timepci.c:73
mov word [es:bx], ax ; 26 89 07 ; 0xf6f28
mov word [es:bx+002h], dx ; 26 89 57 02 ; 0xf6f2b
call 0e030h ; e8 fe 70 ; 0xf6f2f timepci.c:161
lea sp, [bp-002h] ; 8d 66 fe ; 0xf6f32 timepci.c:162
pop si ; 5e ; 0xf6f35
pop bp ; 5d ; 0xf6f36
retn ; c3 ; 0xf6f37
; disGetNextSymbol 0xf6f38 LB 0x3ee4 -> off=0x10 cb=00000000000001c8 uValue=00000000000f5948 'int1a_function'
db 05fh, 06fh, 088h, 06fh, 0adh, 06fh, 0dfh, 06fh, 02eh, 070h, 066h, 070h, 0a9h, 070h, 000h, 071h
int1a_function: ; 0xf6f48 LB 0x1c8
push bp ; 55 ; 0xf6f48 timepci.c:167
mov bp, sp ; 89 e5 ; 0xf6f49
sti ; fb ; 0xf6f4b timepci.c:173
mov al, byte [bp+013h] ; 8a 46 13 ; 0xf6f4c timepci.c:175
cmp AL, strict byte 007h ; 3c 07 ; 0xf6f4f
jnbe near 06f84h ; 0f 87 2f 00 ; 0xf6f51
movzx bx, al ; 0f b6 d8 ; 0xf6f55
add bx, bx ; 01 db ; 0xf6f58
jmp word [cs:bx+06f38h] ; 2e ff a7 38 6f ; 0xf6f5a
cli ; fa ; 0xf6f5f timepci.c:177
mov bx, 0046eh ; bb 6e 04 ; 0xf6f60 timepci.c:178
xor ax, ax ; 31 c0 ; 0xf6f63
mov es, ax ; 8e c0 ; 0xf6f65
mov ax, word [es:bx] ; 26 8b 07 ; 0xf6f67
mov word [bp+010h], ax ; 89 46 10 ; 0xf6f6a
mov bx, 0046ch ; bb 6c 04 ; 0xf6f6d timepci.c:179
mov ax, word [es:bx] ; 26 8b 07 ; 0xf6f70
mov word [bp+00eh], ax ; 89 46 0e ; 0xf6f73
mov bx, 00470h ; bb 70 04 ; 0xf6f76 timepci.c:180
mov al, byte [es:bx] ; 26 8a 07 ; 0xf6f79
mov byte [bp+012h], al ; 88 46 12 ; 0xf6f7c
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf6f7f timepci.c:181
sti ; fb ; 0xf6f83 timepci.c:182
mov sp, bp ; 89 ec ; 0xf6f84 timepci.c:185
pop bp ; 5d ; 0xf6f86
retn ; c3 ; 0xf6f87
cli ; fa ; 0xf6f88 timepci.c:188
mov bx, 0046eh ; bb 6e 04 ; 0xf6f89 timepci.c:189
xor ax, ax ; 31 c0 ; 0xf6f8c
mov es, ax ; 8e c0 ; 0xf6f8e
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf6f90
mov word [es:bx], ax ; 26 89 07 ; 0xf6f93
mov bx, 0046ch ; bb 6c 04 ; 0xf6f96 timepci.c:190
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf6f99
mov word [es:bx], ax ; 26 89 07 ; 0xf6f9c
mov bx, 00470h ; bb 70 04 ; 0xf6f9f timepci.c:191
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf6fa2
sti ; fb ; 0xf6fa6 timepci.c:192
mov byte [bp+013h], 000h ; c6 46 13 00 ; 0xf6fa7 timepci.c:193
jmp short 06f84h ; eb d7 ; 0xf6fab timepci.c:195
call 06e86h ; e8 d6 fe ; 0xf6fad timepci.c:198
test ax, ax ; 85 c0 ; 0xf6fb0
je short 06fb6h ; 74 02 ; 0xf6fb2
jmp short 06f84h ; eb ce ; 0xf6fb4 timepci.c:200
xor ax, ax ; 31 c0 ; 0xf6fb6 timepci.c:203
call 0176ah ; e8 af a7 ; 0xf6fb8
mov byte [bp+00fh], al ; 88 46 0f ; 0xf6fbb
mov ax, strict word 00002h ; b8 02 00 ; 0xf6fbe timepci.c:204
call 0176ah ; e8 a6 a7 ; 0xf6fc1
mov byte [bp+010h], al ; 88 46 10 ; 0xf6fc4
mov ax, strict word 00004h ; b8 04 00 ; 0xf6fc7 timepci.c:205
call 0176ah ; e8 9d a7 ; 0xf6fca
mov bl, al ; 88 c3 ; 0xf6fcd
mov byte [bp+011h], al ; 88 46 11 ; 0xf6fcf
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf6fd2 timepci.c:206
call 0176ah ; e8 92 a7 ; 0xf6fd5
and AL, strict byte 001h ; 24 01 ; 0xf6fd8
mov byte [bp+00eh], al ; 88 46 0e ; 0xf6fda
jmp short 07024h ; eb 45 ; 0xf6fdd
call 06e86h ; e8 a4 fe ; 0xf6fdf timepci.c:223
test ax, ax ; 85 c0 ; 0xf6fe2
je short 06fe9h ; 74 03 ; 0xf6fe4
call 06e5eh ; e8 75 fe ; 0xf6fe6 timepci.c:224
movzx dx, byte [bp+00fh] ; 0f b6 56 0f ; 0xf6fe9 timepci.c:227
xor ax, ax ; 31 c0 ; 0xf6fed
call 01787h ; e8 95 a7 ; 0xf6fef
movzx dx, byte [bp+010h] ; 0f b6 56 10 ; 0xf6ff2 timepci.c:228
mov ax, strict word 00002h ; b8 02 00 ; 0xf6ff6
call 01787h ; e8 8b a7 ; 0xf6ff9
movzx dx, byte [bp+011h] ; 0f b6 56 11 ; 0xf6ffc timepci.c:229
mov ax, strict word 00004h ; b8 04 00 ; 0xf7000
call 01787h ; e8 81 a7 ; 0xf7003
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf7006 timepci.c:231
call 0176ah ; e8 5e a7 ; 0xf7009
mov bl, al ; 88 c3 ; 0xf700c
and bl, 060h ; 80 e3 60 ; 0xf700e
or bl, 002h ; 80 cb 02 ; 0xf7011
mov al, byte [bp+00eh] ; 8a 46 0e ; 0xf7014
and AL, strict byte 001h ; 24 01 ; 0xf7017
or bl, al ; 08 c3 ; 0xf7019
movzx dx, bl ; 0f b6 d3 ; 0xf701b timepci.c:233
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf701e
call 01787h ; e8 63 a7 ; 0xf7021
mov byte [bp+013h], 000h ; c6 46 13 00 ; 0xf7024
mov byte [bp+012h], bl ; 88 5e 12 ; 0xf7028
jmp near 06f84h ; e9 56 ff ; 0xf702b
mov byte [bp+013h], 000h ; c6 46 13 00 ; 0xf702e timepci.c:240
call 06e86h ; e8 51 fe ; 0xf7032 timepci.c:241
test ax, ax ; 85 c0 ; 0xf7035
je short 0703ch ; 74 03 ; 0xf7037
jmp near 06f84h ; e9 48 ff ; 0xf7039 timepci.c:243
mov ax, strict word 00009h ; b8 09 00 ; 0xf703c timepci.c:245
call 0176ah ; e8 28 a7 ; 0xf703f
mov byte [bp+010h], al ; 88 46 10 ; 0xf7042
mov ax, strict word 00008h ; b8 08 00 ; 0xf7045 timepci.c:246
call 0176ah ; e8 1f a7 ; 0xf7048
mov byte [bp+00fh], al ; 88 46 0f ; 0xf704b
mov ax, strict word 00007h ; b8 07 00 ; 0xf704e timepci.c:247
call 0176ah ; e8 16 a7 ; 0xf7051
mov byte [bp+00eh], al ; 88 46 0e ; 0xf7054
mov ax, strict word 00032h ; b8 32 00 ; 0xf7057 timepci.c:248
call 0176ah ; e8 0d a7 ; 0xf705a
mov byte [bp+011h], al ; 88 46 11 ; 0xf705d
mov byte [bp+012h], al ; 88 46 12 ; 0xf7060 timepci.c:249
jmp near 06f84h ; e9 1e ff ; 0xf7063 timepci.c:251
call 06e86h ; e8 1d fe ; 0xf7066 timepci.c:264
test ax, ax ; 85 c0 ; 0xf7069
je short 07073h ; 74 06 ; 0xf706b
call 06e5eh ; e8 ee fd ; 0xf706d timepci.c:265
jmp near 06f84h ; e9 11 ff ; 0xf7070 timepci.c:267
movzx dx, byte [bp+010h] ; 0f b6 56 10 ; 0xf7073 timepci.c:269
mov ax, strict word 00009h ; b8 09 00 ; 0xf7077
call 01787h ; e8 0a a7 ; 0xf707a
movzx dx, byte [bp+00fh] ; 0f b6 56 0f ; 0xf707d timepci.c:270
mov ax, strict word 00008h ; b8 08 00 ; 0xf7081
call 01787h ; e8 00 a7 ; 0xf7084
movzx dx, byte [bp+00eh] ; 0f b6 56 0e ; 0xf7087 timepci.c:271
mov ax, strict word 00007h ; b8 07 00 ; 0xf708b
call 01787h ; e8 f6 a6 ; 0xf708e
movzx dx, byte [bp+011h] ; 0f b6 56 11 ; 0xf7091 timepci.c:272
mov ax, strict word 00032h ; b8 32 00 ; 0xf7095
call 01787h ; e8 ec a6 ; 0xf7098
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf709b timepci.c:273
call 0176ah ; e8 c9 a6 ; 0xf709e
mov bl, al ; 88 c3 ; 0xf70a1
and bl, 07fh ; 80 e3 7f ; 0xf70a3
jmp near 0701bh ; e9 72 ff ; 0xf70a6
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf70a9 timepci.c:291
call 0176ah ; e8 bb a6 ; 0xf70ac
mov bl, al ; 88 c3 ; 0xf70af
mov word [bp+012h], strict word 00000h ; c7 46 12 00 00 ; 0xf70b1 timepci.c:292
test AL, strict byte 020h ; a8 20 ; 0xf70b6 timepci.c:293
je short 070bdh ; 74 03 ; 0xf70b8
jmp near 06f84h ; e9 c7 fe ; 0xf70ba timepci.c:296
call 06e86h ; e8 c6 fd ; 0xf70bd timepci.c:298
test ax, ax ; 85 c0 ; 0xf70c0
je short 070c7h ; 74 03 ; 0xf70c2
call 06e5eh ; e8 97 fd ; 0xf70c4 timepci.c:299
movzx dx, byte [bp+00fh] ; 0f b6 56 0f ; 0xf70c7 timepci.c:302
mov ax, strict word 00001h ; b8 01 00 ; 0xf70cb
call 01787h ; e8 b6 a6 ; 0xf70ce
movzx dx, byte [bp+010h] ; 0f b6 56 10 ; 0xf70d1 timepci.c:303
mov ax, strict word 00003h ; b8 03 00 ; 0xf70d5
call 01787h ; e8 ac a6 ; 0xf70d8
movzx dx, byte [bp+011h] ; 0f b6 56 11 ; 0xf70db timepci.c:304
mov ax, strict word 00005h ; b8 05 00 ; 0xf70df
call 01787h ; e8 a2 a6 ; 0xf70e2
mov dx, 000a1h ; ba a1 00 ; 0xf70e5 timepci.c:305
in AL, DX ; ec ; 0xf70e8
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf70e9
and AL, strict byte 0feh ; 24 fe ; 0xf70eb
out DX, AL ; ee ; 0xf70ed
mov al, bl ; 88 d8 ; 0xf70ee timepci.c:307
and AL, strict byte 05fh ; 24 5f ; 0xf70f0
or AL, strict byte 020h ; 0c 20 ; 0xf70f2
movzx dx, al ; 0f b6 d0 ; 0xf70f4
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf70f7
call 01787h ; e8 8a a6 ; 0xf70fa
jmp near 06f84h ; e9 84 fe ; 0xf70fd timepci.c:309
mov ax, strict word 0000bh ; b8 0b 00 ; 0xf7100 timepci.c:322
call 0176ah ; e8 64 a6 ; 0xf7103
mov bl, al ; 88 c3 ; 0xf7106
and AL, strict byte 057h ; 24 57 ; 0xf7108 timepci.c:324
movzx dx, al ; 0f b6 d0 ; 0xf710a
jmp near 0701eh ; e9 0e ff ; 0xf710d
; disGetNextSymbol 0xf7110 LB 0x3d0c -> off=0x0 cb=0000000000000034 uValue=00000000000f5b10 'send_to_mouse_ctrl'
send_to_mouse_ctrl: ; 0xf7110 LB 0x34
push bp ; 55 ; 0xf7110 ps2mouse.c:87
mov bp, sp ; 89 e5 ; 0xf7111
push bx ; 53 ; 0xf7113
push dx ; 52 ; 0xf7114
mov bl, al ; 88 c3 ; 0xf7115
mov dx, strict word 00064h ; ba 64 00 ; 0xf7117 ps2mouse.c:91
in AL, DX ; ec ; 0xf711a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf711b
test AL, strict byte 002h ; a8 02 ; 0xf711d
je short 0712fh ; 74 0e ; 0xf711f
push 0097eh ; 68 7e 09 ; 0xf7121 ps2mouse.c:92
push 011deh ; 68 de 11 ; 0xf7124
push strict byte 00007h ; 6a 07 ; 0xf7127
call 01a68h ; e8 3c a9 ; 0xf7129
add sp, strict byte 00006h ; 83 c4 06 ; 0xf712c
mov AL, strict byte 0d4h ; b0 d4 ; 0xf712f ps2mouse.c:93
mov dx, strict word 00064h ; ba 64 00 ; 0xf7131
out DX, AL ; ee ; 0xf7134
mov al, bl ; 88 d8 ; 0xf7135 ps2mouse.c:94
mov dx, strict word 00060h ; ba 60 00 ; 0xf7137
out DX, AL ; ee ; 0xf713a
xor al, bl ; 30 d8 ; 0xf713b ps2mouse.c:96
lea sp, [bp-004h] ; 8d 66 fc ; 0xf713d
pop dx ; 5a ; 0xf7140
pop bx ; 5b ; 0xf7141
pop bp ; 5d ; 0xf7142
retn ; c3 ; 0xf7143
; disGetNextSymbol 0xf7144 LB 0x3cd8 -> off=0x0 cb=000000000000005c uValue=00000000000f5b44 'get_mouse_data'
get_mouse_data: ; 0xf7144 LB 0x5c
push bp ; 55 ; 0xf7144 ps2mouse.c:99
mov bp, sp ; 89 e5 ; 0xf7145
push bx ; 53 ; 0xf7147
push cx ; 51 ; 0xf7148
push ax ; 50 ; 0xf7149
mov bx, ax ; 89 c3 ; 0xf714a
mov es, dx ; 8e c2 ; 0xf714c
mov cx, 02710h ; b9 10 27 ; 0xf714e ps2mouse.c:101
mov dx, strict word 00064h ; ba 64 00 ; 0xf7151 ps2mouse.c:104
in AL, DX ; ec ; 0xf7154
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf7155
and ax, strict word 00021h ; 25 21 00 ; 0xf7157
cmp ax, strict word 00021h ; 3d 21 00 ; 0xf715a
je short 07186h ; 74 27 ; 0xf715d
test cx, cx ; 85 c9 ; 0xf715f
je short 07186h ; 74 23 ; 0xf7161
mov dx, strict word 00061h ; ba 61 00 ; 0xf7163 ps2mouse.c:107
in AL, DX ; ec ; 0xf7166
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf7167
and AL, strict byte 010h ; 24 10 ; 0xf7169
mov byte [bp-006h], al ; 88 46 fa ; 0xf716b
mov dx, strict word 00061h ; ba 61 00 ; 0xf716e ps2mouse.c:108
in AL, DX ; ec ; 0xf7171
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf7172
mov dx, ax ; 89 c2 ; 0xf7174
xor dh, ah ; 30 e6 ; 0xf7176
and dl, 010h ; 80 e2 10 ; 0xf7178
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf717b
cmp dx, ax ; 39 c2 ; 0xf717f
je short 0716eh ; 74 eb ; 0xf7181
dec cx ; 49 ; 0xf7183 ps2mouse.c:110
jmp short 07151h ; eb cb ; 0xf7184 ps2mouse.c:111
test cx, cx ; 85 c9 ; 0xf7186 ps2mouse.c:113
jne short 0718eh ; 75 04 ; 0xf7188
mov AL, strict byte 001h ; b0 01 ; 0xf718a ps2mouse.c:114
jmp short 07199h ; eb 0b ; 0xf718c
mov dx, strict word 00060h ; ba 60 00 ; 0xf718e ps2mouse.c:116
in AL, DX ; ec ; 0xf7191
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf7192
mov byte [es:bx], al ; 26 88 07 ; 0xf7194 ps2mouse.c:117
xor al, al ; 30 c0 ; 0xf7197 ps2mouse.c:118
lea sp, [bp-004h] ; 8d 66 fc ; 0xf7199 ps2mouse.c:119
pop cx ; 59 ; 0xf719c
pop bx ; 5b ; 0xf719d
pop bp ; 5d ; 0xf719e
retn ; c3 ; 0xf719f
; disGetNextSymbol 0xf71a0 LB 0x3c7c -> off=0x0 cb=0000000000000032 uValue=00000000000f5ba0 'set_kbd_command_byte'
set_kbd_command_byte: ; 0xf71a0 LB 0x32
push bp ; 55 ; 0xf71a0 ps2mouse.c:121
mov bp, sp ; 89 e5 ; 0xf71a1
push bx ; 53 ; 0xf71a3
push dx ; 52 ; 0xf71a4
mov bl, al ; 88 c3 ; 0xf71a5
mov dx, strict word 00064h ; ba 64 00 ; 0xf71a7 ps2mouse.c:123
in AL, DX ; ec ; 0xf71aa
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf71ab
test AL, strict byte 002h ; a8 02 ; 0xf71ad
je short 071bfh ; 74 0e ; 0xf71af
push 00988h ; 68 88 09 ; 0xf71b1 ps2mouse.c:124
push 011deh ; 68 de 11 ; 0xf71b4
push strict byte 00007h ; 6a 07 ; 0xf71b7
call 01a68h ; e8 ac a8 ; 0xf71b9
add sp, strict byte 00006h ; 83 c4 06 ; 0xf71bc
mov AL, strict byte 060h ; b0 60 ; 0xf71bf ps2mouse.c:126
mov dx, strict word 00064h ; ba 64 00 ; 0xf71c1
out DX, AL ; ee ; 0xf71c4
mov al, bl ; 88 d8 ; 0xf71c5 ps2mouse.c:127
mov dx, strict word 00060h ; ba 60 00 ; 0xf71c7
out DX, AL ; ee ; 0xf71ca
lea sp, [bp-004h] ; 8d 66 fc ; 0xf71cb ps2mouse.c:128
pop dx ; 5a ; 0xf71ce
pop bx ; 5b ; 0xf71cf
pop bp ; 5d ; 0xf71d0
retn ; c3 ; 0xf71d1
; disGetNextSymbol 0xf71d2 LB 0x3c4a -> off=0x0 cb=0000000000000094 uValue=00000000000f5bd2 'int74_function'
int74_function: ; 0xf71d2 LB 0x94
push bp ; 55 ; 0xf71d2 ps2mouse.c:131
mov bp, sp ; 89 e5 ; 0xf71d3
push si ; 56 ; 0xf71d5
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf71d6 ps2mouse.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf71d9
mov es, ax ; 8e c0 ; 0xf71dc
mov bx, word [es:bx] ; 26 8b 1f ; 0xf71de
mov word [bp+004h], strict word 00000h ; c7 46 04 00 00 ; 0xf71e1 ps2mouse.c:139
mov dx, strict word 00064h ; ba 64 00 ; 0xf71e6 ps2mouse.c:141
in AL, DX ; ec ; 0xf71e9
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf71ea
and AL, strict byte 021h ; 24 21 ; 0xf71ec ps2mouse.c:142
cmp AL, strict byte 021h ; 3c 21 ; 0xf71ee
jne short 07260h ; 75 6e ; 0xf71f0
mov dx, strict word 00060h ; ba 60 00 ; 0xf71f2 ps2mouse.c:145
in AL, DX ; ec ; 0xf71f5
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf71f6
mov cl, al ; 88 c1 ; 0xf71f8
mov si, strict word 00026h ; be 26 00 ; 0xf71fa ps2mouse.c:48
mov es, bx ; 8e c3 ; 0xf71fd
mov al, byte [es:si] ; 26 8a 04 ; 0xf71ff
mov si, strict word 00027h ; be 27 00 ; 0xf7202 ps2mouse.c:48
mov ah, byte [es:si] ; 26 8a 24 ; 0xf7205
mov dl, ah ; 88 e2 ; 0xf7208 ps2mouse.c:49
test ah, 080h ; f6 c4 80 ; 0xf720a ps2mouse.c:151
je short 07260h ; 74 51 ; 0xf720d
mov dh, dl ; 88 d6 ; 0xf720f ps2mouse.c:155
and dh, 007h ; 80 e6 07 ; 0xf7211
mov ah, al ; 88 c4 ; 0xf7214 ps2mouse.c:156
and ah, 007h ; 80 e4 07 ; 0xf7216
movzx si, ah ; 0f b6 f4 ; 0xf7219 ps2mouse.c:157
add si, strict byte 00028h ; 83 c6 28 ; 0xf721c
mov es, bx ; 8e c3 ; 0xf721f ps2mouse.c:53
mov byte [es:si], cl ; 26 88 0c ; 0xf7221
cmp ah, dh ; 38 f4 ; 0xf7224 ps2mouse.c:159
jc short 07256h ; 72 2e ; 0xf7226
mov si, strict word 00028h ; be 28 00 ; 0xf7228 ps2mouse.c:48
mov al, byte [es:si] ; 26 8a 04 ; 0xf722b
xor ah, ah ; 30 e4 ; 0xf722e ps2mouse.c:49
mov word [bp+00ch], ax ; 89 46 0c ; 0xf7230
mov si, strict word 00029h ; be 29 00 ; 0xf7233 ps2mouse.c:48
mov al, byte [es:si] ; 26 8a 04 ; 0xf7236
mov word [bp+00ah], ax ; 89 46 0a ; 0xf7239 ps2mouse.c:49
mov si, strict word 0002ah ; be 2a 00 ; 0xf723c ps2mouse.c:48
mov al, byte [es:si] ; 26 8a 04 ; 0xf723f
mov word [bp+008h], ax ; 89 46 08 ; 0xf7242 ps2mouse.c:49
xor al, al ; 30 c0 ; 0xf7245 ps2mouse.c:164
mov word [bp+006h], ax ; 89 46 06 ; 0xf7247
test dl, 080h ; f6 c2 80 ; 0xf724a ps2mouse.c:167
je short 07258h ; 74 09 ; 0xf724d
mov word [bp+004h], strict word 00001h ; c7 46 04 01 00 ; 0xf724f ps2mouse.c:168
jmp short 07258h ; eb 02 ; 0xf7254 ps2mouse.c:170
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf7256 ps2mouse.c:171
mov si, strict word 00026h ; be 26 00 ; 0xf7258 ps2mouse.c:53
mov es, bx ; 8e c3 ; 0xf725b
mov byte [es:si], al ; 26 88 04 ; 0xf725d
lea sp, [bp-002h] ; 8d 66 fe ; 0xf7260 ps2mouse.c:174
pop si ; 5e ; 0xf7263
pop bp ; 5d ; 0xf7264
retn ; c3 ; 0xf7265
; disGetNextSymbol 0xf7266 LB 0x3bb6 -> off=0x10 cb=0000000000000370 uValue=00000000000f5c76 'int15_function_mouse'
db 0b9h, 072h, 027h, 073h, 0a2h, 073h, 033h, 074h, 0a1h, 074h, 005h, 073h, 0c9h, 074h, 08eh, 075h
int15_function_mouse: ; 0xf7276 LB 0x370
push bp ; 55 ; 0xf7276 ps2mouse.c:176
mov bp, sp ; 89 e5 ; 0xf7277
sub sp, strict byte 00006h ; 83 ec 06 ; 0xf7279
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf727c ps2mouse.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf727f
mov es, ax ; 8e c0 ; 0xf7282
mov dx, word [es:bx] ; 26 8b 17 ; 0xf7284
cmp byte [bp+012h], 007h ; 80 7e 12 07 ; 0xf7287 ps2mouse.c:198
jbe short 07298h ; 76 0b ; 0xf728b
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf728d ps2mouse.c:201
mov byte [bp+013h], 001h ; c6 46 13 01 ; 0xf7291 ps2mouse.c:202
jmp near 075e2h ; e9 4a 03 ; 0xf7295 ps2mouse.c:203
mov ax, strict word 00065h ; b8 65 00 ; 0xf7298 ps2mouse.c:207
call 071a0h ; e8 02 ff ; 0xf729b
and word [bp+018h], strict byte 0fffeh ; 83 66 18 fe ; 0xf729e ps2mouse.c:208
mov byte [bp+013h], 000h ; c6 46 13 00 ; 0xf72a2 ps2mouse.c:209
mov al, byte [bp+012h] ; 8a 46 12 ; 0xf72a6 ps2mouse.c:211
cmp AL, strict byte 007h ; 3c 07 ; 0xf72a9
jnbe near 075c9h ; 0f 87 1a 03 ; 0xf72ab
movzx bx, al ; 0f b6 d8 ; 0xf72af
add bx, bx ; 01 db ; 0xf72b2
jmp word [cs:bx+07266h] ; 2e ff a7 66 72 ; 0xf72b4
cmp byte [bp+00dh], 001h ; 80 7e 0d 01 ; 0xf72b9 ps2mouse.c:214
jnbe near 075d4h ; 0f 87 13 03 ; 0xf72bd
mov bx, strict word 00027h ; bb 27 00 ; 0xf72c1 ps2mouse.c:48
mov es, dx ; 8e c2 ; 0xf72c4
mov al, byte [es:bx] ; 26 8a 07 ; 0xf72c6
test AL, strict byte 080h ; a8 80 ; 0xf72c9 ps2mouse.c:222
jne short 072d8h ; 75 0b ; 0xf72cb
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf72cd ps2mouse.c:224
mov byte [bp+013h], 005h ; c6 46 13 05 ; 0xf72d1 ps2mouse.c:225
jmp near 075dch ; e9 04 03 ; 0xf72d5 ps2mouse.c:226
cmp byte [bp+00dh], 000h ; 80 7e 0d 00 ; 0xf72d8 ps2mouse.c:228
db 00fh, 094h, 0c0h
; sete al ; 0f 94 c0 ; 0xf72dc
add AL, strict byte 0f4h ; 04 f4 ; 0xf72df
xor ah, ah ; 30 e4 ; 0xf72e1 ps2mouse.c:236
call 07110h ; e8 2a fe ; 0xf72e3
test al, al ; 84 c0 ; 0xf72e6 ps2mouse.c:237
jne near 0756ah ; 0f 85 7e 02 ; 0xf72e8
mov dx, ss ; 8c d2 ; 0xf72ec ps2mouse.c:238
lea ax, [bp-006h] ; 8d 46 fa ; 0xf72ee
call 07144h ; e8 50 fe ; 0xf72f1
test al, al ; 84 c0 ; 0xf72f4 ps2mouse.c:239
je near 075dch ; 0f 84 e2 02 ; 0xf72f6
cmp byte [bp-006h], 0fah ; 80 7e fa fa ; 0xf72fa
jne near 0756ah ; 0f 85 68 02 ; 0xf72fe
jmp near 075dch ; e9 d7 02 ; 0xf7302 ps2mouse.c:241
mov al, byte [bp+00dh] ; 8a 46 0d ; 0xf7305 ps2mouse.c:252
cmp AL, strict byte 001h ; 3c 01 ; 0xf7308
jc short 07310h ; 72 04 ; 0xf730a
cmp AL, strict byte 008h ; 3c 08 ; 0xf730c
jbe short 07313h ; 76 03 ; 0xf730e
jmp near 07496h ; e9 83 01 ; 0xf7310
mov bx, strict word 00027h ; bb 27 00 ; 0xf7313 ps2mouse.c:48
mov es, dx ; 8e c2 ; 0xf7316
mov al, byte [es:bx] ; 26 8a 07 ; 0xf7318
mov ah, byte [bp+00dh] ; 8a 66 0d ; 0xf731b ps2mouse.c:258
db 0feh, 0cch
; dec ah ; fe cc ; 0xf731e
and AL, strict byte 0f8h ; 24 f8 ; 0xf7320
or al, ah ; 08 e0 ; 0xf7322
mov byte [es:bx], al ; 26 88 07 ; 0xf7324 ps2mouse.c:53
mov bx, strict word 00026h ; bb 26 00 ; 0xf7327 ps2mouse.c:48
mov es, dx ; 8e c2 ; 0xf732a
mov al, byte [es:bx] ; 26 8a 07 ; 0xf732c
and AL, strict byte 0f8h ; 24 f8 ; 0xf732f ps2mouse.c:266
mov byte [es:bx], al ; 26 88 07 ; 0xf7331 ps2mouse.c:53
mov ax, 000ffh ; b8 ff 00 ; 0xf7334 ps2mouse.c:268
call 07110h ; e8 d6 fd ; 0xf7337
test al, al ; 84 c0 ; 0xf733a ps2mouse.c:269
jne near 0756ah ; 0f 85 2a 02 ; 0xf733c
mov dx, ss ; 8c d2 ; 0xf7340 ps2mouse.c:270
lea ax, [bp-004h] ; 8d 46 fc ; 0xf7342
call 07144h ; e8 fc fd ; 0xf7345
mov dl, al ; 88 c2 ; 0xf7348
cmp byte [bp-004h], 0feh ; 80 7e fc fe ; 0xf734a ps2mouse.c:272
jne short 0735bh ; 75 0b ; 0xf734e
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf7350 ps2mouse.c:273
mov byte [bp+013h], 004h ; c6 46 13 04 ; 0xf7354 ps2mouse.c:274
jmp near 075dch ; e9 81 02 ; 0xf7358 ps2mouse.c:275
cmp byte [bp-004h], 0fah ; 80 7e fc fa ; 0xf735b ps2mouse.c:277
je short 07371h ; 74 10 ; 0xf735f
movzx ax, byte [bp-004h] ; 0f b6 46 fc ; 0xf7361 ps2mouse.c:278
push ax ; 50 ; 0xf7365
push 00993h ; 68 93 09 ; 0xf7366
push strict byte 00007h ; 6a 07 ; 0xf7369
call 01a68h ; e8 fa a6 ; 0xf736b
add sp, strict byte 00006h ; 83 c4 06 ; 0xf736e
test dl, dl ; 84 d2 ; 0xf7371 ps2mouse.c:279
jne near 0756ah ; 0f 85 f3 01 ; 0xf7373
mov dx, ss ; 8c d2 ; 0xf7377 ps2mouse.c:280
lea ax, [bp-006h] ; 8d 46 fa ; 0xf7379
call 07144h ; e8 c5 fd ; 0xf737c
test al, al ; 84 c0 ; 0xf737f ps2mouse.c:281
jne near 0756ah ; 0f 85 e5 01 ; 0xf7381
mov dx, ss ; 8c d2 ; 0xf7385 ps2mouse.c:282
lea ax, [bp-002h] ; 8d 46 fe ; 0xf7387
call 07144h ; e8 b7 fd ; 0xf738a
test al, al ; 84 c0 ; 0xf738d ps2mouse.c:283
jne near 0756ah ; 0f 85 d7 01 ; 0xf738f
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf7393 ps2mouse.c:285
mov byte [bp+00ch], al ; 88 46 0c ; 0xf7396
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf7399 ps2mouse.c:286
mov byte [bp+00dh], al ; 88 46 0d ; 0xf739c
jmp near 075dch ; e9 3a 02 ; 0xf739f ps2mouse.c:287
mov al, byte [bp+00dh] ; 8a 46 0d ; 0xf73a2 ps2mouse.c:300
cmp AL, strict byte 003h ; 3c 03 ; 0xf73a5
jc short 073b9h ; 72 10 ; 0xf73a7
jbe short 073d7h ; 76 2c ; 0xf73a9
cmp AL, strict byte 006h ; 3c 06 ; 0xf73ab
je short 073e9h ; 74 3a ; 0xf73ad
cmp AL, strict byte 005h ; 3c 05 ; 0xf73af
je short 073e3h ; 74 30 ; 0xf73b1
cmp AL, strict byte 004h ; 3c 04 ; 0xf73b3
je short 073ddh ; 74 26 ; 0xf73b5
jmp short 073efh ; eb 36 ; 0xf73b7
cmp AL, strict byte 002h ; 3c 02 ; 0xf73b9
je short 073d1h ; 74 14 ; 0xf73bb
cmp AL, strict byte 001h ; 3c 01 ; 0xf73bd
je short 073cbh ; 74 0a ; 0xf73bf
test al, al ; 84 c0 ; 0xf73c1
jne short 073efh ; 75 2a ; 0xf73c3
mov byte [bp-006h], 00ah ; c6 46 fa 0a ; 0xf73c5 ps2mouse.c:301
jmp short 073f3h ; eb 28 ; 0xf73c9
mov byte [bp-006h], 014h ; c6 46 fa 14 ; 0xf73cb ps2mouse.c:302
jmp short 073f3h ; eb 22 ; 0xf73cf
mov byte [bp-006h], 028h ; c6 46 fa 28 ; 0xf73d1 ps2mouse.c:303
jmp short 073f3h ; eb 1c ; 0xf73d5
mov byte [bp-006h], 03ch ; c6 46 fa 3c ; 0xf73d7 ps2mouse.c:304
jmp short 073f3h ; eb 16 ; 0xf73db
mov byte [bp-006h], 050h ; c6 46 fa 50 ; 0xf73dd ps2mouse.c:305
jmp short 073f3h ; eb 10 ; 0xf73e1
mov byte [bp-006h], 064h ; c6 46 fa 64 ; 0xf73e3 ps2mouse.c:306
jmp short 073f3h ; eb 0a ; 0xf73e7
mov byte [bp-006h], 0c8h ; c6 46 fa c8 ; 0xf73e9 ps2mouse.c:307
jmp short 073f3h ; eb 04 ; 0xf73ed
mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xf73ef ps2mouse.c:308
cmp byte [bp-006h], 000h ; 80 7e fa 00 ; 0xf73f3 ps2mouse.c:310
jbe short 07428h ; 76 2f ; 0xf73f7
mov ax, 000f3h ; b8 f3 00 ; 0xf73f9 ps2mouse.c:311
call 07110h ; e8 11 fd ; 0xf73fc
test al, al ; 84 c0 ; 0xf73ff ps2mouse.c:312
jne short 0741dh ; 75 1a ; 0xf7401
mov dx, ss ; 8c d2 ; 0xf7403 ps2mouse.c:313
lea ax, [bp-002h] ; 8d 46 fe ; 0xf7405
call 07144h ; e8 39 fd ; 0xf7408
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf740b ps2mouse.c:314
call 07110h ; e8 fe fc ; 0xf740f
mov dx, ss ; 8c d2 ; 0xf7412 ps2mouse.c:315
lea ax, [bp-002h] ; 8d 46 fe ; 0xf7414
call 07144h ; e8 2a fd ; 0xf7417
jmp near 075dch ; e9 bf 01 ; 0xf741a ps2mouse.c:317
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf741d ps2mouse.c:319
mov byte [bp+013h], 003h ; c6 46 13 03 ; 0xf7421 ps2mouse.c:320
jmp near 075dch ; e9 b4 01 ; 0xf7425 ps2mouse.c:322
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf7428 ps2mouse.c:324
mov byte [bp+013h], 002h ; c6 46 13 02 ; 0xf742c ps2mouse.c:325
jmp near 075dch ; e9 a9 01 ; 0xf7430 ps2mouse.c:327
cmp byte [bp+00dh], 004h ; 80 7e 0d 04 ; 0xf7433 ps2mouse.c:336
jnc short 07496h ; 73 5d ; 0xf7437
mov ax, 000e8h ; b8 e8 00 ; 0xf7439 ps2mouse.c:337
call 07110h ; e8 d1 fc ; 0xf743c
test al, al ; 84 c0 ; 0xf743f ps2mouse.c:338
jne short 0748bh ; 75 48 ; 0xf7441
mov dx, ss ; 8c d2 ; 0xf7443 ps2mouse.c:339
lea ax, [bp-006h] ; 8d 46 fa ; 0xf7445
call 07144h ; e8 f9 fc ; 0xf7448
cmp byte [bp-006h], 0fah ; 80 7e fa fa ; 0xf744b ps2mouse.c:340
je short 07461h ; 74 10 ; 0xf744f
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7451 ps2mouse.c:341
push ax ; 50 ; 0xf7455
push 009beh ; 68 be 09 ; 0xf7456
push strict byte 00007h ; 6a 07 ; 0xf7459
call 01a68h ; e8 0a a6 ; 0xf745b
add sp, strict byte 00006h ; 83 c4 06 ; 0xf745e
movzx ax, byte [bp+00dh] ; 0f b6 46 0d ; 0xf7461 ps2mouse.c:342
call 07110h ; e8 a8 fc ; 0xf7465
mov dx, ss ; 8c d2 ; 0xf7468 ps2mouse.c:343
lea ax, [bp-006h] ; 8d 46 fa ; 0xf746a
call 07144h ; e8 d4 fc ; 0xf746d
cmp byte [bp-006h], 0fah ; 80 7e fa fa ; 0xf7470 ps2mouse.c:344
je near 075dch ; 0f 84 64 01 ; 0xf7474
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7478 ps2mouse.c:345
push ax ; 50 ; 0xf747c
push 009beh ; 68 be 09 ; 0xf747d
push strict byte 00007h ; 6a 07 ; 0xf7480
call 01a68h ; e8 e3 a5 ; 0xf7482
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7485
jmp near 075dch ; e9 51 01 ; 0xf7488 ps2mouse.c:347
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf748b ps2mouse.c:349
mov byte [bp+013h], 003h ; c6 46 13 03 ; 0xf748f ps2mouse.c:350
jmp near 075dch ; e9 46 01 ; 0xf7493 ps2mouse.c:352
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf7496 ps2mouse.c:354
mov byte [bp+013h], 002h ; c6 46 13 02 ; 0xf749a ps2mouse.c:355
jmp near 075dch ; e9 3b 01 ; 0xf749e ps2mouse.c:357
mov ax, 000f2h ; b8 f2 00 ; 0xf74a1 ps2mouse.c:361
call 07110h ; e8 69 fc ; 0xf74a4
test al, al ; 84 c0 ; 0xf74a7 ps2mouse.c:362
jne short 074beh ; 75 13 ; 0xf74a9
mov dx, ss ; 8c d2 ; 0xf74ab ps2mouse.c:363
lea ax, [bp-006h] ; 8d 46 fa ; 0xf74ad
call 07144h ; e8 91 fc ; 0xf74b0
mov dx, ss ; 8c d2 ; 0xf74b3 ps2mouse.c:364
lea ax, [bp-002h] ; 8d 46 fe ; 0xf74b5
call 07144h ; e8 89 fc ; 0xf74b8
jmp near 07399h ; e9 db fe ; 0xf74bb
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf74be ps2mouse.c:365
mov byte [bp+013h], 003h ; c6 46 13 03 ; 0xf74c2 ps2mouse.c:370
jmp near 075dch ; e9 13 01 ; 0xf74c6 ps2mouse.c:372
mov al, byte [bp+00dh] ; 8a 46 0d ; 0xf74c9 ps2mouse.c:376
test al, al ; 84 c0 ; 0xf74cc
jbe short 074d7h ; 76 07 ; 0xf74ce
cmp AL, strict byte 002h ; 3c 02 ; 0xf74d0
jbe short 07540h ; 76 6c ; 0xf74d2
jmp near 07574h ; e9 9d 00 ; 0xf74d4
mov ax, 000e9h ; b8 e9 00 ; 0xf74d7 ps2mouse.c:378
call 07110h ; e8 33 fc ; 0xf74da
test al, al ; 84 c0 ; 0xf74dd ps2mouse.c:379
jne near 0756ah ; 0f 85 87 00 ; 0xf74df
mov dx, ss ; 8c d2 ; 0xf74e3 ps2mouse.c:380
lea ax, [bp-006h] ; 8d 46 fa ; 0xf74e5
call 07144h ; e8 59 fc ; 0xf74e8
mov dl, al ; 88 c2 ; 0xf74eb
cmp byte [bp-006h], 0fah ; 80 7e fa fa ; 0xf74ed ps2mouse.c:381
je short 07503h ; 74 10 ; 0xf74f1
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf74f3 ps2mouse.c:382
push ax ; 50 ; 0xf74f7
push 009beh ; 68 be 09 ; 0xf74f8
push strict byte 00007h ; 6a 07 ; 0xf74fb
call 01a68h ; e8 68 a5 ; 0xf74fd
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7500
test dl, dl ; 84 d2 ; 0xf7503 ps2mouse.c:383
jne short 0756ah ; 75 63 ; 0xf7505
mov dx, ss ; 8c d2 ; 0xf7507 ps2mouse.c:384
lea ax, [bp-006h] ; 8d 46 fa ; 0xf7509
call 07144h ; e8 35 fc ; 0xf750c
test al, al ; 84 c0 ; 0xf750f ps2mouse.c:385
jne short 0756ah ; 75 57 ; 0xf7511
mov dx, ss ; 8c d2 ; 0xf7513 ps2mouse.c:386
lea ax, [bp-002h] ; 8d 46 fe ; 0xf7515
call 07144h ; e8 29 fc ; 0xf7518
test al, al ; 84 c0 ; 0xf751b ps2mouse.c:387
jne short 0756ah ; 75 4b ; 0xf751d
mov dx, ss ; 8c d2 ; 0xf751f ps2mouse.c:388
lea ax, [bp-004h] ; 8d 46 fc ; 0xf7521
call 07144h ; e8 1d fc ; 0xf7524
test al, al ; 84 c0 ; 0xf7527 ps2mouse.c:389
jne short 0756ah ; 75 3f ; 0xf7529
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf752b ps2mouse.c:390
mov byte [bp+00ch], al ; 88 46 0c ; 0xf752e
mov al, byte [bp-002h] ; 8a 46 fe ; 0xf7531 ps2mouse.c:391
mov byte [bp+010h], al ; 88 46 10 ; 0xf7534
mov al, byte [bp-004h] ; 8a 46 fc ; 0xf7537 ps2mouse.c:392
mov byte [bp+00eh], al ; 88 46 0e ; 0xf753a
jmp near 075dch ; e9 9c 00 ; 0xf753d ps2mouse.c:394
cmp AL, strict byte 001h ; 3c 01 ; 0xf7540 ps2mouse.c:408
jne short 07549h ; 75 05 ; 0xf7542
mov ax, 000e6h ; b8 e6 00 ; 0xf7544 ps2mouse.c:409
jmp short 0754ch ; eb 03 ; 0xf7547 ps2mouse.c:410
mov ax, 000e7h ; b8 e7 00 ; 0xf7549 ps2mouse.c:411
call 07110h ; e8 c1 fb ; 0xf754c
mov dl, al ; 88 c2 ; 0xf754f
test dl, dl ; 84 d2 ; 0xf7551 ps2mouse.c:413
jne short 07564h ; 75 0f ; 0xf7553
mov dx, ss ; 8c d2 ; 0xf7555 ps2mouse.c:414
lea ax, [bp-006h] ; 8d 46 fa ; 0xf7557
call 07144h ; e8 e7 fb ; 0xf755a
cmp byte [bp-006h], 0fah ; 80 7e fa fa ; 0xf755d ps2mouse.c:415
db 00fh, 095h, 0c2h
; setne dl ; 0f 95 c2 ; 0xf7561
test dl, dl ; 84 d2 ; 0xf7564 ps2mouse.c:417
je near 075dch ; 0f 84 72 00 ; 0xf7566
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf756a ps2mouse.c:419
mov byte [bp+013h], 003h ; c6 46 13 03 ; 0xf756e ps2mouse.c:420
jmp short 075dch ; eb 68 ; 0xf7572 ps2mouse.c:422
movzx ax, byte [bp+00dh] ; 0f b6 46 0d ; 0xf7574 ps2mouse.c:425
push ax ; 50 ; 0xf7578
push 009eah ; 68 ea 09 ; 0xf7579
push strict byte 00007h ; 6a 07 ; 0xf757c
call 01a68h ; e8 e7 a4 ; 0xf757e
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7581
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf7584 ps2mouse.c:427
mov byte [bp+013h], 001h ; c6 46 13 01 ; 0xf7588 ps2mouse.c:428
jmp short 075dch ; eb 4e ; 0xf758c ps2mouse.c:430
mov cx, word [bp+00ch] ; 8b 4e 0c ; 0xf758e ps2mouse.c:435
mov bx, strict word 00022h ; bb 22 00 ; 0xf7591 ps2mouse.c:63
mov es, dx ; 8e c2 ; 0xf7594
mov word [es:bx], cx ; 26 89 0f ; 0xf7596
mov bx, strict word 00024h ; bb 24 00 ; 0xf7599 ps2mouse.c:63
mov ax, word [bp+014h] ; 8b 46 14 ; 0xf759c
mov word [es:bx], ax ; 26 89 07 ; 0xf759f
mov bx, strict word 00027h ; bb 27 00 ; 0xf75a2 ps2mouse.c:48
mov bl, byte [es:bx] ; 26 8a 1f ; 0xf75a5
mov al, bl ; 88 d8 ; 0xf75a8 ps2mouse.c:49
test cx, cx ; 85 c9 ; 0xf75aa ps2mouse.c:439
jne short 075bdh ; 75 0f ; 0xf75ac
cmp word [bp+014h], strict byte 00000h ; 83 7e 14 00 ; 0xf75ae
jne short 075bdh ; 75 09 ; 0xf75b2
test bl, 080h ; f6 c3 80 ; 0xf75b4 ps2mouse.c:441
je short 075bfh ; 74 06 ; 0xf75b7
and AL, strict byte 07fh ; 24 7f ; 0xf75b9 ps2mouse.c:442
jmp short 075bfh ; eb 02 ; 0xf75bb ps2mouse.c:445
or AL, strict byte 080h ; 0c 80 ; 0xf75bd ps2mouse.c:447
mov bx, strict word 00027h ; bb 27 00 ; 0xf75bf ps2mouse.c:53
mov es, dx ; 8e c2 ; 0xf75c2
mov byte [es:bx], al ; 26 88 07 ; 0xf75c4
jmp short 075dch ; eb 13 ; 0xf75c7 ps2mouse.c:450
push 00a04h ; 68 04 0a ; 0xf75c9 ps2mouse.c:453
push strict byte 00007h ; 6a 07 ; 0xf75cc
call 01a68h ; e8 97 a4 ; 0xf75ce
add sp, strict byte 00004h ; 83 c4 04 ; 0xf75d1
or word [bp+018h], strict byte 00001h ; 83 4e 18 01 ; 0xf75d4 ps2mouse.c:455
mov byte [bp+013h], 001h ; c6 46 13 01 ; 0xf75d8 ps2mouse.c:456
mov ax, strict word 00047h ; b8 47 00 ; 0xf75dc ps2mouse.c:460
call 071a0h ; e8 be fb ; 0xf75df
mov sp, bp ; 89 ec ; 0xf75e2 ps2mouse.c:461
pop bp ; 5d ; 0xf75e4
retn ; c3 ; 0xf75e5
; disGetNextSymbol 0xf75e6 LB 0x3836 -> off=0x0 cb=00000000000000b2 uValue=00000000000f5fe6 'int17_function'
int17_function: ; 0xf75e6 LB 0xb2
push bp ; 55 ; 0xf75e6 parallel.c:70
mov bp, sp ; 89 e5 ; 0xf75e7
push si ; 56 ; 0xf75e9
push di ; 57 ; 0xf75ea
push ax ; 50 ; 0xf75eb
sti ; fb ; 0xf75ec parallel.c:75
mov bx, word [bp+00eh] ; 8b 5e 0e ; 0xf75ed parallel.c:77
add bx, bx ; 01 db ; 0xf75f0
add bx, strict byte 00008h ; 83 c3 08 ; 0xf75f2
mov ax, strict word 00040h ; b8 40 00 ; 0xf75f5 parallel.c:58
mov es, ax ; 8e c0 ; 0xf75f8
mov bx, word [es:bx] ; 26 8b 1f ; 0xf75fa
mov si, bx ; 89 de ; 0xf75fd parallel.c:59
cmp byte [bp+013h], 003h ; 80 7e 13 03 ; 0xf75ff parallel.c:78
jnc near 0768dh ; 0f 83 86 00 ; 0xf7603
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf7607
cmp ax, strict word 00003h ; 3d 03 00 ; 0xf760a
jnc near 0768dh ; 0f 83 7c 00 ; 0xf760d
test bx, bx ; 85 db ; 0xf7611
jbe near 0768dh ; 0f 86 76 00 ; 0xf7613
mov di, ax ; 89 c7 ; 0xf7617 parallel.c:79
add di, strict byte 00078h ; 83 c7 78 ; 0xf7619
mov al, byte [es:di] ; 26 8a 05 ; 0xf761c parallel.c:48
movzx cx, al ; 0f b6 c8 ; 0xf761f parallel.c:49
sal cx, 008h ; c1 e1 08 ; 0xf7622
cmp byte [bp+013h], 000h ; 80 7e 13 00 ; 0xf7625 parallel.c:80
jne short 07658h ; 75 2d ; 0xf7629
mov al, byte [bp+012h] ; 8a 46 12 ; 0xf762b parallel.c:81
mov dx, bx ; 89 da ; 0xf762e
out DX, AL ; ee ; 0xf7630
lea dx, [bx+002h] ; 8d 57 02 ; 0xf7631 parallel.c:82
in AL, DX ; ec ; 0xf7634
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf7635
mov word [bp-006h], ax ; 89 46 fa ; 0xf7637
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf763a parallel.c:83
or AL, strict byte 001h ; 0c 01 ; 0xf763d
out DX, AL ; ee ; 0xf763f
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7640 parallel.c:84
and AL, strict byte 0feh ; 24 fe ; 0xf7644
out DX, AL ; ee ; 0xf7646
lea dx, [si+001h] ; 8d 54 01 ; 0xf7647 parallel.c:85
in AL, DX ; ec ; 0xf764a
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf764b
test AL, strict byte 040h ; a8 40 ; 0xf764d
je short 07658h ; 74 07 ; 0xf764f
test cx, cx ; 85 c9 ; 0xf7651
je short 07658h ; 74 03 ; 0xf7653
dec cx ; 49 ; 0xf7655 parallel.c:86
jmp short 07647h ; eb ef ; 0xf7656 parallel.c:87
cmp byte [bp+013h], 001h ; 80 7e 13 01 ; 0xf7658 parallel.c:89
jne short 07674h ; 75 16 ; 0xf765c
lea dx, [si+002h] ; 8d 54 02 ; 0xf765e parallel.c:90
in AL, DX ; ec ; 0xf7661
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf7662
mov word [bp-006h], ax ; 89 46 fa ; 0xf7664
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7667 parallel.c:91
and AL, strict byte 0fbh ; 24 fb ; 0xf766b
out DX, AL ; ee ; 0xf766d
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf766e parallel.c:92
or AL, strict byte 004h ; 0c 04 ; 0xf7671
out DX, AL ; ee ; 0xf7673
lea dx, [si+001h] ; 8d 54 01 ; 0xf7674 parallel.c:94
in AL, DX ; ec ; 0xf7677
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf7678
xor AL, strict byte 048h ; 34 48 ; 0xf767a parallel.c:95
mov byte [bp+013h], al ; 88 46 13 ; 0xf767c
test cx, cx ; 85 c9 ; 0xf767f parallel.c:96
jne short 07687h ; 75 04 ; 0xf7681
or byte [bp+013h], 001h ; 80 4e 13 01 ; 0xf7683
and byte [bp+01ch], 0feh ; 80 66 1c fe ; 0xf7687 parallel.c:97
jmp short 07691h ; eb 04 ; 0xf768b parallel.c:98
or byte [bp+01ch], 001h ; 80 4e 1c 01 ; 0xf768d parallel.c:99
lea sp, [bp-004h] ; 8d 66 fc ; 0xf7691 parallel.c:101
pop di ; 5f ; 0xf7694
pop si ; 5e ; 0xf7695
pop bp ; 5d ; 0xf7696
retn ; c3 ; 0xf7697
; disGetNextSymbol 0xf7698 LB 0x3784 -> off=0x0 cb=00000000000000b8 uValue=00000000000f6098 '_wait_'
_wait_: ; 0xf7698 LB 0xb8
push bp ; 55 ; 0xf7698 logo.c:181
mov bp, sp ; 89 e5 ; 0xf7699
push bx ; 53 ; 0xf769b
push cx ; 51 ; 0xf769c
push si ; 56 ; 0xf769d
push di ; 57 ; 0xf769e
sub sp, strict byte 0000ah ; 83 ec 0a ; 0xf769f
mov di, ax ; 89 c7 ; 0xf76a2
mov byte [bp-00ah], dl ; 88 56 f6 ; 0xf76a4
mov byte [bp-00ch], 000h ; c6 46 f4 00 ; 0xf76a7 logo.c:186
pushfw ; 9c ; 0xf76ab logo.c:192
pop ax ; 58 ; 0xf76ac
mov word [bp-010h], ax ; 89 46 f0 ; 0xf76ad
sti ; fb ; 0xf76b0 logo.c:193
xor dx, dx ; 31 d2 ; 0xf76b1 logo.c:199
mov bx, 0046ch ; bb 6c 04 ; 0xf76b3 logo.c:68
mov es, dx ; 8e c2 ; 0xf76b6
mov ax, word [es:bx] ; 26 8b 07 ; 0xf76b8
mov cx, word [es:bx+002h] ; 26 8b 4f 02 ; 0xf76bb
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf76bf logo.c:69
hlt ; f4 ; 0xf76c2 logo.c:203
mov bx, 0046ch ; bb 6c 04 ; 0xf76c3 logo.c:68
xor ax, ax ; 31 c0 ; 0xf76c6
mov es, ax ; 8e c0 ; 0xf76c8
mov si, word [es:bx] ; 26 8b 37 ; 0xf76ca
mov ax, word [es:bx+002h] ; 26 8b 47 02 ; 0xf76cd
mov bx, si ; 89 f3 ; 0xf76d1 logo.c:69
mov word [bp-012h], ax ; 89 46 ee ; 0xf76d3
cmp ax, cx ; 39 c8 ; 0xf76d6 logo.c:205
jnbe short 076e1h ; 77 07 ; 0xf76d8
jne short 076e8h ; 75 0c ; 0xf76da
cmp si, word [bp-00eh] ; 3b 76 f2 ; 0xf76dc
jbe short 076e8h ; 76 07 ; 0xf76df
sub si, word [bp-00eh] ; 2b 76 f2 ; 0xf76e1 logo.c:207
sbb ax, cx ; 19 c8 ; 0xf76e4
jmp short 076f3h ; eb 0b ; 0xf76e6 logo.c:210
cmp ax, cx ; 39 c8 ; 0xf76e8
jc short 076f3h ; 72 07 ; 0xf76ea
jne short 076f7h ; 75 09 ; 0xf76ec
cmp si, word [bp-00eh] ; 3b 76 f2 ; 0xf76ee
jnc short 076f7h ; 73 04 ; 0xf76f1
sub di, si ; 29 f7 ; 0xf76f3 logo.c:211
sbb dx, ax ; 19 c2 ; 0xf76f5
mov word [bp-00eh], bx ; 89 5e f2 ; 0xf76f7 logo.c:212
mov cx, word [bp-012h] ; 8b 4e ee ; 0xf76fa
mov ax, 00100h ; b8 00 01 ; 0xf76fd logo.c:214
int 016h ; cd 16 ; 0xf7700
je near 0770bh ; 0f 84 05 00 ; 0xf7702
mov AL, strict byte 001h ; b0 01 ; 0xf7706
jmp near 0770dh ; e9 02 00 ; 0xf7708
db 032h, 0c0h
; xor al, al ; 32 c0 ; 0xf770b
test al, al ; 84 c0 ; 0xf770d
je short 07735h ; 74 24 ; 0xf770f
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xf7711 logo.c:216
int 016h ; cd 16 ; 0xf7713
xchg ah, al ; 86 c4 ; 0xf7715
mov bl, al ; 88 c3 ; 0xf7717
mov byte [bp-00ch], al ; 88 46 f4 ; 0xf7719
movzx ax, bl ; 0f b6 c3 ; 0xf771c logo.c:217
push ax ; 50 ; 0xf771f
push 00a26h ; 68 26 0a ; 0xf7720
push strict byte 00004h ; 6a 04 ; 0xf7723
call 01a68h ; e8 40 a3 ; 0xf7725
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7728
cmp byte [bp-00ah], 000h ; 80 7e f6 00 ; 0xf772b logo.c:218
je short 07735h ; 74 04 ; 0xf772f
mov al, bl ; 88 d8 ; 0xf7731 logo.c:219
jmp short 07747h ; eb 12 ; 0xf7733
test dx, dx ; 85 d2 ; 0xf7735 logo.c:221
jnle short 076c2h ; 7f 89 ; 0xf7737
jne short 0773fh ; 75 04 ; 0xf7739
test di, di ; 85 ff ; 0xf773b
jnbe short 076c2h ; 77 83 ; 0xf773d
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf773f logo.c:222
push ax ; 50 ; 0xf7742
popfw ; 9d ; 0xf7743
mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xf7744 logo.c:223
lea sp, [bp-008h] ; 8d 66 f8 ; 0xf7747 logo.c:224
pop di ; 5f ; 0xf774a
pop si ; 5e ; 0xf774b
pop cx ; 59 ; 0xf774c
pop bx ; 5b ; 0xf774d
pop bp ; 5d ; 0xf774e
retn ; c3 ; 0xf774f
; disGetNextSymbol 0xf7750 LB 0x36cc -> off=0x0 cb=0000000000000016 uValue=00000000000f6150 'read_logo_byte'
read_logo_byte: ; 0xf7750 LB 0x16
push bp ; 55 ; 0xf7750 logo.c:226
mov bp, sp ; 89 e5 ; 0xf7751
push dx ; 52 ; 0xf7753
xor ah, ah ; 30 e4 ; 0xf7754 logo.c:228
or ah, 001h ; 80 cc 01 ; 0xf7756
mov dx, 003b8h ; ba b8 03 ; 0xf7759
out DX, ax ; ef ; 0xf775c
in AL, DX ; ec ; 0xf775d logo.c:229
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf775e
lea sp, [bp-002h] ; 8d 66 fe ; 0xf7760 logo.c:230
pop dx ; 5a ; 0xf7763
pop bp ; 5d ; 0xf7764
retn ; c3 ; 0xf7765
; disGetNextSymbol 0xf7766 LB 0x36b6 -> off=0x0 cb=0000000000000014 uValue=00000000000f6166 'read_logo_word'
read_logo_word: ; 0xf7766 LB 0x14
push bp ; 55 ; 0xf7766 logo.c:232
mov bp, sp ; 89 e5 ; 0xf7767
push dx ; 52 ; 0xf7769
xor ah, ah ; 30 e4 ; 0xf776a logo.c:234
or ah, 001h ; 80 cc 01 ; 0xf776c
mov dx, 003b8h ; ba b8 03 ; 0xf776f
out DX, ax ; ef ; 0xf7772
in ax, DX ; ed ; 0xf7773 logo.c:235
lea sp, [bp-002h] ; 8d 66 fe ; 0xf7774 logo.c:236
pop dx ; 5a ; 0xf7777
pop bp ; 5d ; 0xf7778
retn ; c3 ; 0xf7779
; disGetNextSymbol 0xf777a LB 0x36a2 -> off=0x0 cb=0000000000000133 uValue=00000000000f617a 'print_detected_harddisks'
print_detected_harddisks: ; 0xf777a LB 0x133
push bp ; 55 ; 0xf777a logo.c:255
mov bp, sp ; 89 e5 ; 0xf777b
push bx ; 53 ; 0xf777d
push cx ; 51 ; 0xf777e
push dx ; 52 ; 0xf777f
push si ; 56 ; 0xf7780
push di ; 57 ; 0xf7781
push ax ; 50 ; 0xf7782
push ax ; 50 ; 0xf7783
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf7784 logo.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf7787
mov es, ax ; 8e c0 ; 0xf778a
mov si, word [es:bx] ; 26 8b 37 ; 0xf778c
mov di, si ; 89 f7 ; 0xf778f logo.c:59
xor ch, ch ; 30 ed ; 0xf7791 logo.c:260
xor cl, cl ; 30 c9 ; 0xf7793 logo.c:261
mov byte [bp-00eh], ch ; 88 6e f2 ; 0xf7795 logo.c:262
mov bx, 002ach ; bb ac 02 ; 0xf7798 logo.c:48
mov es, si ; 8e c6 ; 0xf779b
mov al, byte [es:bx] ; 26 8a 07 ; 0xf779d
mov byte [bp-00ch], al ; 88 46 f4 ; 0xf77a0 logo.c:49
xor bl, bl ; 30 db ; 0xf77a3 logo.c:267
cmp bl, byte [bp-00ch] ; 3a 5e f4 ; 0xf77a5
jnc near 0787fh ; 0f 83 d3 00 ; 0xf77a8
movzx si, bl ; 0f b6 f3 ; 0xf77ac logo.c:269
add si, 002adh ; 81 c6 ad 02 ; 0xf77af
mov es, di ; 8e c7 ; 0xf77b3 logo.c:48
mov al, byte [es:si] ; 26 8a 04 ; 0xf77b5
mov bh, al ; 88 c7 ; 0xf77b8 logo.c:49
cmp AL, strict byte 00ch ; 3c 0c ; 0xf77ba logo.c:272
jc short 077e2h ; 72 24 ; 0xf77bc
test cl, cl ; 84 c9 ; 0xf77be logo.c:274
jne short 077cfh ; 75 0d ; 0xf77c0
push 00a37h ; 68 37 0a ; 0xf77c2 logo.c:276
push strict byte 00002h ; 6a 02 ; 0xf77c5
call 01a68h ; e8 9e a2 ; 0xf77c7
add sp, strict byte 00004h ; 83 c4 04 ; 0xf77ca
mov CL, strict byte 001h ; b1 01 ; 0xf77cd logo.c:277
movzx ax, bl ; 0f b6 c3 ; 0xf77cf logo.c:280
inc ax ; 40 ; 0xf77d2
push ax ; 50 ; 0xf77d3
push 00a4ch ; 68 4c 0a ; 0xf77d4
push strict byte 00002h ; 6a 02 ; 0xf77d7
call 01a68h ; e8 8c a2 ; 0xf77d9
add sp, strict byte 00006h ; 83 c4 06 ; 0xf77dc
jmp near 0787ah ; e9 98 00 ; 0xf77df logo.c:283
cmp AL, strict byte 008h ; 3c 08 ; 0xf77e2 logo.c:286
jc short 077fdh ; 72 17 ; 0xf77e4
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf77e6 logo.c:288
jne short 077fbh ; 75 0f ; 0xf77ea
push 00a5fh ; 68 5f 0a ; 0xf77ec logo.c:290
push strict byte 00002h ; 6a 02 ; 0xf77ef
call 01a68h ; e8 74 a2 ; 0xf77f1
add sp, strict byte 00004h ; 83 c4 04 ; 0xf77f4
mov byte [bp-00eh], 001h ; c6 46 f2 01 ; 0xf77f7 logo.c:291
jmp short 077cfh ; eb d2 ; 0xf77fb logo.c:292
cmp AL, strict byte 004h ; 3c 04 ; 0xf77fd logo.c:301
jnc short 07814h ; 73 13 ; 0xf77ff
test ch, ch ; 84 ed ; 0xf7801
jne short 07814h ; 75 0f ; 0xf7803
push 00a74h ; 68 74 0a ; 0xf7805 logo.c:303
push strict byte 00002h ; 6a 02 ; 0xf7808
call 01a68h ; e8 5b a2 ; 0xf780a
add sp, strict byte 00004h ; 83 c4 04 ; 0xf780d
mov CH, strict byte 001h ; b5 01 ; 0xf7810 logo.c:304
jmp short 0782ah ; eb 16 ; 0xf7812 logo.c:306
cmp bh, 004h ; 80 ff 04 ; 0xf7814
jc short 0782ah ; 72 11 ; 0xf7817
test cl, cl ; 84 c9 ; 0xf7819
jne short 0782ah ; 75 0d ; 0xf781b
push 00a86h ; 68 86 0a ; 0xf781d logo.c:308
push strict byte 00002h ; 6a 02 ; 0xf7820
call 01a68h ; e8 43 a2 ; 0xf7822
add sp, strict byte 00004h ; 83 c4 04 ; 0xf7825
mov CL, strict byte 001h ; b1 01 ; 0xf7828 logo.c:309
movzx ax, bl ; 0f b6 c3 ; 0xf782a logo.c:312
inc ax ; 40 ; 0xf782d
push ax ; 50 ; 0xf782e
push 00a9ah ; 68 9a 0a ; 0xf782f
push strict byte 00002h ; 6a 02 ; 0xf7832
call 01a68h ; e8 31 a2 ; 0xf7834
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7837
cmp bh, 004h ; 80 ff 04 ; 0xf783a logo.c:319
jc short 07842h ; 72 03 ; 0xf783d
sub bh, 004h ; 80 ef 04 ; 0xf783f logo.c:320
movzx ax, bh ; 0f b6 c7 ; 0xf7842 logo.c:322
cwd ; 99 ; 0xf7845
db 02bh, 0c2h
; sub ax, dx ; 2b c2 ; 0xf7846
sar ax, 1 ; d1 f8 ; 0xf7848
test ax, ax ; 85 c0 ; 0xf784a
je short 07853h ; 74 05 ; 0xf784c
push 00aa4h ; 68 a4 0a ; 0xf784e logo.c:323
jmp short 07856h ; eb 03 ; 0xf7851 logo.c:324
push 00aafh ; 68 af 0a ; 0xf7853 logo.c:325
push strict byte 00002h ; 6a 02 ; 0xf7856
call 01a68h ; e8 0d a2 ; 0xf7858
add sp, strict byte 00004h ; 83 c4 04 ; 0xf785b
movzx ax, bh ; 0f b6 c7 ; 0xf785e logo.c:327
cwd ; 99 ; 0xf7861
mov si, strict word 00002h ; be 02 00 ; 0xf7862
idiv si ; f7 fe ; 0xf7865
test dx, dx ; 85 d2 ; 0xf7867
je short 07870h ; 74 05 ; 0xf7869
push 00ab8h ; 68 b8 0a ; 0xf786b logo.c:328
jmp short 07873h ; eb 03 ; 0xf786e logo.c:329
push 00abeh ; 68 be 0a ; 0xf7870 logo.c:330
push si ; 56 ; 0xf7873
call 01a68h ; e8 f1 a1 ; 0xf7874
add sp, strict byte 00004h ; 83 c4 04 ; 0xf7877
db 0feh, 0c3h
; inc bl ; fe c3 ; 0xf787a logo.c:332
jmp near 077a5h ; e9 26 ff ; 0xf787c
test ch, ch ; 84 ed ; 0xf787f logo.c:334
jne short 07898h ; 75 15 ; 0xf7881
test cl, cl ; 84 c9 ; 0xf7883
jne short 07898h ; 75 11 ; 0xf7885
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf7887
jne short 07898h ; 75 0b ; 0xf788b
push 00ac5h ; 68 c5 0a ; 0xf788d logo.c:337
push strict byte 00002h ; 6a 02 ; 0xf7890
call 01a68h ; e8 d3 a1 ; 0xf7892
add sp, strict byte 00004h ; 83 c4 04 ; 0xf7895
push 00ad9h ; 68 d9 0a ; 0xf7898 logo.c:339
push strict byte 00002h ; 6a 02 ; 0xf789b
call 01a68h ; e8 c8 a1 ; 0xf789d
add sp, strict byte 00004h ; 83 c4 04 ; 0xf78a0
lea sp, [bp-00ah] ; 8d 66 f6 ; 0xf78a3 logo.c:340
pop di ; 5f ; 0xf78a6
pop si ; 5e ; 0xf78a7
pop dx ; 5a ; 0xf78a8
pop cx ; 59 ; 0xf78a9
pop bx ; 5b ; 0xf78aa
pop bp ; 5d ; 0xf78ab
retn ; c3 ; 0xf78ac
; disGetNextSymbol 0xf78ad LB 0x356f -> off=0x0 cb=0000000000000024 uValue=00000000000f62ad 'get_boot_drive'
get_boot_drive: ; 0xf78ad LB 0x24
push bx ; 53 ; 0xf78ad logo.c:342
push dx ; 52 ; 0xf78ae
push bp ; 55 ; 0xf78af
mov bp, sp ; 89 e5 ; 0xf78b0
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf78b2 logo.c:58
mov dx, strict word 00040h ; ba 40 00 ; 0xf78b5
mov es, dx ; 8e c2 ; 0xf78b8
mov dx, word [es:bx] ; 26 8b 17 ; 0xf78ba
mov bx, 002ach ; bb ac 02 ; 0xf78bd logo.c:48
mov es, dx ; 8e c2 ; 0xf78c0
mov dl, byte [es:bx] ; 26 8a 17 ; 0xf78c2
sub AL, strict byte 002h ; 2c 02 ; 0xf78c5 logo.c:350
cmp al, dl ; 38 d0 ; 0xf78c7 logo.c:352
jc short 078cdh ; 72 02 ; 0xf78c9
mov AL, strict byte 0ffh ; b0 ff ; 0xf78cb logo.c:353
pop bp ; 5d ; 0xf78cd logo.c:357
pop dx ; 5a ; 0xf78ce
pop bx ; 5b ; 0xf78cf
retn ; c3 ; 0xf78d0
; disGetNextSymbol 0xf78d1 LB 0x354b -> off=0x0 cb=0000000000000254 uValue=00000000000f62d1 'show_logo'
show_logo: ; 0xf78d1 LB 0x254
push bp ; 55 ; 0xf78d1 logo.c:359
mov bp, sp ; 89 e5 ; 0xf78d2
push bx ; 53 ; 0xf78d4
push cx ; 51 ; 0xf78d5
push dx ; 52 ; 0xf78d6
push si ; 56 ; 0xf78d7
push di ; 57 ; 0xf78d8
sub sp, strict byte 0000eh ; 83 ec 0e ; 0xf78d9
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf78dc logo.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf78df
mov es, ax ; 8e c0 ; 0xf78e2
mov si, word [es:bx] ; 26 8b 37 ; 0xf78e4
mov byte [bp-00eh], 000h ; c6 46 f2 00 ; 0xf78e7 logo.c:362
xor dx, dx ; 31 d2 ; 0xf78eb logo.c:366
mov AL, strict byte 034h ; b0 34 ; 0xf78ed logo.c:373
out strict byte 043h, AL ; e6 43 ; 0xf78ef
mov AL, strict byte 0d3h ; b0 d3 ; 0xf78f1
out strict byte 040h, AL ; e6 40 ; 0xf78f3
mov AL, strict byte 048h ; b0 48 ; 0xf78f5
out strict byte 040h, AL ; e6 40 ; 0xf78f7
movzx ax, dl ; 0f b6 c2 ; 0xf78f9 logo.c:376
call 07766h ; e8 67 fe ; 0xf78fc
cmp ax, 066bbh ; 3d bb 66 ; 0xf78ff logo.c:377
jne near 07a04h ; 0f 85 fe 00 ; 0xf7902
push SS ; 16 ; 0xf7906 logo.c:381
pop ES ; 07 ; 0xf7907
lea di, [bp-018h] ; 8d 7e e8 ; 0xf7908
mov ax, 04f03h ; b8 03 4f ; 0xf790b
int 010h ; cd 10 ; 0xf790e
mov word [es:di], bx ; 26 89 1d ; 0xf7910
cmp ax, strict word 0004fh ; 3d 4f 00 ; 0xf7913
jne near 07a04h ; 0f 85 ea 00 ; 0xf7916
mov al, dl ; 88 d0 ; 0xf791a logo.c:385
add AL, strict byte 004h ; 04 04 ; 0xf791c
xor ah, ah ; 30 e4 ; 0xf791e
call 07750h ; e8 2d fe ; 0xf7920
mov bl, al ; 88 c3 ; 0xf7923
mov byte [bp-012h], al ; 88 46 ee ; 0xf7925
mov al, dl ; 88 d0 ; 0xf7928 logo.c:386
add AL, strict byte 005h ; 04 05 ; 0xf792a
xor ah, ah ; 30 e4 ; 0xf792c
call 07750h ; e8 1f fe ; 0xf792e
mov dh, al ; 88 c6 ; 0xf7931
mov byte [bp-00ch], al ; 88 46 f4 ; 0xf7933
mov al, dl ; 88 d0 ; 0xf7936 logo.c:387
add AL, strict byte 002h ; 04 02 ; 0xf7938
xor ah, ah ; 30 e4 ; 0xf793a
call 07766h ; e8 27 fe ; 0xf793c
mov cx, ax ; 89 c1 ; 0xf793f
mov word [bp-016h], ax ; 89 46 ea ; 0xf7941
mov al, dl ; 88 d0 ; 0xf7944 logo.c:388
add AL, strict byte 006h ; 04 06 ; 0xf7946
xor ah, ah ; 30 e4 ; 0xf7948
call 07750h ; e8 03 fe ; 0xf794a
mov byte [bp-014h], al ; 88 46 ec ; 0xf794d
test bl, bl ; 84 db ; 0xf7950 logo.c:391
jne short 0795eh ; 75 0a ; 0xf7952
test dh, dh ; 84 f6 ; 0xf7954
jne short 0795eh ; 75 06 ; 0xf7956
test cx, cx ; 85 c9 ; 0xf7958
je near 07a04h ; 0f 84 a6 00 ; 0xf795a
mov BH, strict byte 020h ; b7 20 ; 0xf795e logo.c:395
mov dx, 001e0h ; ba e0 01 ; 0xf7960
mov cx, 00280h ; b9 80 02 ; 0xf7963
mov ax, 05642h ; b8 42 56 ; 0xf7966
mov BL, strict byte 000h ; b3 00 ; 0xf7969
int 010h ; cd 10 ; 0xf796b
cmp ax, strict word 0004fh ; 3d 4f 00 ; 0xf796d logo.c:397
je short 0797ah ; 74 08 ; 0xf7970
mov bx, 00142h ; bb 42 01 ; 0xf7972 logo.c:398
mov ax, 04f02h ; b8 02 4f ; 0xf7975
int 010h ; cd 10 ; 0xf7978
cmp byte [bp-012h], 000h ; 80 7e ee 00 ; 0xf797a logo.c:400
je short 079a5h ; 74 25 ; 0xf797e
xor bx, bx ; 31 db ; 0xf7980 logo.c:402
jmp short 0798ah ; eb 06 ; 0xf7982
inc bx ; 43 ; 0xf7984 logo.c:404
cmp bx, strict byte 00010h ; 83 fb 10 ; 0xf7985
jnbe short 079ach ; 77 22 ; 0xf7988
mov ax, bx ; 89 d8 ; 0xf798a
or ah, 002h ; 80 cc 02 ; 0xf798c
mov dx, 003b8h ; ba b8 03 ; 0xf798f
out DX, ax ; ef ; 0xf7992
xor dx, dx ; 31 d2 ; 0xf7993
mov ax, strict word 00001h ; b8 01 00 ; 0xf7995
call 07698h ; e8 fd fc ; 0xf7998
cmp AL, strict byte 086h ; 3c 86 ; 0xf799b
jne short 07984h ; 75 e5 ; 0xf799d
mov byte [bp-00eh], 001h ; c6 46 f2 01 ; 0xf799f
jmp short 079ach ; eb 07 ; 0xf79a3
mov ax, 00210h ; b8 10 02 ; 0xf79a5 logo.c:414
mov dx, 003b8h ; ba b8 03 ; 0xf79a8
out DX, ax ; ef ; 0xf79ab
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf79ac logo.c:417
jne short 079c6h ; 75 14 ; 0xf79b0
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf79b2 logo.c:419
shr ax, 004h ; c1 e8 04 ; 0xf79b5
mov dx, strict word 00001h ; ba 01 00 ; 0xf79b8
call 07698h ; e8 da fc ; 0xf79bb
cmp AL, strict byte 086h ; 3c 86 ; 0xf79be logo.c:420
jne short 079c6h ; 75 04 ; 0xf79c0
mov byte [bp-00eh], 001h ; c6 46 f2 01 ; 0xf79c2 logo.c:421
cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xf79c6 logo.c:425
je short 079f7h ; 74 2b ; 0xf79ca
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf79cc
jne short 079f7h ; 75 25 ; 0xf79d0
mov bx, strict word 00010h ; bb 10 00 ; 0xf79d2 logo.c:427
jmp short 079dch ; eb 05 ; 0xf79d5
dec bx ; 4b ; 0xf79d7 logo.c:429
test bx, bx ; 85 db ; 0xf79d8
jbe short 07a04h ; 76 28 ; 0xf79da
mov ax, bx ; 89 d8 ; 0xf79dc
or ah, 002h ; 80 cc 02 ; 0xf79de
mov dx, 003b8h ; ba b8 03 ; 0xf79e1
out DX, ax ; ef ; 0xf79e4
xor dx, dx ; 31 d2 ; 0xf79e5
mov ax, strict word 00001h ; b8 01 00 ; 0xf79e7
call 07698h ; e8 ab fc ; 0xf79ea
cmp AL, strict byte 086h ; 3c 86 ; 0xf79ed
jne short 079d7h ; 75 e6 ; 0xf79ef
mov byte [bp-00eh], 001h ; c6 46 f2 01 ; 0xf79f1
jmp short 07a04h ; eb 0d ; 0xf79f5
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf79f7 logo.c:438
jne short 07a04h ; 75 07 ; 0xf79fb
mov ax, 00200h ; b8 00 02 ; 0xf79fd logo.c:439
mov dx, 003b8h ; ba b8 03 ; 0xf7a00
out DX, ax ; ef ; 0xf7a03
mov bx, 00331h ; bb 31 03 ; 0xf7a04 logo.c:53
mov es, si ; 8e c6 ; 0xf7a07
mov byte [es:bx], 000h ; 26 c6 07 00 ; 0xf7a09
mov AL, strict byte 003h ; b0 03 ; 0xf7a0d logo.c:447
mov AH, strict byte 000h ; b4 00 ; 0xf7a0f
int 010h ; cd 10 ; 0xf7a11
cmp byte [bp-014h], 000h ; 80 7e ec 00 ; 0xf7a13 logo.c:450
je near 07b06h ; 0f 84 eb 00 ; 0xf7a17
cmp byte [bp-012h], 000h ; 80 7e ee 00 ; 0xf7a1b logo.c:453
jne short 07a55h ; 75 34 ; 0xf7a1f
cmp byte [bp-00ch], 000h ; 80 7e f4 00 ; 0xf7a21
jne short 07a55h ; 75 2e ; 0xf7a25
cmp word [bp-016h], strict byte 00000h ; 83 7e ea 00 ; 0xf7a27
jne short 07a55h ; 75 28 ; 0xf7a2b
cmp byte [bp-014h], 002h ; 80 7e ec 02 ; 0xf7a2d logo.c:455
jne short 07a3eh ; 75 0b ; 0xf7a31
push 00adbh ; 68 db 0a ; 0xf7a33 logo.c:456
push strict byte 00002h ; 6a 02 ; 0xf7a36
call 01a68h ; e8 2d a0 ; 0xf7a38
add sp, strict byte 00004h ; 83 c4 04 ; 0xf7a3b
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf7a3e logo.c:459
jne short 07a55h ; 75 11 ; 0xf7a42
mov dx, strict word 00001h ; ba 01 00 ; 0xf7a44 logo.c:462
mov ax, 000c0h ; b8 c0 00 ; 0xf7a47
call 07698h ; e8 4b fc ; 0xf7a4a
cmp AL, strict byte 086h ; 3c 86 ; 0xf7a4d logo.c:463
jne short 07a55h ; 75 04 ; 0xf7a4f
mov byte [bp-00eh], 001h ; c6 46 f2 01 ; 0xf7a51 logo.c:464
cmp byte [bp-00eh], 000h ; 80 7e f2 00 ; 0xf7a55 logo.c:469
je near 07b06h ; 0f 84 a9 00 ; 0xf7a59
mov byte [bp-010h], 000h ; c6 46 f0 00 ; 0xf7a5d logo.c:471
mov ax, 00100h ; b8 00 01 ; 0xf7a61 logo.c:474
mov cx, 01000h ; b9 00 10 ; 0xf7a64
int 010h ; cd 10 ; 0xf7a67
mov ax, 00700h ; b8 00 07 ; 0xf7a69
mov BH, strict byte 007h ; b7 07 ; 0xf7a6c
db 033h, 0c9h
; xor cx, cx ; 33 c9 ; 0xf7a6e
mov dx, 0184fh ; ba 4f 18 ; 0xf7a70
int 010h ; cd 10 ; 0xf7a73
mov ax, 00200h ; b8 00 02 ; 0xf7a75
db 033h, 0dbh
; xor bx, bx ; 33 db ; 0xf7a78
db 033h, 0d2h
; xor dx, dx ; 33 d2 ; 0xf7a7a
int 010h ; cd 10 ; 0xf7a7c
push 00afdh ; 68 fd 0a ; 0xf7a7e logo.c:477
push strict byte 00002h ; 6a 02 ; 0xf7a81
call 01a68h ; e8 e2 9f ; 0xf7a83
add sp, strict byte 00004h ; 83 c4 04 ; 0xf7a86
call 0777ah ; e8 ee fc ; 0xf7a89 logo.c:478
push 00b41h ; 68 41 0b ; 0xf7a8c logo.c:479
push strict byte 00002h ; 6a 02 ; 0xf7a8f
call 01a68h ; e8 d4 9f ; 0xf7a91
add sp, strict byte 00004h ; 83 c4 04 ; 0xf7a94
mov dx, strict word 00001h ; ba 01 00 ; 0xf7a97 logo.c:488
mov ax, strict word 00040h ; b8 40 00 ; 0xf7a9a
call 07698h ; e8 f8 fb ; 0xf7a9d
mov bl, al ; 88 c3 ; 0xf7aa0
test al, al ; 84 c0 ; 0xf7aa2 logo.c:489
je short 07a97h ; 74 f1 ; 0xf7aa4
cmp AL, strict byte 030h ; 3c 30 ; 0xf7aa6 logo.c:491
je short 07af5h ; 74 4b ; 0xf7aa8
cmp bl, 002h ; 80 fb 02 ; 0xf7aaa logo.c:498
jc short 07aceh ; 72 1f ; 0xf7aad
cmp bl, 009h ; 80 fb 09 ; 0xf7aaf
jnbe short 07aceh ; 77 1a ; 0xf7ab2
movzx ax, bl ; 0f b6 c3 ; 0xf7ab4 logo.c:500
call 078adh ; e8 f3 fd ; 0xf7ab7
cmp AL, strict byte 0ffh ; 3c ff ; 0xf7aba logo.c:507
jne short 07ac0h ; 75 02 ; 0xf7abc
jmp short 07a97h ; eb d7 ; 0xf7abe logo.c:508
mov bx, 00330h ; bb 30 03 ; 0xf7ac0 logo.c:53
mov es, si ; 8e c6 ; 0xf7ac3
mov byte [es:bx], al ; 26 88 07 ; 0xf7ac5
mov byte [bp-010h], 002h ; c6 46 f0 02 ; 0xf7ac8 logo.c:511
jmp short 07af5h ; eb 27 ; 0xf7acc logo.c:512
cmp bl, 02eh ; 80 fb 2e ; 0xf7ace logo.c:515
je short 07ae3h ; 74 10 ; 0xf7ad1
cmp bl, 026h ; 80 fb 26 ; 0xf7ad3
je short 07ae9h ; 74 11 ; 0xf7ad6
cmp bl, 021h ; 80 fb 21 ; 0xf7ad8
jne short 07aefh ; 75 12 ; 0xf7adb
mov byte [bp-010h], 001h ; c6 46 f0 01 ; 0xf7add logo.c:519
jmp short 07af5h ; eb 12 ; 0xf7ae1 logo.c:520
mov byte [bp-010h], 003h ; c6 46 f0 03 ; 0xf7ae3 logo.c:523
jmp short 07af5h ; eb 0c ; 0xf7ae7 logo.c:524
mov byte [bp-010h], 004h ; c6 46 f0 04 ; 0xf7ae9 logo.c:527
jmp short 07af5h ; eb 06 ; 0xf7aed logo.c:528
cmp byte [bp-010h], 000h ; 80 7e f0 00 ; 0xf7aef logo.c:531
je short 07a97h ; 74 a2 ; 0xf7af3
mov bx, 00331h ; bb 31 03 ; 0xf7af5 logo.c:53
mov es, si ; 8e c6 ; 0xf7af8
mov al, byte [bp-010h] ; 8a 46 f0 ; 0xf7afa
mov byte [es:bx], al ; 26 88 07 ; 0xf7afd
mov AL, strict byte 003h ; b0 03 ; 0xf7b00 logo.c:538
mov AH, strict byte 000h ; b4 00 ; 0xf7b02
int 010h ; cd 10 ; 0xf7b04
mov AL, strict byte 034h ; b0 34 ; 0xf7b06 logo.c:543
out strict byte 043h, AL ; e6 43 ; 0xf7b08
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xf7b0a
out strict byte 040h, AL ; e6 40 ; 0xf7b0c
out strict byte 040h, AL ; e6 40 ; 0xf7b0e
pushad ; 66 60 ; 0xf7b10
push DS ; 1e ; 0xf7b12
mov ds, ax ; 8e d8 ; 0xf7b13
call 0edbfh ; e8 a7 72 ; 0xf7b15
pop DS ; 1f ; 0xf7b18
popad ; 66 61 ; 0xf7b19
lea sp, [bp-00ah] ; 8d 66 f6 ; 0xf7b1b logo.c:546
pop di ; 5f ; 0xf7b1e
pop si ; 5e ; 0xf7b1f
pop dx ; 5a ; 0xf7b20
pop cx ; 59 ; 0xf7b21
pop bx ; 5b ; 0xf7b22
pop bp ; 5d ; 0xf7b23
retn ; c3 ; 0xf7b24
; disGetNextSymbol 0xf7b25 LB 0x32f7 -> off=0x0 cb=0000000000000067 uValue=00000000000f6525 'delay_boot'
delay_boot: ; 0xf7b25 LB 0x67
push bp ; 55 ; 0xf7b25 logo.c:549
mov bp, sp ; 89 e5 ; 0xf7b26
push bx ; 53 ; 0xf7b28
push dx ; 52 ; 0xf7b29
mov dx, ax ; 89 c2 ; 0xf7b2a
test ax, ax ; 85 c0 ; 0xf7b2c logo.c:553
je short 07b85h ; 74 55 ; 0xf7b2e
mov AL, strict byte 034h ; b0 34 ; 0xf7b30 logo.c:557
out strict byte 043h, AL ; e6 43 ; 0xf7b32
mov AL, strict byte 0d3h ; b0 d3 ; 0xf7b34
out strict byte 040h, AL ; e6 40 ; 0xf7b36
mov AL, strict byte 048h ; b0 48 ; 0xf7b38
out strict byte 040h, AL ; e6 40 ; 0xf7b3a
push dx ; 52 ; 0xf7b3c logo.c:559
push 00b8bh ; 68 8b 0b ; 0xf7b3d
push strict byte 00002h ; 6a 02 ; 0xf7b40
call 01a68h ; e8 23 9f ; 0xf7b42
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7b45
mov bx, dx ; 89 d3 ; 0xf7b48 logo.c:560
test bx, bx ; 85 db ; 0xf7b4a
jbe short 07b65h ; 76 17 ; 0xf7b4c
push bx ; 53 ; 0xf7b4e logo.c:562
push 00ba9h ; 68 a9 0b ; 0xf7b4f
push strict byte 00002h ; 6a 02 ; 0xf7b52
call 01a68h ; e8 11 9f ; 0xf7b54
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7b57
xor dx, dx ; 31 d2 ; 0xf7b5a logo.c:563
mov ax, strict word 00040h ; b8 40 00 ; 0xf7b5c
call 07698h ; e8 36 fb ; 0xf7b5f
dec bx ; 4b ; 0xf7b62 logo.c:564
jmp short 07b4ah ; eb e5 ; 0xf7b63
push 00ad9h ; 68 d9 0a ; 0xf7b65 logo.c:565
push strict byte 00002h ; 6a 02 ; 0xf7b68
call 01a68h ; e8 fb 9e ; 0xf7b6a
add sp, strict byte 00004h ; 83 c4 04 ; 0xf7b6d
mov AL, strict byte 034h ; b0 34 ; 0xf7b70 logo.c:567
out strict byte 043h, AL ; e6 43 ; 0xf7b72
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xf7b74
out strict byte 040h, AL ; e6 40 ; 0xf7b76
out strict byte 040h, AL ; e6 40 ; 0xf7b78
pushad ; 66 60 ; 0xf7b7a
push DS ; 1e ; 0xf7b7c
mov ds, ax ; 8e d8 ; 0xf7b7d
call 0edbfh ; e8 3d 72 ; 0xf7b7f
pop DS ; 1f ; 0xf7b82
popad ; 66 61 ; 0xf7b83
lea sp, [bp-004h] ; 8d 66 fc ; 0xf7b85 logo.c:568
pop dx ; 5a ; 0xf7b88
pop bx ; 5b ; 0xf7b89
pop bp ; 5d ; 0xf7b8a
retn ; c3 ; 0xf7b8b
; disGetNextSymbol 0xf7b8c LB 0x3290 -> off=0x0 cb=000000000000003a uValue=00000000000f658c 'scsi_hba_mem_alloc'
scsi_hba_mem_alloc: ; 0xf7b8c LB 0x3a
push bx ; 53 ; 0xf7b8c scsi.c:108
push cx ; 51 ; 0xf7b8d
push dx ; 52 ; 0xf7b8e
push di ; 57 ; 0xf7b8f
push bp ; 55 ; 0xf7b90
mov bp, sp ; 89 e5 ; 0xf7b91
mov di, 00413h ; bf 13 04 ; 0xf7b93 scsi.c:58
xor ax, ax ; 31 c0 ; 0xf7b96
mov es, ax ; 8e c0 ; 0xf7b98
mov ax, word [es:di] ; 26 8b 05 ; 0xf7b9a
test ax, ax ; 85 c0 ; 0xf7b9d scsi.c:117
je short 07bc0h ; 74 1f ; 0xf7b9f
dec ax ; 48 ; 0xf7ba1 scsi.c:118
mov bx, ax ; 89 c3 ; 0xf7ba2
xor dx, dx ; 31 d2 ; 0xf7ba4 scsi.c:121
mov cx, strict word 0000ah ; b9 0a 00 ; 0xf7ba6
sal ax, 1 ; d1 e0 ; 0xf7ba9
rcl dx, 1 ; d1 d2 ; 0xf7bab
loop 07ba9h ; e2 fa ; 0xf7bad
mov di, dx ; 89 d7 ; 0xf7baf
mov cx, strict word 00004h ; b9 04 00 ; 0xf7bb1
shr di, 1 ; d1 ef ; 0xf7bb4
rcr ax, 1 ; d1 d8 ; 0xf7bb6
loop 07bb4h ; e2 fa ; 0xf7bb8
mov di, 00413h ; bf 13 04 ; 0xf7bba scsi.c:63
mov word [es:di], bx ; 26 89 1d ; 0xf7bbd
pop bp ; 5d ; 0xf7bc0 scsi.c:126
pop di ; 5f ; 0xf7bc1
pop dx ; 5a ; 0xf7bc2
pop cx ; 59 ; 0xf7bc3
pop bx ; 5b ; 0xf7bc4
retn ; c3 ; 0xf7bc5
; disGetNextSymbol 0xf7bc6 LB 0x3256 -> off=0x0 cb=0000000000000102 uValue=00000000000f65c6 'scsi_read_sectors'
scsi_read_sectors: ; 0xf7bc6 LB 0x102
push bp ; 55 ; 0xf7bc6 scsi.c:135
mov bp, sp ; 89 e5 ; 0xf7bc7
push si ; 56 ; 0xf7bc9
push di ; 57 ; 0xf7bca
sub sp, strict byte 0001ah ; 83 ec 1a ; 0xf7bcb
mov si, word [bp+004h] ; 8b 76 04 ; 0xf7bce
mov es, [bp+006h] ; 8e 46 06 ; 0xf7bd1 scsi.c:146
mov al, byte [es:si+00ch] ; 26 8a 44 0c ; 0xf7bd4
sub AL, strict byte 008h ; 2c 08 ; 0xf7bd8
mov byte [bp-006h], al ; 88 46 fa ; 0xf7bda
cmp AL, strict byte 004h ; 3c 04 ; 0xf7bdd scsi.c:147
jbe short 07bf4h ; 76 13 ; 0xf7bdf
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7be1 scsi.c:148
push ax ; 50 ; 0xf7be5
push 00baeh ; 68 ae 0b ; 0xf7be6
push 00bc0h ; 68 c0 0b ; 0xf7be9
push strict byte 00007h ; 6a 07 ; 0xf7bec
call 01a68h ; e8 77 9e ; 0xf7bee
add sp, strict byte 00008h ; 83 c4 08 ; 0xf7bf1
mov es, [bp+006h] ; 8e 46 06 ; 0xf7bf4 scsi.c:150
mov ax, word [es:si+00eh] ; 26 8b 44 0e ; 0xf7bf7
mov word [bp-008h], ax ; 89 46 f8 ; 0xf7bfb
shr eax, 010h ; 66 c1 e8 10 ; 0xf7bfe scsi.c:85
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf7c02
mov word [bp-01eh], 00088h ; c7 46 e2 88 00 ; 0xf7c05 scsi.c:155
mov es, [bp+006h] ; 8e 46 06 ; 0xf7c0a scsi.c:156
mov ax, word [es:si+006h] ; 26 8b 44 06 ; 0xf7c0d
mov bx, word [es:si+004h] ; 26 8b 5c 04 ; 0xf7c11
mov cx, word [es:si+002h] ; 26 8b 4c 02 ; 0xf7c15
mov dx, word [es:si] ; 26 8b 14 ; 0xf7c19
xchg ah, al ; 86 c4 ; 0xf7c1c
xchg bh, bl ; 86 df ; 0xf7c1e
xchg ch, cl ; 86 cd ; 0xf7c20
xchg dh, dl ; 86 d6 ; 0xf7c22
xchg dx, ax ; 92 ; 0xf7c24
xchg bx, cx ; 87 cb ; 0xf7c25
mov word [bp-016h], ax ; 89 46 ea ; 0xf7c27
mov word [bp-018h], bx ; 89 5e e8 ; 0xf7c2a
mov word [bp-01ah], cx ; 89 4e e6 ; 0xf7c2d
mov word [bp-01ch], dx ; 89 56 e4 ; 0xf7c30
mov byte [bp-010h], 000h ; c6 46 f0 00 ; 0xf7c33 scsi.c:157
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf7c37 scsi.c:158
xor dx, dx ; 31 d2 ; 0xf7c3a
xchg ah, al ; 86 c4 ; 0xf7c3c
xchg dh, dl ; 86 d6 ; 0xf7c3e
xchg dx, ax ; 92 ; 0xf7c40
mov word [bp-014h], ax ; 89 46 ec ; 0xf7c41
mov word [bp-012h], dx ; 89 56 ee ; 0xf7c44
mov byte [bp-00fh], 000h ; c6 46 f1 00 ; 0xf7c47 scsi.c:159
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7c4b scsi.c:162
sal ax, 002h ; c1 e0 02 ; 0xf7c4f
mov bx, si ; 89 f3 ; 0xf7c52
add bx, ax ; 01 c3 ; 0xf7c54
mov dx, word [es:bx+00290h] ; 26 8b 97 90 02 ; 0xf7c56
mov al, byte [es:bx+00292h] ; 26 8a 87 92 02 ; 0xf7c5b scsi.c:163
mov bl, byte [es:bx+00293h] ; 26 8a 9f 93 02 ; 0xf7c60 scsi.c:164
movzx di, al ; 0f b6 f8 ; 0xf7c65 scsi.c:169
imul di, di, strict byte 0000ch ; 6b ff 0c ; 0xf7c68
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf7c6b
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf7c6e
xor ax, ax ; 31 c0 ; 0xf7c71
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf7c73
mov cx, strict word 00009h ; b9 09 00 ; 0xf7c76
sal word [bp-00eh], 1 ; d1 66 f2 ; 0xf7c79
rcl word [bp-00ch], 1 ; d1 56 f4 ; 0xf7c7c
loop 07c79h ; e2 f8 ; 0xf7c7f
push dword [bp-00eh] ; 66 ff 76 f2 ; 0xf7c81
db 066h, 026h, 0ffh, 074h, 008h
; push dword [es:si+008h] ; 66 26 ff 74 08 ; 0xf7c85
push strict byte 00010h ; 6a 10 ; 0xf7c8a
lea cx, [bp-01eh] ; 8d 4e e2 ; 0xf7c8c
push SS ; 16 ; 0xf7c8f
push cx ; 51 ; 0xf7c90
xor bh, bh ; 30 ff ; 0xf7c91
call word [di+000a4h] ; ff 95 a4 00 ; 0xf7c93
mov dl, al ; 88 c2 ; 0xf7c97
test al, al ; 84 c0 ; 0xf7c99 scsi.c:171
jne short 07cb5h ; 75 18 ; 0xf7c9b
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf7c9d scsi.c:173
mov es, [bp+006h] ; 8e 46 06 ; 0xf7ca0
mov word [es:si+018h], ax ; 26 89 44 18 ; 0xf7ca3
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf7ca7 scsi.c:174
mov word [es:si+01ah], ax ; 26 89 44 1a ; 0xf7caa
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf7cae
mov word [es:si+01ch], ax ; 26 89 44 1c ; 0xf7cb1
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf7cb5 scsi.c:88
sal eax, 010h ; 66 c1 e0 10 ; 0xf7cb8 scsi.c:90
movzx ax, dl ; 0f b6 c2 ; 0xf7cbc scsi.c:179
lea sp, [bp-004h] ; 8d 66 fc ; 0xf7cbf scsi.c:180
pop di ; 5f ; 0xf7cc2
pop si ; 5e ; 0xf7cc3
pop bp ; 5d ; 0xf7cc4
retn 00004h ; c2 04 00 ; 0xf7cc5
; disGetNextSymbol 0xf7cc8 LB 0x3154 -> off=0x0 cb=0000000000000102 uValue=00000000000f66c8 'scsi_write_sectors'
scsi_write_sectors: ; 0xf7cc8 LB 0x102
push bp ; 55 ; 0xf7cc8 scsi.c:189
mov bp, sp ; 89 e5 ; 0xf7cc9
push si ; 56 ; 0xf7ccb
push di ; 57 ; 0xf7ccc
sub sp, strict byte 0001ah ; 83 ec 1a ; 0xf7ccd
mov si, word [bp+004h] ; 8b 76 04 ; 0xf7cd0
mov es, [bp+006h] ; 8e 46 06 ; 0xf7cd3 scsi.c:200
mov al, byte [es:si+00ch] ; 26 8a 44 0c ; 0xf7cd6
sub AL, strict byte 008h ; 2c 08 ; 0xf7cda
mov byte [bp-006h], al ; 88 46 fa ; 0xf7cdc
cmp AL, strict byte 004h ; 3c 04 ; 0xf7cdf scsi.c:201
jbe short 07cf6h ; 76 13 ; 0xf7ce1
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7ce3 scsi.c:202
push ax ; 50 ; 0xf7ce7
push 00bdfh ; 68 df 0b ; 0xf7ce8
push 00bc0h ; 68 c0 0b ; 0xf7ceb
push strict byte 00007h ; 6a 07 ; 0xf7cee
call 01a68h ; e8 75 9d ; 0xf7cf0
add sp, strict byte 00008h ; 83 c4 08 ; 0xf7cf3
mov es, [bp+006h] ; 8e 46 06 ; 0xf7cf6 scsi.c:204
mov ax, word [es:si+00eh] ; 26 8b 44 0e ; 0xf7cf9
mov word [bp-008h], ax ; 89 46 f8 ; 0xf7cfd
shr eax, 010h ; 66 c1 e8 10 ; 0xf7d00 scsi.c:85
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf7d04
mov word [bp-01eh], 0008ah ; c7 46 e2 8a 00 ; 0xf7d07 scsi.c:209
mov es, [bp+006h] ; 8e 46 06 ; 0xf7d0c scsi.c:210
mov ax, word [es:si+006h] ; 26 8b 44 06 ; 0xf7d0f
mov bx, word [es:si+004h] ; 26 8b 5c 04 ; 0xf7d13
mov cx, word [es:si+002h] ; 26 8b 4c 02 ; 0xf7d17
mov dx, word [es:si] ; 26 8b 14 ; 0xf7d1b
xchg ah, al ; 86 c4 ; 0xf7d1e
xchg bh, bl ; 86 df ; 0xf7d20
xchg ch, cl ; 86 cd ; 0xf7d22
xchg dh, dl ; 86 d6 ; 0xf7d24
xchg dx, ax ; 92 ; 0xf7d26
xchg bx, cx ; 87 cb ; 0xf7d27
mov word [bp-016h], ax ; 89 46 ea ; 0xf7d29
mov word [bp-018h], bx ; 89 5e e8 ; 0xf7d2c
mov word [bp-01ah], cx ; 89 4e e6 ; 0xf7d2f
mov word [bp-01ch], dx ; 89 56 e4 ; 0xf7d32
mov byte [bp-010h], 000h ; c6 46 f0 00 ; 0xf7d35 scsi.c:211
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf7d39 scsi.c:212
xor dx, dx ; 31 d2 ; 0xf7d3c
xchg ah, al ; 86 c4 ; 0xf7d3e
xchg dh, dl ; 86 d6 ; 0xf7d40
xchg dx, ax ; 92 ; 0xf7d42
mov word [bp-014h], ax ; 89 46 ec ; 0xf7d43
mov word [bp-012h], dx ; 89 56 ee ; 0xf7d46
mov byte [bp-00fh], 000h ; c6 46 f1 00 ; 0xf7d49 scsi.c:213
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7d4d scsi.c:215
sal ax, 002h ; c1 e0 02 ; 0xf7d51
mov bx, si ; 89 f3 ; 0xf7d54
add bx, ax ; 01 c3 ; 0xf7d56
mov dx, word [es:bx+00290h] ; 26 8b 97 90 02 ; 0xf7d58
mov al, byte [es:bx+00292h] ; 26 8a 87 92 02 ; 0xf7d5d scsi.c:216
mov bl, byte [es:bx+00293h] ; 26 8a 9f 93 02 ; 0xf7d62 scsi.c:217
movzx di, al ; 0f b6 f8 ; 0xf7d67 scsi.c:222
imul di, di, strict byte 0000ch ; 6b ff 0c ; 0xf7d6a
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf7d6d
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf7d70
xor ax, ax ; 31 c0 ; 0xf7d73
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf7d75
mov cx, strict word 00009h ; b9 09 00 ; 0xf7d78
sal word [bp-00eh], 1 ; d1 66 f2 ; 0xf7d7b
rcl word [bp-00ch], 1 ; d1 56 f4 ; 0xf7d7e
loop 07d7bh ; e2 f8 ; 0xf7d81
push dword [bp-00eh] ; 66 ff 76 f2 ; 0xf7d83
db 066h, 026h, 0ffh, 074h, 008h
; push dword [es:si+008h] ; 66 26 ff 74 08 ; 0xf7d87
push strict byte 00010h ; 6a 10 ; 0xf7d8c
lea cx, [bp-01eh] ; 8d 4e e2 ; 0xf7d8e
push SS ; 16 ; 0xf7d91
push cx ; 51 ; 0xf7d92
xor bh, bh ; 30 ff ; 0xf7d93
call word [di+000a2h] ; ff 95 a2 00 ; 0xf7d95
mov dl, al ; 88 c2 ; 0xf7d99
test al, al ; 84 c0 ; 0xf7d9b scsi.c:224
jne short 07db7h ; 75 18 ; 0xf7d9d
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xf7d9f scsi.c:226
mov es, [bp+006h] ; 8e 46 06 ; 0xf7da2
mov word [es:si+018h], ax ; 26 89 44 18 ; 0xf7da5
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf7da9 scsi.c:227
mov word [es:si+01ah], ax ; 26 89 44 1a ; 0xf7dac
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf7db0
mov word [es:si+01ch], ax ; 26 89 44 1c ; 0xf7db3
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf7db7 scsi.c:88
sal eax, 010h ; 66 c1 e0 10 ; 0xf7dba scsi.c:90
movzx ax, dl ; 0f b6 c2 ; 0xf7dbe scsi.c:232
lea sp, [bp-004h] ; 8d 66 fc ; 0xf7dc1 scsi.c:233
pop di ; 5f ; 0xf7dc4
pop si ; 5e ; 0xf7dc5
pop bp ; 5d ; 0xf7dc6
retn 00004h ; c2 04 00 ; 0xf7dc7
; disGetNextSymbol 0xf7dca LB 0x3052 -> off=0x0 cb=0000000000000107 uValue=00000000000f67ca 'scsi_cmd_packet'
scsi_cmd_packet: ; 0xf7dca LB 0x107
push bp ; 55 ; 0xf7dca scsi.c:252
mov bp, sp ; 89 e5 ; 0xf7dcb
push si ; 56 ; 0xf7dcd
push di ; 57 ; 0xf7dce
sub sp, strict byte 00010h ; 83 ec 10 ; 0xf7dcf
mov di, ax ; 89 c7 ; 0xf7dd2
mov byte [bp-006h], dl ; 88 56 fa ; 0xf7dd4
mov word [bp-012h], bx ; 89 5e ee ; 0xf7dd7
mov word [bp-00eh], cx ; 89 4e f2 ; 0xf7dda
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf7ddd scsi.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf7de0
mov es, ax ; 8e c0 ; 0xf7de3
mov ax, word [es:bx] ; 26 8b 07 ; 0xf7de5
mov si, strict word 0005eh ; be 5e 00 ; 0xf7de8 scsi.c:59
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf7deb
cmp byte [bp+008h], 002h ; 80 7e 08 02 ; 0xf7dee scsi.c:263
jne short 07e13h ; 75 1f ; 0xf7df2
mov bx, 00e16h ; bb 16 0e ; 0xf7df4 scsi.c:264
mov cx, ds ; 8c d9 ; 0xf7df7
mov ax, strict word 00004h ; b8 04 00 ; 0xf7df9
call 01a27h ; e8 28 9c ; 0xf7dfc
push 00bf2h ; 68 f2 0b ; 0xf7dff
push 00c02h ; 68 02 0c ; 0xf7e02
push strict byte 00004h ; 6a 04 ; 0xf7e05
call 01a68h ; e8 5e 9c ; 0xf7e07
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7e0a
mov ax, strict word 00001h ; b8 01 00 ; 0xf7e0d scsi.c:265
jmp near 07ec8h ; e9 b5 00 ; 0xf7e10
sub di, strict byte 00008h ; 83 ef 08 ; 0xf7e13 scsi.c:269
shr eax, 010h ; 66 c1 e8 10 ; 0xf7e16 scsi.c:85
mov word [bp-010h], ax ; 89 46 f0 ; 0xf7e1a
mov bx, di ; 89 fb ; 0xf7e1d scsi.c:277
sal bx, 002h ; c1 e3 02 ; 0xf7e1f
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf7e22
add bx, si ; 01 f3 ; 0xf7e25
mov ax, word [es:bx+00290h] ; 26 8b 87 90 02 ; 0xf7e27
mov word [bp-014h], ax ; 89 46 ec ; 0xf7e2c
mov al, byte [es:bx+00292h] ; 26 8a 87 92 02 ; 0xf7e2f scsi.c:278
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf7e34
mov al, byte [es:bx+00293h] ; 26 8a 87 93 02 ; 0xf7e37 scsi.c:279
mov byte [bp-008h], al ; 88 46 f8 ; 0xf7e3c
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf7e3f scsi.c:281
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf7e42
mov cx, strict word 00008h ; b9 08 00 ; 0xf7e45
sal ax, 1 ; d1 e0 ; 0xf7e48
rcl dx, 1 ; d1 d2 ; 0xf7e4a
loop 07e48h ; e2 fa ; 0xf7e4c
mov word [es:si], ax ; 26 89 04 ; 0xf7e4e
mov word [es:si+002h], dx ; 26 89 54 02 ; 0xf7e51
db 066h, 026h, 0c7h, 044h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000000h ; 66 26 c7 44 04 00 00 00 00; 0xf7e55
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf7e5e scsi.c:282
mov word [es:si+008h], ax ; 26 89 44 08 ; 0xf7e61
mov ax, word [bp+00ch] ; 8b 46 0c ; 0xf7e65
mov word [es:si+00ah], ax ; 26 89 44 0a ; 0xf7e68
mov bx, word [es:si+010h] ; 26 8b 5c 10 ; 0xf7e6c scsi.c:283
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf7e70
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf7e73
xor cx, cx ; 31 c9 ; 0xf7e76
call 0ad20h ; e8 a5 2e ; 0xf7e78
mov word [es:si+00eh], ax ; 26 89 44 0e ; 0xf7e7b
movzx di, byte [bp-00ah] ; 0f b6 7e f6 ; 0xf7e7f scsi.c:288
imul di, di, strict byte 0000ch ; 6b ff 0c ; 0xf7e83
push dword [bp+004h] ; 66 ff 76 04 ; 0xf7e86
db 066h, 026h, 0ffh, 074h, 008h
; push dword [es:si+008h] ; 66 26 ff 74 08 ; 0xf7e8a
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf7e8f
push ax ; 50 ; 0xf7e93
push word [bp-00eh] ; ff 76 f2 ; 0xf7e94
push word [bp-012h] ; ff 76 ee ; 0xf7e97
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf7e9a
xor ax, ax ; 31 c0 ; 0xf7e9e
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf7ea0
call word [di+000a4h] ; ff 95 a4 00 ; 0xf7ea3
mov dl, al ; 88 c2 ; 0xf7ea7
test al, al ; 84 c0 ; 0xf7ea9 scsi.c:290
jne short 07ebeh ; 75 11 ; 0xf7eab
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf7ead scsi.c:291
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf7eb0
mov word [es:si+01ah], ax ; 26 89 44 1a ; 0xf7eb3
mov ax, word [bp+006h] ; 8b 46 06 ; 0xf7eb7
mov word [es:si+01ch], ax ; 26 89 44 1c ; 0xf7eba
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf7ebe scsi.c:88
sal eax, 010h ; 66 c1 e0 10 ; 0xf7ec1 scsi.c:90
movzx ax, dl ; 0f b6 c2 ; 0xf7ec5 scsi.c:296
lea sp, [bp-004h] ; 8d 66 fc ; 0xf7ec8 scsi.c:297
pop di ; 5f ; 0xf7ecb
pop si ; 5e ; 0xf7ecc
pop bp ; 5d ; 0xf7ecd
retn 0000ah ; c2 0a 00 ; 0xf7ece
; disGetNextSymbol 0xf7ed1 LB 0x2f4b -> off=0x0 cb=000000000000048b uValue=00000000000f68d1 'scsi_enumerate_attached_devices'
scsi_enumerate_attached_devices: ; 0xf7ed1 LB 0x48b
push bp ; 55 ; 0xf7ed1 scsi.c:305
mov bp, sp ; 89 e5 ; 0xf7ed2
push bx ; 53 ; 0xf7ed4
push cx ; 51 ; 0xf7ed5
push si ; 56 ; 0xf7ed6
push di ; 57 ; 0xf7ed7
sub sp, 0023eh ; 81 ec 3e 02 ; 0xf7ed8
push ax ; 50 ; 0xf7edc
mov byte [bp-00eh], dl ; 88 56 f2 ; 0xf7edd
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf7ee0 scsi.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf7ee3
mov es, ax ; 8e c0 ; 0xf7ee6
mov ax, word [es:bx] ; 26 8b 07 ; 0xf7ee8
mov di, strict word 0005eh ; bf 5e 00 ; 0xf7eeb scsi.c:59
mov word [bp-022h], ax ; 89 46 de ; 0xf7eee
mov word [bp-030h], strict word 00000h ; c7 46 d0 00 00 ; 0xf7ef1 scsi.c:314
jmp near 08310h ; e9 17 04 ; 0xf7ef6
mov es, [bp-022h] ; 8e 46 de ; 0xf7ef9 scsi.c:320
mov al, byte [es:di+002a0h] ; 26 8a 85 a0 02 ; 0xf7efc
mov byte [bp-00ch], al ; 88 46 f4 ; 0xf7f01
test byte [bp-00246h], 0e0h ; f6 86 ba fd e0 ; 0xf7f04 scsi.c:337
jne near 08252h ; 0f 85 45 03 ; 0xf7f09
test byte [bp-00246h], 01fh ; f6 86 ba fd 1f ; 0xf7f0d
jne near 08252h ; 0f 85 3c 03 ; 0xf7f12
cmp AL, strict byte 004h ; 3c 04 ; 0xf7f16 scsi.c:343
jnc near 08353h ; 0f 83 37 04 ; 0xf7f18
mov cx, strict word 00010h ; b9 10 00 ; 0xf7f1c scsi.c:352
xor bx, bx ; 31 db ; 0xf7f1f
mov dx, ss ; 8c d2 ; 0xf7f21
lea ax, [bp-046h] ; 8d 46 ba ; 0xf7f23
call 0ad80h ; e8 57 2e ; 0xf7f26
mov byte [bp-046h], 09eh ; c6 46 ba 9e ; 0xf7f29 scsi.c:353
mov byte [bp-045h], 010h ; c6 46 bb 10 ; 0xf7f2d scsi.c:354
mov byte [bp-039h], 020h ; c6 46 c7 20 ; 0xf7f31 scsi.c:355
movzx si, byte [bp-00eh] ; 0f b6 76 f2 ; 0xf7f35 scsi.c:357
imul si, si, strict byte 0000ch ; 6b f6 0c ; 0xf7f39
push dword 000000020h ; 66 6a 20 ; 0xf7f3c
lea dx, [bp-00246h] ; 8d 96 ba fd ; 0xf7f3f
push SS ; 16 ; 0xf7f43
push dx ; 52 ; 0xf7f44
push strict byte 00010h ; 6a 10 ; 0xf7f45
lea dx, [bp-046h] ; 8d 56 ba ; 0xf7f47
push SS ; 16 ; 0xf7f4a
push dx ; 52 ; 0xf7f4b
movzx bx, byte [bp-030h] ; 0f b6 5e d0 ; 0xf7f4c
xor ax, ax ; 31 c0 ; 0xf7f50
mov dx, word [bp-00248h] ; 8b 96 b8 fd ; 0xf7f52
call word [si+000a4h] ; ff 94 a4 00 ; 0xf7f56
test al, al ; 84 c0 ; 0xf7f5a scsi.c:358
je short 07f6ch ; 74 0e ; 0xf7f5c
push 00c22h ; 68 22 0c ; 0xf7f5e scsi.c:359
push 00c42h ; 68 42 0c ; 0xf7f61
push strict byte 00007h ; 6a 07 ; 0xf7f64
call 01a68h ; e8 ff 9a ; 0xf7f66
add sp, strict byte 00006h ; 83 c4 06 ; 0xf7f69
mov ax, word [bp-00240h] ; 8b 86 c0 fd ; 0xf7f6c scsi.c:364
mov bx, word [bp-00242h] ; 8b 9e be fd ; 0xf7f70
mov cx, word [bp-00244h] ; 8b 8e bc fd ; 0xf7f74
mov dx, word [bp-00246h] ; 8b 96 ba fd ; 0xf7f78
xchg ah, al ; 86 c4 ; 0xf7f7c
xchg bh, bl ; 86 df ; 0xf7f7e
xchg ch, cl ; 86 cd ; 0xf7f80
xchg dh, dl ; 86 d6 ; 0xf7f82
xchg dx, ax ; 92 ; 0xf7f84
xchg bx, cx ; 87 cb ; 0xf7f85
add dx, strict byte 00001h ; 83 c2 01 ; 0xf7f87
mov word [bp-014h], dx ; 89 56 ec ; 0xf7f8a
adc cx, strict byte 00000h ; 83 d1 00 ; 0xf7f8d
mov word [bp-01ah], cx ; 89 4e e6 ; 0xf7f90
adc bx, strict byte 00000h ; 83 d3 00 ; 0xf7f93
mov word [bp-032h], bx ; 89 5e ce ; 0xf7f96
adc ax, strict word 00000h ; 15 00 00 ; 0xf7f99
mov word [bp-010h], ax ; 89 46 f0 ; 0xf7f9c
movzx si, byte [bp-0023eh] ; 0f b6 b6 c2 fd ; 0xf7f9f scsi.c:366
sal si, 008h ; c1 e6 08 ; 0xf7fa4
movzx ax, byte [bp-0023dh] ; 0f b6 86 c3 fd ; 0xf7fa7
xor bx, bx ; 31 db ; 0xf7fac
or si, ax ; 09 c6 ; 0xf7fae
movzx ax, byte [bp-0023ch] ; 0f b6 86 c4 fd ; 0xf7fb0
xor dx, dx ; 31 d2 ; 0xf7fb5
mov cx, strict word 00008h ; b9 08 00 ; 0xf7fb7
sal ax, 1 ; d1 e0 ; 0xf7fba
rcl dx, 1 ; d1 d2 ; 0xf7fbc
loop 07fbah ; e2 fa ; 0xf7fbe
or bx, ax ; 09 c3 ; 0xf7fc0
or dx, si ; 09 f2 ; 0xf7fc2
movzx ax, byte [bp-0023bh] ; 0f b6 86 c5 fd ; 0xf7fc4
or bx, ax ; 09 c3 ; 0xf7fc9
mov word [bp-026h], bx ; 89 5e da ; 0xf7fcb
test dx, dx ; 85 d2 ; 0xf7fce scsi.c:372
jne short 07fd8h ; 75 06 ; 0xf7fd0
cmp bx, 00200h ; 81 fb 00 02 ; 0xf7fd2
je short 07ff8h ; 74 20 ; 0xf7fd6
mov bx, 00e16h ; bb 16 0e ; 0xf7fd8 scsi.c:375
mov cx, ds ; 8c d9 ; 0xf7fdb
mov ax, strict word 00004h ; b8 04 00 ; 0xf7fdd
call 01a27h ; e8 44 9a ; 0xf7fe0
push dx ; 52 ; 0xf7fe3
push word [bp-026h] ; ff 76 da ; 0xf7fe4
push word [bp-030h] ; ff 76 d0 ; 0xf7fe7
push 00c61h ; 68 61 0c ; 0xf7fea
push strict byte 00004h ; 6a 04 ; 0xf7fed
call 01a68h ; e8 76 9a ; 0xf7fef
add sp, strict byte 0000ah ; 83 c4 0a ; 0xf7ff2
jmp near 08307h ; e9 0f 03 ; 0xf7ff5 scsi.c:376
mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xf7ff8 scsi.c:380
cmp AL, strict byte 001h ; 3c 01 ; 0xf7ffb
jc short 0800bh ; 72 0c ; 0xf7ffd
jbe short 08013h ; 76 12 ; 0xf7fff
cmp AL, strict byte 003h ; 3c 03 ; 0xf8001
je short 0801bh ; 74 16 ; 0xf8003
cmp AL, strict byte 002h ; 3c 02 ; 0xf8005
je short 08017h ; 74 0e ; 0xf8007
jmp short 08052h ; eb 47 ; 0xf8009
test al, al ; 84 c0 ; 0xf800b
jne short 08052h ; 75 43 ; 0xf800d
mov BL, strict byte 090h ; b3 90 ; 0xf800f scsi.c:383
jmp short 0801dh ; eb 0a ; 0xf8011 scsi.c:384
mov BL, strict byte 098h ; b3 98 ; 0xf8013 scsi.c:386
jmp short 0801dh ; eb 06 ; 0xf8015 scsi.c:387
mov BL, strict byte 0a0h ; b3 a0 ; 0xf8017 scsi.c:389
jmp short 0801dh ; eb 02 ; 0xf8019 scsi.c:390
mov BL, strict byte 0a8h ; b3 a8 ; 0xf801b scsi.c:392
mov al, bl ; 88 d8 ; 0xf801d scsi.c:396
add AL, strict byte 007h ; 04 07 ; 0xf801f
movzx cx, al ; 0f b6 c8 ; 0xf8021
mov ax, cx ; 89 c8 ; 0xf8024
call 0176ah ; e8 41 97 ; 0xf8026
test al, al ; 84 c0 ; 0xf8029
je short 08052h ; 74 25 ; 0xf802b
movzx ax, bl ; 0f b6 c3 ; 0xf802d scsi.c:401
call 017a6h ; e8 73 97 ; 0xf8030
mov dx, ax ; 89 c2 ; 0xf8033
xor si, si ; 31 f6 ; 0xf8035
mov al, bl ; 88 d8 ; 0xf8037 scsi.c:402
add AL, strict byte 002h ; 04 02 ; 0xf8039
xor ah, ah ; 30 e4 ; 0xf803b
call 0176ah ; e8 2a 97 ; 0xf803d
xor ah, ah ; 30 e4 ; 0xf8040
mov word [bp-012h], ax ; 89 46 ee ; 0xf8042
mov ax, cx ; 89 c8 ; 0xf8045 scsi.c:403
call 0176ah ; e8 20 97 ; 0xf8047
xor ah, ah ; 30 e4 ; 0xf804a
mov word [bp-016h], ax ; 89 46 ea ; 0xf804c
jmp near 0813dh ; e9 eb 00 ; 0xf804f scsi.c:405
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf8052 scsi.c:406
mov bx, word [bp-032h] ; 8b 5e ce ; 0xf8055
mov cx, word [bp-01ah] ; 8b 4e e6 ; 0xf8058
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf805b
mov si, strict word 0000ch ; be 0c 00 ; 0xf805e
call 0ad60h ; e8 fc 2c ; 0xf8061
mov word [bp-01ch], ax ; 89 46 e4 ; 0xf8064
mov word [bp-018h], bx ; 89 5e e8 ; 0xf8067
mov word [bp-024h], cx ; 89 4e dc ; 0xf806a
mov word [bp-01eh], dx ; 89 56 e2 ; 0xf806d
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf8070 scsi.c:410
test ax, ax ; 85 c0 ; 0xf8073
jnbe short 0808dh ; 77 16 ; 0xf8075
jne near 08100h ; 0f 85 85 00 ; 0xf8077
cmp word [bp-032h], strict byte 00000h ; 83 7e ce 00 ; 0xf807b
jnbe short 0808dh ; 77 0c ; 0xf807f
jne near 08100h ; 0f 85 7b 00 ; 0xf8081
cmp word [bp-01ah], strict byte 00040h ; 83 7e e6 40 ; 0xf8085
jnbe short 0808dh ; 77 02 ; 0xf8089
jne short 08100h ; 75 73 ; 0xf808b
mov word [bp-012h], 000ffh ; c7 46 ee ff 00 ; 0xf808d scsi.c:412
mov word [bp-016h], strict word 0003fh ; c7 46 ea 3f 00 ; 0xf8092 scsi.c:413
mov bx, word [bp-032h] ; 8b 5e ce ; 0xf8097 scsi.c:415
mov cx, word [bp-01ah] ; 8b 4e e6 ; 0xf809a
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf809d
mov si, strict word 00006h ; be 06 00 ; 0xf80a0
call 0ad60h ; e8 ba 2c ; 0xf80a3
mov si, word [bp-01eh] ; 8b 76 e2 ; 0xf80a6
add si, dx ; 01 d6 ; 0xf80a9
mov word [bp-028h], si ; 89 76 d8 ; 0xf80ab
mov dx, word [bp-024h] ; 8b 56 dc ; 0xf80ae
adc dx, cx ; 11 ca ; 0xf80b1
mov word [bp-020h], dx ; 89 56 e0 ; 0xf80b3
mov dx, word [bp-018h] ; 8b 56 e8 ; 0xf80b6
adc dx, bx ; 11 da ; 0xf80b9
mov word [bp-036h], dx ; 89 56 ca ; 0xf80bb
mov dx, word [bp-01ch] ; 8b 56 e4 ; 0xf80be
adc dx, ax ; 11 c2 ; 0xf80c1
mov word [bp-034h], dx ; 89 56 cc ; 0xf80c3
mov ax, dx ; 89 d0 ; 0xf80c6 scsi.c:416
mov bx, word [bp-036h] ; 8b 5e ca ; 0xf80c8
mov cx, word [bp-020h] ; 8b 4e e0 ; 0xf80cb
mov dx, si ; 89 f2 ; 0xf80ce
mov si, strict word 00008h ; be 08 00 ; 0xf80d0
call 0ad60h ; e8 8a 2c ; 0xf80d3
mov word [bp-02ah], bx ; 89 5e d6 ; 0xf80d6
mov word [bp-02ch], cx ; 89 4e d4 ; 0xf80d9
mov word [bp-02eh], dx ; 89 56 d2 ; 0xf80dc
mov ax, word [bp-034h] ; 8b 46 cc ; 0xf80df
mov bx, word [bp-036h] ; 8b 5e ca ; 0xf80e2
mov cx, word [bp-020h] ; 8b 4e e0 ; 0xf80e5
mov dx, word [bp-028h] ; 8b 56 d8 ; 0xf80e8
mov si, strict word 00010h ; be 10 00 ; 0xf80eb
call 0ad60h ; e8 6f 2c ; 0xf80ee
add dx, word [bp-02eh] ; 03 56 d2 ; 0xf80f1
mov si, word [bp-02ch] ; 8b 76 d4 ; 0xf80f4
adc si, cx ; 11 ce ; 0xf80f7
mov ax, word [bp-02ah] ; 8b 46 d6 ; 0xf80f9
adc ax, bx ; 11 d8 ; 0xf80fc
jmp short 0813dh ; eb 3d ; 0xf80fe scsi.c:418
test ax, ax ; 85 c0 ; 0xf8100
jnbe short 08116h ; 77 12 ; 0xf8102
jne short 08122h ; 75 1c ; 0xf8104
cmp word [bp-032h], strict byte 00000h ; 83 7e ce 00 ; 0xf8106
jnbe short 08116h ; 77 0a ; 0xf810a
jne short 08122h ; 75 14 ; 0xf810c
cmp word [bp-01ah], strict byte 00020h ; 83 7e e6 20 ; 0xf810e
jnbe short 08116h ; 77 02 ; 0xf8112
jne short 08122h ; 75 0c ; 0xf8114
mov word [bp-012h], 00080h ; c7 46 ee 80 00 ; 0xf8116 scsi.c:420
mov word [bp-016h], strict word 00020h ; c7 46 ea 20 00 ; 0xf811b scsi.c:421
jmp short 0813bh ; eb 19 ; 0xf8120 scsi.c:424
mov word [bp-012h], strict word 00040h ; c7 46 ee 40 00 ; 0xf8122 scsi.c:426
mov word [bp-016h], strict word 00020h ; c7 46 ea 20 00 ; 0xf8127 scsi.c:427
mov bx, word [bp-032h] ; 8b 5e ce ; 0xf812c scsi.c:428
mov cx, word [bp-01ah] ; 8b 4e e6 ; 0xf812f
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf8132
mov si, strict word 0000bh ; be 0b 00 ; 0xf8135
call 0ad60h ; e8 25 2c ; 0xf8138
mov si, cx ; 89 ce ; 0xf813b
mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xf813d scsi.c:433
add AL, strict byte 008h ; 04 08 ; 0xf8140
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf8142
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf8145 scsi.c:435
sal ax, 002h ; c1 e0 02 ; 0xf8149
mov es, [bp-022h] ; 8e 46 de ; 0xf814c
mov bx, di ; 89 fb ; 0xf814f
add bx, ax ; 01 c3 ; 0xf8151
mov ax, word [bp-00248h] ; 8b 86 b8 fd ; 0xf8153
mov word [es:bx+00290h], ax ; 26 89 87 90 02 ; 0xf8157
mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xf815c scsi.c:436
mov byte [es:bx+00292h], al ; 26 88 87 92 02 ; 0xf815f
mov al, byte [bp-030h] ; 8a 46 d0 ; 0xf8164 scsi.c:437
mov byte [es:bx+00293h], al ; 26 88 87 93 02 ; 0xf8167
movzx bx, byte [bp-00ah] ; 0f b6 5e f6 ; 0xf816c scsi.c:438
imul bx, bx, strict byte 0001ch ; 6b db 1c ; 0xf8170
add bx, di ; 01 fb ; 0xf8173
db 066h, 026h, 0c7h, 047h, 01eh, 004h, 0ffh, 000h, 000h
; mov dword [es:bx+01eh], strict dword 00000ff04h ; 66 26 c7 47 1e 04 ff 00 00; 0xf8175
mov ax, word [bp-026h] ; 8b 46 da ; 0xf817e scsi.c:442
mov word [es:bx+024h], ax ; 26 89 47 24 ; 0xf8181
mov byte [es:bx+023h], 001h ; 26 c6 47 23 01 ; 0xf8185 scsi.c:443
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf818a scsi.c:446
mov word [es:bx+026h], ax ; 26 89 47 26 ; 0xf818d
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf8191 scsi.c:447
mov word [es:bx+02ah], ax ; 26 89 47 2a ; 0xf8194
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf8198 scsi.c:448
mov word [es:bx+02ch], ax ; 26 89 47 2c ; 0xf819b
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf819f scsi.c:449
mov word [es:bx+030h], ax ; 26 89 47 30 ; 0xf81a2
test si, si ; 85 f6 ; 0xf81a6 scsi.c:451
jne short 081b0h ; 75 06 ; 0xf81a8
cmp dx, 00400h ; 81 fa 00 04 ; 0xf81aa
jbe short 081beh ; 76 0e ; 0xf81ae
mov word [es:bx+028h], 00400h ; 26 c7 47 28 00 04 ; 0xf81b0 scsi.c:452
mov word [es:bx+02eh], 00400h ; 26 c7 47 2e 00 04 ; 0xf81b6 scsi.c:453
jmp short 081c6h ; eb 08 ; 0xf81bc scsi.c:454
mov word [es:bx+028h], dx ; 26 89 57 28 ; 0xf81be scsi.c:455
mov word [es:bx+02eh], dx ; 26 89 57 2e ; 0xf81c2 scsi.c:456
mov bx, 00e16h ; bb 16 0e ; 0xf81c6 scsi.c:460
mov cx, ds ; 8c d9 ; 0xf81c9
mov ax, strict word 00004h ; b8 04 00 ; 0xf81cb
call 01a27h ; e8 56 98 ; 0xf81ce
push word [bp-010h] ; ff 76 f0 ; 0xf81d1
push word [bp-032h] ; ff 76 ce ; 0xf81d4
push word [bp-01ah] ; ff 76 e6 ; 0xf81d7
push dword [bp-016h] ; 66 ff 76 ea ; 0xf81da
push word [bp-012h] ; ff 76 ee ; 0xf81de
push si ; 56 ; 0xf81e1
push dx ; 52 ; 0xf81e2
push word [bp-030h] ; ff 76 d0 ; 0xf81e3
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf81e6
push ax ; 50 ; 0xf81ea
push 00c8fh ; 68 8f 0c ; 0xf81eb
push strict byte 00004h ; 6a 04 ; 0xf81ee
call 01a68h ; e8 75 98 ; 0xf81f0
add sp, strict byte 00018h ; 83 c4 18 ; 0xf81f3
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf81f6 scsi.c:462
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf81fa
mov es, [bp-022h] ; 8e 46 de ; 0xf81fd
mov bx, di ; 89 fb ; 0xf8200
add bx, ax ; 01 c3 ; 0xf8202
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf8204
mov word [es:bx+038h], ax ; 26 89 47 38 ; 0xf8207
mov ax, word [bp-032h] ; 8b 46 ce ; 0xf820b
mov word [es:bx+036h], ax ; 26 89 47 36 ; 0xf820e
mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xf8212
mov word [es:bx+034h], ax ; 26 89 47 34 ; 0xf8215
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf8219
mov word [es:bx+032h], ax ; 26 89 47 32 ; 0xf821c
mov al, byte [es:di+0024eh] ; 26 8a 85 4e 02 ; 0xf8220 scsi.c:465
mov ah, byte [bp-00ch] ; 8a 66 f4 ; 0xf8225 scsi.c:466
add ah, 008h ; 80 c4 08 ; 0xf8228
movzx bx, al ; 0f b6 d8 ; 0xf822b
add bx, di ; 01 fb ; 0xf822e
mov byte [es:bx+0024fh], ah ; 26 88 a7 4f 02 ; 0xf8230
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf8235 scsi.c:467
mov byte [es:di+0024eh], al ; 26 88 85 4e 02 ; 0xf8237 scsi.c:468
mov bx, strict word 00075h ; bb 75 00 ; 0xf823c scsi.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf823f
mov es, ax ; 8e c0 ; 0xf8242
mov al, byte [es:bx] ; 26 8a 07 ; 0xf8244
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf8247 scsi.c:472
mov byte [es:bx], al ; 26 88 07 ; 0xf8249 scsi.c:53
inc byte [bp-00ch] ; fe 46 f4 ; 0xf824c scsi.c:475
jmp near 082fch ; e9 aa 00 ; 0xf824f scsi.c:477
test byte [bp-00246h], 0e0h ; f6 86 ba fd e0 ; 0xf8252 scsi.c:483
jne near 082fch ; 0f 85 a1 00 ; 0xf8257
mov al, byte [bp-00246h] ; 8a 86 ba fd ; 0xf825b
and AL, strict byte 01fh ; 24 1f ; 0xf825f
cmp AL, strict byte 005h ; 3c 05 ; 0xf8261
jne near 082fch ; 0f 85 95 00 ; 0xf8263
mov bx, 00e16h ; bb 16 0e ; 0xf8267 scsi.c:489
mov cx, ds ; 8c d9 ; 0xf826a
mov ax, strict word 00004h ; b8 04 00 ; 0xf826c
call 01a27h ; e8 b5 97 ; 0xf826f
push word [bp-030h] ; ff 76 d0 ; 0xf8272
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf8275
push ax ; 50 ; 0xf8279
push 00cbdh ; 68 bd 0c ; 0xf827a
push strict byte 00004h ; 6a 04 ; 0xf827d
call 01a68h ; e8 e6 97 ; 0xf827f
add sp, strict byte 00008h ; 83 c4 08 ; 0xf8282
mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xf8285 scsi.c:492
add AL, strict byte 008h ; 04 08 ; 0xf8288
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf828a
test byte [bp-00245h], 080h ; f6 86 bb fd 80 ; 0xf828d scsi.c:494
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf8292
xor ah, ah ; 30 e4 ; 0xf8295
mov dx, ax ; 89 c2 ; 0xf8297
movzx bx, byte [bp-00ch] ; 0f b6 5e f4 ; 0xf8299 scsi.c:496
sal bx, 002h ; c1 e3 02 ; 0xf829d
mov es, [bp-022h] ; 8e 46 de ; 0xf82a0
add bx, di ; 01 fb ; 0xf82a3
mov ax, word [bp-00248h] ; 8b 86 b8 fd ; 0xf82a5
mov word [es:bx+00290h], ax ; 26 89 87 90 02 ; 0xf82a9
mov al, byte [bp-00eh] ; 8a 46 f2 ; 0xf82ae scsi.c:497
mov byte [es:bx+00292h], al ; 26 88 87 92 02 ; 0xf82b1
mov al, byte [bp-030h] ; 8a 46 d0 ; 0xf82b6 scsi.c:498
mov byte [es:bx+00293h], al ; 26 88 87 93 02 ; 0xf82b9
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf82be scsi.c:499
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf82c2
mov bx, di ; 89 fb ; 0xf82c5
add bx, ax ; 01 c3 ; 0xf82c7
mov word [es:bx+01eh], 00504h ; 26 c7 47 1e 04 05 ; 0xf82c9
mov byte [es:bx+020h], dl ; 26 88 57 20 ; 0xf82cf scsi.c:501
mov word [es:bx+024h], 00800h ; 26 c7 47 24 00 08 ; 0xf82d3 scsi.c:502
mov byte [es:bx+023h], dh ; 26 88 77 23 ; 0xf82d9 scsi.c:503
mov al, byte [es:di+00263h] ; 26 8a 85 63 02 ; 0xf82dd scsi.c:506
mov ah, byte [bp-00ch] ; 8a 66 f4 ; 0xf82e2 scsi.c:507
add ah, 008h ; 80 c4 08 ; 0xf82e5
movzx bx, al ; 0f b6 d8 ; 0xf82e8
add bx, di ; 01 fb ; 0xf82eb
mov byte [es:bx+00264h], ah ; 26 88 a7 64 02 ; 0xf82ed
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf82f2 scsi.c:508
mov byte [es:di+00263h], al ; 26 88 85 63 02 ; 0xf82f4 scsi.c:509
inc byte [bp-00ch] ; fe 46 f4 ; 0xf82f9 scsi.c:511
mov al, byte [bp-00ch] ; 8a 46 f4 ; 0xf82fc scsi.c:516
mov es, [bp-022h] ; 8e 46 de ; 0xf82ff
mov byte [es:di+002a0h], al ; 26 88 85 a0 02 ; 0xf8302
inc word [bp-030h] ; ff 46 d0 ; 0xf8307 scsi.c:517
cmp word [bp-030h], strict byte 00010h ; 83 7e d0 10 ; 0xf830a
jnl short 08353h ; 7d 43 ; 0xf830e
mov byte [bp-046h], 012h ; c6 46 ba 12 ; 0xf8310
xor al, al ; 30 c0 ; 0xf8314
mov byte [bp-045h], al ; 88 46 bb ; 0xf8316
mov byte [bp-044h], al ; 88 46 bc ; 0xf8319
mov byte [bp-043h], al ; 88 46 bd ; 0xf831c
mov byte [bp-042h], 005h ; c6 46 be 05 ; 0xf831f
mov byte [bp-041h], al ; 88 46 bf ; 0xf8323
movzx si, byte [bp-00eh] ; 0f b6 76 f2 ; 0xf8326
imul si, si, strict byte 0000ch ; 6b f6 0c ; 0xf832a
push dword 000000005h ; 66 6a 05 ; 0xf832d
lea dx, [bp-00246h] ; 8d 96 ba fd ; 0xf8330
push SS ; 16 ; 0xf8334
push dx ; 52 ; 0xf8335
push strict byte 00006h ; 6a 06 ; 0xf8336
lea dx, [bp-046h] ; 8d 56 ba ; 0xf8338
push SS ; 16 ; 0xf833b
push dx ; 52 ; 0xf833c
movzx bx, byte [bp-030h] ; 0f b6 5e d0 ; 0xf833d
xor ah, ah ; 30 e4 ; 0xf8341
mov dx, word [bp-00248h] ; 8b 96 b8 fd ; 0xf8343
call word [si+000a4h] ; ff 94 a4 00 ; 0xf8347
test al, al ; 84 c0 ; 0xf834b
je near 07ef9h ; 0f 84 a8 fb ; 0xf834d
jmp short 08307h ; eb b4 ; 0xf8351
lea sp, [bp-008h] ; 8d 66 f8 ; 0xf8353 scsi.c:518
pop di ; 5f ; 0xf8356
pop si ; 5e ; 0xf8357
pop cx ; 59 ; 0xf8358
pop bx ; 5b ; 0xf8359
pop bp ; 5d ; 0xf835a
retn ; c3 ; 0xf835b
; disGetNextSymbol 0xf835c LB 0x2ac0 -> off=0x0 cb=0000000000000081 uValue=00000000000f6d5c 'scsi_init'
scsi_init: ; 0xf835c LB 0x81
push bp ; 55 ; 0xf835c scsi.c:523
mov bp, sp ; 89 e5 ; 0xf835d
push si ; 56 ; 0xf835f
push di ; 57 ; 0xf8360
push ax ; 50 ; 0xf8361
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf8362 scsi.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf8365
mov es, ax ; 8e c0 ; 0xf8368
mov es, [es:bx] ; 26 8e 07 ; 0xf836a
mov bx, strict word 0005eh ; bb 5e 00 ; 0xf836d scsi.c:59
mov byte [es:bx+002a0h], 000h ; 26 c6 87 a0 02 00 ; 0xf8370 scsi.c:529
mov word [bp-006h], strict word 00000h ; c7 46 fa 00 00 ; 0xf8376 scsi.c:532
jmp short 083c5h ; eb 48 ; 0xf837b
mov dx, word [bx+0009ch] ; 8b 97 9c 00 ; 0xf837d scsi.c:536
mov ax, word [bx+0009ah] ; 8b 87 9a 00 ; 0xf8381
call 0aafdh ; e8 75 27 ; 0xf8385
mov cx, ax ; 89 c1 ; 0xf8388
cmp cx, strict byte 0ffffh ; 83 f9 ff ; 0xf838a scsi.c:542
je short 083bch ; 74 2d ; 0xf838d
call 07b8ch ; e8 fa f7 ; 0xf838f scsi.c:546
mov si, ax ; 89 c6 ; 0xf8392
test ax, ax ; 85 c0 ; 0xf8394 scsi.c:547
je short 083d6h ; 74 3e ; 0xf8396
mov bx, cx ; 89 cb ; 0xf8398 scsi.c:550
xor bl, cl ; 30 cb ; 0xf839a
shr bx, 008h ; c1 eb 08 ; 0xf839c
imul di, word [bp-006h], strict byte 0000ch ; 6b 7e fa 0c ; 0xf839f scsi.c:554
xor ch, ch ; 30 ed ; 0xf83a3
xor bh, bh ; 30 ff ; 0xf83a5
xor ax, ax ; 31 c0 ; 0xf83a7
mov dx, si ; 89 f2 ; 0xf83a9
call word [di+000a0h] ; ff 95 a0 00 ; 0xf83ab
test ax, ax ; 85 c0 ; 0xf83af scsi.c:555
jne short 083bch ; 75 09 ; 0xf83b1
movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xf83b3 scsi.c:556
mov ax, si ; 89 f0 ; 0xf83b7
call 07ed1h ; e8 15 fb ; 0xf83b9
inc word [bp-006h] ; ff 46 fa ; 0xf83bc scsi.c:559
cmp word [bp-006h], strict byte 00005h ; 83 7e fa 05 ; 0xf83bf
jnc short 083d6h ; 73 11 ; 0xf83c3
imul bx, word [bp-006h], strict byte 0000ch ; 6b 5e fa 0c ; 0xf83c5
cmp word [bx+0009eh], strict byte 00000h ; 83 bf 9e 00 00 ; 0xf83c9
je short 0837dh ; 74 ad ; 0xf83ce
call word [bx+0009eh] ; ff 97 9e 00 ; 0xf83d0
jmp short 08388h ; eb b2 ; 0xf83d4
lea sp, [bp-004h] ; 8d 66 fc ; 0xf83d6 scsi.c:560
pop di ; 5f ; 0xf83d9
pop si ; 5e ; 0xf83da
pop bp ; 5d ; 0xf83db
retn ; c3 ; 0xf83dc
; disGetNextSymbol 0xf83dd LB 0x2a3f -> off=0x0 cb=000000000000001b uValue=00000000000f6ddd 'ahci_ctrl_extract_bits'
ahci_ctrl_extract_bits: ; 0xf83dd LB 0x1b
push si ; 56 ; 0xf83dd ahci.c:287
push bp ; 55 ; 0xf83de
mov bp, sp ; 89 e5 ; 0xf83df
mov si, bx ; 89 de ; 0xf83e1
and ax, bx ; 21 d8 ; 0xf83e3 ahci.c:289
and dx, cx ; 21 ca ; 0xf83e5
movzx cx, byte [bp+006h] ; 0f b6 4e 06 ; 0xf83e7
jcxz 083f3h ; e3 06 ; 0xf83eb
shr dx, 1 ; d1 ea ; 0xf83ed
rcr ax, 1 ; d1 d8 ; 0xf83ef
loop 083edh ; e2 fa ; 0xf83f1
pop bp ; 5d ; 0xf83f3 ahci.c:290
pop si ; 5e ; 0xf83f4
retn 00002h ; c2 02 00 ; 0xf83f5
; disGetNextSymbol 0xf83f8 LB 0x2a24 -> off=0x0 cb=000000000000001e uValue=00000000000f6df8 'ahci_addr_to_phys'
ahci_addr_to_phys: ; 0xf83f8 LB 0x1e
push bx ; 53 ; 0xf83f8 ahci.c:295
push cx ; 51 ; 0xf83f9
push bp ; 55 ; 0xf83fa
mov bp, sp ; 89 e5 ; 0xf83fb
mov bx, ax ; 89 c3 ; 0xf83fd
mov ax, dx ; 89 d0 ; 0xf83ff
xor dx, dx ; 31 d2 ; 0xf8401 ahci.c:297
mov cx, strict word 00004h ; b9 04 00 ; 0xf8403
sal ax, 1 ; d1 e0 ; 0xf8406
rcl dx, 1 ; d1 d2 ; 0xf8408
loop 08406h ; e2 fa ; 0xf840a
xor cx, cx ; 31 c9 ; 0xf840c
add ax, bx ; 01 d8 ; 0xf840e
adc dx, cx ; 11 ca ; 0xf8410
pop bp ; 5d ; 0xf8412 ahci.c:298
pop cx ; 59 ; 0xf8413
pop bx ; 5b ; 0xf8414
retn ; c3 ; 0xf8415
; disGetNextSymbol 0xf8416 LB 0x2a06 -> off=0x0 cb=000000000000014b uValue=00000000000f6e16 'ahci_port_cmd_sync'
ahci_port_cmd_sync: ; 0xf8416 LB 0x14b
push bp ; 55 ; 0xf8416 ahci.c:303
mov bp, sp ; 89 e5 ; 0xf8417
push cx ; 51 ; 0xf8419
push si ; 56 ; 0xf841a
push di ; 57 ; 0xf841b
push ax ; 50 ; 0xf841c
mov si, ax ; 89 c6 ; 0xf841d
mov cx, dx ; 89 d1 ; 0xf841f
mov al, bl ; 88 d8 ; 0xf8421
mov es, dx ; 8e c2 ; 0xf8423 ahci.c:308
mov ah, byte [es:si+00262h] ; 26 8a a4 62 02 ; 0xf8425
mov byte [bp-008h], ah ; 88 66 f8 ; 0xf842a
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf842d ahci.c:309
cmp ah, 0ffh ; 80 fc ff ; 0xf8432 ahci.c:311
je near 08559h ; 0f 84 20 01 ; 0xf8435
movzx dx, byte [es:si+00263h] ; 26 0f b6 94 63 02 ; 0xf8439 ahci.c:314
xor di, di ; 31 ff ; 0xf843f
or di, 00080h ; 81 cf 80 00 ; 0xf8441
xor ah, ah ; 30 e4 ; 0xf8445
or di, ax ; 09 c7 ; 0xf8447
mov word [es:si], di ; 26 89 3c ; 0xf8449
mov word [es:si+002h], dx ; 26 89 54 02 ; 0xf844c
db 066h, 026h, 0c7h, 044h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000000h ; 66 26 c7 44 04 00 00 00 00; 0xf8450 ahci.c:315
lea ax, [si+00080h] ; 8d 84 80 00 ; 0xf8459 ahci.c:316
mov dx, cx ; 89 ca ; 0xf845d
call 083f8h ; e8 96 ff ; 0xf845f
mov es, cx ; 8e c1 ; 0xf8462
mov word [es:si+008h], ax ; 26 89 44 08 ; 0xf8464
mov word [es:si+00ah], dx ; 26 89 54 0a ; 0xf8468
movzx di, byte [bp-008h] ; 0f b6 7e f8 ; 0xf846c ahci.c:319
sal di, 007h ; c1 e7 07 ; 0xf8470
lea ax, [di+00118h] ; 8d 85 18 01 ; 0xf8473
xor cx, cx ; 31 c9 ; 0xf8477 ahci.c:260
mov dx, bx ; 89 da ; 0xf8479
xchg cx, ax ; 91 ; 0xf847b
sal eax, 010h ; 66 c1 e0 10 ; 0xf847c
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8480
out DX, eax ; 66 ef ; 0xf8482
lea si, [bx+004h] ; 8d 77 04 ; 0xf8484 ahci.c:261
mov dx, si ; 89 f2 ; 0xf8487
in eax, DX ; 66 ed ; 0xf8489
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf848b
shr eax, 010h ; 66 c1 e8 10 ; 0xf848d
xchg dx, ax ; 92 ; 0xf8491
or AL, strict byte 011h ; 0c 11 ; 0xf8492
mov cx, dx ; 89 d1 ; 0xf8494
mov dx, si ; 89 f2 ; 0xf8496
xchg cx, ax ; 91 ; 0xf8498
sal eax, 010h ; 66 c1 e0 10 ; 0xf8499
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf849d
out DX, eax ; 66 ef ; 0xf849f
lea ax, [di+00138h] ; 8d 85 38 01 ; 0xf84a1 ahci.c:323
cwd ; 99 ; 0xf84a5
mov cx, dx ; 89 d1 ; 0xf84a6
mov dx, bx ; 89 da ; 0xf84a8
xchg cx, ax ; 91 ; 0xf84aa
sal eax, 010h ; 66 c1 e0 10 ; 0xf84ab
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf84af
out DX, eax ; 66 ef ; 0xf84b1
mov ax, strict word 00001h ; b8 01 00 ; 0xf84b3
xor cx, cx ; 31 c9 ; 0xf84b6
mov dx, si ; 89 f2 ; 0xf84b8
xchg cx, ax ; 91 ; 0xf84ba
sal eax, 010h ; 66 c1 e0 10 ; 0xf84bb
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf84bf
out DX, eax ; 66 ef ; 0xf84c1
movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xf84c3 ahci.c:327
sal ax, 007h ; c1 e0 07 ; 0xf84c7
add ax, 00110h ; 05 10 01 ; 0xf84ca
xor cx, cx ; 31 c9 ; 0xf84cd ahci.c:279
mov dx, bx ; 89 da ; 0xf84cf
xchg cx, ax ; 91 ; 0xf84d1
sal eax, 010h ; 66 c1 e0 10 ; 0xf84d2
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf84d6
out DX, eax ; 66 ef ; 0xf84d8
lea dx, [bx+004h] ; 8d 57 04 ; 0xf84da ahci.c:280
in eax, DX ; 66 ed ; 0xf84dd
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf84df
shr eax, 010h ; 66 c1 e8 10 ; 0xf84e1
xchg dx, ax ; 92 ; 0xf84e5
test dh, 040h ; f6 c6 40 ; 0xf84e6
jne short 084efh ; 75 04 ; 0xf84e9
test AL, strict byte 001h ; a8 01 ; 0xf84eb
je short 084f3h ; 74 04 ; 0xf84ed
mov AL, strict byte 001h ; b0 01 ; 0xf84ef
jmp short 084f5h ; eb 02 ; 0xf84f1
xor al, al ; 30 c0 ; 0xf84f3
test al, al ; 84 c0 ; 0xf84f5 ahci.c:281
je short 084c3h ; 74 ca ; 0xf84f7
movzx di, byte [bp-008h] ; 0f b6 7e f8 ; 0xf84f9 ahci.c:333
sal di, 007h ; c1 e7 07 ; 0xf84fd
lea ax, [di+00110h] ; 8d 85 10 01 ; 0xf8500
xor cx, cx ; 31 c9 ; 0xf8504 ahci.c:260
mov dx, bx ; 89 da ; 0xf8506
xchg cx, ax ; 91 ; 0xf8508
sal eax, 010h ; 66 c1 e0 10 ; 0xf8509
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf850d
out DX, eax ; 66 ef ; 0xf850f
lea si, [bx+004h] ; 8d 77 04 ; 0xf8511 ahci.c:261
mov dx, si ; 89 f2 ; 0xf8514
in eax, DX ; 66 ed ; 0xf8516
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf8518
shr eax, 010h ; 66 c1 e8 10 ; 0xf851a
xchg dx, ax ; 92 ; 0xf851e
or AL, strict byte 001h ; 0c 01 ; 0xf851f
mov cx, dx ; 89 d1 ; 0xf8521
mov dx, si ; 89 f2 ; 0xf8523
xchg cx, ax ; 91 ; 0xf8525
sal eax, 010h ; 66 c1 e0 10 ; 0xf8526
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf852a
out DX, eax ; 66 ef ; 0xf852c
lea ax, [di+00118h] ; 8d 85 18 01 ; 0xf852e ahci.c:337
xor cx, cx ; 31 c9 ; 0xf8532 ahci.c:269
mov dx, bx ; 89 da ; 0xf8534
xchg cx, ax ; 91 ; 0xf8536
sal eax, 010h ; 66 c1 e0 10 ; 0xf8537
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf853b
out DX, eax ; 66 ef ; 0xf853d
mov dx, si ; 89 f2 ; 0xf853f ahci.c:270
in eax, DX ; 66 ed ; 0xf8541
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf8543
shr eax, 010h ; 66 c1 e8 10 ; 0xf8545
xchg dx, ax ; 92 ; 0xf8549
and AL, strict byte 0feh ; 24 fe ; 0xf854a
mov cx, dx ; 89 d1 ; 0xf854c
mov dx, si ; 89 f2 ; 0xf854e
xchg cx, ax ; 91 ; 0xf8550
sal eax, 010h ; 66 c1 e0 10 ; 0xf8551
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8555
out DX, eax ; 66 ef ; 0xf8557
lea sp, [bp-006h] ; 8d 66 fa ; 0xf8559 ahci.c:343
pop di ; 5f ; 0xf855c
pop si ; 5e ; 0xf855d
pop cx ; 59 ; 0xf855e
pop bp ; 5d ; 0xf855f
retn ; c3 ; 0xf8560
; disGetNextSymbol 0xf8561 LB 0x28bb -> off=0x0 cb=0000000000000216 uValue=00000000000f6f61 'ahci_cmd_data'
ahci_cmd_data: ; 0xf8561 LB 0x216
push bp ; 55 ; 0xf8561 ahci.c:348
mov bp, sp ; 89 e5 ; 0xf8562
push cx ; 51 ; 0xf8564
push si ; 56 ; 0xf8565
push di ; 57 ; 0xf8566
sub sp, strict byte 00010h ; 83 ec 10 ; 0xf8567
mov di, ax ; 89 c7 ; 0xf856a
mov word [bp-00ch], dx ; 89 56 f4 ; 0xf856c
mov byte [bp-008h], bl ; 88 5e f8 ; 0xf856f
mov word [bp-012h], strict word 00000h ; c7 46 ee 00 00 ; 0xf8572 ahci.c:350
mov es, dx ; 8e c2 ; 0xf8577
mov ax, word [es:di+002a6h] ; 26 8b 85 a6 02 ; 0xf8579
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf857e
mov word [bp-010h], strict word 00000h ; c7 46 f0 00 00 ; 0xf8581
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf8586
mov ax, word [es:di+00eh] ; 26 8b 45 0e ; 0xf8589 ahci.c:351
mov word [bp-016h], ax ; 89 46 ea ; 0xf858d
mov ax, word [es:di+010h] ; 26 8b 45 10 ; 0xf8590 ahci.c:352
mov word [bp-014h], ax ; 89 46 ec ; 0xf8594
mov cx, strict word 00040h ; b9 40 00 ; 0xf8597 ahci.c:355
xor bx, bx ; 31 db ; 0xf859a
mov ax, 00080h ; b8 80 00 ; 0xf859c
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf859f
call 0ad80h ; e8 db 27 ; 0xf85a2
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf85a5 ahci.c:358
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf85a8
mov word [es:bx+00080h], 08027h ; 26 c7 87 80 00 27 80 ; 0xf85ab
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf85b2 ahci.c:360
mov byte [es:bx+00082h], al ; 26 88 87 82 00 ; 0xf85b5
mov byte [es:bx+00083h], 000h ; 26 c6 87 83 00 00 ; 0xf85ba ahci.c:361
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf85c0 ahci.c:363
mov ax, word [es:di] ; 26 8b 05 ; 0xf85c3
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf85c6
mov byte [es:bx+00084h], al ; 26 88 87 84 00 ; 0xf85c9
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf85ce ahci.c:364
mov ax, word [es:di+006h] ; 26 8b 45 06 ; 0xf85d1
mov bx, word [es:di+004h] ; 26 8b 5d 04 ; 0xf85d5
mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xf85d9
mov dx, word [es:di] ; 26 8b 15 ; 0xf85dd
mov si, strict word 00008h ; be 08 00 ; 0xf85e0
call 0ad60h ; e8 7a 27 ; 0xf85e3
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf85e6
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf85e9
mov byte [es:bx+00085h], dl ; 26 88 97 85 00 ; 0xf85ec
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf85f1 ahci.c:365
mov ax, word [es:di+006h] ; 26 8b 45 06 ; 0xf85f4
mov bx, word [es:di+004h] ; 26 8b 5d 04 ; 0xf85f8
mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xf85fc
mov dx, word [es:di] ; 26 8b 15 ; 0xf8600
mov si, strict word 00010h ; be 10 00 ; 0xf8603
call 0ad60h ; e8 57 27 ; 0xf8606
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8609
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf860c
mov byte [es:bx+00086h], dl ; 26 88 97 86 00 ; 0xf860f
mov byte [es:bx+00087h], 040h ; 26 c6 87 87 00 40 ; 0xf8614 ahci.c:366
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf861a ahci.c:368
mov ax, word [es:di+006h] ; 26 8b 45 06 ; 0xf861d
mov bx, word [es:di+004h] ; 26 8b 5d 04 ; 0xf8621
mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xf8625
mov dx, word [es:di] ; 26 8b 15 ; 0xf8629
mov si, strict word 00018h ; be 18 00 ; 0xf862c
call 0ad60h ; e8 2e 27 ; 0xf862f
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8632
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf8635
mov byte [es:bx+00088h], dl ; 26 88 97 88 00 ; 0xf8638
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf863d ahci.c:369
mov ax, word [es:di+006h] ; 26 8b 45 06 ; 0xf8640
mov bx, word [es:di+004h] ; 26 8b 5d 04 ; 0xf8644
mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xf8648
mov dx, word [es:di] ; 26 8b 15 ; 0xf864c
mov si, strict word 00020h ; be 20 00 ; 0xf864f
call 0ad60h ; e8 0b 27 ; 0xf8652
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8655
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf8658
mov byte [es:bx+00089h], dl ; 26 88 97 89 00 ; 0xf865b
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf8660 ahci.c:370
mov ax, word [es:di+006h] ; 26 8b 45 06 ; 0xf8663
mov bx, word [es:di+004h] ; 26 8b 5d 04 ; 0xf8667
mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xf866b
mov dx, word [es:di] ; 26 8b 15 ; 0xf866f
mov si, strict word 00028h ; be 28 00 ; 0xf8672
call 0ad60h ; e8 e8 26 ; 0xf8675
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8678
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf867b
mov byte [es:bx+0008ah], dl ; 26 88 97 8a 00 ; 0xf867e
mov byte [es:bx+0008bh], 000h ; 26 c6 87 8b 00 00 ; 0xf8683 ahci.c:371
mov al, byte [bp-016h] ; 8a 46 ea ; 0xf8689 ahci.c:373
mov byte [es:bx+0008ch], al ; 26 88 87 8c 00 ; 0xf868c
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf8691 ahci.c:374
shr ax, 008h ; c1 e8 08 ; 0xf8694
mov byte [es:bx+0008dh], al ; 26 88 87 8d 00 ; 0xf8697
mov word [es:bx+00272h], strict word 00010h ; 26 c7 87 72 02 10 00 ; 0xf869c ahci.c:377
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf86a3 ahci.c:379
xor dx, dx ; 31 d2 ; 0xf86a6
mov bx, word [bp-014h] ; 8b 5e ec ; 0xf86a8
xor cx, cx ; 31 c9 ; 0xf86ab
call 0ace0h ; e8 30 26 ; 0xf86ad
push dx ; 52 ; 0xf86b0
push ax ; 50 ; 0xf86b1
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf86b2
mov bx, word [es:di+008h] ; 26 8b 5d 08 ; 0xf86b5
mov cx, word [es:di+00ah] ; 26 8b 4d 0a ; 0xf86b9
mov ax, 00266h ; b8 66 02 ; 0xf86bd
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf86c0
call 0ac31h ; e8 6b 25 ; 0xf86c3
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf86c6 ahci.c:382
mov bx, word [bp-012h] ; 8b 5e ee ; 0xf86c9
mov ax, word [es:bx+0027ah] ; 26 8b 87 7a 02 ; 0xf86cc
add ax, strict word 0ffffh ; 05 ff ff ; 0xf86d1
mov dx, word [es:bx+0027ch] ; 26 8b 97 7c 02 ; 0xf86d4
adc dx, strict byte 0ffffh ; 83 d2 ff ; 0xf86d9
mov di, bx ; 89 df ; 0xf86dc
movzx di, byte [es:di+00263h] ; 26 0f b6 bd 63 02 ; 0xf86de
sal di, 004h ; c1 e7 04 ; 0xf86e4
mov word [es:di+0010ch], ax ; 26 89 85 0c 01 ; 0xf86e7
mov word [es:di+0010eh], dx ; 26 89 95 0e 01 ; 0xf86ec
mov di, bx ; 89 df ; 0xf86f1 ahci.c:383
movzx di, byte [es:di+00263h] ; 26 0f b6 bd 63 02 ; 0xf86f3
sal di, 004h ; c1 e7 04 ; 0xf86f9
mov si, bx ; 89 de ; 0xf86fc
mov dx, word [es:si+00276h] ; 26 8b 94 76 02 ; 0xf86fe
mov ax, word [es:si+00278h] ; 26 8b 84 78 02 ; 0xf8703
mov word [es:di+00100h], dx ; 26 89 95 00 01 ; 0xf8708
mov word [es:di+00102h], ax ; 26 89 85 02 01 ; 0xf870d
inc byte [es:bx+00263h] ; 26 fe 87 63 02 ; 0xf8712 ahci.c:384
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf8717 ahci.c:398
cmp AL, strict byte 035h ; 3c 35 ; 0xf871a
jne short 08724h ; 75 06 ; 0xf871c
mov byte [bp-008h], 040h ; c6 46 f8 40 ; 0xf871e ahci.c:399
jmp short 08738h ; eb 14 ; 0xf8722 ahci.c:400
cmp AL, strict byte 0a0h ; 3c a0 ; 0xf8724
jne short 08734h ; 75 0c ; 0xf8726
or byte [bp-008h], 020h ; 80 4e f8 20 ; 0xf8728 ahci.c:401
or byte [es:bx+00083h], 001h ; 26 80 8f 83 00 01 ; 0xf872c ahci.c:402
jmp short 08738h ; eb 04 ; 0xf8732 ahci.c:403
mov byte [bp-008h], 000h ; c6 46 f8 00 ; 0xf8734 ahci.c:404
or byte [bp-008h], 005h ; 80 4e f8 05 ; 0xf8738 ahci.c:406
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf873c ahci.c:408
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf8740
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf8743
call 08416h ; e8 cd fc ; 0xf8746
mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xf8749 ahci.c:411
mov di, word [bp-010h] ; 8b 7e f0 ; 0xf874c
add di, 00240h ; 81 c7 40 02 ; 0xf874f
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf8753 ahci.c:415
add ax, 00266h ; 05 66 02 ; 0xf8756
mov dx, bx ; 89 da ; 0xf8759
call 0acaah ; e8 4c 25 ; 0xf875b
mov es, bx ; 8e c3 ; 0xf875e ahci.c:416
mov al, byte [es:di+003h] ; 26 8a 45 03 ; 0xf8760
test al, al ; 84 c0 ; 0xf8764
je short 0876dh ; 74 05 ; 0xf8766
mov ax, strict word 00004h ; b8 04 00 ; 0xf8768
jmp short 0876fh ; eb 02 ; 0xf876b
xor ah, ah ; 30 e4 ; 0xf876d
lea sp, [bp-006h] ; 8d 66 fa ; 0xf876f ahci.c:417
pop di ; 5f ; 0xf8772
pop si ; 5e ; 0xf8773
pop cx ; 59 ; 0xf8774
pop bp ; 5d ; 0xf8775
retn ; c3 ; 0xf8776
; disGetNextSymbol 0xf8777 LB 0x26a5 -> off=0x0 cb=000000000000017f uValue=00000000000f7177 'ahci_port_deinit_current'
ahci_port_deinit_current: ; 0xf8777 LB 0x17f
push bp ; 55 ; 0xf8777 ahci.c:422
mov bp, sp ; 89 e5 ; 0xf8778
push bx ; 53 ; 0xf877a
push cx ; 51 ; 0xf877b
push si ; 56 ; 0xf877c
push di ; 57 ; 0xf877d
sub sp, strict byte 00006h ; 83 ec 06 ; 0xf877e
mov di, ax ; 89 c7 ; 0xf8781
mov word [bp-00ch], dx ; 89 56 f4 ; 0xf8783
mov es, dx ; 8e c2 ; 0xf8786 ahci.c:427
mov si, word [es:di+00260h] ; 26 8b b5 60 02 ; 0xf8788
mov al, byte [es:di+00262h] ; 26 8a 85 62 02 ; 0xf878d ahci.c:428
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf8792
cmp AL, strict byte 0ffh ; 3c ff ; 0xf8795 ahci.c:430
je near 088edh ; 0f 84 52 01 ; 0xf8797
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf879b ahci.c:433
sal ax, 007h ; c1 e0 07 ; 0xf879f
add ax, 00118h ; 05 18 01 ; 0xf87a2
xor cx, cx ; 31 c9 ; 0xf87a5 ahci.c:269
mov dx, si ; 89 f2 ; 0xf87a7
xchg cx, ax ; 91 ; 0xf87a9
sal eax, 010h ; 66 c1 e0 10 ; 0xf87aa
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf87ae
out DX, eax ; 66 ef ; 0xf87b0
lea bx, [si+004h] ; 8d 5c 04 ; 0xf87b2 ahci.c:270
mov dx, bx ; 89 da ; 0xf87b5
in eax, DX ; 66 ed ; 0xf87b7
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf87b9
shr eax, 010h ; 66 c1 e8 10 ; 0xf87bb
xchg dx, ax ; 92 ; 0xf87bf
and AL, strict byte 0eeh ; 24 ee ; 0xf87c0
mov cx, dx ; 89 d1 ; 0xf87c2
mov dx, bx ; 89 da ; 0xf87c4
xchg cx, ax ; 91 ; 0xf87c6
sal eax, 010h ; 66 c1 e0 10 ; 0xf87c7
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf87cb
out DX, eax ; 66 ef ; 0xf87cd
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf87cf ahci.c:436
sal ax, 007h ; c1 e0 07 ; 0xf87d3
add ax, 00118h ; 05 18 01 ; 0xf87d6
xor cx, cx ; 31 c9 ; 0xf87d9 ahci.c:279
mov dx, si ; 89 f2 ; 0xf87db
xchg cx, ax ; 91 ; 0xf87dd
sal eax, 010h ; 66 c1 e0 10 ; 0xf87de
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf87e2
out DX, eax ; 66 ef ; 0xf87e4
lea dx, [si+004h] ; 8d 54 04 ; 0xf87e6 ahci.c:280
in eax, DX ; 66 ed ; 0xf87e9
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf87eb
shr eax, 010h ; 66 c1 e8 10 ; 0xf87ed
xchg dx, ax ; 92 ; 0xf87f1
test ax, 0c011h ; a9 11 c0 ; 0xf87f2
je short 087fbh ; 74 04 ; 0xf87f5
mov AL, strict byte 001h ; b0 01 ; 0xf87f7
jmp short 087fdh ; eb 02 ; 0xf87f9
xor al, al ; 30 c0 ; 0xf87fb
cmp AL, strict byte 001h ; 3c 01 ; 0xf87fd ahci.c:281
je short 087cfh ; 74 ce ; 0xf87ff
mov cx, strict word 00020h ; b9 20 00 ; 0xf8801 ahci.c:447
xor bx, bx ; 31 db ; 0xf8804
mov ax, di ; 89 f8 ; 0xf8806
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf8808
call 0ad80h ; e8 72 25 ; 0xf880b
lea ax, [di+00080h] ; 8d 85 80 00 ; 0xf880e ahci.c:448
mov cx, strict word 00040h ; b9 40 00 ; 0xf8812
xor bx, bx ; 31 db ; 0xf8815
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf8817
call 0ad80h ; e8 63 25 ; 0xf881a
lea ax, [di+00200h] ; 8d 85 00 02 ; 0xf881d ahci.c:449
mov cx, strict word 00060h ; b9 60 00 ; 0xf8821
xor bx, bx ; 31 db ; 0xf8824
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf8826
call 0ad80h ; e8 54 25 ; 0xf8829
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf882c ahci.c:451
sal ax, 007h ; c1 e0 07 ; 0xf8830
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf8833
add ax, 00108h ; 05 08 01 ; 0xf8836
cwd ; 99 ; 0xf8839
mov cx, dx ; 89 d1 ; 0xf883a
mov dx, si ; 89 f2 ; 0xf883c
xchg cx, ax ; 91 ; 0xf883e
sal eax, 010h ; 66 c1 e0 10 ; 0xf883f
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8843
out DX, eax ; 66 ef ; 0xf8845
lea bx, [si+004h] ; 8d 5c 04 ; 0xf8847
xor ax, ax ; 31 c0 ; 0xf884a
xor cx, cx ; 31 c9 ; 0xf884c
mov dx, bx ; 89 da ; 0xf884e
xchg cx, ax ; 91 ; 0xf8850
sal eax, 010h ; 66 c1 e0 10 ; 0xf8851
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8855
out DX, eax ; 66 ef ; 0xf8857
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf8859 ahci.c:452
add ax, 0010ch ; 05 0c 01 ; 0xf885c
cwd ; 99 ; 0xf885f
mov cx, dx ; 89 d1 ; 0xf8860
mov dx, si ; 89 f2 ; 0xf8862
xchg cx, ax ; 91 ; 0xf8864
sal eax, 010h ; 66 c1 e0 10 ; 0xf8865
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8869
out DX, eax ; 66 ef ; 0xf886b
xor ax, ax ; 31 c0 ; 0xf886d
xor cx, cx ; 31 c9 ; 0xf886f
mov dx, bx ; 89 da ; 0xf8871
xchg cx, ax ; 91 ; 0xf8873
sal eax, 010h ; 66 c1 e0 10 ; 0xf8874
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8878
out DX, eax ; 66 ef ; 0xf887a
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf887c ahci.c:454
db 0feh, 0c4h
; inc ah ; fe c4 ; 0xf887f
cwd ; 99 ; 0xf8881
mov cx, dx ; 89 d1 ; 0xf8882
mov dx, si ; 89 f2 ; 0xf8884
xchg cx, ax ; 91 ; 0xf8886
sal eax, 010h ; 66 c1 e0 10 ; 0xf8887
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf888b
out DX, eax ; 66 ef ; 0xf888d
xor ax, ax ; 31 c0 ; 0xf888f
xor cx, cx ; 31 c9 ; 0xf8891
mov dx, bx ; 89 da ; 0xf8893
xchg cx, ax ; 91 ; 0xf8895
sal eax, 010h ; 66 c1 e0 10 ; 0xf8896
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf889a
out DX, eax ; 66 ef ; 0xf889c
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf889e ahci.c:455
add ax, 00104h ; 05 04 01 ; 0xf88a1
cwd ; 99 ; 0xf88a4
mov cx, dx ; 89 d1 ; 0xf88a5
mov dx, si ; 89 f2 ; 0xf88a7
xchg cx, ax ; 91 ; 0xf88a9
sal eax, 010h ; 66 c1 e0 10 ; 0xf88aa
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf88ae
out DX, eax ; 66 ef ; 0xf88b0
xor ax, ax ; 31 c0 ; 0xf88b2
xor cx, cx ; 31 c9 ; 0xf88b4
mov dx, bx ; 89 da ; 0xf88b6
xchg cx, ax ; 91 ; 0xf88b8
sal eax, 010h ; 66 c1 e0 10 ; 0xf88b9
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf88bd
out DX, eax ; 66 ef ; 0xf88bf
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf88c1 ahci.c:458
add ax, 00114h ; 05 14 01 ; 0xf88c4
cwd ; 99 ; 0xf88c7
mov cx, dx ; 89 d1 ; 0xf88c8
mov dx, si ; 89 f2 ; 0xf88ca
xchg cx, ax ; 91 ; 0xf88cc
sal eax, 010h ; 66 c1 e0 10 ; 0xf88cd
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf88d1
out DX, eax ; 66 ef ; 0xf88d3
xor ax, ax ; 31 c0 ; 0xf88d5
xor cx, cx ; 31 c9 ; 0xf88d7
mov dx, bx ; 89 da ; 0xf88d9
xchg cx, ax ; 91 ; 0xf88db
sal eax, 010h ; 66 c1 e0 10 ; 0xf88dc
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf88e0
out DX, eax ; 66 ef ; 0xf88e2
mov es, [bp-00ch] ; 8e 46 f4 ; 0xf88e4 ahci.c:460
mov byte [es:di+00262h], 0ffh ; 26 c6 85 62 02 ff ; 0xf88e7
lea sp, [bp-008h] ; 8d 66 f8 ; 0xf88ed ahci.c:462
pop di ; 5f ; 0xf88f0
pop si ; 5e ; 0xf88f1
pop cx ; 59 ; 0xf88f2
pop bx ; 5b ; 0xf88f3
pop bp ; 5d ; 0xf88f4
retn ; c3 ; 0xf88f5
; disGetNextSymbol 0xf88f6 LB 0x2526 -> off=0x0 cb=000000000000024a uValue=00000000000f72f6 'ahci_port_init'
ahci_port_init: ; 0xf88f6 LB 0x24a
push bp ; 55 ; 0xf88f6 ahci.c:468
mov bp, sp ; 89 e5 ; 0xf88f7
push cx ; 51 ; 0xf88f9
push si ; 56 ; 0xf88fa
push di ; 57 ; 0xf88fb
sub sp, strict byte 00006h ; 83 ec 06 ; 0xf88fc
mov si, ax ; 89 c6 ; 0xf88ff
mov word [bp-00ah], dx ; 89 56 f6 ; 0xf8901
mov byte [bp-008h], bl ; 88 5e f8 ; 0xf8904
call 08777h ; e8 6d fe ; 0xf8907 ahci.c:471
movzx ax, bl ; 0f b6 c3 ; 0xf890a ahci.c:474
sal ax, 007h ; c1 e0 07 ; 0xf890d
add ax, 00118h ; 05 18 01 ; 0xf8910
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8913 ahci.c:267
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf8916
xor cx, cx ; 31 c9 ; 0xf891b ahci.c:269
mov dx, bx ; 89 da ; 0xf891d
xchg cx, ax ; 91 ; 0xf891f
sal eax, 010h ; 66 c1 e0 10 ; 0xf8920
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8924
out DX, eax ; 66 ef ; 0xf8926
add bx, strict byte 00004h ; 83 c3 04 ; 0xf8928 ahci.c:270
mov dx, bx ; 89 da ; 0xf892b
in eax, DX ; 66 ed ; 0xf892d
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf892f
shr eax, 010h ; 66 c1 e8 10 ; 0xf8931
xchg dx, ax ; 92 ; 0xf8935
and AL, strict byte 0eeh ; 24 ee ; 0xf8936
mov cx, dx ; 89 d1 ; 0xf8938
mov dx, bx ; 89 da ; 0xf893a
xchg cx, ax ; 91 ; 0xf893c
sal eax, 010h ; 66 c1 e0 10 ; 0xf893d
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8941
out DX, eax ; 66 ef ; 0xf8943
movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xf8945 ahci.c:477
sal ax, 007h ; c1 e0 07 ; 0xf8949
add ax, 00118h ; 05 18 01 ; 0xf894c
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf894f ahci.c:277
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf8952
xor cx, cx ; 31 c9 ; 0xf8957 ahci.c:279
mov dx, bx ; 89 da ; 0xf8959
xchg cx, ax ; 91 ; 0xf895b
sal eax, 010h ; 66 c1 e0 10 ; 0xf895c
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8960
out DX, eax ; 66 ef ; 0xf8962
lea dx, [bx+004h] ; 8d 57 04 ; 0xf8964 ahci.c:280
in eax, DX ; 66 ed ; 0xf8967
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf8969
shr eax, 010h ; 66 c1 e8 10 ; 0xf896b
xchg dx, ax ; 92 ; 0xf896f
test ax, 0c011h ; a9 11 c0 ; 0xf8970
je short 08979h ; 74 04 ; 0xf8973
mov AL, strict byte 001h ; b0 01 ; 0xf8975
jmp short 0897bh ; eb 02 ; 0xf8977
xor al, al ; 30 c0 ; 0xf8979
cmp AL, strict byte 001h ; 3c 01 ; 0xf897b ahci.c:281
je short 08945h ; 74 c6 ; 0xf897d
mov cx, strict word 00020h ; b9 20 00 ; 0xf897f ahci.c:488
xor bx, bx ; 31 db ; 0xf8982
mov ax, si ; 89 f0 ; 0xf8984
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf8986
call 0ad80h ; e8 f4 23 ; 0xf8989
lea ax, [si+00080h] ; 8d 84 80 00 ; 0xf898c ahci.c:489
mov cx, strict word 00040h ; b9 40 00 ; 0xf8990
xor bx, bx ; 31 db ; 0xf8993
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf8995
call 0ad80h ; e8 e5 23 ; 0xf8998
lea di, [si+00200h] ; 8d bc 00 02 ; 0xf899b ahci.c:490
mov cx, strict word 00060h ; b9 60 00 ; 0xf899f
xor bx, bx ; 31 db ; 0xf89a2
mov ax, di ; 89 f8 ; 0xf89a4
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf89a6
call 0ad80h ; e8 d4 23 ; 0xf89a9
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf89ac ahci.c:494
sal bx, 007h ; c1 e3 07 ; 0xf89b0
lea ax, [bx+00108h] ; 8d 87 08 01 ; 0xf89b3
cwd ; 99 ; 0xf89b7
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf89b8
mov cx, word [es:si+00260h] ; 26 8b 8c 60 02 ; 0xf89bb
mov word [bp-00ch], cx ; 89 4e f4 ; 0xf89c0
mov cx, dx ; 89 d1 ; 0xf89c3
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf89c5
xchg cx, ax ; 91 ; 0xf89c8
sal eax, 010h ; 66 c1 e0 10 ; 0xf89c9
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf89cd
out DX, eax ; 66 ef ; 0xf89cf
mov ax, di ; 89 f8 ; 0xf89d1
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf89d3
call 083f8h ; e8 1f fa ; 0xf89d6
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf89d9
mov di, word [es:si+00260h] ; 26 8b bc 60 02 ; 0xf89dc
add di, strict byte 00004h ; 83 c7 04 ; 0xf89e1
mov cx, dx ; 89 d1 ; 0xf89e4
mov dx, di ; 89 fa ; 0xf89e6
xchg cx, ax ; 91 ; 0xf89e8
sal eax, 010h ; 66 c1 e0 10 ; 0xf89e9
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf89ed
out DX, eax ; 66 ef ; 0xf89ef
lea ax, [bx+0010ch] ; 8d 87 0c 01 ; 0xf89f1 ahci.c:495
cwd ; 99 ; 0xf89f5
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf89f6
mov di, word [es:si+00260h] ; 26 8b bc 60 02 ; 0xf89f9
mov cx, dx ; 89 d1 ; 0xf89fe
mov dx, di ; 89 fa ; 0xf8a00
xchg cx, ax ; 91 ; 0xf8a02
sal eax, 010h ; 66 c1 e0 10 ; 0xf8a03
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8a07
out DX, eax ; 66 ef ; 0xf8a09
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8a0b
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8a0e
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8a13
xor ax, ax ; 31 c0 ; 0xf8a16
xor cx, cx ; 31 c9 ; 0xf8a18
xchg cx, ax ; 91 ; 0xf8a1a
sal eax, 010h ; 66 c1 e0 10 ; 0xf8a1b
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8a1f
out DX, eax ; 66 ef ; 0xf8a21
lea ax, [bx+00100h] ; 8d 87 00 01 ; 0xf8a23 ahci.c:498
cwd ; 99 ; 0xf8a27
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8a28
mov di, word [es:si+00260h] ; 26 8b bc 60 02 ; 0xf8a2b
mov cx, dx ; 89 d1 ; 0xf8a30
mov dx, di ; 89 fa ; 0xf8a32
xchg cx, ax ; 91 ; 0xf8a34
sal eax, 010h ; 66 c1 e0 10 ; 0xf8a35
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8a39
out DX, eax ; 66 ef ; 0xf8a3b
mov ax, si ; 89 f0 ; 0xf8a3d
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf8a3f
call 083f8h ; e8 b3 f9 ; 0xf8a42
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8a45
mov di, word [es:si+00260h] ; 26 8b bc 60 02 ; 0xf8a48
add di, strict byte 00004h ; 83 c7 04 ; 0xf8a4d
mov cx, dx ; 89 d1 ; 0xf8a50
mov dx, di ; 89 fa ; 0xf8a52
xchg cx, ax ; 91 ; 0xf8a54
sal eax, 010h ; 66 c1 e0 10 ; 0xf8a55
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8a59
out DX, eax ; 66 ef ; 0xf8a5b
lea ax, [bx+00104h] ; 8d 87 04 01 ; 0xf8a5d ahci.c:499
cwd ; 99 ; 0xf8a61
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8a62
mov di, word [es:si+00260h] ; 26 8b bc 60 02 ; 0xf8a65
mov cx, dx ; 89 d1 ; 0xf8a6a
mov dx, di ; 89 fa ; 0xf8a6c
xchg cx, ax ; 91 ; 0xf8a6e
sal eax, 010h ; 66 c1 e0 10 ; 0xf8a6f
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8a73
out DX, eax ; 66 ef ; 0xf8a75
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8a77
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8a7a
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8a7f
xor ax, ax ; 31 c0 ; 0xf8a82
xor cx, cx ; 31 c9 ; 0xf8a84
xchg cx, ax ; 91 ; 0xf8a86
sal eax, 010h ; 66 c1 e0 10 ; 0xf8a87
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8a8b
out DX, eax ; 66 ef ; 0xf8a8d
lea ax, [bx+00114h] ; 8d 87 14 01 ; 0xf8a8f ahci.c:502
cwd ; 99 ; 0xf8a93
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8a94
mov di, word [es:si+00260h] ; 26 8b bc 60 02 ; 0xf8a97
mov cx, dx ; 89 d1 ; 0xf8a9c
mov dx, di ; 89 fa ; 0xf8a9e
xchg cx, ax ; 91 ; 0xf8aa0
sal eax, 010h ; 66 c1 e0 10 ; 0xf8aa1
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8aa5
out DX, eax ; 66 ef ; 0xf8aa7
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8aa9
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8aac
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8ab1
xor ax, ax ; 31 c0 ; 0xf8ab4
xor cx, cx ; 31 c9 ; 0xf8ab6
xchg cx, ax ; 91 ; 0xf8ab8
sal eax, 010h ; 66 c1 e0 10 ; 0xf8ab9
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8abd
out DX, eax ; 66 ef ; 0xf8abf
lea ax, [bx+00110h] ; 8d 87 10 01 ; 0xf8ac1 ahci.c:503
cwd ; 99 ; 0xf8ac5
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8ac6
mov di, word [es:si+00260h] ; 26 8b bc 60 02 ; 0xf8ac9
mov cx, dx ; 89 d1 ; 0xf8ace
mov dx, di ; 89 fa ; 0xf8ad0
xchg cx, ax ; 91 ; 0xf8ad2
sal eax, 010h ; 66 c1 e0 10 ; 0xf8ad3
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8ad7
out DX, eax ; 66 ef ; 0xf8ad9
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8adb
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8ade
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8ae3
mov ax, strict word 0ffffh ; b8 ff ff ; 0xf8ae6
mov cx, ax ; 89 c1 ; 0xf8ae9
xchg cx, ax ; 91 ; 0xf8aeb
sal eax, 010h ; 66 c1 e0 10 ; 0xf8aec
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8af0
out DX, eax ; 66 ef ; 0xf8af2
lea ax, [bx+00130h] ; 8d 87 30 01 ; 0xf8af4 ahci.c:505
cwd ; 99 ; 0xf8af8
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8af9
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf8afc
mov cx, dx ; 89 d1 ; 0xf8b01
mov dx, bx ; 89 da ; 0xf8b03
xchg cx, ax ; 91 ; 0xf8b05
sal eax, 010h ; 66 c1 e0 10 ; 0xf8b06
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8b0a
out DX, eax ; 66 ef ; 0xf8b0c
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8b0e
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8b11
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8b16
mov ax, strict word 0ffffh ; b8 ff ff ; 0xf8b19
mov cx, ax ; 89 c1 ; 0xf8b1c
xchg cx, ax ; 91 ; 0xf8b1e
sal eax, 010h ; 66 c1 e0 10 ; 0xf8b1f
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8b23
out DX, eax ; 66 ef ; 0xf8b25
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf8b27 ahci.c:507
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8b2a
mov byte [es:si+00262h], al ; 26 88 84 62 02 ; 0xf8b2d
mov byte [es:si+00263h], 000h ; 26 c6 84 63 02 00 ; 0xf8b32 ahci.c:508
lea sp, [bp-006h] ; 8d 66 fa ; 0xf8b38 ahci.c:509
pop di ; 5f ; 0xf8b3b
pop si ; 5e ; 0xf8b3c
pop cx ; 59 ; 0xf8b3d
pop bp ; 5d ; 0xf8b3e
retn ; c3 ; 0xf8b3f
; disGetNextSymbol 0xf8b40 LB 0x22dc -> off=0x0 cb=00000000000000a6 uValue=00000000000f7540 'ahci_read_sectors'
ahci_read_sectors: ; 0xf8b40 LB 0xa6
push bp ; 55 ; 0xf8b40 ahci.c:518
mov bp, sp ; 89 e5 ; 0xf8b41
push si ; 56 ; 0xf8b43
push di ; 57 ; 0xf8b44
push ax ; 50 ; 0xf8b45
les di, [bp+004h] ; c4 7e 04 ; 0xf8b46 ahci.c:523
movzx di, byte [es:di+00ch] ; 26 0f b6 7d 0c ; 0xf8b49
sub di, strict byte 0000ch ; 83 ef 0c ; 0xf8b4e
cmp di, strict byte 00004h ; 83 ff 04 ; 0xf8b51 ahci.c:524
jbe short 08b65h ; 76 0f ; 0xf8b54
push di ; 57 ; 0xf8b56 ahci.c:525
push 00cd8h ; 68 d8 0c ; 0xf8b57
push 00ceah ; 68 ea 0c ; 0xf8b5a
push strict byte 00007h ; 6a 07 ; 0xf8b5d
call 01a68h ; e8 06 8f ; 0xf8b5f
add sp, strict byte 00008h ; 83 c4 08 ; 0xf8b62
xor bx, bx ; 31 db ; 0xf8b65 ahci.c:531
les si, [bp+004h] ; c4 76 04 ; 0xf8b67
mov dx, word [es:si+002a6h] ; 26 8b 94 a6 02 ; 0xf8b6a
shr eax, 010h ; 66 c1 e8 10 ; 0xf8b6f ahci.c:247
mov es, dx ; 8e c2 ; 0xf8b73
mov word [es:bx+00264h], ax ; 26 89 87 64 02 ; 0xf8b75
mov es, [bp+006h] ; 8e 46 06 ; 0xf8b7a ahci.c:532
add di, si ; 01 f7 ; 0xf8b7d
movzx bx, byte [es:di+002a1h] ; 26 0f b6 9d a1 02 ; 0xf8b7f
mov di, si ; 89 f7 ; 0xf8b85
mov dx, word [es:di+002a6h] ; 26 8b 95 a6 02 ; 0xf8b87
xor ax, ax ; 31 c0 ; 0xf8b8c
call 088f6h ; e8 65 fd ; 0xf8b8e
mov bx, strict word 00025h ; bb 25 00 ; 0xf8b91 ahci.c:533
mov ax, si ; 89 f0 ; 0xf8b94
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf8b96
call 08561h ; e8 c5 f9 ; 0xf8b99
mov word [bp-006h], ax ; 89 46 fa ; 0xf8b9c
mov es, [bp+006h] ; 8e 46 06 ; 0xf8b9f ahci.c:535
mov bx, si ; 89 f3 ; 0xf8ba2
mov ax, word [es:bx+00eh] ; 26 8b 47 0e ; 0xf8ba4
mov word [es:bx+018h], ax ; 26 89 47 18 ; 0xf8ba8
mov cx, ax ; 89 c1 ; 0xf8bac ahci.c:537
sal cx, 009h ; c1 e1 09 ; 0xf8bae
shr cx, 1 ; d1 e9 ; 0xf8bb1
mov di, word [es:di+008h] ; 26 8b 7d 08 ; 0xf8bb3
mov ax, word [es:bx+00ah] ; 26 8b 47 0a ; 0xf8bb7
mov si, di ; 89 fe ; 0xf8bbb
mov dx, ax ; 89 c2 ; 0xf8bbd
mov es, ax ; 8e c0 ; 0xf8bbf
push DS ; 1e ; 0xf8bc1
mov ds, dx ; 8e da ; 0xf8bc2
rep movsw ; f3 a5 ; 0xf8bc4
pop DS ; 1f ; 0xf8bc6
xor bx, bx ; 31 db ; 0xf8bc7 ahci.c:539
les di, [bp+004h] ; c4 7e 04 ; 0xf8bc9
mov es, [es:di+002a6h] ; 26 8e 85 a6 02 ; 0xf8bcc
mov ax, word [es:bx+00264h] ; 26 8b 87 64 02 ; 0xf8bd1 ahci.c:252
sal eax, 010h ; 66 c1 e0 10 ; 0xf8bd6
mov ax, word [bp-006h] ; 8b 46 fa ; 0xf8bda ahci.c:541
lea sp, [bp-004h] ; 8d 66 fc ; 0xf8bdd
pop di ; 5f ; 0xf8be0
pop si ; 5e ; 0xf8be1
pop bp ; 5d ; 0xf8be2
retn 00004h ; c2 04 00 ; 0xf8be3
; disGetNextSymbol 0xf8be6 LB 0x2236 -> off=0x0 cb=0000000000000084 uValue=00000000000f75e6 'ahci_write_sectors'
ahci_write_sectors: ; 0xf8be6 LB 0x84
push bp ; 55 ; 0xf8be6 ahci.c:550
mov bp, sp ; 89 e5 ; 0xf8be7
push si ; 56 ; 0xf8be9
push di ; 57 ; 0xf8bea
mov si, word [bp+004h] ; 8b 76 04 ; 0xf8beb
mov cx, word [bp+006h] ; 8b 4e 06 ; 0xf8bee
mov es, cx ; 8e c1 ; 0xf8bf1 ahci.c:555
movzx dx, byte [es:si+00ch] ; 26 0f b6 54 0c ; 0xf8bf3
sub dx, strict byte 0000ch ; 83 ea 0c ; 0xf8bf8
cmp dx, strict byte 00004h ; 83 fa 04 ; 0xf8bfb ahci.c:556
jbe short 08c0fh ; 76 0f ; 0xf8bfe
push dx ; 52 ; 0xf8c00 ahci.c:557
push 00d09h ; 68 09 0d ; 0xf8c01
push 00ceah ; 68 ea 0c ; 0xf8c04
push strict byte 00007h ; 6a 07 ; 0xf8c07
call 01a68h ; e8 5c 8e ; 0xf8c09
add sp, strict byte 00008h ; 83 c4 08 ; 0xf8c0c
xor bx, bx ; 31 db ; 0xf8c0f ahci.c:563
mov es, cx ; 8e c1 ; 0xf8c11
mov di, word [es:si+002a6h] ; 26 8b bc a6 02 ; 0xf8c13
shr eax, 010h ; 66 c1 e8 10 ; 0xf8c18 ahci.c:247
mov es, di ; 8e c7 ; 0xf8c1c
mov word [es:bx+00264h], ax ; 26 89 87 64 02 ; 0xf8c1e
mov es, cx ; 8e c1 ; 0xf8c23 ahci.c:564
mov bx, si ; 89 f3 ; 0xf8c25
add bx, dx ; 01 d3 ; 0xf8c27
movzx bx, byte [es:bx+002a1h] ; 26 0f b6 9f a1 02 ; 0xf8c29
mov dx, word [es:si+002a6h] ; 26 8b 94 a6 02 ; 0xf8c2f
xor ax, ax ; 31 c0 ; 0xf8c34
call 088f6h ; e8 bd fc ; 0xf8c36
mov bx, strict word 00035h ; bb 35 00 ; 0xf8c39 ahci.c:565
mov ax, si ; 89 f0 ; 0xf8c3c
mov dx, cx ; 89 ca ; 0xf8c3e
call 08561h ; e8 1e f9 ; 0xf8c40
mov dx, ax ; 89 c2 ; 0xf8c43
mov es, cx ; 8e c1 ; 0xf8c45 ahci.c:567
mov ax, word [es:si+00eh] ; 26 8b 44 0e ; 0xf8c47
mov word [es:si+018h], ax ; 26 89 44 18 ; 0xf8c4b
xor bx, bx ; 31 db ; 0xf8c4f ahci.c:568
mov es, [es:si+002a6h] ; 26 8e 84 a6 02 ; 0xf8c51
mov ax, word [es:bx+00264h] ; 26 8b 87 64 02 ; 0xf8c56 ahci.c:252
sal eax, 010h ; 66 c1 e0 10 ; 0xf8c5b
mov ax, dx ; 89 d0 ; 0xf8c5f ahci.c:570
lea sp, [bp-004h] ; 8d 66 fc ; 0xf8c61
pop di ; 5f ; 0xf8c64
pop si ; 5e ; 0xf8c65
pop bp ; 5d ; 0xf8c66
retn 00004h ; c2 04 00 ; 0xf8c67
; disGetNextSymbol 0xf8c6a LB 0x21b2 -> off=0x0 cb=000000000000014c uValue=00000000000f766a 'ahci_cmd_packet'
ahci_cmd_packet: ; 0xf8c6a LB 0x14c
push bp ; 55 ; 0xf8c6a ahci.c:577
mov bp, sp ; 89 e5 ; 0xf8c6b
push si ; 56 ; 0xf8c6d
push di ; 57 ; 0xf8c6e
sub sp, strict byte 0000ch ; 83 ec 0c ; 0xf8c6f
mov di, ax ; 89 c7 ; 0xf8c72
mov byte [bp-006h], dl ; 88 56 fa ; 0xf8c74
mov word [bp-00eh], bx ; 89 5e f2 ; 0xf8c77
mov word [bp-010h], cx ; 89 4e f0 ; 0xf8c7a
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf8c7d ahci.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf8c80
mov es, ax ; 8e c0 ; 0xf8c83
mov ax, word [es:bx] ; 26 8b 07 ; 0xf8c85
mov si, strict word 0005eh ; be 5e 00 ; 0xf8c88 ahci.c:59
mov word [bp-008h], ax ; 89 46 f8 ; 0xf8c8b
cmp byte [bp+008h], 002h ; 80 7e 08 02 ; 0xf8c8e ahci.c:584
jne short 08cb3h ; 75 1f ; 0xf8c92
mov bx, 00e16h ; bb 16 0e ; 0xf8c94 ahci.c:585
mov cx, ds ; 8c d9 ; 0xf8c97
mov ax, strict word 00004h ; b8 04 00 ; 0xf8c99
call 01a27h ; e8 88 8d ; 0xf8c9c
push 00d1ch ; 68 1c 0d ; 0xf8c9f
push 00d2ch ; 68 2c 0d ; 0xf8ca2
push strict byte 00004h ; 6a 04 ; 0xf8ca5
call 01a68h ; e8 be 8d ; 0xf8ca7
add sp, strict byte 00006h ; 83 c4 06 ; 0xf8caa
mov ax, strict word 00001h ; b8 01 00 ; 0xf8cad ahci.c:586
jmp near 08dadh ; e9 fa 00 ; 0xf8cb0
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf8cb3 ahci.c:597
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf8cb6
mov cx, strict word 00008h ; b9 08 00 ; 0xf8cb9
sal ax, 1 ; d1 e0 ; 0xf8cbc
rcl dx, 1 ; d1 d2 ; 0xf8cbe
loop 08cbch ; e2 fa ; 0xf8cc0
mov es, [bp-008h] ; 8e 46 f8 ; 0xf8cc2
mov word [es:si], ax ; 26 89 04 ; 0xf8cc5
mov word [es:si+002h], dx ; 26 89 54 02 ; 0xf8cc8
db 066h, 026h, 0c7h, 044h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000000h ; 66 26 c7 44 04 00 00 00 00; 0xf8ccc
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf8cd5 ahci.c:598
mov word [es:si+008h], ax ; 26 89 44 08 ; 0xf8cd8
mov ax, word [bp+00ch] ; 8b 46 0c ; 0xf8cdc
mov word [es:si+00ah], ax ; 26 89 44 0a ; 0xf8cdf
mov bx, word [es:si+010h] ; 26 8b 5c 10 ; 0xf8ce3 ahci.c:599
mov ax, word [bp+004h] ; 8b 46 04 ; 0xf8ce7
mov dx, word [bp+006h] ; 8b 56 06 ; 0xf8cea
xor cx, cx ; 31 c9 ; 0xf8ced
call 0ad20h ; e8 2e 20 ; 0xf8cef
mov word [es:si+00eh], ax ; 26 89 44 0e ; 0xf8cf2
mov word [bp-00ch], strict word 00000h ; c7 46 f4 00 00 ; 0xf8cf6 ahci.c:602
mov ax, word [es:si+002a6h] ; 26 8b 84 a6 02 ; 0xf8cfb
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf8d00
sub di, strict byte 0000ch ; 83 ef 0c ; 0xf8d03 ahci.c:590
shr eax, 010h ; 66 c1 e8 10 ; 0xf8d06 ahci.c:247
les bx, [bp-00ch] ; c4 5e f4 ; 0xf8d0a
mov word [es:bx+00264h], ax ; 26 89 87 64 02 ; 0xf8d0d
mov es, [bp-008h] ; 8e 46 f8 ; 0xf8d12 ahci.c:605
add di, si ; 01 f7 ; 0xf8d15
movzx bx, byte [es:di+002a1h] ; 26 0f b6 9d a1 02 ; 0xf8d17
mov dx, word [es:si+002a6h] ; 26 8b 94 a6 02 ; 0xf8d1d
xor ax, ax ; 31 c0 ; 0xf8d22
call 088f6h ; e8 cf fb ; 0xf8d24
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf8d27 ahci.c:608
push ax ; 50 ; 0xf8d2b
mov bx, word [bp-00eh] ; 8b 5e f2 ; 0xf8d2c
mov cx, word [bp-010h] ; 8b 4e f0 ; 0xf8d2f
mov ax, 000c0h ; b8 c0 00 ; 0xf8d32
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf8d35
call 0ad90h ; e8 55 20 ; 0xf8d38
mov es, [bp-008h] ; 8e 46 f8 ; 0xf8d3b ahci.c:612
db 066h, 026h, 0c7h, 044h, 018h, 000h, 000h, 000h, 000h
; mov dword [es:si+018h], strict dword 000000000h ; 66 26 c7 44 18 00 00 00 00; 0xf8d3e
mov word [es:si+01ch], strict word 00000h ; 26 c7 44 1c 00 00 ; 0xf8d47 ahci.c:613
mov bx, 000a0h ; bb a0 00 ; 0xf8d4d ahci.c:615
mov ax, si ; 89 f0 ; 0xf8d50
mov dx, es ; 8c c2 ; 0xf8d52
call 08561h ; e8 0a f8 ; 0xf8d54
les bx, [bp-00ch] ; c4 5e f4 ; 0xf8d57 ahci.c:617
mov dx, word [es:bx+004h] ; 26 8b 57 04 ; 0xf8d5a
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf8d5e
mov es, [bp-008h] ; 8e 46 f8 ; 0xf8d62
mov word [es:si+01ah], dx ; 26 89 54 1a ; 0xf8d65
mov word [es:si+01ch], ax ; 26 89 44 1c ; 0xf8d69
mov bx, word [es:si+01ah] ; 26 8b 5c 1a ; 0xf8d6d ahci.c:619
mov cx, ax ; 89 c1 ; 0xf8d71
shr cx, 1 ; d1 e9 ; 0xf8d73
rcr bx, 1 ; d1 db ; 0xf8d75
mov di, word [es:si+008h] ; 26 8b 7c 08 ; 0xf8d77
mov ax, word [es:si+00ah] ; 26 8b 44 0a ; 0xf8d7b
mov cx, bx ; 89 d9 ; 0xf8d7f
mov si, di ; 89 fe ; 0xf8d81
mov dx, ax ; 89 c2 ; 0xf8d83
mov es, ax ; 8e c0 ; 0xf8d85
push DS ; 1e ; 0xf8d87
mov ds, dx ; 8e da ; 0xf8d88
rep movsw ; f3 a5 ; 0xf8d8a
pop DS ; 1f ; 0xf8d8c
les bx, [bp-00ch] ; c4 5e f4 ; 0xf8d8d ahci.c:252
mov ax, word [es:bx+00264h] ; 26 8b 87 64 02 ; 0xf8d90
sal eax, 010h ; 66 c1 e0 10 ; 0xf8d95
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf8d99 ahci.c:623
mov ax, word [es:bx+006h] ; 26 8b 47 06 ; 0xf8d9c
or ax, word [es:bx+004h] ; 26 0b 47 04 ; 0xf8da0
jne short 08dabh ; 75 05 ; 0xf8da4
mov ax, strict word 00004h ; b8 04 00 ; 0xf8da6
jmp short 08dadh ; eb 02 ; 0xf8da9
xor ax, ax ; 31 c0 ; 0xf8dab
lea sp, [bp-004h] ; 8d 66 fc ; 0xf8dad ahci.c:624
pop di ; 5f ; 0xf8db0
pop si ; 5e ; 0xf8db1
pop bp ; 5d ; 0xf8db2
retn 0000ah ; c2 0a 00 ; 0xf8db3
; disGetNextSymbol 0xf8db6 LB 0x2066 -> off=0x0 cb=0000000000000005 uValue=00000000000f77b6 'wait_ticks_device_init'
wait_ticks_device_init: ; 0xf8db6 LB 0x5
push bp ; 55 ; 0xf8db6 ahci.c:627
mov bp, sp ; 89 e5 ; 0xf8db7
pop bp ; 5d ; 0xf8db9 ahci.c:629
retn ; c3 ; 0xf8dba
; disGetNextSymbol 0xf8dbb LB 0x2061 -> off=0x0 cb=000000000000049f uValue=00000000000f77bb 'ahci_port_detect_device'
ahci_port_detect_device: ; 0xf8dbb LB 0x49f
push bp ; 55 ; 0xf8dbb ahci.c:631
mov bp, sp ; 89 e5 ; 0xf8dbc
push cx ; 51 ; 0xf8dbe
push si ; 56 ; 0xf8dbf
push di ; 57 ; 0xf8dc0
sub sp, 00228h ; 81 ec 28 02 ; 0xf8dc1
mov si, ax ; 89 c6 ; 0xf8dc5
mov word [bp-012h], dx ; 89 56 ee ; 0xf8dc7
mov byte [bp-00ah], bl ; 88 5e f6 ; 0xf8dca
mov word [bp-028h], strict word 00000h ; c7 46 d8 00 00 ; 0xf8dcd ahci.c:637
movzx di, bl ; 0f b6 fb ; 0xf8dd2 ahci.c:639
mov bx, di ; 89 fb ; 0xf8dd5
call 088f6h ; e8 1c fb ; 0xf8dd7
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf8dda ahci.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf8ddd
mov es, ax ; 8e c0 ; 0xf8de0
mov ax, word [es:bx] ; 26 8b 07 ; 0xf8de2
mov word [bp-010h], strict word 0005eh ; c7 46 f0 5e 00 ; 0xf8de5 ahci.c:59
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf8dea
mov ax, di ; 89 f8 ; 0xf8ded ahci.c:644
sal ax, 007h ; c1 e0 07 ; 0xf8def
add ax, 0012ch ; 05 2c 01 ; 0xf8df2
cwd ; 99 ; 0xf8df5
mov di, ax ; 89 c7 ; 0xf8df6
mov bx, dx ; 89 d3 ; 0xf8df8
mov es, [bp-012h] ; 8e 46 ee ; 0xf8dfa
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8dfd
mov cx, bx ; 89 d9 ; 0xf8e02
xchg cx, ax ; 91 ; 0xf8e04
sal eax, 010h ; 66 c1 e0 10 ; 0xf8e05
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8e09
out DX, eax ; 66 ef ; 0xf8e0b
mov es, [bp-012h] ; 8e 46 ee ; 0xf8e0d
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8e10
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8e15
mov ax, strict word 00001h ; b8 01 00 ; 0xf8e18
xor cx, cx ; 31 c9 ; 0xf8e1b
xchg cx, ax ; 91 ; 0xf8e1d
sal eax, 010h ; 66 c1 e0 10 ; 0xf8e1e
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8e22
out DX, eax ; 66 ef ; 0xf8e24
mov es, [bp-012h] ; 8e 46 ee ; 0xf8e26 ahci.c:649
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8e29
mov ax, di ; 89 f8 ; 0xf8e2e
mov cx, bx ; 89 d9 ; 0xf8e30
xchg cx, ax ; 91 ; 0xf8e32
sal eax, 010h ; 66 c1 e0 10 ; 0xf8e33
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8e37
out DX, eax ; 66 ef ; 0xf8e39
mov es, [bp-012h] ; 8e 46 ee ; 0xf8e3b
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8e3e
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8e43
xor ax, ax ; 31 c0 ; 0xf8e46
xor cx, cx ; 31 c9 ; 0xf8e48
xchg cx, ax ; 91 ; 0xf8e4a
sal eax, 010h ; 66 c1 e0 10 ; 0xf8e4b
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8e4f
out DX, eax ; 66 ef ; 0xf8e51
mov di, strict word 0006ch ; bf 6c 00 ; 0xf8e53 ahci.c:658
mov ax, strict word 00040h ; b8 40 00 ; 0xf8e56
mov word [bp-016h], ax ; 89 46 ea ; 0xf8e59
mov es, ax ; 8e c0 ; 0xf8e5c ahci.c:659
mov ax, word [es:di] ; 26 8b 05 ; 0xf8e5e
add ax, strict word 00003h ; 05 03 00 ; 0xf8e61
mov word [bp-024h], ax ; 89 46 dc ; 0xf8e64
mov ax, word [es:di+002h] ; 26 8b 45 02 ; 0xf8e67
adc ax, strict word 00000h ; 15 00 00 ; 0xf8e6b
mov word [bp-020h], ax ; 89 46 e0 ; 0xf8e6e
mov es, [bp-016h] ; 8e 46 ea ; 0xf8e71 ahci.c:661
mov ax, word [es:di+002h] ; 26 8b 45 02 ; 0xf8e74
cmp ax, word [bp-020h] ; 3b 46 e0 ; 0xf8e78
jc short 08e8eh ; 72 11 ; 0xf8e7b
mov ax, word [es:di+002h] ; 26 8b 45 02 ; 0xf8e7d
cmp ax, word [bp-020h] ; 3b 46 e0 ; 0xf8e81
jne short 08ed9h ; 75 53 ; 0xf8e84
mov ax, word [es:di] ; 26 8b 05 ; 0xf8e86
cmp ax, word [bp-024h] ; 3b 46 dc ; 0xf8e89
jnc short 08ed9h ; 73 4b ; 0xf8e8c
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf8e8e ahci.c:664
sal ax, 007h ; c1 e0 07 ; 0xf8e92
add ax, 00128h ; 05 28 01 ; 0xf8e95
cwd ; 99 ; 0xf8e98
mov es, [bp-012h] ; 8e 46 ee ; 0xf8e99
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf8e9c
mov cx, dx ; 89 d1 ; 0xf8ea1
mov dx, bx ; 89 da ; 0xf8ea3
xchg cx, ax ; 91 ; 0xf8ea5
sal eax, 010h ; 66 c1 e0 10 ; 0xf8ea6
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8eaa
out DX, eax ; 66 ef ; 0xf8eac
mov es, [bp-012h] ; 8e 46 ee ; 0xf8eae
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8eb1
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8eb6
in eax, DX ; 66 ed ; 0xf8eb9
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf8ebb
shr eax, 010h ; 66 c1 e8 10 ; 0xf8ebd
xchg dx, ax ; 92 ; 0xf8ec1
mov word [bp-026h], ax ; 89 46 da ; 0xf8ec2
mov word [bp-022h], dx ; 89 56 de ; 0xf8ec5
push strict byte 00000h ; 6a 00 ; 0xf8ec8 ahci.c:665
mov bx, strict word 0000fh ; bb 0f 00 ; 0xf8eca
xor cx, cx ; 31 c9 ; 0xf8ecd
call 083ddh ; e8 0b f5 ; 0xf8ecf
cmp ax, strict word 00003h ; 3d 03 00 ; 0xf8ed2
jne short 08e71h ; 75 9a ; 0xf8ed5
jmp short 08ee1h ; eb 08 ; 0xf8ed7 ahci.c:667
cmp word [bp-028h], strict byte 00000h ; 83 7e d8 00 ; 0xf8ed9 ahci.c:672
je near 09252h ; 0f 84 71 03 ; 0xf8edd
push strict byte 00000h ; 6a 00 ; 0xf8ee1 ahci.c:677
mov bx, strict word 0000fh ; bb 0f 00 ; 0xf8ee3
xor cx, cx ; 31 c9 ; 0xf8ee6
mov ax, word [bp-026h] ; 8b 46 da ; 0xf8ee8
mov dx, word [bp-022h] ; 8b 56 de ; 0xf8eeb
call 083ddh ; e8 ec f4 ; 0xf8eee
cmp ax, strict word 00003h ; 3d 03 00 ; 0xf8ef1
jne near 09252h ; 0f 85 5a 03 ; 0xf8ef4
movzx di, byte [bp-00ah] ; 0f b6 7e f6 ; 0xf8ef8 ahci.c:685
sal di, 007h ; c1 e7 07 ; 0xf8efc
lea ax, [di+00130h] ; 8d 85 30 01 ; 0xf8eff
cwd ; 99 ; 0xf8f03
mov es, [bp-012h] ; 8e 46 ee ; 0xf8f04
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf8f07
mov cx, dx ; 89 d1 ; 0xf8f0c
mov dx, bx ; 89 da ; 0xf8f0e
xchg cx, ax ; 91 ; 0xf8f10
sal eax, 010h ; 66 c1 e0 10 ; 0xf8f11
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8f15
out DX, eax ; 66 ef ; 0xf8f17
mov es, [bp-012h] ; 8e 46 ee ; 0xf8f19
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8f1c
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8f21
mov ax, strict word 0ffffh ; b8 ff ff ; 0xf8f24
mov cx, ax ; 89 c1 ; 0xf8f27
xchg cx, ax ; 91 ; 0xf8f29
sal eax, 010h ; 66 c1 e0 10 ; 0xf8f2a
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8f2e
out DX, eax ; 66 ef ; 0xf8f30
les bx, [bp-010h] ; c4 5e f0 ; 0xf8f32 ahci.c:687
mov al, byte [es:bx+002a5h] ; 26 8a 87 a5 02 ; 0xf8f35
mov byte [bp-008h], al ; 88 46 f8 ; 0xf8f3a
cmp AL, strict byte 004h ; 3c 04 ; 0xf8f3d ahci.c:692
jnc near 09252h ; 0f 83 0f 03 ; 0xf8f3f
lea ax, [di+00118h] ; 8d 85 18 01 ; 0xf8f43 ahci.c:695
mov es, [bp-012h] ; 8e 46 ee ; 0xf8f47 ahci.c:258
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf8f4a
xor cx, cx ; 31 c9 ; 0xf8f4f ahci.c:260
mov dx, bx ; 89 da ; 0xf8f51
xchg cx, ax ; 91 ; 0xf8f53
sal eax, 010h ; 66 c1 e0 10 ; 0xf8f54
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8f58
out DX, eax ; 66 ef ; 0xf8f5a
add bx, strict byte 00004h ; 83 c3 04 ; 0xf8f5c ahci.c:261
mov dx, bx ; 89 da ; 0xf8f5f
in eax, DX ; 66 ed ; 0xf8f61
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf8f63
shr eax, 010h ; 66 c1 e8 10 ; 0xf8f65
xchg dx, ax ; 92 ; 0xf8f69
or AL, strict byte 010h ; 0c 10 ; 0xf8f6a
mov cx, dx ; 89 d1 ; 0xf8f6c
mov dx, bx ; 89 da ; 0xf8f6e
xchg cx, ax ; 91 ; 0xf8f70
sal eax, 010h ; 66 c1 e0 10 ; 0xf8f71
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8f75
out DX, eax ; 66 ef ; 0xf8f77
lea ax, [di+00124h] ; 8d 85 24 01 ; 0xf8f79 ahci.c:699
cwd ; 99 ; 0xf8f7d
mov es, [bp-012h] ; 8e 46 ee ; 0xf8f7e
mov bx, word [es:si+00260h] ; 26 8b 9c 60 02 ; 0xf8f81
mov cx, dx ; 89 d1 ; 0xf8f86
mov dx, bx ; 89 da ; 0xf8f88
xchg cx, ax ; 91 ; 0xf8f8a
sal eax, 010h ; 66 c1 e0 10 ; 0xf8f8b
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf8f8f
out DX, eax ; 66 ef ; 0xf8f91
mov es, [bp-012h] ; 8e 46 ee ; 0xf8f93
mov dx, word [es:si+00260h] ; 26 8b 94 60 02 ; 0xf8f96
add dx, strict byte 00004h ; 83 c2 04 ; 0xf8f9b
in eax, DX ; 66 ed ; 0xf8f9e
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf8fa0
shr eax, 010h ; 66 c1 e8 10 ; 0xf8fa2
xchg dx, ax ; 92 ; 0xf8fa6
mov bx, ax ; 89 c3 ; 0xf8fa7
mov ax, dx ; 89 d0 ; 0xf8fa9
mov cl, byte [bp-008h] ; 8a 4e f8 ; 0xf8fab
add cl, 00ch ; 80 c1 0c ; 0xf8fae
test dx, dx ; 85 d2 ; 0xf8fb1 ahci.c:700
jne near 091a0h ; 0f 85 e9 01 ; 0xf8fb3
cmp bx, 00101h ; 81 fb 01 01 ; 0xf8fb7
jne near 091a0h ; 0f 85 e1 01 ; 0xf8fbb
les bx, [bp-010h] ; c4 5e f0 ; 0xf8fbf ahci.c:710
db 066h, 026h, 0c7h, 047h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:bx+004h], strict dword 000000000h ; 66 26 c7 47 04 00 00 00 00; 0xf8fc2
db 066h, 026h, 0c7h, 007h, 000h, 000h, 000h, 000h
; mov dword [es:bx], strict dword 000000000h ; 66 26 c7 07 00 00 00 00 ; 0xf8fcb
lea dx, [bp-0022eh] ; 8d 96 d2 fd ; 0xf8fd3 ahci.c:711
mov word [es:bx+008h], dx ; 26 89 57 08 ; 0xf8fd7
mov [es:bx+00ah], ss ; 26 8c 57 0a ; 0xf8fdb
db 066h, 026h, 0c7h, 047h, 00eh, 001h, 000h, 000h, 002h
; mov dword [es:bx+00eh], strict dword 002000001h ; 66 26 c7 47 0e 01 00 00 02; 0xf8fdf ahci.c:712
mov bx, 000ech ; bb ec 00 ; 0xf8fe8 ahci.c:714
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf8feb
mov dx, es ; 8c c2 ; 0xf8fee
call 08561h ; e8 6e f5 ; 0xf8ff0
mov byte [bp-00ch], cl ; 88 4e f4 ; 0xf8ff3 ahci.c:717
test byte [bp-0022eh], 080h ; f6 86 d2 fd 80 ; 0xf8ff6 ahci.c:719
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf8ffb
xor ah, ah ; 30 e4 ; 0xf8ffe
mov dx, word [bp-0022ch] ; 8b 96 d4 fd ; 0xf9000 ahci.c:720
mov word [bp-01ch], dx ; 89 56 e4 ; 0xf9004
mov dx, word [bp-00228h] ; 8b 96 d8 fd ; 0xf9007 ahci.c:721
mov word [bp-01ah], dx ; 89 56 e6 ; 0xf900b
mov dx, word [bp-00222h] ; 8b 96 de fd ; 0xf900e ahci.c:722
mov word [bp-01eh], dx ; 89 56 e2 ; 0xf9012
mov si, word [bp-001b6h] ; 8b b6 4a fe ; 0xf9015 ahci.c:723
mov di, word [bp-001b4h] ; 8b be 4c fe ; 0xf9019
mov word [bp-018h], strict word 00000h ; c7 46 e8 00 00 ; 0xf901d
mov word [bp-014h], strict word 00000h ; c7 46 ec 00 00 ; 0xf9022
cmp di, 00fffh ; 81 ff ff 0f ; 0xf9027 ahci.c:725
jne short 09048h ; 75 1b ; 0xf902b
cmp si, strict byte 0ffffh ; 83 fe ff ; 0xf902d
jne short 09048h ; 75 16 ; 0xf9030
mov dx, word [bp-00160h] ; 8b 96 a0 fe ; 0xf9032 ahci.c:726
mov word [bp-014h], dx ; 89 56 ec ; 0xf9036
mov dx, word [bp-00162h] ; 8b 96 9e fe ; 0xf9039
mov word [bp-018h], dx ; 89 56 e8 ; 0xf903d
mov di, word [bp-00164h] ; 8b be 9c fe ; 0xf9040
mov si, word [bp-00166h] ; 8b b6 9a fe ; 0xf9044
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf9048 ahci.c:730
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf904c
add bx, word [bp-010h] ; 03 5e f0 ; 0xf904f
mov ah, byte [bp-00ah] ; 8a 66 f6 ; 0xf9052
mov byte [es:bx+002a1h], ah ; 26 88 a7 a1 02 ; 0xf9055
movzx dx, byte [bp-00ch] ; 0f b6 56 f4 ; 0xf905a ahci.c:731
imul dx, dx, strict byte 0001ch ; 6b d2 1c ; 0xf905e
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xf9061
add bx, dx ; 01 d3 ; 0xf9064
mov word [es:bx+01eh], 0ff05h ; 26 c7 47 1e 05 ff ; 0xf9066
mov byte [es:bx+020h], al ; 26 88 47 20 ; 0xf906c ahci.c:733
mov byte [es:bx+021h], 000h ; 26 c6 47 21 00 ; 0xf9070 ahci.c:734
mov word [es:bx+024h], 00200h ; 26 c7 47 24 00 02 ; 0xf9075 ahci.c:735
mov byte [es:bx+023h], 001h ; 26 c6 47 23 01 ; 0xf907b ahci.c:736
mov ax, word [bp-014h] ; 8b 46 ec ; 0xf9080 ahci.c:737
mov word [es:bx+038h], ax ; 26 89 47 38 ; 0xf9083
mov ax, word [bp-018h] ; 8b 46 e8 ; 0xf9087
mov word [es:bx+036h], ax ; 26 89 47 36 ; 0xf908a
mov word [es:bx+034h], di ; 26 89 7f 34 ; 0xf908e
mov word [es:bx+032h], si ; 26 89 77 32 ; 0xf9092
mov ax, word [bp-01ah] ; 8b 46 e6 ; 0xf9096 ahci.c:739
mov word [es:bx+02ch], ax ; 26 89 47 2c ; 0xf9099
mov ax, word [bp-01ch] ; 8b 46 e4 ; 0xf909d ahci.c:740
mov word [es:bx+02eh], ax ; 26 89 47 2e ; 0xf90a0
mov ax, word [bp-01eh] ; 8b 46 e2 ; 0xf90a4 ahci.c:741
mov word [es:bx+030h], ax ; 26 89 47 30 ; 0xf90a7
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf90ab ahci.c:744
cmp AL, strict byte 001h ; 3c 01 ; 0xf90ae
jc short 090beh ; 72 0c ; 0xf90b0
jbe short 090c6h ; 76 12 ; 0xf90b2
cmp AL, strict byte 003h ; 3c 03 ; 0xf90b4
je short 090ceh ; 74 16 ; 0xf90b6
cmp AL, strict byte 002h ; 3c 02 ; 0xf90b8
je short 090cah ; 74 0e ; 0xf90ba
jmp short 09103h ; eb 45 ; 0xf90bc
test al, al ; 84 c0 ; 0xf90be
jne short 09103h ; 75 41 ; 0xf90c0
mov BL, strict byte 040h ; b3 40 ; 0xf90c2 ahci.c:747
jmp short 090d0h ; eb 0a ; 0xf90c4 ahci.c:748
mov BL, strict byte 048h ; b3 48 ; 0xf90c6 ahci.c:750
jmp short 090d0h ; eb 06 ; 0xf90c8 ahci.c:751
mov BL, strict byte 050h ; b3 50 ; 0xf90ca ahci.c:753
jmp short 090d0h ; eb 02 ; 0xf90cc ahci.c:754
mov BL, strict byte 058h ; b3 58 ; 0xf90ce ahci.c:756
mov al, bl ; 88 d8 ; 0xf90d0 ahci.c:760
add AL, strict byte 007h ; 04 07 ; 0xf90d2
movzx dx, al ; 0f b6 d0 ; 0xf90d4
mov ax, dx ; 89 d0 ; 0xf90d7
call 0176ah ; e8 8e 86 ; 0xf90d9
test al, al ; 84 c0 ; 0xf90dc
je short 09103h ; 74 23 ; 0xf90de
movzx ax, bl ; 0f b6 c3 ; 0xf90e0 ahci.c:763
call 017a6h ; e8 c0 86 ; 0xf90e3
mov word [bp-02ch], ax ; 89 46 d4 ; 0xf90e6
mov al, bl ; 88 d8 ; 0xf90e9 ahci.c:764
add AL, strict byte 002h ; 04 02 ; 0xf90eb
xor ah, ah ; 30 e4 ; 0xf90ed
call 0176ah ; e8 78 86 ; 0xf90ef
xor ah, ah ; 30 e4 ; 0xf90f2
mov word [bp-02eh], ax ; 89 46 d2 ; 0xf90f4
mov ax, dx ; 89 d0 ; 0xf90f7 ahci.c:765
call 0176ah ; e8 6e 86 ; 0xf90f9
xor ah, ah ; 30 e4 ; 0xf90fc
mov word [bp-02ah], ax ; 89 46 d6 ; 0xf90fe
jmp short 09113h ; eb 10 ; 0xf9101 ahci.c:767
push word [bp-014h] ; ff 76 ec ; 0xf9103 ahci.c:768
push word [bp-018h] ; ff 76 e8 ; 0xf9106
push di ; 57 ; 0xf9109
push si ; 56 ; 0xf910a
mov dx, ss ; 8c d2 ; 0xf910b
lea ax, [bp-02eh] ; 8d 46 d2 ; 0xf910d
call 05880h ; e8 6d c7 ; 0xf9110
mov bx, 00e16h ; bb 16 0e ; 0xf9113 ahci.c:772
mov cx, ds ; 8c d9 ; 0xf9116
mov ax, strict word 00004h ; b8 04 00 ; 0xf9118
call 01a27h ; e8 09 89 ; 0xf911b
push word [bp-014h] ; ff 76 ec ; 0xf911e
push word [bp-018h] ; ff 76 e8 ; 0xf9121
push di ; 57 ; 0xf9124
push si ; 56 ; 0xf9125
mov ax, word [bp-02ah] ; 8b 46 d6 ; 0xf9126
push ax ; 50 ; 0xf9129
mov ax, word [bp-02eh] ; 8b 46 d2 ; 0xf912a
push ax ; 50 ; 0xf912d
mov ax, word [bp-02ch] ; 8b 46 d4 ; 0xf912e
push ax ; 50 ; 0xf9131
push word [bp-01eh] ; ff 76 e2 ; 0xf9132
push dword [bp-01ch] ; 66 ff 76 e4 ; 0xf9135
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf9139
push ax ; 50 ; 0xf913d
movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xf913e
push ax ; 50 ; 0xf9142
push 00d4ch ; 68 4c 0d ; 0xf9143
push strict byte 00004h ; 6a 04 ; 0xf9146
call 01a68h ; e8 1d 89 ; 0xf9148
add sp, strict byte 0001ch ; 83 c4 1c ; 0xf914b
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf914e ahci.c:774
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf9152
mov di, word [bp-010h] ; 8b 7e f0 ; 0xf9155
add di, ax ; 01 c7 ; 0xf9158
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf915a
lea di, [di+026h] ; 8d 7d 26 ; 0xf915d
push DS ; 1e ; 0xf9160
push SS ; 16 ; 0xf9161
pop DS ; 1f ; 0xf9162
lea si, [bp-02eh] ; 8d 76 d2 ; 0xf9163
movsw ; a5 ; 0xf9166
movsw ; a5 ; 0xf9167
movsw ; a5 ; 0xf9168
pop DS ; 1f ; 0xf9169
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xf916a ahci.c:777
mov al, byte [es:bx+0024eh] ; 26 8a 87 4e 02 ; 0xf916d
mov ah, byte [bp-008h] ; 8a 66 f8 ; 0xf9172 ahci.c:778
add ah, 00ch ; 80 c4 0c ; 0xf9175
movzx bx, al ; 0f b6 d8 ; 0xf9178
add bx, word [bp-010h] ; 03 5e f0 ; 0xf917b
mov byte [es:bx+0024fh], ah ; 26 88 a7 4f 02 ; 0xf917e
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf9183 ahci.c:779
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xf9185 ahci.c:780
mov byte [es:bx+0024eh], al ; 26 88 87 4e 02 ; 0xf9188
mov bx, strict word 00075h ; bb 75 00 ; 0xf918d ahci.c:48
mov ax, strict word 00040h ; b8 40 00 ; 0xf9190
mov es, ax ; 8e c0 ; 0xf9193
mov al, byte [es:bx] ; 26 8a 07 ; 0xf9195
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf9198 ahci.c:784
mov byte [es:bx], al ; 26 88 07 ; 0xf919a ahci.c:53
jmp near 09244h ; e9 a4 00 ; 0xf919d ahci.c:787
cmp dx, 0eb14h ; 81 fa 14 eb ; 0xf91a0
jne near 09244h ; 0f 85 9c 00 ; 0xf91a4
cmp bx, 00101h ; 81 fb 01 01 ; 0xf91a8
jne near 09244h ; 0f 85 94 00 ; 0xf91ac
les bx, [bp-010h] ; c4 5e f0 ; 0xf91b0 ahci.c:792
db 066h, 026h, 0c7h, 047h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:bx+004h], strict dword 000000000h ; 66 26 c7 47 04 00 00 00 00; 0xf91b3
db 066h, 026h, 0c7h, 007h, 000h, 000h, 000h, 000h
; mov dword [es:bx], strict dword 000000000h ; 66 26 c7 07 00 00 00 00 ; 0xf91bc
lea dx, [bp-0022eh] ; 8d 96 d2 fd ; 0xf91c4 ahci.c:793
mov word [es:bx+008h], dx ; 26 89 57 08 ; 0xf91c8
mov [es:bx+00ah], ss ; 26 8c 57 0a ; 0xf91cc
db 066h, 026h, 0c7h, 047h, 00eh, 001h, 000h, 000h, 002h
; mov dword [es:bx+00eh], strict dword 002000001h ; 66 26 c7 47 0e 01 00 00 02; 0xf91d0 ahci.c:794
mov bx, 000a1h ; bb a1 00 ; 0xf91d9 ahci.c:796
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf91dc
mov dx, es ; 8c c2 ; 0xf91df
call 08561h ; e8 7d f3 ; 0xf91e1
test byte [bp-0022eh], 080h ; f6 86 d2 fd 80 ; 0xf91e4 ahci.c:801
db 00fh, 095h, 0c0h
; setne al ; 0f 95 c0 ; 0xf91e9
movzx dx, al ; 0f b6 d0 ; 0xf91ec
movzx bx, byte [bp-008h] ; 0f b6 5e f8 ; 0xf91ef ahci.c:803
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf91f3
add bx, word [bp-010h] ; 03 5e f0 ; 0xf91f6
mov al, byte [bp-00ah] ; 8a 46 f6 ; 0xf91f9
mov byte [es:bx+002a1h], al ; 26 88 87 a1 02 ; 0xf91fc
movzx ax, cl ; 0f b6 c1 ; 0xf9201 ahci.c:804
imul ax, ax, strict byte 0001ch ; 6b c0 1c ; 0xf9204
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xf9207
add bx, ax ; 01 c3 ; 0xf920a
mov word [es:bx+01eh], 00505h ; 26 c7 47 1e 05 05 ; 0xf920c
mov byte [es:bx+020h], dl ; 26 88 57 20 ; 0xf9212 ahci.c:806
mov word [es:bx+024h], 00800h ; 26 c7 47 24 00 08 ; 0xf9216 ahci.c:807
mov byte [es:bx+023h], 000h ; 26 c6 47 23 00 ; 0xf921c ahci.c:808
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xf9221 ahci.c:811
mov al, byte [es:bx+00263h] ; 26 8a 87 63 02 ; 0xf9224
mov ah, byte [bp-008h] ; 8a 66 f8 ; 0xf9229 ahci.c:812
add ah, 00ch ; 80 c4 0c ; 0xf922c
movzx bx, al ; 0f b6 d8 ; 0xf922f
add bx, word [bp-010h] ; 03 5e f0 ; 0xf9232
mov byte [es:bx+00264h], ah ; 26 88 a7 64 02 ; 0xf9235
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf923a ahci.c:813
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xf923c ahci.c:814
mov byte [es:bx+00263h], al ; 26 88 87 63 02 ; 0xf923f
inc byte [bp-008h] ; fe 46 f8 ; 0xf9244 ahci.c:819
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf9247 ahci.c:820
les bx, [bp-010h] ; c4 5e f0 ; 0xf924a
mov byte [es:bx+002a5h], al ; 26 88 87 a5 02 ; 0xf924d
lea sp, [bp-006h] ; 8d 66 fa ; 0xf9252 ahci.c:825
pop di ; 5f ; 0xf9255
pop si ; 5e ; 0xf9256
pop cx ; 59 ; 0xf9257
pop bp ; 5d ; 0xf9258
retn ; c3 ; 0xf9259
; disGetNextSymbol 0xf925a LB 0x1bc2 -> off=0x0 cb=000000000000003a uValue=00000000000f7c5a 'ahci_mem_alloc'
ahci_mem_alloc: ; 0xf925a LB 0x3a
push bx ; 53 ; 0xf925a ahci.c:830
push cx ; 51 ; 0xf925b
push dx ; 52 ; 0xf925c
push di ; 57 ; 0xf925d
push bp ; 55 ; 0xf925e
mov bp, sp ; 89 e5 ; 0xf925f
mov di, 00413h ; bf 13 04 ; 0xf9261 ahci.c:58
xor ax, ax ; 31 c0 ; 0xf9264
mov es, ax ; 8e c0 ; 0xf9266
mov ax, word [es:di] ; 26 8b 05 ; 0xf9268
test ax, ax ; 85 c0 ; 0xf926b ahci.c:839
je short 0928eh ; 74 1f ; 0xf926d
dec ax ; 48 ; 0xf926f ahci.c:840
mov bx, ax ; 89 c3 ; 0xf9270
xor dx, dx ; 31 d2 ; 0xf9272 ahci.c:843
mov cx, strict word 0000ah ; b9 0a 00 ; 0xf9274
sal ax, 1 ; d1 e0 ; 0xf9277
rcl dx, 1 ; d1 d2 ; 0xf9279
loop 09277h ; e2 fa ; 0xf927b
mov di, dx ; 89 d7 ; 0xf927d
mov cx, strict word 00004h ; b9 04 00 ; 0xf927f
shr di, 1 ; d1 ef ; 0xf9282
rcr ax, 1 ; d1 d8 ; 0xf9284
loop 09282h ; e2 fa ; 0xf9286
mov di, 00413h ; bf 13 04 ; 0xf9288 ahci.c:63
mov word [es:di], bx ; 26 89 1d ; 0xf928b
pop bp ; 5d ; 0xf928e ahci.c:848
pop di ; 5f ; 0xf928f
pop dx ; 5a ; 0xf9290
pop cx ; 59 ; 0xf9291
pop bx ; 5b ; 0xf9292
retn ; c3 ; 0xf9293
; disGetNextSymbol 0xf9294 LB 0x1b88 -> off=0x0 cb=0000000000000145 uValue=00000000000f7c94 'ahci_hba_init'
ahci_hba_init: ; 0xf9294 LB 0x145
push bp ; 55 ; 0xf9294 ahci.c:853
mov bp, sp ; 89 e5 ; 0xf9295
push bx ; 53 ; 0xf9297
push cx ; 51 ; 0xf9298
push dx ; 52 ; 0xf9299
push si ; 56 ; 0xf929a
push di ; 57 ; 0xf929b
sub sp, strict byte 00006h ; 83 ec 06 ; 0xf929c
mov si, ax ; 89 c6 ; 0xf929f
mov bx, strict word 0000eh ; bb 0e 00 ; 0xf92a1 ahci.c:58
mov ax, strict word 00040h ; b8 40 00 ; 0xf92a4
mov es, ax ; 8e c0 ; 0xf92a7
mov di, word [es:bx] ; 26 8b 3f ; 0xf92a9
mov bx, strict word 0005eh ; bb 5e 00 ; 0xf92ac ahci.c:864
mov ax, strict word 00010h ; b8 10 00 ; 0xf92af ahci.c:866
xor cx, cx ; 31 c9 ; 0xf92b2
mov dx, si ; 89 f2 ; 0xf92b4
xchg cx, ax ; 91 ; 0xf92b6
sal eax, 010h ; 66 c1 e0 10 ; 0xf92b7
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf92bb
out DX, eax ; 66 ef ; 0xf92bd
lea dx, [si+004h] ; 8d 54 04 ; 0xf92bf
in eax, DX ; 66 ed ; 0xf92c2
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf92c4
shr eax, 010h ; 66 c1 e8 10 ; 0xf92c6
xchg dx, ax ; 92 ; 0xf92ca
call 0925ah ; e8 8c ff ; 0xf92cb ahci.c:872
mov word [bp-010h], ax ; 89 46 f0 ; 0xf92ce
test ax, ax ; 85 c0 ; 0xf92d1 ahci.c:873
je near 093cfh ; 0f 84 f8 00 ; 0xf92d3
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf92d7 ahci.c:876
mov es, di ; 8e c7 ; 0xf92da
mov word [es:bx+002a6h], ax ; 26 89 87 a6 02 ; 0xf92dc
mov byte [es:bx+002a5h], 000h ; 26 c6 87 a5 02 00 ; 0xf92e1 ahci.c:882
xor bx, bx ; 31 db ; 0xf92e7 ahci.c:884
mov es, ax ; 8e c0 ; 0xf92e9
mov byte [es:bx+00262h], 0ffh ; 26 c6 87 62 02 ff ; 0xf92eb ahci.c:885
mov word [es:bx+00260h], si ; 26 89 b7 60 02 ; 0xf92f1 ahci.c:886
mov ax, strict word 00004h ; b8 04 00 ; 0xf92f6 ahci.c:260
xor cx, cx ; 31 c9 ; 0xf92f9
mov dx, si ; 89 f2 ; 0xf92fb
xchg cx, ax ; 91 ; 0xf92fd
sal eax, 010h ; 66 c1 e0 10 ; 0xf92fe
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf9302
out DX, eax ; 66 ef ; 0xf9304
lea bx, [si+004h] ; 8d 5c 04 ; 0xf9306 ahci.c:261
mov dx, bx ; 89 da ; 0xf9309
in eax, DX ; 66 ed ; 0xf930b
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf930d
shr eax, 010h ; 66 c1 e8 10 ; 0xf930f
xchg dx, ax ; 92 ; 0xf9313
or AL, strict byte 001h ; 0c 01 ; 0xf9314
mov cx, dx ; 89 d1 ; 0xf9316
mov dx, bx ; 89 da ; 0xf9318
xchg cx, ax ; 91 ; 0xf931a
sal eax, 010h ; 66 c1 e0 10 ; 0xf931b
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf931f
out DX, eax ; 66 ef ; 0xf9321
mov ax, strict word 00004h ; b8 04 00 ; 0xf9323 ahci.c:892
xor cx, cx ; 31 c9 ; 0xf9326
mov dx, si ; 89 f2 ; 0xf9328
xchg cx, ax ; 91 ; 0xf932a
sal eax, 010h ; 66 c1 e0 10 ; 0xf932b
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf932f
out DX, eax ; 66 ef ; 0xf9331
lea bx, [si+004h] ; 8d 5c 04 ; 0xf9333
mov dx, bx ; 89 da ; 0xf9336
in eax, DX ; 66 ed ; 0xf9338
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf933a
shr eax, 010h ; 66 c1 e8 10 ; 0xf933c
xchg dx, ax ; 92 ; 0xf9340
test AL, strict byte 001h ; a8 01 ; 0xf9341 ahci.c:893
jne short 09323h ; 75 de ; 0xf9343
xor ax, ax ; 31 c0 ; 0xf9345 ahci.c:895
xor cx, cx ; 31 c9 ; 0xf9347
mov dx, si ; 89 f2 ; 0xf9349
xchg cx, ax ; 91 ; 0xf934b
sal eax, 010h ; 66 c1 e0 10 ; 0xf934c
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf9350
out DX, eax ; 66 ef ; 0xf9352
mov dx, bx ; 89 da ; 0xf9354
in eax, DX ; 66 ed ; 0xf9356
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf9358
shr eax, 010h ; 66 c1 e8 10 ; 0xf935a
xchg dx, ax ; 92 ; 0xf935e
push strict byte 00000h ; 6a 00 ; 0xf935f ahci.c:896
mov bx, strict word 0001fh ; bb 1f 00 ; 0xf9361
xor cx, cx ; 31 c9 ; 0xf9364
call 083ddh ; e8 74 f0 ; 0xf9366
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf9369
mov byte [bp-00eh], al ; 88 46 f2 ; 0xf936b
mov byte [bp-00ch], 000h ; c6 46 f4 00 ; 0xf936e ahci.c:901
jmp short 09394h ; eb 20 ; 0xf9372 ahci.c:902
xor al, al ; 30 c0 ; 0xf9374 ahci.c:280
test al, al ; 84 c0 ; 0xf9376 ahci.c:281
je short 0938bh ; 74 11 ; 0xf9378
movzx bx, byte [bp-00ch] ; 0f b6 5e f4 ; 0xf937a ahci.c:907
xor ax, ax ; 31 c0 ; 0xf937e
mov dx, word [bp-010h] ; 8b 56 f0 ; 0xf9380
call 08dbbh ; e8 35 fa ; 0xf9383
dec byte [bp-00eh] ; fe 4e f2 ; 0xf9386 ahci.c:908
je short 093cdh ; 74 42 ; 0xf9389 ahci.c:909
inc byte [bp-00ch] ; fe 46 f4 ; 0xf938b ahci.c:912
cmp byte [bp-00ch], 020h ; 80 7e f4 20 ; 0xf938e ahci.c:913
jnc short 093cdh ; 73 39 ; 0xf9392
movzx cx, byte [bp-00ch] ; 0f b6 4e f4 ; 0xf9394
mov bx, strict word 00001h ; bb 01 00 ; 0xf9398
xor di, di ; 31 ff ; 0xf939b
jcxz 093a5h ; e3 06 ; 0xf939d
sal bx, 1 ; d1 e3 ; 0xf939f
rcl di, 1 ; d1 d7 ; 0xf93a1
loop 0939fh ; e2 fa ; 0xf93a3
mov ax, strict word 0000ch ; b8 0c 00 ; 0xf93a5
xor cx, cx ; 31 c9 ; 0xf93a8
mov dx, si ; 89 f2 ; 0xf93aa
xchg cx, ax ; 91 ; 0xf93ac
sal eax, 010h ; 66 c1 e0 10 ; 0xf93ad
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xf93b1
out DX, eax ; 66 ef ; 0xf93b3
lea dx, [si+004h] ; 8d 54 04 ; 0xf93b5
in eax, DX ; 66 ed ; 0xf93b8
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xf93ba
shr eax, 010h ; 66 c1 e8 10 ; 0xf93bc
xchg dx, ax ; 92 ; 0xf93c0
test dx, di ; 85 fa ; 0xf93c1
jne short 093c9h ; 75 04 ; 0xf93c3
test ax, bx ; 85 d8 ; 0xf93c5
je short 09374h ; 74 ab ; 0xf93c7
mov AL, strict byte 001h ; b0 01 ; 0xf93c9
jmp short 09376h ; eb a9 ; 0xf93cb
xor ax, ax ; 31 c0 ; 0xf93cd ahci.c:915
lea sp, [bp-00ah] ; 8d 66 f6 ; 0xf93cf ahci.c:916
pop di ; 5f ; 0xf93d2
pop si ; 5e ; 0xf93d3
pop dx ; 5a ; 0xf93d4
pop cx ; 59 ; 0xf93d5
pop bx ; 5b ; 0xf93d6
pop bp ; 5d ; 0xf93d7
retn ; c3 ; 0xf93d8
; disGetNextSymbol 0xf93d9 LB 0x1a43 -> off=0x17 cb=0000000000000116 uValue=00000000000f7df0 'ahci_init'
db 00bh, 005h, 004h, 003h, 002h, 001h, 000h, 0c0h, 094h, 09eh, 094h, 0a4h, 094h, 0aah, 094h, 0b0h
db 094h, 0b6h, 094h, 0bch, 094h, 0c0h, 094h
ahci_init: ; 0xf93f0 LB 0x116
push bp ; 55 ; 0xf93f0 ahci.c:921
mov bp, sp ; 89 e5 ; 0xf93f1
push si ; 56 ; 0xf93f3
push di ; 57 ; 0xf93f4
sub sp, strict byte 00008h ; 83 ec 08 ; 0xf93f5
mov ax, 00601h ; b8 01 06 ; 0xf93f8 ahci.c:925
mov dx, strict word 00001h ; ba 01 00 ; 0xf93fb
call 0aab8h ; e8 b7 16 ; 0xf93fe
mov bx, ax ; 89 c3 ; 0xf9401
cmp ax, strict word 0ffffh ; 3d ff ff ; 0xf9403 ahci.c:926
je near 094ffh ; 0f 84 f5 00 ; 0xf9406
xor al, al ; 30 c0 ; 0xf940a ahci.c:931
shr ax, 008h ; c1 e8 08 ; 0xf940c
mov byte [bp-00ah], al ; 88 46 f6 ; 0xf940f
mov byte [bp-008h], bl ; 88 5e f8 ; 0xf9412 ahci.c:932
movzx dx, bl ; 0f b6 d3 ; 0xf9415 ahci.c:937
xor ah, ah ; 30 e4 ; 0xf9418
mov bx, strict word 00034h ; bb 34 00 ; 0xf941a
call 0ab22h ; e8 02 17 ; 0xf941d
mov cl, al ; 88 c1 ; 0xf9420
test cl, cl ; 84 c9 ; 0xf9422 ahci.c:939
je short 09449h ; 74 23 ; 0xf9424
movzx bx, cl ; 0f b6 d9 ; 0xf9426 ahci.c:941
movzx di, byte [bp-008h] ; 0f b6 7e f8 ; 0xf9429
movzx si, byte [bp-00ah] ; 0f b6 76 f6 ; 0xf942d
mov dx, di ; 89 fa ; 0xf9431
mov ax, si ; 89 f0 ; 0xf9433
call 0ab22h ; e8 ea 16 ; 0xf9435
cmp AL, strict byte 012h ; 3c 12 ; 0xf9438 ahci.c:945
je short 09449h ; 74 0d ; 0xf943a
mov al, cl ; 88 c8 ; 0xf943c ahci.c:949
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf943e
movzx bx, al ; 0f b6 d8 ; 0xf9440
mov dx, di ; 89 fa ; 0xf9443
mov ax, si ; 89 f0 ; 0xf9445
jmp short 0941dh ; eb d4 ; 0xf9447 ahci.c:950
test cl, cl ; 84 c9 ; 0xf9449 ahci.c:952
je near 094ffh ; 0f 84 b0 00 ; 0xf944b
add cl, 002h ; 80 c1 02 ; 0xf944f ahci.c:959
movzx bx, cl ; 0f b6 d9 ; 0xf9452 ahci.c:961
movzx si, byte [bp-008h] ; 0f b6 76 f8 ; 0xf9455
movzx di, byte [bp-00ah] ; 0f b6 7e f6 ; 0xf9459
mov dx, si ; 89 f2 ; 0xf945d
mov ax, di ; 89 f8 ; 0xf945f
call 0ab22h ; e8 be 16 ; 0xf9461
cmp AL, strict byte 010h ; 3c 10 ; 0xf9464 ahci.c:962
jne near 094ffh ; 0f 85 95 00 ; 0xf9466
mov byte [bp-006h], 000h ; c6 46 fa 00 ; 0xf946a ahci.c:965
mov al, cl ; 88 c8 ; 0xf946e ahci.c:967
add AL, strict byte 002h ; 04 02 ; 0xf9470
movzx bx, al ; 0f b6 d8 ; 0xf9472
mov dx, si ; 89 f2 ; 0xf9475
mov ax, di ; 89 f8 ; 0xf9477
call 0ab46h ; e8 ca 16 ; 0xf9479
mov dx, ax ; 89 c2 ; 0xf947c
and ax, strict word 0000fh ; 25 0f 00 ; 0xf947e ahci.c:971
sub ax, strict word 00004h ; 2d 04 00 ; 0xf9481
cmp ax, strict word 0000bh ; 3d 0b 00 ; 0xf9484
jnbe short 094c0h ; 77 37 ; 0xf9487
push CS ; 0e ; 0xf9489
pop ES ; 07 ; 0xf948a
mov cx, strict word 00008h ; b9 08 00 ; 0xf948b
mov di, 093d9h ; bf d9 93 ; 0xf948e
repne scasb ; f2 ae ; 0xf9491
sal cx, 1 ; d1 e1 ; 0xf9493
mov di, cx ; 89 cf ; 0xf9495
mov ax, word [cs:di-06c20h] ; 2e 8b 85 e0 93 ; 0xf9497
jmp ax ; ff e0 ; 0xf949c
mov byte [bp-006h], 010h ; c6 46 fa 10 ; 0xf949e ahci.c:974
jmp short 094c0h ; eb 1c ; 0xf94a2 ahci.c:975
mov byte [bp-006h], 014h ; c6 46 fa 14 ; 0xf94a4 ahci.c:977
jmp short 094c0h ; eb 16 ; 0xf94a8 ahci.c:978
mov byte [bp-006h], 018h ; c6 46 fa 18 ; 0xf94aa ahci.c:980
jmp short 094c0h ; eb 10 ; 0xf94ae ahci.c:981
mov byte [bp-006h], 01ch ; c6 46 fa 1c ; 0xf94b0 ahci.c:983
jmp short 094c0h ; eb 0a ; 0xf94b4 ahci.c:984
mov byte [bp-006h], 020h ; c6 46 fa 20 ; 0xf94b6 ahci.c:986
jmp short 094c0h ; eb 04 ; 0xf94ba ahci.c:987
mov byte [bp-006h], 024h ; c6 46 fa 24 ; 0xf94bc ahci.c:989
mov cx, dx ; 89 d1 ; 0xf94c0 ahci.c:998
shr cx, 004h ; c1 e9 04 ; 0xf94c2
sal cx, 002h ; c1 e1 02 ; 0xf94c5
mov al, byte [bp-006h] ; 8a 46 fa ; 0xf94c8 ahci.c:1000
test al, al ; 84 c0 ; 0xf94cb
je short 094ffh ; 74 30 ; 0xf94cd
movzx bx, al ; 0f b6 d8 ; 0xf94cf ahci.c:1002
movzx di, byte [bp-008h] ; 0f b6 7e f8 ; 0xf94d2
movzx si, byte [bp-00ah] ; 0f b6 76 f6 ; 0xf94d6
mov dx, di ; 89 fa ; 0xf94da
mov ax, si ; 89 f0 ; 0xf94dc
call 0ab68h ; e8 87 16 ; 0xf94de
test AL, strict byte 001h ; a8 01 ; 0xf94e1 ahci.c:1006
je short 094ffh ; 74 1a ; 0xf94e3
and AL, strict byte 0f0h ; 24 f0 ; 0xf94e5 ahci.c:1009
add ax, cx ; 01 c8 ; 0xf94e7
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf94e9
mov cx, strict word 00007h ; b9 07 00 ; 0xf94ec ahci.c:1012
mov bx, strict word 00004h ; bb 04 00 ; 0xf94ef
mov dx, di ; 89 fa ; 0xf94f2
mov ax, si ; 89 f0 ; 0xf94f4
call 0ab8fh ; e8 96 16 ; 0xf94f6
mov ax, word [bp-00ch] ; 8b 46 f4 ; 0xf94f9 ahci.c:1015
call 09294h ; e8 95 fd ; 0xf94fc
lea sp, [bp-004h] ; 8d 66 fc ; 0xf94ff ahci.c:1029
pop di ; 5f ; 0xf9502
pop si ; 5e ; 0xf9503
pop bp ; 5d ; 0xf9504
retn ; c3 ; 0xf9505
; disGetNextSymbol 0xf9506 LB 0x1916 -> off=0x0 cb=0000000000000070 uValue=00000000000f7f06 'virtio_reg_set_bar_offset_length'
virtio_reg_set_bar_offset_length: ; 0xf9506 LB 0x70
push bp ; 55 ; 0xf9506 virtio.c:287
mov bp, sp ; 89 e5 ; 0xf9507
push cx ; 51 ; 0xf9509
push si ; 56 ; 0xf950a
push di ; 57 ; 0xf950b
mov si, ax ; 89 c6 ; 0xf950c
mov di, dx ; 89 d7 ; 0xf950e
movzx cx, bl ; 0f b6 cb ; 0xf9510 virtio.c:289
mov es, dx ; 8e c2 ; 0xf9513
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf9515
add AL, strict byte 004h ; 04 04 ; 0xf951a
movzx bx, al ; 0f b6 d8 ; 0xf951c
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf951f
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf9525
call 0ababh ; e8 7d 16 ; 0xf952b
push dword [bp+004h] ; 66 ff 76 04 ; 0xf952e virtio.c:290
mov es, di ; 8e c7 ; 0xf9532
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf9534
add AL, strict byte 008h ; 04 08 ; 0xf9539
movzx bx, al ; 0f b6 d8 ; 0xf953b
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf953e
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf9544
call 0abc7h ; e8 7a 16 ; 0xf954a
push dword [bp+008h] ; 66 ff 76 08 ; 0xf954d virtio.c:291
mov es, di ; 8e c7 ; 0xf9551
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf9553
add AL, strict byte 00ch ; 04 0c ; 0xf9558
movzx bx, al ; 0f b6 d8 ; 0xf955a
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf955d
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf9563
call 0abc7h ; e8 5b 16 ; 0xf9569
lea sp, [bp-006h] ; 8d 66 fa ; 0xf956c virtio.c:292
pop di ; 5f ; 0xf956f
pop si ; 5e ; 0xf9570
pop cx ; 59 ; 0xf9571
pop bp ; 5d ; 0xf9572
retn 00008h ; c2 08 00 ; 0xf9573
; disGetNextSymbol 0xf9576 LB 0x18a6 -> off=0x0 cb=0000000000000030 uValue=00000000000f7f76 'virtio_reg_common_access_prepare'
virtio_reg_common_access_prepare: ; 0xf9576 LB 0x30
push bp ; 55 ; 0xf9576 virtio.c:294
mov bp, sp ; 89 e5 ; 0xf9577
push si ; 56 ; 0xf9579
mov si, ax ; 89 c6 ; 0xf957a
mov es, dx ; 8e c2 ; 0xf957c
push dword [bp+004h] ; 66 ff 76 04 ; 0xf957e virtio.c:296
xor dx, dx ; 31 d2 ; 0xf9582
mov ax, word [es:si+060h] ; 26 8b 44 60 ; 0xf9584
add ax, bx ; 01 d8 ; 0xf9588
mov bx, word [es:si+062h] ; 26 8b 5c 62 ; 0xf958a
adc bx, dx ; 11 d3 ; 0xf958e
push bx ; 53 ; 0xf9590
push ax ; 50 ; 0xf9591
movzx bx, byte [es:si+05ch] ; 26 0f b6 5c 5c ; 0xf9592
mov ax, si ; 89 f0 ; 0xf9597
mov dx, es ; 8c c2 ; 0xf9599
call 09506h ; e8 68 ff ; 0xf959b
lea sp, [bp-002h] ; 8d 66 fe ; 0xf959e virtio.c:300
pop si ; 5e ; 0xf95a1
pop bp ; 5d ; 0xf95a2
retn 00004h ; c2 04 00 ; 0xf95a3
; disGetNextSymbol 0xf95a6 LB 0x1876 -> off=0x0 cb=0000000000000033 uValue=00000000000f7fa6 'virtio_reg_dev_access_prepare'
virtio_reg_dev_access_prepare: ; 0xf95a6 LB 0x33
push bp ; 55 ; 0xf95a6 virtio.c:302
mov bp, sp ; 89 e5 ; 0xf95a7
push si ; 56 ; 0xf95a9
mov si, ax ; 89 c6 ; 0xf95aa
mov es, dx ; 8e c2 ; 0xf95ac
push dword [bp+004h] ; 66 ff 76 04 ; 0xf95ae virtio.c:304
xor dx, dx ; 31 d2 ; 0xf95b2
mov ax, word [es:si+00084h] ; 26 8b 84 84 00 ; 0xf95b4
add ax, bx ; 01 d8 ; 0xf95b9
mov bx, word [es:si+00086h] ; 26 8b 9c 86 00 ; 0xf95bb
adc bx, dx ; 11 d3 ; 0xf95c0
push bx ; 53 ; 0xf95c2
push ax ; 50 ; 0xf95c3
movzx bx, byte [es:si+00080h] ; 26 0f b6 9c 80 00 ; 0xf95c4
mov ax, si ; 89 f0 ; 0xf95ca
mov dx, es ; 8c c2 ; 0xf95cc
call 09506h ; e8 35 ff ; 0xf95ce
lea sp, [bp-002h] ; 8d 66 fe ; 0xf95d1 virtio.c:308
pop si ; 5e ; 0xf95d4
pop bp ; 5d ; 0xf95d5
retn 00004h ; c2 04 00 ; 0xf95d6
; disGetNextSymbol 0xf95d9 LB 0x1843 -> off=0x0 cb=0000000000000030 uValue=00000000000f7fd9 'virtio_reg_notify_access_prepare'
virtio_reg_notify_access_prepare: ; 0xf95d9 LB 0x30
push bp ; 55 ; 0xf95d9 virtio.c:310
mov bp, sp ; 89 e5 ; 0xf95da
push si ; 56 ; 0xf95dc
mov si, ax ; 89 c6 ; 0xf95dd
mov es, dx ; 8e c2 ; 0xf95df
push dword [bp+004h] ; 66 ff 76 04 ; 0xf95e1 virtio.c:312
xor dx, dx ; 31 d2 ; 0xf95e5
mov ax, word [es:si+06ch] ; 26 8b 44 6c ; 0xf95e7
add ax, bx ; 01 d8 ; 0xf95eb
mov bx, word [es:si+06eh] ; 26 8b 5c 6e ; 0xf95ed
adc bx, dx ; 11 d3 ; 0xf95f1
push bx ; 53 ; 0xf95f3
push ax ; 50 ; 0xf95f4
movzx bx, byte [es:si+068h] ; 26 0f b6 5c 68 ; 0xf95f5
mov ax, si ; 89 f0 ; 0xf95fa
mov dx, es ; 8c c2 ; 0xf95fc
call 09506h ; e8 05 ff ; 0xf95fe
lea sp, [bp-002h] ; 8d 66 fe ; 0xf9601 virtio.c:316
pop si ; 5e ; 0xf9604
pop bp ; 5d ; 0xf9605
retn 00004h ; c2 04 00 ; 0xf9606
; disGetNextSymbol 0xf9609 LB 0x1813 -> off=0x0 cb=000000000000001d uValue=00000000000f8009 'virtio_reg_isr_prepare'
virtio_reg_isr_prepare: ; 0xf9609 LB 0x1d
push bp ; 55 ; 0xf9609 virtio.c:318
mov bp, sp ; 89 e5 ; 0xf960a
push si ; 56 ; 0xf960c
mov si, ax ; 89 c6 ; 0xf960d
mov es, dx ; 8e c2 ; 0xf960f
push cx ; 51 ; 0xf9611 virtio.c:320
push bx ; 53 ; 0xf9612
db 066h, 026h, 0ffh, 074h, 078h
; push dword [es:si+078h] ; 66 26 ff 74 78 ; 0xf9613
movzx bx, byte [es:si+074h] ; 26 0f b6 5c 74 ; 0xf9618
call 09506h ; e8 e6 fe ; 0xf961d
lea sp, [bp-002h] ; 8d 66 fe ; 0xf9620 virtio.c:324
pop si ; 5e ; 0xf9623
pop bp ; 5d ; 0xf9624
retn ; c3 ; 0xf9625
; disGetNextSymbol 0xf9626 LB 0x17f6 -> off=0x0 cb=0000000000000031 uValue=00000000000f8026 'virtio_reg_common_read_u8'
virtio_reg_common_read_u8: ; 0xf9626 LB 0x31
push bp ; 55 ; 0xf9626 virtio.c:326
mov bp, sp ; 89 e5 ; 0xf9627
push cx ; 51 ; 0xf9629
push si ; 56 ; 0xf962a
mov si, ax ; 89 c6 ; 0xf962b
mov cx, dx ; 89 d1 ; 0xf962d
push dword 000000001h ; 66 6a 01 ; 0xf962f virtio.c:328
call 09576h ; e8 41 ff ; 0xf9632
mov es, cx ; 8e c1 ; 0xf9635 virtio.c:329
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf9637
add AL, strict byte 010h ; 04 10 ; 0xf963c
movzx bx, al ; 0f b6 d8 ; 0xf963e
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf9641
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf9647
call 0ab22h ; e8 d2 14 ; 0xf964d
lea sp, [bp-004h] ; 8d 66 fc ; 0xf9650 virtio.c:330
pop si ; 5e ; 0xf9653
pop cx ; 59 ; 0xf9654
pop bp ; 5d ; 0xf9655
retn ; c3 ; 0xf9656
; disGetNextSymbol 0xf9657 LB 0x17c5 -> off=0x0 cb=0000000000000033 uValue=00000000000f8057 'virtio_reg_common_write_u8'
virtio_reg_common_write_u8: ; 0xf9657 LB 0x33
push bp ; 55 ; 0xf9657 virtio.c:332
mov bp, sp ; 89 e5 ; 0xf9658
push si ; 56 ; 0xf965a
push di ; 57 ; 0xf965b
mov si, ax ; 89 c6 ; 0xf965c
mov di, dx ; 89 d7 ; 0xf965e
push dword 000000001h ; 66 6a 01 ; 0xf9660 virtio.c:334
call 09576h ; e8 10 ff ; 0xf9663
xor ch, ch ; 30 ed ; 0xf9666 virtio.c:335
mov es, di ; 8e c7 ; 0xf9668
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf966a
add AL, strict byte 010h ; 04 10 ; 0xf966f
movzx bx, al ; 0f b6 d8 ; 0xf9671
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf9674
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf967a
call 0ababh ; e8 28 15 ; 0xf9680
lea sp, [bp-004h] ; 8d 66 fc ; 0xf9683 virtio.c:336
pop di ; 5f ; 0xf9686
pop si ; 5e ; 0xf9687
pop bp ; 5d ; 0xf9688
retn ; c3 ; 0xf9689
; disGetNextSymbol 0xf968a LB 0x1792 -> off=0x0 cb=0000000000000031 uValue=00000000000f808a 'virtio_reg_common_read_u16'
virtio_reg_common_read_u16: ; 0xf968a LB 0x31
push bp ; 55 ; 0xf968a virtio.c:338
mov bp, sp ; 89 e5 ; 0xf968b
push cx ; 51 ; 0xf968d
push si ; 56 ; 0xf968e
mov si, ax ; 89 c6 ; 0xf968f
mov cx, dx ; 89 d1 ; 0xf9691
push dword 000000002h ; 66 6a 02 ; 0xf9693 virtio.c:340
call 09576h ; e8 dd fe ; 0xf9696
mov es, cx ; 8e c1 ; 0xf9699 virtio.c:341
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf969b
add AL, strict byte 010h ; 04 10 ; 0xf96a0
movzx bx, al ; 0f b6 d8 ; 0xf96a2
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf96a5
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf96ab
call 0ab46h ; e8 92 14 ; 0xf96b1
lea sp, [bp-004h] ; 8d 66 fc ; 0xf96b4 virtio.c:342
pop si ; 5e ; 0xf96b7
pop cx ; 59 ; 0xf96b8
pop bp ; 5d ; 0xf96b9
retn ; c3 ; 0xf96ba
; disGetNextSymbol 0xf96bb LB 0x1761 -> off=0x0 cb=0000000000000031 uValue=00000000000f80bb 'virtio_reg_common_write_u16'
virtio_reg_common_write_u16: ; 0xf96bb LB 0x31
push bp ; 55 ; 0xf96bb virtio.c:344
mov bp, sp ; 89 e5 ; 0xf96bc
push si ; 56 ; 0xf96be
push di ; 57 ; 0xf96bf
mov si, ax ; 89 c6 ; 0xf96c0
mov di, dx ; 89 d7 ; 0xf96c2
push dword 000000002h ; 66 6a 02 ; 0xf96c4 virtio.c:346
call 09576h ; e8 ac fe ; 0xf96c7
mov es, di ; 8e c7 ; 0xf96ca virtio.c:347
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf96cc
add AL, strict byte 010h ; 04 10 ; 0xf96d1
movzx bx, al ; 0f b6 d8 ; 0xf96d3
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf96d6
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf96dc
call 0ab8fh ; e8 aa 14 ; 0xf96e2
lea sp, [bp-004h] ; 8d 66 fc ; 0xf96e5 virtio.c:348
pop di ; 5f ; 0xf96e8
pop si ; 5e ; 0xf96e9
pop bp ; 5d ; 0xf96ea
retn ; c3 ; 0xf96eb
; disGetNextSymbol 0xf96ec LB 0x1730 -> off=0x0 cb=0000000000000037 uValue=00000000000f80ec 'virtio_reg_common_write_u32'
virtio_reg_common_write_u32: ; 0xf96ec LB 0x37
push bp ; 55 ; 0xf96ec virtio.c:350
mov bp, sp ; 89 e5 ; 0xf96ed
push cx ; 51 ; 0xf96ef
push si ; 56 ; 0xf96f0
mov si, ax ; 89 c6 ; 0xf96f1
mov cx, dx ; 89 d1 ; 0xf96f3
push dword 000000004h ; 66 6a 04 ; 0xf96f5 virtio.c:352
call 09576h ; e8 7b fe ; 0xf96f8
push dword [bp+004h] ; 66 ff 76 04 ; 0xf96fb virtio.c:353
mov es, cx ; 8e c1 ; 0xf96ff
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf9701
add AL, strict byte 010h ; 04 10 ; 0xf9706
movzx bx, al ; 0f b6 d8 ; 0xf9708
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf970b
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf9711
call 0abc7h ; e8 ad 14 ; 0xf9717
lea sp, [bp-004h] ; 8d 66 fc ; 0xf971a virtio.c:354
pop si ; 5e ; 0xf971d
pop cx ; 59 ; 0xf971e
pop bp ; 5d ; 0xf971f
retn 00004h ; c2 04 00 ; 0xf9720
; disGetNextSymbol 0xf9723 LB 0x16f9 -> off=0x0 cb=0000000000000031 uValue=00000000000f8123 'virtio_reg_dev_cfg_read_u32'
virtio_reg_dev_cfg_read_u32: ; 0xf9723 LB 0x31
push bp ; 55 ; 0xf9723 virtio.c:356
mov bp, sp ; 89 e5 ; 0xf9724
push cx ; 51 ; 0xf9726
push si ; 56 ; 0xf9727
mov si, ax ; 89 c6 ; 0xf9728
mov cx, dx ; 89 d1 ; 0xf972a
push dword 000000004h ; 66 6a 04 ; 0xf972c virtio.c:358
call 095a6h ; e8 74 fe ; 0xf972f
mov es, cx ; 8e c1 ; 0xf9732 virtio.c:359
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf9734
add AL, strict byte 010h ; 04 10 ; 0xf9739
movzx bx, al ; 0f b6 d8 ; 0xf973b
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf973e
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf9744
call 0ab68h ; e8 1b 14 ; 0xf974a
lea sp, [bp-004h] ; 8d 66 fc ; 0xf974d virtio.c:360
pop si ; 5e ; 0xf9750
pop cx ; 59 ; 0xf9751
pop bp ; 5d ; 0xf9752
retn ; c3 ; 0xf9753
; disGetNextSymbol 0xf9754 LB 0x16c8 -> off=0x0 cb=0000000000000037 uValue=00000000000f8154 'virtio_reg_dev_cfg_write_u32'
virtio_reg_dev_cfg_write_u32: ; 0xf9754 LB 0x37
push bp ; 55 ; 0xf9754 virtio.c:362
mov bp, sp ; 89 e5 ; 0xf9755
push cx ; 51 ; 0xf9757
push si ; 56 ; 0xf9758
mov si, ax ; 89 c6 ; 0xf9759
mov cx, dx ; 89 d1 ; 0xf975b
push dword 000000004h ; 66 6a 04 ; 0xf975d virtio.c:364
call 095a6h ; e8 43 fe ; 0xf9760
push dword [bp+004h] ; 66 ff 76 04 ; 0xf9763 virtio.c:365
mov es, cx ; 8e c1 ; 0xf9767
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf9769
add AL, strict byte 010h ; 04 10 ; 0xf976e
movzx bx, al ; 0f b6 d8 ; 0xf9770
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf9773
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf9779
call 0abc7h ; e8 45 14 ; 0xf977f
lea sp, [bp-004h] ; 8d 66 fc ; 0xf9782 virtio.c:366
pop si ; 5e ; 0xf9785
pop cx ; 59 ; 0xf9786
pop bp ; 5d ; 0xf9787
retn 00004h ; c2 04 00 ; 0xf9788
; disGetNextSymbol 0xf978b LB 0x1691 -> off=0x0 cb=0000000000000031 uValue=00000000000f818b 'virtio_reg_notify_write_u16'
virtio_reg_notify_write_u16: ; 0xf978b LB 0x31
push bp ; 55 ; 0xf978b virtio.c:368
mov bp, sp ; 89 e5 ; 0xf978c
push si ; 56 ; 0xf978e
push di ; 57 ; 0xf978f
mov si, ax ; 89 c6 ; 0xf9790
mov di, dx ; 89 d7 ; 0xf9792
push dword 000000002h ; 66 6a 02 ; 0xf9794 virtio.c:370
call 095d9h ; e8 3f fe ; 0xf9797
mov es, di ; 8e c7 ; 0xf979a virtio.c:371
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf979c
add AL, strict byte 010h ; 04 10 ; 0xf97a1
movzx bx, al ; 0f b6 d8 ; 0xf97a3
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf97a6
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf97ac
call 0ab8fh ; e8 da 13 ; 0xf97b2
lea sp, [bp-004h] ; 8d 66 fc ; 0xf97b5 virtio.c:372
pop di ; 5f ; 0xf97b8
pop si ; 5e ; 0xf97b9
pop bp ; 5d ; 0xf97ba
retn ; c3 ; 0xf97bb
; disGetNextSymbol 0xf97bc LB 0x1660 -> off=0x0 cb=0000000000000037 uValue=00000000000f81bc 'virtio_reg_isr_read_u8'
virtio_reg_isr_read_u8: ; 0xf97bc LB 0x37
push bp ; 55 ; 0xf97bc virtio.c:374
mov bp, sp ; 89 e5 ; 0xf97bd
push bx ; 53 ; 0xf97bf
push cx ; 51 ; 0xf97c0
push si ; 56 ; 0xf97c1
push di ; 57 ; 0xf97c2
mov si, ax ; 89 c6 ; 0xf97c3
mov di, dx ; 89 d7 ; 0xf97c5
mov bx, strict word 00001h ; bb 01 00 ; 0xf97c7 virtio.c:376
xor cx, cx ; 31 c9 ; 0xf97ca
call 09609h ; e8 3a fe ; 0xf97cc
mov es, di ; 8e c7 ; 0xf97cf virtio.c:377
mov al, byte [es:si+0008ch] ; 26 8a 84 8c 00 ; 0xf97d1
add AL, strict byte 010h ; 04 10 ; 0xf97d6
movzx bx, al ; 0f b6 d8 ; 0xf97d8
movzx dx, byte [es:si+00093h] ; 26 0f b6 94 93 00 ; 0xf97db
movzx ax, byte [es:si+00092h] ; 26 0f b6 84 92 00 ; 0xf97e1
call 0ab22h ; e8 38 13 ; 0xf97e7
lea sp, [bp-008h] ; 8d 66 f8 ; 0xf97ea virtio.c:378
pop di ; 5f ; 0xf97ed
pop si ; 5e ; 0xf97ee
pop cx ; 59 ; 0xf97ef
pop bx ; 5b ; 0xf97f0
pop bp ; 5d ; 0xf97f1
retn ; c3 ; 0xf97f2
; disGetNextSymbol 0xf97f3 LB 0x1629 -> off=0x0 cb=000000000000001e uValue=00000000000f81f3 'virtio_addr_to_phys'
virtio_addr_to_phys: ; 0xf97f3 LB 0x1e
push bx ; 53 ; 0xf97f3 virtio.c:383
push cx ; 51 ; 0xf97f4
push bp ; 55 ; 0xf97f5
mov bp, sp ; 89 e5 ; 0xf97f6
mov bx, ax ; 89 c3 ; 0xf97f8
mov ax, dx ; 89 d0 ; 0xf97fa
xor dx, dx ; 31 d2 ; 0xf97fc virtio.c:385
mov cx, strict word 00004h ; b9 04 00 ; 0xf97fe
sal ax, 1 ; d1 e0 ; 0xf9801
rcl dx, 1 ; d1 d2 ; 0xf9803
loop 09801h ; e2 fa ; 0xf9805
xor cx, cx ; 31 c9 ; 0xf9807
add ax, bx ; 01 d8 ; 0xf9809
adc dx, cx ; 11 ca ; 0xf980b
pop bp ; 5d ; 0xf980d virtio.c:386
pop cx ; 59 ; 0xf980e
pop bx ; 5b ; 0xf980f
retn ; c3 ; 0xf9810
; disGetNextSymbol 0xf9811 LB 0x160b -> off=0x0 cb=0000000000000156 uValue=00000000000f8211 'virtio_scsi_cmd_data_out'
virtio_scsi_cmd_data_out: ; 0xf9811 LB 0x156
push bp ; 55 ; 0xf9811 virtio.c:388
mov bp, sp ; 89 e5 ; 0xf9812
push cx ; 51 ; 0xf9814
push si ; 56 ; 0xf9815
push di ; 57 ; 0xf9816
sub sp, strict byte 0000ch ; 83 ec 0c ; 0xf9817
mov si, ax ; 89 c6 ; 0xf981a
mov word [bp-012h], dx ; 89 56 ee ; 0xf981c
mov byte [bp-008h], bl ; 88 5e f8 ; 0xf981f
mov di, ax ; 89 c7 ; 0xf9822 virtio.c:391
mov es, dx ; 8e c2 ; 0xf9824
mov word [bp-00ah], dx ; 89 56 f6 ; 0xf9826
mov ax, word [es:si+03eh] ; 26 8b 44 3e ; 0xf9829
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf982d
lea ax, [si+00094h] ; 8d 84 94 00 ; 0xf9830 virtio.c:394
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf9834
mov cx, strict word 00024h ; b9 24 00 ; 0xf9837
xor bx, bx ; 31 db ; 0xf983a
call 0ad80h ; e8 41 15 ; 0xf983c
lea ax, [si+000b8h] ; 8d 84 b8 00 ; 0xf983f virtio.c:395
mov word [bp-010h], ax ; 89 46 f0 ; 0xf9843
mov cx, strict word 0002ch ; b9 2c 00 ; 0xf9846
xor bx, bx ; 31 db ; 0xf9849
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf984b
call 0ad80h ; e8 2f 15 ; 0xf984e
mov es, [bp-012h] ; 8e 46 ee ; 0xf9851 virtio.c:397
mov byte [es:si+00094h], 001h ; 26 c6 84 94 00 01 ; 0xf9854
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf985a virtio.c:398
mov byte [es:si+00095h], al ; 26 88 84 95 00 ; 0xf985d
mov word [es:si+00096h], strict word 00000h ; 26 c7 84 96 00 00 00 ; 0xf9862 virtio.c:399
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xf9869 virtio.c:401
push ax ; 50 ; 0xf986d
lea ax, [si+000a7h] ; 8d 84 a7 00 ; 0xf986e
mov bx, word [bp+004h] ; 8b 5e 04 ; 0xf9872
mov cx, word [bp+006h] ; 8b 4e 06 ; 0xf9875
mov dx, es ; 8c c2 ; 0xf9878
call 0ad90h ; e8 13 15 ; 0xf987a
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf987d virtio.c:404
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf9880
call 097f3h ; e8 6d ff ; 0xf9883
mov es, [bp-012h] ; 8e 46 ee ; 0xf9886
mov word [es:si], ax ; 26 89 04 ; 0xf9889
mov word [es:si+002h], dx ; 26 89 54 02 ; 0xf988c
db 066h, 026h, 0c7h, 044h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000000h ; 66 26 c7 44 04 00 00 00 00; 0xf9890 virtio.c:405
db 066h, 026h, 0c7h, 044h, 008h, 024h, 000h, 000h, 000h
; mov dword [es:si+008h], strict dword 000000024h ; 66 26 c7 44 08 24 00 00 00; 0xf9899 virtio.c:406
db 066h, 026h, 0c7h, 044h, 00ch, 001h, 000h, 001h, 000h
; mov dword [es:si+00ch], strict dword 000010001h ; 66 26 c7 44 0c 01 00 01 00; 0xf98a2 virtio.c:407
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf98ab virtio.c:410
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xf98ae
call 097f3h ; e8 3f ff ; 0xf98b1
mov es, [bp-012h] ; 8e 46 ee ; 0xf98b4
mov word [es:si+010h], ax ; 26 89 44 10 ; 0xf98b7
mov word [es:si+012h], dx ; 26 89 54 12 ; 0xf98bb
db 066h, 026h, 0c7h, 044h, 014h, 000h, 000h, 000h, 000h
; mov dword [es:si+014h], strict dword 000000000h ; 66 26 c7 44 14 00 00 00 00; 0xf98bf virtio.c:411
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf98c8 virtio.c:412
mov word [es:si+018h], ax ; 26 89 44 18 ; 0xf98cb
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf98cf
mov word [es:si+01ah], ax ; 26 89 44 1a ; 0xf98d2
db 066h, 026h, 0c7h, 044h, 01ch, 001h, 000h, 002h, 000h
; mov dword [es:si+01ch], strict dword 000020001h ; 66 26 c7 44 1c 01 00 02 00; 0xf98d6 virtio.c:413
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf98df virtio.c:416
mov dx, es ; 8c c2 ; 0xf98e2
call 097f3h ; e8 0c ff ; 0xf98e4
mov es, [bp-012h] ; 8e 46 ee ; 0xf98e7
mov word [es:si+020h], ax ; 26 89 44 20 ; 0xf98ea
mov word [es:si+022h], dx ; 26 89 54 22 ; 0xf98ee
db 066h, 026h, 0c7h, 044h, 024h, 000h, 000h, 000h, 000h
; mov dword [es:si+024h], strict dword 000000000h ; 66 26 c7 44 24 00 00 00 00; 0xf98f2 virtio.c:417
db 066h, 026h, 0c7h, 044h, 028h, 02ch, 000h, 000h, 000h
; mov dword [es:si+028h], strict dword 00000002ch ; 66 26 c7 44 28 2c 00 00 00; 0xf98fb virtio.c:418
db 066h, 026h, 0c7h, 044h, 02ch, 002h, 000h, 000h, 000h
; mov dword [es:si+02ch], strict dword 000000002h ; 66 26 c7 44 2c 02 00 00 00; 0xf9904 virtio.c:419
mov ax, word [es:si+032h] ; 26 8b 44 32 ; 0xf990d virtio.c:420
xor dx, dx ; 31 d2 ; 0xf9911
mov bx, strict word 00003h ; bb 03 00 ; 0xf9913
div bx ; f7 f3 ; 0xf9916
add dx, dx ; 01 d2 ; 0xf9918
mov bx, si ; 89 f3 ; 0xf991a
add bx, dx ; 01 d3 ; 0xf991c
mov word [es:bx+034h], strict word 00000h ; 26 c7 47 34 00 00 ; 0xf991e
mov ax, word [es:si+032h] ; 26 8b 44 32 ; 0xf9924 virtio.c:424
inc word [es:si+032h] ; 26 ff 44 32 ; 0xf9928
mov bx, word [es:si+058h] ; 26 8b 5c 58 ; 0xf992c virtio.c:428
mov cx, strict word 00002h ; b9 02 00 ; 0xf9930
mov ax, si ; 89 f0 ; 0xf9933
mov dx, es ; 8c c2 ; 0xf9935
call 0978bh ; e8 51 fe ; 0xf9937
les ax, [bp-00ch] ; c4 46 f4 ; 0xf993a virtio.c:431
cmp ax, word [es:di+03eh] ; 26 3b 45 3e ; 0xf993d
je short 0993ah ; 74 f7 ; 0xf9941
mov ax, di ; 89 f8 ; 0xf9943 virtio.c:436
mov dx, es ; 8c c2 ; 0xf9945
call 097bch ; e8 72 fe ; 0xf9947
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf994a virtio.c:438
mov al, byte [es:di+000c3h] ; 26 8a 85 c3 00 ; 0xf994d
test al, al ; 84 c0 ; 0xf9952
je short 0995bh ; 74 05 ; 0xf9954
mov ax, strict word 00004h ; b8 04 00 ; 0xf9956 virtio.c:439
jmp short 0995dh ; eb 02 ; 0xf9959
xor ah, ah ; 30 e4 ; 0xf995b virtio.c:441
lea sp, [bp-006h] ; 8d 66 fa ; 0xf995d virtio.c:442
pop di ; 5f ; 0xf9960
pop si ; 5e ; 0xf9961
pop cx ; 59 ; 0xf9962
pop bp ; 5d ; 0xf9963
retn 0000eh ; c2 0e 00 ; 0xf9964
; disGetNextSymbol 0xf9967 LB 0x14b5 -> off=0x0 cb=0000000000000156 uValue=00000000000f8367 'virtio_scsi_cmd_data_in'
virtio_scsi_cmd_data_in: ; 0xf9967 LB 0x156
push bp ; 55 ; 0xf9967 virtio.c:444
mov bp, sp ; 89 e5 ; 0xf9968
push cx ; 51 ; 0xf996a
push si ; 56 ; 0xf996b
push di ; 57 ; 0xf996c
sub sp, strict byte 0000ch ; 83 ec 0c ; 0xf996d
mov si, ax ; 89 c6 ; 0xf9970
mov word [bp-012h], dx ; 89 56 ee ; 0xf9972
mov byte [bp-008h], bl ; 88 5e f8 ; 0xf9975
mov di, ax ; 89 c7 ; 0xf9978 virtio.c:447
mov es, dx ; 8e c2 ; 0xf997a
mov word [bp-00ah], dx ; 89 56 f6 ; 0xf997c
mov ax, word [es:si+03eh] ; 26 8b 44 3e ; 0xf997f
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf9983
lea ax, [si+00094h] ; 8d 84 94 00 ; 0xf9986 virtio.c:450
mov word [bp-00eh], ax ; 89 46 f2 ; 0xf998a
mov cx, strict word 00024h ; b9 24 00 ; 0xf998d
xor bx, bx ; 31 db ; 0xf9990
call 0ad80h ; e8 eb 13 ; 0xf9992
lea ax, [si+000b8h] ; 8d 84 b8 00 ; 0xf9995 virtio.c:451
mov word [bp-010h], ax ; 89 46 f0 ; 0xf9999
mov cx, strict word 0002ch ; b9 2c 00 ; 0xf999c
xor bx, bx ; 31 db ; 0xf999f
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf99a1
call 0ad80h ; e8 d9 13 ; 0xf99a4
mov es, [bp-012h] ; 8e 46 ee ; 0xf99a7 virtio.c:453
mov byte [es:si+00094h], 001h ; 26 c6 84 94 00 01 ; 0xf99aa
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf99b0 virtio.c:454
mov byte [es:si+00095h], al ; 26 88 84 95 00 ; 0xf99b3
mov word [es:si+00096h], strict word 00000h ; 26 c7 84 96 00 00 00 ; 0xf99b8 virtio.c:455
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xf99bf virtio.c:457
push ax ; 50 ; 0xf99c3
lea ax, [si+000a7h] ; 8d 84 a7 00 ; 0xf99c4
mov bx, word [bp+004h] ; 8b 5e 04 ; 0xf99c8
mov cx, word [bp+006h] ; 8b 4e 06 ; 0xf99cb
mov dx, es ; 8c c2 ; 0xf99ce
call 0ad90h ; e8 bd 13 ; 0xf99d0
mov ax, word [bp-00eh] ; 8b 46 f2 ; 0xf99d3 virtio.c:460
mov dx, word [bp-012h] ; 8b 56 ee ; 0xf99d6
call 097f3h ; e8 17 fe ; 0xf99d9
mov es, [bp-012h] ; 8e 46 ee ; 0xf99dc
mov word [es:si], ax ; 26 89 04 ; 0xf99df
mov word [es:si+002h], dx ; 26 89 54 02 ; 0xf99e2
db 066h, 026h, 0c7h, 044h, 004h, 000h, 000h, 000h, 000h
; mov dword [es:si+004h], strict dword 000000000h ; 66 26 c7 44 04 00 00 00 00; 0xf99e6 virtio.c:461
db 066h, 026h, 0c7h, 044h, 008h, 024h, 000h, 000h, 000h
; mov dword [es:si+008h], strict dword 000000024h ; 66 26 c7 44 08 24 00 00 00; 0xf99ef virtio.c:462
db 066h, 026h, 0c7h, 044h, 00ch, 001h, 000h, 001h, 000h
; mov dword [es:si+00ch], strict dword 000010001h ; 66 26 c7 44 0c 01 00 01 00; 0xf99f8 virtio.c:463
mov ax, word [bp-010h] ; 8b 46 f0 ; 0xf9a01 virtio.c:467
mov dx, es ; 8c c2 ; 0xf9a04
call 097f3h ; e8 ea fd ; 0xf9a06
mov es, [bp-012h] ; 8e 46 ee ; 0xf9a09
mov word [es:si+010h], ax ; 26 89 44 10 ; 0xf9a0c
mov word [es:si+012h], dx ; 26 89 54 12 ; 0xf9a10
db 066h, 026h, 0c7h, 044h, 014h, 000h, 000h, 000h, 000h
; mov dword [es:si+014h], strict dword 000000000h ; 66 26 c7 44 14 00 00 00 00; 0xf9a14 virtio.c:468
db 066h, 026h, 0c7h, 044h, 018h, 02ch, 000h, 000h, 000h
; mov dword [es:si+018h], strict dword 00000002ch ; 66 26 c7 44 18 2c 00 00 00; 0xf9a1d virtio.c:469
db 066h, 026h, 0c7h, 044h, 01ch, 003h, 000h, 002h, 000h
; mov dword [es:si+01ch], strict dword 000020003h ; 66 26 c7 44 1c 03 00 02 00; 0xf9a26 virtio.c:470
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf9a2f virtio.c:473
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xf9a32
call 097f3h ; e8 bb fd ; 0xf9a35
mov es, [bp-012h] ; 8e 46 ee ; 0xf9a38
mov word [es:si+020h], ax ; 26 89 44 20 ; 0xf9a3b
mov word [es:si+022h], dx ; 26 89 54 22 ; 0xf9a3f
db 066h, 026h, 0c7h, 044h, 024h, 000h, 000h, 000h, 000h
; mov dword [es:si+024h], strict dword 000000000h ; 66 26 c7 44 24 00 00 00 00; 0xf9a43 virtio.c:474
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf9a4c virtio.c:475
mov word [es:si+028h], ax ; 26 89 44 28 ; 0xf9a4f
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf9a53
mov word [es:si+02ah], ax ; 26 89 44 2a ; 0xf9a56
db 066h, 026h, 0c7h, 044h, 02ch, 002h, 000h, 000h, 000h
; mov dword [es:si+02ch], strict dword 000000002h ; 66 26 c7 44 2c 02 00 00 00; 0xf9a5a virtio.c:476
mov ax, word [es:si+032h] ; 26 8b 44 32 ; 0xf9a63 virtio.c:477
xor dx, dx ; 31 d2 ; 0xf9a67
mov bx, strict word 00003h ; bb 03 00 ; 0xf9a69
div bx ; f7 f3 ; 0xf9a6c
add dx, dx ; 01 d2 ; 0xf9a6e
mov bx, si ; 89 f3 ; 0xf9a70
add bx, dx ; 01 d3 ; 0xf9a72
mov word [es:bx+034h], strict word 00000h ; 26 c7 47 34 00 00 ; 0xf9a74
mov ax, word [es:si+032h] ; 26 8b 44 32 ; 0xf9a7a virtio.c:482
inc word [es:si+032h] ; 26 ff 44 32 ; 0xf9a7e
mov bx, word [es:si+058h] ; 26 8b 5c 58 ; 0xf9a82 virtio.c:486
mov cx, strict word 00002h ; b9 02 00 ; 0xf9a86
mov ax, si ; 89 f0 ; 0xf9a89
mov dx, es ; 8c c2 ; 0xf9a8b
call 0978bh ; e8 fb fc ; 0xf9a8d
les ax, [bp-00ch] ; c4 46 f4 ; 0xf9a90 virtio.c:489
cmp ax, word [es:di+03eh] ; 26 3b 45 3e ; 0xf9a93
je short 09a90h ; 74 f7 ; 0xf9a97
mov ax, di ; 89 f8 ; 0xf9a99 virtio.c:494
mov dx, es ; 8c c2 ; 0xf9a9b
call 097bch ; e8 1c fd ; 0xf9a9d
mov es, [bp-00ah] ; 8e 46 f6 ; 0xf9aa0 virtio.c:496
mov al, byte [es:di+000c3h] ; 26 8a 85 c3 00 ; 0xf9aa3
test al, al ; 84 c0 ; 0xf9aa8
je short 09ab1h ; 74 05 ; 0xf9aaa
mov ax, strict word 00004h ; b8 04 00 ; 0xf9aac virtio.c:497
jmp short 09ab3h ; eb 02 ; 0xf9aaf
xor ah, ah ; 30 e4 ; 0xf9ab1 virtio.c:499
lea sp, [bp-006h] ; 8d 66 fa ; 0xf9ab3 virtio.c:500
pop di ; 5f ; 0xf9ab6
pop si ; 5e ; 0xf9ab7
pop cx ; 59 ; 0xf9ab8
pop bp ; 5d ; 0xf9ab9
retn 0000eh ; c2 0e 00 ; 0xf9aba
; disGetNextSymbol 0xf9abd LB 0x135f -> off=0x0 cb=000000000000031f uValue=00000000000f84bd 'virtio_scsi_hba_init'
virtio_scsi_hba_init: ; 0xf9abd LB 0x31f
push bp ; 55 ; 0xf9abd virtio.c:505
mov bp, sp ; 89 e5 ; 0xf9abe
push si ; 56 ; 0xf9ac0
push di ; 57 ; 0xf9ac1
sub sp, strict byte 00012h ; 83 ec 12 ; 0xf9ac2
mov si, ax ; 89 c6 ; 0xf9ac5
mov word [bp-00eh], dx ; 89 56 f2 ; 0xf9ac7
mov byte [bp-006h], bl ; 88 5e fa ; 0xf9aca
mov ch, cl ; 88 cd ; 0xf9acd
mov es, dx ; 8e c2 ; 0xf9acf virtio.c:510
mov byte [es:si+00092h], bl ; 26 88 9c 92 00 ; 0xf9ad1
mov byte [es:si+00093h], cl ; 26 88 8c 93 00 ; 0xf9ad6 virtio.c:511
mov cl, byte [bp+004h] ; 8a 4e 04 ; 0xf9adb virtio.c:517
test cl, cl ; 84 c9 ; 0xf9ade virtio.c:518
je near 09be8h ; 0f 84 04 01 ; 0xf9ae0
movzx bx, cl ; 0f b6 d9 ; 0xf9ae4 virtio.c:520
movzx ax, ch ; 0f b6 c5 ; 0xf9ae7
mov word [bp-00ch], ax ; 89 46 f4 ; 0xf9aea
movzx di, byte [bp-006h] ; 0f b6 7e fa ; 0xf9aed
mov dx, ax ; 89 c2 ; 0xf9af1
mov ax, di ; 89 f8 ; 0xf9af3
call 0ab22h ; e8 2a 10 ; 0xf9af5
mov word [bp-012h], ax ; 89 46 ee ; 0xf9af8
mov al, cl ; 88 c8 ; 0xf9afb virtio.c:521
add AL, strict byte 002h ; 04 02 ; 0xf9afd
movzx bx, al ; 0f b6 d8 ; 0xf9aff
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf9b02
mov ax, di ; 89 f8 ; 0xf9b05
call 0ab22h ; e8 18 10 ; 0xf9b07
cmp byte [bp-012h], 009h ; 80 7e ee 09 ; 0xf9b0a virtio.c:525
jne near 09bd2h ; 0f 85 c0 00 ; 0xf9b0e
cmp AL, strict byte 010h ; 3c 10 ; 0xf9b12
jc near 09bd2h ; 0f 82 ba 00 ; 0xf9b14
mov al, cl ; 88 c8 ; 0xf9b18 virtio.c:529
add AL, strict byte 003h ; 04 03 ; 0xf9b1a
movzx bx, al ; 0f b6 d8 ; 0xf9b1c
mov dx, word [bp-00ch] ; 8b 56 f4 ; 0xf9b1f
mov ax, di ; 89 f8 ; 0xf9b22
call 0ab22h ; e8 fb 0f ; 0xf9b24
mov byte [bp-008h], al ; 88 46 f8 ; 0xf9b27
cmp AL, strict byte 005h ; 3c 05 ; 0xf9b2a virtio.c:532
je near 09bcah ; 0f 84 9a 00 ; 0xf9b2c
cmp AL, strict byte 001h ; 3c 01 ; 0xf9b30
jc near 09bd2h ; 0f 82 9c 00 ; 0xf9b32
cmp AL, strict byte 004h ; 3c 04 ; 0xf9b36
jnbe near 09bd2h ; 0f 87 96 00 ; 0xf9b38
movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xf9b3c virtio.c:539
dec ax ; 48 ; 0xf9b40
imul ax, ax, strict byte 0000ch ; 6b c0 0c ; 0xf9b41
lea di, [si+05ch] ; 8d 7c 5c ; 0xf9b44
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9b47
mov word [bp-010h], dx ; 89 56 f0 ; 0xf9b4a
add di, ax ; 01 c7 ; 0xf9b4d
mov al, cl ; 88 c8 ; 0xf9b4f virtio.c:541
add AL, strict byte 004h ; 04 04 ; 0xf9b51
movzx bx, al ; 0f b6 d8 ; 0xf9b53
movzx ax, ch ; 0f b6 c5 ; 0xf9b56
mov word [bp-014h], ax ; 89 46 ec ; 0xf9b59
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf9b5c
mov word [bp-016h], ax ; 89 46 ea ; 0xf9b60
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf9b63
call 0ab22h ; e8 b9 0f ; 0xf9b66
mov es, [bp-010h] ; 8e 46 f0 ; 0xf9b69
mov byte [es:di], al ; 26 88 05 ; 0xf9b6c
mov al, cl ; 88 c8 ; 0xf9b6f virtio.c:542
add AL, strict byte 008h ; 04 08 ; 0xf9b71
movzx bx, al ; 0f b6 d8 ; 0xf9b73
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf9b76
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf9b79
call 0ab68h ; e8 e9 0f ; 0xf9b7c
mov es, [bp-010h] ; 8e 46 f0 ; 0xf9b7f
mov word [es:di+004h], ax ; 26 89 45 04 ; 0xf9b82
mov word [es:di+006h], dx ; 26 89 55 06 ; 0xf9b86
mov al, cl ; 88 c8 ; 0xf9b8a virtio.c:543
add AL, strict byte 00ch ; 04 0c ; 0xf9b8c
movzx bx, al ; 0f b6 d8 ; 0xf9b8e
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf9b91
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf9b94
call 0ab68h ; e8 ce 0f ; 0xf9b97
mov es, [bp-010h] ; 8e 46 f0 ; 0xf9b9a
mov word [es:di+008h], ax ; 26 89 45 08 ; 0xf9b9d
mov word [es:di+00ah], dx ; 26 89 55 0a ; 0xf9ba1
cmp byte [bp-008h], 002h ; 80 7e f8 02 ; 0xf9ba5 virtio.c:544
jne short 09bd2h ; 75 27 ; 0xf9ba9
mov al, cl ; 88 c8 ; 0xf9bab virtio.c:546
add AL, strict byte 010h ; 04 10 ; 0xf9bad
movzx bx, al ; 0f b6 d8 ; 0xf9baf
mov dx, word [bp-014h] ; 8b 56 ec ; 0xf9bb2
mov ax, word [bp-016h] ; 8b 46 ea ; 0xf9bb5
call 0ab68h ; e8 ad 0f ; 0xf9bb8
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf9bbb
mov word [es:si+0008eh], ax ; 26 89 84 8e 00 ; 0xf9bbe
mov word [es:si+00090h], dx ; 26 89 94 90 00 ; 0xf9bc3
jmp short 09bd2h ; eb 08 ; 0xf9bc8 virtio.c:549
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf9bca virtio.c:552
mov byte [es:si+0008ch], cl ; 26 88 8c 8c 00 ; 0xf9bcd
mov al, cl ; 88 c8 ; 0xf9bd2 virtio.c:561
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf9bd4
movzx bx, al ; 0f b6 d8 ; 0xf9bd6
movzx dx, ch ; 0f b6 d5 ; 0xf9bd9
movzx ax, byte [bp-006h] ; 0f b6 46 fa ; 0xf9bdc
call 0ab22h ; e8 3f 0f ; 0xf9be0
mov cl, al ; 88 c1 ; 0xf9be3
jmp near 09adeh ; e9 f6 fe ; 0xf9be5 virtio.c:562
xor ch, ch ; 30 ed ; 0xf9be8 virtio.c:566
mov bx, strict word 00014h ; bb 14 00 ; 0xf9bea
mov ax, si ; 89 f0 ; 0xf9bed
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9bef
call 09657h ; e8 62 fa ; 0xf9bf2
mov cx, strict word 00001h ; b9 01 00 ; 0xf9bf5 virtio.c:569
mov bx, strict word 00014h ; bb 14 00 ; 0xf9bf8
mov ax, si ; 89 f0 ; 0xf9bfb
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9bfd
call 09657h ; e8 54 fa ; 0xf9c00
mov byte [bp-00ah], 003h ; c6 46 f6 03 ; 0xf9c03 virtio.c:571
mov cx, strict word 00003h ; b9 03 00 ; 0xf9c07 virtio.c:572
mov bx, strict word 00014h ; bb 14 00 ; 0xf9c0a
mov ax, si ; 89 f0 ; 0xf9c0d
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c0f
call 09657h ; e8 42 fa ; 0xf9c12
xor bx, bx ; 31 db ; 0xf9c15 virtio.c:581
mov ax, si ; 89 f0 ; 0xf9c17
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c19
call 09723h ; e8 04 fb ; 0xf9c1c
test dx, dx ; 85 d2 ; 0xf9c1f
jne short 09c28h ; 75 05 ; 0xf9c21
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf9c23
jc short 09c64h ; 72 3c ; 0xf9c26
mov bx, strict word 00018h ; bb 18 00 ; 0xf9c28
mov ax, si ; 89 f0 ; 0xf9c2b
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c2d
call 09723h ; e8 f0 fa ; 0xf9c30
test dx, dx ; 85 d2 ; 0xf9c33
jne short 09c3ch ; 75 05 ; 0xf9c35
cmp ax, strict word 00010h ; 3d 10 00 ; 0xf9c37
jc short 09c64h ; 72 28 ; 0xf9c3a
mov bx, strict word 00014h ; bb 14 00 ; 0xf9c3c
mov ax, si ; 89 f0 ; 0xf9c3f
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c41
call 09723h ; e8 dc fa ; 0xf9c44
test dx, dx ; 85 d2 ; 0xf9c47
jne short 09c50h ; 75 05 ; 0xf9c49
cmp ax, strict word 00020h ; 3d 20 00 ; 0xf9c4b
jc short 09c64h ; 72 14 ; 0xf9c4e
mov bx, strict word 00008h ; bb 08 00 ; 0xf9c50
mov ax, si ; 89 f0 ; 0xf9c53
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c55
call 09723h ; e8 c8 fa ; 0xf9c58
test dx, dx ; 85 d2 ; 0xf9c5b
jne short 09c6ah ; 75 0b ; 0xf9c5d
cmp ax, strict word 00001h ; 3d 01 00 ; 0xf9c5f
jnc short 09c6ah ; 73 06 ; 0xf9c62
mov ax, strict word 00001h ; b8 01 00 ; 0xf9c64 virtio.c:587
jmp near 09dd3h ; e9 69 01 ; 0xf9c67
push dword 000000001h ; 66 6a 01 ; 0xf9c6a virtio.c:590
mov bx, strict word 0000ch ; bb 0c 00 ; 0xf9c6d
mov ax, si ; 89 f0 ; 0xf9c70
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c72
call 096ech ; e8 74 fa ; 0xf9c75
or byte [bp-00ah], 008h ; 80 4e f6 08 ; 0xf9c78 virtio.c:593
movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xf9c7c virtio.c:594
mov bx, strict word 00014h ; bb 14 00 ; 0xf9c80
mov ax, si ; 89 f0 ; 0xf9c83
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c85
call 09657h ; e8 cc f9 ; 0xf9c88
mov bx, strict word 00014h ; bb 14 00 ; 0xf9c8b virtio.c:597
mov ax, si ; 89 f0 ; 0xf9c8e
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9c90
call 09626h ; e8 90 f9 ; 0xf9c93
test AL, strict byte 008h ; a8 08 ; 0xf9c96
je short 09c64h ; 74 ca ; 0xf9c98
xor cx, cx ; 31 c9 ; 0xf9c9a virtio.c:604
mov bx, strict word 00016h ; bb 16 00 ; 0xf9c9c
mov ax, si ; 89 f0 ; 0xf9c9f
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9ca1
call 096bbh ; e8 14 fa ; 0xf9ca4
xor cx, cx ; 31 c9 ; 0xf9ca7 virtio.c:605
mov bx, strict word 00018h ; bb 18 00 ; 0xf9ca9
mov ax, si ; 89 f0 ; 0xf9cac
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9cae
call 096bbh ; e8 07 fa ; 0xf9cb1
xor cx, cx ; 31 c9 ; 0xf9cb4 virtio.c:606
mov bx, strict word 0001ch ; bb 1c 00 ; 0xf9cb6
mov ax, si ; 89 f0 ; 0xf9cb9
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9cbb
call 096bbh ; e8 fa f9 ; 0xf9cbe
mov cx, strict word 00001h ; b9 01 00 ; 0xf9cc1 virtio.c:608
mov bx, strict word 00016h ; bb 16 00 ; 0xf9cc4
mov ax, si ; 89 f0 ; 0xf9cc7
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9cc9
call 096bbh ; e8 ec f9 ; 0xf9ccc
xor cx, cx ; 31 c9 ; 0xf9ccf virtio.c:609
mov bx, strict word 00018h ; bb 18 00 ; 0xf9cd1
mov ax, si ; 89 f0 ; 0xf9cd4
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9cd6
call 096bbh ; e8 df f9 ; 0xf9cd9
xor cx, cx ; 31 c9 ; 0xf9cdc virtio.c:610
mov bx, strict word 0001ch ; bb 1c 00 ; 0xf9cde
mov ax, si ; 89 f0 ; 0xf9ce1
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9ce3
call 096bbh ; e8 d2 f9 ; 0xf9ce6
mov cx, strict word 00002h ; b9 02 00 ; 0xf9ce9 virtio.c:613
mov bx, strict word 00016h ; bb 16 00 ; 0xf9cec
mov ax, si ; 89 f0 ; 0xf9cef
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9cf1
call 096bbh ; e8 c4 f9 ; 0xf9cf4
mov cx, strict word 00003h ; b9 03 00 ; 0xf9cf7 virtio.c:614
mov bx, strict word 00018h ; bb 18 00 ; 0xf9cfa
mov ax, si ; 89 f0 ; 0xf9cfd
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9cff
call 096bbh ; e8 b6 f9 ; 0xf9d02
mov cx, strict word 00001h ; b9 01 00 ; 0xf9d05 virtio.c:615
mov bx, strict word 0001ch ; bb 1c 00 ; 0xf9d08
mov ax, si ; 89 f0 ; 0xf9d0b
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d0d
call 096bbh ; e8 a8 f9 ; 0xf9d10
mov ax, si ; 89 f0 ; 0xf9d13 virtio.c:618
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d15
call 097f3h ; e8 d8 fa ; 0xf9d18
push dx ; 52 ; 0xf9d1b
push ax ; 50 ; 0xf9d1c
mov bx, strict word 00020h ; bb 20 00 ; 0xf9d1d
mov ax, si ; 89 f0 ; 0xf9d20
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d22
call 096ech ; e8 c4 f9 ; 0xf9d25
push dword 000000000h ; 66 6a 00 ; 0xf9d28 virtio.c:619
mov bx, strict word 00024h ; bb 24 00 ; 0xf9d2b
mov ax, si ; 89 f0 ; 0xf9d2e
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d30
call 096ech ; e8 b6 f9 ; 0xf9d33
lea ax, [si+030h] ; 8d 44 30 ; 0xf9d36 virtio.c:621
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d39
call 097f3h ; e8 b4 fa ; 0xf9d3c
push dx ; 52 ; 0xf9d3f
push ax ; 50 ; 0xf9d40
mov bx, strict word 00028h ; bb 28 00 ; 0xf9d41
mov ax, si ; 89 f0 ; 0xf9d44
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d46
call 096ech ; e8 a0 f9 ; 0xf9d49
push dword 000000000h ; 66 6a 00 ; 0xf9d4c virtio.c:622
mov bx, strict word 0002ch ; bb 2c 00 ; 0xf9d4f
mov ax, si ; 89 f0 ; 0xf9d52
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d54
call 096ech ; e8 92 f9 ; 0xf9d57
lea ax, [si+03ch] ; 8d 44 3c ; 0xf9d5a virtio.c:624
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d5d
call 097f3h ; e8 90 fa ; 0xf9d60
push dx ; 52 ; 0xf9d63
push ax ; 50 ; 0xf9d64
mov bx, strict word 00030h ; bb 30 00 ; 0xf9d65
mov ax, si ; 89 f0 ; 0xf9d68
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d6a
call 096ech ; e8 7c f9 ; 0xf9d6d
push dword 000000000h ; 66 6a 00 ; 0xf9d70 virtio.c:625
mov bx, strict word 00034h ; bb 34 00 ; 0xf9d73
mov ax, si ; 89 f0 ; 0xf9d76
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d78
call 096ech ; e8 6e f9 ; 0xf9d7b
push dword 000000010h ; 66 6a 10 ; 0xf9d7e virtio.c:627
mov bx, strict word 00018h ; bb 18 00 ; 0xf9d81
mov ax, si ; 89 f0 ; 0xf9d84
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d86
call 09754h ; e8 c8 f9 ; 0xf9d89
push dword 000000020h ; 66 6a 20 ; 0xf9d8c virtio.c:628
mov bx, strict word 00014h ; bb 14 00 ; 0xf9d8f
mov ax, si ; 89 f0 ; 0xf9d92
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d94
call 09754h ; e8 ba f9 ; 0xf9d97
mov bx, strict word 0001eh ; bb 1e 00 ; 0xf9d9a virtio.c:631
mov ax, si ; 89 f0 ; 0xf9d9d
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9d9f
call 0968ah ; e8 e5 f8 ; 0xf9da2
mov es, [bp-00eh] ; 8e 46 f2 ; 0xf9da5
mov bx, word [es:si+0008eh] ; 26 8b 9c 8e 00 ; 0xf9da8
mov cx, word [es:si+00090h] ; 26 8b 8c 90 00 ; 0xf9dad
xor dx, dx ; 31 d2 ; 0xf9db2
call 0ace0h ; e8 29 0f ; 0xf9db4
mov word [es:si+058h], ax ; 26 89 44 58 ; 0xf9db7
mov word [es:si+05ah], dx ; 26 89 54 5a ; 0xf9dbb
or byte [bp-00ah], 004h ; 80 4e f6 04 ; 0xf9dbf virtio.c:634
movzx cx, byte [bp-00ah] ; 0f b6 4e f6 ; 0xf9dc3 virtio.c:635
mov bx, strict word 00014h ; bb 14 00 ; 0xf9dc7
mov ax, si ; 89 f0 ; 0xf9dca
mov dx, es ; 8c c2 ; 0xf9dcc
call 09657h ; e8 86 f8 ; 0xf9dce
xor ax, ax ; 31 c0 ; 0xf9dd1 virtio.c:637
lea sp, [bp-004h] ; 8d 66 fc ; 0xf9dd3 virtio.c:638
pop di ; 5f ; 0xf9dd6
pop si ; 5e ; 0xf9dd7
pop bp ; 5d ; 0xf9dd8
retn 00002h ; c2 02 00 ; 0xf9dd9
; disGetNextSymbol 0xf9ddc LB 0x1040 -> off=0x0 cb=00000000000000d5 uValue=00000000000f87dc 'virtio_scsi_init'
virtio_scsi_init: ; 0xf9ddc LB 0xd5
push bp ; 55 ; 0xf9ddc virtio.c:643
mov bp, sp ; 89 e5 ; 0xf9ddd
push si ; 56 ; 0xf9ddf
push di ; 57 ; 0xf9de0
sub sp, strict byte 0000eh ; 83 ec 0e ; 0xf9de1
mov byte [bp-00ah], bl ; 88 5e f6 ; 0xf9de4
mov byte [bp-006h], cl ; 88 4e fa ; 0xf9de7
mov word [bp-012h], ax ; 89 46 ee ; 0xf9dea virtio.c:645
mov word [bp-00eh], dx ; 89 56 f2 ; 0xf9ded
mov byte [bp-008h], 0ffh ; c6 46 f8 ff ; 0xf9df0 virtio.c:647
mov byte [bp-00ch], 000h ; c6 46 f4 00 ; 0xf9df4 virtio.c:648
movzx dx, cl ; 0f b6 d1 ; 0xf9df8 virtio.c:651
movzx ax, bl ; 0f b6 c3 ; 0xf9dfb
mov bx, strict word 00034h ; bb 34 00 ; 0xf9dfe
call 0ab22h ; e8 1e 0d ; 0xf9e01
mov ch, al ; 88 c5 ; 0xf9e04
test ch, ch ; 84 ed ; 0xf9e06 virtio.c:653
je short 09e72h ; 74 68 ; 0xf9e08
movzx bx, ch ; 0f b6 dd ; 0xf9e0a virtio.c:655
movzx si, byte [bp-006h] ; 0f b6 76 fa ; 0xf9e0d
movzx di, byte [bp-00ah] ; 0f b6 7e f6 ; 0xf9e11
mov dx, si ; 89 f2 ; 0xf9e15
mov ax, di ; 89 f8 ; 0xf9e17
call 0ab22h ; e8 06 0d ; 0xf9e19
mov word [bp-010h], ax ; 89 46 f0 ; 0xf9e1c
mov al, ch ; 88 e8 ; 0xf9e1f virtio.c:656
add AL, strict byte 002h ; 04 02 ; 0xf9e21
movzx bx, al ; 0f b6 d8 ; 0xf9e23
mov dx, si ; 89 f2 ; 0xf9e26
mov ax, di ; 89 f8 ; 0xf9e28
call 0ab22h ; e8 f5 0c ; 0xf9e2a
cmp byte [bp-010h], 009h ; 80 7e f0 09 ; 0xf9e2d virtio.c:660
jne short 09e61h ; 75 2e ; 0xf9e31
cmp AL, strict byte 010h ; 3c 10 ; 0xf9e33
jc short 09e61h ; 72 2a ; 0xf9e35
mov al, ch ; 88 e8 ; 0xf9e37 virtio.c:664
add AL, strict byte 003h ; 04 03 ; 0xf9e39
movzx bx, al ; 0f b6 d8 ; 0xf9e3b
mov dx, si ; 89 f2 ; 0xf9e3e
mov ax, di ; 89 f8 ; 0xf9e40
call 0ab22h ; e8 dd 0c ; 0xf9e42
cmp byte [bp-008h], 0ffh ; 80 7e f8 ff ; 0xf9e45 virtio.c:666
jne short 09e4eh ; 75 03 ; 0xf9e49
mov byte [bp-008h], ch ; 88 6e f8 ; 0xf9e4b virtio.c:667
cmp AL, strict byte 001h ; 3c 01 ; 0xf9e4e virtio.c:670
jc short 09e61h ; 72 0f ; 0xf9e50
cmp AL, strict byte 005h ; 3c 05 ; 0xf9e52
jnbe short 09e61h ; 77 0b ; 0xf9e54
mov cl, al ; 88 c1 ; 0xf9e56 virtio.c:677
db 0feh, 0c9h
; dec cl ; fe c9 ; 0xf9e58
mov AL, strict byte 001h ; b0 01 ; 0xf9e5a
sal al, CL ; d2 e0 ; 0xf9e5c
or byte [bp-00ch], al ; 08 46 f4 ; 0xf9e5e
mov al, ch ; 88 e8 ; 0xf9e61 virtio.c:684
db 0feh, 0c0h
; inc al ; fe c0 ; 0xf9e63
movzx bx, al ; 0f b6 d8 ; 0xf9e65
movzx dx, byte [bp-006h] ; 0f b6 56 fa ; 0xf9e68
movzx ax, byte [bp-00ah] ; 0f b6 46 f6 ; 0xf9e6c
jmp short 09e01h ; eb 8f ; 0xf9e70 virtio.c:685
cmp byte [bp-008h], 0ffh ; 80 7e f8 ff ; 0xf9e72 virtio.c:688
je short 09ea7h ; 74 2f ; 0xf9e76
cmp byte [bp-00ch], 01fh ; 80 7e f4 1f ; 0xf9e78
jne short 09ea7h ; 75 29 ; 0xf9e7c
movzx di, byte [bp-006h] ; 0f b6 7e fa ; 0xf9e7e virtio.c:694
movzx si, byte [bp-00ah] ; 0f b6 76 f6 ; 0xf9e82
mov cx, strict word 00007h ; b9 07 00 ; 0xf9e86
mov bx, strict word 00004h ; bb 04 00 ; 0xf9e89
mov dx, di ; 89 fa ; 0xf9e8c
mov ax, si ; 89 f0 ; 0xf9e8e
call 0ab8fh ; e8 fc 0c ; 0xf9e90
movzx ax, byte [bp-008h] ; 0f b6 46 f8 ; 0xf9e93 virtio.c:695
push ax ; 50 ; 0xf9e97
mov cx, di ; 89 f9 ; 0xf9e98
mov bx, si ; 89 f3 ; 0xf9e9a
mov ax, word [bp-012h] ; 8b 46 ee ; 0xf9e9c
mov dx, word [bp-00eh] ; 8b 56 f2 ; 0xf9e9f
call 09abdh ; e8 18 fc ; 0xf9ea2
jmp short 09eaah ; eb 03 ; 0xf9ea5
mov ax, strict word 00001h ; b8 01 00 ; 0xf9ea7 virtio.c:700
lea sp, [bp-004h] ; 8d 66 fc ; 0xf9eaa virtio.c:701
pop di ; 5f ; 0xf9ead
pop si ; 5e ; 0xf9eae
pop bp ; 5d ; 0xf9eaf
retn ; c3 ; 0xf9eb0
; disGetNextSymbol 0xf9eb1 LB 0xf6b -> off=0x0 cb=000000000000001e uValue=00000000000f88b1 'buslogic_addr_to_phys'
buslogic_addr_to_phys: ; 0xf9eb1 LB 0x1e
push bx ; 53 ; 0xf9eb1 buslogic.c:122
push cx ; 51 ; 0xf9eb2
push bp ; 55 ; 0xf9eb3
mov bp, sp ; 89 e5 ; 0xf9eb4
mov bx, ax ; 89 c3 ; 0xf9eb6
mov ax, dx ; 89 d0 ; 0xf9eb8
xor dx, dx ; 31 d2 ; 0xf9eba buslogic.c:124
mov cx, strict word 00004h ; b9 04 00 ; 0xf9ebc
sal ax, 1 ; d1 e0 ; 0xf9ebf
rcl dx, 1 ; d1 d2 ; 0xf9ec1
loop 09ebfh ; e2 fa ; 0xf9ec3
xor cx, cx ; 31 c9 ; 0xf9ec5
add ax, bx ; 01 d8 ; 0xf9ec7
adc dx, cx ; 11 ca ; 0xf9ec9
pop bp ; 5d ; 0xf9ecb buslogic.c:125
pop cx ; 59 ; 0xf9ecc
pop bx ; 5b ; 0xf9ecd
retn ; c3 ; 0xf9ece
; disGetNextSymbol 0xf9ecf LB 0xf4d -> off=0x0 cb=0000000000000084 uValue=00000000000f88cf 'buslogic_cmd'
buslogic_cmd: ; 0xf9ecf LB 0x84
push bp ; 55 ; 0xf9ecf buslogic.c:127
mov bp, sp ; 89 e5 ; 0xf9ed0
push cx ; 51 ; 0xf9ed2
push si ; 56 ; 0xf9ed3
push di ; 57 ; 0xf9ed4
mov si, ax ; 89 c6 ; 0xf9ed5
mov cx, dx ; 89 d1 ; 0xf9ed7
mov es, dx ; 8e c2 ; 0xf9ed9 buslogic.c:132
mov dx, word [es:si+01ch] ; 26 8b 54 1c ; 0xf9edb
inc dx ; 42 ; 0xf9edf
mov al, bl ; 88 d8 ; 0xf9ee0
out DX, AL ; ee ; 0xf9ee2
xor bx, bx ; 31 db ; 0xf9ee3 buslogic.c:133
cmp bx, word [bp+008h] ; 3b 5e 08 ; 0xf9ee5
jnc short 09f03h ; 73 19 ; 0xf9ee8
mov di, word [bp+004h] ; 8b 7e 04 ; 0xf9eea buslogic.c:134
mov ax, word [bp+006h] ; 8b 46 06 ; 0xf9eed
inc word [bp+004h] ; ff 46 04 ; 0xf9ef0
mov es, cx ; 8e c1 ; 0xf9ef3
mov dx, word [es:si+01ch] ; 26 8b 54 1c ; 0xf9ef5
inc dx ; 42 ; 0xf9ef9
mov es, ax ; 8e c0 ; 0xf9efa
mov al, byte [es:di] ; 26 8a 05 ; 0xf9efc
out DX, AL ; ee ; 0xf9eff
inc bx ; 43 ; 0xf9f00
jmp short 09ee5h ; eb e2 ; 0xf9f01
cmp word [bp+00eh], strict byte 00000h ; 83 7e 0e 00 ; 0xf9f03 buslogic.c:137
je short 09f33h ; 74 2a ; 0xf9f07
mov es, cx ; 8e c1 ; 0xf9f09 buslogic.c:139
mov dx, word [es:si+01ch] ; 26 8b 54 1c ; 0xf9f0b
in AL, DX ; ec ; 0xf9f0f
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf9f10
test AL, strict byte 004h ; a8 04 ; 0xf9f12
je short 09f09h ; 74 f3 ; 0xf9f14
xor bx, bx ; 31 db ; 0xf9f16 buslogic.c:140
cmp bx, word [bp+00eh] ; 3b 5e 0e ; 0xf9f18
jnc short 09f33h ; 73 16 ; 0xf9f1b
mov es, cx ; 8e c1 ; 0xf9f1d buslogic.c:141
mov dx, word [es:si+01ch] ; 26 8b 54 1c ; 0xf9f1f
inc dx ; 42 ; 0xf9f23
in AL, DX ; ec ; 0xf9f24
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf9f25
les di, [bp+00ah] ; c4 7e 0a ; 0xf9f27
mov byte [es:di], al ; 26 88 05 ; 0xf9f2a
inc word [bp+00ah] ; ff 46 0a ; 0xf9f2d
inc bx ; 43 ; 0xf9f30
jmp short 09f18h ; eb e5 ; 0xf9f31
mov es, cx ; 8e c1 ; 0xf9f33 buslogic.c:144
mov dx, word [es:si+01ch] ; 26 8b 54 1c ; 0xf9f35
in AL, DX ; ec ; 0xf9f39
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xf9f3a
test AL, strict byte 010h ; a8 10 ; 0xf9f3c
je short 09f33h ; 74 f3 ; 0xf9f3e
mov dx, word [es:si+01ch] ; 26 8b 54 1c ; 0xf9f40 buslogic.c:147
mov AL, strict byte 020h ; b0 20 ; 0xf9f44
out DX, AL ; ee ; 0xf9f46
xor ax, ax ; 31 c0 ; 0xf9f47 buslogic.c:150
lea sp, [bp-006h] ; 8d 66 fa ; 0xf9f49
pop di ; 5f ; 0xf9f4c
pop si ; 5e ; 0xf9f4d
pop cx ; 59 ; 0xf9f4e
pop bp ; 5d ; 0xf9f4f
retn 0000ch ; c2 0c 00 ; 0xf9f50
; disGetNextSymbol 0xf9f53 LB 0xec9 -> off=0x0 cb=00000000000000b4 uValue=00000000000f8953 'buslogic_scsi_cmd_data_out'
buslogic_scsi_cmd_data_out: ; 0xf9f53 LB 0xb4
push bp ; 55 ; 0xf9f53 buslogic.c:152
mov bp, sp ; 89 e5 ; 0xf9f54
push cx ; 51 ; 0xf9f56
push si ; 56 ; 0xf9f57
push di ; 57 ; 0xf9f58
sub sp, strict byte 00008h ; 83 ec 08 ; 0xf9f59
mov si, ax ; 89 c6 ; 0xf9f5c
mov byte [bp-008h], bl ; 88 5e f8 ; 0xf9f5e
mov word [bp-00ah], ax ; 89 46 f6 ; 0xf9f61 buslogic.c:155
mov di, dx ; 89 d7 ; 0xf9f64
mov cx, strict word 0001ch ; b9 1c 00 ; 0xf9f66 buslogic.c:160
xor bx, bx ; 31 db ; 0xf9f69
call 0ad80h ; e8 12 0e ; 0xf9f6b
mov cx, strict word 00004h ; b9 04 00 ; 0xf9f6e buslogic.c:161
xor bx, bx ; 31 db ; 0xf9f71
mov dx, ss ; 8c d2 ; 0xf9f73
lea ax, [bp-00eh] ; 8d 46 f2 ; 0xf9f75
call 0ad80h ; e8 05 0e ; 0xf9f78
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xf9f7b buslogic.c:163
mov es, di ; 8e c7 ; 0xf9f7e
mov word [es:si], ax ; 26 89 04 ; 0xf9f80
mov ax, word [bp+010h] ; 8b 46 10 ; 0xf9f83
mov word [es:si+002h], ax ; 26 89 44 02 ; 0xf9f86
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xf9f8a buslogic.c:164
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xf9f8d
call 09eb1h ; e8 1e ff ; 0xf9f90
mov es, di ; 8e c7 ; 0xf9f93
mov word [es:si+004h], ax ; 26 89 44 04 ; 0xf9f95
mov word [es:si+006h], dx ; 26 89 54 06 ; 0xf9f99
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xf9f9d buslogic.c:165
mov byte [es:si+008h], al ; 26 88 44 08 ; 0xf9fa0
mov byte [es:si+009h], 000h ; 26 c6 44 09 00 ; 0xf9fa4 buslogic.c:166
and byte [es:si+00ah], 0e7h ; 26 80 64 0a e7 ; 0xf9fa9 buslogic.c:167
mov al, byte [bp+008h] ; 8a 46 08 ; 0xf9fae buslogic.c:168
mov byte [es:si+00bh], al ; 26 88 44 0b ; 0xf9fb1
xor si, si ; 31 f6 ; 0xf9fb5 buslogic.c:170
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xf9fb7
cmp si, ax ; 39 c6 ; 0xf9fbb
jnl short 09fd7h ; 7d 18 ; 0xf9fbd
les bx, [bp+004h] ; c4 5e 04 ; 0xf9fbf buslogic.c:171
add bx, si ; 01 f3 ; 0xf9fc2
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xf9fc4
add dx, si ; 01 f2 ; 0xf9fc7
mov al, byte [es:bx] ; 26 8a 07 ; 0xf9fc9
mov es, di ; 8e c7 ; 0xf9fcc
mov bx, dx ; 89 d3 ; 0xf9fce
mov byte [es:bx+00ch], al ; 26 88 47 0c ; 0xf9fd0
inc si ; 46 ; 0xf9fd4
jmp short 09fb7h ; eb e0 ; 0xf9fd5
push strict byte 00004h ; 6a 04 ; 0xf9fd7 buslogic.c:173
lea dx, [bp-00eh] ; 8d 56 f2 ; 0xf9fd9
push SS ; 16 ; 0xf9fdc
push dx ; 52 ; 0xf9fdd
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xf9fde
add ax, strict word 0000ch ; 05 0c 00 ; 0xf9fe2
push ax ; 50 ; 0xf9fe5
push di ; 57 ; 0xf9fe6
push word [bp-00ah] ; ff 76 f6 ; 0xf9fe7
mov bx, 00083h ; bb 83 00 ; 0xf9fea
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xf9fed
mov dx, di ; 89 fa ; 0xf9ff0
call 09ecfh ; e8 da fe ; 0xf9ff2
test ax, ax ; 85 c0 ; 0xf9ff5 buslogic.c:175
jne short 09ffdh ; 75 04 ; 0xf9ff7
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xf9ff9 buslogic.c:176
lea sp, [bp-006h] ; 8d 66 fa ; 0xf9ffd buslogic.c:179
pop di ; 5f ; 0xfa000
pop si ; 5e ; 0xfa001
pop cx ; 59 ; 0xfa002
pop bp ; 5d ; 0xfa003
retn 0000eh ; c2 0e 00 ; 0xfa004
; disGetNextSymbol 0xfa007 LB 0xe15 -> off=0x0 cb=00000000000000b4 uValue=00000000000f8a07 'buslogic_scsi_cmd_data_in'
buslogic_scsi_cmd_data_in: ; 0xfa007 LB 0xb4
push bp ; 55 ; 0xfa007 buslogic.c:181
mov bp, sp ; 89 e5 ; 0xfa008
push cx ; 51 ; 0xfa00a
push si ; 56 ; 0xfa00b
push di ; 57 ; 0xfa00c
sub sp, strict byte 00008h ; 83 ec 08 ; 0xfa00d
mov si, ax ; 89 c6 ; 0xfa010
mov byte [bp-008h], bl ; 88 5e f8 ; 0xfa012
mov word [bp-00ah], ax ; 89 46 f6 ; 0xfa015 buslogic.c:184
mov di, dx ; 89 d7 ; 0xfa018
mov cx, strict word 0001ch ; b9 1c 00 ; 0xfa01a buslogic.c:191
xor bx, bx ; 31 db ; 0xfa01d
call 0ad80h ; e8 5e 0d ; 0xfa01f
mov cx, strict word 00004h ; b9 04 00 ; 0xfa022 buslogic.c:192
xor bx, bx ; 31 db ; 0xfa025
mov dx, ss ; 8c d2 ; 0xfa027
lea ax, [bp-00eh] ; 8d 46 f2 ; 0xfa029
call 0ad80h ; e8 51 0d ; 0xfa02c
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xfa02f buslogic.c:194
mov es, di ; 8e c7 ; 0xfa032
mov word [es:si], ax ; 26 89 04 ; 0xfa034
mov ax, word [bp+010h] ; 8b 46 10 ; 0xfa037
mov word [es:si+002h], ax ; 26 89 44 02 ; 0xfa03a
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xfa03e buslogic.c:195
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xfa041
call 09eb1h ; e8 6a fe ; 0xfa044
mov es, di ; 8e c7 ; 0xfa047
mov word [es:si+004h], ax ; 26 89 44 04 ; 0xfa049
mov word [es:si+006h], dx ; 26 89 54 06 ; 0xfa04d
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xfa051 buslogic.c:196
mov byte [es:si+008h], al ; 26 88 44 08 ; 0xfa054
mov byte [es:si+009h], 000h ; 26 c6 44 09 00 ; 0xfa058 buslogic.c:197
and byte [es:si+00ah], 0e7h ; 26 80 64 0a e7 ; 0xfa05d buslogic.c:198
mov al, byte [bp+008h] ; 8a 46 08 ; 0xfa062 buslogic.c:199
mov byte [es:si+00bh], al ; 26 88 44 0b ; 0xfa065
xor si, si ; 31 f6 ; 0xfa069 buslogic.c:201
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xfa06b
cmp si, ax ; 39 c6 ; 0xfa06f
jnl short 0a08bh ; 7d 18 ; 0xfa071
les bx, [bp+004h] ; c4 5e 04 ; 0xfa073 buslogic.c:202
add bx, si ; 01 f3 ; 0xfa076
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xfa078
add dx, si ; 01 f2 ; 0xfa07b
mov al, byte [es:bx] ; 26 8a 07 ; 0xfa07d
mov es, di ; 8e c7 ; 0xfa080
mov bx, dx ; 89 d3 ; 0xfa082
mov byte [es:bx+00ch], al ; 26 88 47 0c ; 0xfa084
inc si ; 46 ; 0xfa088
jmp short 0a06bh ; eb e0 ; 0xfa089
push strict byte 00004h ; 6a 04 ; 0xfa08b buslogic.c:204
lea dx, [bp-00eh] ; 8d 56 f2 ; 0xfa08d
push SS ; 16 ; 0xfa090
push dx ; 52 ; 0xfa091
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xfa092
add ax, strict word 0000ch ; 05 0c 00 ; 0xfa096
push ax ; 50 ; 0xfa099
push di ; 57 ; 0xfa09a
push word [bp-00ah] ; ff 76 f6 ; 0xfa09b
mov bx, 00083h ; bb 83 00 ; 0xfa09e
mov ax, word [bp-00ah] ; 8b 46 f6 ; 0xfa0a1
mov dx, di ; 89 fa ; 0xfa0a4
call 09ecfh ; e8 26 fe ; 0xfa0a6
test ax, ax ; 85 c0 ; 0xfa0a9 buslogic.c:206
jne short 0a0b1h ; 75 04 ; 0xfa0ab
movzx ax, byte [bp-00ch] ; 0f b6 46 f4 ; 0xfa0ad buslogic.c:207
lea sp, [bp-006h] ; 8d 66 fa ; 0xfa0b1 buslogic.c:210
pop di ; 5f ; 0xfa0b4
pop si ; 5e ; 0xfa0b5
pop cx ; 59 ; 0xfa0b6
pop bp ; 5d ; 0xfa0b7
retn 0000eh ; c2 0e 00 ; 0xfa0b8
; disGetNextSymbol 0xfa0bb LB 0xd61 -> off=0x0 cb=0000000000000022 uValue=00000000000f8abb 'buslogic_scsi_hba_init'
buslogic_scsi_hba_init: ; 0xfa0bb LB 0x22
push bp ; 55 ; 0xfa0bb buslogic.c:215
mov bp, sp ; 89 e5 ; 0xfa0bc
push bx ; 53 ; 0xfa0be
mov bx, ax ; 89 c3 ; 0xfa0bf
mov es, dx ; 8e c2 ; 0xfa0c1
mov dx, word [es:bx+01ch] ; 26 8b 57 1c ; 0xfa0c3 buslogic.c:218
mov AL, strict byte 080h ; b0 80 ; 0xfa0c7
out DX, AL ; ee ; 0xfa0c9
mov dx, word [es:bx+01ch] ; 26 8b 57 1c ; 0xfa0ca buslogic.c:219
in AL, DX ; ec ; 0xfa0ce
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xfa0cf
test AL, strict byte 010h ; a8 10 ; 0xfa0d1
je short 0a0cah ; 74 f5 ; 0xfa0d3
xor ax, ax ; 31 c0 ; 0xfa0d5 buslogic.c:222
lea sp, [bp-002h] ; 8d 66 fe ; 0xfa0d7
pop bx ; 5b ; 0xfa0da
pop bp ; 5d ; 0xfa0db
retn ; c3 ; 0xfa0dc
; disGetNextSymbol 0xfa0dd LB 0xd3f -> off=0x0 cb=0000000000000051 uValue=00000000000f8add 'buslogic_scsi_init'
buslogic_scsi_init: ; 0xfa0dd LB 0x51
push bp ; 55 ; 0xfa0dd buslogic.c:227
mov bp, sp ; 89 e5 ; 0xfa0de
push si ; 56 ; 0xfa0e0
push di ; 57 ; 0xfa0e1
sub sp, strict byte 00006h ; 83 ec 06 ; 0xfa0e2
mov si, ax ; 89 c6 ; 0xfa0e5
mov word [bp-008h], dx ; 89 56 f8 ; 0xfa0e7
movzx ax, cl ; 0f b6 c1 ; 0xfa0ea buslogic.c:234
mov word [bp-006h], ax ; 89 46 fa ; 0xfa0ed
movzx di, bl ; 0f b6 fb ; 0xfa0f0
mov bx, strict word 00010h ; bb 10 00 ; 0xfa0f3
mov dx, ax ; 89 c2 ; 0xfa0f6
mov ax, di ; 89 f8 ; 0xfa0f8
call 0ab68h ; e8 6b 0a ; 0xfa0fa
test AL, strict byte 001h ; a8 01 ; 0xfa0fd buslogic.c:238
je short 0a124h ; 74 23 ; 0xfa0ff
and AL, strict byte 0f0h ; 24 f0 ; 0xfa101 buslogic.c:240
mov word [bp-00ah], ax ; 89 46 f6 ; 0xfa103
mov cx, strict word 00007h ; b9 07 00 ; 0xfa106 buslogic.c:243
mov bx, strict word 00004h ; bb 04 00 ; 0xfa109
mov dx, word [bp-006h] ; 8b 56 fa ; 0xfa10c
mov ax, di ; 89 f8 ; 0xfa10f
call 0ab8fh ; e8 7b 0a ; 0xfa111
les ax, [bp-00ah] ; c4 46 f6 ; 0xfa114 buslogic.c:246
mov word [es:si+01ch], ax ; 26 89 44 1c ; 0xfa117
mov ax, si ; 89 f0 ; 0xfa11b buslogic.c:247
mov dx, es ; 8c c2 ; 0xfa11d
call 0a0bbh ; e8 99 ff ; 0xfa11f
jmp short 0a127h ; eb 03 ; 0xfa122
mov ax, strict word 00001h ; b8 01 00 ; 0xfa124 buslogic.c:252
lea sp, [bp-004h] ; 8d 66 fc ; 0xfa127 buslogic.c:253
pop di ; 5f ; 0xfa12a
pop si ; 5e ; 0xfa12b
pop bp ; 5d ; 0xfa12c
retn ; c3 ; 0xfa12d
; disGetNextSymbol 0xfa12e LB 0xcee -> off=0x0 cb=0000000000000024 uValue=00000000000f8b2e 'btaha_scsi_init'
btaha_scsi_init: ; 0xfa12e LB 0x24
push bp ; 55 ; 0xfa12e buslogic.c:259
mov bp, sp ; 89 e5 ; 0xfa12f
push si ; 56 ; 0xfa131
mov si, ax ; 89 c6 ; 0xfa132
mov es, dx ; 8e c2 ; 0xfa134
movzx dx, bl ; 0f b6 d3 ; 0xfa136 buslogic.c:263
sal dx, 008h ; c1 e2 08 ; 0xfa139
movzx ax, cl ; 0f b6 c1 ; 0xfa13c
or dx, ax ; 09 c2 ; 0xfa13f
mov word [es:si+01ch], dx ; 26 89 54 1c ; 0xfa141
mov ax, si ; 89 f0 ; 0xfa145 buslogic.c:266
mov dx, es ; 8c c2 ; 0xfa147
call 0a0bbh ; e8 6f ff ; 0xfa149
lea sp, [bp-002h] ; 8d 66 fe ; 0xfa14c buslogic.c:267
pop si ; 5e ; 0xfa14f
pop bp ; 5d ; 0xfa150
retn ; c3 ; 0xfa151
; disGetNextSymbol 0xfa152 LB 0xcca -> off=0x0 cb=0000000000000055 uValue=00000000000f8b52 'btaha_scsi_detect'
btaha_scsi_detect: ; 0xfa152 LB 0x55
push bp ; 55 ; 0xfa152 buslogic.c:272
mov bp, sp ; 89 e5 ; 0xfa153
push bx ; 53 ; 0xfa155
push cx ; 51 ; 0xfa156
push dx ; 52 ; 0xfa157
push si ; 56 ; 0xfa158
push di ; 57 ; 0xfa159
sub sp, strict byte 00006h ; 83 ec 06 ; 0xfa15a
push SS ; 16 ; 0xfa15d buslogic.c:274
pop ES ; 07 ; 0xfa15e
lea di, [bp-010h] ; 8d 7e f0 ; 0xfa15f
mov si, 000d6h ; be d6 00 ; 0xfa162
movsw ; a5 ; 0xfa165
movsw ; a5 ; 0xfa166
movsw ; a5 ; 0xfa167
xor cx, cx ; 31 c9 ; 0xfa168 buslogic.c:279
mov bx, word [bp-010h] ; 8b 5e f0 ; 0xfa16a
test bx, bx ; 85 db ; 0xfa16d
je short 0a192h ; 74 21 ; 0xfa16f
mov dx, bx ; 89 da ; 0xfa171 buslogic.c:284
in AL, DX ; ec ; 0xfa173
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xfa174
cmp AL, strict byte 030h ; 3c 30 ; 0xfa176 buslogic.c:285
je short 0a17eh ; 74 04 ; 0xfa178
cmp AL, strict byte 010h ; 3c 10 ; 0xfa17a
jne short 0a188h ; 75 0a ; 0xfa17c
lea dx, [bx+003h] ; 8d 57 03 ; 0xfa17e buslogic.c:303
in AL, DX ; ec ; 0xfa181
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xfa182
test AL, strict byte 040h ; a8 40 ; 0xfa184 buslogic.c:304
jne short 0a192h ; 75 0a ; 0xfa186
inc cx ; 41 ; 0xfa188 buslogic.c:309
mov si, cx ; 89 ce ; 0xfa189
add si, cx ; 01 ce ; 0xfa18b
mov bx, word [bp+si-010h] ; 8b 5a f0 ; 0xfa18d
jmp short 0a16dh ; eb db ; 0xfa190
test bx, bx ; 85 db ; 0xfa192 buslogic.c:311
je short 0a19ah ; 74 04 ; 0xfa194
mov ax, bx ; 89 d8 ; 0xfa196
jmp short 0a19dh ; eb 03 ; 0xfa198
mov ax, strict word 0ffffh ; b8 ff ff ; 0xfa19a
lea sp, [bp-00ah] ; 8d 66 f6 ; 0xfa19d buslogic.c:312
pop di ; 5f ; 0xfa1a0
pop si ; 5e ; 0xfa1a1
pop dx ; 5a ; 0xfa1a2
pop cx ; 59 ; 0xfa1a3
pop bx ; 5b ; 0xfa1a4
pop bp ; 5d ; 0xfa1a5
retn ; c3 ; 0xfa1a6
; disGetNextSymbol 0xfa1a7 LB 0xc75 -> off=0x0 cb=000000000000001e uValue=00000000000f8ba7 'lsilogic_addr_to_phys'
lsilogic_addr_to_phys: ; 0xfa1a7 LB 0x1e
push bx ; 53 ; 0xfa1a7 lsilogic.c:331
push cx ; 51 ; 0xfa1a8
push bp ; 55 ; 0xfa1a9
mov bp, sp ; 89 e5 ; 0xfa1aa
mov bx, ax ; 89 c3 ; 0xfa1ac
mov ax, dx ; 89 d0 ; 0xfa1ae
xor dx, dx ; 31 d2 ; 0xfa1b0 lsilogic.c:333
mov cx, strict word 00004h ; b9 04 00 ; 0xfa1b2
sal ax, 1 ; d1 e0 ; 0xfa1b5
rcl dx, 1 ; d1 d2 ; 0xfa1b7
loop 0a1b5h ; e2 fa ; 0xfa1b9
xor cx, cx ; 31 c9 ; 0xfa1bb
add ax, bx ; 01 d8 ; 0xfa1bd
adc dx, cx ; 11 ca ; 0xfa1bf
pop bp ; 5d ; 0xfa1c1 lsilogic.c:334
pop cx ; 59 ; 0xfa1c2
pop bx ; 5b ; 0xfa1c3
retn ; c3 ; 0xfa1c4
; disGetNextSymbol 0xfa1c5 LB 0xc57 -> off=0x0 cb=00000000000000f6 uValue=00000000000f8bc5 'lsilogic_cmd'
lsilogic_cmd: ; 0xfa1c5 LB 0xf6
push bp ; 55 ; 0xfa1c5 lsilogic.c:336
mov bp, sp ; 89 e5 ; 0xfa1c6
push si ; 56 ; 0xfa1c8
push di ; 57 ; 0xfa1c9
sub sp, strict byte 00010h ; 83 ec 10 ; 0xfa1ca
mov si, ax ; 89 c6 ; 0xfa1cd
mov word [bp-006h], dx ; 89 56 fa ; 0xfa1cf
mov word [bp-00ah], bx ; 89 5e f6 ; 0xfa1d2 lsilogic.c:340
mov word [bp-014h], cx ; 89 4e ec ; 0xfa1d5
mov [bp-00ch], ds ; 8c 5e f4 ; 0xfa1d8 lsilogic.c:341
mov ax, word [bp+006h] ; 8b 46 06 ; 0xfa1db
mov word [bp-012h], ax ; 89 46 ee ; 0xfa1de
mov ax, word [bp+004h] ; 8b 46 04 ; 0xfa1e1 lsilogic.c:342
shr ax, 002h ; c1 e8 02 ; 0xfa1e4
mov word [bp-00eh], ax ; 89 46 f2 ; 0xfa1e7
mov word [bp-008h], strict word 00000h ; c7 46 f8 00 00 ; 0xfa1ea
mov dx, word [bp+00ah] ; 8b 56 0a ; 0xfa1ef lsilogic.c:343
shr dx, 1 ; d1 ea ; 0xfa1f2
mov word [bp-010h], dx ; 89 56 f0 ; 0xfa1f4
or ah, 042h ; 80 cc 42 ; 0xfa1f7 lsilogic.c:344
mov cx, ax ; 89 c1 ; 0xfa1fa
test byte [bp+004h], 003h ; f6 46 04 03 ; 0xfa1fc lsilogic.c:346
jne short 0a208h ; 75 06 ; 0xfa200
test byte [bp+00ah], 001h ; f6 46 0a 01 ; 0xfa202
je short 0a20eh ; 74 06 ; 0xfa206
mov ax, strict word 00001h ; b8 01 00 ; 0xfa208 lsilogic.c:348
jmp near 0a2b2h ; e9 a4 00 ; 0xfa20b
mov es, [bp-006h] ; 8e 46 fa ; 0xfa20e lsilogic.c:350
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa211
xor ax, ax ; 31 c0 ; 0xfa216
xchg cx, ax ; 91 ; 0xfa218
sal eax, 010h ; 66 c1 e0 10 ; 0xfa219
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa21d
out DX, eax ; 66 ef ; 0xfa21f
xor bx, bx ; 31 db ; 0xfa221 lsilogic.c:351
mov ax, word [bp-008h] ; 8b 46 f8 ; 0xfa223
test ax, ax ; 85 c0 ; 0xfa226
jnbe short 0a231h ; 77 07 ; 0xfa228
jne short 0a257h ; 75 2b ; 0xfa22a
cmp bx, word [bp-00eh] ; 3b 5e f2 ; 0xfa22c
jnc short 0a257h ; 73 26 ; 0xfa22f
mov di, bx ; 89 df ; 0xfa231 lsilogic.c:352
sal di, 002h ; c1 e7 02 ; 0xfa233
mov es, [bp-014h] ; 8e 46 ec ; 0xfa236
add di, word [bp-00ah] ; 03 7e f6 ; 0xfa239
mov ax, word [es:di] ; 26 8b 05 ; 0xfa23c
mov cx, word [es:di+002h] ; 26 8b 4d 02 ; 0xfa23f
mov es, [bp-006h] ; 8e 46 fa ; 0xfa243
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa246
xchg cx, ax ; 91 ; 0xfa24b
sal eax, 010h ; 66 c1 e0 10 ; 0xfa24c
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa250
out DX, eax ; 66 ef ; 0xfa252
inc bx ; 43 ; 0xfa254
jmp short 0a223h ; eb cc ; 0xfa255
xor bx, bx ; 31 db ; 0xfa257 lsilogic.c:354
cmp bx, word [bp-010h] ; 3b 5e f0 ; 0xfa259
jnc short 0a2b0h ; 73 52 ; 0xfa25c
mov es, [bp-006h] ; 8e 46 fa ; 0xfa25e lsilogic.c:357
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa261
add dx, strict byte 00030h ; 83 c2 30 ; 0xfa266
in eax, DX ; 66 ed ; 0xfa269
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfa26b
shr eax, 010h ; 66 c1 e8 10 ; 0xfa26d
xchg dx, ax ; 92 ; 0xfa271
test AL, strict byte 001h ; a8 01 ; 0xfa272
je short 0a25eh ; 74 e8 ; 0xfa274
mov es, [bp-006h] ; 8e 46 fa ; 0xfa276 lsilogic.c:359
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa279
in eax, DX ; 66 ed ; 0xfa27e
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfa280
shr eax, 010h ; 66 c1 e8 10 ; 0xfa282
xchg dx, ax ; 92 ; 0xfa286
mov di, bx ; 89 df ; 0xfa287
add di, bx ; 01 df ; 0xfa289
mov es, [bp-00ch] ; 8e 46 f4 ; 0xfa28b
add di, word [bp-012h] ; 03 7e ee ; 0xfa28e
mov word [es:di], ax ; 26 89 05 ; 0xfa291
mov es, [bp-006h] ; 8e 46 fa ; 0xfa294 lsilogic.c:360
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa297
add dx, strict byte 00030h ; 83 c2 30 ; 0xfa29c
mov ax, strict word 00001h ; b8 01 00 ; 0xfa29f
xor cx, cx ; 31 c9 ; 0xfa2a2
xchg cx, ax ; 91 ; 0xfa2a4
sal eax, 010h ; 66 c1 e0 10 ; 0xfa2a5
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa2a9
out DX, eax ; 66 ef ; 0xfa2ab
inc bx ; 43 ; 0xfa2ad lsilogic.c:361
jmp short 0a259h ; eb a9 ; 0xfa2ae
xor ax, ax ; 31 c0 ; 0xfa2b0 lsilogic.c:363
lea sp, [bp-004h] ; 8d 66 fc ; 0xfa2b2 lsilogic.c:364
pop di ; 5f ; 0xfa2b5
pop si ; 5e ; 0xfa2b6
pop bp ; 5d ; 0xfa2b7
retn 00008h ; c2 08 00 ; 0xfa2b8
; disGetNextSymbol 0xfa2bb LB 0xb61 -> off=0x0 cb=00000000000000d7 uValue=00000000000f8cbb 'lsilogic_scsi_cmd_exec'
lsilogic_scsi_cmd_exec: ; 0xfa2bb LB 0xd7
push bp ; 55 ; 0xfa2bb lsilogic.c:366
mov bp, sp ; 89 e5 ; 0xfa2bc
push bx ; 53 ; 0xfa2be
push cx ; 51 ; 0xfa2bf
push si ; 56 ; 0xfa2c0
push di ; 57 ; 0xfa2c1
push ax ; 50 ; 0xfa2c2
mov bx, ax ; 89 c3 ; 0xfa2c3
mov word [bp-00ah], dx ; 89 56 f6 ; 0xfa2c5
call 0a1a7h ; e8 dc fe ; 0xfa2c8 lsilogic.c:372
mov cx, dx ; 89 d1 ; 0xfa2cb
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa2cd
mov dx, word [es:bx+000b8h] ; 26 8b 97 b8 00 ; 0xfa2d0
add dx, strict byte 00040h ; 83 c2 40 ; 0xfa2d5
xchg cx, ax ; 91 ; 0xfa2d8
sal eax, 010h ; 66 c1 e0 10 ; 0xfa2d9
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa2dd
out DX, eax ; 66 ef ; 0xfa2df
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa2e1 lsilogic.c:375
mov dx, word [es:bx+000b8h] ; 26 8b 97 b8 00 ; 0xfa2e4
add dx, strict byte 00030h ; 83 c2 30 ; 0xfa2e9
in eax, DX ; 66 ed ; 0xfa2ec
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfa2ee
shr eax, 010h ; 66 c1 e8 10 ; 0xfa2f0
xchg dx, ax ; 92 ; 0xfa2f4
test AL, strict byte 008h ; a8 08 ; 0xfa2f5
je short 0a2e1h ; 74 e8 ; 0xfa2f7
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa2f9 lsilogic.c:377
mov dx, word [es:bx+000b8h] ; 26 8b 97 b8 00 ; 0xfa2fc
add dx, strict byte 00030h ; 83 c2 30 ; 0xfa301
mov ax, strict word 00001h ; b8 01 00 ; 0xfa304
xor cx, cx ; 31 c9 ; 0xfa307
xchg cx, ax ; 91 ; 0xfa309
sal eax, 010h ; 66 c1 e0 10 ; 0xfa30a
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa30e
out DX, eax ; 66 ef ; 0xfa310
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa312 lsilogic.c:380
mov dx, word [es:bx+000b8h] ; 26 8b 97 b8 00 ; 0xfa315
add dx, strict byte 00044h ; 83 c2 44 ; 0xfa31a
in eax, DX ; 66 ed ; 0xfa31d
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfa31f
shr eax, 010h ; 66 c1 e8 10 ; 0xfa321
xchg dx, ax ; 92 ; 0xfa325
mov cx, dx ; 89 d1 ; 0xfa326
mov di, ax ; 89 c7 ; 0xfa328
mov si, dx ; 89 d6 ; 0xfa32a
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa32c lsilogic.c:381
mov dx, word [es:bx+000b8h] ; 26 8b 97 b8 00 ; 0xfa32f
add dx, strict byte 00044h ; 83 c2 44 ; 0xfa334
in eax, DX ; 66 ed ; 0xfa337
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfa339
shr eax, 010h ; 66 c1 e8 10 ; 0xfa33b
xchg dx, ax ; 92 ; 0xfa33f
cmp dx, strict byte 0ffffh ; 83 fa ff ; 0xfa340 lsilogic.c:382
jne short 0a34ah ; 75 05 ; 0xfa343
cmp ax, strict word 0ffffh ; 3d ff ff ; 0xfa345
je short 0a34fh ; 74 05 ; 0xfa348
mov ax, strict word 00005h ; b8 05 00 ; 0xfa34a lsilogic.c:383
jmp short 0a389h ; eb 3a ; 0xfa34d
test ch, 080h ; f6 c5 80 ; 0xfa34f lsilogic.c:384
je short 0a378h ; 74 24 ; 0xfa352
lea ax, [bx+038h] ; 8d 47 38 ; 0xfa354 lsilogic.c:392
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xfa357
call 0a1a7h ; e8 4a fe ; 0xfa35a
mov cx, dx ; 89 d1 ; 0xfa35d
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa35f
mov dx, word [es:bx+000b8h] ; 26 8b 97 b8 00 ; 0xfa362
add dx, strict byte 00044h ; 83 c2 44 ; 0xfa367
xchg cx, ax ; 91 ; 0xfa36a
sal eax, 010h ; 66 c1 e0 10 ; 0xfa36b
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa36f
out DX, eax ; 66 ef ; 0xfa371
mov ax, strict word 00004h ; b8 04 00 ; 0xfa373 lsilogic.c:393
jmp short 0a389h ; eb 11 ; 0xfa376
test si, si ; 85 f6 ; 0xfa378 lsilogic.c:396
jne short 0a382h ; 75 06 ; 0xfa37a
cmp di, 0cafeh ; 81 ff fe ca ; 0xfa37c
je short 0a387h ; 74 05 ; 0xfa380
mov ax, strict word 00003h ; b8 03 00 ; 0xfa382 lsilogic.c:397
jmp short 0a389h ; eb 02 ; 0xfa385
xor ax, ax ; 31 c0 ; 0xfa387 lsilogic.c:399
lea sp, [bp-008h] ; 8d 66 f8 ; 0xfa389 lsilogic.c:400
pop di ; 5f ; 0xfa38c
pop si ; 5e ; 0xfa38d
pop cx ; 59 ; 0xfa38e
pop bx ; 5b ; 0xfa38f
pop bp ; 5d ; 0xfa390
retn ; c3 ; 0xfa391
; disGetNextSymbol 0xfa392 LB 0xa8a -> off=0x0 cb=00000000000000d6 uValue=00000000000f8d92 'lsilogic_scsi_cmd_data_out'
lsilogic_scsi_cmd_data_out: ; 0xfa392 LB 0xd6
push bp ; 55 ; 0xfa392 lsilogic.c:402
mov bp, sp ; 89 e5 ; 0xfa393
push cx ; 51 ; 0xfa395
push si ; 56 ; 0xfa396
push di ; 57 ; 0xfa397
sub sp, strict byte 00006h ; 83 ec 06 ; 0xfa398
mov di, ax ; 89 c7 ; 0xfa39b
mov word [bp-00ah], dx ; 89 56 f6 ; 0xfa39d
mov byte [bp-008h], bl ; 88 5e f8 ; 0xfa3a0
mov si, ax ; 89 c6 ; 0xfa3a3 lsilogic.c:405
mov word [bp-00ch], dx ; 89 56 f4 ; 0xfa3a5
mov cx, strict word 00030h ; b9 30 00 ; 0xfa3a8 lsilogic.c:408
xor bx, bx ; 31 db ; 0xfa3ab
call 0ad80h ; e8 d0 09 ; 0xfa3ad
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xfa3b0 lsilogic.c:410
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa3b3
mov byte [es:di], al ; 26 88 05 ; 0xfa3b6
mov word [es:di+001h], strict word 00000h ; 26 c7 45 01 00 00 ; 0xfa3b9 lsilogic.c:411
mov byte [es:di+003h], 000h ; 26 c6 45 03 00 ; 0xfa3bf lsilogic.c:413
mov al, byte [bp+008h] ; 8a 46 08 ; 0xfa3c4 lsilogic.c:414
mov byte [es:di+004h], al ; 26 88 45 04 ; 0xfa3c7
mov byte [es:di+005h], 000h ; 26 c6 45 05 00 ; 0xfa3cb lsilogic.c:415
db 066h, 026h, 0c7h, 045h, 008h, 0feh, 0cah, 000h, 000h
; mov dword [es:di+008h], strict dword 00000cafeh ; 66 26 c7 45 08 fe ca 00 00; 0xfa3d0 lsilogic.c:416
db 066h, 026h, 0c7h, 045h, 014h, 000h, 000h, 000h, 001h
; mov dword [es:di+014h], strict dword 001000000h ; 66 26 c7 45 14 00 00 00 01; 0xfa3d9 lsilogic.c:417
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xfa3e2 lsilogic.c:418
mov word [es:di+028h], ax ; 26 89 45 28 ; 0xfa3e5
mov ax, word [bp+010h] ; 8b 46 10 ; 0xfa3e9
mov word [es:di+02ah], ax ; 26 89 45 2a ; 0xfa3ec
xor di, di ; 31 ff ; 0xfa3f0 lsilogic.c:419
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xfa3f2
cmp di, ax ; 39 c7 ; 0xfa3f6
jnl short 0a414h ; 7d 1a ; 0xfa3f8
les bx, [bp+004h] ; c4 5e 04 ; 0xfa3fa lsilogic.c:420
add bx, di ; 01 fb ; 0xfa3fd
mov cx, word [bp-00ch] ; 8b 4e f4 ; 0xfa3ff
mov dx, si ; 89 f2 ; 0xfa402
add dx, di ; 01 fa ; 0xfa404
mov al, byte [es:bx] ; 26 8a 07 ; 0xfa406
mov es, cx ; 8e c1 ; 0xfa409
mov bx, dx ; 89 d3 ; 0xfa40b
mov byte [es:bx+018h], al ; 26 88 47 18 ; 0xfa40d
inc di ; 47 ; 0xfa411
jmp short 0a3f2h ; eb de ; 0xfa412
mov ax, word [bp+010h] ; 8b 46 10 ; 0xfa414 lsilogic.c:422
xor ah, ah ; 30 e4 ; 0xfa417
mov es, [bp-00ch] ; 8e 46 f4 ; 0xfa419
mov word [es:si+030h], strict word 00000h ; 26 c7 44 30 00 00 ; 0xfa41c
mov byte [es:si+032h], ah ; 26 88 64 32 ; 0xfa422
mov dx, word [bp+00eh] ; 8b 56 0e ; 0xfa426
or word [es:si+030h], dx ; 26 09 54 30 ; 0xfa429
or word [es:si+032h], ax ; 26 09 44 32 ; 0xfa42d
mov byte [es:si+033h], ah ; 26 88 64 33 ; 0xfa431 lsilogic.c:423
or byte [es:si+033h], 0d1h ; 26 80 4c 33 d1 ; 0xfa435
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xfa43a lsilogic.c:430
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xfa43d
call 0a1a7h ; e8 64 fd ; 0xfa440
mov es, [bp-00ch] ; 8e 46 f4 ; 0xfa443
db 066h, 026h, 0c7h, 044h, 034h, 000h, 000h, 000h, 000h
; mov dword [es:si+034h], strict dword 000000000h ; 66 26 c7 44 34 00 00 00 00; 0xfa446
or word [es:si+034h], ax ; 26 09 44 34 ; 0xfa44f
or word [es:si+036h], dx ; 26 09 54 36 ; 0xfa453
mov ax, si ; 89 f0 ; 0xfa457 lsilogic.c:432
mov dx, es ; 8c c2 ; 0xfa459
call 0a2bbh ; e8 5d fe ; 0xfa45b
lea sp, [bp-006h] ; 8d 66 fa ; 0xfa45e lsilogic.c:433
pop di ; 5f ; 0xfa461
pop si ; 5e ; 0xfa462
pop cx ; 59 ; 0xfa463
pop bp ; 5d ; 0xfa464
retn 0000eh ; c2 0e 00 ; 0xfa465
; disGetNextSymbol 0xfa468 LB 0x9b4 -> off=0x0 cb=00000000000000d6 uValue=00000000000f8e68 'lsilogic_scsi_cmd_data_in'
lsilogic_scsi_cmd_data_in: ; 0xfa468 LB 0xd6
push bp ; 55 ; 0xfa468 lsilogic.c:435
mov bp, sp ; 89 e5 ; 0xfa469
push cx ; 51 ; 0xfa46b
push si ; 56 ; 0xfa46c
push di ; 57 ; 0xfa46d
sub sp, strict byte 00006h ; 83 ec 06 ; 0xfa46e
mov di, ax ; 89 c7 ; 0xfa471
mov word [bp-00ah], dx ; 89 56 f6 ; 0xfa473
mov byte [bp-008h], bl ; 88 5e f8 ; 0xfa476
mov si, ax ; 89 c6 ; 0xfa479 lsilogic.c:438
mov word [bp-00ch], dx ; 89 56 f4 ; 0xfa47b
mov cx, strict word 00030h ; b9 30 00 ; 0xfa47e lsilogic.c:441
xor bx, bx ; 31 db ; 0xfa481
call 0ad80h ; e8 fa 08 ; 0xfa483
mov al, byte [bp-008h] ; 8a 46 f8 ; 0xfa486 lsilogic.c:443
mov es, [bp-00ah] ; 8e 46 f6 ; 0xfa489
mov byte [es:di], al ; 26 88 05 ; 0xfa48c
mov word [es:di+001h], strict word 00000h ; 26 c7 45 01 00 00 ; 0xfa48f lsilogic.c:444
mov byte [es:di+003h], 000h ; 26 c6 45 03 00 ; 0xfa495 lsilogic.c:446
mov al, byte [bp+008h] ; 8a 46 08 ; 0xfa49a lsilogic.c:447
mov byte [es:di+004h], al ; 26 88 45 04 ; 0xfa49d
mov byte [es:di+005h], 000h ; 26 c6 45 05 00 ; 0xfa4a1 lsilogic.c:448
db 066h, 026h, 0c7h, 045h, 008h, 0feh, 0cah, 000h, 000h
; mov dword [es:di+008h], strict dword 00000cafeh ; 66 26 c7 45 08 fe ca 00 00; 0xfa4a6 lsilogic.c:449
db 066h, 026h, 0c7h, 045h, 014h, 000h, 000h, 000h, 002h
; mov dword [es:di+014h], strict dword 002000000h ; 66 26 c7 45 14 00 00 00 02; 0xfa4af lsilogic.c:450
mov ax, word [bp+00eh] ; 8b 46 0e ; 0xfa4b8 lsilogic.c:451
mov word [es:di+028h], ax ; 26 89 45 28 ; 0xfa4bb
mov ax, word [bp+010h] ; 8b 46 10 ; 0xfa4bf
mov word [es:di+02ah], ax ; 26 89 45 2a ; 0xfa4c2
xor di, di ; 31 ff ; 0xfa4c6 lsilogic.c:452
movzx ax, byte [bp+008h] ; 0f b6 46 08 ; 0xfa4c8
cmp di, ax ; 39 c7 ; 0xfa4cc
jnl short 0a4eah ; 7d 1a ; 0xfa4ce
les bx, [bp+004h] ; c4 5e 04 ; 0xfa4d0 lsilogic.c:453
add bx, di ; 01 fb ; 0xfa4d3
mov cx, word [bp-00ch] ; 8b 4e f4 ; 0xfa4d5
mov dx, si ; 89 f2 ; 0xfa4d8
add dx, di ; 01 fa ; 0xfa4da
mov al, byte [es:bx] ; 26 8a 07 ; 0xfa4dc
mov es, cx ; 8e c1 ; 0xfa4df
mov bx, dx ; 89 d3 ; 0xfa4e1
mov byte [es:bx+018h], al ; 26 88 47 18 ; 0xfa4e3
inc di ; 47 ; 0xfa4e7
jmp short 0a4c8h ; eb de ; 0xfa4e8
mov ax, word [bp+010h] ; 8b 46 10 ; 0xfa4ea lsilogic.c:455
xor ah, ah ; 30 e4 ; 0xfa4ed
mov es, [bp-00ch] ; 8e 46 f4 ; 0xfa4ef
mov word [es:si+030h], strict word 00000h ; 26 c7 44 30 00 00 ; 0xfa4f2
mov byte [es:si+032h], ah ; 26 88 64 32 ; 0xfa4f8
mov dx, word [bp+00eh] ; 8b 56 0e ; 0xfa4fc
or word [es:si+030h], dx ; 26 09 54 30 ; 0xfa4ff
or word [es:si+032h], ax ; 26 09 44 32 ; 0xfa503
mov byte [es:si+033h], ah ; 26 88 64 33 ; 0xfa507 lsilogic.c:456
or byte [es:si+033h], 0d1h ; 26 80 4c 33 d1 ; 0xfa50b
mov ax, word [bp+00ah] ; 8b 46 0a ; 0xfa510 lsilogic.c:463
mov dx, word [bp+00ch] ; 8b 56 0c ; 0xfa513
call 0a1a7h ; e8 8e fc ; 0xfa516
mov es, [bp-00ch] ; 8e 46 f4 ; 0xfa519
db 066h, 026h, 0c7h, 044h, 034h, 000h, 000h, 000h, 000h
; mov dword [es:si+034h], strict dword 000000000h ; 66 26 c7 44 34 00 00 00 00; 0xfa51c
or word [es:si+034h], ax ; 26 09 44 34 ; 0xfa525
or word [es:si+036h], dx ; 26 09 54 36 ; 0xfa529
mov ax, si ; 89 f0 ; 0xfa52d lsilogic.c:465
mov dx, es ; 8c c2 ; 0xfa52f
call 0a2bbh ; e8 87 fd ; 0xfa531
lea sp, [bp-006h] ; 8d 66 fa ; 0xfa534 lsilogic.c:466
pop di ; 5f ; 0xfa537
pop si ; 5e ; 0xfa538
pop cx ; 59 ; 0xfa539
pop bp ; 5d ; 0xfa53a
retn 0000eh ; c2 0e 00 ; 0xfa53b
; disGetNextSymbol 0xfa53e LB 0x8de -> off=0x0 cb=00000000000000f1 uValue=00000000000f8f3e 'lsilogic_scsi_hba_init'
lsilogic_scsi_hba_init: ; 0xfa53e LB 0xf1
push bp ; 55 ; 0xfa53e lsilogic.c:471
mov bp, sp ; 89 e5 ; 0xfa53f
push bx ; 53 ; 0xfa541
push cx ; 51 ; 0xfa542
push si ; 56 ; 0xfa543
push di ; 57 ; 0xfa544
sub sp, strict byte 0002ch ; 83 ec 2c ; 0xfa545
mov si, ax ; 89 c6 ; 0xfa548
mov di, dx ; 89 d7 ; 0xfa54a
mov es, dx ; 8e c2 ; 0xfa54c lsilogic.c:483
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa54e
add dx, strict byte 00004h ; 83 c2 04 ; 0xfa553
mov ax, strict word 00004h ; b8 04 00 ; 0xfa556
xor cx, cx ; 31 c9 ; 0xfa559
xchg cx, ax ; 91 ; 0xfa55b
sal eax, 010h ; 66 c1 e0 10 ; 0xfa55c
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa560
out DX, eax ; 66 ef ; 0xfa562
mov es, di ; 8e c7 ; 0xfa564 lsilogic.c:484
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa566
add dx, strict byte 00004h ; 83 c2 04 ; 0xfa56b
mov ax, strict word 00002h ; b8 02 00 ; 0xfa56e
xor cx, cx ; 31 c9 ; 0xfa571
xchg cx, ax ; 91 ; 0xfa573
sal eax, 010h ; 66 c1 e0 10 ; 0xfa574
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa578
out DX, eax ; 66 ef ; 0xfa57a
mov es, di ; 8e c7 ; 0xfa57c lsilogic.c:485
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa57e
add dx, strict byte 00004h ; 83 c2 04 ; 0xfa583
mov ax, strict word 00007h ; b8 07 00 ; 0xfa586
xor cx, cx ; 31 c9 ; 0xfa589
xchg cx, ax ; 91 ; 0xfa58b
sal eax, 010h ; 66 c1 e0 10 ; 0xfa58c
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa590
out DX, eax ; 66 ef ; 0xfa592
mov es, di ; 8e c7 ; 0xfa594 lsilogic.c:486
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa596
add dx, strict byte 00004h ; 83 c2 04 ; 0xfa59b
mov ax, strict word 0000dh ; b8 0d 00 ; 0xfa59e
xor cx, cx ; 31 c9 ; 0xfa5a1
xchg cx, ax ; 91 ; 0xfa5a3
sal eax, 010h ; 66 c1 e0 10 ; 0xfa5a4
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa5a8
out DX, eax ; 66 ef ; 0xfa5aa
mov es, di ; 8e c7 ; 0xfa5ac lsilogic.c:487
mov dx, word [es:si+000b8h] ; 26 8b 94 b8 00 ; 0xfa5ae
add dx, strict byte 00008h ; 83 c2 08 ; 0xfa5b3
mov ax, strict word 00004h ; b8 04 00 ; 0xfa5b6
xor cx, cx ; 31 c9 ; 0xfa5b9
xchg cx, ax ; 91 ; 0xfa5bb
sal eax, 010h ; 66 c1 e0 10 ; 0xfa5bc
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa5c0
out DX, eax ; 66 ef ; 0xfa5c2
mov byte [bp-034h], 001h ; c6 46 cc 01 ; 0xfa5c4 lsilogic.c:489
mov byte [bp-031h], 002h ; c6 46 cf 02 ; 0xfa5c8 lsilogic.c:490
xor ax, ax ; 31 c0 ; 0xfa5cc lsilogic.c:491
mov word [bp-024h], ax ; 89 46 dc ; 0xfa5ce
mov word [bp-022h], ax ; 89 46 de ; 0xfa5d1
mov word [bp-020h], ax ; 89 46 e0 ; 0xfa5d4 lsilogic.c:492
mov word [bp-01eh], ax ; 89 46 e2 ; 0xfa5d7
mov byte [bp-02eh], 001h ; c6 46 d2 01 ; 0xfa5da lsilogic.c:493
mov byte [bp-02fh], 004h ; c6 46 d1 04 ; 0xfa5de lsilogic.c:494
mov word [bp-028h], 00080h ; c7 46 d8 80 00 ; 0xfa5e2 lsilogic.c:495
push strict byte 00014h ; 6a 14 ; 0xfa5e7 lsilogic.c:496
lea dx, [bp-01ch] ; 8d 56 e4 ; 0xfa5e9
push SS ; 16 ; 0xfa5ec
push dx ; 52 ; 0xfa5ed
push strict byte 00018h ; 6a 18 ; 0xfa5ee
mov cx, ss ; 8c d1 ; 0xfa5f0
lea bx, [bp-034h] ; 8d 5e cc ; 0xfa5f2
mov ax, si ; 89 f0 ; 0xfa5f5
mov dx, di ; 89 fa ; 0xfa5f7
call 0a1c5h ; e8 c9 fb ; 0xfa5f9
test ax, ax ; 85 c0 ; 0xfa5fc lsilogic.c:497
jne short 0a623h ; 75 23 ; 0xfa5fe
lea ax, [si+038h] ; 8d 44 38 ; 0xfa600 lsilogic.c:500
mov dx, di ; 89 fa ; 0xfa603
call 0a1a7h ; e8 9f fb ; 0xfa605
mov es, di ; 8e c7 ; 0xfa608
mov si, word [es:si+000b8h] ; 26 8b b4 b8 00 ; 0xfa60a
add si, strict byte 00044h ; 83 c6 44 ; 0xfa60f
mov cx, dx ; 89 d1 ; 0xfa612
mov dx, si ; 89 f2 ; 0xfa614
xchg cx, ax ; 91 ; 0xfa616
sal eax, 010h ; 66 c1 e0 10 ; 0xfa617
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfa61b
out DX, eax ; 66 ef ; 0xfa61d
xor ax, ax ; 31 c0 ; 0xfa61f lsilogic.c:501
jmp short 0a626h ; eb 03 ; 0xfa621
mov ax, strict word 00001h ; b8 01 00 ; 0xfa623 lsilogic.c:504
lea sp, [bp-008h] ; 8d 66 f8 ; 0xfa626 lsilogic.c:505
pop di ; 5f ; 0xfa629
pop si ; 5e ; 0xfa62a
pop cx ; 59 ; 0xfa62b
pop bx ; 5b ; 0xfa62c
pop bp ; 5d ; 0xfa62d
retn ; c3 ; 0xfa62e
; disGetNextSymbol 0xfa62f LB 0x7ed -> off=0x0 cb=0000000000000052 uValue=00000000000f902f 'lsilogic_scsi_init'
lsilogic_scsi_init: ; 0xfa62f LB 0x52
push bp ; 55 ; 0xfa62f lsilogic.c:510
mov bp, sp ; 89 e5 ; 0xfa630
push si ; 56 ; 0xfa632
push di ; 57 ; 0xfa633
sub sp, strict byte 00006h ; 83 ec 06 ; 0xfa634
mov si, ax ; 89 c6 ; 0xfa637
mov word [bp-008h], dx ; 89 56 f8 ; 0xfa639
movzx ax, cl ; 0f b6 c1 ; 0xfa63c lsilogic.c:517
mov word [bp-006h], ax ; 89 46 fa ; 0xfa63f
movzx di, bl ; 0f b6 fb ; 0xfa642
mov bx, strict word 00010h ; bb 10 00 ; 0xfa645
mov dx, ax ; 89 c2 ; 0xfa648
mov ax, di ; 89 f8 ; 0xfa64a
call 0ab68h ; e8 19 05 ; 0xfa64c
test AL, strict byte 001h ; a8 01 ; 0xfa64f lsilogic.c:521
je short 0a677h ; 74 24 ; 0xfa651
and AL, strict byte 0f0h ; 24 f0 ; 0xfa653 lsilogic.c:523
mov word [bp-00ah], ax ; 89 46 f6 ; 0xfa655
mov cx, strict word 00007h ; b9 07 00 ; 0xfa658 lsilogic.c:526
mov bx, strict word 00004h ; bb 04 00 ; 0xfa65b
mov dx, word [bp-006h] ; 8b 56 fa ; 0xfa65e
mov ax, di ; 89 f8 ; 0xfa661
call 0ab8fh ; e8 29 05 ; 0xfa663
les ax, [bp-00ah] ; c4 46 f6 ; 0xfa666 lsilogic.c:529
mov word [es:si+000b8h], ax ; 26 89 84 b8 00 ; 0xfa669
mov ax, si ; 89 f0 ; 0xfa66e lsilogic.c:530
mov dx, es ; 8c c2 ; 0xfa670
call 0a53eh ; e8 c9 fe ; 0xfa672
jmp short 0a67ah ; eb 03 ; 0xfa675
mov ax, strict word 00001h ; b8 01 00 ; 0xfa677 lsilogic.c:535
lea sp, [bp-004h] ; 8d 66 fc ; 0xfa67a lsilogic.c:536
pop di ; 5f ; 0xfa67d
pop si ; 5e ; 0xfa67e
pop bp ; 5d ; 0xfa67f
retn ; c3 ; 0xfa680
; disGetNextSymbol 0xfa681 LB 0x79b -> off=0x0 cb=0000000000000020 uValue=00000000000f9081 'apm_out_str'
apm_out_str: ; 0xfa681 LB 0x20
push bp ; 55 ; 0xfa681 apm.c:142
mov bp, sp ; 89 e5 ; 0xfa682
push bx ; 53 ; 0xfa684
push dx ; 52 ; 0xfa685
mov bx, ax ; 89 c3 ; 0xfa686
cmp byte [bx], 000h ; 80 3f 00 ; 0xfa688 apm.c:144
je short 0a69ah ; 74 0d ; 0xfa68b
mov dx, 0040fh ; ba 0f 04 ; 0xfa68d apm.c:145
mov al, byte [bx] ; 8a 07 ; 0xfa690
out DX, AL ; ee ; 0xfa692
inc bx ; 43 ; 0xfa693
mov al, byte [bx] ; 8a 07 ; 0xfa694
db 00ah, 0c0h
; or al, al ; 0a c0 ; 0xfa696
jne short 0a692h ; 75 f8 ; 0xfa698
lea sp, [bp-004h] ; 8d 66 fc ; 0xfa69a apm.c:146
pop dx ; 5a ; 0xfa69d
pop bx ; 5b ; 0xfa69e
pop bp ; 5d ; 0xfa69f
retn ; c3 ; 0xfa6a0
; disGetNextSymbol 0xfa6a1 LB 0x77b -> off=0x1e cb=00000000000000fb uValue=00000000000f90bf 'apm_function'
db 0e2h, 0a6h, 0b4h, 0a7h, 0f4h, 0a6h, 00fh, 0a7h, 0b4h, 0a7h, 03ah, 0a7h, 0b4h, 0a7h, 03fh, 0a7h
db 089h, 0a7h, 089h, 0a7h, 075h, 0a7h, 084h, 0a7h, 089h, 0a7h, 089h, 0a7h, 06eh, 0a7h
apm_function: ; 0xfa6bf LB 0xfb
push bp ; 55 ; 0xfa6bf apm.c:148
mov bp, sp ; 89 e5 ; 0xfa6c0
push si ; 56 ; 0xfa6c2
and byte [bp+018h], 0feh ; 80 66 18 fe ; 0xfa6c3 apm.c:152
mov ax, word [bp+012h] ; 8b 46 12 ; 0xfa6c7 apm.c:153
xor ah, ah ; 30 e4 ; 0xfa6ca
cmp ax, strict word 0000eh ; 3d 0e 00 ; 0xfa6cc
jnbe near 0a789h ; 0f 87 b6 00 ; 0xfa6cf
mov bx, ax ; 89 c3 ; 0xfa6d3
add bx, ax ; 01 c3 ; 0xfa6d5
mov si, word [bp+018h] ; 8b 76 18 ; 0xfa6d7
or si, strict byte 00001h ; 83 ce 01 ; 0xfa6da
jmp word [cs:bx-0595fh] ; 2e ff a7 a1 a6 ; 0xfa6dd
mov word [bp+012h], 00102h ; c7 46 12 02 01 ; 0xfa6e2 apm.c:155
mov word [bp+00ch], 0504dh ; c7 46 0c 4d 50 ; 0xfa6e7 apm.c:156
mov word [bp+010h], strict word 00003h ; c7 46 10 03 00 ; 0xfa6ec apm.c:157
jmp near 0a7b4h ; e9 c0 00 ; 0xfa6f1 apm.c:158
mov word [bp+012h], 0f000h ; c7 46 12 00 f0 ; 0xfa6f4 apm.c:168
mov word [bp+00ch], 0ae0bh ; c7 46 0c 0b ae ; 0xfa6f9 apm.c:169
mov word [bp+010h], 0f000h ; c7 46 10 00 f0 ; 0xfa6fe apm.c:170
mov ax, strict word 0fff0h ; b8 f0 ff ; 0xfa703 apm.c:171
mov word [bp+006h], ax ; 89 46 06 ; 0xfa706
mov word [bp+004h], ax ; 89 46 04 ; 0xfa709 apm.c:172
jmp near 0a7b4h ; e9 a5 00 ; 0xfa70c apm.c:173
mov word [bp+012h], 0f000h ; c7 46 12 00 f0 ; 0xfa70f apm.c:179
mov word [bp+00ch], 0da40h ; c7 46 0c 40 da ; 0xfa714 apm.c:180
mov ax, 0f000h ; b8 00 f0 ; 0xfa719 apm.c:181
mov word [bp+010h], ax ; 89 46 10 ; 0xfa71c
mov word [bp+00eh], ax ; 89 46 0e ; 0xfa71f apm.c:182
mov ax, strict word 0fff0h ; b8 f0 ff ; 0xfa722 apm.c:183
mov word [bp+006h], ax ; 89 46 06 ; 0xfa725
mov word [bp+004h], ax ; 89 46 04 ; 0xfa728 apm.c:184
xor bx, bx ; 31 db ; 0xfa72b apm.c:185
sal ebx, 010h ; 66 c1 e3 10 ; 0xfa72d
mov si, ax ; 89 c6 ; 0xfa731 apm.c:186
sal esi, 010h ; 66 c1 e6 10 ; 0xfa733
jmp near 0a7b4h ; e9 7a 00 ; 0xfa737 apm.c:187
sti ; fb ; 0xfa73a apm.c:190
hlt ; f4 ; 0xfa73b apm.c:191
jmp near 0a7b4h ; e9 75 00 ; 0xfa73c apm.c:192
cmp word [bp+010h], strict byte 00003h ; 83 7e 10 03 ; 0xfa73f apm.c:196
je short 0a75eh ; 74 19 ; 0xfa743
cmp word [bp+010h], strict byte 00002h ; 83 7e 10 02 ; 0xfa745
je short 0a759h ; 74 0e ; 0xfa749
cmp word [bp+010h], strict byte 00001h ; 83 7e 10 01 ; 0xfa74b
jne short 0a763h ; 75 12 ; 0xfa74f
mov ax, 00d86h ; b8 86 0d ; 0xfa751 apm.c:198
call 0a681h ; e8 2a ff ; 0xfa754
jmp short 0a7b4h ; eb 5b ; 0xfa757 apm.c:199
mov ax, 00d8eh ; b8 8e 0d ; 0xfa759 apm.c:201
jmp short 0a754h ; eb f6 ; 0xfa75c
mov ax, 00d96h ; b8 96 0d ; 0xfa75e apm.c:204
jmp short 0a754h ; eb f1 ; 0xfa761
or ah, 00ah ; 80 cc 0a ; 0xfa763 apm.c:207
mov word [bp+012h], ax ; 89 46 12 ; 0xfa766
mov word [bp+018h], si ; 89 76 18 ; 0xfa769 apm.c:208
jmp short 0a7b4h ; eb 46 ; 0xfa76c apm.c:210
mov word [bp+012h], 00102h ; c7 46 12 02 01 ; 0xfa76e apm.c:212
jmp short 0a7b4h ; eb 3f ; 0xfa773 apm.c:213
mov word [bp+00ch], 001ffh ; c7 46 0c ff 01 ; 0xfa775 apm.c:220
mov dword [bp+00eh], strict dword 080ffffffh ; 66 c7 46 0e ff ff ff 80 ; 0xfa77a apm.c:221
jmp short 0a7b4h ; eb 30 ; 0xfa782 apm.c:223
or ah, 080h ; 80 cc 80 ; 0xfa784 apm.c:226
jmp short 0a766h ; eb dd ; 0xfa787
mov bx, 00e16h ; bb 16 0e ; 0xfa789 apm.c:230
mov cx, ds ; 8c d9 ; 0xfa78c
mov ax, strict word 00004h ; b8 04 00 ; 0xfa78e
call 01a27h ; e8 93 72 ; 0xfa791
push word [bp+00ch] ; ff 76 0c ; 0xfa794
push word [bp+012h] ; ff 76 12 ; 0xfa797
push 00d9fh ; 68 9f 0d ; 0xfa79a
push strict byte 00004h ; 6a 04 ; 0xfa79d
call 01a68h ; e8 c6 72 ; 0xfa79f
add sp, strict byte 00008h ; 83 c4 08 ; 0xfa7a2
mov ax, word [bp+012h] ; 8b 46 12 ; 0xfa7a5 apm.c:231
xor ah, ah ; 30 e4 ; 0xfa7a8
or ah, 00ch ; 80 cc 0c ; 0xfa7aa
mov word [bp+012h], ax ; 89 46 12 ; 0xfa7ad
or byte [bp+018h], 001h ; 80 4e 18 01 ; 0xfa7b0 apm.c:232
lea sp, [bp-002h] ; 8d 66 fe ; 0xfa7b4 apm.c:234
pop si ; 5e ; 0xfa7b7
pop bp ; 5d ; 0xfa7b8
retn ; c3 ; 0xfa7b9
; disGetNextSymbol 0xfa7ba LB 0x662 -> off=0x0 cb=0000000000000024 uValue=00000000000f91ba 'pci16_select_reg'
pci16_select_reg: ; 0xfa7ba LB 0x24
push bp ; 55 ; 0xfa7ba pcibios.c:198
mov bp, sp ; 89 e5 ; 0xfa7bb
push bx ; 53 ; 0xfa7bd
and dl, 0fch ; 80 e2 fc ; 0xfa7be pcibios.c:200
mov bx, dx ; 89 d3 ; 0xfa7c1
mov dx, 00cf8h ; ba f8 0c ; 0xfa7c3
movzx eax, ax ; 66 0f b7 c0 ; 0xfa7c6
sal eax, 008h ; 66 c1 e0 08 ; 0xfa7ca
or eax, strict dword 080000000h ; 66 0d 00 00 00 80 ; 0xfa7ce
db 08ah, 0c3h
; mov al, bl ; 8a c3 ; 0xfa7d4
out DX, eax ; 66 ef ; 0xfa7d6
lea sp, [bp-002h] ; 8d 66 fe ; 0xfa7d8 pcibios.c:201
pop bx ; 5b ; 0xfa7db
pop bp ; 5d ; 0xfa7dc
retn ; c3 ; 0xfa7dd
; disGetNextSymbol 0xfa7de LB 0x63e -> off=0x0 cb=00000000000000f3 uValue=00000000000f91de 'pci16_find_device'
pci16_find_device: ; 0xfa7de LB 0xf3
push bp ; 55 ; 0xfa7de pcibios.c:233
mov bp, sp ; 89 e5 ; 0xfa7df
push si ; 56 ; 0xfa7e1
push di ; 57 ; 0xfa7e2
sub sp, strict byte 0000ah ; 83 ec 0a ; 0xfa7e3
push ax ; 50 ; 0xfa7e6
push dx ; 52 ; 0xfa7e7
mov si, bx ; 89 de ; 0xfa7e8
mov di, cx ; 89 cf ; 0xfa7ea
test cx, cx ; 85 c9 ; 0xfa7ec pcibios.c:243
xor bx, bx ; 31 db ; 0xfa7ee pcibios.c:250
mov byte [bp-008h], 000h ; c6 46 f8 00 ; 0xfa7f0 pcibios.c:251
test bl, 007h ; f6 c3 07 ; 0xfa7f4 pcibios.c:261
jne short 0a826h ; 75 2d ; 0xfa7f7
mov dx, strict word 0000eh ; ba 0e 00 ; 0xfa7f9 pcibios.c:262
mov ax, bx ; 89 d8 ; 0xfa7fc
call 0a7bah ; e8 b9 ff ; 0xfa7fe
mov dx, 00cfeh ; ba fe 0c ; 0xfa801 pcibios.c:263
in AL, DX ; ec ; 0xfa804
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xfa805
mov byte [bp-006h], al ; 88 46 fa ; 0xfa807
cmp AL, strict byte 0ffh ; 3c ff ; 0xfa80a pcibios.c:264
jne short 0a814h ; 75 06 ; 0xfa80c
add bx, strict byte 00008h ; 83 c3 08 ; 0xfa80e pcibios.c:265
jmp near 0a8adh ; e9 99 00 ; 0xfa811 pcibios.c:266
test byte [bp-006h], 080h ; f6 46 fa 80 ; 0xfa814 pcibios.c:268
je short 0a821h ; 74 07 ; 0xfa818
mov word [bp-00ch], strict word 00001h ; c7 46 f4 01 00 ; 0xfa81a pcibios.c:269
jmp short 0a826h ; eb 05 ; 0xfa81f pcibios.c:270
mov word [bp-00ch], strict word 00008h ; c7 46 f4 08 00 ; 0xfa821 pcibios.c:271
mov al, byte [bp-006h] ; 8a 46 fa ; 0xfa826 pcibios.c:282
and AL, strict byte 007h ; 24 07 ; 0xfa829
cmp AL, strict byte 001h ; 3c 01 ; 0xfa82b
jne short 0a84eh ; 75 1f ; 0xfa82d
mov ax, bx ; 89 d8 ; 0xfa82f
shr ax, 008h ; c1 e8 08 ; 0xfa831
test ax, ax ; 85 c0 ; 0xfa834
jne short 0a84eh ; 75 16 ; 0xfa836
mov dx, strict word 0001ah ; ba 1a 00 ; 0xfa838 pcibios.c:284
mov ax, bx ; 89 d8 ; 0xfa83b
call 0a7bah ; e8 7a ff ; 0xfa83d
mov dx, 00cfeh ; ba fe 0c ; 0xfa840 pcibios.c:285
in AL, DX ; ec ; 0xfa843
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xfa844
cmp al, byte [bp-008h] ; 3a 46 f8 ; 0xfa846 pcibios.c:286
jbe short 0a84eh ; 76 03 ; 0xfa849
mov byte [bp-008h], al ; 88 46 f8 ; 0xfa84b pcibios.c:287
test di, di ; 85 ff ; 0xfa84e pcibios.c:291
je short 0a857h ; 74 05 ; 0xfa850
mov dx, strict word 00008h ; ba 08 00 ; 0xfa852
jmp short 0a859h ; eb 02 ; 0xfa855
xor dx, dx ; 31 d2 ; 0xfa857
mov ax, bx ; 89 d8 ; 0xfa859
call 0a7bah ; e8 5c ff ; 0xfa85b
mov dx, 00cfch ; ba fc 0c ; 0xfa85e pcibios.c:292
in eax, DX ; 66 ed ; 0xfa861
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfa863
shr eax, 010h ; 66 c1 e8 10 ; 0xfa865
xchg dx, ax ; 92 ; 0xfa869
mov word [bp-00ah], dx ; 89 56 f6 ; 0xfa86a
mov word [bp-00eh], strict word 00000h ; c7 46 f2 00 00 ; 0xfa86d pcibios.c:293
test di, di ; 85 ff ; 0xfa872 pcibios.c:296
je short 0a891h ; 74 1b ; 0xfa874
cmp word [bp+004h], strict byte 00000h ; 83 7e 04 00 ; 0xfa876 pcibios.c:297
je short 0a885h ; 74 09 ; 0xfa87a
mov ax, dx ; 89 d0 ; 0xfa87c pcibios.c:298
mov word [bp-00ah], strict word 00000h ; c7 46 f6 00 00 ; 0xfa87e
jmp short 0a891h ; eb 0c ; 0xfa883 pcibios.c:299
mov cx, strict word 00008h ; b9 08 00 ; 0xfa885 pcibios.c:300
shr dx, 1 ; d1 ea ; 0xfa888
rcr ax, 1 ; d1 d8 ; 0xfa88a
loop 0a888h ; e2 fa ; 0xfa88c
mov word [bp-00ah], dx ; 89 56 f6 ; 0xfa88e
mov dx, word [bp-00ah] ; 8b 56 f6 ; 0xfa891 pcibios.c:307
cmp dx, word [bp-012h] ; 3b 56 ee ; 0xfa894
jne short 0a89eh ; 75 05 ; 0xfa897
cmp ax, word [bp-010h] ; 3b 46 f0 ; 0xfa899
je short 0a8a4h ; 74 06 ; 0xfa89c
cmp word [bp-00eh], strict byte 00000h ; 83 7e f2 00 ; 0xfa89e pcibios.c:308
je short 0a8aah ; 74 06 ; 0xfa8a2
dec si ; 4e ; 0xfa8a4
cmp si, strict byte 0ffffh ; 83 fe ff ; 0xfa8a5
je short 0a8bch ; 74 12 ; 0xfa8a8
add bx, word [bp-00ch] ; 03 5e f4 ; 0xfa8aa pcibios.c:316
mov ax, bx ; 89 d8 ; 0xfa8ad pcibios.c:317
shr ax, 008h ; c1 e8 08 ; 0xfa8af
movzx dx, byte [bp-008h] ; 0f b6 56 f8 ; 0xfa8b2
cmp ax, dx ; 39 d0 ; 0xfa8b6
jbe near 0a7f4h ; 0f 86 38 ff ; 0xfa8b8
cmp si, strict byte 0ffffh ; 83 fe ff ; 0xfa8bc pcibios.c:319
jne short 0a8c5h ; 75 04 ; 0xfa8bf pcibios.c:323
mov ax, bx ; 89 d8 ; 0xfa8c1
jmp short 0a8c8h ; eb 03 ; 0xfa8c3
mov ax, strict word 0ffffh ; b8 ff ff ; 0xfa8c5
lea sp, [bp-004h] ; 8d 66 fc ; 0xfa8c8 pcibios.c:324
pop di ; 5f ; 0xfa8cb
pop si ; 5e ; 0xfa8cc
pop bp ; 5d ; 0xfa8cd
retn 00002h ; c2 02 00 ; 0xfa8ce
; disGetNextSymbol 0xfa8d1 LB 0x54b -> off=0xc cb=00000000000001db uValue=00000000000f92dd 'pci16_function'
db 0c3h, 0a9h, 0ddh, 0a9h, 0f0h, 0a9h, 005h, 0aah, 018h, 0aah, 02bh, 0aah
pci16_function: ; 0xfa8dd LB 0x1db
push bp ; 55 ; 0xfa8dd pcibios.c:326
mov bp, sp ; 89 e5 ; 0xfa8de
push si ; 56 ; 0xfa8e0
push di ; 57 ; 0xfa8e1
push ax ; 50 ; 0xfa8e2
push ax ; 50 ; 0xfa8e3
and word [bp+020h], 000ffh ; 81 66 20 ff 00 ; 0xfa8e4 pcibios.c:333
and word [bp+02ch], strict byte 0fffeh ; 83 66 2c fe ; 0xfa8e9 pcibios.c:334
mov bx, word [bp+020h] ; 8b 5e 20 ; 0xfa8ed pcibios.c:336
xor bh, bh ; 30 ff ; 0xfa8f0
mov ax, word [bp+020h] ; 8b 46 20 ; 0xfa8f2
xor ah, ah ; 30 e4 ; 0xfa8f5
cmp bx, strict byte 00003h ; 83 fb 03 ; 0xfa8f7
jc short 0a916h ; 72 1a ; 0xfa8fa
jbe short 0a970h ; 76 72 ; 0xfa8fc
cmp bx, strict byte 0000eh ; 83 fb 0e ; 0xfa8fe
je near 0aa3fh ; 0f 84 3a 01 ; 0xfa901
cmp bx, strict byte 00008h ; 83 fb 08 ; 0xfa905
jc near 0aa84h ; 0f 82 78 01 ; 0xfa908
cmp bx, strict byte 0000dh ; 83 fb 0d ; 0xfa90c
jbe near 0a997h ; 0f 86 84 00 ; 0xfa90f
jmp near 0aa84h ; e9 6e 01 ; 0xfa913
cmp bx, strict byte 00002h ; 83 fb 02 ; 0xfa916
je short 0a93eh ; 74 23 ; 0xfa919
cmp bx, strict byte 00001h ; 83 fb 01 ; 0xfa91b
jne near 0aa84h ; 0f 85 62 01 ; 0xfa91e
mov word [bp+020h], strict word 00001h ; c7 46 20 01 00 ; 0xfa922 pcibios.c:338
mov word [bp+014h], 00210h ; c7 46 14 10 02 ; 0xfa927 pcibios.c:339
mov word [bp+01ch], strict word 00000h ; c7 46 1c 00 00 ; 0xfa92c pcibios.c:341
mov word [bp+018h], 04350h ; c7 46 18 50 43 ; 0xfa931 pcibios.c:342
mov word [bp+01ah], 02049h ; c7 46 1a 49 20 ; 0xfa936
jmp near 0aab1h ; e9 73 01 ; 0xfa93b pcibios.c:343
cmp word [bp+018h], strict byte 0ffffh ; 83 7e 18 ff ; 0xfa93e pcibios.c:348
jne short 0a94ah ; 75 06 ; 0xfa942
or ah, 083h ; 80 cc 83 ; 0xfa944 pcibios.c:349
jmp near 0aaaah ; e9 60 01 ; 0xfa947 pcibios.c:350
push strict byte 00000h ; 6a 00 ; 0xfa94a pcibios.c:352
mov bx, word [bp+008h] ; 8b 5e 08 ; 0xfa94c
mov dx, word [bp+01ch] ; 8b 56 1c ; 0xfa94f
mov ax, word [bp+018h] ; 8b 46 18 ; 0xfa952
xor cx, cx ; 31 c9 ; 0xfa955
call 0a7deh ; e8 84 fe ; 0xfa957
cmp ax, strict word 0ffffh ; 3d ff ff ; 0xfa95a pcibios.c:353
jne short 0a96ah ; 75 0b ; 0xfa95d
mov ax, word [bp+020h] ; 8b 46 20 ; 0xfa95f pcibios.c:354
xor ah, ah ; 30 e4 ; 0xfa962
or ah, 086h ; 80 cc 86 ; 0xfa964
jmp near 0aaaah ; e9 40 01 ; 0xfa967
mov word [bp+014h], ax ; 89 46 14 ; 0xfa96a pcibios.c:355
jmp near 0aab1h ; e9 41 01 ; 0xfa96d pcibios.c:360
push strict byte 00000h ; 6a 00 ; 0xfa970 pcibios.c:362
mov bx, word [bp+008h] ; 8b 5e 08 ; 0xfa972
mov ax, word [bp+01ch] ; 8b 46 1c ; 0xfa975
mov dx, word [bp+01eh] ; 8b 56 1e ; 0xfa978
mov cx, strict word 00001h ; b9 01 00 ; 0xfa97b
call 0a7deh ; e8 5d fe ; 0xfa97e
cmp ax, strict word 0ffffh ; 3d ff ff ; 0xfa981 pcibios.c:363
jne short 0a991h ; 75 0b ; 0xfa984
mov ax, word [bp+020h] ; 8b 46 20 ; 0xfa986 pcibios.c:364
xor ah, ah ; 30 e4 ; 0xfa989
or ah, 086h ; 80 cc 86 ; 0xfa98b
jmp near 0aaaah ; e9 19 01 ; 0xfa98e pcibios.c:365
mov word [bp+014h], ax ; 89 46 14 ; 0xfa991 pcibios.c:367
jmp near 0aab1h ; e9 1a 01 ; 0xfa994 pcibios.c:369
cmp word [bp+004h], 00100h ; 81 7e 04 00 01 ; 0xfa997 pcibios.c:376
jc short 0a9a4h ; 72 06 ; 0xfa99c
or ah, 087h ; 80 cc 87 ; 0xfa99e pcibios.c:377
jmp near 0aaaah ; e9 06 01 ; 0xfa9a1 pcibios.c:378
mov dx, word [bp+004h] ; 8b 56 04 ; 0xfa9a4 pcibios.c:380
mov ax, word [bp+014h] ; 8b 46 14 ; 0xfa9a7
call 0a7bah ; e8 0d fe ; 0xfa9aa
mov bx, word [bp+020h] ; 8b 5e 20 ; 0xfa9ad pcibios.c:381
xor bh, bh ; 30 ff ; 0xfa9b0
sub bx, strict byte 00008h ; 83 eb 08 ; 0xfa9b2
cmp bx, strict byte 00005h ; 83 fb 05 ; 0xfa9b5
jnbe near 0aab1h ; 0f 87 f5 00 ; 0xfa9b8
add bx, bx ; 01 db ; 0xfa9bc
jmp word [cs:bx-0572fh] ; 2e ff a7 d1 a8 ; 0xfa9be
mov bx, word [bp+01ch] ; 8b 5e 1c ; 0xfa9c3 pcibios.c:383
xor bl, bl ; 30 db ; 0xfa9c6
mov dx, word [bp+004h] ; 8b 56 04 ; 0xfa9c8
and dx, strict byte 00003h ; 83 e2 03 ; 0xfa9cb
add dx, 00cfch ; 81 c2 fc 0c ; 0xfa9ce
in AL, DX ; ec ; 0xfa9d2
db 02ah, 0e4h
; sub ah, ah ; 2a e4 ; 0xfa9d3
or bx, ax ; 09 c3 ; 0xfa9d5
mov word [bp+01ch], bx ; 89 5e 1c ; 0xfa9d7
jmp near 0aab1h ; e9 d4 00 ; 0xfa9da pcibios.c:384
mov dx, word [bp+004h] ; 8b 56 04 ; 0xfa9dd pcibios.c:386
xor dh, dh ; 30 f6 ; 0xfa9e0
and dl, 002h ; 80 e2 02 ; 0xfa9e2
add dx, 00cfch ; 81 c2 fc 0c ; 0xfa9e5
in ax, DX ; ed ; 0xfa9e9
mov word [bp+01ch], ax ; 89 46 1c ; 0xfa9ea
jmp near 0aab1h ; e9 c1 00 ; 0xfa9ed pcibios.c:387
mov dx, 00cfch ; ba fc 0c ; 0xfa9f0 pcibios.c:389
in eax, DX ; 66 ed ; 0xfa9f3
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfa9f5
shr eax, 010h ; 66 c1 e8 10 ; 0xfa9f7
xchg dx, ax ; 92 ; 0xfa9fb
mov word [bp+01ch], ax ; 89 46 1c ; 0xfa9fc
mov word [bp+01eh], dx ; 89 56 1e ; 0xfa9ff
jmp near 0aab1h ; e9 ac 00 ; 0xfaa02 pcibios.c:390
mov ax, word [bp+01ch] ; 8b 46 1c ; 0xfaa05 pcibios.c:392
mov dx, word [bp+004h] ; 8b 56 04 ; 0xfaa08
xor dh, dh ; 30 f6 ; 0xfaa0b
and dl, 003h ; 80 e2 03 ; 0xfaa0d
add dx, 00cfch ; 81 c2 fc 0c ; 0xfaa10
out DX, AL ; ee ; 0xfaa14
jmp near 0aab1h ; e9 99 00 ; 0xfaa15 pcibios.c:393
mov ax, word [bp+01ch] ; 8b 46 1c ; 0xfaa18 pcibios.c:395
mov dx, word [bp+004h] ; 8b 56 04 ; 0xfaa1b
xor dh, dh ; 30 f6 ; 0xfaa1e
and dl, 002h ; 80 e2 02 ; 0xfaa20
add dx, 00cfch ; 81 c2 fc 0c ; 0xfaa23
out DX, ax ; ef ; 0xfaa27
jmp near 0aab1h ; e9 86 00 ; 0xfaa28 pcibios.c:396
mov ax, word [bp+01ch] ; 8b 46 1c ; 0xfaa2b pcibios.c:398
mov cx, word [bp+01eh] ; 8b 4e 1e ; 0xfaa2e
mov dx, 00cfch ; ba fc 0c ; 0xfaa31
xchg cx, ax ; 91 ; 0xfaa34
sal eax, 010h ; 66 c1 e0 10 ; 0xfaa35
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfaa39
out DX, eax ; 66 ef ; 0xfaa3b
jmp short 0aab1h ; eb 72 ; 0xfaa3d pcibios.c:402
mov bx, word [bp+004h] ; 8b 5e 04 ; 0xfaa3f pcibios.c:404
mov es, [bp+026h] ; 8e 46 26 ; 0xfaa42
mov word [bp-008h], bx ; 89 5e f8 ; 0xfaa45
mov [bp-006h], es ; 8c 46 fa ; 0xfaa48
mov cx, word [0f360h] ; 8b 0e 60 f3 ; 0xfaa4b pcibios.c:408
cmp cx, word [es:bx] ; 26 3b 0f ; 0xfaa4f
jbe short 0aa65h ; 76 11 ; 0xfaa52
mov ax, word [bp+020h] ; 8b 46 20 ; 0xfaa54 pcibios.c:409
xor ah, ah ; 30 e4 ; 0xfaa57
or ah, 089h ; 80 cc 89 ; 0xfaa59
mov word [bp+020h], ax ; 89 46 20 ; 0xfaa5c
or word [bp+02ch], strict byte 00001h ; 83 4e 2c 01 ; 0xfaa5f pcibios.c:410
jmp short 0aa79h ; eb 14 ; 0xfaa63 pcibios.c:411
les di, [es:bx+002h] ; 26 c4 7f 02 ; 0xfaa65 pcibios.c:412
mov si, 0f180h ; be 80 f1 ; 0xfaa69
mov dx, ds ; 8c da ; 0xfaa6c
push DS ; 1e ; 0xfaa6e
mov ds, dx ; 8e da ; 0xfaa6f
rep movsb ; f3 a4 ; 0xfaa71
pop DS ; 1f ; 0xfaa73
mov word [bp+014h], 00a00h ; c7 46 14 00 0a ; 0xfaa74 pcibios.c:414
mov ax, word [0f360h] ; a1 60 f3 ; 0xfaa79 pcibios.c:416
les bx, [bp-008h] ; c4 5e f8 ; 0xfaa7c
mov word [es:bx], ax ; 26 89 07 ; 0xfaa7f
jmp short 0aab1h ; eb 2d ; 0xfaa82 pcibios.c:417
mov bx, 00e16h ; bb 16 0e ; 0xfaa84 pcibios.c:419
mov cx, ds ; 8c d9 ; 0xfaa87
mov ax, strict word 00004h ; b8 04 00 ; 0xfaa89
call 01a27h ; e8 98 6f ; 0xfaa8c
mov ax, word [bp+014h] ; 8b 46 14 ; 0xfaa8f
push ax ; 50 ; 0xfaa92
mov ax, word [bp+020h] ; 8b 46 20 ; 0xfaa93
push ax ; 50 ; 0xfaa96
push 00dd2h ; 68 d2 0d ; 0xfaa97
push strict byte 00004h ; 6a 04 ; 0xfaa9a
call 01a68h ; e8 c9 6f ; 0xfaa9c
add sp, strict byte 00008h ; 83 c4 08 ; 0xfaa9f
mov ax, word [bp+020h] ; 8b 46 20 ; 0xfaaa2 pcibios.c:420
xor ah, ah ; 30 e4 ; 0xfaaa5
or ah, 081h ; 80 cc 81 ; 0xfaaa7
mov word [bp+020h], ax ; 89 46 20 ; 0xfaaaa
or word [bp+02ch], strict byte 00001h ; 83 4e 2c 01 ; 0xfaaad pcibios.c:421
lea sp, [bp-004h] ; 8d 66 fc ; 0xfaab1 pcibios.c:423
pop di ; 5f ; 0xfaab4
pop si ; 5e ; 0xfaab5
pop bp ; 5d ; 0xfaab6
retn ; c3 ; 0xfaab7
; disGetNextSymbol 0xfaab8 LB 0x364 -> off=0x0 cb=000000000000002b uValue=00000000000f94b8 'pci_find_classcode'
pci_find_classcode: ; 0xfaab8 LB 0x2b
push bp ; 55 ; 0xfaab8 pciutil.c:135
mov bp, sp ; 89 e5 ; 0xfaab9
push bx ; 53 ; 0xfaabb
push cx ; 51 ; 0xfaabc
push si ; 56 ; 0xfaabd
mov cx, dx ; 89 d1 ; 0xfaabe
xor si, si ; 31 f6 ; 0xfaac0 pciutil.c:138
mov dx, ax ; 89 c2 ; 0xfaac2
mov ax, 0b103h ; b8 03 b1 ; 0xfaac4
sal ecx, 010h ; 66 c1 e1 10 ; 0xfaac7
db 08bh, 0cah
; mov cx, dx ; 8b ca ; 0xfaacb
int 01ah ; cd 1a ; 0xfaacd
cmp ah, 000h ; 80 fc 00 ; 0xfaacf
je near 0aad9h ; 0f 84 03 00 ; 0xfaad2
mov bx, strict word 0ffffh ; bb ff ff ; 0xfaad6
mov ax, bx ; 89 d8 ; 0xfaad9
lea sp, [bp-006h] ; 8d 66 fa ; 0xfaadb pciutil.c:142
pop si ; 5e ; 0xfaade
pop cx ; 59 ; 0xfaadf
pop bx ; 5b ; 0xfaae0
pop bp ; 5d ; 0xfaae1
retn ; c3 ; 0xfaae2
; disGetNextSymbol 0xfaae3 LB 0x339 -> off=0x0 cb=000000000000001a uValue=00000000000f94e3 'pci_find_class_noif'
pci_find_class_noif: ; 0xfaae3 LB 0x1a
push bp ; 55 ; 0xfaae3 pciutil.c:155
mov bp, sp ; 89 e5 ; 0xfaae4
push bx ; 53 ; 0xfaae6
push cx ; 51 ; 0xfaae7
push dx ; 52 ; 0xfaae8
push strict byte 00001h ; 6a 01 ; 0xfaae9 pciutil.c:159
mov cx, strict word 00001h ; b9 01 00 ; 0xfaaeb
xor bx, bx ; 31 db ; 0xfaaee
xor dx, dx ; 31 d2 ; 0xfaaf0
call 0a7deh ; e8 e9 fc ; 0xfaaf2
lea sp, [bp-006h] ; 8d 66 fa ; 0xfaaf5 pciutil.c:163
pop dx ; 5a ; 0xfaaf8
pop cx ; 59 ; 0xfaaf9
pop bx ; 5b ; 0xfaafa
pop bp ; 5d ; 0xfaafb
retn ; c3 ; 0xfaafc
; disGetNextSymbol 0xfaafd LB 0x31f -> off=0x0 cb=0000000000000025 uValue=00000000000f94fd 'pci_find_device'
pci_find_device: ; 0xfaafd LB 0x25
push bp ; 55 ; 0xfaafd pciutil.c:176
mov bp, sp ; 89 e5 ; 0xfaafe
push bx ; 53 ; 0xfab00
push cx ; 51 ; 0xfab01
push si ; 56 ; 0xfab02
mov cx, dx ; 89 d1 ; 0xfab03
xor si, si ; 31 f6 ; 0xfab05 pciutil.c:178
mov dx, ax ; 89 c2 ; 0xfab07
mov ax, 0b102h ; b8 02 b1 ; 0xfab09
int 01ah ; cd 1a ; 0xfab0c
cmp ah, 000h ; 80 fc 00 ; 0xfab0e
je near 0ab18h ; 0f 84 03 00 ; 0xfab11
mov bx, strict word 0ffffh ; bb ff ff ; 0xfab15
mov ax, bx ; 89 d8 ; 0xfab18
lea sp, [bp-006h] ; 8d 66 fa ; 0xfab1a pciutil.c:179
pop si ; 5e ; 0xfab1d
pop cx ; 59 ; 0xfab1e
pop bx ; 5b ; 0xfab1f
pop bp ; 5d ; 0xfab20
retn ; c3 ; 0xfab21
; disGetNextSymbol 0xfab22 LB 0x2fa -> off=0x0 cb=0000000000000024 uValue=00000000000f9522 'pci_read_config_byte'
pci_read_config_byte: ; 0xfab22 LB 0x24
push bp ; 55 ; 0xfab22 pciutil.c:181
mov bp, sp ; 89 e5 ; 0xfab23
push cx ; 51 ; 0xfab25
push di ; 57 ; 0xfab26
movzx di, bl ; 0f b6 fb ; 0xfab27 pciutil.c:183
movzx bx, al ; 0f b6 d8 ; 0xfab2a
sal bx, 008h ; c1 e3 08 ; 0xfab2d
movzx ax, dl ; 0f b6 c2 ; 0xfab30
or bx, ax ; 09 c3 ; 0xfab33
mov ax, 0b108h ; b8 08 b1 ; 0xfab35
int 01ah ; cd 1a ; 0xfab38
movzx ax, cl ; 0f b6 c1 ; 0xfab3a
xor dx, dx ; 31 d2 ; 0xfab3d pciutil.c:184
lea sp, [bp-004h] ; 8d 66 fc ; 0xfab3f
pop di ; 5f ; 0xfab42
pop cx ; 59 ; 0xfab43
pop bp ; 5d ; 0xfab44
retn ; c3 ; 0xfab45
; disGetNextSymbol 0xfab46 LB 0x2d6 -> off=0x0 cb=0000000000000022 uValue=00000000000f9546 'pci_read_config_word'
pci_read_config_word: ; 0xfab46 LB 0x22
push bp ; 55 ; 0xfab46 pciutil.c:186
mov bp, sp ; 89 e5 ; 0xfab47
push cx ; 51 ; 0xfab49
push di ; 57 ; 0xfab4a
movzx di, bl ; 0f b6 fb ; 0xfab4b pciutil.c:188
xor ah, ah ; 30 e4 ; 0xfab4e
sal ax, 008h ; c1 e0 08 ; 0xfab50
movzx bx, dl ; 0f b6 da ; 0xfab53
or bx, ax ; 09 c3 ; 0xfab56
mov ax, 0b109h ; b8 09 b1 ; 0xfab58
int 01ah ; cd 1a ; 0xfab5b
mov ax, cx ; 89 c8 ; 0xfab5d
xor dx, dx ; 31 d2 ; 0xfab5f pciutil.c:189
lea sp, [bp-004h] ; 8d 66 fc ; 0xfab61
pop di ; 5f ; 0xfab64
pop cx ; 59 ; 0xfab65
pop bp ; 5d ; 0xfab66
retn ; c3 ; 0xfab67
; disGetNextSymbol 0xfab68 LB 0x2b4 -> off=0x0 cb=0000000000000027 uValue=00000000000f9568 'pci_read_config_dword'
pci_read_config_dword: ; 0xfab68 LB 0x27
push bp ; 55 ; 0xfab68 pciutil.c:191
mov bp, sp ; 89 e5 ; 0xfab69
push cx ; 51 ; 0xfab6b
push di ; 57 ; 0xfab6c
movzx di, bl ; 0f b6 fb ; 0xfab6d pciutil.c:194
movzx bx, al ; 0f b6 d8 ; 0xfab70
sal bx, 008h ; c1 e3 08 ; 0xfab73
movzx ax, dl ; 0f b6 c2 ; 0xfab76
or bx, ax ; 09 c3 ; 0xfab79
mov ax, 0b10ah ; b8 0a b1 ; 0xfab7b
int 01ah ; cd 1a ; 0xfab7e
db 08bh, 0c1h
; mov ax, cx ; 8b c1 ; 0xfab80
shr ecx, 010h ; 66 c1 e9 10 ; 0xfab82
mov dx, cx ; 89 ca ; 0xfab86
lea sp, [bp-004h] ; 8d 66 fc ; 0xfab88 pciutil.c:199
pop di ; 5f ; 0xfab8b
pop cx ; 59 ; 0xfab8c
pop bp ; 5d ; 0xfab8d
retn ; c3 ; 0xfab8e
; disGetNextSymbol 0xfab8f LB 0x28d -> off=0x0 cb=000000000000001c uValue=00000000000f958f 'pci_write_config_word'
pci_write_config_word: ; 0xfab8f LB 0x1c
push bp ; 55 ; 0xfab8f pciutil.c:201
mov bp, sp ; 89 e5 ; 0xfab90
push di ; 57 ; 0xfab92
movzx di, bl ; 0f b6 fb ; 0xfab93 pciutil.c:203
xor ah, ah ; 30 e4 ; 0xfab96
sal ax, 008h ; c1 e0 08 ; 0xfab98
movzx bx, dl ; 0f b6 da ; 0xfab9b
or bx, ax ; 09 c3 ; 0xfab9e
mov ax, 0b10ch ; b8 0c b1 ; 0xfaba0
int 01ah ; cd 1a ; 0xfaba3
lea sp, [bp-002h] ; 8d 66 fe ; 0xfaba5 pciutil.c:204
pop di ; 5f ; 0xfaba8
pop bp ; 5d ; 0xfaba9
retn ; c3 ; 0xfabaa
; disGetNextSymbol 0xfabab LB 0x271 -> off=0x0 cb=000000000000001c uValue=00000000000f95ab 'pci_write_config_byte'
pci_write_config_byte: ; 0xfabab LB 0x1c
push bp ; 55 ; 0xfabab pciutil.c:206
mov bp, sp ; 89 e5 ; 0xfabac
push di ; 57 ; 0xfabae
movzx di, bl ; 0f b6 fb ; 0xfabaf pciutil.c:208
xor ah, ah ; 30 e4 ; 0xfabb2
sal ax, 008h ; c1 e0 08 ; 0xfabb4
movzx bx, dl ; 0f b6 da ; 0xfabb7
or bx, ax ; 09 c3 ; 0xfabba
mov ax, 0b10bh ; b8 0b b1 ; 0xfabbc
int 01ah ; cd 1a ; 0xfabbf
lea sp, [bp-002h] ; 8d 66 fe ; 0xfabc1 pciutil.c:209
pop di ; 5f ; 0xfabc4
pop bp ; 5d ; 0xfabc5
retn ; c3 ; 0xfabc6
; disGetNextSymbol 0xfabc7 LB 0x255 -> off=0x0 cb=000000000000002f uValue=00000000000f95c7 'pci_write_config_dword'
pci_write_config_dword: ; 0xfabc7 LB 0x2f
push bp ; 55 ; 0xfabc7 pciutil.c:211
mov bp, sp ; 89 e5 ; 0xfabc8
push cx ; 51 ; 0xfabca
push di ; 57 ; 0xfabcb
movzx di, bl ; 0f b6 fb ; 0xfabcc pciutil.c:214
movzx bx, al ; 0f b6 d8 ; 0xfabcf
mov ax, bx ; 89 d8 ; 0xfabd2
sal ax, 008h ; c1 e0 08 ; 0xfabd4
movzx bx, dl ; 0f b6 da ; 0xfabd7
or bx, ax ; 09 c3 ; 0xfabda
mov dx, word [bp+004h] ; 8b 56 04 ; 0xfabdc
mov cx, word [bp+006h] ; 8b 4e 06 ; 0xfabdf
mov ax, 0b10dh ; b8 0d b1 ; 0xfabe2
sal ecx, 010h ; 66 c1 e1 10 ; 0xfabe5
db 08bh, 0cah
; mov cx, dx ; 8b ca ; 0xfabe9
int 01ah ; cd 1a ; 0xfabeb
lea sp, [bp-004h] ; 8d 66 fc ; 0xfabed pciutil.c:219
pop di ; 5f ; 0xfabf0
pop cx ; 59 ; 0xfabf1
pop bp ; 5d ; 0xfabf2
retn 00004h ; c2 04 00 ; 0xfabf3
; disGetNextSymbol 0xfabf6 LB 0x226 -> off=0x0 cb=000000000000001d uValue=00000000000f95f6 'vds_is_present'
vds_is_present: ; 0xfabf6 LB 0x1d
push bx ; 53 ; 0xfabf6 vds.c:42
push bp ; 55 ; 0xfabf7
mov bp, sp ; 89 e5 ; 0xfabf8
mov bx, strict word 0007bh ; bb 7b 00 ; 0xfabfa vds.c:46
mov ax, strict word 00040h ; b8 40 00 ; 0xfabfd
mov es, ax ; 8e c0 ; 0xfac00
test byte [es:bx], 020h ; 26 f6 07 20 ; 0xfac02 vds.c:47
je short 0ac0eh ; 74 06 ; 0xfac06
mov ax, strict word 00001h ; b8 01 00 ; 0xfac08
pop bp ; 5d ; 0xfac0b
pop bx ; 5b ; 0xfac0c
retn ; c3 ; 0xfac0d
xor ax, ax ; 31 c0 ; 0xfac0e
pop bp ; 5d ; 0xfac10 vds.c:48
pop bx ; 5b ; 0xfac11
retn ; c3 ; 0xfac12
; disGetNextSymbol 0xfac13 LB 0x209 -> off=0x0 cb=000000000000001e uValue=00000000000f9613 'vds_real_to_lin'
vds_real_to_lin: ; 0xfac13 LB 0x1e
push bx ; 53 ; 0xfac13 vds.c:77
push cx ; 51 ; 0xfac14
push bp ; 55 ; 0xfac15
mov bp, sp ; 89 e5 ; 0xfac16
mov bx, ax ; 89 c3 ; 0xfac18
mov ax, dx ; 89 d0 ; 0xfac1a
xor dx, dx ; 31 d2 ; 0xfac1c vds.c:79
mov cx, strict word 00004h ; b9 04 00 ; 0xfac1e
sal ax, 1 ; d1 e0 ; 0xfac21
rcl dx, 1 ; d1 d2 ; 0xfac23
loop 0ac21h ; e2 fa ; 0xfac25
xor cx, cx ; 31 c9 ; 0xfac27
add ax, bx ; 01 d8 ; 0xfac29
adc dx, cx ; 11 ca ; 0xfac2b
pop bp ; 5d ; 0xfac2d vds.c:80
pop cx ; 59 ; 0xfac2e
pop bx ; 5b ; 0xfac2f
retn ; c3 ; 0xfac30
; disGetNextSymbol 0xfac31 LB 0x1eb -> off=0x0 cb=0000000000000079 uValue=00000000000f9631 'vds_build_sg_list'
vds_build_sg_list: ; 0xfac31 LB 0x79
push bp ; 55 ; 0xfac31 vds.c:87
mov bp, sp ; 89 e5 ; 0xfac32
push si ; 56 ; 0xfac34
push di ; 57 ; 0xfac35
mov di, ax ; 89 c7 ; 0xfac36
mov si, dx ; 89 d6 ; 0xfac38
mov ax, bx ; 89 d8 ; 0xfac3a
mov dx, cx ; 89 ca ; 0xfac3c
mov bx, word [bp+004h] ; 8b 5e 04 ; 0xfac3e vds.c:92
mov es, si ; 8e c6 ; 0xfac41
mov word [es:di], bx ; 26 89 1d ; 0xfac43
mov bx, word [bp+006h] ; 8b 5e 06 ; 0xfac46
mov word [es:di+002h], bx ; 26 89 5d 02 ; 0xfac49
call 0ac13h ; e8 c3 ff ; 0xfac4d vds.c:93
mov es, si ; 8e c6 ; 0xfac50
mov word [es:di+004h], ax ; 26 89 45 04 ; 0xfac52
mov word [es:di+006h], dx ; 26 89 55 06 ; 0xfac56
mov word [es:di+008h], strict word 00000h ; 26 c7 45 08 00 00 ; 0xfac5a vds.c:94
call 0abf6h ; e8 93 ff ; 0xfac60 vds.c:95
test ax, ax ; 85 c0 ; 0xfac63
je short 0ac7ah ; 74 13 ; 0xfac65
mov es, si ; 8e c6 ; 0xfac67 vds.c:97
mov ax, 08105h ; b8 05 81 ; 0xfac69
mov dx, strict word 00000h ; ba 00 00 ; 0xfac6c
int 04bh ; cd 4b ; 0xfac6f
jc near 0ac77h ; 0f 82 02 00 ; 0xfac71
db 032h, 0c0h
; xor al, al ; 32 c0 ; 0xfac75
cbw ; 98 ; 0xfac77
jmp short 0aca1h ; eb 27 ; 0xfac78 vds.c:98
mov es, si ; 8e c6 ; 0xfac7a vds.c:100
mov word [es:di+00eh], strict word 00001h ; 26 c7 45 0e 01 00 ; 0xfac7c
mov dx, word [es:di+004h] ; 26 8b 55 04 ; 0xfac82 vds.c:101
mov ax, word [es:di+006h] ; 26 8b 45 06 ; 0xfac86
mov word [es:di+010h], dx ; 26 89 55 10 ; 0xfac8a
mov word [es:di+012h], ax ; 26 89 45 12 ; 0xfac8e
mov ax, word [bp+004h] ; 8b 46 04 ; 0xfac92 vds.c:102
mov word [es:di+014h], ax ; 26 89 45 14 ; 0xfac95
mov ax, bx ; 89 d8 ; 0xfac99
mov word [es:di+016h], bx ; 26 89 5d 16 ; 0xfac9b
xor ax, bx ; 31 d8 ; 0xfac9f vds.c:103
lea sp, [bp-004h] ; 8d 66 fc ; 0xfaca1 vds.c:106
pop di ; 5f ; 0xfaca4
pop si ; 5e ; 0xfaca5
pop bp ; 5d ; 0xfaca6
retn 00004h ; c2 04 00 ; 0xfaca7
; disGetNextSymbol 0xfacaa LB 0x172 -> off=0x0 cb=0000000000000030 uValue=00000000000f96aa 'vds_free_sg_list'
vds_free_sg_list: ; 0xfacaa LB 0x30
push bp ; 55 ; 0xfacaa vds.c:112
mov bp, sp ; 89 e5 ; 0xfacab
push bx ; 53 ; 0xfacad
push di ; 57 ; 0xfacae
mov bx, ax ; 89 c3 ; 0xfacaf
call 0abf6h ; e8 42 ff ; 0xfacb1 vds.c:116
test ax, ax ; 85 c0 ; 0xfacb4
je short 0accbh ; 74 13 ; 0xfacb6
mov di, bx ; 89 df ; 0xfacb8 vds.c:118
mov es, dx ; 8e c2 ; 0xfacba
mov ax, 08106h ; b8 06 81 ; 0xfacbc
mov dx, strict word 00000h ; ba 00 00 ; 0xfacbf
int 04bh ; cd 4b ; 0xfacc2
jc near 0accah ; 0f 82 02 00 ; 0xfacc4
db 032h, 0c0h
; xor al, al ; 32 c0 ; 0xfacc8
cbw ; 98 ; 0xfacca
mov es, dx ; 8e c2 ; 0xfaccb vds.c:126
mov word [es:bx+00eh], strict word 00000h ; 26 c7 47 0e 00 00 ; 0xfaccd
lea sp, [bp-004h] ; 8d 66 fc ; 0xfacd3 vds.c:128
pop di ; 5f ; 0xfacd6
pop bx ; 5b ; 0xfacd7
pop bp ; 5d ; 0xfacd8
retn ; c3 ; 0xfacd9
; disGetNextSymbol 0xfacda LB 0x142 -> off=0x6 cb=0000000000000040 uValue=00000000000f96e0 '__U4M'
db 000h, 000h, 000h, 000h, 000h, 000h
__U4M: ; 0xface0 LB 0x40
pushfw ; 9c ; 0xface0 __U4M.asm:51
push eax ; 66 50 ; 0xface1 __U4M.asm:54
push edx ; 66 52 ; 0xface3 __U4M.asm:55
push ecx ; 66 51 ; 0xface5 __U4M.asm:56
rol eax, 010h ; 66 c1 c0 10 ; 0xface7 __U4M.asm:58
db 08bh, 0c2h
; mov ax, dx ; 8b c2 ; 0xfaceb __U4M.asm:59
ror eax, 010h ; 66 c1 c8 10 ; 0xfaced __U4M.asm:60
db 066h, 033h, 0d2h
; xor edx, edx ; 66 33 d2 ; 0xfacf1 __U4M.asm:61
shr ecx, 010h ; 66 c1 e9 10 ; 0xfacf4 __U4M.asm:63
db 08bh, 0cbh
; mov cx, bx ; 8b cb ; 0xfacf8 __U4M.asm:64
mul ecx ; 66 f7 e1 ; 0xfacfa __U4M.asm:66
pop ecx ; 66 59 ; 0xfacfd __U4M.asm:68
pop edx ; 66 5a ; 0xfacff __U4M.asm:70
ror eax, 010h ; 66 c1 c8 10 ; 0xfad01 __U4M.asm:71
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfad05 __U4M.asm:72
add sp, strict byte 00002h ; 83 c4 02 ; 0xfad07 __U4M.asm:73
pop ax ; 58 ; 0xfad0a __U4M.asm:74
rol eax, 010h ; 66 c1 c0 10 ; 0xfad0b __U4M.asm:75
popfw ; 9d ; 0xfad0f __U4M.asm:119
retn ; c3 ; 0xfad10 __U4M.asm:120
times 0xf db 0
; disGetNextSymbol 0xfad20 LB 0xfc -> off=0x0 cb=0000000000000040 uValue=00000000000f9720 '__U4D'
__U4D: ; 0xfad20 LB 0x40
pushfw ; 9c ; 0xfad20 __U4D.asm:59
push eax ; 66 50 ; 0xfad21 __U4D.asm:62
push edx ; 66 52 ; 0xfad23 __U4D.asm:63
push ecx ; 66 51 ; 0xfad25 __U4D.asm:64
rol eax, 010h ; 66 c1 c0 10 ; 0xfad27 __U4D.asm:66
db 08bh, 0c2h
; mov ax, dx ; 8b c2 ; 0xfad2b __U4D.asm:67
ror eax, 010h ; 66 c1 c8 10 ; 0xfad2d __U4D.asm:68
db 066h, 033h, 0d2h
; xor edx, edx ; 66 33 d2 ; 0xfad31 __U4D.asm:69
shr ecx, 010h ; 66 c1 e9 10 ; 0xfad34 __U4D.asm:71
db 08bh, 0cbh
; mov cx, bx ; 8b cb ; 0xfad38 __U4D.asm:72
div ecx ; 66 f7 f1 ; 0xfad3a __U4D.asm:74
db 08bh, 0dah
; mov bx, dx ; 8b da ; 0xfad3d __U4D.asm:76
pop ecx ; 66 59 ; 0xfad3f __U4D.asm:77
shr edx, 010h ; 66 c1 ea 10 ; 0xfad41 __U4D.asm:78
db 08bh, 0cah
; mov cx, dx ; 8b ca ; 0xfad45 __U4D.asm:79
pop edx ; 66 5a ; 0xfad47 __U4D.asm:81
ror eax, 010h ; 66 c1 c8 10 ; 0xfad49 __U4D.asm:82
db 08bh, 0d0h
; mov dx, ax ; 8b d0 ; 0xfad4d __U4D.asm:83
add sp, strict byte 00002h ; 83 c4 02 ; 0xfad4f __U4D.asm:84
pop ax ; 58 ; 0xfad52 __U4D.asm:85
rol eax, 010h ; 66 c1 c0 10 ; 0xfad53 __U4D.asm:86
popfw ; 9d ; 0xfad57 __U4D.asm:146
retn ; c3 ; 0xfad58 __U4D.asm:147
times 0x7 db 0
; disGetNextSymbol 0xfad60 LB 0xbc -> off=0x0 cb=0000000000000010 uValue=00000000000f9760 '__U8RS'
__U8RS: ; 0xfad60 LB 0x10
test si, si ; 85 f6 ; 0xfad60 __U8RS.asm:50
je short 0ad6fh ; 74 0b ; 0xfad62 __U8RS.asm:51
shr ax, 1 ; d1 e8 ; 0xfad64 __U8RS.asm:53
rcr bx, 1 ; d1 db ; 0xfad66 __U8RS.asm:54
rcr cx, 1 ; d1 d9 ; 0xfad68 __U8RS.asm:55
rcr dx, 1 ; d1 da ; 0xfad6a __U8RS.asm:56
dec si ; 4e ; 0xfad6c __U8RS.asm:57
jne short 0ad64h ; 75 f5 ; 0xfad6d __U8RS.asm:58
retn ; c3 ; 0xfad6f __U8RS.asm:60
; disGetNextSymbol 0xfad70 LB 0xac -> off=0x0 cb=0000000000000010 uValue=00000000000f9770 '__U8LS'
__U8LS: ; 0xfad70 LB 0x10
test si, si ; 85 f6 ; 0xfad70 __U8LS.asm:50
je short 0ad7fh ; 74 0b ; 0xfad72 __U8LS.asm:51
sal dx, 1 ; d1 e2 ; 0xfad74 __U8LS.asm:53
rcl cx, 1 ; d1 d1 ; 0xfad76 __U8LS.asm:54
rcl bx, 1 ; d1 d3 ; 0xfad78 __U8LS.asm:55
rcl ax, 1 ; d1 d0 ; 0xfad7a __U8LS.asm:56
dec si ; 4e ; 0xfad7c __U8LS.asm:57
jne short 0ad74h ; 75 f5 ; 0xfad7d __U8LS.asm:58
retn ; c3 ; 0xfad7f __U8LS.asm:60
; disGetNextSymbol 0xfad80 LB 0x9c -> off=0x0 cb=0000000000000010 uValue=00000000000f9780 '_fmemset_'
_fmemset_: ; 0xfad80 LB 0x10
push di ; 57 ; 0xfad80 fmemset.asm:52
mov es, dx ; 8e c2 ; 0xfad81 fmemset.asm:54
db 08bh, 0f8h
; mov di, ax ; 8b f8 ; 0xfad83 fmemset.asm:55
xchg al, bl ; 86 d8 ; 0xfad85 fmemset.asm:56
rep stosb ; f3 aa ; 0xfad87 fmemset.asm:57
xchg al, bl ; 86 d8 ; 0xfad89 fmemset.asm:58
pop di ; 5f ; 0xfad8b fmemset.asm:60
retn ; c3 ; 0xfad8c fmemset.asm:61
times 0x3 db 0
; disGetNextSymbol 0xfad90 LB 0x8c -> off=0x0 cb=000000000000003a uValue=00000000000f9790 '_fmemcpy_'
_fmemcpy_: ; 0xfad90 LB 0x3a
push bp ; 55 ; 0xfad90 fmemcpy.asm:52
db 08bh, 0ech
; mov bp, sp ; 8b ec ; 0xfad91 fmemcpy.asm:53
push di ; 57 ; 0xfad93 fmemcpy.asm:54
push DS ; 1e ; 0xfad94 fmemcpy.asm:55
push si ; 56 ; 0xfad95 fmemcpy.asm:56
mov es, dx ; 8e c2 ; 0xfad96 fmemcpy.asm:58
db 08bh, 0f8h
; mov di, ax ; 8b f8 ; 0xfad98 fmemcpy.asm:59
mov ds, cx ; 8e d9 ; 0xfad9a fmemcpy.asm:60
db 08bh, 0f3h
; mov si, bx ; 8b f3 ; 0xfad9c fmemcpy.asm:61
mov cx, word [bp+004h] ; 8b 4e 04 ; 0xfad9e fmemcpy.asm:62
rep movsb ; f3 a4 ; 0xfada1 fmemcpy.asm:63
pop si ; 5e ; 0xfada3 fmemcpy.asm:65
pop DS ; 1f ; 0xfada4 fmemcpy.asm:66
pop di ; 5f ; 0xfada5 fmemcpy.asm:67
db 08bh, 0e5h
; mov sp, bp ; 8b e5 ; 0xfada6 fmemcpy.asm:68
pop bp ; 5d ; 0xfada8 fmemcpy.asm:69
retn ; c3 ; 0xfada9 fmemcpy.asm:70
add byte [bx+si], al ; 00 00 ; 0xfadaa
add byte [bx+si], al ; 00 00 ; 0xfadac
add byte [bx+si], al ; 00 00 ; 0xfadae
loopne 0ad5fh ; e0 ad ; 0xfadb0
loop 0ad61h ; e2 ad ; 0xfadb2
in ax, DX ; ed ; 0xfadb4
lodsw ; ad ; 0xfadb5
in ax, DX ; ed ; 0xfadb6
lodsw ; ad ; 0xfadb7
in ax, DX ; ed ; 0xfadb8
lodsw ; ad ; 0xfadb9
out DX, ax ; ef ; 0xfadba
lodsw ; ad ; 0xfadbb
out DX, ax ; ef ; 0xfadbc
lodsw ; ad ; 0xfadbd
db 0f1h
; icebp ; f1 ; 0xfadbe
lodsw ; ad ; 0xfadbf
cmc ; f5 ; 0xfadc0
lodsw ; ad ; 0xfadc1
cmc ; f5 ; 0xfadc2
lodsw ; ad ; 0xfadc3
imul word [di-05204h] ; f7 ad fc ad ; 0xfadc4
db 0feh
lodsw ; ad ; 0xfadc9
; disGetNextSymbol 0xfadca LB 0x52 -> off=0x0 cb=0000000000000041 uValue=00000000000097ca 'apm_worker'
apm_worker: ; 0xfadca LB 0x41
sti ; fb ; 0xfadca apm_pm.asm:66
push ax ; 50 ; 0xfadcb apm_pm.asm:68
db 032h, 0e4h
; xor ah, ah ; 32 e4 ; 0xfadcc apm_pm.asm:69
sub AL, strict byte 004h ; 2c 04 ; 0xfadce apm_pm.asm:70
db 08bh, 0e8h
; mov bp, ax ; 8b e8 ; 0xfadd0 apm_pm.asm:71
sal bp, 1 ; d1 e5 ; 0xfadd2 apm_pm.asm:72
cmp AL, strict byte 00dh ; 3c 0d ; 0xfadd4 apm_pm.asm:73
pop ax ; 58 ; 0xfadd6 apm_pm.asm:74
mov AH, strict byte 053h ; b4 53 ; 0xfadd7 apm_pm.asm:75
jnc short 0ae07h ; 73 2c ; 0xfadd9 apm_pm.asm:76
jmp word [cs:bp-05250h] ; 2e ff a6 b0 ad ; 0xfaddb apm_pm.asm:78
jmp short 0ae05h ; eb 23 ; 0xfade0 apm_pm.asm:81
push CS ; 0e ; 0xfade2 apm_pm.asm:90
pop ax ; 58 ; 0xfade3 apm_pm.asm:91
test ax, strict word 00003h ; a9 03 00 ; 0xfade4 apm_pm.asm:92
jne short 0ae05h ; 75 1c ; 0xfade7 apm_pm.asm:93
sti ; fb ; 0xfade9 apm_pm.asm:94
hlt ; f4 ; 0xfadea apm_pm.asm:95
jmp short 0ae05h ; eb 18 ; 0xfadeb apm_pm.asm:96
jmp short 0ae05h ; eb 16 ; 0xfaded apm_pm.asm:105
jmp short 0ae07h ; eb 16 ; 0xfadef apm_pm.asm:111
mov AH, strict byte 080h ; b4 80 ; 0xfadf1 apm_pm.asm:114
jmp short 0ae09h ; eb 14 ; 0xfadf3 apm_pm.asm:115
jmp short 0ae07h ; eb 10 ; 0xfadf5 apm_pm.asm:120
mov ax, 00102h ; b8 02 01 ; 0xfadf7 apm_pm.asm:123
jmp short 0ae05h ; eb 09 ; 0xfadfa apm_pm.asm:124
jmp short 0ae05h ; eb 07 ; 0xfadfc apm_pm.asm:128
mov BL, strict byte 000h ; b3 00 ; 0xfadfe apm_pm.asm:131
mov cx, strict word 00000h ; b9 00 00 ; 0xfae00 apm_pm.asm:132
jmp short 0ae05h ; eb 00 ; 0xfae03 apm_pm.asm:133
clc ; f8 ; 0xfae05 apm_pm.asm:136
retn ; c3 ; 0xfae06 apm_pm.asm:137
mov AH, strict byte 009h ; b4 09 ; 0xfae07 apm_pm.asm:140
stc ; f9 ; 0xfae09 apm_pm.asm:143
retn ; c3 ; 0xfae0a apm_pm.asm:144
; disGetNextSymbol 0xfae0b LB 0x11 -> off=0x0 cb=0000000000000011 uValue=00000000000f980b 'apm_pm16_entry'
apm_pm16_entry: ; 0xfae0b LB 0x11
mov AH, strict byte 002h ; b4 02 ; 0xfae0b apm_pm.asm:156
push DS ; 1e ; 0xfae0d apm_pm.asm:162
push bp ; 55 ; 0xfae0e apm_pm.asm:163
push CS ; 0e ; 0xfae0f apm_pm.asm:165
pop bp ; 5d ; 0xfae10 apm_pm.asm:166
add bp, strict byte 00008h ; 83 c5 08 ; 0xfae11 apm_pm.asm:167
mov ds, bp ; 8e dd ; 0xfae14 apm_pm.asm:168
call 0adcah ; e8 b1 ff ; 0xfae16 apm_pm.asm:170
pop bp ; 5d ; 0xfae19 apm_pm.asm:172
pop DS ; 1f ; 0xfae1a apm_pm.asm:173
retf ; cb ; 0xfae1b apm_pm.asm:175
; Padding 0x2be4 bytes at 0xfae1c
times 11236 db 0
section BIOS32 progbits vstart=0xda00 align=1 ; size=0x3d4 class=CODE group=AUTO
; disGetNextSymbol 0xfda00 LB 0x3d4 -> off=0x0 cb=0000000000000026 uValue=00000000000f0000 'bios32_service'
bios32_service: ; 0xfda00 LB 0x26
pushfw ; 9c ; 0xfda00 pcibio32.asm:62
cmp bl, 000h ; 80 fb 00 ; 0xfda01 pcibio32.asm:64
jne short 0da22h ; 75 1c ; 0xfda04 pcibio32.asm:65
cmp ax, 05024h ; 3d 24 50 ; 0xfda06 pcibio32.asm:67
inc bx ; 43 ; 0xfda09
dec cx ; 49 ; 0xfda0a
mov AL, strict byte 080h ; b0 80 ; 0xfda0b pcibio32.asm:68
jne short 0da20h ; 75 11 ; 0xfda0d pcibio32.asm:69
mov bx, strict word 00000h ; bb 00 00 ; 0xfda0f pcibio32.asm:71
db 00fh
add byte [bx+di-01000h], bh ; 00 b9 00 f0 ; 0xfda13
add byte [bx+si], al ; 00 00 ; 0xfda17
mov dx, 0da26h ; ba 26 da ; 0xfda19 pcibio32.asm:73
add byte [bx+si], al ; 00 00 ; 0xfda1c
db 032h, 0c0h
; xor al, al ; 32 c0 ; 0xfda1e pcibio32.asm:74
popfw ; 9d ; 0xfda20 pcibio32.asm:76
retf ; cb ; 0xfda21 pcibio32.asm:77
mov AL, strict byte 081h ; b0 81 ; 0xfda22 pcibio32.asm:80
jmp short 0da20h ; eb fa ; 0xfda24 pcibio32.asm:81
; disGetNextSymbol 0xfda26 LB 0x3ae -> off=0x0 cb=000000000000001a uValue=00000000000f0026 'pcibios32_entry'
pcibios32_entry: ; 0xfda26 LB 0x1a
pushfw ; 9c ; 0xfda26 pcibio32.asm:90
cld ; fc ; 0xfda27 pcibio32.asm:91
push ES ; 06 ; 0xfda28 pcibio32.asm:93
pushaw ; 60 ; 0xfda29 pcibio32.asm:94
call 0db80h ; e8 53 01 ; 0xfda2a pcibio32.asm:95
add byte [bx+si], al ; 00 00 ; 0xfda2d
popaw ; 61 ; 0xfda2f pcibio32.asm:96
pop ES ; 07 ; 0xfda30 pcibio32.asm:97
popfw ; 9d ; 0xfda31 pcibio32.asm:99
retf ; cb ; 0xfda32 pcibio32.asm:100
times 0xd db 0
; disGetNextSymbol 0xfda40 LB 0x394 -> off=0x0 cb=0000000000000021 uValue=00000000000f0040 'apm_pm32_entry'
apm_pm32_entry: ; 0xfda40 LB 0x21
push bp ; 55 ; 0xfda40 apm_pm.asm:200
mov ebp, cs ; 66 8c cd ; 0xfda41 apm_pm.asm:202
push ebp ; 66 55 ; 0xfda44 apm_pm.asm:203
mov bp, 0da5fh ; bd 5f da ; 0xfda46 apm_pm.asm:204
add byte [bx+si], al ; 00 00 ; 0xfda49
push ebp ; 66 55 ; 0xfda4b apm_pm.asm:205
push CS ; 0e ; 0xfda4d apm_pm.asm:207
pop bp ; 5d ; 0xfda4e apm_pm.asm:208
add bp, strict byte 00008h ; 83 c5 08 ; 0xfda4f apm_pm.asm:209
push ebp ; 66 55 ; 0xfda52 apm_pm.asm:210
mov bp, 0ae0dh ; bd 0d ae ; 0xfda54 apm_pm.asm:212
add byte [bx+si], al ; 00 00 ; 0xfda57
push ebp ; 66 55 ; 0xfda59 apm_pm.asm:213
mov AH, strict byte 003h ; b4 03 ; 0xfda5b apm_pm.asm:215
db 066h, 0cbh
; retf ; 66 cb ; 0xfda5d
pop bp ; 5d ; 0xfda5f apm_pm.asm:222
retf ; cb ; 0xfda60 apm_pm.asm:223
; disGetNextSymbol 0xfda61 LB 0x373 -> off=0x0 cb=0000000000000022 uValue=00000000000f0061 'pci32_select_reg_'
pci32_select_reg_: ; 0xfda61 LB 0x22
push bp ; 55 ; 0xfda61 pci32.c:198
mov bp, sp ; 89 e5 ; 0xfda62
push bx ; 53 ; 0xfda64
and dl, 0fch ; 80 e2 fc ; 0xfda65 pci32.c:200
mov bx, dx ; 89 d3 ; 0xfda68
mov dx, 00cf8h ; ba f8 0c ; 0xfda6a
add byte [bx+si], al ; 00 00 ; 0xfda6d
db 00fh, 0b7h, 0c0h
; movzx ax, ax ; 0f b7 c0 ; 0xfda6f
sal ax, 008h ; c1 e0 08 ; 0xfda72
or ax, strict word 00000h ; 0d 00 00 ; 0xfda75
add byte [bx+si-03c76h], al ; 00 80 8a c3 ; 0xfda78
out DX, ax ; ef ; 0xfda7c
lea sp, [di-004h] ; 8d 65 fc ; 0xfda7d pci32.c:201
pop bx ; 5b ; 0xfda80
pop bp ; 5d ; 0xfda81
retn ; c3 ; 0xfda82
; disGetNextSymbol 0xfda83 LB 0x351 -> off=0x0 cb=00000000000000ff uValue=00000000000f0083 'pci32_find_device_'
pci32_find_device_: ; 0xfda83 LB 0xff
push bp ; 55 ; 0xfda83 pci32.c:233
mov bp, sp ; 89 e5 ; 0xfda84
push si ; 56 ; 0xfda86
push di ; 57 ; 0xfda87
sub sp, strict byte 00014h ; 83 ec 14 ; 0xfda88
push ax ; 50 ; 0xfda8b
mov si, dx ; 89 d6 ; 0xfda8c
mov di, bx ; 89 df ; 0xfda8e
mov word [di-01ch], cx ; 89 4d e4 ; 0xfda90
test bx, bx ; 85 db ; 0xfda93 pci32.c:243
xor bx, bx ; 31 db ; 0xfda95 pci32.c:250
xor cl, cl ; 30 c9 ; 0xfda97 pci32.c:251
test bl, 007h ; f6 c3 07 ; 0xfda99 pci32.c:261
jne short 0dad8h ; 75 3a ; 0xfda9c
db 00fh, 0b7h, 0c3h
; movzx ax, bx ; 0f b7 c3 ; 0xfda9e pci32.c:262
mov dx, strict word 0000eh ; ba 0e 00 ; 0xfdaa1
add byte [bx+si], al ; 00 00 ; 0xfdaa4
call 0da5fh ; e8 b6 ff ; 0xfdaa6
db 0ffh
db 0ffh
mov dx, 00cfeh ; ba fe 0c ; 0xfdaab pci32.c:263
add byte [bx+si], al ; 00 00 ; 0xfdaae
db 02bh, 0c0h
; sub ax, ax ; 2b c0 ; 0xfdab0
in AL, DX ; ec ; 0xfdab2
mov byte [di-00ch], al ; 88 45 f4 ; 0xfdab3
cmp AL, strict byte 0ffh ; 3c ff ; 0xfdab6 pci32.c:264
jne short 0dac2h ; 75 08 ; 0xfdab8
add bx, strict byte 00008h ; 83 c3 08 ; 0xfdaba pci32.c:265
jmp near 0db58h ; e9 98 00 ; 0xfdabd pci32.c:266
add byte [bx+si], al ; 00 00 ; 0xfdac0
test byte [di-00ch], 080h ; f6 45 f4 80 ; 0xfdac2 pci32.c:268
je short 0dad1h ; 74 09 ; 0xfdac6
mov word [di-010h], strict word 00001h ; c7 45 f0 01 00 ; 0xfdac8 pci32.c:269
add byte [bx+si], al ; 00 00 ; 0xfdacd
jmp short 0dad8h ; eb 07 ; 0xfdacf pci32.c:270
mov word [di-010h], strict word 00008h ; c7 45 f0 08 00 ; 0xfdad1 pci32.c:271
add byte [bx+si], al ; 00 00 ; 0xfdad6
mov al, byte [di-00ch] ; 8a 45 f4 ; 0xfdad8 pci32.c:282
and AL, strict byte 007h ; 24 07 ; 0xfdadb
cmp AL, strict byte 001h ; 3c 01 ; 0xfdadd
jne short 0db05h ; 75 24 ; 0xfdadf
db 00fh, 0b7h, 0c3h
; movzx ax, bx ; 0f b7 c3 ; 0xfdae1
mov dx, ax ; 89 c2 ; 0xfdae4
sar dx, 008h ; c1 fa 08 ; 0xfdae6
test dx, dx ; 85 d2 ; 0xfdae9
jne short 0db05h ; 75 18 ; 0xfdaeb
mov dx, strict word 0001ah ; ba 1a 00 ; 0xfdaed pci32.c:284
add byte [bx+si], al ; 00 00 ; 0xfdaf0
call 0da5fh ; e8 6a ff ; 0xfdaf2
db 0ffh
db 0ffh
mov dx, 00cfeh ; ba fe 0c ; 0xfdaf7 pci32.c:285
add byte [bx+si], al ; 00 00 ; 0xfdafa
db 02bh, 0c0h
; sub ax, ax ; 2b c0 ; 0xfdafc
in AL, DX ; ec ; 0xfdafe
cmp al, cl ; 38 c8 ; 0xfdaff pci32.c:286
jbe short 0db05h ; 76 02 ; 0xfdb01
mov cl, al ; 88 c1 ; 0xfdb03 pci32.c:287
test di, di ; 85 ff ; 0xfdb05 pci32.c:291
je short 0db10h ; 74 07 ; 0xfdb07
mov ax, strict word 00008h ; b8 08 00 ; 0xfdb09
add byte [bx+si], al ; 00 00 ; 0xfdb0c
jmp short 0db12h ; eb 02 ; 0xfdb0e
xor ax, ax ; 31 c0 ; 0xfdb10
db 00fh, 0b7h, 0d0h
; movzx dx, ax ; 0f b7 d0 ; 0xfdb12
db 00fh, 0b7h, 0c3h
; movzx ax, bx ; 0f b7 c3 ; 0xfdb15
call 0da5fh ; e8 44 ff ; 0xfdb18
db 0ffh
db 0ffh
mov dx, 00cfch ; ba fc 0c ; 0xfdb1d pci32.c:292
add byte [bx+si], al ; 00 00 ; 0xfdb20
in ax, DX ; ed ; 0xfdb22
mov word [di-014h], ax ; 89 45 ec ; 0xfdb23
mov word [di-018h], strict word 00000h ; c7 45 e8 00 00 ; 0xfdb26 pci32.c:293
add byte [bx+si], al ; 00 00 ; 0xfdb2b
test di, di ; 85 ff ; 0xfdb2d pci32.c:296
je short 0db42h ; 74 11 ; 0xfdb2f
cmp word [di-01ch], strict byte 00000h ; 83 7d e4 00 ; 0xfdb31 pci32.c:297
je short 0db3ch ; 74 05 ; 0xfdb35
shr ax, 010h ; c1 e8 10 ; 0xfdb37 pci32.c:298
jmp short 0db3fh ; eb 03 ; 0xfdb3a pci32.c:299
shr ax, 008h ; c1 e8 08 ; 0xfdb3c pci32.c:300
mov word [di-014h], ax ; 89 45 ec ; 0xfdb3f
mov ax, word [di-014h] ; 8b 45 ec ; 0xfdb42 pci32.c:307
cmp ax, word [di-020h] ; 3b 45 e0 ; 0xfdb45
je short 0db50h ; 74 06 ; 0xfdb48
cmp word [di-018h], strict byte 00000h ; 83 7d e8 00 ; 0xfdb4a pci32.c:308
je short 0db57h ; 74 07 ; 0xfdb4e
dec si ; 4e ; 0xfdb50
cmp esi, strict byte 0ffffffffh ; 66 83 fe ff ; 0xfdb51
je short 0db6bh ; 74 14 ; 0xfdb55
add bx, word [di-010h] ; 03 5d f0 ; 0xfdb57 pci32.c:316
db 00fh, 0b7h, 0c3h
; movzx ax, bx ; 0f b7 c3 ; 0xfdb5a pci32.c:317
sar ax, 008h ; c1 f8 08 ; 0xfdb5d
movzx dx, cl ; 0f b6 d1 ; 0xfdb60
cmp ax, dx ; 39 d0 ; 0xfdb63
jle near 0da97h ; 0f 8e 2e ff ; 0xfdb65
db 0ffh
jmp word [bp-07dh] ; ff 66 83 ; 0xfdb6a
db 0feh
push word [di+005h] ; ff 75 05 ; 0xfdb6e
db 00fh, 0b7h, 0c3h
; movzx ax, bx ; 0f b7 c3 ; 0xfdb71
jmp short 0db7bh ; eb 05 ; 0xfdb74
mov ax, strict word 0ffffh ; b8 ff ff ; 0xfdb76
add byte [bx+si], al ; 00 00 ; 0xfdb79
lea sp, [di-008h] ; 8d 65 f8 ; 0xfdb7b pci32.c:324
pop di ; 5f ; 0xfdb7e
pop si ; 5e ; 0xfdb7f
pop bp ; 5d ; 0xfdb80
retn ; c3 ; 0xfdb81
; disGetNextSymbol 0xfdb82 LB 0x252 -> off=0x0 cb=0000000000000252 uValue=00000000000f0182 '_pci32_function'
_pci32_function: ; 0xfdb82 LB 0x252
push bp ; 55 ; 0xfdb82 pci32.c:326
mov bp, sp ; 89 e5 ; 0xfdb83
push bx ; 53 ; 0xfdb85
push si ; 56 ; 0xfdb86
push di ; 57 ; 0xfdb87
push ax ; 50 ; 0xfdb88
and dword [di+024h], strict dword 0658100ffh ; 66 81 65 24 ff 00 81 65 ; 0xfdb89 pci32.c:333
sub AL, strict byte 0feh ; 2c fe ; 0xfdb91
inc word [bx+si] ; ff 00 ; 0xfdb93
add byte [bp+di+02445h], cl ; 00 8b 45 24 ; 0xfdb95
xor ah, ah ; 30 e4 ; 0xfdb99
cmp eax, strict dword 029720003h ; 66 3d 03 00 72 29 ; 0xfdb9b
jbe near 0dc40h ; 0f 86 9b 00 ; 0xfdba1
add byte [bx+si], al ; 00 00 ; 0xfdba5
cmp eax, strict dword 0840f000eh ; 66 3d 0e 00 0f 84 ; 0xfdba7
lodsw ; ad ; 0xfdbad
add word [bx+si], ax ; 01 00 ; 0xfdbae
add byte [bp+03dh], ah ; 00 66 3d ; 0xfdbb0
or byte [bx+si], al ; 08 00 ; 0xfdbb3
jc near 0ddbah ; 0f 82 01 02 ; 0xfdbb5
add byte [bx+si], al ; 00 00 ; 0xfdbb9
cmp eax, strict dword 0860f000dh ; 66 3d 0d 00 0f 86 ; 0xfdbbb
lodsb ; ac ; 0xfdbc1
add byte [bx+si], al ; 00 00 ; 0xfdbc2
add cl, ch ; 00 e9 ; 0xfdbc4
repne add word [bx+si], ax ; f2 01 00 ; 0xfdbc6
add byte [bp+03dh], ah ; 00 66 3d ; 0xfdbc9
add al, byte [bx+si] ; 02 00 ; 0xfdbcc
je short 0dbf8h ; 74 28 ; 0xfdbce
cmp eax, strict dword 0850f0001h ; 66 3d 01 00 0f 85 ; 0xfdbd0
loop 0dbd9h ; e2 01 ; 0xfdbd6
add byte [bx+si], al ; 00 00 ; 0xfdbd8
mov dword [di+024h], strict dword 0c7660001h ; 66 c7 45 24 01 00 66 c7 ; 0xfdbda pci32.c:338
inc bp ; 45 ; 0xfdbe2
sbb byte [bx+si], dl ; 18 10 ; 0xfdbe3
add dh, byte [bx+di] ; 02 31 ; 0xfdbe5
sal byte [bp-077h], 045h ; c0 66 89 45 ; 0xfdbe7
and bh, al ; 20 c7 ; 0xfdbeb
inc bp ; 45 ; 0xfdbed
sbb AL, strict byte 050h ; 1c 50 ; 0xfdbee
inc bx ; 43 ; 0xfdbf0
dec cx ; 49 ; 0xfdbf1
and cl, ch ; 20 e9 ; 0xfdbf2
aam 001h ; d4 01 ; 0xfdbf4
add byte [bx+si], al ; 00 00 ; 0xfdbf6
cmp dword [di+01ch], strict byte 0ffffffffh ; 66 83 7d 1c ff ; 0xfdbf8 pci32.c:348
jne short 0dc0ch ; 75 0d ; 0xfdbfd
mov ax, word [di+024h] ; 8b 45 24 ; 0xfdbff pci32.c:349
xor ah, ah ; 30 e4 ; 0xfdc02
or ah, 083h ; 80 cc 83 ; 0xfdc04
jmp near 0ddc2h ; e9 b8 01 ; 0xfdc07 pci32.c:350
add byte [bx+si], al ; 00 00 ; 0xfdc0a
xor cx, cx ; 31 c9 ; 0xfdc0c pci32.c:352
xor bx, bx ; 31 db ; 0xfdc0e
db 00fh, 0b7h, 055h, 00ch
; movzx dx, [di+00ch] ; 0f b7 55 0c ; 0xfdc10
db 00fh, 0b7h, 045h, 020h
; movzx ax, [di+020h] ; 0f b7 45 20 ; 0xfdc14
sal ax, 010h ; c1 e0 10 ; 0xfdc18
db 00fh, 0b7h, 075h, 01ch
; movzx si, [di+01ch] ; 0f b7 75 1c ; 0xfdc1b
or ax, si ; 09 f0 ; 0xfdc1f
call 0da81h ; e8 5d fe ; 0xfdc21
db 0ffh
jmp word [bp+03dh] ; ff 66 3d ; 0xfdc25
db 0ffh
push word [di+00dh] ; ff 75 0d ; 0xfdc29
mov ax, word [di+024h] ; 8b 45 24 ; 0xfdc2c pci32.c:354
xor ah, ah ; 30 e4 ; 0xfdc2f
or ah, 086h ; 80 cc 86 ; 0xfdc31
jmp near 0ddc2h ; e9 8b 01 ; 0xfdc34
add byte [bx+si], al ; 00 00 ; 0xfdc37
mov dword [di+018h], eax ; 66 89 45 18 ; 0xfdc39 pci32.c:355
jmp near 0ddcah ; e9 8a 01 ; 0xfdc3d pci32.c:360
add byte [bx+si], al ; 00 00 ; 0xfdc40
db 00fh, 0b7h, 055h, 00ch
; movzx dx, [di+00ch] ; 0f b7 55 0c ; 0xfdc42 pci32.c:362
mov ax, word [di+020h] ; 8b 45 20 ; 0xfdc46
xor cx, cx ; 31 c9 ; 0xfdc49
mov bx, strict word 00001h ; bb 01 00 ; 0xfdc4b
add byte [bx+si], al ; 00 00 ; 0xfdc4e
call 0da81h ; e8 2e fe ; 0xfdc50
db 0ffh
jmp word [bp+03dh] ; ff 66 3d ; 0xfdc54
db 0ffh
push word [di+00dh] ; ff 75 0d ; 0xfdc58
mov ax, word [di+024h] ; 8b 45 24 ; 0xfdc5b pci32.c:364
xor ah, ah ; 30 e4 ; 0xfdc5e
or ah, 086h ; 80 cc 86 ; 0xfdc60
jmp near 0ddc2h ; e9 5c 01 ; 0xfdc63 pci32.c:365
add byte [bx+si], al ; 00 00 ; 0xfdc66
mov dword [di+018h], eax ; 66 89 45 18 ; 0xfdc68 pci32.c:367
jmp near 0ddcah ; e9 5b 01 ; 0xfdc6c pci32.c:369
add byte [bx+si], al ; 00 00 ; 0xfdc6f
cmp dword [di+008h], strict dword 00d720100h ; 66 81 7d 08 00 01 72 0d ; 0xfdc71 pci32.c:376
mov ax, word [di+024h] ; 8b 45 24 ; 0xfdc79 pci32.c:377
xor ah, ah ; 30 e4 ; 0xfdc7c
or ah, 087h ; 80 cc 87 ; 0xfdc7e
jmp near 0ddc2h ; e9 3e 01 ; 0xfdc81 pci32.c:378
add byte [bx+si], al ; 00 00 ; 0xfdc84
db 00fh, 0b7h, 055h, 008h
; movzx dx, [di+008h] ; 0f b7 55 08 ; 0xfdc86 pci32.c:380
db 00fh, 0b7h, 045h, 018h
; movzx ax, [di+018h] ; 0f b7 45 18 ; 0xfdc8a
call 0da5fh ; e8 ce fd ; 0xfdc8e
db 0ffh
dec word [bp+di+02445h] ; ff 8b 45 24 ; 0xfdc92
xor ah, ah ; 30 e4 ; 0xfdc96
cmp eax, strict dword 02172000ah ; 66 3d 0a 00 72 21 ; 0xfdc98
jbe short 0dd0fh ; 76 6f ; 0xfdc9e
cmp eax, strict dword 0840f000dh ; 66 3d 0d 00 0f 84 ; 0xfdca0
test ax, strict word 00000h ; a9 00 00 ; 0xfdca6
add byte [bp+03dh], ah ; 00 66 3d ; 0xfdca9
or AL, strict byte 000h ; 0c 00 ; 0xfdcac
je near 0dd35h ; 0f 84 83 00 ; 0xfdcae
add byte [bx+si], al ; 00 00 ; 0xfdcb2
cmp eax, strict dword 06374000bh ; 66 3d 0b 00 74 63 ; 0xfdcb4
jmp near 0ddcah ; e9 0d 01 ; 0xfdcba
add byte [bx+si], al ; 00 00 ; 0xfdcbd
cmp eax, strict dword 02d740009h ; 66 3d 09 00 74 2d ; 0xfdcbf
cmp eax, strict dword 0850f0008h ; 66 3d 08 00 0f 85 ; 0xfdcc5
std ; fd ; 0xfdccb
add byte [bx+si], al ; 00 00 ; 0xfdccc
add byte [bp+di+0205dh], cl ; 00 8b 5d 20 ; 0xfdcce
xor bl, bl ; 30 db ; 0xfdcd2
mov ax, word [di+008h] ; 8b 45 08 ; 0xfdcd4
xor ah, ah ; 30 e4 ; 0xfdcd7
and AL, strict byte 003h ; 24 03 ; 0xfdcd9
db 00fh, 0b7h, 0d0h
; movzx dx, ax ; 0f b7 d0 ; 0xfdcdb
add dx, 00cfch ; 81 c2 fc 0c ; 0xfdcde
add byte [bx+si], al ; 00 00 ; 0xfdce2
db 02bh, 0c0h
; sub ax, ax ; 2b c0 ; 0xfdce4
in AL, DX ; ec ; 0xfdce6
or bx, ax ; 09 c3 ; 0xfdce7
mov dword [di+020h], ebx ; 66 89 5d 20 ; 0xfdce9
jmp near 0ddcah ; e9 da 00 ; 0xfdced pci32.c:384
add byte [bx+si], al ; 00 00 ; 0xfdcf0
mov ax, word [di+008h] ; 8b 45 08 ; 0xfdcf2 pci32.c:386
xor ah, ah ; 30 e4 ; 0xfdcf5
and AL, strict byte 002h ; 24 02 ; 0xfdcf7
db 00fh, 0b7h, 0d0h
; movzx dx, ax ; 0f b7 d0 ; 0xfdcf9
add dx, 00cfch ; 81 c2 fc 0c ; 0xfdcfc
add byte [bx+si], al ; 00 00 ; 0xfdd00
db 02bh, 0c0h
; sub ax, ax ; 2b c0 ; 0xfdd02
in eax, DX ; 66 ed ; 0xfdd04
mov dword [di+020h], eax ; 66 89 45 20 ; 0xfdd06
jmp near 0ddcah ; e9 bd 00 ; 0xfdd0a pci32.c:387
add byte [bx+si], al ; 00 00 ; 0xfdd0d
mov dx, 00cfch ; ba fc 0c ; 0xfdd0f pci32.c:389
add byte [bx+si], al ; 00 00 ; 0xfdd12
in ax, DX ; ed ; 0xfdd14
mov word [di+020h], ax ; 89 45 20 ; 0xfdd15
jmp near 0ddcah ; e9 af 00 ; 0xfdd18 pci32.c:390
add byte [bx+si], al ; 00 00 ; 0xfdd1b
mov ax, word [di+020h] ; 8b 45 20 ; 0xfdd1d pci32.c:392
mov dx, word [di+008h] ; 8b 55 08 ; 0xfdd20
xor dh, dh ; 30 f6 ; 0xfdd23
and dl, 003h ; 80 e2 03 ; 0xfdd25
db 00fh, 0b7h, 0d2h
; movzx dx, dx ; 0f b7 d2 ; 0xfdd28
add dx, 00cfch ; 81 c2 fc 0c ; 0xfdd2b
add byte [bx+si], al ; 00 00 ; 0xfdd2f
out DX, AL ; ee ; 0xfdd31
jmp near 0ddcah ; e9 95 00 ; 0xfdd32 pci32.c:393
add byte [bx+si], al ; 00 00 ; 0xfdd35
db 00fh, 0b7h, 045h, 020h
; movzx ax, [di+020h] ; 0f b7 45 20 ; 0xfdd37 pci32.c:395
mov dx, word [di+008h] ; 8b 55 08 ; 0xfdd3b
xor dh, dh ; 30 f6 ; 0xfdd3e
and dl, 002h ; 80 e2 02 ; 0xfdd40
db 00fh, 0b7h, 0d2h
; movzx dx, dx ; 0f b7 d2 ; 0xfdd43
add dx, 00cfch ; 81 c2 fc 0c ; 0xfdd46
add byte [bx+si], al ; 00 00 ; 0xfdd4a
out DX, eax ; 66 ef ; 0xfdd4c
jmp near 0ddcah ; e9 79 00 ; 0xfdd4e pci32.c:396
add byte [bx+si], al ; 00 00 ; 0xfdd51
mov ax, word [di+020h] ; 8b 45 20 ; 0xfdd53 pci32.c:398
mov dx, 00cfch ; ba fc 0c ; 0xfdd56
add byte [bx+si], al ; 00 00 ; 0xfdd59
out DX, ax ; ef ; 0xfdd5b
jmp short 0ddcch ; eb 6e ; 0xfdd5c pci32.c:402
db 00fh, 0b7h, 045h, 008h
; movzx ax, [di+008h] ; 0f b7 45 08 ; 0xfdd5e pci32.c:404
mov es, [di+028h] ; 8e 45 28 ; 0xfdd62
mov [di-010h], es ; 8c 45 f0 ; 0xfdd65
mov bx, ax ; 89 c3 ; 0xfdd68
mov edx, dword [di] ; 66 8b 15 ; 0xfdd6a pci32.c:408
pushaw ; 60 ; 0xfdd6d
rep add byte [bx+si], al ; f3 00 00 ; 0xfdd6e
db 066h, 026h, 03bh, 010h
; cmp edx, dword [es:bx+si] ; 66 26 3b 10 ; 0xfdd71
jbe short 0dd89h ; 76 12 ; 0xfdd75
mov ax, word [di+024h] ; 8b 45 24 ; 0xfdd77 pci32.c:409
xor ah, ah ; 30 e4 ; 0xfdd7a
or ah, 089h ; 80 cc 89 ; 0xfdd7c
mov dword [di+024h], eax ; 66 89 45 24 ; 0xfdd7f
or word [di+02ch], strict byte 00001h ; 83 4d 2c 01 ; 0xfdd83 pci32.c:410
jmp short 0ddadh ; eb 24 ; 0xfdd87 pci32.c:411
db 00fh, 0b7h, 0cah
; movzx cx, dx ; 0f b7 ca ; 0xfdd89 pci32.c:412
db 066h, 026h, 08bh, 078h, 006h
; mov edi, dword [es:bx+si+006h] ; 66 26 8b 78 06 ; 0xfdd8c
mov ax, word [es:bx+si+002h] ; 26 8b 40 02 ; 0xfdd91
mov dx, ds ; 8c da ; 0xfdd95
mov si, 0f180h ; be 80 f1 ; 0xfdd97
add byte [bx+si], al ; 00 00 ; 0xfdd9a
mov es, di ; 8e c7 ; 0xfdd9c
mov di, ax ; 89 c7 ; 0xfdd9e
push DS ; 1e ; 0xfdda0
db 066h, 08eh, 0dah
; mov ds, edx ; 66 8e da ; 0xfdda1
rep movsb ; f3 a4 ; 0xfdda4
pop DS ; 1f ; 0xfdda6
mov dword [di+018h], strict dword 0a1660a00h ; 66 c7 45 18 00 0a 66 a1 ; 0xfdda7 pci32.c:414
pushaw ; 60 ; 0xfddaf
rep add byte [bx+si], al ; f3 00 00 ; 0xfddb0
mov es, [di-010h] ; 8e 45 f0 ; 0xfddb3
db 066h, 026h, 089h, 003h
; mov dword [es:bp+di], eax ; 66 26 89 03 ; 0xfddb6
jmp short 0ddcch ; eb 10 ; 0xfddba pci32.c:417
mov ax, word [di+024h] ; 8b 45 24 ; 0xfddbc pci32.c:420
xor ah, ah ; 30 e4 ; 0xfddbf
or ah, 081h ; 80 cc 81 ; 0xfddc1
mov dword [di+024h], eax ; 66 89 45 24 ; 0xfddc4
or word [di+02ch], strict byte 00001h ; 83 4d 2c 01 ; 0xfddc8 pci32.c:421
lea sp, [di-00ch] ; 8d 65 f4 ; 0xfddcc pci32.c:423
pop di ; 5f ; 0xfddcf
pop si ; 5e ; 0xfddd0
pop bx ; 5b ; 0xfddd1
pop bp ; 5d ; 0xfddd2
retn ; c3 ; 0xfddd3
section BIOS32CONST progbits vstart=0xddd4 align=1 ; size=0x0 class=FAR_DATA group=BIOS32_GROUP
section BIOS32CONST2 progbits vstart=0xddd4 align=1 ; size=0x0 class=FAR_DATA group=BIOS32_GROUP
section BIOS32_DATA progbits vstart=0xddd4 align=1 ; size=0x0 class=FAR_DATA group=BIOS32_GROUP
; Padding 0x22c bytes at 0xfddd4
times 556 db 0
section BIOSSEG progbits vstart=0xe000 align=1 ; size=0x2000 class=CODE group=AUTO
; disGetNextSymbol 0xfe000 LB 0x2000 -> off=0x0 cb=0000000000000030 uValue=00000000000f0000 'biosorg_check_before_or_at_0E02Eh'
biosorg_check_before_or_at_0E02Eh: ; 0xfe000 LB 0x30
times 0x2e db 0
db 'XM'
; disGetNextSymbol 0xfe030 LB 0x1fd0 -> off=0x0 cb=0000000000000004 uValue=00000000000f0030 'eoi_both_pics'
eoi_both_pics: ; 0xfe030 LB 0x4
mov AL, strict byte 020h ; b0 20 ; 0xfe030 orgs.asm:247
out strict byte 0a0h, AL ; e6 a0 ; 0xfe032 orgs.asm:248
; disGetNextSymbol 0xfe034 LB 0x1fcc -> off=0x0 cb=0000000000000005 uValue=00000000000f0034 'eoi_master_pic'
eoi_master_pic: ; 0xfe034 LB 0x5
mov AL, strict byte 020h ; b0 20 ; 0xfe034 orgs.asm:250
out strict byte 020h, AL ; e6 20 ; 0xfe036 orgs.asm:251
retn ; c3 ; 0xfe038 orgs.asm:252
; disGetNextSymbol 0xfe039 LB 0x1fc7 -> off=0x0 cb=000000000000000b uValue=0000000000000039 'set_int_vects'
set_int_vects: ; 0xfe039 LB 0xb
mov word [bx], ax ; 89 07 ; 0xfe039 orgs.asm:259
mov word [bx+002h], dx ; 89 57 02 ; 0xfe03b orgs.asm:260
add bx, strict byte 00004h ; 83 c3 04 ; 0xfe03e orgs.asm:261
loop 0e039h ; e2 f6 ; 0xfe041 orgs.asm:262
retn ; c3 ; 0xfe043 orgs.asm:263
; disGetNextSymbol 0xfe044 LB 0x1fbc -> off=0x0 cb=0000000000000006 uValue=00000000000f0044 'eoi_jmp_post'
eoi_jmp_post: ; 0xfe044 LB 0x6
in AL, strict byte 060h ; e4 60 ; 0xfe044 orgs.asm:271
mov AL, strict byte 020h ; b0 20 ; 0xfe046 orgs.asm:272
out strict byte 020h, AL ; e6 20 ; 0xfe048 orgs.asm:273
; disGetNextSymbol 0xfe04a LB 0x1fb6 -> off=0x0 cb=0000000000000009 uValue=00000000000f004a 'no_eoi_jmp_post'
no_eoi_jmp_post: ; 0xfe04a LB 0x9
mov ax, strict word 00040h ; b8 40 00 ; 0xfe04a orgs.asm:276
mov ds, ax ; 8e d8 ; 0xfe04d orgs.asm:277
jmp far [word 00067h] ; ff 2e 67 00 ; 0xfe04f orgs.asm:278
; disGetNextSymbol 0xfe053 LB 0x1fad -> off=0x0 cb=0000000000000002 uValue=00000000000f0053 'seg_40_value'
seg_40_value: ; 0xfe053 LB 0x2
inc ax ; 40 ; 0xfe053
times 0x1 db 0
; disGetNextSymbol 0xfe055 LB 0x1fab -> off=0x0 cb=0000000000000006 uValue=00000000000f0055 'biosorg_check_before_or_at_0E059h'
biosorg_check_before_or_at_0E059h: ; 0xfe055 LB 0x6
add byte [bx+si], al ; 00 00 ; 0xfe055
add byte [bx+si], al ; 00 00 ; 0xfe057
pop ax ; 58 ; 0xfe059
dec bp ; 4d ; 0xfe05a
; disGetNextSymbol 0xfe05b LB 0x1fa5 -> off=0x0 cb=000000000000006e uValue=00000000000f005b 'post'
post: ; 0xfe05b LB 0x6e
cli ; fa ; 0xfe05b orgs.asm:287
smsw ax ; 0f 01 e0 ; 0xfe05c orgs.asm:293
test ax, strict word 00001h ; a9 01 00 ; 0xfe05f orgs.asm:294
je short 0e06ah ; 74 06 ; 0xfe062 orgs.asm:295
mov AL, strict byte 001h ; b0 01 ; 0xfe064 orgs.asm:304
out strict byte 092h, AL ; e6 92 ; 0xfe066 orgs.asm:305
jmp short 0e068h ; eb fe ; 0xfe068 orgs.asm:306
mov AL, strict byte 00fh ; b0 0f ; 0xfe06a orgs.asm:311
out strict byte 070h, AL ; e6 70 ; 0xfe06c orgs.asm:312
in AL, strict byte 071h ; e4 71 ; 0xfe06e orgs.asm:313
xchg ah, al ; 86 c4 ; 0xfe070 orgs.asm:316
in AL, strict byte 064h ; e4 64 ; 0xfe072 orgs.asm:320
test AL, strict byte 004h ; a8 04 ; 0xfe074 orgs.asm:321
je short 0e08bh ; 74 13 ; 0xfe076 orgs.asm:322
db 08ah, 0c4h
; mov al, ah ; 8a c4 ; 0xfe078 orgs.asm:325
db 00ah, 0c0h
; or al, al ; 0a c0 ; 0xfe07a orgs.asm:326
jne short 0e08bh ; 75 0d ; 0xfe07c orgs.asm:327
mov ds, [cs:0e053h] ; 2e 8e 1e 53 e0 ; 0xfe07e orgs.asm:333
cmp word [word 00072h], 01234h ; 81 3e 72 00 34 12 ; 0xfe083 orgs.asm:334
jne short 0e064h ; 75 d9 ; 0xfe089 orgs.asm:335
mov AL, strict byte 00fh ; b0 0f ; 0xfe08b orgs.asm:339
out strict byte 070h, AL ; e6 70 ; 0xfe08d orgs.asm:340
mov AL, strict byte 000h ; b0 00 ; 0xfe08f orgs.asm:341
out strict byte 071h, AL ; e6 71 ; 0xfe091 orgs.asm:342
db 08ah, 0c4h
; mov al, ah ; 8a c4 ; 0xfe093 orgs.asm:346
cmp AL, strict byte 009h ; 3c 09 ; 0xfe095 orgs.asm:347
je short 0e0abh ; 74 12 ; 0xfe097 orgs.asm:348
cmp AL, strict byte 00ah ; 3c 0a ; 0xfe099 orgs.asm:349
je short 0e0abh ; 74 0e ; 0xfe09b orgs.asm:350
db 032h, 0c0h
; xor al, al ; 32 c0 ; 0xfe09d orgs.asm:352
out strict byte 00dh, AL ; e6 0d ; 0xfe09f orgs.asm:355
out strict byte 0dah, AL ; e6 da ; 0xfe0a1 orgs.asm:356
mov AL, strict byte 0c0h ; b0 c0 ; 0xfe0a3 orgs.asm:359
out strict byte 0d6h, AL ; e6 d6 ; 0xfe0a5 orgs.asm:360
mov AL, strict byte 000h ; b0 00 ; 0xfe0a7 orgs.asm:361
out strict byte 0d4h, AL ; e6 d4 ; 0xfe0a9 orgs.asm:362
db 08ah, 0c4h
; mov al, ah ; 8a c4 ; 0xfe0ab orgs.asm:366
cmp AL, strict byte 000h ; 3c 00 ; 0xfe0ad orgs.asm:367
je short 0e0c9h ; 74 18 ; 0xfe0af orgs.asm:368
cmp AL, strict byte 00dh ; 3c 0d ; 0xfe0b1 orgs.asm:370
jnc short 0e0c9h ; 73 14 ; 0xfe0b3 orgs.asm:371
cmp AL, strict byte 009h ; 3c 09 ; 0xfe0b5 orgs.asm:372
jne short 0e0bch ; 75 03 ; 0xfe0b7 orgs.asm:373
jmp near 0e363h ; e9 a7 02 ; 0xfe0b9 orgs.asm:374
mov sp, 00400h ; bc 00 04 ; 0xfe0bc orgs.asm:377
cmp AL, strict byte 005h ; 3c 05 ; 0xfe0bf orgs.asm:379
je short 0e044h ; 74 81 ; 0xfe0c1 orgs.asm:380
cmp AL, strict byte 00ah ; 3c 0a ; 0xfe0c3 orgs.asm:382
je short 0e04ah ; 74 83 ; 0xfe0c5 orgs.asm:383
jmp short 0e0c9h ; eb 00 ; 0xfe0c7 orgs.asm:387
; disGetNextSymbol 0xfe0c9 LB 0x1f37 -> off=0x0 cb=00000000000001f5 uValue=00000000000f00c9 'normal_post'
normal_post: ; 0xfe0c9 LB 0x1f5
mov ax, 07800h ; b8 00 78 ; 0xfe0c9 orgs.asm:396
db 08bh, 0e0h
; mov sp, ax ; 8b e0 ; 0xfe0cc orgs.asm:397
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe0ce orgs.asm:398
mov ds, ax ; 8e d8 ; 0xfe0d0 orgs.asm:399
mov ss, ax ; 8e d0 ; 0xfe0d2 orgs.asm:400
mov es, ax ; 8e c0 ; 0xfe0d4 orgs.asm:404
db 033h, 0ffh
; xor di, di ; 33 ff ; 0xfe0d6 orgs.asm:405
cld ; fc ; 0xfe0d8 orgs.asm:406
mov cx, 00239h ; b9 39 02 ; 0xfe0d9 orgs.asm:407
rep stosw ; f3 ab ; 0xfe0dc orgs.asm:408
inc di ; 47 ; 0xfe0de orgs.asm:409
inc di ; 47 ; 0xfe0df orgs.asm:410
mov cx, 005c6h ; b9 c6 05 ; 0xfe0e0 orgs.asm:411
rep stosw ; f3 ab ; 0xfe0e3 orgs.asm:412
db 033h, 0dbh
; xor bx, bx ; 33 db ; 0xfe0e5 orgs.asm:416
add bx, 01000h ; 81 c3 00 10 ; 0xfe0e7 orgs.asm:418
cmp bx, 09000h ; 81 fb 00 90 ; 0xfe0eb orgs.asm:419
jnc short 0e0fch ; 73 0b ; 0xfe0ef orgs.asm:420
mov es, bx ; 8e c3 ; 0xfe0f1 orgs.asm:421
db 033h, 0ffh
; xor di, di ; 33 ff ; 0xfe0f3 orgs.asm:422
mov cx, 08000h ; b9 00 80 ; 0xfe0f5 orgs.asm:423
rep stosw ; f3 ab ; 0xfe0f8 orgs.asm:424
jmp short 0e0e7h ; eb eb ; 0xfe0fa orgs.asm:425
mov es, bx ; 8e c3 ; 0xfe0fc orgs.asm:427
db 033h, 0ffh
; xor di, di ; 33 ff ; 0xfe0fe orgs.asm:428
mov cx, 07ff8h ; b9 f8 7f ; 0xfe100 orgs.asm:429
rep stosw ; f3 ab ; 0xfe103 orgs.asm:430
db 033h, 0dbh
; xor bx, bx ; 33 db ; 0xfe105 orgs.asm:431
push CS ; 0e ; 0xfe107 orgs.asm:113
pop DS ; 1f ; 0xfe108 orgs.asm:114
cld ; fc ; 0xfe109 orgs.asm:115
call 01874h ; e8 67 37 ; 0xfe10a orgs.asm:435
call 0e8e7h ; e8 d7 07 ; 0xfe10d orgs.asm:438
db 033h, 0dbh
; xor bx, bx ; 33 db ; 0xfe110 orgs.asm:442
mov ds, bx ; 8e db ; 0xfe112 orgs.asm:443
mov cx, strict word 00060h ; b9 60 00 ; 0xfe114 orgs.asm:444
mov ax, 0ff53h ; b8 53 ff ; 0xfe117 orgs.asm:445
mov dx, 0f000h ; ba 00 f0 ; 0xfe11a orgs.asm:446
call 0e039h ; e8 19 ff ; 0xfe11d orgs.asm:447
mov bx, 001a0h ; bb a0 01 ; 0xfe120 orgs.asm:452
mov cx, strict word 00010h ; b9 10 00 ; 0xfe123 orgs.asm:453
call 0e039h ; e8 10 ff ; 0xfe126 orgs.asm:454
mov AL, strict byte 016h ; b0 16 ; 0xfe129 orgs.asm:457
out strict byte 070h, AL ; e6 70 ; 0xfe12b orgs.asm:458
in AL, strict byte 071h ; e4 71 ; 0xfe12d orgs.asm:459
db 08ah, 0e0h
; mov ah, al ; 8a e0 ; 0xfe12f orgs.asm:460
mov AL, strict byte 015h ; b0 15 ; 0xfe131 orgs.asm:461
out strict byte 070h, AL ; e6 70 ; 0xfe133 orgs.asm:462
in AL, strict byte 071h ; e4 71 ; 0xfe135 orgs.asm:463
sub ax, strict byte 00001h ; 83 e8 01 ; 0xfe137 orgs.asm:464
mov word [00413h], ax ; a3 13 04 ; 0xfe13a orgs.asm:465
mov ax, 0e9cch ; b8 cc e9 ; 0xfe13d orgs.asm:104
mov word [00018h], ax ; a3 18 00 ; 0xfe140 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe143 orgs.asm:106
mov word [0001ah], ax ; a3 1a 00 ; 0xfe146 orgs.asm:107
mov ax, 0f84dh ; b8 4d f8 ; 0xfe149 orgs.asm:104
mov word [00044h], ax ; a3 44 00 ; 0xfe14c orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe14f orgs.asm:106
mov word [00046h], ax ; a3 46 00 ; 0xfe152 orgs.asm:107
mov ax, 0f841h ; b8 41 f8 ; 0xfe155 orgs.asm:104
mov word [00048h], ax ; a3 48 00 ; 0xfe158 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe15b orgs.asm:106
mov word [0004ah], ax ; a3 4a 00 ; 0xfe15e orgs.asm:107
mov ax, 0f859h ; b8 59 f8 ; 0xfe161 orgs.asm:104
mov word [00054h], ax ; a3 54 00 ; 0xfe164 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe167 orgs.asm:106
mov word [00056h], ax ; a3 56 00 ; 0xfe16a orgs.asm:107
mov ax, 0efd4h ; b8 d4 ef ; 0xfe16d orgs.asm:104
mov word [0005ch], ax ; a3 5c 00 ; 0xfe170 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe173 orgs.asm:106
mov word [0005eh], ax ; a3 5e 00 ; 0xfe176 orgs.asm:107
mov ax, 0f0a4h ; b8 a4 f0 ; 0xfe179 orgs.asm:104
mov word [00060h], ax ; a3 60 00 ; 0xfe17c orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe17f orgs.asm:106
mov word [00062h], ax ; a3 62 00 ; 0xfe182 orgs.asm:107
mov ax, 0e6f2h ; b8 f2 e6 ; 0xfe185 orgs.asm:104
mov word [00064h], ax ; a3 64 00 ; 0xfe188 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe18b orgs.asm:106
mov word [00066h], ax ; a3 66 00 ; 0xfe18e orgs.asm:107
mov ax, 0efedh ; b8 ed ef ; 0xfe191 orgs.asm:104
mov word [00070h], ax ; a3 70 00 ; 0xfe194 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe197 orgs.asm:106
mov word [00072h], ax ; a3 72 00 ; 0xfe19a orgs.asm:107
call 0e778h ; e8 d8 05 ; 0xfe19d orgs.asm:481
call 0f126h ; e8 83 0f ; 0xfe1a0 orgs.asm:485
call 0f151h ; e8 ab 0f ; 0xfe1a3 orgs.asm:486
mov ax, 0fe6eh ; b8 6e fe ; 0xfe1a6 orgs.asm:104
mov word [00068h], ax ; a3 68 00 ; 0xfe1a9 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe1ac orgs.asm:106
mov word [0006ah], ax ; a3 6a 00 ; 0xfe1af orgs.asm:107
mov ax, 0fea5h ; b8 a5 fe ; 0xfe1b2 orgs.asm:104
mov word [00020h], ax ; a3 20 00 ; 0xfe1b5 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe1b8 orgs.asm:106
mov word [00022h], ax ; a3 22 00 ; 0xfe1bb orgs.asm:107
mov AL, strict byte 034h ; b0 34 ; 0xfe1be orgs.asm:492
out strict byte 043h, AL ; e6 43 ; 0xfe1c0 orgs.asm:493
mov AL, strict byte 000h ; b0 00 ; 0xfe1c2 orgs.asm:494
out strict byte 040h, AL ; e6 40 ; 0xfe1c4 orgs.asm:495
out strict byte 040h, AL ; e6 40 ; 0xfe1c6 orgs.asm:496
mov ax, 0f065h ; b8 65 f0 ; 0xfe1c8 orgs.asm:104
mov word [00040h], ax ; a3 40 00 ; 0xfe1cb orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe1ce orgs.asm:106
mov word [00042h], ax ; a3 42 00 ; 0xfe1d1 orgs.asm:107
mov ax, 0e987h ; b8 87 e9 ; 0xfe1d4 orgs.asm:104
mov word [00024h], ax ; a3 24 00 ; 0xfe1d7 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe1da orgs.asm:106
mov word [00026h], ax ; a3 26 00 ; 0xfe1dd orgs.asm:107
mov ax, 0e82eh ; b8 2e e8 ; 0xfe1e0 orgs.asm:104
mov word [00058h], ax ; a3 58 00 ; 0xfe1e3 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe1e6 orgs.asm:106
mov word [0005ah], ax ; a3 5a 00 ; 0xfe1e9 orgs.asm:107
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe1ec orgs.asm:505
mov ds, ax ; 8e d8 ; 0xfe1ee orgs.asm:506
mov AL, strict byte 010h ; b0 10 ; 0xfe1f0 orgs.asm:507
mov byte [00496h], AL ; a2 96 04 ; 0xfe1f2 orgs.asm:508
mov bx, strict word 0001eh ; bb 1e 00 ; 0xfe1f5 orgs.asm:510
mov word [0041ah], bx ; 89 1e 1a 04 ; 0xfe1f8 orgs.asm:511
mov word [0041ch], bx ; 89 1e 1c 04 ; 0xfe1fc orgs.asm:512
mov word [00480h], bx ; 89 1e 80 04 ; 0xfe200 orgs.asm:513
mov bx, strict word 0003eh ; bb 3e 00 ; 0xfe204 orgs.asm:514
mov word [00482h], bx ; 89 1e 82 04 ; 0xfe207 orgs.asm:515
mov AL, strict byte 014h ; b0 14 ; 0xfe20b orgs.asm:518
out strict byte 070h, AL ; e6 70 ; 0xfe20d orgs.asm:519
in AL, strict byte 071h ; e4 71 ; 0xfe20f orgs.asm:520
mov byte [00410h], AL ; a2 10 04 ; 0xfe211 orgs.asm:521
push DS ; 1e ; 0xfe214 orgs.asm:523
push CS ; 0e ; 0xfe215 orgs.asm:113
pop DS ; 1f ; 0xfe216 orgs.asm:114
cld ; fc ; 0xfe217 orgs.asm:115
mov ax, 0c000h ; b8 00 c0 ; 0xfe218 orgs.asm:528
mov dx, 0c800h ; ba 00 c8 ; 0xfe21b orgs.asm:529
call 01600h ; e8 df 33 ; 0xfe21e orgs.asm:530
call 04e4bh ; e8 27 6c ; 0xfe221 orgs.asm:533
pop DS ; 1f ; 0xfe224 orgs.asm:534
mov ax, 0ff53h ; b8 53 ff ; 0xfe225 orgs.asm:104
mov word [0003ch], ax ; a3 3c 00 ; 0xfe228 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe22b orgs.asm:106
mov word [0003eh], ax ; a3 3e 00 ; 0xfe22e orgs.asm:107
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe231 orgs.asm:538
mov ds, ax ; 8e d8 ; 0xfe233 orgs.asm:539
db 033h, 0dbh
; xor bx, bx ; 33 db ; 0xfe235 orgs.asm:540
mov CL, strict byte 014h ; b1 14 ; 0xfe237 orgs.asm:541
mov dx, 00378h ; ba 78 03 ; 0xfe239 orgs.asm:542
call 0ecedh ; e8 ae 0a ; 0xfe23c orgs.asm:543
mov dx, 00278h ; ba 78 02 ; 0xfe23f orgs.asm:544
call 0ecedh ; e8 a8 0a ; 0xfe242 orgs.asm:545
sal bx, 00eh ; c1 e3 0e ; 0xfe245 orgs.asm:210
mov ax, word [00410h] ; a1 10 04 ; 0xfe248 orgs.asm:547
and ax, 03fffh ; 25 ff 3f ; 0xfe24b orgs.asm:548
db 00bh, 0c3h
; or ax, bx ; 0b c3 ; 0xfe24e orgs.asm:549
mov word [00410h], ax ; a3 10 04 ; 0xfe250 orgs.asm:550
mov ax, 0e746h ; b8 46 e7 ; 0xfe253 orgs.asm:104
mov word [0002ch], ax ; a3 2c 00 ; 0xfe256 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe259 orgs.asm:106
mov word [0002eh], ax ; a3 2e 00 ; 0xfe25c orgs.asm:107
mov ax, 0e746h ; b8 46 e7 ; 0xfe25f orgs.asm:104
mov word [00030h], ax ; a3 30 00 ; 0xfe262 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe265 orgs.asm:106
mov word [00032h], ax ; a3 32 00 ; 0xfe268 orgs.asm:107
mov ax, 0e739h ; b8 39 e7 ; 0xfe26b orgs.asm:104
mov word [00050h], ax ; a3 50 00 ; 0xfe26e orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe271 orgs.asm:106
mov word [00052h], ax ; a3 52 00 ; 0xfe274 orgs.asm:107
db 033h, 0dbh
; xor bx, bx ; 33 db ; 0xfe277 orgs.asm:556
mov CL, strict byte 00ah ; b1 0a ; 0xfe279 orgs.asm:557
mov dx, 003f8h ; ba f8 03 ; 0xfe27b orgs.asm:558
call 0ed0bh ; e8 8a 0a ; 0xfe27e orgs.asm:559
mov dx, 002f8h ; ba f8 02 ; 0xfe281 orgs.asm:560
call 0ed0bh ; e8 84 0a ; 0xfe284 orgs.asm:561
mov dx, 003e8h ; ba e8 03 ; 0xfe287 orgs.asm:562
call 0ed0bh ; e8 7e 0a ; 0xfe28a orgs.asm:563
mov dx, 002e8h ; ba e8 02 ; 0xfe28d orgs.asm:564
call 0ed0bh ; e8 78 0a ; 0xfe290 orgs.asm:565
sal bx, 009h ; c1 e3 09 ; 0xfe293 orgs.asm:210
mov ax, word [00410h] ; a1 10 04 ; 0xfe296 orgs.asm:567
and ax, 0f1ffh ; 25 ff f1 ; 0xfe299 orgs.asm:568
db 00bh, 0c3h
; or ax, bx ; 0b c3 ; 0xfe29c orgs.asm:569
mov word [00410h], ax ; a3 10 04 ; 0xfe29e orgs.asm:570
mov ax, 0ff53h ; b8 53 ff ; 0xfe2a1 orgs.asm:104
mov word [00128h], ax ; a3 28 01 ; 0xfe2a4 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe2a7 orgs.asm:106
mov word [0012ah], ax ; a3 2a 01 ; 0xfe2aa orgs.asm:107
mov ax, 0f8f9h ; b8 f9 f8 ; 0xfe2ad orgs.asm:104
mov word [001c0h], ax ; a3 c0 01 ; 0xfe2b0 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe2b3 orgs.asm:106
mov word [001c2h], ax ; a3 c2 01 ; 0xfe2b6 orgs.asm:107
call 0edbfh ; e8 03 0b ; 0xfe2b9 orgs.asm:576
jmp short 0e303h ; eb 45 ; 0xfe2bc orgs.asm:578
; disGetNextSymbol 0xfe2be LB 0x1d42 -> off=0x0 cb=0000000000000005 uValue=00000000000f02be 'biosorg_check_before_or_at_0E2C1h'
biosorg_check_before_or_at_0E2C1h: ; 0xfe2be LB 0x5
add byte [bx+si], al ; 00 00 ; 0xfe2be
add byte [bx+si+04dh], bl ; 00 58 4d ; 0xfe2c0
; disGetNextSymbol 0xfe2c3 LB 0x1d3d -> off=0x0 cb=0000000000000007 uValue=00000000000f02c3 'nmi'
nmi: ; 0xfe2c3 LB 0x7
push CS ; 0e ; 0xfe2c3 orgs.asm:113
pop DS ; 1f ; 0xfe2c4 orgs.asm:114
cld ; fc ; 0xfe2c5 orgs.asm:115
call 01835h ; e8 6c 35 ; 0xfe2c6 orgs.asm:587
iret ; cf ; 0xfe2c9 orgs.asm:588
; disGetNextSymbol 0xfe2ca LB 0x1d36 -> off=0x0 cb=0000000000000008 uValue=00000000000f02ca 'int75_handler'
int75_handler: ; 0xfe2ca LB 0x8
out strict byte 0f0h, AL ; e6 f0 ; 0xfe2ca orgs.asm:591
call 0e030h ; e8 61 fd ; 0xfe2cc orgs.asm:592
int 002h ; cd 02 ; 0xfe2cf orgs.asm:593
iret ; cf ; 0xfe2d1 orgs.asm:594
; disGetNextSymbol 0xfe2d2 LB 0x1d2e -> off=0x0 cb=00000000000000ba uValue=00000000000f02d2 'hard_drive_post'
hard_drive_post: ; 0xfe2d2 LB 0xba
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe2d2 orgs.asm:599
mov ds, ax ; 8e d8 ; 0xfe2d4 orgs.asm:600
mov byte [00474h], AL ; a2 74 04 ; 0xfe2d6 orgs.asm:602
mov byte [00477h], AL ; a2 77 04 ; 0xfe2d9 orgs.asm:603
mov byte [0048ch], AL ; a2 8c 04 ; 0xfe2dc orgs.asm:604
mov byte [0048dh], AL ; a2 8d 04 ; 0xfe2df orgs.asm:605
mov byte [0048eh], AL ; a2 8e 04 ; 0xfe2e2 orgs.asm:606
mov AL, strict byte 0c0h ; b0 c0 ; 0xfe2e5 orgs.asm:607
mov byte [00476h], AL ; a2 76 04 ; 0xfe2e7 orgs.asm:608
mov ax, 0e3feh ; b8 fe e3 ; 0xfe2ea orgs.asm:104
mov word [0004ch], ax ; a3 4c 00 ; 0xfe2ed orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe2f0 orgs.asm:106
mov word [0004eh], ax ; a3 4e 00 ; 0xfe2f3 orgs.asm:107
mov ax, 0f8e7h ; b8 e7 f8 ; 0xfe2f6 orgs.asm:104
mov word [001d8h], ax ; a3 d8 01 ; 0xfe2f9 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe2fc orgs.asm:106
mov word [001dah], ax ; a3 da 01 ; 0xfe2ff orgs.asm:107
retn ; c3 ; 0xfe302 orgs.asm:613
mov ax, 0f8bch ; b8 bc f8 ; 0xfe303 orgs.asm:104
mov word [001d0h], ax ; a3 d0 01 ; 0xfe306 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe309 orgs.asm:106
mov word [001d2h], ax ; a3 d2 01 ; 0xfe30c orgs.asm:107
mov ax, 0e2cah ; b8 ca e2 ; 0xfe30f orgs.asm:104
mov word [001d4h], ax ; a3 d4 01 ; 0xfe312 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe315 orgs.asm:106
mov word [001d6h], ax ; a3 d6 01 ; 0xfe318 orgs.asm:107
call 0e753h ; e8 35 04 ; 0xfe31b orgs.asm:625
push CS ; 0e ; 0xfe31e orgs.asm:113
pop DS ; 1f ; 0xfe31f orgs.asm:114
cld ; fc ; 0xfe320 orgs.asm:115
pushad ; 66 60 ; 0xfe321 orgs.asm:632
call 016a6h ; e8 80 33 ; 0xfe323 orgs.asm:633
popad ; 66 61 ; 0xfe326 orgs.asm:634
call 01da5h ; e8 7a 3a ; 0xfe328 orgs.asm:639
call 022c4h ; e8 96 3f ; 0xfe32b orgs.asm:640
sti ; fb ; 0xfe32e orgs.asm:647
call 093f0h ; e8 be b0 ; 0xfe32f orgs.asm:648
cli ; fa ; 0xfe332 orgs.asm:649
call 0835ch ; e8 26 a0 ; 0xfe333 orgs.asm:654
call 0ed2fh ; e8 f6 09 ; 0xfe336 orgs.asm:658
call 0e2d2h ; e8 96 ff ; 0xfe339 orgs.asm:661
push CS ; 0e ; 0xfe33c orgs.asm:113
pop DS ; 1f ; 0xfe33d orgs.asm:114
cld ; fc ; 0xfe33e orgs.asm:115
mov ax, 0c800h ; b8 00 c8 ; 0xfe33f orgs.asm:665
mov dx, 0f000h ; ba 00 f0 ; 0xfe342 orgs.asm:666
call 01600h ; e8 b8 32 ; 0xfe345 orgs.asm:667
db 066h, 033h, 0c0h
; xor eax, eax ; 66 33 c0 ; 0xfe348 orgs.asm:674
db 066h, 033h, 0dbh
; xor ebx, ebx ; 66 33 db ; 0xfe34b orgs.asm:675
db 066h, 033h, 0c9h
; xor ecx, ecx ; 66 33 c9 ; 0xfe34e orgs.asm:676
db 066h, 033h, 0d2h
; xor edx, edx ; 66 33 d2 ; 0xfe351 orgs.asm:677
call 01894h ; e8 3d 35 ; 0xfe354 orgs.asm:681
call 03c95h ; e8 3b 59 ; 0xfe357 orgs.asm:684
sti ; fb ; 0xfe35a orgs.asm:687
int 019h ; cd 19 ; 0xfe35b orgs.asm:688
sti ; fb ; 0xfe35d orgs.asm:690
hlt ; f4 ; 0xfe35e orgs.asm:692
jmp short 0e35eh ; eb fd ; 0xfe35f orgs.asm:693
cli ; fa ; 0xfe361 orgs.asm:694
hlt ; f4 ; 0xfe362 orgs.asm:695
mov ax, strict word 00040h ; b8 40 00 ; 0xfe363 orgs.asm:704
mov ds, ax ; 8e d8 ; 0xfe366 orgs.asm:705
mov ss, [word 00069h] ; 8e 16 69 00 ; 0xfe368 orgs.asm:707
mov sp, word [word 00067h] ; 8b 26 67 00 ; 0xfe36c orgs.asm:708
in AL, strict byte 092h ; e4 92 ; 0xfe370 orgs.asm:710
and AL, strict byte 0fdh ; 24 fd ; 0xfe372 orgs.asm:711
out strict byte 092h, AL ; e6 92 ; 0xfe374 orgs.asm:712
lidt [cs:0efe7h] ; 2e 0f 01 1e e7 ef ; 0xfe376 orgs.asm:714
pop DS ; 1f ; 0xfe37c orgs.asm:716
pop ES ; 07 ; 0xfe37d orgs.asm:717
db 08bh, 0ech
; mov bp, sp ; 8b ec ; 0xfe37e orgs.asm:719
in AL, strict byte 080h ; e4 80 ; 0xfe380 orgs.asm:721
mov byte [bp+00fh], al ; 88 46 0f ; 0xfe382 orgs.asm:722
db 03ah, 0e0h
; cmp ah, al ; 3a e0 ; 0xfe385 orgs.asm:724
popaw ; 61 ; 0xfe387 orgs.asm:726
sti ; fb ; 0xfe388 orgs.asm:727
retf 00002h ; ca 02 00 ; 0xfe389 orgs.asm:728
; disGetNextSymbol 0xfe38c LB 0x1c74 -> off=0x0 cb=0000000000000072 uValue=00000000000f038c 'biosorg_check_before_or_at_0E3FCh'
biosorg_check_before_or_at_0E3FCh: ; 0xfe38c LB 0x72
times 0x70 db 0
db 'XM'
; disGetNextSymbol 0xfe3fe LB 0x1c02 -> off=0x0 cb=0000000000000003 uValue=00000000000f03fe 'int13_handler'
int13_handler: ; 0xfe3fe LB 0x3
jmp near 0ec5bh ; e9 5a 08 ; 0xfe3fe orgs.asm:738
; disGetNextSymbol 0xfe401 LB 0x1bff -> off=0x0 cb=0000000000000170 uValue=00000000000f0401 'rom_fdpt'
rom_fdpt: ; 0xfe401 LB 0x170
db 032h, 001h, 004h, 000h, 000h, 080h, 000h, 000h, 000h, 000h, 000h, 000h, 031h, 001h, 011h, 000h
db 067h, 002h, 004h, 000h, 000h, 02ch, 001h, 000h, 000h, 000h, 000h, 000h, 067h, 002h, 011h, 000h
db 067h, 002h, 006h, 000h, 000h, 02ch, 001h, 000h, 000h, 000h, 000h, 000h, 067h, 002h, 011h, 000h
db 0ach, 003h, 008h, 000h, 000h, 000h, 002h, 000h, 000h, 000h, 000h, 000h, 0ach, 003h, 011h, 000h
db 0ach, 003h, 006h, 000h, 000h, 000h, 002h, 000h, 000h, 000h, 000h, 000h, 0ach, 003h, 011h, 000h
db 067h, 002h, 004h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 067h, 002h, 011h, 000h
db 0ceh, 001h, 008h, 000h, 000h, 000h, 001h, 000h, 000h, 000h, 000h, 000h, 0ffh, 001h, 011h, 000h
db 0ddh, 002h, 005h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ddh, 002h, 011h, 000h
db 084h, 003h, 00fh, 000h, 000h, 0ffh, 0ffh, 000h, 008h, 000h, 000h, 000h, 085h, 003h, 011h, 000h
db 034h, 003h, 003h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 034h, 003h, 011h, 000h
db 057h, 003h, 005h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 057h, 003h, 011h, 000h
db 057h, 003h, 007h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 057h, 003h, 011h, 000h
db 032h, 001h, 008h, 000h, 000h, 080h, 000h, 000h, 000h, 000h, 000h, 000h, 03fh, 001h, 011h, 000h
db 0ddh, 002h, 007h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 0ddh, 002h, 011h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
db 064h, 002h, 004h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 079h, 002h, 011h, 000h
db 0d1h, 003h, 005h, 000h, 000h, 02ch, 001h, 000h, 000h, 000h, 000h, 000h, 0d1h, 003h, 011h, 000h
db 0d1h, 003h, 007h, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 000h, 000h, 0d1h, 003h, 011h, 000h
db 000h, 004h, 007h, 000h, 000h, 000h, 002h, 000h, 000h, 000h, 000h, 000h, 0ffh, 003h, 011h, 000h
db 0ddh, 002h, 005h, 000h, 000h, 02ch, 001h, 000h, 000h, 000h, 000h, 000h, 0dch, 002h, 011h, 000h
db 0ddh, 002h, 007h, 000h, 000h, 02ch, 001h, 000h, 000h, 000h, 000h, 000h, 0dch, 002h, 011h, 000h
db 0ddh, 002h, 005h, 000h, 000h, 02ch, 001h, 000h, 000h, 000h, 000h, 000h, 0ddh, 002h, 011h, 000h
db 032h, 001h, 004h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 050h, 001h, 011h, 000h
; disGetNextSymbol 0xfe571 LB 0x1a8f -> off=0x0 cb=0000000000000181 uValue=00000000000f0571 'biosorg_check_before_or_at_0E6F0h'
biosorg_check_before_or_at_0E6F0h: ; 0xfe571 LB 0x181
times 0x17f db 0
db 'XM'
; disGetNextSymbol 0xfe6f2 LB 0x190e -> off=0x0 cb=0000000000000003 uValue=00000000000f06f2 'int19_handler'
int19_handler: ; 0xfe6f2 LB 0x3
jmp near 0f0aeh ; e9 b9 09 ; 0xfe6f2 orgs.asm:795
; disGetNextSymbol 0xfe6f5 LB 0x190b -> off=0x0 cb=000000000000000a uValue=00000000000f06f5 'biosorg_check_at_0E6F5h'
biosorg_check_at_0E6F5h: ; 0xfe6f5 LB 0xa
or word [bx+si], ax ; 09 00 ; 0xfe6f5
cld ; fc ; 0xfe6f7
add word [bx+di], ax ; 01 01 ; 0xfe6f8
je short 0e73ch ; 74 40 ; 0xfe6fa
times 0x3 db 0
; disGetNextSymbol 0xfe6ff LB 0x1901 -> off=0x0 cb=000000000000002a uValue=00000000000f06ff 'biosorg_check_before_or_at_0E727h'
biosorg_check_before_or_at_0E727h: ; 0xfe6ff LB 0x2a
times 0x28 db 0
db 'XM'
; disGetNextSymbol 0xfe729 LB 0x18d7 -> off=0x0 cb=0000000000000010 uValue=00000000000f0729 'biosorg_check_at_0E729h'
biosorg_check_at_0E729h: ; 0xfe729 LB 0x10
times 0xe db 0
db 'XM'
; disGetNextSymbol 0xfe739 LB 0x18c7 -> off=0x0 cb=000000000000001a uValue=00000000000f0739 'biosorg_check_at_0E739h'
biosorg_check_at_0E739h: ; 0xfe739 LB 0x1a
push DS ; 1e ; 0xfe739 orgs.asm:868
push ES ; 06 ; 0xfe73a orgs.asm:869
pushaw ; 60 ; 0xfe73b orgs.asm:107
push CS ; 0e ; 0xfe73c orgs.asm:113
pop DS ; 1f ; 0xfe73d orgs.asm:114
cld ; fc ; 0xfe73e orgs.asm:115
call 0633fh ; e8 fd 7b ; 0xfe73f orgs.asm:872
popaw ; 61 ; 0xfe742 orgs.asm:124
pop ES ; 07 ; 0xfe743 orgs.asm:874
pop DS ; 1f ; 0xfe744 orgs.asm:875
iret ; cf ; 0xfe745 orgs.asm:876
push DS ; 1e ; 0xfe746 orgs.asm:884
push ES ; 06 ; 0xfe747 orgs.asm:885
pushaw ; 60 ; 0xfe748 orgs.asm:107
push CS ; 0e ; 0xfe749 orgs.asm:113
pop DS ; 1f ; 0xfe74a orgs.asm:114
cld ; fc ; 0xfe74b orgs.asm:115
call 017cbh ; e8 7c 30 ; 0xfe74c orgs.asm:888
popaw ; 61 ; 0xfe74f orgs.asm:124
pop ES ; 07 ; 0xfe750 orgs.asm:890
pop DS ; 1f ; 0xfe751 orgs.asm:891
iret ; cf ; 0xfe752 orgs.asm:892
; disGetNextSymbol 0xfe753 LB 0x18ad -> off=0x0 cb=0000000000000025 uValue=00000000000f0753 'init_pic'
init_pic: ; 0xfe753 LB 0x25
mov AL, strict byte 011h ; b0 11 ; 0xfe753 orgs.asm:897
out strict byte 020h, AL ; e6 20 ; 0xfe755 orgs.asm:898
out strict byte 0a0h, AL ; e6 a0 ; 0xfe757 orgs.asm:899
mov AL, strict byte 008h ; b0 08 ; 0xfe759 orgs.asm:900
out strict byte 021h, AL ; e6 21 ; 0xfe75b orgs.asm:901
mov AL, strict byte 070h ; b0 70 ; 0xfe75d orgs.asm:902
out strict byte 0a1h, AL ; e6 a1 ; 0xfe75f orgs.asm:903
mov AL, strict byte 004h ; b0 04 ; 0xfe761 orgs.asm:904
out strict byte 021h, AL ; e6 21 ; 0xfe763 orgs.asm:905
mov AL, strict byte 002h ; b0 02 ; 0xfe765 orgs.asm:906
out strict byte 0a1h, AL ; e6 a1 ; 0xfe767 orgs.asm:907
mov AL, strict byte 001h ; b0 01 ; 0xfe769 orgs.asm:908
out strict byte 021h, AL ; e6 21 ; 0xfe76b orgs.asm:909
out strict byte 0a1h, AL ; e6 a1 ; 0xfe76d orgs.asm:910
mov AL, strict byte 0b8h ; b0 b8 ; 0xfe76f orgs.asm:911
out strict byte 021h, AL ; e6 21 ; 0xfe771 orgs.asm:912
mov AL, strict byte 08fh ; b0 8f ; 0xfe773 orgs.asm:913
out strict byte 0a1h, AL ; e6 a1 ; 0xfe775 orgs.asm:914
retn ; c3 ; 0xfe777 orgs.asm:915
; disGetNextSymbol 0xfe778 LB 0x1888 -> off=0x0 cb=0000000000000057 uValue=00000000000f0778 'ebda_post'
ebda_post: ; 0xfe778 LB 0x57
mov ax, 0e746h ; b8 46 e7 ; 0xfe778 orgs.asm:104
mov word [00034h], ax ; a3 34 00 ; 0xfe77b orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe77e orgs.asm:106
mov word [00036h], ax ; a3 36 00 ; 0xfe781 orgs.asm:107
mov ax, 0e746h ; b8 46 e7 ; 0xfe784 orgs.asm:104
mov word [0003ch], ax ; a3 3c 00 ; 0xfe787 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe78a orgs.asm:106
mov word [0003eh], ax ; a3 3e 00 ; 0xfe78d orgs.asm:107
mov ax, 0e746h ; b8 46 e7 ; 0xfe790 orgs.asm:104
mov word [001c8h], ax ; a3 c8 01 ; 0xfe793 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe796 orgs.asm:106
mov word [001cah], ax ; a3 ca 01 ; 0xfe799 orgs.asm:107
mov ax, 0e746h ; b8 46 e7 ; 0xfe79c orgs.asm:104
mov word [001cch], ax ; a3 cc 01 ; 0xfe79f orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe7a2 orgs.asm:106
mov word [001ceh], ax ; a3 ce 01 ; 0xfe7a5 orgs.asm:107
mov ax, 0e746h ; b8 46 e7 ; 0xfe7a8 orgs.asm:104
mov word [001dch], ax ; a3 dc 01 ; 0xfe7ab orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfe7ae orgs.asm:106
mov word [001deh], ax ; a3 de 01 ; 0xfe7b1 orgs.asm:107
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe7b4 orgs.asm:928
mov ds, ax ; 8e d8 ; 0xfe7b6 orgs.asm:929
mov ax, word [00413h] ; a1 13 04 ; 0xfe7b8 orgs.asm:930
mov cx, strict word 00040h ; b9 40 00 ; 0xfe7bb orgs.asm:931
mul cx ; f7 e1 ; 0xfe7be orgs.asm:932
mov word [0040eh], ax ; a3 0e 04 ; 0xfe7c0 orgs.asm:934
mov ds, ax ; 8e d8 ; 0xfe7c3 orgs.asm:936
mov byte [word 00000h], 001h ; c6 06 00 00 01 ; 0xfe7c5 orgs.asm:937
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe7ca orgs.asm:939
mov ds, ax ; 8e d8 ; 0xfe7cc orgs.asm:940
retn ; c3 ; 0xfe7ce orgs.asm:941
; disGetNextSymbol 0xfe7cf LB 0x1831 -> off=0x0 cb=000000000000005f uValue=00000000000f07cf 'biosorg_check_before_or_at_0E82Ch'
biosorg_check_before_or_at_0E82Ch: ; 0xfe7cf LB 0x5f
times 0x5d db 0
db 'XM'
; disGetNextSymbol 0xfe82e LB 0x17d2 -> off=0x0 cb=000000000000003d uValue=00000000000f082e 'biosorg_check_at_0E82Eh'
biosorg_check_at_0E82Eh: ; 0xfe82e LB 0x3d
sti ; fb ; 0xfe82e orgs.asm:952
pushfw ; 9c ; 0xfe82f orgs.asm:955
push ES ; 06 ; 0xfe830 orgs.asm:956
push DS ; 1e ; 0xfe831 orgs.asm:957
pushaw ; 60 ; 0xfe832 orgs.asm:107
cmp ah, 000h ; 80 fc 00 ; 0xfe833 orgs.asm:960
je short 0e84ah ; 74 12 ; 0xfe836 orgs.asm:961
cmp ah, 010h ; 80 fc 10 ; 0xfe838 orgs.asm:963
je short 0e84ah ; 74 0d ; 0xfe83b orgs.asm:964
push CS ; 0e ; 0xfe83d orgs.asm:113
pop DS ; 1f ; 0xfe83e orgs.asm:114
cld ; fc ; 0xfe83f orgs.asm:115
call 05599h ; e8 56 6d ; 0xfe840 orgs.asm:967
popaw ; 61 ; 0xfe843 orgs.asm:124
pop DS ; 1f ; 0xfe844 orgs.asm:969
pop ES ; 07 ; 0xfe845 orgs.asm:970
add sp, strict byte 00002h ; 83 c4 02 ; 0xfe846 orgs.asm:971
iret ; cf ; 0xfe849 orgs.asm:972
mov bx, strict word 00040h ; bb 40 00 ; 0xfe84a orgs.asm:975
mov ds, bx ; 8e db ; 0xfe84d orgs.asm:976
cli ; fa ; 0xfe84f orgs.asm:978
mov bx, word [word 0001ah] ; 8b 1e 1a 00 ; 0xfe850 orgs.asm:979
cmp bx, word [word 0001ch] ; 3b 1e 1c 00 ; 0xfe854 orgs.asm:980
jne short 0e85eh ; 75 04 ; 0xfe858 orgs.asm:981
sti ; fb ; 0xfe85a orgs.asm:982
nop ; 90 ; 0xfe85b orgs.asm:983
jmp short 0e84fh ; eb f1 ; 0xfe85c orgs.asm:991
push CS ; 0e ; 0xfe85e orgs.asm:113
pop DS ; 1f ; 0xfe85f orgs.asm:114
cld ; fc ; 0xfe860 orgs.asm:115
call 05599h ; e8 35 6d ; 0xfe861 orgs.asm:995
popaw ; 61 ; 0xfe864 orgs.asm:124
pop DS ; 1f ; 0xfe865 orgs.asm:997
pop ES ; 07 ; 0xfe866 orgs.asm:998
add sp, strict byte 00002h ; 83 c4 02 ; 0xfe867 orgs.asm:999
iret ; cf ; 0xfe86a orgs.asm:1007
; disGetNextSymbol 0xfe86b LB 0x1795 -> off=0x0 cb=000000000000001b uValue=00000000000f086b 'pmode_enter'
pmode_enter: ; 0xfe86b LB 0x1b
push CS ; 0e ; 0xfe86b orgs.asm:40
pop DS ; 1f ; 0xfe86c orgs.asm:41
lgdt [cs:0e899h] ; 2e 0f 01 16 99 e8 ; 0xfe86d orgs.asm:43
mov eax, cr0 ; 0f 20 c0 ; 0xfe873 orgs.asm:44
or AL, strict byte 001h ; 0c 01 ; 0xfe876 orgs.asm:45
mov cr0, eax ; 0f 22 c0 ; 0xfe878 orgs.asm:46
jmp far 00020h:0e880h ; ea 80 e8 20 00 ; 0xfe87b
mov ax, strict word 00018h ; b8 18 00 ; 0xfe880 orgs.asm:52
mov ds, ax ; 8e d8 ; 0xfe883 orgs.asm:53
retn ; c3 ; 0xfe885 orgs.asm:54
; disGetNextSymbol 0xfe886 LB 0x177a -> off=0x0 cb=0000000000000013 uValue=00000000000f0886 'pmode_exit'
pmode_exit: ; 0xfe886 LB 0x13
mov ax, strict word 00040h ; b8 40 00 ; 0xfe886 orgs.asm:61
mov ds, ax ; 8e d8 ; 0xfe889 orgs.asm:62
mov eax, cr0 ; 0f 20 c0 ; 0xfe88b orgs.asm:64
and AL, strict byte 0feh ; 24 fe ; 0xfe88e orgs.asm:65
mov cr0, eax ; 0f 22 c0 ; 0xfe890 orgs.asm:66
jmp far 0f000h:0e898h ; ea 98 e8 00 f0 ; 0xfe893 orgs.asm:68
retn ; c3 ; 0xfe898 orgs.asm:70
; disGetNextSymbol 0xfe899 LB 0x1767 -> off=0x0 cb=0000000000000006 uValue=00000000000f0899 'pmbios_gdt_desc'
pmbios_gdt_desc: ; 0xfe899 LB 0x6
db 047h, 000h, 09fh, 0e8h, 00fh, 000h
; disGetNextSymbol 0xfe89f LB 0x1761 -> off=0x0 cb=0000000000000048 uValue=00000000000f089f 'pmbios_gdt'
pmbios_gdt: ; 0xfe89f LB 0x48
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
db 0ffh, 0ffh, 000h, 000h, 000h, 09bh, 0cfh, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 093h, 0cfh, 000h
db 0ffh, 0ffh, 000h, 000h, 00fh, 09bh, 000h, 000h, 0ffh, 0ffh, 000h, 000h, 000h, 093h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h
db 0ffh, 0ffh, 000h, 004h, 000h, 093h, 000h, 000h
; disGetNextSymbol 0xfe8e7 LB 0x1719 -> off=0x0 cb=000000000000005c uValue=00000000000f08e7 'pmode_setup'
pmode_setup: ; 0xfe8e7 LB 0x5c
push eax ; 66 50 ; 0xfe8e7 orgs.asm:41
push esi ; 66 56 ; 0xfe8e9 orgs.asm:42
pushfw ; 9c ; 0xfe8eb orgs.asm:43
cli ; fa ; 0xfe8ec orgs.asm:44
call 0e86bh ; e8 7b ff ; 0xfe8ed orgs.asm:45
mov eax, cr0 ; 0f 20 c0 ; 0xfe8f0 orgs.asm:47
and eax, strict dword 09fffffffh ; 66 25 ff ff ff 9f ; 0xfe8f3 orgs.asm:48
mov cr0, eax ; 0f 22 c0 ; 0xfe8f9 orgs.asm:49
mov esi, strict dword 0fee000f0h ; 66 be f0 00 e0 fe ; 0xfe8fc orgs.asm:51
mov eax, strict dword 00000010fh ; 66 b8 0f 01 00 00 ; 0xfe902 orgs.asm:52
mov dword [esi], eax ; 67 66 89 06 ; 0xfe908 orgs.asm:53
mov esi, strict dword 0fee00350h ; 66 be 50 03 e0 fe ; 0xfe90c orgs.asm:55
mov eax, dword [esi] ; 67 66 8b 06 ; 0xfe912 orgs.asm:56
and eax, strict dword 0fffe00ffh ; 66 25 ff 00 fe ff ; 0xfe916 orgs.asm:57
or ah, 007h ; 80 cc 07 ; 0xfe91c orgs.asm:58
mov dword [esi], eax ; 67 66 89 06 ; 0xfe91f orgs.asm:59
mov esi, strict dword 0fee00360h ; 66 be 60 03 e0 fe ; 0xfe923 orgs.asm:61
mov eax, dword [esi] ; 67 66 8b 06 ; 0xfe929 orgs.asm:62
and eax, strict dword 0fffe00ffh ; 66 25 ff 00 fe ff ; 0xfe92d orgs.asm:63
or ah, 004h ; 80 cc 04 ; 0xfe933 orgs.asm:64
mov dword [esi], eax ; 67 66 89 06 ; 0xfe936 orgs.asm:65
call 0e886h ; e8 49 ff ; 0xfe93a orgs.asm:67
popfw ; 9d ; 0xfe93d orgs.asm:68
pop esi ; 66 5e ; 0xfe93e orgs.asm:69
pop eax ; 66 58 ; 0xfe940 orgs.asm:70
retn ; c3 ; 0xfe942 orgs.asm:72
; disGetNextSymbol 0xfe943 LB 0x16bd -> off=0x0 cb=0000000000000044 uValue=00000000000f0943 'biosorg_check_before_or_at_0E985h'
biosorg_check_before_or_at_0E985h: ; 0xfe943 LB 0x44
times 0x42 db 0
db 'XM'
; disGetNextSymbol 0xfe987 LB 0x1679 -> off=0x0 cb=0000000000000052 uValue=00000000000f0987 'biosorg_check_at_0E987h'
biosorg_check_at_0E987h: ; 0xfe987 LB 0x52
cli ; fa ; 0xfe987 orgs.asm:1024
push ax ; 50 ; 0xfe988 orgs.asm:1025
mov AL, strict byte 0adh ; b0 ad ; 0xfe989 orgs.asm:1026
out strict byte 064h, AL ; e6 64 ; 0xfe98b orgs.asm:1027
in AL, strict byte 060h ; e4 60 ; 0xfe98d orgs.asm:1029
push DS ; 1e ; 0xfe98f orgs.asm:1030
pushaw ; 60 ; 0xfe990 orgs.asm:107
cld ; fc ; 0xfe991 orgs.asm:1032
mov AH, strict byte 04fh ; b4 4f ; 0xfe992 orgs.asm:1034
stc ; f9 ; 0xfe994 orgs.asm:1035
int 015h ; cd 15 ; 0xfe995 orgs.asm:1036
jnc short 0e9c0h ; 73 27 ; 0xfe997 orgs.asm:1037
sti ; fb ; 0xfe999 orgs.asm:1039
cmp AL, strict byte 0e0h ; 3c e0 ; 0xfe99a orgs.asm:1042
jne short 0e9a9h ; 75 0b ; 0xfe99c orgs.asm:1043
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe99e orgs.asm:1044
mov ds, ax ; 8e d8 ; 0xfe9a0 orgs.asm:1045
or byte [00496h], 002h ; 80 0e 96 04 02 ; 0xfe9a2 orgs.asm:1046
jmp short 0e9c0h ; eb 17 ; 0xfe9a7 orgs.asm:1047
cmp AL, strict byte 0e1h ; 3c e1 ; 0xfe9a9 orgs.asm:1050
jne short 0e9b8h ; 75 0b ; 0xfe9ab orgs.asm:1051
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfe9ad orgs.asm:1052
mov ds, ax ; 8e d8 ; 0xfe9af orgs.asm:1053
or byte [00496h], 001h ; 80 0e 96 04 01 ; 0xfe9b1 orgs.asm:1054
jmp short 0e9c0h ; eb 08 ; 0xfe9b6 orgs.asm:1055
push ES ; 06 ; 0xfe9b8 orgs.asm:1058
push CS ; 0e ; 0xfe9b9 orgs.asm:113
pop DS ; 1f ; 0xfe9ba orgs.asm:114
cld ; fc ; 0xfe9bb orgs.asm:115
call 0513dh ; e8 7e 67 ; 0xfe9bc orgs.asm:1060
pop ES ; 07 ; 0xfe9bf orgs.asm:1061
popaw ; 61 ; 0xfe9c0 orgs.asm:124
pop DS ; 1f ; 0xfe9c1 orgs.asm:1065
cli ; fa ; 0xfe9c2 orgs.asm:1066
call 0e034h ; e8 6e f6 ; 0xfe9c3 orgs.asm:1067
mov AL, strict byte 0aeh ; b0 ae ; 0xfe9c6 orgs.asm:1069
out strict byte 064h, AL ; e6 64 ; 0xfe9c8 orgs.asm:1070
pop ax ; 58 ; 0xfe9ca orgs.asm:1071
iret ; cf ; 0xfe9cb orgs.asm:1072
pushaw ; 60 ; 0xfe9cc orgs.asm:107
push ES ; 06 ; 0xfe9cd orgs.asm:1081
push DS ; 1e ; 0xfe9ce orgs.asm:1082
push CS ; 0e ; 0xfe9cf orgs.asm:113
pop DS ; 1f ; 0xfe9d0 orgs.asm:114
cld ; fc ; 0xfe9d1 orgs.asm:115
call 06cc9h ; e8 f4 82 ; 0xfe9d2 orgs.asm:1084
pop DS ; 1f ; 0xfe9d5 orgs.asm:1085
pop ES ; 07 ; 0xfe9d6 orgs.asm:1086
popaw ; 61 ; 0xfe9d7 orgs.asm:124
iret ; cf ; 0xfe9d8 orgs.asm:1088
; disGetNextSymbol 0xfe9d9 LB 0x1627 -> off=0x0 cb=0000000000000280 uValue=00000000000f09d9 'biosorg_check_before_or_at_0EC57h'
biosorg_check_before_or_at_0EC57h: ; 0xfe9d9 LB 0x280
times 0x27e db 0
db 'XM'
; disGetNextSymbol 0xfec59 LB 0x13a7 -> off=0x0 cb=0000000000000002 uValue=00000000000f0c59 'biosorg_check_at_0EC59h'
biosorg_check_at_0EC59h: ; 0xfec59 LB 0x2
jmp short 0ecb0h ; eb 55 ; 0xfec59 orgs.asm:1095
; disGetNextSymbol 0xfec5b LB 0x13a5 -> off=0x0 cb=0000000000000055 uValue=00000000000f0c5b 'int13_relocated'
int13_relocated: ; 0xfec5b LB 0x55
cmp ah, 04ah ; 80 fc 4a ; 0xfec5b orgs.asm:1104
jc short 0ec71h ; 72 11 ; 0xfec5e orgs.asm:1105
cmp ah, 04dh ; 80 fc 4d ; 0xfec60 orgs.asm:1107
jnbe short 0ec71h ; 77 0c ; 0xfec63 orgs.asm:1108
pushaw ; 60 ; 0xfec65 orgs.asm:107
push ES ; 06 ; 0xfec66 orgs.asm:1111
push DS ; 1e ; 0xfec67 orgs.asm:1112
push CS ; 0e ; 0xfec68 orgs.asm:113
pop DS ; 1f ; 0xfec69 orgs.asm:114
cld ; fc ; 0xfec6a orgs.asm:115
push 0ece9h ; 68 e9 ec ; 0xfec6b orgs.asm:93
jmp near 03cd8h ; e9 67 50 ; 0xfec6e orgs.asm:94
push ES ; 06 ; 0xfec71 orgs.asm:1120
push ax ; 50 ; 0xfec72 orgs.asm:1121
push bx ; 53 ; 0xfec73 orgs.asm:1122
push cx ; 51 ; 0xfec74 orgs.asm:1123
push dx ; 52 ; 0xfec75 orgs.asm:1124
call 03cach ; e8 33 50 ; 0xfec76 orgs.asm:1127
cmp AL, strict byte 000h ; 3c 00 ; 0xfec79 orgs.asm:1128
je short 0ecabh ; 74 2e ; 0xfec7b orgs.asm:1129
call 03cc2h ; e8 42 50 ; 0xfec7d orgs.asm:1132
pop dx ; 5a ; 0xfec80 orgs.asm:1133
push dx ; 52 ; 0xfec81 orgs.asm:1134
db 03ah, 0c2h
; cmp al, dl ; 3a c2 ; 0xfec82 orgs.asm:1135
jne short 0ec97h ; 75 11 ; 0xfec84 orgs.asm:1136
pop dx ; 5a ; 0xfec86 orgs.asm:1138
pop cx ; 59 ; 0xfec87 orgs.asm:1139
pop bx ; 5b ; 0xfec88 orgs.asm:1140
pop ax ; 58 ; 0xfec89 orgs.asm:1141
pop ES ; 07 ; 0xfec8a orgs.asm:1142
pushaw ; 60 ; 0xfec8b orgs.asm:107
push ES ; 06 ; 0xfec8c orgs.asm:1145
push DS ; 1e ; 0xfec8d orgs.asm:1146
push CS ; 0e ; 0xfec8e orgs.asm:113
pop DS ; 1f ; 0xfec8f orgs.asm:114
cld ; fc ; 0xfec90 orgs.asm:115
push 0ece9h ; 68 e9 ec ; 0xfec91 orgs.asm:93
jmp near 0437dh ; e9 e6 56 ; 0xfec94 orgs.asm:94
and dl, 0e0h ; 80 e2 e0 ; 0xfec97 orgs.asm:1152
db 03ah, 0c2h
; cmp al, dl ; 3a c2 ; 0xfec9a orgs.asm:1153
jne short 0ecabh ; 75 0d ; 0xfec9c orgs.asm:1154
pop dx ; 5a ; 0xfec9e orgs.asm:1156
pop cx ; 59 ; 0xfec9f orgs.asm:1157
pop bx ; 5b ; 0xfeca0 orgs.asm:1158
pop ax ; 58 ; 0xfeca1 orgs.asm:1159
pop ES ; 07 ; 0xfeca2 orgs.asm:1160
push ax ; 50 ; 0xfeca3 orgs.asm:1162
push cx ; 51 ; 0xfeca4 orgs.asm:1163
push dx ; 52 ; 0xfeca5 orgs.asm:1164
push bx ; 53 ; 0xfeca6 orgs.asm:1165
db 0feh, 0cah
; dec dl ; fe ca ; 0xfeca7 orgs.asm:1167
jmp short 0ecb4h ; eb 09 ; 0xfeca9 orgs.asm:1168
pop dx ; 5a ; 0xfecab orgs.asm:1171
pop cx ; 59 ; 0xfecac orgs.asm:1172
pop bx ; 5b ; 0xfecad orgs.asm:1173
pop ax ; 58 ; 0xfecae orgs.asm:1174
pop ES ; 07 ; 0xfecaf orgs.asm:1175
; disGetNextSymbol 0xfecb0 LB 0x1350 -> off=0x0 cb=0000000000000004 uValue=00000000000f0cb0 'int13_noeltorito'
int13_noeltorito: ; 0xfecb0 LB 0x4
push ax ; 50 ; 0xfecb0 orgs.asm:1178
push cx ; 51 ; 0xfecb1 orgs.asm:1179
push dx ; 52 ; 0xfecb2 orgs.asm:1180
push bx ; 53 ; 0xfecb3 orgs.asm:1181
; disGetNextSymbol 0xfecb4 LB 0x134c -> off=0x0 cb=0000000000000014 uValue=00000000000f0cb4 'int13_legacy'
int13_legacy: ; 0xfecb4 LB 0x14
push dx ; 52 ; 0xfecb4 orgs.asm:1183
push bp ; 55 ; 0xfecb5 orgs.asm:1184
push si ; 56 ; 0xfecb6 orgs.asm:1185
push di ; 57 ; 0xfecb7 orgs.asm:1186
push ES ; 06 ; 0xfecb8 orgs.asm:1187
push DS ; 1e ; 0xfecb9 orgs.asm:1188
push CS ; 0e ; 0xfecba orgs.asm:113
pop DS ; 1f ; 0xfecbb orgs.asm:114
cld ; fc ; 0xfecbc orgs.asm:115
test dl, 080h ; f6 c2 80 ; 0xfecbd orgs.asm:1193
jne short 0ecc8h ; 75 06 ; 0xfecc0 orgs.asm:1194
push 0ece9h ; 68 e9 ec ; 0xfecc2 orgs.asm:93
jmp near 032a0h ; e9 d8 45 ; 0xfecc5 orgs.asm:94
; disGetNextSymbol 0xfecc8 LB 0x1338 -> off=0x0 cb=0000000000000014 uValue=00000000000f0cc8 'int13_notfloppy'
int13_notfloppy: ; 0xfecc8 LB 0x14
cmp dl, 0e0h ; 80 fa e0 ; 0xfecc8 orgs.asm:1199
jc short 0ecdch ; 72 0f ; 0xfeccb orgs.asm:1200
shr ebx, 010h ; 66 c1 eb 10 ; 0xfeccd orgs.asm:1206
push bx ; 53 ; 0xfecd1 orgs.asm:1207
call 047c1h ; e8 ec 5a ; 0xfecd2 orgs.asm:1208
pop bx ; 5b ; 0xfecd5 orgs.asm:1209
sal ebx, 010h ; 66 c1 e3 10 ; 0xfecd6 orgs.asm:1210
jmp short 0ece9h ; eb 0d ; 0xfecda orgs.asm:1212
; disGetNextSymbol 0xfecdc LB 0x1324 -> off=0x0 cb=000000000000000d uValue=00000000000f0cdc 'int13_disk'
int13_disk: ; 0xfecdc LB 0xd
cmp ah, 040h ; 80 fc 40 ; 0xfecdc orgs.asm:1216
jnbe short 0ece6h ; 77 05 ; 0xfecdf orgs.asm:1217
call 05c52h ; e8 6e 6f ; 0xfece1 orgs.asm:1218
jmp short 0ece9h ; eb 03 ; 0xfece4 orgs.asm:1219
call 060a1h ; e8 b8 73 ; 0xfece6 orgs.asm:1222
; disGetNextSymbol 0xfece9 LB 0x1317 -> off=0x0 cb=0000000000000004 uValue=00000000000f0ce9 'int13_out'
int13_out: ; 0xfece9 LB 0x4
pop DS ; 1f ; 0xfece9 orgs.asm:1225
pop ES ; 07 ; 0xfecea orgs.asm:1226
popaw ; 61 ; 0xfeceb orgs.asm:124
iret ; cf ; 0xfecec orgs.asm:1228
; disGetNextSymbol 0xfeced LB 0x1313 -> off=0x0 cb=000000000000001e uValue=00000000000f0ced 'detect_parport'
detect_parport: ; 0xfeced LB 0x1e
push dx ; 52 ; 0xfeced orgs.asm:1235
inc dx ; 42 ; 0xfecee orgs.asm:1236
inc dx ; 42 ; 0xfecef orgs.asm:1237
in AL, DX ; ec ; 0xfecf0 orgs.asm:1238
and AL, strict byte 0dfh ; 24 df ; 0xfecf1 orgs.asm:1239
out DX, AL ; ee ; 0xfecf3 orgs.asm:1240
pop dx ; 5a ; 0xfecf4 orgs.asm:1241
mov AL, strict byte 0aah ; b0 aa ; 0xfecf5 orgs.asm:1242
out DX, AL ; ee ; 0xfecf7 orgs.asm:1243
in AL, DX ; ec ; 0xfecf8 orgs.asm:1244
cmp AL, strict byte 0aah ; 3c aa ; 0xfecf9 orgs.asm:1245
jne short 0ed0ah ; 75 0d ; 0xfecfb orgs.asm:1246
push bx ; 53 ; 0xfecfd orgs.asm:1248
sal bx, 1 ; d1 e3 ; 0xfecfe orgs.asm:1249
mov word [bx+00408h], dx ; 89 97 08 04 ; 0xfed00 orgs.asm:1250
pop bx ; 5b ; 0xfed04 orgs.asm:1251
mov byte [bx+00478h], cl ; 88 8f 78 04 ; 0xfed05 orgs.asm:1252
inc bx ; 43 ; 0xfed09 orgs.asm:1253
retn ; c3 ; 0xfed0a orgs.asm:1255
; disGetNextSymbol 0xfed0b LB 0x12f5 -> off=0x0 cb=0000000000000024 uValue=00000000000f0d0b 'detect_serial'
detect_serial: ; 0xfed0b LB 0x24
push dx ; 52 ; 0xfed0b orgs.asm:1262
inc dx ; 42 ; 0xfed0c orgs.asm:1263
mov AL, strict byte 002h ; b0 02 ; 0xfed0d orgs.asm:1264
out DX, AL ; ee ; 0xfed0f orgs.asm:1265
in AL, DX ; ec ; 0xfed10 orgs.asm:1266
cmp AL, strict byte 002h ; 3c 02 ; 0xfed11 orgs.asm:1267
jne short 0ed2dh ; 75 18 ; 0xfed13 orgs.asm:1268
inc dx ; 42 ; 0xfed15 orgs.asm:1270
in AL, DX ; ec ; 0xfed16 orgs.asm:1271
cmp AL, strict byte 002h ; 3c 02 ; 0xfed17 orgs.asm:1272
jne short 0ed2dh ; 75 12 ; 0xfed19 orgs.asm:1273
dec dx ; 4a ; 0xfed1b orgs.asm:1275
db 032h, 0c0h
; xor al, al ; 32 c0 ; 0xfed1c orgs.asm:1276
pop dx ; 5a ; 0xfed1e orgs.asm:1277
push bx ; 53 ; 0xfed1f orgs.asm:1278
sal bx, 1 ; d1 e3 ; 0xfed20 orgs.asm:1279
mov word [bx+00400h], dx ; 89 97 00 04 ; 0xfed22 orgs.asm:1280
pop bx ; 5b ; 0xfed26 orgs.asm:1281
mov byte [bx+0047ch], cl ; 88 8f 7c 04 ; 0xfed27 orgs.asm:1282
inc bx ; 43 ; 0xfed2b orgs.asm:1283
retn ; c3 ; 0xfed2c orgs.asm:1284
pop dx ; 5a ; 0xfed2d orgs.asm:1287
retn ; c3 ; 0xfed2e orgs.asm:1288
; disGetNextSymbol 0xfed2f LB 0x12d1 -> off=0x0 cb=0000000000000087 uValue=00000000000f0d2f 'floppy_post'
floppy_post: ; 0xfed2f LB 0x87
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfed2f orgs.asm:1298
mov ds, ax ; 8e d8 ; 0xfed31 orgs.asm:1299
mov AL, strict byte 000h ; b0 00 ; 0xfed33 orgs.asm:1303
mov byte [0043eh], AL ; a2 3e 04 ; 0xfed35 orgs.asm:1304
mov byte [0043fh], AL ; a2 3f 04 ; 0xfed38 orgs.asm:1305
mov byte [00440h], AL ; a2 40 04 ; 0xfed3b orgs.asm:1306
mov byte [00441h], AL ; a2 41 04 ; 0xfed3e orgs.asm:1307
mov byte [00442h], AL ; a2 42 04 ; 0xfed41 orgs.asm:1308
mov byte [00443h], AL ; a2 43 04 ; 0xfed44 orgs.asm:1309
mov byte [00444h], AL ; a2 44 04 ; 0xfed47 orgs.asm:1310
mov byte [00445h], AL ; a2 45 04 ; 0xfed4a orgs.asm:1311
mov byte [00446h], AL ; a2 46 04 ; 0xfed4d orgs.asm:1312
mov byte [00447h], AL ; a2 47 04 ; 0xfed50 orgs.asm:1313
mov byte [00448h], AL ; a2 48 04 ; 0xfed53 orgs.asm:1314
mov byte [0048bh], AL ; a2 8b 04 ; 0xfed56 orgs.asm:1316
mov AL, strict byte 010h ; b0 10 ; 0xfed59 orgs.asm:1318
out strict byte 070h, AL ; e6 70 ; 0xfed5b orgs.asm:1319
in AL, strict byte 071h ; e4 71 ; 0xfed5d orgs.asm:1320
db 08ah, 0e0h
; mov ah, al ; 8a e0 ; 0xfed5f orgs.asm:1321
shr al, 004h ; c0 e8 04 ; 0xfed61 orgs.asm:179
je short 0ed6ah ; 74 04 ; 0xfed64 orgs.asm:1326
mov BL, strict byte 007h ; b3 07 ; 0xfed66 orgs.asm:1327
jmp short 0ed6ch ; eb 02 ; 0xfed68 orgs.asm:1328
mov BL, strict byte 000h ; b3 00 ; 0xfed6a orgs.asm:1331
db 08ah, 0c4h
; mov al, ah ; 8a c4 ; 0xfed6c orgs.asm:1334
and AL, strict byte 00fh ; 24 0f ; 0xfed6e orgs.asm:1335
je short 0ed75h ; 74 03 ; 0xfed70 orgs.asm:1336
or bl, 070h ; 80 cb 70 ; 0xfed72 orgs.asm:1337
mov byte [0048fh], bl ; 88 1e 8f 04 ; 0xfed75 orgs.asm:1339
mov AL, strict byte 000h ; b0 00 ; 0xfed79 orgs.asm:1342
mov byte [00490h], AL ; a2 90 04 ; 0xfed7b orgs.asm:1343
mov byte [00491h], AL ; a2 91 04 ; 0xfed7e orgs.asm:1344
mov byte [00492h], AL ; a2 92 04 ; 0xfed81 orgs.asm:1345
mov byte [00493h], AL ; a2 93 04 ; 0xfed84 orgs.asm:1346
mov byte [00494h], AL ; a2 94 04 ; 0xfed87 orgs.asm:1347
mov byte [00495h], AL ; a2 95 04 ; 0xfed8a orgs.asm:1348
mov AL, strict byte 002h ; b0 02 ; 0xfed8d orgs.asm:1350
out strict byte 00ah, AL ; e6 0a ; 0xfed8f orgs.asm:1351
mov ax, 0efc7h ; b8 c7 ef ; 0xfed91 orgs.asm:104
mov word [00078h], ax ; a3 78 00 ; 0xfed94 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfed97 orgs.asm:106
mov word [0007ah], ax ; a3 7a 00 ; 0xfed9a orgs.asm:107
mov ax, 0ec59h ; b8 59 ec ; 0xfed9d orgs.asm:104
mov word [00100h], ax ; a3 00 01 ; 0xfeda0 orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfeda3 orgs.asm:106
mov word [00102h], ax ; a3 02 01 ; 0xfeda6 orgs.asm:107
mov ax, 0ef57h ; b8 57 ef ; 0xfeda9 orgs.asm:104
mov word [00038h], ax ; a3 38 00 ; 0xfedac orgs.asm:105
mov ax, 0f000h ; b8 00 f0 ; 0xfedaf orgs.asm:106
mov word [0003ah], ax ; a3 3a 00 ; 0xfedb2 orgs.asm:107
retn ; c3 ; 0xfedb5 orgs.asm:1357
; disGetNextSymbol 0xfedb6 LB 0x124a -> off=0x0 cb=0000000000000009 uValue=0000000000000db6 'bcd_to_bin'
bcd_to_bin: ; 0xfedb6 LB 0x9
sal ax, 004h ; c1 e0 04 ; 0xfedb6 orgs.asm:1367
shr al, 004h ; c0 e8 04 ; 0xfedb9 orgs.asm:1368
aad 00ah ; d5 0a ; 0xfedbc orgs.asm:1376
retn ; c3 ; 0xfedbe orgs.asm:1377
; disGetNextSymbol 0xfedbf LB 0x1241 -> off=0x0 cb=0000000000000077 uValue=00000000000f0dbf 'rtc_post'
rtc_post: ; 0xfedbf LB 0x77
db 066h, 033h, 0c0h
; xor eax, eax ; 66 33 c0 ; 0xfedbf orgs.asm:1434
mov AL, strict byte 000h ; b0 00 ; 0xfedc2 orgs.asm:1435
out strict byte 070h, AL ; e6 70 ; 0xfedc4 orgs.asm:1436
in AL, strict byte 071h ; e4 71 ; 0xfedc6 orgs.asm:1437
call 0edb6h ; e8 eb ff ; 0xfedc8 orgs.asm:1438
mov edx, strict dword 00115cf2bh ; 66 ba 2b cf 15 01 ; 0xfedcb orgs.asm:1439
mul edx ; 66 f7 e2 ; 0xfedd1 orgs.asm:1440
mov ebx, strict dword 0000f4240h ; 66 bb 40 42 0f 00 ; 0xfedd4 orgs.asm:1441
db 066h, 033h, 0d2h
; xor edx, edx ; 66 33 d2 ; 0xfedda orgs.asm:1442
div ebx ; 66 f7 f3 ; 0xfeddd orgs.asm:1443
db 066h, 08bh, 0c8h
; mov ecx, eax ; 66 8b c8 ; 0xfede0 orgs.asm:1444
db 066h, 033h, 0c0h
; xor eax, eax ; 66 33 c0 ; 0xfede3 orgs.asm:1447
mov AL, strict byte 002h ; b0 02 ; 0xfede6 orgs.asm:1448
out strict byte 070h, AL ; e6 70 ; 0xfede8 orgs.asm:1449
in AL, strict byte 071h ; e4 71 ; 0xfedea orgs.asm:1450
call 0edb6h ; e8 c7 ff ; 0xfedec orgs.asm:1451
mov edx, strict dword 000a6af80h ; 66 ba 80 af a6 00 ; 0xfedef orgs.asm:1452
mul edx ; 66 f7 e2 ; 0xfedf5 orgs.asm:1453
mov ebx, strict dword 000002710h ; 66 bb 10 27 00 00 ; 0xfedf8 orgs.asm:1454
db 066h, 033h, 0d2h
; xor edx, edx ; 66 33 d2 ; 0xfedfe orgs.asm:1455
div ebx ; 66 f7 f3 ; 0xfee01 orgs.asm:1456
db 066h, 003h, 0c8h
; add ecx, eax ; 66 03 c8 ; 0xfee04 orgs.asm:1457
db 066h, 033h, 0c0h
; xor eax, eax ; 66 33 c0 ; 0xfee07 orgs.asm:1460
mov AL, strict byte 004h ; b0 04 ; 0xfee0a orgs.asm:1461
out strict byte 070h, AL ; e6 70 ; 0xfee0c orgs.asm:1462
in AL, strict byte 071h ; e4 71 ; 0xfee0e orgs.asm:1463
call 0edb6h ; e8 a3 ff ; 0xfee10 orgs.asm:1464
mov edx, strict dword 003e81d03h ; 66 ba 03 1d e8 03 ; 0xfee13 orgs.asm:1465
mul edx ; 66 f7 e2 ; 0xfee19 orgs.asm:1466
mov ebx, strict dword 0000003e8h ; 66 bb e8 03 00 00 ; 0xfee1c orgs.asm:1467
db 066h, 033h, 0d2h
; xor edx, edx ; 66 33 d2 ; 0xfee22 orgs.asm:1468
div ebx ; 66 f7 f3 ; 0xfee25 orgs.asm:1469
db 066h, 003h, 0c8h
; add ecx, eax ; 66 03 c8 ; 0xfee28 orgs.asm:1470
mov dword [0046ch], ecx ; 66 89 0e 6c 04 ; 0xfee2b orgs.asm:1472
db 032h, 0c0h
; xor al, al ; 32 c0 ; 0xfee30 orgs.asm:1473
mov byte [00470h], AL ; a2 70 04 ; 0xfee32 orgs.asm:1474
retn ; c3 ; 0xfee35 orgs.asm:1477
; disGetNextSymbol 0xfee36 LB 0x11ca -> off=0x0 cb=0000000000000121 uValue=00000000000f0e36 'biosorg_check_before_or_at_0EF55h'
biosorg_check_before_or_at_0EF55h: ; 0xfee36 LB 0x121
times 0x11f db 0
db 'XM'
; disGetNextSymbol 0xfef57 LB 0x10a9 -> off=0x0 cb=000000000000003b uValue=00000000000f0f57 'int0e_handler'
int0e_handler: ; 0xfef57 LB 0x3b
push ax ; 50 ; 0xfef57 orgs.asm:1488
push dx ; 52 ; 0xfef58 orgs.asm:1489
mov dx, 003f4h ; ba f4 03 ; 0xfef59 orgs.asm:1490
in AL, DX ; ec ; 0xfef5c orgs.asm:1491
and AL, strict byte 0c0h ; 24 c0 ; 0xfef5d orgs.asm:1492
cmp AL, strict byte 0c0h ; 3c c0 ; 0xfef5f orgs.asm:1493
je short 0ef81h ; 74 1e ; 0xfef61 orgs.asm:1494
mov dx, 003f5h ; ba f5 03 ; 0xfef63 orgs.asm:1495
mov AL, strict byte 008h ; b0 08 ; 0xfef66 orgs.asm:1496
out DX, AL ; ee ; 0xfef68 orgs.asm:1497
mov dx, 003f4h ; ba f4 03 ; 0xfef69 orgs.asm:1499
in AL, DX ; ec ; 0xfef6c orgs.asm:1500
and AL, strict byte 0c0h ; 24 c0 ; 0xfef6d orgs.asm:1501
cmp AL, strict byte 0c0h ; 3c c0 ; 0xfef6f orgs.asm:1502
jne short 0ef69h ; 75 f6 ; 0xfef71 orgs.asm:1503
mov dx, 003f5h ; ba f5 03 ; 0xfef73 orgs.asm:1506
in AL, DX ; ec ; 0xfef76 orgs.asm:1507
mov dx, 003f4h ; ba f4 03 ; 0xfef77 orgs.asm:1508
in AL, DX ; ec ; 0xfef7a orgs.asm:1509
and AL, strict byte 0c0h ; 24 c0 ; 0xfef7b orgs.asm:1510
cmp AL, strict byte 0c0h ; 3c c0 ; 0xfef7d orgs.asm:1511
je short 0ef73h ; 74 f2 ; 0xfef7f orgs.asm:1512
push DS ; 1e ; 0xfef81 orgs.asm:1515
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xfef82 orgs.asm:1516
mov ds, ax ; 8e d8 ; 0xfef84 orgs.asm:1517
call 0e034h ; e8 ab f0 ; 0xfef86 orgs.asm:1518
or byte [0043eh], 080h ; 80 0e 3e 04 80 ; 0xfef89 orgs.asm:1520
pop DS ; 1f ; 0xfef8e orgs.asm:1521
pop dx ; 5a ; 0xfef8f orgs.asm:1522
pop ax ; 58 ; 0xfef90 orgs.asm:1523
iret ; cf ; 0xfef91 orgs.asm:1524
; disGetNextSymbol 0xfef92 LB 0x106e -> off=0x0 cb=0000000000000035 uValue=00000000000f0f92 'biosorg_check_before_or_at_0EFC5h'
biosorg_check_before_or_at_0EFC5h: ; 0xfef92 LB 0x35
times 0x33 db 0
db 'XM'
; disGetNextSymbol 0xfefc7 LB 0x1039 -> off=0x0 cb=000000000000000b uValue=00000000000f0fc7 '_diskette_param_table'
_diskette_param_table: ; 0xfefc7 LB 0xb
scasw ; af ; 0xfefc7
add ah, byte [di] ; 02 25 ; 0xfefc8
add dl, byte [bp+si] ; 02 12 ; 0xfefca
db 01bh, 0ffh
; sbb di, di ; 1b ff ; 0xfefcc
insb ; 6c ; 0xfefce
db 0f6h
invd ; 0f 08 ; 0xfefd0
; disGetNextSymbol 0xfefd2 LB 0x102e -> off=0x0 cb=0000000000000002 uValue=00000000000f0fd2 'biosorg_check_at_0EFD2h'
biosorg_check_at_0EFD2h: ; 0xfefd2 LB 0x2
jmp short 0efd4h ; eb 00 ; 0xfefd2 orgs.asm:1551
; disGetNextSymbol 0xfefd4 LB 0x102c -> off=0x0 cb=000000000000000d uValue=00000000000f0fd4 'int17_handler'
int17_handler: ; 0xfefd4 LB 0xd
push DS ; 1e ; 0xfefd4 orgs.asm:1554
push ES ; 06 ; 0xfefd5 orgs.asm:1555
pushaw ; 60 ; 0xfefd6 orgs.asm:107
push CS ; 0e ; 0xfefd7 orgs.asm:113
pop DS ; 1f ; 0xfefd8 orgs.asm:114
cld ; fc ; 0xfefd9 orgs.asm:115
call 075e6h ; e8 09 86 ; 0xfefda orgs.asm:1558
popaw ; 61 ; 0xfefdd orgs.asm:124
pop ES ; 07 ; 0xfefde orgs.asm:1560
pop DS ; 1f ; 0xfefdf orgs.asm:1561
iret ; cf ; 0xfefe0 orgs.asm:1562
; disGetNextSymbol 0xfefe1 LB 0x101f -> off=0x0 cb=0000000000000006 uValue=00000000000f0fe1 '_pmode_IDT'
_pmode_IDT: ; 0xfefe1 LB 0x6
db 000h, 000h, 000h, 000h, 00fh, 000h
; disGetNextSymbol 0xfefe7 LB 0x1019 -> off=0x0 cb=0000000000000006 uValue=00000000000f0fe7 '_rmode_IDT'
_rmode_IDT: ; 0xfefe7 LB 0x6
db 0ffh, 003h, 000h, 000h, 000h, 000h
; disGetNextSymbol 0xfefed LB 0x1013 -> off=0x0 cb=0000000000000001 uValue=00000000000f0fed 'int1c_handler'
int1c_handler: ; 0xfefed LB 0x1
iret ; cf ; 0xfefed orgs.asm:1597
; disGetNextSymbol 0xfefee LB 0x1012 -> off=0x0 cb=0000000000000057 uValue=00000000000f0fee 'biosorg_check_before_or_at_0F043h'
biosorg_check_before_or_at_0F043h: ; 0xfefee LB 0x57
times 0x55 db 0
db 'XM'
; disGetNextSymbol 0xff045 LB 0xfbb -> off=0x0 cb=0000000000000001 uValue=00000000000f1045 'biosorg_check_at_0F045h'
biosorg_check_at_0F045h: ; 0xff045 LB 0x1
iret ; cf ; 0xff045 orgs.asm:1606
; disGetNextSymbol 0xff046 LB 0xfba -> off=0x0 cb=000000000000001f uValue=00000000000f1046 'biosorg_check_before_or_at_0F063h'
biosorg_check_before_or_at_0F063h: ; 0xff046 LB 0x1f
times 0x1d db 0
db 'XM'
; disGetNextSymbol 0xff065 LB 0xf9b -> off=0x0 cb=0000000000000001 uValue=00000000000f1065 'int10_handler'
int10_handler: ; 0xff065 LB 0x1
iret ; cf ; 0xff065 orgs.asm:1615
; disGetNextSymbol 0xff066 LB 0xf9a -> off=0x0 cb=000000000000003e uValue=00000000000f1066 'biosorg_check_before_or_at_0F0A2h'
biosorg_check_before_or_at_0F0A2h: ; 0xff066 LB 0x3e
times 0x3c db 0
db 'XM'
; disGetNextSymbol 0xff0a4 LB 0xf5c -> off=0x0 cb=000000000000000a uValue=00000000000f10a4 'biosorg_check_at_0F0A4h'
biosorg_check_at_0F0A4h: ; 0xff0a4 LB 0xa
push CS ; 0e ; 0xff0a4 orgs.asm:113
pop DS ; 1f ; 0xff0a5 orgs.asm:114
cld ; fc ; 0xff0a6 orgs.asm:115
call 01847h ; e8 9d 27 ; 0xff0a7 orgs.asm:1630
sti ; fb ; 0xff0aa orgs.asm:1632
hlt ; f4 ; 0xff0ab orgs.asm:1634
jmp short 0f0abh ; eb fd ; 0xff0ac orgs.asm:1635
; disGetNextSymbol 0xff0ae LB 0xf52 -> off=0x0 cb=0000000000000078 uValue=00000000000f10ae 'int19_relocated'
int19_relocated: ; 0xff0ae LB 0x78
push CS ; 0e ; 0xff0ae orgs.asm:113
pop DS ; 1f ; 0xff0af orgs.asm:114
cld ; fc ; 0xff0b0 orgs.asm:115
push bp ; 55 ; 0xff0b1 orgs.asm:1645
db 08bh, 0ech
; mov bp, sp ; 8b ec ; 0xff0b2 orgs.asm:1646
mov ax, strict word 00001h ; b8 01 00 ; 0xff0b4 orgs.asm:1649
push ax ; 50 ; 0xff0b7 orgs.asm:1650
call 04bf3h ; e8 38 5b ; 0xff0b8 orgs.asm:1651
inc sp ; 44 ; 0xff0bb orgs.asm:1652
inc sp ; 44 ; 0xff0bc orgs.asm:1653
test ax, ax ; 85 c0 ; 0xff0bd orgs.asm:1654
jne short 0f0e8h ; 75 27 ; 0xff0bf orgs.asm:1655
mov ax, strict word 00002h ; b8 02 00 ; 0xff0c1 orgs.asm:1658
push ax ; 50 ; 0xff0c4 orgs.asm:1659
call 04bf3h ; e8 2b 5b ; 0xff0c5 orgs.asm:1660
inc sp ; 44 ; 0xff0c8 orgs.asm:1661
inc sp ; 44 ; 0xff0c9 orgs.asm:1662
test ax, ax ; 85 c0 ; 0xff0ca orgs.asm:1663
jne short 0f0e8h ; 75 1a ; 0xff0cc orgs.asm:1664
mov ax, strict word 00003h ; b8 03 00 ; 0xff0ce orgs.asm:1667
push ax ; 50 ; 0xff0d1 orgs.asm:1668
call 04bf3h ; e8 1e 5b ; 0xff0d2 orgs.asm:1669
inc sp ; 44 ; 0xff0d5 orgs.asm:1670
inc sp ; 44 ; 0xff0d6 orgs.asm:1671
test ax, ax ; 85 c0 ; 0xff0d7 orgs.asm:1672
jne short 0f0e8h ; 75 0d ; 0xff0d9 orgs.asm:1673
mov ax, strict word 00004h ; b8 04 00 ; 0xff0db orgs.asm:1676
push ax ; 50 ; 0xff0de orgs.asm:1677
call 04bf3h ; e8 11 5b ; 0xff0df orgs.asm:1678
inc sp ; 44 ; 0xff0e2 orgs.asm:1679
inc sp ; 44 ; 0xff0e3 orgs.asm:1680
test ax, ax ; 85 c0 ; 0xff0e4 orgs.asm:1681
je short 0f0a4h ; 74 bc ; 0xff0e6 orgs.asm:1682
sal eax, 004h ; 66 c1 e0 04 ; 0xff0e8 orgs.asm:1694
mov word [bp+002h], ax ; 89 46 02 ; 0xff0ec orgs.asm:1695
shr eax, 004h ; 66 c1 e8 04 ; 0xff0ef orgs.asm:1697
and ax, 0f000h ; 25 00 f0 ; 0xff0f3 orgs.asm:1700
mov word [bp+004h], ax ; 89 46 04 ; 0xff0f6 orgs.asm:1701
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xff0f9 orgs.asm:1702
mov ds, ax ; 8e d8 ; 0xff0fb orgs.asm:1703
mov es, ax ; 8e c0 ; 0xff0fd orgs.asm:1704
mov word [byte bp+000h], ax ; 89 46 00 ; 0xff0ff orgs.asm:1705
mov ax, 0aa55h ; b8 55 aa ; 0xff102 orgs.asm:1706
pop bp ; 5d ; 0xff105 orgs.asm:1708
iret ; cf ; 0xff106 orgs.asm:1709
or cx, word [bp+si] ; 0b 0a ; 0xff107
or word [bp+di], cx ; 09 0b ; 0xff109
push eax ; 66 50 ; 0xff10b orgs.asm:98
mov eax, strict dword 000800000h ; 66 b8 00 00 80 00 ; 0xff10d orgs.asm:99
db 08bh, 0c3h
; mov ax, bx ; 8b c3 ; 0xff113 orgs.asm:100
sal eax, 008h ; 66 c1 e0 08 ; 0xff115 orgs.asm:101
and dl, 0fch ; 80 e2 fc ; 0xff119 orgs.asm:102
db 00ah, 0c2h
; or al, dl ; 0a c2 ; 0xff11c orgs.asm:103
mov dx, 00cf8h ; ba f8 0c ; 0xff11e orgs.asm:104
out DX, eax ; 66 ef ; 0xff121 orgs.asm:105
pop eax ; 66 58 ; 0xff123 orgs.asm:106
retn ; c3 ; 0xff125 orgs.asm:107
; disGetNextSymbol 0xff126 LB 0xeda -> off=0x0 cb=0000000000000012 uValue=00000000000f1126 'pcibios_init_iomem_bases'
pcibios_init_iomem_bases: ; 0xff126 LB 0x12
push bp ; 55 ; 0xff126 orgs.asm:110
db 08bh, 0ech
; mov bp, sp ; 8b ec ; 0xff127 orgs.asm:111
mov eax, strict dword 00124f9fdh ; 66 b8 fd f9 24 01 ; 0xff129 orgs.asm:113
mov dx, 00410h ; ba 10 04 ; 0xff12f orgs.asm:114
out DX, eax ; 66 ef ; 0xff132 orgs.asm:115
db 08bh, 0e5h
; mov sp, bp ; 8b e5 ; 0xff134 orgs.asm:228
pop bp ; 5d ; 0xff136 orgs.asm:229
retn ; c3 ; 0xff137 orgs.asm:230
; disGetNextSymbol 0xff138 LB 0xec8 -> off=0x0 cb=000000000000000c uValue=00000000000f1138 'pcibios_init_set_elcr'
pcibios_init_set_elcr: ; 0xff138 LB 0xc
push ax ; 50 ; 0xff138 orgs.asm:233
push cx ; 51 ; 0xff139 orgs.asm:234
mov dx, 004d0h ; ba d0 04 ; 0xff13a orgs.asm:235
test AL, strict byte 008h ; a8 08 ; 0xff13d orgs.asm:236
je short 0f144h ; 74 03 ; 0xff13f orgs.asm:237
inc dx ; 42 ; 0xff141 orgs.asm:239
and AL, strict byte 007h ; 24 07 ; 0xff142 orgs.asm:240
; disGetNextSymbol 0xff144 LB 0xebc -> off=0x0 cb=000000000000000d uValue=00000000000f1144 'is_master_pic'
is_master_pic: ; 0xff144 LB 0xd
db 08ah, 0c8h
; mov cl, al ; 8a c8 ; 0xff144 orgs.asm:242
mov BL, strict byte 001h ; b3 01 ; 0xff146 orgs.asm:243
sal bl, CL ; d2 e3 ; 0xff148 orgs.asm:244
in AL, DX ; ec ; 0xff14a orgs.asm:245
db 00ah, 0c3h
; or al, bl ; 0a c3 ; 0xff14b orgs.asm:246
out DX, AL ; ee ; 0xff14d orgs.asm:247
pop cx ; 59 ; 0xff14e orgs.asm:248
pop ax ; 58 ; 0xff14f orgs.asm:249
retn ; c3 ; 0xff150 orgs.asm:250
; disGetNextSymbol 0xff151 LB 0xeaf -> off=0x0 cb=000000000000002f uValue=00000000000f1151 'pcibios_init_irqs'
pcibios_init_irqs: ; 0xff151 LB 0x2f
push DS ; 1e ; 0xff151 orgs.asm:253
push bp ; 55 ; 0xff152 orgs.asm:254
mov ax, 0f000h ; b8 00 f0 ; 0xff153 orgs.asm:255
mov ds, ax ; 8e d8 ; 0xff156 orgs.asm:256
pop bp ; 5d ; 0xff158 orgs.asm:363
pop DS ; 1f ; 0xff159 orgs.asm:364
retn ; c3 ; 0xff15a orgs.asm:365
mov ax, ax ; 89 c0 ; 0xff15b
mov ax, ax ; 89 c0 ; 0xff15d
cld ; fc ; 0xff15f
and AL, strict byte 050h ; 24 50 ; 0xff160
dec cx ; 49 ; 0xff162
push dx ; 52 ; 0xff163
add byte [bx+di], al ; 00 01 ; 0xff164
add byte [bp+si], al ; 00 02 ; 0xff166
add byte [bx+si], cl ; 00 08 ; 0xff168
add byte [bx+si], al ; 00 00 ; 0xff16a
xchg byte [bx+si+07000h], al ; 86 80 00 70 ; 0xff16c
times 0xf db 0
db 031h
; disGetNextSymbol 0xff180 LB 0xe80 -> off=0x0 cb=00000000000001e0 uValue=00000000000f1180 '_pci_routing_table'
_pci_routing_table: ; 0xff180 LB 0x1e0
db 000h, 008h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 000h, 000h
db 000h, 010h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 001h, 000h
db 000h, 018h, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 002h, 000h
db 000h, 020h, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 003h, 000h
db 000h, 028h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 004h, 000h
db 000h, 030h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 005h, 000h
db 000h, 038h, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 006h, 000h
db 000h, 040h, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 007h, 000h
db 000h, 048h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 008h, 000h
db 000h, 050h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 009h, 000h
db 000h, 058h, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 00ah, 000h
db 000h, 060h, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 00bh, 000h
db 000h, 068h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 00ch, 000h
db 000h, 070h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 00dh, 000h
db 000h, 078h, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 00eh, 000h
db 000h, 080h, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 00fh, 000h
db 000h, 088h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 010h, 000h
db 000h, 090h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 011h, 000h
db 000h, 098h, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 012h, 000h
db 000h, 0a0h, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 013h, 000h
db 000h, 0a8h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 014h, 000h
db 000h, 0b0h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 015h, 000h
db 000h, 0b8h, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 016h, 000h
db 000h, 0c0h, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 017h, 000h
db 000h, 0c8h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 018h, 000h
db 000h, 0d0h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 019h, 000h
db 000h, 0d8h, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 01ah, 000h
db 000h, 0e0h, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 01bh, 000h
db 000h, 0e8h, 060h, 0f8h, 0deh, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 01ch, 000h
db 000h, 0f0h, 061h, 0f8h, 0deh, 062h, 0f8h, 0deh, 063h, 0f8h, 0deh, 060h, 0f8h, 0deh, 01dh, 000h
; disGetNextSymbol 0xff360 LB 0xca0 -> off=0x0 cb=0000000000000002 uValue=00000000000f1360 '_pci_routing_table_size'
_pci_routing_table_size: ; 0xff360 LB 0x2
loopne 0f363h ; e0 01 ; 0xff360
; disGetNextSymbol 0xff362 LB 0xc9e -> off=0x0 cb=00000000000004df uValue=00000000000f1362 'biosorg_check_before_or_at_0F83Fh'
biosorg_check_before_or_at_0F83Fh: ; 0xff362 LB 0x4df
times 0x4dd db 0
db 'XM'
; disGetNextSymbol 0xff841 LB 0x7bf -> off=0x0 cb=000000000000000c uValue=00000000000f1841 'int12_handler'
int12_handler: ; 0xff841 LB 0xc
sti ; fb ; 0xff841 orgs.asm:1739
push DS ; 1e ; 0xff842 orgs.asm:1740
mov ax, strict word 00040h ; b8 40 00 ; 0xff843 orgs.asm:1741
mov ds, ax ; 8e d8 ; 0xff846 orgs.asm:1742
mov ax, word [00013h] ; a1 13 00 ; 0xff848 orgs.asm:1743
pop DS ; 1f ; 0xff84b orgs.asm:1744
iret ; cf ; 0xff84c orgs.asm:1745
; disGetNextSymbol 0xff84d LB 0x7b3 -> off=0x0 cb=000000000000000c uValue=00000000000f184d 'int11_handler'
int11_handler: ; 0xff84d LB 0xc
sti ; fb ; 0xff84d orgs.asm:1754
push DS ; 1e ; 0xff84e orgs.asm:1755
mov ax, strict word 00040h ; b8 40 00 ; 0xff84f orgs.asm:1756
mov ds, ax ; 8e d8 ; 0xff852 orgs.asm:1757
mov ax, word [00010h] ; a1 10 00 ; 0xff854 orgs.asm:1758
pop DS ; 1f ; 0xff857 orgs.asm:1759
iret ; cf ; 0xff858 orgs.asm:1760
; disGetNextSymbol 0xff859 LB 0x7a7 -> off=0x0 cb=000000000000003b uValue=00000000000f1859 'int15_handler'
int15_handler: ; 0xff859 LB 0x3b
cmp ah, 087h ; 80 fc 87 ; 0xff859 orgs.asm:1770
jne short 0f86bh ; 75 0d ; 0xff85c orgs.asm:1771
pushaw ; 60 ; 0xff85e orgs.asm:1776
push ES ; 06 ; 0xff85f orgs.asm:1777
push DS ; 1e ; 0xff860 orgs.asm:1778
push CS ; 0e ; 0xff861 orgs.asm:113
pop DS ; 1f ; 0xff862 orgs.asm:114
cld ; fc ; 0xff863 orgs.asm:115
call 06b73h ; e8 0c 73 ; 0xff864 orgs.asm:1780
pop DS ; 1f ; 0xff867 orgs.asm:1781
pop ES ; 07 ; 0xff868 orgs.asm:1782
popaw ; 61 ; 0xff869 orgs.asm:1783
iret ; cf ; 0xff86a orgs.asm:1784
pushfw ; 9c ; 0xff86b orgs.asm:1789
push DS ; 1e ; 0xff86c orgs.asm:1790
push ES ; 06 ; 0xff86d orgs.asm:1791
push CS ; 0e ; 0xff86e orgs.asm:113
pop DS ; 1f ; 0xff86f orgs.asm:114
cld ; fc ; 0xff870 orgs.asm:115
cmp ah, 0e8h ; 80 fc e8 ; 0xff871 orgs.asm:1796
je short 0f899h ; 74 23 ; 0xff874 orgs.asm:1797
cmp ah, 0d0h ; 80 fc d0 ; 0xff876 orgs.asm:1798
je short 0f899h ; 74 1e ; 0xff879 orgs.asm:1799
pushaw ; 60 ; 0xff87b orgs.asm:107
cmp ah, 053h ; 80 fc 53 ; 0xff87c orgs.asm:1802
je short 0f88fh ; 74 0e ; 0xff87f orgs.asm:1803
cmp ah, 0c2h ; 80 fc c2 ; 0xff881 orgs.asm:1804
je short 0f894h ; 74 0e ; 0xff884 orgs.asm:1805
call 064f7h ; e8 6e 6c ; 0xff886 orgs.asm:1807
popaw ; 61 ; 0xff889 orgs.asm:124
pop ES ; 07 ; 0xff88a orgs.asm:1813
pop DS ; 1f ; 0xff88b orgs.asm:1814
popfw ; 9d ; 0xff88c orgs.asm:1815
jmp short 0f8a2h ; eb 13 ; 0xff88d orgs.asm:1816
call 0a6bfh ; e8 2d ae ; 0xff88f orgs.asm:1819
jmp short 0f889h ; eb f5 ; 0xff892 orgs.asm:1820
; disGetNextSymbol 0xff894 LB 0x76c -> off=0x0 cb=0000000000000005 uValue=00000000000f1894 'int15_handler_mouse'
int15_handler_mouse: ; 0xff894 LB 0x5
call 07276h ; e8 df 79 ; 0xff894 orgs.asm:1823
jmp short 0f889h ; eb f0 ; 0xff897 orgs.asm:1824
; disGetNextSymbol 0xff899 LB 0x767 -> off=0x0 cb=0000000000000009 uValue=00000000000f1899 'int15_handler32'
int15_handler32: ; 0xff899 LB 0x9
pushad ; 66 60 ; 0xff899 orgs.asm:1830
call 068cfh ; e8 31 70 ; 0xff89b orgs.asm:1831
popad ; 66 61 ; 0xff89e orgs.asm:1832
jmp short 0f88ah ; eb e8 ; 0xff8a0 orgs.asm:1834
; disGetNextSymbol 0xff8a2 LB 0x75e -> off=0x0 cb=000000000000001a uValue=00000000000f18a2 'iret_modify_cf'
iret_modify_cf: ; 0xff8a2 LB 0x1a
jc short 0f8b2h ; 72 0e ; 0xff8a2 orgs.asm:1841
push bp ; 55 ; 0xff8a4 orgs.asm:1842
db 08bh, 0ech
; mov bp, sp ; 8b ec ; 0xff8a5 orgs.asm:1843
and byte [bp+006h], 0feh ; 80 66 06 fe ; 0xff8a7 orgs.asm:1844
or word [bp+006h], 00200h ; 81 4e 06 00 02 ; 0xff8ab orgs.asm:1845
pop bp ; 5d ; 0xff8b0 orgs.asm:1846
iret ; cf ; 0xff8b1 orgs.asm:1847
push bp ; 55 ; 0xff8b2 orgs.asm:1849
db 08bh, 0ech
; mov bp, sp ; 8b ec ; 0xff8b3 orgs.asm:1850
or word [bp+006h], 00201h ; 81 4e 06 01 02 ; 0xff8b5 orgs.asm:1851
pop bp ; 5d ; 0xff8ba orgs.asm:1852
iret ; cf ; 0xff8bb orgs.asm:1853
; disGetNextSymbol 0xff8bc LB 0x744 -> off=0x0 cb=000000000000002b uValue=00000000000f18bc 'int74_handler'
int74_handler: ; 0xff8bc LB 0x2b
sti ; fb ; 0xff8bc orgs.asm:1860
pushaw ; 60 ; 0xff8bd orgs.asm:107
push ES ; 06 ; 0xff8be orgs.asm:1862
push DS ; 1e ; 0xff8bf orgs.asm:1863
db 033h, 0c0h
; xor ax, ax ; 33 c0 ; 0xff8c0 orgs.asm:1864
push ax ; 50 ; 0xff8c2 orgs.asm:1865
push ax ; 50 ; 0xff8c3 orgs.asm:1866
push ax ; 50 ; 0xff8c4 orgs.asm:1867
push ax ; 50 ; 0xff8c5 orgs.asm:1868
push ax ; 50 ; 0xff8c6 orgs.asm:1869
push CS ; 0e ; 0xff8c7 orgs.asm:113
pop DS ; 1f ; 0xff8c8 orgs.asm:114
cld ; fc ; 0xff8c9 orgs.asm:115
call 071d2h ; e8 05 79 ; 0xff8ca orgs.asm:1871
pop cx ; 59 ; 0xff8cd orgs.asm:1872
jcxz 0f8dch ; e3 0c ; 0xff8ce orgs.asm:1873
push strict byte 00000h ; 6a 00 ; 0xff8d0 orgs.asm:1877
pop DS ; 1f ; 0xff8d2 orgs.asm:1882
push word [0040eh] ; ff 36 0e 04 ; 0xff8d3 orgs.asm:1883
pop DS ; 1f ; 0xff8d7 orgs.asm:1884
call far [word 00022h] ; ff 1e 22 00 ; 0xff8d8 orgs.asm:1885
cli ; fa ; 0xff8dc orgs.asm:1887
call 0e030h ; e8 50 e7 ; 0xff8dd orgs.asm:1888
add sp, strict byte 00008h ; 83 c4 08 ; 0xff8e0 orgs.asm:1889
pop DS ; 1f ; 0xff8e3 orgs.asm:1890
pop ES ; 07 ; 0xff8e4 orgs.asm:1891
popaw ; 61 ; 0xff8e5 orgs.asm:124
iret ; cf ; 0xff8e6 orgs.asm:1893
; disGetNextSymbol 0xff8e7 LB 0x719 -> off=0x0 cb=0000000000000012 uValue=00000000000f18e7 'int76_handler'
int76_handler: ; 0xff8e7 LB 0x12
push ax ; 50 ; 0xff8e7 orgs.asm:1900
push DS ; 1e ; 0xff8e8 orgs.asm:1901
mov ax, strict word 00040h ; b8 40 00 ; 0xff8e9 orgs.asm:1902
mov ds, ax ; 8e d8 ; 0xff8ec orgs.asm:1903
mov byte [0008eh], 0ffh ; c6 06 8e 00 ff ; 0xff8ee orgs.asm:1904
call 0e030h ; e8 3a e7 ; 0xff8f3 orgs.asm:1905
pop DS ; 1f ; 0xff8f6 orgs.asm:1906
pop ax ; 58 ; 0xff8f7 orgs.asm:1907
iret ; cf ; 0xff8f8 orgs.asm:1908
; disGetNextSymbol 0xff8f9 LB 0x707 -> off=0x0 cb=000000000000000d uValue=00000000000f18f9 'int70_handler'
int70_handler: ; 0xff8f9 LB 0xd
push ES ; 06 ; 0xff8f9 orgs.asm:1917
push DS ; 1e ; 0xff8fa orgs.asm:1918
pushaw ; 60 ; 0xff8fb orgs.asm:107
push CS ; 0e ; 0xff8fc orgs.asm:113
pop DS ; 1f ; 0xff8fd orgs.asm:114
cld ; fc ; 0xff8fe orgs.asm:115
call 06ea7h ; e8 a5 75 ; 0xff8ff orgs.asm:1921
popaw ; 61 ; 0xff902 orgs.asm:124
pop DS ; 1f ; 0xff903 orgs.asm:1923
pop ES ; 07 ; 0xff904 orgs.asm:1924
iret ; cf ; 0xff905 orgs.asm:1925
; disGetNextSymbol 0xff906 LB 0x6fa -> off=0x0 cb=0000000000000168 uValue=00000000000f1906 'biosorg_check_before_or_at_0FA6Ch'
biosorg_check_before_or_at_0FA6Ch: ; 0xff906 LB 0x168
times 0x166 db 0
db 'XM'
; disGetNextSymbol 0xffa6e LB 0x592 -> off=0x0 cb=0000000000000400 uValue=00000000000f1a6e 'font8x8'
font8x8: ; 0xffa6e LB 0x400
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 07eh, 081h, 0a5h, 081h, 0bdh, 099h, 081h, 07eh
db 07eh, 0ffh, 0dbh, 0ffh, 0c3h, 0e7h, 0ffh, 07eh, 06ch, 0feh, 0feh, 0feh, 07ch, 038h, 010h, 000h
db 010h, 038h, 07ch, 0feh, 07ch, 038h, 010h, 000h, 038h, 07ch, 038h, 0feh, 0feh, 07ch, 038h, 07ch
db 010h, 010h, 038h, 07ch, 0feh, 07ch, 038h, 07ch, 000h, 000h, 018h, 03ch, 03ch, 018h, 000h, 000h
db 0ffh, 0ffh, 0e7h, 0c3h, 0c3h, 0e7h, 0ffh, 0ffh, 000h, 03ch, 066h, 042h, 042h, 066h, 03ch, 000h
db 0ffh, 0c3h, 099h, 0bdh, 0bdh, 099h, 0c3h, 0ffh, 00fh, 007h, 00fh, 07dh, 0cch, 0cch, 0cch, 078h
db 03ch, 066h, 066h, 066h, 03ch, 018h, 07eh, 018h, 03fh, 033h, 03fh, 030h, 030h, 070h, 0f0h, 0e0h
db 07fh, 063h, 07fh, 063h, 063h, 067h, 0e6h, 0c0h, 099h, 05ah, 03ch, 0e7h, 0e7h, 03ch, 05ah, 099h
db 080h, 0e0h, 0f8h, 0feh, 0f8h, 0e0h, 080h, 000h, 002h, 00eh, 03eh, 0feh, 03eh, 00eh, 002h, 000h
db 018h, 03ch, 07eh, 018h, 018h, 07eh, 03ch, 018h, 066h, 066h, 066h, 066h, 066h, 000h, 066h, 000h
db 07fh, 0dbh, 0dbh, 07bh, 01bh, 01bh, 01bh, 000h, 03eh, 063h, 038h, 06ch, 06ch, 038h, 0cch, 078h
db 000h, 000h, 000h, 000h, 07eh, 07eh, 07eh, 000h, 018h, 03ch, 07eh, 018h, 07eh, 03ch, 018h, 0ffh
db 018h, 03ch, 07eh, 018h, 018h, 018h, 018h, 000h, 018h, 018h, 018h, 018h, 07eh, 03ch, 018h, 000h
db 000h, 018h, 00ch, 0feh, 00ch, 018h, 000h, 000h, 000h, 030h, 060h, 0feh, 060h, 030h, 000h, 000h
db 000h, 000h, 0c0h, 0c0h, 0c0h, 0feh, 000h, 000h, 000h, 024h, 066h, 0ffh, 066h, 024h, 000h, 000h
db 000h, 018h, 03ch, 07eh, 0ffh, 0ffh, 000h, 000h, 000h, 0ffh, 0ffh, 07eh, 03ch, 018h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 030h, 078h, 078h, 030h, 030h, 000h, 030h, 000h
db 06ch, 06ch, 06ch, 000h, 000h, 000h, 000h, 000h, 06ch, 06ch, 0feh, 06ch, 0feh, 06ch, 06ch, 000h
db 030h, 07ch, 0c0h, 078h, 00ch, 0f8h, 030h, 000h, 000h, 0c6h, 0cch, 018h, 030h, 066h, 0c6h, 000h
db 038h, 06ch, 038h, 076h, 0dch, 0cch, 076h, 000h, 060h, 060h, 0c0h, 000h, 000h, 000h, 000h, 000h
db 018h, 030h, 060h, 060h, 060h, 030h, 018h, 000h, 060h, 030h, 018h, 018h, 018h, 030h, 060h, 000h
db 000h, 066h, 03ch, 0ffh, 03ch, 066h, 000h, 000h, 000h, 030h, 030h, 0fch, 030h, 030h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 060h, 000h, 000h, 000h, 0fch, 000h, 000h, 000h, 000h
db 000h, 000h, 000h, 000h, 000h, 030h, 030h, 000h, 006h, 00ch, 018h, 030h, 060h, 0c0h, 080h, 000h
db 07ch, 0c6h, 0ceh, 0deh, 0f6h, 0e6h, 07ch, 000h, 030h, 070h, 030h, 030h, 030h, 030h, 0fch, 000h
db 078h, 0cch, 00ch, 038h, 060h, 0cch, 0fch, 000h, 078h, 0cch, 00ch, 038h, 00ch, 0cch, 078h, 000h
db 01ch, 03ch, 06ch, 0cch, 0feh, 00ch, 01eh, 000h, 0fch, 0c0h, 0f8h, 00ch, 00ch, 0cch, 078h, 000h
db 038h, 060h, 0c0h, 0f8h, 0cch, 0cch, 078h, 000h, 0fch, 0cch, 00ch, 018h, 030h, 030h, 030h, 000h
db 078h, 0cch, 0cch, 078h, 0cch, 0cch, 078h, 000h, 078h, 0cch, 0cch, 07ch, 00ch, 018h, 070h, 000h
db 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 000h, 000h, 030h, 030h, 060h
db 018h, 030h, 060h, 0c0h, 060h, 030h, 018h, 000h, 000h, 000h, 0fch, 000h, 000h, 0fch, 000h, 000h
db 060h, 030h, 018h, 00ch, 018h, 030h, 060h, 000h, 078h, 0cch, 00ch, 018h, 030h, 000h, 030h, 000h
db 07ch, 0c6h, 0deh, 0deh, 0deh, 0c0h, 078h, 000h, 030h, 078h, 0cch, 0cch, 0fch, 0cch, 0cch, 000h
db 0fch, 066h, 066h, 07ch, 066h, 066h, 0fch, 000h, 03ch, 066h, 0c0h, 0c0h, 0c0h, 066h, 03ch, 000h
db 0f8h, 06ch, 066h, 066h, 066h, 06ch, 0f8h, 000h, 0feh, 062h, 068h, 078h, 068h, 062h, 0feh, 000h
db 0feh, 062h, 068h, 078h, 068h, 060h, 0f0h, 000h, 03ch, 066h, 0c0h, 0c0h, 0ceh, 066h, 03eh, 000h
db 0cch, 0cch, 0cch, 0fch, 0cch, 0cch, 0cch, 000h, 078h, 030h, 030h, 030h, 030h, 030h, 078h, 000h
db 01eh, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 000h, 0e6h, 066h, 06ch, 078h, 06ch, 066h, 0e6h, 000h
db 0f0h, 060h, 060h, 060h, 062h, 066h, 0feh, 000h, 0c6h, 0eeh, 0feh, 0feh, 0d6h, 0c6h, 0c6h, 000h
db 0c6h, 0e6h, 0f6h, 0deh, 0ceh, 0c6h, 0c6h, 000h, 038h, 06ch, 0c6h, 0c6h, 0c6h, 06ch, 038h, 000h
db 0fch, 066h, 066h, 07ch, 060h, 060h, 0f0h, 000h, 078h, 0cch, 0cch, 0cch, 0dch, 078h, 01ch, 000h
db 0fch, 066h, 066h, 07ch, 06ch, 066h, 0e6h, 000h, 078h, 0cch, 0e0h, 070h, 01ch, 0cch, 078h, 000h
db 0fch, 0b4h, 030h, 030h, 030h, 030h, 078h, 000h, 0cch, 0cch, 0cch, 0cch, 0cch, 0cch, 0fch, 000h
db 0cch, 0cch, 0cch, 0cch, 0cch, 078h, 030h, 000h, 0c6h, 0c6h, 0c6h, 0d6h, 0feh, 0eeh, 0c6h, 000h
db 0c6h, 0c6h, 06ch, 038h, 038h, 06ch, 0c6h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 030h, 078h, 000h
db 0feh, 0c6h, 08ch, 018h, 032h, 066h, 0feh, 000h, 078h, 060h, 060h, 060h, 060h, 060h, 078h, 000h
db 0c0h, 060h, 030h, 018h, 00ch, 006h, 002h, 000h, 078h, 018h, 018h, 018h, 018h, 018h, 078h, 000h
db 010h, 038h, 06ch, 0c6h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 0ffh
db 030h, 030h, 018h, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 078h, 00ch, 07ch, 0cch, 076h, 000h
db 0e0h, 060h, 060h, 07ch, 066h, 066h, 0dch, 000h, 000h, 000h, 078h, 0cch, 0c0h, 0cch, 078h, 000h
db 01ch, 00ch, 00ch, 07ch, 0cch, 0cch, 076h, 000h, 000h, 000h, 078h, 0cch, 0fch, 0c0h, 078h, 000h
db 038h, 06ch, 060h, 0f0h, 060h, 060h, 0f0h, 000h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 0f8h
db 0e0h, 060h, 06ch, 076h, 066h, 066h, 0e6h, 000h, 030h, 000h, 070h, 030h, 030h, 030h, 078h, 000h
db 00ch, 000h, 00ch, 00ch, 00ch, 0cch, 0cch, 078h, 0e0h, 060h, 066h, 06ch, 078h, 06ch, 0e6h, 000h
db 070h, 030h, 030h, 030h, 030h, 030h, 078h, 000h, 000h, 000h, 0cch, 0feh, 0feh, 0d6h, 0c6h, 000h
db 000h, 000h, 0f8h, 0cch, 0cch, 0cch, 0cch, 000h, 000h, 000h, 078h, 0cch, 0cch, 0cch, 078h, 000h
db 000h, 000h, 0dch, 066h, 066h, 07ch, 060h, 0f0h, 000h, 000h, 076h, 0cch, 0cch, 07ch, 00ch, 01eh
db 000h, 000h, 0dch, 076h, 066h, 060h, 0f0h, 000h, 000h, 000h, 07ch, 0c0h, 078h, 00ch, 0f8h, 000h
db 010h, 030h, 07ch, 030h, 030h, 034h, 018h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 0cch, 076h, 000h
db 000h, 000h, 0cch, 0cch, 0cch, 078h, 030h, 000h, 000h, 000h, 0c6h, 0d6h, 0feh, 0feh, 06ch, 000h
db 000h, 000h, 0c6h, 06ch, 038h, 06ch, 0c6h, 000h, 000h, 000h, 0cch, 0cch, 0cch, 07ch, 00ch, 0f8h
db 000h, 000h, 0fch, 098h, 030h, 064h, 0fch, 000h, 01ch, 030h, 030h, 0e0h, 030h, 030h, 01ch, 000h
db 018h, 018h, 018h, 000h, 018h, 018h, 018h, 000h, 0e0h, 030h, 030h, 01ch, 030h, 030h, 0e0h, 000h
db 076h, 0dch, 000h, 000h, 000h, 000h, 000h, 000h, 000h, 010h, 038h, 06ch, 0c6h, 0c6h, 0feh, 000h
; disGetNextSymbol 0xffe6e LB 0x192 -> off=0x0 cb=0000000000000021 uValue=00000000000f1e6e 'biosorg_check_at_0FE6Eh'
biosorg_check_at_0FE6Eh: ; 0xffe6e LB 0x21
cmp ah, 0b1h ; 80 fc b1 ; 0xffe6e orgs.asm:1962
jne short 0fe82h ; 75 0f ; 0xffe71 orgs.asm:1963
push ES ; 06 ; 0xffe73 orgs.asm:1965
push DS ; 1e ; 0xffe74 orgs.asm:1966
push CS ; 0e ; 0xffe75 orgs.asm:113
pop DS ; 1f ; 0xffe76 orgs.asm:114
cld ; fc ; 0xffe77 orgs.asm:115
pushad ; 66 60 ; 0xffe78 orgs.asm:1969
call 0a8ddh ; e8 60 aa ; 0xffe7a orgs.asm:1970
popad ; 66 61 ; 0xffe7d orgs.asm:1971
pop DS ; 1f ; 0xffe7f orgs.asm:1973
pop ES ; 07 ; 0xffe80 orgs.asm:1974
iret ; cf ; 0xffe81 orgs.asm:1975
push ES ; 06 ; 0xffe82 orgs.asm:1979
push DS ; 1e ; 0xffe83 orgs.asm:1980
pushaw ; 60 ; 0xffe84 orgs.asm:107
push CS ; 0e ; 0xffe85 orgs.asm:113
pop DS ; 1f ; 0xffe86 orgs.asm:114
cld ; fc ; 0xffe87 orgs.asm:115
call 06f48h ; e8 bd 70 ; 0xffe88 orgs.asm:1984
popaw ; 61 ; 0xffe8b orgs.asm:124
pop DS ; 1f ; 0xffe8c orgs.asm:1986
pop ES ; 07 ; 0xffe8d orgs.asm:1987
iret ; cf ; 0xffe8e orgs.asm:1988
; disGetNextSymbol 0xffe8f LB 0x171 -> off=0x0 cb=0000000000000016 uValue=00000000000f1e8f 'biosorg_check_before_or_at_0FEA3h'
biosorg_check_before_or_at_0FEA3h: ; 0xffe8f LB 0x16
times 0x14 db 0
db 'XM'
; disGetNextSymbol 0xffea5 LB 0x15b -> off=0x0 cb=0000000000000043 uValue=00000000000f1ea5 'int08_handler'
int08_handler: ; 0xffea5 LB 0x43
sti ; fb ; 0xffea5 orgs.asm:1998
push eax ; 66 50 ; 0xffea6 orgs.asm:1999
push DS ; 1e ; 0xffea8 orgs.asm:2004
push dx ; 52 ; 0xffea9 orgs.asm:2005
mov ax, strict word 00040h ; b8 40 00 ; 0xffeaa orgs.asm:2006
mov ds, ax ; 8e d8 ; 0xffead orgs.asm:2007
mov eax, dword [0006ch] ; 66 a1 6c 00 ; 0xffeaf orgs.asm:2010
inc eax ; 66 40 ; 0xffeb3 orgs.asm:2011
cmp eax, strict dword 0001800b0h ; 66 3d b0 00 18 00 ; 0xffeb5 orgs.asm:2023
jc short 0fec4h ; 72 07 ; 0xffebb orgs.asm:2024
db 066h, 033h, 0c0h
; xor eax, eax ; 66 33 c0 ; 0xffebd orgs.asm:2033
inc byte [word 00070h] ; fe 06 70 00 ; 0xffec0 orgs.asm:2034
mov dword [0006ch], eax ; 66 a3 6c 00 ; 0xffec4 orgs.asm:2037
mov AL, byte [00040h] ; a0 40 00 ; 0xffec8 orgs.asm:2045
db 00ah, 0c0h
; or al, al ; 0a c0 ; 0xffecb orgs.asm:2046
je short 0feddh ; 74 0e ; 0xffecd orgs.asm:2047
db 0feh, 0c8h
; dec al ; fe c8 ; 0xffecf orgs.asm:2048
mov byte [00040h], AL ; a2 40 00 ; 0xffed1 orgs.asm:2049
jne short 0feddh ; 75 07 ; 0xffed4 orgs.asm:2050
mov dx, 003f2h ; ba f2 03 ; 0xffed6 orgs.asm:2052
in AL, DX ; ec ; 0xffed9 orgs.asm:2053
and AL, strict byte 0cfh ; 24 cf ; 0xffeda orgs.asm:2054
out DX, AL ; ee ; 0xffedc orgs.asm:2055
int 01ch ; cd 1c ; 0xffedd orgs.asm:2058
cli ; fa ; 0xffedf orgs.asm:2060
call 0e034h ; e8 51 e1 ; 0xffee0 orgs.asm:2061
pop dx ; 5a ; 0xffee3 orgs.asm:2062
pop DS ; 1f ; 0xffee4 orgs.asm:2063
pop eax ; 66 58 ; 0xffee5 orgs.asm:2065
iret ; cf ; 0xffee7 orgs.asm:2070
; disGetNextSymbol 0xffee8 LB 0x118 -> off=0x0 cb=000000000000000b uValue=00000000000f1ee8 'biosorg_check_before_or_at_0FEF1h'
biosorg_check_before_or_at_0FEF1h: ; 0xffee8 LB 0xb
times 0x9 db 0
db 'XM'
; disGetNextSymbol 0xffef3 LB 0x10d -> off=0x0 cb=000000000000000d uValue=00000000000f1ef3 'biosorg_check_at_0FEF3h'
biosorg_check_at_0FEF3h: ; 0xffef3 LB 0xd
times 0xb db 0
db 'XM'
; disGetNextSymbol 0xfff00 LB 0x100 -> off=0x0 cb=0000000000000019 uValue=00000000000f1f00 'biosorg_check_at_0FF00h'
biosorg_check_at_0FF00h: ; 0xfff00 LB 0x19
dec di ; 4f ; 0xfff00
jc short 0ff64h ; 72 61 ; 0xfff01
arpl [si+065h], bp ; 63 6c 65 ; 0xfff03
and byte [bp+04dh], dl ; 20 56 4d ; 0xfff06
and byte [bp+069h], dl ; 20 56 69 ; 0xfff09
jc short 0ff82h ; 72 74 ; 0xfff0c
jne short 0ff71h ; 75 61 ; 0xfff0e
insb ; 6c ; 0xfff10
inc dx ; 42 ; 0xfff11
outsw ; 6f ; 0xfff12
js short 0ff35h ; 78 20 ; 0xfff13
inc dx ; 42 ; 0xfff15
dec cx ; 49 ; 0xfff16
dec di ; 4f ; 0xfff17
push bx ; 53 ; 0xfff18
; disGetNextSymbol 0xfff19 LB 0xe7 -> off=0x0 cb=000000000000003a uValue=00000000000f1f19 'biosorg_check_before_or_at_0FF51h'
biosorg_check_before_or_at_0FF51h: ; 0xfff19 LB 0x3a
times 0x38 db 0
db 'XM'
; disGetNextSymbol 0xfff53 LB 0xad -> off=0x0 cb=0000000000000001 uValue=00000000000f1f53 'dummy_iret'
dummy_iret: ; 0xfff53 LB 0x1
iret ; cf ; 0xfff53 orgs.asm:2095
; disGetNextSymbol 0xfff54 LB 0xac -> off=0x0 cb=000000000000002c uValue=00000000000f1f54 'biosorg_check_at_0FF54h'
biosorg_check_at_0FF54h: ; 0xfff54 LB 0x2c
iret ; cf ; 0xfff54 orgs.asm:2104
mov ax, ax ; 89 c0 ; 0xfff55
mov ax, ax ; 89 c0 ; 0xfff57
mov ax, ax ; 89 c0 ; 0xfff59
mov ax, ax ; 89 c0 ; 0xfff5b
mov ax, ax ; 89 c0 ; 0xfff5d
cld ; fc ; 0xfff5f
pop di ; 5f ; 0xfff60
push bx ; 53 ; 0xfff61
dec bp ; 4d ; 0xfff62
pop di ; 5f ; 0xfff63
jnl short 0ff85h ; 7d 1f ; 0xfff64
add al, byte [di] ; 02 05 ; 0xfff66
inc word [bx+si] ; ff 00 ; 0xfff68
add byte [bx+si], al ; 00 00 ; 0xfff6a
add byte [bx+si], al ; 00 00 ; 0xfff6c
add byte [bx+si], al ; 00 00 ; 0xfff6e
pop di ; 5f ; 0xfff70
inc sp ; 44 ; 0xfff71
dec bp ; 4d ; 0xfff72
dec cx ; 49 ; 0xfff73
pop di ; 5f ; 0xfff74
and ax, strict word 00000h ; 25 00 00 ; 0xfff75
add byte [bx+si], dl ; 00 10 ; 0xfff78
push CS ; 0e ; 0xfff7a
add byte [bx+si], al ; 00 00 ; 0xfff7b
add byte [di], ah ; 00 25 ; 0xfff7d
times 0x1 db 0
; disGetNextSymbol 0xfff80 LB 0x80 -> off=0x0 cb=0000000000000070 uValue=00000000000f1f80 'biosorg_check_before_or_at_0FFEEh'
biosorg_check_before_or_at_0FFEEh: ; 0xfff80 LB 0x70
times 0x6e db 0
db 'XM'
; disGetNextSymbol 0xffff0 LB 0x10 -> off=0x0 cb=0000000000000010 uValue=00000000000f1ff0 'cpu_reset'
cpu_reset: ; 0xffff0 LB 0x10
jmp far 0f000h:0e05bh ; ea 5b e0 00 f0 ; 0xffff0 orgs.asm:2114
; disGetNextSymbol 0xffff5 LB 0xb -> off=0xb cb=0000000000000000 uValue=0000000000100000 '_dummy_addr_0x100000'
db 030h, 036h, 02fh, 032h, 033h, 02fh, 039h, 039h, 000h, 0fch, 034h
|