40c050:	d2 74 00 70          	shlb   %cl,0x70(%eax,%eax,1)
40c054:	6f                   	outsl  %ds:(%esi),(%dx)
40c055:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40c05a:	02 7b de             	add    -0x22(%ebx),%bh
40c05d:	00 00                	add    %al,(%eax)
40c05f:	04 17                	add    $0x17,%al
40c061:	6f                   	outsl  %ds:(%esi),(%dx)
40c062:	52                   	push   %edx
40c063:	00 00                	add    %al,(%eax)
40c065:	0a 00                	or     (%eax),%al
40c067:	02 7b de             	add    -0x22(%ebx),%bh
40c06a:	00 00                	add    %al,(%eax)
40c06c:	04 72                	add    $0x72,%al
40c06e:	4e                   	dec    %esi
40c06f:	73 00                	jae    0x40c071
40c071:	70 22                	jo     0x40c095
40c073:	00 00                	add    %al,(%eax)
40c075:	60                   	pusha
40c076:	41                   	inc    %ecx
40c077:	73 53                	jae    0x40c0cc
40c079:	00 00                	add    %al,(%eax)
40c07b:	0a 6f 54             	or     0x54(%edi),%ch
40c07e:	00 00                	add    %al,(%eax)
40c080:	0a 00                	or     (%eax),%al
40c082:	02 7b de             	add    -0x22(%ebx),%bh
40c085:	00 00                	add    %al,(%eax)
40c087:	04 20                	add    $0x20,%al
40c089:	ef                   	out    %eax,(%dx)
40c08a:	01 00                	add    %eax,(%eax)
40c08c:	00 20                	add    %ah,(%eax)
40c08e:	cb                   	lret
40c08f:	01 00                	add    %eax,(%eax)
40c091:	00 73 47             	add    %dh,0x47(%ebx)
40c094:	00 00                	add    %al,(%eax)
40c096:	0a 6f 48             	or     0x48(%edi),%ch
40c099:	00 00                	add    %al,(%eax)
40c09b:	0a 00                	or     (%eax),%al
40c09d:	02 7b de             	add    -0x22(%ebx),%bh
40c0a0:	00 00                	add    %al,(%eax)
40c0a2:	04 72                	add    $0x72,%al
40c0a4:	8c 9d 00 70 6f 4b    	mov    %ds,0x4b6f7000(%ebp)
40c0aa:	00 00                	add    %al,(%eax)
40c0ac:	0a 00                	or     (%eax),%al
40c0ae:	02 7b de             	add    -0x22(%ebx),%bh
40c0b1:	00 00                	add    %al,(%eax)
40c0b3:	04 1f                	add    $0x1f,%al
40c0b5:	54                   	push   %esp
40c0b6:	1f                   	pop    %ds
40c0b7:	15 73 43 00 00       	adc    $0x4373,%eax
40c0bc:	0a 6f 4c             	or     0x4c(%edi),%ch
40c0bf:	00 00                	add    %al,(%eax)
40c0c1:	0a 00                	or     (%eax),%al
40c0c3:	02 7b de             	add    -0x22(%ebx),%bh
40c0c6:	00 00                	add    %al,(%eax)
40c0c8:	04 1f                	add    $0x1f,%al
40c0ca:	14 6f                	adc    $0x6f,%al
40c0cc:	55                   	push   %ebp
40c0cd:	00 00                	add    %al,(%eax)
40c0cf:	0a 00                	or     (%eax),%al
40c0d1:	02 7b de             	add    -0x22(%ebx),%bh
40c0d4:	00 00                	add    %al,(%eax)
40c0d6:	04 72                	add    $0x72,%al
40c0d8:	d2 74 00 70          	shlb   %cl,0x70(%eax,%eax,1)
40c0dc:	6f                   	outsl  %ds:(%esi),(%dx)
40c0dd:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40c0e2:	02 7b df             	add    -0x21(%ebx),%bh
40c0e5:	00 00                	add    %al,(%eax)
40c0e7:	04 17                	add    $0x17,%al
40c0e9:	6f                   	outsl  %ds:(%esi),(%dx)
40c0ea:	52                   	push   %edx
40c0eb:	00 00                	add    %al,(%eax)
40c0ed:	0a 00                	or     (%eax),%al
40c0ef:	02 7b df             	add    -0x21(%ebx),%bh
40c0f2:	00 00                	add    %al,(%eax)
40c0f4:	04 72                	add    $0x72,%al
40c0f6:	4e                   	dec    %esi
40c0f7:	73 00                	jae    0x40c0f9
40c0f9:	70 22                	jo     0x40c11d
40c0fb:	00 00                	add    %al,(%eax)
40c0fd:	60                   	pusha
40c0fe:	41                   	inc    %ecx
40c0ff:	73 53                	jae    0x40c154
40c101:	00 00                	add    %al,(%eax)
40c103:	0a 6f 54             	or     0x54(%edi),%ch
40c106:	00 00                	add    %al,(%eax)
40c108:	0a 00                	or     (%eax),%al
40c10a:	02 7b df             	add    -0x21(%ebx),%bh
40c10d:	00 00                	add    %al,(%eax)
40c10f:	04 1f                	add    $0x1f,%al
40c111:	78 20                	js     0x40c133
40c113:	8a 01                	mov    (%ecx),%al
40c115:	00 00                	add    %al,(%eax)
40c117:	73 47                	jae    0x40c160
40c119:	00 00                	add    %al,(%eax)
40c11b:	0a 6f 48             	or     0x48(%edi),%ch
40c11e:	00 00                	add    %al,(%eax)
40c120:	0a 00                	or     (%eax),%al
40c122:	02 7b df             	add    -0x21(%ebx),%bh
40c125:	00 00                	add    %al,(%eax)
40c127:	04 72                	add    $0x72,%al
40c129:	d0 9d 00 70 6f 4b    	rcrb   $1,0x4b6f7000(%ebp)
40c12f:	00 00                	add    %al,(%eax)
40c131:	0a 00                	or     (%eax),%al
40c133:	02 7b df             	add    -0x21(%ebx),%bh
40c136:	00 00                	add    %al,(%eax)
40c138:	04 1f                	add    $0x1f,%al
40c13a:	13 1f                	adc    (%edi),%ebx
40c13c:	15 73 43 00 00       	adc    $0x4373,%eax
40c141:	0a 6f 4c             	or     0x4c(%edi),%ch
40c144:	00 00                	add    %al,(%eax)
40c146:	0a 00                	or     (%eax),%al
40c148:	02 7b df             	add    -0x21(%ebx),%bh
40c14b:	00 00                	add    %al,(%eax)
40c14d:	04 1f                	add    $0x1f,%al
40c14f:	15 6f 55 00 00       	adc    $0x556f,%eax
40c154:	0a 00                	or     (%eax),%al
40c156:	02 7b df             	add    -0x21(%ebx),%bh
40c159:	00 00                	add    %al,(%eax)
40c15b:	04 72                	add    $0x72,%al
40c15d:	94                   	xchg   %eax,%esp
40c15e:	73 00                	jae    0x40c160
40c160:	70 6f                	jo     0x40c1d1
40c162:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40c167:	02 7b e0             	add    -0x20(%ebx),%bh
40c16a:	00 00                	add    %al,(%eax)
40c16c:	04 17                	add    $0x17,%al
40c16e:	6f                   	outsl  %ds:(%esi),(%dx)
40c16f:	52                   	push   %edx
40c170:	00 00                	add    %al,(%eax)
40c172:	0a 00                	or     (%eax),%al
40c174:	02 7b e0             	add    -0x20(%ebx),%bh
40c177:	00 00                	add    %al,(%eax)
40c179:	04 72                	add    $0x72,%al
40c17b:	4e                   	dec    %esi
40c17c:	73 00                	jae    0x40c17e
40c17e:	70 22                	jo     0x40c1a2
40c180:	00 00                	add    %al,(%eax)
40c182:	60                   	pusha
40c183:	41                   	inc    %ecx
40c184:	73 53                	jae    0x40c1d9
40c186:	00 00                	add    %al,(%eax)
40c188:	0a 6f 54             	or     0x54(%edi),%ch
40c18b:	00 00                	add    %al,(%eax)
40c18d:	0a 00                	or     (%eax),%al
40c18f:	02 7b e0             	add    -0x20(%ebx),%bh
40c192:	00 00                	add    %al,(%eax)
40c194:	04 1f                	add    $0x1f,%al
40c196:	78 20                	js     0x40c1b8
40c198:	9f                   	lahf
40c199:	01 00                	add    %eax,(%eax)
40c19b:	00 73 47             	add    %dh,0x47(%ebx)
40c19e:	00 00                	add    %al,(%eax)
40c1a0:	0a 6f 48             	or     0x48(%edi),%ch
40c1a3:	00 00                	add    %al,(%eax)
40c1a5:	0a 00                	or     (%eax),%al
40c1a7:	02 7b e0             	add    -0x20(%ebx),%bh
40c1aa:	00 00                	add    %al,(%eax)
40c1ac:	04 72                	add    $0x72,%al
40c1ae:	14 9e                	adc    $0x9e,%al
40c1b0:	00 70 6f             	add    %dh,0x6f(%eax)
40c1b3:	4b                   	dec    %ebx
40c1b4:	00 00                	add    %al,(%eax)
40c1b6:	0a 00                	or     (%eax),%al
40c1b8:	02 7b e0             	add    -0x20(%ebx),%bh
40c1bb:	00 00                	add    %al,(%eax)
40c1bd:	04 1f                	add    $0x1f,%al
40c1bf:	13 1f                	adc    (%edi),%ebx
40c1c1:	15 73 43 00 00       	adc    $0x4373,%eax
40c1c6:	0a 6f 4c             	or     0x4c(%edi),%ch
40c1c9:	00 00                	add    %al,(%eax)
40c1cb:	0a 00                	or     (%eax),%al
40c1cd:	02 7b e0             	add    -0x20(%ebx),%bh
40c1d0:	00 00                	add    %al,(%eax)
40c1d2:	04 1f                	add    $0x1f,%al
40c1d4:	16                   	push   %ss
40c1d5:	6f                   	outsl  %ds:(%esi),(%dx)
40c1d6:	55                   	push   %ebp
40c1d7:	00 00                	add    %al,(%eax)
40c1d9:	0a 00                	or     (%eax),%al
40c1db:	02 7b e0             	add    -0x20(%ebx),%bh
40c1de:	00 00                	add    %al,(%eax)
40c1e0:	04 72                	add    $0x72,%al
40c1e2:	94                   	xchg   %eax,%esp
40c1e3:	73 00                	jae    0x40c1e5
40c1e5:	70 6f                	jo     0x40c256
40c1e7:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40c1ec:	02 7b e1             	add    -0x1f(%ebx),%bh
40c1ef:	00 00                	add    %al,(%eax)
40c1f1:	04 17                	add    $0x17,%al
40c1f3:	6f                   	outsl  %ds:(%esi),(%dx)
40c1f4:	52                   	push   %edx
40c1f5:	00 00                	add    %al,(%eax)
40c1f7:	0a 00                	or     (%eax),%al
40c1f9:	02 7b e1             	add    -0x1f(%ebx),%bh
40c1fc:	00 00                	add    %al,(%eax)
40c1fe:	04 72                	add    $0x72,%al
40c200:	4e                   	dec    %esi
40c201:	73 00                	jae    0x40c203
40c203:	70 22                	jo     0x40c227
40c205:	00 00                	add    %al,(%eax)
40c207:	60                   	pusha
40c208:	41                   	inc    %ecx
40c209:	73 53                	jae    0x40c25e
40c20b:	00 00                	add    %al,(%eax)
40c20d:	0a 6f 54             	or     0x54(%edi),%ch
40c210:	00 00                	add    %al,(%eax)
40c212:	0a 00                	or     (%eax),%al
40c214:	02 7b e1             	add    -0x1f(%ebx),%bh
40c217:	00 00                	add    %al,(%eax)
40c219:	04 1f                	add    $0x1f,%al
40c21b:	78 20                	js     0x40c23d
40c21d:	b4 01                	mov    $0x1,%ah
40c21f:	00 00                	add    %al,(%eax)
40c221:	73 47                	jae    0x40c26a
40c223:	00 00                	add    %al,(%eax)
40c225:	0a 6f 48             	or     0x48(%edi),%ch
40c228:	00 00                	add    %al,(%eax)
40c22a:	0a 00                	or     (%eax),%al
40c22c:	02 7b e1             	add    -0x1f(%ebx),%bh
40c22f:	00 00                	add    %al,(%eax)
40c231:	04 72                	add    $0x72,%al
40c233:	5a                   	pop    %edx
40c234:	9e                   	sahf
40c235:	00 70 6f             	add    %dh,0x6f(%eax)
40c238:	4b                   	dec    %ebx
40c239:	00 00                	add    %al,(%eax)
40c23b:	0a 00                	or     (%eax),%al
40c23d:	02 7b e1             	add    -0x1f(%ebx),%bh
40c240:	00 00                	add    %al,(%eax)
40c242:	04 1f                	add    $0x1f,%al
40c244:	13 1f                	adc    (%edi),%ebx
40c246:	15 73 43 00 00       	adc    $0x4373,%eax
40c24b:	0a 6f 4c             	or     0x4c(%edi),%ch
40c24e:	00 00                	add    %al,(%eax)
40c250:	0a 00                	or     (%eax),%al
40c252:	02 7b e1             	add    -0x1f(%ebx),%bh
40c255:	00 00                	add    %al,(%eax)
40c257:	04 1f                	add    $0x1f,%al
40c259:	17                   	pop    %ss
40c25a:	6f                   	outsl  %ds:(%esi),(%dx)
40c25b:	55                   	push   %ebp
40c25c:	00 00                	add    %al,(%eax)
40c25e:	0a 00                	or     (%eax),%al
40c260:	02 7b e1             	add    -0x1f(%ebx),%bh
40c263:	00 00                	add    %al,(%eax)
40c265:	04 72                	add    $0x72,%al
40c267:	94                   	xchg   %eax,%esp
40c268:	73 00                	jae    0x40c26a
40c26a:	70 6f                	jo     0x40c2db
40c26c:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40c271:	02 7b e2             	add    -0x1e(%ebx),%bh
40c274:	00 00                	add    %al,(%eax)
40c276:	04 17                	add    $0x17,%al
40c278:	6f                   	outsl  %ds:(%esi),(%dx)
40c279:	52                   	push   %edx
40c27a:	00 00                	add    %al,(%eax)
40c27c:	0a 00                	or     (%eax),%al
40c27e:	02 7b e2             	add    -0x1e(%ebx),%bh
40c281:	00 00                	add    %al,(%eax)
40c283:	04 72                	add    $0x72,%al
40c285:	4e                   	dec    %esi
40c286:	73 00                	jae    0x40c288
40c288:	70 22                	jo     0x40c2ac
40c28a:	00 00                	add    %al,(%eax)
40c28c:	60                   	pusha
40c28d:	41                   	inc    %ecx
40c28e:	73 53                	jae    0x40c2e3
40c290:	00 00                	add    %al,(%eax)
40c292:	0a 6f 54             	or     0x54(%edi),%ch
40c295:	00 00                	add    %al,(%eax)
40c297:	0a 00                	or     (%eax),%al
40c299:	02 7b e2             	add    -0x1e(%ebx),%bh
40c29c:	00 00                	add    %al,(%eax)
40c29e:	04 1f                	add    $0x1f,%al
40c2a0:	78 20                	js     0x40c2c2
40c2a2:	c9                   	leave
40c2a3:	01 00                	add    %eax,(%eax)
40c2a5:	00 73 47             	add    %dh,0x47(%ebx)
40c2a8:	00 00                	add    %al,(%eax)
40c2aa:	0a 6f 48             	or     0x48(%edi),%ch
40c2ad:	00 00                	add    %al,(%eax)
40c2af:	0a 00                	or     (%eax),%al
40c2b1:	02 7b e2             	add    -0x1e(%ebx),%bh
40c2b4:	00 00                	add    %al,(%eax)
40c2b6:	04 72                	add    $0x72,%al
40c2b8:	9e                   	sahf
40c2b9:	9e                   	sahf
40c2ba:	00 70 6f             	add    %dh,0x6f(%eax)
40c2bd:	4b                   	dec    %ebx
40c2be:	00 00                	add    %al,(%eax)
40c2c0:	0a 00                	or     (%eax),%al
40c2c2:	02 7b e2             	add    -0x1e(%ebx),%bh
40c2c5:	00 00                	add    %al,(%eax)
40c2c7:	04 1f                	add    $0x1f,%al
40c2c9:	13 1f                	adc    (%edi),%ebx
40c2cb:	15 73 43 00 00       	adc    $0x4373,%eax
40c2d0:	0a 6f 4c             	or     0x4c(%edi),%ch
40c2d3:	00 00                	add    %al,(%eax)
40c2d5:	0a 00                	or     (%eax),%al
40c2d7:	02 7b e2             	add    -0x1e(%ebx),%bh
40c2da:	00 00                	add    %al,(%eax)
40c2dc:	04 1f                	add    $0x1f,%al
40c2de:	18 6f 55             	sbb    %ch,0x55(%edi)
40c2e1:	00 00                	add    %al,(%eax)
40c2e3:	0a 00                	or     (%eax),%al
40c2e5:	02 7b e2             	add    -0x1e(%ebx),%bh
40c2e8:	00 00                	add    %al,(%eax)
40c2ea:	04 72                	add    $0x72,%al
40c2ec:	94                   	xchg   %eax,%esp
40c2ed:	73 00                	jae    0x40c2ef
40c2ef:	70 6f                	jo     0x40c360
40c2f1:	2d 00 00 0a 00       	sub    $0xa0000,%eax
40c2f6:	02 7b cc             	add    -0x34(%ebx),%bh
40c2f9:	00 00                	add    %al,(%eax)
40c2fb:	04 20                	add    $0x20,%al
40c2fd:	e6 01                	out    %al,$0x1
40c2ff:	00 00                	add    %al,(%eax)
40c301:	1f                   	pop    %ds
40c302:	0c 73                	or     $0x73,%al
40c304:	47                   	inc    %edi
40c305:	00 00                	add    %al,(%eax)
40c307:	0a 6f 48             	or     0x48(%edi),%ch
40c30a:	00 00                	add    %al,(%eax)
40c30c:	0a 00                	or     (%eax),%al
40c30e:	02 7b cc             	add    -0x34(%ebx),%bh
40c311:	00 00                	add    %al,(%eax)
40c313:	04 72                	add    $0x72,%al
40c315:	ea 9e 00 70 6f 4b 00 	ljmp   $0x4b,$0x6f70009e
40c31c:	00 0a                	add    %cl,(%edx)
40c31e:	00 02                	add    %al,(%edx)
40c320:	7b cc                	jnp    0x40c2ee
40c322:	00 00                	add    %al,(%eax)
40c324:	04 20                	add    $0x20,%al
40c326:	bb 00 00 00 20       	mov    $0x20000000,%ebx
40c32b:	38 01                	cmp    %al,(%ecx)
40c32d:	00 00                	add    %al,(%eax)
40c32f:	73 43                	jae    0x40c374
40c331:	00 00                	add    %al,(%eax)
40c333:	0a 6f 4c             	or     0x4c(%edi),%ch
40c336:	00 00                	add    %al,(%eax)
40c338:	0a 00                	or     (%eax),%al
40c33a:	02 7b cc             	add    -0x34(%ebx),%bh
40c33d:	00 00                	add    %al,(%eax)
40c33f:	04 17                	add    $0x17,%al
40c341:	6f                   	outsl  %ds:(%esi),(%dx)
40c342:	4d                   	dec    %ebp
40c343:	00 00                	add    %al,(%eax)
40c345:	0a 00                	or     (%eax),%al
40c347:	02 7b cc             	add    -0x34(%ebx),%bh
40c34a:	00 00                	add    %al,(%eax)