401ae1:	67 6e                	outsb  %ds:(%si),(%dx)
401ae3:	61                   	popa
401ae4:	74 37                	je     0x401b1d
401ae6:	00 06                	add    %al,(%esi)
401ae8:	01 09                	add    %ecx,(%ecx)
401aea:	00 46 4f             	add    %al,0x4f(%esi)
401aed:	52                   	push   %edx
401aee:	47                   	inc    %edi
401aef:	52                   	push   %edx
401af0:	49                   	dec    %ecx
401af1:	4d                   	dec    %ebp
401af2:	4d                   	dec    %ebp
401af3:	45                   	inc    %ebp
401af4:	00 05 5c 05 d6 03    	add    %al,0x3d6055c
401afa:	41                   	inc    %ecx
401afb:	04 f0                	add    $0xf0,%al
401afd:	02 12                	add    (%edx),%dl
401aff:	2c 00                	sub    $0x0,%al
401b01:	ff 03                	incl   (%ebx)
401b03:	2c 00                	sub    $0x0,%al
401b05:	00 00                	add    %al,(%eax)
401b07:	2b 09                	sub    (%ecx),%ecx
401b09:	00 50 72             	add    %dl,0x72(%eax)
401b0c:	6f                   	outsl  %ds:(%esi),(%dx)
401b0d:	78 65                	js     0x401b74
401b0f:	6e                   	outsb  %ds:(%esi),(%dx)
401b10:	65 74 69             	gs je  0x401b7c
401b13:	00 06                	add    %al,(%esi)
401b15:	01 09                	add    %ecx,(%ecx)
401b17:	00 53 41             	add    %dl,0x41(%ebx)
401b1a:	4e                   	dec    %esi
401b1b:	47                   	inc    %edi
401b1c:	45                   	inc    %ebp
401b1d:	52                   	push   %edx
401b1e:	53                   	push   %ebx
401b1f:	4b                   	dec    %ebx
401b20:	45                   	inc    %ebp
401b21:	00 05 c2 06 4e 03    	add    %al,0x34e06c2
401b27:	ed                   	in     (%dx),%eax
401b28:	07                   	pop    %es
401b29:	00 03                	add    %al,(%ebx)
401b2b:	12 2d 00 ff 03 28    	adc    0x2803ff00,%ch
401b31:	00 00                	add    %al,(%eax)
401b33:	00 2c 08             	add    %ch,(%eax,%ecx,1)
401b36:	00 48 79             	add    %cl,0x79(%eax)
401b39:	70 65                	jo     0x401ba0
401b3b:	72 62                	jb     0x401b9f
401b3d:	6f                   	outsl  %ds:(%esi),(%dx)
401b3e:	6c                   	insb   (%dx),%es:(%edi)
401b3f:	00 06                	add    %al,(%esi)
401b41:	01 06                	add    %eax,(%esi)
401b43:	00 62 75             	add    %ah,0x75(%edx)
401b46:	64 67 65 72 00       	fs addr16 gs jb 0x401b4b
401b4b:	05 e3 04 2b 03       	add    $0x32b04e3,%eax
401b50:	41                   	inc    %ecx
401b51:	06                   	push   %es
401b52:	9c                   	pushf
401b53:	07                   	pop    %es
401b54:	12 2e                	adc    (%esi),%ch
401b56:	00 ff                	add    %bh,%bh
401b58:	03 27                	add    (%edi),%esp
401b5a:	00 00                	add    %al,(%eax)
401b5c:	00 2d 09 00 52 65    	add    %ch,0x65520009
401b62:	73 74                	jae    0x401bd8
401b64:	72 69                	jb     0x401bcf
401b66:	76 65                	jbe    0x401bcd
401b68:	38 00                	cmp    %al,(%eax)
401b6a:	06                   	push   %es
401b6b:	01 04 00             	add    %eax,(%eax,%eax,1)
401b6e:	54                   	push   %esp
401b6f:	68 6f 72 00 05       	push   $0x500726f
401b74:	6b 03 81             	imul   $0xffffff81,(%ebx),%eax
401b77:	05 0f 07 ce 04       	add    $0x4ce070f,%eax
401b7c:	12 2f                	adc    (%edi),%ch
401b7e:	00 ff                	add    %bh,%bh
401b80:	03 2d 00 00 00 2e    	add    0x2e000000,%ebp
401b86:	09 00                	or     %eax,(%eax)
401b88:	42                   	inc    %edx
401b89:	72 6e                	jb     0x401bf9
401b8b:	65 66 6f             	outsw  %gs:(%esi),(%dx)
401b8e:	72 73                	jb     0x401c03
401b90:	6f                   	outsl  %ds:(%esi),(%dx)
401b91:	00 06                	add    %al,(%esi)
401b93:	01 0a                	add    %ecx,(%edx)
401b95:	00 62 6a             	add    %ah,0x6a(%edx)
401b98:	72 6e                	jb     0x401c08
401b9a:	65 74 6a             	gs je  0x401c07
401b9d:	65 6e                	outsb  %gs:(%esi),(%dx)
401b9f:	65 00 05 6b 04 80 02 	add    %al,%gs:0x280046b
401ba6:	85 02                	test   %eax,(%edx)
401ba8:	79 04                	jns    0x401bae
401baa:	12 30                	adc    (%eax),%dh
401bac:	00 ff                	add    %bh,%bh
401bae:	03 29                	add    (%ecx),%ebp
401bb0:	00 00                	add    %al,(%eax)
401bb2:	00 2f                	add    %ch,(%edi)
401bb4:	0b 00                	or     (%eax),%eax
401bb6:	50                   	push   %eax
401bb7:	6c                   	insb   (%dx),%es:(%edi)
401bb8:	65 72 74             	gs jb  0x401c2f
401bbb:	69 6c 73 74 61 36 00 	imul   $0x6003661,0x74(%ebx,%esi,2),%ebp
401bc2:	06
401bc3:	01 04 00             	add    %eax,(%eax,%eax,1)
401bc6:	46                   	inc    %esi
401bc7:	41                   	inc    %ecx
401bc8:	52                   	push   %edx
401bc9:	45                   	inc    %ebp
401bca:	00 05 e5 07 f8 01    	add    %al,0x1f807e5
401bd0:	31 06                	xor    %eax,(%esi)
401bd2:	9c                   	pushf
401bd3:	06                   	push   %es
401bd4:	12 31                	adc    (%ecx),%dh
401bd6:	00 ff                	add    %bh,%bh
401bd8:	03 28                	add    (%eax),%ebp
401bda:	00 00                	add    %al,(%eax)
401bdc:	00 30                	add    %dh,(%eax)
401bde:	0a 00                	or     (%eax),%al
401be0:	6a 65                	push   $0x65
401be2:	74 74                	je     0x401c58
401be4:	65 72 6e             	gs jb  0x401c55
401be7:	65 74 65             	gs je  0x401c4f
401bea:	00 06                	add    %al,(%esi)
401bec:	01 04 00             	add    %eax,(%eax,%eax,1)
401bef:	48                   	dec    %eax
401bf0:	4c                   	dec    %esp
401bf1:	4f                   	dec    %edi
401bf2:	46                   	inc    %esi
401bf3:	00 05 06 06 d5 01    	add    %al,0x1d50606
401bf9:	86 04 55 01 12 32 00 	xchg   %al,0x321201(,%edx,2)
401c00:	ff 03                	incl   (%ebx)
401c02:	2a 00                	sub    (%eax),%al
401c04:	00 00                	add    %al,(%eax)
401c06:	31 07                	xor    %eax,(%edi)
401c08:	00 46 72             	add    %al,0x72(%esi)
401c0b:	61                   	popa
401c0c:	73 65                	jae    0x401c73
401c0e:	6d                   	insl   (%dx),%es:(%edi)
401c0f:	61                   	popa
401c10:	00 06                	add    %al,(%esi)
401c12:	01 09                	add    %ecx,(%ecx)
401c14:	00 42 45             	add    %al,0x45(%edx)
401c17:	54                   	push   %esp
401c18:	55                   	push   %ebp
401c19:	54                   	push   %esp
401c1a:	54                   	push   %esp
401c1b:	45                   	inc    %ebp
401c1c:	4c                   	dec    %esp
401c1d:	53                   	push   %ebx
401c1e:	00 05 8e 04 2b 04    	add    %al,0x42b048e
401c24:	40                   	inc    %eax
401c25:	03 57 06             	add    0x6(%edi),%edx
401c28:	12 33                	adc    (%ebx),%dh
401c2a:	00 ff                	add    %bh,%bh
401c2c:	03 2a                	add    (%edx),%ebp
401c2e:	00 00                	add    %al,(%eax)
401c30:	00 32                	add    %dh,(%edx)
401c32:	08 00                	or     %al,(%eax)
401c34:	43                   	inc    %ebx
401c35:	4c                   	dec    %esp
401c36:	4f                   	dec    %edi
401c37:	56                   	push   %esi
401c38:	45                   	inc    %ebp
401c39:	4e                   	dec    %esi
401c3a:	45                   	inc    %ebp
401c3b:	53                   	push   %ebx
401c3c:	00 06                	add    %al,(%esi)
401c3e:	01 08                	add    %ecx,(%eax)
401c40:	00 50 72             	add    %dl,0x72(%eax)
401c43:	73 74                	jae    0x401cb9
401c45:	65 76 69             	gs jbe 0x401cb1
401c48:	6b 00 05             	imul   $0x5,(%eax),%eax
401c4b:	8e 05 2a 01 87 06    	mov    0x687012a,%es
401c51:	01 06                	add    %eax,(%esi)
401c53:	12 34 00             	adc    (%eax,%eax,1),%dh
401c56:	ff 03                	incl   (%ebx)
401c58:	25 00 00 00 33       	and    $0x33000000,%eax
401c5d:	05 00 48 55 4c       	add    $0x4c554800,%eax
401c62:	45                   	inc    %ebp
401c63:	53                   	push   %ebx
401c64:	00 06                	add    %al,(%esi)
401c66:	01 06                	add    %eax,(%esi)
401c68:	00 4c 6f 76          	add    %cl,0x76(%edi,%ebp,2)
401c6c:	67 69 76 00 05 37 01 	imul   $0x72013705,0x0(%bp),%esi
401c73:	72
401c74:	08 63 02             	or     %ah,0x2(%ebx)
401c77:	25 08 12 35 00       	and    $0x351208,%eax
401c7c:	ff 03                	incl   (%ebx)
401c7e:	28 00                	sub    %al,(%eax)
401c80:	00 00                	add    %al,(%eax)
401c82:	34 06                	xor    $0x6,%al
401c84:	00 44 72 6f          	add    %al,0x6f(%edx,%esi,2)
401c88:	73 6c                	jae    0x401cf6
401c8a:	35 00 06 01 08       	xor    $0x8010600,%eax
401c8f:	00 70 65             	add    %dh,0x65(%eax)
401c92:	69 74 68 6f 66 6f 00 	imul   $0x5006f66,0x6f(%eax,%ebp,2),%esi
401c99:	05
401c9a:	16                   	push   %ss
401c9b:	05 4f 08 87 08       	add    $0x887084f,%eax
401ca0:	f1                   	int1
401ca1:	04 12                	add    $0x12,%al
401ca3:	36 00 ff             	ss add %bh,%bh
401ca6:	03 29                	add    (%ecx),%ebp
401ca8:	00 00                	add    %al,(%eax)
401caa:	00 35 09 00 49 53    	add    %dh,0x53490009
401cb0:	4f                   	dec    %edi
401cb1:	43                   	inc    %ebx
401cb2:	48                   	dec    %eax
401cb3:	41                   	inc    %ecx
401cb4:	53                   	push   %ebx
401cb5:	4d                   	dec    %ebp
401cb6:	46                   	inc    %esi
401cb7:	00 06                	add    %al,(%esi)
401cb9:	01 06                	add    %eax,(%esi)
401cbb:	00 53 61             	add    %dl,0x61(%ebx)
401cbe:	6b 73 6b 36          	imul   $0x36,0x6b(%ebx),%esi
401cc2:	00 05 b1 05 d5 02    	add    %al,0x2d505b1
401cc8:	42                   	inc    %edx
401cc9:	07                   	pop    %es
401cca:	22 02                	and    (%edx),%al
401ccc:	12 37                	adc    (%edi),%dh
401cce:	00 ff                	add    %bh,%bh
401cd0:	03 29                	add    (%ecx),%ebp
401cd2:	00 00                	add    %al,(%eax)
401cd4:	00 36                	add    %dh,(%esi)
401cd6:	06                   	push   %es
401cd7:	00 53 63             	add    %dl,0x63(%ebx)
401cda:	61                   	popa
401cdb:	6c                   	insb   (%dx),%es:(%edi)
401cdc:	65 6e                	outsb  %gs:(%esi),(%dx)
401cde:	00 06                	add    %al,(%esi)
401ce0:	01 09                	add    %ecx,(%ecx)
401ce2:	00 65 61             	add    %ah,0x61(%ebp)
401ce5:	72 74                	jb     0x401d5b
401ce7:	68 77 6f 72 6b       	push   $0x6b726f77
401cec:	00 05 b1 06 a4 07    	add    %al,0x7a406b1
401cf2:	b8 02 cd 01 12       	mov    $0x1201cd02,%eax
401cf7:	38 00                	cmp    %al,(%eax)
401cf9:	ff 03                	incl   (%ebx)
401cfb:	2b 00                	sub    (%eax),%eax
401cfd:	00 00                	add    %al,(%eax)
401cff:	37                   	aaa
401d00:	08 00                	or     %al,(%eax)
401d02:	53                   	push   %ebx
401d03:	45                   	inc    %ebp
401d04:	4d                   	dec    %ebp
401d05:	49                   	dec    %ecx
401d06:	50                   	push   %eax
401d07:	45                   	inc    %ebp
401d08:	54                   	push   %esp
401d09:	41                   	inc    %ecx
401d0a:	00 06                	add    %al,(%esi)
401d0c:	01 09                	add    %ecx,(%ecx)
401d0e:	00 6e 61             	add    %ch,0x61(%esi)
401d11:	74 74                	je     0x401d87
401d13:	65 62 6c 69 6e       	bound  %ebp,%gs:0x6e(%ecx,%ebp,2)
401d18:	00 05 5a 02 1c 07    	add    %al,0x71c025a
401d1e:	64 06                	fs push %es
401d20:	f0 03 12             	lock add (%edx),%edx
401d23:	39 00                	cmp    %eax,(%eax)
401d25:	ff 03                	incl   (%ebx)
401d27:	23 00                	and    (%eax),%eax
401d29:	00 00                	add    %al,(%eax)
401d2b:	38 04 00             	cmp    %al,(%eax,%eax,1)
401d2e:	4b                   	dec    %ebx
401d2f:	6f                   	outsl  %ds:(%esi),(%dx)
401d30:	6e                   	outsb  %ds:(%esi),(%dx)
401d31:	76 00                	jbe    0x401d33
401d33:	06                   	push   %es
401d34:	01 05 00 70 72 6f    	add    %eax,0x6f727000
401d3a:	74 65                	je     0x401da1
401d3c:	00 05 39 06 fa 06    	add    %al,0x6fa0639
401d42:	b9 04 79 06 12       	mov    $0x12067904,%ecx
401d47:	3a 00                	cmp    (%eax),%al
401d49:	ff 03                	incl   (%ebx)
401d4b:	28 00                	sub    %al,(%eax)
401d4d:	00 00                	add    %al,(%eax)
401d4f:	39 05 00 52 52 47    	cmp    %eax,0x47525200
401d55:	47                   	inc    %edi
401d56:	45                   	inc    %ebp
401d57:	00 06                	add    %al,(%esi)
401d59:	01 09                	add    %ecx,(%ecx)
401d5b:	00 73 76             	add    %dh,0x76(%ebx)
401d5e:	61                   	popa
401d5f:	72 73                	jb     0x401dd4
401d61:	6b 72 69 66          	imul   $0x66,0x69(%edx),%esi
401d65:	00 05 c1 04 80 01    	add    %al,0x18004c1
401d6b:	3f                   	aas
401d6c:	01 ab 03 12 3b 00    	add    %ebp,0x3b1203(%ebx)
401d72:	ff 03                	incl   (%ebx)
401d74:	2b 00                	sub    (%eax),%eax
401d76:	00 00                	add    %al,(%eax)
401d78:	3a 08                	cmp    (%eax),%cl
401d7a:	00 53 65             	add    %dl,0x65(%ebx)
401d7d:	70 74                	jo     0x401df3
401d7f:	69 6c 6c 34 00 06 01 	imul   $0x9010600,0x34(%esp,%ebp,2),%ebp
401d86:	09
401d87:	00 44 69 73          	add    %al,0x73(%ecx,%ebp,2)
401d8b:	6f                   	outsl  %ds:(%esi),(%dx)
401d8c:	62 73 74             	bound  %esi,0x74(%ebx)
401d8f:	72 75                	jb     0x401e06
401d91:	00 05 7a 01 08 02    	add    %al,0x208017a
401d97:	72 02                	jb     0x401d9b
401d99:	df 06                	filds  (%esi)
401d9b:	12 3c 00             	adc    (%eax,%eax,1),%bh
401d9e:	ff 03                	incl   (%ebx)
401da0:	25 00 00 00 3b       	and    $0x3b000000,%eax
401da5:	07                   	pop    %es
401da6:	00 46 6f             	add    %al,0x6f(%esi)
401da9:	72 62                	jb     0x401e0d
401dab:	65 6e                	outsb  %gs:(%esi),(%dx)
401dad:	65 00 06             	add    %al,%gs:(%esi)
401db0:	01 04 00             	add    %eax,(%eax,%eax,1)
401db3:	4d                   	dec    %ebp
401db4:	55                   	push   %ebp
401db5:	4c                   	dec    %esp
401db6:	54                   	push   %esp
401db7:	00 05 f3 04 7f 01    	add    %al,0x17f04f3
401dbd:	1e                   	push   %ds
401dbe:	06                   	push   %es
401dbf:	32 01                	xor    (%ecx),%al
401dc1:	12 3d 00 ff 03 28    	adc    0x2803ff00,%bh
401dc7:	00 00                	add    %al,(%eax)
401dc9:	00 3c 07             	add    %bh,(%edi,%eax,1)
401dcc:	00 52 45             	add    %dl,0x45(%edx)
401dcf:	4e                   	dec    %esi
401dd0:	4f                   	dec    %edi
401dd1:	56                   	push   %esi
401dd2:	41                   	inc    %ecx
401dd3:	54                   	push   %esp
401dd4:	00 06                	add    %al,(%esi)
401dd6:	01 07                	add    %eax,(%edi)
401dd8:	00 47 41             	add    %al,0x41(%edi)
401ddb:	4e                   	dec    %esi
401ddc:	47                   	inc    %edi
401ddd:	43                   	inc    %ebx
401dde:	4f                   	dec    %edi
401ddf:	4e                   	dec    %esi
401de0:	00 05 15 03 5d 01    	add    %al,0x15d0315
401de6:	73 04                	jae    0x401dec
401de8:	bb 03 12 3e 00       	mov    $0x3e1203,%ebx
401ded:	ff 03                	incl   (%ebx)
401def:	29 00                	sub    %eax,(%eax)
401df1:	00 00                	add    %al,(%eax)
401df3:	3d 09 00 55 44       	cmp    $0x44550009,%eax
401df8:	47                   	inc    %edi
401df9:	4f                   	dec    %edi
401dfa:	45                   	inc    %ebp
401dfb:	52                   	push   %edx
401dfc:	45                   	inc    %ebp
401dfd:	53                   	push   %ebx