473b5f:	8b 45 1c             	mov    0x1c(%ebp),%eax
473b62:	89 45 f4             	mov    %eax,-0xc(%ebp)
473b65:	eb 09                	jmp    0x473b70
473b67:	55                   	push   %ebp
473b68:	8b ec                	mov    %esp,%ebp
473b6a:	83 c4 e0             	add    $0xffffffe0,%esp
473b6d:	89 45 e0             	mov    %eax,-0x20(%ebp)
473b70:	dd 5d f8             	fstpl  -0x8(%ebp)
473b73:	89 4d e4             	mov    %ecx,-0x1c(%ebp)
473b76:	8b 45 10             	mov    0x10(%ebp),%eax
473b79:	8b 4d 14             	mov    0x14(%ebp),%ecx
473b7c:	89 45 e8             	mov    %eax,-0x18(%ebp)
473b7f:	89 4d ec             	mov    %ecx,-0x14(%ebp)
473b82:	8d 45 08             	lea    0x8(%ebp),%eax
473b85:	8d 4d e0             	lea    -0x20(%ebp),%ecx
473b88:	50                   	push   %eax
473b89:	51                   	push   %ecx
473b8a:	52                   	push   %edx
473b8b:	e8 74 f0 00 00       	call   0x482c04
473b90:	83 c4 0c             	add    $0xc,%esp
473b93:	dd 45 f8             	fldl   -0x8(%ebp)
473b96:	66 81 7d 08 7f 02    	cmpw   $0x27f,0x8(%ebp)
473b9c:	74 03                	je     0x473ba1
473b9e:	d9 6d 08             	fldcw  0x8(%ebp)
473ba1:	c9                   	leave
473ba2:	c3                   	ret
473ba3:	cc                   	int3
473ba4:	cc                   	int3
473ba5:	cc                   	int3
473ba6:	cc                   	int3
473ba7:	cc                   	int3
473ba8:	cc                   	int3
473ba9:	cc                   	int3
473baa:	cc                   	int3
473bab:	cc                   	int3
473bac:	cc                   	int3
473bad:	cc                   	int3
473bae:	cc                   	int3
473baf:	cc                   	int3
473bb0:	d9 c0                	fld    %st(0)
473bb2:	d9 fc                	frndint
473bb4:	dc e1                	fsub   %st,%st(1)
473bb6:	d9 c9                	fxch   %st(1)
473bb8:	d9 e0                	fchs
473bba:	d9 f0                	f2xm1
473bbc:	d9 e8                	fld1
473bbe:	de c1                	faddp  %st,%st(1)
473bc0:	d9 fd                	fscale
473bc2:	dd d9                	fstp   %st(1)
473bc4:	c3                   	ret
473bc5:	8b 54 24 04          	mov    0x4(%esp),%edx
473bc9:	81 e2 00 03 00 00    	and    $0x300,%edx
473bcf:	83 ca 7f             	or     $0x7f,%edx
473bd2:	66 89 54 24 06       	mov    %dx,0x6(%esp)
473bd7:	d9 6c 24 06          	fldcw  0x6(%esp)
473bdb:	c3                   	ret
473bdc:	a9 00 00 08 00       	test   $0x80000,%eax
473be1:	74 06                	je     0x473be9
473be3:	b8 00 00 00 00       	mov    $0x0,%eax
473be8:	c3                   	ret
473be9:	dc 05 80 e0 49 00    	faddl  0x49e080
473bef:	b8 00 00 00 00       	mov    $0x0,%eax
473bf4:	c3                   	ret
473bf5:	8b 42 04             	mov    0x4(%edx),%eax
473bf8:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
473bfd:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
473c02:	74 03                	je     0x473c07
473c04:	dd 02                	fldl   (%edx)
473c06:	c3                   	ret
473c07:	8b 42 04             	mov    0x4(%edx),%eax
473c0a:	83 ec 0a             	sub    $0xa,%esp
473c0d:	0d 00 00 ff 7f       	or     $0x7fff0000,%eax
473c12:	89 44 24 06          	mov    %eax,0x6(%esp)
473c16:	8b 42 04             	mov    0x4(%edx),%eax
473c19:	8b 0a                	mov    (%edx),%ecx
473c1b:	0f a4 c8 0b          	shld   $0xb,%ecx,%eax
473c1f:	c1 e1 0b             	shl    $0xb,%ecx
473c22:	89 44 24 04          	mov    %eax,0x4(%esp)
473c26:	89 0c 24             	mov    %ecx,(%esp)
473c29:	db 2c 24             	fldt   (%esp)
473c2c:	83 c4 0a             	add    $0xa,%esp
473c2f:	a9 00 00 00 00       	test   $0x0,%eax
473c34:	8b 42 04             	mov    0x4(%edx),%eax
473c37:	c3                   	ret
473c38:	8b 44 24 08          	mov    0x8(%esp),%eax
473c3c:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
473c41:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
473c46:	74 01                	je     0x473c49
473c48:	c3                   	ret
473c49:	8b 44 24 08          	mov    0x8(%esp),%eax
473c4d:	c3                   	ret
473c4e:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
473c54:	74 03                	je     0x473c59
473c56:	d9 2c 24             	fldcw  (%esp)
473c59:	5a                   	pop    %edx
473c5a:	c3                   	ret
473c5b:	66 8b 04 24          	mov    (%esp),%ax
473c5f:	66 3d 7f 02          	cmp    $0x27f,%ax
473c63:	74 1e                	je     0x473c83
473c65:	66 83 e0 20          	and    $0x20,%ax
473c69:	74 15                	je     0x473c80
473c6b:	9b df e0             	fstsw  %ax
473c6e:	66 83 e0 20          	and    $0x20,%ax
473c72:	74 0c                	je     0x473c80
473c74:	b8 08 00 00 00       	mov    $0x8,%eax
473c79:	e8 e9 fe ff ff       	call   0x473b67
473c7e:	5a                   	pop    %edx
473c7f:	c3                   	ret
473c80:	d9 2c 24             	fldcw  (%esp)
473c83:	5a                   	pop    %edx
473c84:	c3                   	ret
473c85:	83 ec 08             	sub    $0x8,%esp
473c88:	dd 14 24             	fstl   (%esp)
473c8b:	8b 44 24 04          	mov    0x4(%esp),%eax
473c8f:	83 c4 08             	add    $0x8,%esp
473c92:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
473c97:	eb 14                	jmp    0x473cad
473c99:	83 ec 08             	sub    $0x8,%esp
473c9c:	dd 14 24             	fstl   (%esp)
473c9f:	8b 44 24 04          	mov    0x4(%esp),%eax
473ca3:	83 c4 08             	add    $0x8,%esp
473ca6:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
473cab:	74 3d                	je     0x473cea
473cad:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
473cb2:	74 5f                	je     0x473d13
473cb4:	66 8b 04 24          	mov    (%esp),%ax
473cb8:	66 3d 7f 02          	cmp    $0x27f,%ax
473cbc:	74 2a                	je     0x473ce8
473cbe:	66 83 e0 20          	and    $0x20,%ax
473cc2:	75 21                	jne    0x473ce5
473cc4:	9b df e0             	fstsw  %ax
473cc7:	66 83 e0 20          	and    $0x20,%ax
473ccb:	74 18                	je     0x473ce5
473ccd:	b8 08 00 00 00       	mov    $0x8,%eax
473cd2:	83 fa 1d             	cmp    $0x1d,%edx
473cd5:	74 07                	je     0x473cde
473cd7:	e8 8b fe ff ff       	call   0x473b67
473cdc:	5a                   	pop    %edx
473cdd:	c3                   	ret
473cde:	e8 6d fe ff ff       	call   0x473b50
473ce3:	5a                   	pop    %edx
473ce4:	c3                   	ret
473ce5:	d9 2c 24             	fldcw  (%esp)
473ce8:	5a                   	pop    %edx
473ce9:	c3                   	ret
473cea:	dd 05 ac e0 49 00    	fldl   0x49e0ac
473cf0:	d9 c9                	fxch   %st(1)
473cf2:	d9 fd                	fscale
473cf4:	dd d9                	fstp   %st(1)
473cf6:	d9 c0                	fld    %st(0)
473cf8:	d9 e1                	fabs
473cfa:	dc 1d 9c e0 49 00    	fcompl 0x49e09c
473d00:	9b df e0             	fstsw  %ax
473d03:	9e                   	sahf
473d04:	b8 04 00 00 00       	mov    $0x4,%eax
473d09:	73 c7                	jae    0x473cd2
473d0b:	dc 0d bc e0 49 00    	fmull  0x49e0bc
473d11:	eb bf                	jmp    0x473cd2
473d13:	dd 05 a4 e0 49 00    	fldl   0x49e0a4
473d19:	d9 c9                	fxch   %st(1)
473d1b:	d9 fd                	fscale
473d1d:	dd d9                	fstp   %st(1)
473d1f:	d9 c0                	fld    %st(0)
473d21:	d9 e1                	fabs
473d23:	dc 1d 94 e0 49 00    	fcompl 0x49e094
473d29:	9b df e0             	fstsw  %ax
473d2c:	9e                   	sahf
473d2d:	b8 03 00 00 00       	mov    $0x3,%eax
473d32:	76 9e                	jbe    0x473cd2
473d34:	dc 0d b4 e0 49 00    	fmull  0x49e0b4
473d3a:	eb 96                	jmp    0x473cd2
473d3c:	8b ff                	mov    %edi,%edi
473d3e:	55                   	push   %ebp
473d3f:	8b ec                	mov    %esp,%ebp
473d41:	51                   	push   %ecx
473d42:	51                   	push   %ecx
473d43:	dd 45 08             	fldl   0x8(%ebp)
473d46:	51                   	push   %ecx
473d47:	51                   	push   %ecx
473d48:	dd 1c 24             	fstpl  (%esp)
473d4b:	e8 35 02 00 00       	call   0x473f85
473d50:	59                   	pop    %ecx
473d51:	59                   	pop    %ecx
473d52:	a8 90                	test   $0x90,%al
473d54:	75 4a                	jne    0x473da0
473d56:	dd 45 08             	fldl   0x8(%ebp)
473d59:	51                   	push   %ecx
473d5a:	51                   	push   %ecx
473d5b:	dd 1c 24             	fstpl  (%esp)
473d5e:	e8 ac ef 00 00       	call   0x482d0f
473d63:	dd 45 08             	fldl   0x8(%ebp)
473d66:	dd e1                	fucom  %st(1)
473d68:	df e0                	fnstsw %ax
473d6a:	59                   	pop    %ecx
473d6b:	59                   	pop    %ecx
473d6c:	dd d9                	fstp   %st(1)
473d6e:	f6 c4 44             	test   $0x44,%ah
473d71:	7a 2b                	jp     0x473d9e
473d73:	dc 0d c8 e0 49 00    	fmull  0x49e0c8
473d79:	51                   	push   %ecx
473d7a:	51                   	push   %ecx
473d7b:	dd 55 f8             	fstl   -0x8(%ebp)
473d7e:	dd 1c 24             	fstpl  (%esp)
473d81:	e8 89 ef 00 00       	call   0x482d0f
473d86:	dd 45 f8             	fldl   -0x8(%ebp)
473d89:	da e9                	fucompp
473d8b:	df e0                	fnstsw %ax
473d8d:	59                   	pop    %ecx
473d8e:	59                   	pop    %ecx
473d8f:	f6 c4 44             	test   $0x44,%ah
473d92:	7a 05                	jp     0x473d99
473d94:	6a 02                	push   $0x2
473d96:	58                   	pop    %eax
473d97:	eb 09                	jmp    0x473da2
473d99:	33 c0                	xor    %eax,%eax
473d9b:	40                   	inc    %eax
473d9c:	eb 04                	jmp    0x473da2
473d9e:	dd d8                	fstp   %st(0)
473da0:	33 c0                	xor    %eax,%eax
473da2:	8b e5                	mov    %ebp,%esp
473da4:	5d                   	pop    %ebp
473da5:	c3                   	ret
473da6:	8b ff                	mov    %edi,%edi
473da8:	55                   	push   %ebp
473da9:	8b ec                	mov    %esp,%ebp
473dab:	dd 45 08             	fldl   0x8(%ebp)
473dae:	b9 00 00 f0 7f       	mov    $0x7ff00000,%ecx
473db3:	d9 e1                	fabs
473db5:	b8 00 00 f0 ff       	mov    $0xfff00000,%eax
473dba:	39 4d 14             	cmp    %ecx,0x14(%ebp)
473dbd:	75 3b                	jne    0x473dfa
473dbf:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
473dc3:	75 75                	jne    0x473e3a
473dc5:	d9 e8                	fld1
473dc7:	d8 d1                	fcom   %st(1)
473dc9:	df e0                	fnstsw %ax
473dcb:	f6 c4 05             	test   $0x5,%ah
473dce:	7a 0f                	jp     0x473ddf
473dd0:	dd d9                	fstp   %st(1)
473dd2:	dd d8                	fstp   %st(0)
473dd4:	dd 05 d0 e0 49 00    	fldl   0x49e0d0
473dda:	e9 e9 00 00 00       	jmp    0x473ec8
473ddf:	d8 d1                	fcom   %st(1)
473de1:	df e0                	fnstsw %ax
473de3:	dd d9                	fstp   %st(1)
473de5:	f6 c4 41             	test   $0x41,%ah
473de8:	8b 45 18             	mov    0x18(%ebp),%eax
473deb:	0f 85 da 00 00 00    	jne    0x473ecb
473df1:	dd d8                	fstp   %st(0)
473df3:	d9 ee                	fldz
473df5:	e9 d1 00 00 00       	jmp    0x473ecb
473dfa:	39 45 14             	cmp    %eax,0x14(%ebp)
473dfd:	75 3b                	jne    0x473e3a
473dff:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
473e03:	75 35                	jne    0x473e3a
473e05:	d9 e8                	fld1
473e07:	d8 d1                	fcom   %st(1)
473e09:	df e0                	fnstsw %ax
473e0b:	f6 c4 05             	test   $0x5,%ah
473e0e:	7a 0b                	jp     0x473e1b
473e10:	dd d9                	fstp   %st(1)
473e12:	dd d8                	fstp   %st(0)
473e14:	d9 ee                	fldz
473e16:	e9 ad 00 00 00       	jmp    0x473ec8
473e1b:	d8 d1                	fcom   %st(1)
473e1d:	df e0                	fnstsw %ax
473e1f:	dd d9                	fstp   %st(1)
473e21:	f6 c4 41             	test   $0x41,%ah
473e24:	8b 45 18             	mov    0x18(%ebp),%eax
473e27:	0f 85 9e 00 00 00    	jne    0x473ecb
473e2d:	dd d8                	fstp   %st(0)
473e2f:	dd 05 d0 e0 49 00    	fldl   0x49e0d0
473e35:	e9 91 00 00 00       	jmp    0x473ecb
473e3a:	dd d8                	fstp   %st(0)
473e3c:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
473e3f:	75 2e                	jne    0x473e6f
473e41:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
473e45:	0f 85 82 00 00 00    	jne    0x473ecd
473e4b:	d9 ee                	fldz
473e4d:	dd 45 10             	fldl   0x10(%ebp)
473e50:	d8 d1                	fcom   %st(1)
473e52:	df e0                	fnstsw %ax
473e54:	f6 c4 41             	test   $0x41,%ah
473e57:	0f 84 73 ff ff ff    	je     0x473dd0
473e5d:	d8 d9                	fcomp  %st(1)
473e5f:	df e0                	fnstsw %ax
473e61:	f6 c4 05             	test   $0x5,%ah
473e64:	8b 45 18             	mov    0x18(%ebp),%eax
473e67:	7b 62                	jnp    0x473ecb
473e69:	dd d8                	fstp   %st(0)
473e6b:	d9 e8                	fld1
473e6d:	eb 5c                	jmp    0x473ecb
473e6f:	39 45 0c             	cmp    %eax,0xc(%ebp)
473e72:	75 59                	jne    0x473ecd
473e74:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
473e78:	75 53                	jne    0x473ecd
473e7a:	dd 45 10             	fldl   0x10(%ebp)
473e7d:	51                   	push   %ecx
473e7e:	51                   	push   %ecx
473e7f:	dd 1c 24             	fstpl  (%esp)
473e82:	e8 b5 fe ff ff       	call   0x473d3c
473e87:	d9 ee                	fldz
473e89:	dd 45 10             	fldl   0x10(%ebp)
473e8c:	59                   	pop    %ecx
473e8d:	59                   	pop    %ecx
473e8e:	d8 d1                	fcom   %st(1)
473e90:	8b c8                	mov    %eax,%ecx
473e92:	df e0                	fnstsw %ax
473e94:	f6 c4 41             	test   $0x41,%ah
473e97:	75 13                	jne    0x473eac
473e99:	dd d9                	fstp   %st(1)
473e9b:	dd d8                	fstp   %st(0)
473e9d:	dd 05 d0 e0 49 00    	fldl   0x49e0d0
473ea3:	83 f9 01             	cmp    $0x1,%ecx
473ea6:	75 20                	jne    0x473ec8
473ea8:	d9 e0                	fchs
473eaa:	eb 1c                	jmp    0x473ec8
473eac:	d8 d9                	fcomp  %st(1)
473eae:	df e0                	fnstsw %ax
473eb0:	f6 c4 05             	test   $0x5,%ah
473eb3:	7a 0f                	jp     0x473ec4
473eb5:	83 f9 01             	cmp    $0x1,%ecx
473eb8:	75 0e                	jne    0x473ec8
473eba:	dd d8                	fstp   %st(0)
473ebc:	dd 05 f0 e0 49 00    	fldl   0x49e0f0
473ec2:	eb 04                	jmp    0x473ec8
473ec4:	dd d8                	fstp   %st(0)
473ec6:	d9 e8                	fld1
473ec8:	8b 45 18             	mov    0x18(%ebp),%eax
473ecb:	dd 18                	fstpl  (%eax)
473ecd:	33 c0                	xor    %eax,%eax
473ecf:	5d                   	pop    %ebp
473ed0:	c3                   	ret
473ed1:	8b ff                	mov    %edi,%edi
473ed3:	55                   	push   %ebp
473ed4:	8b ec                	mov    %esp,%ebp
473ed6:	51                   	push   %ecx
473ed7:	51                   	push   %ecx
473ed8:	d9 ee                	fldz
473eda:	8b 45 08             	mov    0x8(%ebp),%eax
473edd:	dd 5d f8             	fstpl  -0x8(%ebp)
473ee0:	89 45 f8             	mov    %eax,-0x8(%ebp)
473ee3:	8b 45 0c             	mov    0xc(%ebp),%eax
473ee6:	8b c8                	mov    %eax,%ecx
473ee8:	f7 d1                	not    %ecx
473eea:	33 c8                	xor    %eax,%ecx
473eec:	f7 d0                	not    %eax
473eee:	81 e1 ff ff ff 7f    	and    $0x7fffffff,%ecx
473ef4:	33 c8                	xor    %eax,%ecx
473ef6:	89 4d fc             	mov    %ecx,-0x4(%ebp)