47348b:	57                   	push   %edi
47348c:	bf 00 00 00 00       	mov    $0x0,%edi
473491:	f2 0f 58 e0          	addsd  %xmm0,%xmm4
473495:	f2 0f 10 c3          	movsd  %xmm3,%xmm0
473499:	f2 0f 58 1d 20 df 49 	addsd  0x49df20,%xmm3
4734a0:	00
4734a1:	8b f2                	mov    %edx,%esi
4734a3:	81 ee 80 ff 01 00    	sub    $0x1ff80,%esi
4734a9:	66 0f 59 d7          	mulpd  %xmm7,%xmm2
4734ad:	f2 0f 5c 1d 20 df 49 	subsd  0x49df20,%xmm3
4734b4:	00
4734b5:	66 0f 59 ff          	mulpd  %xmm7,%xmm7
4734b9:	f2 0f 5c c3          	subsd  %xmm3,%xmm0
4734bd:	03 c0                	add    %eax,%eax
4734bf:	03 c0                	add    %eax,%eax
4734c1:	03 c0                	add    %eax,%eax
4734c3:	03 c0                	add    %eax,%eax
4734c5:	66 0f 28 98 60 2d 4a 	movapd 0x4a2d60(%eax),%xmm3
4734cc:	00
4734cd:	66 0f 28 35 60 df 49 	movapd 0x49df60,%xmm6
4734d4:	00
4734d5:	66 0f 59 cf          	mulpd  %xmm7,%xmm1
4734d9:	66 0f 58 d1          	addpd  %xmm1,%xmm2
4734dd:	66 0f 70 ca ee       	pshufd $0xee,%xmm2,%xmm1
4734e2:	f2 0f 59 d7          	mulsd  %xmm7,%xmm2
4734e6:	f2 0f 58 d1          	addsd  %xmm1,%xmm2
4734ea:	f2 0f 58 d4          	addsd  %xmm4,%xmm2
4734ee:	66 0f 12 25 80 df 49 	movlpd 0x49df80,%xmm4
4734f5:	00
4734f6:	66 0f 6e ca          	movd   %edx,%xmm1
4734fa:	81 ea 80 ff 01 00    	sub    $0x1ff80,%edx
473500:	f7 da                	neg    %edx
473502:	c1 fa 07             	sar    $0x7,%edx
473505:	83 c2 02             	add    $0x2,%edx
473508:	8b c2                	mov    %edx,%eax
47350a:	83 e0 20             	and    $0x20,%eax
47350d:	03 d0                	add    %eax,%edx
47350f:	66 0f 57 ff          	xorpd  %xmm7,%xmm7
473513:	b8 80 3f 00 00       	mov    $0x3f80,%eax
473518:	66 0f c4 f8 03       	pinsrw $0x3,%eax,%xmm7
47351d:	f2 0f 59 54 24 14    	mulsd  0x14(%esp),%xmm2
473523:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
473527:	66 0f 73 f1 2d       	psllq  $0x2d,%xmm1
47352c:	66 0f 70 c9 44       	pshufd $0x44,%xmm1,%xmm1
473531:	66 0f 28 3d 70 df 49 	movapd 0x49df70,%xmm7
473538:	00
473539:	f2 0f 58 ea          	addsd  %xmm2,%xmm5
47353d:	66 0f 59 d9          	mulpd  %xmm1,%xmm3
473541:	f2 0f 58 c5          	addsd  %xmm5,%xmm0
473545:	66 0f 14 c0          	unpcklpd %xmm0,%xmm0
473549:	66 0f 59 f0          	mulpd  %xmm0,%xmm6
47354d:	f2 0f 59 e0          	mulsd  %xmm0,%xmm4
473551:	66 0f 59 c0          	mulpd  %xmm0,%xmm0
473555:	66 0f 58 fe          	addpd  %xmm6,%xmm7
473559:	66 0f 59 f8          	mulpd  %xmm0,%xmm7
47355d:	f2 0f 59 c3          	mulsd  %xmm3,%xmm0
473561:	66 0f 70 f7 ee       	pshufd $0xee,%xmm7,%xmm6
473566:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
47356a:	66 0f 70 eb ee       	pshufd $0xee,%xmm3,%xmm5
47356f:	f2 0f 59 f3          	mulsd  %xmm3,%xmm6
473573:	f2 0f 59 e3          	mulsd  %xmm3,%xmm4
473577:	66 0f 6e f9          	movd   %ecx,%xmm7
47357b:	66 0f 73 f7 2d       	psllq  $0x2d,%xmm7
473580:	66 0f 6e d2          	movd   %edx,%xmm2
473584:	66 0f 76 c9          	pcmpeqd %xmm1,%xmm1
473588:	66 0f f3 ca          	psllq  %xmm2,%xmm1
47358c:	f2 0f 58 c5          	addsd  %xmm5,%xmm0
473590:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
473594:	66 0f 54 cb          	andpd  %xmm3,%xmm1
473598:	f2 0f 58 c4          	addsd  %xmm4,%xmm0
47359c:	66 0f 57 f6          	xorpd  %xmm6,%xmm6
4735a0:	66 0f 76 e4          	pcmpeqd %xmm4,%xmm4
4735a4:	66 0f f3 e2          	psllq  %xmm2,%xmm4
4735a8:	f2 0f 5c d9          	subsd  %xmm1,%xmm3
4735ac:	f2 0f 10 d1          	movsd  %xmm1,%xmm2
4735b0:	f2 0f 58 c8          	addsd  %xmm0,%xmm1
4735b4:	66 0f 54 cc          	andpd  %xmm4,%xmm1
4735b8:	66 0f c4 f7 03       	pinsrw $0x3,%edi,%xmm6
4735bd:	5f                   	pop    %edi
4735be:	f2 0f 5c d1          	subsd  %xmm1,%xmm2
4735c2:	f2 0f 58 c2          	addsd  %xmm2,%xmm0
4735c6:	f2 0f 58 c3          	addsd  %xmm3,%xmm0
4735ca:	83 fe 00             	cmp    $0x0,%esi
4735cd:	7f 4e                	jg     0x47361d
4735cf:	5e                   	pop    %esi
4735d0:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
4735d4:	f2 0f 59 cf          	mulsd  %xmm7,%xmm1
4735d8:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
4735dc:	f2 0f 59 f0          	mulsd  %xmm0,%xmm6
4735e0:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
4735e4:	66 0f c5 c0 03       	pextrw $0x3,%xmm0,%eax
4735e9:	25 f0 7f 00 00       	and    $0x7ff0,%eax
4735ee:	ba 18 00 00 00       	mov    $0x18,%edx
4735f3:	3d f0 7f 00 00       	cmp    $0x7ff0,%eax
4735f8:	0f 84 10 fe ff ff    	je     0x47340e
4735fe:	ba 19 00 00 00       	mov    $0x19,%edx
473603:	83 f8 00             	cmp    $0x0,%eax
473606:	0f 84 02 fe ff ff    	je     0x47340e
47360c:	83 ec 10             	sub    $0x10,%esp
47360f:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
473615:	dd 44 24 04          	fldl   0x4(%esp)
473619:	83 c4 10             	add    $0x10,%esp
47361c:	c3                   	ret
47361d:	5e                   	pop    %esi
47361e:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
473622:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
473626:	f2 0f 59 f0          	mulsd  %xmm0,%xmm6
47362a:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
47362e:	66 0f c5 c0 03       	pextrw $0x3,%xmm0,%eax
473633:	25 f0 7f 00 00       	and    $0x7ff0,%eax
473638:	ba 18 00 00 00       	mov    $0x18,%edx
47363d:	3d f0 7f 00 00       	cmp    $0x7ff0,%eax
473642:	0f 84 c6 fd ff ff    	je     0x47340e
473648:	ba 19 00 00 00       	mov    $0x19,%edx
47364d:	83 f8 00             	cmp    $0x0,%eax
473650:	0f 84 b8 fd ff ff    	je     0x47340e
473656:	83 ec 10             	sub    $0x10,%esp
473659:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
47365f:	dd 44 24 04          	fldl   0x4(%esp)
473663:	83 c4 10             	add    $0x10,%esp
473666:	c3                   	ret
473667:	66 0f 12 05 c8 df 49 	movlpd 0x49dfc8,%xmm0
47366e:	00
47366f:	66 0f 6e c9          	movd   %ecx,%xmm1
473673:	f2 0f 59 c0          	mulsd  %xmm0,%xmm0
473677:	66 0f 73 f1 2d       	psllq  $0x2d,%xmm1
47367c:	66 0f 56 c1          	orpd   %xmm1,%xmm0
473680:	ba 19 00 00 00       	mov    $0x19,%edx
473685:	e9 84 fd ff ff       	jmp    0x47340e
47368a:	ba 18 00 00 00       	mov    $0x18,%edx
47368f:	83 f9 00             	cmp    $0x0,%ecx
473692:	74 15                	je     0x4736a9
473694:	66 0f 12 05 b8 df 49 	movlpd 0x49dfb8,%xmm0
47369b:	00
47369c:	f2 0f 59 05 c0 df 49 	mulsd  0x49dfc0,%xmm0
4736a3:	00
4736a4:	e9 65 fd ff ff       	jmp    0x47340e
4736a9:	66 0f 12 05 c0 df 49 	movlpd 0x49dfc0,%xmm0
4736b0:	00
4736b1:	f2 0f 59 c0          	mulsd  %xmm0,%xmm0
4736b5:	e9 54 fd ff ff       	jmp    0x47340e
4736ba:	66 0f 70 e1 44       	pshufd $0x44,%xmm1,%xmm4
4736bf:	66 0f 59 e6          	mulpd  %xmm6,%xmm4
4736c3:	66 0f c5 c4 03       	pextrw $0x3,%xmm4,%eax
4736c8:	25 f0 7f 00 00       	and    $0x7ff0,%eax
4736cd:	ba a0 40 00 00       	mov    $0x40a0,%edx
4736d2:	2b d0                	sub    %eax,%edx
4736d4:	2d 70 3c 00 00       	sub    $0x3c70,%eax
4736d9:	0b d0                	or     %eax,%edx
4736db:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
4736e1:	0f 82 21 f7 ff ff    	jb     0x472e08
4736e7:	3d 00 00 00 80       	cmp    $0x80000000,%eax
4736ec:	72 20                	jb     0x47370e
4736ee:	81 c9 80 ff 01 00    	or     $0x1ff80,%ecx
4736f4:	66 0f 6e c1          	movd   %ecx,%xmm0
4736f8:	66 0f 73 f0 2d       	psllq  $0x2d,%xmm0
4736fd:	83 ec 10             	sub    $0x10,%esp
473700:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
473706:	dd 44 24 04          	fldl   0x4(%esp)
47370a:	83 c4 10             	add    $0x10,%esp
47370d:	c3                   	ret
47370e:	66 0f 12 64 24 04    	movlpd 0x4(%esp),%xmm4
473714:	66 0f c5 d4 03       	pextrw $0x3,%xmm4,%edx
473719:	81 e2 f0 7f 00 00    	and    $0x7ff0,%edx
47371f:	81 ea f0 3f 00 00    	sub    $0x3ff0,%edx
473725:	66 0f c5 c1 03       	pextrw $0x3,%xmm1,%eax
47372a:	33 c2                	xor    %edx,%eax
47372c:	25 00 80 00 00       	and    $0x8000,%eax
473731:	83 f8 00             	cmp    $0x0,%eax
473734:	0f 85 2d ff ff ff    	jne    0x473667
47373a:	e9 4b ff ff ff       	jmp    0x47368a
47373f:	90                   	nop
473740:	c6 85 70 ff ff ff fe 	movb   $0xfe,-0x90(%ebp)
473747:	0a ed                	or     %ch,%ch
473749:	75 3b                	jne    0x473786
47374b:	d9 c9                	fxch   %st(1)
47374d:	d9 f1                	fyl2x
47374f:	eb 0d                	jmp    0x47375e
473751:	c6 85 70 ff ff ff fe 	movb   $0xfe,-0x90(%ebp)
473758:	32 ed                	xor    %ch,%ch
47375a:	d9 ea                	fldl2e
47375c:	de c9                	fmulp  %st,%st(1)
47375e:	e8 2b 01 00 00       	call   0x47388e
473763:	d9 e8                	fld1
473765:	de c1                	faddp  %st,%st(1)
473767:	f6 85 61 ff ff ff 01 	testb  $0x1,-0x9f(%ebp)
47376e:	74 04                	je     0x473774
473770:	d9 e8                	fld1
473772:	de f1                	fdivp  %st,%st(1)
473774:	f6 c2 40             	test   $0x40,%dl
473777:	75 02                	jne    0x47377b
473779:	d9 fd                	fscale
47377b:	0a ed                	or     %ch,%ch
47377d:	74 02                	je     0x473781
47377f:	d9 e0                	fchs
473781:	e9 b2 02 00 00       	jmp    0x473a38
473786:	e8 46 01 00 00       	call   0x4738d1
47378b:	0b c0                	or     %eax,%eax
47378d:	74 14                	je     0x4737a3
47378f:	32 ed                	xor    %ch,%ch
473791:	83 f8 02             	cmp    $0x2,%eax
473794:	74 02                	je     0x473798
473796:	f6 d5                	not    %ch
473798:	d9 c9                	fxch   %st(1)
47379a:	d9 e1                	fabs
47379c:	eb af                	jmp    0x47374d
47379e:	e9 b5 02 00 00       	jmp    0x473a58
4737a3:	e9 4b 03 00 00       	jmp    0x473af3
4737a8:	dd d8                	fstp   %st(0)
4737aa:	dd d8                	fstp   %st(0)
4737ac:	db 2d e0 df 49 00    	fldt   0x49dfe0
4737b2:	c6 85 70 ff ff ff 02 	movb   $0x2,-0x90(%ebp)
4737b9:	c3                   	ret
4737ba:	d9 ed                	fldln2
4737bc:	d9 c9                	fxch   %st(1)
4737be:	d9 e4                	ftst
4737c0:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
4737c7:	9b                   	fwait
4737c8:	f6 85 61 ff ff ff 41 	testb  $0x41,-0x9f(%ebp)
4737cf:	75 d2                	jne    0x4737a3
4737d1:	d9 f1                	fyl2x
4737d3:	c3                   	ret
4737d4:	c6 85 70 ff ff ff 02 	movb   $0x2,-0x90(%ebp)
4737db:	dd d8                	fstp   %st(0)
4737dd:	db 2d ea df 49 00    	fldt   0x49dfea
4737e3:	c3                   	ret
4737e4:	0a c9                	or     %cl,%cl
4737e6:	75 53                	jne    0x47383b
4737e8:	c3                   	ret
4737e9:	d9 ec                	fldlg2
4737eb:	eb 02                	jmp    0x4737ef
4737ed:	d9 ed                	fldln2
4737ef:	d9 c9                	fxch   %st(1)
4737f1:	0a c9                	or     %cl,%cl
4737f3:	75 ae                	jne    0x4737a3
4737f5:	d9 f1                	fyl2x
4737f7:	c3                   	ret
4737f8:	e9 5b 02 00 00       	jmp    0x473a58
4737fd:	e8 cf 00 00 00       	call   0x4738d1
473802:	dd d8                	fstp   %st(0)
473804:	dd d8                	fstp   %st(0)
473806:	0a c9                	or     %cl,%cl
473808:	75 0e                	jne    0x473818
47380a:	d9 ee                	fldz
47380c:	83 f8 01             	cmp    $0x1,%eax
47380f:	75 06                	jne    0x473817
473811:	0a ed                	or     %ch,%ch
473813:	74 02                	je     0x473817
473815:	d9 e0                	fchs
473817:	c3                   	ret
473818:	c6 85 70 ff ff ff 02 	movb   $0x2,-0x90(%ebp)
47381f:	db 2d e0 df 49 00    	fldt   0x49dfe0
473825:	83 f8 01             	cmp    $0x1,%eax
473828:	75 ed                	jne    0x473817
47382a:	0a ed                	or     %ch,%ch
47382c:	74 e9                	je     0x473817
47382e:	d9 e0                	fchs
473830:	eb e5                	jmp    0x473817
473832:	dd d8                	fstp   %st(0)
473834:	e9 0d 02 00 00       	jmp    0x473a46
473839:	dd d8                	fstp   %st(0)
47383b:	e9 b5 02 00 00       	jmp    0x473af5
473840:	58                   	pop    %eax
473841:	d9 e4                	ftst
473843:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
47384a:	9b                   	fwait
47384b:	f6 85 61 ff ff ff 01 	testb  $0x1,-0x9f(%ebp)
473852:	75 0f                	jne    0x473863
473854:	dd d8                	fstp   %st(0)
473856:	db 2d e0 df 49 00    	fldt   0x49dfe0
47385c:	0a ed                	or     %ch,%ch
47385e:	74 02                	je     0x473862
473860:	d9 e0                	fchs
473862:	c3                   	ret
473863:	c6 85 70 ff ff ff 04 	movb   $0x4,-0x90(%ebp)
47386a:	e9 d7 01 00 00       	jmp    0x473a46
47386f:	dd d8                	fstp   %st(0)
473871:	dd d8                	fstp   %st(0)
473873:	db 2d e0 df 49 00    	fldt   0x49dfe0
473879:	c6 85 70 ff ff ff 03 	movb   $0x3,-0x90(%ebp)
473880:	c3                   	ret
473881:	0a c9                	or     %cl,%cl
473883:	75 af                	jne    0x473834
473885:	dd d8                	fstp   %st(0)
473887:	db 2d e0 df 49 00    	fldt   0x49dfe0
47388d:	c3                   	ret
47388e:	d9 c0                	fld    %st(0)
473890:	d9 e1                	fabs
473892:	db 2d fe df 49 00    	fldt   0x49dffe
473898:	de d9                	fcompp
47389a:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
4738a1:	9b                   	fwait
4738a2:	f6 85 61 ff ff ff 41 	testb  $0x41,-0x9f(%ebp)
4738a9:	75 95                	jne    0x473840
4738ab:	d9 c0                	fld    %st(0)
4738ad:	d9 fc                	frndint
4738af:	d9 e4                	ftst
4738b1:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
4738b8:	9b                   	fwait
4738b9:	8a 95 61 ff ff ff    	mov    -0x9f(%ebp),%dl
4738bf:	d9 c9                	fxch   %st(1)
4738c1:	d8 e1                	fsub   %st(1),%st
4738c3:	d9 e4                	ftst
4738c5:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
4738cc:	d9 e1                	fabs
4738ce:	d9 f0                	f2xm1
4738d0:	c3                   	ret
4738d1:	d9 c0                	fld    %st(0)
4738d3:	d9 fc                	frndint
4738d5:	d8 d9                	fcomp  %st(1)
4738d7:	9b df e0             	fstsw  %ax
4738da:	9e                   	sahf
4738db:	75 1a                	jne    0x4738f7
4738dd:	d9 c0                	fld    %st(0)
4738df:	dc 0d 12 e0 49 00    	fmull  0x49e012
4738e5:	d9 c0                	fld    %st(0)
4738e7:	d9 fc                	frndint
4738e9:	de d9                	fcompp
4738eb:	9b df e0             	fstsw  %ax
4738ee:	9e                   	sahf
4738ef:	74 0d                	je     0x4738fe
4738f1:	b8 01 00 00 00       	mov    $0x1,%eax
4738f6:	c3                   	ret
4738f7:	b8 00 00 00 00       	mov    $0x0,%eax
4738fc:	eb f8                	jmp    0x4738f6
4738fe:	b8 02 00 00 00       	mov    $0x2,%eax
473903:	eb f1                	jmp    0x4738f6
473905:	56                   	push   %esi
473906:	83 ec 74             	sub    $0x74,%esp
473909:	8b f4                	mov    %esp,%esi
47390b:	56                   	push   %esi
47390c:	83 ec 08             	sub    $0x8,%esp
47390f:	dd 1c 24             	fstpl  (%esp)
473912:	83 ec 08             	sub    $0x8,%esp
473915:	dd 1c 24             	fstpl  (%esp)
473918:	9b dd 76 08          	fsave  0x8(%esi)
47391c:	e8 85 04 00 00       	call   0x473da6
473921:	83 c4 14             	add    $0x14,%esp
473924:	dd 66 08             	frstor 0x8(%esi)
473927:	dd 06                	fldl   (%esi)
473929:	83 c4 74             	add    $0x74,%esp
47392c:	5e                   	pop    %esi
47392d:	85 c0                	test   %eax,%eax
47392f:	74 05                	je     0x473936
473931:	e9 d0 01 00 00       	jmp    0x473b06
473936:	c3                   	ret
473937:	cc                   	int3
473938:	cc                   	int3
473939:	cc                   	int3
47393a:	cc                   	int3