431654:	dc e1                	fsub   %st,%st(1)
431656:	d9 c9                	fxch   %st(1)
431658:	d9 e0                	fchs
43165a:	d9 f0                	f2xm1
43165c:	d9 e8                	fld1
43165e:	de c1                	faddp  %st,%st(1)
431660:	d9 fd                	fscale
431662:	dd d9                	fstp   %st(1)
431664:	c3                   	ret
431665:	8b 54 24 04          	mov    0x4(%esp),%edx
431669:	81 e2 00 03 00 00    	and    $0x300,%edx
43166f:	83 ca 7f             	or     $0x7f,%edx
431672:	66 89 54 24 06       	mov    %dx,0x6(%esp)
431677:	d9 6c 24 06          	fldcw  0x6(%esp)
43167b:	c3                   	ret
43167c:	a9 00 00 08 00       	test   $0x80000,%eax
431681:	74 06                	je     0x431689
431683:	b8 00 00 00 00       	mov    $0x0,%eax
431688:	c3                   	ret
431689:	dc 05 50 2a 44 00    	faddl  0x442a50
43168f:	b8 00 00 00 00       	mov    $0x0,%eax
431694:	c3                   	ret
431695:	8b 42 04             	mov    0x4(%edx),%eax
431698:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
43169d:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
4316a2:	74 03                	je     0x4316a7
4316a4:	dd 02                	fldl   (%edx)
4316a6:	c3                   	ret
4316a7:	8b 42 04             	mov    0x4(%edx),%eax
4316aa:	83 ec 0a             	sub    $0xa,%esp
4316ad:	0d 00 00 ff 7f       	or     $0x7fff0000,%eax
4316b2:	89 44 24 06          	mov    %eax,0x6(%esp)
4316b6:	8b 42 04             	mov    0x4(%edx),%eax
4316b9:	8b 0a                	mov    (%edx),%ecx
4316bb:	0f a4 c8 0b          	shld   $0xb,%ecx,%eax
4316bf:	c1 e1 0b             	shl    $0xb,%ecx
4316c2:	89 44 24 04          	mov    %eax,0x4(%esp)
4316c6:	89 0c 24             	mov    %ecx,(%esp)
4316c9:	db 2c 24             	fldt   (%esp)
4316cc:	83 c4 0a             	add    $0xa,%esp
4316cf:	a9 00 00 00 00       	test   $0x0,%eax
4316d4:	8b 42 04             	mov    0x4(%edx),%eax
4316d7:	c3                   	ret
4316d8:	8b 44 24 08          	mov    0x8(%esp),%eax
4316dc:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
4316e1:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
4316e6:	74 01                	je     0x4316e9
4316e8:	c3                   	ret
4316e9:	8b 44 24 08          	mov    0x8(%esp),%eax
4316ed:	c3                   	ret
4316ee:	66 81 3c 24 7f 02    	cmpw   $0x27f,(%esp)
4316f4:	74 03                	je     0x4316f9
4316f6:	d9 2c 24             	fldcw  (%esp)
4316f9:	5a                   	pop    %edx
4316fa:	c3                   	ret
4316fb:	66 8b 04 24          	mov    (%esp),%ax
4316ff:	66 3d 7f 02          	cmp    $0x27f,%ax
431703:	74 1e                	je     0x431723
431705:	66 83 e0 20          	and    $0x20,%ax
431709:	74 15                	je     0x431720
43170b:	9b df e0             	fstsw  %ax
43170e:	66 83 e0 20          	and    $0x20,%ax
431712:	74 0c                	je     0x431720
431714:	b8 08 00 00 00       	mov    $0x8,%eax
431719:	e8 e9 fe ff ff       	call   0x431607
43171e:	5a                   	pop    %edx
43171f:	c3                   	ret
431720:	d9 2c 24             	fldcw  (%esp)
431723:	5a                   	pop    %edx
431724:	c3                   	ret
431725:	83 ec 08             	sub    $0x8,%esp
431728:	dd 14 24             	fstl   (%esp)
43172b:	8b 44 24 04          	mov    0x4(%esp),%eax
43172f:	83 c4 08             	add    $0x8,%esp
431732:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
431737:	eb 14                	jmp    0x43174d
431739:	83 ec 08             	sub    $0x8,%esp
43173c:	dd 14 24             	fstl   (%esp)
43173f:	8b 44 24 04          	mov    0x4(%esp),%eax
431743:	83 c4 08             	add    $0x8,%esp
431746:	25 00 00 f0 7f       	and    $0x7ff00000,%eax
43174b:	74 3d                	je     0x43178a
43174d:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
431752:	74 5f                	je     0x4317b3
431754:	66 8b 04 24          	mov    (%esp),%ax
431758:	66 3d 7f 02          	cmp    $0x27f,%ax
43175c:	74 2a                	je     0x431788
43175e:	66 83 e0 20          	and    $0x20,%ax
431762:	75 21                	jne    0x431785
431764:	9b df e0             	fstsw  %ax
431767:	66 83 e0 20          	and    $0x20,%ax
43176b:	74 18                	je     0x431785
43176d:	b8 08 00 00 00       	mov    $0x8,%eax
431772:	83 fa 1d             	cmp    $0x1d,%edx
431775:	74 07                	je     0x43177e
431777:	e8 8b fe ff ff       	call   0x431607
43177c:	5a                   	pop    %edx
43177d:	c3                   	ret
43177e:	e8 6d fe ff ff       	call   0x4315f0
431783:	5a                   	pop    %edx
431784:	c3                   	ret
431785:	d9 2c 24             	fldcw  (%esp)
431788:	5a                   	pop    %edx
431789:	c3                   	ret
43178a:	dd 05 7c 2a 44 00    	fldl   0x442a7c
431790:	d9 c9                	fxch   %st(1)
431792:	d9 fd                	fscale
431794:	dd d9                	fstp   %st(1)
431796:	d9 c0                	fld    %st(0)
431798:	d9 e1                	fabs
43179a:	dc 1d 6c 2a 44 00    	fcompl 0x442a6c
4317a0:	9b df e0             	fstsw  %ax
4317a3:	9e                   	sahf
4317a4:	b8 04 00 00 00       	mov    $0x4,%eax
4317a9:	73 c7                	jae    0x431772
4317ab:	dc 0d 8c 2a 44 00    	fmull  0x442a8c
4317b1:	eb bf                	jmp    0x431772
4317b3:	dd 05 74 2a 44 00    	fldl   0x442a74
4317b9:	d9 c9                	fxch   %st(1)
4317bb:	d9 fd                	fscale
4317bd:	dd d9                	fstp   %st(1)
4317bf:	d9 c0                	fld    %st(0)
4317c1:	d9 e1                	fabs
4317c3:	dc 1d 64 2a 44 00    	fcompl 0x442a64
4317c9:	9b df e0             	fstsw  %ax
4317cc:	9e                   	sahf
4317cd:	b8 03 00 00 00       	mov    $0x3,%eax
4317d2:	76 9e                	jbe    0x431772
4317d4:	dc 0d 84 2a 44 00    	fmull  0x442a84
4317da:	eb 96                	jmp    0x431772
4317dc:	8b ff                	mov    %edi,%edi
4317de:	55                   	push   %ebp
4317df:	8b ec                	mov    %esp,%ebp
4317e1:	51                   	push   %ecx
4317e2:	51                   	push   %ecx
4317e3:	dd 45 08             	fldl   0x8(%ebp)
4317e6:	51                   	push   %ecx
4317e7:	51                   	push   %ecx
4317e8:	dd 1c 24             	fstpl  (%esp)
4317eb:	e8 8b cd ff ff       	call   0x42e57b
4317f0:	59                   	pop    %ecx
4317f1:	59                   	pop    %ecx
4317f2:	a8 90                	test   $0x90,%al
4317f4:	75 4a                	jne    0x431840
4317f6:	dd 45 08             	fldl   0x8(%ebp)
4317f9:	51                   	push   %ecx
4317fa:	51                   	push   %ecx
4317fb:	dd 1c 24             	fstpl  (%esp)
4317fe:	e8 72 75 00 00       	call   0x438d75
431803:	dd 45 08             	fldl   0x8(%ebp)
431806:	dd e1                	fucom  %st(1)
431808:	df e0                	fnstsw %ax
43180a:	59                   	pop    %ecx
43180b:	59                   	pop    %ecx
43180c:	dd d9                	fstp   %st(1)
43180e:	f6 c4 44             	test   $0x44,%ah
431811:	7a 2b                	jp     0x43183e
431813:	dc 0d 98 2a 44 00    	fmull  0x442a98
431819:	51                   	push   %ecx
43181a:	51                   	push   %ecx
43181b:	dd 55 f8             	fstl   -0x8(%ebp)
43181e:	dd 1c 24             	fstpl  (%esp)
431821:	e8 4f 75 00 00       	call   0x438d75
431826:	dd 45 f8             	fldl   -0x8(%ebp)
431829:	da e9                	fucompp
43182b:	df e0                	fnstsw %ax
43182d:	59                   	pop    %ecx
43182e:	59                   	pop    %ecx
43182f:	f6 c4 44             	test   $0x44,%ah
431832:	7a 05                	jp     0x431839
431834:	6a 02                	push   $0x2
431836:	58                   	pop    %eax
431837:	c9                   	leave
431838:	c3                   	ret
431839:	33 c0                	xor    %eax,%eax
43183b:	40                   	inc    %eax
43183c:	c9                   	leave
43183d:	c3                   	ret
43183e:	dd d8                	fstp   %st(0)
431840:	33 c0                	xor    %eax,%eax
431842:	c9                   	leave
431843:	c3                   	ret
431844:	8b ff                	mov    %edi,%edi
431846:	55                   	push   %ebp
431847:	8b ec                	mov    %esp,%ebp
431849:	dd 45 08             	fldl   0x8(%ebp)
43184c:	b9 00 00 f0 7f       	mov    $0x7ff00000,%ecx
431851:	d9 e1                	fabs
431853:	b8 00 00 f0 ff       	mov    $0xfff00000,%eax
431858:	39 4d 14             	cmp    %ecx,0x14(%ebp)
43185b:	75 3b                	jne    0x431898
43185d:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
431861:	75 75                	jne    0x4318d8
431863:	d9 e8                	fld1
431865:	d8 d1                	fcom   %st(1)
431867:	df e0                	fnstsw %ax
431869:	f6 c4 05             	test   $0x5,%ah
43186c:	7a 0f                	jp     0x43187d
43186e:	dd d9                	fstp   %st(1)
431870:	dd d8                	fstp   %st(0)
431872:	dd 05 98 26 44 00    	fldl   0x442698
431878:	e9 e9 00 00 00       	jmp    0x431966
43187d:	d8 d1                	fcom   %st(1)
43187f:	df e0                	fnstsw %ax
431881:	dd d9                	fstp   %st(1)
431883:	f6 c4 41             	test   $0x41,%ah
431886:	8b 45 18             	mov    0x18(%ebp),%eax
431889:	0f 85 da 00 00 00    	jne    0x431969
43188f:	dd d8                	fstp   %st(0)
431891:	d9 ee                	fldz
431893:	e9 d1 00 00 00       	jmp    0x431969
431898:	39 45 14             	cmp    %eax,0x14(%ebp)
43189b:	75 3b                	jne    0x4318d8
43189d:	83 7d 10 00          	cmpl   $0x0,0x10(%ebp)
4318a1:	75 35                	jne    0x4318d8
4318a3:	d9 e8                	fld1
4318a5:	d8 d1                	fcom   %st(1)
4318a7:	df e0                	fnstsw %ax
4318a9:	f6 c4 05             	test   $0x5,%ah
4318ac:	7a 0b                	jp     0x4318b9
4318ae:	dd d9                	fstp   %st(1)
4318b0:	dd d8                	fstp   %st(0)
4318b2:	d9 ee                	fldz
4318b4:	e9 ad 00 00 00       	jmp    0x431966
4318b9:	d8 d1                	fcom   %st(1)
4318bb:	df e0                	fnstsw %ax
4318bd:	dd d9                	fstp   %st(1)
4318bf:	f6 c4 41             	test   $0x41,%ah
4318c2:	8b 45 18             	mov    0x18(%ebp),%eax
4318c5:	0f 85 9e 00 00 00    	jne    0x431969
4318cb:	dd d8                	fstp   %st(0)
4318cd:	dd 05 98 26 44 00    	fldl   0x442698
4318d3:	e9 91 00 00 00       	jmp    0x431969
4318d8:	dd d8                	fstp   %st(0)
4318da:	39 4d 0c             	cmp    %ecx,0xc(%ebp)
4318dd:	75 2e                	jne    0x43190d
4318df:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
4318e3:	0f 85 82 00 00 00    	jne    0x43196b
4318e9:	d9 ee                	fldz
4318eb:	dd 45 10             	fldl   0x10(%ebp)
4318ee:	d8 d1                	fcom   %st(1)
4318f0:	df e0                	fnstsw %ax
4318f2:	f6 c4 41             	test   $0x41,%ah
4318f5:	0f 84 73 ff ff ff    	je     0x43186e
4318fb:	d8 d9                	fcomp  %st(1)
4318fd:	df e0                	fnstsw %ax
4318ff:	f6 c4 05             	test   $0x5,%ah
431902:	8b 45 18             	mov    0x18(%ebp),%eax
431905:	7b 62                	jnp    0x431969
431907:	dd d8                	fstp   %st(0)
431909:	d9 e8                	fld1
43190b:	eb 5c                	jmp    0x431969
43190d:	39 45 0c             	cmp    %eax,0xc(%ebp)
431910:	75 59                	jne    0x43196b
431912:	83 7d 08 00          	cmpl   $0x0,0x8(%ebp)
431916:	75 53                	jne    0x43196b
431918:	dd 45 10             	fldl   0x10(%ebp)
43191b:	51                   	push   %ecx
43191c:	51                   	push   %ecx
43191d:	dd 1c 24             	fstpl  (%esp)
431920:	e8 b7 fe ff ff       	call   0x4317dc
431925:	d9 ee                	fldz
431927:	dd 45 10             	fldl   0x10(%ebp)
43192a:	59                   	pop    %ecx
43192b:	59                   	pop    %ecx
43192c:	d8 d1                	fcom   %st(1)
43192e:	8b c8                	mov    %eax,%ecx
431930:	df e0                	fnstsw %ax
431932:	f6 c4 41             	test   $0x41,%ah
431935:	75 13                	jne    0x43194a
431937:	dd d9                	fstp   %st(1)
431939:	dd d8                	fstp   %st(0)
43193b:	dd 05 98 26 44 00    	fldl   0x442698
431941:	83 f9 01             	cmp    $0x1,%ecx
431944:	75 20                	jne    0x431966
431946:	d9 e0                	fchs
431948:	eb 1c                	jmp    0x431966
43194a:	d8 d9                	fcomp  %st(1)
43194c:	df e0                	fnstsw %ax
43194e:	f6 c4 05             	test   $0x5,%ah
431951:	7a 0f                	jp     0x431962
431953:	83 f9 01             	cmp    $0x1,%ecx
431956:	75 0e                	jne    0x431966
431958:	dd d8                	fstp   %st(0)
43195a:	dd 05 a8 26 44 00    	fldl   0x4426a8
431960:	eb 04                	jmp    0x431966
431962:	dd d8                	fstp   %st(0)
431964:	d9 e8                	fld1
431966:	8b 45 18             	mov    0x18(%ebp),%eax
431969:	dd 18                	fstpl  (%eax)
43196b:	33 c0                	xor    %eax,%eax
43196d:	5d                   	pop    %ebp
43196e:	c3                   	ret
43196f:	6a 0c                	push   $0xc
431971:	68 90 33 45 00       	push   $0x453390
431976:	e8 95 8f fe ff       	call   0x41a910
43197b:	83 65 e4 00          	andl   $0x0,-0x1c(%ebp)
43197f:	8b 45 08             	mov    0x8(%ebp),%eax
431982:	ff 30                	push   (%eax)
431984:	e8 18 4f ff ff       	call   0x4268a1
431989:	59                   	pop    %ecx
43198a:	83 65 fc 00          	andl   $0x0,-0x4(%ebp)
43198e:	8b 0d 14 50 45 00    	mov    0x455014,%ecx
431994:	83 e1 1f             	and    $0x1f,%ecx
431997:	8b 35 88 71 45 00    	mov    0x457188,%esi
43199d:	33 35 14 50 45 00    	xor    0x455014,%esi
4319a3:	d3 ce                	ror    %cl,%esi
4319a5:	89 75 e4             	mov    %esi,-0x1c(%ebp)
4319a8:	c7 45 fc fe ff ff ff 	movl   $0xfffffffe,-0x4(%ebp)
4319af:	e8 17 00 00 00       	call   0x4319cb
4319b4:	8b c6                	mov    %esi,%eax
4319b6:	8b 4d f0             	mov    -0x10(%ebp),%ecx
4319b9:	64 89 0d 00 00 00 00 	mov    %ecx,%fs:0x0
4319c0:	59                   	pop    %ecx
4319c1:	5f                   	pop    %edi
4319c2:	5e                   	pop    %esi
4319c3:	5b                   	pop    %ebx
4319c4:	c9                   	leave
4319c5:	c2 0c 00             	ret    $0xc
4319c8:	8b 75 e4             	mov    -0x1c(%ebp),%esi
4319cb:	8b 4d 10             	mov    0x10(%ebp),%ecx
4319ce:	ff 31                	push   (%ecx)
4319d0:	e8 1c 4f ff ff       	call   0x4268f1
4319d5:	59                   	pop    %ecx
4319d6:	c3                   	ret
4319d7:	8b ff                	mov    %edi,%edi
4319d9:	55                   	push   %ebp
4319da:	8b ec                	mov    %esp,%ebp
4319dc:	8b 45 08             	mov    0x8(%ebp),%eax
4319df:	48                   	dec    %eax
4319e0:	83 e8 01             	sub    $0x1,%eax
4319e3:	74 2d                	je     0x431a12
4319e5:	83 e8 04             	sub    $0x4,%eax
4319e8:	74 21                	je     0x431a0b
4319ea:	83 e8 09             	sub    $0x9,%eax
4319ed:	74 15                	je     0x431a04
4319ef:	83 e8 06             	sub    $0x6,%eax
4319f2:	74 09                	je     0x4319fd
4319f4:	83 e8 01             	sub    $0x1,%eax
4319f7:	74 12                	je     0x431a0b
4319f9:	33 c0                	xor    %eax,%eax
4319fb:	5d                   	pop    %ebp
4319fc:	c3                   	ret
4319fd:	b8 84 71 45 00       	mov    $0x457184,%eax
431a02:	5d                   	pop    %ebp
431a03:	c3                   	ret
431a04:	b8 8c 71 45 00       	mov    $0x45718c,%eax
431a09:	5d                   	pop    %ebp
431a0a:	c3                   	ret
431a0b:	b8 88 71 45 00       	mov    $0x457188,%eax