404c50:	72 04                	jb     0x404c56
404c52:	8b 07                	mov    (%edi),%eax
404c54:	eb 02                	jmp    0x404c58
404c56:	8b c7                	mov    %edi,%eax
404c58:	55                   	push   %ebp
404c59:	55                   	push   %ebp
404c5a:	83 c9 ff             	or     $0xffffffff,%ecx
404c5d:	51                   	push   %ecx
404c5e:	50                   	push   %eax
404c5f:	55                   	push   %ebp
404c60:	68 e9 fd 00 00       	push   $0xfde9
404c65:	ff 15 84 10 43 00    	call   *0x431084
404c6b:	8b d8                	mov    %eax,%ebx
404c6d:	85 db                	test   %ebx,%ebx
404c6f:	74 ca                	je     0x404c3b
404c71:	6a 02                	push   $0x2
404c73:	59                   	pop    %ecx
404c74:	f7 e1                	mul    %ecx
404c76:	6a ff                	push   $0xffffffff
404c78:	59                   	pop    %ecx
404c79:	0f 42 c1             	cmovb  %ecx,%eax
404c7c:	50                   	push   %eax
404c7d:	e8 3e 1d 00 00       	call   0x4069c0
404c82:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
404c86:	8b e8                	mov    %eax,%ebp
404c88:	59                   	pop    %ecx
404c89:	72 02                	jb     0x404c8d
404c8b:	8b 3f                	mov    (%edi),%edi
404c8d:	53                   	push   %ebx
404c8e:	55                   	push   %ebp
404c8f:	83 c8 ff             	or     $0xffffffff,%eax
404c92:	50                   	push   %eax
404c93:	57                   	push   %edi
404c94:	6a 00                	push   $0x0
404c96:	68 e9 fd 00 00       	push   $0xfde9
404c9b:	ff 15 84 10 43 00    	call   *0x431084
404ca1:	55                   	push   %ebp
404ca2:	8d 4c 24 18          	lea    0x18(%esp),%ecx
404ca6:	e8 45 d3 ff ff       	call   0x401ff0
404cab:	55                   	push   %ebp
404cac:	e8 3f 1d 00 00       	call   0x4069f0
404cb1:	59                   	pop    %ecx
404cb2:	8d 44 24 14          	lea    0x14(%esp),%eax
404cb6:	8b ce                	mov    %esi,%ecx
404cb8:	50                   	push   %eax
404cb9:	e8 10 d3 ff ff       	call   0x401fce
404cbe:	6a 00                	push   $0x0
404cc0:	6a 01                	push   $0x1
404cc2:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
404cc6:	e8 fa d3 ff ff       	call   0x4020c5
404ccb:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
404ccf:	8b c6                	mov    %esi,%eax
404cd1:	5f                   	pop    %edi
404cd2:	5e                   	pop    %esi
404cd3:	5d                   	pop    %ebp
404cd4:	5b                   	pop    %ebx
404cd5:	33 cc                	xor    %esp,%ecx
404cd7:	e8 cb 4f 00 00       	call   0x409ca7
404cdc:	83 c4 24             	add    $0x24,%esp
404cdf:	c3                   	ret
404ce0:	83 ec 20             	sub    $0x20,%esp
404ce3:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
404ce8:	33 c4                	xor    %esp,%eax
404cea:	89 44 24 1c          	mov    %eax,0x1c(%esp)
404cee:	53                   	push   %ebx
404cef:	55                   	push   %ebp
404cf0:	56                   	push   %esi
404cf1:	57                   	push   %edi
404cf2:	8b fa                	mov    %edx,%edi
404cf4:	8b f1                	mov    %ecx,%esi
404cf6:	33 c9                	xor    %ecx,%ecx
404cf8:	39 4f 10             	cmp    %ecx,0x10(%edi)
404cfb:	75 11                	jne    0x404d0e
404cfd:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
404d04:	89 4e 10             	mov    %ecx,0x10(%esi)
404d07:	88 0e                	mov    %cl,(%esi)
404d09:	e9 83 00 00 00       	jmp    0x404d91
404d0e:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404d12:	72 04                	jb     0x404d18
404d14:	8b 07                	mov    (%edi),%eax
404d16:	eb 02                	jmp    0x404d1a
404d18:	8b c7                	mov    %edi,%eax
404d1a:	51                   	push   %ecx
404d1b:	51                   	push   %ecx
404d1c:	51                   	push   %ecx
404d1d:	51                   	push   %ecx
404d1e:	6a ff                	push   $0xffffffff
404d20:	50                   	push   %eax
404d21:	51                   	push   %ecx
404d22:	68 e9 fd 00 00       	push   $0xfde9
404d27:	ff 15 58 10 43 00    	call   *0x431058
404d2d:	8b d8                	mov    %eax,%ebx
404d2f:	85 db                	test   %ebx,%ebx
404d31:	75 0e                	jne    0x404d41
404d33:	21 46 10             	and    %eax,0x10(%esi)
404d36:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
404d3d:	88 06                	mov    %al,(%esi)
404d3f:	eb 50                	jmp    0x404d91
404d41:	53                   	push   %ebx
404d42:	e8 79 1c 00 00       	call   0x4069c0
404d47:	83 7f 14 08          	cmpl   $0x8,0x14(%edi)
404d4b:	8b e8                	mov    %eax,%ebp
404d4d:	59                   	pop    %ecx
404d4e:	72 02                	jb     0x404d52
404d50:	8b 3f                	mov    (%edi),%edi
404d52:	33 c0                	xor    %eax,%eax
404d54:	50                   	push   %eax
404d55:	50                   	push   %eax
404d56:	53                   	push   %ebx
404d57:	55                   	push   %ebp
404d58:	6a ff                	push   $0xffffffff
404d5a:	57                   	push   %edi
404d5b:	50                   	push   %eax
404d5c:	68 e9 fd 00 00       	push   $0xfde9
404d61:	ff 15 58 10 43 00    	call   *0x431058
404d67:	55                   	push   %ebp
404d68:	8d 4c 24 18          	lea    0x18(%esp),%ecx
404d6c:	e8 e8 01 00 00       	call   0x404f59
404d71:	55                   	push   %ebp
404d72:	e8 79 1c 00 00       	call   0x4069f0
404d77:	59                   	pop    %ecx
404d78:	8d 44 24 14          	lea    0x14(%esp),%eax
404d7c:	8b ce                	mov    %esi,%ecx
404d7e:	50                   	push   %eax
404d7f:	e8 2c 01 00 00       	call   0x404eb0
404d84:	6a 00                	push   $0x0
404d86:	6a 01                	push   $0x1
404d88:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
404d8c:	e8 6e 10 00 00       	call   0x405dff
404d91:	8b 4c 24 2c          	mov    0x2c(%esp),%ecx
404d95:	8b c6                	mov    %esi,%eax
404d97:	5f                   	pop    %edi
404d98:	5e                   	pop    %esi
404d99:	5d                   	pop    %ebp
404d9a:	5b                   	pop    %ebx
404d9b:	33 cc                	xor    %esp,%ecx
404d9d:	e8 05 4f 00 00       	call   0x409ca7
404da2:	83 c4 20             	add    $0x20,%esp
404da5:	c3                   	ret
404da6:	8b 11                	mov    (%ecx),%edx
404da8:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
404dac:	75 3c                	jne    0x404dea
404dae:	56                   	push   %esi
404daf:	8b 72 08             	mov    0x8(%edx),%esi
404db2:	80 7e 0d 00          	cmpb   $0x0,0xd(%esi)
404db6:	75 18                	jne    0x404dd0
404db8:	8b 16                	mov    (%esi),%edx
404dba:	80 7a 0d 00          	cmpb   $0x0,0xd(%edx)
404dbe:	75 0c                	jne    0x404dcc
404dc0:	8b 02                	mov    (%edx),%eax
404dc2:	8b f2                	mov    %edx,%esi
404dc4:	8b d0                	mov    %eax,%edx
404dc6:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
404dca:	74 f4                	je     0x404dc0
404dcc:	89 31                	mov    %esi,(%ecx)
404dce:	eb 19                	jmp    0x404de9
404dd0:	8b 42 04             	mov    0x4(%edx),%eax
404dd3:	eb 0c                	jmp    0x404de1
404dd5:	3b 50 08             	cmp    0x8(%eax),%edx
404dd8:	75 0d                	jne    0x404de7
404dda:	89 01                	mov    %eax,(%ecx)
404ddc:	8b d0                	mov    %eax,%edx
404dde:	8b 40 04             	mov    0x4(%eax),%eax
404de1:	80 78 0d 00          	cmpb   $0x0,0xd(%eax)
404de5:	74 ee                	je     0x404dd5
404de7:	89 01                	mov    %eax,(%ecx)
404de9:	5e                   	pop    %esi
404dea:	8b c1                	mov    %ecx,%eax
404dec:	c3                   	ret
404ded:	8b 44 24 04          	mov    0x4(%esp),%eax
404df1:	56                   	push   %esi
404df2:	8b f1                	mov    %ecx,%esi
404df4:	57                   	push   %edi
404df5:	8b 7e 10             	mov    0x10(%esi),%edi
404df8:	3b f8                	cmp    %eax,%edi
404dfa:	77 20                	ja     0x404e1c
404dfc:	39 46 14             	cmp    %eax,0x14(%esi)
404dff:	74 1b                	je     0x404e1c
404e01:	6a 01                	push   $0x1
404e03:	50                   	push   %eax
404e04:	e8 75 10 00 00       	call   0x405e7e
404e09:	84 c0                	test   %al,%al
404e0b:	74 0f                	je     0x404e1c
404e0d:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
404e11:	89 7e 10             	mov    %edi,0x10(%esi)
404e14:	72 02                	jb     0x404e18
404e16:	8b 36                	mov    (%esi),%esi
404e18:	c6 04 3e 00          	movb   $0x0,(%esi,%edi,1)
404e1c:	5f                   	pop    %edi
404e1d:	5e                   	pop    %esi
404e1e:	c2 04 00             	ret    $0x4
404e21:	56                   	push   %esi
404e22:	57                   	push   %edi
404e23:	8b 7c 24 0c          	mov    0xc(%esp),%edi
404e27:	8b f1                	mov    %ecx,%esi
404e29:	57                   	push   %edi
404e2a:	e8 17 10 00 00       	call   0x405e46
404e2f:	84 c0                	test   %al,%al
404e31:	74 1b                	je     0x404e4e
404e33:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
404e37:	72 04                	jb     0x404e3d
404e39:	8b 06                	mov    (%esi),%eax
404e3b:	eb 02                	jmp    0x404e3f
404e3d:	8b c6                	mov    %esi,%eax
404e3f:	ff 74 24 10          	push   0x10(%esp)
404e43:	2b f8                	sub    %eax,%edi
404e45:	57                   	push   %edi
404e46:	56                   	push   %esi
404e47:	e8 c3 11 00 00       	call   0x40600f
404e4c:	eb 57                	jmp    0x404ea5
404e4e:	8b 4e 10             	mov    0x10(%esi),%ecx
404e51:	8b c1                	mov    %ecx,%eax
404e53:	53                   	push   %ebx
404e54:	8b 5c 24 14          	mov    0x14(%esp),%ebx
404e58:	f7 d0                	not    %eax
404e5a:	3b c3                	cmp    %ebx,%eax
404e5c:	76 4c                	jbe    0x404eaa
404e5e:	85 db                	test   %ebx,%ebx
404e60:	74 40                	je     0x404ea2
404e62:	55                   	push   %ebp
404e63:	8d 2c 19             	lea    (%ecx,%ebx,1),%ebp
404e66:	8b ce                	mov    %esi,%ecx
404e68:	6a 00                	push   $0x0
404e6a:	55                   	push   %ebp
404e6b:	e8 0e 10 00 00       	call   0x405e7e
404e70:	84 c0                	test   %al,%al
404e72:	74 2d                	je     0x404ea1
404e74:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
404e78:	72 04                	jb     0x404e7e
404e7a:	8b 06                	mov    (%esi),%eax
404e7c:	eb 02                	jmp    0x404e80
404e7e:	8b c6                	mov    %esi,%eax
404e80:	8b 4e 10             	mov    0x10(%esi),%ecx
404e83:	8b d7                	mov    %edi,%edx
404e85:	53                   	push   %ebx
404e86:	03 c8                	add    %eax,%ecx
404e88:	e8 2b ec ff ff       	call   0x403ab8
404e8d:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
404e91:	59                   	pop    %ecx
404e92:	89 6e 10             	mov    %ebp,0x10(%esi)
404e95:	72 04                	jb     0x404e9b
404e97:	8b 06                	mov    (%esi),%eax
404e99:	eb 02                	jmp    0x404e9d
404e9b:	8b c6                	mov    %esi,%eax
404e9d:	c6 04 28 00          	movb   $0x0,(%eax,%ebp,1)
404ea1:	5d                   	pop    %ebp
404ea2:	8b c6                	mov    %esi,%eax
404ea4:	5b                   	pop    %ebx
404ea5:	5f                   	pop    %edi
404ea6:	5e                   	pop    %esi
404ea7:	c2 08 00             	ret    $0x8
404eaa:	e8 54 d4 ff ff       	call   0x402303
404eaf:	cc                   	int3
404eb0:	53                   	push   %ebx
404eb1:	55                   	push   %ebp
404eb2:	56                   	push   %esi
404eb3:	8b 74 24 10          	mov    0x10(%esp),%esi
404eb7:	33 db                	xor    %ebx,%ebx
404eb9:	57                   	push   %edi
404eba:	8b f9                	mov    %ecx,%edi
404ebc:	6a 0f                	push   $0xf
404ebe:	5d                   	pop    %ebp
404ebf:	89 6f 14             	mov    %ebp,0x14(%edi)
404ec2:	89 5f 10             	mov    %ebx,0x10(%edi)
404ec5:	88 1f                	mov    %bl,(%edi)
404ec7:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
404ecb:	73 15                	jae    0x404ee2
404ecd:	8b 46 10             	mov    0x10(%esi),%eax
404ed0:	83 c0 01             	add    $0x1,%eax
404ed3:	74 13                	je     0x404ee8
404ed5:	50                   	push   %eax
404ed6:	56                   	push   %esi
404ed7:	57                   	push   %edi
404ed8:	e8 63 5f 00 00       	call   0x40ae40
404edd:	83 c4 0c             	add    $0xc,%esp
404ee0:	eb 06                	jmp    0x404ee8
404ee2:	8b 06                	mov    (%esi),%eax
404ee4:	89 07                	mov    %eax,(%edi)
404ee6:	89 1e                	mov    %ebx,(%esi)
404ee8:	8b 46 10             	mov    0x10(%esi),%eax
404eeb:	89 47 10             	mov    %eax,0x10(%edi)
404eee:	8b 46 14             	mov    0x14(%esi),%eax
404ef1:	89 47 14             	mov    %eax,0x14(%edi)
404ef4:	8b c7                	mov    %edi,%eax
404ef6:	89 6e 14             	mov    %ebp,0x14(%esi)
404ef9:	89 5e 10             	mov    %ebx,0x10(%esi)
404efc:	5f                   	pop    %edi
404efd:	88 1e                	mov    %bl,(%esi)
404eff:	5e                   	pop    %esi
404f00:	5d                   	pop    %ebp
404f01:	5b                   	pop    %ebx
404f02:	c2 04 00             	ret    $0x4
404f05:	53                   	push   %ebx
404f06:	56                   	push   %esi
404f07:	8b f1                	mov    %ecx,%esi
404f09:	33 db                	xor    %ebx,%ebx
404f0b:	57                   	push   %edi
404f0c:	8b 7c 24 10          	mov    0x10(%esp),%edi
404f10:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
404f17:	89 5e 10             	mov    %ebx,0x10(%esi)
404f1a:	88 1e                	mov    %bl,(%esi)
404f1c:	83 ff ff             	cmp    $0xffffffff,%edi
404f1f:	74 32                	je     0x404f53
404f21:	53                   	push   %ebx
404f22:	57                   	push   %edi
404f23:	e8 56 0f 00 00       	call   0x405e7e
404f28:	84 c0                	test   %al,%al
404f2a:	74 1f                	je     0x404f4b
404f2c:	ff 74 24 14          	push   0x14(%esp)
404f30:	8b ce                	mov    %esi,%ecx
404f32:	57                   	push   %edi
404f33:	53                   	push   %ebx
404f34:	e8 90 14 00 00       	call   0x4063c9
404f39:	83 7e 14 10          	cmpl   $0x10,0x14(%esi)
404f3d:	89 7e 10             	mov    %edi,0x10(%esi)
404f40:	72 04                	jb     0x404f46
404f42:	8b 06                	mov    (%esi),%eax
404f44:	eb 02                	jmp    0x404f48
404f46:	8b c6                	mov    %esi,%eax
404f48:	88 1c 38             	mov    %bl,(%eax,%edi,1)
404f4b:	5f                   	pop    %edi
404f4c:	8b c6                	mov    %esi,%eax
404f4e:	5e                   	pop    %esi
404f4f:	5b                   	pop    %ebx
404f50:	c2 08 00             	ret    $0x8
404f53:	e8 ab d3 ff ff       	call   0x402303
404f58:	cc                   	int3
404f59:	53                   	push   %ebx
404f5a:	56                   	push   %esi
404f5b:	8b f1                	mov    %ecx,%esi
404f5d:	57                   	push   %edi
404f5e:	8b 7c 24 10          	mov    0x10(%esp),%edi
404f62:	8b cf                	mov    %edi,%ecx
404f64:	83 66 10 00          	andl   $0x0,0x10(%esi)
404f68:	c7 46 14 0f 00 00 00 	movl   $0xf,0x14(%esi)
404f6f:	c6 06 00             	movb   $0x0,(%esi)
404f72:	e8 29 eb ff ff       	call   0x403aa0
404f77:	57                   	push   %edi
404f78:	8b ce                	mov    %esi,%ecx
404f7a:	8b d8                	mov    %eax,%ebx
404f7c:	e8 c5 0e 00 00       	call   0x405e46
404f81:	84 c0                	test   %al,%al
404f83:	74 0c                	je     0x404f91
404f85:	53                   	push   %ebx
404f86:	2b fe                	sub    %esi,%edi
404f88:	57                   	push   %edi
404f89:	56                   	push   %esi
404f8a:	e8 a3 0f 00 00       	call   0x405f32
404f8f:	eb 34                	jmp    0x404fc5
404f91:	6a 00                	push   $0x0