luxos/bochs/dump.txt

10665 lines
541 KiB
Plaintext

kernel.bin: file format elf32-i386
Disassembly of section .text:
00102080 <TimeHandler>:
102080: 53 push ebx
102081: 83 ec 08 sub esp,0x8
102084: 8b 1d 08 d0 10 00 mov ebx,DWORD PTR ds:0x10d008
10208a: 85 db test ebx,ebx
10208c: 74 45 je 1020d3 <TimeHandler+0x53>
10208e: 8b 0d 04 d0 10 00 mov ecx,DWORD PTR ds:0x10d004
102094: b8 e8 03 00 00 mov eax,0x3e8
102099: ba 00 00 00 00 mov edx,0x0
10209e: f7 f3 div ebx
1020a0: 01 c1 add ecx,eax
1020a2: 89 0d 04 d0 10 00 mov DWORD PTR ds:0x10d004,ecx
1020a8: a1 04 d0 10 00 mov eax,ds:0x10d004
1020ad: 3d ff 5b 26 05 cmp eax,0x5265bff
1020b2: 76 1a jbe 1020ce <TimeHandler+0x4e>
1020b4: a1 00 d0 10 00 mov eax,ds:0x10d000
1020b9: 40 inc eax
1020ba: a3 00 d0 10 00 mov ds:0x10d000,eax
1020bf: a1 04 d0 10 00 mov eax,ds:0x10d004
1020c4: 2d 00 5c 26 05 sub eax,0x5265c00
1020c9: a3 04 d0 10 00 mov ds:0x10d004,eax
1020ce: e8 31 6e 00 00 call 108f04 <TaskSwitch>
1020d3: 83 c4 08 add esp,0x8
1020d6: 5b pop ebx
1020d7: c3 ret
001020d8 <CmosRead>:
1020d8: 83 ec 1c sub esp,0x1c
1020db: 8a 44 24 20 mov al,BYTE PTR [esp+0x20]
1020df: e6 70 out 0x70,al
1020e1: e6 80 out 0x80,al
1020e3: c7 04 24 71 00 00 00 mov DWORD PTR [esp],0x71
1020ea: e8 89 6a 00 00 call 108b78 <inportb>
1020ef: 83 c4 1c add esp,0x1c
1020f2: c3 ret
001020f3 <CmosWrite>:
1020f3: 8a 44 24 04 mov al,BYTE PTR [esp+0x4]
1020f7: e6 70 out 0x70,al
1020f9: e6 80 out 0x80,al
1020fb: 8a 44 24 08 mov al,BYTE PTR [esp+0x8]
1020ff: e6 71 out 0x71,al
102101: c3 ret
00102102 <CmosSetRTC>:
102102: 55 push ebp
102103: 57 push edi
102104: 56 push esi
102105: 53 push ebx
102106: 83 ec 2c sub esp,0x2c
102109: 8b 5c 24 40 mov ebx,DWORD PTR [esp+0x40]
10210d: c7 04 24 0b 00 00 00 mov DWORD PTR [esp],0xb
102114: e8 bf ff ff ff call 1020d8 <CmosRead>
102119: a8 04 test al,0x4
10211b: 0f 94 44 24 1f sete BYTE PTR [esp+0x1f]
102120: c7 04 24 0b 00 00 00 mov DWORD PTR [esp],0xb
102127: e8 ac ff ff ff call 1020d8 <CmosRead>
10212c: bd 02 00 00 00 mov ebp,0x2
102131: 21 c5 and ebp,eax
102133: 8b 0b mov ecx,DWORD PTR [ebx]
102135: bf 64 00 00 00 mov edi,0x64
10213a: 89 c8 mov eax,ecx
10213c: 89 ca mov edx,ecx
10213e: c1 fa 1f sar edx,0x1f
102141: f7 ff idiv edi
102143: 89 d6 mov esi,edx
102145: ba 1f 85 eb 51 mov edx,0x51eb851f
10214a: 89 c8 mov eax,ecx
10214c: f7 ea imul edx
10214e: c1 fa 05 sar edx,0x5
102151: c1 f9 1f sar ecx,0x1f
102154: 28 ca sub dl,cl
102156: 89 d7 mov edi,edx
102158: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
10215d: 74 66 je 1021c5 <CmosSetRTC+0xc3>
10215f: 31 c0 xor eax,eax
102161: 8a 43 09 mov al,BYTE PTR [ebx+0x9]
102164: 8d 14 80 lea edx,[eax+eax*4]
102167: 8d 04 d0 lea eax,[eax+edx*8]
10216a: 8d 04 80 lea eax,[eax+eax*4]
10216d: 66 c1 e8 0b shr ax,0xb
102171: 88 c2 mov dl,al
102173: c1 e2 04 shl edx,0x4
102176: 8d 04 80 lea eax,[eax+eax*4]
102179: 01 c0 add eax,eax
10217b: 8a 4b 09 mov cl,BYTE PTR [ebx+0x9]
10217e: 28 c1 sub cl,al
102180: 88 c8 mov al,cl
102182: 09 d0 or eax,edx
102184: 25 ff 00 00 00 and eax,0xff
102189: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10218d: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
102194: e8 5a ff ff ff call 1020f3 <CmosWrite>
102199: 31 c0 xor eax,eax
10219b: 8a 43 08 mov al,BYTE PTR [ebx+0x8]
10219e: 8d 14 80 lea edx,[eax+eax*4]
1021a1: 8d 04 d0 lea eax,[eax+edx*8]
1021a4: 8d 14 80 lea edx,[eax+eax*4]
1021a7: 66 c1 ea 0b shr dx,0xb
1021ab: 88 d0 mov al,dl
1021ad: c1 e0 04 shl eax,0x4
1021b0: 8d 14 92 lea edx,[edx+edx*4]
1021b3: 01 d2 add edx,edx
1021b5: 8a 4b 08 mov cl,BYTE PTR [ebx+0x8]
1021b8: 28 d1 sub cl,dl
1021ba: 88 ca mov dl,cl
1021bc: 09 d0 or eax,edx
1021be: 25 ff 00 00 00 and eax,0xff
1021c3: eb 1a jmp 1021df <CmosSetRTC+0xdd>
1021c5: 31 c0 xor eax,eax
1021c7: 8a 43 09 mov al,BYTE PTR [ebx+0x9]
1021ca: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1021ce: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1021d5: e8 19 ff ff ff call 1020f3 <CmosWrite>
1021da: 31 c0 xor eax,eax
1021dc: 8a 43 08 mov al,BYTE PTR [ebx+0x8]
1021df: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1021e3: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
1021ea: e8 04 ff ff ff call 1020f3 <CmosWrite>
1021ef: 85 ed test ebp,ebp
1021f1: 0f 85 8a 00 00 00 jne 102281 <CmosSetRTC+0x17f>
1021f7: 8a 4b 07 mov cl,BYTE PTR [ebx+0x7]
1021fa: 80 f9 0c cmp cl,0xc
1021fd: 76 5d jbe 10225c <CmosSetRTC+0x15a>
1021ff: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
102204: 74 39 je 10223f <CmosSetRTC+0x13d>
102206: 81 e1 ff 00 00 00 and ecx,0xff
10220c: 83 e9 0c sub ecx,0xc
10220f: 66 bd 0a 00 mov bp,0xa
102213: 89 c8 mov eax,ecx
102215: 89 ca mov edx,ecx
102217: c1 fa 1f sar edx,0x1f
10221a: f7 fd idiv ebp
10221c: 83 ca 80 or edx,0xffffff80
10221f: 89 d5 mov ebp,edx
102221: ba 67 66 66 66 mov edx,0x66666667
102226: 89 c8 mov eax,ecx
102228: f7 ea imul edx
10222a: c1 fa 02 sar edx,0x2
10222d: c1 f9 1f sar ecx,0x1f
102230: 29 ca sub edx,ecx
102232: c1 e2 04 shl edx,0x4
102235: 09 d5 or ebp,edx
102237: 81 e5 ff 00 00 00 and ebp,0xff
10223d: eb 0b jmp 10224a <CmosSetRTC+0x148>
10223f: 83 c9 80 or ecx,0xffffff80
102242: 81 e1 ff 00 00 00 and ecx,0xff
102248: 89 cd mov ebp,ecx
10224a: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
10224e: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
102255: e8 99 fe ff ff call 1020f3 <CmosWrite>
10225a: eb 6b jmp 1022c7 <CmosSetRTC+0x1c5>
10225c: 84 c9 test cl,cl
10225e: 75 21 jne 102281 <CmosSetRTC+0x17f>
102260: 80 7c 24 1f 01 cmp BYTE PTR [esp+0x1f],0x1
102265: 19 c0 sbb eax,eax
102267: 83 e0 fa and eax,0xfffffffa
10226a: 05 92 00 00 00 add eax,0x92
10226f: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
102273: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
10227a: e8 74 fe ff ff call 1020f3 <CmosWrite>
10227f: eb 46 jmp 1022c7 <CmosSetRTC+0x1c5>
102281: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
102286: 74 2a je 1022b2 <CmosSetRTC+0x1b0>
102288: 31 c0 xor eax,eax
10228a: 8a 43 07 mov al,BYTE PTR [ebx+0x7]
10228d: 8d 14 80 lea edx,[eax+eax*4]
102290: 8d 04 d0 lea eax,[eax+edx*8]
102293: 8d 14 80 lea edx,[eax+eax*4]
102296: 66 c1 ea 0b shr dx,0xb
10229a: 88 d1 mov cl,dl
10229c: c1 e1 04 shl ecx,0x4
10229f: 8d 14 92 lea edx,[edx+edx*4]
1022a2: 01 d2 add edx,edx
1022a4: 8a 43 07 mov al,BYTE PTR [ebx+0x7]
1022a7: 28 d0 sub al,dl
1022a9: 09 c8 or eax,ecx
1022ab: 25 ff 00 00 00 and eax,0xff
1022b0: eb 05 jmp 1022b7 <CmosSetRTC+0x1b5>
1022b2: 31 c0 xor eax,eax
1022b4: 8a 43 07 mov al,BYTE PTR [ebx+0x7]
1022b7: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1022bb: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
1022c2: e8 2c fe ff ff call 1020f3 <CmosWrite>
1022c7: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
1022cc: 0f 84 e0 00 00 00 je 1023b2 <CmosSetRTC+0x2b0>
1022d2: 31 c0 xor eax,eax
1022d4: 8a 43 06 mov al,BYTE PTR [ebx+0x6]
1022d7: 8d 14 80 lea edx,[eax+eax*4]
1022da: 8d 04 d0 lea eax,[eax+edx*8]
1022dd: 8d 04 80 lea eax,[eax+eax*4]
1022e0: 66 c1 e8 0b shr ax,0xb
1022e4: 88 c2 mov dl,al
1022e6: c1 e2 04 shl edx,0x4
1022e9: 8d 04 80 lea eax,[eax+eax*4]
1022ec: 01 c0 add eax,eax
1022ee: 8a 4b 06 mov cl,BYTE PTR [ebx+0x6]
1022f1: 28 c1 sub cl,al
1022f3: 88 c8 mov al,cl
1022f5: 09 d0 or eax,edx
1022f7: 25 ff 00 00 00 and eax,0xff
1022fc: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
102300: c7 04 24 07 00 00 00 mov DWORD PTR [esp],0x7
102307: e8 e7 fd ff ff call 1020f3 <CmosWrite>
10230c: 8a 53 04 mov dl,BYTE PTR [ebx+0x4]
10230f: 31 c0 xor eax,eax
102311: 88 d0 mov al,dl
102313: 8d 0c 80 lea ecx,[eax+eax*4]
102316: 8d 04 c8 lea eax,[eax+ecx*8]
102319: 8d 04 80 lea eax,[eax+eax*4]
10231c: 66 c1 e8 0b shr ax,0xb
102320: 88 c1 mov cl,al
102322: c1 e1 04 shl ecx,0x4
102325: 8d 04 80 lea eax,[eax+eax*4]
102328: 01 c0 add eax,eax
10232a: 28 c2 sub dl,al
10232c: 09 ca or edx,ecx
10232e: 81 e2 ff 00 00 00 and edx,0xff
102334: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
102338: c7 04 24 08 00 00 00 mov DWORD PTR [esp],0x8
10233f: e8 af fd ff ff call 1020f3 <CmosWrite>
102344: 89 f0 mov eax,esi
102346: 25 ff 00 00 00 and eax,0xff
10234b: 8d 14 80 lea edx,[eax+eax*4]
10234e: 8d 04 d0 lea eax,[eax+edx*8]
102351: 8d 04 80 lea eax,[eax+eax*4]
102354: 66 c1 e8 0b shr ax,0xb
102358: 88 c2 mov dl,al
10235a: c1 e2 04 shl edx,0x4
10235d: 8d 04 80 lea eax,[eax+eax*4]
102360: 01 c0 add eax,eax
102362: 89 f1 mov ecx,esi
102364: 28 c1 sub cl,al
102366: 88 c8 mov al,cl
102368: 09 c2 or edx,eax
10236a: 89 d6 mov esi,edx
10236c: 81 e6 ff 00 00 00 and esi,0xff
102372: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
102376: c7 04 24 09 00 00 00 mov DWORD PTR [esp],0x9
10237d: e8 71 fd ff ff call 1020f3 <CmosWrite>
102382: 89 f8 mov eax,edi
102384: 25 ff 00 00 00 and eax,0xff
102389: 8d 14 80 lea edx,[eax+eax*4]
10238c: 8d 04 d0 lea eax,[eax+edx*8]
10238f: 8d 04 80 lea eax,[eax+eax*4]
102392: 66 c1 e8 0b shr ax,0xb
102396: 88 c2 mov dl,al
102398: c1 e2 04 shl edx,0x4
10239b: 8d 04 80 lea eax,[eax+eax*4]
10239e: 01 c0 add eax,eax
1023a0: 89 f9 mov ecx,edi
1023a2: 28 c1 sub cl,al
1023a4: 88 c8 mov al,cl
1023a6: 09 c2 or edx,eax
1023a8: 89 d7 mov edi,edx
1023aa: 81 e7 ff 00 00 00 and edi,0xff
1023b0: eb 46 jmp 1023f8 <CmosSetRTC+0x2f6>
1023b2: 31 c0 xor eax,eax
1023b4: 8a 43 06 mov al,BYTE PTR [ebx+0x6]
1023b7: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1023bb: c7 04 24 07 00 00 00 mov DWORD PTR [esp],0x7
1023c2: e8 2c fd ff ff call 1020f3 <CmosWrite>
1023c7: 31 c0 xor eax,eax
1023c9: 8a 43 04 mov al,BYTE PTR [ebx+0x4]
1023cc: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1023d0: c7 04 24 08 00 00 00 mov DWORD PTR [esp],0x8
1023d7: e8 17 fd ff ff call 1020f3 <CmosWrite>
1023dc: 81 e6 ff 00 00 00 and esi,0xff
1023e2: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
1023e6: c7 04 24 09 00 00 00 mov DWORD PTR [esp],0x9
1023ed: e8 01 fd ff ff call 1020f3 <CmosWrite>
1023f2: 81 e7 ff 00 00 00 and edi,0xff
1023f8: 89 7c 24 04 mov DWORD PTR [esp+0x4],edi
1023fc: c7 04 24 32 00 00 00 mov DWORD PTR [esp],0x32
102403: e8 eb fc ff ff call 1020f3 <CmosWrite>
102408: 83 c4 2c add esp,0x2c
10240b: 5b pop ebx
10240c: 5e pop esi
10240d: 5f pop edi
10240e: 5d pop ebp
10240f: c3 ret
00102410 <CmosGetRTC>:
102410: 57 push edi
102411: 56 push esi
102412: 53 push ebx
102413: 83 ec 20 sub esp,0x20
102416: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
10241a: c7 04 24 0b 00 00 00 mov DWORD PTR [esp],0xb
102421: e8 b2 fc ff ff call 1020d8 <CmosRead>
102426: a8 04 test al,0x4
102428: 0f 94 44 24 1f sete BYTE PTR [esp+0x1f]
10242d: c7 04 24 0b 00 00 00 mov DWORD PTR [esp],0xb
102434: e8 9f fc ff ff call 1020d8 <CmosRead>
102439: be 02 00 00 00 mov esi,0x2
10243e: 21 c6 and esi,eax
102440: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
102445: 74 51 je 102498 <CmosGetRTC+0x88>
102447: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10244e: e8 85 fc ff ff call 1020d8 <CmosRead>
102453: 89 c7 mov edi,eax
102455: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10245c: e8 77 fc ff ff call 1020d8 <CmosRead>
102461: c0 e8 04 shr al,0x4
102464: 8d 04 80 lea eax,[eax+eax*4]
102467: 83 e7 0f and edi,0xf
10246a: 8d 04 47 lea eax,[edi+eax*2]
10246d: 88 43 09 mov BYTE PTR [ebx+0x9],al
102470: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
102477: e8 5c fc ff ff call 1020d8 <CmosRead>
10247c: 89 c7 mov edi,eax
10247e: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
102485: e8 4e fc ff ff call 1020d8 <CmosRead>
10248a: c0 e8 04 shr al,0x4
10248d: 8d 04 80 lea eax,[eax+eax*4]
102490: 83 e7 0f and edi,0xf
102493: 8d 04 47 lea eax,[edi+eax*2]
102496: eb 1b jmp 1024b3 <CmosGetRTC+0xa3>
102498: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10249f: e8 34 fc ff ff call 1020d8 <CmosRead>
1024a4: 88 43 09 mov BYTE PTR [ebx+0x9],al
1024a7: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
1024ae: e8 25 fc ff ff call 1020d8 <CmosRead>
1024b3: 88 43 08 mov BYTE PTR [ebx+0x8],al
1024b6: 85 f6 test esi,esi
1024b8: 75 7c jne 102536 <CmosGetRTC+0x126>
1024ba: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
1024c1: e8 12 fc ff ff call 1020d8 <CmosRead>
1024c6: a8 50 test al,0x50
1024c8: 74 6c je 102536 <CmosGetRTC+0x126>
1024ca: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
1024cf: 74 4e je 10251f <CmosGetRTC+0x10f>
1024d1: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
1024d8: e8 fb fb ff ff call 1020d8 <CmosRead>
1024dd: 89 c6 mov esi,eax
1024df: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
1024e6: e8 ed fb ff ff call 1020d8 <CmosRead>
1024eb: 31 d2 xor edx,edx
1024ed: 88 c2 mov dl,al
1024ef: 83 c2 80 add edx,0xffffff80
1024f2: 89 d0 mov eax,edx
1024f4: c1 f8 1f sar eax,0x1f
1024f7: c1 e8 1c shr eax,0x1c
1024fa: 01 d0 add eax,edx
1024fc: c1 e8 04 shr eax,0x4
1024ff: 8d 04 80 lea eax,[eax+eax*4]
102502: 81 e6 ff 00 00 00 and esi,0xff
102508: 83 c6 80 add esi,0xffffff80
10250b: 89 f2 mov edx,esi
10250d: c1 fa 1f sar edx,0x1f
102510: c1 ea 1c shr edx,0x1c
102513: 01 d6 add esi,edx
102515: 83 e6 0f and esi,0xf
102518: 29 d6 sub esi,edx
10251a: 8d 04 46 lea eax,[esi+eax*2]
10251d: eb 0f jmp 10252e <CmosGetRTC+0x11e>
10251f: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
102526: e8 ad fb ff ff call 1020d8 <CmosRead>
10252b: 83 c0 80 add eax,0xffffff80
10252e: 83 c0 0c add eax,0xc
102531: 88 43 07 mov BYTE PTR [ebx+0x7],al
102534: eb 3e jmp 102574 <CmosGetRTC+0x164>
102536: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
10253b: 74 28 je 102565 <CmosGetRTC+0x155>
10253d: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
102544: e8 8f fb ff ff call 1020d8 <CmosRead>
102549: 89 c6 mov esi,eax
10254b: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
102552: e8 81 fb ff ff call 1020d8 <CmosRead>
102557: c0 e8 04 shr al,0x4
10255a: 8d 04 80 lea eax,[eax+eax*4]
10255d: 83 e6 0f and esi,0xf
102560: 8d 04 46 lea eax,[esi+eax*2]
102563: eb 0c jmp 102571 <CmosGetRTC+0x161>
102565: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
10256c: e8 67 fb ff ff call 1020d8 <CmosRead>
102571: 88 43 07 mov BYTE PTR [ebx+0x7],al
102574: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
102579: 0f 84 de 00 00 00 je 10265d <CmosGetRTC+0x24d>
10257f: c7 04 24 06 00 00 00 mov DWORD PTR [esp],0x6
102586: e8 4d fb ff ff call 1020d8 <CmosRead>
10258b: 89 c6 mov esi,eax
10258d: c7 04 24 06 00 00 00 mov DWORD PTR [esp],0x6
102594: e8 3f fb ff ff call 1020d8 <CmosRead>
102599: c0 e8 04 shr al,0x4
10259c: 8d 04 80 lea eax,[eax+eax*4]
10259f: 83 e6 0f and esi,0xf
1025a2: 8d 04 46 lea eax,[esi+eax*2]
1025a5: 88 43 05 mov BYTE PTR [ebx+0x5],al
1025a8: c7 04 24 07 00 00 00 mov DWORD PTR [esp],0x7
1025af: e8 24 fb ff ff call 1020d8 <CmosRead>
1025b4: 89 c6 mov esi,eax
1025b6: c7 04 24 07 00 00 00 mov DWORD PTR [esp],0x7
1025bd: e8 16 fb ff ff call 1020d8 <CmosRead>
1025c2: c0 e8 04 shr al,0x4
1025c5: 8d 04 80 lea eax,[eax+eax*4]
1025c8: 83 e6 0f and esi,0xf
1025cb: 8d 04 46 lea eax,[esi+eax*2]
1025ce: 88 43 06 mov BYTE PTR [ebx+0x6],al
1025d1: c7 04 24 08 00 00 00 mov DWORD PTR [esp],0x8
1025d8: e8 fb fa ff ff call 1020d8 <CmosRead>
1025dd: 89 c6 mov esi,eax
1025df: c7 04 24 08 00 00 00 mov DWORD PTR [esp],0x8
1025e6: e8 ed fa ff ff call 1020d8 <CmosRead>
1025eb: c0 e8 04 shr al,0x4
1025ee: 8d 04 80 lea eax,[eax+eax*4]
1025f1: 83 e6 0f and esi,0xf
1025f4: 8d 04 46 lea eax,[esi+eax*2]
1025f7: 88 43 04 mov BYTE PTR [ebx+0x4],al
1025fa: c7 04 24 09 00 00 00 mov DWORD PTR [esp],0x9
102601: e8 d2 fa ff ff call 1020d8 <CmosRead>
102606: 89 c6 mov esi,eax
102608: c7 04 24 09 00 00 00 mov DWORD PTR [esp],0x9
10260f: e8 c4 fa ff ff call 1020d8 <CmosRead>
102614: 83 e6 0f and esi,0xf
102617: c0 e8 04 shr al,0x4
10261a: 25 ff 00 00 00 and eax,0xff
10261f: 8d 04 80 lea eax,[eax+eax*4]
102622: 8d 34 46 lea esi,[esi+eax*2]
102625: 89 33 mov DWORD PTR [ebx],esi
102627: c7 04 24 32 00 00 00 mov DWORD PTR [esp],0x32
10262e: e8 a5 fa ff ff call 1020d8 <CmosRead>
102633: 89 c7 mov edi,eax
102635: c7 04 24 32 00 00 00 mov DWORD PTR [esp],0x32
10263c: e8 97 fa ff ff call 1020d8 <CmosRead>
102641: 83 e7 0f and edi,0xf
102644: c0 e8 04 shr al,0x4
102647: 25 ff 00 00 00 and eax,0xff
10264c: 8d 04 80 lea eax,[eax+eax*4]
10264f: 8d 04 47 lea eax,[edi+eax*2]
102652: 8d 04 80 lea eax,[eax+eax*4]
102655: 8d 04 80 lea eax,[eax+eax*4]
102658: c1 e0 02 shl eax,0x2
10265b: eb 5c jmp 1026b9 <CmosGetRTC+0x2a9>
10265d: c7 04 24 06 00 00 00 mov DWORD PTR [esp],0x6
102664: e8 6f fa ff ff call 1020d8 <CmosRead>
102669: 88 43 05 mov BYTE PTR [ebx+0x5],al
10266c: c7 04 24 07 00 00 00 mov DWORD PTR [esp],0x7
102673: e8 60 fa ff ff call 1020d8 <CmosRead>
102678: 88 43 06 mov BYTE PTR [ebx+0x6],al
10267b: c7 04 24 08 00 00 00 mov DWORD PTR [esp],0x8
102682: e8 51 fa ff ff call 1020d8 <CmosRead>
102687: 88 43 04 mov BYTE PTR [ebx+0x4],al
10268a: c7 04 24 09 00 00 00 mov DWORD PTR [esp],0x9
102691: e8 42 fa ff ff call 1020d8 <CmosRead>
102696: 25 ff 00 00 00 and eax,0xff
10269b: 89 c6 mov esi,eax
10269d: 89 03 mov DWORD PTR [ebx],eax
10269f: c7 04 24 32 00 00 00 mov DWORD PTR [esp],0x32
1026a6: e8 2d fa ff ff call 1020d8 <CmosRead>
1026ab: 25 ff 00 00 00 and eax,0xff
1026b0: 8d 04 80 lea eax,[eax+eax*4]
1026b3: 8d 04 80 lea eax,[eax+eax*4]
1026b6: c1 e0 02 shl eax,0x2
1026b9: 01 c6 add esi,eax
1026bb: 89 33 mov DWORD PTR [ebx],esi
1026bd: 83 c4 20 add esp,0x20
1026c0: 5b pop ebx
1026c1: 5e pop esi
1026c2: 5f pop edi
1026c3: c3 ret
001026c4 <ConsoleScroll>:
1026c4: 55 push ebp
1026c5: 57 push edi
1026c6: 56 push esi
1026c7: 53 push ebx
1026c8: 83 ec 04 sub esp,0x4
1026cb: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
1026cf: 8b 0d 08 c0 10 00 mov ecx,DWORD PTR ds:0x10c008
1026d5: 89 04 24 mov DWORD PTR [esp],eax
1026d8: 39 c8 cmp eax,ecx
1026da: 76 03 jbe 1026df <ConsoleScroll+0x1b>
1026dc: 89 0c 24 mov DWORD PTR [esp],ecx
1026df: 2b 0c 24 sub ecx,DWORD PTR [esp]
1026e2: 74 56 je 10273a <ConsoleScroll+0x76>
1026e4: 8b 34 24 mov esi,DWORD PTR [esp]
1026e7: 01 f6 add esi,esi
1026e9: bd 00 00 00 00 mov ebp,0x0
1026ee: eb 34 jmp 102724 <ConsoleScroll+0x60>
1026f0: 89 f3 mov ebx,esi
1026f2: 0f af d8 imul ebx,eax
1026f5: 8b 0d 0c c0 10 00 mov ecx,DWORD PTR ds:0x10c00c
1026fb: 01 d1 add ecx,edx
1026fd: 8a 1c 19 mov bl,BYTE PTR [ecx+ebx*1]
102700: 0f af c7 imul eax,edi
102703: 88 1c 01 mov BYTE PTR [ecx+eax*1],bl
102706: 42 inc edx
102707: a1 04 c0 10 00 mov eax,ds:0x10c004
10270c: 8d 0c 00 lea ecx,[eax+eax*1]
10270f: 39 d1 cmp ecx,edx
102711: 77 dd ja 1026f0 <ConsoleScroll+0x2c>
102713: 45 inc ebp
102714: 8b 0d 08 c0 10 00 mov ecx,DWORD PTR ds:0x10c008
10271a: 2b 0c 24 sub ecx,DWORD PTR [esp]
10271d: 83 c6 02 add esi,0x2
102720: 39 e9 cmp ecx,ebp
102722: 76 16 jbe 10273a <ConsoleScroll+0x76>
102724: a1 04 c0 10 00 mov eax,ds:0x10c004
102729: 89 c2 mov edx,eax
10272b: 01 d2 add edx,edx
10272d: 74 e4 je 102713 <ConsoleScroll+0x4f>
10272f: 8d 7c 2d 00 lea edi,[ebp+ebp*1+0x0]
102733: ba 00 00 00 00 mov edx,0x0
102738: eb b6 jmp 1026f0 <ConsoleScroll+0x2c>
10273a: 39 0d 08 c0 10 00 cmp DWORD PTR ds:0x10c008,ecx
102740: 77 40 ja 102782 <ConsoleScroll+0xbe>
102742: eb 4f jmp 102793 <ConsoleScroll+0xcf>
102744: 0f af d1 imul edx,ecx
102747: 01 c2 add edx,eax
102749: 8b 1d 0c c0 10 00 mov ebx,DWORD PTR ds:0x10c00c
10274f: c6 04 53 00 mov BYTE PTR [ebx+edx*2],0x0
102753: 89 cb mov ebx,ecx
102755: 0f af 1d 04 c0 10 00 imul ebx,DWORD PTR ds:0x10c004
10275c: 01 c3 add ebx,eax
10275e: 8b 35 0c c0 10 00 mov esi,DWORD PTR ds:0x10c00c
102764: 8a 15 00 c0 10 00 mov dl,BYTE PTR ds:0x10c000
10276a: 88 54 5e 01 mov BYTE PTR [esi+ebx*2+0x1],dl
10276e: 40 inc eax
10276f: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
102775: 39 c2 cmp edx,eax
102777: 77 cb ja 102744 <ConsoleScroll+0x80>
102779: 41 inc ecx
10277a: 39 0d 08 c0 10 00 cmp DWORD PTR ds:0x10c008,ecx
102780: 76 11 jbe 102793 <ConsoleScroll+0xcf>
102782: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
102788: b8 00 00 00 00 mov eax,0x0
10278d: 85 d2 test edx,edx
10278f: 75 b3 jne 102744 <ConsoleScroll+0x80>
102791: eb e6 jmp 102779 <ConsoleScroll+0xb5>
102793: 8b 04 24 mov eax,DWORD PTR [esp]
102796: 29 05 3c da 10 00 sub DWORD PTR ds:0x10da3c,eax
10279c: 83 c4 04 add esp,0x4
10279f: 5b pop ebx
1027a0: 5e pop esi
1027a1: 5f pop edi
1027a2: 5d pop ebp
1027a3: c3 ret
001027a4 <ConsoleGetCursor>:
1027a4: 53 push ebx
1027a5: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
1027a9: 8b 0d 38 da 10 00 mov ecx,DWORD PTR ds:0x10da38
1027af: 8b 1d 3c da 10 00 mov ebx,DWORD PTR ds:0x10da3c
1027b5: 89 08 mov DWORD PTR [eax],ecx
1027b7: 89 58 04 mov DWORD PTR [eax+0x4],ebx
1027ba: 5b pop ebx
1027bb: c2 04 00 ret 0x4
001027be <ConsoleSetCursor>:
1027be: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
1027c2: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
1027c6: a3 38 da 10 00 mov ds:0x10da38,eax
1027cb: 89 15 3c da 10 00 mov DWORD PTR ds:0x10da3c,edx
1027d1: c3 ret
001027d2 <ConsoleCursorIncreasePos>:
1027d2: 57 push edi
1027d3: 56 push esi
1027d4: 53 push ebx
1027d5: 83 ec 04 sub esp,0x4
1027d8: 8b 44 24 14 mov eax,DWORD PTR [esp+0x14]
1027dc: 8b 0d 04 c0 10 00 mov ecx,DWORD PTR ds:0x10c004
1027e2: ba 00 00 00 00 mov edx,0x0
1027e7: f7 f1 div ecx
1027e9: 01 05 3c da 10 00 add DWORD PTR ds:0x10da3c,eax
1027ef: 03 15 38 da 10 00 add edx,DWORD PTR ds:0x10da38
1027f5: 89 15 38 da 10 00 mov DWORD PTR ds:0x10da38,edx
1027fb: 89 ce mov esi,ecx
1027fd: 39 ca cmp edx,ecx
1027ff: 7c 1f jl 102820 <ConsoleCursorIncreasePos+0x4e>
102801: a1 3c da 10 00 mov eax,ds:0x10da3c
102806: 29 ca sub edx,ecx
102808: eb 02 jmp 10280c <ConsoleCursorIncreasePos+0x3a>
10280a: 89 da mov edx,ebx
10280c: 40 inc eax
10280d: 89 d3 mov ebx,edx
10280f: 29 cb sub ebx,ecx
102811: 39 f2 cmp edx,esi
102813: 7d f5 jge 10280a <ConsoleCursorIncreasePos+0x38>
102815: a3 3c da 10 00 mov ds:0x10da3c,eax
10281a: 89 15 38 da 10 00 mov DWORD PTR ds:0x10da38,edx
102820: 8b 15 38 da 10 00 mov edx,DWORD PTR ds:0x10da38
102826: 85 d2 test edx,edx
102828: 79 1b jns 102845 <ConsoleCursorIncreasePos+0x73>
10282a: 8b 1d 3c da 10 00 mov ebx,DWORD PTR ds:0x10da3c
102830: 4b dec ebx
102831: 8d 04 0a lea eax,[edx+ecx*1]
102834: 89 c2 mov edx,eax
102836: 85 c0 test eax,eax
102838: 78 f6 js 102830 <ConsoleCursorIncreasePos+0x5e>
10283a: 89 1d 3c da 10 00 mov DWORD PTR ds:0x10da3c,ebx
102840: a3 38 da 10 00 mov ds:0x10da38,eax
102845: a1 08 c0 10 00 mov eax,ds:0x10c008
10284a: 39 05 3c da 10 00 cmp DWORD PTR ds:0x10da3c,eax
102850: 7c 0c jl 10285e <ConsoleCursorIncreasePos+0x8c>
102852: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
102859: e8 66 fe ff ff call 1026c4 <ConsoleScroll>
10285e: 83 c4 04 add esp,0x4
102861: 5b pop ebx
102862: 5e pop esi
102863: 5f pop edi
102864: c3 ret
00102865 <ConsoleCursorNewline>:
102865: 83 ec 04 sub esp,0x4
102868: c7 05 38 da 10 00 00 mov DWORD PTR ds:0x10da38,0x0
10286f: 00 00 00
102872: a1 3c da 10 00 mov eax,ds:0x10da3c
102877: 40 inc eax
102878: a3 3c da 10 00 mov ds:0x10da3c,eax
10287d: 3b 05 08 c0 10 00 cmp eax,DWORD PTR ds:0x10c008
102883: 7c 0c jl 102891 <ConsoleCursorNewline+0x2c>
102885: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
10288c: e8 33 fe ff ff call 1026c4 <ConsoleScroll>
102891: 83 c4 04 add esp,0x4
102894: c3 ret
00102895 <ConsoleCursorUpdateHardware>:
102895: 56 push esi
102896: 53 push ebx
102897: 8b 35 3c da 10 00 mov esi,DWORD PTR ds:0x10da3c
10289d: 0f af 35 04 c0 10 00 imul esi,DWORD PTR ds:0x10c004
1028a4: 03 35 38 da 10 00 add esi,DWORD PTR ds:0x10da38
1028aa: 66 8b 0d 63 04 00 00 mov cx,WORD PTR ds:0x463
1028b1: b0 0e mov al,0xe
1028b3: 89 ca mov edx,ecx
1028b5: ee out dx,al
1028b6: 8d 59 01 lea ebx,[ecx+0x1]
1028b9: 89 f0 mov eax,esi
1028bb: 66 c1 e8 08 shr ax,0x8
1028bf: 89 da mov edx,ebx
1028c1: ee out dx,al
1028c2: b0 0f mov al,0xf
1028c4: 89 ca mov edx,ecx
1028c6: ee out dx,al
1028c7: 89 da mov edx,ebx
1028c9: 89 f0 mov eax,esi
1028cb: ee out dx,al
1028cc: 5b pop ebx
1028cd: 5e pop esi
1028ce: c3 ret
001028cf <ConsoleClear>:
1028cf: 53 push ebx
1028d0: a1 08 c0 10 00 mov eax,ds:0x10c008
1028d5: 0f af 05 04 c0 10 00 imul eax,DWORD PTR ds:0x10c004
1028dc: 85 c0 test eax,eax
1028de: 74 38 je 102918 <ConsoleClear+0x49>
1028e0: ba 01 00 00 00 mov edx,0x1
1028e5: b8 00 00 00 00 mov eax,0x0
1028ea: 8b 0d 0c c0 10 00 mov ecx,DWORD PTR ds:0x10c00c
1028f0: c6 04 41 00 mov BYTE PTR [ecx+eax*2],0x0
1028f4: 8b 0d 0c c0 10 00 mov ecx,DWORD PTR ds:0x10c00c
1028fa: 8a 1d 00 c0 10 00 mov bl,BYTE PTR ds:0x10c000
102900: 88 1c 11 mov BYTE PTR [ecx+edx*1],bl
102903: 40 inc eax
102904: 83 c2 02 add edx,0x2
102907: 8b 0d 08 c0 10 00 mov ecx,DWORD PTR ds:0x10c008
10290d: 0f af 0d 04 c0 10 00 imul ecx,DWORD PTR ds:0x10c004
102914: 39 c1 cmp ecx,eax
102916: 77 d2 ja 1028ea <ConsoleClear+0x1b>
102918: c7 05 3c da 10 00 00 mov DWORD PTR ds:0x10da3c,0x0
10291f: 00 00 00
102922: c7 05 38 da 10 00 00 mov DWORD PTR ds:0x10da38,0x0
102929: 00 00 00
10292c: e8 64 ff ff ff call 102895 <ConsoleCursorUpdateHardware>
102931: 5b pop ebx
102932: c3 ret
00102933 <Color>:
102933: 31 c0 xor eax,eax
102935: 8a 44 24 04 mov al,BYTE PTR [esp+0x4]
102939: c1 e0 04 shl eax,0x4
10293c: 0b 44 24 08 or eax,DWORD PTR [esp+0x8]
102940: c3 ret
00102941 <ConsoleSetDefaultColor>:
102941: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
102945: a2 00 c0 10 00 mov ds:0x10c000,al
10294a: c3 ret
0010294b <ConsoleGetDefaultColor>:
10294b: a0 00 c0 10 00 mov al,ds:0x10c000
102950: c3 ret
00102951 <ConsoleGetSize>:
102951: 53 push ebx
102952: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
102956: 8b 0d 04 c0 10 00 mov ecx,DWORD PTR ds:0x10c004
10295c: 8b 1d 08 c0 10 00 mov ebx,DWORD PTR ds:0x10c008
102962: 89 08 mov DWORD PTR [eax],ecx
102964: 89 58 04 mov DWORD PTR [eax+0x4],ebx
102967: 5b pop ebx
102968: c2 04 00 ret 0x4
0010296b <ConsoleCursorGoto>:
10296b: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
10296f: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
102973: 85 d2 test edx,edx
102975: 78 0e js 102985 <ConsoleCursorGoto+0x1a>
102977: 39 15 04 c0 10 00 cmp DWORD PTR ds:0x10c004,edx
10297d: 7e 06 jle 102985 <ConsoleCursorGoto+0x1a>
10297f: 89 15 38 da 10 00 mov DWORD PTR ds:0x10da38,edx
102985: 85 c0 test eax,eax
102987: 78 0d js 102996 <ConsoleCursorGoto+0x2b>
102989: 39 05 08 c0 10 00 cmp DWORD PTR ds:0x10c008,eax
10298f: 7e 05 jle 102996 <ConsoleCursorGoto+0x2b>
102991: a3 3c da 10 00 mov ds:0x10da3c,eax
102996: c3 ret
...
00102998 <_next_word_index>:
102998: 53 push ebx
102999: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
10299d: 8b 44 24 10 mov eax,DWORD PTR [esp+0x10]
1029a1: 8b 4c 24 14 mov ecx,DWORD PTR [esp+0x14]
1029a5: 83 7c 24 0c 00 cmp DWORD PTR [esp+0xc],0x0
1029aa: 79 73 jns 102a1f <_next_word_index+0x87>
1029ac: 48 dec eax
1029ad: 31 c9 xor ecx,ecx
1029af: 8a 0c 02 mov cl,BYTE PTR [edx+eax*1]
1029b2: 8a 89 e1 c0 10 00 mov cl,BYTE PTR [ecx+0x10c0e1]
1029b8: 81 e1 ff 00 00 00 and ecx,0xff
1029be: f6 c1 0a test cl,0xa
1029c1: 74 1f je 1029e2 <_next_word_index+0x4a>
1029c3: 85 c0 test eax,eax
1029c5: 7e 1b jle 1029e2 <_next_word_index+0x4a>
1029c7: 48 dec eax
1029c8: 31 c9 xor ecx,ecx
1029ca: 8a 0c 02 mov cl,BYTE PTR [edx+eax*1]
1029cd: 8a 89 e1 c0 10 00 mov cl,BYTE PTR [ecx+0x10c0e1]
1029d3: 81 e1 ff 00 00 00 and ecx,0xff
1029d9: f6 c1 0a test cl,0xa
1029dc: 74 04 je 1029e2 <_next_word_index+0x4a>
1029de: 85 c0 test eax,eax
1029e0: 7f e5 jg 1029c7 <_next_word_index+0x2f>
1029e2: 31 c9 xor ecx,ecx
1029e4: 8a 0c 02 mov cl,BYTE PTR [edx+eax*1]
1029e7: 8a 89 e1 c0 10 00 mov cl,BYTE PTR [ecx+0x10c0e1]
1029ed: 81 e1 ff 00 00 00 and ecx,0xff
1029f3: f6 c1 d0 test cl,0xd0
1029f6: 74 1f je 102a17 <_next_word_index+0x7f>
1029f8: 85 c0 test eax,eax
1029fa: 7e 1b jle 102a17 <_next_word_index+0x7f>
1029fc: 48 dec eax
1029fd: 31 c9 xor ecx,ecx
1029ff: 8a 0c 02 mov cl,BYTE PTR [edx+eax*1]
102a02: 8a 89 e1 c0 10 00 mov cl,BYTE PTR [ecx+0x10c0e1]
102a08: 81 e1 ff 00 00 00 and ecx,0xff
102a0e: f6 c1 d0 test cl,0xd0
102a11: 74 04 je 102a17 <_next_word_index+0x7f>
102a13: 85 c0 test eax,eax
102a15: 7f e5 jg 1029fc <_next_word_index+0x64>
102a17: 83 f8 01 cmp eax,0x1
102a1a: 83 d8 ff sbb eax,0xffffffff
102a1d: eb 6b jmp 102a8a <_next_word_index+0xf2>
102a1f: 40 inc eax
102a20: 31 db xor ebx,ebx
102a22: 8a 1c 02 mov bl,BYTE PTR [edx+eax*1]
102a25: 8a 9b e1 c0 10 00 mov bl,BYTE PTR [ebx+0x10c0e1]
102a2b: 81 e3 ff 00 00 00 and ebx,0xff
102a31: f6 c3 d0 test bl,0xd0
102a34: 74 1f je 102a55 <_next_word_index+0xbd>
102a36: 39 c8 cmp eax,ecx
102a38: 7d 1b jge 102a55 <_next_word_index+0xbd>
102a3a: 40 inc eax
102a3b: 31 db xor ebx,ebx
102a3d: 8a 1c 02 mov bl,BYTE PTR [edx+eax*1]
102a40: 8a 9b e1 c0 10 00 mov bl,BYTE PTR [ebx+0x10c0e1]
102a46: 81 e3 ff 00 00 00 and ebx,0xff
102a4c: f6 c3 d0 test bl,0xd0
102a4f: 74 04 je 102a55 <_next_word_index+0xbd>
102a51: 39 c1 cmp ecx,eax
102a53: 7f e5 jg 102a3a <_next_word_index+0xa2>
102a55: 31 db xor ebx,ebx
102a57: 8a 1c 02 mov bl,BYTE PTR [edx+eax*1]
102a5a: 8a 9b e1 c0 10 00 mov bl,BYTE PTR [ebx+0x10c0e1]
102a60: 81 e3 ff 00 00 00 and ebx,0xff
102a66: f6 c3 0a test bl,0xa
102a69: 74 1f je 102a8a <_next_word_index+0xf2>
102a6b: 39 c1 cmp ecx,eax
102a6d: 7e 1b jle 102a8a <_next_word_index+0xf2>
102a6f: 40 inc eax
102a70: 31 db xor ebx,ebx
102a72: 8a 1c 02 mov bl,BYTE PTR [edx+eax*1]
102a75: 8a 9b e1 c0 10 00 mov bl,BYTE PTR [ebx+0x10c0e1]
102a7b: 81 e3 ff 00 00 00 and ebx,0xff
102a81: f6 c3 0a test bl,0xa
102a84: 74 04 je 102a8a <_next_word_index+0xf2>
102a86: 39 c1 cmp ecx,eax
102a88: 7f e5 jg 102a6f <_next_word_index+0xd7>
102a8a: 5b pop ebx
102a8b: c3 ret
00102a8c <_string_crop>:
102a8c: 55 push ebp
102a8d: 57 push edi
102a8e: 56 push esi
102a8f: 53 push ebx
102a90: 8b 5c 24 14 mov ebx,DWORD PTR [esp+0x14]
102a94: 8b 6c 24 18 mov ebp,DWORD PTR [esp+0x18]
102a98: 8b 7c 24 1c mov edi,DWORD PTR [esp+0x1c]
102a9c: 8b 4c 24 20 mov ecx,DWORD PTR [esp+0x20]
102aa0: 8b 11 mov edx,DWORD PTR [ecx]
102aa2: 39 d7 cmp edi,edx
102aa4: 7d 15 jge 102abb <_string_crop+0x2f>
102aa6: 89 f8 mov eax,edi
102aa8: 89 ee mov esi,ebp
102aaa: 29 fe sub esi,edi
102aac: 01 de add esi,ebx
102aae: 8a 14 03 mov dl,BYTE PTR [ebx+eax*1]
102ab1: 88 14 06 mov BYTE PTR [esi+eax*1],dl
102ab4: 40 inc eax
102ab5: 8b 11 mov edx,DWORD PTR [ecx]
102ab7: 39 c2 cmp edx,eax
102ab9: 7f f3 jg 102aae <_string_crop+0x22>
102abb: 29 fd sub ebp,edi
102abd: 01 ea add edx,ebp
102abf: 89 11 mov DWORD PTR [ecx],edx
102ac1: c6 04 13 00 mov BYTE PTR [ebx+edx*1],0x0
102ac5: 5b pop ebx
102ac6: 5e pop esi
102ac7: 5f pop edi
102ac8: 5d pop ebp
102ac9: c3 ret
00102aca <_string_insert>:
102aca: 56 push esi
102acb: 53 push ebx
102acc: 83 ec 04 sub esp,0x4
102acf: 8b 54 24 10 mov edx,DWORD PTR [esp+0x10]
102ad3: 8b 4c 24 18 mov ecx,DWORD PTR [esp+0x18]
102ad7: 8b 74 24 1c mov esi,DWORD PTR [esp+0x1c]
102adb: 8a 44 24 14 mov al,BYTE PTR [esp+0x14]
102adf: 88 44 24 03 mov BYTE PTR [esp+0x3],al
102ae3: 8b 06 mov eax,DWORD PTR [esi]
102ae5: 39 c8 cmp eax,ecx
102ae7: 7e 0c jle 102af5 <_string_insert+0x2b>
102ae9: 8a 5c 02 ff mov bl,BYTE PTR [edx+eax*1-0x1]
102aed: 88 1c 02 mov BYTE PTR [edx+eax*1],bl
102af0: 48 dec eax
102af1: 39 c1 cmp ecx,eax
102af3: 7c f4 jl 102ae9 <_string_insert+0x1f>
102af5: 8a 44 24 03 mov al,BYTE PTR [esp+0x3]
102af9: 88 04 0a mov BYTE PTR [edx+ecx*1],al
102afc: 8b 06 mov eax,DWORD PTR [esi]
102afe: 40 inc eax
102aff: 89 06 mov DWORD PTR [esi],eax
102b01: c6 04 02 00 mov BYTE PTR [edx+eax*1],0x0
102b05: 83 c4 04 add esp,0x4
102b08: 5b pop ebx
102b09: 5e pop esi
102b0a: c3 ret
00102b0b <ConsoleReadString>:
102b0b: 55 push ebp
102b0c: 57 push edi
102b0d: 56 push esi
102b0e: 53 push ebx
102b0f: 83 ec 3c sub esp,0x3c
102b12: 8a 44 24 58 mov al,BYTE PTR [esp+0x58]
102b16: 88 44 24 1d mov BYTE PTR [esp+0x1d],al
102b1a: c7 44 24 2c 00 00 00 mov DWORD PTR [esp+0x2c],0x0
102b21: 00
102b22: 8b 3d 38 da 10 00 mov edi,DWORD PTR ds:0x10da38
102b28: 8b 2d 3c da 10 00 mov ebp,DWORD PTR ds:0x10da3c
102b2e: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102b32: c6 02 00 mov BYTE PTR [edx],0x0
102b35: be 00 00 00 00 mov esi,0x0
102b3a: c7 44 24 18 00 00 00 mov DWORD PTR [esp+0x18],0x0
102b41: 00
102b42: 8d 44 24 1e lea eax,[esp+0x1e]
102b46: 89 04 24 mov DWORD PTR [esp],eax
102b49: e8 30 60 00 00 call 108b7e <ReadKey>
102b4e: 83 ec 04 sub esp,0x4
102b51: 66 8b 44 24 1e mov ax,WORD PTR [esp+0x1e]
102b56: 88 44 24 1c mov BYTE PTR [esp+0x1c],al
102b5a: 0f b6 c4 movzx eax,ah
102b5d: 83 e8 5f sub eax,0x5f
102b60: 3c 08 cmp al,0x8
102b62: 0f 87 d5 01 00 00 ja 102d3d <ConsoleReadString+0x232>
102b68: 25 ff 00 00 00 and eax,0xff
102b6d: ff 24 85 10 9c 10 00 jmp DWORD PTR [eax*4+0x109c10]
102b74: 83 7c 24 18 00 cmp DWORD PTR [esp+0x18],0x0
102b79: 0f 8e 01 02 00 00 jle 102d80 <ConsoleReadString+0x275>
102b7f: c7 04 24 5c 00 00 00 mov DWORD PTR [esp],0x5c
102b86: e8 52 42 00 00 call 106ddd <KeyboardGetKeyStatus>
102b8b: 84 c0 test al,al
102b8d: 75 10 jne 102b9f <ConsoleReadString+0x94>
102b8f: c7 04 24 14 00 00 00 mov DWORD PTR [esp],0x14
102b96: e8 42 42 00 00 call 106ddd <KeyboardGetKeyStatus>
102b9b: 84 c0 test al,al
102b9d: 74 2d je 102bcc <ConsoleReadString+0xc1>
102b9f: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
102ba3: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
102ba7: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102bab: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
102baf: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
102bb6: ff
102bb7: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102bbb: 89 14 24 mov DWORD PTR [esp],edx
102bbe: e8 d5 fd ff ff call 102998 <_next_word_index>
102bc3: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
102bc7: e9 b4 01 00 00 jmp 102d80 <ConsoleReadString+0x275>
102bcc: ff 4c 24 18 dec DWORD PTR [esp+0x18]
102bd0: e9 ab 01 00 00 jmp 102d80 <ConsoleReadString+0x275>
102bd5: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102bd9: 3b 44 24 2c cmp eax,DWORD PTR [esp+0x2c]
102bdd: 0f 8d 9d 01 00 00 jge 102d80 <ConsoleReadString+0x275>
102be3: c7 04 24 5c 00 00 00 mov DWORD PTR [esp],0x5c
102bea: e8 ee 41 00 00 call 106ddd <KeyboardGetKeyStatus>
102bef: 84 c0 test al,al
102bf1: 75 10 jne 102c03 <ConsoleReadString+0xf8>
102bf3: c7 04 24 14 00 00 00 mov DWORD PTR [esp],0x14
102bfa: e8 de 41 00 00 call 106ddd <KeyboardGetKeyStatus>
102bff: 84 c0 test al,al
102c01: 74 2d je 102c30 <ConsoleReadString+0x125>
102c03: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
102c07: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
102c0b: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102c0f: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
102c13: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
102c1a: 00
102c1b: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102c1f: 89 14 24 mov DWORD PTR [esp],edx
102c22: e8 71 fd ff ff call 102998 <_next_word_index>
102c27: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
102c2b: e9 50 01 00 00 jmp 102d80 <ConsoleReadString+0x275>
102c30: ff 44 24 18 inc DWORD PTR [esp+0x18]
102c34: e9 47 01 00 00 jmp 102d80 <ConsoleReadString+0x275>
102c39: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102c3d: 3b 44 24 2c cmp eax,DWORD PTR [esp+0x2c]
102c41: 0f 84 39 01 00 00 je 102d80 <ConsoleReadString+0x275>
102c47: c7 04 24 5c 00 00 00 mov DWORD PTR [esp],0x5c
102c4e: e8 8a 41 00 00 call 106ddd <KeyboardGetKeyStatus>
102c53: 84 c0 test al,al
102c55: 75 17 jne 102c6e <ConsoleReadString+0x163>
102c57: c7 04 24 14 00 00 00 mov DWORD PTR [esp],0x14
102c5e: e8 7a 41 00 00 call 106ddd <KeyboardGetKeyStatus>
102c63: 88 c2 mov dl,al
102c65: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102c69: 40 inc eax
102c6a: 84 d2 test dl,dl
102c6c: 74 24 je 102c92 <ConsoleReadString+0x187>
102c6e: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
102c72: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
102c76: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102c7a: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
102c7e: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
102c85: 00
102c86: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102c8a: 89 14 24 mov DWORD PTR [esp],edx
102c8d: e8 06 fd ff ff call 102998 <_next_word_index>
102c92: 8d 54 24 2c lea edx,[esp+0x2c]
102c96: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
102c9a: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
102c9e: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102ca2: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
102ca6: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102caa: 89 14 24 mov DWORD PTR [esp],edx
102cad: e8 da fd ff ff call 102a8c <_string_crop>
102cb2: e9 c9 00 00 00 jmp 102d80 <ConsoleReadString+0x275>
102cb7: 83 7c 24 18 00 cmp DWORD PTR [esp+0x18],0x0
102cbc: 0f 84 be 00 00 00 je 102d80 <ConsoleReadString+0x275>
102cc2: c7 04 24 5c 00 00 00 mov DWORD PTR [esp],0x5c
102cc9: e8 0f 41 00 00 call 106ddd <KeyboardGetKeyStatus>
102cce: 84 c0 test al,al
102cd0: 75 15 jne 102ce7 <ConsoleReadString+0x1dc>
102cd2: c7 04 24 14 00 00 00 mov DWORD PTR [esp],0x14
102cd9: e8 ff 40 00 00 call 106ddd <KeyboardGetKeyStatus>
102cde: 8b 5c 24 18 mov ebx,DWORD PTR [esp+0x18]
102ce2: 4b dec ebx
102ce3: 84 c0 test al,al
102ce5: 74 26 je 102d0d <ConsoleReadString+0x202>
102ce7: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
102ceb: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
102cef: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102cf3: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
102cf7: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
102cfe: ff
102cff: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102d03: 89 14 24 mov DWORD PTR [esp],edx
102d06: e8 8d fc ff ff call 102998 <_next_word_index>
102d0b: 89 c3 mov ebx,eax
102d0d: 8d 44 24 2c lea eax,[esp+0x2c]
102d11: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
102d15: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102d19: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
102d1d: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
102d21: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102d25: 89 14 24 mov DWORD PTR [esp],edx
102d28: e8 5f fd ff ff call 102a8c <_string_crop>
102d2d: 89 5c 24 18 mov DWORD PTR [esp+0x18],ebx
102d31: eb 4d jmp 102d80 <ConsoleReadString+0x275>
102d33: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
102d37: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
102d3b: eb 43 jmp 102d80 <ConsoleReadString+0x275>
102d3d: 80 7c 24 1c 00 cmp BYTE PTR [esp+0x1c],0x0
102d42: 74 3c je 102d80 <ConsoleReadString+0x275>
102d44: 0f be 44 24 1c movsx eax,BYTE PTR [esp+0x1c]
102d49: f6 80 e1 c0 10 00 01 test BYTE PTR [eax+0x10c0e1],0x1
102d50: 75 2e jne 102d80 <ConsoleReadString+0x275>
102d52: 8d 54 24 2c lea edx,[esp+0x2c]
102d56: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
102d5a: 8b 54 24 18 mov edx,DWORD PTR [esp+0x18]
102d5e: 89 54 24 08 mov DWORD PTR [esp+0x8],edx
102d62: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
102d66: 8b 44 24 50 mov eax,DWORD PTR [esp+0x50]
102d6a: 89 04 24 mov DWORD PTR [esp],eax
102d6d: e8 58 fd ff ff call 102aca <_string_insert>
102d72: ff 44 24 18 inc DWORD PTR [esp+0x18]
102d76: eb 08 jmp 102d80 <ConsoleReadString+0x275>
102d78: c7 44 24 18 00 00 00 mov DWORD PTR [esp+0x18],0x0
102d7f: 00
102d80: 89 3d 38 da 10 00 mov DWORD PTR ds:0x10da38,edi
102d86: 89 2d 3c da 10 00 mov DWORD PTR ds:0x10da3c,ebp
102d8c: 3b 74 24 2c cmp esi,DWORD PTR [esp+0x2c]
102d90: 7e 1a jle 102dac <ConsoleReadString+0x2a1>
102d92: 85 f6 test esi,esi
102d94: 7e 16 jle 102dac <ConsoleReadString+0x2a1>
102d96: bb 00 00 00 00 mov ebx,0x0
102d9b: c7 04 24 20 00 00 00 mov DWORD PTR [esp],0x20
102da2: e8 6d 00 00 00 call 102e14 <_write_char>
102da7: 43 inc ebx
102da8: 39 f3 cmp ebx,esi
102daa: 75 ef jne 102d9b <ConsoleReadString+0x290>
102dac: 8b 74 24 2c mov esi,DWORD PTR [esp+0x2c]
102db0: 89 3d 38 da 10 00 mov DWORD PTR ds:0x10da38,edi
102db6: 89 2d 3c da 10 00 mov DWORD PTR ds:0x10da3c,ebp
102dbc: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
102dc0: 89 14 24 mov DWORD PTR [esp],edx
102dc3: e8 22 01 00 00 call 102eea <_write_string>
102dc8: 89 3d 38 da 10 00 mov DWORD PTR ds:0x10da38,edi
102dce: 89 2d 3c da 10 00 mov DWORD PTR ds:0x10da3c,ebp
102dd4: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
102dd8: 89 04 24 mov DWORD PTR [esp],eax
102ddb: e8 f2 f9 ff ff call 1027d2 <ConsoleCursorIncreasePos>
102de0: e8 b0 fa ff ff call 102895 <ConsoleCursorUpdateHardware>
102de5: 8a 54 24 1c mov dl,BYTE PTR [esp+0x1c]
102de9: 38 54 24 1d cmp BYTE PTR [esp+0x1d],dl
102ded: 74 0e je 102dfd <ConsoleReadString+0x2f2>
102def: 8b 44 24 54 mov eax,DWORD PTR [esp+0x54]
102df3: 39 44 24 2c cmp DWORD PTR [esp+0x2c],eax
102df7: 0f 8c 45 fd ff ff jl 102b42 <ConsoleReadString+0x37>
102dfd: c7 04 24 0a 00 00 00 mov DWORD PTR [esp],0xa
102e04: e8 16 01 00 00 call 102f1f <ConsoleWriteChar>
102e09: 83 c4 3c add esp,0x3c
102e0c: 5b pop ebx
102e0d: 5e pop esi
102e0e: 5f pop edi
102e0f: 5d pop ebp
102e10: c3 ret
102e11: 00 00 add BYTE PTR [eax],al
...
00102e14 <_write_char>:
102e14: 83 ec 1c sub esp,0x1c
102e17: 8a 44 24 20 mov al,BYTE PTR [esp+0x20]
102e1b: 3c 09 cmp al,0x9
102e1d: 74 2d je 102e4c <_write_char+0x38>
102e1f: 3c 09 cmp al,0x9
102e21: 7f 06 jg 102e29 <_write_char+0x15>
102e23: 3c 08 cmp al,0x8
102e25: 75 75 jne 102e9c <_write_char+0x88>
102e27: eb 49 jmp 102e72 <_write_char+0x5e>
102e29: 3c 0a cmp al,0xa
102e2b: 74 06 je 102e33 <_write_char+0x1f>
102e2d: 3c 0d cmp al,0xd
102e2f: 75 6b jne 102e9c <_write_char+0x88>
102e31: eb 0a jmp 102e3d <_write_char+0x29>
102e33: e8 2d fa ff ff call 102865 <ConsoleCursorNewline>
102e38: e9 a9 00 00 00 jmp 102ee6 <_write_char+0xd2>
102e3d: c7 05 38 da 10 00 00 mov DWORD PTR ds:0x10da38,0x0
102e44: 00 00 00
102e47: e9 9a 00 00 00 jmp 102ee6 <_write_char+0xd2>
102e4c: 8b 0d 38 da 10 00 mov ecx,DWORD PTR ds:0x10da38
102e52: b8 ab aa aa aa mov eax,0xaaaaaaab
102e57: f7 e1 mul ecx
102e59: 89 d0 mov eax,edx
102e5b: c1 e8 02 shr eax,0x2
102e5e: 8d 04 40 lea eax,[eax+eax*2]
102e61: 01 c0 add eax,eax
102e63: 29 c8 sub eax,ecx
102e65: 8d 40 06 lea eax,[eax+0x6]
102e68: 89 04 24 mov DWORD PTR [esp],eax
102e6b: e8 62 f9 ff ff call 1027d2 <ConsoleCursorIncreasePos>
102e70: eb 74 jmp 102ee6 <_write_char+0xd2>
102e72: c7 04 24 ff ff ff ff mov DWORD PTR [esp],0xffffffff
102e79: e8 54 f9 ff ff call 1027d2 <ConsoleCursorIncreasePos>
102e7e: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
102e84: 0f af 15 3c da 10 00 imul edx,DWORD PTR ds:0x10da3c
102e8b: 03 15 38 da 10 00 add edx,DWORD PTR ds:0x10da38
102e91: a1 0c c0 10 00 mov eax,ds:0x10c00c
102e96: c6 04 50 00 mov BYTE PTR [eax+edx*2],0x0
102e9a: eb 4a jmp 102ee6 <_write_char+0xd2>
102e9c: 8b 0d 04 c0 10 00 mov ecx,DWORD PTR ds:0x10c004
102ea2: 0f af 0d 3c da 10 00 imul ecx,DWORD PTR ds:0x10da3c
102ea9: 03 0d 38 da 10 00 add ecx,DWORD PTR ds:0x10da38
102eaf: 8b 15 0c c0 10 00 mov edx,DWORD PTR ds:0x10c00c
102eb5: 88 04 4a mov BYTE PTR [edx+ecx*2],al
102eb8: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
102ebe: 0f af 15 3c da 10 00 imul edx,DWORD PTR ds:0x10da3c
102ec5: 03 15 38 da 10 00 add edx,DWORD PTR ds:0x10da38
102ecb: a1 0c c0 10 00 mov eax,ds:0x10c00c
102ed0: 8a 0d 00 c0 10 00 mov cl,BYTE PTR ds:0x10c000
102ed6: 88 4c 50 01 mov BYTE PTR [eax+edx*2+0x1],cl
102eda: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
102ee1: e8 ec f8 ff ff call 1027d2 <ConsoleCursorIncreasePos>
102ee6: 83 c4 1c add esp,0x1c
102ee9: c3 ret
00102eea <_write_string>:
102eea: 57 push edi
102eeb: 56 push esi
102eec: 53 push ebx
102eed: 83 ec 10 sub esp,0x10
102ef0: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
102ef4: 89 34 24 mov DWORD PTR [esp],esi
102ef7: e8 b4 5d 00 00 call 108cb0 <strlen>
102efc: 89 c7 mov edi,eax
102efe: 85 c0 test eax,eax
102f00: 7e 16 jle 102f18 <_write_string+0x2e>
102f02: bb 00 00 00 00 mov ebx,0x0
102f07: 0f be 04 1e movsx eax,BYTE PTR [esi+ebx*1]
102f0b: 89 04 24 mov DWORD PTR [esp],eax
102f0e: e8 01 ff ff ff call 102e14 <_write_char>
102f13: 43 inc ebx
102f14: 39 df cmp edi,ebx
102f16: 75 ef jne 102f07 <_write_string+0x1d>
102f18: 83 c4 10 add esp,0x10
102f1b: 5b pop ebx
102f1c: 5e pop esi
102f1d: 5f pop edi
102f1e: c3 ret
00102f1f <ConsoleWriteChar>:
102f1f: 83 ec 1c sub esp,0x1c
102f22: 0f be 44 24 20 movsx eax,BYTE PTR [esp+0x20]
102f27: 89 04 24 mov DWORD PTR [esp],eax
102f2a: e8 e5 fe ff ff call 102e14 <_write_char>
102f2f: e8 61 f9 ff ff call 102895 <ConsoleCursorUpdateHardware>
102f34: 83 c4 1c add esp,0x1c
102f37: c3 ret
00102f38 <ConsoleWriteString>:
102f38: 83 ec 1c sub esp,0x1c
102f3b: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
102f3f: 89 04 24 mov DWORD PTR [esp],eax
102f42: e8 a3 ff ff ff call 102eea <_write_string>
102f47: e8 49 f9 ff ff call 102895 <ConsoleCursorUpdateHardware>
102f4c: 83 c4 1c add esp,0x1c
102f4f: c3 ret
00102f50 <ConsoleWrite>:
102f50: 55 push ebp
102f51: 57 push edi
102f52: 56 push esi
102f53: 53 push ebx
102f54: 83 ec 4c sub esp,0x4c
102f57: 8b 54 24 60 mov edx,DWORD PTR [esp+0x60]
102f5b: b8 00 00 00 00 mov eax,0x0
102f60: 85 d2 test edx,edx
102f62: 0f 84 7c 01 00 00 je 1030e4 <ConsoleWrite+0x194>
102f68: 80 3a 00 cmp BYTE PTR [edx],0x0
102f6b: 0f 84 73 01 00 00 je 1030e4 <ConsoleWrite+0x194>
102f71: 89 14 24 mov DWORD PTR [esp],edx
102f74: e8 37 5d 00 00 call 108cb0 <strlen>
102f79: 89 c7 mov edi,eax
102f7b: a0 00 c0 10 00 mov al,ds:0x10c000
102f80: 88 44 24 1f mov BYTE PTR [esp+0x1f],al
102f84: 85 ff test edi,edi
102f86: 0f 84 3c 01 00 00 je 1030c8 <ConsoleWrite+0x178>
102f8c: bb 00 00 00 00 mov ebx,0x0
102f91: 8d 74 24 64 lea esi,[esp+0x64]
102f95: 8d 6c 24 20 lea ebp,[esp+0x20]
102f99: 8b 54 24 60 mov edx,DWORD PTR [esp+0x60]
102f9d: 8a 04 1a mov al,BYTE PTR [edx+ebx*1]
102fa0: 3c 25 cmp al,0x25
102fa2: 74 10 je 102fb4 <ConsoleWrite+0x64>
102fa4: 0f be c0 movsx eax,al
102fa7: 89 04 24 mov DWORD PTR [esp],eax
102faa: e8 65 fe ff ff call 102e14 <_write_char>
102faf: e9 09 01 00 00 jmp 1030bd <ConsoleWrite+0x16d>
102fb4: 43 inc ebx
102fb5: 8a 04 1a mov al,BYTE PTR [edx+ebx*1]
102fb8: 3c 69 cmp al,0x69
102fba: 74 76 je 103032 <ConsoleWrite+0xe2>
102fbc: 3c 69 cmp al,0x69
102fbe: 7f 27 jg 102fe7 <ConsoleWrite+0x97>
102fc0: 3c 63 cmp al,0x63
102fc2: 74 39 je 102ffd <ConsoleWrite+0xad>
102fc4: 3c 63 cmp al,0x63
102fc6: 7f 15 jg 102fdd <ConsoleWrite+0x8d>
102fc8: 3c 23 cmp al,0x23
102fca: 0f 84 e3 00 00 00 je 1030b3 <ConsoleWrite+0x163>
102fd0: 3c 58 cmp al,0x58
102fd2: 0f 85 07 01 00 00 jne 1030df <ConsoleWrite+0x18f>
102fd8: e9 80 00 00 00 jmp 10305d <ConsoleWrite+0x10d>
102fdd: 3c 64 cmp al,0x64
102fdf: 0f 85 fa 00 00 00 jne 1030df <ConsoleWrite+0x18f>
102fe5: eb 4b jmp 103032 <ConsoleWrite+0xe2>
102fe7: 3c 75 cmp al,0x75
102fe9: 0f 84 99 00 00 00 je 103088 <ConsoleWrite+0x138>
102fef: 3c 78 cmp al,0x78
102ff1: 74 6a je 10305d <ConsoleWrite+0x10d>
102ff3: 3c 73 cmp al,0x73
102ff5: 0f 85 e4 00 00 00 jne 1030df <ConsoleWrite+0x18f>
102ffb: eb 1b jmp 103018 <ConsoleWrite+0xc8>
102ffd: 8d 46 04 lea eax,[esi+0x4]
103000: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
103004: 0f be 06 movsx eax,BYTE PTR [esi]
103007: 89 04 24 mov DWORD PTR [esp],eax
10300a: e8 05 fe ff ff call 102e14 <_write_char>
10300f: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
103013: e9 a5 00 00 00 jmp 1030bd <ConsoleWrite+0x16d>
103018: 8d 46 04 lea eax,[esi+0x4]
10301b: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
10301f: 8b 06 mov eax,DWORD PTR [esi]
103021: 89 04 24 mov DWORD PTR [esp],eax
103024: e8 c1 fe ff ff call 102eea <_write_string>
103029: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
10302d: e9 8b 00 00 00 jmp 1030bd <ConsoleWrite+0x16d>
103032: 8d 46 04 lea eax,[esi+0x4]
103035: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
103039: c7 44 24 08 0a 00 00 mov DWORD PTR [esp+0x8],0xa
103040: 00
103041: 8b 06 mov eax,DWORD PTR [esi]
103043: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103047: 89 2c 24 mov DWORD PTR [esp],ebp
10304a: e8 e9 12 00 00 call 104338 <ConvertIntToString>
10304f: 89 2c 24 mov DWORD PTR [esp],ebp
103052: e8 93 fe ff ff call 102eea <_write_string>
103057: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
10305b: eb 60 jmp 1030bd <ConsoleWrite+0x16d>
10305d: 8d 46 04 lea eax,[esi+0x4]
103060: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
103064: c7 44 24 08 10 00 00 mov DWORD PTR [esp+0x8],0x10
10306b: 00
10306c: 8b 06 mov eax,DWORD PTR [esi]
10306e: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103072: 89 2c 24 mov DWORD PTR [esp],ebp
103075: e8 3e 13 00 00 call 1043b8 <ConvertUIntToString>
10307a: 89 2c 24 mov DWORD PTR [esp],ebp
10307d: e8 68 fe ff ff call 102eea <_write_string>
103082: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
103086: eb 35 jmp 1030bd <ConsoleWrite+0x16d>
103088: 8d 46 04 lea eax,[esi+0x4]
10308b: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
10308f: c7 44 24 08 0a 00 00 mov DWORD PTR [esp+0x8],0xa
103096: 00
103097: 8b 06 mov eax,DWORD PTR [esi]
103099: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10309d: 89 2c 24 mov DWORD PTR [esp],ebp
1030a0: e8 13 13 00 00 call 1043b8 <ConvertUIntToString>
1030a5: 89 2c 24 mov DWORD PTR [esp],ebp
1030a8: e8 3d fe ff ff call 102eea <_write_string>
1030ad: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
1030b1: eb 0a jmp 1030bd <ConsoleWrite+0x16d>
1030b3: 8a 06 mov al,BYTE PTR [esi]
1030b5: a2 00 c0 10 00 mov ds:0x10c000,al
1030ba: 8d 76 04 lea esi,[esi+0x4]
1030bd: 43 inc ebx
1030be: 39 df cmp edi,ebx
1030c0: 0f 87 d3 fe ff ff ja 102f99 <ConsoleWrite+0x49>
1030c6: eb 05 jmp 1030cd <ConsoleWrite+0x17d>
1030c8: bb 00 00 00 00 mov ebx,0x0
1030cd: 8a 44 24 1f mov al,BYTE PTR [esp+0x1f]
1030d1: a2 00 c0 10 00 mov ds:0x10c000,al
1030d6: e8 ba f7 ff ff call 102895 <ConsoleCursorUpdateHardware>
1030db: 89 d8 mov eax,ebx
1030dd: eb 05 jmp 1030e4 <ConsoleWrite+0x194>
1030df: b8 01 00 00 00 mov eax,0x1
1030e4: 83 c4 4c add esp,0x4c
1030e7: 5b pop ebx
1030e8: 5e pop esi
1030e9: 5f pop edi
1030ea: 5d pop ebp
1030eb: c3 ret
001030ec <ConsoleSetChar>:
1030ec: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
1030f2: 0f af 54 24 08 imul edx,DWORD PTR [esp+0x8]
1030f7: 03 54 24 04 add edx,DWORD PTR [esp+0x4]
1030fb: a1 0c c0 10 00 mov eax,ds:0x10c00c
103100: 8b 4c 24 0c mov ecx,DWORD PTR [esp+0xc]
103104: 88 0c 50 mov BYTE PTR [eax+edx*2],cl
103107: c3 ret
00103108 <ConsoleSetColor>:
103108: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
10310e: 0f af 54 24 08 imul edx,DWORD PTR [esp+0x8]
103113: 03 54 24 04 add edx,DWORD PTR [esp+0x4]
103117: a1 0c c0 10 00 mov eax,ds:0x10c00c
10311c: 8b 4c 24 0c mov ecx,DWORD PTR [esp+0xc]
103120: 88 4c 50 01 mov BYTE PTR [eax+edx*2+0x1],cl
103124: c3 ret
00103125 <ConsoleGetChar>:
103125: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
10312b: 0f af 54 24 08 imul edx,DWORD PTR [esp+0x8]
103130: 03 54 24 04 add edx,DWORD PTR [esp+0x4]
103134: a1 0c c0 10 00 mov eax,ds:0x10c00c
103139: 8a 04 50 mov al,BYTE PTR [eax+edx*2]
10313c: c3 ret
0010313d <ConsoleGetColor>:
10313d: 8b 15 04 c0 10 00 mov edx,DWORD PTR ds:0x10c004
103143: 0f af 54 24 08 imul edx,DWORD PTR [esp+0x8]
103148: 03 54 24 04 add edx,DWORD PTR [esp+0x4]
10314c: a1 0c c0 10 00 mov eax,ds:0x10c00c
103151: 8a 44 50 01 mov al,BYTE PTR [eax+edx*2+0x1]
103155: c3 ret
...
00103158 <task>:
103158: 55 push ebp
103159: 57 push edi
10315a: 56 push esi
10315b: 53 push ebx
10315c: 83 ec 1c sub esp,0x1c
10315f: bf 05 00 00 00 mov edi,0x5
103164: bd 01 00 00 00 mov ebp,0x1
103169: bb 00 00 00 00 mov ebx,0x0
10316e: 89 3c 24 mov DWORD PTR [esp],edi
103171: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
103175: e8 f1 f7 ff ff call 10296b <ConsoleCursorGoto>
10317a: 8d 73 01 lea esi,[ebx+0x1]
10317d: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
103181: c7 04 24 e7 9e 10 00 mov DWORD PTR [esp],0x109ee7
103188: e8 c3 fd ff ff call 102f50 <ConsoleWrite>
10318d: 89 f3 mov ebx,esi
10318f: eb dd jmp 10316e <task+0x16>
00103191 <CommandOsver>:
103191: 53 push ebx
103192: 83 ec 28 sub esp,0x28
103195: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
10319c: 00
10319d: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1031a4: e8 8a f7 ff ff call 102933 <Color>
1031a9: 88 c3 mov bl,al
1031ab: c7 44 24 04 0e 00 00 mov DWORD PTR [esp+0x4],0xe
1031b2: 00
1031b3: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1031ba: e8 74 f7 ff ff call 102933 <Color>
1031bf: 81 e3 ff 00 00 00 and ebx,0xff
1031c5: 89 5c 24 0c mov DWORD PTR [esp+0xc],ebx
1031c9: c7 44 24 08 34 9c 10 mov DWORD PTR [esp+0x8],0x109c34
1031d0: 00
1031d1: 25 ff 00 00 00 and eax,0xff
1031d6: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1031da: c7 04 24 80 9f 10 00 mov DWORD PTR [esp],0x109f80
1031e1: e8 6a fd ff ff call 102f50 <ConsoleWrite>
1031e6: bb 1e 00 00 00 mov ebx,0x1e
1031eb: c7 44 24 08 cd 00 00 mov DWORD PTR [esp+0x8],0xcd
1031f2: 00
1031f3: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
1031fa: 00
1031fb: c7 04 24 38 9c 10 00 mov DWORD PTR [esp],0x109c38
103202: e8 49 fd ff ff call 102f50 <ConsoleWrite>
103207: 4b dec ebx
103208: 75 e1 jne 1031eb <CommandOsver+0x5a>
10320a: c7 44 24 0c 3d 9c 10 mov DWORD PTR [esp+0xc],0x109c3d
103211: 00
103212: c7 44 24 08 07 00 00 mov DWORD PTR [esp+0x8],0x7
103219: 00
10321a: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
103221: 00
103222: c7 04 24 4d 9c 10 00 mov DWORD PTR [esp],0x109c4d
103229: e8 22 fd ff ff call 102f50 <ConsoleWrite>
10322e: c7 44 24 0c 62 9c 10 mov DWORD PTR [esp+0xc],0x109c62
103235: 00
103236: c7 44 24 08 07 00 00 mov DWORD PTR [esp+0x8],0x7
10323d: 00
10323e: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
103245: 00
103246: c7 04 24 6b 9c 10 00 mov DWORD PTR [esp],0x109c6b
10324d: e8 fe fc ff ff call 102f50 <ConsoleWrite>
103252: c7 44 24 18 7a 9c 10 mov DWORD PTR [esp+0x18],0x109c7a
103259: 00
10325a: c7 44 24 14 07 00 00 mov DWORD PTR [esp+0x14],0x7
103261: 00
103262: c7 44 24 10 08 00 00 mov DWORD PTR [esp+0x10],0x8
103269: 00
10326a: c7 44 24 0c 83 9c 10 mov DWORD PTR [esp+0xc],0x109c83
103271: 00
103272: c7 44 24 08 07 00 00 mov DWORD PTR [esp+0x8],0x7
103279: 00
10327a: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
103281: 00
103282: c7 04 24 8f 9c 10 00 mov DWORD PTR [esp],0x109c8f
103289: e8 c2 fc ff ff call 102f50 <ConsoleWrite>
10328e: c7 44 24 08 07 00 00 mov DWORD PTR [esp+0x8],0x7
103295: 00
103296: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
10329d: 00
10329e: c7 04 24 a0 9f 10 00 mov DWORD PTR [esp],0x109fa0
1032a5: e8 a6 fc ff ff call 102f50 <ConsoleWrite>
1032aa: 83 c4 28 add esp,0x28
1032ad: 5b pop ebx
1032ae: c3 ret
001032af <CommandTime>:
1032af: 55 push ebp
1032b0: 57 push edi
1032b1: 56 push esi
1032b2: 53 push ebx
1032b3: 81 ec ac 00 00 00 sub esp,0xac
1032b9: 8d 7c 24 6c lea edi,[esp+0x6c]
1032bd: be 60 a2 10 00 mov esi,0x10a260
1032c2: b9 0d 00 00 00 mov ecx,0xd
1032c7: f3 a5 rep movs DWORD PTR es:[edi],DWORD PTR ds:[esi]
1032c9: 8d 7c 24 4c lea edi,[esp+0x4c]
1032cd: be a0 a2 10 00 mov esi,0x10a2a0
1032d2: b1 08 mov cl,0x8
1032d4: f3 a5 rep movs DWORD PTR es:[edi],DWORD PTR ds:[esi]
1032d6: 8d 44 24 38 lea eax,[esp+0x38]
1032da: 89 04 24 mov DWORD PTR [esp],eax
1032dd: e8 72 60 00 00 call 109354 <TimeGetInternalTime>
1032e2: 83 ec 04 sub esp,0x4
1032e5: 8d 44 24 40 lea eax,[esp+0x40]
1032e9: 8b 4c 24 38 mov ecx,DWORD PTR [esp+0x38]
1032ed: 8b 5c 24 3c mov ebx,DWORD PTR [esp+0x3c]
1032f1: 89 4c 24 04 mov DWORD PTR [esp+0x4],ecx
1032f5: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
1032f9: 89 04 24 mov DWORD PTR [esp],eax
1032fc: e8 5a 5e 00 00 call 10915b <ConvertTimeSystemToTime>
103301: 83 ec 04 sub esp,0x4
103304: 0f b6 74 24 48 movzx esi,BYTE PTR [esp+0x48]
103309: 8a 5c 24 49 mov bl,BYTE PTR [esp+0x49]
10330d: 88 5c 24 33 mov BYTE PTR [esp+0x33],bl
103311: 66 8b 5c 24 4a mov bx,WORD PTR [esp+0x4a]
103316: c7 04 24 aa 9c 10 00 mov DWORD PTR [esp],0x109caa
10331d: e8 2e fc ff ff call 102f50 <ConsoleWrite>
103322: 31 c0 xor eax,eax
103324: 8a 44 24 47 mov al,BYTE PTR [esp+0x47]
103328: 89 44 24 34 mov DWORD PTR [esp+0x34],eax
10332c: c7 44 24 04 0a 00 00 mov DWORD PTR [esp+0x4],0xa
103333: 00
103334: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10333b: e8 f3 f5 ff ff call 102933 <Color>
103340: 89 da mov edx,ebx
103342: 81 e2 ff ff 00 00 and edx,0xffff
103348: 8d 0c 52 lea ecx,[edx+edx*2]
10334b: 89 cf mov edi,ecx
10334d: c1 e7 04 shl edi,0x4
103350: 01 f9 add ecx,edi
103352: 89 cf mov edi,ecx
103354: c1 e7 08 shl edi,0x8
103357: 01 f9 add ecx,edi
103359: 8d 14 8a lea edx,[edx+ecx*4]
10335c: c1 ea 13 shr edx,0x13
10335f: 8d 0c 92 lea ecx,[edx+edx*4]
103362: 01 c9 add ecx,ecx
103364: 89 df mov edi,ebx
103366: 66 29 cf sub di,cx
103369: 89 f9 mov ecx,edi
10336b: 81 e1 ff ff 00 00 and ecx,0xffff
103371: 89 4c 24 24 mov DWORD PTR [esp+0x24],ecx
103375: 89 d1 mov ecx,edx
103377: 81 e1 ff ff 00 00 and ecx,0xffff
10337d: 8d 3c 49 lea edi,[ecx+ecx*2]
103380: 89 fd mov ebp,edi
103382: c1 e5 04 shl ebp,0x4
103385: 01 ef add edi,ebp
103387: 89 fd mov ebp,edi
103389: c1 e5 08 shl ebp,0x8
10338c: 01 ef add edi,ebp
10338e: 8d 0c b9 lea ecx,[ecx+edi*4]
103391: c1 e9 13 shr ecx,0x13
103394: 8d 0c 89 lea ecx,[ecx+ecx*4]
103397: 01 c9 add ecx,ecx
103399: 66 29 ca sub dx,cx
10339c: 81 e2 ff ff 00 00 and edx,0xffff
1033a2: 89 54 24 20 mov DWORD PTR [esp+0x20],edx
1033a6: 66 c1 eb 02 shr bx,0x2
1033aa: 81 e3 ff ff 00 00 and ebx,0xffff
1033b0: 8d 14 9b lea edx,[ebx+ebx*4]
1033b3: 8d 14 d3 lea edx,[ebx+edx*8]
1033b6: c1 e2 05 shl edx,0x5
1033b9: 29 da sub edx,ebx
1033bb: c1 e2 02 shl edx,0x2
1033be: 29 da sub edx,ebx
1033c0: c1 ea 11 shr edx,0x11
1033c3: 89 54 24 1c mov DWORD PTR [esp+0x1c],edx
1033c7: 31 d2 xor edx,edx
1033c9: 8a 54 24 33 mov dl,BYTE PTR [esp+0x33]
1033cd: 8d 0c 92 lea ecx,[edx+edx*4]
1033d0: 8d 14 ca lea edx,[edx+ecx*8]
1033d3: 8d 14 92 lea edx,[edx+edx*4]
1033d6: 66 c1 ea 0b shr dx,0xb
1033da: 8d 0c 92 lea ecx,[edx+edx*4]
1033dd: 01 c9 add ecx,ecx
1033df: 8a 5c 24 33 mov bl,BYTE PTR [esp+0x33]
1033e3: 28 cb sub bl,cl
1033e5: 88 d9 mov cl,bl
1033e7: 81 e1 ff 00 00 00 and ecx,0xff
1033ed: 89 4c 24 18 mov DWORD PTR [esp+0x18],ecx
1033f1: 81 e2 ff 00 00 00 and edx,0xff
1033f7: 89 54 24 14 mov DWORD PTR [esp+0x14],edx
1033fb: 89 f2 mov edx,esi
1033fd: 81 e2 ff 00 00 00 and edx,0xff
103403: 8d 0c 92 lea ecx,[edx+edx*4]
103406: 8d 14 ca lea edx,[edx+ecx*8]
103409: 8d 14 92 lea edx,[edx+edx*4]
10340c: 66 c1 ea 0b shr dx,0xb
103410: 8d 0c 92 lea ecx,[edx+edx*4]
103413: 01 c9 add ecx,ecx
103415: 89 f3 mov ebx,esi
103417: 28 cb sub bl,cl
103419: 89 de mov esi,ebx
10341b: 81 e6 ff 00 00 00 and esi,0xff
103421: 89 74 24 10 mov DWORD PTR [esp+0x10],esi
103425: 81 e2 ff 00 00 00 and edx,0xff
10342b: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
10342f: 8b 7c 24 34 mov edi,DWORD PTR [esp+0x34]
103433: 89 7c 24 08 mov DWORD PTR [esp+0x8],edi
103437: 25 ff 00 00 00 and eax,0xff
10343c: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103440: c7 04 24 b9 9c 10 00 mov DWORD PTR [esp],0x109cb9
103447: e8 04 fb ff ff call 102f50 <ConsoleWrite>
10344c: 8b 5c 24 40 mov ebx,DWORD PTR [esp+0x40]
103450: 8a 44 24 46 mov al,BYTE PTR [esp+0x46]
103454: 25 ff 00 00 00 and eax,0xff
103459: 89 c6 mov esi,eax
10345b: 31 c0 xor eax,eax
10345d: 8a 44 24 44 mov al,BYTE PTR [esp+0x44]
103461: 8b 7c 84 6c mov edi,DWORD PTR [esp+eax*4+0x6c]
103465: 31 c0 xor eax,eax
103467: 8a 44 24 45 mov al,BYTE PTR [esp+0x45]
10346b: 8b 6c 84 4c mov ebp,DWORD PTR [esp+eax*4+0x4c]
10346f: c7 44 24 04 0a 00 00 mov DWORD PTR [esp+0x4],0xa
103476: 00
103477: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10347e: e8 b0 f4 ff ff call 102933 <Color>
103483: 89 5c 24 14 mov DWORD PTR [esp+0x14],ebx
103487: 89 74 24 10 mov DWORD PTR [esp+0x10],esi
10348b: 89 7c 24 0c mov DWORD PTR [esp+0xc],edi
10348f: 89 6c 24 08 mov DWORD PTR [esp+0x8],ebp
103493: 25 ff 00 00 00 and eax,0xff
103498: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10349c: c7 04 24 d0 9c 10 00 mov DWORD PTR [esp],0x109cd0
1034a3: e8 a8 fa ff ff call 102f50 <ConsoleWrite>
1034a8: 81 c4 ac 00 00 00 add esp,0xac
1034ae: 5b pop ebx
1034af: 5e pop esi
1034b0: 5f pop edi
1034b1: 5d pop ebp
1034b2: c3 ret
001034b3 <CommandHelp>:
1034b3: 56 push esi
1034b4: 53 push ebx
1034b5: 83 ec 14 sub esp,0x14
1034b8: 83 7c 24 24 01 cmp DWORD PTR [esp+0x24],0x1
1034bd: 7f 59 jg 103518 <CommandHelp+0x65>
1034bf: c7 04 24 76 9d 10 00 mov DWORD PTR [esp],0x109d76
1034c6: e8 85 fa ff ff call 102f50 <ConsoleWrite>
1034cb: 83 3d 20 c0 10 00 00 cmp DWORD PTR ds:0x10c020,0x0
1034d2: 7e 78 jle 10354c <CommandHelp+0x99>
1034d4: bb 00 00 00 00 mov ebx,0x0
1034d9: 8b 34 9d 40 c0 10 00 mov esi,DWORD PTR [ebx*4+0x10c040]
1034e0: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
1034e7: 00
1034e8: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1034ef: e8 3f f4 ff ff call 102933 <Color>
1034f4: 89 74 24 08 mov DWORD PTR [esp+0x8],esi
1034f8: 25 ff 00 00 00 and eax,0xff
1034fd: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103501: c7 04 24 8b 9d 10 00 mov DWORD PTR [esp],0x109d8b
103508: e8 43 fa ff ff call 102f50 <ConsoleWrite>
10350d: 43 inc ebx
10350e: 39 1d 20 c0 10 00 cmp DWORD PTR ds:0x10c020,ebx
103514: 7f c3 jg 1034d9 <CommandHelp+0x26>
103516: eb 34 jmp 10354c <CommandHelp+0x99>
103518: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
10351c: 8b 58 04 mov ebx,DWORD PTR [eax+0x4]
10351f: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103526: 00
103527: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10352e: e8 00 f4 ff ff call 102933 <Color>
103533: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
103537: 25 ff 00 00 00 and eax,0xff
10353c: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103540: c7 04 24 c4 9f 10 00 mov DWORD PTR [esp],0x109fc4
103547: e8 04 fa ff ff call 102f50 <ConsoleWrite>
10354c: 83 c4 14 add esp,0x14
10354f: 5b pop ebx
103550: 5e pop esi
103551: c3 ret
00103552 <hex>:
103552: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
103556: 8d 42 37 lea eax,[edx+0x37]
103559: 83 fa 09 cmp edx,0x9
10355c: 7f 03 jg 103561 <hex+0xf>
10355e: 8d 42 30 lea eax,[edx+0x30]
103561: c3 ret
00103562 <CommandDump>:
103562: 55 push ebp
103563: 57 push edi
103564: 56 push esi
103565: 53 push ebx
103566: 83 ec 4c sub esp,0x4c
103569: 8b 5c 24 60 mov ebx,DWORD PTR [esp+0x60]
10356d: 8b 44 24 64 mov eax,DWORD PTR [esp+0x64]
103571: 83 f8 02 cmp eax,0x2
103574: 7f 55 jg 1035cb <CommandDump+0x69>
103576: c7 44 24 0c 07 00 00 mov DWORD PTR [esp+0xc],0x7
10357d: 00
10357e: c7 44 24 08 0f 00 00 mov DWORD PTR [esp+0x8],0xf
103585: 00
103586: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
10358d: 00
10358e: c7 04 24 f8 9f 10 00 mov DWORD PTR [esp],0x109ff8
103595: e8 b6 f9 ff ff call 102f50 <ConsoleWrite>
10359a: c7 44 24 10 08 00 00 mov DWORD PTR [esp+0x10],0x8
1035a1: 00
1035a2: c7 44 24 0c 07 00 00 mov DWORD PTR [esp+0xc],0x7
1035a9: 00
1035aa: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1035b1: 00
1035b2: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
1035b9: 00
1035ba: c7 04 24 38 a0 10 00 mov DWORD PTR [esp],0x10a038
1035c1: e8 8a f9 ff ff call 102f50 <ConsoleWrite>
1035c6: e9 70 02 00 00 jmp 10383b <CommandDump+0x2d9>
1035cb: c7 44 24 38 01 00 00 mov DWORD PTR [esp+0x38],0x1
1035d2: 00
1035d3: 83 f8 04 cmp eax,0x4
1035d6: 75 21 jne 1035f9 <CommandDump+0x97>
1035d8: c7 44 24 04 94 9d 10 mov DWORD PTR [esp+0x4],0x109d94
1035df: 00
1035e0: 8b 43 0c mov eax,DWORD PTR [ebx+0xc]
1035e3: 89 04 24 mov DWORD PTR [esp],eax
1035e6: e8 d9 56 00 00 call 108cc4 <strcmp>
1035eb: 85 c0 test eax,eax
1035ed: 0f 95 c0 setne al
1035f0: 25 ff 00 00 00 and eax,0xff
1035f5: 89 44 24 38 mov DWORD PTR [esp+0x38],eax
1035f9: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
1035fc: 89 04 24 mov DWORD PTR [esp],eax
1035ff: e8 8e 0e 00 00 call 104492 <ConvertStringToIntHex>
103604: 89 c7 mov edi,eax
103606: 8b 43 08 mov eax,DWORD PTR [ebx+0x8]
103609: 89 04 24 mov DWORD PTR [esp],eax
10360c: e8 81 0e 00 00 call 104492 <ConvertStringToIntHex>
103611: 89 44 24 34 mov DWORD PTR [esp+0x34],eax
103615: 39 c7 cmp edi,eax
103617: 0f 87 1e 02 00 00 ja 10383b <CommandDump+0x2d9>
10361d: c7 44 24 2c 00 00 00 mov DWORD PTR [esp+0x2c],0x0
103624: 00
103625: eb 04 jmp 10362b <CommandDump+0xc9>
103627: 8b 7c 24 30 mov edi,DWORD PTR [esp+0x30]
10362b: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
103632: 00
103633: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10363a: e8 f4 f2 ff ff call 102933 <Color>
10363f: 88 c3 mov bl,al
103641: c7 44 24 04 0d 00 00 mov DWORD PTR [esp+0x4],0xd
103648: 00
103649: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
103650: e8 de f2 ff ff call 102933 <Color>
103655: 81 e3 ff 00 00 00 and ebx,0xff
10365b: 89 5c 24 0c mov DWORD PTR [esp+0xc],ebx
10365f: 89 7c 24 08 mov DWORD PTR [esp+0x8],edi
103663: 25 ff 00 00 00 and eax,0xff
103668: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10366c: c7 04 24 97 9d 10 00 mov DWORD PTR [esp],0x109d97
103673: e8 d8 f8 ff ff call 102f50 <ConsoleWrite>
103678: 8d 57 10 lea edx,[edi+0x10]
10367b: 89 54 24 30 mov DWORD PTR [esp+0x30],edx
10367f: 39 d7 cmp edi,edx
103681: 0f 83 a3 01 00 00 jae 10382a <CommandDump+0x2c8>
103687: bb 00 00 00 00 mov ebx,0x0
10368c: 89 fd mov ebp,edi
10368e: 8a 44 1d 00 mov al,BYTE PTR [ebp+ebx*1+0x0]
103692: 84 c0 test al,al
103694: 75 2b jne 1036c1 <CommandDump+0x15f>
103696: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
10369d: 00
10369e: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1036a5: e8 89 f2 ff ff call 102933 <Color>
1036aa: 25 ff 00 00 00 and eax,0xff
1036af: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1036b3: c7 04 24 a1 9d 10 00 mov DWORD PTR [esp],0x109da1
1036ba: e8 91 f8 ff ff call 102f50 <ConsoleWrite>
1036bf: eb 5b jmp 10371c <CommandDump+0x1ba>
1036c1: 89 c2 mov edx,eax
1036c3: 83 e2 0f and edx,0xf
1036c6: 8d 4a 37 lea ecx,[edx+0x37]
1036c9: 83 fa 09 cmp edx,0x9
1036cc: 7f 03 jg 1036d1 <CommandDump+0x16f>
1036ce: 8d 4a 30 lea ecx,[edx+0x30]
1036d1: 0f be f9 movsx edi,cl
1036d4: c0 e8 04 shr al,0x4
1036d7: 31 d2 xor edx,edx
1036d9: 88 c2 mov dl,al
1036db: 8d 70 37 lea esi,[eax+0x37]
1036de: 83 fa 09 cmp edx,0x9
1036e1: 7f 03 jg 1036e6 <CommandDump+0x184>
1036e3: 8d 70 30 lea esi,[eax+0x30]
1036e6: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
1036ed: 00
1036ee: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1036f5: e8 39 f2 ff ff call 102933 <Color>
1036fa: 89 7c 24 0c mov DWORD PTR [esp+0xc],edi
1036fe: 89 f2 mov edx,esi
103700: 0f be f2 movsx esi,dl
103703: 89 74 24 08 mov DWORD PTR [esp+0x8],esi
103707: 25 ff 00 00 00 and eax,0xff
10370c: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103710: c7 04 24 a7 9d 10 00 mov DWORD PTR [esp],0x109da7
103717: e8 34 f8 ff ff call 102f50 <ConsoleWrite>
10371c: 43 inc ebx
10371d: 83 fb 10 cmp ebx,0x10
103720: 0f 85 68 ff ff ff jne 10368e <CommandDump+0x12c>
103726: 89 ef mov edi,ebp
103728: c7 04 24 9e 9d 10 00 mov DWORD PTR [esp],0x109d9e
10372f: e8 1c f8 ff ff call 102f50 <ConsoleWrite>
103734: b3 00 mov bl,0x0
103736: 0f b6 34 1f movzx esi,BYTE PTR [edi+ebx*1]
10373a: 89 f0 mov eax,esi
10373c: 3c 1f cmp al,0x1f
10373e: 77 0e ja 10374e <CommandDump+0x1ec>
103740: c7 04 24 d3 9e 10 00 mov DWORD PTR [esp],0x109ed3
103747: e8 04 f8 ff ff call 102f50 <ConsoleWrite>
10374c: eb 33 jmp 103781 <CommandDump+0x21f>
10374e: c7 44 24 04 0a 00 00 mov DWORD PTR [esp+0x4],0xa
103755: 00
103756: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10375d: e8 d1 f1 ff ff call 102933 <Color>
103762: 81 e6 ff 00 00 00 and esi,0xff
103768: 89 74 24 08 mov DWORD PTR [esp+0x8],esi
10376c: 25 ff 00 00 00 and eax,0xff
103771: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103775: c7 04 24 38 9c 10 00 mov DWORD PTR [esp],0x109c38
10377c: e8 cf f7 ff ff call 102f50 <ConsoleWrite>
103781: 43 inc ebx
103782: 83 fb 10 cmp ebx,0x10
103785: 75 af jne 103736 <CommandDump+0x1d4>
103787: c7 04 24 b0 9d 10 00 mov DWORD PTR [esp],0x109db0
10378e: e8 bd f7 ff ff call 102f50 <ConsoleWrite>
103793: ff 44 24 2c inc DWORD PTR [esp+0x2c]
103797: b8 a3 8b 2e ba mov eax,0xba2e8ba3
10379c: f7 64 24 2c mul DWORD PTR [esp+0x2c]
1037a0: 89 44 24 20 mov DWORD PTR [esp+0x20],eax
1037a4: 89 54 24 24 mov DWORD PTR [esp+0x24],edx
1037a8: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
1037ac: c1 e8 04 shr eax,0x4
1037af: 8d 14 80 lea edx,[eax+eax*4]
1037b2: 8d 04 50 lea eax,[eax+edx*2]
1037b5: 01 c0 add eax,eax
1037b7: 39 44 24 2c cmp DWORD PTR [esp+0x2c],eax
1037bb: 75 5d jne 10381a <CommandDump+0x2b8>
1037bd: 83 7c 24 38 00 cmp DWORD PTR [esp+0x38],0x0
1037c2: 74 56 je 10381a <CommandDump+0x2b8>
1037c4: c7 44 24 14 08 00 00 mov DWORD PTR [esp+0x14],0x8
1037cb: 00
1037cc: c7 44 24 10 07 00 00 mov DWORD PTR [esp+0x10],0x7
1037d3: 00
1037d4: c7 44 24 0c 08 00 00 mov DWORD PTR [esp+0xc],0x8
1037db: 00
1037dc: c7 44 24 08 07 00 00 mov DWORD PTR [esp+0x8],0x7
1037e3: 00
1037e4: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
1037eb: 00
1037ec: c7 04 24 68 a0 10 00 mov DWORD PTR [esp],0x10a068
1037f3: e8 58 f7 ff ff call 102f50 <ConsoleWrite>
1037f8: 8d 54 24 3e lea edx,[esp+0x3e]
1037fc: 89 14 24 mov DWORD PTR [esp],edx
1037ff: e8 7a 53 00 00 call 108b7e <ReadKey>
103804: 83 ec 04 sub esp,0x4
103807: 80 7c 24 3f 76 cmp BYTE PTR [esp+0x3f],0x76
10380c: 74 2d je 10383b <CommandDump+0x2d9>
10380e: c7 04 24 af 9d 10 00 mov DWORD PTR [esp],0x109daf
103815: e8 36 f7 ff ff call 102f50 <ConsoleWrite>
10381a: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
10381e: 39 44 24 34 cmp DWORD PTR [esp+0x34],eax
103822: 0f 83 ff fd ff ff jae 103627 <CommandDump+0xc5>
103828: eb 11 jmp 10383b <CommandDump+0x2d9>
10382a: c7 04 24 9e 9d 10 00 mov DWORD PTR [esp],0x109d9e
103831: e8 1a f7 ff ff call 102f50 <ConsoleWrite>
103836: e9 4c ff ff ff jmp 103787 <CommandDump+0x225>
10383b: 83 c4 4c add esp,0x4c
10383e: 5b pop ebx
10383f: 5e pop esi
103840: 5f pop edi
103841: 5d pop ebp
103842: c3 ret
00103843 <_CommandMemPrintMemmap>:
103843: 55 push ebp
103844: 57 push edi
103845: 56 push esi
103846: 53 push ebx
103847: 83 ec 3c sub esp,0x3c
10384a: c7 44 24 04 04 00 00 mov DWORD PTR [esp+0x4],0x4
103851: 00
103852: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
103859: e8 d5 f0 ff ff call 102933 <Color>
10385e: 89 c6 mov esi,eax
103860: e8 23 4b 00 00 call 108388 <MemoryGetFramesTotal>
103865: 89 44 24 28 mov DWORD PTR [esp+0x28],eax
103869: bb 50 00 00 00 mov ebx,0x50
10386e: c7 44 24 08 dc 00 00 mov DWORD PTR [esp+0x8],0xdc
103875: 00
103876: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
10387d: 00
10387e: c7 04 24 38 9c 10 00 mov DWORD PTR [esp],0x109c38
103885: e8 c6 f6 ff ff call 102f50 <ConsoleWrite>
10388a: 4b dec ebx
10388b: 75 e1 jne 10386e <_CommandMemPrintMemmap+0x2b>
10388d: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
103891: 89 44 24 20 mov DWORD PTR [esp+0x20],eax
103895: c7 44 24 24 20 03 00 mov DWORD PTR [esp+0x24],0x320
10389c: 00
10389d: bb 00 00 00 00 mov ebx,0x0
1038a2: 89 f0 mov eax,esi
1038a4: 25 ff 00 00 00 and eax,0xff
1038a9: 89 44 24 2c mov DWORD PTR [esp+0x2c],eax
1038ad: b8 1f 85 eb 51 mov eax,0x51eb851f
1038b2: f7 64 24 20 mul DWORD PTR [esp+0x20]
1038b6: c1 ea 08 shr edx,0x8
1038b9: 89 54 24 1c mov DWORD PTR [esp+0x1c],edx
1038bd: 89 d7 mov edi,edx
1038bf: 89 d5 mov ebp,edx
1038c1: 29 dd sub ebp,ebx
1038c3: be 00 00 00 00 mov esi,0x0
1038c8: 39 da cmp edx,ebx
1038ca: 7e 1d jle 1038e9 <_CommandMemPrintMemmap+0xa6>
1038cc: 89 1c 24 mov DWORD PTR [esp],ebx
1038cf: e8 57 45 00 00 call 107e2b <MemPhGetBlock>
1038d4: 85 c0 test eax,eax
1038d6: 0f 95 c0 setne al
1038d9: 25 ff 00 00 00 and eax,0xff
1038de: 01 c6 add esi,eax
1038e0: 43 inc ebx
1038e1: 39 df cmp edi,ebx
1038e3: 7f e7 jg 1038cc <_CommandMemPrintMemmap+0x89>
1038e5: 8b 5c 24 1c mov ebx,DWORD PTR [esp+0x1c]
1038e9: ba 67 66 66 66 mov edx,0x66666667
1038ee: 89 e8 mov eax,ebp
1038f0: f7 ea imul edx
1038f2: d1 fa sar edx,1
1038f4: 89 e8 mov eax,ebp
1038f6: c1 f8 1f sar eax,0x1f
1038f9: 29 c2 sub edx,eax
1038fb: b0 20 mov al,0x20
1038fd: 39 f2 cmp edx,esi
1038ff: 7d 53 jge 103954 <_CommandMemPrintMemmap+0x111>
103901: 8d 0c ad 00 00 00 00 lea ecx,[ebp*4+0x0]
103908: ba 67 66 66 66 mov edx,0x66666667
10390d: 89 c8 mov eax,ecx
10390f: f7 ea imul edx
103911: d1 fa sar edx,1
103913: c1 f9 1f sar ecx,0x1f
103916: 29 ca sub edx,ecx
103918: b0 db mov al,0xdb
10391a: 39 f2 cmp edx,esi
10391c: 7c 36 jl 103954 <_CommandMemPrintMemmap+0x111>
10391e: 8d 4c 2d 00 lea ecx,[ebp+ebp*1+0x0]
103922: ba 67 66 66 66 mov edx,0x66666667
103927: 89 c8 mov eax,ecx
103929: f7 ea imul edx
10392b: d1 fa sar edx,1
10392d: c1 f9 1f sar ecx,0x1f
103930: 29 ca sub edx,ecx
103932: b0 b0 mov al,0xb0
103934: 39 f2 cmp edx,esi
103936: 7d 1c jge 103954 <_CommandMemPrintMemmap+0x111>
103938: 8d 4c 6d 00 lea ecx,[ebp+ebp*2+0x0]
10393c: ba 67 66 66 66 mov edx,0x66666667
103941: 89 c8 mov eax,ecx
103943: f7 ea imul edx
103945: d1 fa sar edx,1
103947: c1 f9 1f sar ecx,0x1f
10394a: 29 ca sub edx,ecx
10394c: 39 f2 cmp edx,esi
10394e: 0f 9c c0 setl al
103951: 83 e8 4f sub eax,0x4f
103954: 0f be c0 movsx eax,al
103957: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
10395b: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
10395f: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103963: c7 04 24 38 9c 10 00 mov DWORD PTR [esp],0x109c38
10396a: e8 e1 f5 ff ff call 102f50 <ConsoleWrite>
10396f: 43 inc ebx
103970: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
103974: 01 44 24 20 add DWORD PTR [esp+0x20],eax
103978: ff 4c 24 24 dec DWORD PTR [esp+0x24]
10397c: 0f 85 2b ff ff ff jne 1038ad <_CommandMemPrintMemmap+0x6a>
103982: bb 50 00 00 00 mov ebx,0x50
103987: c7 44 24 08 df 00 00 mov DWORD PTR [esp+0x8],0xdf
10398e: 00
10398f: c7 44 24 04 08 00 00 mov DWORD PTR [esp+0x4],0x8
103996: 00
103997: c7 04 24 38 9c 10 00 mov DWORD PTR [esp],0x109c38
10399e: e8 ad f5 ff ff call 102f50 <ConsoleWrite>
1039a3: 4b dec ebx
1039a4: 75 e1 jne 103987 <_CommandMemPrintMemmap+0x144>
1039a6: 83 c4 3c add esp,0x3c
1039a9: 5b pop ebx
1039aa: 5e pop esi
1039ab: 5f pop edi
1039ac: 5d pop ebp
1039ad: c3 ret
001039ae <CommandMem>:
1039ae: 56 push esi
1039af: 53 push ebx
1039b0: 83 ec 14 sub esp,0x14
1039b3: 8b 5c 24 20 mov ebx,DWORD PTR [esp+0x20]
1039b7: 8b 74 24 24 mov esi,DWORD PTR [esp+0x24]
1039bb: 83 fe 01 cmp esi,0x1
1039be: 0f 8f 8e 00 00 00 jg 103a52 <CommandMem+0xa4>
1039c4: c7 04 24 b3 9d 10 00 mov DWORD PTR [esp],0x109db3
1039cb: e8 80 f5 ff ff call 102f50 <ConsoleWrite>
1039d0: e8 6e fe ff ff call 103843 <_CommandMemPrintMemmap>
1039d5: e8 ba 49 00 00 call 108394 <MemoryGetFramesFree>
1039da: 89 c3 mov ebx,eax
1039dc: e8 89 49 00 00 call 10836a <MemoryGetFree>
1039e1: 89 5c 24 0c mov DWORD PTR [esp+0xc],ebx
1039e5: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
1039e9: c7 44 24 04 0d 00 00 mov DWORD PTR [esp+0x4],0xd
1039f0: 00
1039f1: c7 04 24 a8 a0 10 00 mov DWORD PTR [esp],0x10a0a8
1039f8: e8 53 f5 ff ff call 102f50 <ConsoleWrite>
1039fd: e8 8c 49 00 00 call 10838e <MemoryGetFramesUsed>
103a02: 89 c3 mov ebx,eax
103a04: e8 70 49 00 00 call 108379 <MemoryGetUsed>
103a09: 89 5c 24 0c mov DWORD PTR [esp+0xc],ebx
103a0d: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103a11: c7 44 24 04 0d 00 00 mov DWORD PTR [esp+0x4],0xd
103a18: 00
103a19: c7 04 24 c8 a0 10 00 mov DWORD PTR [esp],0x10a0c8
103a20: e8 2b f5 ff ff call 102f50 <ConsoleWrite>
103a25: e8 5e 49 00 00 call 108388 <MemoryGetFramesTotal>
103a2a: 89 c3 mov ebx,eax
103a2c: e8 33 49 00 00 call 108364 <MemoryGetTotal>
103a31: 89 5c 24 0c mov DWORD PTR [esp+0xc],ebx
103a35: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103a39: c7 44 24 04 0d 00 00 mov DWORD PTR [esp+0x4],0xd
103a40: 00
103a41: c7 04 24 ec a0 10 00 mov DWORD PTR [esp],0x10a0ec
103a48: e8 03 f5 ff ff call 102f50 <ConsoleWrite>
103a4d: e9 be 00 00 00 jmp 103b10 <CommandMem+0x162>
103a52: c7 44 24 04 c9 9d 10 mov DWORD PTR [esp+0x4],0x109dc9
103a59: 00
103a5a: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103a5d: 89 04 24 mov DWORD PTR [esp],eax
103a60: e8 5f 52 00 00 call 108cc4 <strcmp>
103a65: 85 c0 test eax,eax
103a67: 75 40 jne 103aa9 <CommandMem+0xfb>
103a69: 83 fe 02 cmp esi,0x2
103a6c: 7f 0e jg 103a7c <CommandMem+0xce>
103a6e: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
103a75: e8 27 47 00 00 call 1081a1 <kmalloc>
103a7a: eb 13 jmp 103a8f <CommandMem+0xe1>
103a7c: 8b 43 08 mov eax,DWORD PTR [ebx+0x8]
103a7f: 89 04 24 mov DWORD PTR [esp],eax
103a82: e8 df 09 00 00 call 104466 <ConvertStringToUInt>
103a87: 89 04 24 mov DWORD PTR [esp],eax
103a8a: e8 12 47 00 00 call 1081a1 <kmalloc>
103a8f: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103a93: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
103a9a: 00
103a9b: c7 04 24 cf 9d 10 00 mov DWORD PTR [esp],0x109dcf
103aa2: e8 a9 f4 ff ff call 102f50 <ConsoleWrite>
103aa7: eb 67 jmp 103b10 <CommandMem+0x162>
103aa9: c7 44 24 04 e9 9d 10 mov DWORD PTR [esp+0x4],0x109de9
103ab0: 00
103ab1: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103ab4: 89 04 24 mov DWORD PTR [esp],eax
103ab7: e8 08 52 00 00 call 108cc4 <strcmp>
103abc: 85 c0 test eax,eax
103abe: 75 3c jne 103afc <CommandMem+0x14e>
103ac0: 83 fe 02 cmp esi,0x2
103ac3: 7f 16 jg 103adb <CommandMem+0x12d>
103ac5: c7 44 24 04 04 00 00 mov DWORD PTR [esp+0x4],0x4
103acc: 00
103acd: c7 04 24 10 a1 10 00 mov DWORD PTR [esp],0x10a110
103ad4: e8 77 f4 ff ff call 102f50 <ConsoleWrite>
103ad9: eb 35 jmp 103b10 <CommandMem+0x162>
103adb: 8b 43 08 mov eax,DWORD PTR [ebx+0x8]
103ade: 89 04 24 mov DWORD PTR [esp],eax
103ae1: e8 ac 09 00 00 call 104492 <ConvertStringToIntHex>
103ae6: 89 04 24 mov DWORD PTR [esp],eax
103ae9: e8 1a 48 00 00 call 108308 <kfree>
103aee: c7 04 24 ee 9d 10 00 mov DWORD PTR [esp],0x109dee
103af5: e8 56 f4 ff ff call 102f50 <ConsoleWrite>
103afa: eb 14 jmp 103b10 <CommandMem+0x162>
103afc: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103b03: 00
103b04: c7 04 24 38 a1 10 00 mov DWORD PTR [esp],0x10a138
103b0b: e8 40 f4 ff ff call 102f50 <ConsoleWrite>
103b10: 83 c4 14 add esp,0x14
103b13: 5b pop ebx
103b14: 5e pop esi
103b15: c3 ret
00103b16 <CommandCrash>:
103b16: 83 ec 1c sub esp,0x1c
103b19: b8 0a 00 00 00 mov eax,0xa
103b1e: b9 00 00 00 00 mov ecx,0x0
103b23: 89 c2 mov edx,eax
103b25: c1 fa 1f sar edx,0x1f
103b28: f7 f9 idiv ecx
103b2a: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103b2e: c7 04 24 f5 9d 10 00 mov DWORD PTR [esp],0x109df5
103b35: e8 16 f4 ff ff call 102f50 <ConsoleWrite>
103b3a: 83 c4 1c add esp,0x1c
103b3d: c3 ret
00103b3e <CommandMouse>:
103b3e: 53 push ebx
103b3f: 83 ec 28 sub esp,0x28
103b42: 8d 44 24 14 lea eax,[esp+0x14]
103b46: 89 04 24 mov DWORD PTR [esp],eax
103b49: e8 08 4d 00 00 call 108856 <MouseGetState>
103b4e: 83 ec 04 sub esp,0x4
103b51: 8a 5c 24 14 mov bl,BYTE PTR [esp+0x14]
103b55: 8b 44 24 1c mov eax,DWORD PTR [esp+0x1c]
103b59: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103b5d: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
103b61: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103b65: c7 04 24 f8 9d 10 00 mov DWORD PTR [esp],0x109df8
103b6c: e8 df f3 ff ff call 102f50 <ConsoleWrite>
103b71: 84 db test bl,bl
103b73: 75 13 jne 103b88 <CommandMouse+0x4a>
103b75: c7 04 24 0b 9e 10 00 mov DWORD PTR [esp],0x109e0b
103b7c: e8 cf f3 ff ff call 102f50 <ConsoleWrite>
103b81: bb 00 00 00 00 mov ebx,0x0
103b86: eb 28 jmp 103bb0 <CommandMouse+0x72>
103b88: 81 e3 ff 00 00 00 and ebx,0xff
103b8e: f6 c3 01 test bl,0x1
103b91: 74 0c je 103b9f <CommandMouse+0x61>
103b93: c7 04 24 12 9e 10 00 mov DWORD PTR [esp],0x109e12
103b9a: e8 b1 f3 ff ff call 102f50 <ConsoleWrite>
103b9f: f6 c3 02 test bl,0x2
103ba2: 74 0c je 103bb0 <CommandMouse+0x72>
103ba4: c7 04 24 19 9e 10 00 mov DWORD PTR [esp],0x109e19
103bab: e8 a0 f3 ff ff call 102f50 <ConsoleWrite>
103bb0: f6 c3 04 test bl,0x4
103bb3: 74 0c je 103bc1 <CommandMouse+0x83>
103bb5: c7 04 24 21 9e 10 00 mov DWORD PTR [esp],0x109e21
103bbc: e8 8f f3 ff ff call 102f50 <ConsoleWrite>
103bc1: c7 04 24 57 9e 10 00 mov DWORD PTR [esp],0x109e57
103bc8: e8 83 f3 ff ff call 102f50 <ConsoleWrite>
103bcd: 83 c4 28 add esp,0x28
103bd0: 5b pop ebx
103bd1: c3 ret
00103bd2 <CommandRead>:
103bd2: 83 ec 1c sub esp,0x1c
103bd5: 83 7c 24 24 01 cmp DWORD PTR [esp+0x24],0x1
103bda: 7f 16 jg 103bf2 <CommandRead+0x20>
103bdc: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103be3: 00
103be4: c7 04 24 74 a1 10 00 mov DWORD PTR [esp],0x10a174
103beb: e8 60 f3 ff ff call 102f50 <ConsoleWrite>
103bf0: eb 2f jmp 103c21 <CommandRead+0x4f>
103bf2: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
103bf6: 8b 40 04 mov eax,DWORD PTR [eax+0x4]
103bf9: 89 04 24 mov DWORD PTR [esp],eax
103bfc: e8 65 08 00 00 call 104466 <ConvertStringToUInt>
103c01: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103c05: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
103c0c: e8 f6 1a 00 00 call 105707 <FloppyRead>
103c11: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103c15: c7 04 24 27 9e 10 00 mov DWORD PTR [esp],0x109e27
103c1c: e8 2f f3 ff ff call 102f50 <ConsoleWrite>
103c21: 83 c4 1c add esp,0x1c
103c24: c3 ret
00103c25 <CommandDir>:
103c25: 57 push edi
103c26: 56 push esi
103c27: 53 push ebx
103c28: 83 ec 60 sub esp,0x60
103c2b: 8b 5c 24 70 mov ebx,DWORD PTR [esp+0x70]
103c2f: 83 7c 24 74 01 cmp DWORD PTR [esp+0x74],0x1
103c34: 7f 4a jg 103c80 <CommandDir+0x5b>
103c36: c7 04 24 45 9e 10 00 mov DWORD PTR [esp],0x109e45
103c3d: e8 0e f3 ff ff call 102f50 <ConsoleWrite>
103c42: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
103c49: e8 99 5f 00 00 call 109be7 <VfsGetMountPoint>
103c4e: 85 c0 test eax,eax
103c50: 0f 84 42 01 00 00 je 103d98 <CommandDir+0x173>
103c56: bb 01 00 00 00 mov ebx,0x1
103c5b: 83 c0 08 add eax,0x8
103c5e: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103c62: c7 04 24 59 9e 10 00 mov DWORD PTR [esp],0x109e59
103c69: e8 e2 f2 ff ff call 102f50 <ConsoleWrite>
103c6e: 89 1c 24 mov DWORD PTR [esp],ebx
103c71: e8 71 5f 00 00 call 109be7 <VfsGetMountPoint>
103c76: 43 inc ebx
103c77: 85 c0 test eax,eax
103c79: 75 e0 jne 103c5b <CommandDir+0x36>
103c7b: e9 18 01 00 00 jmp 103d98 <CommandDir+0x173>
103c80: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103c83: 89 04 24 mov DWORD PTR [esp],eax
103c86: e8 46 5d 00 00 call 1099d1 <VfsTest>
103c8b: 85 c0 test eax,eax
103c8d: 75 19 jne 103ca8 <CommandDir+0x83>
103c8f: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103c96: 00
103c97: c7 04 24 64 9e 10 00 mov DWORD PTR [esp],0x109e64
103c9e: e8 ad f2 ff ff call 102f50 <ConsoleWrite>
103ca3: e9 f0 00 00 00 jmp 103d98 <CommandDir+0x173>
103ca8: 8b 80 00 01 00 00 mov eax,DWORD PTR [eax+0x100]
103cae: 83 e0 07 and eax,0x7
103cb1: 83 f8 01 cmp eax,0x1
103cb4: 75 19 jne 103ccf <CommandDir+0xaa>
103cb6: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103cbd: 00
103cbe: c7 04 24 77 9e 10 00 mov DWORD PTR [esp],0x109e77
103cc5: e8 86 f2 ff ff call 102f50 <ConsoleWrite>
103cca: e9 c9 00 00 00 jmp 103d98 <CommandDir+0x173>
103ccf: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103cd2: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103cd6: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
103cdd: 00
103cde: c7 04 24 8d 9e 10 00 mov DWORD PTR [esp],0x109e8d
103ce5: e8 66 f2 ff ff call 102f50 <ConsoleWrite>
103cea: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103ced: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103cf1: 8d 5c 24 18 lea ebx,[esp+0x18]
103cf5: 89 1c 24 mov DWORD PTR [esp],ebx
103cf8: e8 53 5c 00 00 call 109950 <VfsOpen>
103cfd: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
103d04: 00
103d05: 89 1c 24 mov DWORD PTR [esp],ebx
103d08: e8 67 5e 00 00 call 109b74 <VfsReadDirectory>
103d0d: 89 c3 mov ebx,eax
103d0f: 85 c0 test eax,eax
103d11: 74 79 je 103d8c <CommandDir+0x167>
103d13: be 01 00 00 00 mov esi,0x1
103d18: 8d 7c 24 18 lea edi,[esp+0x18]
103d1c: b8 41 9e 10 00 mov eax,0x109e41
103d21: f6 83 00 01 00 00 01 test BYTE PTR [ebx+0x100],0x1
103d28: 74 05 je 103d2f <CommandDir+0x10a>
103d2a: b8 3d 9e 10 00 mov eax,0x109e3d
103d2f: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103d33: c7 04 24 aa 9e 10 00 mov DWORD PTR [esp],0x109eaa
103d3a: e8 11 f2 ff ff call 102f50 <ConsoleWrite>
103d3f: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
103d43: c7 04 24 b1 9e 10 00 mov DWORD PTR [esp],0x109eb1
103d4a: e8 01 f2 ff ff call 102f50 <ConsoleWrite>
103d4f: c7 04 24 3c 00 00 00 mov DWORD PTR [esp],0x3c
103d56: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
103d5d: ff
103d5e: e8 08 ec ff ff call 10296b <ConsoleCursorGoto>
103d63: 8b 83 0c 01 00 00 mov eax,DWORD PTR [ebx+0x10c]
103d69: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103d6d: c7 04 24 b4 9e 10 00 mov DWORD PTR [esp],0x109eb4
103d74: e8 d7 f1 ff ff call 102f50 <ConsoleWrite>
103d79: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
103d7d: 89 3c 24 mov DWORD PTR [esp],edi
103d80: e8 ef 5d 00 00 call 109b74 <VfsReadDirectory>
103d85: 89 c3 mov ebx,eax
103d87: 46 inc esi
103d88: 85 c0 test eax,eax
103d8a: 75 90 jne 103d1c <CommandDir+0xf7>
103d8c: 8d 44 24 18 lea eax,[esp+0x18]
103d90: 89 04 24 mov DWORD PTR [esp],eax
103d93: e8 a5 5c 00 00 call 109a3d <VfsClose>
103d98: 83 c4 60 add esp,0x60
103d9b: 5b pop ebx
103d9c: 5e pop esi
103d9d: 5f pop edi
103d9e: c3 ret
00103d9f <CommandCat>:
103d9f: 55 push ebp
103da0: 57 push edi
103da1: 56 push esi
103da2: 53 push ebx
103da3: 83 ec 6c sub esp,0x6c
103da6: 8b 9c 24 80 00 00 00 mov ebx,DWORD PTR [esp+0x80]
103dad: 83 bc 24 84 00 00 00 cmp DWORD PTR [esp+0x84],0x1
103db4: 01
103db5: 7f 19 jg 103dd0 <CommandCat+0x31>
103db7: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103dbe: 00
103dbf: c7 04 24 98 a1 10 00 mov DWORD PTR [esp],0x10a198
103dc6: e8 85 f1 ff ff call 102f50 <ConsoleWrite>
103dcb: e9 c7 00 00 00 jmp 103e97 <CommandCat+0xf8>
103dd0: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103dd3: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103dd7: 8d 44 24 18 lea eax,[esp+0x18]
103ddb: 89 04 24 mov DWORD PTR [esp],eax
103dde: e8 6d 5b 00 00 call 109950 <VfsOpen>
103de3: 85 c0 test eax,eax
103de5: 75 20 jne 103e07 <CommandCat+0x68>
103de7: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103dea: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103dee: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103df5: 00
103df6: c7 04 24 be 9e 10 00 mov DWORD PTR [esp],0x109ebe
103dfd: e8 4e f1 ff ff call 102f50 <ConsoleWrite>
103e02: e9 90 00 00 00 jmp 103e97 <CommandCat+0xf8>
103e07: c7 04 24 00 01 00 00 mov DWORD PTR [esp],0x100
103e0e: e8 8e 43 00 00 call 1081a1 <kmalloc>
103e13: 89 c6 mov esi,eax
103e15: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
103e18: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103e1c: c7 04 24 d5 9e 10 00 mov DWORD PTR [esp],0x109ed5
103e23: e8 28 f1 ff ff call 102f50 <ConsoleWrite>
103e28: 8d 6c 24 18 lea ebp,[esp+0x18]
103e2c: eb 27 jmp 103e55 <CommandCat+0xb6>
103e2e: bf 00 00 00 00 mov edi,0x0
103e33: 31 c0 xor eax,eax
103e35: 8a 04 3e mov al,BYTE PTR [esi+edi*1]
103e38: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103e3c: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
103e43: 00
103e44: c7 04 24 38 9c 10 00 mov DWORD PTR [esp],0x109c38
103e4b: e8 00 f1 ff ff call 102f50 <ConsoleWrite>
103e50: 47 inc edi
103e51: 39 df cmp edi,ebx
103e53: 75 de jne 103e33 <CommandCat+0x94>
103e55: 89 74 24 0c mov DWORD PTR [esp+0xc],esi
103e59: c7 44 24 08 00 01 00 mov DWORD PTR [esp+0x8],0x100
103e60: 00
103e61: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
103e68: 00
103e69: 89 2c 24 mov DWORD PTR [esp],ebp
103e6c: e8 25 5c 00 00 call 109a96 <VfsRead>
103e71: 89 c3 mov ebx,eax
103e73: 85 c0 test eax,eax
103e75: 75 b7 jne 103e2e <CommandCat+0x8f>
103e77: c7 04 24 c8 a1 10 00 mov DWORD PTR [esp],0x10a1c8
103e7e: e8 cd f0 ff ff call 102f50 <ConsoleWrite>
103e83: 89 34 24 mov DWORD PTR [esp],esi
103e86: e8 7d 44 00 00 call 108308 <kfree>
103e8b: 8d 44 24 18 lea eax,[esp+0x18]
103e8f: 89 04 24 mov DWORD PTR [esp],eax
103e92: e8 a6 5b 00 00 call 109a3d <VfsClose>
103e97: 83 c4 6c add esp,0x6c
103e9a: 5b pop ebx
103e9b: 5e pop esi
103e9c: 5f pop edi
103e9d: 5d pop ebp
103e9e: c3 ret
00103e9f <CommandTask>:
103e9f: 55 push ebp
103ea0: 57 push edi
103ea1: 56 push esi
103ea2: 53 push ebx
103ea3: 83 ec 1c sub esp,0x1c
103ea6: e8 24 ea ff ff call 1028cf <ConsoleClear>
103eab: c7 04 24 58 31 10 00 mov DWORD PTR [esp],0x103158
103eb2: e8 a0 50 00 00 call 108f57 <TaskCreate>
103eb7: bf 05 00 00 00 mov edi,0x5
103ebc: bd 02 00 00 00 mov ebp,0x2
103ec1: bb 00 00 00 00 mov ebx,0x0
103ec6: 89 3c 24 mov DWORD PTR [esp],edi
103ec9: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
103ecd: e8 99 ea ff ff call 10296b <ConsoleCursorGoto>
103ed2: 8d 73 01 lea esi,[ebx+0x1]
103ed5: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
103ed9: c7 44 24 04 09 00 00 mov DWORD PTR [esp+0x4],0x9
103ee0: 00
103ee1: c7 04 24 e5 9e 10 00 mov DWORD PTR [esp],0x109ee5
103ee8: e8 63 f0 ff ff call 102f50 <ConsoleWrite>
103eed: 89 f3 mov ebx,esi
103eef: eb d5 jmp 103ec6 <CommandTask+0x27>
00103ef1 <_command_does_not_exist>:
103ef1: 55 push ebp
103ef2: 57 push edi
103ef3: 56 push esi
103ef4: 53 push ebx
103ef5: 83 ec 2c sub esp,0x2c
103ef8: 8b 74 24 40 mov esi,DWORD PTR [esp+0x40]
103efc: 83 3d 20 c0 10 00 00 cmp DWORD PTR ds:0x10c020,0x0
103f03: 7e 72 jle 103f77 <_command_does_not_exist+0x86>
103f05: bb 00 00 00 00 mov ebx,0x0
103f0a: bd 00 00 00 00 mov ebp,0x0
103f0f: 89 34 24 mov DWORD PTR [esp],esi
103f12: e8 99 4d 00 00 call 108cb0 <strlen>
103f17: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
103f1b: 8b 04 9d 40 c0 10 00 mov eax,DWORD PTR [ebx*4+0x10c040]
103f22: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103f26: 89 34 24 mov DWORD PTR [esp],esi
103f29: e8 d8 4d 00 00 call 108d06 <strncmp>
103f2e: 85 c0 test eax,eax
103f30: 75 03 jne 103f35 <_command_does_not_exist+0x44>
103f32: 45 inc ebp
103f33: 89 df mov edi,ebx
103f35: 43 inc ebx
103f36: 39 1d 20 c0 10 00 cmp DWORD PTR ds:0x10c020,ebx
103f3c: 7f d1 jg 103f0f <_command_does_not_exist+0x1e>
103f3e: 83 fd 01 cmp ebp,0x1
103f41: 75 39 jne 103f7c <_command_does_not_exist+0x8b>
103f43: c7 44 24 10 0e 00 00 mov DWORD PTR [esp+0x10],0xe
103f4a: 00
103f4b: 8b 04 bd 40 c0 10 00 mov eax,DWORD PTR [edi*4+0x10c040]
103f52: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
103f56: c7 44 24 08 0f 00 00 mov DWORD PTR [esp+0x8],0xf
103f5d: 00
103f5e: c7 44 24 04 0e 00 00 mov DWORD PTR [esp+0x4],0xe
103f65: 00
103f66: c7 04 24 f8 9e 10 00 mov DWORD PTR [esp],0x109ef8
103f6d: e8 de ef ff ff call 102f50 <ConsoleWrite>
103f72: e9 02 01 00 00 jmp 104079 <_command_does_not_exist+0x188>
103f77: bd 00 00 00 00 mov ebp,0x0
103f7c: 89 34 24 mov DWORD PTR [esp],esi
103f7f: e8 2c 4d 00 00 call 108cb0 <strlen>
103f84: 83 f8 14 cmp eax,0x14
103f87: 76 10 jbe 103f99 <_command_does_not_exist+0xa8>
103f89: c6 46 14 2e mov BYTE PTR [esi+0x14],0x2e
103f8d: c6 46 13 2e mov BYTE PTR [esi+0x13],0x2e
103f91: c6 46 12 2e mov BYTE PTR [esi+0x12],0x2e
103f95: c6 46 15 00 mov BYTE PTR [esi+0x15],0x0
103f99: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103fa0: 00
103fa1: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
103fa8: e8 86 e9 ff ff call 102933 <Color>
103fad: 88 c3 mov bl,al
103faf: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
103fb6: 00
103fb7: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
103fbe: e8 70 e9 ff ff call 102933 <Color>
103fc3: 89 c7 mov edi,eax
103fc5: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
103fcc: 00
103fcd: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
103fd4: e8 5a e9 ff ff call 102933 <Color>
103fd9: 81 e3 ff 00 00 00 and ebx,0xff
103fdf: 89 5c 24 10 mov DWORD PTR [esp+0x10],ebx
103fe3: 89 74 24 0c mov DWORD PTR [esp+0xc],esi
103fe7: 81 e7 ff 00 00 00 and edi,0xff
103fed: 89 7c 24 08 mov DWORD PTR [esp+0x8],edi
103ff1: 25 ff 00 00 00 and eax,0xff
103ff6: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
103ffa: c7 04 24 e8 a1 10 00 mov DWORD PTR [esp],0x10a1e8
104001: e8 4a ef ff ff call 102f50 <ConsoleWrite>
104006: bf ff ff ff ff mov edi,0xffffffff
10400b: 85 ed test ebp,ebp
10400d: 7e 6a jle 104079 <_command_does_not_exist+0x188>
10400f: c7 04 24 10 9f 10 00 mov DWORD PTR [esp],0x109f10
104016: e8 35 ef ff ff call 102f50 <ConsoleWrite>
10401b: 83 3d 20 c0 10 00 00 cmp DWORD PTR ds:0x10c020,0x0
104022: 7e 55 jle 104079 <_command_does_not_exist+0x188>
104024: bb 00 00 00 00 mov ebx,0x0
104029: 89 34 24 mov DWORD PTR [esp],esi
10402c: e8 7f 4c 00 00 call 108cb0 <strlen>
104031: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
104035: 8b 04 9d 40 c0 10 00 mov eax,DWORD PTR [ebx*4+0x10c040]
10403c: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104040: 89 34 24 mov DWORD PTR [esp],esi
104043: e8 be 4c 00 00 call 108d06 <strncmp>
104048: 85 c0 test eax,eax
10404a: 75 1f jne 10406b <_command_does_not_exist+0x17a>
10404c: 8b 04 9d 40 c0 10 00 mov eax,DWORD PTR [ebx*4+0x10c040]
104053: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
104057: c7 44 24 04 0e 00 00 mov DWORD PTR [esp+0x4],0xe
10405e: 00
10405f: c7 04 24 24 9f 10 00 mov DWORD PTR [esp],0x109f24
104066: e8 e5 ee ff ff call 102f50 <ConsoleWrite>
10406b: 43 inc ebx
10406c: 39 1d 20 c0 10 00 cmp DWORD PTR ds:0x10c020,ebx
104072: 7f b5 jg 104029 <_command_does_not_exist+0x138>
104074: bf ff ff ff ff mov edi,0xffffffff
104079: 89 f8 mov eax,edi
10407b: 83 c4 2c add esp,0x2c
10407e: 5b pop ebx
10407f: 5e pop esi
104080: 5f pop edi
104081: 5d pop ebp
104082: c3 ret
00104083 <_process_command>:
104083: 55 push ebp
104084: 57 push edi
104085: 56 push esi
104086: 53 push ebx
104087: 83 ec 2c sub esp,0x2c
10408a: 8b 74 24 40 mov esi,DWORD PTR [esp+0x40]
10408e: 8b 6c 24 44 mov ebp,DWORD PTR [esp+0x44]
104092: 85 ed test ebp,ebp
104094: 74 10 je 1040a6 <_process_command+0x23>
104096: bf ff ff ff ff mov edi,0xffffffff
10409b: 83 3d 20 c0 10 00 00 cmp DWORD PTR ds:0x10c020,0x0
1040a2: 7f 30 jg 1040d4 <_process_command+0x51>
1040a4: eb 61 jmp 104107 <_process_command+0x84>
1040a6: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
1040ad: 00
1040ae: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1040b5: e8 79 e8 ff ff call 102933 <Color>
1040ba: 25 ff 00 00 00 and eax,0xff
1040bf: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1040c3: c7 04 24 0c a2 10 00 mov DWORD PTR [esp],0x10a20c
1040ca: e8 81 ee ff ff call 102f50 <ConsoleWrite>
1040cf: e9 6d 01 00 00 jmp 104241 <_process_command+0x1be>
1040d4: bb 00 00 00 00 mov ebx,0x0
1040d9: bf ff ff ff ff mov edi,0xffffffff
1040de: 8b 04 9d 40 c0 10 00 mov eax,DWORD PTR [ebx*4+0x10c040]
1040e5: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1040e9: 8b 06 mov eax,DWORD PTR [esi]
1040eb: 89 04 24 mov DWORD PTR [esp],eax
1040ee: e8 d1 4b 00 00 call 108cc4 <strcmp>
1040f3: 85 c0 test eax,eax
1040f5: 75 02 jne 1040f9 <_process_command+0x76>
1040f7: 89 df mov edi,ebx
1040f9: 43 inc ebx
1040fa: 39 1d 20 c0 10 00 cmp DWORD PTR ds:0x10c020,ebx
104100: 7e 05 jle 104107 <_process_command+0x84>
104102: 83 ff ff cmp edi,0xffffffff
104105: 74 d7 je 1040de <_process_command+0x5b>
104107: 47 inc edi
104108: 83 ff 0e cmp edi,0xe
10410b: 0f 87 c1 00 00 00 ja 1041d2 <_process_command+0x14f>
104111: ff 24 bd c0 a2 10 00 jmp DWORD PTR [edi*4+0x10a2c0]
104118: 8b 06 mov eax,DWORD PTR [esi]
10411a: 89 04 24 mov DWORD PTR [esp],eax
10411d: e8 cf fd ff ff call 103ef1 <_command_does_not_exist>
104122: 89 c7 mov edi,eax
104124: 83 f8 ff cmp eax,0xffffffff
104127: 75 de jne 104107 <_process_command+0x84>
104129: e9 13 01 00 00 jmp 104241 <_process_command+0x1be>
10412e: e8 5e f0 ff ff call 103191 <CommandOsver>
104133: e9 09 01 00 00 jmp 104241 <_process_command+0x1be>
104138: e8 72 f1 ff ff call 1032af <CommandTime>
10413d: e9 ff 00 00 00 jmp 104241 <_process_command+0x1be>
104142: e8 88 e7 ff ff call 1028cf <ConsoleClear>
104147: e9 f5 00 00 00 jmp 104241 <_process_command+0x1be>
10414c: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
104150: 89 34 24 mov DWORD PTR [esp],esi
104153: e8 5b f3 ff ff call 1034b3 <CommandHelp>
104158: e9 e4 00 00 00 jmp 104241 <_process_command+0x1be>
10415d: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
104161: 89 34 24 mov DWORD PTR [esp],esi
104164: e8 f9 f3 ff ff call 103562 <CommandDump>
104169: e9 d3 00 00 00 jmp 104241 <_process_command+0x1be>
10416e: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
104172: 89 34 24 mov DWORD PTR [esp],esi
104175: e8 34 f8 ff ff call 1039ae <CommandMem>
10417a: e9 c2 00 00 00 jmp 104241 <_process_command+0x1be>
10417f: e8 92 f9 ff ff call 103b16 <CommandCrash>
104184: e9 b8 00 00 00 jmp 104241 <_process_command+0x1be>
104189: e8 b0 f9 ff ff call 103b3e <CommandMouse>
10418e: e9 ae 00 00 00 jmp 104241 <_process_command+0x1be>
104193: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
104197: 89 34 24 mov DWORD PTR [esp],esi
10419a: e8 33 fa ff ff call 103bd2 <CommandRead>
10419f: e9 9d 00 00 00 jmp 104241 <_process_command+0x1be>
1041a4: e8 de 4c 00 00 call 108e87 <SystemReboot>
1041a9: e9 93 00 00 00 jmp 104241 <_process_command+0x1be>
1041ae: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
1041b2: 89 34 24 mov DWORD PTR [esp],esi
1041b5: e8 6b fa ff ff call 103c25 <CommandDir>
1041ba: e9 82 00 00 00 jmp 104241 <_process_command+0x1be>
1041bf: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
1041c3: 89 34 24 mov DWORD PTR [esp],esi
1041c6: e8 d4 fb ff ff call 103d9f <CommandCat>
1041cb: eb 74 jmp 104241 <_process_command+0x1be>
1041cd: e8 cd fc ff ff call 103e9f <CommandTask>
1041d2: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
1041d9: 00
1041da: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1041e1: e8 4d e7 ff ff call 102933 <Color>
1041e6: 89 c7 mov edi,eax
1041e8: 8b 36 mov esi,DWORD PTR [esi]
1041ea: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
1041f1: 00
1041f2: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1041f9: e8 35 e7 ff ff call 102933 <Color>
1041fe: 88 c3 mov bl,al
104200: c7 44 24 04 0c 00 00 mov DWORD PTR [esp+0x4],0xc
104207: 00
104208: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10420f: e8 1f e7 ff ff call 102933 <Color>
104214: 81 e7 ff 00 00 00 and edi,0xff
10421a: 89 7c 24 10 mov DWORD PTR [esp+0x10],edi
10421e: 89 74 24 0c mov DWORD PTR [esp+0xc],esi
104222: 81 e3 ff 00 00 00 and ebx,0xff
104228: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
10422c: 25 ff 00 00 00 and eax,0xff
104231: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104235: c7 04 24 2c a2 10 00 mov DWORD PTR [esp],0x10a22c
10423c: e8 0f ed ff ff call 102f50 <ConsoleWrite>
104241: 83 c4 2c add esp,0x2c
104244: 5b pop ebx
104245: 5e pop esi
104246: 5f pop edi
104247: 5d pop ebp
104248: c3 ret
00104249 <ConsoleMain>:
104249: 56 push esi
10424a: 53 push ebx
10424b: 81 ec 94 02 00 00 sub esp,0x294
104251: e8 3b ef ff ff call 103191 <CommandOsver>
104256: 8d 9c 24 90 00 00 00 lea ebx,[esp+0x90]
10425d: c7 44 24 04 0e 00 00 mov DWORD PTR [esp+0x4],0xe
104264: 00
104265: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10426c: e8 c2 e6 ff ff call 102933 <Color>
104271: 25 ff 00 00 00 and eax,0xff
104276: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10427a: c7 04 24 2d 9f 10 00 mov DWORD PTR [esp],0x109f2d
104281: e8 ca ec ff ff call 102f50 <ConsoleWrite>
104286: c7 44 24 08 0a 00 00 mov DWORD PTR [esp+0x8],0xa
10428d: 00
10428e: c7 44 24 04 00 02 00 mov DWORD PTR [esp+0x4],0x200
104295: 00
104296: 89 1c 24 mov DWORD PTR [esp],ebx
104299: e8 6d e8 ff ff call 102b0b <ConsoleReadString>
10429e: 89 5c 24 10 mov DWORD PTR [esp+0x10],ebx
1042a2: 89 1c 24 mov DWORD PTR [esp],ebx
1042a5: e8 06 4a 00 00 call 108cb0 <strlen>
1042aa: be 00 00 00 00 mov esi,0x0
1042af: ba 00 00 00 00 mov edx,0x0
1042b4: eb 49 jmp 1042ff <ConsoleMain+0xb6>
1042b6: c6 04 1a 00 mov BYTE PTR [edx+ebx*1],0x0
1042ba: 42 inc edx
1042bb: 39 d0 cmp eax,edx
1042bd: 7e 0d jle 1042cc <ConsoleMain+0x83>
1042bf: 0f be 0c 1a movsx ecx,BYTE PTR [edx+ebx*1]
1042c3: f6 81 e1 c0 10 00 02 test BYTE PTR [ecx+0x10c0e1],0x2
1042ca: 75 ea jne 1042b6 <ConsoleMain+0x6d>
1042cc: 39 c2 cmp edx,eax
1042ce: 74 52 je 104322 <ConsoleMain+0xd9>
1042d0: 8d 0c 13 lea ecx,[ebx+edx*1]
1042d3: 89 4c b4 10 mov DWORD PTR [esp+esi*4+0x10],ecx
1042d7: 46 inc esi
1042d8: 39 d0 cmp eax,edx
1042da: 7e 23 jle 1042ff <ConsoleMain+0xb6>
1042dc: 0f be 8c 14 90 00 00 movsx ecx,BYTE PTR [esp+edx*1+0x90]
1042e3: 00
1042e4: f6 81 e1 c0 10 00 02 test BYTE PTR [ecx+0x10c0e1],0x2
1042eb: 75 12 jne 1042ff <ConsoleMain+0xb6>
1042ed: 42 inc edx
1042ee: 39 d0 cmp eax,edx
1042f0: 7e 0d jle 1042ff <ConsoleMain+0xb6>
1042f2: 0f be 0c 1a movsx ecx,BYTE PTR [edx+ebx*1]
1042f6: f6 81 e1 c0 10 00 02 test BYTE PTR [ecx+0x10c0e1],0x2
1042fd: 74 ee je 1042ed <ConsoleMain+0xa4>
1042ff: 39 c2 cmp edx,eax
104301: 0f 9c c1 setl cl
104304: 7d 1c jge 104322 <ConsoleMain+0xd9>
104306: 83 fe 1f cmp esi,0x1f
104309: 7f 17 jg 104322 <ConsoleMain+0xd9>
10430b: 84 c9 test cl,cl
10430d: 74 bd je 1042cc <ConsoleMain+0x83>
10430f: 0f be 8c 14 90 00 00 movsx ecx,BYTE PTR [esp+edx*1+0x90]
104316: 00
104317: f6 81 e1 c0 10 00 02 test BYTE PTR [ecx+0x10c0e1],0x2
10431e: 75 96 jne 1042b6 <ConsoleMain+0x6d>
104320: eb aa jmp 1042cc <ConsoleMain+0x83>
104322: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
104326: 8d 44 24 10 lea eax,[esp+0x10]
10432a: 89 04 24 mov DWORD PTR [esp],eax
10432d: e8 51 fd ff ff call 104083 <_process_command>
104332: e9 26 ff ff ff jmp 10425d <ConsoleMain+0x14>
...
00104338 <ConvertIntToString>:
104338: 55 push ebp
104339: 57 push edi
10433a: 56 push esi
10433b: 53 push ebx
10433c: 83 ec 2c sub esp,0x2c
10433f: 8b 5c 24 40 mov ebx,DWORD PTR [esp+0x40]
104343: 8b 6c 24 44 mov ebp,DWORD PTR [esp+0x44]
104347: 8b 74 24 48 mov esi,DWORD PTR [esp+0x48]
10434b: 89 f7 mov edi,esi
10434d: 8d 46 fe lea eax,[esi-0x2]
104350: 83 f8 22 cmp eax,0x22
104353: 77 54 ja 1043a9 <ConvertIntToString+0x71>
104355: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
104359: 89 2c 24 mov DWORD PTR [esp],ebp
10435c: e8 1b 45 00 00 call 10887c <numlen>
104361: 89 44 24 1c mov DWORD PTR [esp+0x1c],eax
104365: 89 e8 mov eax,ebp
104367: c1 e8 1f shr eax,0x1f
10436a: 74 0e je 10437a <ConvertIntToString+0x42>
10436c: 83 fe 0a cmp esi,0xa
10436f: 75 09 jne 10437a <ConvertIntToString+0x42>
104371: c6 03 2d mov BYTE PTR [ebx],0x2d
104374: 66 be 01 00 mov si,0x1
104378: eb 05 jmp 10437f <ConvertIntToString+0x47>
10437a: be 00 00 00 00 mov esi,0x0
10437f: 8b 4c 24 1c mov ecx,DWORD PTR [esp+0x1c]
104383: 49 dec ecx
104384: 39 ce cmp esi,ecx
104386: 7f 17 jg 10439f <ConvertIntToString+0x67>
104388: 89 e8 mov eax,ebp
10438a: ba 00 00 00 00 mov edx,0x0
10438f: f7 f7 div edi
104391: 8a 92 fc a2 10 00 mov dl,BYTE PTR [edx+0x10a2fc]
104397: 88 14 0b mov BYTE PTR [ebx+ecx*1],dl
10439a: 49 dec ecx
10439b: 39 ce cmp esi,ecx
10439d: 7e eb jle 10438a <ConvertIntToString+0x52>
10439f: 8b 44 24 1c mov eax,DWORD PTR [esp+0x1c]
1043a3: c6 04 03 00 mov BYTE PTR [ebx+eax*1],0x0
1043a7: eb 05 jmp 1043ae <ConvertIntToString+0x76>
1043a9: bd 00 00 00 00 mov ebp,0x0
1043ae: 89 e8 mov eax,ebp
1043b0: 83 c4 2c add esp,0x2c
1043b3: 5b pop ebx
1043b4: 5e pop esi
1043b5: 5f pop edi
1043b6: 5d pop ebp
1043b7: c3 ret
001043b8 <ConvertUIntToString>:
1043b8: 55 push ebp
1043b9: 57 push edi
1043ba: 56 push esi
1043bb: 53 push ebx
1043bc: 83 ec 1c sub esp,0x1c
1043bf: 8b 74 24 30 mov esi,DWORD PTR [esp+0x30]
1043c3: 8b 5c 24 34 mov ebx,DWORD PTR [esp+0x34]
1043c7: 8b 44 24 38 mov eax,DWORD PTR [esp+0x38]
1043cb: 89 c7 mov edi,eax
1043cd: 8d 50 fe lea edx,[eax-0x2]
1043d0: 83 fa 22 cmp edx,0x22
1043d3: 77 33 ja 104408 <ConvertUIntToString+0x50>
1043d5: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1043d9: 89 1c 24 mov DWORD PTR [esp],ebx
1043dc: e8 d9 44 00 00 call 1088ba <unumlen>
1043e1: 89 c5 mov ebp,eax
1043e3: 89 c1 mov ecx,eax
1043e5: 49 dec ecx
1043e6: 78 1a js 104402 <ConvertUIntToString+0x4a>
1043e8: 89 d8 mov eax,ebx
1043ea: ba 00 00 00 00 mov edx,0x0
1043ef: f7 f7 div edi
1043f1: 89 c3 mov ebx,eax
1043f3: 8a 92 fc a2 10 00 mov dl,BYTE PTR [edx+0x10a2fc]
1043f9: 88 14 0e mov BYTE PTR [esi+ecx*1],dl
1043fc: 49 dec ecx
1043fd: 83 f9 ff cmp ecx,0xffffffff
104400: 75 e6 jne 1043e8 <ConvertUIntToString+0x30>
104402: c6 04 2e 00 mov BYTE PTR [esi+ebp*1],0x0
104406: eb 05 jmp 10440d <ConvertUIntToString+0x55>
104408: bb 00 00 00 00 mov ebx,0x0
10440d: 89 d8 mov eax,ebx
10440f: 83 c4 1c add esp,0x1c
104412: 5b pop ebx
104413: 5e pop esi
104414: 5f pop edi
104415: 5d pop ebp
104416: c3 ret
00104417 <ConvertStringToInt>:
104417: 53 push ebx
104418: 83 ec 04 sub esp,0x4
10441b: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
10441f: 8a 10 mov dl,BYTE PTR [eax]
104421: 88 54 24 03 mov BYTE PTR [esp+0x3],dl
104425: 80 fa 2d cmp dl,0x2d
104428: 0f 94 c1 sete cl
10442b: 81 e1 ff 00 00 00 and ecx,0xff
104431: 01 c1 add ecx,eax
104433: 8a 11 mov dl,BYTE PTR [ecx]
104435: 8d 5a d0 lea ebx,[edx-0x30]
104438: b8 00 00 00 00 mov eax,0x0
10443d: 80 fb 09 cmp bl,0x9
104440: 77 16 ja 104458 <ConvertStringToInt+0x41>
104442: 8d 04 80 lea eax,[eax+eax*4]
104445: 0f be d2 movsx edx,dl
104448: 8d 44 42 d0 lea eax,[edx+eax*2-0x30]
10444c: 8a 51 01 mov dl,BYTE PTR [ecx+0x1]
10444f: 41 inc ecx
104450: 8d 5a d0 lea ebx,[edx-0x30]
104453: 80 fb 09 cmp bl,0x9
104456: 76 ea jbe 104442 <ConvertStringToInt+0x2b>
104458: 80 7c 24 03 2d cmp BYTE PTR [esp+0x3],0x2d
10445d: 75 02 jne 104461 <ConvertStringToInt+0x4a>
10445f: f7 d8 neg eax
104461: 83 c4 04 add esp,0x4
104464: 5b pop ebx
104465: c3 ret
00104466 <ConvertStringToUInt>:
104466: 53 push ebx
104467: 8b 4c 24 08 mov ecx,DWORD PTR [esp+0x8]
10446b: 8a 11 mov dl,BYTE PTR [ecx]
10446d: 8d 5a d0 lea ebx,[edx-0x30]
104470: b8 00 00 00 00 mov eax,0x0
104475: 80 fb 09 cmp bl,0x9
104478: 77 16 ja 104490 <ConvertStringToUInt+0x2a>
10447a: 8d 04 80 lea eax,[eax+eax*4]
10447d: 0f be d2 movsx edx,dl
104480: 8d 44 42 d0 lea eax,[edx+eax*2-0x30]
104484: 8a 51 01 mov dl,BYTE PTR [ecx+0x1]
104487: 41 inc ecx
104488: 8d 5a d0 lea ebx,[edx-0x30]
10448b: 80 fb 09 cmp bl,0x9
10448e: 76 ea jbe 10447a <ConvertStringToUInt+0x14>
104490: 5b pop ebx
104491: c3 ret
00104492 <ConvertStringToIntHex>:
104492: 57 push edi
104493: 56 push esi
104494: 53 push ebx
104495: 83 ec 04 sub esp,0x4
104498: 8b 44 24 14 mov eax,DWORD PTR [esp+0x14]
10449c: 8a 50 01 mov dl,BYTE PTR [eax+0x1]
10449f: 80 fa 78 cmp dl,0x78
1044a2: 74 0a je 1044ae <ConvertStringToIntHex+0x1c>
1044a4: b9 00 00 00 00 mov ecx,0x0
1044a9: 80 fa 58 cmp dl,0x58
1044ac: 75 05 jne 1044b3 <ConvertStringToIntHex+0x21>
1044ae: b9 02 00 00 00 mov ecx,0x2
1044b3: 8d 3c 08 lea edi,[eax+ecx*1]
1044b6: b8 00 00 00 00 mov eax,0x0
1044bb: eb 30 jmp 1044ed <ConvertStringToIntHex+0x5b>
1044bd: c1 e0 04 shl eax,0x4
1044c0: 84 db test bl,bl
1044c2: 74 09 je 1044cd <ConvertStringToIntHex+0x3b>
1044c4: 0f be d2 movsx edx,dl
1044c7: 8d 44 10 d0 lea eax,[eax+edx*1-0x30]
1044cb: eb 1f jmp 1044ec <ConvertStringToIntHex+0x5a>
1044cd: 80 7c 24 03 00 cmp BYTE PTR [esp+0x3],0x0
1044d2: 74 09 je 1044dd <ConvertStringToIntHex+0x4b>
1044d4: 0f be d2 movsx edx,dl
1044d7: 8d 44 10 a9 lea eax,[eax+edx*1-0x57]
1044db: eb 0f jmp 1044ec <ConvertStringToIntHex+0x5a>
1044dd: 8d 5a bf lea ebx,[edx-0x41]
1044e0: 80 fb 05 cmp bl,0x5
1044e3: 77 07 ja 1044ec <ConvertStringToIntHex+0x5a>
1044e5: 0f be d2 movsx edx,dl
1044e8: 8d 44 10 c9 lea eax,[eax+edx*1-0x37]
1044ec: 47 inc edi
1044ed: 8a 17 mov dl,BYTE PTR [edi]
1044ef: 8d 5a d0 lea ebx,[edx-0x30]
1044f2: 80 fb 09 cmp bl,0x9
1044f5: 0f 96 c3 setbe bl
1044f8: 8d 72 9f lea esi,[edx-0x61]
1044fb: 89 f1 mov ecx,esi
1044fd: 80 f9 05 cmp cl,0x5
104500: 0f 96 44 24 03 setbe BYTE PTR [esp+0x3]
104505: 84 db test bl,bl
104507: 75 b4 jne 1044bd <ConvertStringToIntHex+0x2b>
104509: 80 7c 24 03 00 cmp BYTE PTR [esp+0x3],0x0
10450e: 75 ad jne 1044bd <ConvertStringToIntHex+0x2b>
104510: 8d 72 bf lea esi,[edx-0x41]
104513: 89 f1 mov ecx,esi
104515: 80 f9 05 cmp cl,0x5
104518: 76 a3 jbe 1044bd <ConvertStringToIntHex+0x2b>
10451a: 83 c4 04 add esp,0x4
10451d: 5b pop ebx
10451e: 5e pop esi
10451f: 5f pop edi
104520: c3 ret
104521: 00 00 add BYTE PTR [eax],al
...
00104524 <CrashMessage>:
104524: 56 push esi
104525: 53 push ebx
104526: 83 ec 14 sub esp,0x14
104529: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
10452d: c7 04 24 0c 00 00 00 mov DWORD PTR [esp],0xc
104534: e8 08 e4 ff ff call 102941 <ConsoleSetDefaultColor>
104539: c7 04 24 57 9e 10 00 mov DWORD PTR [esp],0x109e57
104540: e8 0b ea ff ff call 102f50 <ConsoleWrite>
104545: bb 50 00 00 00 mov ebx,0x50
10454a: c7 44 24 04 cd 00 00 mov DWORD PTR [esp+0x4],0xcd
104551: 00
104552: c7 04 24 3a 9c 10 00 mov DWORD PTR [esp],0x109c3a
104559: e8 f2 e9 ff ff call 102f50 <ConsoleWrite>
10455e: 4b dec ebx
10455f: 75 e9 jne 10454a <CrashMessage+0x26>
104561: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
104568: 00
104569: c7 04 24 80 a5 10 00 mov DWORD PTR [esp],0x10a580
104570: e8 db e9 ff ff call 102f50 <ConsoleWrite>
104575: c7 04 24 ac a5 10 00 mov DWORD PTR [esp],0x10a5ac
10457c: e8 cf e9 ff ff call 102f50 <ConsoleWrite>
104581: 8b 46 30 mov eax,DWORD PTR [esi+0x30]
104584: 83 f8 13 cmp eax,0x13
104587: 77 25 ja 1045ae <CrashMessage+0x8a>
104589: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
10458d: 8b 04 85 80 c0 10 00 mov eax,DWORD PTR [eax*4+0x10c080]
104594: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
104598: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
10459f: 00
1045a0: c7 04 24 28 a3 10 00 mov DWORD PTR [esp],0x10a328
1045a7: e8 a4 e9 ff ff call 102f50 <ConsoleWrite>
1045ac: eb 18 jmp 1045c6 <CrashMessage+0xa2>
1045ae: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
1045b2: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
1045b9: 00
1045ba: c7 04 24 35 a3 10 00 mov DWORD PTR [esp],0x10a335
1045c1: e8 8a e9 ff ff call 102f50 <ConsoleWrite>
1045c6: c7 04 24 d0 a5 10 00 mov DWORD PTR [esp],0x10a5d0
1045cd: e8 7e e9 ff ff call 102f50 <ConsoleWrite>
1045d2: c7 04 24 04 a6 10 00 mov DWORD PTR [esp],0x10a604
1045d9: e8 72 e9 ff ff call 102f50 <ConsoleWrite>
1045de: c7 04 24 0f 00 00 00 mov DWORD PTR [esp],0xf
1045e5: e8 57 e3 ff ff call 102941 <ConsoleSetDefaultColor>
1045ea: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
1045f1: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1045f8: ff
1045f9: e8 6d e3 ff ff call 10296b <ConsoleCursorGoto>
1045fe: 8b 46 2c mov eax,DWORD PTR [esi+0x2c]
104601: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104605: c7 04 24 3d a3 10 00 mov DWORD PTR [esp],0x10a33d
10460c: e8 3f e9 ff ff call 102f50 <ConsoleWrite>
104611: c7 04 24 16 00 00 00 mov DWORD PTR [esp],0x16
104618: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
10461f: ff
104620: e8 46 e3 ff ff call 10296b <ConsoleCursorGoto>
104625: 8b 46 20 mov eax,DWORD PTR [esi+0x20]
104628: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10462c: c7 04 24 46 a3 10 00 mov DWORD PTR [esp],0x10a346
104633: e8 18 e9 ff ff call 102f50 <ConsoleWrite>
104638: c7 04 24 28 00 00 00 mov DWORD PTR [esp],0x28
10463f: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104646: ff
104647: e8 1f e3 ff ff call 10296b <ConsoleCursorGoto>
10464c: 8b 46 28 mov eax,DWORD PTR [esi+0x28]
10464f: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104653: c7 04 24 4f a3 10 00 mov DWORD PTR [esp],0x10a34f
10465a: e8 f1 e8 ff ff call 102f50 <ConsoleWrite>
10465f: c7 04 24 3a 00 00 00 mov DWORD PTR [esp],0x3a
104666: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
10466d: ff
10466e: e8 f8 e2 ff ff call 10296b <ConsoleCursorGoto>
104673: 8b 46 24 mov eax,DWORD PTR [esi+0x24]
104676: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10467a: c7 04 24 58 a3 10 00 mov DWORD PTR [esp],0x10a358
104681: e8 ca e8 ff ff call 102f50 <ConsoleWrite>
104686: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
10468d: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104694: ff
104695: e8 d1 e2 ff ff call 10296b <ConsoleCursorGoto>
10469a: 8b 46 10 mov eax,DWORD PTR [esi+0x10]
10469d: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1046a1: c7 04 24 62 a3 10 00 mov DWORD PTR [esp],0x10a362
1046a8: e8 a3 e8 ff ff call 102f50 <ConsoleWrite>
1046ad: c7 04 24 16 00 00 00 mov DWORD PTR [esp],0x16
1046b4: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1046bb: ff
1046bc: e8 aa e2 ff ff call 10296b <ConsoleCursorGoto>
1046c1: 8b 46 14 mov eax,DWORD PTR [esi+0x14]
1046c4: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1046c8: c7 04 24 6b a3 10 00 mov DWORD PTR [esp],0x10a36b
1046cf: e8 7c e8 ff ff call 102f50 <ConsoleWrite>
1046d4: c7 04 24 28 00 00 00 mov DWORD PTR [esp],0x28
1046db: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1046e2: ff
1046e3: e8 83 e2 ff ff call 10296b <ConsoleCursorGoto>
1046e8: 8b 46 18 mov eax,DWORD PTR [esi+0x18]
1046eb: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1046ef: c7 04 24 74 a3 10 00 mov DWORD PTR [esp],0x10a374
1046f6: e8 55 e8 ff ff call 102f50 <ConsoleWrite>
1046fb: c7 04 24 3a 00 00 00 mov DWORD PTR [esp],0x3a
104702: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104709: ff
10470a: e8 5c e2 ff ff call 10296b <ConsoleCursorGoto>
10470f: 8b 46 1c mov eax,DWORD PTR [esi+0x1c]
104712: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104716: c7 04 24 b7 a3 10 00 mov DWORD PTR [esp],0x10a3b7
10471d: e8 2e e8 ff ff call 102f50 <ConsoleWrite>
104722: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
104729: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104730: ff
104731: e8 35 e2 ff ff call 10296b <ConsoleCursorGoto>
104736: 8b 06 mov eax,DWORD PTR [esi]
104738: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10473c: c7 04 24 ab a3 10 00 mov DWORD PTR [esp],0x10a3ab
104743: e8 08 e8 ff ff call 102f50 <ConsoleWrite>
104748: c7 04 24 16 00 00 00 mov DWORD PTR [esp],0x16
10474f: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104756: ff
104757: e8 0f e2 ff ff call 10296b <ConsoleCursorGoto>
10475c: 8b 46 04 mov eax,DWORD PTR [esi+0x4]
10475f: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104763: c7 04 24 7d a3 10 00 mov DWORD PTR [esp],0x10a37d
10476a: e8 e1 e7 ff ff call 102f50 <ConsoleWrite>
10476f: c7 04 24 28 00 00 00 mov DWORD PTR [esp],0x28
104776: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
10477d: ff
10477e: e8 e8 e1 ff ff call 10296b <ConsoleCursorGoto>
104783: 8b 46 08 mov eax,DWORD PTR [esi+0x8]
104786: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10478a: c7 04 24 85 a3 10 00 mov DWORD PTR [esp],0x10a385
104791: e8 ba e7 ff ff call 102f50 <ConsoleWrite>
104796: c7 04 24 3a 00 00 00 mov DWORD PTR [esp],0x3a
10479d: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1047a4: ff
1047a5: e8 c1 e1 ff ff call 10296b <ConsoleCursorGoto>
1047aa: 8b 46 0c mov eax,DWORD PTR [esi+0xc]
1047ad: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1047b1: c7 04 24 8d a3 10 00 mov DWORD PTR [esp],0x10a38d
1047b8: e8 93 e7 ff ff call 102f50 <ConsoleWrite>
1047bd: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
1047c4: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1047cb: ff
1047cc: e8 9a e1 ff ff call 10296b <ConsoleCursorGoto>
1047d1: 8b 46 38 mov eax,DWORD PTR [esi+0x38]
1047d4: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1047d8: c7 04 24 96 a3 10 00 mov DWORD PTR [esp],0x10a396
1047df: e8 6c e7 ff ff call 102f50 <ConsoleWrite>
1047e4: c7 04 24 16 00 00 00 mov DWORD PTR [esp],0x16
1047eb: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1047f2: ff
1047f3: e8 73 e1 ff ff call 10296b <ConsoleCursorGoto>
1047f8: 8b 46 3c mov eax,DWORD PTR [esi+0x3c]
1047fb: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1047ff: c7 04 24 9f a3 10 00 mov DWORD PTR [esp],0x10a39f
104806: e8 45 e7 ff ff call 102f50 <ConsoleWrite>
10480b: c7 04 24 28 00 00 00 mov DWORD PTR [esp],0x28
104812: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104819: ff
10481a: e8 4c e1 ff ff call 10296b <ConsoleCursorGoto>
10481f: 8b 46 40 mov eax,DWORD PTR [esi+0x40]
104822: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104826: c7 04 24 a7 a3 10 00 mov DWORD PTR [esp],0x10a3a7
10482d: e8 1e e7 ff ff call 102f50 <ConsoleWrite>
104832: c7 04 24 3a 00 00 00 mov DWORD PTR [esp],0x3a
104839: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104840: ff
104841: e8 25 e1 ff ff call 10296b <ConsoleCursorGoto>
104846: 8b 46 44 mov eax,DWORD PTR [esi+0x44]
104849: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10484d: c7 04 24 b3 a3 10 00 mov DWORD PTR [esp],0x10a3b3
104854: e8 f7 e6 ff ff call 102f50 <ConsoleWrite>
104859: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
104860: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
104867: ff
104868: e8 fe e0 ff ff call 10296b <ConsoleCursorGoto>
10486d: 8b 46 48 mov eax,DWORD PTR [esi+0x48]
104870: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104874: c7 04 24 ab a3 10 00 mov DWORD PTR [esp],0x10a3ab
10487b: e8 d0 e6 ff ff call 102f50 <ConsoleWrite>
104880: c7 04 24 16 00 00 00 mov DWORD PTR [esp],0x16
104887: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
10488e: ff
10488f: e8 d7 e0 ff ff call 10296b <ConsoleCursorGoto>
104894: 8b 46 30 mov eax,DWORD PTR [esi+0x30]
104897: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10489b: c7 04 24 7d a3 10 00 mov DWORD PTR [esp],0x10a37d
1048a2: e8 a9 e6 ff ff call 102f50 <ConsoleWrite>
1048a7: c7 04 24 28 00 00 00 mov DWORD PTR [esp],0x28
1048ae: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1048b5: ff
1048b6: e8 b0 e0 ff ff call 10296b <ConsoleCursorGoto>
1048bb: 8b 46 34 mov eax,DWORD PTR [esi+0x34]
1048be: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1048c2: c7 04 24 c1 a3 10 00 mov DWORD PTR [esp],0x10a3c1
1048c9: e8 82 e6 ff ff call 102f50 <ConsoleWrite>
1048ce: 83 7e 30 0e cmp DWORD PTR [esi+0x30],0xe
1048d2: 0f 85 c9 00 00 00 jne 1049a1 <CrashMessage+0x47d>
1048d8: 0f 20 d3 mov ebx,cr2
1048db: c7 04 24 3a 00 00 00 mov DWORD PTR [esp],0x3a
1048e2: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
1048e9: ff
1048ea: e8 7c e0 ff ff call 10296b <ConsoleCursorGoto>
1048ef: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
1048f3: c7 04 24 cf a3 10 00 mov DWORD PTR [esp],0x10a3cf
1048fa: e8 51 e6 ff ff call 102f50 <ConsoleWrite>
1048ff: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
104906: c7 44 24 04 ff ff ff mov DWORD PTR [esp+0x4],0xffffffff
10490d: ff
10490e: e8 58 e0 ff ff call 10296b <ConsoleCursorGoto>
104913: c7 04 24 dd a3 10 00 mov DWORD PTR [esp],0x10a3dd
10491a: e8 31 e6 ff ff call 102f50 <ConsoleWrite>
10491f: f6 46 34 01 test BYTE PTR [esi+0x34],0x1
104923: 75 14 jne 104939 <CrashMessage+0x415>
104925: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
10492c: 00
10492d: c7 04 24 e6 a3 10 00 mov DWORD PTR [esp],0x10a3e6
104934: e8 17 e6 ff ff call 102f50 <ConsoleWrite>
104939: f6 46 34 02 test BYTE PTR [esi+0x34],0x2
10493d: 74 14 je 104953 <CrashMessage+0x42f>
10493f: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
104946: 00
104947: c7 04 24 fb a3 10 00 mov DWORD PTR [esp],0x10a3fb
10494e: e8 fd e5 ff ff call 102f50 <ConsoleWrite>
104953: f6 46 34 04 test BYTE PTR [esi+0x34],0x4
104957: 74 14 je 10496d <CrashMessage+0x449>
104959: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
104960: 00
104961: c7 04 24 0f a4 10 00 mov DWORD PTR [esp],0x10a40f
104968: e8 e3 e5 ff ff call 102f50 <ConsoleWrite>
10496d: f6 46 34 08 test BYTE PTR [esi+0x34],0x8
104971: 74 14 je 104987 <CrashMessage+0x463>
104973: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
10497a: 00
10497b: c7 04 24 30 a6 10 00 mov DWORD PTR [esp],0x10a630
104982: e8 c9 e5 ff ff call 102f50 <ConsoleWrite>
104987: f6 46 34 10 test BYTE PTR [esi+0x34],0x10
10498b: 74 14 je 1049a1 <CrashMessage+0x47d>
10498d: c7 44 24 04 07 00 00 mov DWORD PTR [esp+0x4],0x7
104994: 00
104995: c7 04 24 24 a4 10 00 mov DWORD PTR [esp],0x10a424
10499c: e8 af e5 ff ff call 102f50 <ConsoleWrite>
1049a1: c7 04 24 0c 00 00 00 mov DWORD PTR [esp],0xc
1049a8: e8 94 df ff ff call 102941 <ConsoleSetDefaultColor>
1049ad: c7 04 24 57 9e 10 00 mov DWORD PTR [esp],0x109e57
1049b4: e8 97 e5 ff ff call 102f50 <ConsoleWrite>
1049b9: bb 50 00 00 00 mov ebx,0x50
1049be: c7 44 24 04 cd 00 00 mov DWORD PTR [esp+0x4],0xcd
1049c5: 00
1049c6: c7 04 24 3a 9c 10 00 mov DWORD PTR [esp],0x109c3a
1049cd: e8 7e e5 ff ff call 102f50 <ConsoleWrite>
1049d2: 4b dec ebx
1049d3: 75 e9 jne 1049be <CrashMessage+0x49a>
1049d5: 83 c4 14 add esp,0x14
1049d8: 5b pop ebx
1049d9: 5e pop esi
1049da: c3 ret
...
001049dc <toupper>:
1049dc: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
1049e0: 80 b8 e1 c0 10 00 00 cmp BYTE PTR [eax+0x10c0e1],0x0
1049e7: 79 03 jns 1049ec <toupper+0x10>
1049e9: 83 e8 20 sub eax,0x20
1049ec: c3 ret
001049ed <tolower>:
1049ed: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
1049f1: f6 80 e1 c0 10 00 40 test BYTE PTR [eax+0x10c0e1],0x40
1049f8: 74 03 je 1049fd <tolower+0x10>
1049fa: 83 c0 20 add eax,0x20
1049fd: c3 ret
...
00104a00 <DmaSetAddress>:
104a00: 8a 54 24 04 mov dl,BYTE PTR [esp+0x4]
104a04: 8a 44 24 08 mov al,BYTE PTR [esp+0x8]
104a08: 8a 4c 24 0c mov cl,BYTE PTR [esp+0xc]
104a0c: 80 fa 07 cmp dl,0x7
104a0f: 77 49 ja 104a5a <DmaSetAddress+0x5a>
104a11: 81 e2 ff 00 00 00 and edx,0xff
104a17: ff 24 95 58 a6 10 00 jmp DWORD PTR [edx*4+0x10a658]
104a1e: ba 00 00 00 00 mov edx,0x0
104a23: eb 2f jmp 104a54 <DmaSetAddress+0x54>
104a25: ba 04 00 00 00 mov edx,0x4
104a2a: eb 28 jmp 104a54 <DmaSetAddress+0x54>
104a2c: ba 06 00 00 00 mov edx,0x6
104a31: eb 21 jmp 104a54 <DmaSetAddress+0x54>
104a33: ba c0 00 00 00 mov edx,0xc0
104a38: eb 1a jmp 104a54 <DmaSetAddress+0x54>
104a3a: ba c4 00 00 00 mov edx,0xc4
104a3f: eb 13 jmp 104a54 <DmaSetAddress+0x54>
104a41: ba c8 00 00 00 mov edx,0xc8
104a46: eb 0c jmp 104a54 <DmaSetAddress+0x54>
104a48: ba cc 00 00 00 mov edx,0xcc
104a4d: eb 05 jmp 104a54 <DmaSetAddress+0x54>
104a4f: ba 02 00 00 00 mov edx,0x2
104a54: ee out dx,al
104a55: e6 80 out 0x80,al
104a57: 88 c8 mov al,cl
104a59: ee out dx,al
104a5a: c3 ret
00104a5b <DmaSetCount>:
104a5b: 8a 54 24 04 mov dl,BYTE PTR [esp+0x4]
104a5f: 8a 44 24 08 mov al,BYTE PTR [esp+0x8]
104a63: 8a 4c 24 0c mov cl,BYTE PTR [esp+0xc]
104a67: 80 fa 07 cmp dl,0x7
104a6a: 77 49 ja 104ab5 <DmaSetCount+0x5a>
104a6c: 81 e2 ff 00 00 00 and edx,0xff
104a72: ff 24 95 78 a6 10 00 jmp DWORD PTR [edx*4+0x10a678]
104a79: ba 01 00 00 00 mov edx,0x1
104a7e: eb 2f jmp 104aaf <DmaSetCount+0x54>
104a80: ba 05 00 00 00 mov edx,0x5
104a85: eb 28 jmp 104aaf <DmaSetCount+0x54>
104a87: ba 07 00 00 00 mov edx,0x7
104a8c: eb 21 jmp 104aaf <DmaSetCount+0x54>
104a8e: ba c2 00 00 00 mov edx,0xc2
104a93: eb 1a jmp 104aaf <DmaSetCount+0x54>
104a95: ba c6 00 00 00 mov edx,0xc6
104a9a: eb 13 jmp 104aaf <DmaSetCount+0x54>
104a9c: ba ca 00 00 00 mov edx,0xca
104aa1: eb 0c jmp 104aaf <DmaSetCount+0x54>
104aa3: ba ce 00 00 00 mov edx,0xce
104aa8: eb 05 jmp 104aaf <DmaSetCount+0x54>
104aaa: ba 03 00 00 00 mov edx,0x3
104aaf: ee out dx,al
104ab0: e6 80 out 0x80,al
104ab2: 88 c8 mov al,cl
104ab4: ee out dx,al
104ab5: c3 ret
00104ab6 <DmaSetExternalPageRegisters>:
104ab6: 8a 54 24 04 mov dl,BYTE PTR [esp+0x4]
104aba: 8a 44 24 08 mov al,BYTE PTR [esp+0x8]
104abe: 80 fa 07 cmp dl,0x7
104ac1: 77 36 ja 104af9 <DmaSetExternalPageRegisters+0x43>
104ac3: 81 e2 ff 00 00 00 and edx,0xff
104ac9: ff 24 95 98 a6 10 00 jmp DWORD PTR [edx*4+0x10a698]
104ad0: ba 83 00 00 00 mov edx,0x83
104ad5: eb 21 jmp 104af8 <DmaSetExternalPageRegisters+0x42>
104ad7: ba 82 00 00 00 mov edx,0x82
104adc: eb 1a jmp 104af8 <DmaSetExternalPageRegisters+0x42>
104ade: ba 8b 00 00 00 mov edx,0x8b
104ae3: eb 13 jmp 104af8 <DmaSetExternalPageRegisters+0x42>
104ae5: ba 89 00 00 00 mov edx,0x89
104aea: eb 0c jmp 104af8 <DmaSetExternalPageRegisters+0x42>
104aec: ba 8a 00 00 00 mov edx,0x8a
104af1: eb 05 jmp 104af8 <DmaSetExternalPageRegisters+0x42>
104af3: ba 81 00 00 00 mov edx,0x81
104af8: ee out dx,al
104af9: c3 ret
00104afa <DmaResetFlipFlop>:
104afa: ba d8 00 00 00 mov edx,0xd8
104aff: 80 7c 24 04 03 cmp BYTE PTR [esp+0x4],0x3
104b04: 77 02 ja 104b08 <DmaResetFlipFlop+0xe>
104b06: b2 0c mov dl,0xc
104b08: b0 00 mov al,0x0
104b0a: ee out dx,al
104b0b: c3 ret
00104b0c <DmaReset>:
104b0c: b0 00 mov al,0x0
104b0e: e6 0d out 0xd,al
104b10: c3 ret
00104b11 <DmaUnmaskAll>:
104b11: b0 00 mov al,0x0
104b13: e6 0e out 0xe,al
104b15: c3 ret
00104b16 <DmaMaskChannel>:
104b16: 8a 44 24 04 mov al,BYTE PTR [esp+0x4]
104b1a: 3c 07 cmp al,0x7
104b1c: 77 12 ja 104b30 <DmaMaskChannel+0x1a>
104b1e: ba d4 00 00 00 mov edx,0xd4
104b23: 3c 03 cmp al,0x3
104b25: 77 02 ja 104b29 <DmaMaskChannel+0x13>
104b27: b2 0a mov dl,0xa
104b29: 83 e0 03 and eax,0x3
104b2c: 83 c8 04 or eax,0x4
104b2f: ee out dx,al
104b30: c3 ret
00104b31 <DmaUnmaskChannel>:
104b31: 8a 44 24 04 mov al,BYTE PTR [esp+0x4]
104b35: 3c 07 cmp al,0x7
104b37: 77 0f ja 104b48 <DmaUnmaskChannel+0x17>
104b39: ba d4 00 00 00 mov edx,0xd4
104b3e: 3c 03 cmp al,0x3
104b40: 77 02 ja 104b44 <DmaUnmaskChannel+0x13>
104b42: b2 0a mov dl,0xa
104b44: 83 e0 03 and eax,0x3
104b47: ee out dx,al
104b48: c3 ret
00104b49 <DmaSetMode>:
104b49: 56 push esi
104b4a: 53 push ebx
104b4b: 83 ec 08 sub esp,0x8
104b4e: 8a 44 24 14 mov al,BYTE PTR [esp+0x14]
104b52: 88 44 24 07 mov BYTE PTR [esp+0x7],al
104b56: 0f b6 74 24 18 movzx esi,BYTE PTR [esp+0x18]
104b5b: 3c 07 cmp al,0x7
104b5d: 77 2c ja 104b8b <DmaSetMode+0x42>
104b5f: bb d6 00 00 00 mov ebx,0xd6
104b64: 3c 03 cmp al,0x3
104b66: 77 02 ja 104b6a <DmaSetMode+0x21>
104b68: b3 0b mov bl,0xb
104b6a: 31 c0 xor eax,eax
104b6c: 8a 44 24 07 mov al,BYTE PTR [esp+0x7]
104b70: 89 04 24 mov DWORD PTR [esp],eax
104b73: e8 9e ff ff ff call 104b16 <DmaMaskChannel>
104b78: 8a 44 24 07 mov al,BYTE PTR [esp+0x7]
104b7c: 83 e0 03 and eax,0x3
104b7f: 09 c6 or esi,eax
104b81: 89 da mov edx,ebx
104b83: 89 f0 mov eax,esi
104b85: ee out dx,al
104b86: e8 86 ff ff ff call 104b11 <DmaUnmaskAll>
104b8b: 83 c4 08 add esp,0x8
104b8e: 5b pop ebx
104b8f: 5e pop esi
104b90: c3 ret
104b91: 00 00 add BYTE PTR [eax],al
...
00104b94 <DriversInstall_Clock>:
104b94: 83 ec 5c sub esp,0x5c
104b97: c7 04 24 64 00 00 00 mov DWORD PTR [esp],0x64
104b9e: e8 a1 3f 00 00 call 108b44 <PitSetFrequency>
104ba3: 8d 44 24 44 lea eax,[esp+0x44]
104ba7: 89 04 24 mov DWORD PTR [esp],eax
104baa: e8 61 d8 ff ff call 102410 <CmosGetRTC>
104baf: 8d 44 24 38 lea eax,[esp+0x38]
104bb3: 8b 54 24 44 mov edx,DWORD PTR [esp+0x44]
104bb7: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
104bbb: 8b 54 24 48 mov edx,DWORD PTR [esp+0x48]
104bbf: 89 54 24 08 mov DWORD PTR [esp+0x8],edx
104bc3: 8b 54 24 4c mov edx,DWORD PTR [esp+0x4c]
104bc7: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
104bcb: 89 04 24 mov DWORD PTR [esp],eax
104bce: e8 b9 44 00 00 call 10908c <ConvertTimeToTimeSystem>
104bd3: 83 ec 04 sub esp,0x4
104bd6: 8b 44 24 38 mov eax,DWORD PTR [esp+0x38]
104bda: 8b 54 24 3c mov edx,DWORD PTR [esp+0x3c]
104bde: 89 04 24 mov DWORD PTR [esp],eax
104be1: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
104be5: e8 84 47 00 00 call 10936e <TimeSetInternalTime>
104bea: 66 8b 44 24 4e mov ax,WORD PTR [esp+0x4e]
104bef: 25 ff ff 00 00 and eax,0xffff
104bf4: 89 44 24 28 mov DWORD PTR [esp+0x28],eax
104bf8: 31 c0 xor eax,eax
104bfa: 8a 44 24 4d mov al,BYTE PTR [esp+0x4d]
104bfe: 89 44 24 24 mov DWORD PTR [esp+0x24],eax
104c02: 31 c0 xor eax,eax
104c04: 8a 44 24 4c mov al,BYTE PTR [esp+0x4c]
104c08: 89 44 24 20 mov DWORD PTR [esp+0x20],eax
104c0c: 31 c0 xor eax,eax
104c0e: 8a 44 24 4b mov al,BYTE PTR [esp+0x4b]
104c12: 89 44 24 1c mov DWORD PTR [esp+0x1c],eax
104c16: 8b 44 24 44 mov eax,DWORD PTR [esp+0x44]
104c1a: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
104c1e: 31 c0 xor eax,eax
104c20: 8a 44 24 4a mov al,BYTE PTR [esp+0x4a]
104c24: 89 44 24 14 mov DWORD PTR [esp+0x14],eax
104c28: 31 c0 xor eax,eax
104c2a: 8a 44 24 48 mov al,BYTE PTR [esp+0x48]
104c2e: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
104c32: c7 44 24 0c 0b 00 00 mov DWORD PTR [esp+0xc],0xb
104c39: 00
104c3a: c7 44 24 08 b8 a6 10 mov DWORD PTR [esp+0x8],0x10a6b8
104c41: 00
104c42: c7 44 24 04 06 a7 10 mov DWORD PTR [esp+0x4],0x10a706
104c49: 00
104c4a: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
104c51: e8 32 26 00 00 call 107288 <LogWrite>
104c56: 83 c4 5c add esp,0x5c
104c59: c3 ret
00104c5a <DriversInstall>:
104c5a: 83 ec 1c sub esp,0x1c
104c5d: e8 32 ff ff ff call 104b94 <DriversInstall_Clock>
104c62: c7 44 24 08 e0 a6 10 mov DWORD PTR [esp+0x8],0x10a6e0
104c69: 00
104c6a: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
104c71: 00
104c72: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
104c79: e8 0a 26 00 00 call 107288 <LogWrite>
104c7e: 83 c4 1c add esp,0x1c
104c81: c3 ret
...
00104c84 <DynamicArrayCreate>:
104c84: 53 push ebx
104c85: 83 ec 18 sub esp,0x18
104c88: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
104c8c: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
104c90: 89 43 04 mov DWORD PTR [ebx+0x4],eax
104c93: c7 43 08 00 00 00 00 mov DWORD PTR [ebx+0x8],0x0
104c9a: c7 43 0c 10 00 00 00 mov DWORD PTR [ebx+0xc],0x10
104ca1: c1 e0 04 shl eax,0x4
104ca4: 89 04 24 mov DWORD PTR [esp],eax
104ca7: e8 f5 34 00 00 call 1081a1 <kmalloc>
104cac: 89 03 mov DWORD PTR [ebx],eax
104cae: 83 c4 18 add esp,0x18
104cb1: 5b pop ebx
104cb2: c3 ret
00104cb3 <DynamicArrayPush>:
104cb3: 53 push ebx
104cb4: 83 ec 18 sub esp,0x18
104cb7: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
104cbb: 8b 43 0c mov eax,DWORD PTR [ebx+0xc]
104cbe: 3b 43 08 cmp eax,DWORD PTR [ebx+0x8]
104cc1: 77 1a ja 104cdd <DynamicArrayPush+0x2a>
104cc3: 83 c0 10 add eax,0x10
104cc6: 89 43 0c mov DWORD PTR [ebx+0xc],eax
104cc9: 0f af 43 04 imul eax,DWORD PTR [ebx+0x4]
104ccd: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104cd1: 8b 03 mov eax,DWORD PTR [ebx]
104cd3: 89 04 24 mov DWORD PTR [esp],eax
104cd6: e8 f2 35 00 00 call 1082cd <kmrealloc>
104cdb: 89 03 mov DWORD PTR [ebx],eax
104cdd: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
104ce0: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
104ce4: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
104ce8: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
104cec: 0f af 43 08 imul eax,DWORD PTR [ebx+0x8]
104cf0: 03 03 add eax,DWORD PTR [ebx]
104cf2: 89 04 24 mov DWORD PTR [esp],eax
104cf5: e8 ae 32 00 00 call 107fa8 <memcpy>
104cfa: ff 43 08 inc DWORD PTR [ebx+0x8]
104cfd: 83 c4 18 add esp,0x18
104d00: 5b pop ebx
104d01: c3 ret
00104d02 <DynamicArrayPop>:
104d02: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
104d06: ff 48 08 dec DWORD PTR [eax+0x8]
104d09: c3 ret
00104d0a <DynamicArrayInsert>:
104d0a: 57 push edi
104d0b: 56 push esi
104d0c: 53 push ebx
104d0d: 83 ec 10 sub esp,0x10
104d10: 8b 5c 24 28 mov ebx,DWORD PTR [esp+0x28]
104d14: 8b 43 0c mov eax,DWORD PTR [ebx+0xc]
104d17: 3b 43 08 cmp eax,DWORD PTR [ebx+0x8]
104d1a: 77 1a ja 104d36 <DynamicArrayInsert+0x2c>
104d1c: 83 c0 10 add eax,0x10
104d1f: 89 43 0c mov DWORD PTR [ebx+0xc],eax
104d22: 0f af 43 04 imul eax,DWORD PTR [ebx+0x4]
104d26: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104d2a: 8b 03 mov eax,DWORD PTR [ebx]
104d2c: 89 04 24 mov DWORD PTR [esp],eax
104d2f: e8 99 35 00 00 call 1082cd <kmrealloc>
104d34: 89 03 mov DWORD PTR [ebx],eax
104d36: 8b 13 mov edx,DWORD PTR [ebx]
104d38: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
104d3b: 8b 74 24 24 mov esi,DWORD PTR [esp+0x24]
104d3f: 0f af f0 imul esi,eax
104d42: 0f af 43 08 imul eax,DWORD PTR [ebx+0x8]
104d46: 48 dec eax
104d47: 39 c6 cmp esi,eax
104d49: 77 12 ja 104d5d <DynamicArrayInsert+0x53>
104d4b: 8d 0c 02 lea ecx,[edx+eax*1]
104d4e: 89 cf mov edi,ecx
104d50: 03 7b 04 add edi,DWORD PTR [ebx+0x4]
104d53: 8a 0c 02 mov cl,BYTE PTR [edx+eax*1]
104d56: 88 0f mov BYTE PTR [edi],cl
104d58: 48 dec eax
104d59: 39 c6 cmp esi,eax
104d5b: 76 ee jbe 104d4b <DynamicArrayInsert+0x41>
104d5d: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
104d60: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
104d64: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
104d68: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
104d6c: 03 33 add esi,DWORD PTR [ebx]
104d6e: 89 34 24 mov DWORD PTR [esp],esi
104d71: e8 32 32 00 00 call 107fa8 <memcpy>
104d76: ff 43 08 inc DWORD PTR [ebx+0x8]
104d79: 83 c4 10 add esp,0x10
104d7c: 5b pop ebx
104d7d: 5e pop esi
104d7e: 5f pop edi
104d7f: c3 ret
00104d80 <DynamicArrayRemove>:
104d80: 56 push esi
104d81: 53 push ebx
104d82: 8b 5c 24 10 mov ebx,DWORD PTR [esp+0x10]
104d86: 8b 13 mov edx,DWORD PTR [ebx]
104d88: 8b 4b 04 mov ecx,DWORD PTR [ebx+0x4]
104d8b: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
104d8f: 0f af c1 imul eax,ecx
104d92: 8b 73 08 mov esi,DWORD PTR [ebx+0x8]
104d95: 4e dec esi
104d96: 0f af f1 imul esi,ecx
104d99: 39 f0 cmp eax,esi
104d9b: 73 10 jae 104dad <DynamicArrayRemove+0x2d>
104d9d: 8d 0c 02 lea ecx,[edx+eax*1]
104da0: 03 4b 04 add ecx,DWORD PTR [ebx+0x4]
104da3: 8a 09 mov cl,BYTE PTR [ecx]
104da5: 88 0c 02 mov BYTE PTR [edx+eax*1],cl
104da8: 40 inc eax
104da9: 39 c6 cmp esi,eax
104dab: 77 f0 ja 104d9d <DynamicArrayRemove+0x1d>
104dad: ff 4b 08 dec DWORD PTR [ebx+0x8]
104db0: 5b pop ebx
104db1: 5e pop esi
104db2: c3 ret
00104db3 <DynamicArraySwap>:
104db3: 56 push esi
104db4: 53 push ebx
104db5: 83 ec 04 sub esp,0x4
104db8: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
104dbc: 8b 16 mov edx,DWORD PTR [esi]
104dbe: 8b 46 04 mov eax,DWORD PTR [esi+0x4]
104dc1: 8b 4c 24 10 mov ecx,DWORD PTR [esp+0x10]
104dc5: 0f af c8 imul ecx,eax
104dc8: 8b 5c 24 14 mov ebx,DWORD PTR [esp+0x14]
104dcc: 0f af d8 imul ebx,eax
104dcf: 85 c0 test eax,eax
104dd1: 74 23 je 104df6 <DynamicArraySwap+0x43>
104dd3: b8 00 00 00 00 mov eax,0x0
104dd8: 01 d1 add ecx,edx
104dda: 01 da add edx,ebx
104ddc: 8a 1c 01 mov bl,BYTE PTR [ecx+eax*1]
104ddf: 88 5c 24 03 mov BYTE PTR [esp+0x3],bl
104de3: 8a 1c 02 mov bl,BYTE PTR [edx+eax*1]
104de6: 88 1c 01 mov BYTE PTR [ecx+eax*1],bl
104de9: 8a 5c 24 03 mov bl,BYTE PTR [esp+0x3]
104ded: 88 1c 02 mov BYTE PTR [edx+eax*1],bl
104df0: 40 inc eax
104df1: 39 46 04 cmp DWORD PTR [esi+0x4],eax
104df4: 77 e6 ja 104ddc <DynamicArraySwap+0x29>
104df6: 83 c4 04 add esp,0x4
104df9: 5b pop ebx
104dfa: 5e pop esi
104dfb: c3 ret
00104dfc <DynamicArrayDispose>:
104dfc: 53 push ebx
104dfd: 83 ec 18 sub esp,0x18
104e00: 8b 5c 24 20 mov ebx,DWORD PTR [esp+0x20]
104e04: 8b 03 mov eax,DWORD PTR [ebx]
104e06: 89 04 24 mov DWORD PTR [esp],eax
104e09: e8 fa 34 00 00 call 108308 <kfree>
104e0e: c7 43 0c 00 00 00 00 mov DWORD PTR [ebx+0xc],0x0
104e15: c7 43 08 00 00 00 00 mov DWORD PTR [ebx+0x8],0x0
104e1c: c7 43 04 00 00 00 00 mov DWORD PTR [ebx+0x4],0x0
104e23: 83 c4 18 add esp,0x18
104e26: 5b pop ebx
104e27: c3 ret
00104e28 <FloppyIrqHandler>:
104e28: c6 05 0e d0 10 00 01 mov BYTE PTR ds:0x10d00e,0x1
104e2f: c3 ret
00104e30 <FloppyWaitIrq>:
104e30: 83 ec 1c sub esp,0x1c
104e33: a1 a0 c2 10 00 mov eax,ds:0x10c2a0
104e38: 89 04 24 mov DWORD PTR [esp],eax
104e3b: e8 52 45 00 00 call 109392 <TimerStart>
104e40: a0 0e d0 10 00 mov al,ds:0x10d00e
104e45: 84 c0 test al,al
104e47: 75 09 jne 104e52 <FloppyWaitIrq+0x22>
104e49: e8 93 45 00 00 call 1093e1 <TimerIsDone>
104e4e: 84 c0 test al,al
104e50: 74 ee je 104e40 <FloppyWaitIrq+0x10>
104e52: a0 0e d0 10 00 mov al,ds:0x10d00e
104e57: 84 c0 test al,al
104e59: 75 25 jne 104e80 <FloppyWaitIrq+0x50>
104e5b: a1 a0 c2 10 00 mov eax,ds:0x10c2a0
104e60: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
104e64: c7 44 24 08 15 a7 10 mov DWORD PTR [esp+0x8],0x10a715
104e6b: 00
104e6c: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
104e73: 00
104e74: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
104e7b: e8 08 24 00 00 call 107288 <LogWrite>
104e80: 83 c4 1c add esp,0x1c
104e83: c3 ret
00104e84 <FloppyInitDma>:
104e84: 83 ec 1c sub esp,0x1c
104e87: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
104e8e: e8 83 fc ff ff call 104b16 <DmaMaskChannel>
104e93: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
104e9a: e8 5b fc ff ff call 104afa <DmaResetFlipFlop>
104e9f: c7 44 24 08 10 00 00 mov DWORD PTR [esp+0x8],0x10
104ea6: 00
104ea7: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
104eae: 00
104eaf: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
104eb6: e8 45 fb ff ff call 104a00 <DmaSetAddress>
104ebb: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
104ec2: e8 33 fc ff ff call 104afa <DmaResetFlipFlop>
104ec7: c7 44 24 08 23 00 00 mov DWORD PTR [esp+0x8],0x23
104ece: 00
104ecf: c7 44 24 04 ff 00 00 mov DWORD PTR [esp+0x4],0xff
104ed6: 00
104ed7: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
104ede: e8 78 fb ff ff call 104a5b <DmaSetCount>
104ee3: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
104eea: 00
104eeb: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
104ef2: e8 bf fb ff ff call 104ab6 <DmaSetExternalPageRegisters>
104ef7: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
104efe: e8 2e fc ff ff call 104b31 <DmaUnmaskChannel>
104f03: 83 c4 1c add esp,0x1c
104f06: c3 ret
00104f07 <FloppySendCommand>:
104f07: 53 push ebx
104f08: 83 ec 28 sub esp,0x28
104f0b: 8a 44 24 30 mov al,BYTE PTR [esp+0x30]
104f0f: 88 44 24 1f mov BYTE PTR [esp+0x1f],al
104f13: bb 88 13 00 00 mov ebx,0x1388
104f18: eb 03 jmp 104f1d <FloppySendCommand+0x16>
104f1a: 4b dec ebx
104f1b: 74 10 je 104f2d <FloppySendCommand+0x26>
104f1d: c7 04 24 f4 03 00 00 mov DWORD PTR [esp],0x3f4
104f24: e8 4f 3c 00 00 call 108b78 <inportb>
104f29: 84 c0 test al,al
104f2b: 79 ed jns 104f1a <FloppySendCommand+0x13>
104f2d: ba f5 03 00 00 mov edx,0x3f5
104f32: 8a 44 24 1f mov al,BYTE PTR [esp+0x1f]
104f36: ee out dx,al
104f37: 83 c4 28 add esp,0x28
104f3a: 5b pop ebx
104f3b: c3 ret
00104f3c <FloppyConfigure>:
104f3c: 83 ec 1c sub esp,0x1c
104f3f: c7 04 24 13 00 00 00 mov DWORD PTR [esp],0x13
104f46: e8 bc ff ff ff call 104f07 <FloppySendCommand>
104f4b: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
104f52: e8 b0 ff ff ff call 104f07 <FloppySendCommand>
104f57: c7 04 24 47 00 00 00 mov DWORD PTR [esp],0x47
104f5e: e8 a4 ff ff ff call 104f07 <FloppySendCommand>
104f63: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
104f6a: e8 98 ff ff ff call 104f07 <FloppySendCommand>
104f6f: 83 c4 1c add esp,0x1c
104f72: c3 ret
00104f73 <FloppyReadData>:
104f73: 53 push ebx
104f74: 83 ec 18 sub esp,0x18
104f77: bb 88 13 00 00 mov ebx,0x1388
104f7c: eb 03 jmp 104f81 <FloppyReadData+0xe>
104f7e: 4b dec ebx
104f7f: 74 10 je 104f91 <FloppyReadData+0x1e>
104f81: c7 04 24 f4 03 00 00 mov DWORD PTR [esp],0x3f4
104f88: e8 eb 3b 00 00 call 108b78 <inportb>
104f8d: 84 c0 test al,al
104f8f: 79 ed jns 104f7e <FloppyReadData+0xb>
104f91: c7 04 24 f5 03 00 00 mov DWORD PTR [esp],0x3f5
104f98: e8 db 3b 00 00 call 108b78 <inportb>
104f9d: 83 c4 18 add esp,0x18
104fa0: 5b pop ebx
104fa1: c3 ret
00104fa2 <FloppySenseInterrupt>:
104fa2: 83 ec 1c sub esp,0x1c
104fa5: c7 04 24 08 00 00 00 mov DWORD PTR [esp],0x8
104fac: e8 56 ff ff ff call 104f07 <FloppySendCommand>
104fb1: e8 bd ff ff ff call 104f73 <FloppyReadData>
104fb6: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
104fba: 88 02 mov BYTE PTR [edx],al
104fbc: e8 b2 ff ff ff call 104f73 <FloppyReadData>
104fc1: 8b 54 24 24 mov edx,DWORD PTR [esp+0x24]
104fc5: 88 02 mov BYTE PTR [edx],al
104fc7: 83 c4 1c add esp,0x1c
104fca: c3 ret
00104fcb <FloppySpecify>:
104fcb: 53 push ebx
104fcc: 83 ec 18 sub esp,0x18
104fcf: 8a 5c 24 20 mov bl,BYTE PTR [esp+0x20]
104fd3: c7 04 24 03 00 00 00 mov DWORD PTR [esp],0x3
104fda: e8 28 ff ff ff call 104f07 <FloppySendCommand>
104fdf: 81 e3 ff 00 00 00 and ebx,0xff
104fe5: 8d 04 9b lea eax,[ebx+ebx*4]
104fe8: 8d 1c c5 f0 c1 10 00 lea ebx,[eax*8+0x10c1f0]
104fef: 31 c0 xor eax,eax
104ff1: 8a 43 03 mov al,BYTE PTR [ebx+0x3]
104ff4: c1 e0 04 shl eax,0x4
104ff7: 0a 43 05 or al,BYTE PTR [ebx+0x5]
104ffa: 25 ff 00 00 00 and eax,0xff
104fff: 89 04 24 mov DWORD PTR [esp],eax
105002: e8 00 ff ff ff call 104f07 <FloppySendCommand>
105007: 8a 43 04 mov al,BYTE PTR [ebx+0x4]
10500a: 01 c0 add eax,eax
10500c: 25 ff 00 00 00 and eax,0xff
105011: 89 04 24 mov DWORD PTR [esp],eax
105014: e8 ee fe ff ff call 104f07 <FloppySendCommand>
105019: 83 c4 18 add esp,0x18
10501c: 5b pop ebx
10501d: c3 ret
0010501e <FloppyMotor>:
10501e: 56 push esi
10501f: 53 push ebx
105020: 83 ec 24 sub esp,0x24
105023: 8a 5c 24 30 mov bl,BYTE PTR [esp+0x30]
105027: 8a 44 24 34 mov al,BYTE PTR [esp+0x34]
10502b: 88 44 24 1f mov BYTE PTR [esp+0x1f],al
10502f: 80 fb 01 cmp bl,0x1
105032: 0f 87 af 00 00 00 ja 1050e7 <FloppyMotor+0xc9>
105038: 0f b6 35 0d d0 10 00 movzx esi,BYTE PTR ds:0x10d00d
10503f: 84 db test bl,bl
105041: 75 07 jne 10504a <FloppyMotor+0x2c>
105043: 0f b6 35 0c d0 10 00 movzx esi,BYTE PTR ds:0x10d00c
10504a: c7 04 24 f2 03 00 00 mov DWORD PTR [esp],0x3f2
105051: e8 22 3b 00 00 call 108b78 <inportb>
105056: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
10505b: 74 14 je 105071 <FloppyMotor+0x53>
10505d: 81 e3 ff 00 00 00 and ebx,0xff
105063: 8d 4b 04 lea ecx,[ebx+0x4]
105066: ba 01 00 00 00 mov edx,0x1
10506b: d3 e2 shl edx,cl
10506d: 09 d0 or eax,edx
10506f: eb 12 jmp 105083 <FloppyMotor+0x65>
105071: 81 e3 ff 00 00 00 and ebx,0xff
105077: 8d 4b 04 lea ecx,[ebx+0x4]
10507a: ba fe ff ff ff mov edx,0xfffffffe
10507f: d3 c2 rol edx,cl
105081: 21 d0 and eax,edx
105083: ba f2 03 00 00 mov edx,0x3f2
105088: ee out dx,al
105089: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
10508e: 74 1a je 1050aa <FloppyMotor+0x8c>
105090: 81 e6 ff 00 00 00 and esi,0xff
105096: 8d 04 b6 lea eax,[esi+esi*4]
105099: 8b 04 c5 f8 c1 10 00 mov eax,DWORD PTR [eax*8+0x10c1f8]
1050a0: 89 04 24 mov DWORD PTR [esp],eax
1050a3: e8 ea 42 00 00 call 109392 <TimerStart>
1050a8: eb 18 jmp 1050c2 <FloppyMotor+0xa4>
1050aa: 81 e6 ff 00 00 00 and esi,0xff
1050b0: 8d 04 b6 lea eax,[esi+esi*4]
1050b3: 8b 04 c5 fc c1 10 00 mov eax,DWORD PTR [eax*8+0x10c1fc]
1050ba: 89 04 24 mov DWORD PTR [esp],eax
1050bd: e8 d0 42 00 00 call 109392 <TimerStart>
1050c2: c7 44 24 08 2b a7 10 mov DWORD PTR [esp+0x8],0x10a72b
1050c9: 00
1050ca: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1050d1: 00
1050d2: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1050d9: e8 aa 21 00 00 call 107288 <LogWrite>
1050de: e8 fe 42 00 00 call 1093e1 <TimerIsDone>
1050e3: 84 c0 test al,al
1050e5: 74 f7 je 1050de <FloppyMotor+0xc0>
1050e7: 83 c4 24 add esp,0x24
1050ea: 5b pop ebx
1050eb: 5e pop esi
1050ec: c3 ret
001050ed <FloppySelectDrive>:
1050ed: 83 ec 1c sub esp,0x1c
1050f0: 8a 44 24 20 mov al,BYTE PTR [esp+0x20]
1050f4: 3c 01 cmp al,0x1
1050f6: 77 3a ja 105132 <FloppySelectDrive+0x45>
1050f8: 8a 0d 0d d0 10 00 mov cl,BYTE PTR ds:0x10d00d
1050fe: 84 c0 test al,al
105100: 75 06 jne 105108 <FloppySelectDrive+0x1b>
105102: 8a 0d 0c d0 10 00 mov cl,BYTE PTR ds:0x10d00c
105108: 81 e1 ff 00 00 00 and ecx,0xff
10510e: 8d 04 89 lea eax,[ecx+ecx*4]
105111: 8a 04 c5 f1 c1 10 00 mov al,BYTE PTR [eax*8+0x10c1f1]
105118: ba f7 03 00 00 mov edx,0x3f7
10511d: ee out dx,al
10511e: 89 0c 24 mov DWORD PTR [esp],ecx
105121: e8 a5 fe ff ff call 104fcb <FloppySpecify>
105126: c7 04 24 f2 03 00 00 mov DWORD PTR [esp],0x3f2
10512d: e8 46 3a 00 00 call 108b78 <inportb>
105132: 83 c4 1c add esp,0x1c
105135: c3 ret
00105136 <FloppyRecalibrate>:
105136: 57 push edi
105137: 56 push esi
105138: 53 push ebx
105139: 83 ec 20 sub esp,0x20
10513c: 8a 44 24 30 mov al,BYTE PTR [esp+0x30]
105140: 3c 01 cmp al,0x1
105142: 77 74 ja 1051b8 <FloppyRecalibrate+0x82>
105144: b3 0a mov bl,0xa
105146: 25 ff 00 00 00 and eax,0xff
10514b: 89 c6 mov esi,eax
10514d: 8d 7c 24 1e lea edi,[esp+0x1e]
105151: 31 d2 xor edx,edx
105153: 88 da mov dl,bl
105155: b8 0b 00 00 00 mov eax,0xb
10515a: 29 d0 sub eax,edx
10515c: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
105160: c7 44 24 08 41 a7 10 mov DWORD PTR [esp+0x8],0x10a741
105167: 00
105168: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
10516f: 00
105170: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105177: e8 0c 21 00 00 call 107288 <LogWrite>
10517c: c6 05 0e d0 10 00 00 mov BYTE PTR ds:0x10d00e,0x0
105183: c7 04 24 07 00 00 00 mov DWORD PTR [esp],0x7
10518a: e8 78 fd ff ff call 104f07 <FloppySendCommand>
10518f: 89 34 24 mov DWORD PTR [esp],esi
105192: e8 70 fd ff ff call 104f07 <FloppySendCommand>
105197: e8 94 fc ff ff call 104e30 <FloppyWaitIrq>
10519c: 89 7c 24 04 mov DWORD PTR [esp+0x4],edi
1051a0: 8d 44 24 1f lea eax,[esp+0x1f]
1051a4: 89 04 24 mov DWORD PTR [esp],eax
1051a7: e8 f6 fd ff ff call 104fa2 <FloppySenseInterrupt>
1051ac: 4b dec ebx
1051ad: f6 44 24 1f 20 test BYTE PTR [esp+0x1f],0x20
1051b2: 75 04 jne 1051b8 <FloppyRecalibrate+0x82>
1051b4: 84 db test bl,bl
1051b6: 75 99 jne 105151 <FloppyRecalibrate+0x1b>
1051b8: 83 c4 20 add esp,0x20
1051bb: 5b pop ebx
1051bc: 5e pop esi
1051bd: 5f pop edi
1051be: c3 ret
001051bf <FloppyReset>:
1051bf: 83 ec 1c sub esp,0x1c
1051c2: c6 05 0e d0 10 00 00 mov BYTE PTR ds:0x10d00e,0x0
1051c9: c7 44 24 08 5f a7 10 mov DWORD PTR [esp+0x8],0x10a75f
1051d0: 00
1051d1: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1051d8: 00
1051d9: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1051e0: e8 a3 20 00 00 call 107288 <LogWrite>
1051e5: b0 00 mov al,0x0
1051e7: ba f2 03 00 00 mov edx,0x3f2
1051ec: ee out dx,al
1051ed: b8 e8 03 00 00 mov eax,0x3e8
1051f2: 48 dec eax
1051f3: 75 fd jne 1051f2 <FloppyReset+0x33>
1051f5: b0 0c mov al,0xc
1051f7: ba f2 03 00 00 mov edx,0x3f2
1051fc: ee out dx,al
1051fd: 0f be 05 0c d0 10 00 movsx eax,BYTE PTR ds:0x10d00c
105204: 89 04 24 mov DWORD PTR [esp],eax
105207: e8 24 fc ff ff call 104e30 <FloppyWaitIrq>
10520c: 80 3d 0c d0 10 00 00 cmp BYTE PTR ds:0x10d00c,0x0
105213: 74 40 je 105255 <FloppyReset+0x96>
105215: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
10521c: 00
10521d: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105224: e8 f5 fd ff ff call 10501e <FloppyMotor>
105229: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105230: e8 b8 fe ff ff call 1050ed <FloppySelectDrive>
105235: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10523c: e8 f5 fe ff ff call 105136 <FloppyRecalibrate>
105241: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105248: 00
105249: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105250: e8 c9 fd ff ff call 10501e <FloppyMotor>
105255: 80 3d 0d d0 10 00 00 cmp BYTE PTR ds:0x10d00d,0x0
10525c: 74 40 je 10529e <FloppyReset+0xdf>
10525e: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
105265: 00
105266: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
10526d: e8 ac fd ff ff call 10501e <FloppyMotor>
105272: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
105279: e8 6f fe ff ff call 1050ed <FloppySelectDrive>
10527e: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
105285: e8 ac fe ff ff call 105136 <FloppyRecalibrate>
10528a: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105291: 00
105292: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
105299: e8 80 fd ff ff call 10501e <FloppyMotor>
10529e: 83 c4 1c add esp,0x1c
1052a1: c3 ret
001052a2 <FloppyInitialize>:
1052a2: 57 push edi
1052a3: 56 push esi
1052a4: 53 push ebx
1052a5: 83 ec 30 sub esp,0x30
1052a8: c7 04 24 10 00 00 00 mov DWORD PTR [esp],0x10
1052af: e8 24 ce ff ff call 1020d8 <CmosRead>
1052b4: 88 c2 mov dl,al
1052b6: c0 ea 04 shr dl,0x4
1052b9: 88 15 0c d0 10 00 mov BYTE PTR ds:0x10d00c,dl
1052bf: 83 e0 0f and eax,0xf
1052c2: a2 0d d0 10 00 mov ds:0x10d00d,al
1052c7: 80 fa 06 cmp dl,0x6
1052ca: 7e 07 jle 1052d3 <FloppyInitialize+0x31>
1052cc: c6 05 0c d0 10 00 00 mov BYTE PTR ds:0x10d00c,0x0
1052d3: 3c 06 cmp al,0x6
1052d5: 7e 07 jle 1052de <FloppyInitialize+0x3c>
1052d7: c6 05 0d d0 10 00 00 mov BYTE PTR ds:0x10d00d,0x0
1052de: 80 3d 0c d0 10 00 00 cmp BYTE PTR ds:0x10d00c,0x0
1052e5: 75 32 jne 105319 <FloppyInitialize+0x77>
1052e7: 80 3d 0d d0 10 00 00 cmp BYTE PTR ds:0x10d00d,0x0
1052ee: 75 29 jne 105319 <FloppyInitialize+0x77>
1052f0: c7 44 24 08 dc a7 10 mov DWORD PTR [esp+0x8],0x10a7dc
1052f7: 00
1052f8: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1052ff: 00
105300: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
105307: e8 7c 1f 00 00 call 107288 <LogWrite>
10530c: b0 00 mov al,0x0
10530e: ba f2 03 00 00 mov edx,0x3f2
105313: ee out dx,al
105314: e9 7f 01 00 00 jmp 105498 <FloppyInitialize+0x1f6>
105319: 0f be 05 0d d0 10 00 movsx eax,BYTE PTR ds:0x10d00d
105320: 8d 04 80 lea eax,[eax+eax*4]
105323: 8b 34 c5 04 c2 10 00 mov esi,DWORD PTR [eax*8+0x10c204]
10532a: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
105331: 00
105332: c7 04 24 03 00 00 00 mov DWORD PTR [esp],0x3
105339: e8 f5 d5 ff ff call 102933 <Color>
10533e: 88 c3 mov bl,al
105340: 0f be 05 0c d0 10 00 movsx eax,BYTE PTR ds:0x10d00c
105347: 8d 04 80 lea eax,[eax+eax*4]
10534a: 8b 3c c5 04 c2 10 00 mov edi,DWORD PTR [eax*8+0x10c204]
105351: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
105358: 00
105359: c7 04 24 03 00 00 00 mov DWORD PTR [esp],0x3
105360: e8 ce d5 ff ff call 102933 <Color>
105365: 89 74 24 20 mov DWORD PTR [esp+0x20],esi
105369: 81 e3 ff 00 00 00 and ebx,0xff
10536f: 89 5c 24 1c mov DWORD PTR [esp+0x1c],ebx
105373: c7 44 24 18 0b 00 00 mov DWORD PTR [esp+0x18],0xb
10537a: 00
10537b: 89 7c 24 14 mov DWORD PTR [esp+0x14],edi
10537f: 25 ff 00 00 00 and eax,0xff
105384: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
105388: c7 44 24 0c 0b 00 00 mov DWORD PTR [esp+0xc],0xb
10538f: 00
105390: c7 44 24 08 00 a8 10 mov DWORD PTR [esp+0x8],0x10a800
105397: 00
105398: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
10539f: 00
1053a0: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1053a7: e8 dc 1e 00 00 call 107288 <LogWrite>
1053ac: e8 0e fe ff ff call 1051bf <FloppyReset>
1053b1: e8 86 fb ff ff call 104f3c <FloppyConfigure>
1053b6: c7 04 24 94 00 00 00 mov DWORD PTR [esp],0x94
1053bd: e8 45 fb ff ff call 104f07 <FloppySendCommand>
1053c2: e8 ac fb ff ff call 104f73 <FloppyReadData>
1053c7: 80 3d 0c d0 10 00 04 cmp BYTE PTR ds:0x10d00c,0x4
1053ce: 7e 18 jle 1053e8 <FloppyInitialize+0x146>
1053d0: c7 04 24 12 00 00 00 mov DWORD PTR [esp],0x12
1053d7: e8 2b fb ff ff call 104f07 <FloppySendCommand>
1053dc: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
1053e3: e8 1f fb ff ff call 104f07 <FloppySendCommand>
1053e8: 80 3d 0d d0 10 00 04 cmp BYTE PTR ds:0x10d00d,0x4
1053ef: 7e 18 jle 105409 <FloppyInitialize+0x167>
1053f1: c7 04 24 12 00 00 00 mov DWORD PTR [esp],0x12
1053f8: e8 0a fb ff ff call 104f07 <FloppySendCommand>
1053fd: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
105404: e8 fe fa ff ff call 104f07 <FloppySendCommand>
105409: e8 76 fa ff ff call 104e84 <FloppyInitDma>
10540e: a0 0c d0 10 00 mov al,ds:0x10d00c
105413: 84 c0 test al,al
105415: 74 3c je 105453 <FloppyInitialize+0x1b1>
105417: 0f be c0 movsx eax,al
10541a: 8d 04 80 lea eax,[eax+eax*4]
10541d: 8b 04 c5 e4 c1 10 00 mov eax,DWORD PTR [eax*8+0x10c1e4]
105424: c1 e0 09 shl eax,0x9
105427: 3d 00 24 00 00 cmp eax,0x2400
10542c: 76 05 jbe 105433 <FloppyInitialize+0x191>
10542e: b8 00 24 00 00 mov eax,0x2400
105433: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
105437: c7 44 24 08 bc 5a 10 mov DWORD PTR [esp+0x8],0x105abc
10543e: 00
10543f: c7 44 24 04 c6 58 10 mov DWORD PTR [esp+0x4],0x1058c6
105446: 00
105447: c7 04 24 6d a7 10 00 mov DWORD PTR [esp],0x10a76d
10544e: e8 a6 42 00 00 call 1096f9 <VfsMount>
105453: a0 0d d0 10 00 mov al,ds:0x10d00d
105458: 84 c0 test al,al
10545a: 74 3c je 105498 <FloppyInitialize+0x1f6>
10545c: 0f be c0 movsx eax,al
10545f: 8d 04 80 lea eax,[eax+eax*4]
105462: 8b 04 c5 e4 c1 10 00 mov eax,DWORD PTR [eax*8+0x10c1e4]
105469: c1 e0 09 shl eax,0x9
10546c: 3d 00 24 00 00 cmp eax,0x2400
105471: 76 05 jbe 105478 <FloppyInitialize+0x1d6>
105473: b8 00 24 00 00 mov eax,0x2400
105478: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
10547c: c7 44 24 08 85 5a 10 mov DWORD PTR [esp+0x8],0x105a85
105483: 00
105484: c7 44 24 04 84 58 10 mov DWORD PTR [esp+0x4],0x105884
10548b: 00
10548c: c7 04 24 71 a7 10 00 mov DWORD PTR [esp],0x10a771
105493: e8 61 42 00 00 call 1096f9 <VfsMount>
105498: 83 c4 30 add esp,0x30
10549b: 5b pop ebx
10549c: 5e pop esi
10549d: 5f pop edi
10549e: c3 ret
0010549f <FloppySeek>:
10549f: 55 push ebp
1054a0: 57 push edi
1054a1: 56 push esi
1054a2: 53 push ebx
1054a3: 83 ec 2c sub esp,0x2c
1054a6: 8a 44 24 40 mov al,BYTE PTR [esp+0x40]
1054aa: 0f b6 74 24 44 movzx esi,BYTE PTR [esp+0x44]
1054af: 8a 54 24 48 mov dl,BYTE PTR [esp+0x48]
1054b3: 3c 01 cmp al,0x1
1054b5: 0f 87 8f 00 00 00 ja 10554a <FloppySeek+0xab>
1054bb: 8d 3c 95 00 00 00 00 lea edi,[edx*4+0x0]
1054c2: 09 f8 or eax,edi
1054c4: 25 ff 00 00 00 and eax,0xff
1054c9: 89 c7 mov edi,eax
1054cb: b3 0a mov bl,0xa
1054cd: 89 f0 mov eax,esi
1054cf: 25 ff 00 00 00 and eax,0xff
1054d4: 89 c5 mov ebp,eax
1054d6: 31 d2 xor edx,edx
1054d8: 88 da mov dl,bl
1054da: b8 0b 00 00 00 mov eax,0xb
1054df: 29 d0 sub eax,edx
1054e1: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
1054e5: c7 44 24 08 75 a7 10 mov DWORD PTR [esp+0x8],0x10a775
1054ec: 00
1054ed: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1054f4: 00
1054f5: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1054fc: e8 87 1d 00 00 call 107288 <LogWrite>
105501: c6 05 0e d0 10 00 00 mov BYTE PTR ds:0x10d00e,0x0
105508: c7 04 24 0f 00 00 00 mov DWORD PTR [esp],0xf
10550f: e8 f3 f9 ff ff call 104f07 <FloppySendCommand>
105514: 89 3c 24 mov DWORD PTR [esp],edi
105517: e8 eb f9 ff ff call 104f07 <FloppySendCommand>
10551c: 89 2c 24 mov DWORD PTR [esp],ebp
10551f: e8 e3 f9 ff ff call 104f07 <FloppySendCommand>
105524: e8 07 f9 ff ff call 104e30 <FloppyWaitIrq>
105529: 8d 44 24 1e lea eax,[esp+0x1e]
10552d: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105531: 8d 44 24 1f lea eax,[esp+0x1f]
105535: 89 04 24 mov DWORD PTR [esp],eax
105538: e8 65 fa ff ff call 104fa2 <FloppySenseInterrupt>
10553d: 4b dec ebx
10553e: 89 f0 mov eax,esi
105540: 38 44 24 1e cmp BYTE PTR [esp+0x1e],al
105544: 74 04 je 10554a <FloppySeek+0xab>
105546: 84 db test bl,bl
105548: 75 8c jne 1054d6 <FloppySeek+0x37>
10554a: 83 c4 2c add esp,0x2c
10554d: 5b pop ebx
10554e: 5e pop esi
10554f: 5f pop edi
105550: 5d pop ebp
105551: c3 ret
00105552 <FloppyRW>:
105552: 55 push ebp
105553: 57 push edi
105554: 56 push esi
105555: 53 push ebx
105556: 83 ec 3c sub esp,0x3c
105559: 8a 44 24 50 mov al,BYTE PTR [esp+0x50]
10555d: 88 44 24 15 mov BYTE PTR [esp+0x15],al
105561: 8a 54 24 54 mov dl,BYTE PTR [esp+0x54]
105565: 8a 4c 24 58 mov cl,BYTE PTR [esp+0x58]
105569: 8a 44 24 5c mov al,BYTE PTR [esp+0x5c]
10556d: 88 44 24 16 mov BYTE PTR [esp+0x16],al
105571: 8a 44 24 60 mov al,BYTE PTR [esp+0x60]
105575: 88 44 24 17 mov BYTE PTR [esp+0x17],al
105579: 80 fa 01 cmp dl,0x1
10557c: 0f 87 7d 01 00 00 ja 1056ff <FloppyRW+0x1ad>
105582: a0 0d d0 10 00 mov al,ds:0x10d00d
105587: 84 d2 test dl,dl
105589: 75 05 jne 105590 <FloppyRW+0x3e>
10558b: a0 0c d0 10 00 mov al,ds:0x10d00c
105590: 81 e1 ff 00 00 00 and ecx,0xff
105596: 89 4c 24 18 mov DWORD PTR [esp+0x18],ecx
10559a: c1 e1 02 shl ecx,0x2
10559d: 09 ca or edx,ecx
10559f: 81 e2 ff 00 00 00 and edx,0xff
1055a5: 89 54 24 1c mov DWORD PTR [esp+0x1c],edx
1055a9: c6 44 24 14 0a mov BYTE PTR [esp+0x14],0xa
1055ae: 25 ff 00 00 00 and eax,0xff
1055b3: 89 c7 mov edi,eax
1055b5: 8d 2c 85 00 00 00 00 lea ebp,[eax*4+0x0]
1055bc: 31 c0 xor eax,eax
1055be: 8a 44 24 14 mov al,BYTE PTR [esp+0x14]
1055c2: ba 0b 00 00 00 mov edx,0xb
1055c7: 29 c2 sub edx,eax
1055c9: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
1055cd: c7 44 24 08 30 a8 10 mov DWORD PTR [esp+0x8],0x10a830
1055d4: 00
1055d5: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1055dc: 00
1055dd: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1055e4: e8 9f 1c 00 00 call 107288 <LogWrite>
1055e9: c6 05 0e d0 10 00 00 mov BYTE PTR ds:0x10d00e,0x0
1055f0: 80 7c 24 15 00 cmp BYTE PTR [esp+0x15],0x0
1055f5: 74 0e je 105605 <FloppyRW+0xb3>
1055f7: c7 04 24 c5 00 00 00 mov DWORD PTR [esp],0xc5
1055fe: e8 04 f9 ff ff call 104f07 <FloppySendCommand>
105603: eb 0c jmp 105611 <FloppyRW+0xbf>
105605: c7 04 24 c6 00 00 00 mov DWORD PTR [esp],0xc6
10560c: e8 f6 f8 ff ff call 104f07 <FloppySendCommand>
105611: 8b 44 24 1c mov eax,DWORD PTR [esp+0x1c]
105615: 89 04 24 mov DWORD PTR [esp],eax
105618: e8 ea f8 ff ff call 104f07 <FloppySendCommand>
10561d: 31 c0 xor eax,eax
10561f: 8a 44 24 16 mov al,BYTE PTR [esp+0x16]
105623: 89 04 24 mov DWORD PTR [esp],eax
105626: e8 dc f8 ff ff call 104f07 <FloppySendCommand>
10562b: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
10562f: 89 04 24 mov DWORD PTR [esp],eax
105632: e8 d0 f8 ff ff call 104f07 <FloppySendCommand>
105637: 31 c0 xor eax,eax
105639: 8a 44 24 17 mov al,BYTE PTR [esp+0x17]
10563d: 89 04 24 mov DWORD PTR [esp],eax
105640: e8 c2 f8 ff ff call 104f07 <FloppySendCommand>
105645: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
10564c: e8 b6 f8 ff ff call 104f07 <FloppySendCommand>
105651: 8d 44 3d 00 lea eax,[ebp+edi*1+0x0]
105655: 8a 04 c5 e4 c1 10 00 mov al,BYTE PTR [eax*8+0x10c1e4]
10565c: 25 ff 00 00 00 and eax,0xff
105661: 89 04 24 mov DWORD PTR [esp],eax
105664: e8 9e f8 ff ff call 104f07 <FloppySendCommand>
105669: 8d 44 3d 00 lea eax,[ebp+edi*1+0x0]
10566d: 8a 04 c5 f0 c1 10 00 mov al,BYTE PTR [eax*8+0x10c1f0]
105674: 25 ff 00 00 00 and eax,0xff
105679: 89 04 24 mov DWORD PTR [esp],eax
10567c: e8 86 f8 ff ff call 104f07 <FloppySendCommand>
105681: c7 04 24 ff 00 00 00 mov DWORD PTR [esp],0xff
105688: e8 7a f8 ff ff call 104f07 <FloppySendCommand>
10568d: e8 9e f7 ff ff call 104e30 <FloppyWaitIrq>
105692: 8d 5c 24 29 lea ebx,[esp+0x29]
105696: 8d 74 24 30 lea esi,[esp+0x30]
10569a: e8 d4 f8 ff ff call 104f73 <FloppyReadData>
10569f: 88 03 mov BYTE PTR [ebx],al
1056a1: 43 inc ebx
1056a2: 39 f3 cmp ebx,esi
1056a4: 75 f4 jne 10569a <FloppyRW+0x148>
1056a6: 31 c0 xor eax,eax
1056a8: 8a 44 24 2a mov al,BYTE PTR [esp+0x2a]
1056ac: a8 02 test al,0x2
1056ae: 74 1e je 1056ce <FloppyRW+0x17c>
1056b0: c7 44 24 08 58 a8 10 mov DWORD PTR [esp+0x8],0x10a858
1056b7: 00
1056b8: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1056bf: 00
1056c0: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
1056c7: e8 bc 1b 00 00 call 107288 <LogWrite>
1056cc: eb 31 jmp 1056ff <FloppyRW+0x1ad>
1056ce: 8a 4c 24 29 mov cl,BYTE PTR [esp+0x29]
1056d2: b2 01 mov dl,0x1
1056d4: a8 b5 test al,0xb5
1056d6: 75 06 jne 1056de <FloppyRW+0x18c>
1056d8: f6 c1 c8 test cl,0xc8
1056db: 0f 95 c2 setne dl
1056de: 31 c0 xor eax,eax
1056e0: 8a 44 24 2b mov al,BYTE PTR [esp+0x2b]
1056e4: a8 77 test al,0x77
1056e6: 74 02 je 1056ea <FloppyRW+0x198>
1056e8: b2 01 mov dl,0x1
1056ea: f6 44 24 2f 02 test BYTE PTR [esp+0x2f],0x2
1056ef: 75 0e jne 1056ff <FloppyRW+0x1ad>
1056f1: fe 4c 24 14 dec BYTE PTR [esp+0x14]
1056f5: 74 08 je 1056ff <FloppyRW+0x1ad>
1056f7: 84 d2 test dl,dl
1056f9: 0f 84 bd fe ff ff je 1055bc <FloppyRW+0x6a>
1056ff: 83 c4 3c add esp,0x3c
105702: 5b pop ebx
105703: 5e pop esi
105704: 5f pop edi
105705: 5d pop ebp
105706: c3 ret
00105707 <FloppyRead>:
105707: 56 push esi
105708: 53 push ebx
105709: 83 ec 34 sub esp,0x34
10570c: 8b 74 24 44 mov esi,DWORD PTR [esp+0x44]
105710: 8a 5c 24 40 mov bl,BYTE PTR [esp+0x40]
105714: b8 00 00 00 00 mov eax,0x0
105719: 80 fb 01 cmp bl,0x1
10571c: 0f 87 5c 01 00 00 ja 10587e <FloppyRead+0x177>
105722: a0 0d d0 10 00 mov al,ds:0x10d00d
105727: 84 db test bl,bl
105729: 75 05 jne 105730 <FloppyRead+0x29>
10572b: a0 0c d0 10 00 mov al,ds:0x10d00c
105730: c7 44 24 2c 00 00 00 mov DWORD PTR [esp+0x2c],0x0
105737: 00
105738: c7 44 24 28 00 00 00 mov DWORD PTR [esp+0x28],0x0
10573f: 00
105740: c7 44 24 24 01 00 00 mov DWORD PTR [esp+0x24],0x1
105747: 00
105748: 8d 54 24 24 lea edx,[esp+0x24]
10574c: 89 54 24 10 mov DWORD PTR [esp+0x10],edx
105750: 8d 54 24 28 lea edx,[esp+0x28]
105754: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
105758: 8d 54 24 2c lea edx,[esp+0x2c]
10575c: 89 54 24 08 mov DWORD PTR [esp+0x8],edx
105760: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
105764: 25 ff 00 00 00 and eax,0xff
105769: 8d 04 80 lea eax,[eax+eax*4]
10576c: 8b 04 c5 e4 c1 10 00 mov eax,DWORD PTR [eax*8+0x10c1e4]
105773: 89 04 24 mov DWORD PTR [esp],eax
105776: e8 f1 34 00 00 call 108c6c <ConvertLbaToChs>
10577b: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
10577f: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
105783: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
105787: 89 44 24 14 mov DWORD PTR [esp+0x14],eax
10578b: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
10578f: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
105793: 89 74 24 0c mov DWORD PTR [esp+0xc],esi
105797: c7 44 24 08 7c a8 10 mov DWORD PTR [esp+0x8],0x10a87c
10579e: 00
10579f: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1057a6: 00
1057a7: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1057ae: e8 d5 1a 00 00 call 107288 <LogWrite>
1057b3: e8 cc f6 ff ff call 104e84 <FloppyInitDma>
1057b8: c7 04 24 f4 03 00 00 mov DWORD PTR [esp],0x3f4
1057bf: e8 b4 33 00 00 call 108b78 <inportb>
1057c4: 25 c0 00 00 00 and eax,0xc0
1057c9: 3d 80 00 00 00 cmp eax,0x80
1057ce: 74 05 je 1057d5 <FloppyRead+0xce>
1057d0: e8 ea f9 ff ff call 1051bf <FloppyReset>
1057d5: 81 e3 ff 00 00 00 and ebx,0xff
1057db: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
1057e2: 00
1057e3: 89 1c 24 mov DWORD PTR [esp],ebx
1057e6: e8 33 f8 ff ff call 10501e <FloppyMotor>
1057eb: 89 1c 24 mov DWORD PTR [esp],ebx
1057ee: e8 fa f8 ff ff call 1050ed <FloppySelectDrive>
1057f3: 31 c0 xor eax,eax
1057f5: 8a 44 24 28 mov al,BYTE PTR [esp+0x28]
1057f9: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
1057fd: 31 c0 xor eax,eax
1057ff: 8a 44 24 2c mov al,BYTE PTR [esp+0x2c]
105803: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105807: 89 1c 24 mov DWORD PTR [esp],ebx
10580a: e8 90 fc ff ff call 10549f <FloppySeek>
10580f: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
105816: e8 fb f2 ff ff call 104b16 <DmaMaskChannel>
10581b: c7 44 24 04 46 00 00 mov DWORD PTR [esp+0x4],0x46
105822: 00
105823: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
10582a: e8 1a f3 ff ff call 104b49 <DmaSetMode>
10582f: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
105836: e8 f6 f2 ff ff call 104b31 <DmaUnmaskChannel>
10583b: 31 c0 xor eax,eax
10583d: 8a 44 24 24 mov al,BYTE PTR [esp+0x24]
105841: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
105845: 31 c0 xor eax,eax
105847: 8a 44 24 2c mov al,BYTE PTR [esp+0x2c]
10584b: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
10584f: 31 c0 xor eax,eax
105851: 8a 44 24 28 mov al,BYTE PTR [esp+0x28]
105855: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
105859: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
10585d: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105864: e8 e9 fc ff ff call 105552 <FloppyRW>
105869: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105870: 00
105871: 89 1c 24 mov DWORD PTR [esp],ebx
105874: e8 a5 f7 ff ff call 10501e <FloppyMotor>
105879: b8 00 10 00 00 mov eax,0x1000
10587e: 83 c4 34 add esp,0x34
105881: 5b pop ebx
105882: 5e pop esi
105883: c3 ret
00105884 <Floppy1ReadRoutine>:
105884: 53 push ebx
105885: 83 ec 18 sub esp,0x18
105888: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
10588c: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
105890: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105894: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
10589b: e8 67 fe ff ff call 105707 <FloppyRead>
1058a0: ba 00 00 00 00 mov edx,0x0
1058a5: 85 c0 test eax,eax
1058a7: 74 16 je 1058bf <Floppy1ReadRoutine+0x3b>
1058a9: c7 44 24 08 00 24 00 mov DWORD PTR [esp+0x8],0x2400
1058b0: 00
1058b1: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1058b5: 89 1c 24 mov DWORD PTR [esp],ebx
1058b8: e8 eb 26 00 00 call 107fa8 <memcpy>
1058bd: 89 da mov edx,ebx
1058bf: 89 d0 mov eax,edx
1058c1: 83 c4 18 add esp,0x18
1058c4: 5b pop ebx
1058c5: c3 ret
001058c6 <Floppy0ReadRoutine>:
1058c6: 53 push ebx
1058c7: 83 ec 18 sub esp,0x18
1058ca: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
1058ce: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
1058d2: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1058d6: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1058dd: e8 25 fe ff ff call 105707 <FloppyRead>
1058e2: ba 00 00 00 00 mov edx,0x0
1058e7: 85 c0 test eax,eax
1058e9: 74 16 je 105901 <Floppy0ReadRoutine+0x3b>
1058eb: c7 44 24 08 00 24 00 mov DWORD PTR [esp+0x8],0x2400
1058f2: 00
1058f3: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1058f7: 89 1c 24 mov DWORD PTR [esp],ebx
1058fa: e8 a9 26 00 00 call 107fa8 <memcpy>
1058ff: 89 da mov edx,ebx
105901: 89 d0 mov eax,edx
105903: 83 c4 18 add esp,0x18
105906: 5b pop ebx
105907: c3 ret
00105908 <FloppyWrite>:
105908: 56 push esi
105909: 53 push ebx
10590a: 83 ec 34 sub esp,0x34
10590d: 8b 74 24 44 mov esi,DWORD PTR [esp+0x44]
105911: 8a 5c 24 40 mov bl,BYTE PTR [esp+0x40]
105915: b8 00 00 00 00 mov eax,0x0
10591a: 80 fb 01 cmp bl,0x1
10591d: 0f 87 5c 01 00 00 ja 105a7f <FloppyWrite+0x177>
105923: a0 0d d0 10 00 mov al,ds:0x10d00d
105928: 84 db test bl,bl
10592a: 75 05 jne 105931 <FloppyWrite+0x29>
10592c: a0 0c d0 10 00 mov al,ds:0x10d00c
105931: c7 44 24 2c 00 00 00 mov DWORD PTR [esp+0x2c],0x0
105938: 00
105939: c7 44 24 28 00 00 00 mov DWORD PTR [esp+0x28],0x0
105940: 00
105941: c7 44 24 24 01 00 00 mov DWORD PTR [esp+0x24],0x1
105948: 00
105949: 8d 54 24 24 lea edx,[esp+0x24]
10594d: 89 54 24 10 mov DWORD PTR [esp+0x10],edx
105951: 8d 54 24 28 lea edx,[esp+0x28]
105955: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
105959: 8d 54 24 2c lea edx,[esp+0x2c]
10595d: 89 54 24 08 mov DWORD PTR [esp+0x8],edx
105961: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
105965: 25 ff 00 00 00 and eax,0xff
10596a: 8d 04 80 lea eax,[eax+eax*4]
10596d: 8b 04 c5 e4 c1 10 00 mov eax,DWORD PTR [eax*8+0x10c1e4]
105974: 89 04 24 mov DWORD PTR [esp],eax
105977: e8 f0 32 00 00 call 108c6c <ConvertLbaToChs>
10597c: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
105980: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
105984: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
105988: 89 44 24 14 mov DWORD PTR [esp+0x14],eax
10598c: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
105990: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
105994: 89 74 24 0c mov DWORD PTR [esp+0xc],esi
105998: c7 44 24 08 7c a8 10 mov DWORD PTR [esp+0x8],0x10a87c
10599f: 00
1059a0: c7 44 24 04 0e a7 10 mov DWORD PTR [esp+0x4],0x10a70e
1059a7: 00
1059a8: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1059af: e8 d4 18 00 00 call 107288 <LogWrite>
1059b4: e8 cb f4 ff ff call 104e84 <FloppyInitDma>
1059b9: c7 04 24 f4 03 00 00 mov DWORD PTR [esp],0x3f4
1059c0: e8 b3 31 00 00 call 108b78 <inportb>
1059c5: 25 c0 00 00 00 and eax,0xc0
1059ca: 3d 80 00 00 00 cmp eax,0x80
1059cf: 74 05 je 1059d6 <FloppyWrite+0xce>
1059d1: e8 e9 f7 ff ff call 1051bf <FloppyReset>
1059d6: 81 e3 ff 00 00 00 and ebx,0xff
1059dc: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
1059e3: 00
1059e4: 89 1c 24 mov DWORD PTR [esp],ebx
1059e7: e8 32 f6 ff ff call 10501e <FloppyMotor>
1059ec: 89 1c 24 mov DWORD PTR [esp],ebx
1059ef: e8 f9 f6 ff ff call 1050ed <FloppySelectDrive>
1059f4: 31 c0 xor eax,eax
1059f6: 8a 44 24 28 mov al,BYTE PTR [esp+0x28]
1059fa: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
1059fe: 31 c0 xor eax,eax
105a00: 8a 44 24 2c mov al,BYTE PTR [esp+0x2c]
105a04: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105a08: 89 1c 24 mov DWORD PTR [esp],ebx
105a0b: e8 8f fa ff ff call 10549f <FloppySeek>
105a10: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
105a17: e8 fa f0 ff ff call 104b16 <DmaMaskChannel>
105a1c: c7 44 24 04 4a 00 00 mov DWORD PTR [esp+0x4],0x4a
105a23: 00
105a24: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
105a2b: e8 19 f1 ff ff call 104b49 <DmaSetMode>
105a30: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
105a37: e8 f5 f0 ff ff call 104b31 <DmaUnmaskChannel>
105a3c: 31 c0 xor eax,eax
105a3e: 8a 44 24 24 mov al,BYTE PTR [esp+0x24]
105a42: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
105a46: 31 c0 xor eax,eax
105a48: 8a 44 24 2c mov al,BYTE PTR [esp+0x2c]
105a4c: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
105a50: 31 c0 xor eax,eax
105a52: 8a 44 24 28 mov al,BYTE PTR [esp+0x28]
105a56: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
105a5a: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
105a5e: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105a65: e8 e8 fa ff ff call 105552 <FloppyRW>
105a6a: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105a71: 00
105a72: 89 1c 24 mov DWORD PTR [esp],ebx
105a75: e8 a4 f5 ff ff call 10501e <FloppyMotor>
105a7a: b8 00 10 00 00 mov eax,0x1000
105a7f: 83 c4 34 add esp,0x34
105a82: 5b pop ebx
105a83: 5e pop esi
105a84: c3 ret
00105a85 <Floppy1WriteRoutine>:
105a85: 83 ec 1c sub esp,0x1c
105a88: c7 44 24 08 00 24 00 mov DWORD PTR [esp+0x8],0x2400
105a8f: 00
105a90: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
105a94: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105a98: c7 04 24 00 10 00 00 mov DWORD PTR [esp],0x1000
105a9f: e8 04 25 00 00 call 107fa8 <memcpy>
105aa4: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
105aa8: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105aac: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
105ab3: e8 50 fe ff ff call 105908 <FloppyWrite>
105ab8: 83 c4 1c add esp,0x1c
105abb: c3 ret
00105abc <Floppy0WriteRoutine>:
105abc: 83 ec 1c sub esp,0x1c
105abf: c7 44 24 08 00 24 00 mov DWORD PTR [esp+0x8],0x2400
105ac6: 00
105ac7: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
105acb: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105acf: c7 04 24 00 10 00 00 mov DWORD PTR [esp],0x1000
105ad6: e8 cd 24 00 00 call 107fa8 <memcpy>
105adb: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
105adf: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105ae3: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105aea: e8 19 fe ff ff call 105908 <FloppyWrite>
105aef: 83 c4 1c add esp,0x1c
105af2: c3 ret
...
00105b00 <GdtFlush>:
105b00: 0f 01 15 20 d0 10 00 lgdtd ds:0x10d020
105b07: 66 b8 10 00 mov ax,0x10
105b0b: 8e d8 mov ds,eax
105b0d: 8e c0 mov es,eax
105b0f: 8e e0 mov fs,eax
105b11: 8e e8 mov gs,eax
105b13: 8e d0 mov ss,eax
105b15: ea 1c 5b 10 00 08 00 jmp 0x8:0x105b1c
00105b1c <flush2>:
105b1c: c3 ret
105b1d: 00 00 add BYTE PTR [eax],al
...
00105b20 <GdtSetGate>:
105b20: 55 push ebp
105b21: 57 push edi
105b22: 56 push esi
105b23: 53 push ebx
105b24: 8b 44 24 14 mov eax,DWORD PTR [esp+0x14]
105b28: 8b 54 24 18 mov edx,DWORD PTR [esp+0x18]
105b2c: 8b 6c 24 1c mov ebp,DWORD PTR [esp+0x1c]
105b30: 8a 5c 24 20 mov bl,BYTE PTR [esp+0x20]
105b34: 0f b6 74 24 24 movzx esi,BYTE PTR [esp+0x24]
105b39: 83 f8 04 cmp eax,0x4
105b3c: 7f 43 jg 105b81 <GdtSetGate+0x61>
105b3e: 66 89 14 c5 42 d0 10 mov WORD PTR [eax*8+0x10d042],dx
105b45: 00
105b46: 89 d7 mov edi,edx
105b48: c1 ef 10 shr edi,0x10
105b4b: 89 f9 mov ecx,edi
105b4d: 88 0c c5 44 d0 10 00 mov BYTE PTR [eax*8+0x10d044],cl
105b54: c1 ea 18 shr edx,0x18
105b57: 88 14 c5 47 d0 10 00 mov BYTE PTR [eax*8+0x10d047],dl
105b5e: 66 89 2c c5 40 d0 10 mov WORD PTR [eax*8+0x10d040],bp
105b65: 00
105b66: 83 e6 f0 and esi,0xfffffff0
105b69: 89 e9 mov ecx,ebp
105b6b: c1 e9 10 shr ecx,0x10
105b6e: 83 e1 0f and ecx,0xf
105b71: 09 f1 or ecx,esi
105b73: 88 0c c5 46 d0 10 00 mov BYTE PTR [eax*8+0x10d046],cl
105b7a: 88 1c c5 45 d0 10 00 mov BYTE PTR [eax*8+0x10d045],bl
105b81: 5b pop ebx
105b82: 5e pop esi
105b83: 5f pop edi
105b84: 5d pop ebp
105b85: c3 ret
00105b86 <GdtGetGate>:
105b86: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
105b8a: b8 00 00 00 00 mov eax,0x0
105b8f: 83 fa 05 cmp edx,0x5
105b92: 7f 07 jg 105b9b <GdtGetGate+0x15>
105b94: 8d 04 d5 40 d0 10 00 lea eax,[edx*8+0x10d040]
105b9b: c3 ret
00105b9c <GdtInstall>:
105b9c: 83 ec 2c sub esp,0x2c
105b9f: 66 c7 05 20 d0 10 00 mov WORD PTR ds:0x10d020,0x17
105ba6: 17 00
105ba8: c7 05 22 d0 10 00 40 mov DWORD PTR ds:0x10d022,0x10d040
105baf: d0 10 00
105bb2: c7 44 24 10 00 00 00 mov DWORD PTR [esp+0x10],0x0
105bb9: 00
105bba: c7 44 24 0c 00 00 00 mov DWORD PTR [esp+0xc],0x0
105bc1: 00
105bc2: c7 44 24 08 00 00 00 mov DWORD PTR [esp+0x8],0x0
105bc9: 00
105bca: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105bd1: 00
105bd2: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105bd9: e8 42 ff ff ff call 105b20 <GdtSetGate>
105bde: c7 44 24 10 cf 00 00 mov DWORD PTR [esp+0x10],0xcf
105be5: 00
105be6: c7 44 24 0c 9a 00 00 mov DWORD PTR [esp+0xc],0x9a
105bed: 00
105bee: c7 44 24 08 ff ff ff mov DWORD PTR [esp+0x8],0xffffffff
105bf5: ff
105bf6: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105bfd: 00
105bfe: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
105c05: e8 16 ff ff ff call 105b20 <GdtSetGate>
105c0a: c7 44 24 10 cf 00 00 mov DWORD PTR [esp+0x10],0xcf
105c11: 00
105c12: c7 44 24 0c 92 00 00 mov DWORD PTR [esp+0xc],0x92
105c19: 00
105c1a: c7 44 24 08 ff ff ff mov DWORD PTR [esp+0x8],0xffffffff
105c21: ff
105c22: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105c29: 00
105c2a: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
105c31: e8 ea fe ff ff call 105b20 <GdtSetGate>
105c36: c7 44 24 10 cf 00 00 mov DWORD PTR [esp+0x10],0xcf
105c3d: 00
105c3e: c7 44 24 0c fa 00 00 mov DWORD PTR [esp+0xc],0xfa
105c45: 00
105c46: c7 44 24 08 ff ff ff mov DWORD PTR [esp+0x8],0xffffffff
105c4d: ff
105c4e: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105c55: 00
105c56: c7 04 24 03 00 00 00 mov DWORD PTR [esp],0x3
105c5d: e8 be fe ff ff call 105b20 <GdtSetGate>
105c62: c7 44 24 10 cf 00 00 mov DWORD PTR [esp+0x10],0xcf
105c69: 00
105c6a: c7 44 24 0c f2 00 00 mov DWORD PTR [esp+0xc],0xf2
105c71: 00
105c72: c7 44 24 08 ff ff ff mov DWORD PTR [esp+0x8],0xffffffff
105c79: ff
105c7a: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105c81: 00
105c82: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
105c89: e8 92 fe ff ff call 105b20 <GdtSetGate>
105c8e: e8 6d fe ff ff call 105b00 <GdtFlush>
105c93: 83 c4 2c add esp,0x2c
105c96: c3 ret
...
00105c98 <HalInitialize>:
105c98: 83 ec 1c sub esp,0x1c
105c9b: e8 fc fe ff ff call 105b9c <GdtInstall>
105ca0: c7 44 24 08 a8 a8 10 mov DWORD PTR [esp+0x8],0x10a8a8
105ca7: 00
105ca8: c7 44 24 04 b7 a8 10 mov DWORD PTR [esp+0x4],0x10a8b7
105caf: 00
105cb0: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105cb7: e8 cc 15 00 00 call 107288 <LogWrite>
105cbc: e8 72 01 00 00 call 105e33 <IdtInstall>
105cc1: c7 44 24 08 bb a8 10 mov DWORD PTR [esp+0x8],0x10a8bb
105cc8: 00
105cc9: c7 44 24 04 b7 a8 10 mov DWORD PTR [esp+0x4],0x10a8b7
105cd0: 00
105cd1: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105cd8: e8 ab 15 00 00 call 107288 <LogWrite>
105cdd: e8 ce 0b 00 00 call 1068b0 <IsrsInstall>
105ce2: c7 44 24 08 ca a8 10 mov DWORD PTR [esp+0x8],0x10a8ca
105ce9: 00
105cea: c7 44 24 04 b7 a8 10 mov DWORD PTR [esp+0x4],0x10a8b7
105cf1: 00
105cf2: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105cf9: e8 8a 15 00 00 call 107288 <LogWrite>
105cfe: e8 09 07 00 00 call 10640c <IrqInstall>
105d03: c7 44 24 08 da a8 10 mov DWORD PTR [esp+0x8],0x10a8da
105d0a: 00
105d0b: c7 44 24 04 b7 a8 10 mov DWORD PTR [esp+0x4],0x10a8b7
105d12: 00
105d13: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105d1a: e8 69 15 00 00 call 107288 <LogWrite>
105d1f: fb sti
105d20: c7 44 24 0c 0d 00 00 mov DWORD PTR [esp+0xc],0xd
105d27: 00
105d28: c7 44 24 08 ea a8 10 mov DWORD PTR [esp+0x8],0x10a8ea
105d2f: 00
105d30: c7 44 24 04 b7 a8 10 mov DWORD PTR [esp+0x4],0x10a8b7
105d37: 00
105d38: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105d3f: e8 44 15 00 00 call 107288 <LogWrite>
105d44: c7 44 24 04 80 20 10 mov DWORD PTR [esp+0x4],0x102080
105d4b: 00
105d4c: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105d53: e8 94 06 00 00 call 1063ec <IrqInstallHandler>
105d58: c7 44 24 04 e0 70 10 mov DWORD PTR [esp+0x4],0x1070e0
105d5f: 00
105d60: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
105d67: e8 80 06 00 00 call 1063ec <IrqInstallHandler>
105d6c: c7 44 24 04 bc 85 10 mov DWORD PTR [esp+0x4],0x1085bc
105d73: 00
105d74: c7 04 24 0c 00 00 00 mov DWORD PTR [esp],0xc
105d7b: e8 6c 06 00 00 call 1063ec <IrqInstallHandler>
105d80: e8 cb 13 00 00 call 107150 <KeyboardInstallA>
105d85: c7 44 24 0c 0a 00 00 mov DWORD PTR [esp+0xc],0xa
105d8c: 00
105d8d: c7 44 24 08 10 a9 10 mov DWORD PTR [esp+0x8],0x10a910
105d94: 00
105d95: c7 44 24 04 b7 a8 10 mov DWORD PTR [esp+0x4],0x10a8b7
105d9c: 00
105d9d: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105da4: e8 df 14 00 00 call 107288 <LogWrite>
105da9: e8 d2 13 00 00 call 107180 <KeyboardInstallB>
105dae: c7 44 24 0c 0a 00 00 mov DWORD PTR [esp+0xc],0xa
105db5: 00
105db6: c7 44 24 08 07 a9 10 mov DWORD PTR [esp+0x8],0x10a907
105dbd: 00
105dbe: c7 44 24 04 b7 a8 10 mov DWORD PTR [esp+0x4],0x10a8b7
105dc5: 00
105dc6: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105dcd: e8 b6 14 00 00 call 107288 <LogWrite>
105dd2: e8 3d 36 00 00 call 109414 <VfsInstall>
105dd7: 83 c4 1c add esp,0x1c
105dda: c3 ret
105ddb: 00 00 add BYTE PTR [eax],al
105ddd: 00 00 add BYTE PTR [eax],al
...
00105de0 <IdtLoad>:
105de0: 0f 01 1d 80 d0 10 00 lidtd ds:0x10d080
105de7: c3 ret
00105de8 <IdtSetGate>:
105de8: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
105dec: 31 c0 xor eax,eax
105dee: 8a 44 24 04 mov al,BYTE PTR [esp+0x4]
105df2: 66 89 14 c5 a0 d0 10 mov WORD PTR [eax*8+0x10d0a0],dx
105df9: 00
105dfa: c1 ea 10 shr edx,0x10
105dfd: 66 89 14 c5 a6 d0 10 mov WORD PTR [eax*8+0x10d0a6],dx
105e04: 00
105e05: 8b 54 24 0c mov edx,DWORD PTR [esp+0xc]
105e09: 66 89 14 c5 a2 d0 10 mov WORD PTR [eax*8+0x10d0a2],dx
105e10: 00
105e11: c6 04 c5 a4 d0 10 00 mov BYTE PTR [eax*8+0x10d0a4],0x0
105e18: 00
105e19: 8b 54 24 10 mov edx,DWORD PTR [esp+0x10]
105e1d: 88 14 c5 a5 d0 10 00 mov BYTE PTR [eax*8+0x10d0a5],dl
105e24: c3 ret
00105e25 <IdtGetGate>:
105e25: 31 c0 xor eax,eax
105e27: 8a 44 24 04 mov al,BYTE PTR [esp+0x4]
105e2b: 8d 04 c5 a0 d0 10 00 lea eax,[eax*8+0x10d0a0]
105e32: c3 ret
00105e33 <IdtInstall>:
105e33: 83 ec 1c sub esp,0x1c
105e36: 66 c7 05 80 d0 10 00 mov WORD PTR ds:0x10d080,0x7ff
105e3d: ff 07
105e3f: c7 05 82 d0 10 00 a0 mov DWORD PTR ds:0x10d082,0x10d0a0
105e46: d0 10 00
105e49: c7 44 24 08 00 08 00 mov DWORD PTR [esp+0x8],0x800
105e50: 00
105e51: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
105e58: 00
105e59: c7 04 24 a0 d0 10 00 mov DWORD PTR [esp],0x10d0a0
105e60: e8 b2 21 00 00 call 108017 <memset>
105e65: e8 76 ff ff ff call 105de0 <IdtLoad>
105e6a: 83 c4 1c add esp,0x1c
105e6d: c3 ret
...
00105e70 <luxInitrdDevRead>:
105e70: b8 90 aa 23 cc mov eax,0xcc23aa90
105e75: c3 ret
00105e76 <luxClose>:
105e76: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
105e7a: c7 40 24 00 00 00 00 mov DWORD PTR [eax+0x24],0x0
105e81: c7 40 20 00 00 00 00 mov DWORD PTR [eax+0x20],0x0
105e88: c7 40 1c 00 00 00 00 mov DWORD PTR [eax+0x1c],0x0
105e8f: c3 ret
00105e90 <luxReadDir>:
105e90: 8b 54 24 0c mov edx,DWORD PTR [esp+0xc]
105e94: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
105e98: 8b 48 1c mov ecx,DWORD PTR [eax+0x1c]
105e9b: b8 00 00 00 00 mov eax,0x0
105ea0: 39 11 cmp DWORD PTR [ecx],edx
105ea2: 76 0e jbe 105eb2 <luxReadDir+0x22>
105ea4: 8d 04 92 lea eax,[edx+edx*4]
105ea7: 89 c2 mov edx,eax
105ea9: c1 e2 04 shl edx,0x4
105eac: 29 c2 sub edx,eax
105eae: 8d 44 91 04 lea eax,[ecx+edx*4+0x4]
105eb2: c3 ret
00105eb3 <luxRead>:
105eb3: 56 push esi
105eb4: 53 push ebx
105eb5: 83 ec 14 sub esp,0x14
105eb8: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
105ebc: 8b 43 20 mov eax,DWORD PTR [ebx+0x20]
105ebf: 8b 54 24 2c mov edx,DWORD PTR [esp+0x2c]
105ec3: 0f af 54 24 28 imul edx,DWORD PTR [esp+0x28]
105ec8: 8b 4b 24 mov ecx,DWORD PTR [ebx+0x24]
105ecb: 29 c1 sub ecx,eax
105ecd: 89 d6 mov esi,edx
105ecf: 39 ca cmp edx,ecx
105ed1: 76 02 jbe 105ed5 <luxRead+0x22>
105ed3: 89 ce mov esi,ecx
105ed5: 89 74 24 08 mov DWORD PTR [esp+0x8],esi
105ed9: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105edd: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
105ee1: 89 04 24 mov DWORD PTR [esp],eax
105ee4: e8 bf 20 00 00 call 107fa8 <memcpy>
105ee9: 01 73 20 add DWORD PTR [ebx+0x20],esi
105eec: 89 f0 mov eax,esi
105eee: 83 c4 14 add esp,0x14
105ef1: 5b pop ebx
105ef2: 5e pop esi
105ef3: c3 ret
00105ef4 <luxDetect>:
105ef4: 56 push esi
105ef5: 53 push ebx
105ef6: 83 ec 14 sub esp,0x14
105ef9: 8b 5c 24 20 mov ebx,DWORD PTR [esp+0x20]
105efd: 8b 43 48 mov eax,DWORD PTR [ebx+0x48]
105f00: 89 04 24 mov DWORD PTR [esp],eax
105f03: e8 99 22 00 00 call 1081a1 <kmalloc>
105f08: 89 c6 mov esi,eax
105f0a: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
105f0e: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
105f15: ff 53 4c call DWORD PTR [ebx+0x4c]
105f18: 89 c3 mov ebx,eax
105f1a: 89 34 24 mov DWORD PTR [esp],esi
105f1d: e8 e6 23 00 00 call 108308 <kfree>
105f22: 81 fb 90 aa 23 cc cmp ebx,0xcc23aa90
105f28: 0f 94 c0 sete al
105f2b: 25 ff 00 00 00 and eax,0xff
105f30: 83 c4 14 add esp,0x14
105f33: 5b pop ebx
105f34: 5e pop esi
105f35: c3 ret
00105f36 <luxGetFile>:
105f36: 55 push ebp
105f37: 57 push edi
105f38: 56 push esi
105f39: 53 push ebx
105f3a: 83 ec 3c sub esp,0x3c
105f3d: 8b 44 24 50 mov eax,DWORD PTR [esp+0x50]
105f41: 89 04 24 mov DWORD PTR [esp],eax
105f44: e8 67 2d 00 00 call 108cb0 <strlen>
105f49: 89 44 24 28 mov DWORD PTR [esp+0x28],eax
105f4d: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
105f51: 80 7c 02 ff 2f cmp BYTE PTR [edx+eax*1-0x1],0x2f
105f56: 0f 94 c0 sete al
105f59: 25 ff 00 00 00 and eax,0xff
105f5e: 29 44 24 28 sub DWORD PTR [esp+0x28],eax
105f62: 75 4f jne 105fb3 <luxGetFile+0x7d>
105f64: c7 05 a0 d9 10 00 68 mov DWORD PTR ds:0x10d9a0,0xb68
105f6b: 0b 00 00
105f6e: c7 05 a8 d9 10 00 00 mov DWORD PTR ds:0x10d9a8,0x0
105f75: 00 00 00
105f78: c7 05 a4 d9 10 00 00 mov DWORD PTR ds:0x10d9a4,0x0
105f7f: 00 00 00
105f82: 8b 54 24 54 mov edx,DWORD PTR [esp+0x54]
105f86: 8b 42 0a mov eax,DWORD PTR [edx+0xa]
105f89: 8d 04 80 lea eax,[eax+eax*4]
105f8c: 89 c2 mov edx,eax
105f8e: c1 e2 04 shl edx,0x4
105f91: 29 c2 sub edx,eax
105f93: 8d 04 95 04 00 00 00 lea eax,[edx*4+0x4]
105f9a: a3 ac d9 10 00 mov ds:0x10d9ac,eax
105f9f: c7 05 c8 d9 10 00 0a mov DWORD PTR ds:0x10d9c8,0xa
105fa6: 00 00 00
105fa9: b8 a0 d8 10 00 mov eax,0x10d8a0
105fae: e9 31 01 00 00 jmp 1060e4 <luxGetFile+0x1ae>
105fb3: b8 00 00 00 00 mov eax,0x0
105fb8: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
105fbc: 80 3a 2f cmp BYTE PTR [edx],0x2f
105fbf: 0f 85 1f 01 00 00 jne 1060e4 <luxGetFile+0x1ae>
105fc5: 8b 5c 24 54 mov ebx,DWORD PTR [esp+0x54]
105fc9: 83 c3 0a add ebx,0xa
105fcc: c7 44 24 20 00 00 00 mov DWORD PTR [esp+0x20],0x0
105fd3: 00
105fd4: 8b 54 24 50 mov edx,DWORD PTR [esp+0x50]
105fd8: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
105fdc: 8d 7c 02 01 lea edi,[edx+eax*1+0x1]
105fe0: c7 44 24 04 2f 00 00 mov DWORD PTR [esp+0x4],0x2f
105fe7: 00
105fe8: 89 3c 24 mov DWORD PTR [esp],edi
105feb: e8 1c 2e 00 00 call 108e0c <strchr>
105ff0: 89 44 24 24 mov DWORD PTR [esp+0x24],eax
105ff4: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
105ff8: 89 44 24 20 mov DWORD PTR [esp+0x20],eax
105ffc: 83 7c 24 24 00 cmp DWORD PTR [esp+0x24],0x0
106001: 74 1c je 10601f <luxGetFile+0xe9>
106003: 8b 54 24 24 mov edx,DWORD PTR [esp+0x24]
106007: 2b 54 24 50 sub edx,DWORD PTR [esp+0x50]
10600b: 89 54 24 20 mov DWORD PTR [esp+0x20],edx
10600f: 39 d0 cmp eax,edx
106011: 77 0c ja 10601f <luxGetFile+0xe9>
106013: 89 44 24 20 mov DWORD PTR [esp+0x20],eax
106017: c7 44 24 24 00 00 00 mov DWORD PTR [esp+0x24],0x0
10601e: 00
10601f: 8b 13 mov edx,DWORD PTR [ebx]
106021: 89 54 24 1c mov DWORD PTR [esp+0x1c],edx
106025: 83 c3 04 add ebx,0x4
106028: 89 5c 24 2c mov DWORD PTR [esp+0x2c],ebx
10602c: 85 d2 test edx,edx
10602e: 0f 84 9d 00 00 00 je 1060d1 <luxGetFile+0x19b>
106034: bd ff ff ff ff mov ebp,0xffffffff
106039: be 00 00 00 00 mov esi,0x0
10603e: 89 1c 24 mov DWORD PTR [esp],ebx
106041: e8 6a 2c 00 00 call 108cb0 <strlen>
106046: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
10604a: 89 7c 24 04 mov DWORD PTR [esp+0x4],edi
10604e: 89 1c 24 mov DWORD PTR [esp],ebx
106051: e8 b0 2c 00 00 call 108d06 <strncmp>
106056: 85 c0 test eax,eax
106058: 75 02 jne 10605c <luxGetFile+0x126>
10605a: 89 f5 mov ebp,esi
10605c: 46 inc esi
10605d: 81 c3 2c 01 00 00 add ebx,0x12c
106063: 39 74 24 1c cmp DWORD PTR [esp+0x1c],esi
106067: 76 05 jbe 10606e <luxGetFile+0x138>
106069: 83 fd ff cmp ebp,0xffffffff
10606c: 74 d0 je 10603e <luxGetFile+0x108>
10606e: 83 fd ff cmp ebp,0xffffffff
106071: 74 65 je 1060d8 <luxGetFile+0x1a2>
106073: 83 7c 24 24 00 cmp DWORD PTR [esp+0x24],0x0
106078: 75 16 jne 106090 <luxGetFile+0x15a>
10607a: 8d 44 ad 00 lea eax,[ebp+ebp*4+0x0]
10607e: 89 c2 mov edx,eax
106080: c1 e2 04 shl edx,0x4
106083: 29 c2 sub edx,eax
106085: 89 d0 mov eax,edx
106087: 8b 54 24 2c mov edx,DWORD PTR [esp+0x2c]
10608b: 8d 04 82 lea eax,[edx+eax*4]
10608e: eb 54 jmp 1060e4 <luxGetFile+0x1ae>
106090: 8d 44 ad 00 lea eax,[ebp+ebp*4+0x0]
106094: 89 c2 mov edx,eax
106096: c1 e2 04 shl edx,0x4
106099: 29 c2 sub edx,eax
10609b: 89 d0 mov eax,edx
10609d: 8b 54 24 2c mov edx,DWORD PTR [esp+0x2c]
1060a1: 8d 04 82 lea eax,[edx+eax*4]
1060a4: 8b 90 00 01 00 00 mov edx,DWORD PTR [eax+0x100]
1060aa: 83 e2 07 and edx,0x7
1060ad: 83 fa 02 cmp edx,0x2
1060b0: 75 2d jne 1060df <luxGetFile+0x1a9>
1060b2: 8b 5c 24 54 mov ebx,DWORD PTR [esp+0x54]
1060b6: 03 98 28 01 00 00 add ebx,DWORD PTR [eax+0x128]
1060bc: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
1060c0: 39 44 24 28 cmp DWORD PTR [esp+0x28],eax
1060c4: 0f 87 0a ff ff ff ja 105fd4 <luxGetFile+0x9e>
1060ca: b8 00 00 00 00 mov eax,0x0
1060cf: eb 13 jmp 1060e4 <luxGetFile+0x1ae>
1060d1: b8 00 00 00 00 mov eax,0x0
1060d6: eb 0c jmp 1060e4 <luxGetFile+0x1ae>
1060d8: b8 00 00 00 00 mov eax,0x0
1060dd: eb 05 jmp 1060e4 <luxGetFile+0x1ae>
1060df: b8 00 00 00 00 mov eax,0x0
1060e4: 83 c4 3c add esp,0x3c
1060e7: 5b pop ebx
1060e8: 5e pop esi
1060e9: 5f pop edi
1060ea: 5d pop ebp
1060eb: c3 ret
001060ec <luxOpen>:
1060ec: 56 push esi
1060ed: 53 push ebx
1060ee: 83 ec 14 sub esp,0x14
1060f1: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
1060f5: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
1060f9: 8b 46 54 mov eax,DWORD PTR [esi+0x54]
1060fc: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
106100: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
106104: 89 04 24 mov DWORD PTR [esp],eax
106107: e8 2a fe ff ff call 105f36 <luxGetFile>
10610c: 85 c0 test eax,eax
10610e: 74 41 je 106151 <luxOpen+0x65>
106110: 89 43 08 mov DWORD PTR [ebx+0x8],eax
106113: 8b 90 00 01 00 00 mov edx,DWORD PTR [eax+0x100]
106119: 89 53 0c mov DWORD PTR [ebx+0xc],edx
10611c: 8b 90 08 01 00 00 mov edx,DWORD PTR [eax+0x108]
106122: 89 53 14 mov DWORD PTR [ebx+0x14],edx
106125: 8b 90 04 01 00 00 mov edx,DWORD PTR [eax+0x104]
10612b: 89 53 10 mov DWORD PTR [ebx+0x10],edx
10612e: 8b 90 0c 01 00 00 mov edx,DWORD PTR [eax+0x10c]
106134: 89 53 18 mov DWORD PTR [ebx+0x18],edx
106137: 8b 90 28 01 00 00 mov edx,DWORD PTR [eax+0x128]
10613d: 03 56 54 add edx,DWORD PTR [esi+0x54]
106140: 89 53 1c mov DWORD PTR [ebx+0x1c],edx
106143: 89 53 20 mov DWORD PTR [ebx+0x20],edx
106146: 03 90 0c 01 00 00 add edx,DWORD PTR [eax+0x10c]
10614c: 89 53 24 mov DWORD PTR [ebx+0x24],edx
10614f: eb 05 jmp 106156 <luxOpen+0x6a>
106151: bb 00 00 00 00 mov ebx,0x0
106156: 89 d8 mov eax,ebx
106158: 83 c4 14 add esp,0x14
10615b: 5b pop ebx
10615c: 5e pop esi
10615d: c3 ret
0010615e <luxTest>:
10615e: 83 ec 1c sub esp,0x1c
106161: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
106165: 8b 40 54 mov eax,DWORD PTR [eax+0x54]
106168: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10616c: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
106170: 89 04 24 mov DWORD PTR [esp],eax
106173: e8 be fd ff ff call 105f36 <luxGetFile>
106178: 83 c4 1c add esp,0x1c
10617b: c3 ret
0010617c <luxInitrdInstall>:
10617c: 55 push ebp
10617d: 57 push edi
10617e: 56 push esi
10617f: 53 push ebx
106180: 83 ec 5c sub esp,0x5c
106183: 8b 6c 24 70 mov ebp,DWORD PTR [esp+0x70]
106187: 8d 7c 24 18 lea edi,[esp+0x18]
10618b: b9 0e 00 00 00 mov ecx,0xe
106190: b8 00 00 00 00 mov eax,0x0
106195: f3 ab rep stos DWORD PTR es:[edi],eax
106197: c7 44 24 1c 6c 75 78 mov DWORD PTR [esp+0x1c],0x6978756c
10619e: 69
10619f: c7 44 24 20 6e 69 74 mov DWORD PTR [esp+0x20],0x7274696e
1061a6: 72
1061a7: c7 44 24 24 64 00 00 mov DWORD PTR [esp+0x24],0x64
1061ae: 00
1061af: c7 44 24 2c f4 5e 10 mov DWORD PTR [esp+0x2c],0x105ef4
1061b6: 00
1061b7: c7 44 24 38 ec 60 10 mov DWORD PTR [esp+0x38],0x1060ec
1061be: 00
1061bf: c7 44 24 3c 76 5e 10 mov DWORD PTR [esp+0x3c],0x105e76
1061c6: 00
1061c7: c7 44 24 40 b3 5e 10 mov DWORD PTR [esp+0x40],0x105eb3
1061ce: 00
1061cf: c7 44 24 48 5e 61 10 mov DWORD PTR [esp+0x48],0x10615e
1061d6: 00
1061d7: c7 44 24 4c 90 5e 10 mov DWORD PTR [esp+0x4c],0x105e90
1061de: 00
1061df: 8d 44 24 18 lea eax,[esp+0x18]
1061e3: 89 04 24 mov DWORD PTR [esp],eax
1061e6: e8 90 32 00 00 call 10947b <VfsInstallFs>
1061eb: f6 45 00 08 test BYTE PTR [ebp+0x0],0x8
1061ef: 75 21 jne 106212 <luxInitrdInstall+0x96>
1061f1: c7 44 24 08 30 a9 10 mov DWORD PTR [esp+0x8],0x10a930
1061f8: 00
1061f9: c7 44 24 04 47 a9 10 mov DWORD PTR [esp+0x4],0x10a947
106200: 00
106201: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
106208: e8 7b 10 00 00 call 107288 <LogWrite>
10620d: e9 9a 00 00 00 jmp 1062ac <luxInitrdInstall+0x130>
106212: 8b 5d 18 mov ebx,DWORD PTR [ebp+0x18]
106215: 83 7d 14 00 cmp DWORD PTR [ebp+0x14],0x0
106219: 0f 84 8d 00 00 00 je 1062ac <luxInitrdInstall+0x130>
10621f: be 00 00 00 00 mov esi,0x0
106224: 8b 03 mov eax,DWORD PTR [ebx]
106226: 81 38 90 aa 23 cc cmp DWORD PTR [eax],0xcc23aa90
10622c: 75 51 jne 10627f <luxInitrdInstall+0x103>
10622e: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
106232: c7 44 24 08 4e a9 10 mov DWORD PTR [esp+0x8],0x10a94e
106239: 00
10623a: c7 44 24 04 47 a9 10 mov DWORD PTR [esp+0x4],0x10a947
106241: 00
106242: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
106249: e8 3a 10 00 00 call 107288 <LogWrite>
10624e: c7 44 24 0c 00 00 00 mov DWORD PTR [esp+0xc],0x0
106255: 00
106256: c7 44 24 08 00 00 00 mov DWORD PTR [esp+0x8],0x0
10625d: 00
10625e: c7 44 24 04 70 5e 10 mov DWORD PTR [esp+0x4],0x105e70
106265: 00
106266: c7 04 24 6b a9 10 00 mov DWORD PTR [esp],0x10a96b
10626d: e8 87 34 00 00 call 1096f9 <VfsMount>
106272: 8b 13 mov edx,DWORD PTR [ebx]
106274: 89 50 54 mov DWORD PTR [eax+0x54],edx
106277: 8b 53 04 mov edx,DWORD PTR [ebx+0x4]
10627a: 89 50 58 mov DWORD PTR [eax+0x58],edx
10627d: eb 20 jmp 10629f <luxInitrdInstall+0x123>
10627f: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
106283: c7 44 24 08 74 a9 10 mov DWORD PTR [esp+0x8],0x10a974
10628a: 00
10628b: c7 44 24 04 47 a9 10 mov DWORD PTR [esp+0x4],0x10a947
106292: 00
106293: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10629a: e8 e9 0f 00 00 call 107288 <LogWrite>
10629f: 46 inc esi
1062a0: 83 c3 10 add ebx,0x10
1062a3: 39 75 14 cmp DWORD PTR [ebp+0x14],esi
1062a6: 0f 87 78 ff ff ff ja 106224 <luxInitrdInstall+0xa8>
1062ac: 83 c4 5c add esp,0x5c
1062af: 5b pop ebx
1062b0: 5e pop esi
1062b1: 5f pop edi
1062b2: 5d pop ebp
1062b3: c3 ret
...
001062c0 <Irq_0>:
1062c0: fa cli
1062c1: 68 00 00 00 00 push 0x0
1062c6: 68 20 00 00 00 push 0x20
1062cb: e9 f0 00 00 00 jmp 1063c0 <irq_common_stub>
001062d0 <Irq_1>:
1062d0: fa cli
1062d1: 68 00 00 00 00 push 0x0
1062d6: 68 21 00 00 00 push 0x21
1062db: e9 e0 00 00 00 jmp 1063c0 <irq_common_stub>
001062e0 <Irq_2>:
1062e0: fa cli
1062e1: 68 00 00 00 00 push 0x0
1062e6: 68 22 00 00 00 push 0x22
1062eb: e9 d0 00 00 00 jmp 1063c0 <irq_common_stub>
001062f0 <Irq_3>:
1062f0: fa cli
1062f1: 68 00 00 00 00 push 0x0
1062f6: 68 23 00 00 00 push 0x23
1062fb: e9 c0 00 00 00 jmp 1063c0 <irq_common_stub>
00106300 <Irq_4>:
106300: fa cli
106301: 68 00 00 00 00 push 0x0
106306: 68 24 00 00 00 push 0x24
10630b: e9 b0 00 00 00 jmp 1063c0 <irq_common_stub>
00106310 <Irq_5>:
106310: fa cli
106311: 68 00 00 00 00 push 0x0
106316: 68 25 00 00 00 push 0x25
10631b: e9 a0 00 00 00 jmp 1063c0 <irq_common_stub>
00106320 <Irq_6>:
106320: fa cli
106321: 68 00 00 00 00 push 0x0
106326: 68 26 00 00 00 push 0x26
10632b: e9 90 00 00 00 jmp 1063c0 <irq_common_stub>
00106330 <Irq_7>:
106330: fa cli
106331: 68 00 00 00 00 push 0x0
106336: 68 27 00 00 00 push 0x27
10633b: e9 80 00 00 00 jmp 1063c0 <irq_common_stub>
00106340 <Irq_8>:
106340: fa cli
106341: 68 00 00 00 00 push 0x0
106346: 68 28 00 00 00 push 0x28
10634b: e9 70 00 00 00 jmp 1063c0 <irq_common_stub>
00106350 <Irq_9>:
106350: fa cli
106351: 68 00 00 00 00 push 0x0
106356: 68 29 00 00 00 push 0x29
10635b: e9 60 00 00 00 jmp 1063c0 <irq_common_stub>
00106360 <Irq_10>:
106360: fa cli
106361: 68 00 00 00 00 push 0x0
106366: 68 2a 00 00 00 push 0x2a
10636b: e9 50 00 00 00 jmp 1063c0 <irq_common_stub>
00106370 <Irq_11>:
106370: fa cli
106371: 68 00 00 00 00 push 0x0
106376: 68 2b 00 00 00 push 0x2b
10637b: e9 40 00 00 00 jmp 1063c0 <irq_common_stub>
00106380 <Irq_12>:
106380: fa cli
106381: 68 00 00 00 00 push 0x0
106386: 68 2c 00 00 00 push 0x2c
10638b: e9 30 00 00 00 jmp 1063c0 <irq_common_stub>
00106390 <Irq_13>:
106390: fa cli
106391: 68 00 00 00 00 push 0x0
106396: 68 2d 00 00 00 push 0x2d
10639b: e9 20 00 00 00 jmp 1063c0 <irq_common_stub>
001063a0 <Irq_14>:
1063a0: fa cli
1063a1: 68 00 00 00 00 push 0x0
1063a6: 68 2e 00 00 00 push 0x2e
1063ab: e9 10 00 00 00 jmp 1063c0 <irq_common_stub>
001063b0 <Irq_15>:
1063b0: fa cli
1063b1: 68 00 00 00 00 push 0x0
1063b6: 68 2f 00 00 00 push 0x2f
1063bb: e9 00 00 00 00 jmp 1063c0 <irq_common_stub>
001063c0 <irq_common_stub>:
1063c0: 60 pusha
1063c1: 1e push ds
1063c2: 06 push es
1063c3: 0f a0 push fs
1063c5: 0f a8 push gs
1063c7: 66 b8 10 00 mov ax,0x10
1063cb: 8e d8 mov ds,eax
1063cd: 8e c0 mov es,eax
1063cf: 8e e0 mov fs,eax
1063d1: 8e e8 mov gs,eax
1063d3: 89 e0 mov eax,esp
1063d5: 50 push eax
1063d6: b8 67 66 10 00 mov eax,0x106667
1063db: ff d0 call eax
1063dd: 58 pop eax
1063de: 0f a9 pop gs
1063e0: 0f a1 pop fs
1063e2: 07 pop es
1063e3: 1f pop ds
1063e4: 61 popa
1063e5: 81 c4 08 00 00 00 add esp,0x8
1063eb: cf iret
001063ec <IrqInstallHandler>:
1063ec: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
1063f0: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
1063f4: 89 14 85 40 da 10 00 mov DWORD PTR [eax*4+0x10da40],edx
1063fb: c3 ret
001063fc <IrqUninstallHandler>:
1063fc: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
106400: c7 04 85 40 da 10 00 mov DWORD PTR [eax*4+0x10da40],0x0
106407: 00 00 00 00
10640b: c3 ret
0010640c <IrqInstall>:
10640c: 83 ec 1c sub esp,0x1c
10640f: c7 44 24 04 28 00 00 mov DWORD PTR [esp+0x4],0x28
106416: 00
106417: c7 04 24 20 00 00 00 mov DWORD PTR [esp],0x20
10641e: e8 f9 26 00 00 call 108b1c <PicRemap>
106423: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
10642a: 00
10642b: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106432: 00
106433: c7 44 24 04 c0 62 10 mov DWORD PTR [esp+0x4],0x1062c0
10643a: 00
10643b: c7 04 24 20 00 00 00 mov DWORD PTR [esp],0x20
106442: e8 a1 f9 ff ff call 105de8 <IdtSetGate>
106447: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
10644e: 00
10644f: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106456: 00
106457: c7 44 24 04 d0 62 10 mov DWORD PTR [esp+0x4],0x1062d0
10645e: 00
10645f: c7 04 24 21 00 00 00 mov DWORD PTR [esp],0x21
106466: e8 7d f9 ff ff call 105de8 <IdtSetGate>
10646b: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106472: 00
106473: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10647a: 00
10647b: c7 44 24 04 e0 62 10 mov DWORD PTR [esp+0x4],0x1062e0
106482: 00
106483: c7 04 24 22 00 00 00 mov DWORD PTR [esp],0x22
10648a: e8 59 f9 ff ff call 105de8 <IdtSetGate>
10648f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106496: 00
106497: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10649e: 00
10649f: c7 44 24 04 f0 62 10 mov DWORD PTR [esp+0x4],0x1062f0
1064a6: 00
1064a7: c7 04 24 23 00 00 00 mov DWORD PTR [esp],0x23
1064ae: e8 35 f9 ff ff call 105de8 <IdtSetGate>
1064b3: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1064ba: 00
1064bb: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1064c2: 00
1064c3: c7 44 24 04 00 63 10 mov DWORD PTR [esp+0x4],0x106300
1064ca: 00
1064cb: c7 04 24 24 00 00 00 mov DWORD PTR [esp],0x24
1064d2: e8 11 f9 ff ff call 105de8 <IdtSetGate>
1064d7: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1064de: 00
1064df: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1064e6: 00
1064e7: c7 44 24 04 10 63 10 mov DWORD PTR [esp+0x4],0x106310
1064ee: 00
1064ef: c7 04 24 25 00 00 00 mov DWORD PTR [esp],0x25
1064f6: e8 ed f8 ff ff call 105de8 <IdtSetGate>
1064fb: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106502: 00
106503: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10650a: 00
10650b: c7 44 24 04 20 63 10 mov DWORD PTR [esp+0x4],0x106320
106512: 00
106513: c7 04 24 26 00 00 00 mov DWORD PTR [esp],0x26
10651a: e8 c9 f8 ff ff call 105de8 <IdtSetGate>
10651f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106526: 00
106527: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10652e: 00
10652f: c7 44 24 04 30 63 10 mov DWORD PTR [esp+0x4],0x106330
106536: 00
106537: c7 04 24 27 00 00 00 mov DWORD PTR [esp],0x27
10653e: e8 a5 f8 ff ff call 105de8 <IdtSetGate>
106543: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
10654a: 00
10654b: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106552: 00
106553: c7 44 24 04 40 63 10 mov DWORD PTR [esp+0x4],0x106340
10655a: 00
10655b: c7 04 24 28 00 00 00 mov DWORD PTR [esp],0x28
106562: e8 81 f8 ff ff call 105de8 <IdtSetGate>
106567: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
10656e: 00
10656f: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106576: 00
106577: c7 44 24 04 50 63 10 mov DWORD PTR [esp+0x4],0x106350
10657e: 00
10657f: c7 04 24 29 00 00 00 mov DWORD PTR [esp],0x29
106586: e8 5d f8 ff ff call 105de8 <IdtSetGate>
10658b: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106592: 00
106593: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10659a: 00
10659b: c7 44 24 04 60 63 10 mov DWORD PTR [esp+0x4],0x106360
1065a2: 00
1065a3: c7 04 24 2a 00 00 00 mov DWORD PTR [esp],0x2a
1065aa: e8 39 f8 ff ff call 105de8 <IdtSetGate>
1065af: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1065b6: 00
1065b7: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1065be: 00
1065bf: c7 44 24 04 70 63 10 mov DWORD PTR [esp+0x4],0x106370
1065c6: 00
1065c7: c7 04 24 2b 00 00 00 mov DWORD PTR [esp],0x2b
1065ce: e8 15 f8 ff ff call 105de8 <IdtSetGate>
1065d3: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1065da: 00
1065db: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1065e2: 00
1065e3: c7 44 24 04 80 63 10 mov DWORD PTR [esp+0x4],0x106380
1065ea: 00
1065eb: c7 04 24 2c 00 00 00 mov DWORD PTR [esp],0x2c
1065f2: e8 f1 f7 ff ff call 105de8 <IdtSetGate>
1065f7: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1065fe: 00
1065ff: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106606: 00
106607: c7 44 24 04 90 63 10 mov DWORD PTR [esp+0x4],0x106390
10660e: 00
10660f: c7 04 24 2d 00 00 00 mov DWORD PTR [esp],0x2d
106616: e8 cd f7 ff ff call 105de8 <IdtSetGate>
10661b: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106622: 00
106623: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10662a: 00
10662b: c7 44 24 04 a0 63 10 mov DWORD PTR [esp+0x4],0x1063a0
106632: 00
106633: c7 04 24 2e 00 00 00 mov DWORD PTR [esp],0x2e
10663a: e8 a9 f7 ff ff call 105de8 <IdtSetGate>
10663f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106646: 00
106647: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10664e: 00
10664f: c7 44 24 04 b0 63 10 mov DWORD PTR [esp+0x4],0x1063b0
106656: 00
106657: c7 04 24 2f 00 00 00 mov DWORD PTR [esp],0x2f
10665e: e8 85 f7 ff ff call 105de8 <IdtSetGate>
106663: 83 c4 1c add esp,0x1c
106666: c3 ret
00106667 <IrqHandler>:
106667: 53 push ebx
106668: 83 ec 18 sub esp,0x18
10666b: 8b 5c 24 20 mov ebx,DWORD PTR [esp+0x20]
10666f: 8b 43 30 mov eax,DWORD PTR [ebx+0x30]
106672: 8b 04 85 c0 d9 10 00 mov eax,DWORD PTR [eax*4+0x10d9c0]
106679: 85 c0 test eax,eax
10667b: 74 05 je 106682 <IrqHandler+0x1b>
10667d: 89 1c 24 mov DWORD PTR [esp],ebx
106680: ff d0 call eax
106682: 83 7b 30 27 cmp DWORD PTR [ebx+0x30],0x27
106686: 76 04 jbe 10668c <IrqHandler+0x25>
106688: b0 20 mov al,0x20
10668a: e6 a0 out 0xa0,al
10668c: b0 20 mov al,0x20
10668e: e6 20 out 0x20,al
106690: 83 c4 18 add esp,0x18
106693: 5b pop ebx
106694: c3 ret
...
001066a0 <isr_exception_0>:
1066a0: fa cli
1066a1: 68 00 00 00 00 push 0x0
1066a6: 68 00 00 00 00 push 0x0
1066ab: e9 d2 01 00 00 jmp 106882 <isr_common_stub>
001066b0 <isr_exception_1>:
1066b0: fa cli
1066b1: 68 00 00 00 00 push 0x0
1066b6: 68 01 00 00 00 push 0x1
1066bb: e9 c2 01 00 00 jmp 106882 <isr_common_stub>
001066c0 <isr_exception_2>:
1066c0: fa cli
1066c1: 68 00 00 00 00 push 0x0
1066c6: 68 02 00 00 00 push 0x2
1066cb: e9 b2 01 00 00 jmp 106882 <isr_common_stub>
001066d0 <isr_exception_3>:
1066d0: fa cli
1066d1: 68 00 00 00 00 push 0x0
1066d6: 68 03 00 00 00 push 0x3
1066db: e9 a2 01 00 00 jmp 106882 <isr_common_stub>
001066e0 <isr_exception_4>:
1066e0: fa cli
1066e1: 68 00 00 00 00 push 0x0
1066e6: 68 04 00 00 00 push 0x4
1066eb: e9 92 01 00 00 jmp 106882 <isr_common_stub>
001066f0 <isr_exception_5>:
1066f0: fa cli
1066f1: 68 00 00 00 00 push 0x0
1066f6: 68 05 00 00 00 push 0x5
1066fb: e9 82 01 00 00 jmp 106882 <isr_common_stub>
00106700 <isr_exception_6>:
106700: fa cli
106701: 68 00 00 00 00 push 0x0
106706: 68 06 00 00 00 push 0x6
10670b: e9 72 01 00 00 jmp 106882 <isr_common_stub>
00106710 <isr_exception_7>:
106710: fa cli
106711: 68 00 00 00 00 push 0x0
106716: 68 07 00 00 00 push 0x7
10671b: e9 62 01 00 00 jmp 106882 <isr_common_stub>
00106720 <isr_exception_8>:
106720: fa cli
106721: 68 08 00 00 00 push 0x8
106726: e9 57 01 00 00 jmp 106882 <isr_common_stub>
0010672b <isr_exception_9>:
10672b: fa cli
10672c: 68 00 00 00 00 push 0x0
106731: 68 09 00 00 00 push 0x9
106736: e9 47 01 00 00 jmp 106882 <isr_common_stub>
0010673b <isr_exception_10>:
10673b: fa cli
10673c: 68 0a 00 00 00 push 0xa
106741: e9 3c 01 00 00 jmp 106882 <isr_common_stub>
00106746 <isr_exception_11>:
106746: fa cli
106747: 68 0b 00 00 00 push 0xb
10674c: e9 31 01 00 00 jmp 106882 <isr_common_stub>
00106751 <isr_exception_12>:
106751: fa cli
106752: 68 0c 00 00 00 push 0xc
106757: e9 26 01 00 00 jmp 106882 <isr_common_stub>
0010675c <isr_exception_13>:
10675c: fa cli
10675d: 68 0d 00 00 00 push 0xd
106762: e9 1b 01 00 00 jmp 106882 <isr_common_stub>
00106767 <isr_exception_14>:
106767: fa cli
106768: 68 0e 00 00 00 push 0xe
10676d: e9 10 01 00 00 jmp 106882 <isr_common_stub>
00106772 <isr_exception_15>:
106772: fa cli
106773: 68 00 00 00 00 push 0x0
106778: 68 0f 00 00 00 push 0xf
10677d: e9 00 01 00 00 jmp 106882 <isr_common_stub>
00106782 <isr_exception_16>:
106782: fa cli
106783: 68 00 00 00 00 push 0x0
106788: 68 10 00 00 00 push 0x10
10678d: e9 f0 00 00 00 jmp 106882 <isr_common_stub>
00106792 <isr_exception_17>:
106792: fa cli
106793: 68 00 00 00 00 push 0x0
106798: 68 11 00 00 00 push 0x11
10679d: e9 e0 00 00 00 jmp 106882 <isr_common_stub>
001067a2 <isr_exception_18>:
1067a2: fa cli
1067a3: 68 00 00 00 00 push 0x0
1067a8: 68 12 00 00 00 push 0x12
1067ad: e9 d0 00 00 00 jmp 106882 <isr_common_stub>
001067b2 <isr_exception_19>:
1067b2: fa cli
1067b3: 68 00 00 00 00 push 0x0
1067b8: 68 13 00 00 00 push 0x13
1067bd: e9 c0 00 00 00 jmp 106882 <isr_common_stub>
001067c2 <isr_exception_20>:
1067c2: fa cli
1067c3: 68 00 00 00 00 push 0x0
1067c8: 68 14 00 00 00 push 0x14
1067cd: e9 b0 00 00 00 jmp 106882 <isr_common_stub>
001067d2 <isr_exception_21>:
1067d2: fa cli
1067d3: 68 00 00 00 00 push 0x0
1067d8: 68 15 00 00 00 push 0x15
1067dd: e9 a0 00 00 00 jmp 106882 <isr_common_stub>
001067e2 <isr_exception_22>:
1067e2: fa cli
1067e3: 68 00 00 00 00 push 0x0
1067e8: 68 16 00 00 00 push 0x16
1067ed: e9 90 00 00 00 jmp 106882 <isr_common_stub>
001067f2 <isr_exception_23>:
1067f2: fa cli
1067f3: 68 00 00 00 00 push 0x0
1067f8: 68 17 00 00 00 push 0x17
1067fd: e9 80 00 00 00 jmp 106882 <isr_common_stub>
00106802 <isr_exception_24>:
106802: fa cli
106803: 68 00 00 00 00 push 0x0
106808: 68 18 00 00 00 push 0x18
10680d: e9 70 00 00 00 jmp 106882 <isr_common_stub>
00106812 <isr_exception_25>:
106812: fa cli
106813: 68 00 00 00 00 push 0x0
106818: 68 19 00 00 00 push 0x19
10681d: e9 60 00 00 00 jmp 106882 <isr_common_stub>
00106822 <isr_exception_26>:
106822: fa cli
106823: 68 00 00 00 00 push 0x0
106828: 68 1a 00 00 00 push 0x1a
10682d: e9 50 00 00 00 jmp 106882 <isr_common_stub>
00106832 <isr_exception_27>:
106832: fa cli
106833: 68 00 00 00 00 push 0x0
106838: 68 1b 00 00 00 push 0x1b
10683d: e9 40 00 00 00 jmp 106882 <isr_common_stub>
00106842 <isr_exception_28>:
106842: fa cli
106843: 68 00 00 00 00 push 0x0
106848: 68 1c 00 00 00 push 0x1c
10684d: e9 30 00 00 00 jmp 106882 <isr_common_stub>
00106852 <isr_exception_29>:
106852: fa cli
106853: 68 00 00 00 00 push 0x0
106858: 68 1d 00 00 00 push 0x1d
10685d: e9 20 00 00 00 jmp 106882 <isr_common_stub>
00106862 <isr_exception_30>:
106862: fa cli
106863: 68 00 00 00 00 push 0x0
106868: 68 1e 00 00 00 push 0x1e
10686d: e9 10 00 00 00 jmp 106882 <isr_common_stub>
00106872 <isr_exception_31>:
106872: fa cli
106873: 68 00 00 00 00 push 0x0
106878: 68 1f 00 00 00 push 0x1f
10687d: e9 00 00 00 00 jmp 106882 <isr_common_stub>
00106882 <isr_common_stub>:
106882: 60 pusha
106883: 1e push ds
106884: 06 push es
106885: 0f a0 push fs
106887: 0f a8 push gs
106889: 66 b8 10 00 mov ax,0x10
10688d: 8e d8 mov ds,eax
10688f: 8e c0 mov es,eax
106891: 8e e0 mov fs,eax
106893: 8e e8 mov gs,eax
106895: 89 e0 mov eax,esp
106897: 50 push eax
106898: b8 61 6d 10 00 mov eax,0x106d61
10689d: ff d0 call eax
10689f: 58 pop eax
1068a0: 0f a9 pop gs
1068a2: 0f a1 pop fs
1068a4: 07 pop es
1068a5: 1f pop ds
1068a6: 61 popa
1068a7: 81 c4 08 00 00 00 add esp,0x8
1068ad: cf iret
...
001068b0 <IsrsInstall>:
1068b0: 83 ec 1c sub esp,0x1c
1068b3: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1068ba: 00
1068bb: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1068c2: 00
1068c3: c7 44 24 04 a0 66 10 mov DWORD PTR [esp+0x4],0x1066a0
1068ca: 00
1068cb: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1068d2: e8 11 f5 ff ff call 105de8 <IdtSetGate>
1068d7: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1068de: 00
1068df: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1068e6: 00
1068e7: c7 44 24 04 b0 66 10 mov DWORD PTR [esp+0x4],0x1066b0
1068ee: 00
1068ef: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
1068f6: e8 ed f4 ff ff call 105de8 <IdtSetGate>
1068fb: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106902: 00
106903: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10690a: 00
10690b: c7 44 24 04 c0 66 10 mov DWORD PTR [esp+0x4],0x1066c0
106912: 00
106913: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
10691a: e8 c9 f4 ff ff call 105de8 <IdtSetGate>
10691f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106926: 00
106927: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10692e: 00
10692f: c7 44 24 04 d0 66 10 mov DWORD PTR [esp+0x4],0x1066d0
106936: 00
106937: c7 04 24 03 00 00 00 mov DWORD PTR [esp],0x3
10693e: e8 a5 f4 ff ff call 105de8 <IdtSetGate>
106943: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
10694a: 00
10694b: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106952: 00
106953: c7 44 24 04 e0 66 10 mov DWORD PTR [esp+0x4],0x1066e0
10695a: 00
10695b: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
106962: e8 81 f4 ff ff call 105de8 <IdtSetGate>
106967: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
10696e: 00
10696f: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106976: 00
106977: c7 44 24 04 f0 66 10 mov DWORD PTR [esp+0x4],0x1066f0
10697e: 00
10697f: c7 04 24 05 00 00 00 mov DWORD PTR [esp],0x5
106986: e8 5d f4 ff ff call 105de8 <IdtSetGate>
10698b: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106992: 00
106993: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
10699a: 00
10699b: c7 44 24 04 00 67 10 mov DWORD PTR [esp+0x4],0x106700
1069a2: 00
1069a3: c7 04 24 06 00 00 00 mov DWORD PTR [esp],0x6
1069aa: e8 39 f4 ff ff call 105de8 <IdtSetGate>
1069af: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1069b6: 00
1069b7: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1069be: 00
1069bf: c7 44 24 04 10 67 10 mov DWORD PTR [esp+0x4],0x106710
1069c6: 00
1069c7: c7 04 24 07 00 00 00 mov DWORD PTR [esp],0x7
1069ce: e8 15 f4 ff ff call 105de8 <IdtSetGate>
1069d3: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1069da: 00
1069db: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
1069e2: 00
1069e3: c7 44 24 04 20 67 10 mov DWORD PTR [esp+0x4],0x106720
1069ea: 00
1069eb: c7 04 24 08 00 00 00 mov DWORD PTR [esp],0x8
1069f2: e8 f1 f3 ff ff call 105de8 <IdtSetGate>
1069f7: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
1069fe: 00
1069ff: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106a06: 00
106a07: c7 44 24 04 2b 67 10 mov DWORD PTR [esp+0x4],0x10672b
106a0e: 00
106a0f: c7 04 24 09 00 00 00 mov DWORD PTR [esp],0x9
106a16: e8 cd f3 ff ff call 105de8 <IdtSetGate>
106a1b: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106a22: 00
106a23: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106a2a: 00
106a2b: c7 44 24 04 3b 67 10 mov DWORD PTR [esp+0x4],0x10673b
106a32: 00
106a33: c7 04 24 0a 00 00 00 mov DWORD PTR [esp],0xa
106a3a: e8 a9 f3 ff ff call 105de8 <IdtSetGate>
106a3f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106a46: 00
106a47: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106a4e: 00
106a4f: c7 44 24 04 46 67 10 mov DWORD PTR [esp+0x4],0x106746
106a56: 00
106a57: c7 04 24 0b 00 00 00 mov DWORD PTR [esp],0xb
106a5e: e8 85 f3 ff ff call 105de8 <IdtSetGate>
106a63: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106a6a: 00
106a6b: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106a72: 00
106a73: c7 44 24 04 51 67 10 mov DWORD PTR [esp+0x4],0x106751
106a7a: 00
106a7b: c7 04 24 0c 00 00 00 mov DWORD PTR [esp],0xc
106a82: e8 61 f3 ff ff call 105de8 <IdtSetGate>
106a87: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106a8e: 00
106a8f: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106a96: 00
106a97: c7 44 24 04 5c 67 10 mov DWORD PTR [esp+0x4],0x10675c
106a9e: 00
106a9f: c7 04 24 0d 00 00 00 mov DWORD PTR [esp],0xd
106aa6: e8 3d f3 ff ff call 105de8 <IdtSetGate>
106aab: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106ab2: 00
106ab3: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106aba: 00
106abb: c7 44 24 04 67 67 10 mov DWORD PTR [esp+0x4],0x106767
106ac2: 00
106ac3: c7 04 24 0e 00 00 00 mov DWORD PTR [esp],0xe
106aca: e8 19 f3 ff ff call 105de8 <IdtSetGate>
106acf: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106ad6: 00
106ad7: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106ade: 00
106adf: c7 44 24 04 72 67 10 mov DWORD PTR [esp+0x4],0x106772
106ae6: 00
106ae7: c7 04 24 0f 00 00 00 mov DWORD PTR [esp],0xf
106aee: e8 f5 f2 ff ff call 105de8 <IdtSetGate>
106af3: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106afa: 00
106afb: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106b02: 00
106b03: c7 44 24 04 82 67 10 mov DWORD PTR [esp+0x4],0x106782
106b0a: 00
106b0b: c7 04 24 10 00 00 00 mov DWORD PTR [esp],0x10
106b12: e8 d1 f2 ff ff call 105de8 <IdtSetGate>
106b17: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106b1e: 00
106b1f: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106b26: 00
106b27: c7 44 24 04 92 67 10 mov DWORD PTR [esp+0x4],0x106792
106b2e: 00
106b2f: c7 04 24 11 00 00 00 mov DWORD PTR [esp],0x11
106b36: e8 ad f2 ff ff call 105de8 <IdtSetGate>
106b3b: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106b42: 00
106b43: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106b4a: 00
106b4b: c7 44 24 04 a2 67 10 mov DWORD PTR [esp+0x4],0x1067a2
106b52: 00
106b53: c7 04 24 12 00 00 00 mov DWORD PTR [esp],0x12
106b5a: e8 89 f2 ff ff call 105de8 <IdtSetGate>
106b5f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106b66: 00
106b67: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106b6e: 00
106b6f: c7 44 24 04 b2 67 10 mov DWORD PTR [esp+0x4],0x1067b2
106b76: 00
106b77: c7 04 24 13 00 00 00 mov DWORD PTR [esp],0x13
106b7e: e8 65 f2 ff ff call 105de8 <IdtSetGate>
106b83: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106b8a: 00
106b8b: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106b92: 00
106b93: c7 44 24 04 c2 67 10 mov DWORD PTR [esp+0x4],0x1067c2
106b9a: 00
106b9b: c7 04 24 14 00 00 00 mov DWORD PTR [esp],0x14
106ba2: e8 41 f2 ff ff call 105de8 <IdtSetGate>
106ba7: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106bae: 00
106baf: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106bb6: 00
106bb7: c7 44 24 04 d2 67 10 mov DWORD PTR [esp+0x4],0x1067d2
106bbe: 00
106bbf: c7 04 24 15 00 00 00 mov DWORD PTR [esp],0x15
106bc6: e8 1d f2 ff ff call 105de8 <IdtSetGate>
106bcb: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106bd2: 00
106bd3: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106bda: 00
106bdb: c7 44 24 04 e2 67 10 mov DWORD PTR [esp+0x4],0x1067e2
106be2: 00
106be3: c7 04 24 16 00 00 00 mov DWORD PTR [esp],0x16
106bea: e8 f9 f1 ff ff call 105de8 <IdtSetGate>
106bef: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106bf6: 00
106bf7: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106bfe: 00
106bff: c7 44 24 04 f2 67 10 mov DWORD PTR [esp+0x4],0x1067f2
106c06: 00
106c07: c7 04 24 17 00 00 00 mov DWORD PTR [esp],0x17
106c0e: e8 d5 f1 ff ff call 105de8 <IdtSetGate>
106c13: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106c1a: 00
106c1b: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106c22: 00
106c23: c7 44 24 04 02 68 10 mov DWORD PTR [esp+0x4],0x106802
106c2a: 00
106c2b: c7 04 24 18 00 00 00 mov DWORD PTR [esp],0x18
106c32: e8 b1 f1 ff ff call 105de8 <IdtSetGate>
106c37: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106c3e: 00
106c3f: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106c46: 00
106c47: c7 44 24 04 12 68 10 mov DWORD PTR [esp+0x4],0x106812
106c4e: 00
106c4f: c7 04 24 19 00 00 00 mov DWORD PTR [esp],0x19
106c56: e8 8d f1 ff ff call 105de8 <IdtSetGate>
106c5b: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106c62: 00
106c63: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106c6a: 00
106c6b: c7 44 24 04 22 68 10 mov DWORD PTR [esp+0x4],0x106822
106c72: 00
106c73: c7 04 24 1a 00 00 00 mov DWORD PTR [esp],0x1a
106c7a: e8 69 f1 ff ff call 105de8 <IdtSetGate>
106c7f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106c86: 00
106c87: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106c8e: 00
106c8f: c7 44 24 04 32 68 10 mov DWORD PTR [esp+0x4],0x106832
106c96: 00
106c97: c7 04 24 1b 00 00 00 mov DWORD PTR [esp],0x1b
106c9e: e8 45 f1 ff ff call 105de8 <IdtSetGate>
106ca3: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106caa: 00
106cab: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106cb2: 00
106cb3: c7 44 24 04 42 68 10 mov DWORD PTR [esp+0x4],0x106842
106cba: 00
106cbb: c7 04 24 1c 00 00 00 mov DWORD PTR [esp],0x1c
106cc2: e8 21 f1 ff ff call 105de8 <IdtSetGate>
106cc7: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106cce: 00
106ccf: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106cd6: 00
106cd7: c7 44 24 04 52 68 10 mov DWORD PTR [esp+0x4],0x106852
106cde: 00
106cdf: c7 04 24 1d 00 00 00 mov DWORD PTR [esp],0x1d
106ce6: e8 fd f0 ff ff call 105de8 <IdtSetGate>
106ceb: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106cf2: 00
106cf3: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106cfa: 00
106cfb: c7 44 24 04 62 68 10 mov DWORD PTR [esp+0x4],0x106862
106d02: 00
106d03: c7 04 24 1e 00 00 00 mov DWORD PTR [esp],0x1e
106d0a: e8 d9 f0 ff ff call 105de8 <IdtSetGate>
106d0f: c7 44 24 0c 8e 00 00 mov DWORD PTR [esp+0xc],0x8e
106d16: 00
106d17: c7 44 24 08 08 00 00 mov DWORD PTR [esp+0x8],0x8
106d1e: 00
106d1f: c7 44 24 04 72 68 10 mov DWORD PTR [esp+0x4],0x106872
106d26: 00
106d27: c7 04 24 1f 00 00 00 mov DWORD PTR [esp],0x1f
106d2e: e8 b5 f0 ff ff call 105de8 <IdtSetGate>
106d33: 83 c4 1c add esp,0x1c
106d36: c3 ret
00106d37 <IsrsInstallHandler>:
106d37: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
106d3b: 83 f8 1f cmp eax,0x1f
106d3e: 7f 0b jg 106d4b <IsrsInstallHandler+0x14>
106d40: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
106d44: 89 14 85 80 da 10 00 mov DWORD PTR [eax*4+0x10da80],edx
106d4b: c3 ret
00106d4c <IsrsUninstallHandler>:
106d4c: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
106d50: 83 f8 1f cmp eax,0x1f
106d53: 7f 0b jg 106d60 <IsrsUninstallHandler+0x14>
106d55: c7 04 85 80 da 10 00 mov DWORD PTR [eax*4+0x10da80],0x0
106d5c: 00 00 00 00
106d60: c3 ret
00106d61 <IsrsFaultHandler>:
106d61: 83 ec 1c sub esp,0x1c
106d64: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
106d68: 8b 42 30 mov eax,DWORD PTR [edx+0x30]
106d6b: 83 f8 1f cmp eax,0x1f
106d6e: 77 1c ja 106d8c <IsrsFaultHandler+0x2b>
106d70: 8b 04 85 80 da 10 00 mov eax,DWORD PTR [eax*4+0x10da80]
106d77: 85 c0 test eax,eax
106d79: 75 0c jne 106d87 <IsrsFaultHandler+0x26>
106d7b: 89 14 24 mov DWORD PTR [esp],edx
106d7e: e8 a1 d7 ff ff call 104524 <CrashMessage>
106d83: fa cli
106d84: f4 hlt
106d85: eb 05 jmp 106d8c <IsrsFaultHandler+0x2b>
106d87: 89 14 24 mov DWORD PTR [esp],edx
106d8a: ff d0 call eax
106d8c: 83 c4 1c add esp,0x1c
106d8f: c3 ret
00106d90 <KeyboardSetKeyStatus>:
106d90: 56 push esi
106d91: 53 push ebx
106d92: 8a 44 24 0c mov al,BYTE PTR [esp+0xc]
106d96: c0 e8 03 shr al,0x3
106d99: 25 ff 00 00 00 and eax,0xff
106d9e: 8a 4c 24 0c mov cl,BYTE PTR [esp+0xc]
106da2: 83 e1 07 and ecx,0x7
106da5: 80 7c 24 10 00 cmp BYTE PTR [esp+0x10],0x0
106daa: 74 17 je 106dc3 <KeyboardSetKeyStatus+0x33>
106dac: 8a 90 cc d9 10 00 mov dl,BYTE PTR [eax+0x10d9cc]
106db2: be 01 00 00 00 mov esi,0x1
106db7: d3 e6 shl esi,cl
106db9: 09 f2 or edx,esi
106dbb: 88 90 cc d9 10 00 mov BYTE PTR [eax+0x10d9cc],dl
106dc1: eb 17 jmp 106dda <KeyboardSetKeyStatus+0x4a>
106dc3: 8a 90 cc d9 10 00 mov dl,BYTE PTR [eax+0x10d9cc]
106dc9: bb 01 00 00 00 mov ebx,0x1
106dce: d3 e3 shl ebx,cl
106dd0: f7 d3 not ebx
106dd2: 21 da and edx,ebx
106dd4: 88 90 cc d9 10 00 mov BYTE PTR [eax+0x10d9cc],dl
106dda: 5b pop ebx
106ddb: 5e pop esi
106ddc: c3 ret
00106ddd <KeyboardGetKeyStatus>:
106ddd: 8a 44 24 04 mov al,BYTE PTR [esp+0x4]
106de1: c0 e8 03 shr al,0x3
106de4: 25 ff 00 00 00 and eax,0xff
106de9: 8a 80 cc d9 10 00 mov al,BYTE PTR [eax+0x10d9cc]
106def: 8a 4c 24 04 mov cl,BYTE PTR [esp+0x4]
106df3: 83 e1 07 and ecx,0x7
106df6: ba 01 00 00 00 mov edx,0x1
106dfb: d3 e2 shl edx,cl
106dfd: 21 d0 and eax,edx
106dff: c3 ret
00106e00 <KeyboardWaitOutport>:
106e00: 53 push ebx
106e01: 83 ec 18 sub esp,0x18
106e04: bb 41 0d 03 00 mov ebx,0x30d41
106e09: c7 04 24 64 00 00 00 mov DWORD PTR [esp],0x64
106e10: e8 63 1d 00 00 call 108b78 <inportb>
106e15: a8 02 test al,0x2
106e17: 74 03 je 106e1c <KeyboardWaitOutport+0x1c>
106e19: 4b dec ebx
106e1a: 75 ed jne 106e09 <KeyboardWaitOutport+0x9>
106e1c: 83 c4 18 add esp,0x18
106e1f: 5b pop ebx
106e20: c3 ret
00106e21 <KeyboardSetScancodeSet>:
106e21: 53 push ebx
106e22: 83 ec 08 sub esp,0x8
106e25: 8a 5c 24 10 mov bl,BYTE PTR [esp+0x10]
106e29: 8d 43 ff lea eax,[ebx-0x1]
106e2c: 3c 02 cmp al,0x2
106e2e: 77 18 ja 106e48 <KeyboardSetScancodeSet+0x27>
106e30: e8 cb ff ff ff call 106e00 <KeyboardWaitOutport>
106e35: b0 f0 mov al,0xf0
106e37: e6 60 out 0x60,al
106e39: e8 c2 ff ff ff call 106e00 <KeyboardWaitOutport>
106e3e: 88 d8 mov al,bl
106e40: e6 60 out 0x60,al
106e42: 88 1d f8 c2 10 00 mov BYTE PTR ds:0x10c2f8,bl
106e48: 83 c4 08 add esp,0x8
106e4b: 5b pop ebx
106e4c: c3 ret
00106e4d <KeyboardSetRepeatRate>:
106e4d: 53 push ebx
106e4e: 83 ec 18 sub esp,0x18
106e51: 8a 5c 24 20 mov bl,BYTE PTR [esp+0x20]
106e55: 8a 44 24 24 mov al,BYTE PTR [esp+0x24]
106e59: 88 44 24 0f mov BYTE PTR [esp+0xf],al
106e5d: 80 fb 03 cmp bl,0x3
106e60: 77 1d ja 106e7f <KeyboardSetRepeatRate+0x32>
106e62: 3c 1f cmp al,0x1f
106e64: 77 19 ja 106e7f <KeyboardSetRepeatRate+0x32>
106e66: e8 95 ff ff ff call 106e00 <KeyboardWaitOutport>
106e6b: b0 f3 mov al,0xf3
106e6d: e6 60 out 0x60,al
106e6f: e8 8c ff ff ff call 106e00 <KeyboardWaitOutport>
106e74: 88 d8 mov al,bl
106e76: c1 e0 05 shl eax,0x5
106e79: 0a 44 24 0f or al,BYTE PTR [esp+0xf]
106e7d: e6 60 out 0x60,al
106e7f: 83 c4 18 add esp,0x18
106e82: 5b pop ebx
106e83: c3 ret
00106e84 <KeyboardSetLEDs>:
106e84: 56 push esi
106e85: 53 push ebx
106e86: 83 ec 04 sub esp,0x4
106e89: 80 7c 24 14 01 cmp BYTE PTR [esp+0x14],0x1
106e8e: 19 c0 sbb eax,eax
106e90: f7 d0 not eax
106e92: 83 e0 02 and eax,0x2
106e95: 80 7c 24 10 00 cmp BYTE PTR [esp+0x10],0x0
106e9a: 0f 95 c3 setne bl
106e9d: 09 d8 or eax,ebx
106e9f: 89 c6 mov esi,eax
106ea1: 80 7c 24 18 01 cmp BYTE PTR [esp+0x18],0x1
106ea6: 19 db sbb ebx,ebx
106ea8: f7 d3 not ebx
106eaa: 83 e3 04 and ebx,0x4
106ead: e8 4e ff ff ff call 106e00 <KeyboardWaitOutport>
106eb2: b0 ed mov al,0xed
106eb4: e6 60 out 0x60,al
106eb6: e8 45 ff ff ff call 106e00 <KeyboardWaitOutport>
106ebb: 09 f3 or ebx,esi
106ebd: 88 d8 mov al,bl
106ebf: e6 60 out 0x60,al
106ec1: 83 c4 04 add esp,0x4
106ec4: 5b pop ebx
106ec5: 5e pop esi
106ec6: c3 ret
00106ec7 <_process_scancode>:
106ec7: 53 push ebx
106ec8: 83 ec 18 sub esp,0x18
106ecb: 8a 5c 24 20 mov bl,BYTE PTR [esp+0x20]
106ecf: 80 fb e1 cmp bl,0xe1
106ed2: 0f 84 a4 00 00 00 je 106f7c <_process_scancode+0xb5>
106ed8: 80 fb e1 cmp bl,0xe1
106edb: 77 45 ja 106f22 <_process_scancode+0x5b>
106edd: 80 fb 7e cmp bl,0x7e
106ee0: 0f 84 a2 00 00 00 je 106f88 <_process_scancode+0xc1>
106ee6: 80 fb 7e cmp bl,0x7e
106ee9: 77 1b ja 106f06 <_process_scancode+0x3f>
106eeb: 80 fb 58 cmp bl,0x58
106eee: 0f 84 c0 00 00 00 je 106fb4 <_process_scancode+0xed>
106ef4: 80 fb 77 cmp bl,0x77
106ef7: 0f 84 a1 00 00 00 je 106f9e <_process_scancode+0xd7>
106efd: 84 db test bl,bl
106eff: 74 55 je 106f56 <_process_scancode+0x8f>
106f01: e9 c6 00 00 00 jmp 106fcc <_process_scancode+0x105>
106f06: 80 fb aa cmp bl,0xaa
106f09: 0f 84 cc 01 00 00 je 1070db <_process_scancode+0x214>
106f0f: 80 fb e0 cmp bl,0xe0
106f12: 74 5c je 106f70 <_process_scancode+0xa9>
106f14: 80 fb 83 cmp bl,0x83
106f17: 0f 85 af 00 00 00 jne 106fcc <_process_scancode+0x105>
106f1d: e9 a8 00 00 00 jmp 106fca <_process_scancode+0x103>
106f22: 80 fb fd cmp bl,0xfd
106f25: 77 21 ja 106f48 <_process_scancode+0x81>
106f27: 80 fb fc cmp bl,0xfc
106f2a: 73 2a jae 106f56 <_process_scancode+0x8f>
106f2c: 80 fb f0 cmp bl,0xf0
106f2f: 74 33 je 106f64 <_process_scancode+0x9d>
106f31: 80 fb fa cmp bl,0xfa
106f34: 0f 84 a1 01 00 00 je 1070db <_process_scancode+0x214>
106f3a: 80 fb ee cmp bl,0xee
106f3d: 0f 85 89 00 00 00 jne 106fcc <_process_scancode+0x105>
106f43: e9 93 01 00 00 jmp 1070db <_process_scancode+0x214>
106f48: 80 fb fe cmp bl,0xfe
106f4b: 0f 84 8a 01 00 00 je 1070db <_process_scancode+0x214>
106f51: 80 fb ff cmp bl,0xff
106f54: 75 76 jne 106fcc <_process_scancode+0x105>
106f56: e8 a5 fe ff ff call 106e00 <KeyboardWaitOutport>
106f5b: b0 f4 mov al,0xf4
106f5d: e6 60 out 0x60,al
106f5f: e9 77 01 00 00 jmp 1070db <_process_scancode+0x214>
106f64: 80 0d de d9 10 00 01 or BYTE PTR ds:0x10d9de,0x1
106f6b: e9 6b 01 00 00 jmp 1070db <_process_scancode+0x214>
106f70: 80 0d de d9 10 00 02 or BYTE PTR ds:0x10d9de,0x2
106f77: e9 5f 01 00 00 jmp 1070db <_process_scancode+0x214>
106f7c: 80 0d de d9 10 00 04 or BYTE PTR ds:0x10d9de,0x4
106f83: e9 53 01 00 00 jmp 1070db <_process_scancode+0x214>
106f88: a0 de d9 10 00 mov al,ds:0x10d9de
106f8d: a8 01 test al,0x1
106f8f: 75 3b jne 106fcc <_process_scancode+0x105>
106f91: 83 f0 08 xor eax,0x8
106f94: 83 c8 40 or eax,0x40
106f97: a2 de d9 10 00 mov ds:0x10d9de,al
106f9c: eb 2e jmp 106fcc <_process_scancode+0x105>
106f9e: a0 de d9 10 00 mov al,ds:0x10d9de
106fa3: a8 01 test al,0x1
106fa5: 75 25 jne 106fcc <_process_scancode+0x105>
106fa7: 83 f0 10 xor eax,0x10
106faa: 83 c8 40 or eax,0x40
106fad: a2 de d9 10 00 mov ds:0x10d9de,al
106fb2: eb 18 jmp 106fcc <_process_scancode+0x105>
106fb4: a0 de d9 10 00 mov al,ds:0x10d9de
106fb9: a8 01 test al,0x1
106fbb: 75 0f jne 106fcc <_process_scancode+0x105>
106fbd: 83 f0 20 xor eax,0x20
106fc0: 83 c8 40 or eax,0x40
106fc3: a2 de d9 10 00 mov ds:0x10d9de,al
106fc8: eb 02 jmp 106fcc <_process_scancode+0x105>
106fca: b3 02 mov bl,0x2
106fcc: 31 c0 xor eax,eax
106fce: a0 de d9 10 00 mov al,ds:0x10d9de
106fd3: a8 02 test al,0x2
106fd5: 0f 84 a2 00 00 00 je 10707d <_process_scancode+0x1b6>
106fdb: 8d 53 f0 lea edx,[ebx-0x10]
106fde: 80 fa 6d cmp dl,0x6d
106fe1: 0f 87 96 00 00 00 ja 10707d <_process_scancode+0x1b6>
106fe7: 81 e2 ff 00 00 00 and edx,0xff
106fed: ff 24 95 a0 a9 10 00 jmp DWORD PTR [edx*4+0x10a9a0]
106ff4: b3 53 mov bl,0x53
106ff6: e9 82 00 00 00 jmp 10707d <_process_scancode+0x1b6>
106ffb: b3 5c mov bl,0x5c
106ffd: eb 7e jmp 10707d <_process_scancode+0x1b6>
106fff: b3 0f mov bl,0xf
107001: eb 7a jmp 10707d <_process_scancode+0x1b6>
107003: b3 51 mov bl,0x51
107005: eb 76 jmp 10707d <_process_scancode+0x1b6>
107007: b3 50 mov bl,0x50
107009: eb 72 jmp 10707d <_process_scancode+0x1b6>
10700b: b3 18 mov bl,0x18
10700d: eb 6e jmp 10707d <_process_scancode+0x1b6>
10700f: b3 6e mov bl,0x6e
107011: eb 6a jmp 10707d <_process_scancode+0x1b6>
107013: b3 4f mov bl,0x4f
107015: eb 66 jmp 10707d <_process_scancode+0x1b6>
107017: b3 28 mov bl,0x28
107019: eb 62 jmp 10707d <_process_scancode+0x1b6>
10701b: b3 48 mov bl,0x48
10701d: eb 5e jmp 10707d <_process_scancode+0x1b6>
10701f: b3 17 mov bl,0x17
107021: eb 5a jmp 10707d <_process_scancode+0x1b6>
107023: b3 13 mov bl,0x13
107025: eb 56 jmp 10707d <_process_scancode+0x1b6>
107027: b3 47 mov bl,0x47
107029: eb 52 jmp 10707d <_process_scancode+0x1b6>
10702b: b3 39 mov bl,0x39
10702d: eb 4e jmp 10707d <_process_scancode+0x1b6>
10702f: b3 10 mov bl,0x10
107031: eb 4a jmp 10707d <_process_scancode+0x1b6>
107033: b3 30 mov bl,0x30
107035: eb 46 jmp 10707d <_process_scancode+0x1b6>
107037: b3 20 mov bl,0x20
107039: eb 42 jmp 10707d <_process_scancode+0x1b6>
10703b: b3 6a mov bl,0x6a
10703d: eb 3e jmp 10707d <_process_scancode+0x1b6>
10703f: b3 08 mov bl,0x8
107041: eb 3a jmp 10707d <_process_scancode+0x1b6>
107043: b3 19 mov bl,0x19
107045: eb 36 jmp 10707d <_process_scancode+0x1b6>
107047: b3 6d mov bl,0x6d
107049: eb 32 jmp 10707d <_process_scancode+0x1b6>
10704b: b3 40 mov bl,0x40
10704d: eb 2e jmp 10707d <_process_scancode+0x1b6>
10704f: b3 61 mov bl,0x61
107051: eb 2a jmp 10707d <_process_scancode+0x1b6>
107053: b3 64 mov bl,0x64
107055: eb 26 jmp 10707d <_process_scancode+0x1b6>
107057: b3 60 mov bl,0x60
107059: eb 22 jmp 10707d <_process_scancode+0x1b6>
10705b: b3 5e mov bl,0x5e
10705d: eb 1e jmp 10707d <_process_scancode+0x1b6>
10705f: b3 5f mov bl,0x5f
107061: eb 1a jmp 10707d <_process_scancode+0x1b6>
107063: b3 65 mov bl,0x65
107065: eb 16 jmp 10707d <_process_scancode+0x1b6>
107067: b3 67 mov bl,0x67
107069: eb 12 jmp 10707d <_process_scancode+0x1b6>
10706b: b3 68 mov bl,0x68
10706d: eb 0e jmp 10707d <_process_scancode+0x1b6>
10706f: b3 63 mov bl,0x63
107071: eb 0a jmp 10707d <_process_scancode+0x1b6>
107073: b3 56 mov bl,0x56
107075: eb 06 jmp 10707d <_process_scancode+0x1b6>
107077: b3 62 mov bl,0x62
107079: eb 02 jmp 10707d <_process_scancode+0x1b6>
10707b: b3 38 mov bl,0x38
10707d: a8 04 test al,0x4
10707f: 74 28 je 1070a9 <_process_scancode+0x1e2>
107081: a8 01 test al,0x1
107083: 0f 94 c0 sete al
107086: 25 ff 00 00 00 and eax,0xff
10708b: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10708f: c7 04 24 57 00 00 00 mov DWORD PTR [esp],0x57
107096: e8 f5 fc ff ff call 106d90 <KeyboardSetKeyStatus>
10709b: 80 fb 77 cmp bl,0x77
10709e: 75 3b jne 1070db <_process_scancode+0x214>
1070a0: c6 05 de d9 10 00 00 mov BYTE PTR ds:0x10d9de,0x0
1070a7: eb 32 jmp 1070db <_process_scancode+0x214>
1070a9: a8 01 test al,0x1
1070ab: 0f 94 c0 sete al
1070ae: 25 ff 00 00 00 and eax,0xff
1070b3: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1070b7: 31 c0 xor eax,eax
1070b9: 88 d8 mov al,bl
1070bb: 89 04 24 mov DWORD PTR [esp],eax
1070be: e8 cd fc ff ff call 106d90 <KeyboardSetKeyStatus>
1070c3: 88 1d dd d9 10 00 mov BYTE PTR ds:0x10d9dd,bl
1070c9: a0 de d9 10 00 mov al,ds:0x10d9de
1070ce: a2 dc d9 10 00 mov ds:0x10d9dc,al
1070d3: 83 e0 f8 and eax,0xfffffff8
1070d6: a2 de d9 10 00 mov ds:0x10d9de,al
1070db: 83 c4 18 add esp,0x18
1070de: 5b pop ebx
1070df: c3 ret
001070e0 <KeyboardHandler>:
1070e0: 83 ec 1c sub esp,0x1c
1070e3: c7 04 24 60 00 00 00 mov DWORD PTR [esp],0x60
1070ea: e8 89 1a 00 00 call 108b78 <inportb>
1070ef: 25 ff 00 00 00 and eax,0xff
1070f4: 89 04 24 mov DWORD PTR [esp],eax
1070f7: e8 cb fd ff ff call 106ec7 <_process_scancode>
1070fc: 31 c0 xor eax,eax
1070fe: a0 de d9 10 00 mov al,ds:0x10d9de
107103: a8 40 test al,0x40
107105: 74 24 je 10712b <KeyboardHandler+0x4b>
107107: 89 c2 mov edx,eax
107109: 83 e2 20 and edx,0x20
10710c: 89 54 24 08 mov DWORD PTR [esp+0x8],edx
107110: 89 c2 mov edx,eax
107112: 83 e2 10 and edx,0x10
107115: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
107119: 83 e0 08 and eax,0x8
10711c: 89 04 24 mov DWORD PTR [esp],eax
10711f: e8 60 fd ff ff call 106e84 <KeyboardSetLEDs>
107124: 80 25 de d9 10 00 bf and BYTE PTR ds:0x10d9de,0xbf
10712b: 83 c4 1c add esp,0x1c
10712e: c3 ret
0010712f <KeyboardWaitInport>:
10712f: 53 push ebx
107130: 83 ec 18 sub esp,0x18
107133: bb 41 0d 03 00 mov ebx,0x30d41
107138: c7 04 24 64 00 00 00 mov DWORD PTR [esp],0x64
10713f: e8 34 1a 00 00 call 108b78 <inportb>
107144: a8 01 test al,0x1
107146: 75 03 jne 10714b <KeyboardWaitInport+0x1c>
107148: 4b dec ebx
107149: 75 ed jne 107138 <KeyboardWaitInport+0x9>
10714b: 83 c4 18 add esp,0x18
10714e: 5b pop ebx
10714f: c3 ret
00107150 <KeyboardInstallA>:
107150: 83 ec 0c sub esp,0xc
107153: e8 a8 fc ff ff call 106e00 <KeyboardWaitOutport>
107158: b0 ff mov al,0xff
10715a: e6 60 out 0x60,al
10715c: c6 05 dc d9 10 00 00 mov BYTE PTR ds:0x10d9dc,0x0
107163: c6 05 de d9 10 00 00 mov BYTE PTR ds:0x10d9de,0x0
10716a: b8 00 00 00 00 mov eax,0x0
10716f: c6 80 cc d9 10 00 00 mov BYTE PTR [eax+0x10d9cc],0x0
107176: 40 inc eax
107177: 83 f8 10 cmp eax,0x10
10717a: 75 f3 jne 10716f <KeyboardInstallA+0x1f>
10717c: 83 c4 0c add esp,0xc
10717f: c3 ret
00107180 <KeyboardInstallB>:
107180: 53 push ebx
107181: 83 ec 18 sub esp,0x18
107184: e8 a6 ff ff ff call 10712f <KeyboardWaitInport>
107189: c7 04 24 60 00 00 00 mov DWORD PTR [esp],0x60
107190: e8 e3 19 00 00 call 108b78 <inportb>
107195: 3c aa cmp al,0xaa
107197: 74 04 je 10719d <KeyboardInstallB+0x1d>
107199: 3c fc cmp al,0xfc
10719b: 75 ec jne 107189 <KeyboardInstallB+0x9>
10719d: 3c fc cmp al,0xfc
10719f: 74 54 je 1071f5 <KeyboardInstallB+0x75>
1071a1: c7 44 24 04 0b 00 00 mov DWORD PTR [esp+0x4],0xb
1071a8: 00
1071a9: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
1071b0: e8 98 fc ff ff call 106e4d <KeyboardSetRepeatRate>
1071b5: c7 04 24 02 00 00 00 mov DWORD PTR [esp],0x2
1071bc: e8 60 fc ff ff call 106e21 <KeyboardSetScancodeSet>
1071c1: e8 3a fc ff ff call 106e00 <KeyboardWaitOutport>
1071c6: b0 20 mov al,0x20
1071c8: e6 64 out 0x64,al
1071ca: c7 04 24 60 00 00 00 mov DWORD PTR [esp],0x60
1071d1: e8 a2 19 00 00 call 108b78 <inportb>
1071d6: 88 c3 mov bl,al
1071d8: 3c fa cmp al,0xfa
1071da: 74 ee je 1071ca <KeyboardInstallB+0x4a>
1071dc: 3c aa cmp al,0xaa
1071de: 74 ea je 1071ca <KeyboardInstallB+0x4a>
1071e0: e8 1b fc ff ff call 106e00 <KeyboardWaitOutport>
1071e5: b0 60 mov al,0x60
1071e7: e6 64 out 0x64,al
1071e9: e8 12 fc ff ff call 106e00 <KeyboardWaitOutport>
1071ee: 88 d8 mov al,bl
1071f0: 83 e0 bf and eax,0xffffffbf
1071f3: e6 60 out 0x60,al
1071f5: 83 c4 18 add esp,0x18
1071f8: 5b pop ebx
1071f9: c3 ret
1071fa: 00 00 add BYTE PTR [eax],al
1071fc: 00 00 add BYTE PTR [eax],al
...
00107200 <start>:
107200: 66 87 db xchg bx,bx
107203: 89 c1 mov ecx,eax
107205: bc 00 1b 11 00 mov esp,0x111b00
10720a: 81 f9 02 b0 ad 2b cmp ecx,0x2badb002
107210: 75 09 jne 10721b <start.bad>
107212: 54 push esp
107213: 53 push ebx
107214: e8 cb 02 00 00 call 1074e4 <k_main>
107219: fa cli
10721a: f4 hlt
0010721b <start.bad>:
10721b: e8 af b6 ff ff call 1028cf <ConsoleClear>
107220: e8 6c bf ff ff call 103191 <CommandOsver>
107225: a1 85 72 10 00 mov eax,ds:0x107285
10722a: 50 push eax
10722b: 68 37 72 10 00 push 0x107237
107230: e8 1b bd ff ff call 102f50 <ConsoleWrite>
107235: fa cli
107236: f4 hlt
00107237 <ErrorString>:
107237: 0a 25 23 21 20 46 or ah,BYTE PTR ds:0x46202123
10723d: 61 popa
10723e: 74 61 je 1072a1 <LogWrite+0x19>
107240: 6c ins BYTE PTR es:[edi],dx
107241: 20 65 72 and BYTE PTR [ebp+0x72],ah
107244: 72 6f jb 1072b5 <LogWrite+0x2d>
107246: 72 3a jb 107282 <ErrorString+0x4b>
107248: 20 4e 6f and BYTE PTR [esi+0x6f],cl
10724b: 74 20 je 10726d <ErrorString+0x36>
10724d: 62 6f 6f bound ebp,QWORD PTR [edi+0x6f]
107250: 74 65 je 1072b7 <LogWrite+0x2f>
107252: 64 20 77 69 and BYTE PTR fs:[edi+0x69],dh
107256: 74 68 je 1072c0 <LogWrite+0x38>
107258: 20 6d 75 and BYTE PTR [ebp+0x75],ch
10725b: 6c ins BYTE PTR es:[edi],dx
10725c: 74 69 je 1072c7 <LogWrite+0x3f>
10725e: 62 6f 6f bound ebp,QWORD PTR [edi+0x6f]
107261: 74 20 je 107283 <ErrorString+0x4c>
107263: 63 6f 6d arpl WORD PTR [edi+0x6d],bp
107266: 70 6c jo 1072d4 <LogWrite+0x4c>
107268: 69 61 6e 74 20 62 6f imul esp,DWORD PTR [ecx+0x6e],0x6f622074
10726f: 6f outs dx,DWORD PTR ds:[esi]
107270: 74 6c je 1072de <LogWrite+0x56>
107272: 6f outs dx,DWORD PTR ds:[esi]
107273: 61 popa
107274: 64 fs
107275: 65 gs
107276: 72 20 jb 107298 <LogWrite+0x10>
107278: 28 65 2e sub BYTE PTR [ebp+0x2e],ah
10727b: 67 2e 20 47 52 and BYTE PTR cs:[bx+0x52],al
107280: 55 push ebp
107281: 42 inc edx
107282: 29 2e sub DWORD PTR [esi],ebp
...
00107285 <ErrorColor>:
107285: 0c 00 or al,0x0
...
00107288 <LogWrite>:
107288: 55 push ebp
107289: 57 push edi
10728a: 56 push esi
10728b: 53 push ebx
10728c: 83 ec 4c sub esp,0x4c
10728f: 8b 74 24 64 mov esi,DWORD PTR [esp+0x64]
107293: 8a 5c 24 60 mov bl,BYTE PTR [esp+0x60]
107297: 8b 54 24 68 mov edx,DWORD PTR [esp+0x68]
10729b: b8 00 00 00 00 mov eax,0x0
1072a0: 85 d2 test edx,edx
1072a2: 0f 84 2e 02 00 00 je 1074d6 <LogWrite+0x24e>
1072a8: 80 3a 00 cmp BYTE PTR [edx],0x0
1072ab: 0f 84 20 02 00 00 je 1074d1 <LogWrite+0x249>
1072b1: 85 f6 test esi,esi
1072b3: 0f 84 18 02 00 00 je 1074d1 <LogWrite+0x249>
1072b9: 80 3e 00 cmp BYTE PTR [esi],0x0
1072bc: 0f 84 14 02 00 00 je 1074d6 <LogWrite+0x24e>
1072c2: 89 14 24 mov DWORD PTR [esp],edx
1072c5: e8 e6 19 00 00 call 108cb0 <strlen>
1072ca: 89 c5 mov ebp,eax
1072cc: a0 00 c0 10 00 mov al,ds:0x10c000
1072d1: 88 44 24 1f mov BYTE PTR [esp+0x1f],al
1072d5: a1 00 c3 10 00 mov eax,ds:0x10c300
1072da: 84 db test bl,bl
1072dc: 0f 94 44 24 18 sete BYTE PTR [esp+0x18]
1072e1: 85 c0 test eax,eax
1072e3: 74 35 je 10731a <LogWrite+0x92>
1072e5: 80 7c 24 18 00 cmp BYTE PTR [esp+0x18],0x0
1072ea: 74 2e je 10731a <LogWrite+0x92>
1072ec: bf 00 00 00 00 mov edi,0x0
1072f1: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1072f5: 89 34 24 mov DWORD PTR [esp],esi
1072f8: e8 7a 1a 00 00 call 108d77 <strcasecmp>
1072fd: 85 c0 test eax,eax
1072ff: 0f 84 d9 01 00 00 je 1074de <LogWrite+0x256>
107305: 47 inc edi
107306: 8b 04 bd 00 c3 10 00 mov eax,DWORD PTR [edi*4+0x10c300]
10730d: 85 c0 test eax,eax
10730f: 74 0e je 10731f <LogWrite+0x97>
107311: 80 7c 24 18 00 cmp BYTE PTR [esp+0x18],0x0
107316: 75 d9 jne 1072f1 <LogWrite+0x69>
107318: eb 05 jmp 10731f <LogWrite+0x97>
10731a: bf 00 00 00 00 mov edi,0x0
10731f: b8 00 00 00 00 mov eax,0x0
107324: 84 db test bl,bl
107326: 0f 84 aa 01 00 00 je 1074d6 <LogWrite+0x24e>
10732c: 84 db test bl,bl
10732e: 74 16 je 107346 <LogWrite+0xbe>
107330: c7 44 24 04 0f 00 00 mov DWORD PTR [esp+0x4],0xf
107337: 00
107338: c7 04 24 04 00 00 00 mov DWORD PTR [esp],0x4
10733f: e8 ef b5 ff ff call 102933 <Color>
107344: eb 1b jmp 107361 <LogWrite+0xd9>
107346: b8 89 88 88 88 mov eax,0x88888889
10734b: f7 e7 mul edi
10734d: 89 d0 mov eax,edx
10734f: c1 e8 03 shr eax,0x3
107352: 89 c2 mov edx,eax
107354: c1 e2 04 shl edx,0x4
107357: 89 f9 mov ecx,edi
107359: 28 d1 sub cl,dl
10735b: 88 ca mov dl,cl
10735d: 8d 44 02 01 lea eax,[edx+eax*1+0x1]
107361: a2 00 c0 10 00 mov ds:0x10c000,al
107366: c7 04 24 5b 00 00 00 mov DWORD PTR [esp],0x5b
10736d: e8 a2 ba ff ff call 102e14 <_write_char>
107372: 89 34 24 mov DWORD PTR [esp],esi
107375: e8 70 bb ff ff call 102eea <_write_string>
10737a: c7 04 24 5d 00 00 00 mov DWORD PTR [esp],0x5d
107381: e8 8e ba ff ff call 102e14 <_write_char>
107386: 8a 44 24 1f mov al,BYTE PTR [esp+0x1f]
10738a: a2 00 c0 10 00 mov ds:0x10c000,al
10738f: c7 04 24 20 00 00 00 mov DWORD PTR [esp],0x20
107396: e8 79 ba ff ff call 102e14 <_write_char>
10739b: bb 00 00 00 00 mov ebx,0x0
1073a0: 85 ed test ebp,ebp
1073a2: 0f 84 16 01 00 00 je 1074be <LogWrite+0x236>
1073a8: 8d 74 24 6c lea esi,[esp+0x6c]
1073ac: 8d 7c 24 20 lea edi,[esp+0x20]
1073b0: 8b 44 24 68 mov eax,DWORD PTR [esp+0x68]
1073b4: 8a 14 18 mov dl,BYTE PTR [eax+ebx*1]
1073b7: 80 fa 25 cmp dl,0x25
1073ba: 74 10 je 1073cc <LogWrite+0x144>
1073bc: 0f be d2 movsx edx,dl
1073bf: 89 14 24 mov DWORD PTR [esp],edx
1073c2: e8 4d ba ff ff call 102e14 <_write_char>
1073c7: e9 e9 00 00 00 jmp 1074b5 <LogWrite+0x22d>
1073cc: 43 inc ebx
1073cd: 8a 04 18 mov al,BYTE PTR [eax+ebx*1]
1073d0: 83 e8 23 sub eax,0x23
1073d3: 3c 55 cmp al,0x55
1073d5: 0f 87 da 00 00 00 ja 1074b5 <LogWrite+0x22d>
1073db: 25 ff 00 00 00 and eax,0xff
1073e0: ff 24 85 60 ac 10 00 jmp DWORD PTR [eax*4+0x10ac60]
1073e7: 8d 4e 04 lea ecx,[esi+0x4]
1073ea: 89 4c 24 18 mov DWORD PTR [esp+0x18],ecx
1073ee: 0f be 06 movsx eax,BYTE PTR [esi]
1073f1: 89 04 24 mov DWORD PTR [esp],eax
1073f4: e8 1b ba ff ff call 102e14 <_write_char>
1073f9: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
1073fd: e9 b3 00 00 00 jmp 1074b5 <LogWrite+0x22d>
107402: 8d 46 04 lea eax,[esi+0x4]
107405: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
107409: 8b 06 mov eax,DWORD PTR [esi]
10740b: 89 04 24 mov DWORD PTR [esp],eax
10740e: e8 d7 ba ff ff call 102eea <_write_string>
107413: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
107417: e9 99 00 00 00 jmp 1074b5 <LogWrite+0x22d>
10741c: 8d 4e 04 lea ecx,[esi+0x4]
10741f: 89 4c 24 18 mov DWORD PTR [esp+0x18],ecx
107423: c7 44 24 08 0a 00 00 mov DWORD PTR [esp+0x8],0xa
10742a: 00
10742b: 8b 06 mov eax,DWORD PTR [esi]
10742d: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
107431: 89 3c 24 mov DWORD PTR [esp],edi
107434: e8 ff ce ff ff call 104338 <ConvertIntToString>
107439: 89 3c 24 mov DWORD PTR [esp],edi
10743c: e8 a9 ba ff ff call 102eea <_write_string>
107441: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
107445: eb 6e jmp 1074b5 <LogWrite+0x22d>
107447: 8d 46 04 lea eax,[esi+0x4]
10744a: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
10744e: c7 44 24 08 10 00 00 mov DWORD PTR [esp+0x8],0x10
107455: 00
107456: 8b 06 mov eax,DWORD PTR [esi]
107458: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10745c: 89 3c 24 mov DWORD PTR [esp],edi
10745f: e8 54 cf ff ff call 1043b8 <ConvertUIntToString>
107464: 89 3c 24 mov DWORD PTR [esp],edi
107467: e8 7e ba ff ff call 102eea <_write_string>
10746c: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
107470: eb 43 jmp 1074b5 <LogWrite+0x22d>
107472: 8d 4e 04 lea ecx,[esi+0x4]
107475: 89 4c 24 18 mov DWORD PTR [esp+0x18],ecx
107479: c7 44 24 08 0a 00 00 mov DWORD PTR [esp+0x8],0xa
107480: 00
107481: 8b 06 mov eax,DWORD PTR [esi]
107483: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
107487: 89 3c 24 mov DWORD PTR [esp],edi
10748a: e8 29 cf ff ff call 1043b8 <ConvertUIntToString>
10748f: 89 3c 24 mov DWORD PTR [esp],edi
107492: e8 53 ba ff ff call 102eea <_write_string>
107497: 8b 74 24 18 mov esi,DWORD PTR [esp+0x18]
10749b: eb 18 jmp 1074b5 <LogWrite+0x22d>
10749d: 8a 06 mov al,BYTE PTR [esi]
10749f: a2 00 c0 10 00 mov ds:0x10c000,al
1074a4: 8d 76 04 lea esi,[esi+0x4]
1074a7: eb 0c jmp 1074b5 <LogWrite+0x22d>
1074a9: c7 04 24 25 00 00 00 mov DWORD PTR [esp],0x25
1074b0: e8 5f b9 ff ff call 102e14 <_write_char>
1074b5: 43 inc ebx
1074b6: 39 dd cmp ebp,ebx
1074b8: 0f 87 f2 fe ff ff ja 1073b0 <LogWrite+0x128>
1074be: 8a 4c 24 1f mov cl,BYTE PTR [esp+0x1f]
1074c2: 88 0d 00 c0 10 00 mov BYTE PTR ds:0x10c000,cl
1074c8: e8 c8 b3 ff ff call 102895 <ConsoleCursorUpdateHardware>
1074cd: 89 d8 mov eax,ebx
1074cf: eb 05 jmp 1074d6 <LogWrite+0x24e>
1074d1: b8 00 00 00 00 mov eax,0x0
1074d6: 83 c4 4c add esp,0x4c
1074d9: 5b pop ebx
1074da: 5e pop esi
1074db: 5f pop edi
1074dc: 5d pop ebp
1074dd: c3 ret
1074de: 47 inc edi
1074df: e9 48 fe ff ff jmp 10732c <LogWrite+0xa4>
001074e4 <k_main>:
1074e4: 57 push edi
1074e5: 56 push esi
1074e6: 53 push ebx
1074e7: 83 ec 10 sub esp,0x10
1074ea: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
1074ee: bb 00 20 11 00 mov ebx,0x112000
1074f3: f6 06 08 test BYTE PTR [esi],0x8
1074f6: 74 20 je 107518 <k_main+0x34>
1074f8: 8b 46 18 mov eax,DWORD PTR [esi+0x18]
1074fb: 8b 7e 14 mov edi,DWORD PTR [esi+0x14]
1074fe: 85 ff test edi,edi
107500: 74 16 je 107518 <k_main+0x34>
107502: ba 00 00 00 00 mov edx,0x0
107507: 8b 48 04 mov ecx,DWORD PTR [eax+0x4]
10750a: 39 cb cmp ebx,ecx
10750c: 73 02 jae 107510 <k_main+0x2c>
10750e: 89 cb mov ebx,ecx
107510: 42 inc edx
107511: 83 c0 10 add eax,0x10
107514: 39 fa cmp edx,edi
107516: 75 ef jne 107507 <k_main+0x23>
107518: e8 b2 b3 ff ff call 1028cf <ConsoleClear>
10751d: 89 1c 24 mov DWORD PTR [esp],ebx
107520: e8 55 10 00 00 call 10857a <MemoryTempInitialize>
107525: 89 34 24 mov DWORD PTR [esp],esi
107528: e8 88 0f 00 00 call 1084b5 <MemoryInitialize>
10752d: e8 10 1b 00 00 call 109042 <TaskInitialize>
107532: e8 61 e7 ff ff call 105c98 <HalInitialize>
107537: 89 34 24 mov DWORD PTR [esp],esi
10753a: e8 3d ec ff ff call 10617c <luxInitrdInstall>
10753f: e8 16 d7 ff ff call 104c5a <DriversInstall>
107544: c7 44 24 08 dc ad 10 mov DWORD PTR [esp+0x8],0x10addc
10754b: 00
10754c: c7 44 24 04 fd ad 10 mov DWORD PTR [esp+0x4],0x10adfd
107553: 00
107554: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
10755b: e8 28 fd ff ff call 107288 <LogWrite>
107560: e8 e4 cc ff ff call 104249 <ConsoleMain>
107565: 83 c4 10 add esp,0x10
107568: 5b pop ebx
107569: 5e pop esi
10756a: 5f pop edi
10756b: c3 ret
0010756c <MemHeapCompare>:
10756c: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
107570: 8b 48 08 mov ecx,DWORD PTR [eax+0x8]
107573: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
107577: 8b 50 08 mov edx,DWORD PTR [eax+0x8]
10757a: b8 01 00 00 00 mov eax,0x1
10757f: 39 d1 cmp ecx,edx
107581: 77 0b ja 10758e <MemHeapCompare+0x22>
107583: 39 d1 cmp ecx,edx
107585: 0f 94 c0 sete al
107588: 25 ff 00 00 00 and eax,0xff
10758d: 48 dec eax
10758e: c3 ret
0010758f <MemHeapFindSmallestHole>:
10758f: 57 push edi
107590: 56 push esi
107591: 53 push ebx
107592: 83 ec 20 sub esp,0x20
107595: 8b 7c 24 30 mov edi,DWORD PTR [esp+0x30]
107599: 8b 74 24 38 mov esi,DWORD PTR [esp+0x38]
10759d: 8a 44 24 34 mov al,BYTE PTR [esp+0x34]
1075a1: 88 44 24 1f mov BYTE PTR [esp+0x1f],al
1075a5: bb ff ff ff ff mov ebx,0xffffffff
1075aa: 83 7e 04 00 cmp DWORD PTR [esi+0x4],0x0
1075ae: 74 3e je 1075ee <MemHeapFindSmallestHole+0x5f>
1075b0: bb 00 00 00 00 mov ebx,0x0
1075b5: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
1075b9: 89 1c 24 mov DWORD PTR [esp],ebx
1075bc: e8 0c 15 00 00 call 108acd <OrderedArrayLookup>
1075c1: 80 7c 24 1f 00 cmp BYTE PTR [esp+0x1f],0x0
1075c6: 74 16 je 1075de <MemHeapFindSmallestHole+0x4f>
1075c8: 8d 50 0c lea edx,[eax+0xc]
1075cb: f7 da neg edx
1075cd: 81 e2 ff 0f 00 00 and edx,0xfff
1075d3: 8b 40 08 mov eax,DWORD PTR [eax+0x8]
1075d6: 29 d0 sub eax,edx
1075d8: 39 f8 cmp eax,edi
1075da: 72 07 jb 1075e3 <MemHeapFindSmallestHole+0x54>
1075dc: eb 10 jmp 1075ee <MemHeapFindSmallestHole+0x5f>
1075de: 3b 78 08 cmp edi,DWORD PTR [eax+0x8]
1075e1: 76 0b jbe 1075ee <MemHeapFindSmallestHole+0x5f>
1075e3: 43 inc ebx
1075e4: 39 5e 04 cmp DWORD PTR [esi+0x4],ebx
1075e7: 77 cc ja 1075b5 <MemHeapFindSmallestHole+0x26>
1075e9: bb ff ff ff ff mov ebx,0xffffffff
1075ee: 89 d8 mov eax,ebx
1075f0: 83 c4 20 add esp,0x20
1075f3: 5b pop ebx
1075f4: 5e pop esi
1075f5: 5f pop edi
1075f6: c3 ret
001075f7 <MemHeapHeaderSetup>:
1075f7: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
1075fb: c7 00 14 e5 db 50 mov DWORD PTR [eax],0x50dbe514
107601: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
107605: 88 50 04 mov BYTE PTR [eax+0x4],dl
107608: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
10760c: 89 50 08 mov DWORD PTR [eax+0x8],edx
10760f: c3 ret
00107610 <MemHeapFooterSetup>:
107610: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
107614: c7 00 14 e5 db 50 mov DWORD PTR [eax],0x50dbe514
10761a: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
10761e: 89 50 04 mov DWORD PTR [eax+0x4],edx
107621: c3 ret
00107622 <MemHeapCreate>:
107622: 57 push edi
107623: 56 push esi
107624: 53 push ebx
107625: 83 ec 30 sub esp,0x30
107628: 8b 74 24 40 mov esi,DWORD PTR [esp+0x40]
10762c: 8b 7c 24 44 mov edi,DWORD PTR [esp+0x44]
107630: 8a 44 24 4c mov al,BYTE PTR [esp+0x4c]
107634: 88 44 24 1f mov BYTE PTR [esp+0x1f],al
107638: 89 f8 mov eax,edi
10763a: 09 f0 or eax,esi
10763c: bb 00 00 00 00 mov ebx,0x0
107641: a9 ff 0f 00 00 test eax,0xfff
107646: 0f 85 95 00 00 00 jne 1076e1 <MemHeapCreate+0xbf>
10764c: c7 04 24 20 00 00 00 mov DWORD PTR [esp],0x20
107653: e8 49 0b 00 00 call 1081a1 <kmalloc>
107658: 89 c3 mov ebx,eax
10765a: 8d 44 24 20 lea eax,[esp+0x20]
10765e: c7 44 24 0c 6c 75 10 mov DWORD PTR [esp+0xc],0x10756c
107665: 00
107666: c7 44 24 08 00 00 02 mov DWORD PTR [esp+0x8],0x20000
10766d: 00
10766e: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
107672: 89 04 24 mov DWORD PTR [esp],eax
107675: e8 e0 12 00 00 call 10895a <OrderedArrayPlace>
10767a: 83 ec 04 sub esp,0x4
10767d: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
107681: 89 03 mov DWORD PTR [ebx],eax
107683: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
107687: 89 43 04 mov DWORD PTR [ebx+0x4],eax
10768a: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
10768e: 89 43 08 mov DWORD PTR [ebx+0x8],eax
107691: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
107695: 89 43 0c mov DWORD PTR [ebx+0xc],eax
107698: 81 c6 00 00 08 00 add esi,0x80000
10769e: f7 c6 ff 0f 00 00 test esi,0xfff
1076a4: 74 0c je 1076b2 <MemHeapCreate+0x90>
1076a6: 81 e6 00 f0 ff ff and esi,0xfffff000
1076ac: 81 c6 00 10 00 00 add esi,0x1000
1076b2: 89 73 10 mov DWORD PTR [ebx+0x10],esi
1076b5: 89 7b 14 mov DWORD PTR [ebx+0x14],edi
1076b8: 8a 44 24 1f mov al,BYTE PTR [esp+0x1f]
1076bc: 88 43 1c mov BYTE PTR [ebx+0x1c],al
1076bf: 8b 44 24 48 mov eax,DWORD PTR [esp+0x48]
1076c3: 89 43 18 mov DWORD PTR [ebx+0x18],eax
1076c6: c7 06 14 e5 db 50 mov DWORD PTR [esi],0x50dbe514
1076cc: c6 46 04 00 mov BYTE PTR [esi+0x4],0x0
1076d0: 29 f7 sub edi,esi
1076d2: 89 7e 08 mov DWORD PTR [esi+0x8],edi
1076d5: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
1076d9: 89 34 24 mov DWORD PTR [esp],esi
1076dc: e8 83 13 00 00 call 108a64 <OrderedArrayInsert>
1076e1: 89 d8 mov eax,ebx
1076e3: 83 c4 30 add esp,0x30
1076e6: 5b pop ebx
1076e7: 5e pop esi
1076e8: 5f pop edi
1076e9: c3 ret
001076ea <MemHeapExpand>:
1076ea: 55 push ebp
1076eb: 57 push edi
1076ec: 56 push esi
1076ed: 53 push ebx
1076ee: 83 ec 1c sub esp,0x1c
1076f1: 8b 7c 24 34 mov edi,DWORD PTR [esp+0x34]
1076f5: 8b 6c 24 38 mov ebp,DWORD PTR [esp+0x38]
1076f9: 8b 77 14 mov esi,DWORD PTR [edi+0x14]
1076fc: 8b 57 10 mov edx,DWORD PTR [edi+0x10]
1076ff: 89 f0 mov eax,esi
107701: 29 d0 sub eax,edx
107703: 3b 44 24 30 cmp eax,DWORD PTR [esp+0x30]
107707: 73 61 jae 10776a <MemHeapExpand+0x80>
107709: f7 44 24 30 ff 0f 00 test DWORD PTR [esp+0x30],0xfff
107710: 00
107711: 74 14 je 107727 <MemHeapExpand+0x3d>
107713: 8b 4c 24 30 mov ecx,DWORD PTR [esp+0x30]
107717: 81 e1 00 f0 ff ff and ecx,0xfffff000
10771d: 81 c1 00 10 00 00 add ecx,0x1000
107723: 89 4c 24 30 mov DWORD PTR [esp+0x30],ecx
107727: 03 54 24 30 add edx,DWORD PTR [esp+0x30]
10772b: 3b 57 18 cmp edx,DWORD PTR [edi+0x18]
10772e: 73 3a jae 10776a <MemHeapExpand+0x80>
107730: 39 d6 cmp esi,edx
107732: 73 2f jae 107763 <MemHeapExpand+0x79>
107734: 31 db xor ebx,ebx
107736: 8a 5f 1c mov bl,BYTE PTR [edi+0x1c]
107739: e8 05 07 00 00 call 107e43 <MemPhAllocateBlock>
10773e: 89 6c 24 0c mov DWORD PTR [esp+0xc],ebp
107742: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
107746: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
10774a: 89 04 24 mov DWORD PTR [esp],eax
10774d: e8 94 04 00 00 call 107be6 <PagingMapPage>
107752: 81 c6 00 10 00 00 add esi,0x1000
107758: 8b 54 24 30 mov edx,DWORD PTR [esp+0x30]
10775c: 03 57 10 add edx,DWORD PTR [edi+0x10]
10775f: 39 f2 cmp edx,esi
107761: 77 d1 ja 107734 <MemHeapExpand+0x4a>
107763: 89 57 14 mov DWORD PTR [edi+0x14],edx
107766: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
10776a: 83 c4 1c add esp,0x1c
10776d: 5b pop ebx
10776e: 5e pop esi
10776f: 5f pop edi
107770: 5d pop ebp
107771: c3 ret
00107772 <MemHeapContract>:
107772: 55 push ebp
107773: 57 push edi
107774: 56 push esi
107775: 53 push ebx
107776: 83 ec 1c sub esp,0x1c
107779: 8b 54 24 30 mov edx,DWORD PTR [esp+0x30]
10777d: 8b 7c 24 34 mov edi,DWORD PTR [esp+0x34]
107781: 8b 6c 24 38 mov ebp,DWORD PTR [esp+0x38]
107785: 8b 5f 14 mov ebx,DWORD PTR [edi+0x14]
107788: 8b 47 10 mov eax,DWORD PTR [edi+0x10]
10778b: 89 de mov esi,ebx
10778d: 29 c6 sub esi,eax
10778f: 39 d6 cmp esi,edx
107791: 76 4d jbe 1077e0 <MemHeapContract+0x6e>
107793: f7 c2 ff 0f 00 00 test edx,0xfff
107799: 74 0c je 1077a7 <MemHeapContract+0x35>
10779b: 81 e2 00 f0 ff ff and edx,0xfffff000
1077a1: 81 c2 00 10 00 00 add edx,0x1000
1077a7: 89 d6 mov esi,edx
1077a9: 81 fa 00 00 07 00 cmp edx,0x70000
1077af: 73 05 jae 1077b6 <MemHeapContract+0x44>
1077b1: be 00 00 07 00 mov esi,0x70000
1077b6: 81 eb 00 10 00 00 sub ebx,0x1000
1077bc: 01 f0 add eax,esi
1077be: 39 d8 cmp eax,ebx
1077c0: 73 1b jae 1077dd <MemHeapContract+0x6b>
1077c2: 89 6c 24 04 mov DWORD PTR [esp+0x4],ebp
1077c6: 89 1c 24 mov DWORD PTR [esp],ebx
1077c9: e8 4e 05 00 00 call 107d1c <PagingUnmapPage>
1077ce: 81 eb 00 10 00 00 sub ebx,0x1000
1077d4: 89 f0 mov eax,esi
1077d6: 03 47 10 add eax,DWORD PTR [edi+0x10]
1077d9: 39 d8 cmp eax,ebx
1077db: 72 e5 jb 1077c2 <MemHeapContract+0x50>
1077dd: 89 47 14 mov DWORD PTR [edi+0x14],eax
1077e0: 89 f0 mov eax,esi
1077e2: 83 c4 1c add esp,0x1c
1077e5: 5b pop ebx
1077e6: 5e pop esi
1077e7: 5f pop edi
1077e8: 5d pop ebp
1077e9: c3 ret
001077ea <MemHeapAlloc>:
1077ea: 55 push ebp
1077eb: 57 push edi
1077ec: 56 push esi
1077ed: 53 push ebx
1077ee: 83 ec 3c sub esp,0x3c
1077f1: 8b 6c 24 50 mov ebp,DWORD PTR [esp+0x50]
1077f5: 8b 5c 24 58 mov ebx,DWORD PTR [esp+0x58]
1077f9: 8a 44 24 54 mov al,BYTE PTR [esp+0x54]
1077fd: 88 44 24 18 mov BYTE PTR [esp+0x18],al
107801: 85 ed test ebp,ebp
107803: 0f 84 f6 01 00 00 je 1079ff <MemHeapAlloc+0x215>
107809: 85 db test ebx,ebx
10780b: 0f 84 ee 01 00 00 je 1079ff <MemHeapAlloc+0x215>
107811: 8d 7d 14 lea edi,[ebp+0x14]
107814: 88 c2 mov dl,al
107816: 81 e2 ff 00 00 00 and edx,0xff
10781c: 89 54 24 20 mov DWORD PTR [esp+0x20],edx
107820: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
107824: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
107828: 89 3c 24 mov DWORD PTR [esp],edi
10782b: e8 5f fd ff ff call 10758f <MemHeapFindSmallestHole>
107830: 89 44 24 1c mov DWORD PTR [esp+0x1c],eax
107834: 83 f8 ff cmp eax,0xffffffff
107837: 0f 85 e9 00 00 00 jne 107926 <MemHeapAlloc+0x13c>
10783d: 8b 4b 14 mov ecx,DWORD PTR [ebx+0x14]
107840: 89 4c 24 1c mov DWORD PTR [esp+0x1c],ecx
107844: 2b 4b 10 sub ecx,DWORD PTR [ebx+0x10]
107847: 89 4c 24 24 mov DWORD PTR [esp+0x24],ecx
10784b: 8b 44 24 5c mov eax,DWORD PTR [esp+0x5c]
10784f: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
107853: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107857: 01 cf add edi,ecx
107859: 89 3c 24 mov DWORD PTR [esp],edi
10785c: e8 89 fe ff ff call 1076ea <MemHeapExpand>
107861: 8b 43 14 mov eax,DWORD PTR [ebx+0x14]
107864: 2b 43 10 sub eax,DWORD PTR [ebx+0x10]
107867: 89 44 24 28 mov DWORD PTR [esp+0x28],eax
10786b: 83 7b 04 00 cmp DWORD PTR [ebx+0x4],0x0
10786f: 74 40 je 1078b1 <MemHeapAlloc+0xc7>
107871: bf 00 00 00 00 mov edi,0x0
107876: c7 44 24 18 00 00 00 mov DWORD PTR [esp+0x18],0x0
10787d: 00
10787e: be 00 00 00 00 mov esi,0x0
107883: 89 6c 24 2c mov DWORD PTR [esp+0x2c],ebp
107887: 89 dd mov ebp,ebx
107889: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
10788d: 89 34 24 mov DWORD PTR [esp],esi
107890: e8 38 12 00 00 call 108acd <OrderedArrayLookup>
107895: 39 f8 cmp eax,edi
107897: 76 06 jbe 10789f <MemHeapAlloc+0xb5>
107899: 89 c7 mov edi,eax
10789b: 89 74 24 18 mov DWORD PTR [esp+0x18],esi
10789f: 46 inc esi
1078a0: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
1078a3: 39 f0 cmp eax,esi
1078a5: 77 e0 ja 107887 <MemHeapAlloc+0x9d>
1078a7: 89 ee mov esi,ebp
1078a9: 8b 6c 24 2c mov ebp,DWORD PTR [esp+0x2c]
1078ad: 85 c0 test eax,eax
1078af: 75 27 jne 1078d8 <MemHeapAlloc+0xee>
1078b1: 8b 74 24 1c mov esi,DWORD PTR [esp+0x1c]
1078b5: c7 06 14 e5 db 50 mov DWORD PTR [esi],0x50dbe514
1078bb: c6 46 04 00 mov BYTE PTR [esi+0x4],0x0
1078bf: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
1078c3: 2b 44 24 24 sub eax,DWORD PTR [esp+0x24]
1078c7: 89 46 08 mov DWORD PTR [esi+0x8],eax
1078ca: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
1078ce: 89 34 24 mov DWORD PTR [esp],esi
1078d1: e8 8e 11 00 00 call 108a64 <OrderedArrayInsert>
1078d6: eb 1d jmp 1078f5 <MemHeapAlloc+0x10b>
1078d8: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
1078dc: 8b 4c 24 18 mov ecx,DWORD PTR [esp+0x18]
1078e0: 89 0c 24 mov DWORD PTR [esp],ecx
1078e3: e8 e5 11 00 00 call 108acd <OrderedArrayLookup>
1078e8: 89 c6 mov esi,eax
1078ea: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
1078ee: 2b 44 24 24 sub eax,DWORD PTR [esp+0x24]
1078f2: 89 46 08 mov DWORD PTR [esi+0x8],eax
1078f5: 8b 46 08 mov eax,DWORD PTR [esi+0x8]
1078f8: 8d 44 06 f8 lea eax,[esi+eax*1-0x8]
1078fc: c7 00 14 e5 db 50 mov DWORD PTR [eax],0x50dbe514
107902: 89 70 04 mov DWORD PTR [eax+0x4],esi
107905: 8b 44 24 5c mov eax,DWORD PTR [esp+0x5c]
107909: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
10790d: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
107911: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
107915: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
107919: 89 2c 24 mov DWORD PTR [esp],ebp
10791c: e8 c9 fe ff ff call 1077ea <MemHeapAlloc>
107921: e9 de 00 00 00 jmp 107a04 <MemHeapAlloc+0x21a>
107926: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
10792a: 8b 44 24 1c mov eax,DWORD PTR [esp+0x1c]
10792e: 89 04 24 mov DWORD PTR [esp],eax
107931: e8 97 11 00 00 call 108acd <OrderedArrayLookup>
107936: 89 c6 mov esi,eax
107938: 8b 56 08 mov edx,DWORD PTR [esi+0x8]
10793b: 89 54 24 14 mov DWORD PTR [esp+0x14],edx
10793f: 29 fa sub edx,edi
107941: 83 fa 14 cmp edx,0x14
107944: 77 06 ja 10794c <MemHeapAlloc+0x162>
107946: 01 d5 add ebp,edx
107948: 8b 7c 24 14 mov edi,DWORD PTR [esp+0x14]
10794c: 80 7c 24 18 00 cmp BYTE PTR [esp+0x18],0x0
107951: 74 43 je 107996 <MemHeapAlloc+0x1ac>
107953: 89 f2 mov edx,esi
107955: 81 e2 00 f0 ff ff and edx,0xfffff000
10795b: 74 39 je 107996 <MemHeapAlloc+0x1ac>
10795d: c7 00 14 e5 db 50 mov DWORD PTR [eax],0x50dbe514
107963: c6 40 04 00 mov BYTE PTR [eax+0x4],0x0
107967: 81 e6 ff 0f 00 00 and esi,0xfff
10796d: b9 f4 0f 00 00 mov ecx,0xff4
107972: 29 f1 sub ecx,esi
107974: 89 48 08 mov DWORD PTR [eax+0x8],ecx
107977: c7 82 ec 0f 00 00 14 mov DWORD PTR [edx+0xfec],0x50dbe514
10797e: e5 db 50
107981: 89 82 f0 0f 00 00 mov DWORD PTR [edx+0xff0],eax
107987: 8b 48 08 mov ecx,DWORD PTR [eax+0x8]
10798a: 29 4c 24 14 sub DWORD PTR [esp+0x14],ecx
10798e: 8d b2 f4 0f 00 00 lea esi,[edx+0xff4]
107994: eb 10 jmp 1079a6 <MemHeapAlloc+0x1bc>
107996: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
10799a: 8b 44 24 1c mov eax,DWORD PTR [esp+0x1c]
10799e: 89 04 24 mov DWORD PTR [esp],eax
1079a1: e8 3f 11 00 00 call 108ae5 <OrderedArrayDeleteIndex>
1079a6: 01 f5 add ebp,esi
1079a8: c7 06 14 e5 db 50 mov DWORD PTR [esi],0x50dbe514
1079ae: c6 46 04 01 mov BYTE PTR [esi+0x4],0x1
1079b2: 89 7e 08 mov DWORD PTR [esi+0x8],edi
1079b5: c7 45 0c 14 e5 db 50 mov DWORD PTR [ebp+0xc],0x50dbe514
1079bc: 89 75 10 mov DWORD PTR [ebp+0x10],esi
1079bf: 39 7c 24 14 cmp DWORD PTR [esp+0x14],edi
1079c3: 74 35 je 1079fa <MemHeapAlloc+0x210>
1079c5: 8d 45 14 lea eax,[ebp+0x14]
1079c8: 8b 54 24 14 mov edx,DWORD PTR [esp+0x14]
1079cc: 29 fa sub edx,edi
1079ce: c7 45 14 14 e5 db 50 mov DWORD PTR [ebp+0x14],0x50dbe514
1079d5: c6 40 04 00 mov BYTE PTR [eax+0x4],0x0
1079d9: 89 50 08 mov DWORD PTR [eax+0x8],edx
1079dc: 8d 54 10 f8 lea edx,[eax+edx*1-0x8]
1079e0: 3b 53 14 cmp edx,DWORD PTR [ebx+0x14]
1079e3: 73 09 jae 1079ee <MemHeapAlloc+0x204>
1079e5: c7 02 14 e5 db 50 mov DWORD PTR [edx],0x50dbe514
1079eb: 89 42 04 mov DWORD PTR [edx+0x4],eax
1079ee: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
1079f2: 89 04 24 mov DWORD PTR [esp],eax
1079f5: e8 6a 10 00 00 call 108a64 <OrderedArrayInsert>
1079fa: 8d 46 0c lea eax,[esi+0xc]
1079fd: eb 05 jmp 107a04 <MemHeapAlloc+0x21a>
1079ff: b8 00 00 00 00 mov eax,0x0
107a04: 83 c4 3c add esp,0x3c
107a07: 5b pop ebx
107a08: 5e pop esi
107a09: 5f pop edi
107a0a: 5d pop ebp
107a0b: c3 ret
00107a0c <MemHeapFree>:
107a0c: 55 push ebp
107a0d: 57 push edi
107a0e: 56 push esi
107a0f: 53 push ebx
107a10: 83 ec 2c sub esp,0x2c
107a13: 8b 44 24 40 mov eax,DWORD PTR [esp+0x40]
107a17: 8b 5c 24 44 mov ebx,DWORD PTR [esp+0x44]
107a1b: 85 c0 test eax,eax
107a1d: 0f 84 86 01 00 00 je 107ba9 <MemHeapFree+0x19d>
107a23: 85 db test ebx,ebx
107a25: 0f 84 7e 01 00 00 je 107ba9 <MemHeapFree+0x19d>
107a2b: 8d 68 f4 lea ebp,[eax-0xc]
107a2e: 89 ef mov edi,ebp
107a30: 8b 50 fc mov edx,DWORD PTR [eax-0x4]
107a33: 81 78 f4 14 e5 db 50 cmp DWORD PTR [eax-0xc],0x50dbe514
107a3a: 0f 85 69 01 00 00 jne 107ba9 <MemHeapFree+0x19d>
107a40: 8d 74 15 00 lea esi,[ebp+edx*1+0x0]
107a44: 8d 4e f8 lea ecx,[esi-0x8]
107a47: 81 7e f8 14 e5 db 50 cmp DWORD PTR [esi-0x8],0x50dbe514
107a4e: 0f 85 55 01 00 00 jne 107ba9 <MemHeapFree+0x19d>
107a54: c6 40 f8 00 mov BYTE PTR [eax-0x8],0x0
107a58: c6 44 24 13 01 mov BYTE PTR [esp+0x13],0x1
107a5d: 81 78 ec 14 e5 db 50 cmp DWORD PTR [eax-0x14],0x50dbe514
107a64: 75 16 jne 107a7c <MemHeapFree+0x70>
107a66: 8b 40 f0 mov eax,DWORD PTR [eax-0x10]
107a69: 80 78 04 00 cmp BYTE PTR [eax+0x4],0x0
107a6d: 75 0d jne 107a7c <MemHeapFree+0x70>
107a6f: 89 41 04 mov DWORD PTR [ecx+0x4],eax
107a72: 01 50 08 add DWORD PTR [eax+0x8],edx
107a75: 89 c7 mov edi,eax
107a77: c6 44 24 13 00 mov BYTE PTR [esp+0x13],0x0
107a7c: 3b 73 14 cmp esi,DWORD PTR [ebx+0x14]
107a7f: 73 73 jae 107af4 <MemHeapFree+0xe8>
107a81: 81 3e 14 e5 db 50 cmp DWORD PTR [esi],0x50dbe514
107a87: 75 6b jne 107af4 <MemHeapFree+0xe8>
107a89: 80 7e 04 00 cmp BYTE PTR [esi+0x4],0x0
107a8d: 75 65 jne 107af4 <MemHeapFree+0xe8>
107a8f: 8b 46 08 mov eax,DWORD PTR [esi+0x8]
107a92: 01 47 08 add DWORD PTR [edi+0x8],eax
107a95: 8b 46 08 mov eax,DWORD PTR [esi+0x8]
107a98: 8d 44 06 f8 lea eax,[esi+eax*1-0x8]
107a9c: 89 44 24 14 mov DWORD PTR [esp+0x14],eax
107aa0: bd 00 00 00 00 mov ebp,0x0
107aa5: 83 7b 04 00 cmp DWORD PTR [ebx+0x4],0x0
107aa9: 75 10 jne 107abb <MemHeapFree+0xaf>
107aab: e9 f0 00 00 00 jmp 107ba0 <MemHeapFree+0x194>
107ab0: 45 inc ebp
107ab1: 39 6b 04 cmp DWORD PTR [ebx+0x4],ebp
107ab4: 77 0b ja 107ac1 <MemHeapFree+0xb5>
107ab6: e9 df 00 00 00 jmp 107b9a <MemHeapFree+0x18e>
107abb: 89 7c 24 18 mov DWORD PTR [esp+0x18],edi
107abf: 89 f7 mov edi,esi
107ac1: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107ac5: 89 2c 24 mov DWORD PTR [esp],ebp
107ac8: e8 00 10 00 00 call 108acd <OrderedArrayLookup>
107acd: 39 c7 cmp edi,eax
107acf: 75 df jne 107ab0 <MemHeapFree+0xa4>
107ad1: 89 5c 24 1c mov DWORD PTR [esp+0x1c],ebx
107ad5: 89 fe mov esi,edi
107ad7: 8b 7c 24 18 mov edi,DWORD PTR [esp+0x18]
107adb: 8b 4c 24 14 mov ecx,DWORD PTR [esp+0x14]
107adf: 39 6b 04 cmp DWORD PTR [ebx+0x4],ebp
107ae2: 76 10 jbe 107af4 <MemHeapFree+0xe8>
107ae4: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107ae8: 89 2c 24 mov DWORD PTR [esp],ebp
107aeb: e8 f5 0f 00 00 call 108ae5 <OrderedArrayDeleteIndex>
107af0: 8b 4c 24 14 mov ecx,DWORD PTR [esp+0x14]
107af4: 8d 69 08 lea ebp,[ecx+0x8]
107af7: 3b 6b 14 cmp ebp,DWORD PTR [ebx+0x14]
107afa: 0f 85 85 00 00 00 jne 107b85 <MemHeapFree+0x179>
107b00: 2b 6b 10 sub ebp,DWORD PTR [ebx+0x10]
107b03: 8b 44 24 48 mov eax,DWORD PTR [esp+0x48]
107b07: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
107b0b: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107b0f: 8b 47 08 mov eax,DWORD PTR [edi+0x8]
107b12: 8d 44 07 f8 lea eax,[edi+eax*1-0x8]
107b16: 89 04 24 mov DWORD PTR [esp],eax
107b19: e8 54 fc ff ff call 107772 <MemHeapContract>
107b1e: 8b 57 08 mov edx,DWORD PTR [edi+0x8]
107b21: 89 e9 mov ecx,ebp
107b23: 29 c1 sub ecx,eax
107b25: 39 ca cmp edx,ecx
107b27: 77 0d ja 107b36 <MemHeapFree+0x12a>
107b29: bd 00 00 00 00 mov ebp,0x0
107b2e: 83 7b 04 00 cmp DWORD PTR [ebx+0x4],0x0
107b32: 75 20 jne 107b54 <MemHeapFree+0x148>
107b34: eb 4f jmp 107b85 <MemHeapFree+0x179>
107b36: 29 ea sub edx,ebp
107b38: 01 d0 add eax,edx
107b3a: 89 47 08 mov DWORD PTR [edi+0x8],eax
107b3d: 8d 44 07 f8 lea eax,[edi+eax*1-0x8]
107b41: c7 00 14 e5 db 50 mov DWORD PTR [eax],0x50dbe514
107b47: 89 78 04 mov DWORD PTR [eax+0x4],edi
107b4a: eb 39 jmp 107b85 <MemHeapFree+0x179>
107b4c: 45 inc ebp
107b4d: 39 6b 04 cmp DWORD PTR [ebx+0x4],ebp
107b50: 77 08 ja 107b5a <MemHeapFree+0x14e>
107b52: eb 2d jmp 107b81 <MemHeapFree+0x175>
107b54: 89 7c 24 14 mov DWORD PTR [esp+0x14],edi
107b58: 89 f7 mov edi,esi
107b5a: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107b5e: 89 2c 24 mov DWORD PTR [esp],ebp
107b61: e8 67 0f 00 00 call 108acd <OrderedArrayLookup>
107b66: 39 c7 cmp edi,eax
107b68: 75 e2 jne 107b4c <MemHeapFree+0x140>
107b6a: 8b 7c 24 14 mov edi,DWORD PTR [esp+0x14]
107b6e: 39 6b 04 cmp DWORD PTR [ebx+0x4],ebp
107b71: 76 12 jbe 107b85 <MemHeapFree+0x179>
107b73: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107b77: 89 2c 24 mov DWORD PTR [esp],ebp
107b7a: e8 66 0f 00 00 call 108ae5 <OrderedArrayDeleteIndex>
107b7f: eb 04 jmp 107b85 <MemHeapFree+0x179>
107b81: 8b 7c 24 14 mov edi,DWORD PTR [esp+0x14]
107b85: 80 7c 24 13 00 cmp BYTE PTR [esp+0x13],0x0
107b8a: 74 1d je 107ba9 <MemHeapFree+0x19d>
107b8c: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107b90: 89 3c 24 mov DWORD PTR [esp],edi
107b93: e8 cc 0e 00 00 call 108a64 <OrderedArrayInsert>
107b98: eb 0f jmp 107ba9 <MemHeapFree+0x19d>
107b9a: 89 fe mov esi,edi
107b9c: 8b 7c 24 18 mov edi,DWORD PTR [esp+0x18]
107ba0: 8b 4c 24 14 mov ecx,DWORD PTR [esp+0x14]
107ba4: e9 4b ff ff ff jmp 107af4 <MemHeapFree+0xe8>
107ba9: 83 c4 2c add esp,0x2c
107bac: 5b pop ebx
107bad: 5e pop esi
107bae: 5f pop edi
107baf: 5d pop ebp
107bb0: c3 ret
107bb1: 00 00 add BYTE PTR [eax],al
...
00107bb4 <PagingEnable>:
107bb4: 0f 20 c0 mov eax,cr0
107bb7: 0d 00 00 00 80 or eax,0x80000000
107bbc: 0f 22 c0 mov cr0,eax
107bbf: c3 ret
00107bc0 <PagingDisable>:
107bc0: 0f 20 c0 mov eax,cr0
107bc3: 25 ff ff ff 7f and eax,0x7fffffff
107bc8: 0f 22 c0 mov cr0,eax
107bcb: c3 ret
00107bcc <PagingSwitchDirectory>:
107bcc: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
107bd0: a3 e8 d9 10 00 mov ds:0x10d9e8,eax
107bd5: 8b 80 00 20 00 00 mov eax,DWORD PTR [eax+0x2000]
107bdb: 0f 22 d8 mov cr3,eax
107bde: c3 ret
00107bdf <PagingFlushTlb>:
107bdf: 0f 20 d8 mov eax,cr3
107be2: 0f 22 d8 mov cr3,eax
107be5: c3 ret
00107be6 <PagingMapPage>:
107be6: 55 push ebp
107be7: 57 push edi
107be8: 56 push esi
107be9: 53 push ebx
107bea: 83 ec 3c sub esp,0x3c
107bed: 8b 7c 24 54 mov edi,DWORD PTR [esp+0x54]
107bf1: 8b 5c 24 5c mov ebx,DWORD PTR [esp+0x5c]
107bf5: 89 fe mov esi,edi
107bf7: c1 ee 16 shr esi,0x16
107bfa: c1 ef 0c shr edi,0xc
107bfd: 81 e7 ff 03 00 00 and edi,0x3ff
107c03: 8b 6c 24 50 mov ebp,DWORD PTR [esp+0x50]
107c07: 81 e5 00 f0 ff ff and ebp,0xfffff000
107c0d: 8b 44 24 58 mov eax,DWORD PTR [esp+0x58]
107c11: 25 ff 0f 00 00 and eax,0xfff
107c16: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
107c1a: 83 3c b3 00 cmp DWORD PTR [ebx+esi*4],0x0
107c1e: 75 45 jne 107c65 <PagingMapPage+0x7f>
107c20: 8d 44 24 2c lea eax,[esp+0x2c]
107c24: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
107c28: c7 04 24 00 10 00 00 mov DWORD PTR [esp],0x1000
107c2f: e8 4c 06 00 00 call 108280 <kmalloc_ap>
107c34: 89 44 24 1c mov DWORD PTR [esp+0x1c],eax
107c38: c7 44 24 08 00 10 00 mov DWORD PTR [esp+0x8],0x1000
107c3f: 00
107c40: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
107c47: 00
107c48: 89 04 24 mov DWORD PTR [esp],eax
107c4b: e8 c7 03 00 00 call 108017 <memset>
107c50: 8b 44 24 1c mov eax,DWORD PTR [esp+0x1c]
107c54: 89 04 b3 mov DWORD PTR [ebx+esi*4],eax
107c57: 8b 44 24 2c mov eax,DWORD PTR [esp+0x2c]
107c5b: 83 c8 07 or eax,0x7
107c5e: 89 84 b3 00 10 00 00 mov DWORD PTR [ebx+esi*4+0x1000],eax
107c65: 8b 04 b3 mov eax,DWORD PTR [ebx+esi*4]
107c68: 83 cd 01 or ebp,0x1
107c6b: 0b 6c 24 18 or ebp,DWORD PTR [esp+0x18]
107c6f: 89 2c b8 mov DWORD PTR [eax+edi*4],ebp
107c72: 3b 1d e8 d9 10 00 cmp ebx,DWORD PTR ds:0x10d9e8
107c78: 75 05 jne 107c7f <PagingMapPage+0x99>
107c7a: e8 60 ff ff ff call 107bdf <PagingFlushTlb>
107c7f: 83 c4 3c add esp,0x3c
107c82: 5b pop ebx
107c83: 5e pop esi
107c84: 5f pop edi
107c85: 5d pop ebp
107c86: c3 ret
00107c87 <PagingInitialize>:
107c87: 57 push edi
107c88: 56 push esi
107c89: 53 push ebx
107c8a: 83 ec 10 sub esp,0x10
107c8d: 8b 7c 24 20 mov edi,DWORD PTR [esp+0x20]
107c91: c7 04 24 04 20 00 00 mov DWORD PTR [esp],0x2004
107c98: e8 4d 05 00 00 call 1081ea <kmalloc_a>
107c9d: 89 c6 mov esi,eax
107c9f: c7 44 24 08 04 20 00 mov DWORD PTR [esp+0x8],0x2004
107ca6: 00
107ca7: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
107cae: 00
107caf: 89 04 24 mov DWORD PTR [esp],eax
107cb2: e8 60 03 00 00 call 108017 <memset>
107cb7: 89 35 e4 d9 10 00 mov DWORD PTR ds:0x10d9e4,esi
107cbd: 8d 86 00 10 00 00 lea eax,[esi+0x1000]
107cc3: 89 86 00 20 00 00 mov DWORD PTR [esi+0x2000],eax
107cc9: bb 00 00 00 00 mov ebx,0x0
107cce: 89 74 24 0c mov DWORD PTR [esp+0xc],esi
107cd2: c7 44 24 08 02 00 00 mov DWORD PTR [esp+0x8],0x2
107cd9: 00
107cda: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
107cde: 89 1c 24 mov DWORD PTR [esp],ebx
107ce1: e8 00 ff ff ff call 107be6 <PagingMapPage>
107ce6: 81 c3 00 10 00 00 add ebx,0x1000
107cec: 8b 07 mov eax,DWORD PTR [edi]
107cee: 8d 90 00 04 00 00 lea edx,[eax+0x400]
107cf4: 39 da cmp edx,ebx
107cf6: 73 d6 jae 107cce <PagingInitialize+0x47>
107cf8: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
107cfc: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
107d03: e8 5b 02 00 00 call 107f63 <MemPhReserveBlocks>
107d08: 89 34 24 mov DWORD PTR [esp],esi
107d0b: e8 bc fe ff ff call 107bcc <PagingSwitchDirectory>
107d10: e8 9f fe ff ff call 107bb4 <PagingEnable>
107d15: 83 c4 10 add esp,0x10
107d18: 5b pop ebx
107d19: 5e pop esi
107d1a: 5f pop edi
107d1b: c3 ret
00107d1c <PagingUnmapPage>:
107d1c: 53 push ebx
107d1d: 83 ec 18 sub esp,0x18
107d20: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
107d24: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
107d28: 89 d0 mov eax,edx
107d2a: c1 e8 16 shr eax,0x16
107d2d: 8b 04 83 mov eax,DWORD PTR [ebx+eax*4]
107d30: 85 c0 test eax,eax
107d32: 74 32 je 107d66 <PagingUnmapPage+0x4a>
107d34: c1 ea 0c shr edx,0xc
107d37: 81 e2 ff 03 00 00 and edx,0x3ff
107d3d: 8b 0c 90 mov ecx,DWORD PTR [eax+edx*4]
107d40: 85 c9 test ecx,ecx
107d42: 74 22 je 107d66 <PagingUnmapPage+0x4a>
107d44: c7 04 90 00 00 00 00 mov DWORD PTR [eax+edx*4],0x0
107d4b: 81 e1 00 f0 ff ff and ecx,0xfffff000
107d51: 89 0c 24 mov DWORD PTR [esp],ecx
107d54: e8 68 01 00 00 call 107ec1 <MemPhFreeBlock>
107d59: 3b 1d e8 d9 10 00 cmp ebx,DWORD PTR ds:0x10d9e8
107d5f: 75 05 jne 107d66 <PagingUnmapPage+0x4a>
107d61: e8 79 fe ff ff call 107bdf <PagingFlushTlb>
107d66: 83 c4 18 add esp,0x18
107d69: 5b pop ebx
107d6a: c3 ret
00107d6b <PagingGetPhysical>:
107d6b: 8b 4c 24 04 mov ecx,DWORD PTR [esp+0x4]
107d6f: 89 ca mov edx,ecx
107d71: c1 ea 16 shr edx,0x16
107d74: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
107d78: 8b 14 90 mov edx,DWORD PTR [eax+edx*4]
107d7b: b8 00 00 00 00 mov eax,0x0
107d80: 85 d2 test edx,edx
107d82: 74 17 je 107d9b <PagingGetPhysical+0x30>
107d84: c1 e9 0c shr ecx,0xc
107d87: 81 e1 ff 03 00 00 and ecx,0x3ff
107d8d: 8b 14 8a mov edx,DWORD PTR [edx+ecx*4]
107d90: 85 d2 test edx,edx
107d92: 74 07 je 107d9b <PagingGetPhysical+0x30>
107d94: 89 d0 mov eax,edx
107d96: 25 00 f0 ff ff and eax,0xfffff000
107d9b: c3 ret
00107d9c <ConvertIndexToBlock>:
107d9c: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
107da0: 89 c1 mov ecx,eax
107da2: c1 e9 05 shr ecx,0x5
107da5: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
107da9: 89 0a mov DWORD PTR [edx],ecx
107dab: 83 e0 1f and eax,0x1f
107dae: 8b 54 24 0c mov edx,DWORD PTR [esp+0xc]
107db2: 89 02 mov DWORD PTR [edx],eax
107db4: c3 ret
00107db5 <ConvertBlockToIndex>:
107db5: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
107db9: c1 e0 05 shl eax,0x5
107dbc: 0b 44 24 08 or eax,DWORD PTR [esp+0x8]
107dc0: c3 ret
00107dc1 <MemPhSetBlock>:
107dc1: 53 push ebx
107dc2: 8b 4c 24 08 mov ecx,DWORD PTR [esp+0x8]
107dc6: 89 c8 mov eax,ecx
107dc8: c1 e8 05 shr eax,0x5
107dcb: 83 e1 1f and ecx,0x1f
107dce: 80 7c 24 0c 00 cmp BYTE PTR [esp+0xc],0x0
107dd3: 74 2a je 107dff <MemPhSetBlock+0x3e>
107dd5: c1 e0 02 shl eax,0x2
107dd8: 03 05 f4 d9 10 00 add eax,DWORD PTR ds:0x10d9f4
107dde: bb 01 00 00 00 mov ebx,0x1
107de3: d3 e3 shl ebx,cl
107de5: 89 da mov edx,ebx
107de7: 23 10 and edx,DWORD PTR [eax]
107de9: 83 fa 01 cmp edx,0x1
107dec: 0f 92 c2 setb dl
107def: 81 e2 ff 00 00 00 and edx,0xff
107df5: 01 15 f0 d9 10 00 add DWORD PTR ds:0x10d9f0,edx
107dfb: 09 18 or DWORD PTR [eax],ebx
107dfd: eb 2a jmp 107e29 <MemPhSetBlock+0x68>
107dff: c1 e0 02 shl eax,0x2
107e02: 03 05 f4 d9 10 00 add eax,DWORD PTR ds:0x10d9f4
107e08: ba 01 00 00 00 mov edx,0x1
107e0d: d3 e2 shl edx,cl
107e0f: 89 d1 mov ecx,edx
107e11: 23 08 and ecx,DWORD PTR [eax]
107e13: 83 f9 01 cmp ecx,0x1
107e16: 8b 0d f0 d9 10 00 mov ecx,DWORD PTR ds:0x10d9f0
107e1c: 83 d1 ff adc ecx,0xffffffff
107e1f: 89 0d f0 d9 10 00 mov DWORD PTR ds:0x10d9f0,ecx
107e25: f7 d2 not edx
107e27: 21 10 and DWORD PTR [eax],edx
107e29: 5b pop ebx
107e2a: c3 ret
00107e2b <MemPhGetBlock>:
107e2b: 8b 4c 24 04 mov ecx,DWORD PTR [esp+0x4]
107e2f: b8 01 00 00 00 mov eax,0x1
107e34: d3 e0 shl eax,cl
107e36: c1 e9 05 shr ecx,0x5
107e39: 8b 15 f4 d9 10 00 mov edx,DWORD PTR ds:0x10d9f4
107e3f: 23 04 8a and eax,DWORD PTR [edx+ecx*4]
107e42: c3 ret
00107e43 <MemPhAllocateBlock>:
107e43: 56 push esi
107e44: 53 push ebx
107e45: 83 ec 08 sub esp,0x8
107e48: 8b 35 f8 d9 10 00 mov esi,DWORD PTR ds:0x10d9f8
107e4e: b8 ff ff ff ff mov eax,0xffffffff
107e53: c1 ee 05 shr esi,0x5
107e56: 74 63 je 107ebb <MemPhAllocateBlock+0x78>
107e58: 8b 0d f4 d9 10 00 mov ecx,DWORD PTR ds:0x10d9f4
107e5e: 8b 11 mov edx,DWORD PTR [ecx]
107e60: b8 00 00 00 00 mov eax,0x0
107e65: 83 fa ff cmp edx,0xffffffff
107e68: 74 47 je 107eb1 <MemPhAllocateBlock+0x6e>
107e6a: eb 0a jmp 107e76 <MemPhAllocateBlock+0x33>
107e6c: 8b 14 81 mov edx,DWORD PTR [ecx+eax*4]
107e6f: 83 fa ff cmp edx,0xffffffff
107e72: 74 3d je 107eb1 <MemPhAllocateBlock+0x6e>
107e74: eb 05 jmp 107e7b <MemPhAllocateBlock+0x38>
107e76: b8 00 00 00 00 mov eax,0x0
107e7b: b9 00 00 00 00 mov ecx,0x0
107e80: f6 c2 01 test dl,0x1
107e83: 74 0e je 107e93 <MemPhAllocateBlock+0x50>
107e85: be 01 00 00 00 mov esi,0x1
107e8a: 41 inc ecx
107e8b: 89 f3 mov ebx,esi
107e8d: d3 e3 shl ebx,cl
107e8f: 85 d3 test ebx,edx
107e91: 75 f7 jne 107e8a <MemPhAllocateBlock+0x47>
107e93: 89 c3 mov ebx,eax
107e95: c1 e3 05 shl ebx,0x5
107e98: 09 cb or ebx,ecx
107e9a: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
107ea1: 00
107ea2: 89 1c 24 mov DWORD PTR [esp],ebx
107ea5: e8 17 ff ff ff call 107dc1 <MemPhSetBlock>
107eaa: 89 d8 mov eax,ebx
107eac: c1 e0 0c shl eax,0xc
107eaf: eb 0a jmp 107ebb <MemPhAllocateBlock+0x78>
107eb1: 40 inc eax
107eb2: 39 f0 cmp eax,esi
107eb4: 75 b6 jne 107e6c <MemPhAllocateBlock+0x29>
107eb6: b8 ff ff ff ff mov eax,0xffffffff
107ebb: 83 c4 08 add esp,0x8
107ebe: 5b pop ebx
107ebf: 5e pop esi
107ec0: c3 ret
00107ec1 <MemPhFreeBlock>:
107ec1: 83 ec 08 sub esp,0x8
107ec4: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
107ec8: c1 e8 0c shr eax,0xc
107ecb: 74 10 je 107edd <MemPhFreeBlock+0x1c>
107ecd: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
107ed4: 00
107ed5: 89 04 24 mov DWORD PTR [esp],eax
107ed8: e8 e4 fe ff ff call 107dc1 <MemPhSetBlock>
107edd: 83 c4 08 add esp,0x8
107ee0: c3 ret
00107ee1 <MemPhInitialize>:
107ee1: 53 push ebx
107ee2: 83 ec 28 sub esp,0x28
107ee5: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
107ee9: 89 d8 mov eax,ebx
107eeb: c1 e8 02 shr eax,0x2
107eee: a3 f8 d9 10 00 mov ds:0x10d9f8,eax
107ef3: 89 1d ec d9 10 00 mov DWORD PTR ds:0x10d9ec,ebx
107ef9: 89 d8 mov eax,ebx
107efb: c1 e8 07 shr eax,0x7
107efe: 8d 04 85 04 00 00 00 lea eax,[eax*4+0x4]
107f05: 89 04 24 mov DWORD PTR [esp],eax
107f08: e8 94 02 00 00 call 1081a1 <kmalloc>
107f0d: a3 f4 d9 10 00 mov ds:0x10d9f4,eax
107f12: 8b 15 f8 d9 10 00 mov edx,DWORD PTR ds:0x10d9f8
107f18: c1 ea 05 shr edx,0x5
107f1b: 8d 14 95 04 00 00 00 lea edx,[edx*4+0x4]
107f22: 89 54 24 08 mov DWORD PTR [esp+0x8],edx
107f26: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
107f2d: 00
107f2e: 89 04 24 mov DWORD PTR [esp],eax
107f31: e8 e1 00 00 00 call 108017 <memset>
107f36: 89 5c 24 10 mov DWORD PTR [esp+0x10],ebx
107f3a: c7 44 24 0c 0a 00 00 mov DWORD PTR [esp+0xc],0xa
107f41: 00
107f42: c7 44 24 08 08 ae 10 mov DWORD PTR [esp+0x8],0x10ae08
107f49: 00
107f4a: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
107f51: 00
107f52: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
107f59: e8 2a f3 ff ff call 107288 <LogWrite>
107f5e: 83 c4 28 add esp,0x28
107f61: 5b pop ebx
107f62: c3 ret
00107f63 <MemPhReserveBlocks>:
107f63: 56 push esi
107f64: 53 push ebx
107f65: 83 ec 08 sub esp,0x8
107f68: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
107f6c: 8b 5c 24 14 mov ebx,DWORD PTR [esp+0x14]
107f70: c1 eb 0c shr ebx,0xc
107f73: 89 c6 mov esi,eax
107f75: c1 ee 0c shr esi,0xc
107f78: 01 de add esi,ebx
107f7a: a9 ff 0f 00 00 test eax,0xfff
107f7f: 0f 95 c0 setne al
107f82: 25 ff 00 00 00 and eax,0xff
107f87: 01 c6 add esi,eax
107f89: 39 f3 cmp ebx,esi
107f8b: 73 15 jae 107fa2 <MemPhReserveBlocks+0x3f>
107f8d: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
107f94: 00
107f95: 89 1c 24 mov DWORD PTR [esp],ebx
107f98: e8 24 fe ff ff call 107dc1 <MemPhSetBlock>
107f9d: 43 inc ebx
107f9e: 39 de cmp esi,ebx
107fa0: 77 eb ja 107f8d <MemPhReserveBlocks+0x2a>
107fa2: 83 c4 08 add esp,0x8
107fa5: 5b pop ebx
107fa6: 5e pop esi
107fa7: c3 ret
00107fa8 <memcpy>:
107fa8: 56 push esi
107fa9: 53 push ebx
107faa: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
107fae: 8b 5c 24 10 mov ebx,DWORD PTR [esp+0x10]
107fb2: 8b 74 24 14 mov esi,DWORD PTR [esp+0x14]
107fb6: 85 f6 test esi,esi
107fb8: 74 10 je 107fca <memcpy+0x22>
107fba: ba 00 00 00 00 mov edx,0x0
107fbf: 8a 0c 13 mov cl,BYTE PTR [ebx+edx*1]
107fc2: 88 0c 10 mov BYTE PTR [eax+edx*1],cl
107fc5: 42 inc edx
107fc6: 39 f2 cmp edx,esi
107fc8: 75 f5 jne 107fbf <memcpy+0x17>
107fca: 5b pop ebx
107fcb: 5e pop esi
107fcc: c3 ret
00107fcd <memcmp>:
107fcd: 57 push edi
107fce: 56 push esi
107fcf: 53 push ebx
107fd0: 8b 5c 24 10 mov ebx,DWORD PTR [esp+0x10]
107fd4: 8b 74 24 14 mov esi,DWORD PTR [esp+0x14]
107fd8: 8b 7c 24 18 mov edi,DWORD PTR [esp+0x18]
107fdc: b8 00 00 00 00 mov eax,0x0
107fe1: 85 ff test edi,edi
107fe3: 74 2e je 108013 <memcmp+0x46>
107fe5: 8a 0b mov cl,BYTE PTR [ebx]
107fe7: 8a 16 mov dl,BYTE PTR [esi]
107fe9: 38 d1 cmp cl,dl
107feb: 74 17 je 108004 <memcmp+0x37>
107fed: eb 0c jmp 107ffb <memcmp+0x2e>
107fef: 8a 4c 03 01 mov cl,BYTE PTR [ebx+eax*1+0x1]
107ff3: 40 inc eax
107ff4: 8a 14 06 mov dl,BYTE PTR [esi+eax*1]
107ff7: 38 d1 cmp cl,dl
107ff9: 74 0f je 10800a <memcmp+0x3d>
107ffb: 38 d1 cmp cl,dl
107ffd: 19 c0 sbb eax,eax
107fff: 83 c8 01 or eax,0x1
108002: eb 0f jmp 108013 <memcmp+0x46>
108004: 4f dec edi
108005: b8 00 00 00 00 mov eax,0x0
10800a: 39 f8 cmp eax,edi
10800c: 75 e1 jne 107fef <memcmp+0x22>
10800e: b8 00 00 00 00 mov eax,0x0
108013: 5b pop ebx
108014: 5e pop esi
108015: 5f pop edi
108016: c3 ret
00108017 <memset>:
108017: 53 push ebx
108018: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
10801c: 8b 54 24 10 mov edx,DWORD PTR [esp+0x10]
108020: 8a 5c 24 0c mov bl,BYTE PTR [esp+0xc]
108024: 85 d2 test edx,edx
108026: 74 08 je 108030 <memset+0x19>
108028: 89 c1 mov ecx,eax
10802a: 88 19 mov BYTE PTR [ecx],bl
10802c: 41 inc ecx
10802d: 4a dec edx
10802e: 75 fa jne 10802a <memset+0x13>
108030: 5b pop ebx
108031: c3 ret
...
00108034 <_malloc_init1>:
108034: 53 push ebx
108035: 83 ec 28 sub esp,0x28
108038: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
10803c: 8b 1d 04 1b 11 00 mov ebx,DWORD PTR ds:0x111b04
108042: 80 7c 24 34 00 cmp BYTE PTR [esp+0x34],0x0
108047: 74 16 je 10805f <_malloc_init1+0x2b>
108049: f7 c3 ff 0f 00 00 test ebx,0xfff
10804f: 74 53 je 1080a4 <_malloc_init1+0x70>
108051: 81 e3 00 f0 ff ff and ebx,0xfffff000
108057: 81 c3 00 10 00 00 add ebx,0x1000
10805d: eb 45 jmp 1080a4 <_malloc_init1+0x70>
10805f: 8d 14 18 lea edx,[eax+ebx*1]
108062: 89 15 04 1b 11 00 mov DWORD PTR ds:0x111b04,edx
108068: ba 3f ae 10 00 mov edx,0x10ae3f
10806d: 89 5c 24 18 mov DWORD PTR [esp+0x18],ebx
108071: 89 54 24 14 mov DWORD PTR [esp+0x14],edx
108075: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
108079: c7 44 24 0c 0d 00 00 mov DWORD PTR [esp+0xc],0xd
108080: 00
108081: c7 44 24 08 44 ae 10 mov DWORD PTR [esp+0x8],0x10ae44
108088: 00
108089: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
108090: 00
108091: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
108098: e8 eb f1 ff ff call 107288 <LogWrite>
10809d: 89 d8 mov eax,ebx
10809f: 83 c4 28 add esp,0x28
1080a2: 5b pop ebx
1080a3: c3 ret
1080a4: 8d 14 03 lea edx,[ebx+eax*1]
1080a7: 89 15 04 1b 11 00 mov DWORD PTR ds:0x111b04,edx
1080ad: ba 58 9e 10 00 mov edx,0x109e58
1080b2: eb b9 jmp 10806d <_malloc_init1+0x39>
001080b4 <_malloc_init2>:
1080b4: 55 push ebp
1080b5: 57 push edi
1080b6: 56 push esi
1080b7: 53 push ebx
1080b8: 83 ec 2c sub esp,0x2c
1080bb: 8b 7c 24 40 mov edi,DWORD PTR [esp+0x40]
1080bf: 8b 6c 24 48 mov ebp,DWORD PTR [esp+0x48]
1080c3: 0f b6 74 24 44 movzx esi,BYTE PTR [esp+0x44]
1080c8: a1 e4 d9 10 00 mov eax,ds:0x10d9e4
1080cd: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
1080d1: a1 e0 d9 10 00 mov eax,ds:0x10d9e0
1080d6: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
1080da: 89 f0 mov eax,esi
1080dc: 25 ff 00 00 00 and eax,0xff
1080e1: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1080e5: 89 3c 24 mov DWORD PTR [esp],edi
1080e8: e8 fd f6 ff ff call 1077ea <MemHeapAlloc>
1080ed: 89 c3 mov ebx,eax
1080ef: 85 ed test ebp,ebp
1080f1: 74 64 je 108157 <_malloc_init2+0xa3>
1080f3: a1 e4 d9 10 00 mov eax,ds:0x10d9e4
1080f8: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1080fc: 89 1c 24 mov DWORD PTR [esp],ebx
1080ff: e8 67 fc ff ff call 107d6b <PagingGetPhysical>
108104: 89 da mov edx,ebx
108106: 81 e2 ff 0f 00 00 and edx,0xfff
10810c: 01 d0 add eax,edx
10810e: 89 45 00 mov DWORD PTR [ebp+0x0],eax
108111: ba 3f ae 10 00 mov edx,0x10ae3f
108116: 89 f1 mov ecx,esi
108118: 84 c9 test cl,cl
10811a: 74 05 je 108121 <_malloc_init2+0x6d>
10811c: ba 58 9e 10 00 mov edx,0x109e58
108121: 89 44 24 1c mov DWORD PTR [esp+0x1c],eax
108125: 89 5c 24 18 mov DWORD PTR [esp+0x18],ebx
108129: 89 54 24 14 mov DWORD PTR [esp+0x14],edx
10812d: 89 7c 24 10 mov DWORD PTR [esp+0x10],edi
108131: c7 44 24 0c 0d 00 00 mov DWORD PTR [esp+0xc],0xd
108138: 00
108139: c7 44 24 08 84 ae 10 mov DWORD PTR [esp+0x8],0x10ae84
108140: 00
108141: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
108148: 00
108149: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
108150: e8 33 f1 ff ff call 107288 <LogWrite>
108155: eb 40 jmp 108197 <_malloc_init2+0xe3>
108157: b8 3f ae 10 00 mov eax,0x10ae3f
10815c: 89 f2 mov edx,esi
10815e: 84 d2 test dl,dl
108160: 74 05 je 108167 <_malloc_init2+0xb3>
108162: b8 58 9e 10 00 mov eax,0x109e58
108167: 89 5c 24 18 mov DWORD PTR [esp+0x18],ebx
10816b: 89 44 24 14 mov DWORD PTR [esp+0x14],eax
10816f: 89 7c 24 10 mov DWORD PTR [esp+0x10],edi
108173: c7 44 24 0c 0d 00 00 mov DWORD PTR [esp+0xc],0xd
10817a: 00
10817b: c7 44 24 08 c8 ae 10 mov DWORD PTR [esp+0x8],0x10aec8
108182: 00
108183: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
10818a: 00
10818b: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
108192: e8 f1 f0 ff ff call 107288 <LogWrite>
108197: 89 d8 mov eax,ebx
108199: 83 c4 2c add esp,0x2c
10819c: 5b pop ebx
10819d: 5e pop esi
10819e: 5f pop edi
10819f: 5d pop ebp
1081a0: c3 ret
001081a1 <kmalloc>:
1081a1: 83 ec 1c sub esp,0x1c
1081a4: 8b 4c 24 20 mov ecx,DWORD PTR [esp+0x20]
1081a8: 8a 15 00 1b 11 00 mov dl,BYTE PTR ds:0x111b00
1081ae: b8 00 00 00 00 mov eax,0x0
1081b3: 84 d2 test dl,dl
1081b5: 74 2f je 1081e6 <kmalloc+0x45>
1081b7: 80 fa 01 cmp dl,0x1
1081ba: 75 12 jne 1081ce <kmalloc+0x2d>
1081bc: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
1081c3: 00
1081c4: 89 0c 24 mov DWORD PTR [esp],ecx
1081c7: e8 68 fe ff ff call 108034 <_malloc_init1>
1081cc: eb 18 jmp 1081e6 <kmalloc+0x45>
1081ce: c7 44 24 08 00 00 00 mov DWORD PTR [esp+0x8],0x0
1081d5: 00
1081d6: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
1081dd: 00
1081de: 89 0c 24 mov DWORD PTR [esp],ecx
1081e1: e8 ce fe ff ff call 1080b4 <_malloc_init2>
1081e6: 83 c4 1c add esp,0x1c
1081e9: c3 ret
001081ea <kmalloc_a>:
1081ea: 83 ec 1c sub esp,0x1c
1081ed: 8b 4c 24 20 mov ecx,DWORD PTR [esp+0x20]
1081f1: 8a 15 00 1b 11 00 mov dl,BYTE PTR ds:0x111b00
1081f7: b8 00 00 00 00 mov eax,0x0
1081fc: 84 d2 test dl,dl
1081fe: 74 2f je 10822f <kmalloc_a+0x45>
108200: 80 fa 01 cmp dl,0x1
108203: 75 12 jne 108217 <kmalloc_a+0x2d>
108205: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
10820c: 00
10820d: 89 0c 24 mov DWORD PTR [esp],ecx
108210: e8 1f fe ff ff call 108034 <_malloc_init1>
108215: eb 18 jmp 10822f <kmalloc_a+0x45>
108217: c7 44 24 08 00 00 00 mov DWORD PTR [esp+0x8],0x0
10821e: 00
10821f: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
108226: 00
108227: 89 0c 24 mov DWORD PTR [esp],ecx
10822a: e8 85 fe ff ff call 1080b4 <_malloc_init2>
10822f: 83 c4 1c add esp,0x1c
108232: c3 ret
00108233 <kmalloc_p>:
108233: 53 push ebx
108234: 83 ec 18 sub esp,0x18
108237: 8b 4c 24 20 mov ecx,DWORD PTR [esp+0x20]
10823b: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
10823f: 8a 15 00 1b 11 00 mov dl,BYTE PTR ds:0x111b00
108245: b8 00 00 00 00 mov eax,0x0
10824a: 84 d2 test dl,dl
10824c: 74 2d je 10827b <kmalloc_p+0x48>
10824e: 80 fa 01 cmp dl,0x1
108251: 75 14 jne 108267 <kmalloc_p+0x34>
108253: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
10825a: 00
10825b: 89 0c 24 mov DWORD PTR [esp],ecx
10825e: e8 d1 fd ff ff call 108034 <_malloc_init1>
108263: 89 03 mov DWORD PTR [ebx],eax
108265: eb 14 jmp 10827b <kmalloc_p+0x48>
108267: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
10826b: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
108272: 00
108273: 89 0c 24 mov DWORD PTR [esp],ecx
108276: e8 39 fe ff ff call 1080b4 <_malloc_init2>
10827b: 83 c4 18 add esp,0x18
10827e: 5b pop ebx
10827f: c3 ret
00108280 <kmalloc_ap>:
108280: 53 push ebx
108281: 83 ec 18 sub esp,0x18
108284: 8b 4c 24 20 mov ecx,DWORD PTR [esp+0x20]
108288: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
10828c: 8a 15 00 1b 11 00 mov dl,BYTE PTR ds:0x111b00
108292: b8 00 00 00 00 mov eax,0x0
108297: 84 d2 test dl,dl
108299: 74 2d je 1082c8 <kmalloc_ap+0x48>
10829b: 80 fa 01 cmp dl,0x1
10829e: 75 14 jne 1082b4 <kmalloc_ap+0x34>
1082a0: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
1082a7: 00
1082a8: 89 0c 24 mov DWORD PTR [esp],ecx
1082ab: e8 84 fd ff ff call 108034 <_malloc_init1>
1082b0: 89 03 mov DWORD PTR [ebx],eax
1082b2: eb 14 jmp 1082c8 <kmalloc_ap+0x48>
1082b4: 89 5c 24 08 mov DWORD PTR [esp+0x8],ebx
1082b8: c7 44 24 04 01 00 00 mov DWORD PTR [esp+0x4],0x1
1082bf: 00
1082c0: 89 0c 24 mov DWORD PTR [esp],ecx
1082c3: e8 ec fd ff ff call 1080b4 <_malloc_init2>
1082c8: 83 c4 18 add esp,0x18
1082cb: 5b pop ebx
1082cc: c3 ret
001082cd <kmrealloc>:
1082cd: 57 push edi
1082ce: 56 push esi
1082cf: 53 push ebx
1082d0: 83 ec 10 sub esp,0x10
1082d3: 8b 7c 24 20 mov edi,DWORD PTR [esp+0x20]
1082d7: 8b 74 24 24 mov esi,DWORD PTR [esp+0x24]
1082db: 89 34 24 mov DWORD PTR [esp],esi
1082de: e8 be fe ff ff call 1081a1 <kmalloc>
1082e3: 89 c3 mov ebx,eax
1082e5: 89 74 24 08 mov DWORD PTR [esp+0x8],esi
1082e9: 89 7c 24 04 mov DWORD PTR [esp+0x4],edi
1082ed: 89 04 24 mov DWORD PTR [esp],eax
1082f0: e8 b3 fc ff ff call 107fa8 <memcpy>
1082f5: 89 3c 24 mov DWORD PTR [esp],edi
1082f8: e8 0b 00 00 00 call 108308 <kfree>
1082fd: 89 d8 mov eax,ebx
1082ff: 83 c4 10 add esp,0x10
108302: 5b pop ebx
108303: 5e pop esi
108304: 5f pop edi
108305: c3 ret
...
00108308 <kfree>:
108308: 83 ec 2c sub esp,0x2c
10830b: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
10830f: 80 3d 00 1b 11 00 01 cmp BYTE PTR ds:0x111b00,0x1
108316: 77 2a ja 108342 <kfree+0x3a>
108318: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
10831c: c7 44 24 0c 0c 00 00 mov DWORD PTR [esp+0xc],0xc
108323: 00
108324: c7 44 24 08 00 af 10 mov DWORD PTR [esp+0x8],0x10af00
10832b: 00
10832c: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
108333: 00
108334: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
10833b: e8 48 ef ff ff call 107288 <LogWrite>
108340: eb 1c jmp 10835e <kfree+0x56>
108342: 8b 15 e4 d9 10 00 mov edx,DWORD PTR ds:0x10d9e4
108348: 89 54 24 08 mov DWORD PTR [esp+0x8],edx
10834c: 8b 15 e0 d9 10 00 mov edx,DWORD PTR ds:0x10d9e0
108352: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
108356: 89 04 24 mov DWORD PTR [esp],eax
108359: e8 ae f6 ff ff call 107a0c <MemHeapFree>
10835e: 83 c4 2c add esp,0x2c
108361: c3 ret
...
00108364 <MemoryGetTotal>:
108364: a1 ec d9 10 00 mov eax,ds:0x10d9ec
108369: c3 ret
0010836a <MemoryGetFree>:
10836a: a1 f8 d9 10 00 mov eax,ds:0x10d9f8
10836f: 2b 05 f0 d9 10 00 sub eax,DWORD PTR ds:0x10d9f0
108375: c1 e0 02 shl eax,0x2
108378: c3 ret
00108379 <MemoryGetUsed>:
108379: a1 f0 d9 10 00 mov eax,ds:0x10d9f0
10837e: c1 e0 02 shl eax,0x2
108381: c3 ret
00108382 <MemoryGetFrameSize>:
108382: b8 04 00 00 00 mov eax,0x4
108387: c3 ret
00108388 <MemoryGetFramesTotal>:
108388: a1 f8 d9 10 00 mov eax,ds:0x10d9f8
10838d: c3 ret
0010838e <MemoryGetFramesUsed>:
10838e: a1 f0 d9 10 00 mov eax,ds:0x10d9f0
108393: c3 ret
00108394 <MemoryGetFramesFree>:
108394: a1 f8 d9 10 00 mov eax,ds:0x10d9f8
108399: 2b 05 f0 d9 10 00 sub eax,DWORD PTR ds:0x10d9f0
10839f: c3 ret
001083a0 <_memory_get_total_mem>:
1083a0: 56 push esi
1083a1: 53 push ebx
1083a2: 83 ec 24 sub esp,0x24
1083a5: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
1083a9: f6 00 01 test BYTE PTR [eax],0x1
1083ac: 74 0b je 1083b9 <_memory_get_total_mem+0x19>
1083ae: 8b 58 08 mov ebx,DWORD PTR [eax+0x8]
1083b1: 81 c3 00 04 00 00 add ebx,0x400
1083b7: eb 57 jmp 108410 <_memory_get_total_mem+0x70>
1083b9: c7 04 24 30 00 00 00 mov DWORD PTR [esp],0x30
1083c0: e8 13 9d ff ff call 1020d8 <CmosRead>
1083c5: 89 c6 mov esi,eax
1083c7: c7 04 24 31 00 00 00 mov DWORD PTR [esp],0x31
1083ce: e8 05 9d ff ff call 1020d8 <CmosRead>
1083d3: 31 db xor ebx,ebx
1083d5: 88 c3 mov bl,al
1083d7: c1 e3 08 shl ebx,0x8
1083da: 81 e6 ff 00 00 00 and esi,0xff
1083e0: 09 f3 or ebx,esi
1083e2: 81 c3 00 04 00 00 add ebx,0x400
1083e8: 89 5c 24 10 mov DWORD PTR [esp+0x10],ebx
1083ec: c7 44 24 0c 0c 00 00 mov DWORD PTR [esp+0xc],0xc
1083f3: 00
1083f4: c7 44 24 08 48 af 10 mov DWORD PTR [esp+0x8],0x10af48
1083fb: 00
1083fc: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
108403: 00
108404: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
10840b: e8 78 ee ff ff call 107288 <LogWrite>
108410: 89 d8 mov eax,ebx
108412: 83 c4 24 add esp,0x24
108415: 5b pop ebx
108416: 5e pop esi
108417: c3 ret
00108418 <_memory_reserve_system>:
108418: 57 push edi
108419: 56 push esi
10841a: 53 push ebx
10841b: 83 ec 20 sub esp,0x20
10841e: 8b 74 24 30 mov esi,DWORD PTR [esp+0x30]
108422: 66 87 db xchg bx,bx
108425: f6 06 40 test BYTE PTR [esi],0x40
108428: 74 3c je 108466 <_memory_reserve_system+0x4e>
10842a: 8b 5e 30 mov ebx,DWORD PTR [esi+0x30]
10842d: 89 df mov edi,ebx
10842f: 89 d8 mov eax,ebx
108431: 03 46 2c add eax,DWORD PTR [esi+0x2c]
108434: 39 c3 cmp ebx,eax
108436: 73 76 jae 1084ae <_memory_reserve_system+0x96>
108438: 83 7b 14 01 cmp DWORD PTR [ebx+0x14],0x1
10843c: 76 12 jbe 108450 <_memory_reserve_system+0x38>
10843e: 8b 43 0c mov eax,DWORD PTR [ebx+0xc]
108441: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
108445: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
108448: 89 04 24 mov DWORD PTR [esp],eax
10844b: e8 13 fb ff ff call 107f63 <MemPhReserveBlocks>
108450: 8b 03 mov eax,DWORD PTR [ebx]
108452: 8d 44 07 04 lea eax,[edi+eax*1+0x4]
108456: 89 c3 mov ebx,eax
108458: 89 c7 mov edi,eax
10845a: 8b 56 2c mov edx,DWORD PTR [esi+0x2c]
10845d: 03 56 30 add edx,DWORD PTR [esi+0x30]
108460: 39 d0 cmp eax,edx
108462: 72 d4 jb 108438 <_memory_reserve_system+0x20>
108464: eb 48 jmp 1084ae <_memory_reserve_system+0x96>
108466: c7 44 24 14 0c 00 00 mov DWORD PTR [esp+0x14],0xc
10846d: 00
10846e: c7 44 24 10 0f 00 00 mov DWORD PTR [esp+0x10],0xf
108475: 00
108476: c7 44 24 0c 0c 00 00 mov DWORD PTR [esp+0xc],0xc
10847d: 00
10847e: c7 44 24 08 88 af 10 mov DWORD PTR [esp+0x8],0x10af88
108485: 00
108486: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
10848d: 00
10848e: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
108495: e8 ee ed ff ff call 107288 <LogWrite>
10849a: c7 44 24 04 00 00 10 mov DWORD PTR [esp+0x4],0x100000
1084a1: 00
1084a2: c7 04 24 00 00 f0 00 mov DWORD PTR [esp],0xf00000
1084a9: e8 b5 fa ff ff call 107f63 <MemPhReserveBlocks>
1084ae: 83 c4 20 add esp,0x20
1084b1: 5b pop ebx
1084b2: 5e pop esi
1084b3: 5f pop edi
1084b4: c3 ret
001084b5 <MemoryInitialize>:
1084b5: 56 push esi
1084b6: 53 push ebx
1084b7: 83 ec 24 sub esp,0x24
1084ba: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
1084be: 89 1c 24 mov DWORD PTR [esp],ebx
1084c1: e8 da fe ff ff call 1083a0 <_memory_get_total_mem>
1084c6: 8b 15 04 1b 11 00 mov edx,DWORD PTR ds:0x111b04
1084cc: 81 c2 00 00 08 00 add edx,0x80000
1084d2: 89 54 24 1c mov DWORD PTR [esp+0x1c],edx
1084d6: 89 04 24 mov DWORD PTR [esp],eax
1084d9: e8 03 fa ff ff call 107ee1 <MemPhInitialize>
1084de: 8d 44 24 1c lea eax,[esp+0x1c]
1084e2: 89 04 24 mov DWORD PTR [esp],eax
1084e5: e8 9d f7 ff ff call 107c87 <PagingInitialize>
1084ea: 89 1c 24 mov DWORD PTR [esp],ebx
1084ed: e8 26 ff ff ff call 108418 <_memory_reserve_system>
1084f2: bb 00 00 00 c0 mov ebx,0xc0000000
1084f7: 8b 35 e4 d9 10 00 mov esi,DWORD PTR ds:0x10d9e4
1084fd: e8 41 f9 ff ff call 107e43 <MemPhAllocateBlock>
108502: 89 74 24 0c mov DWORD PTR [esp+0xc],esi
108506: c7 44 24 08 02 00 00 mov DWORD PTR [esp+0x8],0x2
10850d: 00
10850e: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
108512: 89 04 24 mov DWORD PTR [esp],eax
108515: e8 cc f6 ff ff call 107be6 <PagingMapPage>
10851a: 81 c3 00 10 00 00 add ebx,0x1000
108520: 81 fb 00 10 10 c0 cmp ebx,0xc0101000
108526: 75 cf jne 1084f7 <MemoryInitialize+0x42>
108528: c7 44 24 0c 03 00 00 mov DWORD PTR [esp+0xc],0x3
10852f: 00
108530: c7 44 24 08 00 f0 ff mov DWORD PTR [esp+0x8],0xcffff000
108537: cf
108538: c7 44 24 04 00 00 10 mov DWORD PTR [esp+0x4],0xc0100000
10853f: c0
108540: c7 04 24 00 00 00 c0 mov DWORD PTR [esp],0xc0000000
108547: e8 d6 f0 ff ff call 107622 <MemHeapCreate>
10854c: a3 e0 d9 10 00 mov ds:0x10d9e0,eax
108551: c7 44 24 08 f7 af 10 mov DWORD PTR [esp+0x8],0x10aff7
108558: 00
108559: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
108560: 00
108561: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
108568: e8 1b ed ff ff call 107288 <LogWrite>
10856d: c6 05 00 1b 11 00 02 mov BYTE PTR ds:0x111b00,0x2
108574: 83 c4 24 add esp,0x24
108577: 5b pop ebx
108578: 5e pop esi
108579: c3 ret
0010857a <MemoryTempInitialize>:
10857a: 83 ec 2c sub esp,0x2c
10857d: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
108581: c6 05 00 1b 11 00 01 mov BYTE PTR ds:0x111b00,0x1
108588: a3 04 1b 11 00 mov ds:0x111b04,eax
10858d: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
108591: c7 44 24 0c 0f 00 00 mov DWORD PTR [esp+0xc],0xf
108598: 00
108599: c7 44 24 08 b8 af 10 mov DWORD PTR [esp+0x8],0x10afb8
1085a0: 00
1085a1: c7 44 24 04 3b ae 10 mov DWORD PTR [esp+0x4],0x10ae3b
1085a8: 00
1085a9: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1085b0: e8 d3 ec ff ff call 107288 <LogWrite>
1085b5: 83 c4 2c add esp,0x2c
1085b8: c3 ret
1085b9: 00 00 add BYTE PTR [eax],al
...
001085bc <MouseHandler>:
1085bc: 83 ec 1c sub esp,0x1c
1085bf: c7 04 24 60 00 00 00 mov DWORD PTR [esp],0x60
1085c6: e8 ad 05 00 00 call 108b78 <inportb>
1085cb: 8a 15 20 1b 11 00 mov dl,BYTE PTR ds:0x111b20
1085d1: 84 d2 test dl,dl
1085d3: 75 20 jne 1085f5 <MouseHandler+0x39>
1085d5: 84 c0 test al,al
1085d7: 0f 84 99 01 00 00 je 108776 <MouseHandler+0x1ba>
1085dd: 3c fa cmp al,0xfa
1085df: 0f 84 91 01 00 00 je 108776 <MouseHandler+0x1ba>
1085e5: 3c ff cmp al,0xff
1085e7: 0f 84 89 01 00 00 je 108776 <MouseHandler+0x1ba>
1085ed: 3c aa cmp al,0xaa
1085ef: 0f 84 81 01 00 00 je 108776 <MouseHandler+0x1ba>
1085f5: 31 c9 xor ecx,ecx
1085f7: 88 d1 mov cl,dl
1085f9: 88 81 fc d9 10 00 mov BYTE PTR [ecx+0x10d9fc],al
1085ff: 42 inc edx
108600: 88 15 20 1b 11 00 mov BYTE PTR ds:0x111b20,dl
108606: 3a 15 2c c3 10 00 cmp dl,BYTE PTR ds:0x10c32c
10860c: 0f 82 64 01 00 00 jb 108776 <MouseHandler+0x1ba>
108612: c6 05 20 1b 11 00 00 mov BYTE PTR ds:0x111b20,0x0
108619: 31 c0 xor eax,eax
10861b: a0 fc d9 10 00 mov al,ds:0x10d9fc
108620: a8 c0 test al,0xc0
108622: 0f 85 4e 01 00 00 jne 108776 <MouseHandler+0x1ba>
108628: a8 10 test al,0x10
10862a: 74 10 je 10863c <MouseHandler+0x80>
10862c: 31 d2 xor edx,edx
10862e: 8a 15 fd d9 10 00 mov dl,BYTE PTR ds:0x10d9fd
108634: 81 ca 00 ff ff ff or edx,0xffffff00
10863a: eb 08 jmp 108644 <MouseHandler+0x88>
10863c: 31 d2 xor edx,edx
10863e: 8a 15 fd d9 10 00 mov dl,BYTE PTR ds:0x10d9fd
108644: a8 20 test al,0x20
108646: 74 10 je 108658 <MouseHandler+0x9c>
108648: 31 c0 xor eax,eax
10864a: a0 fe d9 10 00 mov al,ds:0x10d9fe
10864f: 0d 00 ff ff ff or eax,0xffffff00
108654: f7 d8 neg eax
108656: eb 09 jmp 108661 <MouseHandler+0xa5>
108658: 31 c0 xor eax,eax
10865a: a0 fe d9 10 00 mov al,ds:0x10d9fe
10865f: f7 d8 neg eax
108661: 83 fa 07 cmp edx,0x7
108664: 7f 07 jg 10866d <MouseHandler+0xb1>
108666: 83 fa f9 cmp edx,0xfffffff9
108669: 7c 09 jl 108674 <MouseHandler+0xb8>
10866b: eb 0c jmp 108679 <MouseHandler+0xbd>
10866d: ba 08 00 00 00 mov edx,0x8
108672: eb 05 jmp 108679 <MouseHandler+0xbd>
108674: ba f8 ff ff ff mov edx,0xfffffff8
108679: 83 f8 07 cmp eax,0x7
10867c: 7f 07 jg 108685 <MouseHandler+0xc9>
10867e: 83 f8 f9 cmp eax,0xfffffff9
108681: 7c 09 jl 10868c <MouseHandler+0xd0>
108683: eb 0c jmp 108691 <MouseHandler+0xd5>
108685: b8 08 00 00 00 mov eax,0x8
10868a: eb 05 jmp 108691 <MouseHandler+0xd5>
10868c: b8 f8 ff ff ff mov eax,0xfffffff8
108691: 03 15 18 1b 11 00 add edx,DWORD PTR ds:0x111b18
108697: 89 15 18 1b 11 00 mov DWORD PTR ds:0x111b18,edx
10869d: 03 05 1c 1b 11 00 add eax,DWORD PTR ds:0x111b1c
1086a3: a3 1c 1b 11 00 mov ds:0x111b1c,eax
1086a8: 8b 0d 10 1b 11 00 mov ecx,DWORD PTR ds:0x111b10
1086ae: 39 ca cmp edx,ecx
1086b0: 7d 06 jge 1086b8 <MouseHandler+0xfc>
1086b2: 89 0d 18 1b 11 00 mov DWORD PTR ds:0x111b18,ecx
1086b8: 8b 15 14 1b 11 00 mov edx,DWORD PTR ds:0x111b14
1086be: 39 d0 cmp eax,edx
1086c0: 7d 06 jge 1086c8 <MouseHandler+0x10c>
1086c2: 89 15 1c 1b 11 00 mov DWORD PTR ds:0x111b1c,edx
1086c8: a1 24 c3 10 00 mov eax,ds:0x10c324
1086cd: 39 05 18 1b 11 00 cmp DWORD PTR ds:0x111b18,eax
1086d3: 7c 06 jl 1086db <MouseHandler+0x11f>
1086d5: 48 dec eax
1086d6: a3 18 1b 11 00 mov ds:0x111b18,eax
1086db: a1 28 c3 10 00 mov eax,ds:0x10c328
1086e0: 39 05 1c 1b 11 00 cmp DWORD PTR ds:0x111b1c,eax
1086e6: 7c 06 jl 1086ee <MouseHandler+0x132>
1086e8: 48 dec eax
1086e9: a3 1c 1b 11 00 mov ds:0x111b1c,eax
1086ee: a1 08 1b 11 00 mov eax,ds:0x111b08
1086f3: 8b 15 0c 1b 11 00 mov edx,DWORD PTR ds:0x111b0c
1086f9: 89 04 24 mov DWORD PTR [esp],eax
1086fc: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
108700: e8 38 aa ff ff call 10313d <ConsoleGetColor>
108705: f7 d0 not eax
108707: 25 ff 00 00 00 and eax,0xff
10870c: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
108710: a1 08 1b 11 00 mov eax,ds:0x111b08
108715: 8b 15 0c 1b 11 00 mov edx,DWORD PTR ds:0x111b0c
10871b: 89 04 24 mov DWORD PTR [esp],eax
10871e: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
108722: e8 e1 a9 ff ff call 103108 <ConsoleSetColor>
108727: a1 18 1b 11 00 mov eax,ds:0x111b18
10872c: 8b 15 1c 1b 11 00 mov edx,DWORD PTR ds:0x111b1c
108732: 89 04 24 mov DWORD PTR [esp],eax
108735: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
108739: e8 ff a9 ff ff call 10313d <ConsoleGetColor>
10873e: f7 d0 not eax
108740: 25 ff 00 00 00 and eax,0xff
108745: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
108749: a1 18 1b 11 00 mov eax,ds:0x111b18
10874e: 8b 15 1c 1b 11 00 mov edx,DWORD PTR ds:0x111b1c
108754: 89 04 24 mov DWORD PTR [esp],eax
108757: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
10875b: e8 a8 a9 ff ff call 103108 <ConsoleSetColor>
108760: a1 18 1b 11 00 mov eax,ds:0x111b18
108765: 8b 15 1c 1b 11 00 mov edx,DWORD PTR ds:0x111b1c
10876b: a3 08 1b 11 00 mov ds:0x111b08,eax
108770: 89 15 0c 1b 11 00 mov DWORD PTR ds:0x111b0c,edx
108776: 83 c4 1c add esp,0x1c
108779: c3 ret
0010877a <MouseSendCommand>:
10877a: 53 push ebx
10877b: 83 ec 08 sub esp,0x8
10877e: 8a 5c 24 10 mov bl,BYTE PTR [esp+0x10]
108782: e8 79 e6 ff ff call 106e00 <KeyboardWaitOutport>
108787: b0 d4 mov al,0xd4
108789: e6 64 out 0x64,al
10878b: e8 70 e6 ff ff call 106e00 <KeyboardWaitOutport>
108790: 88 d8 mov al,bl
108792: e6 60 out 0x60,al
108794: 83 c4 08 add esp,0x8
108797: 5b pop ebx
108798: c3 ret
00108799 <MouseReadData>:
108799: 83 ec 1c sub esp,0x1c
10879c: e8 8e e9 ff ff call 10712f <KeyboardWaitInport>
1087a1: c7 04 24 60 00 00 00 mov DWORD PTR [esp],0x60
1087a8: e8 cb 03 00 00 call 108b78 <inportb>
1087ad: 83 c4 1c add esp,0x1c
1087b0: c3 ret
001087b1 <MouseInstall>:
1087b1: 53 push ebx
1087b2: 83 ec 18 sub esp,0x18
1087b5: e8 46 e6 ff ff call 106e00 <KeyboardWaitOutport>
1087ba: b0 a8 mov al,0xa8
1087bc: e6 64 out 0x64,al
1087be: e8 3d e6 ff ff call 106e00 <KeyboardWaitOutport>
1087c3: b0 20 mov al,0x20
1087c5: e6 64 out 0x64,al
1087c7: e8 63 e9 ff ff call 10712f <KeyboardWaitInport>
1087cc: c7 04 24 60 00 00 00 mov DWORD PTR [esp],0x60
1087d3: e8 a0 03 00 00 call 108b78 <inportb>
1087d8: 88 c3 mov bl,al
1087da: 83 cb 02 or ebx,0x2
1087dd: e8 1e e6 ff ff call 106e00 <KeyboardWaitOutport>
1087e2: b0 60 mov al,0x60
1087e4: e6 64 out 0x64,al
1087e6: e8 15 e6 ff ff call 106e00 <KeyboardWaitOutport>
1087eb: 88 d8 mov al,bl
1087ed: 83 e0 df and eax,0xffffffdf
1087f0: e6 60 out 0x60,al
1087f2: c7 04 24 ff 00 00 00 mov DWORD PTR [esp],0xff
1087f9: e8 7c ff ff ff call 10877a <MouseSendCommand>
1087fe: e8 96 ff ff ff call 108799 <MouseReadData>
108803: e8 91 ff ff ff call 108799 <MouseReadData>
108808: c7 04 24 f6 00 00 00 mov DWORD PTR [esp],0xf6
10880f: e8 66 ff ff ff call 10877a <MouseSendCommand>
108814: e8 80 ff ff ff call 108799 <MouseReadData>
108819: c7 04 24 f4 00 00 00 mov DWORD PTR [esp],0xf4
108820: e8 55 ff ff ff call 10877a <MouseSendCommand>
108825: e8 6f ff ff ff call 108799 <MouseReadData>
10882a: 83 c4 18 add esp,0x18
10882d: 5b pop ebx
10882e: c3 ret
0010882f <MouseSetLimits>:
10882f: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
108833: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
108837: a3 10 1b 11 00 mov ds:0x111b10,eax
10883c: 89 15 14 1b 11 00 mov DWORD PTR ds:0x111b14,edx
108842: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
108846: 8b 54 24 10 mov edx,DWORD PTR [esp+0x10]
10884a: a3 24 c3 10 00 mov ds:0x10c324,eax
10884f: 89 15 28 c3 10 00 mov DWORD PTR ds:0x10c328,edx
108855: c3 ret
00108856 <MouseGetState>:
108856: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
10885a: 8a 15 fc d9 10 00 mov dl,BYTE PTR ds:0x10d9fc
108860: 83 e2 07 and edx,0x7
108863: 88 10 mov BYTE PTR [eax],dl
108865: 8b 15 18 1b 11 00 mov edx,DWORD PTR ds:0x111b18
10886b: 89 50 04 mov DWORD PTR [eax+0x4],edx
10886e: 8b 15 1c 1b 11 00 mov edx,DWORD PTR ds:0x111b1c
108874: 89 50 08 mov DWORD PTR [eax+0x8],edx
108877: c2 04 00 ret 0x4
...
0010887c <numlen>:
10887c: 56 push esi
10887d: 53 push ebx
10887e: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
108882: 8b 5c 24 10 mov ebx,DWORD PTR [esp+0x10]
108886: b9 00 00 00 00 mov ecx,0x0
10888b: 83 fb 01 cmp ebx,0x1
10888e: 7e 25 jle 1088b5 <numlen+0x39>
108890: b1 01 mov cl,0x1
108892: 85 c0 test eax,eax
108894: 74 1f je 1088b5 <numlen+0x39>
108896: 89 c1 mov ecx,eax
108898: c1 e9 1f shr ecx,0x1f
10889b: 83 fb 0a cmp ebx,0xa
10889e: 0f 94 c2 sete dl
1088a1: 81 e2 ff 00 00 00 and edx,0xff
1088a7: 21 d1 and ecx,edx
1088a9: 89 c2 mov edx,eax
1088ab: c1 fa 1f sar edx,0x1f
1088ae: f7 fb idiv ebx
1088b0: 41 inc ecx
1088b1: 85 c0 test eax,eax
1088b3: 75 f4 jne 1088a9 <numlen+0x2d>
1088b5: 89 c8 mov eax,ecx
1088b7: 5b pop ebx
1088b8: 5e pop esi
1088b9: c3 ret
001088ba <unumlen>:
1088ba: 56 push esi
1088bb: 53 push ebx
1088bc: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
1088c0: 8b 5c 24 10 mov ebx,DWORD PTR [esp+0x10]
1088c4: b9 00 00 00 00 mov ecx,0x0
1088c9: 83 fb 01 cmp ebx,0x1
1088cc: 7e 14 jle 1088e2 <unumlen+0x28>
1088ce: b1 01 mov cl,0x1
1088d0: 85 c0 test eax,eax
1088d2: 74 0e je 1088e2 <unumlen+0x28>
1088d4: b1 00 mov cl,0x0
1088d6: ba 00 00 00 00 mov edx,0x0
1088db: f7 f3 div ebx
1088dd: 41 inc ecx
1088de: 85 c0 test eax,eax
1088e0: 75 f4 jne 1088d6 <unumlen+0x1c>
1088e2: 89 c8 mov eax,ecx
1088e4: 5b pop ebx
1088e5: 5e pop esi
1088e6: c3 ret
...
001088e8 <StandardComparePredicate>:
1088e8: 8b 4c 24 04 mov ecx,DWORD PTR [esp+0x4]
1088ec: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
1088f0: b8 01 00 00 00 mov eax,0x1
1088f5: 39 d1 cmp ecx,edx
1088f7: 77 0b ja 108904 <StandardComparePredicate+0x1c>
1088f9: 39 d1 cmp ecx,edx
1088fb: 0f 94 c0 sete al
1088fe: 25 ff 00 00 00 and eax,0xff
108903: 48 dec eax
108904: c3 ret
00108905 <OrderedArrayCreate>:
108905: 55 push ebp
108906: 57 push edi
108907: 56 push esi
108908: 53 push ebx
108909: 83 ec 1c sub esp,0x1c
10890c: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
108910: 8b 7c 24 34 mov edi,DWORD PTR [esp+0x34]
108914: 8b 6c 24 38 mov ebp,DWORD PTR [esp+0x38]
108918: 89 3c 24 mov DWORD PTR [esp],edi
10891b: e8 81 f8 ff ff call 1081a1 <kmalloc>
108920: 89 c6 mov esi,eax
108922: 89 7c 24 08 mov DWORD PTR [esp+0x8],edi
108926: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
10892d: 00
10892e: 89 04 24 mov DWORD PTR [esp],eax
108931: e8 e1 f6 ff ff call 108017 <memset>
108936: 85 ed test ebp,ebp
108938: 75 05 jne 10893f <OrderedArrayCreate+0x3a>
10893a: bd e8 88 10 00 mov ebp,0x1088e8
10893f: 89 33 mov DWORD PTR [ebx],esi
108941: c7 43 04 00 00 00 00 mov DWORD PTR [ebx+0x4],0x0
108948: 89 7b 08 mov DWORD PTR [ebx+0x8],edi
10894b: 89 6b 0c mov DWORD PTR [ebx+0xc],ebp
10894e: 89 d8 mov eax,ebx
108950: 83 c4 1c add esp,0x1c
108953: 5b pop ebx
108954: 5e pop esi
108955: 5f pop edi
108956: 5d pop ebp
108957: c2 04 00 ret 0x4
0010895a <OrderedArrayPlace>:
10895a: 55 push ebp
10895b: 57 push edi
10895c: 56 push esi
10895d: 53 push ebx
10895e: 83 ec 1c sub esp,0x1c
108961: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
108965: 8b 7c 24 34 mov edi,DWORD PTR [esp+0x34]
108969: 8b 6c 24 38 mov ebp,DWORD PTR [esp+0x38]
10896d: 8b 74 24 3c mov esi,DWORD PTR [esp+0x3c]
108971: 89 6c 24 08 mov DWORD PTR [esp+0x8],ebp
108975: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
10897c: 00
10897d: 89 3c 24 mov DWORD PTR [esp],edi
108980: e8 92 f6 ff ff call 108017 <memset>
108985: 85 f6 test esi,esi
108987: 75 05 jne 10898e <OrderedArrayPlace+0x34>
108989: be e8 88 10 00 mov esi,0x1088e8
10898e: 89 3b mov DWORD PTR [ebx],edi
108990: c7 43 04 00 00 00 00 mov DWORD PTR [ebx+0x4],0x0
108997: 89 6b 08 mov DWORD PTR [ebx+0x8],ebp
10899a: 89 73 0c mov DWORD PTR [ebx+0xc],esi
10899d: 89 d8 mov eax,ebx
10899f: 83 c4 1c add esp,0x1c
1089a2: 5b pop ebx
1089a3: 5e pop esi
1089a4: 5f pop edi
1089a5: 5d pop ebp
1089a6: c2 04 00 ret 0x4
001089a9 <OrderedArrayDispose>:
1089a9: 83 ec 1c sub esp,0x1c
1089ac: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
1089b0: 8b 00 mov eax,DWORD PTR [eax]
1089b2: 89 04 24 mov DWORD PTR [esp],eax
1089b5: e8 4e f9 ff ff call 108308 <kfree>
1089ba: 83 c4 1c add esp,0x1c
1089bd: c3 ret
001089be <OrderedArrayBinarySearch>:
1089be: 55 push ebp
1089bf: 57 push edi
1089c0: 56 push esi
1089c1: 53 push ebx
1089c2: 83 ec 1c sub esp,0x1c
1089c5: 8b 74 24 34 mov esi,DWORD PTR [esp+0x34]
1089c9: 8b 6c 24 38 mov ebp,DWORD PTR [esp+0x38]
1089cd: bb 00 00 00 00 mov ebx,0x0
1089d2: 83 7c 24 3c 00 cmp DWORD PTR [esp+0x3c],0x0
1089d7: 74 45 je 108a1e <OrderedArrayBinarySearch+0x60>
1089d9: 85 ed test ebp,ebp
1089db: 74 34 je 108a11 <OrderedArrayBinarySearch+0x53>
1089dd: bf 00 00 00 00 mov edi,0x0
1089e2: 89 eb mov ebx,ebp
1089e4: 29 fb sub ebx,edi
1089e6: d1 eb shr ebx,1
1089e8: 01 fb add ebx,edi
1089ea: 8b 04 9e mov eax,DWORD PTR [esi+ebx*4]
1089ed: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1089f1: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
1089f5: 89 04 24 mov DWORD PTR [esp],eax
1089f8: ff 54 24 3c call DWORD PTR [esp+0x3c]
1089fc: 85 c0 test eax,eax
1089fe: 7e 05 jle 108a05 <OrderedArrayBinarySearch+0x47>
108a00: 8d 7b 01 lea edi,[ebx+0x1]
108a03: eb 06 jmp 108a0b <OrderedArrayBinarySearch+0x4d>
108a05: 85 c0 test eax,eax
108a07: 79 15 jns 108a1e <OrderedArrayBinarySearch+0x60>
108a09: 89 dd mov ebp,ebx
108a0b: 39 ef cmp edi,ebp
108a0d: 72 d3 jb 1089e2 <OrderedArrayBinarySearch+0x24>
108a0f: eb 05 jmp 108a16 <OrderedArrayBinarySearch+0x58>
108a11: bf 00 00 00 00 mov edi,0x0
108a16: 29 fd sub ebp,edi
108a18: d1 ed shr ebp,1
108a1a: 8d 5c 3d 00 lea ebx,[ebp+edi*1+0x0]
108a1e: 89 d8 mov eax,ebx
108a20: 83 c4 1c add esp,0x1c
108a23: 5b pop ebx
108a24: 5e pop esi
108a25: 5f pop edi
108a26: 5d pop ebp
108a27: c3 ret
00108a28 <OrderedArraySearch>:
108a28: 56 push esi
108a29: 53 push ebx
108a2a: 83 ec 14 sub esp,0x14
108a2d: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
108a31: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
108a35: 8b 44 24 28 mov eax,DWORD PTR [esp+0x28]
108a39: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
108a3d: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
108a40: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
108a44: 8b 03 mov eax,DWORD PTR [ebx]
108a46: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
108a4a: 89 34 24 mov DWORD PTR [esp],esi
108a4d: e8 6c ff ff ff call 1089be <OrderedArrayBinarySearch>
108a52: 8b 13 mov edx,DWORD PTR [ebx]
108a54: 39 34 82 cmp DWORD PTR [edx+eax*4],esi
108a57: 74 05 je 108a5e <OrderedArraySearch+0x36>
108a59: b8 ff ff ff ff mov eax,0xffffffff
108a5e: 83 c4 14 add esp,0x14
108a61: 5b pop ebx
108a62: 5e pop esi
108a63: c3 ret
00108a64 <OrderedArrayInsert>:
108a64: 55 push ebp
108a65: 57 push edi
108a66: 56 push esi
108a67: 53 push ebx
108a68: 83 ec 1c sub esp,0x1c
108a6b: 8b 74 24 30 mov esi,DWORD PTR [esp+0x30]
108a6f: 8b 5c 24 34 mov ebx,DWORD PTR [esp+0x34]
108a73: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
108a76: 3b 43 08 cmp eax,DWORD PTR [ebx+0x8]
108a79: 73 4a jae 108ac5 <OrderedArrayInsert+0x61>
108a7b: 8b 53 0c mov edx,DWORD PTR [ebx+0xc]
108a7e: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
108a82: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
108a86: 8b 03 mov eax,DWORD PTR [ebx]
108a88: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
108a8c: 89 34 24 mov DWORD PTR [esp],esi
108a8f: e8 2a ff ff ff call 1089be <OrderedArrayBinarySearch>
108a94: 8b 4b 04 mov ecx,DWORD PTR [ebx+0x4]
108a97: 39 c8 cmp eax,ecx
108a99: 73 22 jae 108abd <OrderedArrayInsert+0x59>
108a9b: 85 c9 test ecx,ecx
108a9d: 74 1e je 108abd <OrderedArrayInsert+0x59>
108a9f: 8d 14 8d 00 00 00 00 lea edx,[ecx*4+0x0]
108aa6: 8b 3b mov edi,DWORD PTR [ebx]
108aa8: 8b 6c 17 fc mov ebp,DWORD PTR [edi+edx*1-0x4]
108aac: 89 2c 17 mov DWORD PTR [edi+edx*1],ebp
108aaf: 49 dec ecx
108ab0: 39 c8 cmp eax,ecx
108ab2: 73 09 jae 108abd <OrderedArrayInsert+0x59>
108ab4: 83 ea 04 sub edx,0x4
108ab7: 83 7b 04 00 cmp DWORD PTR [ebx+0x4],0x0
108abb: 75 e9 jne 108aa6 <OrderedArrayInsert+0x42>
108abd: 8b 13 mov edx,DWORD PTR [ebx]
108abf: 89 34 82 mov DWORD PTR [edx+eax*4],esi
108ac2: ff 43 04 inc DWORD PTR [ebx+0x4]
108ac5: 83 c4 1c add esp,0x1c
108ac8: 5b pop ebx
108ac9: 5e pop esi
108aca: 5f pop edi
108acb: 5d pop ebp
108acc: c3 ret
00108acd <OrderedArrayLookup>:
108acd: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
108ad1: 8b 4c 24 08 mov ecx,DWORD PTR [esp+0x8]
108ad5: b8 00 00 00 00 mov eax,0x0
108ada: 39 51 04 cmp DWORD PTR [ecx+0x4],edx
108add: 76 05 jbe 108ae4 <OrderedArrayLookup+0x17>
108adf: 8b 01 mov eax,DWORD PTR [ecx]
108ae1: 8b 04 90 mov eax,DWORD PTR [eax+edx*4]
108ae4: c3 ret
00108ae5 <OrderedArrayDeleteIndex>:
108ae5: 56 push esi
108ae6: 53 push ebx
108ae7: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
108aeb: 8b 5c 24 10 mov ebx,DWORD PTR [esp+0x10]
108aef: 8b 4b 04 mov ecx,DWORD PTR [ebx+0x4]
108af2: 39 c1 cmp ecx,eax
108af4: 76 23 jbe 108b19 <OrderedArrayDeleteIndex+0x34>
108af6: 8d 50 01 lea edx,[eax+0x1]
108af9: 39 d1 cmp ecx,edx
108afb: 76 18 jbe 108b15 <OrderedArrayDeleteIndex+0x30>
108afd: c1 e0 02 shl eax,0x2
108b00: 8b 0b mov ecx,DWORD PTR [ebx]
108b02: 8d 34 01 lea esi,[ecx+eax*1]
108b05: 83 c0 04 add eax,0x4
108b08: 8b 0c 01 mov ecx,DWORD PTR [ecx+eax*1]
108b0b: 89 0e mov DWORD PTR [esi],ecx
108b0d: 42 inc edx
108b0e: 8b 4b 04 mov ecx,DWORD PTR [ebx+0x4]
108b11: 39 d1 cmp ecx,edx
108b13: 77 eb ja 108b00 <OrderedArrayDeleteIndex+0x1b>
108b15: 49 dec ecx
108b16: 89 4b 04 mov DWORD PTR [ebx+0x4],ecx
108b19: 5b pop ebx
108b1a: 5e pop esi
108b1b: c3 ret
00108b1c <PicRemap>:
108b1c: b0 11 mov al,0x11
108b1e: e6 20 out 0x20,al
108b20: e6 a0 out 0xa0,al
108b22: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
108b26: e6 21 out 0x21,al
108b28: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
108b2c: e6 a1 out 0xa1,al
108b2e: b0 04 mov al,0x4
108b30: e6 21 out 0x21,al
108b32: b0 02 mov al,0x2
108b34: e6 a1 out 0xa1,al
108b36: b0 01 mov al,0x1
108b38: e6 21 out 0x21,al
108b3a: e6 a1 out 0xa1,al
108b3c: b0 00 mov al,0x0
108b3e: e6 21 out 0x21,al
108b40: c3 ret
108b41: 00 00 add BYTE PTR [eax],al
...
00108b44 <PitSetFrequency>:
108b44: 53 push ebx
108b45: 83 ec 18 sub esp,0x18
108b48: 8b 4c 24 20 mov ecx,DWORD PTR [esp+0x20]
108b4c: bb dc 34 12 00 mov ebx,0x1234dc
108b51: 89 d8 mov eax,ebx
108b53: ba 00 00 00 00 mov edx,0x0
108b58: f7 f1 div ecx
108b5a: 89 c3 mov ebx,eax
108b5c: b0 36 mov al,0x36
108b5e: e6 43 out 0x43,al
108b60: 88 d8 mov al,bl
108b62: e6 40 out 0x40,al
108b64: 89 d8 mov eax,ebx
108b66: c1 e8 08 shr eax,0x8
108b69: e6 40 out 0x40,al
108b6b: 89 0c 24 mov DWORD PTR [esp],ecx
108b6e: e8 15 08 00 00 call 109388 <TimeSetInternalFrequency>
108b73: 83 c4 18 add esp,0x18
108b76: 5b pop ebx
108b77: c3 ret
00108b78 <inportb>:
108b78: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
108b7c: ec in al,dx
108b7d: c3 ret
00108b7e <ReadKey>:
108b7e: 56 push esi
108b7f: 53 push ebx
108b80: 83 ec 14 sub esp,0x14
108b83: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
108b87: c6 05 dd d9 10 00 ff mov BYTE PTR ds:0x10d9dd,0xff
108b8e: a0 dd d9 10 00 mov al,ds:0x10d9dd
108b93: 3c ff cmp al,0xff
108b95: 74 f7 je 108b8e <ReadKey+0x10>
108b97: 8a 1d dd d9 10 00 mov bl,BYTE PTR ds:0x10d9dd
108b9d: a0 dc d9 10 00 mov al,ds:0x10d9dc
108ba2: a8 01 test al,0x1
108ba4: 75 e1 jne 108b87 <ReadKey+0x9>
108ba6: c7 04 24 12 00 00 00 mov DWORD PTR [esp],0x12
108bad: e8 2b e2 ff ff call 106ddd <KeyboardGetKeyStatus>
108bb2: 84 c0 test al,al
108bb4: 75 10 jne 108bc6 <ReadKey+0x48>
108bb6: c7 04 24 59 00 00 00 mov DWORD PTR [esp],0x59
108bbd: e8 1b e2 ff ff call 106ddd <KeyboardGetKeyStatus>
108bc2: 84 c0 test al,al
108bc4: 74 0c je 108bd2 <ReadKey+0x54>
108bc6: 31 c0 xor eax,eax
108bc8: 88 d8 mov al,bl
108bca: 8a 80 60 ab 10 00 mov al,BYTE PTR [eax+0x10ab60]
108bd0: eb 0a jmp 108bdc <ReadKey+0x5e>
108bd2: 31 c0 xor eax,eax
108bd4: 88 d8 mov al,bl
108bd6: 8a 80 e0 ab 10 00 mov al,BYTE PTR [eax+0x10abe0]
108bdc: 88 06 mov BYTE PTR [esi],al
108bde: 88 5e 01 mov BYTE PTR [esi+0x1],bl
108be1: 89 f0 mov eax,esi
108be3: 83 c4 14 add esp,0x14
108be6: 5b pop ebx
108be7: 5e pop esi
108be8: c2 04 00 ret 0x4
00108beb <ReadKeyEvent>:
108beb: 56 push esi
108bec: 53 push ebx
108bed: 83 ec 24 sub esp,0x24
108bf0: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
108bf4: c6 05 dd d9 10 00 ff mov BYTE PTR ds:0x10d9dd,0xff
108bfb: a0 dd d9 10 00 mov al,ds:0x10d9dd
108c00: 3c ff cmp al,0xff
108c02: 74 f7 je 108bfb <ReadKeyEvent+0x10>
108c04: 0f b6 35 dd d9 10 00 movzx esi,BYTE PTR ds:0x10d9dd
108c0b: a0 dc d9 10 00 mov al,ds:0x10d9dc
108c10: a8 01 test al,0x1
108c12: 0f 94 44 24 1f sete BYTE PTR [esp+0x1f]
108c17: c7 04 24 12 00 00 00 mov DWORD PTR [esp],0x12
108c1e: e8 ba e1 ff ff call 106ddd <KeyboardGetKeyStatus>
108c23: 84 c0 test al,al
108c25: 75 10 jne 108c37 <ReadKeyEvent+0x4c>
108c27: c7 04 24 59 00 00 00 mov DWORD PTR [esp],0x59
108c2e: e8 aa e1 ff ff call 106ddd <KeyboardGetKeyStatus>
108c33: 84 c0 test al,al
108c35: 74 0f je 108c46 <ReadKeyEvent+0x5b>
108c37: 89 f0 mov eax,esi
108c39: 25 ff 00 00 00 and eax,0xff
108c3e: 8a 80 60 ab 10 00 mov al,BYTE PTR [eax+0x10ab60]
108c44: eb 0d jmp 108c53 <ReadKeyEvent+0x68>
108c46: 89 f0 mov eax,esi
108c48: 25 ff 00 00 00 and eax,0xff
108c4d: 8a 80 e0 ab 10 00 mov al,BYTE PTR [eax+0x10abe0]
108c53: 8a 54 24 1f mov dl,BYTE PTR [esp+0x1f]
108c57: 88 13 mov BYTE PTR [ebx],dl
108c59: 88 43 01 mov BYTE PTR [ebx+0x1],al
108c5c: 89 f0 mov eax,esi
108c5e: 88 43 02 mov BYTE PTR [ebx+0x2],al
108c61: 89 d8 mov eax,ebx
108c63: 83 c4 24 add esp,0x24
108c66: 5b pop ebx
108c67: 5e pop esi
108c68: c2 04 00 ret 0x4
...
00108c6c <ConvertLbaToChs>:
108c6c: 53 push ebx
108c6d: 8b 4c 24 08 mov ecx,DWORD PTR [esp+0x8]
108c71: 85 c9 test ecx,ecx
108c73: 74 37 je 108cac <ConvertLbaToChs+0x40>
108c75: 8d 1c 09 lea ebx,[ecx+ecx*1]
108c78: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
108c7c: ba 00 00 00 00 mov edx,0x0
108c81: f7 f3 div ebx
108c83: 89 c3 mov ebx,eax
108c85: 89 d0 mov eax,edx
108c87: ba 00 00 00 00 mov edx,0x0
108c8c: f7 f1 div ecx
108c8e: 8b 54 24 14 mov edx,DWORD PTR [esp+0x14]
108c92: 89 02 mov DWORD PTR [edx],eax
108c94: 8b 44 24 10 mov eax,DWORD PTR [esp+0x10]
108c98: 89 18 mov DWORD PTR [eax],ebx
108c9a: 8b 44 24 0c mov eax,DWORD PTR [esp+0xc]
108c9e: ba 00 00 00 00 mov edx,0x0
108ca3: f7 f1 div ecx
108ca5: 42 inc edx
108ca6: 8b 44 24 18 mov eax,DWORD PTR [esp+0x18]
108caa: 89 10 mov DWORD PTR [eax],edx
108cac: 5b pop ebx
108cad: c3 ret
...
00108cb0 <strlen>:
108cb0: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
108cb4: 89 d0 mov eax,edx
108cb6: 80 3a 00 cmp BYTE PTR [edx],0x0
108cb9: 74 06 je 108cc1 <strlen+0x11>
108cbb: 40 inc eax
108cbc: 80 38 00 cmp BYTE PTR [eax],0x0
108cbf: 75 fa jne 108cbb <strlen+0xb>
108cc1: 29 d0 sub eax,edx
108cc3: c3 ret
00108cc4 <strcmp>:
108cc4: 53 push ebx
108cc5: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
108cc9: 8b 54 24 0c mov edx,DWORD PTR [esp+0xc]
108ccd: 8a 08 mov cl,BYTE PTR [eax]
108ccf: 84 c9 test cl,cl
108cd1: 74 1c je 108cef <strcmp+0x2b>
108cd3: 8a 1a mov bl,BYTE PTR [edx]
108cd5: 84 db test bl,bl
108cd7: 74 16 je 108cef <strcmp+0x2b>
108cd9: 38 d9 cmp cl,bl
108cdb: 75 12 jne 108cef <strcmp+0x2b>
108cdd: 40 inc eax
108cde: 42 inc edx
108cdf: 8a 08 mov cl,BYTE PTR [eax]
108ce1: 84 c9 test cl,cl
108ce3: 74 0a je 108cef <strcmp+0x2b>
108ce5: 8a 1a mov bl,BYTE PTR [edx]
108ce7: 84 db test bl,bl
108ce9: 74 04 je 108cef <strcmp+0x2b>
108ceb: 38 d9 cmp cl,bl
108ced: 74 ee je 108cdd <strcmp+0x19>
108cef: 8a 08 mov cl,BYTE PTR [eax]
108cf1: 8a 12 mov dl,BYTE PTR [edx]
108cf3: b8 ff ff ff ff mov eax,0xffffffff
108cf8: 38 d1 cmp cl,dl
108cfa: 72 08 jb 108d04 <strcmp+0x40>
108cfc: 0f 97 c0 seta al
108cff: 25 ff 00 00 00 and eax,0xff
108d04: 5b pop ebx
108d05: c3 ret
00108d06 <strncmp>:
108d06: 57 push edi
108d07: 56 push esi
108d08: 53 push ebx
108d09: 8b 5c 24 10 mov ebx,DWORD PTR [esp+0x10]
108d0d: 8b 4c 24 14 mov ecx,DWORD PTR [esp+0x14]
108d11: 8b 54 24 18 mov edx,DWORD PTR [esp+0x18]
108d15: b8 00 00 00 00 mov eax,0x0
108d1a: 85 d2 test edx,edx
108d1c: 74 55 je 108d73 <strncmp+0x6d>
108d1e: 0f b6 33 movzx esi,BYTE PTR [ebx]
108d21: 89 f0 mov eax,esi
108d23: 3a 01 cmp al,BYTE PTR [ecx]
108d25: 75 29 jne 108d50 <strncmp+0x4a>
108d27: b8 00 00 00 00 mov eax,0x0
108d2c: 89 d7 mov edi,edx
108d2e: 4f dec edi
108d2f: 74 42 je 108d73 <strncmp+0x6d>
108d31: 89 f0 mov eax,esi
108d33: eb 05 jmp 108d3a <strncmp+0x34>
108d35: 4f dec edi
108d36: 74 2f je 108d67 <strncmp+0x61>
108d38: 89 c6 mov esi,eax
108d3a: 89 f2 mov edx,esi
108d3c: 38 d0 cmp al,dl
108d3e: 75 04 jne 108d44 <strncmp+0x3e>
108d40: 84 c0 test al,al
108d42: 74 2a je 108d6e <strncmp+0x68>
108d44: 43 inc ebx
108d45: 41 inc ecx
108d46: 85 ff test edi,edi
108d48: 74 06 je 108d50 <strncmp+0x4a>
108d4a: 8a 03 mov al,BYTE PTR [ebx]
108d4c: 3a 01 cmp al,BYTE PTR [ecx]
108d4e: 74 e5 je 108d35 <strncmp+0x2f>
108d50: 8a 1b mov bl,BYTE PTR [ebx]
108d52: 8a 11 mov dl,BYTE PTR [ecx]
108d54: b8 ff ff ff ff mov eax,0xffffffff
108d59: 38 d3 cmp bl,dl
108d5b: 72 16 jb 108d73 <strncmp+0x6d>
108d5d: 0f 97 c0 seta al
108d60: 25 ff 00 00 00 and eax,0xff
108d65: eb 0c jmp 108d73 <strncmp+0x6d>
108d67: b8 00 00 00 00 mov eax,0x0
108d6c: eb 05 jmp 108d73 <strncmp+0x6d>
108d6e: b8 00 00 00 00 mov eax,0x0
108d73: 5b pop ebx
108d74: 5e pop esi
108d75: 5f pop edi
108d76: c3 ret
00108d77 <strcasecmp>:
108d77: 57 push edi
108d78: 56 push esi
108d79: 53 push ebx
108d7a: 83 ec 10 sub esp,0x10
108d7d: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
108d81: 8b 5c 24 24 mov ebx,DWORD PTR [esp+0x24]
108d85: 8a 06 mov al,BYTE PTR [esi]
108d87: 84 c0 test al,al
108d89: 74 30 je 108dbb <strcasecmp+0x44>
108d8b: 80 3b 00 cmp BYTE PTR [ebx],0x0
108d8e: 75 0f jne 108d9f <strcasecmp+0x28>
108d90: eb 29 jmp 108dbb <strcasecmp+0x44>
108d92: 46 inc esi
108d93: 43 inc ebx
108d94: 8a 06 mov al,BYTE PTR [esi]
108d96: 84 c0 test al,al
108d98: 74 21 je 108dbb <strcasecmp+0x44>
108d9a: 80 3b 00 cmp BYTE PTR [ebx],0x0
108d9d: 74 1c je 108dbb <strcasecmp+0x44>
108d9f: 0f be c0 movsx eax,al
108da2: 89 04 24 mov DWORD PTR [esp],eax
108da5: e8 43 bc ff ff call 1049ed <tolower>
108daa: 89 c7 mov edi,eax
108dac: 0f be 03 movsx eax,BYTE PTR [ebx]
108daf: 89 04 24 mov DWORD PTR [esp],eax
108db2: e8 36 bc ff ff call 1049ed <tolower>
108db7: 39 c7 cmp edi,eax
108db9: 74 d7 je 108d92 <strcasecmp+0x1b>
108dbb: 31 c0 xor eax,eax
108dbd: 8a 06 mov al,BYTE PTR [esi]
108dbf: 89 04 24 mov DWORD PTR [esp],eax
108dc2: e8 26 bc ff ff call 1049ed <tolower>
108dc7: 89 c6 mov esi,eax
108dc9: 31 c0 xor eax,eax
108dcb: 8a 03 mov al,BYTE PTR [ebx]
108dcd: 89 04 24 mov DWORD PTR [esp],eax
108dd0: e8 18 bc ff ff call 1049ed <tolower>
108dd5: 88 c2 mov dl,al
108dd7: b8 ff ff ff ff mov eax,0xffffffff
108ddc: 89 f1 mov ecx,esi
108dde: 38 d1 cmp cl,dl
108de0: 72 08 jb 108dea <strcasecmp+0x73>
108de2: 0f 97 c0 seta al
108de5: 25 ff 00 00 00 and eax,0xff
108dea: 83 c4 10 add esp,0x10
108ded: 5b pop ebx
108dee: 5e pop esi
108def: 5f pop edi
108df0: c3 ret
00108df1 <strcpy>:
108df1: 53 push ebx
108df2: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
108df6: 8b 5c 24 0c mov ebx,DWORD PTR [esp+0xc]
108dfa: ba 00 00 00 00 mov edx,0x0
108dff: 8a 0c 13 mov cl,BYTE PTR [ebx+edx*1]
108e02: 88 0c 10 mov BYTE PTR [eax+edx*1],cl
108e05: 42 inc edx
108e06: 84 c9 test cl,cl
108e08: 75 f5 jne 108dff <strcpy+0xe>
108e0a: 5b pop ebx
108e0b: c3 ret
00108e0c <strchr>:
108e0c: 53 push ebx
108e0d: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
108e11: 8b 5c 24 0c mov ebx,DWORD PTR [esp+0xc]
108e15: 8a 10 mov dl,BYTE PTR [eax]
108e17: 84 d2 test dl,dl
108e19: 74 13 je 108e2e <strchr+0x22>
108e1b: 88 d9 mov cl,bl
108e1d: 38 da cmp dl,bl
108e1f: 74 1c je 108e3d <strchr+0x31>
108e21: 40 inc eax
108e22: 8a 10 mov dl,BYTE PTR [eax]
108e24: 84 d2 test dl,dl
108e26: 74 06 je 108e2e <strchr+0x22>
108e28: 38 ca cmp dl,cl
108e2a: 75 f5 jne 108e21 <strchr+0x15>
108e2c: eb 0f jmp 108e3d <strchr+0x31>
108e2e: 38 da cmp dl,bl
108e30: 0f 94 c2 sete dl
108e33: 81 e2 ff 00 00 00 and edx,0xff
108e39: f7 da neg edx
108e3b: 21 d0 and eax,edx
108e3d: 5b pop ebx
108e3e: c3 ret
00108e3f <strrchr>:
108e3f: 56 push esi
108e40: 53 push ebx
108e41: 83 ec 08 sub esp,0x8
108e44: 8b 44 24 14 mov eax,DWORD PTR [esp+0x14]
108e48: 8b 5c 24 18 mov ebx,DWORD PTR [esp+0x18]
108e4c: be 00 00 00 00 mov esi,0x0
108e51: 85 db test ebx,ebx
108e53: 75 16 jne 108e6b <strrchr+0x2c>
108e55: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
108e5c: 00
108e5d: 89 04 24 mov DWORD PTR [esp],eax
108e60: e8 a7 ff ff ff call 108e0c <strchr>
108e65: 89 c6 mov esi,eax
108e67: eb 12 jmp 108e7b <strrchr+0x3c>
108e69: 89 c6 mov esi,eax
108e6b: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
108e6f: 89 04 24 mov DWORD PTR [esp],eax
108e72: e8 95 ff ff ff call 108e0c <strchr>
108e77: 85 c0 test eax,eax
108e79: 75 ee jne 108e69 <strrchr+0x2a>
108e7b: 89 f0 mov eax,esi
108e7d: 83 c4 08 add esp,0x8
108e80: 5b pop ebx
108e81: 5e pop esi
108e82: c3 ret
...
00108e84 <SystemPanic>:
108e84: fa cli
108e85: f4 hlt
108e86: c3 ret
00108e87 <SystemReboot>:
108e87: 83 ec 1c sub esp,0x1c
108e8a: c7 44 24 08 12 b0 10 mov DWORD PTR [esp+0x8],0x10b012
108e91: 00
108e92: c7 44 24 04 27 b0 10 mov DWORD PTR [esp+0x4],0x10b027
108e99: 00
108e9a: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
108ea1: e8 e2 e3 ff ff call 107288 <LogWrite>
108ea6: e8 55 df ff ff call 106e00 <KeyboardWaitOutport>
108eab: b0 fe mov al,0xfe
108ead: e6 64 out 0x64,al
108eaf: e8 d0 ff ff ff call 108e84 <SystemPanic>
108eb4: 83 c4 1c add esp,0x1c
108eb7: c3 ret
00108eb8 <TaskEnd>:
108eb8: 53 push ebx
108eb9: 83 ec 18 sub esp,0x18
108ebc: 8b 15 04 da 10 00 mov edx,DWORD PTR ds:0x10da04
108ec2: 8b 1a mov ebx,DWORD PTR [edx]
108ec4: a1 00 da 10 00 mov eax,ds:0x10da00
108ec9: 3b 18 cmp ebx,DWORD PTR [eax]
108ecb: 75 0c jne 108ed9 <TaskEnd+0x21>
108ecd: 8b 40 18 mov eax,DWORD PTR [eax+0x18]
108ed0: a3 00 da 10 00 mov ds:0x10da00,eax
108ed5: eb 13 jmp 108eea <TaskEnd+0x32>
108ed7: 89 c8 mov eax,ecx
108ed9: 8b 48 18 mov ecx,DWORD PTR [eax+0x18]
108edc: 85 c9 test ecx,ecx
108ede: 74 04 je 108ee4 <TaskEnd+0x2c>
108ee0: 3b 19 cmp ebx,DWORD PTR [ecx]
108ee2: 75 f3 jne 108ed7 <TaskEnd+0x1f>
108ee4: 8b 4a 18 mov ecx,DWORD PTR [edx+0x18]
108ee7: 89 48 18 mov DWORD PTR [eax+0x18],ecx
108eea: 8b 42 10 mov eax,DWORD PTR [edx+0x10]
108eed: 89 04 24 mov DWORD PTR [esp],eax
108ef0: e8 13 f4 ff ff call 108308 <kfree>
108ef5: a1 04 da 10 00 mov eax,ds:0x10da04
108efa: 89 04 24 mov DWORD PTR [esp],eax
108efd: e8 06 f4 ff ff call 108308 <kfree>
108f02: eb fe jmp 108f02 <TaskEnd+0x4a>
00108f04 <TaskSwitch>:
108f04: 83 ec 1c sub esp,0x1c
108f07: 83 3d 00 da 10 00 00 cmp DWORD PTR ds:0x10da00,0x0
108f0e: 74 43 je 108f53 <TaskSwitch+0x4f>
108f10: 89 e2 mov edx,esp
108f12: a1 04 da 10 00 mov eax,ds:0x10da04
108f17: 89 50 04 mov DWORD PTR [eax+0x4],edx
108f1a: 89 ea mov edx,ebp
108f1c: 89 50 08 mov DWORD PTR [eax+0x8],edx
108f1f: 8b 15 e8 d9 10 00 mov edx,DWORD PTR ds:0x10d9e8
108f25: 89 50 0c mov DWORD PTR [eax+0xc],edx
108f28: 8b 40 18 mov eax,DWORD PTR [eax+0x18]
108f2b: 85 c0 test eax,eax
108f2d: 75 05 jne 108f34 <TaskSwitch+0x30>
108f2f: a1 00 da 10 00 mov eax,ds:0x10da00
108f34: a3 04 da 10 00 mov ds:0x10da04,eax
108f39: 8b 40 0c mov eax,DWORD PTR [eax+0xc]
108f3c: 89 04 24 mov DWORD PTR [esp],eax
108f3f: e8 88 ec ff ff call 107bcc <PagingSwitchDirectory>
108f44: a1 04 da 10 00 mov eax,ds:0x10da04
108f49: 8b 50 04 mov edx,DWORD PTR [eax+0x4]
108f4c: 89 d4 mov esp,edx
108f4e: 8b 40 08 mov eax,DWORD PTR [eax+0x8]
108f51: 89 c5 mov ebp,eax
108f53: 83 c4 1c add esp,0x1c
108f56: c3 ret
00108f57 <TaskCreate>:
108f57: 53 push ebx
108f58: 83 ec 18 sub esp,0x18
108f5b: c7 04 24 1c 00 00 00 mov DWORD PTR [esp],0x1c
108f62: e8 3a f2 ff ff call 1081a1 <kmalloc>
108f67: 89 c3 mov ebx,eax
108f69: c7 04 24 00 10 00 00 mov DWORD PTR [esp],0x1000
108f70: e8 2c f2 ff ff call 1081a1 <kmalloc>
108f75: 89 43 10 mov DWORD PTR [ebx+0x10],eax
108f78: 8d 90 00 10 00 00 lea edx,[eax+0x1000]
108f7e: 89 53 14 mov DWORD PTR [ebx+0x14],edx
108f81: c7 43 18 00 00 00 00 mov DWORD PTR [ebx+0x18],0x0
108f88: 8b 15 e4 d9 10 00 mov edx,DWORD PTR ds:0x10d9e4
108f8e: 89 53 0c mov DWORD PTR [ebx+0xc],edx
108f91: 8b 15 30 c3 10 00 mov edx,DWORD PTR ds:0x10c330
108f97: 89 13 mov DWORD PTR [ebx],edx
108f99: 42 inc edx
108f9a: 89 15 30 c3 10 00 mov DWORD PTR ds:0x10c330,edx
108fa0: c7 80 fc 0f 00 00 b8 mov DWORD PTR [eax+0xffc],0x108eb8
108fa7: 8e 10 00
108faa: 8b 53 14 mov edx,DWORD PTR [ebx+0x14]
108fad: 8d 42 b0 lea eax,[edx-0x50]
108fb0: 8c d1 mov ecx,ss
108fb2: 89 4a f8 mov DWORD PTR [edx-0x8],ecx
108fb5: 8c c9 mov ecx,cs
108fb7: 89 4a ec mov DWORD PTR [edx-0x14],ecx
108fba: 9c pushf
108fbb: 59 pop ecx
108fbc: 89 4a f0 mov DWORD PTR [edx-0x10],ecx
108fbf: 89 f1 mov ecx,esi
108fc1: 89 4a c4 mov DWORD PTR [edx-0x3c],ecx
108fc4: 89 f9 mov ecx,edi
108fc6: 89 4a c0 mov DWORD PTR [edx-0x40],ecx
108fc9: 8c e9 mov ecx,gs
108fcb: 89 4a b0 mov DWORD PTR [edx-0x50],ecx
108fce: 8c e2 mov edx,fs
108fd0: 89 50 04 mov DWORD PTR [eax+0x4],edx
108fd3: 8c c2 mov edx,es
108fd5: 89 50 08 mov DWORD PTR [eax+0x8],edx
108fd8: 8c da mov edx,ds
108fda: 89 50 0c mov DWORD PTR [eax+0xc],edx
108fdd: c7 40 24 00 00 00 00 mov DWORD PTR [eax+0x24],0x0
108fe4: c7 40 28 00 00 00 00 mov DWORD PTR [eax+0x28],0x0
108feb: c7 40 20 00 00 00 00 mov DWORD PTR [eax+0x20],0x0
108ff2: c7 40 2c 00 00 00 00 mov DWORD PTR [eax+0x2c],0x0
108ff9: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
108ffd: 89 50 38 mov DWORD PTR [eax+0x38],edx
109000: 8b 53 14 mov edx,DWORD PTR [ebx+0x14]
109003: 83 ea 04 sub edx,0x4
109006: 89 50 44 mov DWORD PTR [eax+0x44],edx
109009: 8b 53 14 mov edx,DWORD PTR [ebx+0x14]
10900c: 83 ea 28 sub edx,0x28
10900f: 89 50 1c mov DWORD PTR [eax+0x1c],edx
109012: 8b 53 14 mov edx,DWORD PTR [ebx+0x14]
109015: 89 53 08 mov DWORD PTR [ebx+0x8],edx
109018: 89 50 18 mov DWORD PTR [eax+0x18],edx
10901b: a1 00 da 10 00 mov eax,ds:0x10da00
109020: 85 c0 test eax,eax
109022: 74 19 je 10903d <TaskCreate+0xe6>
109024: 8b 50 18 mov edx,DWORD PTR [eax+0x18]
109027: 85 d2 test edx,edx
109029: 75 04 jne 10902f <TaskCreate+0xd8>
10902b: eb 0b jmp 109038 <TaskCreate+0xe1>
10902d: 89 c2 mov edx,eax
10902f: 8b 42 18 mov eax,DWORD PTR [edx+0x18]
109032: 85 c0 test eax,eax
109034: 75 f7 jne 10902d <TaskCreate+0xd6>
109036: eb 02 jmp 10903a <TaskCreate+0xe3>
109038: 89 c2 mov edx,eax
10903a: 89 5a 18 mov DWORD PTR [edx+0x18],ebx
10903d: 83 c4 18 add esp,0x18
109040: 5b pop ebx
109041: c3 ret
00109042 <TaskInitialize>:
109042: 83 ec 1c sub esp,0x1c
109045: c7 04 24 1c 00 00 00 mov DWORD PTR [esp],0x1c
10904c: e8 50 f1 ff ff call 1081a1 <kmalloc>
109051: 8b 15 30 c3 10 00 mov edx,DWORD PTR ds:0x10c330
109057: 89 10 mov DWORD PTR [eax],edx
109059: 42 inc edx
10905a: 89 15 30 c3 10 00 mov DWORD PTR ds:0x10c330,edx
109060: 8b 15 e4 d9 10 00 mov edx,DWORD PTR ds:0x10d9e4
109066: 89 50 0c mov DWORD PTR [eax+0xc],edx
109069: c7 40 08 00 00 00 00 mov DWORD PTR [eax+0x8],0x0
109070: c7 40 04 00 00 00 00 mov DWORD PTR [eax+0x4],0x0
109077: c7 40 18 00 00 00 00 mov DWORD PTR [eax+0x18],0x0
10907e: a3 04 da 10 00 mov ds:0x10da04,eax
109083: a3 00 da 10 00 mov ds:0x10da00,eax
109088: 83 c4 1c add esp,0x1c
10908b: c3 ret
0010908c <ConvertTimeToTimeSystem>:
10908c: 55 push ebp
10908d: 57 push edi
10908e: 56 push esi
10908f: 53 push ebx
109090: 8b 44 24 14 mov eax,DWORD PTR [esp+0x14]
109094: 0f b6 7c 24 1c movzx edi,BYTE PTR [esp+0x1c]
109099: 0f b6 74 24 1e movzx esi,BYTE PTR [esp+0x1e]
10909e: 8b 54 24 18 mov edx,DWORD PTR [esp+0x18]
1090a2: 31 c9 xor ecx,ecx
1090a4: 8a 4c 24 1f mov cl,BYTE PTR [esp+0x1f]
1090a8: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090ab: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090ae: 8d 1c 89 lea ebx,[ecx+ecx*4]
1090b1: 89 d9 mov ecx,ebx
1090b3: c1 e1 04 shl ecx,0x4
1090b6: 29 d9 sub ecx,ebx
1090b8: 89 cd mov ebp,ecx
1090ba: c1 e5 04 shl ebp,0x4
1090bd: 29 cd sub ebp,ecx
1090bf: c1 e5 07 shl ebp,0x7
1090c2: 31 c9 xor ecx,ecx
1090c4: 8a 4c 24 20 mov cl,BYTE PTR [esp+0x20]
1090c8: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090cb: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090ce: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090d1: 89 cb mov ebx,ecx
1090d3: c1 e3 04 shl ebx,0x4
1090d6: 29 cb sub ebx,ecx
1090d8: c1 e3 05 shl ebx,0x5
1090db: 01 dd add ebp,ebx
1090dd: 66 8b 5c 24 22 mov bx,WORD PTR [esp+0x22]
1090e2: 81 e3 ff ff 00 00 and ebx,0xffff
1090e8: 01 eb add ebx,ebp
1090ea: 31 c9 xor ecx,ecx
1090ec: 8a 4c 24 21 mov cl,BYTE PTR [esp+0x21]
1090f0: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090f3: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090f6: 8d 0c 89 lea ecx,[ecx+ecx*4]
1090f9: 8d 1c cb lea ebx,[ebx+ecx*8]
1090fc: 4a dec edx
1090fd: 79 0b jns 10910a <ConvertTimeToTimeSystem+0x7e>
1090ff: c7 00 00 00 00 00 mov DWORD PTR [eax],0x0
109105: 89 58 04 mov DWORD PTR [eax+0x4],ebx
109108: eb 4a jmp 109154 <ConvertTimeToTimeSystem+0xc8>
10910a: 4f dec edi
10910b: 81 e7 ff 00 00 00 and edi,0xff
109111: 0f bf bc 3f 2e b0 10 movsx edi,WORD PTR [edi+edi*1+0x10b02e]
109118: 00
109119: 89 d5 mov ebp,edx
10911b: c1 fd 1f sar ebp,0x1f
10911e: c1 ed 1e shr ebp,0x1e
109121: 01 ea add edx,ebp
109123: 89 d1 mov ecx,edx
109125: 83 e1 03 and ecx,0x3
109128: 29 e9 sub ecx,ebp
10912a: 8d 2c c9 lea ebp,[ecx+ecx*8]
10912d: 8d 0c e9 lea ecx,[ecx+ebp*8]
109130: 8d 0c 89 lea ecx,[ecx+ecx*4]
109133: 01 cf add edi,ecx
109135: 4e dec esi
109136: 81 e6 ff 00 00 00 and esi,0xff
10913c: 01 f7 add edi,esi
10913e: c1 fa 02 sar edx,0x2
109141: 8d 0c d2 lea ecx,[edx+edx*8]
109144: 8d 0c ca lea ecx,[edx+ecx*8]
109147: 8d 0c 89 lea ecx,[ecx+ecx*4]
10914a: 8d 14 8a lea edx,[edx+ecx*4]
10914d: 01 d7 add edi,edx
10914f: 89 38 mov DWORD PTR [eax],edi
109151: 89 58 04 mov DWORD PTR [eax+0x4],ebx
109154: 5b pop ebx
109155: 5e pop esi
109156: 5f pop edi
109157: 5d pop ebp
109158: c2 04 00 ret 0x4
0010915b <ConvertTimeSystemToTime>:
10915b: 55 push ebp
10915c: 57 push edi
10915d: 56 push esi
10915e: 53 push ebx
10915f: 83 ec 34 sub esp,0x34
109162: 8b 7c 24 4c mov edi,DWORD PTR [esp+0x4c]
109166: 8b 74 24 50 mov esi,DWORD PTR [esp+0x50]
10916a: 89 7c 24 14 mov DWORD PTR [esp+0x14],edi
10916e: b8 d3 4d 62 10 mov eax,0x10624dd3
109173: f7 e6 mul esi
109175: 89 d1 mov ecx,edx
109177: c1 e9 06 shr ecx,0x6
10917a: 8d 04 89 lea eax,[ecx+ecx*4]
10917d: 8d 04 80 lea eax,[eax+eax*4]
109180: 8d 04 80 lea eax,[eax+eax*4]
109183: c1 e0 03 shl eax,0x3
109186: 89 f2 mov edx,esi
109188: 66 29 c2 sub dx,ax
10918b: 66 89 54 24 1c mov WORD PTR [esp+0x1c],dx
109190: bb 89 88 88 88 mov ebx,0x88888889
109195: 89 c8 mov eax,ecx
109197: f7 e3 mul ebx
109199: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
10919d: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
1091a1: c1 e8 05 shr eax,0x5
1091a4: 89 c2 mov edx,eax
1091a6: c1 e2 06 shl edx,0x6
1091a9: 8d 04 81 lea eax,[ecx+eax*4]
1091ac: 28 d0 sub al,dl
1091ae: 88 44 24 1e mov BYTE PTR [esp+0x1e],al
1091b2: b9 73 b2 e7 45 mov ecx,0x45e7b273
1091b7: 89 f0 mov eax,esi
1091b9: f7 e1 mul ecx
1091bb: 89 d1 mov ecx,edx
1091bd: c1 e9 0e shr ecx,0xe
1091c0: 89 c8 mov eax,ecx
1091c2: f7 e3 mul ebx
1091c4: 89 04 24 mov DWORD PTR [esp],eax
1091c7: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
1091cb: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
1091cf: c1 e8 05 shr eax,0x5
1091d2: 89 c2 mov edx,eax
1091d4: c1 e2 06 shl edx,0x6
1091d7: 8d 04 81 lea eax,[ecx+eax*4]
1091da: 28 d0 sub al,dl
1091dc: 88 44 24 1f mov BYTE PTR [esp+0x1f],al
1091e0: ba b1 7c 21 95 mov edx,0x95217cb1
1091e5: 89 f0 mov eax,esi
1091e7: f7 e2 mul edx
1091e9: c1 ea 15 shr edx,0x15
1091ec: 88 54 24 20 mov BYTE PTR [esp+0x20],dl
1091f0: b8 73 b0 6d 16 mov eax,0x166db073
1091f5: f7 e7 mul edi
1091f7: 89 d1 mov ecx,edx
1091f9: c1 e9 07 shr ecx,0x7
1091fc: 89 cb mov ebx,ecx
1091fe: 8d 04 c9 lea eax,[ecx+ecx*8]
109201: 8d 04 c1 lea eax,[ecx+eax*8]
109204: 8d 04 80 lea eax,[eax+eax*4]
109207: 8d 04 81 lea eax,[ecx+eax*4]
10920a: 89 f9 mov ecx,edi
10920c: 29 c1 sub ecx,eax
10920e: be 6d 01 00 00 mov esi,0x16d
109213: 89 c8 mov eax,ecx
109215: ba 00 00 00 00 mov edx,0x0
10921a: f7 f6 div esi
10921c: 89 54 24 18 mov DWORD PTR [esp+0x18],edx
109220: 89 54 24 0c mov DWORD PTR [esp+0xc],edx
109224: ba 61 f3 19 67 mov edx,0x6719f361
109229: 89 c8 mov eax,ecx
10922b: f7 e2 mul edx
10922d: 29 d1 sub ecx,edx
10922f: d1 e9 shr ecx,1
109231: 01 d1 add ecx,edx
109233: c1 e9 08 shr ecx,0x8
109236: 8d 4c 99 01 lea ecx,[ecx+ebx*4+0x1]
10923a: 89 4c 24 10 mov DWORD PTR [esp+0x10],ecx
10923e: b1 0b mov cl,0xb
109240: 8b 54 24 10 mov edx,DWORD PTR [esp+0x10]
109244: 83 e2 03 and edx,0x3
109247: eb 02 jmp 10924b <ConvertTimeSystemToTime+0xf0>
109249: 89 e9 mov ecx,ebp
10924b: 31 c0 xor eax,eax
10924d: 88 c8 mov al,cl
10924f: 66 8b 9c 00 2e b0 10 mov bx,WORD PTR [eax+eax*1+0x10b02e]
109256: 00
109257: 0f bf fb movsx edi,bx
10925a: 89 d6 mov esi,edx
10925c: b8 00 00 00 00 mov eax,0x0
109261: 85 d2 test edx,edx
109263: 75 0b jne 109270 <ConvertTimeSystemToTime+0x115>
109265: 80 f9 01 cmp cl,0x1
109268: 0f 97 c0 seta al
10926b: 25 ff 00 00 00 and eax,0xff
109270: 8d 69 ff lea ebp,[ecx-0x1]
109273: 01 f8 add eax,edi
109275: 39 44 24 0c cmp DWORD PTR [esp+0xc],eax
109279: 7c ce jl 109249 <ConvertTimeSystemToTime+0xee>
10927b: bd 07 00 00 00 mov ebp,0x7
109280: 8b 44 24 14 mov eax,DWORD PTR [esp+0x14]
109284: ba 00 00 00 00 mov edx,0x0
109289: f7 f5 div ebp
10928b: 89 d7 mov edi,edx
10928d: 0f b6 6c 24 18 movzx ebp,BYTE PTR [esp+0x18]
109292: ba 00 00 00 00 mov edx,0x0
109297: 85 f6 test esi,esi
109299: 75 0c jne 1092a7 <ConvertTimeSystemToTime+0x14c>
10929b: 80 f9 01 cmp cl,0x1
10929e: 0f 97 c2 seta dl
1092a1: 81 e2 ff 00 00 00 and edx,0xff
1092a7: 8b 74 24 10 mov esi,DWORD PTR [esp+0x10]
1092ab: 8b 44 24 48 mov eax,DWORD PTR [esp+0x48]
1092af: 89 30 mov DWORD PTR [eax],esi
1092b1: 41 inc ecx
1092b2: 88 48 04 mov BYTE PTR [eax+0x4],cl
1092b5: 8d 47 01 lea eax,[edi+0x1]
1092b8: 8b 4c 24 48 mov ecx,DWORD PTR [esp+0x48]
1092bc: 88 41 05 mov BYTE PTR [ecx+0x5],al
1092bf: 8d 45 01 lea eax,[ebp+0x1]
1092c2: 28 d8 sub al,bl
1092c4: 28 d0 sub al,dl
1092c6: 88 41 06 mov BYTE PTR [ecx+0x6],al
1092c9: 8a 44 24 20 mov al,BYTE PTR [esp+0x20]
1092cd: 88 41 07 mov BYTE PTR [ecx+0x7],al
1092d0: 8a 54 24 1f mov dl,BYTE PTR [esp+0x1f]
1092d4: 88 51 08 mov BYTE PTR [ecx+0x8],dl
1092d7: 8a 44 24 1e mov al,BYTE PTR [esp+0x1e]
1092db: 88 41 09 mov BYTE PTR [ecx+0x9],al
1092de: 8b 74 24 1c mov esi,DWORD PTR [esp+0x1c]
1092e2: 66 89 71 0a mov WORD PTR [ecx+0xa],si
1092e6: 89 c8 mov eax,ecx
1092e8: 83 c4 34 add esp,0x34
1092eb: 5b pop ebx
1092ec: 5e pop esi
1092ed: 5f pop edi
1092ee: 5d pop ebp
1092ef: c2 04 00 ret 0x4
001092f2 <TimeCalculateWeekday>:
1092f2: 57 push edi
1092f3: 56 push esi
1092f4: 53 push ebx
1092f5: 8b 74 24 10 mov esi,DWORD PTR [esp+0x10]
1092f9: 4e dec esi
1092fa: 31 d2 xor edx,edx
1092fc: 8a 54 24 16 mov dl,BYTE PTR [esp+0x16]
109300: 31 c0 xor eax,eax
109302: 8a 44 24 14 mov al,BYTE PTR [esp+0x14]
109306: 0f bf 84 00 2c b0 10 movsx eax,WORD PTR [eax+eax*1+0x10b02c]
10930d: 00
10930e: 8d 54 02 ff lea edx,[edx+eax*1-0x1]
109312: 89 f3 mov ebx,esi
109314: c1 fb 1f sar ebx,0x1f
109317: c1 eb 1e shr ebx,0x1e
10931a: 01 de add esi,ebx
10931c: 89 f1 mov ecx,esi
10931e: c1 f9 02 sar ecx,0x2
109321: 8d 04 c9 lea eax,[ecx+ecx*8]
109324: 8d 3c c1 lea edi,[ecx+eax*8]
109327: 8d 04 bf lea eax,[edi+edi*4]
10932a: 8d 04 81 lea eax,[ecx+eax*4]
10932d: 01 d0 add eax,edx
10932f: 89 f1 mov ecx,esi
109331: 83 e1 03 and ecx,0x3
109334: 29 d9 sub ecx,ebx
109336: 8d 14 c9 lea edx,[ecx+ecx*8]
109339: 8d 0c d1 lea ecx,[ecx+edx*8]
10933c: 8d 0c 89 lea ecx,[ecx+ecx*4]
10933f: 01 c8 add eax,ecx
109341: b9 07 00 00 00 mov ecx,0x7
109346: ba 00 00 00 00 mov edx,0x0
10934b: f7 f1 div ecx
10934d: 8d 42 01 lea eax,[edx+0x1]
109350: 5b pop ebx
109351: 5e pop esi
109352: 5f pop edi
109353: c3 ret
00109354 <TimeGetInternalTime>:
109354: 53 push ebx
109355: 8b 44 24 08 mov eax,DWORD PTR [esp+0x8]
109359: 8b 0d 00 d0 10 00 mov ecx,DWORD PTR ds:0x10d000
10935f: 8b 1d 04 d0 10 00 mov ebx,DWORD PTR ds:0x10d004
109365: 89 08 mov DWORD PTR [eax],ecx
109367: 89 58 04 mov DWORD PTR [eax+0x4],ebx
10936a: 5b pop ebx
10936b: c2 04 00 ret 0x4
0010936e <TimeSetInternalTime>:
10936e: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
109372: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
109376: a3 00 d0 10 00 mov ds:0x10d000,eax
10937b: 89 15 04 d0 10 00 mov DWORD PTR ds:0x10d004,edx
109381: c3 ret
00109382 <TimeGetInternalFrequency>:
109382: a1 08 d0 10 00 mov eax,ds:0x10d008
109387: c3 ret
00109388 <TimeSetInternalFrequency>:
109388: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
10938c: a3 08 d0 10 00 mov ds:0x10d008,eax
109391: c3 ret
00109392 <TimerStart>:
109392: 83 ec 10 sub esp,0x10
109395: 8d 44 24 04 lea eax,[esp+0x4]
109399: 89 04 24 mov DWORD PTR [esp],eax
10939c: e8 b3 ff ff ff call 109354 <TimeGetInternalTime>
1093a1: 83 ec 04 sub esp,0x4
1093a4: 8b 44 24 04 mov eax,DWORD PTR [esp+0x4]
1093a8: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
1093ac: a3 08 da 10 00 mov ds:0x10da08,eax
1093b1: 89 15 0c da 10 00 mov DWORD PTR ds:0x10da0c,edx
1093b7: 8b 44 24 14 mov eax,DWORD PTR [esp+0x14]
1093bb: 03 05 0c da 10 00 add eax,DWORD PTR ds:0x10da0c
1093c1: a3 0c da 10 00 mov ds:0x10da0c,eax
1093c6: 3d ff 5b 26 05 cmp eax,0x5265bff
1093cb: 76 10 jbe 1093dd <TimerStart+0x4b>
1093cd: ff 05 08 da 10 00 inc DWORD PTR ds:0x10da08
1093d3: 2d 00 5c 26 05 sub eax,0x5265c00
1093d8: a3 0c da 10 00 mov ds:0x10da0c,eax
1093dd: 83 c4 10 add esp,0x10
1093e0: c3 ret
001093e1 <TimerIsDone>:
1093e1: 83 ec 10 sub esp,0x10
1093e4: 8d 44 24 04 lea eax,[esp+0x4]
1093e8: 89 04 24 mov DWORD PTR [esp],eax
1093eb: e8 64 ff ff ff call 109354 <TimeGetInternalTime>
1093f0: 83 ec 04 sub esp,0x4
1093f3: 8b 54 24 08 mov edx,DWORD PTR [esp+0x8]
1093f7: b0 01 mov al,0x1
1093f9: 8b 4c 24 04 mov ecx,DWORD PTR [esp+0x4]
1093fd: 39 0d 08 da 10 00 cmp DWORD PTR ds:0x10da08,ecx
109403: 72 09 jb 10940e <TimerIsDone+0x2d>
109405: 39 15 0c da 10 00 cmp DWORD PTR ds:0x10da0c,edx
10940b: 0f 96 c0 setbe al
10940e: 83 c4 10 add esp,0x10
109411: c3 ret
...
00109414 <VfsInstall>:
109414: 83 ec 1c sub esp,0x1c
109417: c7 44 24 04 14 da 10 mov DWORD PTR [esp+0x4],0x10da14
10941e: 00
10941f: c7 04 24 38 00 00 00 mov DWORD PTR [esp],0x38
109426: e8 59 b8 ff ff call 104c84 <DynamicArrayCreate>
10942b: c7 44 24 04 28 da 10 mov DWORD PTR [esp+0x4],0x10da28
109432: 00
109433: c7 04 24 74 00 00 00 mov DWORD PTR [esp],0x74
10943a: e8 45 b8 ff ff call 104c84 <DynamicArrayCreate>
10943f: a1 14 da 10 00 mov eax,ds:0x10da14
109444: a3 24 da 10 00 mov ds:0x10da24,eax
109449: a1 28 da 10 00 mov eax,ds:0x10da28
10944e: a3 10 da 10 00 mov ds:0x10da10,eax
109453: c7 44 24 0c 0a 00 00 mov DWORD PTR [esp+0xc],0xa
10945a: 00
10945b: c7 44 24 08 48 b0 10 mov DWORD PTR [esp+0x8],0x10b048
109462: 00
109463: c7 44 24 04 60 b0 10 mov DWORD PTR [esp+0x4],0x10b060
10946a: 00
10946b: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
109472: e8 11 de ff ff call 107288 <LogWrite>
109477: 83 c4 1c add esp,0x1c
10947a: c3 ret
0010947b <VfsInstallFs>:
10947b: 53 push ebx
10947c: 83 ec 28 sub esp,0x28
10947f: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
109483: a1 1c da 10 00 mov eax,ds:0x10da1c
109488: 89 03 mov DWORD PTR [ebx],eax
10948a: c7 44 24 04 14 da 10 mov DWORD PTR [esp+0x4],0x10da14
109491: 00
109492: 89 1c 24 mov DWORD PTR [esp],ebx
109495: e8 19 b8 ff ff call 104cb3 <DynamicArrayPush>
10949a: 8b 03 mov eax,DWORD PTR [ebx]
10949c: 89 44 24 18 mov DWORD PTR [esp+0x18],eax
1094a0: c7 44 24 14 07 00 00 mov DWORD PTR [esp+0x14],0x7
1094a7: 00
1094a8: 83 c3 04 add ebx,0x4
1094ab: 89 5c 24 10 mov DWORD PTR [esp+0x10],ebx
1094af: c7 44 24 0c 0f 00 00 mov DWORD PTR [esp+0xc],0xf
1094b6: 00
1094b7: c7 44 24 08 64 b0 10 mov DWORD PTR [esp+0x8],0x10b064
1094be: 00
1094bf: c7 44 24 04 60 b0 10 mov DWORD PTR [esp+0x4],0x10b060
1094c6: 00
1094c7: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1094ce: e8 b5 dd ff ff call 107288 <LogWrite>
1094d3: 83 c4 28 add esp,0x28
1094d6: 5b pop ebx
1094d7: c3 ret
001094d8 <_VfsFindDevice>:
1094d8: 56 push esi
1094d9: 53 push ebx
1094da: 83 ec 14 sub esp,0x14
1094dd: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
1094e1: bb ff ff ff ff mov ebx,0xffffffff
1094e6: 83 3d 30 da 10 00 00 cmp DWORD PTR ds:0x10da30,0x0
1094ed: 74 47 je 109536 <_VfsFindDevice+0x5e>
1094ef: b8 00 00 00 00 mov eax,0x0
1094f4: bb 00 00 00 00 mov ebx,0x0
1094f9: 8d 14 c5 00 00 00 00 lea edx,[eax*8+0x0]
109500: 29 c2 sub edx,eax
109502: 8d 04 90 lea eax,[eax+edx*4]
109505: c1 e0 02 shl eax,0x2
109508: 03 05 10 da 10 00 add eax,DWORD PTR ds:0x10da10
10950e: 83 38 ff cmp DWORD PTR [eax],0xffffffff
109511: 74 13 je 109526 <_VfsFindDevice+0x4e>
109513: 83 c0 08 add eax,0x8
109516: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10951a: 89 34 24 mov DWORD PTR [esp],esi
10951d: e8 a2 f7 ff ff call 108cc4 <strcmp>
109522: 85 c0 test eax,eax
109524: 74 10 je 109536 <_VfsFindDevice+0x5e>
109526: 43 inc ebx
109527: 89 d8 mov eax,ebx
109529: 3b 1d 30 da 10 00 cmp ebx,DWORD PTR ds:0x10da30
10952f: 72 c8 jb 1094f9 <_VfsFindDevice+0x21>
109531: bb ff ff ff ff mov ebx,0xffffffff
109536: 89 d8 mov eax,ebx
109538: 83 c4 14 add esp,0x14
10953b: 5b pop ebx
10953c: 5e pop esi
10953d: c3 ret
0010953e <_VfsGetDevice>:
10953e: 55 push ebp
10953f: 57 push edi
109540: 56 push esi
109541: 53 push ebx
109542: 83 ec 1c sub esp,0x1c
109545: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
109549: 8b 7c 24 34 mov edi,DWORD PTR [esp+0x34]
10954d: 85 db test ebx,ebx
10954f: 74 05 je 109556 <_VfsGetDevice+0x18>
109551: 80 3b 2f cmp BYTE PTR [ebx],0x2f
109554: 74 10 je 109566 <_VfsGetDevice+0x28>
109556: c7 07 ff ff ff ff mov DWORD PTR [edi],0xffffffff
10955c: b8 00 00 00 00 mov eax,0x0
109561: e9 a4 00 00 00 jmp 10960a <_VfsGetDevice+0xcc>
109566: b8 00 00 00 00 mov eax,0x0
10956b: 80 7b 01 00 cmp BYTE PTR [ebx+0x1],0x0
10956f: 0f 84 95 00 00 00 je 10960a <_VfsGetDevice+0xcc>
109575: 8d 6b 01 lea ebp,[ebx+0x1]
109578: 89 2c 24 mov DWORD PTR [esp],ebp
10957b: e8 30 f7 ff ff call 108cb0 <strlen>
109580: 89 c6 mov esi,eax
109582: 85 c0 test eax,eax
109584: 7e 24 jle 1095aa <_VfsGetDevice+0x6c>
109586: be ff ff ff ff mov esi,0xffffffff
10958b: ba 00 00 00 00 mov edx,0x0
109590: 80 7c 13 01 2f cmp BYTE PTR [ebx+edx*1+0x1],0x2f
109595: 75 02 jne 109599 <_VfsGetDevice+0x5b>
109597: 89 d6 mov esi,edx
109599: 42 inc edx
10959a: 39 d0 cmp eax,edx
10959c: 7e 05 jle 1095a3 <_VfsGetDevice+0x65>
10959e: 83 fe ff cmp esi,0xffffffff
1095a1: 74 ed je 109590 <_VfsGetDevice+0x52>
1095a3: 83 fe ff cmp esi,0xffffffff
1095a6: 75 02 jne 1095aa <_VfsGetDevice+0x6c>
1095a8: 89 c6 mov esi,eax
1095aa: c7 07 ff ff ff ff mov DWORD PTR [edi],0xffffffff
1095b0: 83 3d 30 da 10 00 00 cmp DWORD PTR ds:0x10da30,0x0
1095b7: 74 4d je 109606 <_VfsGetDevice+0xc8>
1095b9: b8 00 00 00 00 mov eax,0x0
1095be: bb 00 00 00 00 mov ebx,0x0
1095c3: 8d 14 c5 00 00 00 00 lea edx,[eax*8+0x0]
1095ca: 29 c2 sub edx,eax
1095cc: 8d 04 90 lea eax,[eax+edx*4]
1095cf: c1 e0 02 shl eax,0x2
1095d2: 03 05 10 da 10 00 add eax,DWORD PTR ds:0x10da10
1095d8: 83 38 ff cmp DWORD PTR [eax],0xffffffff
1095db: 74 19 je 1095f6 <_VfsGetDevice+0xb8>
1095dd: 89 74 24 08 mov DWORD PTR [esp+0x8],esi
1095e1: 83 c0 08 add eax,0x8
1095e4: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1095e8: 89 2c 24 mov DWORD PTR [esp],ebp
1095eb: e8 16 f7 ff ff call 108d06 <strncmp>
1095f0: 85 c0 test eax,eax
1095f2: 75 02 jne 1095f6 <_VfsGetDevice+0xb8>
1095f4: 89 1f mov DWORD PTR [edi],ebx
1095f6: 43 inc ebx
1095f7: 89 d8 mov eax,ebx
1095f9: 3b 1d 30 da 10 00 cmp ebx,DWORD PTR ds:0x10da30
1095ff: 73 05 jae 109606 <_VfsGetDevice+0xc8>
109601: 83 3f ff cmp DWORD PTR [edi],0xffffffff
109604: 74 bd je 1095c3 <_VfsGetDevice+0x85>
109606: 8d 44 35 00 lea eax,[ebp+esi*1+0x0]
10960a: 83 c4 1c add esp,0x1c
10960d: 5b pop ebx
10960e: 5e pop esi
10960f: 5f pop edi
109610: 5d pop ebp
109611: c3 ret
00109612 <_VfsDetectFs>:
109612: 56 push esi
109613: 53 push ebx
109614: 83 ec 14 sub esp,0x14
109617: 8b 74 24 20 mov esi,DWORD PTR [esp+0x20]
10961b: bb ff ff ff ff mov ebx,0xffffffff
109620: 83 3d 1c da 10 00 00 cmp DWORD PTR ds:0x10da1c,0x0
109627: 74 3c je 109665 <_VfsDetectFs+0x53>
109629: b8 00 00 00 00 mov eax,0x0
10962e: bb 00 00 00 00 mov ebx,0x0
109633: 8d 14 c5 00 00 00 00 lea edx,[eax*8+0x0]
10963a: c1 e0 06 shl eax,0x6
10963d: 29 d0 sub eax,edx
10963f: 03 05 24 da 10 00 add eax,DWORD PTR ds:0x10da24
109645: 8b 40 14 mov eax,DWORD PTR [eax+0x14]
109648: 85 c0 test eax,eax
10964a: 74 09 je 109655 <_VfsDetectFs+0x43>
10964c: 89 34 24 mov DWORD PTR [esp],esi
10964f: ff d0 call eax
109651: 85 c0 test eax,eax
109653: 75 10 jne 109665 <_VfsDetectFs+0x53>
109655: 43 inc ebx
109656: 89 d8 mov eax,ebx
109658: 3b 1d 1c da 10 00 cmp ebx,DWORD PTR ds:0x10da1c
10965e: 72 d3 jb 109633 <_VfsDetectFs+0x21>
109660: bb ff ff ff ff mov ebx,0xffffffff
109665: 89 d8 mov eax,ebx
109667: 83 c4 14 add esp,0x14
10966a: 5b pop ebx
10966b: 5e pop esi
10966c: c3 ret
0010966d <VfsTestDevname>:
10966d: 55 push ebp
10966e: 57 push edi
10966f: 56 push esi
109670: 53 push ebx
109671: 83 ec 2c sub esp,0x2c
109674: 8b 7c 24 40 mov edi,DWORD PTR [esp+0x40]
109678: 89 3c 24 mov DWORD PTR [esp],edi
10967b: e8 58 fe ff ff call 1094d8 <_VfsFindDevice>
109680: 83 f8 ff cmp eax,0xffffffff
109683: 0f 94 c3 sete bl
109686: 89 3c 24 mov DWORD PTR [esp],edi
109689: e8 22 f6 ff ff call 108cb0 <strlen>
10968e: c6 44 07 01 00 mov BYTE PTR [edi+eax*1+0x1],0x0
109693: 84 db test bl,bl
109695: 75 56 jne 1096ed <VfsTestDevname+0x80>
109697: be 30 00 00 00 mov esi,0x30
10969c: 01 f8 add eax,edi
10969e: 89 44 24 1c mov DWORD PTR [esp+0x1c],eax
1096a2: 8b 6c 24 1c mov ebp,DWORD PTR [esp+0x1c]
1096a6: 89 f0 mov eax,esi
1096a8: 88 45 00 mov BYTE PTR [ebp+0x0],al
1096ab: 89 3c 24 mov DWORD PTR [esp],edi
1096ae: e8 25 fe ff ff call 1094d8 <_VfsFindDevice>
1096b3: 83 f8 ff cmp eax,0xffffffff
1096b6: 0f 94 c3 sete bl
1096b9: 46 inc esi
1096ba: 89 f2 mov edx,esi
1096bc: 80 fa 39 cmp dl,0x39
1096bf: 7f 04 jg 1096c5 <VfsTestDevname+0x58>
1096c1: 84 db test bl,bl
1096c3: 74 dd je 1096a2 <VfsTestDevname+0x35>
1096c5: 84 db test bl,bl
1096c7: 75 24 jne 1096ed <VfsTestDevname+0x80>
1096c9: be 61 00 00 00 mov esi,0x61
1096ce: 89 f0 mov eax,esi
1096d0: 88 45 00 mov BYTE PTR [ebp+0x0],al
1096d3: 89 3c 24 mov DWORD PTR [esp],edi
1096d6: e8 fd fd ff ff call 1094d8 <_VfsFindDevice>
1096db: 83 f8 ff cmp eax,0xffffffff
1096de: 0f 94 c3 sete bl
1096e1: 46 inc esi
1096e2: 89 f2 mov edx,esi
1096e4: 80 fa 7a cmp dl,0x7a
1096e7: 7f 04 jg 1096ed <VfsTestDevname+0x80>
1096e9: 84 db test bl,bl
1096eb: 74 e1 je 1096ce <VfsTestDevname+0x61>
1096ed: 31 c0 xor eax,eax
1096ef: 88 d8 mov al,bl
1096f1: 83 c4 2c add esp,0x2c
1096f4: 5b pop ebx
1096f5: 5e pop esi
1096f6: 5f pop edi
1096f7: 5d pop ebp
1096f8: c3 ret
001096f9 <VfsMount>:
1096f9: 56 push esi
1096fa: 53 push ebx
1096fb: 81 ec b4 00 00 00 sub esp,0xb4
109701: 8b b4 24 c0 00 00 00 mov esi,DWORD PTR [esp+0xc0]
109708: 89 74 24 04 mov DWORD PTR [esp+0x4],esi
10970c: 8d 5c 24 3c lea ebx,[esp+0x3c]
109710: 8d 44 24 44 lea eax,[esp+0x44]
109714: 89 04 24 mov DWORD PTR [esp],eax
109717: e8 d5 f6 ff ff call 108df1 <strcpy>
10971c: 8b 84 24 cc 00 00 00 mov eax,DWORD PTR [esp+0xcc]
109723: 89 84 24 84 00 00 00 mov DWORD PTR [esp+0x84],eax
10972a: 8b 84 24 c4 00 00 00 mov eax,DWORD PTR [esp+0xc4]
109731: 89 84 24 88 00 00 00 mov DWORD PTR [esp+0x88],eax
109738: 8b 84 24 c8 00 00 00 mov eax,DWORD PTR [esp+0xc8]
10973f: 89 84 24 8c 00 00 00 mov DWORD PTR [esp+0x8c],eax
109746: 89 1c 24 mov DWORD PTR [esp],ebx
109749: e8 c4 fe ff ff call 109612 <_VfsDetectFs>
10974e: 89 c3 mov ebx,eax
109750: 83 f8 ff cmp eax,0xffffffff
109753: 75 32 jne 109787 <VfsMount+0x8e>
109755: 89 74 24 10 mov DWORD PTR [esp+0x10],esi
109759: c7 44 24 0c 0c 00 00 mov DWORD PTR [esp+0xc],0xc
109760: 00
109761: c7 44 24 08 8c b0 10 mov DWORD PTR [esp+0x8],0x10b08c
109768: 00
109769: c7 44 24 04 60 b0 10 mov DWORD PTR [esp+0x4],0x10b060
109770: 00
109771: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
109778: e8 0b db ff ff call 107288 <LogWrite>
10977d: b8 00 00 00 00 mov eax,0x0
109782: e9 67 01 00 00 jmp 1098ee <VfsMount+0x1f5>
109787: 89 44 24 40 mov DWORD PTR [esp+0x40],eax
10978b: 8d 44 24 44 lea eax,[esp+0x44]
10978f: 89 04 24 mov DWORD PTR [esp],eax
109792: e8 d6 fe ff ff call 10966d <VfsTestDevname>
109797: 85 c0 test eax,eax
109799: 74 0c je 1097a7 <VfsMount+0xae>
10979b: 8b 35 30 da 10 00 mov esi,DWORD PTR ds:0x10da30
1097a1: 85 f6 test esi,esi
1097a3: 75 34 jne 1097d9 <VfsMount+0xe0>
1097a5: eb 5b jmp 109802 <VfsMount+0x109>
1097a7: 89 74 24 10 mov DWORD PTR [esp+0x10],esi
1097ab: c7 44 24 0c 0c 00 00 mov DWORD PTR [esp+0xc],0xc
1097b2: 00
1097b3: c7 44 24 08 c8 b0 10 mov DWORD PTR [esp+0x8],0x10b0c8
1097ba: 00
1097bb: c7 44 24 04 60 b0 10 mov DWORD PTR [esp+0x4],0x10b060
1097c2: 00
1097c3: c7 04 24 01 00 00 00 mov DWORD PTR [esp],0x1
1097ca: e8 b9 da ff ff call 107288 <LogWrite>
1097cf: b8 00 00 00 00 mov eax,0x0
1097d4: e9 15 01 00 00 jmp 1098ee <VfsMount+0x1f5>
1097d9: 8b 15 10 da 10 00 mov edx,DWORD PTR ds:0x10da10
1097df: b8 00 00 00 00 mov eax,0x0
1097e4: b9 ff ff ff ff mov ecx,0xffffffff
1097e9: 83 3a ff cmp DWORD PTR [edx],0xffffffff
1097ec: 75 02 jne 1097f0 <VfsMount+0xf7>
1097ee: 89 c1 mov ecx,eax
1097f0: 40 inc eax
1097f1: 83 c2 74 add edx,0x74
1097f4: 39 f0 cmp eax,esi
1097f6: 73 05 jae 1097fd <VfsMount+0x104>
1097f8: 83 f9 ff cmp ecx,0xffffffff
1097fb: 74 ec je 1097e9 <VfsMount+0xf0>
1097fd: 83 f9 ff cmp ecx,0xffffffff
109800: 75 1a jne 10981c <VfsMount+0x123>
109802: 89 74 24 3c mov DWORD PTR [esp+0x3c],esi
109806: c7 44 24 04 28 da 10 mov DWORD PTR [esp+0x4],0x10da28
10980d: 00
10980e: 8d 44 24 3c lea eax,[esp+0x3c]
109812: 89 04 24 mov DWORD PTR [esp],eax
109815: e8 99 b4 ff ff call 104cb3 <DynamicArrayPush>
10981a: eb 31 jmp 10984d <VfsMount+0x154>
10981c: 89 4c 24 3c mov DWORD PTR [esp+0x3c],ecx
109820: c7 44 24 08 74 00 00 mov DWORD PTR [esp+0x8],0x74
109827: 00
109828: 8d 44 24 3c lea eax,[esp+0x3c]
10982c: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
109830: 8d 04 cd 00 00 00 00 lea eax,[ecx*8+0x0]
109837: 29 c8 sub eax,ecx
109839: 8d 04 81 lea eax,[ecx+eax*4]
10983c: c1 e0 02 shl eax,0x2
10983f: 03 05 10 da 10 00 add eax,DWORD PTR ds:0x10da10
109845: 89 04 24 mov DWORD PTR [esp],eax
109848: e8 5b e7 ff ff call 107fa8 <memcpy>
10984d: 8d 04 dd 00 00 00 00 lea eax,[ebx*8+0x0]
109854: c1 e3 06 shl ebx,0x6
109857: 29 c3 sub ebx,eax
109859: a1 24 da 10 00 mov eax,ds:0x10da24
10985e: 8b 54 18 18 mov edx,DWORD PTR [eax+ebx*1+0x18]
109862: 85 d2 test edx,edx
109864: 74 1e je 109884 <VfsMount+0x18b>
109866: 8b 44 24 3c mov eax,DWORD PTR [esp+0x3c]
10986a: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109871: 29 c1 sub ecx,eax
109873: 8d 04 88 lea eax,[eax+ecx*4]
109876: c1 e0 02 shl eax,0x2
109879: 03 05 10 da 10 00 add eax,DWORD PTR ds:0x10da10
10987f: 89 04 24 mov DWORD PTR [esp],eax
109882: ff d2 call edx
109884: c7 44 24 20 07 00 00 mov DWORD PTR [esp+0x20],0x7
10988b: 00
10988c: 03 1d 24 da 10 00 add ebx,DWORD PTR ds:0x10da24
109892: 83 c3 04 add ebx,0x4
109895: 89 5c 24 1c mov DWORD PTR [esp+0x1c],ebx
109899: c7 44 24 18 0f 00 00 mov DWORD PTR [esp+0x18],0xf
1098a0: 00
1098a1: c7 44 24 14 07 00 00 mov DWORD PTR [esp+0x14],0x7
1098a8: 00
1098a9: 8d 44 24 44 lea eax,[esp+0x44]
1098ad: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
1098b1: c7 44 24 0c 0f 00 00 mov DWORD PTR [esp+0xc],0xf
1098b8: 00
1098b9: c7 44 24 08 f0 b0 10 mov DWORD PTR [esp+0x8],0x10b0f0
1098c0: 00
1098c1: c7 44 24 04 60 b0 10 mov DWORD PTR [esp+0x4],0x10b060
1098c8: 00
1098c9: c7 04 24 00 00 00 00 mov DWORD PTR [esp],0x0
1098d0: e8 b3 d9 ff ff call 107288 <LogWrite>
1098d5: 8b 44 24 3c mov eax,DWORD PTR [esp+0x3c]
1098d9: 8d 14 c5 00 00 00 00 lea edx,[eax*8+0x0]
1098e0: 29 c2 sub edx,eax
1098e2: 8d 04 90 lea eax,[eax+edx*4]
1098e5: c1 e0 02 shl eax,0x2
1098e8: 03 05 10 da 10 00 add eax,DWORD PTR ds:0x10da10
1098ee: 81 c4 b4 00 00 00 add esp,0xb4
1098f4: 5b pop ebx
1098f5: 5e pop esi
1098f6: c3 ret
001098f7 <VfsUnmount>:
1098f7: 53 push ebx
1098f8: 83 ec 18 sub esp,0x18
1098fb: 8b 44 24 20 mov eax,DWORD PTR [esp+0x20]
1098ff: 8d 14 c5 00 00 00 00 lea edx,[eax*8+0x0]
109906: 29 c2 sub edx,eax
109908: 8d 1c 90 lea ebx,[eax+edx*4]
10990b: c1 e3 02 shl ebx,0x2
10990e: 8b 15 10 da 10 00 mov edx,DWORD PTR ds:0x10da10
109914: 01 da add edx,ebx
109916: 8b 42 04 mov eax,DWORD PTR [edx+0x4]
109919: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109920: c1 e0 06 shl eax,0x6
109923: 29 c8 sub eax,ecx
109925: 03 05 24 da 10 00 add eax,DWORD PTR ds:0x10da24
10992b: 8b 40 1c mov eax,DWORD PTR [eax+0x1c]
10992e: 85 c0 test eax,eax
109930: 74 0d je 10993f <VfsUnmount+0x48>
109932: c7 44 24 04 00 00 00 mov DWORD PTR [esp+0x4],0x0
109939: 00
10993a: 89 14 24 mov DWORD PTR [esp],edx
10993d: ff d0 call eax
10993f: a1 10 da 10 00 mov eax,ds:0x10da10
109944: c7 04 18 ff ff ff ff mov DWORD PTR [eax+ebx*1],0xffffffff
10994b: 83 c4 18 add esp,0x18
10994e: 5b pop ebx
10994f: c3 ret
00109950 <VfsOpen>:
109950: 56 push esi
109951: 53 push ebx
109952: 83 ec 24 sub esp,0x24
109955: 8b 5c 24 30 mov ebx,DWORD PTR [esp+0x30]
109959: b8 00 00 00 00 mov eax,0x0
10995e: 85 db test ebx,ebx
109960: 74 69 je 1099cb <VfsOpen+0x7b>
109962: 8d 44 24 1c lea eax,[esp+0x1c]
109966: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
10996a: 8b 44 24 34 mov eax,DWORD PTR [esp+0x34]
10996e: 89 04 24 mov DWORD PTR [esp],eax
109971: e8 c8 fb ff ff call 10953e <_VfsGetDevice>
109976: 89 c6 mov esi,eax
109978: 8b 54 24 1c mov edx,DWORD PTR [esp+0x1c]
10997c: 89 13 mov DWORD PTR [ebx],edx
10997e: b8 00 00 00 00 mov eax,0x0
109983: 83 fa ff cmp edx,0xffffffff
109986: 74 43 je 1099cb <VfsOpen+0x7b>
109988: 8d 04 d5 00 00 00 00 lea eax,[edx*8+0x0]
10998f: 29 d0 sub eax,edx
109991: 8d 0c 82 lea ecx,[edx+eax*4]
109994: c1 e1 02 shl ecx,0x2
109997: 03 0d 10 da 10 00 add ecx,DWORD PTR ds:0x10da10
10999d: 8b 51 04 mov edx,DWORD PTR [ecx+0x4]
1099a0: 8d 04 d5 00 00 00 00 lea eax,[edx*8+0x0]
1099a7: c1 e2 06 shl edx,0x6
1099aa: 29 c2 sub edx,eax
1099ac: 03 15 24 da 10 00 add edx,DWORD PTR ds:0x10da24
1099b2: 8b 52 20 mov edx,DWORD PTR [edx+0x20]
1099b5: b8 00 00 00 00 mov eax,0x0
1099ba: 85 d2 test edx,edx
1099bc: 74 0d je 1099cb <VfsOpen+0x7b>
1099be: 89 74 24 08 mov DWORD PTR [esp+0x8],esi
1099c2: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
1099c6: 89 0c 24 mov DWORD PTR [esp],ecx
1099c9: ff d2 call edx
1099cb: 83 c4 24 add esp,0x24
1099ce: 5b pop ebx
1099cf: 5e pop esi
1099d0: c3 ret
001099d1 <VfsTest>:
1099d1: 53 push ebx
1099d2: 83 ec 28 sub esp,0x28
1099d5: 8d 44 24 1c lea eax,[esp+0x1c]
1099d9: 89 44 24 04 mov DWORD PTR [esp+0x4],eax
1099dd: 8b 44 24 30 mov eax,DWORD PTR [esp+0x30]
1099e1: 89 04 24 mov DWORD PTR [esp],eax
1099e4: e8 55 fb ff ff call 10953e <_VfsGetDevice>
1099e9: 89 c3 mov ebx,eax
1099eb: 8b 54 24 1c mov edx,DWORD PTR [esp+0x1c]
1099ef: b8 00 00 00 00 mov eax,0x0
1099f4: 83 fa ff cmp edx,0xffffffff
1099f7: 74 3f je 109a38 <VfsTest+0x67>
1099f9: 8d 04 d5 00 00 00 00 lea eax,[edx*8+0x0]
109a00: 29 d0 sub eax,edx
109a02: 8d 0c 82 lea ecx,[edx+eax*4]
109a05: c1 e1 02 shl ecx,0x2
109a08: 03 0d 10 da 10 00 add ecx,DWORD PTR ds:0x10da10
109a0e: 8b 51 04 mov edx,DWORD PTR [ecx+0x4]
109a11: 8d 04 d5 00 00 00 00 lea eax,[edx*8+0x0]
109a18: c1 e2 06 shl edx,0x6
109a1b: 29 c2 sub edx,eax
109a1d: 03 15 24 da 10 00 add edx,DWORD PTR ds:0x10da24
109a23: 8b 52 30 mov edx,DWORD PTR [edx+0x30]
109a26: b8 00 00 00 00 mov eax,0x0
109a2b: 85 d2 test edx,edx
109a2d: 74 09 je 109a38 <VfsTest+0x67>
109a2f: 89 5c 24 04 mov DWORD PTR [esp+0x4],ebx
109a33: 89 0c 24 mov DWORD PTR [esp],ecx
109a36: ff d2 call edx
109a38: 83 c4 28 add esp,0x28
109a3b: 5b pop ebx
109a3c: c3 ret
00109a3d <VfsClose>:
109a3d: 53 push ebx
109a3e: 83 ec 18 sub esp,0x18
109a41: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
109a45: 85 d2 test edx,edx
109a47: 74 43 je 109a8c <VfsClose+0x4f>
109a49: 8b 02 mov eax,DWORD PTR [edx]
109a4b: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109a52: 29 c1 sub ecx,eax
109a54: 8d 1c 88 lea ebx,[eax+ecx*4]
109a57: c1 e3 02 shl ebx,0x2
109a5a: 03 1d 10 da 10 00 add ebx,DWORD PTR ds:0x10da10
109a60: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
109a63: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109a6a: c1 e0 06 shl eax,0x6
109a6d: 29 c8 sub eax,ecx
109a6f: 03 05 24 da 10 00 add eax,DWORD PTR ds:0x10da24
109a75: 8b 48 24 mov ecx,DWORD PTR [eax+0x24]
109a78: b8 00 00 00 00 mov eax,0x0
109a7d: 85 c9 test ecx,ecx
109a7f: 74 10 je 109a91 <VfsClose+0x54>
109a81: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
109a85: 89 1c 24 mov DWORD PTR [esp],ebx
109a88: ff d1 call ecx
109a8a: eb 05 jmp 109a91 <VfsClose+0x54>
109a8c: b8 00 00 00 00 mov eax,0x0
109a91: 83 c4 18 add esp,0x18
109a94: 5b pop ebx
109a95: c3 ret
00109a96 <VfsRead>:
109a96: 53 push ebx
109a97: 83 ec 28 sub esp,0x28
109a9a: 8b 54 24 30 mov edx,DWORD PTR [esp+0x30]
109a9e: b8 00 00 00 00 mov eax,0x0
109aa3: 85 d2 test edx,edx
109aa5: 74 59 je 109b00 <VfsRead+0x6a>
109aa7: 8b 02 mov eax,DWORD PTR [edx]
109aa9: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109ab0: 29 c1 sub ecx,eax
109ab2: 8d 1c 88 lea ebx,[eax+ecx*4]
109ab5: c1 e3 02 shl ebx,0x2
109ab8: 03 1d 10 da 10 00 add ebx,DWORD PTR ds:0x10da10
109abe: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
109ac1: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109ac8: c1 e0 06 shl eax,0x6
109acb: 29 c8 sub eax,ecx
109acd: 03 05 24 da 10 00 add eax,DWORD PTR ds:0x10da24
109ad3: 8b 48 28 mov ecx,DWORD PTR [eax+0x28]
109ad6: b8 00 00 00 00 mov eax,0x0
109adb: 85 c9 test ecx,ecx
109add: 74 21 je 109b00 <VfsRead+0x6a>
109adf: 8b 44 24 3c mov eax,DWORD PTR [esp+0x3c]
109ae3: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
109ae7: 8b 44 24 38 mov eax,DWORD PTR [esp+0x38]
109aeb: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
109aef: 8b 44 24 34 mov eax,DWORD PTR [esp+0x34]
109af3: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
109af7: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
109afb: 89 1c 24 mov DWORD PTR [esp],ebx
109afe: ff d1 call ecx
109b00: 83 c4 28 add esp,0x28
109b03: 5b pop ebx
109b04: c3 ret
00109b05 <VfsWrite>:
109b05: 53 push ebx
109b06: 83 ec 28 sub esp,0x28
109b09: 8b 54 24 30 mov edx,DWORD PTR [esp+0x30]
109b0d: b8 00 00 00 00 mov eax,0x0
109b12: 85 d2 test edx,edx
109b14: 74 59 je 109b6f <VfsWrite+0x6a>
109b16: 8b 02 mov eax,DWORD PTR [edx]
109b18: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109b1f: 29 c1 sub ecx,eax
109b21: 8d 1c 88 lea ebx,[eax+ecx*4]
109b24: c1 e3 02 shl ebx,0x2
109b27: 03 1d 10 da 10 00 add ebx,DWORD PTR ds:0x10da10
109b2d: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
109b30: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109b37: c1 e0 06 shl eax,0x6
109b3a: 29 c8 sub eax,ecx
109b3c: 03 05 24 da 10 00 add eax,DWORD PTR ds:0x10da24
109b42: 8b 48 2c mov ecx,DWORD PTR [eax+0x2c]
109b45: b8 00 00 00 00 mov eax,0x0
109b4a: 85 c9 test ecx,ecx
109b4c: 74 21 je 109b6f <VfsWrite+0x6a>
109b4e: 8b 44 24 3c mov eax,DWORD PTR [esp+0x3c]
109b52: 89 44 24 10 mov DWORD PTR [esp+0x10],eax
109b56: 8b 44 24 38 mov eax,DWORD PTR [esp+0x38]
109b5a: 89 44 24 0c mov DWORD PTR [esp+0xc],eax
109b5e: 8b 44 24 34 mov eax,DWORD PTR [esp+0x34]
109b62: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
109b66: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
109b6a: 89 1c 24 mov DWORD PTR [esp],ebx
109b6d: ff d1 call ecx
109b6f: 83 c4 28 add esp,0x28
109b72: 5b pop ebx
109b73: c3 ret
00109b74 <VfsReadDirectory>:
109b74: 56 push esi
109b75: 53 push ebx
109b76: 83 ec 14 sub esp,0x14
109b79: 8b 54 24 20 mov edx,DWORD PTR [esp+0x20]
109b7d: 85 d2 test edx,edx
109b7f: 74 5b je 109bdc <VfsReadDirectory+0x68>
109b81: 8b 35 10 da 10 00 mov esi,DWORD PTR ds:0x10da10
109b87: 8b 0a mov ecx,DWORD PTR [edx]
109b89: 8b 5a 0c mov ebx,DWORD PTR [edx+0xc]
109b8c: 83 e3 07 and ebx,0x7
109b8f: b8 00 00 00 00 mov eax,0x0
109b94: 83 fb 01 cmp ebx,0x1
109b97: 74 48 je 109be1 <VfsReadDirectory+0x6d>
109b99: 8d 04 cd 00 00 00 00 lea eax,[ecx*8+0x0]
109ba0: 29 c8 sub eax,ecx
109ba2: 8d 04 81 lea eax,[ecx+eax*4]
109ba5: 8d 1c 86 lea ebx,[esi+eax*4]
109ba8: 8b 43 04 mov eax,DWORD PTR [ebx+0x4]
109bab: 8d 0c c5 00 00 00 00 lea ecx,[eax*8+0x0]
109bb2: c1 e0 06 shl eax,0x6
109bb5: 29 c8 sub eax,ecx
109bb7: 03 05 24 da 10 00 add eax,DWORD PTR ds:0x10da24
109bbd: 8b 48 34 mov ecx,DWORD PTR [eax+0x34]
109bc0: b8 00 00 00 00 mov eax,0x0
109bc5: 85 c9 test ecx,ecx
109bc7: 74 18 je 109be1 <VfsReadDirectory+0x6d>
109bc9: 8b 44 24 24 mov eax,DWORD PTR [esp+0x24]
109bcd: 89 44 24 08 mov DWORD PTR [esp+0x8],eax
109bd1: 89 54 24 04 mov DWORD PTR [esp+0x4],edx
109bd5: 89 1c 24 mov DWORD PTR [esp],ebx
109bd8: ff d1 call ecx
109bda: eb 05 jmp 109be1 <VfsReadDirectory+0x6d>
109bdc: b8 00 00 00 00 mov eax,0x0
109be1: 83 c4 14 add esp,0x14
109be4: 5b pop ebx
109be5: 5e pop esi
109be6: c3 ret
00109be7 <VfsGetMountPoint>:
109be7: 8b 54 24 04 mov edx,DWORD PTR [esp+0x4]
109beb: b8 00 00 00 00 mov eax,0x0
109bf0: 39 15 30 da 10 00 cmp DWORD PTR ds:0x10da30,edx
109bf6: 76 15 jbe 109c0d <VfsGetMountPoint+0x26>
109bf8: 8d 04 d5 00 00 00 00 lea eax,[edx*8+0x0]
109bff: 29 d0 sub eax,edx
109c01: 8d 04 82 lea eax,[edx+eax*4]
109c04: c1 e0 02 shl eax,0x2
109c07: 03 05 10 da 10 00 add eax,DWORD PTR ds:0x10da10
109c0d: c3 ret
109c0e: 00 00 add BYTE PTR [eax],al
109c10: 39 2c 10 cmp DWORD PTR [eax+edx*1],ebp
109c13: 00 78 2d add BYTE PTR [eax+0x2d],bh
109c16: 10 00 adc BYTE PTR [eax],al
109c18: 33 2d 10 00 3d 2d xor ebp,DWORD PTR ds:0x2d3d0010
109c1e: 10 00 adc BYTE PTR [eax],al
109c20: 3d 2d 10 00 74 cmp eax,0x7400102d
109c25: 2b 10 sub edx,DWORD PTR [eax]
109c27: 00 3d 2d 10 00 b7 add BYTE PTR ds:0xb700102d,bh
109c2d: 2c 10 sub al,0x10
109c2f: 00 d5 add ch,dl
109c31: 2b 10 sub edx,DWORD PTR [eax]
109c33: 00 6c 75 78 add BYTE PTR [ebp+esi*2+0x78],ch
109c37: 00 25 23 25 63 00 add BYTE PTR ds:0x632523,ah
109c3d: 30 2e xor BYTE PTR [esi],ch
109c3f: 31 20 xor DWORD PTR [eax],esp
109c41: 5b pop ebx
109c42: 70 72 jo 109cb6 <VfsGetMountPoint+0xcf>
109c44: 65 gs
109c45: 2d 41 6c 70 68 sub eax,0x68706c41
109c4a: 61 popa
109c4b: 5d pop ebp
109c4c: 00 0a add BYTE PTR [edx],cl
109c4e: 25 23 4f 53 20 and eax,0x20534f23
109c53: 76 65 jbe 109cba <VfsGetMountPoint+0xd3>
109c55: 72 73 jb 109cca <VfsGetMountPoint+0xe3>
109c57: 69 6f 6e 3a 20 25 23 imul ebp,DWORD PTR [edi+0x6e],0x2325203a
109c5e: 25 73 0a 00 30 and eax,0x30000a73
109c63: 2e 31 2e xor DWORD PTR cs:[esi],ebp
109c66: 31 2e xor DWORD PTR [esi],ebp
109c68: 31 39 xor DWORD PTR [ecx],edi
109c6a: 00 25 23 42 75 69 add BYTE PTR ds:0x69754223,ah
109c70: 6c ins BYTE PTR es:[edi],dx
109c71: 64 3a 20 cmp ah,BYTE PTR fs:[eax]
109c74: 25 23 25 73 20 and eax,0x20732523
109c79: 00 32 add BYTE PTR [edx],dh
109c7b: 30 3a xor BYTE PTR [edx],bh
109c7d: 30 30 xor BYTE PTR [eax],dh
109c7f: 3a 31 cmp dh,BYTE PTR [ecx]
109c81: 38 00 cmp BYTE PTR [eax],al
109c83: 53 push ebx
109c84: 65 gs
109c85: 70 20 jo 109ca7 <VfsGetMountPoint+0xc0>
109c87: 20 39 and BYTE PTR [ecx],bh
109c89: 20 32 and BYTE PTR [edx],dh
109c8b: 30 31 xor BYTE PTR [ecx],dh
109c8d: 31 00 xor DWORD PTR [eax],eax
109c8f: 25 23 62 75 69 and eax,0x69756223
109c94: 6c ins BYTE PTR es:[edi],dx
109c95: 74 20 je 109cb7 <VfsGetMountPoint+0xd0>
109c97: 6f outs dx,DWORD PTR ds:[esi]
109c98: 6e outs dx,BYTE PTR ds:[esi]
109c99: 20 25 23 25 73 20 and BYTE PTR ds:0x20732523,ah
109c9f: 25 23 61 74 20 and eax,0x20746123
109ca4: 25 23 25 73 0a and eax,0xa732523
109ca9: 00 43 75 add BYTE PTR [ebx+0x75],al
109cac: 72 72 jb 109d20 <VfsGetMountPoint+0x139>
109cae: 65 6e outs dx,BYTE PTR gs:[esi]
109cb0: 74 20 je 109cd2 <VfsGetMountPoint+0xeb>
109cb2: 74 69 je 109d1d <VfsGetMountPoint+0x136>
109cb4: 6d ins DWORD PTR es:[edi],dx
109cb5: 65 3a 20 cmp ah,BYTE PTR gs:[eax]
109cb8: 00 25 23 25 64 3a add BYTE PTR ds:0x3a642523,ah
109cbe: 25 64 25 64 3a and eax,0x3a642564
109cc3: 25 64 25 64 2e and eax,0x2e642564
109cc8: 25 64 25 64 25 and eax,0x25642564
109ccd: 64 0a 00 or al,BYTE PTR fs:[eax]
109cd0: 44 inc esp
109cd1: 61 popa
109cd2: 74 65 je 109d39 <VfsGetMountPoint+0x152>
109cd4: 3a 20 cmp ah,BYTE PTR [eax]
109cd6: 25 23 25 73 2c and eax,0x2c732523
109cdb: 20 25 73 20 25 64 and BYTE PTR ds:0x64252073,ah
109ce1: 2c 20 sub al,0x20
109ce3: 25 64 0a 00 4a and eax,0x4a000a64
109ce8: 61 popa
109ce9: 6e outs dx,BYTE PTR ds:[esi]
109cea: 75 61 jne 109d4d <VfsGetMountPoint+0x166>
109cec: 72 79 jb 109d67 <VfsGetMountPoint+0x180>
109cee: 00 46 65 add BYTE PTR [esi+0x65],al
109cf1: 62 72 75 bound esi,QWORD PTR [edx+0x75]
109cf4: 61 popa
109cf5: 72 79 jb 109d70 <VfsGetMountPoint+0x189>
109cf7: 00 4d 61 add BYTE PTR [ebp+0x61],cl
109cfa: 72 63 jb 109d5f <VfsGetMountPoint+0x178>
109cfc: 68 00 41 70 72 push 0x72704100
109d01: 69 6c 00 4d 61 79 00 imul ebp,DWORD PTR [eax+eax*1+0x4d],0x4a007961
109d08: 4a
109d09: 75 6e jne 109d79 <VfsGetMountPoint+0x192>
109d0b: 65 00 4a 75 add BYTE PTR gs:[edx+0x75],cl
109d0f: 6c ins BYTE PTR es:[edi],dx
109d10: 79 00 jns 109d12 <VfsGetMountPoint+0x12b>
109d12: 41 inc ecx
109d13: 75 67 jne 109d7c <VfsGetMountPoint+0x195>
109d15: 75 73 jne 109d8a <VfsGetMountPoint+0x1a3>
109d17: 74 00 je 109d19 <VfsGetMountPoint+0x132>
109d19: 53 push ebx
109d1a: 65 gs
109d1b: 70 74 jo 109d91 <VfsGetMountPoint+0x1aa>
109d1d: 65 gs
109d1e: 6d ins DWORD PTR es:[edi],dx
109d1f: 62 65 72 bound esp,QWORD PTR [ebp+0x72]
109d22: 00 4f 63 add BYTE PTR [edi+0x63],cl
109d25: 74 6f je 109d96 <VfsGetMountPoint+0x1af>
109d27: 62 65 72 bound esp,QWORD PTR [ebp+0x72]
109d2a: 00 4e 6f add BYTE PTR [esi+0x6f],cl
109d2d: 76 65 jbe 109d94 <VfsGetMountPoint+0x1ad>
109d2f: 6d ins DWORD PTR es:[edi],dx
109d30: 62 65 72 bound esp,QWORD PTR [ebp+0x72]
109d33: 00 44 65 63 add BYTE PTR [ebp+eiz*2+0x63],al
109d37: 65 gs
109d38: 6d ins DWORD PTR es:[edi],dx
109d39: 62 65 72 bound esp,QWORD PTR [ebp+0x72]
109d3c: 00 4d 6f add BYTE PTR [ebp+0x6f],cl
109d3f: 6e outs dx,BYTE PTR ds:[esi]
109d40: 64 fs
109d41: 61 popa
109d42: 79 00 jns 109d44 <VfsGetMountPoint+0x15d>
109d44: 54 push esp
109d45: 75 65 jne 109dac <VfsGetMountPoint+0x1c5>
109d47: 73 64 jae 109dad <VfsGetMountPoint+0x1c6>
109d49: 61 popa
109d4a: 79 00 jns 109d4c <VfsGetMountPoint+0x165>
109d4c: 57 push edi
109d4d: 65 64 6e gs outs dx,BYTE PTR fs:gs:[esi]
109d50: 65 gs
109d51: 73 64 jae 109db7 <VfsGetMountPoint+0x1d0>
109d53: 61 popa
109d54: 79 00 jns 109d56 <VfsGetMountPoint+0x16f>
109d56: 54 push esp
109d57: 68 75 72 73 64 push 0x64737275
109d5c: 61 popa
109d5d: 79 00 jns 109d5f <VfsGetMountPoint+0x178>
109d5f: 46 inc esi
109d60: 72 69 jb 109dcb <VfsGetMountPoint+0x1e4>
109d62: 64 fs
109d63: 61 popa
109d64: 79 00 jns 109d66 <VfsGetMountPoint+0x17f>
109d66: 53 push ebx
109d67: 61 popa
109d68: 74 75 je 109ddf <VfsGetMountPoint+0x1f8>
109d6a: 72 64 jb 109dd0 <VfsGetMountPoint+0x1e9>
109d6c: 61 popa
109d6d: 79 00 jns 109d6f <VfsGetMountPoint+0x188>
109d6f: 53 push ebx
109d70: 75 6e jne 109de0 <VfsGetMountPoint+0x1f9>
109d72: 64 fs
109d73: 61 popa
109d74: 79 00 jns 109d76 <VfsGetMountPoint+0x18f>
109d76: 41 inc ecx
109d77: 76 61 jbe 109dda <VfsGetMountPoint+0x1f3>
109d79: 69 6c 61 62 6c 65 20 imul ebp,DWORD PTR [ecx+eiz*2+0x62],0x6320656c
109d80: 63
109d81: 6f outs dx,DWORD PTR ds:[esi]
109d82: 6d ins DWORD PTR es:[edi],dx
109d83: 6d ins DWORD PTR es:[edi],dx
109d84: 61 popa
109d85: 6e outs dx,BYTE PTR ds:[esi]
109d86: 64 fs
109d87: 73 3a jae 109dc3 <VfsGetMountPoint+0x1dc>
109d89: 0a 00 or al,BYTE PTR [eax]
109d8b: 20 3e and BYTE PTR [esi],bh
109d8d: 20 25 23 25 73 0a and BYTE PTR ds:0xa732523,ah
109d93: 00 21 add BYTE PTR [ecx],ah
109d95: 70 00 jo 109d97 <VfsGetMountPoint+0x1b0>
109d97: 25 23 25 78 25 and eax,0x25782523
109d9c: 23 3a and edi,DWORD PTR [edx]
109d9e: 20 20 and BYTE PTR [eax],ah
109da0: 00 25 23 30 30 20 add BYTE PTR ds:0x20303023,ah
109da6: 00 25 23 25 63 25 add BYTE PTR ds:0x25632523,ah
109dac: 63 20 arpl WORD PTR [eax],sp
109dae: 00 0a add BYTE PTR [edx],cl
109db0: 0a 0d 00 50 68 79 or cl,BYTE PTR ds:0x79685000
109db6: 73 69 jae 109e21 <VfsGetMountPoint+0x23a>
109db8: 63 61 6c arpl WORD PTR [ecx+0x6c],sp
109dbb: 20 6d 65 and BYTE PTR [ebp+0x65],ch
109dbe: 6d ins DWORD PTR es:[edi],dx
109dbf: 6f outs dx,DWORD PTR ds:[esi]
109dc0: 72 79 jb 109e3b <VfsGetMountPoint+0x254>
109dc2: 20 6d 61 and BYTE PTR [ebp+0x61],ch
109dc5: 70 3a jo 109e01 <VfsGetMountPoint+0x21a>
109dc7: 0a 00 or al,BYTE PTR [eax]
109dc9: 61 popa
109dca: 6c ins BYTE PTR es:[edi],dx
109dcb: 6c ins BYTE PTR es:[edi],dx
109dcc: 6f outs dx,DWORD PTR ds:[esi]
109dcd: 63 00 arpl WORD PTR [eax],ax
109dcf: 52 push edx
109dd0: 65 gs
109dd1: 74 75 je 109e48 <VfsGetMountPoint+0x261>
109dd3: 72 6e jb 109e43 <VfsGetMountPoint+0x25c>
109dd5: 65 64 20 61 64 gs and BYTE PTR fs:gs:[ecx+0x64],ah
109dda: 64 fs
109ddb: 72 65 jb 109e42 <VfsGetMountPoint+0x25b>
109ddd: 73 73 jae 109e52 <VfsGetMountPoint+0x26b>
109ddf: 3a 20 cmp ah,BYTE PTR [eax]
109de1: 25 23 30 78 25 and eax,0x25783023
109de6: 78 0a js 109df2 <VfsGetMountPoint+0x20b>
109de8: 00 66 72 add BYTE PTR [esi+0x72],ah
109deb: 65 65 00 44 6f 6e gs add BYTE PTR gs:[edi+ebp*2+0x6e],al
109df1: 65 2e 0a 00 gs or al,BYTE PTR cs:gs:[eax]
109df5: 25 64 00 58 3d and eax,0x3d580064
109dfa: 25 64 20 59 3d and eax,0x3d592064
109dff: 25 64 20 42 75 and eax,0x75422064
109e04: 74 74 je 109e7a <VfsGetMountPoint+0x293>
109e06: 6f outs dx,DWORD PTR ds:[esi]
109e07: 6e outs dx,BYTE PTR ds:[esi]
109e08: 73 3d jae 109e47 <VfsGetMountPoint+0x260>
109e0a: 00 3c 6e add BYTE PTR [esi+ebp*2],bh
109e0d: 6f outs dx,DWORD PTR ds:[esi]
109e0e: 6e outs dx,BYTE PTR ds:[esi]
109e0f: 65 3e 00 3c 6c gs add BYTE PTR ds:gs:[esp+ebp*2],bh
109e14: 65 gs
109e15: 66 data16
109e16: 74 3e je 109e56 <VfsGetMountPoint+0x26f>
109e18: 00 3c 72 add BYTE PTR [edx+esi*2],bh
109e1b: 69 67 68 74 3e 00 3c imul esp,DWORD PTR [edi+0x68],0x3c003e74
109e22: 6d ins DWORD PTR es:[edi],dx
109e23: 69 64 3e 00 52 65 74 imul esp,DWORD PTR [esi+edi*1+0x0],0x75746552
109e2a: 75
109e2b: 72 6e jb 109e9b <VfsGetMountPoint+0x2b4>
109e2d: 65 64 20 76 61 gs and BYTE PTR fs:gs:[esi+0x61],dh
109e32: 6c ins BYTE PTR es:[edi],dx
109e33: 75 65 jne 109e9a <VfsGetMountPoint+0x2b3>
109e35: 3a 20 cmp ah,BYTE PTR [eax]
109e37: 30 78 25 xor BYTE PTR [eax+0x25],bh
109e3a: 78 0a js 109e46 <VfsGetMountPoint+0x25f>
109e3c: 00 46 49 add BYTE PTR [esi+0x49],al
109e3f: 4c dec esp
109e40: 00 44 49 52 add BYTE PTR [ecx+ecx*2+0x52],al
109e44: 00 43 6f add BYTE PTR [ebx+0x6f],al
109e47: 6e outs dx,BYTE PTR ds:[esi]
109e48: 74 65 je 109eaf <VfsGetMountPoint+0x2c8>
109e4a: 6e outs dx,BYTE PTR ds:[esi]
109e4b: 74 20 je 109e6d <VfsGetMountPoint+0x286>
109e4d: 6f outs dx,DWORD PTR ds:[esi]
109e4e: 66 data16
109e4f: 20 72 6f and BYTE PTR [edx+0x6f],dh
109e52: 6f outs dx,DWORD PTR ds:[esi]
109e53: 74 3a je 109e8f <VfsGetMountPoint+0x2a8>
109e55: 20 0a and BYTE PTR [edx],cl
109e57: 0a 00 or al,BYTE PTR [eax]
109e59: 09 5b 44 or DWORD PTR [ebx+0x44],ebx
109e5c: 45 inc ebp
109e5d: 56 push esi
109e5e: 5d pop ebp
109e5f: 20 25 73 0a 00 25 and BYTE PTR ds:0x25000a73,ah
109e65: 23 21 and esp,DWORD PTR [ecx]
109e67: 20 49 6e and BYTE PTR [ecx+0x6e],cl
109e6a: 76 61 jbe 109ecd <VfsGetMountPoint+0x2e6>
109e6c: 6c ins BYTE PTR es:[edi],dx
109e6d: 69 64 20 70 61 74 68 imul esp,DWORD PTR [eax+eiz*1+0x70],0x21687461
109e74: 21
109e75: 0a 00 or al,BYTE PTR [eax]
109e77: 25 23 21 20 4e and eax,0x4e202123
109e7c: 6f outs dx,DWORD PTR ds:[esi]
109e7d: 74 20 je 109e9f <VfsGetMountPoint+0x2b8>
109e7f: 61 popa
109e80: 20 64 69 72 and BYTE PTR [ecx+ebp*2+0x72],ah
109e84: 65 63 74 6f 72 arpl WORD PTR gs:[edi+ebp*2+0x72],si
109e89: 79 21 jns 109eac <VfsGetMountPoint+0x2c5>
109e8b: 0a 00 or al,BYTE PTR [eax]
109e8d: 43 inc ebx
109e8e: 6f outs dx,DWORD PTR ds:[esi]
109e8f: 6e outs dx,BYTE PTR ds:[esi]
109e90: 74 65 je 109ef7 <VfsGetMountPoint+0x310>
109e92: 6e outs dx,BYTE PTR ds:[esi]
109e93: 74 20 je 109eb5 <VfsGetMountPoint+0x2ce>
109e95: 6f outs dx,DWORD PTR ds:[esi]
109e96: 66 data16
109e97: 20 64 69 72 and BYTE PTR [ecx+ebp*2+0x72],ah
109e9b: 65 63 74 6f 72 arpl WORD PTR gs:[edi+ebp*2+0x72],si
109ea0: 79 20 jns 109ec2 <VfsGetMountPoint+0x2db>
109ea2: 25 23 25 73 3a and eax,0x3a732523
109ea7: 0a 0a or cl,BYTE PTR [edx]
109ea9: 00 09 add BYTE PTR [ecx],cl
109eab: 5b pop ebx
109eac: 25 73 5d 20 00 and eax,0x205d73
109eb1: 25 73 00 25 75 and eax,0x75250073
109eb6: 20 62 79 and BYTE PTR [edx+0x79],ah
109eb9: 74 65 je 109f20 <VfsGetMountPoint+0x339>
109ebb: 73 0a jae 109ec7 <VfsGetMountPoint+0x2e0>
109ebd: 00 25 23 21 20 49 add BYTE PTR ds:0x49202123,ah
109ec3: 6e outs dx,BYTE PTR ds:[esi]
109ec4: 76 61 jbe 109f27 <VfsGetMountPoint+0x340>
109ec6: 6c ins BYTE PTR es:[edi],dx
109ec7: 69 64 20 66 69 6c 65 imul esp,DWORD PTR [eax+eiz*1+0x66],0x3a656c69
109ece: 3a
109ecf: 20 25 73 0a 2e 00 and BYTE PTR ds:0x2e0a73,ah
109ed5: 2d 2d 2d 2d 5b sub eax,0x5b2d2d2d
109eda: 25 73 5d 2d 2d and eax,0x2d2d5d73
109edf: 2d 2d 2d 2d 0a sub eax,0xa2d2d2d
109ee4: 00 25 23 48 65 6c add BYTE PTR ds:0x6c654823,ah
109eea: 6c ins BYTE PTR es:[edi],dx
109eeb: 6f outs dx,DWORD PTR ds:[esi]
109eec: 20 77 6f and BYTE PTR [edi+0x6f],dh
109eef: 72 6c jb 109f5d <VfsGetMountPoint+0x376>
109ef1: 64 21 20 and DWORD PTR fs:[eax],esp
109ef4: 25 75 20 00 25 and eax,0x25002075
109ef9: 23 44 69 64 and eax,DWORD PTR [ecx+ebp*2+0x64]
109efd: 20 79 6f and BYTE PTR [ecx+0x6f],bh
109f00: 75 20 jne 109f22 <VfsGetMountPoint+0x33b>
109f02: 6d ins DWORD PTR es:[edi],dx
109f03: 65 gs
109f04: 61 popa
109f05: 6e outs dx,BYTE PTR ds:[esi]
109f06: 20 25 23 25 73 25 and BYTE PTR ds:0x25732523,ah
109f0c: 23 3f and edi,DWORD PTR [edi]
109f0e: 0a 00 or al,BYTE PTR [eax]
109f10: 41 inc ecx
109f11: 76 61 jbe 109f74 <VfsGetMountPoint+0x38d>
109f13: 69 6c 61 62 6c 65 20 imul ebp,DWORD PTR [ecx+eiz*2+0x62],0x6f20656c
109f1a: 6f
109f1b: 70 74 jo 109f91 <VfsGetMountPoint+0x3aa>
109f1d: 69 6f 6e 73 3a 0a 00 imul ebp,DWORD PTR [edi+0x6e],0xa3a73
109f24: 09 3e or DWORD PTR [esi],edi
109f26: 25 23 20 25 73 and eax,0x73252023
109f2b: 0a 00 or al,BYTE PTR [eax]
109f2d: 0a 25 23 5d 20 00 or ah,BYTE PTR ds:0x205d23
109f33: 6f outs dx,DWORD PTR ds:[esi]
109f34: 73 76 jae 109fac <VfsGetMountPoint+0x3c5>
109f36: 65 gs
109f37: 72 00 jb 109f39 <VfsGetMountPoint+0x352>
109f39: 74 69 je 109fa4 <VfsGetMountPoint+0x3bd>
109f3b: 6d ins DWORD PTR es:[edi],dx
109f3c: 65 00 63 6c add BYTE PTR gs:[ebx+0x6c],ah
109f40: 73 00 jae 109f42 <VfsGetMountPoint+0x35b>
109f42: 68 65 6c 70 00 push 0x706c65
109f47: 64 fs
109f48: 75 6d jne 109fb7 <VfsGetMountPoint+0x3d0>
109f4a: 70 00 jo 109f4c <VfsGetMountPoint+0x365>
109f4c: 6d ins DWORD PTR es:[edi],dx
109f4d: 65 gs
109f4e: 6d ins DWORD PTR es:[edi],dx
109f4f: 00 63 72 add BYTE PTR [ebx+0x72],ah
109f52: 61 popa
109f53: 73 68 jae 109fbd <VfsGetMountPoint+0x3d6>
109f55: 00 6d 6f add BYTE PTR [ebp+0x6f],ch
109f58: 75 73 jne 109fcd <VfsGetMountPoint+0x3e6>
109f5a: 65 00 72 65 add BYTE PTR gs:[edx+0x65],dh
109f5e: 61 popa
109f5f: 64 00 72 65 add BYTE PTR fs:[edx+0x65],dh
109f63: 62 6f 6f bound ebp,QWORD PTR [edi+0x6f]
109f66: 74 00 je 109f68 <VfsGetMountPoint+0x381>
109f68: 72 65 jb 109fcf <VfsGetMountPoint+0x3e8>
109f6a: 73 74 jae 109fe0 <VfsGetMountPoint+0x3f9>
109f6c: 61 popa
109f6d: 72 74 jb 109fe3 <VfsGetMountPoint+0x3fc>
109f6f: 00 64 69 72 add BYTE PTR [ecx+ebp*2+0x72],ah
109f73: 00 63 61 add BYTE PTR [ebx+0x61],ah
109f76: 74 00 je 109f78 <VfsGetMountPoint+0x391>
109f78: 74 61 je 109fdb <VfsGetMountPoint+0x3f4>
109f7a: 73 6b jae 109fe7 <VfsGetMountPoint+0x400>
109f7c: 00 00 add BYTE PTR [eax],al
109f7e: 00 00 add BYTE PTR [eax],al
109f80: 25 23 25 73 25 and eax,0x25732523
109f85: 23 20 and esp,DWORD PTR [eax]
109f87: 33 32 xor esi,DWORD PTR [edx]
109f89: 62 69 74 bound ebp,QWORD PTR [ecx+0x74]
109f8c: 20 6f 70 and BYTE PTR [edi+0x70],ch
109f8f: 65 gs
109f90: 72 61 jb 109ff3 <VfsGetMountPoint+0x40c>
109f92: 74 69 je 109ffd <VfsGetMountPoint+0x416>
109f94: 6e outs dx,BYTE PTR ds:[esi]
109f95: 67 20 73 79 and BYTE PTR [bp+di+0x79],dh
109f99: 73 74 jae 10a00f <VfsGetMountPoint+0x428>
109f9b: 65 gs
109f9c: 6d ins DWORD PTR es:[edi],dx
109f9d: 0a 00 or al,BYTE PTR [eax]
109f9f: 00 25 23 28 63 29 add BYTE PTR ds:0x29632823,ah
109fa5: 20 43 6f and BYTE PTR [ebx+0x6f],al
109fa8: 70 79 jo 10a023 <VfsGetMountPoint+0x43c>
109faa: 72 69 jb 10a015 <VfsGetMountPoint+0x42e>
109fac: 67 68 74 20 25 23 addr16 push 0x23252074
109fb2: 43 inc ebx
109fb3: 54 push esp
109fb4: 41 inc ecx
109fb5: 20 53 79 and BYTE PTR [ebx+0x79],dl
109fb8: 73 74 jae 10a02e <VfsGetMountPoint+0x447>
109fba: 65 gs
109fbb: 6d ins DWORD PTR es:[edi],dx
109fbc: 73 20 jae 109fde <VfsGetMountPoint+0x3f7>
109fbe: 49 dec ecx
109fbf: 6e outs dx,BYTE PTR ds:[esi]
109fc0: 63 2e arpl WORD PTR [esi],bp
109fc2: 0a 00 or al,BYTE PTR [eax]
109fc4: 25 23 21 20 48 and eax,0x48202123
109fc9: 65 gs
109fca: 6c ins BYTE PTR es:[edi],dx
109fcb: 70 20 jo 109fed <VfsGetMountPoint+0x406>
109fcd: 66 6f outs dx,WORD PTR ds:[esi]
109fcf: 72 20 jb 109ff1 <VfsGetMountPoint+0x40a>
109fd1: 25 73 20 63 6f and eax,0x6f632073
109fd6: 6d ins DWORD PTR es:[edi],dx
109fd7: 6d ins DWORD PTR es:[edi],dx
109fd8: 61 popa
109fd9: 6e outs dx,BYTE PTR ds:[esi]
109fda: 64 20 69 73 and BYTE PTR fs:[ecx+0x73],ch
109fde: 20 6e 6f and BYTE PTR [esi+0x6f],ch
109fe1: 74 20 je 10a003 <VfsGetMountPoint+0x41c>
109fe3: 69 6d 70 6c 65 6d 65 imul ebp,DWORD PTR [ebp+0x70],0x656d656c
109fea: 6e outs dx,BYTE PTR ds:[esi]
109feb: 74 65 je 10a052 <VfsGetMountPoint+0x46b>
109fed: 64 20 79 65 and BYTE PTR fs:[ecx+0x65],bh
109ff1: 74 2e je 10a021 <VfsGetMountPoint+0x43a>
109ff3: 0a 00 or al,BYTE PTR [eax]
109ff5: 00 00 add BYTE PTR [eax],al
109ff7: 00 25 23 21 20 43 add BYTE PTR ds:0x43202123,ah
109ffd: 6f outs dx,DWORD PTR ds:[esi]
109ffe: 72 72 jb 10a072 <VfsGetMountPoint+0x48b>
10a000: 65 63 74 20 73 arpl WORD PTR gs:[eax+eiz*1+0x73],si
10a005: 79 6e jns 10a075 <VfsGetMountPoint+0x48e>
10a007: 74 61 je 10a06a <VfsGetMountPoint+0x483>
10a009: 78 3a js 10a045 <VfsGetMountPoint+0x45e>
10a00b: 20 20 and BYTE PTR [eax],ah
10a00d: 25 23 64 75 6d and eax,0x6d756423
10a012: 70 20 jo 10a034 <VfsGetMountPoint+0x44d>
10a014: 25 23 5b 73 74 and eax,0x74735b23
10a019: 61 popa
10a01a: 72 74 jb 10a090 <VfsGetMountPoint+0x4a9>
10a01c: 5f pop edi
10a01d: 61 popa
10a01e: 64 fs
10a01f: 64 fs
10a020: 72 65 jb 10a087 <VfsGetMountPoint+0x4a0>
10a022: 73 73 jae 10a097 <VfsGetMountPoint+0x4b0>
10a024: 5d pop ebp
10a025: 20 5b 65 and BYTE PTR [ebx+0x65],bl
10a028: 6e outs dx,BYTE PTR ds:[esi]
10a029: 64 fs
10a02a: 5f pop edi
10a02b: 61 popa
10a02c: 64 fs
10a02d: 64 fs
10a02e: 72 65 jb 10a095 <VfsGetMountPoint+0x4ae>
10a030: 73 73 jae 10a0a5 <VfsGetMountPoint+0x4be>
10a032: 5d pop ebp
10a033: 0a 00 or al,BYTE PTR [eax]
10a035: 00 00 add BYTE PTR [eax],al
10a037: 00 25 23 53 74 61 add BYTE PTR ds:0x61745323,ah
10a03d: 72 74 jb 10a0b3 <VfsGetMountPoint+0x4cc>
10a03f: 20 25 23 61 6e 64 and BYTE PTR ds:0x646e6123,ah
10a045: 20 25 23 65 6e 64 and BYTE PTR ds:0x646e6523,ah
10a04b: 20 25 23 61 64 64 and BYTE PTR ds:0x64646123,ah
10a051: 72 65 jb 10a0b8 <VfsGetMountPoint+0x4d1>
10a053: 73 73 jae 10a0c8 <VfsGetMountPoint+0x4e1>
10a055: 65 gs
10a056: 73 20 jae 10a078 <VfsGetMountPoint+0x491>
10a058: 61 popa
10a059: 72 65 jb 10a0c0 <VfsGetMountPoint+0x4d9>
10a05b: 20 69 6e and BYTE PTR [ecx+0x6e],ch
10a05e: 20 68 65 and BYTE PTR [eax+0x65],ch
10a061: 78 2e js 10a091 <VfsGetMountPoint+0x4aa>
10a063: 0a 00 or al,BYTE PTR [eax]
10a065: 00 00 add BYTE PTR [eax],al
10a067: 00 0a add BYTE PTR [edx],cl
10a069: 0d 25 23 50 72 or eax,0x72502325
10a06e: 65 gs
10a06f: 73 73 jae 10a0e4 <VfsGetMountPoint+0x4fd>
10a071: 20 25 23 61 6e 79 and BYTE PTR ds:0x796e6123,ah
10a077: 20 6b 65 and BYTE PTR [ebx+0x65],ch
10a07a: 79 20 jns 10a09c <VfsGetMountPoint+0x4b5>
10a07c: 25 23 74 6f 20 and eax,0x206f7423
10a081: 63 6f 6e arpl WORD PTR [edi+0x6e],bp
10a084: 74 69 je 10a0ef <VfsGetMountPoint+0x508>
10a086: 6e outs dx,BYTE PTR ds:[esi]
10a087: 75 65 jne 10a0ee <VfsGetMountPoint+0x507>
10a089: 20 73 63 and BYTE PTR [ebx+0x63],dh
10a08c: 72 6f jb 10a0fd <VfsGetMountPoint+0x516>
10a08e: 6c ins BYTE PTR es:[edi],dx
10a08f: 6c ins BYTE PTR es:[edi],dx
10a090: 69 6e 67 2c 20 25 23 imul ebp,DWORD PTR [esi+0x67],0x2325202c
10a097: 45 inc ebp
10a098: 73 63 jae 10a0fd <VfsGetMountPoint+0x516>
10a09a: 20 25 23 74 6f 20 and BYTE PTR ds:0x206f7423,ah
10a0a0: 65 gs
10a0a1: 78 69 js 10a10c <VfsGetMountPoint+0x525>
10a0a3: 74 2e je 10a0d3 <VfsGetMountPoint+0x4ec>
10a0a5: 00 00 add BYTE PTR [eax],al
10a0a7: 00 46 72 add BYTE PTR [esi+0x72],al
10a0aa: 65 65 20 73 70 gs and BYTE PTR gs:[ebx+0x70],dh
10a0af: 61 popa
10a0b0: 63 65 3a arpl WORD PTR [ebp+0x3a],sp
10a0b3: 20 25 23 25 75 6b and BYTE PTR ds:0x6b752523,ah
10a0b9: 62 20 bound esp,QWORD PTR [eax]
10a0bb: 28 25 75 20 66 72 sub BYTE PTR ds:0x72662075,ah
10a0c1: 61 popa
10a0c2: 6d ins DWORD PTR es:[edi],dx
10a0c3: 65 gs
10a0c4: 73 29 jae 10a0ef <VfsGetMountPoint+0x508>
10a0c6: 0a 00 or al,BYTE PTR [eax]
10a0c8: 55 push ebp
10a0c9: 73 65 jae 10a130 <VfsGetMountPoint+0x549>
10a0cb: 64 20 73 70 and BYTE PTR fs:[ebx+0x70],dh
10a0cf: 61 popa
10a0d0: 63 65 3a arpl WORD PTR [ebp+0x3a],sp
10a0d3: 20 25 23 25 75 6b and BYTE PTR ds:0x6b752523,ah
10a0d9: 62 20 bound esp,QWORD PTR [eax]
10a0db: 28 25 75 20 66 72 sub BYTE PTR ds:0x72662075,ah
10a0e1: 61 popa
10a0e2: 6d ins DWORD PTR es:[edi],dx
10a0e3: 65 gs
10a0e4: 73 29 jae 10a10f <VfsGetMountPoint+0x528>
10a0e6: 0a 0a or cl,BYTE PTR [edx]
10a0e8: 00 00 add BYTE PTR [eax],al
10a0ea: 00 00 add BYTE PTR [eax],al
10a0ec: 54 push esp
10a0ed: 6f outs dx,DWORD PTR ds:[esi]
10a0ee: 74 61 je 10a151 <VfsGetMountPoint+0x56a>
10a0f0: 6c ins BYTE PTR es:[edi],dx
10a0f1: 20 73 70 and BYTE PTR [ebx+0x70],dh
10a0f4: 61 popa
10a0f5: 63 65 3a arpl WORD PTR [ebp+0x3a],sp
10a0f8: 20 25 23 25 75 6b and BYTE PTR ds:0x6b752523,ah
10a0fe: 62 20 bound esp,QWORD PTR [eax]
10a100: 28 25 75 20 66 72 sub BYTE PTR ds:0x72662075,ah
10a106: 61 popa
10a107: 6d ins DWORD PTR es:[edi],dx
10a108: 65 gs
10a109: 73 29 jae 10a134 <VfsGetMountPoint+0x54d>
10a10b: 0a 00 or al,BYTE PTR [eax]
10a10d: 00 00 add BYTE PTR [eax],al
10a10f: 00 25 23 21 20 4d add BYTE PTR ds:0x4d202123,ah
10a115: 69 73 73 69 6e 67 20 imul esi,DWORD PTR [ebx+0x73],0x20676e69
10a11c: 70 61 jo 10a17f <VfsGetMountPoint+0x598>
10a11e: 72 61 jb 10a181 <VfsGetMountPoint+0x59a>
10a120: 6d ins DWORD PTR es:[edi],dx
10a121: 65 gs
10a122: 74 65 je 10a189 <VfsGetMountPoint+0x5a2>
10a124: 72 3a jb 10a160 <VfsGetMountPoint+0x579>
10a126: 20 61 64 and BYTE PTR [ecx+0x64],ah
10a129: 64 fs
10a12a: 72 65 jb 10a191 <VfsGetMountPoint+0x5aa>
10a12c: 73 73 jae 10a1a1 <VfsGetMountPoint+0x5ba>
10a12e: 20 74 6f 20 and BYTE PTR [edi+ebp*2+0x20],dh
10a132: 66 data16
10a133: 72 65 jb 10a19a <VfsGetMountPoint+0x5b3>
10a135: 65 2e 00 25 23 21 20 gs add BYTE PTR cs:gs:0x49202123,ah
10a13c: 49
10a13d: 6e outs dx,BYTE PTR ds:[esi]
10a13e: 76 61 jbe 10a1a1 <VfsGetMountPoint+0x5ba>
10a140: 6c ins BYTE PTR es:[edi],dx
10a141: 69 64 20 63 6f 6d 6d imul esp,DWORD PTR [eax+eiz*1+0x63],0x616d6d6f
10a148: 61
10a149: 6e outs dx,BYTE PTR ds:[esi]
10a14a: 64 2e 20 41 76 fs and BYTE PTR cs:fs:[ecx+0x76],al
10a14f: 61 popa
10a150: 69 6c 61 62 6c 65 20 imul ebp,DWORD PTR [ecx+eiz*2+0x62],0x6320656c
10a157: 63
10a158: 6f outs dx,DWORD PTR ds:[esi]
10a159: 6d ins DWORD PTR es:[edi],dx
10a15a: 6d ins DWORD PTR es:[edi],dx
10a15b: 61 popa
10a15c: 6e outs dx,BYTE PTR ds:[esi]
10a15d: 64 fs
10a15e: 73 20 jae 10a180 <VfsGetMountPoint+0x599>
10a160: 61 popa
10a161: 72 65 jb 10a1c8 <VfsGetMountPoint+0x5e1>
10a163: 3a 20 cmp ah,BYTE PTR [eax]
10a165: 61 popa
10a166: 6c ins BYTE PTR es:[edi],dx
10a167: 6c ins BYTE PTR es:[edi],dx
10a168: 6f outs dx,DWORD PTR ds:[esi]
10a169: 63 2c 20 arpl WORD PTR [eax+eiz*1],bp
10a16c: 66 data16
10a16d: 72 65 jb 10a1d4 <VfsGetMountPoint+0x5ed>
10a16f: 65 2e 00 00 gs add BYTE PTR cs:gs:[eax],al
10a173: 00 25 23 21 20 4d add BYTE PTR ds:0x4d202123,ah
10a179: 69 73 73 69 6e 67 20 imul esi,DWORD PTR [ebx+0x73],0x20676e69
10a180: 70 61 jo 10a1e3 <VfsGetMountPoint+0x5fc>
10a182: 72 61 jb 10a1e5 <VfsGetMountPoint+0x5fe>
10a184: 6d ins DWORD PTR es:[edi],dx
10a185: 65 gs
10a186: 74 65 je 10a1ed <VfsGetMountPoint+0x606>
10a188: 72 20 jb 10a1aa <VfsGetMountPoint+0x5c3>
10a18a: 2d 20 73 65 63 sub eax,0x63657320
10a18f: 74 6f je 10a200 <VfsGetMountPoint+0x619>
10a191: 72 21 jb 10a1b4 <VfsGetMountPoint+0x5cd>
10a193: 0a 00 or al,BYTE PTR [eax]
10a195: 00 00 add BYTE PTR [eax],al
10a197: 00 25 23 21 20 4d add BYTE PTR ds:0x4d202123,ah
10a19d: 69 73 73 69 6e 67 20 imul esi,DWORD PTR [ebx+0x73],0x20676e69
10a1a4: 70 61 jo 10a207 <VfsGetMountPoint+0x620>
10a1a6: 72 61 jb 10a209 <VfsGetMountPoint+0x622>
10a1a8: 6d ins DWORD PTR es:[edi],dx
10a1a9: 65 gs
10a1aa: 74 65 je 10a211 <VfsGetMountPoint+0x62a>
10a1ac: 72 20 jb 10a1ce <VfsGetMountPoint+0x5e7>
10a1ae: 2d 20 63 6f 6d sub eax,0x6d6f6320
10a1b3: 70 6c jo 10a221 <VfsGetMountPoint+0x63a>
10a1b5: 65 gs
10a1b6: 74 65 je 10a21d <VfsGetMountPoint+0x636>
10a1b8: 20 66 69 and BYTE PTR [esi+0x69],ah
10a1bb: 6c ins BYTE PTR es:[edi],dx
10a1bc: 65 20 70 61 and BYTE PTR gs:[eax+0x61],dh
10a1c0: 74 68 je 10a22a <VfsGetMountPoint+0x643>
10a1c2: 2e 0a 00 or al,BYTE PTR cs:[eax]
10a1c5: 00 00 add BYTE PTR [eax],al
10a1c7: 00 0a add BYTE PTR [edx],cl
10a1c9: 2d 2d 2d 2d 2d sub eax,0x2d2d2d2d
10a1ce: 2d 2d 2d 2d 2d sub eax,0x2d2d2d2d
10a1d3: 2d 2d 5b 45 4f sub eax,0x4f455b2d
10a1d8: 46 inc esi
10a1d9: 5d pop ebp
10a1da: 2d 2d 2d 2d 2d sub eax,0x2d2d2d2d
10a1df: 2d 2d 2d 2d 2d sub eax,0x2d2d2d2d
10a1e4: 2d 2d 0a 00 25 sub eax,0x25000a2d
10a1e9: 23 21 and esp,DWORD PTR [ecx]
10a1eb: 20 43 6f and BYTE PTR [ebx+0x6f],al
10a1ee: 6d ins DWORD PTR es:[edi],dx
10a1ef: 6d ins DWORD PTR es:[edi],dx
10a1f0: 61 popa
10a1f1: 6e outs dx,BYTE PTR ds:[esi]
10a1f2: 64 20 25 23 25 73 25 and BYTE PTR fs:0x25732523,ah
10a1f9: 23 20 and esp,DWORD PTR [eax]
10a1fb: 64 6f outs dx,DWORD PTR fs:[esi]
10a1fd: 65 gs
10a1fe: 73 20 jae 10a220 <VfsGetMountPoint+0x639>
10a200: 6e outs dx,BYTE PTR ds:[esi]
10a201: 6f outs dx,DWORD PTR ds:[esi]
10a202: 74 20 je 10a224 <VfsGetMountPoint+0x63d>
10a204: 65 gs
10a205: 78 69 js 10a270 <VfsGetMountPoint+0x689>
10a207: 73 74 jae 10a27d <VfsGetMountPoint+0x696>
10a209: 21 0a and DWORD PTR [edx],ecx
10a20b: 00 25 23 21 20 59 add BYTE PTR ds:0x59202123,ah
10a211: 6f outs dx,DWORD PTR ds:[esi]
10a212: 75 20 jne 10a234 <VfsGetMountPoint+0x64d>
10a214: 6d ins DWORD PTR es:[edi],dx
10a215: 75 73 jne 10a28a <VfsGetMountPoint+0x6a3>
10a217: 74 20 je 10a239 <VfsGetMountPoint+0x652>
10a219: 65 6e outs dx,BYTE PTR gs:[esi]
10a21b: 74 65 je 10a282 <VfsGetMountPoint+0x69b>
10a21d: 72 20 jb 10a23f <VfsGetMountPoint+0x658>
10a21f: 61 popa
10a220: 20 63 6f and BYTE PTR [ebx+0x6f],ah
10a223: 6d ins DWORD PTR es:[edi],dx
10a224: 6d ins DWORD PTR es:[edi],dx
10a225: 61 popa
10a226: 6e outs dx,BYTE PTR ds:[esi]
10a227: 64 21 0a and DWORD PTR fs:[edx],ecx
10a22a: 00 00 add BYTE PTR [eax],al
10a22c: 25 23 21 20 43 and eax,0x43202123
10a231: 6f outs dx,DWORD PTR ds:[esi]
10a232: 6d ins DWORD PTR es:[edi],dx
10a233: 6d ins DWORD PTR es:[edi],dx
10a234: 61 popa
10a235: 6e outs dx,BYTE PTR ds:[esi]
10a236: 64 20 25 23 25 73 25 and BYTE PTR fs:0x25732523,ah
10a23d: 23 20 and esp,DWORD PTR [eax]
10a23f: 77 61 ja 10a2a2 <VfsGetMountPoint+0x6bb>
10a241: 73 20 jae 10a263 <VfsGetMountPoint+0x67c>
10a243: 6e outs dx,BYTE PTR ds:[esi]
10a244: 6f outs dx,DWORD PTR ds:[esi]
10a245: 74 20 je 10a267 <VfsGetMountPoint+0x680>
10a247: 69 6d 70 6c 65 6d 65 imul ebp,DWORD PTR [ebp+0x70],0x656d656c
10a24e: 6e outs dx,BYTE PTR ds:[esi]
10a24f: 74 65 je 10a2b6 <VfsGetMountPoint+0x6cf>
10a251: 64 20 28 and BYTE PTR fs:[eax],ch
10a254: 79 65 jns 10a2bb <VfsGetMountPoint+0x6d4>
10a256: 74 29 je 10a281 <VfsGetMountPoint+0x69a>
10a258: 21 0a and DWORD PTR [edx],ecx
10a25a: 00 00 add BYTE PTR [eax],al
10a25c: 00 00 add BYTE PTR [eax],al
10a25e: 00 00 add BYTE PTR [eax],al
10a260: 58 pop eax
10a261: 9e sahf
10a262: 10 00 adc BYTE PTR [eax],al
10a264: e7 9c out 0x9c,eax
10a266: 10 00 adc BYTE PTR [eax],al
10a268: ef out dx,eax
10a269: 9c pushf
10a26a: 10 00 adc BYTE PTR [eax],al
10a26c: f8 clc
10a26d: 9c pushf
10a26e: 10 00 adc BYTE PTR [eax],al
10a270: fe (bad)
10a271: 9c pushf
10a272: 10 00 adc BYTE PTR [eax],al
10a274: 04 9d add al,0x9d
10a276: 10 00 adc BYTE PTR [eax],al
10a278: 08 9d 10 00 0d 9d or BYTE PTR [ebp-0x62f2fff0],bl
10a27e: 10 00 adc BYTE PTR [eax],al
10a280: 12 9d 10 00 19 9d adc bl,BYTE PTR [ebp-0x62e6fff0]
10a286: 10 00 adc BYTE PTR [eax],al
10a288: 23 9d 10 00 2b 9d and ebx,DWORD PTR [ebp-0x62d4fff0]
10a28e: 10 00 adc BYTE PTR [eax],al
10a290: 34 9d xor al,0x9d
10a292: 10 00 adc BYTE PTR [eax],al
...
10a2a0: 58 pop eax
10a2a1: 9e sahf
10a2a2: 10 00 adc BYTE PTR [eax],al
10a2a4: 3d 9d 10 00 44 cmp eax,0x4400109d
10a2a9: 9d popf
10a2aa: 10 00 adc BYTE PTR [eax],al
10a2ac: 4c dec esp
10a2ad: 9d popf
10a2ae: 10 00 adc BYTE PTR [eax],al
10a2b0: 56 push esi
10a2b1: 9d popf
10a2b2: 10 00 adc BYTE PTR [eax],al
10a2b4: 5f pop edi
10a2b5: 9d popf
10a2b6: 10 00 adc BYTE PTR [eax],al
10a2b8: 66 9d popfw
10a2ba: 10 00 adc BYTE PTR [eax],al
10a2bc: 6f outs dx,DWORD PTR ds:[esi]
10a2bd: 9d popf
10a2be: 10 00 adc BYTE PTR [eax],al
10a2c0: 18 41 10 sbb BYTE PTR [ecx+0x10],al
10a2c3: 00 2e add BYTE PTR [esi],ch
10a2c5: 41 inc ecx
10a2c6: 10 00 adc BYTE PTR [eax],al
10a2c8: 38 41 10 cmp BYTE PTR [ecx+0x10],al
10a2cb: 00 42 41 add BYTE PTR [edx+0x41],al
10a2ce: 10 00 adc BYTE PTR [eax],al
10a2d0: 4c dec esp
10a2d1: 41 inc ecx
10a2d2: 10 00 adc BYTE PTR [eax],al
10a2d4: 5d pop ebp
10a2d5: 41 inc ecx
10a2d6: 10 00 adc BYTE PTR [eax],al
10a2d8: 6e outs dx,BYTE PTR ds:[esi]
10a2d9: 41 inc ecx
10a2da: 10 00 adc BYTE PTR [eax],al
10a2dc: 7f 41 jg 10a31f <VfsGetMountPoint+0x738>
10a2de: 10 00 adc BYTE PTR [eax],al
10a2e0: 89 41 10 mov DWORD PTR [ecx+0x10],eax
10a2e3: 00 93 41 10 00 a4 add BYTE PTR [ebx-0x5bffefbf],dl
10a2e9: 41 inc ecx
10a2ea: 10 00 adc BYTE PTR [eax],al
10a2ec: a4 movs BYTE PTR es:[edi],BYTE PTR ds:[esi]
10a2ed: 41 inc ecx
10a2ee: 10 00 adc BYTE PTR [eax],al
10a2f0: ae scas al,BYTE PTR es:[edi]
10a2f1: 41 inc ecx
10a2f2: 10 00 adc BYTE PTR [eax],al
10a2f4: bf 41 10 00 cd mov edi,0xcd001041
10a2f9: 41 inc ecx
10a2fa: 10 00 adc BYTE PTR [eax],al
10a2fc: 30 31 xor BYTE PTR [ecx],dh
10a2fe: 32 33 xor dh,BYTE PTR [ebx]
10a300: 34 35 xor al,0x35
10a302: 36 ss
10a303: 37 aaa
10a304: 38 39 cmp BYTE PTR [ecx],bh
10a306: 61 popa
10a307: 62 63 64 bound esp,QWORD PTR [ebx+0x64]
10a30a: 65 gs
10a30b: 66 67 68 69 6a addr16 pushw 0x6a69
10a310: 6b 6c 6d 6e 6f imul ebp,DWORD PTR [ebp+ebp*2+0x6e],0x6f
10a315: 70 71 jo 10a388 <_Numbers+0x64>
10a317: 72 73 jb 10a38c <_Numbers+0x68>
10a319: 74 75 je 10a390 <_Numbers+0x6c>
10a31b: 76 77 jbe 10a394 <_Numbers+0x70>
10a31d: 78 79 js 10a398 <_Numbers+0x74>
10a31f: 7a 00 jp 10a321 <VfsGetMountPoint+0x73a>
10a321: 00 00 add BYTE PTR [eax],al
...
0010a324 <_Numbers>:
10a324: fc a2 10 00 25 23 25 73 20 28 49 4e 54 25 75 29 ....%#%s (INT%u)
10a334: 00 25 23 49 4e 54 25 75 00 65 61 78 3d 30 78 25 .%#INT%u.eax=0x%
10a344: 78 00 65 62 78 3d 30 78 25 78 00 65 63 78 3d 30 x.ebx=0x%x.ecx=0
10a354: 78 25 78 00 65 64 78 3d 30 78 25 78 0a 00 65 64 x%x.edx=0x%x..ed
10a364: 69 3d 30 78 25 78 00 65 73 69 3d 30 78 25 78 00 i=0x%x.esi=0x%x.
10a374: 65 62 70 3d 30 78 25 78 00 66 73 3d 30 78 25 78 ebp=0x%x.fs=0x%x
10a384: 00 65 73 3d 30 78 25 78 00 64 73 3d 30 78 25 78 .es=0x%x.ds=0x%x
10a394: 0a 00 65 69 70 3d 30 78 25 78 00 63 73 3d 30 78 ..eip=0x%x.cs=0x
10a3a4: 25 78 00 65 66 6c 61 67 73 3d 30 78 25 78 00 75 %x.eflags=0x%x.u
10a3b4: 73 65 72 65 73 70 3d 30 78 25 78 0a 00 65 72 72 seresp=0x%x..err
10a3c4: 5f 63 6f 64 65 3d 30 78 25 78 00 61 64 64 72 65 _code=0x%x.addre
10a3d4: 73 73 3d 30 78 25 78 0a 00 72 65 61 73 6f 6e 3a ss=0x%x..reason:
10a3e4: 20 00 25 23 50 41 47 45 5f 4e 4f 54 5f 50 52 45 .%#PAGE_NOT_PRE
10a3f4: 53 45 4e 54 3b 20 00 25 23 57 52 49 54 45 5f 4f SENT; .%#WRITE_O
10a404: 50 45 52 41 54 49 4f 4e 3b 20 00 25 23 43 50 55 PERATION; .%#CPU
10a414: 5f 49 4e 5f 55 53 45 52 5f 4d 4f 44 45 3b 20 00 _IN_USER_MODE; .
10a424: 25 23 49 4e 53 54 52 55 43 54 49 4f 4e 5f 46 45 %#INSTRUCTION_FE
10a434: 54 43 48 3b 20 00 44 69 76 69 73 69 6f 6e 20 62 TCH; .Division b
10a444: 79 20 7a 65 72 6f 00 44 65 62 75 67 67 65 72 00 y zero.Debugger.
10a454: 4e 6f 6e 20 6d 61 73 6b 61 62 6c 65 20 69 6e 74 Non maskable int
10a464: 65 72 72 75 70 74 00 42 72 65 61 6b 70 6f 69 6e errupt.Breakpoin
10a474: 74 00 4f 76 65 72 66 6c 6f 77 00 42 6f 75 6e 64 t.Overflow.Bound
10a484: 73 00 49 6e 76 61 6c 69 64 20 6f 70 63 6f 64 65 s.Invalid opcode
10a494: 00 43 6f 70 72 6f 63 65 73 73 6f 72 20 6e 6f 74 .Coprocessor not
10a4a4: 20 61 76 61 69 6c 61 62 6c 65 00 44 6f 75 62 6c available.Doubl
10a4b4: 65 20 66 61 75 6c 74 00 43 6f 70 72 6f 63 65 73 e fault.Coproces
10a4c4: 73 6f 72 20 73 65 67 6d 65 6e 74 20 6f 76 65 72 sor segment over
10a4d4: 72 75 6e 00 49 6e 76 61 6c 69 64 20 74 61 73 6b run.Invalid task
10a4e4: 20 73 74 61 74 65 20 73 65 67 6d 65 6e 74 00 53 state segment.S
10a4f4: 65 67 6d 65 6e 74 20 6e 6f 74 20 70 72 65 73 65 egment not prese
10a504: 6e 74 00 53 74 61 63 6b 20 66 61 75 6c 74 00 47 nt.Stack fault.G
10a514: 65 6e 65 72 61 6c 20 70 72 6f 74 65 63 74 69 6f eneral protectio
10a524: 6e 20 66 61 75 6c 74 00 50 61 67 65 20 66 61 75 n fault.Page fau
10a534: 6c 74 00 4d 61 74 68 20 66 61 75 6c 74 00 41 6c lt.Math fault.Al
10a544: 69 67 6e 6d 65 6e 74 20 63 68 65 63 6b 00 4d 61 ignment check.Ma
10a554: 63 68 69 6e 65 20 63 68 65 63 6b 00 53 49 4d 44 chine check.SIMD
10a564: 20 66 6c 6f 61 74 69 6e 67 2d 70 6f 69 6e 74 20 floating-point
10a574: 65 78 63 65 70 74 69 6f 6e 00 00 00 25 23 09 09 exception...%#..
10a584: 09 09 53 6f 6d 65 74 68 69 6e 67 20 77 65 6e 74 ..Something went
10a594: 20 74 65 72 72 69 62 6c 79 20 77 72 6f 6e 67 20 terribly wrong
10a5a4: 3a 28 0a 0a 00 00 00 00 54 68 65 72 65 20 77 61 :(......There wa
10a5b4: 73 20 61 6e 20 75 6e 68 61 6e 64 6c 65 64 20 65 s an unhandled e
10a5c4: 78 63 65 70 74 69 6f 6e 3a 20 00 00 0a 54 6f 20 xception: ...To
10a5d4: 70 72 6f 74 65 63 74 20 79 6f 75 72 20 63 6f 6d protect your com
10a5e4: 70 75 74 65 72 2c 20 69 74 20 68 61 64 20 74 6f puter, it had to
10a5f4: 20 62 65 20 68 61 6c 74 65 64 2e 0a 0a 00 00 00 be halted......
10a604: 48 65 72 65 2c 20 74 68 69 73 20 6d 69 67 68 74 Here, this might
10a614: 20 68 65 6c 70 20 66 69 6e 64 20 74 68 65 20 70 help find the p
10a624: 72 6f 62 6c 65 6d 3a 0a 00 00 00 00 25 23 43 50 roblem:.....%#CP
10a634: 55 5f 52 45 53 45 52 56 45 44 5f 50 41 47 45 5f U_RESERVED_PAGE_
10a644: 45 4e 54 52 59 5f 4f 56 45 52 57 52 49 54 54 45 ENTRY_OVERWRITTE
10a654: 4e 3b 20 00 1e 4a 10 00 4f 4a 10 00 25 4a 10 00 N; ..J..OJ..%J..
10a664: 2c 4a 10 00 33 4a 10 00 3a 4a 10 00 41 4a 10 00 ,J..3J..:J..AJ..
10a674: 48 4a 10 00 79 4a 10 00 aa 4a 10 00 80 4a 10 00 HJ..yJ...J...J..
10a684: 87 4a 10 00 8e 4a 10 00 95 4a 10 00 9c 4a 10 00 .J...J...J...J..
10a694: a3 4a 10 00 f9 4a 10 00 d0 4a 10 00 f3 4a 10 00 .J...J...J...J..
10a6a4: d7 4a 10 00 f9 4a 10 00 de 4a 10 00 e5 4a 10 00 .J...J...J...J..
10a6b4: ec 4a 10 00 52 65 61 64 20 52 54 43 20 74 69 6d .J..Read RTC tim
10a6c4: 65 3a 20 25 23 25 75 2f 25 75 2f 25 75 20 25 75 e: %#%u/%u/%u %u
10a6d4: 3a 25 75 3a 25 75 2e 25 75 0a 00 00 46 6c 6f 70 :%u:%u.%u...Flop
10a6e4: 70 79 20 64 72 69 76 65 72 20 69 73 20 63 75 72 py driver is cur
10a6f4: 72 65 6e 74 6c 79 20 64 69 73 61 62 6c 65 64 2e rently disabled.
10a704: 0a 00 44 72 69 76 65 72 73 00 46 6c 6f 70 70 79 ..Drivers.Floppy
10a714: 00 49 72 71 20 74 69 6d 65 6f 75 74 20 5b 25 75 .Irq timeout [%u
10a724: 6d 73 5d 20 21 0a 00 57 61 69 74 69 6e 67 20 66 ms] !..Waiting f
10a734: 6f 72 20 6d 6f 74 6f 72 2e 2e 2e 0a 00 52 65 63 or motor.....Rec
10a744: 61 6c 69 62 72 61 74 69 6e 67 3a 20 61 74 74 65 alibrating: atte
10a754: 6d 70 74 20 25 75 2f 31 30 0a 00 52 65 73 65 74 mpt %u/10..Reset
10a764: 74 69 6e 67 2e 2e 2e 0a 00 66 64 30 00 66 64 31 ting.....fd0.fd1
10a774: 00 53 65 65 6b 69 6e 67 3a 20 61 74 74 65 6d 70 .Seeking: attemp
10a784: 74 20 25 75 2f 31 30 0a 00 6e 6f 6e 65 00 35 2e t %u/10..none.5.
10a794: 32 35 22 20 33 36 30 6b 00 35 2e 32 35 22 20 31 25" 360k.5.25" 1
10a7a4: 2e 32 4d 00 33 2e 35 22 20 37 32 30 6b 00 33 2e .2M.3.5" 720k.3.
10a7b4: 35 22 20 31 2e 34 34 4d 00 33 2e 35 22 20 32 2e 5" 1.44M.3.5" 2.
10a7c4: 38 38 4d 20 41 4d 49 20 42 49 4f 53 00 33 2e 35 88M AMI BIOS.3.5
10a7d4: 22 20 32 2e 38 38 4d 00 4e 6f 20 73 75 70 70 6f " 2.88M.No suppo
10a7e4: 72 74 65 64 20 66 6c 6f 70 70 79 20 64 72 69 76 rted floppy driv
10a7f4: 65 73 20 66 6f 75 6e 64 2e 00 00 00 44 65 74 65 es found....Dete
10a804: 63 74 65 64 20 66 6c 6f 70 70 79 20 64 72 69 76 cted floppy driv
10a814: 65 73 3a 20 25 23 66 64 30 3d 25 23 25 73 20 25 es: %#fd0=%#%s %
10a824: 23 66 64 31 3d 25 23 25 73 0a 00 00 52 65 61 64 #fd1=%#%s...Read
10a834: 2f 77 72 69 74 65 20 6f 70 65 72 61 74 69 6f 6e /write operation
10a844: 3a 20 61 74 74 65 6d 70 74 20 25 75 2f 31 30 0a : attempt %u/10.
10a854: 00 00 00 00 45 72 72 6f 72 3a 20 64 69 73 6b 20 ....Error: disk
10a864: 69 73 20 77 72 69 74 65 20 70 72 6f 74 65 63 74 is write protect
10a874: 65 64 21 0a 00 00 00 00 43 6f 6e 76 65 72 74 65 ed!.....Converte
10a884: 64 20 4c 42 41 3d 25 75 20 74 6f 20 43 79 6c 3d d LBA=%u to Cyl=
10a894: 25 75 20 48 65 61 64 3d 25 75 20 53 65 63 74 3d %u Head=%u Sect=
10a8a4: 25 75 0a 00 49 6e 73 74 61 6c 6c 65 64 20 47 44 %u..Installed GD
10a8b4: 54 0a 00 48 41 4c 00 49 6e 73 74 61 6c 6c 65 64 T..HAL.Installed
10a8c4: 20 49 44 54 0a 00 49 6e 73 74 61 6c 6c 65 64 20 IDT..Installed
10a8d4: 49 53 52 73 0a 00 49 6e 73 74 61 6c 6c 65 64 20 ISRs..Installed
10a8e4: 49 52 51 73 0a 00 25 23 49 6e 74 65 72 72 75 70 IRQs..%#Interrup
10a8f4: 74 73 20 61 72 65 20 73 74 61 72 74 65 64 2e 2e ts are started..
10a904: 2e 0a 00 25 23 5b 32 2f 32 5d 0a 00 49 6e 73 74 ...%#[2/2]..Inst
10a914: 61 6c 6c 69 6e 67 20 6b 65 79 62 6f 61 72 64 2e alling keyboard.
10a924: 2e 2e 20 25 23 5b 31 2f 32 5d 20 00 4e 6f 20 62 .. %#[1/2] .No b
10a934: 6f 6f 74 20 6d 6f 64 75 6c 65 73 20 66 6f 75 6e oot modules foun
10a944: 64 21 00 49 6e 69 74 72 64 00 46 6f 75 6e 64 20 d!.Initrd.Found
10a954: 69 6e 69 74 72 64 20 69 6d 61 67 65 20 61 74 20 initrd image at
10a964: 30 78 25 78 2e 0a 00 69 6e 69 74 72 64 00 00 00 0x%x...initrd...
10a974: 46 6f 75 6e 64 20 6d 6f 64 75 6c 65 20 40 20 30 Found module @ 0
10a984: 78 25 78 2c 20 62 75 74 20 6e 6f 74 20 69 6e 69 x%x, but not ini
10a994: 74 72 64 20 69 6d 61 67 65 2e 0a 00 7b 70 10 00 trd image...{p..
10a9a4: f4 6f 10 00 db 70 10 00 7d 70 10 00 fb 6f 10 00 .o...p..}p...o..
10a9b4: ff 6f 10 00 7d 70 10 00 7d 70 10 00 03 70 10 00 .o..}p..}p...p..
10a9c4: 7d 70 10 00 7d 70 10 00 7d 70 10 00 7d 70 10 00 }p..}p..}p..}p..
10a9d4: 7d 70 10 00 7d 70 10 00 7d 70 10 00 07 70 10 00 }p..}p..}p...p..
10a9e4: 0b 70 10 00 7d 70 10 00 0f 70 10 00 7d 70 10 00 .p..}p...p..}p..
10a9f4: 7d 70 10 00 7d 70 10 00 7d 70 10 00 13 70 10 00 }p..}p..}p...p..
10aa04: 7d 70 10 00 7d 70 10 00 17 70 10 00 7d 70 10 00 }p..}p...p..}p..
10aa14: 7d 70 10 00 7d 70 10 00 7d 70 10 00 1b 70 10 00 }p..}p..}p...p..
10aa24: 7d 70 10 00 1f 70 10 00 7d 70 10 00 23 70 10 00 }p...p..}p..#p..
10aa34: 7d 70 10 00 7d 70 10 00 7d 70 10 00 27 70 10 00 }p..}p..}p..'p..
10aa44: 7d 70 10 00 2b 70 10 00 2f 70 10 00 7d 70 10 00 }p..+p../p..}p..
10aa54: 7d 70 10 00 7d 70 10 00 7d 70 10 00 33 70 10 00 }p..}p..}p..3p..
10aa64: 7d 70 10 00 7d 70 10 00 7d 70 10 00 7d 70 10 00 }p..}p..}p..}p..
10aa74: 7d 70 10 00 7d 70 10 00 7d 70 10 00 37 70 10 00 }p..}p..}p..7p..
10aa84: 7d 70 10 00 3b 70 10 00 7d 70 10 00 7d 70 10 00 }p..;p..}p..}p..
10aa94: 3f 70 10 00 7d 70 10 00 7d 70 10 00 43 70 10 00 ?p..}p..}p..Cp..
10aaa4: 7d 70 10 00 7d 70 10 00 7d 70 10 00 7d 70 10 00 }p..}p..}p..}p..
10aab4: 7d 70 10 00 7d 70 10 00 7d 70 10 00 7d 70 10 00 }p..}p..}p..}p..
10aac4: 7d 70 10 00 47 70 10 00 7d 70 10 00 7d 70 10 00 }p..Gp..}p..}p..
10aad4: 7d 70 10 00 4b 70 10 00 7d 70 10 00 7d 70 10 00 }p..Kp..}p..}p..
10aae4: 7d 70 10 00 7d 70 10 00 7d 70 10 00 7d 70 10 00 }p..}p..}p..}p..
10aaf4: 7d 70 10 00 7d 70 10 00 7d 70 10 00 7d 70 10 00 }p..}p..}p..}p..
10ab04: 4f 70 10 00 7d 70 10 00 53 70 10 00 57 70 10 00 Op..}p..Sp..Wp..
10ab14: 7d 70 10 00 7d 70 10 00 7d 70 10 00 5b 70 10 00 }p..}p..}p..[p..
10ab24: 5f 70 10 00 63 70 10 00 7d 70 10 00 67 70 10 00 _p..cp..}p..gp..
10ab34: 6b 70 10 00 7d 70 10 00 7d 70 10 00 7d 70 10 00 kp..}p..}p..}p..
10ab44: 7d 70 10 00 6f 70 10 00 7d 70 10 00 73 70 10 00 }p..op..}p..sp..
10ab54: 77 70 10 00 00 00 00 00 00 00 00 00 wp..........
0010ab60 <KeyboardMapShift>:
...
10ab6c: 00 09 7e 00 00 00 00 00 00 51 21 00 00 00 5a 53 ..~......Q!...ZS
10ab7c: 41 57 40 00 00 43 58 44 45 24 23 00 00 20 56 46 AW@..CXDE$#.. VF
10ab8c: 54 52 25 00 00 4e 42 48 47 59 5e 00 00 00 4d 4a TR%..NBHGY^...MJ
10ab9c: 55 26 2a 00 00 3c 4b 49 4f 29 28 00 00 3e 3f 4c U&*..<KIO)(..>?L
10abac: 3a 50 5f 00 00 00 22 00 7b 2b 00 00 00 00 0a 7d :P_...".{+.....}
10abbc: 00 7c 00 00 00 00 00 00 00 00 08 00 00 31 2f 34 .|...........1/4
10abcc: 37 0a 00 00 30 2e 32 35 36 38 00 00 00 2b 33 2d 7...0.2568...+3-
10abdc: 2a 39 00 00 *9..
0010abe0 <KeyboardMap>:
...
10abec: 00 09 60 00 00 00 00 00 00 71 31 00 00 00 7a 73 ..`......q1...zs
10abfc: 61 77 32 00 00 63 78 64 65 34 33 00 00 20 76 66 aw2..cxde43.. vf
10ac0c: 74 72 35 00 00 6e 62 68 67 79 36 00 00 00 6d 6a tr5..nbhgy6...mj
10ac1c: 75 37 38 00 00 2c 6b 69 6f 30 39 00 00 2e 2f 6c u78..,kio09.../l
10ac2c: 3b 70 2d 00 00 00 27 00 5b 3d 00 00 00 00 0a 5d ;p-...'.[=.....]
10ac3c: 00 5c 00 00 00 00 00 00 00 00 08 00 00 31 2f 34 .\...........1/4
10ac4c: 37 0a 00 00 30 2e 32 35 36 38 00 00 00 2b 33 2d 7...0.2568...+3-
10ac5c: 2a 39 00 00 9d 74 10 00 b5 74 10 00 a9 74 10 00 *9...t...t...t..
10ac6c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ac7c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ac8c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ac9c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10acac: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10acbc: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10accc: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10acdc: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10acec: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10acfc: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ad0c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ad1c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ad2c: b5 74 10 00 b5 74 10 00 47 74 10 00 b5 74 10 00 .t...t..Gt...t..
10ad3c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ad4c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ad5c: b5 74 10 00 e7 73 10 00 1c 74 10 00 b5 74 10 00 .t...s...t...t..
10ad6c: b5 74 10 00 b5 74 10 00 b5 74 10 00 1c 74 10 00 .t...t...t...t..
10ad7c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ad8c: b5 74 10 00 b5 74 10 00 b5 74 10 00 b5 74 10 00 .t...t...t...t..
10ad9c: b5 74 10 00 02 74 10 00 b5 74 10 00 72 74 10 00 .t...t...t..rt..
10adac: b5 74 10 00 b5 74 10 00 47 74 10 00 64 72 69 76 .t...t..Gt..driv
10adbc: 65 72 73 00 68 61 6c 00 66 61 74 00 73 79 73 74 ers.hal.fat.syst
10adcc: 65 6d 00 76 66 73 00 63 6f 6e 73 6f 6c 65 00 00 em.vfs.console..
10addc: 41 6c 6c 20 72 65 61 64 79 2e 20 53 74 61 72 74 All ready. Start
10adec: 69 6e 67 20 63 6f 6e 73 6f 6c 65 2e 2e 2e 0a 0a ing console.....
10adfc: 00 43 6f 6e 73 6f 6c 65 00 00 00 00 25 23 53 74 .Console....%#St
10ae0c: 61 72 74 65 64 20 70 68 79 73 69 63 61 6c 20 6d arted physical m
10ae1c: 65 6d 6f 72 79 20 6d 61 6e 61 67 65 72 20 6f 6b emory manager ok
10ae2c: 21 2c 20 66 6f 75 6e 64 20 25 75 6b 62 0a 00 4d !, found %ukb..M
10ae3c: 65 6d 00 6e 6f 74 20 00 25 23 41 6c 6c 6f 63 61 em.not .%#Alloca
10ae4c: 74 65 64 20 25 75 20 62 79 74 65 73 20 28 25 73 ted %u bytes (%s
10ae5c: 70 61 67 65 20 61 6c 69 67 6e 65 64 29 20 61 74 page aligned) at
10ae6c: 20 65 6e 64 20 6f 66 20 6b 65 72 6e 65 6c 20 28 end of kernel (
10ae7c: 30 78 25 78 29 2e 0a 00 25 23 41 6c 6c 6f 63 61 0x%x)...%#Alloca
10ae8c: 74 65 64 20 25 75 20 62 79 74 65 73 20 28 25 73 ted %u bytes (%s
10ae9c: 70 61 67 65 20 61 6c 69 67 6e 65 64 29 20 61 74 page aligned) at
10aeac: 20 61 64 64 72 65 73 73 20 30 78 25 78 20 28 70 address 0x%x (p
10aebc: 68 79 73 3d 25 78 29 2e 0a 00 00 00 25 23 41 6c hys=%x).....%#Al
10aecc: 6c 6f 63 61 74 65 64 20 25 75 20 62 79 74 65 73 located %u bytes
10aedc: 20 28 25 73 70 61 67 65 20 61 6c 69 67 6e 65 64 (%spage aligned
10aeec: 29 20 61 74 20 61 64 64 72 65 73 73 20 30 78 25 ) at address 0x%
10aefc: 78 2e 0a 00 25 23 54 72 69 65 64 20 74 6f 20 66 x...%#Tried to f
10af0c: 72 65 65 20 61 74 20 61 64 64 72 65 73 73 20 30 ree at address 0
10af1c: 78 25 78 20 77 68 65 6e 20 6d 65 6d 6f 72 79 20 x%x when memory
10af2c: 6d 61 6e 61 67 65 72 20 69 73 20 75 6e 69 6e 69 manager is unini
10af3c: 74 69 61 6c 69 7a 65 64 2e 0a 00 00 25 23 4d 69 tialized....%#Mi
10af4c: 73 73 69 6e 67 20 6d 65 6d 6f 72 79 20 69 6e 66 ssing memory inf
10af5c: 6f 20 66 72 6f 6d 20 62 6f 6f 74 6c 6f 61 64 65 o from bootloade
10af6c: 72 2e 20 52 65 61 64 69 6e 67 20 66 72 6f 6d 20 r. Reading from
10af7c: 43 4d 4f 53 3a 20 25 75 6b 62 0a 00 25 23 4d 69 CMOS: %ukb..%#Mi
10af8c: 73 73 69 6e 67 20 25 23 6d 65 6d 6f 72 79 20 6d ssing %#memory m
10af9c: 61 70 25 23 20 69 6e 66 6f 20 66 72 6f 6d 20 62 ap%# info from b
10afac: 6f 6f 74 6c 6f 61 64 65 72 2e 0a 00 49 6e 69 74 ootloader...Init
10afbc: 69 61 6c 69 7a 65 64 20 74 65 6d 70 6f 72 61 72 ialized temporar
10afcc: 79 20 6d 65 6d 6f 72 79 20 6d 61 6e 61 67 65 72 y memory manager
10afdc: 2c 20 61 6c 6c 6f 63 61 74 69 6e 67 20 66 72 6f , allocating fro
10afec: 6d 20 25 23 30 78 25 78 2e 0a 00 44 6f 6e 65 20 m %#0x%x...Done
10affc: 69 6e 69 74 69 61 6c 69 7a 69 6e 67 20 6d 65 6d initializing mem
10b00c: 6f 72 79 21 0a 00 52 65 62 6f 6f 74 69 6e 67 20 ory!..Rebooting
10b01c: 73 79 73 74 65 6d 2e 2e 2e 0a 00 53 79 73 74 65 system.....Syste
10b02c: 6d 00 m.
0010b02e <MonthLen>:
10b02e: 00 00 1f 00 3b 00 5a 00 78 00 97 00 b5 00 d4 00 ....;.Z.x.......
10b03e: f3 00 11 01 30 01 4e 01 6d 01 25 23 56 66 73 20 ....0.N.m.%#Vfs
10b04e: 6e 6f 77 20 69 6e 20 62 75 73 69 6e 65 73 73 2e now in business.
10b05e: 0a 00 56 46 53 00 49 6e 73 74 61 6c 6c 65 64 20 ..VFS.Installed
10b06e: 66 69 6c 65 20 73 79 73 74 65 6d 20 25 23 25 73 file system %#%s
10b07e: 25 23 20 28 69 64 3d 25 75 29 2e 0a 00 00 25 23 %# (id=%u)....%#
10b08e: 46 61 69 6c 65 64 20 74 6f 20 6d 6f 75 6e 74 20 Failed to mount
10b09e: 64 65 76 69 63 65 20 25 73 3a 20 63 6f 75 6c 64 device %s: could
10b0ae: 20 6e 6f 74 20 66 69 6e 64 20 61 20 66 69 6c 65 not find a file
10b0be: 20 73 79 73 74 65 6d 2e 0a 00 25 23 46 61 69 6c system...%#Fail
10b0ce: 65 64 20 74 6f 20 6d 6f 75 6e 74 20 64 65 76 69 ed to mount devi
10b0de: 63 65 20 25 73 3a 20 62 61 64 20 6e 61 6d 65 2e ce %s: bad name.
10b0ee: 0a 00 4d 6f 75 6e 74 65 64 20 64 65 76 69 63 65 ..Mounted device
10b0fe: 20 25 23 25 73 25 23 20 75 73 69 6e 67 20 74 68 %#%s%# using th
10b10e: 65 20 25 23 25 73 25 23 20 66 69 6c 65 20 73 79 e %#%s%# file sy
10b11e: 73 74 65 6d 2e 0a 00 00 00 00 stem......