00401000 <.text>:
401000:	50                   	push   %eax
401001:	50                   	push   %eax
401002:	40                   	inc    %eax
401003:	00 a0 50 40 00 90    	add    %ah,-0x6fffbfb0(%eax)
401009:	33 40 00             	xor    0x0(%eax),%eax
40100c:	40                   	inc    %eax
40100d:	33 40 00             	xor    0x0(%eax),%eax
401010:	60                   	pusha
401011:	33 40 00             	xor    0x0(%eax),%eax
401014:	b0 33                	mov    $0x33,%al
401016:	40                   	inc    %eax
401017:	00 60 34             	add    %ah,0x34(%eax)
40101a:	40                   	inc    %eax
40101b:	00 00                	add    %al,(%eax)
40101d:	2e 40                	cs inc %eax
40101f:	00 a0 2d 40 00 20    	add    %ah,0x2000402d(%eax)
401025:	2e 40                	cs inc %eax
401027:	00 c4                	add    %al,%ah
401029:	14 40                	adc    $0x40,%al
401037:	00 80 2d 40 00 a0    	add    %al,-0x5fffbfd3(%eax)
40103d:	2d 40 00 c0 2d       	sub    $0x2dc00040,%eax
401042:	40                   	inc    %eax
401043:	00 c0                	add    %al,%al
401045:	37                   	aaa
401046:	40                   	inc    %eax
401047:	00 80 37 40 00 10    	add    %al,0x10004037(%eax)
40104d:	37                   	aaa
40104e:	40                   	inc    %eax
40104f:	00 50 38             	add    %dl,0x38(%eax)
401052:	40                   	inc    %eax
401053:	00 40 2f             	add    %al,0x2f(%eax)
401056:	40                   	inc    %eax
401057:	00 60 2f             	add    %ah,0x2f(%eax)
40105a:	40                   	inc    %eax
40105b:	00 80 2f 40 00 c0    	add    %al,-0x3fffbfd1(%eax)
401061:	31 40 00             	xor    %eax,0x0(%eax)
401064:	c0 2f 40             	shrb   $0x40,(%edi)
401067:	00 10                	add    %dl,(%eax)
401069:	2f                   	das
40106a:	40                   	inc    %eax
40106b:	00 a4 14 40 00 00 00 	add    %ah,0x40(%esp,%edx,1)
40107a:	00 00                	add    %al,(%eax)
40107c:	94                   	xchg   %eax,%esp
40107d:	14 40                	adc    $0x40,%al
40108b:	00 c0                	add    %al,%al
40108d:	37                   	aaa
40108e:	40                   	inc    %eax
40108f:	00 80 37 40 00 10    	add    %al,0x10004037(%eax)
401095:	37                   	aaa
401096:	40                   	inc    %eax
401097:	00 00                	add    %al,(%eax)
401099:	2d 40 00 00 00       	sub    $0x40,%eax
40109e:	00 00                	add    %al,(%eax)
4010a0:	ac                   	lods   %ds:(%esi),%al
4010d9:	00 00                	add    %al,(%eax)
4010db:	00 14 50             	add    %dl,(%eax,%edx,2)
4010de:	40                   	inc    %eax
4010df:	00 60 15             	add    %ah,0x15(%eax)
4010e2:	40                   	inc    %eax
4010e3:	00 02                	add    %al,(%edx)
4010e5:	00 00                	add    %al,(%eax)
4010e7:	00 90 61 40 00 00    	add    %dl,0x4061(%eax)
4010ed:	00 00                	add    %al,(%eax)
4010ef:	00 78 11             	add    %bh,0x11(%eax)
4010f2:	40                   	inc    %eax
4010f3:	00 2f                	add    %ch,(%edi)
4010f5:	00 00                	add    %al,(%eax)
4010f7:	00 00                	add    %al,(%eax)
4010f9:	75 01                	jne    0x4010fc
401107:	00 34 12             	add    %dh,(%edx,%edx,1)
40110a:	40                   	inc    %eax
40110b:	00 01                	add    %al,(%ecx)
40114d:	00 00                	add    %al,(%eax)
40114f:	00 e0                	add    %ah,%al
401151:	3f                   	aas
401152:	40                   	inc    %eax
401153:	00 00                	add    %al,(%eax)
401155:	18 40 00             	sbb    %al,0x0(%eax)
401158:	10 18                	adc    %bl,(%eax)
40115a:	40                   	inc    %eax
40115b:	00 20                	add    %ah,(%eax)
40115d:	18 40 00             	sbb    %al,0x0(%eax)
401160:	40                   	inc    %eax
401161:	18 40 00             	sbb    %al,0x0(%eax)
40116c:	70 3f                	jo     0x4011ad
40116e:	40                   	inc    %eax
40116f:	00 40 45             	add    %al,0x45(%eax)
401172:	40                   	inc    %eax
401173:	00 00                	add    %al,(%eax)
401175:	00 00                	add    %al,(%eax)
401177:	00 00                	add    %al,(%eax)
401179:	18 00                	sbb    %al,(%eax)
40117b:	00 10                	add    %dl,(%eax)
40117d:	18 00                	sbb    %al,(%eax)
40117f:	00 20                	add    %ah,(%eax)
401181:	18 00                	sbb    %al,(%eax)
401183:	00 40 18             	add    %al,0x18(%eax)
401186:	00 00                	add    %al,(%eax)
401188:	20 1d 00 00 40 1e    	and    %bl,0x1e400000
40118e:	00 00                	add    %al,(%eax)
401190:	70 1e                	jo     0x4011b0
401192:	00 00                	add    %al,(%eax)
401194:	80 1e 00             	sbbb   $0x0,(%esi)
401197:	00 20                	add    %ah,(%eax)
401199:	2b 00                	sub    (%eax),%eax
40119b:	00 a0 2b 00 00 e0    	add    %ah,-0x1fffffd5(%eax)
4011a1:	2b 00                	sub    (%eax),%eax
4011a3:	00 00                	add    %al,(%eax)
4011a5:	2d 00 00 80 2d       	sub    $0x2d800000,%eax
4011aa:	00 00                	add    %al,(%eax)
4011ac:	a0 2d 00 00 c0       	mov    0xc000002d,%al
4011b1:	2d 00 00 00 2e       	sub    $0x2e000000,%eax
4011b6:	00 00                	add    %al,(%eax)
4011b8:	20 2e                	and    %ch,(%esi)
4011ba:	00 00                	add    %al,(%eax)
4011bc:	10 2f                	adc    %ch,(%edi)
4011be:	00 00                	add    %al,(%eax)
4011c0:	40                   	inc    %eax
4011c1:	2f                   	das
4011c2:	00 00                	add    %al,(%eax)
4011c4:	60                   	pusha
4011c5:	2f                   	das
4011c6:	00 00                	add    %al,(%eax)
4011c8:	80 2f 00             	subb   $0x0,(%edi)
4011cb:	00 c0                	add    %al,%al
4011cd:	2f                   	das
4011ce:	00 00                	add    %al,(%eax)
4011d0:	d0 30                	shlb   $1,(%eax)
4011d2:	00 00                	add    %al,(%eax)
4011d4:	60                   	pusha
4011d5:	31 00                	xor    %eax,(%eax)
4011d7:	00 c0                	add    %al,%al
4011d9:	31 00                	xor    %eax,(%eax)
4011db:	00 10                	add    %dl,(%eax)
4011dd:	33 00                	xor    (%eax),%eax
4011df:	00 40 33             	add    %al,0x33(%eax)
4011e2:	00 00                	add    %al,(%eax)
4011e4:	60                   	pusha
4011e5:	33 00                	xor    (%eax),%eax
4011e7:	00 90 33 00 00 b0    	add    %dl,-0x4fffffcd(%eax)
4011ed:	33 00                	xor    (%eax),%eax
4011ef:	00 60 34             	add    %ah,0x34(%eax)
4011f2:	00 00                	add    %al,(%eax)
4011f4:	10 37                	adc    %dh,(%edi)
4011f6:	00 00                	add    %al,(%eax)
4011f8:	80 37 00             	xorb   $0x0,(%edi)
4011fb:	00 c0                	add    %al,%al
4011fd:	37                   	aaa
4011fe:	00 00                	add    %al,(%eax)
401200:	50                   	push   %eax
401201:	38 00                	cmp    %al,(%eax)
401203:	00 f0                	add    %dh,%al
401205:	3a 00                	cmp    (%eax),%al
401207:	00 70 3f             	add    %dh,0x3f(%eax)
40120a:	00 00                	add    %al,(%eax)
40120c:	e0 3f                	loopne 0x40124d
40120e:	00 00                	add    %al,(%eax)
401210:	20 40 00             	and    %al,0x0(%eax)
401213:	00 a0 42 00 00 f0    	add    %ah,-0xfffffbe(%eax)
401219:	44                   	inc    %esp
40121a:	00 00                	add    %al,(%eax)
40121c:	40                   	inc    %eax
40121d:	45                   	inc    %ebp
40121e:	00 00                	add    %al,(%eax)
401220:	10 46 00             	adc    %al,0x0(%esi)
401223:	00 80 48 00 00 b0    	add    %al,-0x4fffffb8(%eax)
401229:	48                   	dec    %eax
40122a:	00 00                	add    %al,(%eax)
40122c:	70 49                	jo     0x401277
40122e:	00 00                	add    %al,(%eax)
401230:	80 49 00 00          	orb    $0x0,0x0(%ecx)
401234:	50                   	push   %eax
401235:	61                   	popa
401242:	00 00                	add    %al,(%eax)
401244:	4b                   	dec    %ebx
401245:	03 00                	add    (%eax),%eax
401247:	00 00                	add    %al,(%eax)
401249:	00 00                	add    %al,(%eax)
40124b:	00 c0                	add    %al,%al
40124d:	00 00                	add    %al,(%eax)
40124f:	00 00                	add    %al,(%eax)
401251:	00 00                	add    %al,(%eax)
401253:	46                   	inc    %esi
401254:	00 00                	add    %al,(%eax)
401256:	00 00                	add    %al,(%eax)
401258:	45                   	inc    %ebp
401259:	78 63                	js     0x4012be
40125b:	65 70 74             	gs jo  0x4012d2
40125e:	69 6f 6e 00 00 00 52 	imul   $0x52000000,0x6e(%edi),%ebp
401265:	65 74 75             	gs je  0x4012dd
401268:	72 6e                	jb     0x4012d8
40126a:	48                   	dec    %eax
40126b:	72 00                	jb     0x40126d
40126d:	00 00                	add    %al,(%eax)
40126f:	00 4c 6f 67          	add    %cl,0x67(%edi,%ebp,2)
401273:	48                   	dec    %eax
401274:	72 00                	jb     0x401276
401276:	00 00                	add    %al,(%eax)
401278:	46                   	inc    %esi
401279:	61                   	popa
40127a:	69 6c 46 61 73 74 00 	imul   $0x7473,0x61(%esi,%eax,2),%ebp
401281:	00
401282:	00 00                	add    %al,(%eax)
401284:	25 00 68 00 73       	and    $0x73006800,%eax
401289:	00 28                	add    %ch,(%eax)
40128b:	00 25 00 75 00 29    	add    %ah,0x29007500
401291:	00 5c 00 25          	add    %bl,0x25(%eax,%eax,1)
401295:	00 68 00             	add    %ch,0x0(%eax)
401298:	73 00                	jae    0x40129a
40129a:	21 00                	and    %eax,(%eax)
40129c:	25 00 70 00 3a       	and    $0x3a007000,%eax
4012a1:	00 20                	add    %ah,(%eax)
4012a3:	00 00                	add    %al,(%eax)
4012a5:	00 00                	add    %al,(%eax)
4012a7:	00 25 00 68 00 73    	add    %ah,0x73006800
4012ad:	00 21                	add    %ah,(%ecx)
4012af:	00 25 00 70 00 3a    	add    %ah,0x3a007000
4012b5:	00 20                	add    %ah,(%eax)
4012b7:	00 00                	add    %al,(%eax)
4012b9:	00 00                	add    %al,(%eax)
4012bb:	00 28                	add    %ch,(%eax)
4012bd:	00 63 00             	add    %ah,0x0(%ebx)
4012c0:	61                   	popa
4012c1:	00 6c 00 6c          	add    %ch,0x6c(%eax,%eax,1)
4012c5:	00 65 00             	add    %ah,0x0(%ebp)
4012c8:	72 00                	jb     0x4012ca
4012ca:	3a 00                	cmp    (%eax),%al
4012cc:	20 00                	and    %al,(%eax)
4012ce:	25 00 70 00 29       	and    $0x29007000,%eax
4012d3:	00 20                	add    %ah,(%eax)
4012d5:	00 00                	add    %al,(%eax)
4012d7:	00 25 00 68 00 73    	add    %ah,0x73006800
4012dd:	00 28                	add    %ch,(%eax)
4012df:	00 25 00 64 00 29    	add    %ah,0x29006400
4012e5:	00 20                	add    %ah,(%eax)
4012e7:	00 74 00 69          	add    %dh,0x69(%eax,%eax,1)
4012eb:	00 64 00 28          	add    %ah,0x28(%eax,%eax,1)
4012ef:	00 25 00 78 00 29    	add    %ah,0x29007800
4012f5:	00 20                	add    %ah,(%eax)
4012f7:	00 25 00 30 00 38    	add    %ah,0x38003000
4012fd:	00 58 00             	add    %bl,0x0(%eax)
401300:	20 00                	and    %al,(%eax)
401302:	25 00 77 00 73       	and    $0x73007700,%eax
401307:	00 00                	add    %al,(%eax)
401309:	00 00                	add    %al,(%eax)
40130b:	00 20                	add    %ah,(%eax)
40130d:	00 20                	add    %ah,(%eax)
40130f:	00 20                	add    %ah,(%eax)
401311:	00 20                	add    %ah,(%eax)
401313:	00 00                	add    %al,(%eax)
401315:	00 00                	add    %al,(%eax)
401317:	00 4d 00             	add    %cl,0x0(%ebp)
40131a:	73 00                	jae    0x40131c
40131c:	67 00 3a             	add    %bh,(%bp,%si)
40131f:	00 5b 00             	add    %bl,0x0(%ebx)
401322:	25 00 77 00 73       	and    $0x73007700,%eax
401327:	00 5d 00             	add    %bl,0x0(%ebp)
40132a:	20 00                	and    %al,(%eax)
40132c:	00 00                	add    %al,(%eax)
40132e:	00 00                	add    %al,(%eax)
401330:	43                   	inc    %ebx
401331:	00 61 00             	add    %ah,0x0(%ecx)
401334:	6c                   	insb   (%dx),%es:(%edi)
401335:	00 6c 00 43          	add    %ch,0x43(%eax,%eax,1)
401339:	00 6f 00             	add    %ch,0x0(%edi)
40133c:	6e                   	outsb  %ds:(%esi),(%dx)
40133d:	00 74 00 65          	add    %dh,0x65(%eax,%eax,1)
401341:	00 78 00             	add    %bh,0x0(%eax)
401344:	74 00                	je     0x401346
401346:	3a 00                	cmp    (%eax),%al
401348:	5b                   	pop    %ebx
401349:	00 25 00 68 00 73    	add    %ah,0x73006800
40134f:	00 5d 00             	add    %bl,0x0(%ebp)
401352:	20 00                	and    %al,(%eax)
401354:	00 00                	add    %al,(%eax)
401356:	00 00                	add    %al,(%eax)
401358:	5b                   	pop    %ebx
401359:	00 25 00 68 00 73    	add    %ah,0x73006800
40135f:	00 28                	add    %ch,(%eax)
401361:	00 25 00 68 00 73    	add    %ah,0x73006800
401367:	00 29                	add    %ch,(%ecx)
401369:	00 5d 00             	add    %bl,0x0(%ebp)
40136c:	0a 00                	or     (%eax),%al
40136e:	00 00                	add    %al,(%eax)
401370:	5b                   	pop    %ebx
401371:	00 25 00 68 00 73    	add    %ah,0x73006800
401377:	00 5d 00             	add    %bl,0x0(%ebp)
40137a:	0a 00                	or     (%eax),%al
40137c:	00 00                	add    %al,(%eax)
40137e:	00 00                	add    %al,(%eax)
401380:	0a 00                	or     (%eax),%al
401382:	00 00                	add    %al,(%eax)
401384:	6b 00 65             	imul   $0x65,(%eax),%eax
401387:	00 72 00             	add    %dh,0x0(%edx)
40138a:	6e                   	outsb  %ds:(%esi),(%dx)
40138b:	00 65 00             	add    %ah,0x0(%ebp)
40138e:	6c                   	insb   (%dx),%es:(%edi)
40138f:	00 62 00             	add    %ah,0x0(%edx)
401392:	61                   	popa
401393:	00 73 00             	add    %dh,0x0(%ebx)
401396:	65 00 2e             	add    %ch,%gs:(%esi)
401399:	00 64 00 6c          	add    %ah,0x6c(%eax,%eax,1)
40139d:	00 6c 00 00          	add    %ch,0x0(%eax,%eax,1)
4013a1:	00 00                	add    %al,(%eax)
4013a3:	00 52 61             	add    %dl,0x61(%edx)
4013a6:	69 73 65 46 61 69 6c 	imul   $0x6c696146,0x65(%ebx),%esi
4013ad:	46                   	inc    %esi
4013ae:	61                   	popa
4013af:	73 74                	jae    0x401425
4013b1:	45                   	inc    %ebp
4013b2:	78 63                	js     0x401417
4013b4:	65 70 74             	gs jo  0x40142b
4013b7:	69 6f 6e 00 00 77 69 	imul   $0x69770000,0x6e(%edi),%ebp
4013be:	6c                   	insb   (%dx),%es:(%edi)
4013bf:	00 6f 6e             	add    %ch,0x6e(%edi)
4013c2:	65 63 6f 72          	arpl   %ebp,%gs:0x72(%edi)
4013c6:	65 5c                	gs pop %esp
4013c8:	69 6e 74 65 72 6e 61 	imul   $0x616e7265,0x74(%esi),%ebp
4013cf:	6c                   	insb   (%dx),%es:(%edi)
4013d0:	5c                   	pop    %esp
4013d1:	73 64                	jae    0x401437
4013d3:	6b 5c 69 6e 63       	imul   $0x63,0x6e(%ecx,%ebp,2),%ebx
4013d8:	5c                   	pop    %esp
4013d9:	77 69                	ja     0x401444
4013db:	6c                   	insb   (%dx),%es:(%edi)
4013dc:	5c                   	pop    %esp
4013dd:	6f                   	outsl  %ds:(%esi),(%dx)
4013de:	70 65                	jo     0x401445
4013e0:	6e                   	outsb  %ds:(%esi),(%dx)
4013e1:	73 6f                	jae    0x401452
4013e3:	75 72                	jne    0x401457
4013e5:	63 65 5c             	arpl   %esp,0x5c(%ebp)
4013e8:	77 69                	ja     0x401453
4013ea:	6c                   	insb   (%dx),%es:(%edi)
4013eb:	5c                   	pop    %esp
4013ec:	72 65                	jb     0x401453
4013ee:	73 6f                	jae    0x40145f
4013f0:	75 72                	jne    0x401464
4013f2:	63 65 2e             	arpl   %esp,0x2e(%ebp)
4013f5:	68 00 00 5f 00       	push   $0x5f0000
4013fa:	70 00                	jo     0x4013fc
4013fc:	30 00                	xor    %al,(%eax)
4013fe:	00 00                	add    %al,(%eax)
401400:	57                   	push   %edi
401401:	69 6c 45 72 72 6f 72 	imul   $0x5f726f72,0x72(%ebp,%eax,2),%ebp
401408:	5f
401409:	30 33                	xor    %dh,(%ebx)
40140b:	00 6e 00             	add    %ch,0x0(%esi)
40140e:	74 00                	je     0x401410