140db6374:	49 8b e8             	mov    %r8,%rbp
140db6377:	4c 8b fa             	mov    %rdx,%r15
140db637a:	4c 8b f1             	mov    %rcx,%r14
140db637d:	0f ae e8             	lfence
140db6380:	41 0f b6 30          	movzbl (%r8),%esi
140db6384:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
140db638b:	9c f2 cb
140db638e:	48 33 f0             	xor    %rax,%rsi
140db6391:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
140db6398:	01 00 00
140db639b:	48 0f af f1          	imul   %rcx,%rsi
140db639f:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
140db63a4:	48 33 f0             	xor    %rax,%rsi
140db63a7:	48 0f af f1          	imul   %rcx,%rsi
140db63ab:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
140db63b0:	48 33 f0             	xor    %rax,%rsi
140db63b3:	48 0f af f1          	imul   %rcx,%rsi
140db63b7:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
140db63bc:	48 33 f0             	xor    %rax,%rsi
140db63bf:	48 0f af f1          	imul   %rcx,%rsi
140db63c3:	41 0f b6 40 04       	movzbl 0x4(%r8),%eax
140db63c8:	48 33 f0             	xor    %rax,%rsi
140db63cb:	48 0f af f1          	imul   %rcx,%rsi
140db63cf:	41 0f b6 40 05       	movzbl 0x5(%r8),%eax
140db63d4:	48 33 f0             	xor    %rax,%rsi
140db63d7:	48 0f af f1          	imul   %rcx,%rsi
140db63db:	41 0f b6 40 06       	movzbl 0x6(%r8),%eax
140db63e0:	48 33 f0             	xor    %rax,%rsi
140db63e3:	48 0f af f1          	imul   %rcx,%rsi
140db63e7:	41 0f b6 40 07       	movzbl 0x7(%r8),%eax
140db63ec:	48 33 f0             	xor    %rax,%rsi
140db63ef:	48 0f af f1          	imul   %rcx,%rsi
140db63f3:	48 8b ce             	mov    %rsi,%rcx
140db63f6:	49 23 4e 30          	and    0x30(%r14),%rcx
140db63fa:	48 03 c9             	add    %rcx,%rcx
140db63fd:	49 8b 46 18          	mov    0x18(%r14),%rax
140db6401:	48 8b 5c c8 08       	mov    0x8(%rax,%rcx,8),%rbx
140db6406:	49 8d 56 08          	lea    0x8(%r14),%rdx
140db640a:	4c 8b 2a             	mov    (%rdx),%r13
140db640d:	49 3b dd             	cmp    %r13,%rbx
140db6410:	75 08                	jne    0x140db641a
140db6412:	49 8b dd             	mov    %r13,%rbx
140db6415:	4d 8b e5             	mov    %r13,%r12
140db6418:	eb 45                	jmp    0x140db645f
140db641a:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
140db641e:	49 8b 00             	mov    (%r8),%rax
140db6421:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140db6425:	74 0f                	je     0x140db6436
140db6427:	48 3b d9             	cmp    %rcx,%rbx
140db642a:	74 2d                	je     0x140db6459
140db642c:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140db6430:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140db6434:	75 f1                	jne    0x140db6427
140db6436:	49 89 1f             	mov    %rbx,(%r15)
140db6439:	41 c6 47 08 00       	movb   $0x0,0x8(%r15)
140db643e:	49 8b c7             	mov    %r15,%rax
140db6441:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
140db6448:	00
140db6449:	48 83 c4 30          	add    $0x30,%rsp
140db644d:	41 5f                	pop    %r15
140db644f:	41 5e                	pop    %r14
140db6451:	41 5d                	pop    %r13
140db6453:	41 5c                	pop    %r12
140db6455:	5f                   	pop    %rdi
140db6456:	5e                   	pop    %rsi
140db6457:	5d                   	pop    %rbp
140db6458:	c3                   	ret
140db6459:	4c 8b eb             	mov    %rbx,%r13
140db645c:	4c 8b e3             	mov    %rbx,%r12
140db645f:	48 b8 92 24 49 92 24 	movabs $0x492492492492492,%rax
140db6466:	49 92 04
140db6469:	49 39 46 10          	cmp    %rax,0x10(%r14)
140db646d:	0f 84 d4 01 00 00    	je     0x140db6647
140db6473:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140db6478:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140db647f:	00 00
140db6481:	0f ae e8             	lfence
140db6484:	b9 38 00 00 00       	mov    $0x38,%ecx
140db6489:	e8 7a 4c 06 00       	call   0x140e1b108
140db648e:	48 8b f8             	mov    %rax,%rdi
140db6491:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140db6496:	0f 10 45 00          	movups 0x0(%rbp),%xmm0
140db649a:	0f 11 40 10          	movups %xmm0,0x10(%rax)
140db649e:	0f 10 4d 10          	movups 0x10(%rbp),%xmm1
140db64a2:	0f 11 48 20          	movups %xmm1,0x20(%rax)
140db64a6:	f2 0f 10 45 20       	movsd  0x20(%rbp),%xmm0
140db64ab:	f2 0f 11 40 30       	movsd  %xmm0,0x30(%rax)
140db64b0:	49 8b 4e 10          	mov    0x10(%r14),%rcx
140db64b4:	48 83 c1 01          	add    $0x1,%rcx
140db64b8:	0f 57 c0             	xorps  %xmm0,%xmm0
140db64bb:	78 07                	js     0x140db64c4
140db64bd:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140db64c2:	eb 15                	jmp    0x140db64d9
140db64c4:	48 8b c1             	mov    %rcx,%rax
140db64c7:	48 d1 e8             	shr    $1,%rax
140db64ca:	83 e1 01             	and    $0x1,%ecx
140db64cd:	48 0b c1             	or     %rcx,%rax
140db64d0:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140db64d5:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140db64d9:	49 8b 6e 38          	mov    0x38(%r14),%rbp
140db64dd:	f3 41 0f 10 1e       	movss  (%r14),%xmm3
140db64e2:	0f 57 d2             	xorps  %xmm2,%xmm2
140db64e5:	48 85 ed             	test   %rbp,%rbp
140db64e8:	78 07                	js     0x140db64f1
140db64ea:	f3 48 0f 2a d5       	cvtsi2ss %rbp,%xmm2
140db64ef:	eb 18                	jmp    0x140db6509
140db64f1:	48 8b cd             	mov    %rbp,%rcx
140db64f4:	48 d1 e9             	shr    $1,%rcx
140db64f7:	48 8b c5             	mov    %rbp,%rax
140db64fa:	83 e0 01             	and    $0x1,%eax
140db64fd:	48 0b c8             	or     %rax,%rcx
140db6500:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140db6505:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140db6509:	0f 28 c8             	movaps %xmm0,%xmm1
140db650c:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140db6510:	0f 2f cb             	comiss %xmm3,%xmm1
140db6513:	0f 86 c9 00 00 00    	jbe    0x140db65e2
140db6519:	f3 0f 5e c3          	divss  %xmm3,%xmm0
140db651d:	e8 fe ab 07 00       	call   0x140e31120
140db6522:	33 c9                	xor    %ecx,%ecx
140db6524:	f3 0f 10 0d 38 81 1f 	movss  0x1f8138(%rip),%xmm1        # 0x140fae664
140db652b:	00
140db652c:	0f 2f c1             	comiss %xmm1,%xmm0
140db652f:	72 16                	jb     0x140db6547
140db6531:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140db6535:	0f 2f c1             	comiss %xmm1,%xmm0
140db6538:	73 0d                	jae    0x140db6547
140db653a:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140db6541:	00 00 80
140db6544:	48 8b c8             	mov    %rax,%rcx
140db6547:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
140db654c:	48 03 c1             	add    %rcx,%rax
140db654f:	b9 08 00 00 00       	mov    $0x8,%ecx
140db6554:	48 3b c1             	cmp    %rcx,%rax
140db6557:	48 0f 47 c8          	cmova  %rax,%rcx
140db655b:	48 3b e9             	cmp    %rcx,%rbp
140db655e:	73 19                	jae    0x140db6579
140db6560:	48 81 fd 00 02 00 00 	cmp    $0x200,%rbp
140db6567:	73 0d                	jae    0x140db6576
140db6569:	48 8d 2c ed 00 00 00 	lea    0x0(,%rbp,8),%rbp
140db6570:	00
140db6571:	48 3b e9             	cmp    %rcx,%rbp
140db6574:	73 03                	jae    0x140db6579
140db6576:	48 8b e9             	mov    %rcx,%rbp
140db6579:	48 8b d5             	mov    %rbp,%rdx
140db657c:	49 8b ce             	mov    %r14,%rcx
140db657f:	e8 bc 6f 49 ff       	call   0x14024d540
140db6584:	48 8b ce             	mov    %rsi,%rcx
140db6587:	49 23 4e 30          	and    0x30(%r14),%rcx
140db658b:	48 03 c9             	add    %rcx,%rcx
140db658e:	49 8b 56 18          	mov    0x18(%r14),%rdx
140db6592:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
140db6597:	49 8b 5e 08          	mov    0x8(%r14),%rbx
140db659b:	48 3b c3             	cmp    %rbx,%rax
140db659e:	75 0b                	jne    0x140db65ab
140db65a0:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140db65a7:	00 00
140db65a9:	eb 2a                	jmp    0x140db65d5
140db65ab:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
140db65af:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140db65b3:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140db65b7:	74 19                	je     0x140db65d2
140db65b9:	0f 1f 80 00 00 00 00 	nopl   0x0(%rax)
140db65c0:	48 8b d8             	mov    %rax,%rbx
140db65c3:	48 3b c2             	cmp    %rdx,%rax
140db65c6:	74 4b                	je     0x140db6613
140db65c8:	48 8b 40 08          	mov    0x8(%rax),%rax
140db65cc:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140db65d0:	75 ee                	jne    0x140db65c0
140db65d2:	48 8b 18             	mov    (%rax),%rbx
140db65d5:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140db65da:	4c 8b e3             	mov    %rbx,%r12
140db65dd:	4c 8b 6c 24 20       	mov    0x20(%rsp),%r13
140db65e2:	48 8b 4b 08          	mov    0x8(%rbx),%rcx
140db65e6:	49 ff 46 10          	incq   0x10(%r14)
140db65ea:	4c 89 2f             	mov    %r13,(%rdi)
140db65ed:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
140db65f1:	48 89 39             	mov    %rdi,(%rcx)
140db65f4:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140db65f8:	49 8b 46 18          	mov    0x18(%r14),%rax
140db65fc:	49 23 76 30          	and    0x30(%r14),%rsi
140db6600:	48 03 f6             	add    %rsi,%rsi
140db6603:	48 8b 14 f0          	mov    (%rax,%rsi,8),%rdx
140db6607:	49 3b 56 08          	cmp    0x8(%r14),%rdx
140db660b:	75 16                	jne    0x140db6623
140db660d:	48 89 3c f0          	mov    %rdi,(%rax,%rsi,8)
140db6611:	eb 22                	jmp    0x140db6635
140db6613:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140db6618:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140db661f:	00 00
140db6621:	eb b7                	jmp    0x140db65da
140db6623:	49 3b d4             	cmp    %r12,%rdx
140db6626:	75 06                	jne    0x140db662e
140db6628:	48 89 3c f0          	mov    %rdi,(%rax,%rsi,8)
140db662c:	eb 0c                	jmp    0x140db663a
140db662e:	48 39 4c f0 08       	cmp    %rcx,0x8(%rax,%rsi,8)
140db6633:	75 05                	jne    0x140db663a
140db6635:	48 89 7c f0 08       	mov    %rdi,0x8(%rax,%rsi,8)
140db663a:	49 89 3f             	mov    %rdi,(%r15)
140db663d:	41 c6 47 08 01       	movb   $0x1,0x8(%r15)
140db6642:	e9 f7 fd ff ff       	jmp    0x140db643e
140db6647:	48 8d 0d 52 7e 1f 00 	lea    0x1f7e52(%rip),%rcx        # 0x140fae4a0
140db664e:	e8 61 4d 04 00       	call   0x140dfb3b4
140db6653:	cc                   	int3
140db6654:	cc                   	int3
140db6655:	cc                   	int3
140db6656:	cc                   	int3
140db6657:	cc                   	int3
140db6658:	cc                   	int3
140db6659:	cc                   	int3
140db665a:	cc                   	int3
140db665b:	cc                   	int3
140db665c:	cc                   	int3
140db665d:	cc                   	int3
140db665e:	cc                   	int3
140db665f:	cc                   	int3
140db6660:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
140db6665:	53                   	push   %rbx
140db6666:	55                   	push   %rbp
140db6667:	56                   	push   %rsi
140db6668:	57                   	push   %rdi
140db6669:	41 54                	push   %r12
140db666b:	41 56                	push   %r14
140db666d:	41 57                	push   %r15
140db666f:	48 83 ec 30          	sub    $0x30,%rsp
140db6673:	48 8b f9             	mov    %rcx,%rdi
140db6676:	4c 89 01             	mov    %r8,(%rcx)
140db6679:	45 33 e4             	xor    %r12d,%r12d
140db667c:	4c 89 61 08          	mov    %r12,0x8(%rcx)
140db6680:	49 69 c1 80 96 98 00 	imul   $0x989680,%r9,%rax
140db6687:	48 89 41 10          	mov    %rax,0x10(%rcx)
140db668b:	48 83 c1 18          	add    $0x18,%rcx
140db668f:	45 33 c0             	xor    %r8d,%r8d
140db6692:	33 d2                	xor    %edx,%edx
140db6694:	ff 15 86 cc 1c 00    	call   *0x1ccc86(%rip)        # 0x140f83320
140db669a:	90                   	nop
140db669b:	4c 89 67 40          	mov    %r12,0x40(%rdi)
140db669f:	48 8d 5f 48          	lea    0x48(%rdi),%rbx
140db66a3:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
140db66aa:	00
140db66ab:	44 89 a4 24 80 00 00 	mov    %r12d,0x80(%rsp)
140db66b2:	00
140db66b3:	41 8b c4             	mov    %r12d,%eax
140db66b6:	89 03                	mov    %eax,(%rbx)
140db66b8:	4c 89 63 08          	mov    %r12,0x8(%rbx)
140db66bc:	4c 89 63 10          	mov    %r12,0x10(%rbx)
140db66c0:	0f ae e8             	lfence
140db66c3:	b9 38 00 00 00       	mov    $0x38,%ecx
140db66c8:	e8 3b 4a 06 00       	call   0x140e1b108
140db66cd:	48 89 00             	mov    %rax,(%rax)
140db66d0:	48 89 40 08          	mov    %rax,0x8(%rax)
140db66d4:	48 89 43 08          	mov    %rax,0x8(%rbx)
140db66d8:	48 8d 4b 18          	lea    0x18(%rbx),%rcx
140db66dc:	4c 89 21             	mov    %r12,(%rcx)
140db66df:	4c 89 61 08          	mov    %r12,0x8(%rcx)
140db66e3:	4c 89 61 10          	mov    %r12,0x10(%rcx)
140db66e7:	48 c7 43 30 07 00 00 	movq   $0x7,0x30(%rbx)
140db66ee:	00
140db66ef:	48 c7 43 38 08 00 00 	movq   $0x8,0x38(%rbx)
140db66f6:	00
140db66f7:	c7 03 00 00 80 3f    	movl   $0x3f800000,(%rbx)
140db66fd:	4c 8b 43 08          	mov    0x8(%rbx),%r8
140db6701:	ba 10 00 00 00       	mov    $0x10,%edx
140db6706:	e8 65 d2 46 ff       	call   0x140223970
140db670b:	90                   	nop
140db670c:	4c 89 a7 88 00 00 00 	mov    %r12,0x88(%rdi)
140db6713:	4c 89 a7 90 00 00 00 	mov    %r12,0x90(%rdi)
140db671a:	0f ae e8             	lfence
140db671d:	b9 20 00 00 00       	mov    $0x20,%ecx
140db6722:	e8 e1 49 06 00       	call   0x140e1b108
140db6727:	48 89 00             	mov    %rax,(%rax)
140db672a:	48 89 40 08          	mov    %rax,0x8(%rax)
140db672e:	48 89 87 88 00 00 00 	mov    %rax,0x88(%rdi)
140db6735:	48 8d 9f 98 00 00 00 	lea    0x98(%rdi),%rbx
140db673c:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
140db6743:	00
140db6744:	4c 89 63 38          	mov    %r12,0x38(%rbx)
140db6748:	4c 8b b4 24 90 00 00 	mov    0x90(%rsp),%r14
140db674f:	00
140db6750:	49 8b 4e 38          	mov    0x38(%r14),%rcx
140db6754:	48 85 c9             	test   %rcx,%rcx
140db6757:	74 13                	je     0x140db676c
140db6759:	48 8b 01             	mov    (%rcx),%rax
140db675c:	48 8b d3             	mov    %rbx,%rdx
140db675f:	48 8b 00             	mov    (%rax),%rax
140db6762:	ff 15 b8 d2 1c 00    	call   *0x1cd2b8(%rip)        # 0x140f83a20
140db6768:	48 89 43 38          	mov    %rax,0x38(%rbx)
140db676c:	48 8d 9f d8 00 00 00 	lea    0xd8(%rdi),%rbx
140db6773:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
140db677a:	00
140db677b:	4c 89 63 38          	mov    %r12,0x38(%rbx)
140db677f:	48 8b b4 24 98 00 00 	mov    0x98(%rsp),%rsi
140db6786:	00
140db6787:	48 8b 4e 38          	mov    0x38(%rsi),%rcx
140db678b:	48 85 c9             	test   %rcx,%rcx
140db678e:	74 13                	je     0x140db67a3
140db6790:	48 8b 01             	mov    (%rcx),%rax
140db6793:	48 8b d3             	mov    %rbx,%rdx
140db6796:	48 8b 00             	mov    (%rax),%rax
140db6799:	ff 15 81 d2 1c 00    	call   *0x1cd281(%rip)        # 0x140f83a20
140db679f:	48 89 43 38          	mov    %rax,0x38(%rbx)
140db67a3:	48 8d af 18 01 00 00 	lea    0x118(%rdi),%rbp
140db67aa:	48 89 ac 24 80 00 00 	mov    %rbp,0x80(%rsp)
140db67b1:	00
140db67b2:	4c 89 65 38          	mov    %r12,0x38(%rbp)
140db67b6:	48 8b 9c 24 a0 00 00 	mov    0xa0(%rsp),%rbx
140db67bd:	00
140db67be:	48 8b 4b 38          	mov    0x38(%rbx),%rcx
140db67c2:	48 85 c9             	test   %rcx,%rcx
140db67c5:	74 13                	je     0x140db67da
140db67c7:	48 8b 01             	mov    (%rcx),%rax
140db67ca:	48 8b d5             	mov    %rbp,%rdx
140db67cd:	48 8b 00             	mov    (%rax),%rax
140db67d0:	ff 15 4a d2 1c 00    	call   *0x1cd24a(%rip)        # 0x140f83a20
140db67d6:	48 89 45 38          	mov    %rax,0x38(%rbp)
140db67da:	48 83 3f 00          	cmpq   $0x0,(%rdi)
140db67de:	0f 94 c0             	sete   %al
140db67e1:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
140db67e6:	48 8d 15 73 c2 1f 00 	lea    0x1fc273(%rip),%rdx        # 0x140fb2a60
140db67ed:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
140db67f2:	88 44 24 20          	mov    %al,0x20(%rsp)
140db67f6:	41 b9 57 00 07 80    	mov    $0x80070057,%r9d
140db67fc:	4c 8d 05 85 c2 1f 00 	lea    0x1fc285(%rip),%r8        # 0x140fb2a88
140db6803:	ba b8 00 00 00       	mov    $0xb8,%edx
140db6808:	e8 13 22 49 ff       	call   0x140248a20
140db680d:	48 83 7f 10 00       	cmpq   $0x0,0x10(%rdi)
140db6812:	74 56                	je     0x140db686a
140db6814:	45 33 c0             	xor    %r8d,%r8d
140db6817:	48 8b d7             	mov    %rdi,%rdx
140db681a:	48 8d 0d 6f 02 00 00 	lea    0x26f(%rip),%rcx        # 0x140db6a90
140db6821:	ff 15 11 cb 1c 00    	call   *0x1ccb11(%rip)        # 0x140f83338
140db6827:	48 8b d0             	mov    %rax,%rdx
140db682a:	48 8d 4f 40          	lea    0x40(%rdi),%rcx
140db682e:	e8 6d 31 49 ff       	call   0x1402499a0
140db6833:	48 83 7f 40 00       	cmpq   $0x0,0x40(%rdi)
140db6838:	0f 95 c0             	setne  %al
140db683b:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
140db6840:	48 8d 15 69 c2 1f 00 	lea    0x1fc269(%rip),%rdx        # 0x140fb2ab0
140db6847:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140db684c:	44 0f b6 c8          	movzbl %al,%r9d
140db6850:	4c 8d 05 31 c2 1f 00 	lea    0x1fc231(%rip),%r8        # 0x140fb2a88
140db6857:	ba be 00 00 00       	mov    $0xbe,%edx
140db685c:	e8 7f 21 49 ff       	call   0x1402489e0
140db6861:	48 8b cf             	mov    %rdi,%rcx
140db6864:	e8 b7 31 49 ff       	call   0x140249a20
140db6869:	90                   	nop
140db686a:	49 8b 4e 38          	mov    0x38(%r14),%rcx
140db686e:	48 85 c9             	test   %rcx,%rcx
140db6871:	74 17                	je     0x140db688a
140db6873:	48 8b 01             	mov    (%rcx),%rax