140dad3aa:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
140dad3ae:	49 8b 00             	mov    (%r8),%rax
140dad3b1:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140dad3b5:	74 0f                	je     0x140dad3c6
140dad3b7:	48 3b d9             	cmp    %rcx,%rbx
140dad3ba:	74 2d                	je     0x140dad3e9
140dad3bc:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140dad3c0:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140dad3c4:	75 f1                	jne    0x140dad3b7
140dad3c6:	49 89 1e             	mov    %rbx,(%r14)
140dad3c9:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
140dad3ce:	49 8b c6             	mov    %r14,%rax
140dad3d1:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
140dad3d8:	00
140dad3d9:	48 83 c4 30          	add    $0x30,%rsp
140dad3dd:	41 5f                	pop    %r15
140dad3df:	41 5e                	pop    %r14
140dad3e1:	41 5d                	pop    %r13
140dad3e3:	41 5c                	pop    %r12
140dad3e5:	5f                   	pop    %rdi
140dad3e6:	5e                   	pop    %rsi
140dad3e7:	5d                   	pop    %rbp
140dad3e8:	c3                   	ret
140dad3e9:	4c 8b e3             	mov    %rbx,%r12
140dad3ec:	4c 8b fb             	mov    %rbx,%r15
140dad3ef:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
140dad3f6:	ff ff 07
140dad3f9:	48 39 45 10          	cmp    %rax,0x10(%rbp)
140dad3fd:	0f 84 c7 01 00 00    	je     0x140dad5ca
140dad403:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140dad408:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140dad40f:	00 00
140dad411:	0f ae e8             	lfence
140dad414:	b9 20 00 00 00       	mov    $0x20,%ecx
140dad419:	e8 ea dc 06 00       	call   0x140e1b108
140dad41e:	48 8b f8             	mov    %rax,%rdi
140dad421:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140dad426:	48 8b 06             	mov    (%rsi),%rax
140dad429:	48 89 47 10          	mov    %rax,0x10(%rdi)
140dad42d:	48 c7 47 18 00 00 00 	movq   $0x0,0x18(%rdi)
140dad434:	00
140dad435:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140dad439:	48 83 c1 01          	add    $0x1,%rcx
140dad43d:	0f 57 c0             	xorps  %xmm0,%xmm0
140dad440:	78 07                	js     0x140dad449
140dad442:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140dad447:	eb 15                	jmp    0x140dad45e
140dad449:	48 8b c1             	mov    %rcx,%rax
140dad44c:	48 d1 e8             	shr    $1,%rax
140dad44f:	83 e1 01             	and    $0x1,%ecx
140dad452:	48 0b c1             	or     %rcx,%rax
140dad455:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140dad45a:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140dad45e:	48 8b 75 38          	mov    0x38(%rbp),%rsi
140dad462:	f3 0f 10 5d 00       	movss  0x0(%rbp),%xmm3
140dad467:	0f 57 d2             	xorps  %xmm2,%xmm2
140dad46a:	48 85 f6             	test   %rsi,%rsi
140dad46d:	78 07                	js     0x140dad476
140dad46f:	f3 48 0f 2a d6       	cvtsi2ss %rsi,%xmm2
140dad474:	eb 18                	jmp    0x140dad48e
140dad476:	48 8b ce             	mov    %rsi,%rcx
140dad479:	48 d1 e9             	shr    $1,%rcx
140dad47c:	48 8b c6             	mov    %rsi,%rax
140dad47f:	83 e0 01             	and    $0x1,%eax
140dad482:	48 0b c8             	or     %rax,%rcx
140dad485:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140dad48a:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140dad48e:	0f 28 c8             	movaps %xmm0,%xmm1
140dad491:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140dad495:	0f 2f cb             	comiss %xmm3,%xmm1
140dad498:	0f 86 c4 00 00 00    	jbe    0x140dad562
140dad49e:	f3 0f 5e c3          	divss  %xmm3,%xmm0
140dad4a2:	e8 79 3c 08 00       	call   0x140e31120
140dad4a7:	33 c9                	xor    %ecx,%ecx
140dad4a9:	f3 0f 10 0d b3 11 20 	movss  0x2011b3(%rip),%xmm1        # 0x140fae664
140dad4b0:	00
140dad4b1:	0f 2f c1             	comiss %xmm1,%xmm0
140dad4b4:	72 16                	jb     0x140dad4cc
140dad4b6:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140dad4ba:	0f 2f c1             	comiss %xmm1,%xmm0
140dad4bd:	73 0d                	jae    0x140dad4cc
140dad4bf:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140dad4c6:	00 00 80
140dad4c9:	48 8b c8             	mov    %rax,%rcx
140dad4cc:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
140dad4d1:	48 03 c1             	add    %rcx,%rax
140dad4d4:	b9 08 00 00 00       	mov    $0x8,%ecx
140dad4d9:	48 3b c1             	cmp    %rcx,%rax
140dad4dc:	48 0f 47 c8          	cmova  %rax,%rcx
140dad4e0:	48 3b f1             	cmp    %rcx,%rsi
140dad4e3:	73 19                	jae    0x140dad4fe
140dad4e5:	48 81 fe 00 02 00 00 	cmp    $0x200,%rsi
140dad4ec:	73 0d                	jae    0x140dad4fb
140dad4ee:	48 8d 34 f5 00 00 00 	lea    0x0(,%rsi,8),%rsi
140dad4f5:	00
140dad4f6:	48 3b f1             	cmp    %rcx,%rsi
140dad4f9:	73 03                	jae    0x140dad4fe
140dad4fb:	48 8b f1             	mov    %rcx,%rsi
140dad4fe:	48 8b d6             	mov    %rsi,%rdx
140dad501:	48 8b cd             	mov    %rbp,%rcx
140dad504:	e8 37 00 4a ff       	call   0x14024d540
140dad509:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
140dad50d:	49 23 cd             	and    %r13,%rcx
140dad510:	48 03 c9             	add    %rcx,%rcx
140dad513:	48 8b 55 18          	mov    0x18(%rbp),%rdx
140dad517:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
140dad51c:	48 8b 5d 08          	mov    0x8(%rbp),%rbx
140dad520:	48 3b c3             	cmp    %rbx,%rax
140dad523:	75 0b                	jne    0x140dad530
140dad525:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140dad52c:	00 00
140dad52e:	eb 25                	jmp    0x140dad555
140dad530:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
140dad534:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140dad538:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140dad53c:	74 14                	je     0x140dad552
140dad53e:	66 90                	xchg   %ax,%ax
140dad540:	48 8b d8             	mov    %rax,%rbx
140dad543:	48 3b c2             	cmp    %rdx,%rax
140dad546:	74 4e                	je     0x140dad596
140dad548:	48 8b 40 08          	mov    0x8(%rax),%rax
140dad54c:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140dad550:	75 ee                	jne    0x140dad540
140dad552:	48 8b 18             	mov    (%rax),%rbx
140dad555:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140dad55a:	4c 8b fb             	mov    %rbx,%r15
140dad55d:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
140dad562:	48 8b 53 08          	mov    0x8(%rbx),%rdx
140dad566:	48 ff 45 10          	incq   0x10(%rbp)
140dad56a:	4c 89 27             	mov    %r12,(%rdi)
140dad56d:	48 89 57 08          	mov    %rdx,0x8(%rdi)
140dad571:	48 89 3a             	mov    %rdi,(%rdx)
140dad574:	48 89 7b 08          	mov    %rdi,0x8(%rbx)
140dad578:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
140dad57c:	48 8b 45 30          	mov    0x30(%rbp),%rax
140dad580:	49 23 c5             	and    %r13,%rax
140dad583:	48 03 c0             	add    %rax,%rax
140dad586:	4c 8b 04 c1          	mov    (%rcx,%rax,8),%r8
140dad58a:	4c 3b 45 08          	cmp    0x8(%rbp),%r8
140dad58e:	75 16                	jne    0x140dad5a6
140dad590:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
140dad594:	eb 22                	jmp    0x140dad5b8
140dad596:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140dad59b:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140dad5a2:	00 00
140dad5a4:	eb b4                	jmp    0x140dad55a
140dad5a6:	4d 3b c7             	cmp    %r15,%r8
140dad5a9:	75 06                	jne    0x140dad5b1
140dad5ab:	48 89 3c c1          	mov    %rdi,(%rcx,%rax,8)
140dad5af:	eb 0c                	jmp    0x140dad5bd
140dad5b1:	48 39 54 c1 08       	cmp    %rdx,0x8(%rcx,%rax,8)
140dad5b6:	75 05                	jne    0x140dad5bd
140dad5b8:	48 89 7c c1 08       	mov    %rdi,0x8(%rcx,%rax,8)
140dad5bd:	49 89 3e             	mov    %rdi,(%r14)
140dad5c0:	41 c6 46 08 01       	movb   $0x1,0x8(%r14)
140dad5c5:	e9 04 fe ff ff       	jmp    0x140dad3ce
140dad5ca:	48 8d 0d cf 0e 20 00 	lea    0x200ecf(%rip),%rcx        # 0x140fae4a0
140dad5d1:	e8 de dd 04 00       	call   0x140dfb3b4
140dad5d6:	cc                   	int3
140dad5d7:	cc                   	int3
140dad5d8:	cc                   	int3
140dad5d9:	cc                   	int3
140dad5da:	cc                   	int3
140dad5db:	cc                   	int3
140dad5dc:	cc                   	int3
140dad5dd:	cc                   	int3
140dad5de:	cc                   	int3
140dad5df:	cc                   	int3
140dad5e0:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
140dad5e5:	55                   	push   %rbp
140dad5e6:	56                   	push   %rsi
140dad5e7:	57                   	push   %rdi
140dad5e8:	41 54                	push   %r12
140dad5ea:	41 55                	push   %r13
140dad5ec:	41 56                	push   %r14
140dad5ee:	41 57                	push   %r15
140dad5f0:	48 83 ec 30          	sub    $0x30,%rsp
140dad5f4:	49 8b f0             	mov    %r8,%rsi
140dad5f7:	4c 8b f2             	mov    %rdx,%r14
140dad5fa:	48 8b e9             	mov    %rcx,%rbp
140dad5fd:	0f ae e8             	lfence
140dad600:	45 0f b6 28          	movzbl (%r8),%r13d
140dad604:	48 b8 25 23 22 84 e4 	movabs $0xcbf29ce484222325,%rax
140dad60b:	9c f2 cb
140dad60e:	4c 33 e8             	xor    %rax,%r13
140dad611:	48 b9 b3 01 00 00 00 	movabs $0x100000001b3,%rcx
140dad618:	01 00 00
140dad61b:	4c 0f af e9          	imul   %rcx,%r13
140dad61f:	41 0f b6 40 01       	movzbl 0x1(%r8),%eax
140dad624:	4c 33 e8             	xor    %rax,%r13
140dad627:	4c 0f af e9          	imul   %rcx,%r13
140dad62b:	41 0f b6 40 02       	movzbl 0x2(%r8),%eax
140dad630:	4c 33 e8             	xor    %rax,%r13
140dad633:	4c 0f af e9          	imul   %rcx,%r13
140dad637:	41 0f b6 40 03       	movzbl 0x3(%r8),%eax
140dad63c:	4c 33 e8             	xor    %rax,%r13
140dad63f:	4c 0f af e9          	imul   %rcx,%r13
140dad643:	41 0f b6 40 04       	movzbl 0x4(%r8),%eax
140dad648:	4c 33 e8             	xor    %rax,%r13
140dad64b:	4c 0f af e9          	imul   %rcx,%r13
140dad64f:	41 0f b6 40 05       	movzbl 0x5(%r8),%eax
140dad654:	4c 33 e8             	xor    %rax,%r13
140dad657:	4c 0f af e9          	imul   %rcx,%r13
140dad65b:	41 0f b6 40 06       	movzbl 0x6(%r8),%eax
140dad660:	4c 33 e8             	xor    %rax,%r13
140dad663:	4c 0f af e9          	imul   %rcx,%r13
140dad667:	41 0f b6 40 07       	movzbl 0x7(%r8),%eax
140dad66c:	4c 33 e8             	xor    %rax,%r13
140dad66f:	4c 0f af e9          	imul   %rcx,%r13
140dad673:	49 8b cd             	mov    %r13,%rcx
140dad676:	48 23 4d 30          	and    0x30(%rbp),%rcx
140dad67a:	48 03 c9             	add    %rcx,%rcx
140dad67d:	48 8b 45 18          	mov    0x18(%rbp),%rax
140dad681:	48 8b 5c c8 08       	mov    0x8(%rax,%rcx,8),%rbx
140dad686:	48 8d 55 08          	lea    0x8(%rbp),%rdx
140dad68a:	4c 8b 22             	mov    (%rdx),%r12
140dad68d:	49 3b dc             	cmp    %r12,%rbx
140dad690:	75 08                	jne    0x140dad69a
140dad692:	49 8b dc             	mov    %r12,%rbx
140dad695:	4d 8b fc             	mov    %r12,%r15
140dad698:	eb 45                	jmp    0x140dad6df
140dad69a:	48 8b 0c c8          	mov    (%rax,%rcx,8),%rcx
140dad69e:	49 8b 00             	mov    (%r8),%rax
140dad6a1:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140dad6a5:	74 0f                	je     0x140dad6b6
140dad6a7:	48 3b d9             	cmp    %rcx,%rbx
140dad6aa:	74 2d                	je     0x140dad6d9
140dad6ac:	48 8b 5b 08          	mov    0x8(%rbx),%rbx
140dad6b0:	48 3b 43 10          	cmp    0x10(%rbx),%rax
140dad6b4:	75 f1                	jne    0x140dad6a7
140dad6b6:	49 89 1e             	mov    %rbx,(%r14)
140dad6b9:	41 c6 46 08 00       	movb   $0x0,0x8(%r14)
140dad6be:	49 8b c6             	mov    %r14,%rax
140dad6c1:	48 8b 9c 24 88 00 00 	mov    0x88(%rsp),%rbx
140dad6c8:	00
140dad6c9:	48 83 c4 30          	add    $0x30,%rsp
140dad6cd:	41 5f                	pop    %r15
140dad6cf:	41 5e                	pop    %r14
140dad6d1:	41 5d                	pop    %r13
140dad6d3:	41 5c                	pop    %r12
140dad6d5:	5f                   	pop    %rdi
140dad6d6:	5e                   	pop    %rsi
140dad6d7:	5d                   	pop    %rbp
140dad6d8:	c3                   	ret
140dad6d9:	4c 8b e3             	mov    %rbx,%r12
140dad6dc:	4c 8b fb             	mov    %rbx,%r15
140dad6df:	48 b8 55 55 55 55 55 	movabs $0x555555555555555,%rax
140dad6e6:	55 55 05
140dad6e9:	48 39 45 10          	cmp    %rax,0x10(%rbp)
140dad6ed:	0f 84 e7 01 00 00    	je     0x140dad8da
140dad6f3:	48 89 54 24 20       	mov    %rdx,0x20(%rsp)
140dad6f8:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140dad6ff:	00 00
140dad701:	0f ae e8             	lfence
140dad704:	b9 30 00 00 00       	mov    $0x30,%ecx
140dad709:	e8 fa d9 06 00       	call   0x140e1b108
140dad70e:	48 8b f8             	mov    %rax,%rdi
140dad711:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
140dad716:	48 8b 06             	mov    (%rsi),%rax
140dad719:	48 89 47 10          	mov    %rax,0x10(%rdi)
140dad71d:	33 c9                	xor    %ecx,%ecx
140dad71f:	48 89 4f 18          	mov    %rcx,0x18(%rdi)
140dad723:	48 89 4f 20          	mov    %rcx,0x20(%rdi)
140dad727:	48 8b 46 08          	mov    0x8(%rsi),%rax
140dad72b:	48 89 47 18          	mov    %rax,0x18(%rdi)
140dad72f:	48 8b 46 10          	mov    0x10(%rsi),%rax
140dad733:	48 89 47 20          	mov    %rax,0x20(%rdi)
140dad737:	48 89 4e 08          	mov    %rcx,0x8(%rsi)
140dad73b:	48 89 4e 10          	mov    %rcx,0x10(%rsi)
140dad73f:	48 8b 46 18          	mov    0x18(%rsi),%rax
140dad743:	48 89 47 28          	mov    %rax,0x28(%rdi)
140dad747:	48 8b 4d 10          	mov    0x10(%rbp),%rcx
140dad74b:	48 83 c1 01          	add    $0x1,%rcx
140dad74f:	0f 57 c0             	xorps  %xmm0,%xmm0
140dad752:	78 07                	js     0x140dad75b
140dad754:	f3 48 0f 2a c1       	cvtsi2ss %rcx,%xmm0
140dad759:	eb 15                	jmp    0x140dad770
140dad75b:	48 8b c1             	mov    %rcx,%rax
140dad75e:	48 d1 e8             	shr    $1,%rax
140dad761:	83 e1 01             	and    $0x1,%ecx
140dad764:	48 0b c1             	or     %rcx,%rax
140dad767:	f3 48 0f 2a c0       	cvtsi2ss %rax,%xmm0
140dad76c:	f3 0f 58 c0          	addss  %xmm0,%xmm0
140dad770:	48 8b 75 38          	mov    0x38(%rbp),%rsi
140dad774:	f3 0f 10 5d 00       	movss  0x0(%rbp),%xmm3
140dad779:	0f 57 d2             	xorps  %xmm2,%xmm2
140dad77c:	48 85 f6             	test   %rsi,%rsi
140dad77f:	78 07                	js     0x140dad788
140dad781:	f3 48 0f 2a d6       	cvtsi2ss %rsi,%xmm2
140dad786:	eb 18                	jmp    0x140dad7a0
140dad788:	48 8b ce             	mov    %rsi,%rcx
140dad78b:	48 d1 e9             	shr    $1,%rcx
140dad78e:	48 8b c6             	mov    %rsi,%rax
140dad791:	83 e0 01             	and    $0x1,%eax
140dad794:	48 0b c8             	or     %rax,%rcx
140dad797:	f3 48 0f 2a d1       	cvtsi2ss %rcx,%xmm2
140dad79c:	f3 0f 58 d2          	addss  %xmm2,%xmm2
140dad7a0:	0f 28 c8             	movaps %xmm0,%xmm1
140dad7a3:	f3 0f 5e ca          	divss  %xmm2,%xmm1
140dad7a7:	0f 2f cb             	comiss %xmm3,%xmm1
140dad7aa:	0f 86 c2 00 00 00    	jbe    0x140dad872
140dad7b0:	f3 0f 5e c3          	divss  %xmm3,%xmm0
140dad7b4:	e8 67 39 08 00       	call   0x140e31120
140dad7b9:	33 c9                	xor    %ecx,%ecx
140dad7bb:	f3 0f 10 0d a1 0e 20 	movss  0x200ea1(%rip),%xmm1        # 0x140fae664
140dad7c2:	00
140dad7c3:	0f 2f c1             	comiss %xmm1,%xmm0
140dad7c6:	72 16                	jb     0x140dad7de
140dad7c8:	f3 0f 5c c1          	subss  %xmm1,%xmm0
140dad7cc:	0f 2f c1             	comiss %xmm1,%xmm0
140dad7cf:	73 0d                	jae    0x140dad7de
140dad7d1:	48 b8 00 00 00 00 00 	movabs $0x8000000000000000,%rax
140dad7d8:	00 00 80
140dad7db:	48 8b c8             	mov    %rax,%rcx
140dad7de:	f3 48 0f 2c c0       	cvttss2si %xmm0,%rax
140dad7e3:	48 03 c1             	add    %rcx,%rax
140dad7e6:	b9 08 00 00 00       	mov    $0x8,%ecx
140dad7eb:	48 3b c1             	cmp    %rcx,%rax
140dad7ee:	48 0f 47 c8          	cmova  %rax,%rcx
140dad7f2:	48 3b f1             	cmp    %rcx,%rsi
140dad7f5:	73 19                	jae    0x140dad810
140dad7f7:	48 81 fe 00 02 00 00 	cmp    $0x200,%rsi
140dad7fe:	73 0d                	jae    0x140dad80d
140dad800:	48 8d 34 f5 00 00 00 	lea    0x0(,%rsi,8),%rsi
140dad807:	00
140dad808:	48 3b f1             	cmp    %rcx,%rsi
140dad80b:	73 03                	jae    0x140dad810
140dad80d:	48 8b f1             	mov    %rcx,%rsi
140dad810:	48 8b d6             	mov    %rsi,%rdx
140dad813:	48 8b cd             	mov    %rbp,%rcx
140dad816:	e8 25 fd 49 ff       	call   0x14024d540
140dad81b:	48 8b 4d 30          	mov    0x30(%rbp),%rcx
140dad81f:	49 23 cd             	and    %r13,%rcx
140dad822:	48 03 c9             	add    %rcx,%rcx
140dad825:	48 8b 55 18          	mov    0x18(%rbp),%rdx
140dad829:	48 8b 44 ca 08       	mov    0x8(%rdx,%rcx,8),%rax
140dad82e:	48 8b 5d 08          	mov    0x8(%rbp),%rbx
140dad832:	48 3b c3             	cmp    %rbx,%rax
140dad835:	75 0b                	jne    0x140dad842
140dad837:	48 c7 44 24 28 00 00 	movq   $0x0,0x28(%rsp)
140dad83e:	00 00
140dad840:	eb 23                	jmp    0x140dad865
140dad842:	48 8b 14 ca          	mov    (%rdx,%rcx,8),%rdx
140dad846:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
140dad84a:	48 3b 48 10          	cmp    0x10(%rax),%rcx
140dad84e:	74 12                	je     0x140dad862
140dad850:	48 8b d8             	mov    %rax,%rbx
140dad853:	48 3b c2             	cmp    %rdx,%rax
140dad856:	74 4e                	je     0x140dad8a6
140dad858:	48 8b 40 08          	mov    0x8(%rax),%rax