495c0f:	cc                   	int3
495c10:	83 3d fc 82 4c 00 02 	cmpl   $0x2,0x4c82fc
495c17:	7c 08                	jl     0x495c21
495c19:	83 ec 04             	sub    $0x4,%esp
495c1c:	db 0c 24             	fisttpl (%esp)
495c1f:	58                   	pop    %eax
495c20:	c3                   	ret
495c21:	55                   	push   %ebp
495c22:	8b ec                	mov    %esp,%ebp
495c24:	83 c4 f0             	add    $0xfffffff0,%esp
495c27:	83 e4 f0             	and    $0xfffffff0,%esp
495c2a:	d9 c0                	fld    %st(0)
495c2c:	db 3c 24             	fstpt  (%esp)
495c2f:	8b 44 24 04          	mov    0x4(%esp),%eax
495c33:	0f b7 4c 24 08       	movzwl 0x8(%esp),%ecx
495c38:	0f ba f1 0f          	btr    $0xf,%ecx
495c3c:	1b d2                	sbb    %edx,%edx
495c3e:	66 81 f9 ff 3f       	cmp    $0x3fff,%cx
495c43:	72 1f                	jb     0x495c64
495c45:	85 c0                	test   %eax,%eax
495c47:	79 36                	jns    0x495c7f
495c49:	66 81 f9 1e 40       	cmp    $0x401e,%cx
495c4e:	73 1c                	jae    0x495c6c
495c50:	66 f7 d9             	neg    %cx
495c53:	66 81 c1 3e 40       	add    $0x403e,%cx
495c58:	d9 fc                	frndint
495c5a:	dd d8                	fstp   %st(0)
495c5c:	d3 e8                	shr    %cl,%eax
495c5e:	33 c2                	xor    %edx,%eax
495c60:	2b c2                	sub    %edx,%eax
495c62:	c9                   	leave
495c63:	c3                   	ret
495c64:	d9 fc                	frndint
495c66:	dd d8                	fstp   %st(0)
495c68:	33 c0                	xor    %eax,%eax
495c6a:	c9                   	leave
495c6b:	c3                   	ret
495c6c:	77 11                	ja     0x495c7f
495c6e:	85 d2                	test   %edx,%edx
495c70:	79 0d                	jns    0x495c7f
495c72:	3d 00 00 00 80       	cmp    $0x80000000,%eax
495c77:	75 06                	jne    0x495c7f
495c79:	d9 fc                	frndint
495c7b:	dd d8                	fstp   %st(0)
495c7d:	c9                   	leave
495c7e:	c3                   	ret
495c7f:	d8 1d ec b7 4a 00    	fcomps 0x4ab7ec
495c85:	c9                   	leave
495c86:	b8 00 00 00 80       	mov    $0x80000000,%eax
495c8b:	c3                   	ret
495c8c:	6a 0c                	push   $0xc
495c8e:	68 30 1c 4c 00       	push   $0x4c1c30
495c93:	e8 a8 4a fd ff       	call   0x46a740
495c98:	c6 45 e7 00          	movb   $0x0,-0x19(%ebp)
495c9c:	8b 5d 0c             	mov    0xc(%ebp),%ebx
495c9f:	8b c3                	mov    %ebx,%eax
495ca1:	8b 7d 10             	mov    0x10(%ebp),%edi
495ca4:	0f af c7             	imul   %edi,%eax
495ca7:	8b 75 08             	mov    0x8(%ebp),%esi
495caa:	03 f0                	add    %eax,%esi
495cac:	89 75 08             	mov    %esi,0x8(%ebp)
495caf:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
495cb3:	8b c7                	mov    %edi,%eax
495cb5:	4f                   	dec    %edi
495cb6:	89 7d 10             	mov    %edi,0x10(%ebp)
495cb9:	85 c0                	test   %eax,%eax
495cbb:	74 15                	je     0x495cd2
495cbd:	2b f3                	sub    %ebx,%esi
495cbf:	89 75 08             	mov    %esi,0x8(%ebp)
495cc2:	8b 4d 14             	mov    0x14(%ebp),%ecx
495cc5:	ff 15 d4 e2 49 00    	call   *0x49e2d4
495ccb:	8b ce                	mov    %esi,%ecx
495ccd:	ff 55 14             	call   *0x14(%ebp)
495cd0:	eb e1                	jmp    0x495cb3
495cd2:	b0 01                	mov    $0x1,%al
495cd4:	88 45 e7             	mov    %al,-0x19(%ebp)
495cd7:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
495cde:	e8 1e 00 00 00       	call   0x495d01
495ce3:	8b 4d f0             	mov    -0x10(%ebp),%ecx
495ce6:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
495ced:	59                   	pop    %ecx
495cee:	5f                   	pop    %edi
495cef:	5e                   	pop    %esi
495cf0:	5b                   	pop    %ebx
495cf1:	c9                   	leave
495cf2:	c2 10 00             	ret    $0x10
495cf5:	8b 7d 10             	mov    0x10(%ebp),%edi
495cf8:	8b 5d 0c             	mov    0xc(%ebp),%ebx
495cfb:	8b 75 08             	mov    0x8(%ebp),%esi
495cfe:	8a 45 e7             	mov    -0x19(%ebp),%al
495d01:	84 c0                	test   %al,%al
495d03:	75 0b                	jne    0x495d10
495d05:	ff 75 14             	push   0x14(%ebp)
495d08:	57                   	push   %edi
495d09:	53                   	push   %ebx
495d0a:	56                   	push   %esi
495d0b:	e8 01 00 00 00       	call   0x495d11
495d10:	c3                   	ret
495d11:	6a 18                	push   $0x18
495d13:	68 50 1c 4c 00       	push   $0x4c1c50
495d18:	e8 23 4a fd ff       	call   0x46a740
495d1d:	33 f6                	xor    %esi,%esi
495d1f:	89 75 fc             	mov    %esi,-0x4(%ebp)
495d22:	8b 7d 08             	mov    0x8(%ebp),%edi
495d25:	89 75 dc             	mov    %esi,-0x24(%ebp)
495d28:	3b 75 10             	cmp    0x10(%ebp),%esi
495d2b:	74 3e                	je     0x495d6b
495d2d:	2b 7d 0c             	sub    0xc(%ebp),%edi
495d30:	89 7d 08             	mov    %edi,0x8(%ebp)
495d33:	8b 4d 14             	mov    0x14(%ebp),%ecx
495d36:	ff 15 d4 e2 49 00    	call   *0x49e2d4
495d3c:	8b cf                	mov    %edi,%ecx
495d3e:	ff 55 14             	call   *0x14(%ebp)
495d41:	46                   	inc    %esi
495d42:	eb e1                	jmp    0x495d25
495d44:	8b 45 ec             	mov    -0x14(%ebp),%eax
495d47:	89 45 e0             	mov    %eax,-0x20(%ebp)
495d4a:	8b 45 e0             	mov    -0x20(%ebp),%eax
495d4d:	8b 00                	mov    (%eax),%eax
495d4f:	89 45 e4             	mov    %eax,-0x1c(%ebp)
495d52:	8b 45 e4             	mov    -0x1c(%ebp),%eax
495d55:	81 38 63 73 6d e0    	cmpl   $0xe06d7363,(%eax)
495d5b:	74 27                	je     0x495d84
495d5d:	c7 45 d8 00 00 00 00 	movl   $0x0,-0x28(%ebp)
495d64:	8b 45 d8             	mov    -0x28(%ebp),%eax
495d67:	c3                   	ret
495d68:	8b 65 e8             	mov    -0x18(%ebp),%esp
495d6b:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
495d72:	8b 4d f0             	mov    -0x10(%ebp),%ecx
495d75:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
495d7c:	59                   	pop    %ecx
495d7d:	5f                   	pop    %edi
495d7e:	5e                   	pop    %esi
495d7f:	5b                   	pop    %ebx
495d80:	c9                   	leave
495d81:	c2 10 00             	ret    $0x10
495d84:	e8 1e 52 fd ff       	call   0x46afa7
495d89:	8b 4d e4             	mov    -0x1c(%ebp),%ecx
495d8c:	89 08                	mov    %ecx,(%eax)
495d8e:	8b 45 e0             	mov    -0x20(%ebp),%eax
495d91:	8b 70 04             	mov    0x4(%eax),%esi
495d94:	e8 17 52 fd ff       	call   0x46afb0
495d99:	89 30                	mov    %esi,(%eax)
495d9b:	e8 af f9 fe ff       	call   0x48574f
495da0:	cc                   	int3
495da1:	6a 10                	push   $0x10
495da3:	68 70 1c 4c 00       	push   $0x4c1c70
495da8:	e8 93 49 fd ff       	call   0x46a740
495dad:	33 db                	xor    %ebx,%ebx
495daf:	89 5d e0             	mov    %ebx,-0x20(%ebp)
495db2:	88 5d e7             	mov    %bl,-0x19(%ebp)
495db5:	89 5d fc             	mov    %ebx,-0x4(%ebp)
495db8:	3b 5d 10             	cmp    0x10(%ebp),%ebx
495dbb:	74 1b                	je     0x495dd8
495dbd:	8b 4d 14             	mov    0x14(%ebp),%ecx
495dc0:	ff 15 d4 e2 49 00    	call   *0x49e2d4
495dc6:	8b 4d 08             	mov    0x8(%ebp),%ecx
495dc9:	ff 55 14             	call   *0x14(%ebp)
495dcc:	8b 45 0c             	mov    0xc(%ebp),%eax
495dcf:	01 45 08             	add    %eax,0x8(%ebp)
495dd2:	43                   	inc    %ebx
495dd3:	89 5d e0             	mov    %ebx,-0x20(%ebp)
495dd6:	eb e0                	jmp    0x495db8
495dd8:	b0 01                	mov    $0x1,%al
495dda:	88 45 e7             	mov    %al,-0x19(%ebp)
495ddd:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
495de4:	e8 18 00 00 00       	call   0x495e01
495de9:	8b 4d f0             	mov    -0x10(%ebp),%ecx
495dec:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
495df3:	59                   	pop    %ecx
495df4:	5f                   	pop    %edi
495df5:	5e                   	pop    %esi
495df6:	5b                   	pop    %ebx
495df7:	c9                   	leave
495df8:	c2 14 00             	ret    $0x14
495dfb:	8b 5d e0             	mov    -0x20(%ebp),%ebx
495dfe:	8a 45 e7             	mov    -0x19(%ebp),%al
495e01:	84 c0                	test   %al,%al
495e03:	75 0f                	jne    0x495e14
495e05:	ff 75 18             	push   0x18(%ebp)
495e08:	53                   	push   %ebx
495e09:	ff 75 0c             	push   0xc(%ebp)
495e0c:	ff 75 08             	push   0x8(%ebp)
495e0f:	e8 fd fe ff ff       	call   0x495d11
495e14:	c3                   	ret
495e15:	cc                   	int3
495e16:	cc                   	int3
495e17:	cc                   	int3
495e18:	cc                   	int3
495e19:	cc                   	int3
495e1a:	cc                   	int3
495e1b:	cc                   	int3
495e1c:	cc                   	int3
495e1d:	cc                   	int3
495e1e:	cc                   	int3
495e1f:	cc                   	int3
495e20:	55                   	push   %ebp
495e21:	8b ec                	mov    %esp,%ebp
495e23:	57                   	push   %edi
495e24:	83 3d fc 82 4c 00 01 	cmpl   $0x1,0x4c82fc
495e2b:	0f 82 fd 00 00 00    	jb     0x495f2e
495e31:	8b 7d 08             	mov    0x8(%ebp),%edi
495e34:	77 77                	ja     0x495ead
495e36:	0f b6 55 0c          	movzbl 0xc(%ebp),%edx
495e3a:	8b c2                	mov    %edx,%eax
495e3c:	c1 e2 08             	shl    $0x8,%edx
495e3f:	0b d0                	or     %eax,%edx
495e41:	66 0f 6e da          	movd   %edx,%xmm3
495e45:	f2 0f 70 db 00       	pshuflw $0x0,%xmm3,%xmm3
495e4a:	0f 16 db             	movlhps %xmm3,%xmm3
495e4d:	b9 0f 00 00 00       	mov    $0xf,%ecx
495e52:	23 cf                	and    %edi,%ecx
495e54:	83 c8 ff             	or     $0xffffffff,%eax
495e57:	d3 e0                	shl    %cl,%eax
495e59:	2b f9                	sub    %ecx,%edi
495e5b:	33 d2                	xor    %edx,%edx
495e5d:	f3 0f 6f 0f          	movdqu (%edi),%xmm1
495e61:	66 0f ef d2          	pxor   %xmm2,%xmm2
495e65:	66 0f 74 d1          	pcmpeqb %xmm1,%xmm2
495e69:	66 0f 74 cb          	pcmpeqb %xmm3,%xmm1
495e6d:	66 0f d7 ca          	pmovmskb %xmm2,%ecx
495e71:	23 c8                	and    %eax,%ecx
495e73:	75 18                	jne    0x495e8d
495e75:	66 0f d7 c9          	pmovmskb %xmm1,%ecx
495e79:	23 c8                	and    %eax,%ecx
495e7b:	0f bd c1             	bsr    %ecx,%eax
495e7e:	03 c7                	add    %edi,%eax
495e80:	85 c9                	test   %ecx,%ecx
495e82:	0f 45 d0             	cmovne %eax,%edx
495e85:	83 c8 ff             	or     $0xffffffff,%eax
495e88:	83 c7 10             	add    $0x10,%edi
495e8b:	eb d0                	jmp    0x495e5d
495e8d:	53                   	push   %ebx
495e8e:	66 0f d7 d9          	pmovmskb %xmm1,%ebx
495e92:	23 d8                	and    %eax,%ebx
495e94:	d1 e1                	shl    $1,%ecx
495e96:	33 c0                	xor    %eax,%eax
495e98:	2b c1                	sub    %ecx,%eax
495e9a:	23 c8                	and    %eax,%ecx
495e9c:	49                   	dec    %ecx
495e9d:	23 cb                	and    %ebx,%ecx
495e9f:	5b                   	pop    %ebx
495ea0:	0f bd c1             	bsr    %ecx,%eax
495ea3:	03 c7                	add    %edi,%eax
495ea5:	85 c9                	test   %ecx,%ecx
495ea7:	0f 44 c2             	cmove  %edx,%eax
495eaa:	5f                   	pop    %edi
495eab:	c9                   	leave
495eac:	c3                   	ret
495ead:	0f b6 55 0c          	movzbl 0xc(%ebp),%edx
495eb1:	85 d2                	test   %edx,%edx
495eb3:	74 39                	je     0x495eee
495eb5:	33 c0                	xor    %eax,%eax
495eb7:	f7 c7 0f 00 00 00    	test   $0xf,%edi
495ebd:	74 15                	je     0x495ed4
495ebf:	0f b6 0f             	movzbl (%edi),%ecx
495ec2:	3b ca                	cmp    %edx,%ecx
495ec4:	0f 44 c7             	cmove  %edi,%eax
495ec7:	85 c9                	test   %ecx,%ecx
495ec9:	74 20                	je     0x495eeb
495ecb:	47                   	inc    %edi
495ecc:	f7 c7 0f 00 00 00    	test   $0xf,%edi
495ed2:	75 eb                	jne    0x495ebf
495ed4:	66 0f 6e c2          	movd   %edx,%xmm0
495ed8:	83 c7 10             	add    $0x10,%edi
495edb:	66 0f 3a 63 47 f0 40 	pcmpistri $0x40,-0x10(%edi),%xmm0
495ee2:	8d 4c 39 f0          	lea    -0x10(%ecx,%edi,1),%ecx
495ee6:	0f 42 c1             	cmovb  %ecx,%eax
495ee9:	75 ed                	jne    0x495ed8
495eeb:	5f                   	pop    %edi
495eec:	c9                   	leave
495eed:	c3                   	ret
495eee:	b8 f0 ff ff ff       	mov    $0xfffffff0,%eax
495ef3:	23 c7                	and    %edi,%eax
495ef5:	66 0f ef c0          	pxor   %xmm0,%xmm0
495ef9:	66 0f 74 00          	pcmpeqb (%eax),%xmm0
495efd:	b9 0f 00 00 00       	mov    $0xf,%ecx
495f02:	23 cf                	and    %edi,%ecx
495f04:	ba ff ff ff ff       	mov    $0xffffffff,%edx
495f09:	d3 e2                	shl    %cl,%edx
495f0b:	66 0f d7 f8          	pmovmskb %xmm0,%edi
495f0f:	23 fa                	and    %edx,%edi
495f11:	75 14                	jne    0x495f27
495f13:	66 0f ef c0          	pxor   %xmm0,%xmm0
495f17:	66 0f 74 40 10       	pcmpeqb 0x10(%eax),%xmm0
495f1c:	83 c0 10             	add    $0x10,%eax
495f1f:	66 0f d7 f8          	pmovmskb %xmm0,%edi
495f23:	85 ff                	test   %edi,%edi
495f25:	74 ec                	je     0x495f13
495f27:	0f bc d7             	bsf    %edi,%edx
495f2a:	03 c2                	add    %edx,%eax
495f2c:	eb bd                	jmp    0x495eeb
495f2e:	8b 7d 08             	mov    0x8(%ebp),%edi
495f31:	33 c0                	xor    %eax,%eax
495f33:	83 c9 ff             	or     $0xffffffff,%ecx
495f36:	f2 ae                	repnz scas %es:(%edi),%al
495f38:	83 c1 01             	add    $0x1,%ecx
495f3b:	f7 d9                	neg    %ecx
495f3d:	83 ef 01             	sub    $0x1,%edi
495f40:	8a 45 0c             	mov    0xc(%ebp),%al
495f43:	fd                   	std
495f44:	f2 ae                	repnz scas %es:(%edi),%al
495f46:	83 c7 01             	add    $0x1,%edi
495f49:	38 07                	cmp    %al,(%edi)
495f4b:	74 04                	je     0x495f51
495f4d:	33 c0                	xor    %eax,%eax
495f4f:	eb 02                	jmp    0x495f53
495f51:	8b c7                	mov    %edi,%eax
495f53:	fc                   	cld
495f54:	5f                   	pop    %edi
495f55:	c9                   	leave
495f56:	c3                   	ret
495f57:	cc                   	int3
495f58:	cc                   	int3
495f59:	cc                   	int3
495f5a:	cc                   	int3
495f5b:	cc                   	int3
495f5c:	cc                   	int3
495f5d:	cc                   	int3
495f5e:	cc                   	int3
495f5f:	cc                   	int3
495f60:	8b ff                	mov    %edi,%edi
495f62:	55                   	push   %ebp
495f63:	8b ec                	mov    %esp,%ebp
495f65:	8b 45 08             	mov    0x8(%ebp),%eax
495f68:	85 c0                	test   %eax,%eax
495f6a:	74 0c                	je     0x495f78
495f6c:	83 e0 fc             	and    $0xfffffffc,%eax
495f6f:	ff 70 fc             	push   -0x4(%eax)
495f72:	e8 0b 37 fe ff       	call   0x479682
495f77:	59                   	pop    %ecx
495f78:	5d                   	pop    %ebp
495f79:	c3                   	ret
495f7a:	8b ff                	mov    %edi,%edi
495f7c:	55                   	push   %ebp
495f7d:	8b ec                	mov    %esp,%ebp
495f7f:	56                   	push   %esi
495f80:	8b 75 0c             	mov    0xc(%ebp),%esi
495f83:	85 f6                	test   %esi,%esi
495f85:	74 43                	je     0x495fca
495f87:	8d 46 ff             	lea    -0x1(%esi),%eax
495f8a:	85 c6                	test   %eax,%esi
495f8c:	75 3c                	jne    0x495fca
495f8e:	83 fe 04             	cmp    $0x4,%esi
495f91:	77 03                	ja     0x495f96
495f93:	6a 04                	push   $0x4
495f95:	5e                   	pop    %esi
495f96:	8b 45 08             	mov    0x8(%ebp),%eax
495f99:	8d 48 03             	lea    0x3(%eax),%ecx
495f9c:	03 ce                	add    %esi,%ecx