14006453a:	48 21 d8             	and    %rbx,%rax
14006453d:	48 b9 ff ff ff ff ff 	movabs $0xffffffffffffff,%rcx
140064544:	ff ff 00
140064547:	48 21 ce             	and    %rcx,%rsi
14006454a:	48 09 c6             	or     %rax,%rsi
14006454d:	48 89 77 10          	mov    %rsi,0x10(%rdi)
140064551:	ff 4f 24             	decl   0x24(%rdi)
140064554:	48 83 c4 28          	add    $0x28,%rsp
140064558:	5b                   	pop    %rbx
140064559:	5f                   	pop    %rdi
14006455a:	5e                   	pop    %rsi
14006455b:	41 5e                	pop    %r14
14006455d:	c3                   	ret
14006455e:	48 8b 0d bb e6 0a 00 	mov    0xae6bb(%rip),%rcx        # 0x140112c20
140064565:	e8 16 36 06 00       	call   0x1400c7b80
14006456a:	eb 91                	jmp    0x1400644fd
14006456c:	80 7e 10 01          	cmpb   $0x1,0x10(%rsi)
140064570:	75 b5                	jne    0x140064527
140064572:	48 83 7f 18 00       	cmpq   $0x0,0x18(%rdi)
140064577:	75 07                	jne    0x140064580
140064579:	f0 48 09 5f 10       	lock or %rbx,0x10(%rdi)
14006457e:	eb a7                	jmp    0x140064527
140064580:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
140064584:	4c 8b 77 10          	mov    0x10(%rdi),%r14
140064588:	e8 43 36 06 00       	call   0x1400c7bd0
14006458d:	48 b9 00 00 00 00 00 	movabs $0xff00000000000000,%rcx
140064594:	00 00 ff
140064597:	4c 21 f1             	and    %r14,%rcx
14006459a:	48 09 c1             	or     %rax,%rcx
14006459d:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1400645a1:	eb d6                	jmp    0x140064579
1400645a3:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
1400645a7:	4c 8b 77 10          	mov    0x10(%rdi),%r14
1400645ab:	e8 20 36 06 00       	call   0x1400c7bd0
1400645b0:	48 b9 00 00 00 00 00 	movabs $0xff00000000000000,%rcx
1400645b7:	00 00 ff
1400645ba:	4c 21 f1             	and    %r14,%rcx
1400645bd:	48 09 c1             	or     %rax,%rcx
1400645c0:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1400645c4:	e9 4f ff ff ff       	jmp    0x140064518
1400645c9:	48 8d 4f 18          	lea    0x18(%rdi),%rcx
1400645cd:	4c 8b 77 10          	mov    0x10(%rdi),%r14
1400645d1:	e8 fa 35 06 00       	call   0x1400c7bd0
1400645d6:	48 b9 00 00 00 00 00 	movabs $0xff00000000000000,%rcx
1400645dd:	00 00 ff
1400645e0:	4c 21 f1             	and    %r14,%rcx
1400645e3:	48 09 c1             	or     %rax,%rcx
1400645e6:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
1400645ea:	e9 47 ff ff ff       	jmp    0x140064536
1400645ef:	cc                   	int3
1400645f0:	8b 05 22 b1 0a 00    	mov    0xab122(%rip),%eax        # 0x14010f718
1400645f6:	65 48 8b 0c 25 58 00 	mov    %gs:0x58,%rcx
1400645fd:	00 00
1400645ff:	48 8b 04 c1          	mov    (%rcx,%rax,8),%rax
140064603:	48 8b 80 60 01 00 00 	mov    0x160(%rax),%rax
14006460a:	c3                   	ret
14006460b:	cc                   	int3
14006460c:	cc                   	int3
14006460d:	cc                   	int3
14006460e:	cc                   	int3
14006460f:	cc                   	int3
140064610:	41 57                	push   %r15
140064612:	41 56                	push   %r14
140064614:	56                   	push   %rsi
140064615:	57                   	push   %rdi
140064616:	53                   	push   %rbx
140064617:	48 83 ec 40          	sub    $0x40,%rsp
14006461b:	48 8b 05 1e ca 09 00 	mov    0x9ca1e(%rip),%rax        # 0x140101040
140064622:	48 31 e0             	xor    %rsp,%rax
140064625:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14006462a:	49 bf f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%r15
140064631:	ff ff 7f
140064634:	48 8b 7a 08          	mov    0x8(%rdx),%rdi
140064638:	4c 39 ff             	cmp    %r15,%rdi
14006463b:	0f 87 dd 00 00 00    	ja     0x14006471e
140064641:	48 89 ce             	mov    %rcx,%rsi
140064644:	48 8b 1a             	mov    (%rdx),%rbx
140064647:	48 83 ff 16          	cmp    $0x16,%rdi
14006464b:	0f 87 8c 00 00 00    	ja     0x1400646dd
140064651:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140064656:	40 88 79 17          	mov    %dil,0x17(%rcx)
14006465a:	4c 8d 34 39          	lea    (%rcx,%rdi,1),%r14
14006465e:	48 39 cb             	cmp    %rcx,%rbx
140064661:	0f 92 c0             	setb   %al
140064664:	4c 39 f3             	cmp    %r14,%rbx
140064667:	0f 93 c2             	setae  %dl
14006466a:	08 c2                	or     %al,%dl
14006466c:	0f 84 aa 00 00 00    	je     0x14006471c
140064672:	48 85 ff             	test   %rdi,%rdi
140064675:	74 0b                	je     0x140064682
140064677:	48 89 da             	mov    %rbx,%rdx
14006467a:	49 89 f8             	mov    %rdi,%r8
14006467d:	e8 ee 94 03 00       	call   0x14009db70
140064682:	41 c6 06 00          	movb   $0x0,(%r14)
140064686:	48 8b 44 24 30       	mov    0x30(%rsp),%rax
14006468b:	48 89 46 10          	mov    %rax,0x10(%rsi)
14006468f:	0f 28 44 24 20       	movaps 0x20(%rsp),%xmm0
140064694:	0f 11 06             	movups %xmm0,(%rsi)
140064697:	0f 57 c0             	xorps  %xmm0,%xmm0
14006469a:	0f 29 44 24 20       	movaps %xmm0,0x20(%rsp)
14006469f:	48 c7 44 24 30 00 00 	movq   $0x0,0x30(%rsp)
1400646a6:	00 00
1400646a8:	48 c7 46 18 04 00 00 	movq   $0x4,0x18(%rsi)
1400646af:	00
1400646b0:	80 7c 24 37 00       	cmpb   $0x0,0x37(%rsp)
1400646b5:	78 71                	js     0x140064728
1400646b7:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
1400646bc:	48 31 e1             	xor    %rsp,%rcx
1400646bf:	48 3b 0d 7a c9 09 00 	cmp    0x9c97a(%rip),%rcx        # 0x140101040
1400646c6:	74 06                	je     0x1400646ce
1400646c8:	e8 03 ac 00 00       	call   0x14006f2d0
1400646cd:	cc                   	int3
1400646ce:	48 89 f0             	mov    %rsi,%rax
1400646d1:	48 83 c4 40          	add    $0x40,%rsp
1400646d5:	5b                   	pop    %rbx
1400646d6:	5f                   	pop    %rdi
1400646d7:	5e                   	pop    %rsi
1400646d8:	41 5e                	pop    %r14
1400646da:	41 5f                	pop    %r15
1400646dc:	c3                   	ret
1400646dd:	48 89 f8             	mov    %rdi,%rax
1400646e0:	48 83 c8 07          	or     $0x7,%rax
1400646e4:	48 8d 48 01          	lea    0x1(%rax),%rcx
1400646e8:	48 83 f8 17          	cmp    $0x17,%rax
1400646ec:	41 be 19 00 00 00    	mov    $0x19,%r14d
1400646f2:	4c 0f 45 f1          	cmovne %rcx,%r14
1400646f6:	4c 89 f1             	mov    %r14,%rcx
1400646f9:	e8 96 97 00 00       	call   0x14006de94
1400646fe:	48 89 c1             	mov    %rax,%rcx
140064701:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140064706:	49 83 c7 09          	add    $0x9,%r15
14006470a:	4d 09 f7             	or     %r14,%r15
14006470d:	4c 89 7c 24 30       	mov    %r15,0x30(%rsp)
140064712:	48 89 7c 24 28       	mov    %rdi,0x28(%rsp)
140064717:	e9 3e ff ff ff       	jmp    0x14006465a
14006471c:	0f 0b                	ud2
14006471e:	48 8d 4c 24 20       	lea    0x20(%rsp),%rcx
140064723:	e8 18 ac 03 00       	call   0x14009f340
140064728:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
14006472d:	e8 9e 97 00 00       	call   0x14006ded0
140064732:	eb 83                	jmp    0x1400646b7
140064734:	cc                   	int3
140064735:	cc                   	int3
140064736:	cc                   	int3
140064737:	cc                   	int3
140064738:	cc                   	int3
140064739:	cc                   	int3
14006473a:	cc                   	int3
14006473b:	cc                   	int3
14006473c:	cc                   	int3
14006473d:	cc                   	int3
14006473e:	cc                   	int3
14006473f:	cc                   	int3
140064740:	48 89 c8             	mov    %rcx,%rax
140064743:	0f 57 c0             	xorps  %xmm0,%xmm0
140064746:	0f 11 01             	movups %xmm0,(%rcx)
140064749:	48 c7 41 10 00 00 00 	movq   $0x0,0x10(%rcx)
140064750:	00
140064751:	c3                   	ret
140064752:	cc                   	int3
140064753:	cc                   	int3
140064754:	cc                   	int3
140064755:	cc                   	int3
140064756:	cc                   	int3
140064757:	cc                   	int3
140064758:	cc                   	int3
140064759:	cc                   	int3
14006475a:	cc                   	int3
14006475b:	cc                   	int3
14006475c:	cc                   	int3
14006475d:	cc                   	int3
14006475e:	cc                   	int3
14006475f:	cc                   	int3
140064760:	41 57                	push   %r15
140064762:	41 56                	push   %r14
140064764:	56                   	push   %rsi
140064765:	57                   	push   %rdi
140064766:	53                   	push   %rbx
140064767:	48 83 ec 30          	sub    $0x30,%rsp
14006476b:	48 8b 05 ce c8 09 00 	mov    0x9c8ce(%rip),%rax        # 0x140101040
140064772:	48 31 e0             	xor    %rsp,%rax
140064775:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14006477a:	4c 8b 31             	mov    (%rcx),%r14
14006477d:	4d 85 f6             	test   %r14,%r14
140064780:	75 23                	jne    0x1400647a5
140064782:	48 8b 4c 24 28       	mov    0x28(%rsp),%rcx
140064787:	48 31 e1             	xor    %rsp,%rcx
14006478a:	48 3b 0d af c8 09 00 	cmp    0x9c8af(%rip),%rcx        # 0x140101040
140064791:	74 06                	je     0x140064799
140064793:	e8 38 ab 00 00       	call   0x14006f2d0
140064798:	cc                   	int3
140064799:	48 83 c4 30          	add    $0x30,%rsp
14006479d:	5b                   	pop    %rbx
14006479e:	5f                   	pop    %rdi
14006479f:	5e                   	pop    %rsi
1400647a0:	41 5e                	pop    %r14
1400647a2:	41 5f                	pop    %r15
1400647a4:	c3                   	ret
1400647a5:	48 89 ce             	mov    %rcx,%rsi
1400647a8:	4c 8b 79 08          	mov    0x8(%rcx),%r15
1400647ac:	4c 89 f1             	mov    %r14,%rcx
1400647af:	4d 39 fe             	cmp    %r15,%r14
1400647b2:	74 4e                	je     0x140064802
1400647b4:	49 83 c7 e0          	add    $0xffffffffffffffe0,%r15
1400647b8:	48 8d 7c 24 20       	lea    0x20(%rsp),%rdi
1400647bd:	4d 85 ff             	test   %r15,%r15
1400647c0:	74 58                	je     0x14006481a
1400647c2:	49 8b 5f 18          	mov    0x18(%r15),%rbx
1400647c6:	49 c7 47 18 00 00 00 	movq   $0x0,0x18(%r15)
1400647cd:	00
1400647ce:	48 85 db             	test   %rbx,%rbx
1400647d1:	74 19                	je     0x1400647ec
1400647d3:	48 8b 53 18          	mov    0x18(%rbx),%rdx
1400647d7:	48 89 5c 24 20       	mov    %rbx,0x20(%rsp)
1400647dc:	48 89 f9             	mov    %rdi,%rcx
1400647df:	e8 fc 07 00 00       	call   0x140064fe0
1400647e4:	48 89 d9             	mov    %rbx,%rcx
1400647e7:	e8 e4 96 00 00       	call   0x14006ded0
1400647ec:	41 80 7f 17 00       	cmpb   $0x0,0x17(%r15)
1400647f1:	78 1d                	js     0x140064810
1400647f3:	49 8d 47 e0          	lea    -0x20(%r15),%rax
1400647f7:	4d 39 f7             	cmp    %r14,%r15
1400647fa:	49 89 c7             	mov    %rax,%r15
1400647fd:	75 be                	jne    0x1400647bd
1400647ff:	48 8b 0e             	mov    (%rsi),%rcx
140064802:	4c 89 76 08          	mov    %r14,0x8(%rsi)
140064806:	e8 c5 96 00 00       	call   0x14006ded0
14006480b:	e9 72 ff ff ff       	jmp    0x140064782
140064810:	49 8b 0f             	mov    (%r15),%rcx
140064813:	e8 b8 96 00 00       	call   0x14006ded0
140064818:	eb d9                	jmp    0x1400647f3
14006481a:	0f 0b                	ud2
14006481c:	cc                   	int3
14006481d:	cc                   	int3
14006481e:	cc                   	int3
14006481f:	cc                   	int3
140064820:	41 57                	push   %r15
140064822:	41 56                	push   %r14
140064824:	41 55                	push   %r13
140064826:	41 54                	push   %r12
140064828:	56                   	push   %rsi
140064829:	57                   	push   %rdi
14006482a:	55                   	push   %rbp
14006482b:	53                   	push   %rbx
14006482c:	48 81 ec 88 00 00 00 	sub    $0x88,%rsp
140064833:	4c 89 c3             	mov    %r8,%rbx
140064836:	48 89 d7             	mov    %rdx,%rdi
140064839:	48 89 ce             	mov    %rcx,%rsi
14006483c:	48 8b 05 fd c7 09 00 	mov    0x9c7fd(%rip),%rax        # 0x140101040
140064843:	48 31 e0             	xor    %rsp,%rax
140064846:	48 89 84 24 80 00 00 	mov    %rax,0x80(%rsp)
14006484d:	00
14006484e:	b9 20 00 00 00       	mov    $0x20,%ecx
140064853:	e8 3c 96 00 00       	call   0x14006de94
140064858:	48 c7 40 18 ff ff ff 	movq   $0xffffffffffffffff,0x18(%rax)
14006485f:	ff
140064860:	4c 8b 43 18          	mov    0x18(%rbx),%r8
140064864:	49 8d 48 ff          	lea    -0x1(%r8),%rcx
140064868:	48 83 f9 1f          	cmp    $0x1f,%rcx
14006486c:	77 2c                	ja     0x14006489a
14006486e:	48 8d 15 8b c8 08 00 	lea    0x8c88b(%rip),%rdx        # 0x1400f1100
140064875:	48 63 0c 8a          	movslq (%rdx,%rcx,4),%rcx
140064879:	48 01 d1             	add    %rdx,%rcx
14006487c:	ff e1                	jmp    *%rcx
14006487e:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140064882:	48 89 48 10          	mov    %rcx,0x10(%rax)
140064886:	0f 10 03             	movups (%rbx),%xmm0
140064889:	0f 11 00             	movups %xmm0,(%rax)
14006488c:	0f 57 c0             	xorps  %xmm0,%xmm0
14006488f:	0f 11 03             	movups %xmm0,(%rbx)
140064892:	48 c7 43 10 00 00 00 	movq   $0x0,0x10(%rbx)
140064899:	00
14006489a:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14006489f:	4c 89 40 18          	mov    %r8,0x18(%rax)
1400648a3:	48 8b 1e             	mov    (%rsi),%rbx
1400648a6:	48 89 74 24 30       	mov    %rsi,0x30(%rsp)
1400648ab:	48 8b 46 08          	mov    0x8(%rsi),%rax
1400648af:	48 89 c5             	mov    %rax,%rbp
1400648b2:	48 29 dd             	sub    %rbx,%rbp
1400648b5:	48 c1 fd 05          	sar    $0x5,%rbp
1400648b9:	48 89 44 24 48       	mov    %rax,0x48(%rsp)
1400648be:	48 39 d8             	cmp    %rbx,%rax
1400648c1:	48 89 5c 24 38       	mov    %rbx,0x38(%rsp)
1400648c6:	48 89 7c 24 40       	mov    %rdi,0x40(%rsp)
1400648cb:	74 68                	je     0x140064935
1400648cd:	4c 8b 27             	mov    (%rdi),%r12
1400648d0:	48 8b 7f 08          	mov    0x8(%rdi),%rdi
1400648d4:	49 89 ee             	mov    %rbp,%r14
1400648d7:	4d 89 f5             	mov    %r14,%r13
1400648da:	49 d1 ed             	shr    $1,%r13
1400648dd:	4c 89 e8             	mov    %r13,%rax
1400648e0:	48 c1 e0 05          	shl    $0x5,%rax
1400648e4:	48 8d 34 03          	lea    (%rbx,%rax,1),%rsi
1400648e8:	4c 0f be 7c 03 17    	movsbq 0x17(%rbx,%rax,1),%r15
1400648ee:	48 89 f2             	mov    %rsi,%rdx
1400648f1:	4d 85 ff             	test   %r15,%r15
1400648f4:	79 09                	jns    0x1400648ff
1400648f6:	4c 8b 7c 03 08       	mov    0x8(%rbx,%rax,1),%r15
1400648fb:	48 8b 14 03          	mov    (%rbx,%rax,1),%rdx
1400648ff:	49 39 ff             	cmp    %rdi,%r15
140064902:	49 89 f8             	mov    %rdi,%r8
140064905:	4d 0f 42 c7          	cmovb  %r15,%r8
140064909:	4c 89 e1             	mov    %r12,%rcx
14006490c:	e8 5f 91 03 00       	call   0x14009da70
140064911:	85 c0                	test   %eax,%eax
140064913:	0f 84 c8 01 00 00    	je     0x140064ae1
140064919:	48 83 c6 20          	add    $0x20,%rsi
14006491d:	4c 89 e9             	mov    %r13,%rcx
140064920:	48 f7 d1             	not    %rcx
140064923:	49 01 ce             	add    %rcx,%r14
140064926:	85 c0                	test   %eax,%eax
140064928:	4d 0f 4e f5          	cmovle %r13,%r14
14006492c:	48 0f 4f de          	cmovg  %rsi,%rbx
140064930:	4d 85 f6             	test   %r14,%r14
140064933:	75 a2                	jne    0x1400648d7
140064935:	4c 8b 7c 24 48       	mov    0x48(%rsp),%r15
14006493a:	4c 39 fb             	cmp    %r15,%rbx
14006493d:	48 8b 7c 24 30       	mov    0x30(%rsp),%rdi
140064942:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
140064947:	0f 85 16 03 00 00    	jne    0x140064c63
14006494d:	48 8b 47 10          	mov    0x10(%rdi),%rax
140064951:	49 39 c7             	cmp    %rax,%r15
140064954:	0f 82 fa 01 00 00    	jb     0x140064b54
14006495a:	49 89 de             	mov    %rbx,%r14
14006495d:	48 8b 54 24 38       	mov    0x38(%rsp),%rdx
140064962:	49 29 d6             	sub    %rdx,%r14
140064965:	48 ff c5             	inc    %rbp
140064968:	48 89 e9             	mov    %rbp,%rcx
14006496b:	48 c1 e9 3b          	shr    $0x3b,%rcx
14006496f:	0f 85 41 05 00 00    	jne    0x140064eb6
140064975:	49 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%r8
14006497c:	ff ff 07
14006497f:	48 bf f7 ff ff ff ff 	movabs $0x7ffffffffffffff7,%rdi
140064986:	ff ff 7f
140064989:	48 29 d0             	sub    %rdx,%rax
14006498c:	48 8d 4f e9          	lea    -0x17(%rdi),%rcx
140064990:	48 89 c6             	mov    %rax,%rsi
140064993:	48 c1 fe 04          	sar    $0x4,%rsi
140064997:	48 39 ee             	cmp    %rbp,%rsi
14006499a:	48 0f 46 f5          	cmovbe %rbp,%rsi
14006499e:	48 39 c8             	cmp    %rcx,%rax
1400649a1:	49 0f 43 f0          	cmovae %r8,%rsi
1400649a5:	48 85 f6             	test   %rsi,%rsi
1400649a8:	0f 84 1a 05 00 00    	je     0x140064ec8
1400649ae:	4c 39 c6             	cmp    %r8,%rsi
1400649b1:	0f 87 24 05 00 00    	ja     0x140064edb
1400649b7:	4c 89 c5             	mov    %r8,%rbp
1400649ba:	48 89 f1             	mov    %rsi,%rcx
1400649bd:	48 c1 e1 05          	shl    $0x5,%rcx
1400649c1:	e8 ce 94 00 00       	call   0x14006de94