477b2a:	cc                   	int3
477b2b:	cc                   	int3
477b2c:	cc                   	int3
477b2d:	cc                   	int3
477b2e:	cc                   	int3
477b2f:	cc                   	int3
477b30:	8b ff                	mov    %edi,%edi
477b32:	55                   	push   %ebp
477b33:	8b ec                	mov    %esp,%ebp
477b35:	8b 45 08             	mov    0x8(%ebp),%eax
477b38:	83 e8 20             	sub    $0x20,%eax
477b3b:	5d                   	pop    %ebp
477b3c:	c3                   	ret
477b3d:	cc                   	int3
477b3e:	cc                   	int3
477b3f:	cc                   	int3
477b40:	8b ff                	mov    %edi,%edi
477b42:	55                   	push   %ebp
477b43:	8b ec                	mov    %esp,%ebp
477b45:	8b 45 0c             	mov    0xc(%ebp),%eax
477b48:	50                   	push   %eax
477b49:	68 00 02 00 00       	push   $0x200
477b4e:	8b 4d 08             	mov    0x8(%ebp),%ecx
477b51:	51                   	push   %ecx
477b52:	e8 b9 f9 ff ff       	call   0x477510
477b57:	83 c4 0c             	add    $0xc,%esp
477b5a:	5d                   	pop    %ebp
477b5b:	c3                   	ret
477b5c:	cc                   	int3
477b5d:	cc                   	int3
477b5e:	cc                   	int3
477b5f:	cc                   	int3
477b60:	cc                   	int3
477b61:	cc                   	int3
477b62:	cc                   	int3
477b63:	cc                   	int3
477b64:	cc                   	int3
477b65:	cc                   	int3
477b66:	cc                   	int3
477b67:	cc                   	int3
477b68:	cc                   	int3
477b69:	cc                   	int3
477b6a:	cc                   	int3
477b6b:	cc                   	int3
477b6c:	cc                   	int3
477b6d:	cc                   	int3
477b6e:	cc                   	int3
477b6f:	cc                   	int3
477b70:	8b ff                	mov    %edi,%edi
477b72:	55                   	push   %ebp
477b73:	8b ec                	mov    %esp,%ebp
477b75:	83 ec 08             	sub    $0x8,%esp
477b78:	e8 20 bb f8 ff       	call   0x40369d
477b7d:	0f b6 c0             	movzbl %al,%eax
477b80:	85 c0                	test   %eax,%eax
477b82:	74 13                	je     0x477b97
477b84:	6a 00                	push   $0x0
477b86:	8b 4d 08             	mov    0x8(%ebp),%ecx
477b89:	51                   	push   %ecx
477b8a:	e8 24 af f8 ff       	call   0x402ab3
477b8f:	83 c4 08             	add    $0x8,%esp
477b92:	89 45 f8             	mov    %eax,-0x8(%ebp)
477b95:	eb 23                	jmp    0x477bba
477b97:	83 7d 08 41          	cmpl   $0x41,0x8(%ebp)
477b9b:	7c 11                	jl     0x477bae
477b9d:	83 7d 08 5a          	cmpl   $0x5a,0x8(%ebp)
477ba1:	7f 0b                	jg     0x477bae
477ba3:	8b 55 08             	mov    0x8(%ebp),%edx
477ba6:	83 c2 20             	add    $0x20,%edx
477ba9:	89 55 fc             	mov    %edx,-0x4(%ebp)
477bac:	eb 06                	jmp    0x477bb4
477bae:	8b 45 08             	mov    0x8(%ebp),%eax
477bb1:	89 45 fc             	mov    %eax,-0x4(%ebp)
477bb4:	8b 4d fc             	mov    -0x4(%ebp),%ecx
477bb7:	89 4d f8             	mov    %ecx,-0x8(%ebp)
477bba:	8b 45 f8             	mov    -0x8(%ebp),%eax
477bbd:	8b e5                	mov    %ebp,%esp
477bbf:	5d                   	pop    %ebp
477bc0:	c3                   	ret
477bc1:	cc                   	int3
477bc2:	cc                   	int3
477bc3:	cc                   	int3
477bc4:	cc                   	int3
477bc5:	cc                   	int3
477bc6:	cc                   	int3
477bc7:	cc                   	int3
477bc8:	cc                   	int3
477bc9:	cc                   	int3
477bca:	cc                   	int3
477bcb:	cc                   	int3
477bcc:	cc                   	int3
477bcd:	cc                   	int3
477bce:	cc                   	int3
477bcf:	cc                   	int3
477bd0:	cc                   	int3
477bd1:	cc                   	int3
477bd2:	cc                   	int3
477bd3:	cc                   	int3
477bd4:	cc                   	int3
477bd5:	cc                   	int3
477bd6:	cc                   	int3
477bd7:	cc                   	int3
477bd8:	cc                   	int3
477bd9:	cc                   	int3
477bda:	cc                   	int3
477bdb:	cc                   	int3
477bdc:	cc                   	int3
477bdd:	cc                   	int3
477bde:	cc                   	int3
477bdf:	cc                   	int3
477be0:	8b ff                	mov    %edi,%edi
477be2:	55                   	push   %ebp
477be3:	8b ec                	mov    %esp,%ebp
477be5:	83 ec 08             	sub    $0x8,%esp
477be8:	e8 b0 ba f8 ff       	call   0x40369d
477bed:	0f b6 c0             	movzbl %al,%eax
477bf0:	85 c0                	test   %eax,%eax
477bf2:	74 13                	je     0x477c07
477bf4:	6a 00                	push   $0x0
477bf6:	8b 4d 08             	mov    0x8(%ebp),%ecx
477bf9:	51                   	push   %ecx
477bfa:	e8 1a b2 f8 ff       	call   0x402e19
477bff:	83 c4 08             	add    $0x8,%esp
477c02:	89 45 f8             	mov    %eax,-0x8(%ebp)
477c05:	eb 23                	jmp    0x477c2a
477c07:	83 7d 08 61          	cmpl   $0x61,0x8(%ebp)
477c0b:	7c 11                	jl     0x477c1e
477c0d:	83 7d 08 7a          	cmpl   $0x7a,0x8(%ebp)
477c11:	7f 0b                	jg     0x477c1e
477c13:	8b 55 08             	mov    0x8(%ebp),%edx
477c16:	83 ea 20             	sub    $0x20,%edx
477c19:	89 55 fc             	mov    %edx,-0x4(%ebp)
477c1c:	eb 06                	jmp    0x477c24
477c1e:	8b 45 08             	mov    0x8(%ebp),%eax
477c21:	89 45 fc             	mov    %eax,-0x4(%ebp)
477c24:	8b 4d fc             	mov    -0x4(%ebp),%ecx
477c27:	89 4d f8             	mov    %ecx,-0x8(%ebp)
477c2a:	8b 45 f8             	mov    -0x8(%ebp),%eax
477c2d:	8b e5                	mov    %ebp,%esp
477c2f:	5d                   	pop    %ebp
477c30:	c3                   	ret
477c31:	cc                   	int3
477c32:	cc                   	int3
477c33:	cc                   	int3
477c34:	cc                   	int3
477c35:	cc                   	int3
477c36:	cc                   	int3
477c37:	cc                   	int3
477c38:	cc                   	int3
477c39:	cc                   	int3
477c3a:	cc                   	int3
477c3b:	cc                   	int3
477c3c:	cc                   	int3
477c3d:	cc                   	int3
477c3e:	cc                   	int3
477c3f:	cc                   	int3
477c40:	cc                   	int3
477c41:	cc                   	int3
477c42:	cc                   	int3
477c43:	cc                   	int3
477c44:	cc                   	int3
477c45:	cc                   	int3
477c46:	cc                   	int3
477c47:	cc                   	int3
477c48:	cc                   	int3
477c49:	cc                   	int3
477c4a:	cc                   	int3
477c4b:	cc                   	int3
477c4c:	cc                   	int3
477c4d:	cc                   	int3
477c4e:	cc                   	int3
477c4f:	cc                   	int3
477c50:	8b ff                	mov    %edi,%edi
477c52:	55                   	push   %ebp
477c53:	8b ec                	mov    %esp,%ebp
477c55:	8b 45 10             	mov    0x10(%ebp),%eax
477c58:	50                   	push   %eax
477c59:	8b 4d 0c             	mov    0xc(%ebp),%ecx
477c5c:	51                   	push   %ecx
477c5d:	8b 4d 08             	mov    0x8(%ebp),%ecx
477c60:	e8 2c ad f8 ff       	call   0x402991
477c65:	8b 45 08             	mov    0x8(%ebp),%eax
477c68:	5d                   	pop    %ebp
477c69:	c3                   	ret
477c6a:	cc                   	int3
477c6b:	cc                   	int3
477c6c:	cc                   	int3
477c6d:	cc                   	int3
477c6e:	cc                   	int3
477c6f:	cc                   	int3
477c70:	8b ff                	mov    %edi,%edi
477c72:	55                   	push   %ebp
477c73:	8b ec                	mov    %esp,%ebp
477c75:	8b 45 10             	mov    0x10(%ebp),%eax
477c78:	50                   	push   %eax
477c79:	8b 4d 0c             	mov    0xc(%ebp),%ecx
477c7c:	51                   	push   %ecx
477c7d:	8b 4d 08             	mov    0x8(%ebp),%ecx
477c80:	e8 d6 97 f8 ff       	call   0x40145b
477c85:	8b 45 08             	mov    0x8(%ebp),%eax
477c88:	5d                   	pop    %ebp
477c89:	c3                   	ret
477c8a:	cc                   	int3
477c8b:	cc                   	int3
477c8c:	cc                   	int3
477c8d:	cc                   	int3
477c8e:	cc                   	int3
477c8f:	cc                   	int3
477c90:	8b ff                	mov    %edi,%edi
477c92:	55                   	push   %ebp
477c93:	8b ec                	mov    %esp,%ebp
477c95:	51                   	push   %ecx
477c96:	6a 01                	push   $0x1
477c98:	8b 45 10             	mov    0x10(%ebp),%eax
477c9b:	50                   	push   %eax
477c9c:	83 ec 08             	sub    $0x8,%esp
477c9f:	8b cc                	mov    %esp,%ecx
477ca1:	89 65 fc             	mov    %esp,-0x4(%ebp)
477ca4:	8b 55 0c             	mov    0xc(%ebp),%edx
477ca7:	52                   	push   %edx
477ca8:	8b 45 08             	mov    0x8(%ebp),%eax
477cab:	50                   	push   %eax
477cac:	51                   	push   %ecx
477cad:	e8 3d 9a f8 ff       	call   0x4016ef
477cb2:	83 c4 0c             	add    $0xc,%esp
477cb5:	8b 4d 14             	mov    0x14(%ebp),%ecx
477cb8:	51                   	push   %ecx
477cb9:	e8 60 c0 f8 ff       	call   0x403d1e
477cbe:	83 c4 14             	add    $0x14,%esp
477cc1:	8b e5                	mov    %ebp,%esp
477cc3:	5d                   	pop    %ebp
477cc4:	c3                   	ret
477cc5:	cc                   	int3
477cc6:	cc                   	int3
477cc7:	cc                   	int3
477cc8:	cc                   	int3
477cc9:	cc                   	int3
477cca:	cc                   	int3
477ccb:	cc                   	int3
477ccc:	cc                   	int3
477ccd:	cc                   	int3
477cce:	cc                   	int3
477ccf:	cc                   	int3
477cd0:	cc                   	int3
477cd1:	cc                   	int3
477cd2:	cc                   	int3
477cd3:	cc                   	int3
477cd4:	cc                   	int3
477cd5:	cc                   	int3
477cd6:	cc                   	int3
477cd7:	cc                   	int3
477cd8:	cc                   	int3
477cd9:	cc                   	int3
477cda:	cc                   	int3
477cdb:	cc                   	int3
477cdc:	cc                   	int3
477cdd:	cc                   	int3
477cde:	cc                   	int3
477cdf:	cc                   	int3
477ce0:	8b ff                	mov    %edi,%edi
477ce2:	55                   	push   %ebp
477ce3:	8b ec                	mov    %esp,%ebp
477ce5:	51                   	push   %ecx
477ce6:	6a 01                	push   $0x1
477ce8:	8b 45 10             	mov    0x10(%ebp),%eax
477ceb:	50                   	push   %eax
477cec:	83 ec 08             	sub    $0x8,%esp
477cef:	8b cc                	mov    %esp,%ecx
477cf1:	89 65 fc             	mov    %esp,-0x4(%ebp)
477cf4:	8b 55 0c             	mov    0xc(%ebp),%edx
477cf7:	52                   	push   %edx
477cf8:	8b 45 08             	mov    0x8(%ebp),%eax
477cfb:	50                   	push   %eax
477cfc:	51                   	push   %ecx
477cfd:	e8 39 c1 f8 ff       	call   0x403e3b
477d02:	83 c4 0c             	add    $0xc,%esp
477d05:	8b 4d 14             	mov    0x14(%ebp),%ecx
477d08:	51                   	push   %ecx
477d09:	e8 8f be f8 ff       	call   0x403b9d
477d0e:	83 c4 14             	add    $0x14,%esp
477d11:	8b e5                	mov    %ebp,%esp
477d13:	5d                   	pop    %ebp
477d14:	c3                   	ret
477d15:	cc                   	int3
477d16:	cc                   	int3
477d17:	cc                   	int3
477d18:	cc                   	int3
477d19:	cc                   	int3
477d1a:	cc                   	int3
477d1b:	cc                   	int3
477d1c:	cc                   	int3
477d1d:	cc                   	int3
477d1e:	cc                   	int3
477d1f:	cc                   	int3
477d20:	cc                   	int3
477d21:	cc                   	int3
477d22:	cc                   	int3
477d23:	cc                   	int3
477d24:	cc                   	int3
477d25:	cc                   	int3
477d26:	cc                   	int3
477d27:	cc                   	int3
477d28:	cc                   	int3
477d29:	cc                   	int3
477d2a:	cc                   	int3
477d2b:	cc                   	int3
477d2c:	cc                   	int3
477d2d:	cc                   	int3
477d2e:	cc                   	int3
477d2f:	cc                   	int3
477d30:	8b ff                	mov    %edi,%edi
477d32:	55                   	push   %ebp
477d33:	8b ec                	mov    %esp,%ebp
477d35:	51                   	push   %ecx
477d36:	6a 00                	push   $0x0
477d38:	8b 45 10             	mov    0x10(%ebp),%eax
477d3b:	50                   	push   %eax
477d3c:	83 ec 08             	sub    $0x8,%esp
477d3f:	8b cc                	mov    %esp,%ecx
477d41:	89 65 fc             	mov    %esp,-0x4(%ebp)
477d44:	8b 55 0c             	mov    0xc(%ebp),%edx
477d47:	52                   	push   %edx
477d48:	8b 45 08             	mov    0x8(%ebp),%eax
477d4b:	50                   	push   %eax
477d4c:	51                   	push   %ecx
477d4d:	e8 9d 99 f8 ff       	call   0x4016ef
477d52:	83 c4 0c             	add    $0xc,%esp
477d55:	8b 4d 14             	mov    0x14(%ebp),%ecx
477d58:	51                   	push   %ecx
477d59:	e8 c0 bf f8 ff       	call   0x403d1e
477d5e:	83 c4 14             	add    $0x14,%esp
477d61:	8b e5                	mov    %ebp,%esp
477d63:	5d                   	pop    %ebp
477d64:	c3                   	ret
477d65:	cc                   	int3
477d66:	cc                   	int3
477d67:	cc                   	int3
477d68:	cc                   	int3
477d69:	cc                   	int3
477d6a:	cc                   	int3
477d6b:	cc                   	int3
477d6c:	cc                   	int3
477d6d:	cc                   	int3
477d6e:	cc                   	int3
477d6f:	cc                   	int3
477d70:	cc                   	int3
477d71:	cc                   	int3
477d72:	cc                   	int3
477d73:	cc                   	int3
477d74:	cc                   	int3