40ace4:	76 62                	jbe    0x40ad48
40ace6:	61                   	popa
40ace7:	43                   	inc    %ebx
40ace8:	61                   	popa
40ace9:	73 74                	jae    0x40ad5f
40aceb:	4f                   	dec    %edi
40acec:	62 6a 56             	bound  %ebp,0x56(%edx)
40acef:	61                   	popa
40acf0:	72 00                	jb     0x40acf2
40acf2:	b0 01                	mov    $0x1,%al
40acf4:	5f                   	pop    %edi
40acf5:	61                   	popa
40acf6:	64 6a 5f             	fs push $0x5f
40acf9:	66 70 61             	data16 jo 0x40ad5d
40acfc:	74 61                	je     0x40ad5f
40acfe:	6e                   	outsb  %ds:(%esi),(%dx)
40acff:	00 23                	add    %ah,(%ebx)
40ad01:	01 5f 5f             	add    %ebx,0x5f(%edi)
40ad04:	76 62                	jbe    0x40ad68
40ad06:	61                   	popa
40ad07:	52                   	push   %edx
40ad08:	65 64 69 6d 00 00 15 	gs imul $0x45001500,%fs:0x0(%ebp),%ebp
40ad0f:	00 45
40ad11:	56                   	push   %esi
40ad12:	45                   	inc    %ebp
40ad13:	4e                   	dec    %esi
40ad14:	54                   	push   %esp
40ad15:	5f                   	pop    %edi
40ad16:	53                   	push   %ebx
40ad17:	49                   	dec    %ecx
40ad18:	4e                   	dec    %esi
40ad19:	4b                   	dec    %ebx
40ad1a:	5f                   	pop    %edi
40ad1b:	52                   	push   %edx
40ad1c:	65 6c                	gs insb (%dx),%es:(%edi)
40ad1e:	65 61                	gs popa
40ad20:	73 65                	jae    0x40ad87
40ad22:	00 00                	add    %al,(%eax)
40ad24:	4c                   	dec    %esp
40ad25:	01 5f 5f             	add    %ebx,0x5f(%edi)
40ad28:	76 62                	jbe    0x40ad8c
40ad2a:	61                   	popa
40ad2b:	55                   	push   %ebp
40ad2c:	49                   	dec    %ecx
40ad2d:	31 49 32             	xor    %ecx,0x32(%ecx)
40ad30:	00 00                	add    %al,(%eax)
40ad32:	57                   	push   %edi
40ad33:	00 5f 43             	add    %bl,0x43(%edi)
40ad36:	49                   	dec    %ecx
40ad37:	73 71                	jae    0x40adaa
40ad39:	72 74                	jb     0x40adaf
40ad3b:	00 14 00             	add    %dl,(%eax,%eax,1)
40ad3e:	45                   	inc    %ebp
40ad3f:	56                   	push   %esi
40ad40:	45                   	inc    %ebp
40ad41:	4e                   	dec    %esi
40ad42:	54                   	push   %esp
40ad43:	5f                   	pop    %edi
40ad44:	53                   	push   %ebx
40ad45:	49                   	dec    %ecx
40ad46:	4e                   	dec    %esi
40ad47:	4b                   	dec    %ebx
40ad48:	5f                   	pop    %edi
40ad49:	51                   	push   %ecx
40ad4a:	75 65                	jne    0x40adb1
40ad4c:	72 79                	jb     0x40adc7
40ad4e:	49                   	dec    %ecx
40ad4f:	6e                   	outsb  %ds:(%esi),(%dx)
40ad50:	74 65                	je     0x40adb7
40ad52:	72 66                	jb     0x40adba
40ad54:	61                   	popa
40ad55:	63 65 00             	arpl   %esp,0x0(%ebp)
40ad58:	a6                   	cmpsb  %es:(%edi),%ds:(%esi)
40ad59:	00 5f 5f             	add    %bl,0x5f(%edi)
40ad5c:	76 62                	jbe    0x40adc0
40ad5e:	61                   	popa
40ad5f:	46                   	inc    %esi
40ad60:	70 43                	jo     0x40ada5
40ad62:	6d                   	insl   (%dx),%es:(%edi)
40ad63:	70 43                	jo     0x40ada8
40ad65:	79 00                	jns    0x40ad67
40ad67:	00 8e 00 5f 5f 76    	add    %cl,0x765f5f00(%esi)
40ad6d:	62 61 45             	bound  %esp,0x45(%ecx)
40ad70:	78 63                	js     0x40add5
40ad72:	65 70 74             	gs jo  0x40ade9
40ad75:	48                   	dec    %eax
40ad76:	61                   	popa
40ad77:	6e                   	outsb  %ds:(%esi),(%dx)
40ad78:	64 6c                	fs insb (%dx),%es:(%edi)
40ad7a:	65 72 00             	gs jb  0x40ad7d
40ad7d:	00 b1 01 5f 61 64    	add    %dh,0x64615f01(%ecx)
40ad83:	6a 5f                	push   $0x5f
40ad85:	66 70 72             	data16 jo 0x40adfa
40ad88:	65 6d                	gs insl (%dx),%es:(%edi)
40ad8a:	00 00                	add    %al,(%eax)
40ad8c:	af                   	scas   %es:(%edi),%eax
40ad8d:	01 5f 61             	add    %ebx,0x61(%edi)
40ad90:	64 6a 5f             	fs push $0x5f
40ad93:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40ad9a:	36 34 00             	ss xor $0x0,%al
40ad9d:	00 93 00 5f 5f 76    	add    %dl,0x765f5f00(%ebx)
40ada3:	62 61 46             	bound  %esp,0x46(%ecx)
40ada6:	50                   	push   %eax
40ada7:	45                   	inc    %ebp
40ada8:	78 63                	js     0x40ae0d
40adaa:	65 70 74             	gs jo  0x40ae21
40adad:	69 6f 6e 00 00 55 00 	imul   $0x550000,0x6e(%edi),%ebp
40adb4:	5f                   	pop    %edi
40adb5:	43                   	inc    %ebx
40adb6:	49                   	dec    %ecx
40adb7:	6c                   	insb   (%dx),%es:(%edi)
40adb8:	6f                   	outsl  %ds:(%esi),(%dx)
40adb9:	67 00 00             	add    %al,(%bx,%si)
40adbc:	f7 00 5f 5f 76 62    	testl  $0x62765f5f,(%eax)
40adc2:	61                   	popa
40adc3:	4e                   	dec    %esi
40adc4:	65 77 32             	gs ja  0x40adf9
40adc7:	00 d0                	add    %dl,%al
40adc9:	00 5f 5f             	add    %bl,0x5f(%edi)
40adcc:	76 62                	jbe    0x40ae30
40adce:	61                   	popa
40adcf:	49                   	dec    %ecx
40add0:	6e                   	outsb  %ds:(%esi),(%dx)
40add1:	53                   	push   %ebx
40add2:	74 72                	je     0x40ae46
40add4:	00 00                	add    %al,(%eax)
40add6:	a9 01 5f 61 64       	test   $0x64615f01,%eax
40addb:	6a 5f                	push   $0x5f
40addd:	66 64 69 76 5f 6d 33 	imul   $0x336d,%fs:0x5f(%esi),%si
40ade4:	32 69 00             	xor    0x0(%ecx),%ch
40ade7:	00 ae 01 5f 61 64    	add    %ch,0x64615f01(%esi)
40aded:	6a 5f                	push   $0x5f
40adef:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40adf6:	33 32                	xor    (%edx),%esi
40adf8:	69 00 37 01 5f 5f    	imul   $0x5f5f0137,(%eax),%eax
40adfe:	76 62                	jbe    0x40ae62
40ae00:	61                   	popa
40ae01:	53                   	push   %ebx
40ae02:	74 72                	je     0x40ae76
40ae04:	43                   	inc    %ebx
40ae05:	6f                   	outsl  %ds:(%esi),(%dx)
40ae06:	70 79                	jo     0x40ae81
40ae08:	00 00                	add    %al,(%eax)
40ae0a:	7e 01                	jle    0x40ae0d
40ae0c:	5f                   	pop    %edi
40ae0d:	5f                   	pop    %edi
40ae0e:	76 62                	jbe    0x40ae72
40ae10:	61                   	popa
40ae11:	56                   	push   %esi
40ae12:	61                   	popa
40ae13:	72 53                	jb     0x40ae68
40ae15:	65 74 4f             	gs je  0x40ae67
40ae18:	62 6a 00             	bound  %ebp,0x0(%edx)
40ae1b:	00 ce                	add    %cl,%dh
40ae1d:	00 5f 5f             	add    %bl,0x5f(%edi)
40ae20:	76 62                	jbe    0x40ae84
40ae22:	61                   	popa
40ae23:	49                   	dec    %ecx
40ae24:	34 53                	xor    $0x53,%al
40ae26:	74 72                	je     0x40ae9a
40ae28:	00 00                	add    %al,(%eax)
40ae2a:	b0 00                	mov    $0x0,%al
40ae2c:	5f                   	pop    %edi
40ae2d:	5f                   	pop    %edi
40ae2e:	76 62                	jbe    0x40ae92
40ae30:	61                   	popa
40ae31:	46                   	inc    %esi
40ae32:	72 65                	jb     0x40ae99
40ae34:	65 53                	gs push %ebx
40ae36:	74 72                	je     0x40aeaa
40ae38:	4c                   	dec    %esp
40ae39:	69 73 74 00 00 ad 01 	imul   $0x1ad0000,0x74(%ebx),%esi
40ae40:	5f                   	pop    %edi
40ae41:	61                   	popa
40ae42:	64 6a 5f             	fs push $0x5f
40ae45:	66 64 69 76 72 5f 6d 	imul   $0x6d5f,%fs:0x72(%esi),%si
40ae4c:	33 32                	xor    (%edx),%esi
40ae4e:	00 00                	add    %al,(%eax)
40ae50:	ab                   	stos   %eax,%es:(%edi)
40ae51:	01 5f 61             	add    %ebx,0x61(%edi)
40ae54:	64 6a 5f             	fs push $0x5f
40ae57:	66 64 69 76 5f 72 00 	imul   $0x72,%fs:0x5f(%esi),%si
40ae5e:	98                   	cwtl
40ae5f:	01 5f 5f             	add    %ebx,0x5f(%edi)
40ae62:	76 62                	jbe    0x40aec6
40ae64:	61                   	popa
40ae65:	56                   	push   %esi
40ae66:	61                   	popa
40ae67:	72 54                	jb     0x40aebd
40ae69:	73 74                	jae    0x40aedf
40ae6b:	4e                   	dec    %esi
40ae6c:	65 00 de             	gs add %bl,%dh
40ae6f:	00 5f 5f             	add    %bl,0x5f(%edi)
40ae72:	76 62                	jbe    0x40aed6
40ae74:	61                   	popa
40ae75:	4c                   	dec    %esp
40ae76:	61                   	popa
40ae77:	74 65                	je     0x40aede
40ae79:	4d                   	dec    %ebp
40ae7a:	65 6d                	gs insl (%dx),%es:(%edi)
40ae7c:	43                   	inc    %ebx
40ae7d:	61                   	popa
40ae7e:	6c                   	insb   (%dx),%es:(%edi)
40ae7f:	6c                   	insb   (%dx),%es:(%edi)
40ae80:	00 00                	add    %al,(%eax)
40ae82:	62 01                	bound  %eax,(%ecx)
40ae84:	5f                   	pop    %edi
40ae85:	5f                   	pop    %edi
40ae86:	76 62                	jbe    0x40aeea
40ae88:	61                   	popa
40ae89:	56                   	push   %esi
40ae8a:	61                   	popa
40ae8b:	72 44                	jb     0x40aed1
40ae8d:	75 70                	jne    0x40aeff
40ae8f:	00 70 01             	add    %dh,0x1(%eax)
40ae92:	5f                   	pop    %edi
40ae93:	5f                   	pop    %edi
40ae94:	76 62                	jbe    0x40aef8
40ae96:	61                   	popa
40ae97:	56                   	push   %esi
40ae98:	61                   	popa
40ae99:	72 4c                	jb     0x40aee7
40ae9b:	61                   	popa
40ae9c:	74 65                	je     0x40af03
40ae9e:	4d                   	dec    %ebp
40ae9f:	65 6d                	gs insl (%dx),%es:(%edi)
40aea1:	43                   	inc    %ebx
40aea2:	61                   	popa
40aea3:	6c                   	insb   (%dx),%es:(%edi)
40aea4:	6c                   	insb   (%dx),%es:(%edi)
40aea5:	4c                   	dec    %esp
40aea6:	64 00 a9 00 5f 5f 76 	add    %ch,%fs:0x765f5f00(%ecx)
40aead:	62 61 46             	bound  %esp,0x46(%ecx)
40aeb0:	70 49                	jo     0x40aefb
40aeb2:	34 00                	xor    $0x0,%al
40aeb4:	5f                   	pop    %edi
40aeb5:	01 5f 5f             	add    %ebx,0x5f(%edi)
40aeb8:	76 62                	jbe    0x40af1c
40aeba:	61                   	popa
40aebb:	56                   	push   %esi
40aebc:	61                   	popa
40aebd:	72 43                	jb     0x40af02
40aebf:	6f                   	outsl  %ds:(%esi),(%dx)
40aec0:	70 79                	jo     0x40af3b
40aec2:	00 00                	add    %al,(%eax)
40aec4:	df 00                	filds  (%eax)
40aec6:	5f                   	pop    %edi
40aec7:	5f                   	pop    %edi
40aec8:	76 62                	jbe    0x40af2c
40aeca:	61                   	popa
40aecb:	4c                   	dec    %esp
40aecc:	61                   	popa
40aecd:	74 65                	je     0x40af34
40aecf:	4d                   	dec    %ebp
40aed0:	65 6d                	gs insl (%dx),%es:(%edi)
40aed2:	43                   	inc    %ebx
40aed3:	61                   	popa
40aed4:	6c                   	insb   (%dx),%es:(%edi)
40aed5:	6c                   	insb   (%dx),%es:(%edi)
40aed6:	4c                   	dec    %esp
40aed7:	64 00 00             	add    %al,%fs:(%eax)
40aeda:	52                   	push   %edx
40aedb:	00 5f 43             	add    %bl,0x43(%edi)
40aede:	49                   	dec    %ecx
40aedf:	61                   	popa
40aee0:	74 61                	je     0x40af43
40aee2:	6e                   	outsb  %ds:(%esi),(%dx)
40aee3:	00 3f                	add    %bh,(%edi)
40aee5:	01 5f 5f             	add    %ebx,0x5f(%edi)
40aee8:	76 62                	jbe    0x40af4c
40aeea:	61                   	popa
40aeeb:	53                   	push   %ebx
40aeec:	74 72                	je     0x40af60
40aeee:	4d                   	dec    %ebp
40aeef:	6f                   	outsl  %ds:(%esi),(%dx)
40aef0:	76 65                	jbe    0x40af57
40aef2:	00 00                	add    %al,(%eax)
40aef4:	5c                   	pop    %esp
40aef5:	00 5f 5f             	add    %bl,0x5f(%edi)
40aef8:	76 62                	jbe    0x40af5c
40aefa:	61                   	popa
40aefb:	41                   	inc    %ecx
40aefc:	72 79                	jb     0x40af77
40aefe:	43                   	inc    %ebx
40aeff:	6f                   	outsl  %ds:(%esi),(%dx)
40af00:	70 79                	jo     0x40af7b
40af02:	00 00                	add    %al,(%eax)
40af04:	b4 01                	mov    $0x1,%ah
40af06:	5f                   	pop    %edi
40af07:	61                   	popa
40af08:	6c                   	insb   (%dx),%es:(%edi)
40af09:	6c                   	insb   (%dx),%es:(%edi)
40af0a:	6d                   	insl   (%dx),%es:(%edi)
40af0b:	75 6c                	jne    0x40af79
40af0d:	00 58 00             	add    %bl,0x0(%eax)
40af10:	5f                   	pop    %edi
40af11:	43                   	inc    %ebx
40af12:	49                   	dec    %ecx
40af13:	74 61                	je     0x40af76
40af15:	6e                   	outsb  %ds:(%esi),(%dx)
40af16:	00 00                	add    %al,(%eax)
40af18:	54                   	push   %esp
40af19:	00 5f 43             	add    %bl,0x43(%edi)
40af1c:	49                   	dec    %ecx
40af1d:	65 78 70             	gs js  0x40af90
40af20:	00 00                	add    %al,(%eax)
40af22:	af                   	scas   %es:(%edi),%eax
40af23:	00 5f 5f             	add    %bl,0x5f(%edi)
40af26:	76 62                	jbe    0x40af8a
40af28:	61                   	popa
40af29:	46                   	inc    %esi
40af2a:	72 65                	jb     0x40af91
40af2c:	65 53                	gs push %ebx
40af2e:	74 72                	je     0x40afa2
40af30:	00 00                	add    %al,(%eax)
40af32:	ad                   	lods   %ds:(%esi),%eax
40af33:	00 5f 5f             	add    %bl,0x5f(%edi)
40af36:	76 62                	jbe    0x40af9a
40af38:	61                   	popa
40af39:	46                   	inc    %esi
40af3a:	72 65                	jb     0x40afa1
40af3c:	65 4f                	gs dec %edi
40af3e:	62 6a 00             	bound  %ebp,0x0(%edx)
40af41:	00 00                	add    %al,(%eax)