471bd4:	53                   	push   %ebx
471bd5:	8b d8                	mov    %eax,%ebx
471bd7:	8b c3                	mov    %ebx,%eax
471bd9:	e8 d2 ff ff ff       	call   0x471bb0
471bde:	83 f8 ff             	cmp    $0xffffffff,%eax
471be1:	74 09                	je     0x471bec
471be3:	8b d0                	mov    %eax,%edx
471be5:	8b c3                	mov    %ebx,%eax
471be7:	e8 7c ff ff ff       	call   0x471b68
471bec:	5b                   	pop    %ebx
471bed:	c3                   	ret
471bee:	8b c0                	mov    %eax,%eax
471bf0:	55                   	push   %ebp
471bf1:	8b ec                	mov    %esp,%ebp
471bf3:	51                   	push   %ecx
471bf4:	53                   	push   %ebx
471bf5:	56                   	push   %esi
471bf6:	57                   	push   %edi
471bf7:	8b d9                	mov    %ecx,%ebx
471bf9:	8b f2                	mov    %edx,%esi
471bfb:	89 45 fc             	mov    %eax,-0x4(%ebp)
471bfe:	3b de                	cmp    %esi,%ebx
471c00:	74 69                	je     0x471c6b
471c02:	85 db                	test   %ebx,%ebx
471c04:	7c 08                	jl     0x471c0e
471c06:	8b 45 fc             	mov    -0x4(%ebp),%eax
471c09:	3b 58 60             	cmp    0x60(%eax),%ebx
471c0c:	7c 08                	jl     0x471c16
471c0e:	8b 45 fc             	mov    -0x4(%ebp),%eax
471c11:	e8 9e fa ff ff       	call   0x4716b4
471c16:	8b d6                	mov    %esi,%edx
471c18:	8b 45 fc             	mov    -0x4(%ebp),%eax
471c1b:	e8 b0 fc ff ff       	call   0x4718d0
471c20:	8b f8                	mov    %eax,%edi
471c22:	8b 45 fc             	mov    -0x4(%ebp),%eax
471c25:	e8 36 fe ff ff       	call   0x471a60
471c2a:	33 c0                	xor    %eax,%eax
471c2c:	55                   	push   %ebp
471c2d:	68 64 1c 47 00       	push   $0x471c64
471c32:	64 ff 30             	push   %fs:(%eax)
471c35:	64 89 20             	mov    %esp,%fs:(%eax)
471c38:	8b d6                	mov    %esi,%edx
471c3a:	8b 45 fc             	mov    -0x4(%ebp),%eax
471c3d:	e8 26 ff ff ff       	call   0x471b68
471c42:	8b cf                	mov    %edi,%ecx
471c44:	8b d3                	mov    %ebx,%edx
471c46:	8b 45 fc             	mov    -0x4(%ebp),%eax
471c49:	e8 32 fe ff ff       	call   0x471a80
471c4e:	33 c0                	xor    %eax,%eax
471c50:	5a                   	pop    %edx
471c51:	59                   	pop    %ecx
471c52:	59                   	pop    %ecx
471c53:	64 89 10             	mov    %edx,%fs:(%eax)
471c56:	68 6b 1c 47 00       	push   $0x471c6b
471c5b:	8b 45 fc             	mov    -0x4(%ebp),%eax
471c5e:	e8 0d fe ff ff       	call   0x471a70
471c63:	c3                   	ret
471c64:	e9 a3 25 f9 ff       	jmp    0x40420c
471c69:	eb f0                	jmp    0x471c5b
471c6b:	5f                   	pop    %edi
471c6c:	5e                   	pop    %esi
471c6d:	5b                   	pop    %ebx
471c6e:	59                   	pop    %ecx
471c6f:	5d                   	pop    %ebp
471c70:	c3                   	ret
471c71:	8d 40 00             	lea    0x0(%eax),%eax
471c74:	55                   	push   %ebp
471c75:	8b ec                	mov    %esp,%ebp
471c77:	51                   	push   %ecx
471c78:	53                   	push   %ebx
471c79:	56                   	push   %esi
471c7a:	57                   	push   %edi
471c7b:	8b f8                	mov    %eax,%edi
471c7d:	83 7f 74 00          	cmpl   $0x0,0x74(%edi)
471c81:	75 0f                	jne    0x471c92
471c83:	b2 01                	mov    $0x1,%dl
471c85:	a1 24 94 41 00       	mov    0x419424,%eax
471c8a:	e8 b9 1d f9 ff       	call   0x403a48
471c8f:	89 47 74             	mov    %eax,0x74(%edi)
471c92:	8b 47 74             	mov    0x74(%edi),%eax
471c95:	8b 70 08             	mov    0x8(%eax),%esi
471c98:	4e                   	dec    %esi
471c99:	85 f6                	test   %esi,%esi
471c9b:	7c 2e                	jl     0x471ccb
471c9d:	46                   	inc    %esi
471c9e:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
471ca5:	8b 47 74             	mov    0x74(%edi),%eax
471ca8:	8b 55 fc             	mov    -0x4(%ebp),%edx
471cab:	e8 10 a1 fa ff       	call   0x41bdc0
471cb0:	8b d8                	mov    %eax,%ebx
471cb2:	8b d3                	mov    %ebx,%edx
471cb4:	8d 45 08             	lea    0x8(%ebp),%eax
471cb7:	e8 dc a7 ff ff       	call   0x46c498
471cbc:	84 c0                	test   %al,%al
471cbe:	74 05                	je     0x471cc5
471cc0:	ff 43 08             	incl   0x8(%ebx)
471cc3:	eb 33                	jmp    0x471cf8
471cc5:	ff 45 fc             	incl   -0x4(%ebp)
471cc8:	4e                   	dec    %esi
471cc9:	75 da                	jne    0x471ca5
471ccb:	8b 47 74             	mov    0x74(%edi),%eax
471cce:	e8 cd a0 fa ff       	call   0x41bda0
471cd3:	b8 10 00 00 00       	mov    $0x10,%eax
471cd8:	e8 cf 0a f9 ff       	call   0x4027ac
471cdd:	8b 55 08             	mov    0x8(%ebp),%edx
471ce0:	89 10                	mov    %edx,(%eax)
471ce2:	8b 55 0c             	mov    0xc(%ebp),%edx
471ce5:	89 50 04             	mov    %edx,0x4(%eax)
471ce8:	c7 40 08 01 00 00 00 	movl   $0x1,0x8(%eax)
471cef:	8b 57 74             	mov    0x74(%edi),%edx
471cf2:	92                   	xchg   %eax,%edx
471cf3:	e8 1c 9f fa ff       	call   0x41bc14
471cf8:	5f                   	pop    %edi
471cf9:	5e                   	pop    %esi
471cfa:	5b                   	pop    %ebx
471cfb:	59                   	pop    %ecx
471cfc:	5d                   	pop    %ebp
471cfd:	c2 08 00             	ret    $0x8
471d00:	55                   	push   %ebp
471d01:	8b ec                	mov    %esp,%ebp
471d03:	51                   	push   %ecx
471d04:	53                   	push   %ebx
471d05:	56                   	push   %esi
471d06:	57                   	push   %edi
471d07:	8b f0                	mov    %eax,%esi
471d09:	8b 46 74             	mov    0x74(%esi),%eax
471d0c:	85 c0                	test   %eax,%eax
471d0e:	74 66                	je     0x471d76
471d10:	8b 78 08             	mov    0x8(%eax),%edi
471d13:	4f                   	dec    %edi
471d14:	85 ff                	test   %edi,%edi
471d16:	7c 5e                	jl     0x471d76
471d18:	47                   	inc    %edi
471d19:	c7 45 fc 00 00 00 00 	movl   $0x0,-0x4(%ebp)
471d20:	8b 55 fc             	mov    -0x4(%ebp),%edx
471d23:	8b 46 74             	mov    0x74(%esi),%eax
471d26:	e8 95 a0 fa ff       	call   0x41bdc0
471d2b:	8b d8                	mov    %eax,%ebx
471d2d:	8d 55 08             	lea    0x8(%ebp),%edx
471d30:	8b c3                	mov    %ebx,%eax
471d32:	e8 61 a7 ff ff       	call   0x46c498
471d37:	84 c0                	test   %al,%al
471d39:	74 35                	je     0x471d70
471d3b:	ff 4b 08             	decl   0x8(%ebx)
471d3e:	83 7b 08 00          	cmpl   $0x0,0x8(%ebx)
471d42:	75 32                	jne    0x471d76
471d44:	8b 55 fc             	mov    -0x4(%ebp),%edx
471d47:	8b 46 74             	mov    0x74(%esi),%eax
471d4a:	e8 11 9f fa ff       	call   0x41bc60
471d4f:	ba 10 00 00 00       	mov    $0x10,%edx
471d54:	8b c3                	mov    %ebx,%eax
471d56:	e8 71 0a f9 ff       	call   0x4027cc
471d5b:	8b 46 74             	mov    0x74(%esi),%eax
471d5e:	83 78 08 00          	cmpl   $0x0,0x8(%eax)
471d62:	75 12                	jne    0x471d76
471d64:	e8 0f 1d f9 ff       	call   0x403a78
471d69:	33 c0                	xor    %eax,%eax
471d6b:	89 46 74             	mov    %eax,0x74(%esi)
471d6e:	eb 06                	jmp    0x471d76
471d70:	ff 45 fc             	incl   -0x4(%ebp)
471d73:	4f                   	dec    %edi
471d74:	75 aa                	jne    0x471d20
471d76:	5f                   	pop    %edi
471d77:	5e                   	pop    %esi
471d78:	5b                   	pop    %ebx
471d79:	59                   	pop    %ecx
471d7a:	5d                   	pop    %ebp
471d7b:	c2 08 00             	ret    $0x8
471d7e:	8b c0                	mov    %eax,%eax
471d80:	a1 7c 05 47 00       	mov    0x47057c,%eax
471d85:	c3                   	ret
471d86:	8b c0                	mov    %eax,%eax
471d88:	56                   	push   %esi
471d89:	8b f0                	mov    %eax,%esi
471d8b:	66 83 be 82 00 00 00 	cmpw   $0x0,0x82(%esi)
471d92:	00
471d93:	74 0c                	je     0x471da1
471d95:	8b 86 84 00 00 00    	mov    0x84(%esi),%eax
471d9b:	ff 96 80 00 00 00    	call   *0x80(%esi)
471da1:	f6 46 64 20          	testb  $0x20,0x64(%esi)
471da5:	75 07                	jne    0x471dae
471da7:	8b c6                	mov    %esi,%eax
471da9:	8b 10                	mov    (%eax),%edx
471dab:	ff 52 54             	call   *0x54(%edx)
471dae:	5e                   	pop    %esi
471daf:	c3                   	ret
471db0:	55                   	push   %ebp
471db1:	8b ec                	mov    %esp,%ebp
471db3:	83 c4 e0             	add    $0xffffffe0,%esp
471db6:	53                   	push   %ebx
471db7:	89 4d f4             	mov    %ecx,-0xc(%ebp)
471dba:	89 55 f8             	mov    %edx,-0x8(%ebp)
471dbd:	89 45 fc             	mov    %eax,-0x4(%ebp)
471dc0:	33 c0                	xor    %eax,%eax
471dc2:	89 45 f0             	mov    %eax,-0x10(%ebp)
471dc5:	8b 45 0c             	mov    0xc(%ebp),%eax
471dc8:	83 78 fc 00          	cmpl   $0x0,-0x4(%eax)
471dcc:	0f 84 8b 00 00 00    	je     0x471e5d
471dd2:	8d 4d e0             	lea    -0x20(%ebp),%ecx
471dd5:	33 d2                	xor    %edx,%edx
471dd7:	33 c0                	xor    %eax,%eax
471dd9:	e8 6e 88 fa ff       	call   0x41a64c
471dde:	8d 55 e0             	lea    -0x20(%ebp),%edx
471de1:	8d 4d e8             	lea    -0x18(%ebp),%ecx
471de4:	8b 45 0c             	mov    0xc(%ebp),%eax
471de7:	8b 40 fc             	mov    -0x4(%eax),%eax
471dea:	8b 80 c8 00 00 00    	mov    0xc8(%eax),%eax
471df0:	e8 ef 64 fd ff       	call   0x4482e4
471df5:	8b 45 e8             	mov    -0x18(%ebp),%eax
471df8:	29 45 fc             	sub    %eax,-0x4(%ebp)
471dfb:	8b 45 ec             	mov    -0x14(%ebp),%eax
471dfe:	29 45 f8             	sub    %eax,-0x8(%ebp)
471e01:	8b 45 fc             	mov    -0x4(%ebp),%eax
471e04:	01 45 f4             	add    %eax,-0xc(%ebp)
471e07:	8b 45 f8             	mov    -0x8(%ebp),%eax
471e0a:	01 45 08             	add    %eax,0x8(%ebp)
471e0d:	8b 45 0c             	mov    0xc(%ebp),%eax
471e10:	8b 40 fc             	mov    -0x4(%eax),%eax
471e13:	8b 90 c0 00 00 00    	mov    0xc0(%eax),%edx
471e19:	4a                   	dec    %edx
471e1a:	85 d2                	test   %edx,%edx
471e1c:	7c 3f                	jl     0x471e5d
471e1e:	42                   	inc    %edx
471e1f:	33 c9                	xor    %ecx,%ecx
471e21:	8b 45 0c             	mov    0xc(%ebp),%eax
471e24:	8b 40 fc             	mov    -0x4(%eax),%eax
471e27:	8b 80 c4 00 00 00    	mov    0xc4(%eax),%eax
471e2d:	8b 04 88             	mov    (%eax,%ecx,4),%eax
471e30:	80 78 21 00          	cmpb   $0x0,0x21(%eax)
471e34:	74 23                	je     0x471e59
471e36:	8b 58 04             	mov    0x4(%eax),%ebx
471e39:	3b 5d fc             	cmp    -0x4(%ebp),%ebx
471e3c:	7c 1b                	jl     0x471e59
471e3e:	8b 58 0c             	mov    0xc(%eax),%ebx
471e41:	3b 5d f4             	cmp    -0xc(%ebp),%ebx
471e44:	7f 13                	jg     0x471e59
471e46:	8b 58 08             	mov    0x8(%eax),%ebx
471e49:	3b 5d f8             	cmp    -0x8(%ebp),%ebx
471e4c:	7c 0b                	jl     0x471e59
471e4e:	8b 40 10             	mov    0x10(%eax),%eax
471e51:	3b 45 08             	cmp    0x8(%ebp),%eax
471e54:	7f 03                	jg     0x471e59
471e56:	ff 45 f0             	incl   -0x10(%ebp)
471e59:	41                   	inc    %ecx
471e5a:	4a                   	dec    %edx
471e5b:	75 c4                	jne    0x471e21
471e5d:	8b 45 f0             	mov    -0x10(%ebp),%eax
471e60:	5b                   	pop    %ebx
471e61:	8b e5                	mov    %ebp,%esp
471e63:	5d                   	pop    %ebp
471e64:	c2 04 00             	ret    $0x4
471e67:	90                   	nop
471e68:	55                   	push   %ebp
471e69:	8b ec                	mov    %esp,%ebp
471e6b:	83 c4 f4             	add    $0xfffffff4,%esp
471e6e:	53                   	push   %ebx
471e6f:	56                   	push   %esi
471e70:	57                   	push   %edi
471e71:	89 4d f8             	mov    %ecx,-0x8(%ebp)
471e74:	89 55 fc             	mov    %edx,-0x4(%ebp)
471e77:	8b 5d 08             	mov    0x8(%ebp),%ebx
471e7a:	8b 43 30             	mov    0x30(%ebx),%eax
471e7d:	03 43 38             	add    0x38(%ebx),%eax
471e80:	3b 43 0f             	cmp    0xf(%ebx),%eax
471e83:	7e 2d                	jle    0x471eb2
471e85:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471e89:	74 0c                	je     0x471e97
471e8b:	8b 45 fc             	mov    -0x4(%ebp),%eax
471e8e:	80 b8 a4 00 00 00 01 	cmpb   $0x1,0xa4(%eax)
471e95:	74 1b                	je     0x471eb2
471e97:	80 3b 00             	cmpb   $0x0,(%ebx)
471e9a:	75 05                	jne    0x471ea1
471e9c:	8b 73 17             	mov    0x17(%ebx),%esi
471e9f:	eb 06                	jmp    0x471ea7
471ea1:	8b 73 1f             	mov    0x1f(%ebx),%esi
471ea4:	03 73 28             	add    0x28(%ebx),%esi
471ea7:	2b 73 38             	sub    0x38(%ebx),%esi
471eaa:	3b 73 07             	cmp    0x7(%ebx),%esi
471ead:	7c 03                	jl     0x471eb2
471eaf:	89 73 30             	mov    %esi,0x30(%ebx)
471eb2:	8b 4b 30             	mov    0x30(%ebx),%ecx
471eb5:	8b 53 38             	mov    0x38(%ebx),%edx
471eb8:	03 ca                	add    %edx,%ecx
471eba:	8b 43 0f             	mov    0xf(%ebx),%eax
471ebd:	3b c8                	cmp    %eax,%ecx
471ebf:	7e 05                	jle    0x471ec6
471ec1:	2b c2                	sub    %edx,%eax
471ec3:	89 43 30             	mov    %eax,0x30(%ebx)
471ec6:	8b 43 07             	mov    0x7(%ebx),%eax
471ec9:	3b 43 30             	cmp    0x30(%ebx),%eax
471ecc:	7e 03                	jle    0x471ed1
471ece:	89 43 30             	mov    %eax,0x30(%ebx)
471ed1:	80 3b 00             	cmpb   $0x0,(%ebx)
471ed4:	0f 85 e0 01 00 00    	jne    0x4720ba
471eda:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471ede:	75 14                	jne    0x471ef4
471ee0:	80 7b 01 01          	cmpb   $0x1,0x1(%ebx)
471ee4:	75 0e                	jne    0x471ef4
471ee6:	8b 43 2c             	mov    0x2c(%ebx),%eax
471ee9:	3b 43 03             	cmp    0x3(%ebx),%eax
471eec:	7d 06                	jge    0x471ef4
471eee:	8b 43 34             	mov    0x34(%ebx),%eax
471ef1:	01 43 2c             	add    %eax,0x2c(%ebx)
471ef4:	8b 43 2c             	mov    0x2c(%ebx),%eax
471ef7:	03 43 34             	add    0x34(%ebx),%eax
471efa:	3b 43 0b             	cmp    0xb(%ebx),%eax
471efd:	7e 18                	jle    0x471f17
471eff:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471f03:	75 06                	jne    0x471f0b
471f05:	80 7b 01 00          	cmpb   $0x0,0x1(%ebx)
471f09:	74 06                	je     0x471f11
471f0b:	8b 43 0b             	mov    0xb(%ebx),%eax
471f0e:	89 43 2c             	mov    %eax,0x2c(%ebx)
471f11:	8b 43 34             	mov    0x34(%ebx),%eax
471f14:	29 43 2c             	sub    %eax,0x2c(%ebx)
471f17:	8b 43 03             	mov    0x3(%ebx),%eax
471f1a:	3b 43 2c             	cmp    0x2c(%ebx),%eax
471f1d:	7e 03                	jle    0x471f22
471f1f:	89 43 2c             	mov    %eax,0x2c(%ebx)
471f22:	83 7d fc 00          	cmpl   $0x0,-0x4(%ebp)
471f26:	74 10                	je     0x471f38
471f28:	8b 45 fc             	mov    -0x4(%ebp),%eax
471f2b:	80 b8 a4 00 00 00 01 	cmpb   $0x1,0xa4(%eax)
471f32:	0f 84 c4 00 00 00    	je     0x471ffc
471f38:	8b 73 17             	mov    0x17(%ebx),%esi
471f3b:	2b 73 38             	sub    0x38(%ebx),%esi
471f3e:	3b 73 07             	cmp    0x7(%ebx),%esi
471f41:	7c 56                	jl     0x471f99
471f43:	55                   	push   %ebp
471f44:	8b 43 38             	mov    0x38(%ebx),%eax
471f47:	50                   	push   %eax
471f48:	8b 4b 34             	mov    0x34(%ebx),%ecx
471f4b:	8b 43 2c             	mov    0x2c(%ebx),%eax
471f4e:	8b d6                	mov    %esi,%edx
471f50:	e8 5b fe ff ff       	call   0x471db0
471f55:	59                   	pop    %ecx
471f56:	8b f8                	mov    %eax,%edi
471f58:	55                   	push   %ebp
471f59:	8b 43 38             	mov    0x38(%ebx),%eax
471f5c:	50                   	push   %eax
471f5d:	8b 4b 34             	mov    0x34(%ebx),%ecx
471f60:	8b 53 30             	mov    0x30(%ebx),%edx
471f63:	8b 43 2c             	mov    0x2c(%ebx),%eax
471f66:	e8 45 fe ff ff       	call   0x471db0
471f6b:	59                   	pop    %ecx
471f6c:	3b f8                	cmp    %eax,%edi
471f6e:	7c 26                	jl     0x471f96
471f70:	8b 43 30             	mov    0x30(%ebx),%eax
471f73:	3b 43 1f             	cmp    0x1f(%ebx),%eax
471f76:	7d 21                	jge    0x471f99