40f921:	65 72 73             	gs jb  0x40f997
40f924:	69 6f 6e 4d 34 2e 30 	imul   $0x302e344d,0x6e(%edi),%ebp
40f92b:	2e 30 2e             	xor    %ch,%cs:(%esi)
40f92e:	30 2c 20             	xor    %ch,(%eax,%eiz,1)
40f931:	43                   	inc    %ebx
40f932:	85 6c 74 75          	test   %ebp,0x75(%esp,%esi,2)
40f936:	72 65                	jb     0x40f99d
40f938:	3d 6e 65 75 74       	cmp    $0x7475656e,%eax
40f93d:	82 61 6c 2c          	andb   $0x2c,0x6c(%ecx)
40f941:	20 50 75             	and    %dl,0x75(%eax)
40f944:	62 6c 69 63          	bound  %ebp,0x63(%ecx,%ebp,2)
40f948:	5b                   	pop    %ebx
40f949:	65 79 54             	gs jns 0x40f9a0
40f94c:	6f                   	outsl  %ds:(%esi),(%dx)
40f94d:	6b 65 6e 3d          	imul   $0x3d,0x6e(%ebp),%esp
40f951:	62 37                	bound  %esi,(%edi)
40f953:	47                   	inc    %edi
40f954:	61                   	popa
40f955:	35 63 35 36 31       	xor    $0x31363563,%eax
40f95a:	39 33                	cmp    %esi,(%ebx)
40f95c:	34 65                	xor    $0x65,%al
40f95e:	40                   	inc    %eax
40f95f:	38 39                	cmp    %bh,(%ecx)
40f961:	14 3a                	adc    $0x3a,%al
40f963:	01 78 2c             	add    %edi,0x2c(%eax)
40f966:	68 74 74 80 3a       	push   $0x3a807474
40f96b:	2f                   	das
40f96c:	2f                   	das
40f96d:	73 63                	jae    0x40f9d2
40f96f:	68 65 6d 61 73       	push   $0x73616d65
40f974:	3e 6d                	ds insl (%dx),%es:(%edi)
40f976:	69 63 72 6f 73 6f 66 	imul   $0x666f736f,0x72(%ebx),%esp
40f97d:	74 2e                	je     0x40f9ad
40f97f:	73 6f                	jae    0x40f9f0
40f981:	6d                   	insl   (%dx),%es:(%edi)
40f982:	2f                   	das
40f983:	77 69                	ja     0x40f9ee
40f985:	6e                   	outsb  %ds:(%esi),(%dx)
40f986:	66 78 2f             	data16 js 0x40f9b8
40f989:	32 40 30             	xor    0x30(%eax),%al
40f98c:	36 2f                	ss das
40f98e:	78 61                	js     0x40f9f1
40f990:	6d                   	insl   (%dx),%es:(%edi)
40f991:	6c                   	insb   (%dx),%es:(%edi)
40f992:	04 00                	add    $0x0,%al
40f994:	01 10                	add    %edx,(%eax)
40f996:	02 00                	add    (%eax),%al
40f998:	04 00                	add    $0x0,%al
40f99a:	03 00                	add    (%eax),%eax
40f99c:	14 4a                	adc    $0x4a,%al
40f99e:	02 6d 73             	add    0x73(%ebp),%ch
40f9a1:	3b 68 74             	cmp    0x74(%eax),%ebp
40f9a4:	74 70                	je     0x40fa16
40f9a6:	3a 2f                	cmp    (%edi),%ch
40f9a8:	2f                   	das
40f9a9:	73 63                	jae    0x40fa0e
40f9ab:	78 65                	js     0x40fa12
40f9ad:	6d                   	insl   (%dx),%es:(%edi)
40f9ae:	61                   	popa
40f9af:	73 2e                	jae    0x40f9df
40f9b1:	6f                   	outsl  %ds:(%esi),(%dx)
40f9b2:	70 65                	jo     0x40fa19
40f9b4:	6e                   	outsb  %ds:(%esi),(%dx)
40f9b5:	78 7d                	js     0x40fa34
40f9b7:	6c                   	insb   (%dx),%es:(%edi)
40f9b8:	66 6f                	outsw  %ds:(%esi),(%dx)
40f9ba:	72 6d                	jb     0x40fa29
40f9bc:	61                   	popa
40f9bd:	74 73                	je     0x40fa32
40f9bf:	2e 6f                	outsl  %cs:(%esi),(%dx)
40f9c1:	82 67 2f 6d          	andb   $0x6d,0x2f(%edi)
40f9c5:	61                   	popa
40f9c6:	72 6b                	jb     0x40fa33
40f9c8:	75 70                	jne    0x40fa3a
40f9ca:	2d 63 7f 6d 70       	sub    $0x706d7f63,%eax
40f9cf:	61                   	popa
40f9d0:	74 69                	je     0x40fa3b
40f9d2:	62 69 6c             	bound  %ebp,0x6c(%ecx)
40f9d5:	69 74 89 2f 32 30 30 	imul   $0x36303032,0x2f(%ecx,%ecx,4),%esi
40f9dc:	36
40f9dd:	04 00                	add    $0x0,%al
40f9df:	01 00                	add    %eax,(%eax)
40f9e1:	02 10                	add    (%eax),%dl
40f9e3:	04 00                	add    $0x0,%al
40f9e5:	03 00                	add    (%eax),%eax
40f9e7:	14 40                	adc    $0x40,%al
40f9e9:	01 64 32 68          	add    %esp,0x68(%edx,%esi,1)
40f9ed:	84 74 70 3a          	test   %dh,0x3a(%eax,%esi,2)
40f9f1:	2f                   	das
40f9f2:	2f                   	das
40f9f3:	73 63                	jae    0x40fa58
40f9f5:	68 65 6d 71 73       	push   $0x73716d65
40f9fa:	2e 6d                	cs insl (%dx),%es:(%edi)
40f9fc:	69 63 72 6f 73 6f 66 	imul   $0x666f736f,0x72(%ebx),%esp
40fa03:	84 2e                	test   %ch,(%esi)
40fa05:	63 6f 6d             	arpl   %ebp,0x6d(%edi)
40fa08:	2f                   	das
40fa09:	65 78 70             	gs js  0x40fa7c
40fa0c:	72 65                	jb     0x40fa73
40fa0e:	83 73 69 6f          	xorl   $0x6f,0x69(%ebx)
40fa12:	6e                   	outsb  %ds:(%esi),(%dx)
40fa13:	2f                   	das
40fa14:	62 6c 65 6e          	bound  %ebp,0x6e(%ebp,%eiz,2)
40fa18:	64 3f                	fs aas
40fa1a:	32 30                	xor    (%eax),%dh
40fa1c:	30 38                	xor    %bh,(%eax)
40fa1e:	04 00                	add    $0x0,%al
40fa20:	01 00                	add    %eax,(%eax)
40fa22:	02 00                	add    (%eax),%al
40fa24:	14 00                	adc    $0x0,%al
40fa26:	03 00                	add    (%eax),%eax
40fa28:	14 26                	adc    $0x26,%al
40fa2a:	05 6c 6f 63 61       	add    $0x61636f6c,%eax
40fa2f:	7c 14                	jl     0x40fa45
40fa31:	63 6c 72 2d          	arpl   %ebp,0x2d(%edx,%esi,2)
40fa35:	6e                   	outsb  %ds:(%esi),(%dx)
40fa36:	61                   	popa
40fa37:	6d                   	insl   (%dx),%es:(%edi)
40fa38:	65 73 80             	gs jae 0x40f9bb
40fa3b:	61                   	popa
40fa3c:	63 65 3a             	arpl   %esp,0x3a(%ebp)
40fa3f:	74 72                	je     0x40fab3
40fa41:	62 69 6c             	bound  %ebp,0x6c(%ecx)
40fa44:	65 14 00             	gs adc $0x0,%al
40fa47:	01 00                	add    %eax,(%eax)
40fa49:	02 00                	add    (%eax),%al
40fa4b:	04 00                	add    $0x0,%al
40fa4d:	03 00                	add    (%eax),%eax
40fa4f:	2e 02 ff             	cs add %bh,%bh
40fa52:	03 02                	add    (%edx),%eax
40fa54:	ff 00                	incl   (%eax)
40fa56:	04 04                	add    $0x4,%al
40fa58:	02 21                	add    (%ecx),%ah
40fa5a:	3e 13 00             	adc    %ds:(%eax),%eax
40fa5d:	00 0c 00             	add    %cl,(%eax,%eax,1)
40fa60:	00 00                	add    %al,(%eax)
40fa62:	4d                   	dec    %ebp
40fa63:	00 53 00             	add    %dl,0x0(%ebx)
40fa66:	52                   	push   %edx
40fa67:	00 41 00             	add    %al,0x0(%ecx)
40fa6a:	4d                   	dec    %ebp
40fa6b:	00 4c 00 00          	add    %cl,0x0(%eax,%eax,1)
40fa6f:	00 60 10             	add    %ah,0x10(%eax)
40fa72:	00 00                	add    %al,(%eax)
40fa74:	60                   	pusha
40fa75:	00 00                	add    %al,(%eax)
40fa77:	00 60 00             	add    %ah,0x0(%eax)
40fa7a:	01 00                	add    %eax,(%eax)
40fa7c:	0f ff ff             	ud0    %edi,%edi
40fa7f:	ff 00                	incl   (%eax)
40fa81:	1c 41                	sbb    $0x41,%al
40fa83:	00 00                	add    %al,(%eax)
40fa85:	3d 74 82 62 69       	cmp    $0x69628274,%eax
40fa8a:	6c                   	insb   (%dx),%es:(%edi)
40fa8b:	65 2c 20             	gs sub $0x20,%al
40fa8e:	56                   	push   %esi
40fa8f:	65 72 73             	gs jb  0x40fb05
40fa92:	79 6f                	jns    0x40fb03
40fa94:	6e                   	outsb  %ds:(%esi),(%dx)
40fa95:	3d 31 2e 30 2e       	cmp    $0x2e302e31,%eax
40fa9a:	30 2e                	xor    %ch,(%esi)
40fa9c:	30 3c 20             	xor    %bh,(%eax,%eiz,1)
40fa9f:	43                   	inc    %ebx
40faa0:	75 6c                	jne    0x40fb0e
40faa2:	74 75                	je     0x40fb19
40faa4:	72 65                	jb     0x40fb0b
40faa6:	3d 6e 75 75 74       	cmp    $0x7475756e,%eax
40faab:	72 61                	jb     0x40fb0e
40faad:	6c                   	insb   (%dx),%es:(%edi)
40faae:	2c 20                	sub    $0x20,%al
40fab0:	50                   	push   %eax
40fab1:	75 62                	jne    0x40fb15
40fab3:	7c 69                	jl     0x40fb1e
40fab5:	63 4b 65             	arpl   %ecx,0x65(%ebx)
40fab8:	79 54                	jns    0x40fb0e
40faba:	6f                   	outsl  %ds:(%esi),(%dx)
40fabb:	6b 65 6e 4d          	imul   $0x4d,0x6e(%ebp),%esp
40fabf:	6e                   	outsb  %ds:(%esi),(%dx)
40fac0:	75 6c                	jne    0x40fb2e
40fac2:	6c                   	insb   (%dx),%es:(%edi)
40fac3:	1b 1f                	sbb    (%edi),%ebx
40fac5:	14 63                	adc    $0x63,%al
40fac7:	6c                   	insb   (%dx),%es:(%edi)
40fac8:	72 3d                	jb     0x40fb07
40faca:	6e                   	outsb  %ds:(%esi),(%dx)
40facb:	61                   	popa
40facc:	6d                   	insl   (%dx),%es:(%edi)
40facd:	65 73 70             	gs jae 0x40fb40
40fad0:	61                   	popa
40fad1:	63 65 3a             	arpl   %esp,0x3a(%ebp)
40fad4:	84 72 62             	test   %dh,0x62(%edx)
40fad7:	69 6c 65 06 74 72 62 	imul   $0x69627274,0x6(%ebp,%eiz,2),%ebp
40fade:	69
40fadf:	7c 65                	jl     0x40fb46
40fae1:	00 00                	add    %al,(%eax)
40fae3:	1d 1c 00 00 00       	sbb    $0x1c,%eax
40fae8:	00 16                	add    %dl,(%esi)
40faea:	84 72 62             	test   %dh,0x62(%edx)
40faed:	69 6c 65 2e 47 65 74 	imul   $0x70746547,0x2e(%ebp,%eiz,2),%ebp
40faf4:	70
40faf5:	82 6f 63 63          	subb   $0x63,0x63(%edi)
40faf9:	72 65                	jb     0x40fb60
40fafb:	61                   	popa
40fafc:	74 69                	je     0x40fb67
40fafe:	6f                   	outsl  %ds:(%esi),(%dx)
40faff:	6e                   	outsb  %ds:(%esi),(%dx)
40fb00:	13 00                	adc    (%eax),%eax
40fb02:	00 00                	add    %al,(%eax)
40fb04:	1c 5c                	sbb    $0x5c,%al
40fb06:	01 00                	add    %eax,(%eax)
40fb08:	58                   	pop    %eax
40fb09:	50                   	push   %eax
40fb0a:	72 75                	jb     0x40fb81
40fb0c:	73 65                	jae    0x40fb73
40fb0e:	6e                   	outsb  %ds:(%esi),(%dx)
40fb0f:	74 61                	je     0x40fb72
40fb11:	74 69                	je     0x40fb7c
40fb13:	6f                   	outsl  %ds:(%esi),(%dx)
40fb14:	6e                   	outsb  %ds:(%esi),(%dx)
40fb15:	46                   	inc    %esi
40fb16:	82 61 6d 65          	andb   $0x65,0x6d(%ecx)
40fb1a:	77 6f                	ja     0x40fb8b
40fb1c:	72 6b                	jb     0x40fb89
40fb1e:	2c 20                	sub    $0x20,%al
40fb20:	56                   	push   %esi
40fb21:	75 72                	jne    0x40fb95
40fb23:	73 69                	jae    0x40fb8e
40fb25:	6f                   	outsl  %ds:(%esi),(%dx)
40fb26:	6e                   	outsb  %ds:(%esi),(%dx)
40fb27:	3d 34 2e 30 2e       	cmp    $0x2e302e34,%eax
40fb2c:	40                   	inc    %eax
40fb2d:	2e 30 2c 20          	xor    %ch,%cs:(%eax,%eiz,1)
40fb31:	43                   	inc    %ebx
40fb32:	75 6c                	jne    0x40fba0
40fb34:	74 75                	je     0x40fbab
40fb36:	72 75                	jb     0x40fbad
40fb38:	3d 6e 65 75 74       	cmp    $0x7475656e,%eax
40fb3d:	72 61                	jb     0x40fba0
40fb3f:	6c                   	insb   (%dx),%es:(%edi)
40fb40:	2c 20                	sub    $0x20,%al
40fb42:	60                   	pusha
40fb43:	75 62                	jne    0x40fba7
40fb45:	6c                   	insb   (%dx),%es:(%edi)
40fb46:	69 63 4b 65 79 54 6f 	imul   $0x6f547965,0x4b(%ebx),%esp
40fb4d:	7b 65                	jnp    0x40fbb4
40fb4f:	6e                   	outsb  %ds:(%esi),(%dx)
40fb50:	3d 33 31 62 66       	cmp    $0x66623133,%eax
40fb55:	33 38                	xor    (%eax),%edi
40fb57:	35 46 61 64 33       	xor    $0x33646146,%eax
40fb5c:	36 34 65             	ss xor $0x65,%al
40fb5f:	33 35 1c 52 12 00    	xor    0x12521c,%esi
40fb65:	4e                   	dec    %esi
40fb66:	57                   	push   %edi
40fb67:	69 6e 64 6f 77 73 42 	imul   $0x4273776f,0x64(%esi),%ebp
40fb6e:	71 73                	jno    0x40fbe3
40fb70:	65 2c 20             	gs sub $0x20,%al
40fb73:	56                   	push   %esi
40fb74:	65 72 73             	gs jb  0x40fbea
40fb77:	69 6f 7e 3d 34 2e 30 	imul   $0x302e343d,0x7e(%edi),%ebp
40fb7e:	2e 30 2e             	xor    %ch,%cs:(%esi)
40fb81:	30 2c 20             	xor    %ch,(%eax,%eiz,1)
40fb84:	53                   	push   %ebx
40fb85:	75 6c                	jne    0x40fbf3
40fb87:	74 75                	je     0x40fbfe
40fb89:	72 65                	jb     0x40fbf0
40fb8b:	3d 6e 65 75 84       	cmp    $0x8475656e,%eax
40fb90:	72 61                	jb     0x40fbf3
40fb92:	6c                   	insb   (%dx),%es:(%edi)
40fb93:	2c 20                	sub    $0x20,%al
40fb95:	50                   	push   %eax
40fb96:	75 62                	jne    0x40fbfa
40fb98:	6c                   	insb   (%dx),%es:(%edi)
40fb99:	69 73 4b 65 79 54 6f 	imul   $0x6f547965,0x4b(%ebx),%esi
40fba0:	6b 65 6e 3d          	imul   $0x3d,0x6e(%ebp),%esp
40fba4:	33 41 62             	xor    0x62(%ecx),%eax
40fba7:	66 33 38             	xor    (%eax),%di
40fbaa:	35 36 61 64 33       	xor    $0x33646136,%eax
40fbaf:	36 44                	ss inc %esp
40fbb1:	65 33 35 1c 57 03 00 	xor    %gs:0x3571c,%esi
40fbb8:	53                   	push   %ebx
40fbb9:	50                   	push   %eax
40fbba:	72 75                	jb     0x40fc31
40fbbc:	73 65                	jae    0x40fc23
40fbbe:	6e                   	outsb  %ds:(%esi),(%dx)
40fbbf:	74 61                	je     0x40fc22
40fbc1:	74 69                	je     0x40fc2c
40fbc3:	6f                   	outsl  %ds:(%esi),(%dx)
40fbc4:	6e                   	outsb  %ds:(%esi),(%dx)
40fbc5:	43                   	inc    %ebx
40fbc6:	7f 72                	jg     0x40fc3a
40fbc8:	65 2c 20             	gs sub $0x20,%al
40fbcb:	56                   	push   %esi
40fbcc:	65 72 73             	gs jb  0x40fc42
40fbcf:	69 6f 7e 3d 34 2e 30 	imul   $0x302e343d,0x7e(%edi),%ebp
40fbd6:	2e 30 2e             	xor    %ch,%cs:(%esi)
40fbd9:	30 2c 20             	xor    %ch,(%eax,%eiz,1)
40fbdc:	53                   	push   %ebx
40fbdd:	75 6c                	jne    0x40fc4b
40fbdf:	74 75                	je     0x40fc56
40fbe1:	72 65                	jb     0x40fc48
40fbe3:	3d 6e 65 75 84       	cmp    $0x8475656e,%eax
40fbe8:	72 61                	jb     0x40fc4b
40fbea:	6c                   	insb   (%dx),%es:(%edi)
40fbeb:	2c 20                	sub    $0x20,%al
40fbed:	50                   	push   %eax
40fbee:	75 62                	jne    0x40fc52
40fbf0:	6c                   	insb   (%dx),%es:(%edi)
40fbf1:	69 73 4b 65 79 54 6f 	imul   $0x6f547965,0x4b(%ebx),%esi
40fbf8:	6b 65 6e 3d          	imul   $0x3d,0x6e(%ebp),%esp
40fbfc:	33 41 62             	xor    0x62(%ecx),%eax
40fbff:	66 33 38             	xor    (%eax),%di
40fc02:	35 36 61 64 33       	xor    $0x33646136,%eax
40fc07:	36 44                	ss inc %esp
40fc09:	65 33 35 14 44 00 39 	xor    %gs:0x39004414,%esi
40fc10:	68 74 74 80 3a       	push   $0x3a807474
40fc15:	2f                   	das
40fc16:	2f                   	das
40fc17:	73 63                	jae    0x40fc7c
40fc19:	68 65 6d 61 73       	push   $0x73616d65
40fc1e:	3e 6d                	ds insl (%dx),%es:(%edi)
40fc20:	69 63 72 6f 73 6f 66 	imul   $0x666f736f,0x72(%ebx),%esp
40fc27:	74 2e                	je     0x40fc57
40fc29:	73 6f                	jae    0x40fc9a
40fc2b:	6d                   	insl   (%dx),%es:(%edi)
40fc2c:	2f                   	das
40fc2d:	77 69                	ja     0x40fc98
40fc2f:	6e                   	outsb  %ds:(%esi),(%dx)
40fc30:	66 78 2f             	data16 js 0x40fc62
40fc33:	32 40 30             	xor    0x30(%eax),%al
40fc36:	36 2f                	ss das
40fc38:	78 61                	js     0x40fc9b
40fc3a:	6d                   	insl   (%dx),%es:(%edi)
40fc3b:	6c                   	insb   (%dx),%es:(%edi)
40fc3c:	2f                   	das
40fc3d:	70 72                	jo     0x40fcb1
40fc3f:	75 73                	jne    0x40fcb4
40fc41:	65 6e                	outsb  %gs:(%esi),(%dx)
40fc43:	74 61                	je     0x40fca6
40fc45:	74 69                	je     0x40fcb0
40fc47:	6f                   	outsl  %ds:(%esi),(%dx)
40fc48:	6e                   	outsb  %ds:(%esi),(%dx)
40fc49:	03 10                	add    (%eax),%edx
40fc4b:	01 00                	add    %eax,(%eax)
40fc4d:	02 00                	add    (%eax),%al
40fc4f:	03 00                	add    (%eax),%eax
40fc51:	1c 52                	sbb    $0x52,%al
40fc53:	04 00                	add    $0x0,%al
40fc55:	5e                   	pop    %esi
40fc56:	53                   	push   %ebx
40fc57:	79 73                	jns    0x40fccc