404a40:	e8 ba 13 00 00       	call   0x405dff
404a45:	53                   	push   %ebx
404a46:	55                   	push   %ebp
404a47:	8d 4c 24 44          	lea    0x44(%esp),%ecx
404a4b:	e8 af 13 00 00       	call   0x405dff
404a50:	53                   	push   %ebx
404a51:	55                   	push   %ebp
404a52:	8d 8c 24 8c 00 00 00 	lea    0x8c(%esp),%ecx
404a59:	e8 a1 13 00 00       	call   0x405dff
404a5e:	6a 28                	push   $0x28
404a60:	68 70 96 43 00       	push   $0x439670
404a65:	8b cf                	mov    %edi,%ecx
404a67:	e8 b5 03 00 00       	call   0x404e21
404a6c:	6a 02                	push   $0x2
404a6e:	68 24 96 43 00       	push   $0x439624
404a73:	8b cf                	mov    %edi,%ecx
404a75:	e8 a7 03 00 00       	call   0x404e21
404a7a:	8b 44 24 18          	mov    0x18(%esp),%eax
404a7e:	39 44 24 14          	cmp    %eax,0x14(%esp)
404a82:	74 10                	je     0x404a94
404a84:	2b 44 24 14          	sub    0x14(%esp),%eax
404a88:	8b cf                	mov    %edi,%ecx
404a8a:	50                   	push   %eax
404a8b:	ff 74 24 18          	push   0x18(%esp)
404a8f:	e8 8d 03 00 00       	call   0x404e21
404a94:	6a 02                	push   $0x2
404a96:	68 24 96 43 00       	push   $0x439624
404a9b:	8b cf                	mov    %edi,%ecx
404a9d:	e8 7f 03 00 00       	call   0x404e21
404aa2:	8d 84 24 9c 00 00 00 	lea    0x9c(%esp),%eax
404aa9:	ba 28 96 43 00       	mov    $0x439628,%edx
404aae:	68 9c 96 43 00       	push   $0x43969c
404ab3:	50                   	push   %eax
404ab4:	8d 4c 24 44          	lea    0x44(%esp),%ecx
404ab8:	e8 d0 1b 00 00       	call   0x40668d
404abd:	59                   	pop    %ecx
404abe:	8b d0                	mov    %eax,%edx
404ac0:	8d 4c 24 58          	lea    0x58(%esp),%ecx
404ac4:	e8 11 1c 00 00       	call   0x4066da
404ac9:	59                   	pop    %ecx
404aca:	56                   	push   %esi
404acb:	53                   	push   %ebx
404acc:	50                   	push   %eax
404acd:	8b cf                	mov    %edi,%ecx
404acf:	e8 3b 15 00 00       	call   0x40600f
404ad4:	53                   	push   %ebx
404ad5:	55                   	push   %ebp
404ad6:	8d 4c 24 5c          	lea    0x5c(%esp),%ecx
404ada:	e8 20 13 00 00       	call   0x405dff
404adf:	53                   	push   %ebx
404ae0:	6a 01                	push   $0x1
404ae2:	8d 4c 24 44          	lea    0x44(%esp),%ecx
404ae6:	e8 14 13 00 00       	call   0x405dff
404aeb:	b3 01                	mov    $0x1,%bl
404aed:	6a 00                	push   $0x0
404aef:	6a 01                	push   $0x1
404af1:	8d 8c 24 bc 00 00 00 	lea    0xbc(%esp),%ecx
404af8:	e8 02 13 00 00       	call   0x405dff
404afd:	6a 00                	push   $0x0
404aff:	6a 01                	push   $0x1
404b01:	8d 8c 24 d4 00 00 00 	lea    0xd4(%esp),%ecx
404b08:	e8 f2 12 00 00       	call   0x405dff
404b0d:	6a 00                	push   $0x0
404b0f:	6a 01                	push   $0x1
404b11:	8d 8c 24 a4 00 00 00 	lea    0xa4(%esp),%ecx
404b18:	e8 e2 12 00 00       	call   0x405dff
404b1d:	8d 4c 24 14          	lea    0x14(%esp),%ecx
404b21:	e8 a2 e8 ff ff       	call   0x4033c8
404b26:	8b 8c 24 fc 00 00 00 	mov    0xfc(%esp),%ecx
404b2d:	8a c3                	mov    %bl,%al
404b2f:	5f                   	pop    %edi
404b30:	5e                   	pop    %esi
404b31:	5d                   	pop    %ebp
404b32:	5b                   	pop    %ebx
404b33:	33 cc                	xor    %esp,%ecx
404b35:	e8 6d 51 00 00       	call   0x409ca7
404b3a:	81 c4 f0 00 00 00    	add    $0xf0,%esp
404b40:	c3                   	ret
404b41:	81 ec d4 00 00 00    	sub    $0xd4,%esp
404b47:	53                   	push   %ebx
404b48:	55                   	push   %ebp
404b49:	56                   	push   %esi
404b4a:	57                   	push   %edi
404b4b:	8b f1                	mov    %ecx,%esi
404b4d:	8b ea                	mov    %edx,%ebp
404b4f:	51                   	push   %ecx
404b50:	8d 4c 24 14          	lea    0x14(%esp),%ecx
404b54:	33 db                	xor    %ebx,%ebx
404b56:	e8 80 05 00 00       	call   0x4050db
404b5b:	83 7e 14 08          	cmpl   $0x8,0x14(%esi)
404b5f:	72 02                	jb     0x404b63
404b61:	8b 36                	mov    (%esi),%esi
404b63:	51                   	push   %ecx
404b64:	51                   	push   %ecx
404b65:	56                   	push   %esi
404b66:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
404b6a:	e8 c4 04 00 00       	call   0x405033
404b6f:	39 5c 24 6c          	cmp    %ebx,0x6c(%esp)
404b73:	74 77                	je     0x404bec
404b75:	6a 02                	push   $0x2
404b77:	51                   	push   %ecx
404b78:	51                   	push   %ecx
404b79:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
404b7d:	e8 45 0d 00 00       	call   0x4058c7
404b82:	8d 84 24 c8 00 00 00 	lea    0xc8(%esp),%eax
404b89:	50                   	push   %eax
404b8a:	8d 4c 24 14          	lea    0x14(%esp),%ecx
404b8e:	e8 c1 0c 00 00       	call   0x405854
404b93:	8b 70 08             	mov    0x8(%eax),%esi
404b96:	03 30                	add    (%eax),%esi
404b98:	8b 78 0c             	mov    0xc(%eax),%edi
404b9b:	13 78 04             	adc    0x4(%eax),%edi
404b9e:	3b df                	cmp    %edi,%ebx
404ba0:	75 2a                	jne    0x404bcc
404ba2:	56                   	push   %esi
404ba3:	8b cd                	mov    %ebp,%ecx
404ba5:	e8 73 e7 ff ff       	call   0x40331d
404baa:	8b c6                	mov    %esi,%eax
404bac:	0b c7                	or     %edi,%eax
404bae:	74 1a                	je     0x404bca
404bb0:	53                   	push   %ebx
404bb1:	51                   	push   %ecx
404bb2:	51                   	push   %ecx
404bb3:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
404bb7:	e8 0b 0d 00 00       	call   0x4058c7
404bbc:	57                   	push   %edi
404bbd:	56                   	push   %esi
404bbe:	ff 75 00             	push   0x0(%ebp)
404bc1:	8d 4c 24 1c          	lea    0x1c(%esp),%ecx
404bc5:	e8 9a 0d 00 00       	call   0x405964
404bca:	b3 01                	mov    $0x1,%bl
404bcc:	8d 4c 24 20          	lea    0x20(%esp),%ecx
404bd0:	e8 88 16 00 00       	call   0x40625d
404bd5:	85 c0                	test   %eax,%eax
404bd7:	75 13                	jne    0x404bec
404bd9:	8b 44 24 10          	mov    0x10(%esp),%eax
404bdd:	51                   	push   %ecx
404bde:	8d 4c 24 14          	lea    0x14(%esp),%ecx
404be2:	6a 02                	push   $0x2
404be4:	03 48 04             	add    0x4(%eax),%ecx
404be7:	e8 c8 16 00 00       	call   0x4062b4
404bec:	8d 8c 24 80 00 00 00 	lea    0x80(%esp),%ecx
404bf3:	e8 f8 03 00 00       	call   0x404ff0
404bf8:	8d 84 24 80 00 00 00 	lea    0x80(%esp),%eax
404bff:	c7 84 24 80 00 00 00 	movl   $0x439710,0x80(%esp)
404c06:	10 97 43 00
404c0a:	50                   	push   %eax
404c0b:	e8 e8 88 02 00       	call   0x42d4f8
404c10:	59                   	pop    %ecx
404c11:	5f                   	pop    %edi
404c12:	5e                   	pop    %esi
404c13:	5d                   	pop    %ebp
404c14:	8a c3                	mov    %bl,%al
404c16:	5b                   	pop    %ebx
404c17:	81 c4 d4 00 00 00    	add    $0xd4,%esp
404c1d:	c3                   	ret
404c1e:	83 ec 24             	sub    $0x24,%esp
404c21:	a1 c0 d0 43 00       	mov    0x43d0c0,%eax
404c26:	33 c4                	xor    %esp,%eax
404c28:	89 44 24 1c          	mov    %eax,0x1c(%esp)
404c2c:	53                   	push   %ebx
404c2d:	55                   	push   %ebp
404c2e:	56                   	push   %esi
404c2f:	57                   	push   %edi
404c30:	8b fa                	mov    %edx,%edi
404c32:	33 ed                	xor    %ebp,%ebp
404c34:	8b f1                	mov    %ecx,%esi
404c36:	39 6f 10             	cmp    %ebp,0x10(%edi)
404c39:	75 11                	jne    0x404c4c
404c3b:	c7 46 14 07 00 00 00 	movl   $0x7,0x14(%esi)
404c42:	33 c0                	xor    %eax,%eax
404c44:	89 6e 10             	mov    %ebp,0x10(%esi)
404c47:	66 89 06             	mov    %ax,(%esi)
404c4a:	eb 7f                	jmp    0x404ccb
404c4c:	83 7f 14 10          	cmpl   $0x10,0x14(%edi)
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