40f91f:	6f                   	outsl  %ds:(%esi),(%dx)
40f920:	6c                   	insb   (%dx),%es:(%edi)
40f921:	53                   	push   %ebx
40f922:	74 72                	je     0x40f996
40f924:	00 00                	add    %al,(%eax)
40f926:	ff 00                	incl   (%eax)
40f928:	5f                   	pop    %edi
40f929:	5f                   	pop    %edi
40f92a:	76 62                	jbe    0x40f98e
40f92c:	61                   	popa
40f92d:	4f                   	dec    %edi
40f92e:	62 6a 53             	bound  %ebp,0x53(%edx)
40f931:	65 74 00             	gs je  0x40f934
40f934:	a7                   	cmpsl  %es:(%edi),%ds:(%esi)
40f935:	01 5f 61             	add    %ebx,0x61(%edi)
40f938:	64 6a 5f             	fs push $0x5f
40f93b:	66 64 69 76 5f 6d 31 	imul   $0x316d,%fs:0x5f(%esi),%si
40f942:	36 69 00 00 ac 01 5f 	imul   $0x5f01ac00,%ss:(%eax),%eax
40f949:	61                   	popa
40f94a:	64 6a 5f             	fs push $0x5f
40f94d:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40f954:	31 36                	xor    %esi,(%esi)
40f956:	69 00 ab 00 5f 5f    	imul   $0x5f5f00ab,(%eax),%eax
40f95c:	76 62                	jbe    0x40f9c0
40f95e:	61                   	popa
40f95f:	46                   	inc    %esi
40f960:	70 52                	jo     0x40f9b4
40f962:	38 00                	cmp    %al,(%eax)
40f964:	56                   	push   %esi
40f965:	00 5f 43             	add    %bl,0x43(%edi)
40f968:	49                   	dec    %ecx
40f969:	73 69                	jae    0x40f9d4
40f96b:	6e                   	outsb  %ds:(%esi),(%dx)
40f96c:	00 00                	add    %al,(%eax)
40f96e:	89 00                	mov    %eax,(%eax)
40f970:	5f                   	pop    %edi
40f971:	5f                   	pop    %edi
40f972:	76 62                	jbe    0x40f9d6
40f974:	61                   	popa
40f975:	45                   	inc    %ebp
40f976:	72 61                	jb     0x40f9d9
40f978:	73 65                	jae    0x40f9df
40f97a:	00 00                	add    %al,(%eax)
40f97c:	6f                   	outsl  %ds:(%esi),(%dx)
40f97d:	00 5f 5f             	add    %bl,0x5f(%edi)
40f980:	76 62                	jbe    0x40f9e4
40f982:	61                   	popa
40f983:	43                   	inc    %ebx
40f984:	68 6b 73 74 6b       	push   $0x6b74736b
40f989:	00 11                	add    %dl,(%ecx)
40f98b:	00 45 56             	add    %al,0x56(%ebp)
40f98e:	45                   	inc    %ebp
40f98f:	4e                   	dec    %esi
40f990:	54                   	push   %esp
40f991:	5f                   	pop    %edi
40f992:	53                   	push   %ebx
40f993:	49                   	dec    %ecx
40f994:	4e                   	dec    %esi
40f995:	4b                   	dec    %ebx
40f996:	5f                   	pop    %edi
40f997:	41                   	inc    %ecx
40f998:	64 64 52             	fs fs push %edx
40f99b:	65 66 00 b4 00 5f 5f 	data16 add %dh,%gs:0x62765f5f(%eax,%eax,1)
40f9a2:	76 62
40f9a4:	61                   	popa
40f9a5:	47                   	inc    %edi
40f9a6:	65 6e                	outsb  %gs:(%esi),(%dx)
40f9a8:	65 72 61             	gs jb  0x40fa0c
40f9ab:	74 65                	je     0x40fa12
40f9ad:	42                   	inc    %edx
40f9ae:	6f                   	outsl  %ds:(%esi),(%dx)
40f9af:	75 6e                	jne    0x40fa1f
40f9b1:	64 73 45             	fs jae 0x40f9f9
40f9b4:	72 72                	jb     0x40fa28
40f9b6:	6f                   	outsl  %ds:(%esi),(%dx)
40f9b7:	72 00                	jb     0x40f9b9
40f9b9:	00 34 01             	add    %dh,(%ecx,%eax,1)
40f9bc:	5f                   	pop    %edi
40f9bd:	5f                   	pop    %edi
40f9be:	76 62                	jbe    0x40fa22
40f9c0:	61                   	popa
40f9c1:	53                   	push   %ebx
40f9c2:	74 72                	je     0x40fa36
40f9c4:	43                   	inc    %ebx
40f9c5:	6d                   	insl   (%dx),%es:(%edi)
40f9c6:	70 00                	jo     0x40f9c8
40f9c8:	5b                   	pop    %ebx
40f9c9:	00 5f 5f             	add    %bl,0x5f(%edi)
40f9cc:	76 62                	jbe    0x40fa30
40f9ce:	61                   	popa
40f9cf:	41                   	inc    %ecx
40f9d0:	72 79                	jb     0x40fa4b
40f9d2:	43                   	inc    %ebx
40f9d3:	6f                   	outsl  %ds:(%esi),(%dx)
40f9d4:	6e                   	outsb  %ds:(%esi),(%dx)
40f9d5:	73 74                	jae    0x40fa4b
40f9d7:	72 75                	jb     0x40fa4e
40f9d9:	63 74 32 00          	arpl   %esi,0x0(%edx,%esi,1)
40f9dd:	00 93 01 5f 5f 76    	add    %dl,0x765f5f01(%ebx)
40f9e3:	62 61 56             	bound  %esp,0x56(%ecx)
40f9e6:	61                   	popa
40f9e7:	72 54                	jb     0x40fa3d
40f9e9:	73 74                	jae    0x40fa5f
40f9eb:	45                   	inc    %ebp
40f9ec:	71 00                	jno    0x40f9ee
40f9ee:	c5 00                	lds    (%eax),%eax
40f9f0:	5f                   	pop    %edi
40f9f1:	5f                   	pop    %edi
40f9f2:	76 62                	jbe    0x40fa56
40f9f4:	61                   	popa
40f9f5:	49                   	dec    %ecx
40f9f6:	32 49 34             	xor    0x34(%ecx),%cl
40f9f9:	00 01                	add    %al,(%ecx)
40f9fb:	01 5f 5f             	add    %ebx,0x5f(%edi)
40f9fe:	76 62                	jbe    0x40fa62
40fa00:	61                   	popa
40fa01:	4f                   	dec    %edi
40fa02:	62 6a 56             	bound  %ebp,0x56(%edx)
40fa05:	61                   	popa
40fa06:	72 00                	jb     0x40fa08
40fa08:	6c                   	insb   (%dx),%es:(%edi)
40fa09:	00 5f 5f             	add    %bl,0x5f(%edi)
40fa0c:	76 62                	jbe    0x40fa70
40fa0e:	61                   	popa
40fa0f:	43                   	inc    %ebx
40fa10:	61                   	popa
40fa11:	73 74                	jae    0x40fa87
40fa13:	4f                   	dec    %edi
40fa14:	62 6a 56             	bound  %ebp,0x56(%edx)
40fa17:	61                   	popa
40fa18:	72 00                	jb     0x40fa1a
40fa1a:	b0 01                	mov    $0x1,%al
40fa1c:	5f                   	pop    %edi
40fa1d:	61                   	popa
40fa1e:	64 6a 5f             	fs push $0x5f
40fa21:	66 70 61             	data16 jo 0x40fa85
40fa24:	74 61                	je     0x40fa87
40fa26:	6e                   	outsb  %ds:(%esi),(%dx)
40fa27:	00 23                	add    %ah,(%ebx)
40fa29:	01 5f 5f             	add    %ebx,0x5f(%edi)
40fa2c:	76 62                	jbe    0x40fa90
40fa2e:	61                   	popa
40fa2f:	52                   	push   %edx
40fa30:	65 64 69 6d 00 00 15 	gs imul $0x45001500,%fs:0x0(%ebp),%ebp
40fa37:	00 45
40fa39:	56                   	push   %esi
40fa3a:	45                   	inc    %ebp
40fa3b:	4e                   	dec    %esi
40fa3c:	54                   	push   %esp
40fa3d:	5f                   	pop    %edi
40fa3e:	53                   	push   %ebx
40fa3f:	49                   	dec    %ecx
40fa40:	4e                   	dec    %esi
40fa41:	4b                   	dec    %ebx
40fa42:	5f                   	pop    %edi
40fa43:	52                   	push   %edx
40fa44:	65 6c                	gs insb (%dx),%es:(%edi)
40fa46:	65 61                	gs popa
40fa48:	73 65                	jae    0x40faaf
40fa4a:	00 00                	add    %al,(%eax)
40fa4c:	57                   	push   %edi
40fa4d:	00 5f 43             	add    %bl,0x43(%edi)
40fa50:	49                   	dec    %ecx
40fa51:	73 71                	jae    0x40fac4
40fa53:	72 74                	jb     0x40fac9
40fa55:	00 14 00             	add    %dl,(%eax,%eax,1)
40fa58:	45                   	inc    %ebp
40fa59:	56                   	push   %esi
40fa5a:	45                   	inc    %ebp
40fa5b:	4e                   	dec    %esi
40fa5c:	54                   	push   %esp
40fa5d:	5f                   	pop    %edi
40fa5e:	53                   	push   %ebx
40fa5f:	49                   	dec    %ecx
40fa60:	4e                   	dec    %esi
40fa61:	4b                   	dec    %ebx
40fa62:	5f                   	pop    %edi
40fa63:	51                   	push   %ecx
40fa64:	75 65                	jne    0x40facb
40fa66:	72 79                	jb     0x40fae1
40fa68:	49                   	dec    %ecx
40fa69:	6e                   	outsb  %ds:(%esi),(%dx)
40fa6a:	74 65                	je     0x40fad1
40fa6c:	72 66                	jb     0x40fad4
40fa6e:	61                   	popa
40fa6f:	63 65 00             	arpl   %esp,0x0(%ebp)
40fa72:	8e 00                	mov    (%eax),%es
40fa74:	5f                   	pop    %edi
40fa75:	5f                   	pop    %edi
40fa76:	76 62                	jbe    0x40fada
40fa78:	61                   	popa
40fa79:	45                   	inc    %ebp
40fa7a:	78 63                	js     0x40fadf
40fa7c:	65 70 74             	gs jo  0x40faf3
40fa7f:	48                   	dec    %eax
40fa80:	61                   	popa
40fa81:	6e                   	outsb  %ds:(%esi),(%dx)
40fa82:	64 6c                	fs insb (%dx),%es:(%edi)
40fa84:	65 72 00             	gs jb  0x40fa87
40fa87:	00 84 00 5f 5f 76 62 	add    %al,0x62765f5f(%eax,%eax,1)
40fa8e:	61                   	popa
40fa8f:	44                   	inc    %esp
40fa90:	61                   	popa
40fa91:	74 65                	je     0x40faf8
40fa93:	53                   	push   %ebx
40fa94:	74 72                	je     0x40fb08
40fa96:	00 00                	add    %al,(%eax)
40fa98:	b1 01                	mov    $0x1,%cl
40fa9a:	5f                   	pop    %edi
40fa9b:	61                   	popa
40fa9c:	64 6a 5f             	fs push $0x5f
40fa9f:	66 70 72             	data16 jo 0x40fb14
40faa2:	65 6d                	gs insl (%dx),%es:(%edi)
40faa4:	00 00                	add    %al,(%eax)
40faa6:	af                   	scas   %es:(%edi),%eax
40faa7:	01 5f 61             	add    %ebx,0x61(%edi)
40faaa:	64 6a 5f             	fs push $0x5f
40faad:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40fab4:	36 34 00             	ss xor $0x0,%al
40fab7:	00 93 00 5f 5f 76    	add    %dl,0x765f5f00(%ebx)
40fabd:	62 61 46             	bound  %esp,0x46(%ecx)
40fac0:	50                   	push   %eax
40fac1:	45                   	inc    %ebp
40fac2:	78 63                	js     0x40fb27
40fac4:	65 70 74             	gs jo  0x40fb3b
40fac7:	69 6f 6e 00 00 55 00 	imul   $0x550000,0x6e(%edi),%ebp
40face:	5f                   	pop    %edi
40facf:	43                   	inc    %ebx
40fad0:	49                   	dec    %ecx
40fad1:	6c                   	insb   (%dx),%es:(%edi)
40fad2:	6f                   	outsl  %ds:(%esi),(%dx)
40fad3:	67 00 00             	add    %al,(%bx,%si)
40fad6:	f7 00 5f 5f 76 62    	testl  $0x62765f5f,(%eax)
40fadc:	61                   	popa
40fadd:	4e                   	dec    %esi
40fade:	65 77 32             	gs ja  0x40fb13
40fae1:	00 d0                	add    %dl,%al
40fae3:	00 5f 5f             	add    %bl,0x5f(%edi)
40fae6:	76 62                	jbe    0x40fb4a
40fae8:	61                   	popa
40fae9:	49                   	dec    %ecx
40faea:	6e                   	outsb  %ds:(%esi),(%dx)
40faeb:	53                   	push   %ebx
40faec:	74 72                	je     0x40fb60
40faee:	00 00                	add    %al,(%eax)
40faf0:	a9 01 5f 61 64       	test   $0x64615f01,%eax
40faf5:	6a 5f                	push   $0x5f
40faf7:	66 64 69 76 5f 6d 33 	imul   $0x336d,%fs:0x5f(%esi),%si
40fafe:	32 69 00             	xor    0x0(%ecx),%ch
40fb01:	00 ae 01 5f 61 64    	add    %ch,0x64615f01(%esi)
40fb07:	6a 5f                	push   $0x5f
40fb09:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40fb10:	33 32                	xor    (%edx),%esi
40fb12:	69 00 7e 01 5f 5f    	imul   $0x5f5f017e,(%eax),%eax
40fb18:	76 62                	jbe    0x40fb7c
40fb1a:	61                   	popa
40fb1b:	56                   	push   %esi
40fb1c:	61                   	popa
40fb1d:	72 53                	jb     0x40fb72
40fb1f:	65 74 4f             	gs je  0x40fb71
40fb22:	62 6a 00             	bound  %ebp,0x0(%edx)
40fb25:	00 ce                	add    %cl,%dh
40fb27:	00 5f 5f             	add    %bl,0x5f(%edi)
40fb2a:	76 62                	jbe    0x40fb8e
40fb2c:	61                   	popa
40fb2d:	49                   	dec    %ecx
40fb2e:	34 53                	xor    $0x53,%al
40fb30:	74 72                	je     0x40fba4
40fb32:	00 00                	add    %al,(%eax)
40fb34:	b0 00                	mov    $0x0,%al
40fb36:	5f                   	pop    %edi
40fb37:	5f                   	pop    %edi
40fb38:	76 62                	jbe    0x40fb9c
40fb3a:	61                   	popa
40fb3b:	46                   	inc    %esi
40fb3c:	72 65                	jb     0x40fba3
40fb3e:	65 53                	gs push %ebx
40fb40:	74 72                	je     0x40fbb4
40fb42:	4c                   	dec    %esp
40fb43:	69 73 74 00 00 ad 01 	imul   $0x1ad0000,0x74(%ebx),%esi
40fb4a:	5f                   	pop    %edi
40fb4b:	61                   	popa
40fb4c:	64 6a 5f             	fs push $0x5f
40fb4f:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40fb56:	33 32                	xor    (%edx),%esi
40fb58:	00 00                	add    %al,(%eax)
40fb5a:	ab                   	stos   %eax,%es:(%edi)
40fb5b:	01 5f 61             	add    %ebx,0x61(%edi)
40fb5e:	64 6a 5f             	fs push $0x5f
40fb61:	66 64 69 76 5f 72 00 	imul   $0x72,%fs:0x5f(%esi),%si
40fb68:	98                   	cwtl
40fb69:	01 5f 5f             	add    %ebx,0x5f(%edi)
40fb6c:	76 62                	jbe    0x40fbd0
40fb6e:	61                   	popa
40fb6f:	56                   	push   %esi
40fb70:	61                   	popa
40fb71:	72 54                	jb     0x40fbc7
40fb73:	73 74                	jae    0x40fbe9
40fb75:	4e                   	dec    %esi
40fb76:	65 00 de             	gs add %bl,%dh
40fb79:	00 5f 5f             	add    %bl,0x5f(%edi)
40fb7c:	76 62                	jbe    0x40fbe0
40fb7e:	61                   	popa
40fb7f:	4c                   	dec    %esp
40fb80:	61                   	popa
40fb81:	74 65                	je     0x40fbe8
40fb83:	4d                   	dec    %ebp
40fb84:	65 6d                	gs insl (%dx),%es:(%edi)
40fb86:	43                   	inc    %ebx
40fb87:	61                   	popa
40fb88:	6c                   	insb   (%dx),%es:(%edi)
40fb89:	6c                   	insb   (%dx),%es:(%edi)
40fb8a:	00 00                	add    %al,(%eax)
40fb8c:	d1 00                	roll   $1,(%eax)
40fb8e:	5f                   	pop    %edi
40fb8f:	5f                   	pop    %edi
40fb90:	76 62                	jbe    0x40fbf4
40fb92:	61                   	popa
40fb93:	49                   	dec    %ecx
40fb94:	6e                   	outsb  %ds:(%esi),(%dx)
40fb95:	53                   	push   %ebx
40fb96:	74 72                	je     0x40fc0a
40fb98:	42                   	inc    %edx
40fb99:	00 62 01             	add    %ah,0x1(%edx)
40fb9c:	5f                   	pop    %edi
40fb9d:	5f                   	pop    %edi
40fb9e:	76 62                	jbe    0x40fc02
40fba0:	61                   	popa
40fba1:	56                   	push   %esi
40fba2:	61                   	popa
40fba3:	72 44                	jb     0x40fbe9
40fba5:	75 70                	jne    0x40fc17
40fba7:	00 35 01 5f 5f 76    	add    %dh,0x765f5f01
40fbad:	62 61 53             	bound  %esp,0x53(%ecx)
40fbb0:	74 72                	je     0x40fc24
40fbb2:	43                   	inc    %ebx
40fbb3:	6f                   	outsl  %ds:(%esi),(%dx)
40fbb4:	6d                   	insl   (%dx),%es:(%edi)
40fbb5:	70 00                	jo     0x40fbb7
40fbb7:	00 a9 00 5f 5f 76    	add    %ch,0x765f5f00(%ecx)
40fbbd:	62 61 46             	bound  %esp,0x46(%ecx)
40fbc0:	70 49                	jo     0x40fc0b
40fbc2:	34 00                	xor    $0x0,%al
40fbc4:	5f                   	pop    %edi
40fbc5:	01 5f 5f             	add    %ebx,0x5f(%edi)
40fbc8:	76 62                	jbe    0x40fc2c
40fbca:	61                   	popa
40fbcb:	56                   	push   %esi
40fbcc:	61                   	popa
40fbcd:	72 43                	jb     0x40fc12