405aa4:	cc                   	int3
405aa5:	cc                   	int3
405aa6:	cc                   	int3
405aa7:	cc                   	int3
405aa8:	cc                   	int3
405aa9:	cc                   	int3
405aaa:	cc                   	int3
405aab:	cc                   	int3
405aac:	cc                   	int3
405aad:	cc                   	int3
405aae:	cc                   	int3
405aaf:	cc                   	int3
405ab0:	83 ec 18             	sub    $0x18,%esp
405ab3:	8b 4c 24 28          	mov    0x28(%esp),%ecx
405ab7:	8b 54 24 2c          	mov    0x2c(%esp),%edx
405abb:	33 c0                	xor    %eax,%eax
405abd:	89 44 24 04          	mov    %eax,0x4(%esp)
405ac1:	89 44 24 0c          	mov    %eax,0xc(%esp)
405ac5:	89 44 24 10          	mov    %eax,0x10(%esp)
405ac9:	89 44 24 14          	mov    %eax,0x14(%esp)
405acd:	89 44 24 08          	mov    %eax,0x8(%esp)
405ad1:	8b 44 24 24          	mov    0x24(%esp),%eax
405ad5:	89 4c 24 0c          	mov    %ecx,0xc(%esp)
405ad9:	89 44 24 04          	mov    %eax,0x4(%esp)
405add:	8b 44 24 30          	mov    0x30(%esp),%eax
405ae1:	8d 0c 24             	lea    (%esp),%ecx
405ae4:	51                   	push   %ecx
405ae5:	8b 4c 24 20          	mov    0x20(%esp),%ecx
405ae9:	89 54 24 14          	mov    %edx,0x14(%esp)
405aed:	8b 54 24 38          	mov    0x38(%esp),%edx
405af1:	89 44 24 18          	mov    %eax,0x18(%esp)
405af5:	8b 44 24 24          	mov    0x24(%esp),%eax
405af9:	52                   	push   %edx
405afa:	50                   	push   %eax
405afb:	51                   	push   %ecx
405afc:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
405b03:	00
405b04:	e8 07 fe ff ff       	call   0x405910
405b09:	83 c4 28             	add    $0x28,%esp
405b0c:	c3                   	ret
405b0d:	cc                   	int3
405b0e:	cc                   	int3
405b0f:	cc                   	int3
405b10:	83 ec 08             	sub    $0x8,%esp
405b13:	8d 44 24 04          	lea    0x4(%esp),%eax
405b17:	50                   	push   %eax
405b18:	c7 44 24 08 00 00 00 	movl   $0x0,0x8(%esp)
405b1f:	00
405b20:	e8 eb cf ff ff       	call   0x402b10
405b25:	8b 44 24 20          	mov    0x20(%esp),%eax
405b29:	83 c4 04             	add    $0x4,%esp
405b2c:	85 c0                	test   %eax,%eax
405b2e:	74 06                	je     0x405b36
405b30:	c7 00 00 00 00 00    	movl   $0x0,(%eax)
405b36:	55                   	push   %ebp
405b37:	8b 6c 24 14          	mov    0x14(%esp),%ebp
405b3b:	6a 00                	push   $0x0
405b3d:	68 80 00 00 00       	push   $0x80
405b42:	6a 03                	push   $0x3
405b44:	6a 00                	push   $0x0
405b46:	6a 00                	push   $0x0
405b48:	6a 00                	push   $0x0
405b4a:	55                   	push   %ebp
405b4b:	ff 15 ac 34 47 00    	call   *0x4734ac
405b51:	83 f8 ff             	cmp    $0xffffffff,%eax
405b54:	75 0a                	jne    0x405b60
405b56:	b8 02 00 00 00       	mov    $0x2,%eax
405b5b:	5d                   	pop    %ebp
405b5c:	83 c4 08             	add    $0x8,%esp
405b5f:	c3                   	ret
405b60:	53                   	push   %ebx
405b61:	56                   	push   %esi
405b62:	57                   	push   %edi
405b63:	50                   	push   %eax
405b64:	ff 15 2c 34 47 00    	call   *0x47342c
405b6a:	8b 7c 24 1c          	mov    0x1c(%esp),%edi
405b6e:	8b 1d 30 34 47 00    	mov    0x473430,%ebx
405b74:	57                   	push   %edi
405b75:	6a 00                	push   $0x0
405b77:	68 3a 04 12 00       	push   $0x12043a
405b7c:	ff d3                	call   *%ebx
405b7e:	8b f0                	mov    %eax,%esi
405b80:	85 f6                	test   %esi,%esi
405b82:	75 2d                	jne    0x405bb1
405b84:	39 44 24 24          	cmp    %eax,0x24(%esp)
405b88:	74 19                	je     0x405ba3
405b8a:	e8 81 d8 ff ff       	call   0x403410
405b8f:	57                   	push   %edi
405b90:	56                   	push   %esi
405b91:	68 3a 04 12 00       	push   $0x12043a
405b96:	ff d3                	call   *%ebx
405b98:	8b f0                	mov    %eax,%esi
405b9a:	e8 21 d9 ff ff       	call   0x4034c0
405b9f:	85 f6                	test   %esi,%esi
405ba1:	75 0e                	jne    0x405bb1
405ba3:	ff 15 24 34 47 00    	call   *0x473424
405ba9:	5f                   	pop    %edi
405baa:	5e                   	pop    %esi
405bab:	5b                   	pop    %ebx
405bac:	5d                   	pop    %ebp
405bad:	83 c4 08             	add    $0x8,%esp
405bb0:	c3                   	ret
405bb1:	68 24 c9 45 00       	push   $0x45c924
405bb6:	68 10 c9 45 00       	push   $0x45c910
405bbb:	ff 15 38 34 47 00    	call   *0x473438
405bc1:	50                   	push   %eax
405bc2:	ff 15 34 34 47 00    	call   *0x473434
405bc8:	85 c0                	test   %eax,%eax
405bca:	75 0d                	jne    0x405bd9
405bcc:	ff 15 24 34 47 00    	call   *0x473424
405bd2:	8b d8                	mov    %eax,%ebx
405bd4:	e9 b2 00 00 00       	jmp    0x405c8b
405bd9:	8b cd                	mov    %ebp,%ecx
405bdb:	8d 79 02             	lea    0x2(%ecx),%edi
405bde:	8b ff                	mov    %edi,%edi
405be0:	66 8b 11             	mov    (%ecx),%dx
405be3:	83 c1 02             	add    $0x2,%ecx
405be6:	66 85 d2             	test   %dx,%dx
405be9:	75 f5                	jne    0x405be0
405beb:	8d 54 24 10          	lea    0x10(%esp),%edx
405bef:	52                   	push   %edx
405bf0:	6a 01                	push   $0x1
405bf2:	33 db                	xor    %ebx,%ebx
405bf4:	53                   	push   %ebx
405bf5:	53                   	push   %ebx
405bf6:	2b cf                	sub    %edi,%ecx
405bf8:	68 00 30 00 00       	push   $0x3000
405bfd:	d1 f9                	sar    $1,%ecx
405bff:	68 00 00 01 00       	push   $0x10000
405c04:	8d 4c 09 02          	lea    0x2(%ecx,%ecx,1),%ecx
405c08:	51                   	push   %ecx
405c09:	55                   	push   %ebp
405c0a:	53                   	push   %ebx
405c0b:	50                   	push   %eax
405c0c:	89 5c 24 38          	mov    %ebx,0x38(%esp)
405c10:	e8 3b f9 ff ff       	call   0x405550
405c15:	8b f8                	mov    %eax,%edi
405c17:	83 c4 28             	add    $0x28,%esp
405c1a:	3b fb                	cmp    %ebx,%edi
405c1c:	75 0a                	jne    0x405c28
405c1e:	ff 15 24 34 47 00    	call   *0x473424
405c24:	8b d8                	mov    %eax,%ebx
405c26:	eb 63                	jmp    0x405c8b
405c28:	8b 54 24 28          	mov    0x28(%esp),%edx
405c2c:	52                   	push   %edx
405c2d:	57                   	push   %edi
405c2e:	ff 15 80 34 47 00    	call   *0x473480
405c34:	83 f8 ff             	cmp    $0xffffffff,%eax
405c37:	75 0a                	jne    0x405c43
405c39:	ff 15 24 34 47 00    	call   *0x473424
405c3f:	8b d8                	mov    %eax,%ebx
405c41:	eb 35                	jmp    0x405c78
405c43:	3d 02 01 00 00       	cmp    $0x102,%eax
405c48:	75 07                	jne    0x405c51
405c4a:	bb b4 05 00 00       	mov    $0x5b4,%ebx
405c4f:	eb 27                	jmp    0x405c78
405c51:	8b 44 24 10          	mov    0x10(%esp),%eax
405c55:	3b c3                	cmp    %ebx,%eax
405c57:	74 1f                	je     0x405c78
405c59:	8b 4c 24 14          	mov    0x14(%esp),%ecx
405c5d:	81 f9 82 00 00 00    	cmp    $0x82,%ecx
405c63:	74 13                	je     0x405c78
405c65:	83 f9 64             	cmp    $0x64,%ecx
405c68:	74 0e                	je     0x405c78
405c6a:	68 00 80 00 00       	push   $0x8000
405c6f:	53                   	push   %ebx
405c70:	50                   	push   %eax
405c71:	56                   	push   %esi
405c72:	ff 15 98 34 47 00    	call   *0x473498
405c78:	8b 44 24 2c          	mov    0x2c(%esp),%eax
405c7c:	85 c0                	test   %eax,%eax
405c7e:	74 04                	je     0x405c84
405c80:	89 38                	mov    %edi,(%eax)
405c82:	eb 07                	jmp    0x405c8b
405c84:	57                   	push   %edi
405c85:	ff 15 2c 34 47 00    	call   *0x47342c
405c8b:	85 f6                	test   %esi,%esi
405c8d:	74 07                	je     0x405c96
405c8f:	56                   	push   %esi
405c90:	ff 15 2c 34 47 00    	call   *0x47342c
405c96:	5f                   	pop    %edi
405c97:	5e                   	pop    %esi
405c98:	8b c3                	mov    %ebx,%eax
405c9a:	5b                   	pop    %ebx
405c9b:	5d                   	pop    %ebp
405c9c:	83 c4 08             	add    $0x8,%esp
405c9f:	c3                   	ret
405ca0:	83 ec 18             	sub    $0x18,%esp
405ca3:	8b 4c 24 24          	mov    0x24(%esp),%ecx
405ca7:	8b 54 24 20          	mov    0x20(%esp),%edx
405cab:	33 c0                	xor    %eax,%eax
405cad:	89 44 24 0c          	mov    %eax,0xc(%esp)
405cb1:	89 44 24 10          	mov    %eax,0x10(%esp)
405cb5:	89 44 24 14          	mov    %eax,0x14(%esp)
405cb9:	89 44 24 04          	mov    %eax,0x4(%esp)
405cbd:	89 44 24 08          	mov    %eax,0x8(%esp)
405cc1:	89 44 24 0c          	mov    %eax,0xc(%esp)
405cc5:	89 44 24 10          	mov    %eax,0x10(%esp)
405cc9:	89 44 24 14          	mov    %eax,0x14(%esp)
405ccd:	8d 04 24             	lea    (%esp),%eax
405cd0:	50                   	push   %eax
405cd1:	8b 44 24 20          	mov    0x20(%esp),%eax
405cd5:	51                   	push   %ecx
405cd6:	52                   	push   %edx
405cd7:	50                   	push   %eax
405cd8:	c7 44 24 10 01 00 00 	movl   $0x1,0x10(%esp)
405cdf:	00
405ce0:	c7 44 24 14 04 00 00 	movl   $0x4,0x14(%esp)
405ce7:	00
405ce8:	e8 23 fc ff ff       	call   0x405910
405ced:	83 c4 28             	add    $0x28,%esp
405cf0:	c3                   	ret
405cf1:	cc                   	int3
405cf2:	cc                   	int3
405cf3:	cc                   	int3
405cf4:	cc                   	int3
405cf5:	cc                   	int3
405cf6:	cc                   	int3
405cf7:	cc                   	int3
405cf8:	cc                   	int3
405cf9:	cc                   	int3
405cfa:	cc                   	int3
405cfb:	cc                   	int3
405cfc:	cc                   	int3
405cfd:	cc                   	int3
405cfe:	cc                   	int3
405cff:	cc                   	int3
405d00:	8b 54 24 04          	mov    0x4(%esp),%edx
405d04:	0f b7 0a             	movzwl (%edx),%ecx
405d07:	33 c0                	xor    %eax,%eax
405d09:	66 85 c9             	test   %cx,%cx
405d0c:	74 2c                	je     0x405d3a
405d0e:	56                   	push   %esi
405d0f:	66 8b 74 24 10       	mov    0x10(%esp),%si
405d14:	57                   	push   %edi
405d15:	66 8b 7c 24 10       	mov    0x10(%esp),%di
405d1a:	8d 9b 00 00 00 00    	lea    0x0(%ebx),%ebx
405d20:	66 3b cf             	cmp    %di,%cx
405d23:	74 05                	je     0x405d2a
405d25:	66 3b ce             	cmp    %si,%cx
405d28:	75 02                	jne    0x405d2c
405d2a:	8b c2                	mov    %edx,%eax
405d2c:	0f b7 4a 02          	movzwl 0x2(%edx),%ecx
405d30:	83 c2 02             	add    $0x2,%edx
405d33:	66 85 c9             	test   %cx,%cx
405d36:	75 e8                	jne    0x405d20
405d38:	5f                   	pop    %edi
405d39:	5e                   	pop    %esi
405d3a:	c3                   	ret
405d3b:	cc                   	int3
405d3c:	cc                   	int3
405d3d:	cc                   	int3
405d3e:	cc                   	int3
405d3f:	cc                   	int3
405d40:	56                   	push   %esi
405d41:	8b 74 24 08          	mov    0x8(%esp),%esi
405d45:	6a 2f                	push   $0x2f
405d47:	6a 5c                	push   $0x5c
405d49:	56                   	push   %esi
405d4a:	e8 b1 ff ff ff       	call   0x405d00
405d4f:	83 c4 0c             	add    $0xc,%esp
405d52:	85 c0                	test   %eax,%eax
405d54:	75 04                	jne    0x405d5a
405d56:	8b c6                	mov    %esi,%eax
405d58:	5e                   	pop    %esi
405d59:	c3                   	ret
405d5a:	83 c0 02             	add    $0x2,%eax
405d5d:	5e                   	pop    %esi
405d5e:	c3                   	ret
405d5f:	cc                   	int3
405d60:	8b 44 24 0c          	mov    0xc(%esp),%eax
405d64:	55                   	push   %ebp
405d65:	56                   	push   %esi
405d66:	57                   	push   %edi
405d67:	8b 7c 24 14          	mov    0x14(%esp),%edi
405d6b:	8d 6c 47 fe          	lea    -0x2(%edi,%eax,2),%ebp
405d6f:	8b 44 24 10          	mov    0x10(%esp),%eax
405d73:	66 83 38 22          	cmpw   $0x22,(%eax)
405d77:	75 19                	jne    0x405d92
405d79:	83 c0 02             	add    $0x2,%eax
405d7c:	6a 22                	push   $0x22
405d7e:	50                   	push   %eax
405d7f:	e8 37 b1 02 00       	call   0x430ebb
405d84:	8b f0                	mov    %eax,%esi
405d86:	83 c4 08             	add    $0x8,%esp
405d89:	85 f6                	test   %esi,%esi
405d8b:	74 16                	je     0x405da3
405d8d:	83 c6 02             	add    $0x2,%esi
405d90:	eb 0d                	jmp    0x405d9f
405d92:	6a 20                	push   $0x20
405d94:	50                   	push   %eax
405d95:	e8 21 b1 02 00       	call   0x430ebb
405d9a:	83 c4 08             	add    $0x8,%esp
405d9d:	8b f0                	mov    %eax,%esi
405d9f:	85 f6                	test   %esi,%esi
405da1:	75 0b                	jne    0x405dae
405da3:	33 c9                	xor    %ecx,%ecx
405da5:	66 89 0f             	mov    %cx,(%edi)
405da8:	5f                   	pop    %edi
405da9:	5e                   	pop    %esi
405daa:	32 c0                	xor    %al,%al
405dac:	5d                   	pop    %ebp
405dad:	c3                   	ret
405dae:	53                   	push   %ebx
405daf:	8a 5c 24 20          	mov    0x20(%esp),%bl
405db3:	0f b7 06             	movzwl (%esi),%eax
405db6:	66 85 c0             	test   %ax,%ax
405db9:	0f 84 b6 00 00 00    	je     0x405e75
405dbf:	90                   	nop
405dc0:	68 07 01 00 00       	push   $0x107
405dc5:	50                   	push   %eax
405dc6:	e8 1a ca 02 00       	call   0x4327e5
405dcb:	83 c4 08             	add    $0x8,%esp
405dce:	85 c0                	test   %eax,%eax
405dd0:	75 1d                	jne    0x405def
405dd2:	0f b7 46 02          	movzwl 0x2(%esi),%eax
405dd6:	83 c6 02             	add    $0x2,%esi
405dd9:	66 85 c0             	test   %ax,%ax
405ddc:	75 e2                	jne    0x405dc0
405dde:	33 c0                	xor    %eax,%eax
405de0:	3b 7c 24 18          	cmp    0x18(%esp),%edi
405de4:	5b                   	pop    %ebx
405de5:	66 89 07             	mov    %ax,(%edi)
405de8:	5f                   	pop    %edi
405de9:	5e                   	pop    %esi
405dea:	0f 95 c0             	setne  %al
405ded:	5d                   	pop    %ebp
405dee:	c3                   	ret
405def:	0f b7 06             	movzwl (%esi),%eax
405df2:	66 85 c0             	test   %ax,%ax
405df5:	74 7e                	je     0x405e75
405df7:	84 db                	test   %bl,%bl
405df9:	75 35                	jne    0x405e30
405dfb:	eb 03                	jmp    0x405e00
405dfd:	8d 49 00             	lea    0x0(%ecx),%ecx
405e00:	68 07 01 00 00       	push   $0x107
405e05:	50                   	push   %eax
405e06:	e8 da c9 02 00       	call   0x4327e5
405e0b:	83 c4 08             	add    $0x8,%esp
405e0e:	85 c0                	test   %eax,%eax
405e10:	74 0c                	je     0x405e1e
405e12:	0f b7 46 02          	movzwl 0x2(%esi),%eax
405e16:	83 c6 02             	add    $0x2,%esi
405e19:	66 85 c0             	test   %ax,%ax
405e1c:	75 e2                	jne    0x405e00
405e1e:	0f b7 06             	movzwl (%esi),%eax
405e21:	b3 01                	mov    $0x1,%bl
405e23:	66 85 c0             	test   %ax,%ax
405e26:	74 4d                	je     0x405e75
405e28:	eb 06                	jmp    0x405e30