1409403a0:	45 85 c9             	test   %r9d,%r9d
1409403a3:	7f 07                	jg     0x1409403ac
1409403a5:	33 c0                	xor    %eax,%eax
1409403a7:	e9 81 00 00 00       	jmp    0x14094042d
1409403ac:	41 83 e9 01          	sub    $0x1,%r9d
1409403b0:	48 89 9c 24 50 04 00 	mov    %rbx,0x450(%rsp)
1409403b7:	00
1409403b8:	48 89 ac 24 58 04 00 	mov    %rbp,0x458(%rsp)
1409403bf:	00
1409403c0:	4c 89 b4 24 40 04 00 	mov    %r14,0x440(%rsp)
1409403c7:	00
1409403c8:	78 49                	js     0x140940413
1409403ca:	45 33 f6             	xor    %r14d,%r14d
1409403cd:	49 63 d9             	movslq %r9d,%rbx
1409403d0:	4d 85 db             	test   %r11,%r11
1409403d3:	4c 0f 45 f7          	cmovne %rdi,%r14
1409403d7:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
1409403de:	00 00
1409403e0:	48 8b 6c dc 20       	mov    0x20(%rsp,%rbx,8),%rbp
1409403e5:	33 c9                	xor    %ecx,%ecx
1409403e7:	48 8b 55 08          	mov    0x8(%rbp),%rdx
1409403eb:	48 85 d2             	test   %rdx,%rdx
1409403ee:	0f b7 7a 02          	movzwl 0x2(%rdx),%edi
1409403f2:	48 8d 42 08          	lea    0x8(%rdx),%rax
1409403f6:	48 0f 45 c8          	cmovne %rax,%rcx
1409403fa:	44 8b c7             	mov    %edi,%r8d
1409403fd:	49 8b d6             	mov    %r14,%rdx
140940400:	e8 db f7 ff ff       	call   0x14093fbe0
140940405:	85 c0                	test   %eax,%eax
140940407:	74 04                	je     0x14094040d
140940409:	3b fe                	cmp    %esi,%edi
14094040b:	76 48                	jbe    0x140940455
14094040d:	48 83 eb 01          	sub    $0x1,%rbx
140940411:	79 cd                	jns    0x1409403e0
140940413:	33 c0                	xor    %eax,%eax
140940415:	48 8b 9c 24 50 04 00 	mov    0x450(%rsp),%rbx
14094041c:	00
14094041d:	48 8b ac 24 58 04 00 	mov    0x458(%rsp),%rbp
140940424:	00
140940425:	4c 8b b4 24 40 04 00 	mov    0x440(%rsp),%r14
14094042c:	00
14094042d:	48 8b b4 24 60 04 00 	mov    0x460(%rsp),%rsi
140940434:	00
140940435:	48 8b bc 24 68 04 00 	mov    0x468(%rsp),%rdi
14094043c:	00
14094043d:	48 8b 8c 24 30 04 00 	mov    0x430(%rsp),%rcx
140940444:	00
140940445:	48 33 cc             	xor    %rsp,%rcx
140940448:	e8 b3 b0 4d 00       	call   0x140e1b500
14094044d:	48 81 c4 48 04 00 00 	add    $0x448,%rsp
140940454:	c3                   	ret
140940455:	48 8b c5             	mov    %rbp,%rax
140940458:	eb bb                	jmp    0x140940415
14094045a:	cc                   	int3
14094045b:	cc                   	int3
14094045c:	cc                   	int3
14094045d:	cc                   	int3
14094045e:	cc                   	int3
14094045f:	cc                   	int3
140940460:	40 53                	rex push %rbx
140940462:	48 83 ec 20          	sub    $0x20,%rsp
140940466:	48 8b 19             	mov    (%rcx),%rbx
140940469:	4c 8b d2             	mov    %rdx,%r10
14094046c:	48 85 db             	test   %rbx,%rbx
14094046f:	74 75                	je     0x1409404e6
140940471:	44 0f b7 42 02       	movzwl 0x2(%rdx),%r8d
140940476:	4c 8d 4a 08          	lea    0x8(%rdx),%r9
14094047a:	8b 03                	mov    (%rbx),%eax
14094047c:	41 3b c0             	cmp    %r8d,%eax
14094047f:	73 3b                	jae    0x1409404bc
140940481:	8b c8                	mov    %eax,%ecx
140940483:	0f 1f 40 00          	nopl   0x0(%rax)
140940487:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
14094048e:	00 00
140940490:	83 e1 07             	and    $0x7,%ecx
140940493:	48 c1 e8 03          	shr    $0x3,%rax
140940497:	ba 80 00 00 00       	mov    $0x80,%edx
14094049c:	d3 fa                	sar    %cl,%edx
14094049e:	42 84 14 08          	test   %dl,(%rax,%r9,1)
1409404a2:	74 06                	je     0x1409404aa
1409404a4:	48 8b 5b 18          	mov    0x18(%rbx),%rbx
1409404a8:	eb 04                	jmp    0x1409404ae
1409404aa:	48 8b 5b 10          	mov    0x10(%rbx),%rbx
1409404ae:	48 85 db             	test   %rbx,%rbx
1409404b1:	74 33                	je     0x1409404e6
1409404b3:	8b 03                	mov    (%rbx),%eax
1409404b5:	8b c8                	mov    %eax,%ecx
1409404b7:	41 3b c0             	cmp    %r8d,%eax
1409404ba:	72 d4                	jb     0x140940490
1409404bc:	77 28                	ja     0x1409404e6
1409404be:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
1409404c2:	48 85 c9             	test   %rcx,%rcx
1409404c5:	74 1f                	je     0x1409404e6
1409404c7:	33 d2                	xor    %edx,%edx
1409404c9:	4d 85 d2             	test   %r10,%r10
1409404cc:	49 0f 45 d1          	cmovne %r9,%rdx
1409404d0:	48 83 c1 08          	add    $0x8,%rcx
1409404d4:	e8 07 f7 ff ff       	call   0x14093fbe0
1409404d9:	85 c0                	test   %eax,%eax
1409404db:	74 09                	je     0x1409404e6
1409404dd:	48 8b c3             	mov    %rbx,%rax
1409404e0:	48 83 c4 20          	add    $0x20,%rsp
1409404e4:	5b                   	pop    %rbx
1409404e5:	c3                   	ret
1409404e6:	33 c0                	xor    %eax,%eax
1409404e8:	48 83 c4 20          	add    $0x20,%rsp
1409404ec:	5b                   	pop    %rbx
1409404ed:	c3                   	ret
1409404ee:	cc                   	int3
1409404ef:	cc                   	int3
1409404f0:	41 56                	push   %r14
1409404f2:	48 83 ec 20          	sub    $0x20,%rsp
1409404f6:	66 0f 2e c0          	ucomisd %xmm0,%xmm0
1409404fa:	45 8b c8             	mov    %r8d,%r9d
1409404fd:	4c 8b f2             	mov    %rdx,%r14
140940500:	0f 28 c8             	movaps %xmm0,%xmm1
140940503:	0f 28 d8             	movaps %xmm0,%xmm3
140940506:	7b 12                	jnp    0x14094051a
140940508:	c7 02 6e 61 6e 00    	movl   $0x6e616e,(%rdx)
14094050e:	b8 03 00 00 00       	mov    $0x3,%eax
140940513:	48 83 c4 20          	add    $0x20,%rsp
140940517:	41 5e                	pop    %r14
140940519:	c3                   	ret
14094051a:	f2 0f 10 05 7e e1 66 	movsd  0x66e17e(%rip),%xmm0        # 0x140fae6a0
140940521:	00
140940522:	0f 57 d2             	xorps  %xmm2,%xmm2
140940525:	66 0f 2f d1          	comisd %xmm1,%xmm2
140940529:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
14094052e:	76 03                	jbe    0x140940533
140940530:	0f 57 c8             	xorps  %xmm0,%xmm1
140940533:	33 d2                	xor    %edx,%edx
140940535:	66 0f 2f d3          	comisd %xmm3,%xmm2
140940539:	8b ea                	mov    %edx,%ebp
14094053b:	40 0f 97 c5          	seta   %bpl
14094053f:	66 0f 2f 0d e1 37 71 	comisd 0x7137e1(%rip),%xmm1        # 0x141053d28
140940546:	00
140940547:	72 41                	jb     0x14094058a
140940549:	85 ed                	test   %ebp,%ebp
14094054b:	74 03                	je     0x140940550
14094054d:	0f 57 c8             	xorps  %xmm0,%xmm1
140940550:	0f 28 d9             	movaps %xmm1,%xmm3
140940553:	48 8d 15 c6 37 71 00 	lea    0x7137c6(%rip),%rdx        # 0x141053d20
14094055a:	66 49 0f 7e c9       	movq   %xmm1,%r9
14094055f:	41 b8 10 00 00 00    	mov    $0x10,%r8d
140940565:	49 8b ce             	mov    %r14,%rcx
140940568:	e8 53 0a 00 00       	call   0x140940fc0
14094056d:	49 8b ce             	mov    %r14,%rcx
140940570:	44 8b d8             	mov    %eax,%r11d
140940573:	e8 88 09 00 00       	call   0x140940f00
140940578:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14094057d:	44 2b d8             	sub    %eax,%r11d
140940580:	49 63 c3             	movslq %r11d,%rax
140940583:	48 83 c4 20          	add    $0x20,%rsp
140940587:	41 5e                	pop    %r14
140940589:	c3                   	ret
14094058a:	48 89 74 24 40       	mov    %rsi,0x40(%rsp)
14094058f:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
140940594:	49 8b fe             	mov    %r14,%rdi
140940597:	45 85 c9             	test   %r9d,%r9d
14094059a:	79 05                	jns    0x1409405a1
14094059c:	44 8b ca             	mov    %edx,%r9d
14094059f:	eb 0c                	jmp    0x1409405ad
1409405a1:	b8 09 00 00 00       	mov    $0x9,%eax
1409405a6:	44 3b c8             	cmp    %eax,%r9d
1409405a9:	44 0f 4f c8          	cmovg  %eax,%r9d
1409405ad:	f2 0f 10 15 1b 18 6a 	movsd  0x6a181b(%rip),%xmm2        # 0x140fe1dd0
1409405b4:	00
1409405b5:	48 8d 0d c4 36 71 00 	lea    0x7136c4(%rip),%rcx        # 0x141053c80
1409405bc:	49 63 c1             	movslq %r9d,%rax
1409405bf:	0f 28 d9             	movaps %xmm1,%xmm3
1409405c2:	f2 0f 2c f1          	cvttsd2si %xmm1,%esi
1409405c6:	f2 0f 10 24 c1       	movsd  (%rcx,%rax,8),%xmm4
1409405cb:	66 0f 6e c6          	movd   %esi,%xmm0
1409405cf:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
1409405d3:	f2 0f 5c d8          	subsd  %xmm0,%xmm3
1409405d7:	0f 57 c0             	xorps  %xmm0,%xmm0
1409405da:	f2 0f 59 dc          	mulsd  %xmm4,%xmm3
1409405de:	f2 4c 0f 2c c3       	cvttsd2si %xmm3,%r8
1409405e3:	41 8b c0             	mov    %r8d,%eax
1409405e6:	f2 48 0f 2a c0       	cvtsi2sd %rax,%xmm0
1409405eb:	f2 0f 5c d8          	subsd  %xmm0,%xmm3
1409405ef:	66 0f 2f da          	comisd %xmm2,%xmm3
1409405f3:	76 22                	jbe    0x140940617
1409405f5:	41 8d 48 01          	lea    0x1(%r8),%ecx
1409405f9:	0f 57 c0             	xorps  %xmm0,%xmm0
1409405fc:	8b c1                	mov    %ecx,%eax
1409405fe:	f2 48 0f 2a c0       	cvtsi2sd %rax,%xmm0
140940603:	8d 46 01             	lea    0x1(%rsi),%eax
140940606:	66 0f 2f c4          	comisd %xmm4,%xmm0
14094060a:	0f 42 c6             	cmovb  %esi,%eax
14094060d:	0f 42 d1             	cmovb  %ecx,%edx
140940610:	8b f0                	mov    %eax,%esi
140940612:	44 8b c2             	mov    %edx,%r8d
140940615:	eb 16                	jmp    0x14094062d
140940617:	66 0f 2e da          	ucomisd %xmm2,%xmm3
14094061b:	7a 10                	jp     0x14094062d
14094061d:	75 0e                	jne    0x14094062d
14094061f:	45 85 c0             	test   %r8d,%r8d
140940622:	74 06                	je     0x14094062a
140940624:	41 f6 c0 01          	test   $0x1,%r8b
140940628:	74 03                	je     0x14094062d
14094062a:	41 ff c0             	inc    %r8d
14094062d:	45 85 c9             	test   %r9d,%r9d
140940630:	75 2e                	jne    0x140940660
140940632:	66 0f 6e c6          	movd   %esi,%xmm0
140940636:	f3 0f e6 c0          	cvtdq2pd %xmm0,%xmm0
14094063a:	f2 0f 5c c8          	subsd  %xmm0,%xmm1
14094063e:	66 0f 2f ca          	comisd %xmm2,%xmm1
140940642:	76 04                	jbe    0x140940648
140940644:	ff c6                	inc    %esi
140940646:	eb 78                	jmp    0x1409406c0
140940648:	66 0f 2e ca          	ucomisd %xmm2,%xmm1
14094064c:	7a 72                	jp     0x1409406c0
14094064e:	75 70                	jne    0x1409406c0
140940650:	40 f6 c6 01          	test   $0x1,%sil
140940654:	74 6a                	je     0x1409406c0
140940656:	ff c6                	inc    %esi
140940658:	eb 66                	jmp    0x1409406c0
14094065a:	66 0f 1f 44 00 00    	nopw   0x0(%rax,%rax,1)
140940660:	b8 cd cc cc cc       	mov    $0xcccccccd,%eax
140940665:	41 ff c9             	dec    %r9d
140940668:	41 f7 e0             	mul    %r8d
14094066b:	c1 ea 03             	shr    $0x3,%edx
14094066e:	0f b6 c2             	movzbl %dl,%eax
140940671:	c0 e0 02             	shl    $0x2,%al
140940674:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
140940677:	02 c9                	add    %cl,%cl
140940679:	44 2a c1             	sub    %cl,%r8b
14094067c:	41 80 c0 30          	add    $0x30,%r8b
140940680:	44 88 07             	mov    %r8b,(%rdi)
140940683:	48 ff c7             	inc    %rdi
140940686:	44 8b c2             	mov    %edx,%r8d
140940689:	85 d2                	test   %edx,%edx
14094068b:	75 d3                	jne    0x140940660
14094068d:	45 85 c9             	test   %r9d,%r9d
140940690:	7e 1d                	jle    0x1409406af
140940692:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
140940697:	b2 30                	mov    $0x30,%dl
140940699:	45 8b c1             	mov    %r9d,%r8d
14094069c:	48 8b cf             	mov    %rdi,%rcx
14094069f:	41 8b d9             	mov    %r9d,%ebx
1409406a2:	e8 09 f0 59 00       	call   0x140edf6b0
1409406a7:	48 03 fb             	add    %rbx,%rdi
1409406aa:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
1409406af:	c6 07 2e             	movb   $0x2e,(%rdi)
1409406b2:	48 ff c7             	inc    %rdi
1409406b5:	66 66 66 0f 1f 84 00 	data16 data16 nopw 0x0(%rax,%rax,1)
1409406bc:	00 00 00 00
1409406c0:	b8 67 66 66 66       	mov    $0x66666667,%eax
1409406c5:	f7 ee                	imul   %esi
1409406c7:	c1 fa 02             	sar    $0x2,%edx
1409406ca:	8b c2                	mov    %edx,%eax
1409406cc:	c1 e8 1f             	shr    $0x1f,%eax
1409406cf:	03 d0                	add    %eax,%edx
1409406d1:	0f b6 c2             	movzbl %dl,%eax
1409406d4:	c0 e0 02             	shl    $0x2,%al
1409406d7:	8d 0c 10             	lea    (%rax,%rdx,1),%ecx
1409406da:	02 c9                	add    %cl,%cl
1409406dc:	40 2a f1             	sub    %cl,%sil
1409406df:	40 80 c6 30          	add    $0x30,%sil
1409406e3:	40 88 37             	mov    %sil,(%rdi)
1409406e6:	48 ff c7             	inc    %rdi
1409406e9:	8b f2                	mov    %edx,%esi
1409406eb:	85 d2                	test   %edx,%edx
1409406ed:	75 d1                	jne    0x1409406c0
1409406ef:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
1409406f4:	85 ed                	test   %ebp,%ebp
1409406f6:	74 06                	je     0x1409406fe
1409406f8:	c6 07 2d             	movb   $0x2d,(%rdi)
1409406fb:	48 ff c7             	inc    %rdi
1409406fe:	48 8d 47 ff          	lea    -0x1(%rdi),%rax
140940702:	c6 07 00             	movb   $0x0,(%rdi)
140940705:	4d 8b c6             	mov    %r14,%r8
140940708:	49 3b c6             	cmp    %r14,%rax
14094070b:	76 1a                	jbe    0x140940727
14094070d:	0f 1f 00             	nopl   (%rax)
140940710:	41 0f b6 08          	movzbl (%r8),%ecx
140940714:	0f b6 10             	movzbl (%rax),%edx
140940717:	88 08                	mov    %cl,(%rax)
140940719:	48 ff c8             	dec    %rax
14094071c:	41 88 10             	mov    %dl,(%r8)
14094071f:	49 ff c0             	inc    %r8
140940722:	49 3b c0             	cmp    %r8,%rax
140940725:	77 e9                	ja     0x140940710
140940727:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14094072c:	49 2b fe             	sub    %r14,%rdi
14094072f:	48 8b c7             	mov    %rdi,%rax
140940732:	48 8b 7c 24 48       	mov    0x48(%rsp),%rdi
140940737:	48 83 c4 20          	add    $0x20,%rsp
14094073b:	41 5e                	pop    %r14
14094073d:	c3                   	ret
14094073e:	cc                   	int3
14094073f:	cc                   	int3
140940740:	41 56                	push   %r14
140940742:	48 83 ec 20          	sub    $0x20,%rsp
140940746:	66 0f 2e c0          	ucomisd %xmm0,%xmm0
14094074a:	45 8b c8             	mov    %r8d,%r9d
14094074d:	4c 8b f2             	mov    %rdx,%r14
140940750:	0f 28 c8             	movaps %xmm0,%xmm1
140940753:	0f 28 d8             	movaps %xmm0,%xmm3
140940756:	7b 12                	jnp    0x14094076a
140940758:	c7 02 6e 61 6e 00    	movl   $0x6e616e,(%rdx)
14094075e:	b8 03 00 00 00       	mov    $0x3,%eax
140940763:	48 83 c4 20          	add    $0x20,%rsp
140940767:	41 5e                	pop    %r14
140940769:	c3                   	ret
14094076a:	f2 0f 10 15 2e df 66 	movsd  0x66df2e(%rip),%xmm2        # 0x140fae6a0
140940771:	00
140940772:	0f 57 c0             	xorps  %xmm0,%xmm0
140940775:	66 0f 2f c1          	comisd %xmm1,%xmm0
140940779:	48 89 6c 24 38       	mov    %rbp,0x38(%rsp)
14094077e:	76 03                	jbe    0x140940783
140940780:	0f 57 ca             	xorps  %xmm2,%xmm1
140940783:	33 d2                	xor    %edx,%edx
140940785:	66 0f 2f c3          	comisd %xmm3,%xmm0
140940789:	8b ea                	mov    %edx,%ebp
14094078b:	40 0f 97 c5          	seta   %bpl
14094078f:	66 0f 2f 0d 91 35 71 	comisd 0x713591(%rip),%xmm1        # 0x141053d28
140940796:	00
140940797:	72 41                	jb     0x1409407da
140940799:	85 ed                	test   %ebp,%ebp
14094079b:	74 03                	je     0x1409407a0
14094079d:	0f 57 ca             	xorps  %xmm2,%xmm1
1409407a0:	0f 28 d9             	movaps %xmm1,%xmm3
1409407a3:	48 8d 15 76 35 71 00 	lea    0x713576(%rip),%rdx        # 0x141053d20
1409407aa:	66 49 0f 7e c9       	movq   %xmm1,%r9
1409407af:	41 b8 10 00 00 00    	mov    $0x10,%r8d
1409407b5:	49 8b ce             	mov    %r14,%rcx
1409407b8:	e8 03 08 00 00       	call   0x140940fc0
1409407bd:	49 8b ce             	mov    %r14,%rcx
1409407c0:	44 8b d8             	mov    %eax,%r11d
1409407c3:	e8 38 07 00 00       	call   0x140940f00
1409407c8:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
1409407cd:	44 2b d8             	sub    %eax,%r11d
1409407d0:	49 63 c3             	movslq %r11d,%rax
1409407d3:	48 83 c4 20          	add    $0x20,%rsp
1409407d7:	41 5e                	pop    %r14
1409407d9:	c3                   	ret
1409407da:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
1409407df:	49 8b fe             	mov    %r14,%rdi
1409407e2:	45 85 c9             	test   %r9d,%r9d
1409407e5:	79 05                	jns    0x1409407ec
1409407e7:	44 8b ca             	mov    %edx,%r9d
1409407ea:	eb 0c                	jmp    0x1409407f8
1409407ec:	b8 09 00 00 00       	mov    $0x9,%eax
1409407f1:	44 3b c8             	cmp    %eax,%r9d
1409407f4:	44 0f 4f c8          	cmovg  %eax,%r9d
1409407f8:	66 0f 2e c8          	ucomisd %xmm0,%xmm1
1409407fc:	49 63 c1             	movslq %r9d,%rax
1409407ff:	48 8d 0d fa f7 6b ff 	lea    -0x940806(%rip),%rcx        # 0x140000000