402b3a:	8a 1e                	mov    (%esi),%bl
402b3c:	46                   	inc    %esi
402b3d:	eb 9c                	jmp    0x402adb
402b3f:	bf ff ff ff 0f       	mov    $0xfffffff,%edi
402b44:	8a 1e                	mov    (%esi),%bl
402b46:	46                   	inc    %esi
402b47:	84 db                	test   %bl,%bl
402b49:	74 df                	je     0x402b2a
402b4b:	80 fb 61             	cmp    $0x61,%bl
402b4e:	72 03                	jb     0x402b53
402b50:	80 eb 20             	sub    $0x20,%bl
402b53:	80 eb 30             	sub    $0x30,%bl
402b56:	80 fb 09             	cmp    $0x9,%bl
402b59:	76 0b                	jbe    0x402b66
402b5b:	80 eb 11             	sub    $0x11,%bl
402b5e:	80 fb 05             	cmp    $0x5,%bl
402b61:	77 d0                	ja     0x402b33
402b63:	80 c3 0a             	add    $0xa,%bl
402b66:	39 f8                	cmp    %edi,%eax
402b68:	77 c9                	ja     0x402b33
402b6a:	c1 e0 04             	shl    $0x4,%eax
402b6d:	01 d8                	add    %ebx,%eax
402b6f:	8a 1e                	mov    (%esi),%bl
402b71:	46                   	inc    %esi
402b72:	84 db                	test   %bl,%bl
402b74:	75 d5                	jne    0x402b4b
402b76:	fe cd                	dec    %ch
402b78:	75 02                	jne    0x402b7c
402b7a:	f7 d8                	neg    %eax
402b7c:	59                   	pop    %ecx
402b7d:	31 f6                	xor    %esi,%esi
402b7f:	89 32                	mov    %esi,(%edx)
402b81:	5f                   	pop    %edi
402b82:	5e                   	pop    %esi
402b83:	5b                   	pop    %ebx
402b84:	c3                   	ret
402b85:	8d 40 00             	lea    0x0(%eax),%eax
402b88:	53                   	push   %ebx
402b89:	57                   	push   %edi
402b8a:	89 c7                	mov    %eax,%edi
402b8c:	31 db                	xor    %ebx,%ebx
402b8e:	88 cb                	mov    %cl,%bl
402b90:	89 d9                	mov    %ebx,%ecx
402b92:	31 c0                	xor    %eax,%eax
402b94:	f3 aa                	rep stos %al,%es:(%edi)
402b96:	29 df                	sub    %ebx,%edi
402b98:	40                   	inc    %eax
402b99:	88 d1                	mov    %dl,%cl
402b9b:	d2 c0                	rol    %cl,%al
402b9d:	c1 e9 03             	shr    $0x3,%ecx
402ba0:	39 d9                	cmp    %ebx,%ecx
402ba2:	73 03                	jae    0x402ba7
402ba4:	08 04 39             	or     %al,(%ecx,%edi,1)
402ba7:	5f                   	pop    %edi
402ba8:	5b                   	pop    %ebx
402ba9:	c3                   	ret
402baa:	8b c0                	mov    %eax,%eax
402bac:	83 fa 01             	cmp    $0x1,%edx
402baf:	73 01                	jae    0x402bb2
402bb1:	c3                   	ret
402bb2:	51                   	push   %ecx
402bb3:	85 c0                	test   %eax,%eax
402bb5:	75 43                	jne    0x402bfa
402bb7:	8b 42 f8             	mov    -0x8(%edx),%eax
402bba:	85 c0                	test   %eax,%eax
402bbc:	74 35                	je     0x402bf3
402bbe:	52                   	push   %edx
402bbf:	e8 6c fc ff ff       	call   0x402830
402bc4:	5a                   	pop    %edx
402bc5:	85 c0                	test   %eax,%eax
402bc7:	74 26                	je     0x402bef
402bc9:	57                   	push   %edi
402bca:	8b 4a f8             	mov    -0x8(%edx),%ecx
402bcd:	89 c7                	mov    %eax,%edi
402bcf:	50                   	push   %eax
402bd0:	31 c0                	xor    %eax,%eax
402bd2:	c1 e9 02             	shr    $0x2,%ecx
402bd5:	f3 ab                	rep stos %eax,%es:(%edi)
402bd7:	8b 4a f8             	mov    -0x8(%edx),%ecx
402bda:	83 e1 03             	and    $0x3,%ecx
402bdd:	f3 aa                	rep stos %al,%es:(%edi)
402bdf:	58                   	pop    %eax
402be0:	5f                   	pop    %edi
402be1:	8b 4a fc             	mov    -0x4(%edx),%ecx
402be4:	85 c9                	test   %ecx,%ecx
402be6:	7c 03                	jl     0x402beb
402be8:	89 14 01             	mov    %edx,(%ecx,%eax,1)
402beb:	85 c0                	test   %eax,%eax
402bed:	59                   	pop    %ecx
402bee:	c3                   	ret
402bef:	31 d2                	xor    %edx,%edx
402bf1:	59                   	pop    %ecx
402bf2:	c3                   	ret
402bf3:	31 d2                	xor    %edx,%edx
402bf5:	83 f8 01             	cmp    $0x1,%eax
402bf8:	59                   	pop    %ecx
402bf9:	c3                   	ret
402bfa:	8b 4a fc             	mov    -0x4(%edx),%ecx
402bfd:	85 c9                	test   %ecx,%ecx
402bff:	7c 03                	jl     0x402c04
402c01:	89 14 01             	mov    %edx,(%ecx,%eax,1)
402c04:	31 d2                	xor    %edx,%edx
402c06:	85 c0                	test   %eax,%eax
402c08:	59                   	pop    %ecx
402c09:	c3                   	ret
402c0a:	8b c0                	mov    %eax,%eax
402c0c:	ff 25 28 b2 42 00    	jmp    *0x42b228
402c12:	8b c0                	mov    %eax,%eax
402c14:	53                   	push   %ebx
402c15:	33 db                	xor    %ebx,%ebx
402c17:	6a 00                	push   $0x0
402c19:	e8 ee ff ff ff       	call   0x402c0c
402c1e:	83 f8 07             	cmp    $0x7,%eax
402c21:	75 1c                	jne    0x402c3f
402c23:	6a 01                	push   $0x1
402c25:	e8 e2 ff ff ff       	call   0x402c0c
402c2a:	25 00 ff 00 00       	and    $0xff00,%eax
402c2f:	3d 00 0d 00 00       	cmp    $0xd00,%eax
402c34:	74 07                	je     0x402c3d
402c36:	3d 00 04 00 00       	cmp    $0x400,%eax
402c3b:	75 02                	jne    0x402c3f
402c3d:	b3 01                	mov    $0x1,%bl
402c3f:	8b c3                	mov    %ebx,%eax
402c41:	5b                   	pop    %ebx
402c42:	c3                   	ret
402c43:	90                   	nop
402c44:	55                   	push   %ebp
402c45:	8b ec                	mov    %esp,%ebp
402c47:	83 c4 f4             	add    $0xfffffff4,%esp
402c4a:	0f b7 05 14 60 42 00 	movzwl 0x426014,%eax
402c51:	89 45 f8             	mov    %eax,-0x8(%ebp)
402c54:	8d 45 fc             	lea    -0x4(%ebp),%eax
402c57:	50                   	push   %eax
402c58:	6a 01                	push   $0x1
402c5a:	6a 00                	push   $0x0
402c5c:	68 dc 2c 40 00       	push   $0x402cdc
402c61:	68 02 00 00 80       	push   $0x80000002
402c66:	e8 71 e4 ff ff       	call   0x4010dc
402c6b:	85 c0                	test   %eax,%eax
402c6d:	75 4d                	jne    0x402cbc
402c6f:	33 c0                	xor    %eax,%eax
402c71:	55                   	push   %ebp
402c72:	68 b5 2c 40 00       	push   $0x402cb5
402c77:	64 ff 30             	push   %fs:(%eax)
402c7a:	64 89 20             	mov    %esp,%fs:(%eax)
402c7d:	c7 45 f4 04 00 00 00 	movl   $0x4,-0xc(%ebp)
402c84:	8d 45 f4             	lea    -0xc(%ebp),%eax
402c87:	50                   	push   %eax
402c88:	8d 45 f8             	lea    -0x8(%ebp),%eax
402c8b:	50                   	push   %eax
402c8c:	6a 00                	push   $0x0
402c8e:	6a 00                	push   $0x0
402c90:	68 f8 2c 40 00       	push   $0x402cf8
402c95:	8b 45 fc             	mov    -0x4(%ebp),%eax
402c98:	50                   	push   %eax
402c99:	e8 46 e4 ff ff       	call   0x4010e4
402c9e:	33 c0                	xor    %eax,%eax
402ca0:	5a                   	pop    %edx
402ca1:	59                   	pop    %ecx
402ca2:	59                   	pop    %ecx
402ca3:	64 89 10             	mov    %edx,%fs:(%eax)
402ca6:	68 bc 2c 40 00       	push   $0x402cbc
402cab:	8b 45 fc             	mov    -0x4(%ebp),%eax
402cae:	50                   	push   %eax
402caf:	e8 20 e4 ff ff       	call   0x4010d4
402cb4:	c3                   	ret
402cb5:	e9 4e 04 00 00       	jmp    0x403108
402cba:	eb ef                	jmp    0x402cab
402cbc:	66 a1 14 60 42 00    	mov    0x426014,%ax
402cc2:	66 25 c0 ff          	and    $0xffc0,%ax
402cc6:	66 8b 55 f8          	mov    -0x8(%ebp),%dx
402cca:	66 83 e2 3f          	and    $0x3f,%dx
402cce:	66 0b c2             	or     %dx,%ax
402cd1:	66 a3 14 60 42 00    	mov    %ax,0x426014
402cd7:	8b e5                	mov    %ebp,%esp
402cd9:	5d                   	pop    %ebp
402cda:	c3                   	ret
402cdb:	00 53 4f             	add    %dl,0x4f(%ebx)
402cde:	46                   	inc    %esi
402cdf:	54                   	push   %esp
402ce0:	57                   	push   %edi
402ce1:	41                   	inc    %ecx
402ce2:	52                   	push   %edx
402ce3:	45                   	inc    %ebp
402ce4:	5c                   	pop    %esp
402ce5:	42                   	inc    %edx
402ce6:	6f                   	outsl  %ds:(%esi),(%dx)
402ce7:	72 6c                	jb     0x402d55
402ce9:	61                   	popa
402cea:	6e                   	outsb  %ds:(%esi),(%dx)
402ceb:	64 5c                	fs pop %esp
402ced:	44                   	inc    %esp
402cee:	65 6c                	gs insb (%dx),%es:(%edi)
402cf0:	70 68                	jo     0x402d5a
402cf2:	69 5c 52 54 4c 00 46 	imul   $0x5046004c,0x54(%edx,%edx,2),%ebx
402cf9:	50
402cfa:	55                   	push   %ebp
402cfb:	4d                   	dec    %ebp
402cfc:	61                   	popa
402cfd:	73 6b                	jae    0x402d6a
402cff:	56                   	push   %esi
402d00:	61                   	popa
402d01:	6c                   	insb   (%dx),%es:(%edi)
402d02:	75 65                	jne    0x402d69
402d04:	00 00                	add    %al,(%eax)
402d06:	00 00                	add    %al,(%eax)
402d08:	db e3                	fninit
402d0a:	9b d9 2d 14 60 42 00 	fldcw  0x426014
402d11:	c3                   	ret
402d12:	8b c0                	mov    %eax,%eax
402d14:	b0 04                	mov    $0x4,%al
402d16:	e9 0d fc ff ff       	jmp    0x402928
402d1b:	c3                   	ret
402d1c:	53                   	push   %ebx
402d1d:	8b d8                	mov    %eax,%ebx
402d1f:	8b c3                	mov    %ebx,%eax
402d21:	e8 26 00 00 00       	call   0x402d4c
402d26:	e8 05 fb ff ff       	call   0x402830
402d2b:	8b d0                	mov    %eax,%edx
402d2d:	8b c3                	mov    %ebx,%eax
402d2f:	e8 5c 00 00 00       	call   0x402d90
402d34:	5b                   	pop    %ebx
402d35:	c3                   	ret
402d36:	8b c0                	mov    %eax,%eax
402d38:	53                   	push   %ebx
402d39:	8b d8                	mov    %eax,%ebx
402d3b:	8b c3                	mov    %ebx,%eax
402d3d:	e8 a6 00 00 00       	call   0x402de8
402d42:	8b c3                	mov    %ebx,%eax
402d44:	e8 17 fb ff ff       	call   0x402860
402d49:	5b                   	pop    %ebx
402d4a:	c3                   	ret
402d4b:	90                   	nop
402d4c:	83 c0 d8             	add    $0xffffffd8,%eax
402d4f:	8b 00                	mov    (%eax),%eax
402d51:	c3                   	ret
402d52:	8b c0                	mov    %eax,%eax
402d54:	84 d2                	test   %dl,%dl
402d56:	74 08                	je     0x402d60
402d58:	83 c4 f0             	add    $0xfffffff0,%esp
402d5b:	e8 14 01 00 00       	call   0x402e74
402d60:	84 d2                	test   %dl,%dl
402d62:	74 0f                	je     0x402d73
402d64:	e8 63 01 00 00       	call   0x402ecc
402d69:	64 8f 05 00 00 00 00 	pop    %fs:0x0
402d70:	83 c4 0c             	add    $0xc,%esp
402d73:	c3                   	ret
402d74:	e8 63 01 00 00       	call   0x402edc
402d79:	84 d2                	test   %dl,%dl
402d7b:	7e 05                	jle    0x402d82
402d7d:	e8 42 01 00 00       	call   0x402ec4
402d82:	c3                   	ret
402d83:	90                   	nop
402d84:	85 c0                	test   %eax,%eax
402d86:	74 07                	je     0x402d8f
402d88:	b2 01                	mov    $0x1,%dl
402d8a:	8b 08                	mov    (%eax),%ecx
402d8c:	ff 51 fc             	call   *-0x4(%ecx)
402d8f:	c3                   	ret
402d90:	53                   	push   %ebx
402d91:	56                   	push   %esi
402d92:	57                   	push   %edi
402d93:	89 c3                	mov    %eax,%ebx
402d95:	89 d7                	mov    %edx,%edi
402d97:	ab                   	stos   %eax,%es:(%edi)
402d98:	8b 4b d8             	mov    -0x28(%ebx),%ecx
402d9b:	31 c0                	xor    %eax,%eax
402d9d:	51                   	push   %ecx
402d9e:	c1 e9 02             	shr    $0x2,%ecx
402da1:	49                   	dec    %ecx
402da2:	f3 ab                	rep stos %eax,%es:(%edi)
402da4:	59                   	pop    %ecx
402da5:	83 e1 03             	and    $0x3,%ecx
402da8:	f3 aa                	rep stos %al,%es:(%edi)
402daa:	89 d0                	mov    %edx,%eax
402dac:	89 e2                	mov    %esp,%edx
402dae:	8b 4b b8             	mov    -0x48(%ebx),%ecx
402db1:	85 c9                	test   %ecx,%ecx
402db3:	74 01                	je     0x402db6
402db5:	51                   	push   %ecx
402db6:	8b 5b dc             	mov    -0x24(%ebx),%ebx
402db9:	85 db                	test   %ebx,%ebx
402dbb:	74 04                	je     0x402dc1
402dbd:	8b 1b                	mov    (%ebx),%ebx
402dbf:	eb ed                	jmp    0x402dae
402dc1:	39 d4                	cmp    %edx,%esp
402dc3:	74 1d                	je     0x402de2
402dc5:	5b                   	pop    %ebx
402dc6:	8b 0b                	mov    (%ebx),%ecx
402dc8:	83 c3 04             	add    $0x4,%ebx
402dcb:	8b 73 10             	mov    0x10(%ebx),%esi
402dce:	85 f6                	test   %esi,%esi
402dd0:	74 06                	je     0x402dd8
402dd2:	8b 7b 14             	mov    0x14(%ebx),%edi
402dd5:	89 34 07             	mov    %esi,(%edi,%eax,1)
402dd8:	83 c3 1c             	add    $0x1c,%ebx
402ddb:	49                   	dec    %ecx
402ddc:	75 ed                	jne    0x402dcb
402dde:	39 d4                	cmp    %edx,%esp
402de0:	75 e3                	jne    0x402dc5
402de2:	5f                   	pop    %edi
402de3:	5e                   	pop    %esi
402de4:	5b                   	pop    %ebx
402de5:	c3                   	ret
402de6:	8b c0                	mov    %eax,%eax
402de8:	53                   	push   %ebx
402de9:	56                   	push   %esi
402dea:	89 c3                	mov    %eax,%ebx
402dec:	89 c6                	mov    %eax,%esi
402dee:	8b 36                	mov    (%esi),%esi
402df0:	8b 56 c0             	mov    -0x40(%esi),%edx
402df3:	8b 76 dc             	mov    -0x24(%esi),%esi
402df6:	85 d2                	test   %edx,%edx
402df8:	74 07                	je     0x402e01
402dfa:	e8 4d 0f 00 00       	call   0x403d4c
402dff:	89 d8                	mov    %ebx,%eax
402e01:	85 f6                	test   %esi,%esi
402e03:	75 e9                	jne    0x402dee
402e05:	5e                   	pop    %esi
402e06:	5b                   	pop    %ebx
402e07:	c3                   	ret
402e08:	57                   	push   %edi
402e09:	96                   	xchg   %eax,%esi
402e0a:	eb 02                	jmp    0x402e0e
402e0c:	8b 36                	mov    (%esi),%esi
402e0e:	8b 7e d0             	mov    -0x30(%esi),%edi
402e11:	85 ff                	test   %edi,%edi
402e13:	74 0d                	je     0x402e22
402e15:	0f b7 0f             	movzwl (%edi),%ecx
402e18:	51                   	push   %ecx
402e19:	83 c7 02             	add    $0x2,%edi
402e1c:	f2 66 af             	repnz scas %es:(%edi),%ax
402e1f:	74 0a                	je     0x402e2b
402e21:	59                   	pop    %ecx
402e22:	8b 76 dc             	mov    -0x24(%esi),%esi
402e25:	85 f6                	test   %esi,%esi
402e27:	75 e3                	jne    0x402e0c
402e29:	5f                   	pop    %edi
402e2a:	c3                   	ret
402e2b:	58                   	pop    %eax
402e2c:	01 c0                	add    %eax,%eax
402e2e:	29 c8                	sub    %ecx,%eax
402e30:	8b 74 47 fc          	mov    -0x4(%edi,%eax,2),%esi
402e34:	5f                   	pop    %edi
402e35:	c3                   	ret
402e36:	8b c0                	mov    %eax,%eax
402e38:	b8 ff ff 00 80       	mov    $0x8000ffff,%eax
402e3d:	c3                   	ret
402e3e:	8b c0                	mov    %eax,%eax
402e40:	c3                   	ret