00401000 <.text>:
401000:	40                   	inc    %eax
401001:	30 40 00             	xor    %al,0x0(%eax)
401004:	90                   	nop
401005:	30 40 00             	xor    %al,0x0(%eax)
401008:	ac                   	lods   %ds:(%esi),%al
401041:	00 00                	add    %al,(%eax)
401043:	00 04 30             	add    %al,(%eax,%esi,1)
401046:	40                   	inc    %eax
401047:	00 70 12             	add    %dh,0x12(%eax)
40104a:	40                   	inc    %eax
40104b:	00 02                	add    %al,(%edx)
40104d:	00 00                	add    %al,(%eax)
40104f:	00 b4 40 40 00 00 00 	add    %dh,0x40(%eax,%eax,2)
401056:	00 00                	add    %al,(%eax)
401058:	d0 10                	rclb   $1,(%eax)
40105a:	40                   	inc    %eax
40105b:	00 09                	add    %cl,(%ecx)
40105d:	00 00                	add    %al,(%eax)
40105f:	00 00                	add    %al,(%eax)
401061:	75 01                	jne    0x401064
4010b7:	00 d0                	add    %dl,%al
4010b9:	1b 40 00             	sbb    0x0(%eax),%eax
4010c4:	60                   	pusha
4010c5:	1b 40 00             	sbb    0x0(%eax),%eax
4010c8:	90                   	nop
4010c9:	1e                   	push   %ds
4010ca:	40                   	inc    %eax
4010cb:	00 00                	add    %al,(%eax)
4010cd:	00 00                	add    %al,(%eax)
4010cf:	00 60 1b             	add    %ah,0x1b(%eax)
4010d2:	00 00                	add    %al,(%eax)
4010d4:	d0 1b                	rcrb   $1,(%ebx)
4010d6:	00 00                	add    %al,(%eax)
4010d8:	20 1e                	and    %bl,(%esi)
4010da:	00 00                	add    %al,(%eax)
4010dc:	30 1e                	xor    %bl,(%esi)
4010de:	00 00                	add    %al,(%eax)
4010e0:	40                   	inc    %eax
4010e1:	1e                   	push   %ds
4010e2:	00 00                	add    %al,(%eax)
4010e4:	90                   	nop
4010e5:	1e                   	push   %ds
4010e6:	00 00                	add    %al,(%eax)
4010e8:	60                   	pusha
4010e9:	1f                   	pop    %ds
4010ea:	00 00                	add    %al,(%eax)
4010ec:	e0 21                	loopne 0x40110f
4010ee:	00 00                	add    %al,(%eax)
4010f0:	10 22                	adc    %ah,(%edx)
4010fe:	00 00                	add    %al,(%eax)
401100:	25 00 73 00 5c       	and    $0x5c007300,%eax
401105:	00 52 00             	add    %dl,0x0(%edx)
401108:	25 00 30 00 31       	and    $0x31003000,%eax
40110d:	00 32                	add    %dh,(%edx)
40110f:	00 49 00             	add    %cl,0x0(%ecx)
401112:	36 00 34 00          	add    %dh,%ss:(%eax,%eax,1)
401116:	78 00                	js     0x401118
401118:	2e 00 63 00          	add    %ah,%cs:0x0(%ebx)
40111c:	6c                   	insb   (%dx),%es:(%edi)
40111d:	00 62 00             	add    %ah,0x0(%edx)
401120:	00 00                	add    %al,(%eax)
401122:	00 00                	add    %al,(%eax)
401124:	00 01                	add    %al,(%ecx)
401126:	10 00                	adc    %al,(%eax)
401128:	00 00                	add    %al,(%eax)
40112a:	00 00                	add    %al,(%eax)
40112c:	c0 00 00             	rolb   $0x0,(%eax)
40112f:	00 00                	add    %al,(%eax)
401131:	00 00                	add    %al,(%eax)
401133:	46                   	inc    %esi
401134:	03 00                	add    (%eax),%eax
40113e:	00 00                	add    %al,(%eax)
401140:	5c                   	pop    %esp
401141:	00 52 00             	add    %dl,0x0(%edx)
401144:	3f                   	aas
401145:	00 3f                	add    %bh,(%edi)
401147:	00 3f                	add    %bh,(%edi)
401149:	00 3f                	add    %bh,(%edi)
40114b:	00 3f                	add    %bh,(%edi)
40114d:	00 3f                	add    %bh,(%edi)
40114f:	00 3f                	add    %bh,(%edi)
401151:	00 3f                	add    %bh,(%edi)
401153:	00 3f                	add    %bh,(%edi)
401155:	00 3f                	add    %bh,(%edi)
401157:	00 3f                	add    %bh,(%edi)
401159:	00 3f                	add    %bh,(%edi)
40115b:	00 2e                	add    %ch,(%esi)
40115d:	00 63 00             	add    %ah,0x0(%ebx)
401160:	6c                   	insb   (%dx),%es:(%edi)
401161:	00 62 00             	add    %ah,0x0(%edx)
401164:	00 00                	add    %al,(%eax)
401166:	00 00                	add    %al,(%eax)
401168:	52                   	push   %edx
401169:	00 25 00 30 00 31    	add    %ah,0x31003000
40116f:	00 32                	add    %dh,(%edx)
401171:	00 49 00             	add    %cl,0x0(%ecx)
401174:	36 00 34 00          	add    %dh,%ss:(%eax,%eax,1)
401178:	78 00                	js     0x40117a
40117a:	2e 00 63 00          	add    %ah,%cs:0x0(%ebx)
40117e:	6c                   	insb   (%dx),%es:(%edi)
40117f:	00 62 00             	add    %ah,0x0(%edx)
401182:	00 00                	add    %al,(%eax)
401184:	53                   	push   %ebx
401185:	00 6f 00             	add    %ch,0x0(%edi)
401188:	66 00 74 00 77       	data16 add %dh,0x77(%eax,%eax,1)
40118d:	00 61 00             	add    %ah,0x0(%ecx)
401190:	72 00                	jb     0x401192
401192:	65 00 5c 00 4d       	add    %bl,%gs:0x4d(%eax,%eax,1)
401197:	00 69 00             	add    %ch,0x0(%ecx)
40119a:	63 00                	arpl   %eax,(%eax)
40119c:	72 00                	jb     0x40119e
40119e:	6f                   	outsl  %ds:(%esi),(%dx)
40119f:	00 73 00             	add    %dh,0x0(%ebx)
4011a2:	6f                   	outsl  %ds:(%esi),(%dx)
4011a3:	00 66 00             	add    %ah,0x0(%esi)
4011a6:	74 00                	je     0x4011a8
4011a8:	5c                   	pop    %esp
4011a9:	00 43 00             	add    %al,0x0(%ebx)
4011ac:	4f                   	dec    %edi
4011ad:	00 4d 00             	add    %cl,0x0(%ebp)
4011b0:	33 00                	xor    (%eax),%eax
4011b2:	00 00                	add    %al,(%eax)
4011b4:	52                   	push   %edx
4011b5:	00 45 00             	add    %al,0x0(%ebp)
4011b8:	47                   	inc    %edi
4011b9:	00 44 00 42          	add    %al,0x42(%eax,%eax,1)
4011bd:	00 56 00             	add    %dl,0x0(%esi)
4011c0:	65 00 72 00          	add    %dh,%gs:0x0(%edx)
4011c4:	73 00                	jae    0x4011c6
4011c6:	69 00 6f 00 6e 00    	imul   $0x6e006f,(%eax),%eax
4011cc:	00 00                	add    %al,(%eax)
4011ce:	00 00                	add    %al,(%eax)
4011d0:	25 00 73 00 79       	and    $0x79007300,%eax
4011d5:	00 73 00             	add    %dh,0x0(%ebx)
4011d8:	74 00                	je     0x4011da
4011da:	65 00 6d 00          	add    %ch,%gs:0x0(%ebp)
4011de:	72 00                	jb     0x4011e0
4011e0:	6f                   	outsl  %ds:(%esi),(%dx)
4011e1:	00 6f 00             	add    %ch,0x0(%edi)
4011e4:	74 00                	je     0x4011e6
4011e6:	25 00 5c 00 52       	and    $0x52005c00,%eax
4011eb:	00 65 00             	add    %ah,0x0(%ebp)
4011ee:	67 00 69 00          	add    %ch,0x0(%bx,%di)
4011f2:	73 00                	jae    0x4011f4
4011f4:	74 00                	je     0x4011f6
4011f6:	72 00                	jb     0x4011f8
4011f8:	61                   	popa
4011f9:	00 74 00 69          	add    %dh,0x69(%eax,%eax,1)
4011fd:	00 6f 00             	add    %ch,0x0(%edi)
401200:	6e                   	outsb  %ds:(%esi),(%dx)
401211:	00 00                	add    %al,(%eax)
401213:	00 76 11             	add    %dh,0x11(%esi)
401216:	21 f7                	and    %esi,%edi
401218:	00 00                	add    %al,(%eax)
40121a:	00 00                	add    %al,(%eax)
40121c:	02 00                	add    (%eax),%al
40121e:	00 00                	add    %al,(%eax)
401220:	25 00 00 00 78       	and    $0x78000000,%eax
401225:	12 00                	adc    (%eax),%al
401227:	00 78 06             	add    %bh,0x6(%eax)
40122a:	00 00                	add    %al,(%eax)
40122c:	00 00                	add    %al,(%eax)
40122e:	00 00                	add    %al,(%eax)
401230:	76 11                	jbe    0x401243
401232:	21 f7                	and    %esi,%edi
401234:	00 00                	add    %al,(%eax)
401236:	00 00                	add    %al,(%eax)
401238:	0d 00 00 00 e8       	or     $0xe8000000,%eax
40123d:	01 00                	add    %eax,(%eax)
40123f:	00 a0 12 00 00 a0    	add    %ah,-0x5fffffee(%eax)
401245:	06                   	push   %es
401246:	00 00                	add    %al,(%eax)
401248:	00 00                	add    %al,(%eax)
40124a:	00 00                	add    %al,(%eax)
40124c:	76 11                	jbe    0x40125f
40124e:	21 f7                	and    %esi,%edi
401250:	00 00                	add    %al,(%eax)
401252:	00 00                	add    %al,(%eax)
401254:	10 00                	adc    %al,(%eax)
401256:	00 00                	add    %al,(%eax)
401258:	24 00                	and    $0x0,%al
40125a:	00 00                	add    %al,(%eax)
40125c:	88 14 00             	mov    %dl,(%eax,%eax,1)
40125f:	00 88 08 00 00 00    	add    %cl,0x8(%eax)
40126d:	00 00                	add    %al,(%eax)
40126f:	00 e0                	add    %ah,%al
401271:	21 00                	and    %eax,(%eax)
401273:	00 8a 23 00 00 52    	add    %cl,0x52000023(%edx)
401279:	53                   	push   %ebx
40127a:	44                   	inc    %esp
40127b:	53                   	push   %ebx
40127c:	88 b3 5c f6 e5 39    	mov    %dh,0x39e5f65c(%ebx)
401282:	14 55                	adc    $0x55,%al
401284:	52                   	push   %edx
401285:	8a 1e                	mov    (%esi),%bl
401287:	4e                   	dec    %esi
401288:	ae                   	scas   %es:(%edi),%al
401289:	48                   	dec    %eax
40128a:	bf 2f 01 00 00       	mov    $0x12f,%edi
40128f:	00 4d 69             	add    %cl,0x69(%ebp)
401292:	67 52                	addr16 push %edx
401294:	65 67 44             	gs addr16 inc %esp
401297:	42                   	inc    %edx
401298:	2e 70 64             	jo,pn  0x4012ff
40129b:	62 00                	bound  %eax,(%eax)
40129d:	00 00                	add    %al,(%eax)
40129f:	00 47 43             	add    %al,0x43(%edi)
4012a2:	54                   	push   %esp
4012a3:	4c                   	dec    %esp
4012a4:	00 10                	add    %dl,(%eax)
4012a6:	00 00                	add    %al,(%eax)
4012a8:	b4 00                	mov    $0x0,%ah
4012aa:	00 00                	add    %al,(%eax)
4012ac:	2e 72 64             	jb,pn  0x401313
4012af:	61                   	popa
4012b0:	74 61                	je     0x401313
4012b2:	24 62                	and    $0x62,%al
4012b4:	72 63                	jb     0x401319
4012b6:	00 00                	add    %al,(%eax)
4012b8:	b4 10                	mov    $0x10,%ah
4012ba:	00 00                	add    %al,(%eax)
4012bc:	04 00                	add    $0x0,%al
4012be:	00 00                	add    %al,(%eax)
4012c0:	2e 43                	cs inc %ebx
4012c2:	52                   	push   %edx
4012c3:	54                   	push   %esp
4012c4:	24 58                	and    $0x58,%al
4012c6:	43                   	inc    %ebx
4012c7:	41                   	inc    %ecx
4012c8:	00 00                	add    %al,(%eax)
4012ca:	00 00                	add    %al,(%eax)
4012cc:	b8 10 00 00 04       	mov    $0x4000010,%eax
4012d1:	00 00                	add    %al,(%eax)
4012d3:	00 2e                	add    %ch,(%esi)
4012d5:	43                   	inc    %ebx
4012d6:	52                   	push   %edx
4012d7:	54                   	push   %esp
4012d8:	24 58                	and    $0x58,%al
4012da:	43                   	inc    %ebx
4012db:	41                   	inc    %ecx
4012dc:	41                   	inc    %ecx
4012dd:	00 00                	add    %al,(%eax)
4012df:	00 bc 10 00 00 04 00 	add    %bh,0x40000(%eax,%edx,1)
4012e6:	00 00                	add    %al,(%eax)
4012e8:	2e 43                	cs inc %ebx
4012ea:	52                   	push   %edx
4012eb:	54                   	push   %esp
4012ec:	24 58                	and    $0x58,%al
4012ee:	43                   	inc    %ebx
4012ef:	5a                   	pop    %edx
4012f0:	00 00                	add    %al,(%eax)
4012f2:	00 00                	add    %al,(%eax)
4012f4:	c0 10 00             	rclb   $0x0,(%eax)
4012f7:	00 04 00             	add    %al,(%eax,%eax,1)
4012fa:	00 00                	add    %al,(%eax)
4012fc:	2e 43                	cs inc %ebx
4012fe:	52                   	push   %edx
4012ff:	54                   	push   %esp
401300:	24 58                	and    $0x58,%al
401302:	49                   	dec    %ecx
401303:	41                   	inc    %ecx
401304:	00 00                	add    %al,(%eax)
401306:	00 00                	add    %al,(%eax)
401308:	c4 10                	les    (%eax),%edx
40130a:	00 00                	add    %al,(%eax)
40130c:	04 00                	add    $0x0,%al
40130e:	00 00                	add    %al,(%eax)
401310:	2e 43                	cs inc %ebx
401312:	52                   	push   %edx
401313:	54                   	push   %esp
401314:	24 58                	and    $0x58,%al
401316:	49                   	dec    %ecx
401317:	41                   	inc    %ecx
401318:	41                   	inc    %ecx
401319:	00 00                	add    %al,(%eax)
40131b:	00 c8                	add    %cl,%al
40131d:	10 00                	adc    %al,(%eax)
40131f:	00 04 00             	add    %al,(%eax,%eax,1)
401322:	00 00                	add    %al,(%eax)
401324:	2e 43                	cs inc %ebx
401326:	52                   	push   %edx
401327:	54                   	push   %esp
401328:	24 58                	and    $0x58,%al
40132a:	49                   	dec    %ecx
40132b:	59                   	pop    %ecx
40132c:	00 00                	add    %al,(%eax)
40132e:	00 00                	add    %al,(%eax)
401330:	cc                   	int3
401331:	10 00                	adc    %al,(%eax)
401333:	00 04 00             	add    %al,(%eax,%eax,1)
401336:	00 00                	add    %al,(%eax)
401338:	2e 43                	cs inc %ebx
40133a:	52                   	push   %edx
40133b:	54                   	push   %esp
40133c:	24 58                	and    $0x58,%al
40133e:	49                   	dec    %ecx
40133f:	5a                   	pop    %edx
401340:	00 00                	add    %al,(%eax)
401342:	00 00                	add    %al,(%eax)
401344:	d0 10                	rclb   $1,(%eax)
401346:	00 00                	add    %al,(%eax)
401348:	30 00                	xor    %al,(%eax)
40134a:	00 00                	add    %al,(%eax)
40134c:	2e 67 66 69 64 73 00 	imul   $0x0,%cs:0x73(%si),%sp
401353:	00
401354:	00 11                	add    %dl,(%ecx)
401356:	00 00                	add    %al,(%eax)
401358:	70 01                	jo     0x40135b
40135a:	00 00                	add    %al,(%eax)
40135c:	2e 72 64             	jb,pn  0x4013c3
40135f:	61                   	popa
401360:	74 61                	je     0x4013c3
401362:	00 00                	add    %al,(%eax)
401364:	70 12                	jo     0x401378
401366:	00 00                	add    %al,(%eax)
401368:	08 00                	or     %al,(%eax)
40136a:	00 00                	add    %al,(%eax)
40136c:	2e 72 64             	jb,pn  0x4013d3
40136f:	61                   	popa
401370:	74 61                	je     0x4013d3
401372:	24 73                	and    $0x73,%al
401374:	78 64                	js     0x4013da
401376:	61                   	popa
401377:	74 61                	je     0x4013da
401379:	00 00                	add    %al,(%eax)
40137b:	00 78 12             	add    %bh,0x12(%eax)
40137e:	00 00                	add    %al,(%eax)
401380:	38 02                	cmp    %al,(%edx)
401382:	00 00                	add    %al,(%eax)
401384:	2e 72 64             	jb,pn  0x4013eb
401387:	61                   	popa
401388:	74 61                	je     0x4013eb
40138a:	24 7a                	and    $0x7a,%al
40138c:	7a 7a                	jp     0x401408
40138e:	64 62 67 00          	bound  %esp,%fs:0x0(%edi)
401392:	00 00                	add    %al,(%eax)
401394:	b0 14                	mov    $0x14,%al
401396:	00 00                	add    %al,(%eax)
401398:	da 0e                	fimull (%esi)
40139a:	00 00                	add    %al,(%eax)
40139c:	2e 74 65             	je,pn  0x401404
40139f:	78 74                	js     0x401415
4013a1:	24 6d                	and    $0x6d,%al
4013a3:	6e                   	outsb  %ds:(%esi),(%dx)
4013a4:	00 00                	add    %al,(%eax)
4013a6:	00 00                	add    %al,(%eax)
4013a8:	8a 23                	mov    (%ebx),%ah
4013aa:	00 00                	add    %al,(%eax)
4013ac:	2e 00 00             	add    %al,%cs:(%eax)