49643e:	00
49643f:	f2 0f 59 e1          	mulsd  %xmm1,%xmm4
496443:	f2 0f 2d c3          	cvtsd2si %xmm3,%eax
496447:	f2 0f 59 f1          	mulsd  %xmm1,%xmm6
49644b:	66 0f 28 0d b0 a2 4a 	movapd 0x4aa2b0,%xmm1
496452:	00
496453:	f2 0f 58 ec          	addsd  %xmm4,%xmm5
496457:	66 0f 70 e6 ee       	pshufd $0xee,%xmm6,%xmm4
49645c:	f2 0f 58 ee          	addsd  %xmm6,%xmm5
496460:	ba 7f ff 01 00       	mov    $0x1ff7f,%edx
496465:	2b d0                	sub    %eax,%edx
496467:	05 ff e1 01 00       	add    $0x1e1ff,%eax
49646c:	0b d0                	or     %eax,%edx
49646e:	2d ff e1 01 00       	sub    $0x1e1ff,%eax
496473:	83 fa 00             	cmp    $0x0,%edx
496476:	0f 8e c6 05 00 00    	jle    0x496a42
49647c:	03 c8                	add    %eax,%ecx
49647e:	83 e0 7f             	and    $0x7f,%eax
496481:	83 e1 80             	and    $0xffffff80,%ecx
496484:	81 c1 80 ff 01 00    	add    $0x1ff80,%ecx
49648a:	f2 0f 58 e0          	addsd  %xmm0,%xmm4
49648e:	f2 0f 10 c3          	movsd  %xmm3,%xmm0
496492:	f2 0f 58 1d 00 75 4b 	addsd  0x4b7500,%xmm3
496499:	00
49649a:	66 0f 59 d7          	mulpd  %xmm7,%xmm2
49649e:	f2 0f 5c 1d 00 75 4b 	subsd  0x4b7500,%xmm3
4964a5:	00
4964a6:	66 0f 59 ff          	mulpd  %xmm7,%xmm7
4964aa:	f2 0f 5c c3          	subsd  %xmm3,%xmm0
4964ae:	03 c0                	add    %eax,%eax
4964b0:	03 c0                	add    %eax,%eax
4964b2:	03 c0                	add    %eax,%eax
4964b4:	03 c0                	add    %eax,%eax
4964b6:	66 0f 28 98 c0 a2 4a 	movapd 0x4aa2c0(%eax),%xmm3
4964bd:	00
4964be:	66 0f 28 35 40 75 4b 	movapd 0x4b7540,%xmm6
4964c5:	00
4964c6:	66 0f 59 cf          	mulpd  %xmm7,%xmm1
4964ca:	66 0f 58 d1          	addpd  %xmm1,%xmm2
4964ce:	66 0f 70 ca ee       	pshufd $0xee,%xmm2,%xmm1
4964d3:	f2 0f 59 d7          	mulsd  %xmm7,%xmm2
4964d7:	66 0f 57 ff          	xorpd  %xmm7,%xmm7
4964db:	ba 80 3f 00 00       	mov    $0x3f80,%edx
4964e0:	f2 0f 58 d1          	addsd  %xmm1,%xmm2
4964e4:	66 0f c4 fa 03       	pinsrw $0x3,%edx,%xmm7
4964e9:	f2 0f 58 d4          	addsd  %xmm4,%xmm2
4964ed:	66 0f 12 25 60 75 4b 	movlpd 0x4b7560,%xmm4
4964f4:	00
4964f5:	66 0f 6e c9          	movd   %ecx,%xmm1
4964f9:	f2 0f 59 54 24 08    	mulsd  0x8(%esp),%xmm2
4964ff:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
496503:	66 0f 73 f1 2d       	psllq  $0x2d,%xmm1
496508:	66 0f 70 c9 44       	pshufd $0x44,%xmm1,%xmm1
49650d:	66 0f 28 3d 50 75 4b 	movapd 0x4b7550,%xmm7
496514:	00
496515:	f2 0f 58 ea          	addsd  %xmm2,%xmm5
496519:	66 0f 59 d9          	mulpd  %xmm1,%xmm3
49651d:	f2 0f 58 c5          	addsd  %xmm5,%xmm0
496521:	66 0f 14 c0          	unpcklpd %xmm0,%xmm0
496525:	66 0f 59 f0          	mulpd  %xmm0,%xmm6
496529:	f2 0f 59 e0          	mulsd  %xmm0,%xmm4
49652d:	66 0f 59 c0          	mulpd  %xmm0,%xmm0
496531:	66 0f 58 fe          	addpd  %xmm6,%xmm7
496535:	66 0f 59 f8          	mulpd  %xmm0,%xmm7
496539:	f2 0f 59 c3          	mulsd  %xmm3,%xmm0
49653d:	66 0f 70 f7 ee       	pshufd $0xee,%xmm7,%xmm6
496542:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
496546:	66 0f 70 eb ee       	pshufd $0xee,%xmm3,%xmm5
49654b:	f2 0f 59 f3          	mulsd  %xmm3,%xmm6
49654f:	f2 0f 59 e3          	mulsd  %xmm3,%xmm4
496553:	f2 0f 58 c5          	addsd  %xmm5,%xmm0
496557:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
49655b:	f2 0f 58 c4          	addsd  %xmm4,%xmm0
49655f:	f2 0f 58 c3          	addsd  %xmm3,%xmm0
496563:	83 c4 10             	add    $0x10,%esp
496566:	c3                   	ret
496567:	66 0f 12 4c 24 08    	movlpd 0x8(%esp),%xmm1
49656d:	66 0f 12 1d 30 75 4b 	movlpd 0x4b7530,%xmm3
496574:	00
496575:	66 0f 7e c8          	movd   %xmm1,%eax
496579:	f2 0f 10 d1          	movsd  %xmm1,%xmm2
49657d:	66 0f 54 cb          	andpd  %xmm3,%xmm1
496581:	66 0f 73 d1 20       	psrlq  $0x20,%xmm1
496586:	66 0f 7e c9          	movd   %xmm1,%ecx
49658a:	81 f9 00 00 f0 7f    	cmp    $0x7ff00000,%ecx
496590:	0f 83 d8 00 00 00    	jae    0x49666e
496596:	0b c1                	or     %ecx,%eax
496598:	83 f8 00             	cmp    $0x0,%eax
49659b:	0f 84 1a 04 00 00    	je     0x4969bb
4965a1:	83 fa 00             	cmp    $0x0,%edx
4965a4:	0f 8d 00 01 00 00    	jge    0x4966aa
4965aa:	f7 da                	neg    %edx
4965ac:	81 c2 ef 7f 00 00    	add    $0x7fef,%edx
4965b2:	66 0f 73 f3 34       	psllq  $0x34,%xmm3
4965b7:	66 0f 56 d3          	orpd   %xmm3,%xmm2
4965bb:	b9 f3 03 00 00       	mov    $0x3f3,%ecx
4965c0:	66 0f 6e d9          	movd   %ecx,%xmm3
4965c4:	66 0f 73 d1 14       	psrlq  $0x14,%xmm1
4965c9:	66 0f fa cb          	psubd  %xmm3,%xmm1
4965cd:	66 0f ef db          	pxor   %xmm3,%xmm3
4965d1:	66 0f ee cb          	pmaxsw %xmm3,%xmm1
4965d5:	66 0f f3 d1          	psllq  %xmm1,%xmm2
4965d9:	66 0f 76 d3          	pcmpeqd %xmm3,%xmm2
4965dd:	66 0f d7 c2          	pmovmskb %xmm2,%eax
4965e1:	8b ca                	mov    %edx,%ecx
4965e3:	81 e2 ff 7f 00 00    	and    $0x7fff,%edx
4965e9:	81 fa f0 7f 00 00    	cmp    $0x7ff0,%edx
4965ef:	0f 83 a2 01 00 00    	jae    0x496797
4965f5:	25 ff 00 00 00       	and    $0xff,%eax
4965fa:	3d ff 00 00 00       	cmp    $0xff,%eax
4965ff:	0f 85 9d 02 00 00    	jne    0x4968a2
496605:	66 0f 12 4c 24 08    	movlpd 0x8(%esp),%xmm1
49660b:	66 0f 28 d1          	movapd %xmm1,%xmm2
49660f:	b9 f4 03 00 00       	mov    $0x3f4,%ecx
496614:	66 0f 6e d9          	movd   %ecx,%xmm3
496618:	66 0f 54 0d 30 75 4b 	andpd  0x4b7530,%xmm1
49661f:	00
496620:	66 0f 73 d1 34       	psrlq  $0x34,%xmm1
496625:	66 0f fa cb          	psubd  %xmm3,%xmm1
496629:	66 0f 12 1d 90 75 4b 	movlpd 0x4b7590,%xmm3
496630:	00
496631:	66 0f f3 d1          	psllq  %xmm1,%xmm2
496635:	66 0f 76 d3          	pcmpeqd %xmm3,%xmm2
496639:	66 0f d7 c2          	pmovmskb %xmm2,%eax
49663d:	25 ff 00 00 00       	and    $0xff,%eax
496642:	b9 01 ff 03 00       	mov    $0x3ff01,%ecx
496647:	03 c8                	add    %eax,%ecx
496649:	81 e1 00 00 04 00    	and    $0x40000,%ecx
49664f:	83 fa 10             	cmp    $0x10,%edx
496652:	72 5b                	jb     0x4966af
496654:	ba 7f fe 0b 00       	mov    $0xbfe7f,%edx
496659:	66 0f 12 1d 10 75 4b 	movlpd 0x4b7510,%xmm3
496660:	00
496661:	66 0f 12 15 20 75 4b 	movlpd 0x4b7520,%xmm2
496668:	00
496669:	e9 35 fc ff ff       	jmp    0x4962a3
49666e:	66 0f 12 3c 24       	movlpd (%esp),%xmm7
496673:	66 0f 28 e7          	movapd %xmm7,%xmm4
496677:	66 0f 7e fa          	movd   %xmm7,%edx
49667b:	66 0f 73 d7 20       	psrlq  $0x20,%xmm7
496680:	66 0f 7e f8          	movd   %xmm7,%eax
496684:	8b c8                	mov    %eax,%ecx
496686:	25 ff ff ff 7f       	and    $0x7fffffff,%eax
49668b:	3d 00 00 f0 7f       	cmp    $0x7ff00000,%eax
496690:	0f 82 8f 02 00 00    	jb     0x496925
496696:	0f 87 f4 01 00 00    	ja     0x496890
49669c:	83 fa 00             	cmp    $0x0,%edx
49669f:	0f 87 eb 01 00 00    	ja     0x496890
4966a5:	e9 7b 02 00 00       	jmp    0x496925
4966aa:	b9 00 00 00 00       	mov    $0x0,%ecx
4966af:	66 0f 57 c0          	xorpd  %xmm0,%xmm0
4966b3:	b8 f0 43 00 00       	mov    $0x43f0,%eax
4966b8:	66 0f c4 c0 03       	pinsrw $0x3,%eax,%xmm0
4966bd:	66 0f 12 3d 10 75 4b 	movlpd 0x4b7510,%xmm7
4966c4:	00
4966c5:	66 0f 12 15 20 75 4b 	movlpd 0x4b7520,%xmm2
4966cc:	00
4966cd:	f2 0f 59 c4          	mulsd  %xmm4,%xmm0
4966d1:	66 0f 7e e2          	movd   %xmm4,%edx
4966d5:	66 0f 73 d4 20       	psrlq  $0x20,%xmm4
4966da:	66 0f 7e e0          	movd   %xmm4,%eax
4966de:	83 fa 00             	cmp    $0x0,%edx
4966e1:	74 52                	je     0x496735
4966e3:	66 0f 54 f8          	andpd  %xmm0,%xmm7
4966e7:	f2 0f 10 e0          	movsd  %xmm0,%xmm4
4966eb:	66 0f 54 05 30 75 4b 	andpd  0x4b7530,%xmm0
4966f2:	00
4966f3:	66 0f 73 d0 2c       	psrlq  $0x2c,%xmm0
4966f8:	66 0f c5 c0 00       	pextrw $0x0,%xmm0,%eax
4966fd:	66 0f 56 fa          	orpd   %xmm2,%xmm7
496701:	25 ff 00 00 00       	and    $0xff,%eax
496706:	83 c0 01             	add    $0x1,%eax
496709:	25 fe 01 00 00       	and    $0x1fe,%eax
49670e:	f2 0f 59 3c 85 38 72 	mulsd  0x4a7238(,%eax,4),%xmm7
496715:	4a 00
496717:	66 0f 12 2c 85 38 72 	movlpd 0x4a7238(,%eax,4),%xmm5
49671e:	4a 00
496720:	03 c0                	add    %eax,%eax
496722:	66 0f 28 34 85 50 76 	movapd 0x4a7650(,%eax,4),%xmm6
496729:	4a 00
49672b:	ba 7f 3e 04 00       	mov    $0x43e7f,%edx
496730:	e9 6e fb ff ff       	jmp    0x4962a3
496735:	8b d0                	mov    %eax,%edx
496737:	81 e2 ff ff ff 7f    	and    $0x7fffffff,%edx
49673d:	83 fa 00             	cmp    $0x0,%edx
496740:	75 a1                	jne    0x4966e3
496742:	8b 54 24 0c          	mov    0xc(%esp),%edx
496746:	81 e2 00 00 00 80    	and    $0x80000000,%edx
49674c:	83 fa 00             	cmp    $0x0,%edx
49674f:	74 30                	je     0x496781
496751:	c1 e1 0d             	shl    $0xd,%ecx
496754:	23 c1                	and    %ecx,%eax
496756:	ba 00 00 f0 7f       	mov    $0x7ff00000,%edx
49675b:	0b d0                	or     %eax,%edx
49675d:	66 0f 6e c2          	movd   %edx,%xmm0
496761:	66 0f 73 f0 20       	psllq  $0x20,%xmm0
496766:	66 0f 12 0d 20 75 4b 	movlpd 0x4b7520,%xmm1
49676d:	00
49676e:	66 0f 12 14 24       	movlpd (%esp),%xmm2
496773:	f2 0f 5e ca          	divsd  %xmm2,%xmm1
496777:	ba 1b 00 00 00       	mov    $0x1b,%edx
49677c:	e9 8f 02 00 00       	jmp    0x496a10
496781:	c1 e1 0d             	shl    $0xd,%ecx
496784:	23 c1                	and    %ecx,%eax
496786:	83 f8 00             	cmp    $0x0,%eax
496789:	0f 85 a7 00 00 00    	jne    0x496836
49678f:	66 0f 57 c0          	xorpd  %xmm0,%xmm0
496793:	83 c4 10             	add    $0x10,%esp
496796:	c3                   	ret
496797:	66 0f 12 1d 10 75 4b 	movlpd 0x4b7510,%xmm3
49679e:	00
49679f:	66 0f 57 c9          	xorpd  %xmm1,%xmm1
4967a3:	66 0f 54 dc          	andpd  %xmm4,%xmm3
4967a7:	66 0f 76 cb          	pcmpeqd %xmm3,%xmm1
4967ab:	66 0f d7 c9          	pmovmskb %xmm1,%ecx
4967af:	81 e1 ff 00 00 00    	and    $0xff,%ecx
4967b5:	81 f9 ff 00 00 00    	cmp    $0xff,%ecx
4967bb:	0f 85 cf 00 00 00    	jne    0x496890
4967c1:	66 0f c5 cc 03       	pextrw $0x3,%xmm4,%ecx
4967c6:	81 e1 00 80 00 00    	and    $0x8000,%ecx
4967cc:	83 f9 00             	cmp    $0x0,%ecx
4967cf:	0f 84 9a 00 00 00    	je     0x49686f
4967d5:	25 ff 00 00 00       	and    $0xff,%eax
4967da:	3d ff 00 00 00       	cmp    $0xff,%eax
4967df:	75 6d                	jne    0x49684e
4967e1:	66 0f 12 4c 24 08    	movlpd 0x8(%esp),%xmm1
4967e7:	66 0f 28 d1          	movapd %xmm1,%xmm2
4967eb:	b9 f4 03 00 00       	mov    $0x3f4,%ecx
4967f0:	66 0f 6e d9          	movd   %ecx,%xmm3
4967f4:	66 0f 54 0d 30 75 4b 	andpd  0x4b7530,%xmm1
4967fb:	00
4967fc:	66 0f 73 d1 34       	psrlq  $0x34,%xmm1
496801:	66 0f fa cb          	psubd  %xmm3,%xmm1
496805:	66 0f ef db          	pxor   %xmm3,%xmm3
496809:	66 0f f3 d1          	psllq  %xmm1,%xmm2
49680d:	66 0f 76 d3          	pcmpeqd %xmm3,%xmm2
496811:	66 0f d7 c2          	pmovmskb %xmm2,%eax
496815:	25 ff 00 00 00       	and    $0xff,%eax
49681a:	3d ff 00 00 00       	cmp    $0xff,%eax
49681f:	74 2d                	je     0x49684e
496821:	66 0f 12 4c 24 08    	movlpd 0x8(%esp),%xmm1
496827:	66 0f c5 c1 03       	pextrw $0x3,%xmm1,%eax
49682c:	25 00 80 00 00       	and    $0x8000,%eax
496831:	83 f8 00             	cmp    $0x0,%eax
496834:	74 0c                	je     0x496842
496836:	66 0f 12 05 90 75 4b 	movlpd 0x4b7590,%xmm0
49683d:	00
49683e:	83 c4 10             	add    $0x10,%esp
496841:	c3                   	ret
496842:	66 0f 12 05 88 75 4b 	movlpd 0x4b7588,%xmm0
496849:	00
49684a:	83 c4 10             	add    $0x10,%esp
49684d:	c3                   	ret
49684e:	66 0f 12 4c 24 08    	movlpd 0x8(%esp),%xmm1
496854:	66 0f c5 c1 03       	pextrw $0x3,%xmm1,%eax
496859:	25 00 80 00 00       	and    $0x8000,%eax
49685e:	83 f8 00             	cmp    $0x0,%eax
496861:	0f 84 39 01 00 00    	je     0x4969a0
496867:	66 0f 57 c0          	xorpd  %xmm0,%xmm0
49686b:	83 c4 10             	add    $0x10,%esp
49686e:	c3                   	ret
49686f:	66 0f 12 4c 24 08    	movlpd 0x8(%esp),%xmm1
496875:	66 0f c5 c1 03       	pextrw $0x3,%xmm1,%eax
49687a:	25 00 80 00 00       	and    $0x8000,%eax
49687f:	83 f8 00             	cmp    $0x0,%eax
496882:	0f 84 18 01 00 00    	je     0x4969a0
496888:	66 0f 57 c0          	xorpd  %xmm0,%xmm0
49688c:	83 c4 10             	add    $0x10,%esp
49688f:	c3                   	ret
496890:	f2 0f 58 e4          	addsd  %xmm4,%xmm4
496894:	f2 0f 10 c4          	movsd  %xmm4,%xmm0
496898:	ba ee 03 00 00       	mov    $0x3ee,%edx
49689d:	e9 6e 01 00 00       	jmp    0x496a10
4968a2:	66 0f 12 14 24       	movlpd (%esp),%xmm2
4968a7:	66 0f 7e d0          	movd   %xmm2,%eax
4968ab:	66 0f 73 d2 20       	psrlq  $0x20,%xmm2
4968b0:	66 0f 7e d2          	movd   %xmm2,%edx
4968b4:	81 e2 ff ff ff 7f    	and    $0x7fffffff,%edx
4968ba:	0b c2                	or     %edx,%eax
4968bc:	b9 00 00 00 00       	mov    $0x0,%ecx
4968c1:	83 f8 00             	cmp    $0x0,%eax
4968c4:	0f 84 6b fe ff ff    	je     0x496735
4968ca:	66 0f 12 0d 78 75 4b 	movlpd 0x4b7578,%xmm1
4968d1:	00
4968d2:	66 0f 12 05 b0 75 4b 	movlpd 0x4b75b0,%xmm0
4968d9:	00
4968da:	f2 0f 59 c9          	mulsd  %xmm1,%xmm1
4968de:	ba 1c 00 00 00       	mov    $0x1c,%edx
4968e3:	e9 28 01 00 00       	jmp    0x496a10
4968e8:	66 0f 12 24 24       	movlpd (%esp),%xmm4
4968ed:	66 0f 12 54 24 08    	movlpd 0x8(%esp),%xmm2
4968f3:	66 0f 7e e0          	movd   %xmm4,%eax
4968f7:	83 f8 00             	cmp    $0x0,%eax
4968fa:	75 29                	jne    0x496925
4968fc:	66 0f 73 d4 20       	psrlq  $0x20,%xmm4
496901:	66 0f 7e e2          	movd   %xmm4,%edx
496905:	81 fa 00 00 f0 3f    	cmp    $0x3ff00000,%edx
49690b:	0f 84 f3 00 00 00    	je     0x496a04
496911:	81 fa 00 00 f0 bf    	cmp    $0xbff00000,%edx
496917:	75 0c                	jne    0x496925
496919:	66 0f 12 05 20 75 4b 	movlpd 0x4b7520,%xmm0
496920:	00
496921:	83 c4 10             	add    $0x10,%esp
496924:	c3                   	ret
496925:	66 0f 12 1d 10 75 4b 	movlpd 0x4b7510,%xmm3
49692c:	00
49692d:	66 0f 57 c9          	xorpd  %xmm1,%xmm1
496931:	66 0f 54 da          	andpd  %xmm2,%xmm3
496935:	66 0f 76 cb          	pcmpeqd %xmm3,%xmm1
496939:	66 0f d7 c1          	pmovmskb %xmm1,%eax
49693d:	25 ff 00 00 00       	and    $0xff,%eax
496942:	3d ff 00 00 00       	cmp    $0xff,%eax
496947:	75 63                	jne    0x4969ac
496949:	66 0f c5 c2 03       	pextrw $0x3,%xmm2,%eax
49694e:	66 0f 12 24 24       	movlpd (%esp),%xmm4
496953:	25 00 80 00 00       	and    $0x8000,%eax
496958:	81 f1 00 00 f0 bf    	xor    $0xbff00000,%ecx
49695e:	0b d1                	or     %ecx,%edx
496960:	83 fa 00             	cmp    $0x0,%edx
496963:	0f 84 9b 00 00 00    	je     0x496a04
496969:	83 f8 00             	cmp    $0x0,%eax
49696c:	74 19                	je     0x496987
49696e:	66 0f c5 c4 03       	pextrw $0x3,%xmm4,%eax
496973:	25 f0 7f 00 00       	and    $0x7ff0,%eax
496978:	3d f0 3f 00 00       	cmp    $0x3ff0,%eax
49697d:	72 21                	jb     0x4969a0
49697f:	66 0f 57 c0          	xorpd  %xmm0,%xmm0
496983:	83 c4 10             	add    $0x10,%esp
496986:	c3                   	ret
496987:	66 0f c5 c4 03       	pextrw $0x3,%xmm4,%eax
49698c:	25 f0 7f 00 00       	and    $0x7ff0,%eax
496991:	3d f0 3f 00 00       	cmp    $0x3ff0,%eax
496996:	73 08                	jae    0x4969a0
496998:	66 0f 57 c0          	xorpd  %xmm0,%xmm0
49699c:	83 c4 10             	add    $0x10,%esp
49699f:	c3                   	ret
4969a0:	66 0f 12 05 80 75 4b 	movlpd 0x4b7580,%xmm0
4969a7:	00
4969a8:	83 c4 10             	add    $0x10,%esp
4969ab:	c3                   	ret
4969ac:	f2 0f 58 d2          	addsd  %xmm2,%xmm2
4969b0:	f2 0f 10 c2          	movsd  %xmm2,%xmm0
4969b4:	ba ee 03 00 00       	mov    $0x3ee,%edx
4969b9:	eb 55                	jmp    0x496a10
4969bb:	66 0f 7e e0          	movd   %xmm4,%eax
4969bf:	66 0f 73 d4 20       	psrlq  $0x20,%xmm4
4969c4:	66 0f 7e e2          	movd   %xmm4,%edx
4969c8:	81 e2 ff ff ff 7f    	and    $0x7fffffff,%edx
4969ce:	8b c8                	mov    %eax,%ecx
4969d0:	0b c2                	or     %edx,%eax