41e139:	66 0f 59 f0          	mulpd  %xmm0,%xmm6
41e13d:	f2 0f 59 e0          	mulsd  %xmm0,%xmm4
41e141:	66 0f 59 c0          	mulpd  %xmm0,%xmm0
41e145:	66 0f 58 fe          	addpd  %xmm6,%xmm7
41e149:	66 0f 59 f8          	mulpd  %xmm0,%xmm7
41e14d:	f2 0f 59 c3          	mulsd  %xmm3,%xmm0
41e151:	66 0f 70 f7 ee       	pshufd $0xee,%xmm7,%xmm6
41e156:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
41e15a:	66 0f 70 eb ee       	pshufd $0xee,%xmm3,%xmm5
41e15f:	f2 0f 59 f3          	mulsd  %xmm3,%xmm6
41e163:	f2 0f 59 e3          	mulsd  %xmm3,%xmm4
41e167:	66 0f 6e f9          	movd   %ecx,%xmm7
41e16b:	66 0f 73 f7 2d       	psllq  $0x2d,%xmm7
41e170:	66 0f 6e d2          	movd   %edx,%xmm2
41e174:	66 0f 76 c9          	pcmpeqd %xmm1,%xmm1
41e178:	66 0f f3 ca          	psllq  %xmm2,%xmm1
41e17c:	f2 0f 58 c5          	addsd  %xmm5,%xmm0
41e180:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
41e184:	66 0f 54 cb          	andpd  %xmm3,%xmm1
41e188:	f2 0f 58 c4          	addsd  %xmm4,%xmm0
41e18c:	66 0f 57 f6          	xorpd  %xmm6,%xmm6
41e190:	66 0f 76 e4          	pcmpeqd %xmm4,%xmm4
41e194:	66 0f f3 e2          	psllq  %xmm2,%xmm4
41e198:	f2 0f 5c d9          	subsd  %xmm1,%xmm3
41e19c:	f2 0f 10 d1          	movsd  %xmm1,%xmm2
41e1a0:	f2 0f 58 c8          	addsd  %xmm0,%xmm1
41e1a4:	66 0f 54 cc          	andpd  %xmm4,%xmm1
41e1a8:	66 0f c4 f7 03       	pinsrw $0x3,%edi,%xmm6
41e1ad:	5f                   	pop    %edi
41e1ae:	f2 0f 5c d1          	subsd  %xmm1,%xmm2
41e1b2:	f2 0f 58 c2          	addsd  %xmm2,%xmm0
41e1b6:	f2 0f 58 c3          	addsd  %xmm3,%xmm0
41e1ba:	83 fe 00             	cmp    $0x0,%esi
41e1bd:	7f 4e                	jg     0x41e20d
41e1bf:	5e                   	pop    %esi
41e1c0:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
41e1c4:	f2 0f 59 cf          	mulsd  %xmm7,%xmm1
41e1c8:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
41e1cc:	f2 0f 59 f0          	mulsd  %xmm0,%xmm6
41e1d0:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
41e1d4:	66 0f c5 c0 03       	pextrw $0x3,%xmm0,%eax
41e1d9:	25 f0 7f 00 00       	and    $0x7ff0,%eax
41e1de:	ba 18 00 00 00       	mov    $0x18,%edx
41e1e3:	3d f0 7f 00 00       	cmp    $0x7ff0,%eax
41e1e8:	0f 84 10 fe ff ff    	je     0x41dffe
41e1ee:	ba 19 00 00 00       	mov    $0x19,%edx
41e1f3:	83 f8 00             	cmp    $0x0,%eax
41e1f6:	0f 84 02 fe ff ff    	je     0x41dffe
41e1fc:	83 ec 10             	sub    $0x10,%esp
41e1ff:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
41e205:	dd 44 24 04          	fldl   0x4(%esp)
41e209:	83 c4 10             	add    $0x10,%esp
41e20c:	c3                   	ret
41e20d:	5e                   	pop    %esi
41e20e:	f2 0f 58 c1          	addsd  %xmm1,%xmm0
41e212:	f2 0f 59 c7          	mulsd  %xmm7,%xmm0
41e216:	f2 0f 59 f0          	mulsd  %xmm0,%xmm6
41e21a:	f2 0f 58 c6          	addsd  %xmm6,%xmm0
41e21e:	66 0f c5 c0 03       	pextrw $0x3,%xmm0,%eax
41e223:	25 f0 7f 00 00       	and    $0x7ff0,%eax
41e228:	ba 18 00 00 00       	mov    $0x18,%edx
41e22d:	3d f0 7f 00 00       	cmp    $0x7ff0,%eax
41e232:	0f 84 c6 fd ff ff    	je     0x41dffe
41e238:	ba 19 00 00 00       	mov    $0x19,%edx
41e23d:	83 f8 00             	cmp    $0x0,%eax
41e240:	0f 84 b8 fd ff ff    	je     0x41dffe
41e246:	83 ec 10             	sub    $0x10,%esp
41e249:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
41e24f:	dd 44 24 04          	fldl   0x4(%esp)
41e253:	83 c4 10             	add    $0x10,%esp
41e256:	c3                   	ret
41e257:	66 0f 12 05 98 d8 42 	movlpd 0x42d898,%xmm0
41e25e:	00
41e25f:	66 0f 6e c9          	movd   %ecx,%xmm1
41e263:	f2 0f 59 c0          	mulsd  %xmm0,%xmm0
41e267:	66 0f 73 f1 2d       	psllq  $0x2d,%xmm1
41e26c:	66 0f 56 c1          	orpd   %xmm1,%xmm0
41e270:	ba 19 00 00 00       	mov    $0x19,%edx
41e275:	e9 84 fd ff ff       	jmp    0x41dffe
41e27a:	ba 18 00 00 00       	mov    $0x18,%edx
41e27f:	83 f9 00             	cmp    $0x0,%ecx
41e282:	74 15                	je     0x41e299
41e284:	66 0f 12 05 88 d8 42 	movlpd 0x42d888,%xmm0
41e28b:	00
41e28c:	f2 0f 59 05 90 d8 42 	mulsd  0x42d890,%xmm0
41e293:	00
41e294:	e9 65 fd ff ff       	jmp    0x41dffe
41e299:	66 0f 12 05 90 d8 42 	movlpd 0x42d890,%xmm0
41e2a0:	00
41e2a1:	f2 0f 59 c0          	mulsd  %xmm0,%xmm0
41e2a5:	e9 54 fd ff ff       	jmp    0x41dffe
41e2aa:	66 0f 70 e1 44       	pshufd $0x44,%xmm1,%xmm4
41e2af:	66 0f 59 e6          	mulpd  %xmm6,%xmm4
41e2b3:	66 0f c5 c4 03       	pextrw $0x3,%xmm4,%eax
41e2b8:	25 f0 7f 00 00       	and    $0x7ff0,%eax
41e2bd:	ba a0 40 00 00       	mov    $0x40a0,%edx
41e2c2:	2b d0                	sub    %eax,%edx
41e2c4:	2d 70 3c 00 00       	sub    $0x3c70,%eax
41e2c9:	0b d0                	or     %eax,%edx
41e2cb:	81 fa 00 00 00 80    	cmp    $0x80000000,%edx
41e2d1:	0f 82 21 f7 ff ff    	jb     0x41d9f8
41e2d7:	3d 00 00 00 80       	cmp    $0x80000000,%eax
41e2dc:	72 20                	jb     0x41e2fe
41e2de:	81 c9 80 ff 01 00    	or     $0x1ff80,%ecx
41e2e4:	66 0f 6e c1          	movd   %ecx,%xmm0
41e2e8:	66 0f 73 f0 2d       	psllq  $0x2d,%xmm0
41e2ed:	83 ec 10             	sub    $0x10,%esp
41e2f0:	66 0f 13 44 24 04    	movlpd %xmm0,0x4(%esp)
41e2f6:	dd 44 24 04          	fldl   0x4(%esp)
41e2fa:	83 c4 10             	add    $0x10,%esp
41e2fd:	c3                   	ret
41e2fe:	66 0f 12 64 24 04    	movlpd 0x4(%esp),%xmm4
41e304:	66 0f c5 d4 03       	pextrw $0x3,%xmm4,%edx
41e309:	81 e2 f0 7f 00 00    	and    $0x7ff0,%edx
41e30f:	81 ea f0 3f 00 00    	sub    $0x3ff0,%edx
41e315:	66 0f c5 c1 03       	pextrw $0x3,%xmm1,%eax
41e31a:	33 c2                	xor    %edx,%eax
41e31c:	25 00 80 00 00       	and    $0x8000,%eax
41e321:	83 f8 00             	cmp    $0x0,%eax
41e324:	0f 85 2d ff ff ff    	jne    0x41e257
41e32a:	e9 4b ff ff ff       	jmp    0x41e27a
41e32f:	90                   	nop
41e330:	c6 85 70 ff ff ff fe 	movb   $0xfe,-0x90(%ebp)
41e337:	0a ed                	or     %ch,%ch
41e339:	75 3b                	jne    0x41e376
41e33b:	d9 c9                	fxch   %st(1)
41e33d:	d9 f1                	fyl2x
41e33f:	eb 0d                	jmp    0x41e34e
41e341:	c6 85 70 ff ff ff fe 	movb   $0xfe,-0x90(%ebp)
41e348:	32 ed                	xor    %ch,%ch
41e34a:	d9 ea                	fldl2e
41e34c:	de c9                	fmulp  %st,%st(1)
41e34e:	e8 2b 01 00 00       	call   0x41e47e
41e353:	d9 e8                	fld1
41e355:	de c1                	faddp  %st,%st(1)
41e357:	f6 85 61 ff ff ff 01 	testb  $0x1,-0x9f(%ebp)
41e35e:	74 04                	je     0x41e364
41e360:	d9 e8                	fld1
41e362:	de f1                	fdivp  %st,%st(1)
41e364:	f6 c2 40             	test   $0x40,%dl
41e367:	75 02                	jne    0x41e36b
41e369:	d9 fd                	fscale
41e36b:	0a ed                	or     %ch,%ch
41e36d:	74 02                	je     0x41e371
41e36f:	d9 e0                	fchs
41e371:	e9 02 cd ff ff       	jmp    0x41b078
41e376:	e8 46 01 00 00       	call   0x41e4c1
41e37b:	0b c0                	or     %eax,%eax
41e37d:	74 14                	je     0x41e393
41e37f:	32 ed                	xor    %ch,%ch
41e381:	83 f8 02             	cmp    $0x2,%eax
41e384:	74 02                	je     0x41e388
41e386:	f6 d5                	not    %ch
41e388:	d9 c9                	fxch   %st(1)
41e38a:	d9 e1                	fabs
41e38c:	eb af                	jmp    0x41e33d
41e38e:	e9 05 cd ff ff       	jmp    0x41b098
41e393:	e9 9b cd ff ff       	jmp    0x41b133
41e398:	dd d8                	fstp   %st(0)
41e39a:	dd d8                	fstp   %st(0)
41e39c:	db 2d b0 d8 42 00    	fldt   0x42d8b0
41e3a2:	c6 85 70 ff ff ff 02 	movb   $0x2,-0x90(%ebp)
41e3a9:	c3                   	ret
41e3aa:	d9 ed                	fldln2
41e3ac:	d9 c9                	fxch   %st(1)
41e3ae:	d9 e4                	ftst
41e3b0:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
41e3b7:	9b                   	fwait
41e3b8:	f6 85 61 ff ff ff 41 	testb  $0x41,-0x9f(%ebp)
41e3bf:	75 d2                	jne    0x41e393
41e3c1:	d9 f1                	fyl2x
41e3c3:	c3                   	ret
41e3c4:	c6 85 70 ff ff ff 02 	movb   $0x2,-0x90(%ebp)
41e3cb:	dd d8                	fstp   %st(0)
41e3cd:	db 2d ba d8 42 00    	fldt   0x42d8ba
41e3d3:	c3                   	ret
41e3d4:	0a c9                	or     %cl,%cl
41e3d6:	75 53                	jne    0x41e42b
41e3d8:	c3                   	ret
41e3d9:	d9 ec                	fldlg2
41e3db:	eb 02                	jmp    0x41e3df
41e3dd:	d9 ed                	fldln2
41e3df:	d9 c9                	fxch   %st(1)
41e3e1:	0a c9                	or     %cl,%cl
41e3e3:	75 ae                	jne    0x41e393
41e3e5:	d9 f1                	fyl2x
41e3e7:	c3                   	ret
41e3e8:	e9 ab cc ff ff       	jmp    0x41b098
41e3ed:	e8 cf 00 00 00       	call   0x41e4c1
41e3f2:	dd d8                	fstp   %st(0)
41e3f4:	dd d8                	fstp   %st(0)
41e3f6:	0a c9                	or     %cl,%cl
41e3f8:	75 0e                	jne    0x41e408
41e3fa:	d9 ee                	fldz
41e3fc:	83 f8 01             	cmp    $0x1,%eax
41e3ff:	75 06                	jne    0x41e407
41e401:	0a ed                	or     %ch,%ch
41e403:	74 02                	je     0x41e407
41e405:	d9 e0                	fchs
41e407:	c3                   	ret
41e408:	c6 85 70 ff ff ff 02 	movb   $0x2,-0x90(%ebp)
41e40f:	db 2d b0 d8 42 00    	fldt   0x42d8b0
41e415:	83 f8 01             	cmp    $0x1,%eax
41e418:	75 ed                	jne    0x41e407
41e41a:	0a ed                	or     %ch,%ch
41e41c:	74 e9                	je     0x41e407
41e41e:	d9 e0                	fchs
41e420:	eb e5                	jmp    0x41e407
41e422:	dd d8                	fstp   %st(0)
41e424:	e9 5d cc ff ff       	jmp    0x41b086
41e429:	dd d8                	fstp   %st(0)
41e42b:	e9 05 cd ff ff       	jmp    0x41b135
41e430:	58                   	pop    %eax
41e431:	d9 e4                	ftst
41e433:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
41e43a:	9b                   	fwait
41e43b:	f6 85 61 ff ff ff 01 	testb  $0x1,-0x9f(%ebp)
41e442:	75 0f                	jne    0x41e453
41e444:	dd d8                	fstp   %st(0)
41e446:	db 2d b0 d8 42 00    	fldt   0x42d8b0
41e44c:	0a ed                	or     %ch,%ch
41e44e:	74 02                	je     0x41e452
41e450:	d9 e0                	fchs
41e452:	c3                   	ret
41e453:	c6 85 70 ff ff ff 04 	movb   $0x4,-0x90(%ebp)
41e45a:	e9 27 cc ff ff       	jmp    0x41b086
41e45f:	dd d8                	fstp   %st(0)
41e461:	dd d8                	fstp   %st(0)
41e463:	db 2d b0 d8 42 00    	fldt   0x42d8b0
41e469:	c6 85 70 ff ff ff 03 	movb   $0x3,-0x90(%ebp)
41e470:	c3                   	ret
41e471:	0a c9                	or     %cl,%cl
41e473:	75 af                	jne    0x41e424
41e475:	dd d8                	fstp   %st(0)
41e477:	db 2d b0 d8 42 00    	fldt   0x42d8b0
41e47d:	c3                   	ret
41e47e:	d9 c0                	fld    %st(0)
41e480:	d9 e1                	fabs
41e482:	db 2d ce d8 42 00    	fldt   0x42d8ce
41e488:	de d9                	fcompp
41e48a:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
41e491:	9b                   	fwait
41e492:	f6 85 61 ff ff ff 41 	testb  $0x41,-0x9f(%ebp)
41e499:	75 95                	jne    0x41e430
41e49b:	d9 c0                	fld    %st(0)
41e49d:	d9 fc                	frndint
41e49f:	d9 e4                	ftst
41e4a1:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
41e4a8:	9b                   	fwait
41e4a9:	8a 95 61 ff ff ff    	mov    -0x9f(%ebp),%dl
41e4af:	d9 c9                	fxch   %st(1)
41e4b1:	d8 e1                	fsub   %st(1),%st
41e4b3:	d9 e4                	ftst
41e4b5:	9b dd bd 60 ff ff ff 	fstsw  -0xa0(%ebp)
41e4bc:	d9 e1                	fabs
41e4be:	d9 f0                	f2xm1
41e4c0:	c3                   	ret
41e4c1:	d9 c0                	fld    %st(0)
41e4c3:	d9 fc                	frndint
41e4c5:	d8 d9                	fcomp  %st(1)
41e4c7:	9b df e0             	fstsw  %ax
41e4ca:	9e                   	sahf
41e4cb:	75 1a                	jne    0x41e4e7
41e4cd:	d9 c0                	fld    %st(0)
41e4cf:	dc 0d e2 d8 42 00    	fmull  0x42d8e2
41e4d5:	d9 c0                	fld    %st(0)
41e4d7:	d9 fc                	frndint
41e4d9:	de d9                	fcompp
41e4db:	9b df e0             	fstsw  %ax
41e4de:	9e                   	sahf
41e4df:	74 0d                	je     0x41e4ee
41e4e1:	b8 01 00 00 00       	mov    $0x1,%eax
41e4e6:	c3                   	ret
41e4e7:	b8 00 00 00 00       	mov    $0x0,%eax
41e4ec:	eb f8                	jmp    0x41e4e6
41e4ee:	b8 02 00 00 00       	mov    $0x2,%eax
41e4f3:	eb f1                	jmp    0x41e4e6
41e4f5:	56                   	push   %esi
41e4f6:	83 ec 74             	sub    $0x74,%esp
41e4f9:	8b f4                	mov    %esp,%esi
41e4fb:	56                   	push   %esi
41e4fc:	83 ec 08             	sub    $0x8,%esp
41e4ff:	dd 1c 24             	fstpl  (%esp)
41e502:	83 ec 08             	sub    $0x8,%esp
41e505:	dd 1c 24             	fstpl  (%esp)
41e508:	9b dd 76 08          	fsave  0x8(%esi)
41e50c:	e8 80 00 00 00       	call   0x41e591
41e511:	83 c4 14             	add    $0x14,%esp
41e514:	dd 66 08             	frstor 0x8(%esi)
41e517:	dd 06                	fldl   (%esi)
41e519:	83 c4 74             	add    $0x74,%esp
41e51c:	5e                   	pop    %esi
41e51d:	85 c0                	test   %eax,%eax
41e51f:	74 05                	je     0x41e526
41e521:	e9 20 cc ff ff       	jmp    0x41b146
41e526:	c3                   	ret
41e527:	8b ff                	mov    %edi,%edi
41e529:	55                   	push   %ebp
41e52a:	8b ec                	mov    %esp,%ebp
41e52c:	51                   	push   %ecx
41e52d:	51                   	push   %ecx
41e52e:	dd 45 08             	fldl   0x8(%ebp)
41e531:	51                   	push   %ecx
41e532:	51                   	push   %ecx
41e533:	dd 1c 24             	fstpl  (%esp)
41e536:	e8 2f f2 ff ff       	call   0x41d76a
41e53b:	59                   	pop    %ecx
41e53c:	59                   	pop    %ecx
41e53d:	a8 90                	test   $0x90,%al
41e53f:	75 4a                	jne    0x41e58b
41e541:	dd 45 08             	fldl   0x8(%ebp)
41e544:	51                   	push   %ecx
41e545:	51                   	push   %ecx
41e546:	dd 1c 24             	fstpl  (%esp)
41e549:	e8 e7 68 00 00       	call   0x424e35
41e54e:	dd 45 08             	fldl   0x8(%ebp)
41e551:	dd e1                	fucom  %st(1)
41e553:	df e0                	fnstsw %ax
41e555:	59                   	pop    %ecx
41e556:	59                   	pop    %ecx
41e557:	dd d9                	fstp   %st(1)
41e559:	f6 c4 44             	test   $0x44,%ah
41e55c:	7a 2b                	jp     0x41e589
41e55e:	dc 0d 10 d9 42 00    	fmull  0x42d910
41e564:	51                   	push   %ecx
41e565:	51                   	push   %ecx
41e566:	dd 55 f8             	fstl   -0x8(%ebp)
41e569:	dd 1c 24             	fstpl  (%esp)
41e56c:	e8 c4 68 00 00       	call   0x424e35
41e571:	dd 45 f8             	fldl   -0x8(%ebp)
41e574:	da e9                	fucompp
41e576:	df e0                	fnstsw %ax
41e578:	59                   	pop    %ecx
41e579:	59                   	pop    %ecx
41e57a:	f6 c4 44             	test   $0x44,%ah
41e57d:	7a 05                	jp     0x41e584
41e57f:	6a 02                	push   $0x2
41e581:	58                   	pop    %eax
41e582:	eb 09                	jmp    0x41e58d
41e584:	33 c0                	xor    %eax,%eax
41e586:	40                   	inc    %eax
41e587:	eb 04                	jmp    0x41e58d
41e589:	dd d8                	fstp   %st(0)
41e58b:	33 c0                	xor    %eax,%eax
41e58d:	8b e5                	mov    %ebp,%esp
41e58f:	5d                   	pop    %ebp
41e590:	c3                   	ret
41e591:	8b ff                	mov    %edi,%edi
41e593:	55                   	push   %ebp
41e594:	8b ec                	mov    %esp,%ebp