606b45:	eb 19                	jmp    0x606b60
606b47:	89 46 04             	mov    %eax,0x4(%esi)
606b4a:	8b 07                	mov    (%edi),%eax
606b4c:	89 06                	mov    %eax,(%esi)
606b4e:	c7 46 08 00 10 00 00 	movl   $0x1000,0x8(%esi)
606b55:	c7 46 18 00 10 00 00 	movl   $0x1000,0x18(%esi)
606b5c:	eb e5                	jmp    0x606b43
606b5e:	32 c0                	xor    %al,%al
606b60:	5f                   	pop    %edi
606b61:	5e                   	pop    %esi
606b62:	5b                   	pop    %ebx
606b63:	5d                   	pop    %ebp
606b64:	c3                   	ret
606b65:	8b ff                	mov    %edi,%edi
606b67:	55                   	push   %ebp
606b68:	8b ec                	mov    %esp,%ebp
606b6a:	80 7d 08 00          	cmpb   $0x0,0x8(%ebp)
606b6e:	74 2d                	je     0x606b9d
606b70:	56                   	push   %esi
606b71:	8b 75 0c             	mov    0xc(%ebp),%esi
606b74:	57                   	push   %edi
606b75:	8d 7e 0c             	lea    0xc(%esi),%edi
606b78:	8b 07                	mov    (%edi),%eax
606b7a:	90                   	nop
606b7b:	c1 e8 09             	shr    $0x9,%eax
606b7e:	a8 01                	test   $0x1,%al
606b80:	74 19                	je     0x606b9b
606b82:	56                   	push   %esi
606b83:	e8 d4 44 ff ff       	call   0x5fb05c
606b88:	59                   	pop    %ecx
606b89:	b8 7f fd ff ff       	mov    $0xfffffd7f,%eax
606b8e:	f0 21 07             	lock and %eax,(%edi)
606b91:	33 c0                	xor    %eax,%eax
606b93:	89 46 18             	mov    %eax,0x18(%esi)
606b96:	89 46 04             	mov    %eax,0x4(%esi)
606b99:	89 06                	mov    %eax,(%esi)
606b9b:	5f                   	pop    %edi
606b9c:	5e                   	pop    %esi
606b9d:	5d                   	pop    %ebp
606b9e:	c3                   	ret
606b9f:	e8 61 b2 00 00       	call   0x611e05
606ba4:	50                   	push   %eax
606ba5:	e8 39 b2 00 00       	call   0x611de3
606baa:	59                   	pop    %ecx
606bab:	c3                   	ret
606bac:	8b ff                	mov    %edi,%edi
606bae:	55                   	push   %ebp
606baf:	8b ec                	mov    %esp,%ebp
606bb1:	dd 45 08             	fldl   0x8(%ebp)
606bb4:	d9 ee                	fldz
606bb6:	dd e1                	fucom  %st(1)
606bb8:	df e0                	fnstsw %ax
606bba:	56                   	push   %esi
606bbb:	f6 c4 44             	test   $0x44,%ah
606bbe:	7a 09                	jp     0x606bc9
606bc0:	dd d9                	fstp   %st(1)
606bc2:	33 f6                	xor    %esi,%esi
606bc4:	e9 ad 00 00 00       	jmp    0x606c76
606bc9:	57                   	push   %edi
606bca:	66 8b 7d 0e          	mov    0xe(%ebp),%di
606bce:	0f b7 c7             	movzwl %di,%eax
606bd1:	a9 f0 7f 00 00       	test   $0x7ff0,%eax
606bd6:	75 7a                	jne    0x606c52
606bd8:	8b 4d 0c             	mov    0xc(%ebp),%ecx
606bdb:	8b 55 08             	mov    0x8(%ebp),%edx
606bde:	f7 c1 ff ff 0f 00    	test   $0xfffff,%ecx
606be4:	75 04                	jne    0x606bea
606be6:	85 d2                	test   %edx,%edx
606be8:	74 68                	je     0x606c52
606bea:	de d9                	fcompp
606bec:	be 03 fc ff ff       	mov    $0xfffffc03,%esi
606bf1:	df e0                	fnstsw %ax
606bf3:	53                   	push   %ebx
606bf4:	33 db                	xor    %ebx,%ebx
606bf6:	f6 c4 41             	test   $0x41,%ah
606bf9:	75 01                	jne    0x606bfc
606bfb:	43                   	inc    %ebx
606bfc:	f6 45 0e 10          	testb  $0x10,0xe(%ebp)
606c00:	75 1f                	jne    0x606c21
606c02:	03 c9                	add    %ecx,%ecx
606c04:	89 4d 0c             	mov    %ecx,0xc(%ebp)
606c07:	85 d2                	test   %edx,%edx
606c09:	79 06                	jns    0x606c11
606c0b:	83 c9 01             	or     $0x1,%ecx
606c0e:	89 4d 0c             	mov    %ecx,0xc(%ebp)
606c11:	03 d2                	add    %edx,%edx
606c13:	4e                   	dec    %esi
606c14:	f6 45 0e 10          	testb  $0x10,0xe(%ebp)
606c18:	74 e8                	je     0x606c02
606c1a:	66 8b 7d 0e          	mov    0xe(%ebp),%di
606c1e:	89 55 08             	mov    %edx,0x8(%ebp)
606c21:	b8 ef ff 00 00       	mov    $0xffef,%eax
606c26:	66 23 f8             	and    %ax,%di
606c29:	85 db                	test   %ebx,%ebx
606c2b:	0f b7 c7             	movzwl %di,%eax
606c2e:	66 89 7d 0e          	mov    %di,0xe(%ebp)
606c32:	5b                   	pop    %ebx
606c33:	74 09                	je     0x606c3e
606c35:	0d 00 80 00 00       	or     $0x8000,%eax
606c3a:	66 89 45 0e          	mov    %ax,0xe(%ebp)
606c3e:	dd 45 08             	fldl   0x8(%ebp)
606c41:	6a 00                	push   $0x0
606c43:	51                   	push   %ecx
606c44:	51                   	push   %ecx
606c45:	dd 1c 24             	fstpl  (%esp)
606c48:	e8 31 00 00 00       	call   0x606c7e
606c4d:	83 c4 0c             	add    $0xc,%esp
606c50:	eb 23                	jmp    0x606c75
606c52:	6a 00                	push   $0x0
606c54:	51                   	push   %ecx
606c55:	dd d8                	fstp   %st(0)
606c57:	51                   	push   %ecx
606c58:	dd 1c 24             	fstpl  (%esp)
606c5b:	e8 1e 00 00 00       	call   0x606c7e
606c60:	0f b7 f7             	movzwl %di,%esi
606c63:	83 c4 0c             	add    $0xc,%esp
606c66:	c1 ee 04             	shr    $0x4,%esi
606c69:	81 e6 ff 07 00 00    	and    $0x7ff,%esi
606c6f:	81 ee fe 03 00 00    	sub    $0x3fe,%esi
606c75:	5f                   	pop    %edi
606c76:	8b 45 10             	mov    0x10(%ebp),%eax
606c79:	89 30                	mov    %esi,(%eax)
606c7b:	5e                   	pop    %esi
606c7c:	5d                   	pop    %ebp
606c7d:	c3                   	ret
606c7e:	8b ff                	mov    %edi,%edi
606c80:	55                   	push   %ebp
606c81:	8b ec                	mov    %esp,%ebp
606c83:	51                   	push   %ecx
606c84:	51                   	push   %ecx
606c85:	8b 4d 10             	mov    0x10(%ebp),%ecx
606c88:	0f b7 45 0e          	movzwl 0xe(%ebp),%eax
606c8c:	dd 45 08             	fldl   0x8(%ebp)
606c8f:	25 0f 80 00 00       	and    $0x800f,%eax
606c94:	dd 5d f8             	fstpl  -0x8(%ebp)
606c97:	8d 89 fe 03 00 00    	lea    0x3fe(%ecx),%ecx
606c9d:	c1 e1 04             	shl    $0x4,%ecx
606ca0:	0b c8                	or     %eax,%ecx
606ca2:	66 89 4d fe          	mov    %cx,-0x2(%ebp)
606ca6:	dd 45 f8             	fldl   -0x8(%ebp)
606ca9:	c9                   	leave
606caa:	c3                   	ret
606cab:	8b ff                	mov    %edi,%edi
606cad:	55                   	push   %ebp
606cae:	8b ec                	mov    %esp,%ebp
606cb0:	81 7d 0c 00 00 f0 7f 	cmpl   $0x7ff00000,0xc(%ebp)
606cb7:	8b 45 08             	mov    0x8(%ebp),%eax
606cba:	75 07                	jne    0x606cc3
606cbc:	85 c0                	test   %eax,%eax
606cbe:	75 15                	jne    0x606cd5
606cc0:	40                   	inc    %eax
606cc1:	5d                   	pop    %ebp
606cc2:	c3                   	ret
606cc3:	81 7d 0c 00 00 f0 ff 	cmpl   $0xfff00000,0xc(%ebp)
606cca:	75 09                	jne    0x606cd5
606ccc:	85 c0                	test   %eax,%eax
606cce:	75 05                	jne    0x606cd5
606cd0:	6a 02                	push   $0x2
606cd2:	58                   	pop    %eax
606cd3:	5d                   	pop    %ebp
606cd4:	c3                   	ret
606cd5:	66 8b 4d 0e          	mov    0xe(%ebp),%cx
606cd9:	ba f8 7f 00 00       	mov    $0x7ff8,%edx
606cde:	66 23 ca             	and    %dx,%cx
606ce1:	66 3b ca             	cmp    %dx,%cx
606ce4:	75 04                	jne    0x606cea
606ce6:	6a 03                	push   $0x3
606ce8:	eb e8                	jmp    0x606cd2
606cea:	ba f0 7f 00 00       	mov    $0x7ff0,%edx
606cef:	66 3b ca             	cmp    %dx,%cx
606cf2:	75 11                	jne    0x606d05
606cf4:	f7 45 0c ff ff 07 00 	testl  $0x7ffff,0xc(%ebp)
606cfb:	75 04                	jne    0x606d01
606cfd:	85 c0                	test   %eax,%eax
606cff:	74 04                	je     0x606d05
606d01:	6a 04                	push   $0x4
606d03:	eb cd                	jmp    0x606cd2
606d05:	33 c0                	xor    %eax,%eax
606d07:	5d                   	pop    %ebp
606d08:	c3                   	ret
606d09:	6a 08                	push   $0x8
606d0b:	68 70 20 70 00       	push   $0x702070
606d10:	e8 fb b7 fd ff       	call   0x5e2510
606d15:	83 3d c0 0b 73 00 01 	cmpl   $0x1,0x730bc0
606d1c:	7c 5b                	jl     0x606d79
606d1e:	8b 45 08             	mov    0x8(%ebp),%eax
606d21:	a8 40                	test   $0x40,%al
606d23:	74 4a                	je     0x606d6f
606d25:	83 3d 80 8d 72 00 00 	cmpl   $0x0,0x728d80
606d2c:	74 41                	je     0x606d6f
606d2e:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
606d32:	0f ae 55 08          	ldmxcsr 0x8(%ebp)
606d36:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
606d3d:	eb 3a                	jmp    0x606d79
606d3f:	8b 45 ec             	mov    -0x14(%ebp),%eax
606d42:	8b 00                	mov    (%eax),%eax
606d44:	81 38 05 00 00 c0    	cmpl   $0xc0000005,(%eax)
606d4a:	74 0b                	je     0x606d57
606d4c:	81 38 1d 00 00 c0    	cmpl   $0xc000001d,(%eax)
606d52:	74 03                	je     0x606d57
606d54:	33 c0                	xor    %eax,%eax
606d56:	c3                   	ret
606d57:	33 c0                	xor    %eax,%eax
606d59:	40                   	inc    %eax
606d5a:	c3                   	ret
606d5b:	8b 65 e8             	mov    -0x18(%ebp),%esp
606d5e:	83 25 80 8d 72 00 00 	andl   $0x0,0x728d80
606d65:	83 65 08 bf          	andl   $0xffffffbf,0x8(%ebp)
606d69:	0f ae 55 08          	ldmxcsr 0x8(%ebp)
606d6d:	eb c7                	jmp    0x606d36
606d6f:	83 e0 bf             	and    $0xffffffbf,%eax
606d72:	89 45 08             	mov    %eax,0x8(%ebp)
606d75:	0f ae 55 08          	ldmxcsr 0x8(%ebp)
606d79:	8b 4d f0             	mov    -0x10(%ebp),%ecx
606d7c:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
606d83:	59                   	pop    %ecx
606d84:	5f                   	pop    %edi
606d85:	5e                   	pop    %esi
606d86:	5b                   	pop    %ebx
606d87:	c9                   	leave
606d88:	c3                   	ret
606d89:	8b ff                	mov    %edi,%edi
606d8b:	55                   	push   %ebp
606d8c:	8b ec                	mov    %esp,%ebp
606d8e:	51                   	push   %ecx
606d8f:	dd 7d fc             	fnstsw -0x4(%ebp)
606d92:	db e2                	fnclex
606d94:	0f bf 45 fc          	movswl -0x4(%ebp),%eax
606d98:	c9                   	leave
606d99:	c3                   	ret
606d9a:	8b ff                	mov    %edi,%edi
606d9c:	55                   	push   %ebp
606d9d:	8b ec                	mov    %esp,%ebp
606d9f:	51                   	push   %ecx
606da0:	51                   	push   %ecx
606da1:	9b d9 7d fc          	fstcw  -0x4(%ebp)
606da5:	8b 4d 0c             	mov    0xc(%ebp),%ecx
606da8:	8b 45 08             	mov    0x8(%ebp),%eax
606dab:	f7 d1                	not    %ecx
606dad:	66 23 4d fc          	and    -0x4(%ebp),%cx
606db1:	23 45 0c             	and    0xc(%ebp),%eax
606db4:	66 0b c8             	or     %ax,%cx
606db7:	66 89 4d f8          	mov    %cx,-0x8(%ebp)
606dbb:	d9 6d f8             	fldcw  -0x8(%ebp)
606dbe:	0f bf 45 fc          	movswl -0x4(%ebp),%eax
606dc2:	c9                   	leave
606dc3:	c3                   	ret
606dc4:	8b ff                	mov    %edi,%edi
606dc6:	55                   	push   %ebp
606dc7:	8b ec                	mov    %esp,%ebp
606dc9:	8b 4d 08             	mov    0x8(%ebp),%ecx
606dcc:	83 ec 0c             	sub    $0xc,%esp
606dcf:	f6 c1 01             	test   $0x1,%cl
606dd2:	74 0a                	je     0x606dde
606dd4:	db 2d 38 4b 6d 00    	fldt   0x6d4b38
606dda:	db 5d fc             	fistpl -0x4(%ebp)
606ddd:	9b                   	fwait
606dde:	f6 c1 08             	test   $0x8,%cl
606de1:	74 10                	je     0x606df3
606de3:	9b df e0             	fstsw  %ax
606de6:	db 2d 38 4b 6d 00    	fldt   0x6d4b38
606dec:	dd 5d f4             	fstpl  -0xc(%ebp)
606def:	9b 9b df e0          	fstsw  %ax
606df3:	f6 c1 10             	test   $0x10,%cl
606df6:	74 0a                	je     0x606e02
606df8:	db 2d 44 4b 6d 00    	fldt   0x6d4b44
606dfe:	dd 5d f4             	fstpl  -0xc(%ebp)
606e01:	9b                   	fwait
606e02:	f6 c1 04             	test   $0x4,%cl
606e05:	74 09                	je     0x606e10
606e07:	d9 ee                	fldz
606e09:	d9 e8                	fld1
606e0b:	de f1                	fdivp  %st,%st(1)
606e0d:	dd d8                	fstp   %st(0)
606e0f:	9b                   	fwait
606e10:	f6 c1 20             	test   $0x20,%cl
606e13:	74 06                	je     0x606e1b
606e15:	d9 eb                	fldpi
606e17:	dd 5d f4             	fstpl  -0xc(%ebp)
606e1a:	9b                   	fwait
606e1b:	c9                   	leave
606e1c:	c3                   	ret
606e1d:	8b ff                	mov    %edi,%edi
606e1f:	55                   	push   %ebp
606e20:	8b ec                	mov    %esp,%ebp
606e22:	51                   	push   %ecx
606e23:	9b dd 7d fc          	fstsw  -0x4(%ebp)
606e27:	0f bf 45 fc          	movswl -0x4(%ebp),%eax
606e2b:	c9                   	leave
606e2c:	c3                   	ret
606e2d:	8b ff                	mov    %edi,%edi
606e2f:	55                   	push   %ebp
606e30:	8b ec                	mov    %esp,%ebp
606e32:	57                   	push   %edi
606e33:	8b 7d 08             	mov    0x8(%ebp),%edi
606e36:	85 ff                	test   %edi,%edi
606e38:	75 0b                	jne    0x606e45
606e3a:	ff 75 0c             	push   0xc(%ebp)
606e3d:	e8 b3 ef ff ff       	call   0x605df5
606e42:	59                   	pop    %ecx
606e43:	eb 24                	jmp    0x606e69
606e45:	56                   	push   %esi
606e46:	8b 75 0c             	mov    0xc(%ebp),%esi
606e49:	85 f6                	test   %esi,%esi
606e4b:	75 09                	jne    0x606e56
606e4d:	57                   	push   %edi
606e4e:	e8 d5 d9 ff ff       	call   0x604828
606e53:	59                   	pop    %ecx
606e54:	eb 10                	jmp    0x606e66
606e56:	83 fe e0             	cmp    $0xffffffe0,%esi
606e59:	76 25                	jbe    0x606e80
606e5b:	e8 99 61 fe ff       	call   0x5ecff9
606e60:	c7 00 0c 00 00 00    	movl   $0xc,(%eax)
606e66:	33 c0                	xor    %eax,%eax
606e68:	5e                   	pop    %esi
606e69:	5f                   	pop    %edi
606e6a:	5d                   	pop    %ebp
606e6b:	c3                   	ret
606e6c:	e8 e3 d1 ff ff       	call   0x604054
606e71:	85 c0                	test   %eax,%eax
606e73:	74 e6                	je     0x606e5b
606e75:	56                   	push   %esi
606e76:	e8 4d a3 ff ff       	call   0x6011c8
606e7b:	59                   	pop    %ecx
606e7c:	85 c0                	test   %eax,%eax
606e7e:	74 db                	je     0x606e5b
606e80:	56                   	push   %esi
606e81:	57                   	push   %edi
606e82:	6a 00                	push   $0x0
606e84:	ff 35 88 14 73 00    	push   0x731488
606e8a:	ff 15 8c 21 68 00    	call   *0x68218c
606e90:	85 c0                	test   %eax,%eax
606e92:	74 d8                	je     0x606e6c
606e94:	eb d2                	jmp    0x606e68
606e96:	8b ff                	mov    %edi,%edi
606e98:	55                   	push   %ebp
606e99:	8b ec                	mov    %esp,%ebp
606e9b:	8b 45 08             	mov    0x8(%ebp),%eax
606e9e:	b9 35 c4 00 00       	mov    $0xc435,%ecx
606ea3:	3b c1                	cmp    %ecx,%eax
606ea5:	77 28                	ja     0x606ecf
606ea7:	74 65                	je     0x606f0e
606ea9:	83 f8 2a             	cmp    $0x2a,%eax
606eac:	74 60                	je     0x606f0e
606eae:	3d 2b c4 00 00       	cmp    $0xc42b,%eax
606eb3:	76 15                	jbe    0x606eca
606eb5:	3d 2e c4 00 00       	cmp    $0xc42e,%eax
606eba:	76 52                	jbe    0x606f0e
606ebc:	3d 31 c4 00 00       	cmp    $0xc431,%eax
606ec1:	74 4b                	je     0x606f0e