487ad3:	ff 75 f4             	push   -0xc(%ebp)
487ad6:	8d 45 d0             	lea    -0x30(%ebp),%eax
487ad9:	ff 75 f8             	push   -0x8(%ebp)
487adc:	ff 75 f0             	push   -0x10(%ebp)
487adf:	50                   	push   %eax
487ae0:	e8 5d fb ff ff       	call   0x487642
487ae5:	83 c4 10             	add    $0x10,%esp
487ae8:	eb a0                	jmp    0x487a8a
487aea:	ff 75 f4             	push   -0xc(%ebp)
487aed:	8d 45 d0             	lea    -0x30(%ebp),%eax
487af0:	ff 75 f8             	push   -0x8(%ebp)
487af3:	ff 75 f0             	push   -0x10(%ebp)
487af6:	50                   	push   %eax
487af7:	e8 2f fc ff ff       	call   0x48772b
487afc:	eb e7                	jmp    0x487ae5
487afe:	ff 75 f4             	push   -0xc(%ebp)
487b01:	8d 45 d0             	lea    -0x30(%ebp),%eax
487b04:	ff 75 f8             	push   -0x8(%ebp)
487b07:	ff 75 f0             	push   -0x10(%ebp)
487b0a:	50                   	push   %eax
487b0b:	e8 57 fa ff ff       	call   0x487567
487b10:	eb d3                	jmp    0x487ae5
487b12:	8b 4c 08 18          	mov    0x18(%eax,%ecx,1),%ecx
487b16:	8d 7d d0             	lea    -0x30(%ebp),%edi
487b19:	33 c0                	xor    %eax,%eax
487b1b:	ab                   	stos   %eax,%es:(%edi)
487b1c:	56                   	push   %esi
487b1d:	ab                   	stos   %eax,%es:(%edi)
487b1e:	ab                   	stos   %eax,%es:(%edi)
487b1f:	8d 45 d4             	lea    -0x2c(%ebp),%eax
487b22:	50                   	push   %eax
487b23:	ff 75 f4             	push   -0xc(%ebp)
487b26:	ff 75 f8             	push   -0x8(%ebp)
487b29:	51                   	push   %ecx
487b2a:	ff 15 9c e1 49 00    	call   *0x49e19c
487b30:	85 c0                	test   %eax,%eax
487b32:	75 09                	jne    0x487b3d
487b34:	ff 15 30 e1 49 00    	call   *0x49e130
487b3a:	89 45 d0             	mov    %eax,-0x30(%ebp)
487b3d:	8d 75 d0             	lea    -0x30(%ebp),%esi
487b40:	8d 7d dc             	lea    -0x24(%ebp),%edi
487b43:	a5                   	movsl  %ds:(%esi),%es:(%edi)
487b44:	a5                   	movsl  %ds:(%esi),%es:(%edi)
487b45:	a5                   	movsl  %ds:(%esi),%es:(%edi)
487b46:	8b 45 e0             	mov    -0x20(%ebp),%eax
487b49:	85 c0                	test   %eax,%eax
487b4b:	75 68                	jne    0x487bb5
487b4d:	8b 7d dc             	mov    -0x24(%ebp),%edi
487b50:	33 f6                	xor    %esi,%esi
487b52:	8b 55 ec             	mov    -0x14(%ebp),%edx
487b55:	8b 4d e8             	mov    -0x18(%ebp),%ecx
487b58:	85 ff                	test   %edi,%edi
487b5a:	74 2c                	je     0x487b88
487b5c:	6a 05                	push   $0x5
487b5e:	58                   	pop    %eax
487b5f:	3b f8                	cmp    %eax,%edi
487b61:	75 17                	jne    0x487b7a
487b63:	c6 43 1c 01          	movb   $0x1,0x1c(%ebx)
487b67:	c7 43 18 09 00 00 00 	movl   $0x9,0x18(%ebx)
487b6e:	c6 43 24 01          	movb   $0x1,0x24(%ebx)
487b72:	89 43 20             	mov    %eax,0x20(%ebx)
487b75:	e9 79 fe ff ff       	jmp    0x4879f3
487b7a:	53                   	push   %ebx
487b7b:	57                   	push   %edi
487b7c:	e8 7d 23 ff ff       	call   0x479efe
487b81:	59                   	pop    %ecx
487b82:	59                   	pop    %ecx
487b83:	e9 6b fe ff ff       	jmp    0x4879f3
487b88:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
487b8f:	f6 44 08 28 40       	testb  $0x40,0x28(%eax,%ecx,1)
487b94:	74 08                	je     0x487b9e
487b96:	8b 45 f8             	mov    -0x8(%ebp),%eax
487b99:	80 38 1a             	cmpb   $0x1a,(%eax)
487b9c:	74 1c                	je     0x487bba
487b9e:	c6 43 1c 01          	movb   $0x1,0x1c(%ebx)
487ba2:	c7 43 18 1c 00 00 00 	movl   $0x1c,0x18(%ebx)
487ba9:	c6 43 24 01          	movb   $0x1,0x24(%ebx)
487bad:	89 73 20             	mov    %esi,0x20(%ebx)
487bb0:	e9 3e fe ff ff       	jmp    0x4879f3
487bb5:	2b 45 e4             	sub    -0x1c(%ebp),%eax
487bb8:	eb 02                	jmp    0x487bbc
487bba:	33 c0                	xor    %eax,%eax
487bbc:	5f                   	pop    %edi
487bbd:	5e                   	pop    %esi
487bbe:	5b                   	pop    %ebx
487bbf:	c9                   	leave
487bc0:	c3                   	ret
487bc1:	6a 0c                	push   $0xc
487bc3:	68 f0 19 4c 00       	push   $0x4c19f0
487bc8:	e8 73 2b fe ff       	call   0x46a740
487bcd:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
487bd1:	8b 45 08             	mov    0x8(%ebp),%eax
487bd4:	ff 30                	push   (%eax)
487bd6:	e8 4a 84 00 00       	call   0x490025
487bdb:	59                   	pop    %ecx
487bdc:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
487be0:	8b 4d 0c             	mov    0xc(%ebp),%ecx
487be3:	8b 01                	mov    (%ecx),%eax
487be5:	8b 38                	mov    (%eax),%edi
487be7:	8b 71 04             	mov    0x4(%ecx),%esi
487bea:	8b d7                	mov    %edi,%edx
487bec:	c1 fa 06             	sar    $0x6,%edx
487bef:	8b c7                	mov    %edi,%eax
487bf1:	83 e0 3f             	and    $0x3f,%eax
487bf4:	6b c8 38             	imul   $0x38,%eax,%ecx
487bf7:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
487bfe:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
487c03:	74 0d                	je     0x487c12
487c05:	56                   	push   %esi
487c06:	57                   	push   %edi
487c07:	e8 19 01 00 00       	call   0x487d25
487c0c:	59                   	pop    %ecx
487c0d:	59                   	pop    %ecx
487c0e:	8b f0                	mov    %eax,%esi
487c10:	eb 0e                	jmp    0x487c20
487c12:	c6 46 1c 01          	movb   $0x1,0x1c(%esi)
487c16:	c7 46 18 09 00 00 00 	movl   $0x9,0x18(%esi)
487c1d:	83 ce ff             	or     $0xffffffff,%esi
487c20:	89 75 e4             	mov    %esi,-0x1c(%ebp)
487c23:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
487c2a:	e8 17 00 00 00       	call   0x487c46
487c2f:	8b c6                	mov    %esi,%eax
487c31:	8b 4d f0             	mov    -0x10(%ebp),%ecx
487c34:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
487c3b:	59                   	pop    %ecx
487c3c:	5f                   	pop    %edi
487c3d:	5e                   	pop    %esi
487c3e:	5b                   	pop    %ebx
487c3f:	c9                   	leave
487c40:	c2 0c 00             	ret    $0xc
487c43:	8b 75 e4             	mov    -0x1c(%ebp),%esi
487c46:	8b 45 10             	mov    0x10(%ebp),%eax
487c49:	ff 30                	push   (%eax)
487c4b:	e8 8a 84 00 00       	call   0x4900da
487c50:	59                   	pop    %ecx
487c51:	c3                   	ret
487c52:	8b ff                	mov    %edi,%edi
487c54:	55                   	push   %ebp
487c55:	8b ec                	mov    %esp,%ebp
487c57:	83 ec 14             	sub    $0x14,%esp
487c5a:	56                   	push   %esi
487c5b:	8b 75 08             	mov    0x8(%ebp),%esi
487c5e:	83 fe fe             	cmp    $0xfffffffe,%esi
487c61:	75 18                	jne    0x487c7b
487c63:	8b 45 0c             	mov    0xc(%ebp),%eax
487c66:	83 60 20 00          	andl   $0x0,0x20(%eax)
487c6a:	c6 40 24 01          	movb   $0x1,0x24(%eax)
487c6e:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
487c72:	c7 40 18 09 00 00 00 	movl   $0x9,0x18(%eax)
487c79:	eb 74                	jmp    0x487cef
487c7b:	85 f6                	test   %esi,%esi
487c7d:	78 4b                	js     0x487cca
487c7f:	3b 35 00 8a 4c 00    	cmp    0x4c8a00,%esi
487c85:	73 43                	jae    0x487cca
487c87:	8b c6                	mov    %esi,%eax
487c89:	8b d6                	mov    %esi,%edx
487c8b:	83 e0 3f             	and    $0x3f,%eax
487c8e:	c1 fa 06             	sar    $0x6,%edx
487c91:	6b c8 38             	imul   $0x38,%eax,%ecx
487c94:	8b 04 95 00 88 4c 00 	mov    0x4c8800(,%edx,4),%eax
487c9b:	f6 44 08 28 01       	testb  $0x1,0x28(%eax,%ecx,1)
487ca0:	74 28                	je     0x487cca
487ca2:	8d 45 08             	lea    0x8(%ebp),%eax
487ca5:	89 75 f8             	mov    %esi,-0x8(%ebp)
487ca8:	89 45 ec             	mov    %eax,-0x14(%ebp)
487cab:	8d 4d ff             	lea    -0x1(%ebp),%ecx
487cae:	8b 45 0c             	mov    0xc(%ebp),%eax
487cb1:	89 45 f0             	mov    %eax,-0x10(%ebp)
487cb4:	8d 45 f8             	lea    -0x8(%ebp),%eax
487cb7:	50                   	push   %eax
487cb8:	8d 45 ec             	lea    -0x14(%ebp),%eax
487cbb:	89 75 f4             	mov    %esi,-0xc(%ebp)
487cbe:	50                   	push   %eax
487cbf:	8d 45 f4             	lea    -0xc(%ebp),%eax
487cc2:	50                   	push   %eax
487cc3:	e8 f9 fe ff ff       	call   0x487bc1
487cc8:	eb 28                	jmp    0x487cf2
487cca:	8b 45 0c             	mov    0xc(%ebp),%eax
487ccd:	33 c9                	xor    %ecx,%ecx
487ccf:	50                   	push   %eax
487cd0:	51                   	push   %ecx
487cd1:	51                   	push   %ecx
487cd2:	51                   	push   %ecx
487cd3:	c6 40 24 01          	movb   $0x1,0x24(%eax)
487cd7:	51                   	push   %ecx
487cd8:	89 48 20             	mov    %ecx,0x20(%eax)
487cdb:	c6 40 1c 01          	movb   $0x1,0x1c(%eax)
487cdf:	51                   	push   %ecx
487ce0:	c7 40 18 09 00 00 00 	movl   $0x9,0x18(%eax)
487ce7:	e8 b8 18 ff ff       	call   0x4795a4
487cec:	83 c4 18             	add    $0x18,%esp
487cef:	83 c8 ff             	or     $0xffffffff,%eax
487cf2:	5e                   	pop    %esi
487cf3:	c9                   	leave
487cf4:	c3                   	ret
487cf5:	8b ff                	mov    %edi,%edi
487cf7:	55                   	push   %ebp
487cf8:	8b ec                	mov    %esp,%ebp
487cfa:	83 ec 28             	sub    $0x28,%esp
487cfd:	8d 4d d8             	lea    -0x28(%ebp),%ecx
487d00:	56                   	push   %esi
487d01:	6a 00                	push   $0x0
487d03:	e8 d8 f5 fe ff       	call   0x4772e0
487d08:	8d 45 d8             	lea    -0x28(%ebp),%eax
487d0b:	50                   	push   %eax
487d0c:	ff 75 08             	push   0x8(%ebp)
487d0f:	e8 11 00 00 00       	call   0x487d25
487d14:	59                   	pop    %ecx
487d15:	59                   	pop    %ecx
487d16:	8d 4d d8             	lea    -0x28(%ebp),%ecx
487d19:	8b f0                	mov    %eax,%esi
487d1b:	e8 20 f6 fe ff       	call   0x477340
487d20:	8b c6                	mov    %esi,%eax
487d22:	5e                   	pop    %esi
487d23:	c9                   	leave
487d24:	c3                   	ret
487d25:	8b ff                	mov    %edi,%edi
487d27:	55                   	push   %ebp
487d28:	8b ec                	mov    %esp,%ebp
487d2a:	56                   	push   %esi
487d2b:	57                   	push   %edi
487d2c:	8b 7d 08             	mov    0x8(%ebp),%edi
487d2f:	57                   	push   %edi
487d30:	e8 6c 85 00 00       	call   0x4902a1
487d35:	59                   	pop    %ecx
487d36:	83 f8 ff             	cmp    $0xffffffff,%eax
487d39:	75 04                	jne    0x487d3f
487d3b:	33 f6                	xor    %esi,%esi
487d3d:	eb 4e                	jmp    0x487d8d
487d3f:	a1 00 88 4c 00       	mov    0x4c8800,%eax
487d44:	83 ff 01             	cmp    $0x1,%edi
487d47:	75 09                	jne    0x487d52
487d49:	f6 80 98 00 00 00 01 	testb  $0x1,0x98(%eax)
487d50:	75 0b                	jne    0x487d5d
487d52:	83 ff 02             	cmp    $0x2,%edi
487d55:	75 1c                	jne    0x487d73
487d57:	f6 40 60 01          	testb  $0x1,0x60(%eax)
487d5b:	74 16                	je     0x487d73
487d5d:	6a 02                	push   $0x2
487d5f:	e8 3d 85 00 00       	call   0x4902a1
487d64:	6a 01                	push   $0x1
487d66:	8b f0                	mov    %eax,%esi
487d68:	e8 34 85 00 00       	call   0x4902a1
487d6d:	59                   	pop    %ecx
487d6e:	59                   	pop    %ecx
487d6f:	3b c6                	cmp    %esi,%eax
487d71:	74 c8                	je     0x487d3b
487d73:	57                   	push   %edi
487d74:	e8 28 85 00 00       	call   0x4902a1
487d79:	59                   	pop    %ecx
487d7a:	50                   	push   %eax
487d7b:	ff 15 64 e0 49 00    	call   *0x49e064
487d81:	85 c0                	test   %eax,%eax
487d83:	75 b6                	jne    0x487d3b
487d85:	ff 15 30 e1 49 00    	call   *0x49e130
487d8b:	8b f0                	mov    %eax,%esi
487d8d:	57                   	push   %edi
487d8e:	e8 7d 84 00 00       	call   0x490210
487d93:	59                   	pop    %ecx
487d94:	8b cf                	mov    %edi,%ecx
487d96:	83 e7 3f             	and    $0x3f,%edi
487d99:	c1 f9 06             	sar    $0x6,%ecx
487d9c:	6b d7 38             	imul   $0x38,%edi,%edx
487d9f:	8b 0c 8d 00 88 4c 00 	mov    0x4c8800(,%ecx,4),%ecx
487da6:	c6 44 11 28 00       	movb   $0x0,0x28(%ecx,%edx,1)
487dab:	85 f6                	test   %esi,%esi
487dad:	74 10                	je     0x487dbf
487daf:	ff 75 0c             	push   0xc(%ebp)
487db2:	56                   	push   %esi
487db3:	e8 46 21 ff ff       	call   0x479efe
487db8:	59                   	pop    %ecx
487db9:	59                   	pop    %ecx
487dba:	83 c8 ff             	or     $0xffffffff,%eax
487dbd:	eb 02                	jmp    0x487dc1
487dbf:	33 c0                	xor    %eax,%eax
487dc1:	5f                   	pop    %edi
487dc2:	5e                   	pop    %esi
487dc3:	5d                   	pop    %ebp
487dc4:	c3                   	ret
487dc5:	6a 0c                	push   $0xc
487dc7:	68 10 1a 4c 00       	push   $0x4c1a10
487dcc:	e8 6f 29 fe ff       	call   0x46a740
487dd1:	33 ff                	xor    %edi,%edi
487dd3:	8b 75 08             	mov    0x8(%ebp),%esi
487dd6:	89 3e                	mov    %edi,(%esi)
487dd8:	6a 08                	push   $0x8
487dda:	e8 82 a0 ff ff       	call   0x481e61
487ddf:	59                   	pop    %ecx
487de0:	89 7d fc             	mov    %edi,-0x4(%ebp)
487de3:	8d 45 e4             	lea    -0x1c(%ebp),%eax
487de6:	50                   	push   %eax
487de7:	e8 7d 00 00 00       	call   0x487e69
487dec:	59                   	pop    %ecx
487ded:	8b 00                	mov    (%eax),%eax
487def:	89 06                	mov    %eax,(%esi)
487df1:	85 c0                	test   %eax,%eax
487df3:	74 0f                	je     0x487e04
487df5:	89 78 08             	mov    %edi,0x8(%eax)
487df8:	89 78 1c             	mov    %edi,0x1c(%eax)
487dfb:	89 38                	mov    %edi,(%eax)
487dfd:	89 78 04             	mov    %edi,0x4(%eax)
487e00:	83 48 10 ff          	orl    $0xffffffff,0x10(%eax)
487e04:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
487e0b:	e8 15 00 00 00       	call   0x487e25
487e10:	8b c6                	mov    %esi,%eax
487e12:	8b 4d f0             	mov    -0x10(%ebp),%ecx
487e15:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
487e1c:	59                   	pop    %ecx
487e1d:	5f                   	pop    %edi
487e1e:	5e                   	pop    %esi
487e1f:	5b                   	pop    %ebx
487e20:	c9                   	leave
487e21:	c3                   	ret
487e22:	8b 75 08             	mov    0x8(%ebp),%esi
487e25:	6a 08                	push   $0x8
487e27:	e8 85 a0 ff ff       	call   0x481eb1
487e2c:	59                   	pop    %ecx
487e2d:	c3                   	ret
487e2e:	8b ff                	mov    %edi,%edi
487e30:	55                   	push   %ebp
487e31:	8b ec                	mov    %esp,%ebp
487e33:	8b 45 08             	mov    0x8(%ebp),%eax
487e36:	33 c9                	xor    %ecx,%ecx
487e38:	89 08                	mov    %ecx,(%eax)
487e3a:	8b 45 08             	mov    0x8(%ebp),%eax
487e3d:	89 48 04             	mov    %ecx,0x4(%eax)
487e40:	8b 45 08             	mov    0x8(%ebp),%eax
487e43:	89 48 08             	mov    %ecx,0x8(%eax)
487e46:	8b 45 08             	mov    0x8(%ebp),%eax
487e49:	83 48 10 ff          	orl    $0xffffffff,0x10(%eax)
487e4d:	8b 45 08             	mov    0x8(%ebp),%eax
487e50:	89 48 14             	mov    %ecx,0x14(%eax)
487e53:	8b 45 08             	mov    0x8(%ebp),%eax
487e56:	89 48 18             	mov    %ecx,0x18(%eax)
487e59:	8b 45 08             	mov    0x8(%ebp),%eax
487e5c:	89 48 1c             	mov    %ecx,0x1c(%eax)
487e5f:	8b 45 08             	mov    0x8(%ebp),%eax
487e62:	83 c0 0c             	add    $0xc,%eax
487e65:	87 08                	xchg   %ecx,(%eax)
487e67:	5d                   	pop    %ebp
487e68:	c3                   	ret
487e69:	8b ff                	mov    %edi,%edi
487e6b:	55                   	push   %ebp
487e6c:	8b ec                	mov    %esp,%ebp
487e6e:	51                   	push   %ecx
487e6f:	53                   	push   %ebx
487e70:	8b 1d 00 84 4c 00    	mov    0x4c8400,%ebx
487e76:	56                   	push   %esi
487e77:	57                   	push   %edi
487e78:	8b 3d 04 84 4c 00    	mov    0x4c8404,%edi