405a6d:	51                   	push   %ecx
405a6e:	ff 75 10             	push   0x10(%ebp)
405a71:	e8 1a 39 00 00       	call   0x409390
405a76:	8b c8                	mov    %eax,%ecx
405a78:	8b 45 ec             	mov    -0x14(%ebp),%eax
405a7b:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
405a81:	8b c1                	mov    %ecx,%eax
405a83:	c9                   	leave
405a84:	c3                   	ret
405a85:	55                   	push   %ebp
405a86:	8b ec                	mov    %esp,%ebp
405a88:	fc                   	cld
405a89:	8b 45 0c             	mov    0xc(%ebp),%eax
405a8c:	6a 00                	push   $0x0
405a8e:	50                   	push   %eax
405a8f:	ff 70 10             	push   0x10(%eax)
405a92:	ff 70 08             	push   0x8(%eax)
405a95:	6a 00                	push   $0x0
405a97:	ff 75 10             	push   0x10(%ebp)
405a9a:	ff 70 0c             	push   0xc(%eax)
405a9d:	ff 75 08             	push   0x8(%ebp)
405aa0:	e8 cd 30 00 00       	call   0x408b72
405aa5:	83 c4 20             	add    $0x20,%esp
405aa8:	5d                   	pop    %ebp
405aa9:	c3                   	ret
405aaa:	55                   	push   %ebp
405aab:	8b ec                	mov    %esp,%ebp
405aad:	83 ec 34             	sub    $0x34,%esp
405ab0:	53                   	push   %ebx
405ab1:	56                   	push   %esi
405ab2:	57                   	push   %edi
405ab3:	83 65 d8 00          	andl   $0x0,-0x28(%ebp)
405ab7:	c7 45 dc 60 5b 40 00 	movl   $0x405b60,-0x24(%ebp)
405abe:	8b 45 18             	mov    0x18(%ebp),%eax
405ac1:	89 45 e0             	mov    %eax,-0x20(%ebp)
405ac4:	8b 45 0c             	mov    0xc(%ebp),%eax
405ac7:	89 45 e4             	mov    %eax,-0x1c(%ebp)
405aca:	8b 45 1c             	mov    0x1c(%ebp),%eax
405acd:	89 45 e8             	mov    %eax,-0x18(%ebp)
405ad0:	8b 45 20             	mov    0x20(%ebp),%eax
405ad3:	89 45 ec             	mov    %eax,-0x14(%ebp)
405ad6:	83 65 f0 00          	andl   $0x0,-0x10(%ebp)
405ada:	83 65 f4 00          	andl   $0x0,-0xc(%ebp)
405ade:	83 65 f8 00          	andl   $0x0,-0x8(%ebp)
405ae2:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
405ae6:	c7 45 f0 32 5b 40 00 	movl   $0x405b32,-0x10(%ebp)
405aed:	89 65 f4             	mov    %esp,-0xc(%ebp)
405af0:	89 6d f8             	mov    %ebp,-0x8(%ebp)
405af3:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
405af9:	89 45 d8             	mov    %eax,-0x28(%ebp)
405afc:	8d 85 d8 ff ff ff    	lea    -0x28(%ebp),%eax
405b02:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
405b08:	c7 45 cc 01 00 00 00 	movl   $0x1,-0x34(%ebp)
405b0f:	8b 45 08             	mov    0x8(%ebp),%eax
405b12:	89 45 d0             	mov    %eax,-0x30(%ebp)
405b15:	8b 45 10             	mov    0x10(%ebp),%eax
405b18:	89 45 d4             	mov    %eax,-0x2c(%ebp)
405b1b:	8d 45 d0             	lea    -0x30(%ebp),%eax
405b1e:	50                   	push   %eax
405b1f:	8b 45 08             	mov    0x8(%ebp),%eax
405b22:	ff 30                	push   (%eax)
405b24:	e8 9e 2b 00 00       	call   0x4086c7
405b29:	ff 50 68             	call   *0x68(%eax)
405b2c:	59                   	pop    %ecx
405b2d:	59                   	pop    %ecx
405b2e:	83 65 cc 00          	andl   $0x0,-0x34(%ebp)
405b32:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
405b36:	74 17                	je     0x405b4f
405b38:	64 8b 1d 00 00 00 00 	mov    %fs:0x0,%ebx
405b3f:	8b 03                	mov    (%ebx),%eax
405b41:	8b 5d d8             	mov    -0x28(%ebp),%ebx
405b44:	89 03                	mov    %eax,(%ebx)
405b46:	64 89 1d 00 00 00 00 	mov    %ebx,%fs:0x0
405b4d:	eb 09                	jmp    0x405b58
405b4f:	8b 45 d8             	mov    -0x28(%ebp),%eax
405b52:	64 a3 00 00 00 00    	mov    %eax,%fs:0x0
405b58:	8b 45 cc             	mov    -0x34(%ebp),%eax
405b5b:	5f                   	pop    %edi
405b5c:	5e                   	pop    %esi
405b5d:	5b                   	pop    %ebx
405b5e:	c9                   	leave
405b5f:	c3                   	ret
405b60:	55                   	push   %ebp
405b61:	8b ec                	mov    %esp,%ebp
405b63:	53                   	push   %ebx
405b64:	56                   	push   %esi
405b65:	57                   	push   %edi
405b66:	fc                   	cld
405b67:	8b 45 08             	mov    0x8(%ebp),%eax
405b6a:	8b 40 04             	mov    0x4(%eax),%eax
405b6d:	83 e0 66             	and    $0x66,%eax
405b70:	85 c0                	test   %eax,%eax
405b72:	74 0f                	je     0x405b83
405b74:	8b 45 0c             	mov    0xc(%ebp),%eax
405b77:	c7 40 24 01 00 00 00 	movl   $0x1,0x24(%eax)
405b7e:	6a 01                	push   $0x1
405b80:	58                   	pop    %eax
405b81:	eb 4d                	jmp    0x405bd0
405b83:	6a 01                	push   $0x1
405b85:	8b 45 0c             	mov    0xc(%ebp),%eax
405b88:	ff 70 14             	push   0x14(%eax)
405b8b:	8b 45 0c             	mov    0xc(%ebp),%eax
405b8e:	ff 70 10             	push   0x10(%eax)
405b91:	8b 45 0c             	mov    0xc(%ebp),%eax
405b94:	ff 70 08             	push   0x8(%eax)
405b97:	6a 00                	push   $0x0
405b99:	ff 75 10             	push   0x10(%ebp)
405b9c:	8b 45 0c             	mov    0xc(%ebp),%eax
405b9f:	ff 70 0c             	push   0xc(%eax)
405ba2:	ff 75 08             	push   0x8(%ebp)
405ba5:	e8 c8 2f 00 00       	call   0x408b72
405baa:	83 c4 20             	add    $0x20,%esp
405bad:	8b 45 0c             	mov    0xc(%ebp),%eax
405bb0:	83 78 24 00          	cmpl   $0x0,0x24(%eax)
405bb4:	75 0b                	jne    0x405bc1
405bb6:	ff 75 08             	push   0x8(%ebp)
405bb9:	ff 75 0c             	push   0xc(%ebp)
405bbc:	e8 eb fd ff ff       	call   0x4059ac
405bc1:	8b 5d 0c             	mov    0xc(%ebp),%ebx
405bc4:	8b 63 1c             	mov    0x1c(%ebx),%esp
405bc7:	8b 6b 20             	mov    0x20(%ebx),%ebp
405bca:	ff 63 18             	jmp    *0x18(%ebx)
405bcd:	6a 01                	push   $0x1
405bcf:	58                   	pop    %eax
405bd0:	5f                   	pop    %edi
405bd1:	5e                   	pop    %esi
405bd2:	5b                   	pop    %ebx
405bd3:	5d                   	pop    %ebp
405bd4:	c3                   	ret
405bd5:	55                   	push   %ebp
405bd6:	8b ec                	mov    %esp,%ebp
405bd8:	51                   	push   %ecx
405bd9:	53                   	push   %ebx
405bda:	56                   	push   %esi
405bdb:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
405bdf:	57                   	push   %edi
405be0:	8b 7d 08             	mov    0x8(%ebp),%edi
405be3:	8b 77 0c             	mov    0xc(%edi),%esi
405be6:	8b 5f 10             	mov    0x10(%edi),%ebx
405be9:	8b c6                	mov    %esi,%eax
405beb:	89 75 08             	mov    %esi,0x8(%ebp)
405bee:	89 45 fc             	mov    %eax,-0x4(%ebp)
405bf1:	7c 39                	jl     0x405c2c
405bf3:	83 fe ff             	cmp    $0xffffffff,%esi
405bf6:	75 05                	jne    0x405bfd
405bf8:	e8 40 38 00 00       	call   0x40943d
405bfd:	8b 4d 10             	mov    0x10(%ebp),%ecx
405c00:	4e                   	dec    %esi
405c01:	8d 04 b6             	lea    (%esi,%esi,4),%eax
405c04:	39 4c 83 04          	cmp    %ecx,0x4(%ebx,%eax,4)
405c08:	8d 04 83             	lea    (%ebx,%eax,4),%eax
405c0b:	7d 05                	jge    0x405c12
405c0d:	3b 48 08             	cmp    0x8(%eax),%ecx
405c10:	7e 05                	jle    0x405c17
405c12:	83 fe ff             	cmp    $0xffffffff,%esi
405c15:	75 0c                	jne    0x405c23
405c17:	8b 45 08             	mov    0x8(%ebp),%eax
405c1a:	ff 4d 0c             	decl   0xc(%ebp)
405c1d:	89 45 fc             	mov    %eax,-0x4(%ebp)
405c20:	89 75 08             	mov    %esi,0x8(%ebp)
405c23:	83 7d 0c 00          	cmpl   $0x0,0xc(%ebp)
405c27:	7d ca                	jge    0x405bf3
405c29:	8b 45 fc             	mov    -0x4(%ebp),%eax
405c2c:	8b 4d 14             	mov    0x14(%ebp),%ecx
405c2f:	46                   	inc    %esi
405c30:	89 31                	mov    %esi,(%ecx)
405c32:	8b 4d 18             	mov    0x18(%ebp),%ecx
405c35:	89 01                	mov    %eax,(%ecx)
405c37:	3b 47 0c             	cmp    0xc(%edi),%eax
405c3a:	77 04                	ja     0x405c40
405c3c:	3b f0                	cmp    %eax,%esi
405c3e:	76 05                	jbe    0x405c45
405c40:	e8 f8 37 00 00       	call   0x40943d
405c45:	8d 04 b6             	lea    (%esi,%esi,4),%eax
405c48:	5f                   	pop    %edi
405c49:	5e                   	pop    %esi
405c4a:	8d 04 83             	lea    (%ebx,%eax,4),%eax
405c4d:	5b                   	pop    %ebx
405c4e:	c9                   	leave
405c4f:	c3                   	ret
405c50:	55                   	push   %ebp
405c51:	8b ec                	mov    %esp,%ebp
405c53:	53                   	push   %ebx
405c54:	56                   	push   %esi
405c55:	57                   	push   %edi
405c56:	55                   	push   %ebp
405c57:	6a 00                	push   $0x0
405c59:	6a 00                	push   $0x0
405c5b:	68 68 5c 40 00       	push   $0x405c68
405c60:	ff 75 08             	push   0x8(%ebp)
405c63:	e8 b4 67 00 00       	call   0x40c41c
405c68:	5d                   	pop    %ebp
405c69:	5f                   	pop    %edi
405c6a:	5e                   	pop    %esi
405c6b:	5b                   	pop    %ebx
405c6c:	8b e5                	mov    %ebp,%esp
405c6e:	5d                   	pop    %ebp
405c6f:	c3                   	ret
405c70:	8b 4c 24 04          	mov    0x4(%esp),%ecx
405c74:	f7 41 04 06 00 00 00 	testl  $0x6,0x4(%ecx)
405c7b:	b8 01 00 00 00       	mov    $0x1,%eax
405c80:	74 0f                	je     0x405c91
405c82:	8b 44 24 08          	mov    0x8(%esp),%eax
405c86:	8b 54 24 10          	mov    0x10(%esp),%edx
405c8a:	89 02                	mov    %eax,(%edx)
405c8c:	b8 03 00 00 00       	mov    $0x3,%eax
405c91:	c3                   	ret
405c92:	53                   	push   %ebx
405c93:	56                   	push   %esi
405c94:	57                   	push   %edi
405c95:	8b 44 24 10          	mov    0x10(%esp),%eax
405c99:	50                   	push   %eax
405c9a:	6a fe                	push   $0xfffffffe
405c9c:	68 70 5c 40 00       	push   $0x405c70
405ca1:	64 ff 35 00 00 00 00 	push   %fs:0x0
405ca8:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
405caf:	8b 44 24 20          	mov    0x20(%esp),%eax
405cb3:	8b 58 08             	mov    0x8(%eax),%ebx
405cb6:	8b 70 0c             	mov    0xc(%eax),%esi
405cb9:	83 fe ff             	cmp    $0xffffffff,%esi
405cbc:	74 2e                	je     0x405cec
405cbe:	3b 74 24 24          	cmp    0x24(%esp),%esi
405cc2:	74 28                	je     0x405cec
405cc4:	8d 34 76             	lea    (%esi,%esi,2),%esi
405cc7:	8b 0c b3             	mov    (%ebx,%esi,4),%ecx
405cca:	89 4c 24 08          	mov    %ecx,0x8(%esp)
405cce:	89 48 0c             	mov    %ecx,0xc(%eax)
405cd1:	83 7c b3 04 00       	cmpl   $0x0,0x4(%ebx,%esi,4)
405cd6:	75 12                	jne    0x405cea
405cd8:	68 01 01 00 00       	push   $0x101
405cdd:	8b 44 b3 08          	mov    0x8(%ebx,%esi,4),%eax
405ce1:	e8 40 00 00 00       	call   0x405d26
405ce6:	ff 54 b3 08          	call   *0x8(%ebx,%esi,4)
405cea:	eb c3                	jmp    0x405caf
405cec:	64 8f 05 00 00 00 00 	pop    %fs:0x0
405cf3:	83 c4 0c             	add    $0xc,%esp
405cf6:	5f                   	pop    %edi
405cf7:	5e                   	pop    %esi
405cf8:	5b                   	pop    %ebx
405cf9:	c3                   	ret
405cfa:	33 c0                	xor    %eax,%eax
405cfc:	64 8b 0d 00 00 00 00 	mov    %fs:0x0,%ecx
405d03:	81 79 04 70 5c 40 00 	cmpl   $0x405c70,0x4(%ecx)
405d0a:	75 10                	jne    0x405d1c
405d0c:	8b 51 0c             	mov    0xc(%ecx),%edx
405d0f:	8b 52 0c             	mov    0xc(%edx),%edx
405d12:	39 51 08             	cmp    %edx,0x8(%ecx)
405d15:	75 05                	jne    0x405d1c
405d17:	b8 01 00 00 00       	mov    $0x1,%eax
405d1c:	c3                   	ret
405d1d:	53                   	push   %ebx
405d1e:	51                   	push   %ecx
405d1f:	bb 00 08 41 00       	mov    $0x410800,%ebx
405d24:	eb 0a                	jmp    0x405d30
405d26:	53                   	push   %ebx
405d27:	51                   	push   %ecx
405d28:	bb 00 08 41 00       	mov    $0x410800,%ebx
405d2d:	8b 4d 08             	mov    0x8(%ebp),%ecx
405d30:	89 4b 08             	mov    %ecx,0x8(%ebx)
405d33:	89 43 04             	mov    %eax,0x4(%ebx)
405d36:	89 6b 0c             	mov    %ebp,0xc(%ebx)
405d39:	59                   	pop    %ecx
405d3a:	5b                   	pop    %ebx
405d3b:	c2 04 00             	ret    $0x4
405d3e:	cc                   	int3
405d3f:	cc                   	int3
405d40:	6a ff                	push   $0xffffffff
405d42:	50                   	push   %eax
405d43:	64 a1 00 00 00 00    	mov    %fs:0x0,%eax
405d49:	50                   	push   %eax
405d4a:	8b 44 24 0c          	mov    0xc(%esp),%eax
405d4e:	64 89 25 00 00 00 00 	mov    %esp,%fs:0x0
405d55:	89 6c 24 0c          	mov    %ebp,0xc(%esp)
405d59:	8d 6c 24 0c          	lea    0xc(%esp),%ebp
405d5d:	50                   	push   %eax
405d5e:	c3                   	ret
405d5f:	cc                   	int3
405d60:	55                   	push   %ebp
405d61:	8b ec                	mov    %esp,%ebp
405d63:	57                   	push   %edi
405d64:	56                   	push   %esi
405d65:	8b 75 0c             	mov    0xc(%ebp),%esi
405d68:	8b 4d 10             	mov    0x10(%ebp),%ecx
405d6b:	8b 7d 08             	mov    0x8(%ebp),%edi
405d6e:	8b c1                	mov    %ecx,%eax
405d70:	8b d1                	mov    %ecx,%edx
405d72:	03 c6                	add    %esi,%eax
405d74:	3b fe                	cmp    %esi,%edi
405d76:	76 08                	jbe    0x405d80
405d78:	3b f8                	cmp    %eax,%edi
405d7a:	0f 82 78 01 00 00    	jb     0x405ef8
405d80:	f7 c7 03 00 00 00    	test   $0x3,%edi
405d86:	75 14                	jne    0x405d9c
405d88:	c1 e9 02             	shr    $0x2,%ecx
405d8b:	83 e2 03             	and    $0x3,%edx
405d8e:	83 f9 08             	cmp    $0x8,%ecx
405d91:	72 29                	jb     0x405dbc
405d93:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
405d95:	ff 24 95 a8 5e 40 00 	jmp    *0x405ea8(,%edx,4)
405d9c:	8b c7                	mov    %edi,%eax
405d9e:	ba 03 00 00 00       	mov    $0x3,%edx
405da3:	83 e9 04             	sub    $0x4,%ecx
405da6:	72 0c                	jb     0x405db4
405da8:	83 e0 03             	and    $0x3,%eax
405dab:	03 c8                	add    %eax,%ecx
405dad:	ff 24 85 c0 5d 40 00 	jmp    *0x405dc0(,%eax,4)
405db4:	ff 24 8d b8 5e 40 00 	jmp    *0x405eb8(,%ecx,4)
405dbb:	90                   	nop
405dbc:	ff 24 8d 3c 5e 40 00 	jmp    *0x405e3c(,%ecx,4)
405dc3:	90                   	nop
405dc4:	d0 5d 40             	rcrb   $1,0x40(%ebp)
405dc7:	00 fc                	add    %bh,%ah
405dc9:	5d                   	pop    %ebp
405dca:	40                   	inc    %eax
405dcb:	00 20                	add    %ah,(%eax)
405dcd:	5e                   	pop    %esi
405dce:	40                   	inc    %eax
405dcf:	00 23                	add    %ah,(%ebx)
405dd1:	d1 8a 06 88 07 8a    	rorl   $1,-0x75f877fa(%edx)
405dd7:	46                   	inc    %esi
405dd8:	01 88 47 01 8a 46    	add    %ecx,0x468a0147(%eax)
405dde:	02 c1                	add    %cl,%al
405de0:	e9 02 88 47 02       	jmp    0x287e5e7
405de5:	83 c6 03             	add    $0x3,%esi
405de8:	83 c7 03             	add    $0x3,%edi
405deb:	83 f9 08             	cmp    $0x8,%ecx
405dee:	72 cc                	jb     0x405dbc
405df0:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
405df2:	ff 24 95 a8 5e 40 00 	jmp    *0x405ea8(,%edx,4)
405df9:	8d 49 00             	lea    0x0(%ecx),%ecx
405dfc:	23 d1                	and    %ecx,%edx
405dfe:	8a 06                	mov    (%esi),%al
405e00:	88 07                	mov    %al,(%edi)
405e02:	8a 46 01             	mov    0x1(%esi),%al
405e05:	c1 e9 02             	shr    $0x2,%ecx
405e08:	88 47 01             	mov    %al,0x1(%edi)
405e0b:	83 c6 02             	add    $0x2,%esi
405e0e:	83 c7 02             	add    $0x2,%edi
405e11:	83 f9 08             	cmp    $0x8,%ecx
405e14:	72 a6                	jb     0x405dbc
405e16:	f3 a5                	rep movsl %ds:(%esi),%es:(%edi)
405e18:	ff 24 95 a8 5e 40 00 	jmp    *0x405ea8(,%edx,4)
405e1f:	90                   	nop
405e20:	23 d1                	and    %ecx,%edx
405e22:	8a 06                	mov    (%esi),%al
405e24:	88 07                	mov    %al,(%edi)
405e26:	46                   	inc    %esi
405e27:	c1 e9 02             	shr    $0x2,%ecx
405e2a:	47                   	inc    %edi
405e2b:	83 f9 08             	cmp    $0x8,%ecx