14008d701:	48 c1 fa 02          	sar    $0x2,%rdx
14008d705:	48 8b c2             	mov    %rdx,%rax
14008d708:	48 c1 e8 3f          	shr    $0x3f,%rax
14008d70c:	48 03 d0             	add    %rax,%rdx
14008d70f:	49 b8 86 f2 1a ca 6b 	movabs $0x1af286bca1af286,%r8
14008d716:	28 af 01
14008d719:	49 3b d0             	cmp    %r8,%rdx
14008d71c:	0f 84 31 02 00 00    	je     0x14008d953
14008d722:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
14008d726:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
14008d72a:	49 2b c9             	sub    %r9,%rcx
14008d72d:	49 8b c2             	mov    %r10,%rax
14008d730:	48 f7 e9             	imul   %rcx
14008d733:	48 c1 fa 02          	sar    $0x2,%rdx
14008d737:	48 8b c2             	mov    %rdx,%rax
14008d73a:	48 c1 e8 3f          	shr    $0x3f,%rax
14008d73e:	48 03 d0             	add    %rax,%rdx
14008d741:	48 8b ca             	mov    %rdx,%rcx
14008d744:	48 d1 e9             	shr    $1,%rcx
14008d747:	49 8b c0             	mov    %r8,%rax
14008d74a:	48 2b c1             	sub    %rcx,%rax
14008d74d:	48 3b d0             	cmp    %rax,%rdx
14008d750:	76 12                	jbe    0x14008d764
14008d752:	4c 89 44 24 78       	mov    %r8,0x78(%rsp)
14008d757:	48 c7 c6 90 ff ff ff 	mov    $0xffffffffffffff90,%rsi
14008d75e:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
14008d762:	eb 51                	jmp    0x14008d7b5
14008d764:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
14008d768:	49 8b d5             	mov    %r13,%rdx
14008d76b:	49 3b c5             	cmp    %r13,%rax
14008d76e:	48 0f 43 d0          	cmovae %rax,%rdx
14008d772:	49 3b d0             	cmp    %r8,%rdx
14008d775:	0f 87 d2 01 00 00    	ja     0x14008d94d
14008d77b:	48 69 f2 98 00 00 00 	imul   $0x98,%rdx,%rsi
14008d782:	48 89 54 24 78       	mov    %rdx,0x78(%rsp)
14008d787:	48 85 f6             	test   %rsi,%rsi
14008d78a:	75 13                	jne    0x14008d79f
14008d78c:	33 c9                	xor    %ecx,%ecx
14008d78e:	8b d9                	mov    %ecx,%ebx
14008d790:	48 89 8c 24 80 00 00 	mov    %rcx,0x80(%rsp)
14008d797:	00
14008d798:	48 89 54 24 78       	mov    %rdx,0x78(%rsp)
14008d79d:	eb 4f                	jmp    0x14008d7ee
14008d79f:	48 81 fe 00 10 00 00 	cmp    $0x1000,%rsi
14008d7a6:	72 31                	jb     0x14008d7d9
14008d7a8:	48 8d 4e 27          	lea    0x27(%rsi),%rcx
14008d7ac:	48 3b ce             	cmp    %rsi,%rcx
14008d7af:	0f 86 98 01 00 00    	jbe    0x14008d94d
14008d7b5:	e8 8e ca 26 00       	call   0x1402fa248
14008d7ba:	48 85 c0             	test   %rax,%rax
14008d7bd:	0f 84 83 01 00 00    	je     0x14008d946
14008d7c3:	48 8d 58 27          	lea    0x27(%rax),%rbx
14008d7c7:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
14008d7cb:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
14008d7cf:	48 89 9c 24 80 00 00 	mov    %rbx,0x80(%rsp)
14008d7d6:	00
14008d7d7:	eb 13                	jmp    0x14008d7ec
14008d7d9:	48 8b ce             	mov    %rsi,%rcx
14008d7dc:	e8 67 ca 26 00       	call   0x1402fa248
14008d7e1:	48 8b d8             	mov    %rax,%rbx
14008d7e4:	48 89 84 24 80 00 00 	mov    %rax,0x80(%rsp)
14008d7eb:	00
14008d7ec:	33 c9                	xor    %ecx,%ecx
14008d7ee:	4d 69 f6 98 00 00 00 	imul   $0x98,%r14,%r14
14008d7f5:	4c 03 f3             	add    %rbx,%r14
14008d7f8:	4d 8d be 98 00 00 00 	lea    0x98(%r14),%r15
14008d7ff:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
14008d804:	0f 57 c0             	xorps  %xmm0,%xmm0
14008d807:	41 0f 11 06          	movups %xmm0,(%r14)
14008d80b:	49 89 4e 10          	mov    %rcx,0x10(%r14)
14008d80f:	49 c7 46 18 0f 00 00 	movq   $0xf,0x18(%r14)
14008d816:	00
14008d817:	41 c6 06 00          	movb   $0x0,(%r14)
14008d81b:	41 89 4e 20          	mov    %ecx,0x20(%r14)
14008d81f:	41 0f 11 46 28       	movups %xmm0,0x28(%r14)
14008d824:	49 89 4e 38          	mov    %rcx,0x38(%r14)
14008d828:	49 c7 46 40 0f 00 00 	movq   $0xf,0x40(%r14)
14008d82f:	00
14008d830:	41 c6 46 28 00       	movb   $0x0,0x28(%r14)
14008d835:	49 89 4e 48          	mov    %rcx,0x48(%r14)
14008d839:	49 89 4e 50          	mov    %rcx,0x50(%r14)
14008d83d:	49 c7 46 58 00 00 00 	movq   $0x0,0x58(%r14)
14008d844:	00
14008d845:	49 89 4e 60          	mov    %rcx,0x60(%r14)
14008d849:	49 c7 46 68 00 00 00 	movq   $0x0,0x68(%r14)
14008d850:	00
14008d851:	49 89 4e 70          	mov    %rcx,0x70(%r14)
14008d855:	41 89 4e 78          	mov    %ecx,0x78(%r14)
14008d859:	49 89 8e 80 00 00 00 	mov    %rcx,0x80(%r14)
14008d860:	49 89 8e 88 00 00 00 	mov    %rcx,0x88(%r14)
14008d867:	41 c6 86 90 00 00 00 	movb   $0x0,0x90(%r14)
14008d86e:	00
14008d86f:	4c 89 b4 24 88 00 00 	mov    %r14,0x88(%rsp)
14008d876:	00
14008d877:	48 8b 57 08          	mov    0x8(%rdi),%rdx
14008d87b:	48 8b 0f             	mov    (%rdi),%rcx
14008d87e:	4c 3b e2             	cmp    %rdx,%r12
14008d881:	75 05                	jne    0x14008d888
14008d883:	4c 8b fb             	mov    %rbx,%r15
14008d886:	eb 1d                	jmp    0x14008d8a5
14008d888:	4c 8b cf             	mov    %rdi,%r9
14008d88b:	4c 8b c3             	mov    %rbx,%r8
14008d88e:	49 8b d4             	mov    %r12,%rdx
14008d891:	e8 7a 62 00 00       	call   0x140093b10
14008d896:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
14008d89d:	00
14008d89e:	49 8b cc             	mov    %r12,%rcx
14008d8a1:	48 8b 57 08          	mov    0x8(%rdi),%rdx
14008d8a5:	4c 8b cf             	mov    %rdi,%r9
14008d8a8:	4d 8b c7             	mov    %r15,%r8
14008d8ab:	e8 60 62 00 00       	call   0x140093b10
14008d8b0:	90                   	nop
14008d8b1:	48 8b 0f             	mov    (%rdi),%rcx
14008d8b4:	48 85 c9             	test   %rcx,%rcx
14008d8b7:	74 61                	je     0x14008d91a
14008d8b9:	4c 8b c7             	mov    %rdi,%r8
14008d8bc:	48 8b 57 08          	mov    0x8(%rdi),%rdx
14008d8c0:	e8 bb f8 ff ff       	call   0x14008d180
14008d8c5:	4c 8b 07             	mov    (%rdi),%r8
14008d8c8:	48 8b 4f 10          	mov    0x10(%rdi),%rcx
14008d8cc:	49 2b c8             	sub    %r8,%rcx
14008d8cf:	48 b8 1b ca 6b 28 af 	movabs $0x6bca1af286bca1b,%rax
14008d8d6:	a1 bc 06
14008d8d9:	48 f7 e9             	imul   %rcx
14008d8dc:	48 c1 fa 02          	sar    $0x2,%rdx
14008d8e0:	48 8b c2             	mov    %rdx,%rax
14008d8e3:	48 c1 e8 3f          	shr    $0x3f,%rax
14008d8e7:	48 03 d0             	add    %rax,%rdx
14008d8ea:	48 69 d2 98 00 00 00 	imul   $0x98,%rdx,%rdx
14008d8f1:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14008d8f8:	72 18                	jb     0x14008d912
14008d8fa:	48 83 c2 27          	add    $0x27,%rdx
14008d8fe:	49 8b 48 f8          	mov    -0x8(%r8),%rcx
14008d902:	4c 2b c1             	sub    %rcx,%r8
14008d905:	49 8d 40 f8          	lea    -0x8(%r8),%rax
14008d909:	48 83 f8 1f          	cmp    $0x1f,%rax
14008d90d:	77 37                	ja     0x14008d946
14008d90f:	4c 8b c1             	mov    %rcx,%r8
14008d912:	49 8b c8             	mov    %r8,%rcx
14008d915:	e8 6a c9 26 00       	call   0x1402fa284
14008d91a:	48 89 1f             	mov    %rbx,(%rdi)
14008d91d:	49 69 cd 98 00 00 00 	imul   $0x98,%r13,%rcx
14008d924:	48 03 cb             	add    %rbx,%rcx
14008d927:	48 89 4f 08          	mov    %rcx,0x8(%rdi)
14008d92b:	48 8d 0c 1e          	lea    (%rsi,%rbx,1),%rcx
14008d92f:	48 89 4f 10          	mov    %rcx,0x10(%rdi)
14008d933:	49 8b c6             	mov    %r14,%rax
14008d936:	48 83 c4 30          	add    $0x30,%rsp
14008d93a:	41 5f                	pop    %r15
14008d93c:	41 5e                	pop    %r14
14008d93e:	41 5d                	pop    %r13
14008d940:	41 5c                	pop    %r12
14008d942:	5f                   	pop    %rdi
14008d943:	5e                   	pop    %rsi
14008d944:	5b                   	pop    %rbx
14008d945:	c3                   	ret
14008d946:	ff 15 ac c6 29 00    	call   *0x29c6ac(%rip)        # 0x140329ff8
14008d94c:	cc                   	int3
14008d94d:	e8 5e a6 ff ff       	call   0x140087fb0
14008d952:	cc                   	int3
14008d953:	e8 88 3c 03 00       	call   0x1400c15e0
14008d958:	cc                   	int3
14008d959:	cc                   	int3
14008d95a:	cc                   	int3
14008d95b:	cc                   	int3
14008d95c:	cc                   	int3
14008d95d:	cc                   	int3
14008d95e:	cc                   	int3
14008d95f:	cc                   	int3
14008d960:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14008d965:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14008d96a:	53                   	push   %rbx
14008d96b:	56                   	push   %rsi
14008d96c:	57                   	push   %rdi
14008d96d:	41 54                	push   %r12
14008d96f:	41 55                	push   %r13
14008d971:	41 56                	push   %r14
14008d973:	41 57                	push   %r15
14008d975:	48 83 ec 30          	sub    $0x30,%rsp
14008d979:	4c 8b e2             	mov    %rdx,%r12
14008d97c:	4c 8b f1             	mov    %rcx,%r14
14008d97f:	4c 8b 11             	mov    (%rcx),%r10
14008d982:	4c 8b ca             	mov    %rdx,%r9
14008d985:	4d 2b ca             	sub    %r10,%r9
14008d988:	49 bb ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%r11
14008d98f:	aa aa 2a
14008d992:	49 8b c3             	mov    %r11,%rax
14008d995:	49 f7 e9             	imul   %r9
14008d998:	48 8b f2             	mov    %rdx,%rsi
14008d99b:	48 c1 fe 02          	sar    $0x2,%rsi
14008d99f:	48 8b c6             	mov    %rsi,%rax
14008d9a2:	48 c1 e8 3f          	shr    $0x3f,%rax
14008d9a6:	48 03 f0             	add    %rax,%rsi
14008d9a9:	48 8b 49 08          	mov    0x8(%rcx),%rcx
14008d9ad:	49 2b ca             	sub    %r10,%rcx
14008d9b0:	49 8b c3             	mov    %r11,%rax
14008d9b3:	48 f7 e9             	imul   %rcx
14008d9b6:	48 c1 fa 02          	sar    $0x2,%rdx
14008d9ba:	48 8b c2             	mov    %rdx,%rax
14008d9bd:	48 c1 e8 3f          	shr    $0x3f,%rax
14008d9c1:	48 03 d0             	add    %rax,%rdx
14008d9c4:	49 b9 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r9
14008d9cb:	aa aa 0a
14008d9ce:	49 3b d1             	cmp    %r9,%rdx
14008d9d1:	0f 84 3d 01 00 00    	je     0x14008db14
14008d9d7:	4c 8d 6a 01          	lea    0x1(%rdx),%r13
14008d9db:	49 8b 4e 10          	mov    0x10(%r14),%rcx
14008d9df:	49 2b ca             	sub    %r10,%rcx
14008d9e2:	49 8b c3             	mov    %r11,%rax
14008d9e5:	48 f7 e9             	imul   %rcx
14008d9e8:	48 c1 fa 02          	sar    $0x2,%rdx
14008d9ec:	48 8b c2             	mov    %rdx,%rax
14008d9ef:	48 c1 e8 3f          	shr    $0x3f,%rax
14008d9f3:	48 03 d0             	add    %rax,%rdx
14008d9f6:	48 8b ca             	mov    %rdx,%rcx
14008d9f9:	48 d1 e9             	shr    $1,%rcx
14008d9fc:	49 8b c1             	mov    %r9,%rax
14008d9ff:	48 2b c1             	sub    %rcx,%rax
14008da02:	48 3b d0             	cmp    %rax,%rdx
14008da05:	0f 87 03 01 00 00    	ja     0x14008db0e
14008da0b:	48 8d 04 11          	lea    (%rcx,%rdx,1),%rax
14008da0f:	49 8b fd             	mov    %r13,%rdi
14008da12:	49 3b c5             	cmp    %r13,%rax
14008da15:	48 0f 43 f8          	cmovae %rax,%rdi
14008da19:	49 3b f9             	cmp    %r9,%rdi
14008da1c:	0f 87 ec 00 00 00    	ja     0x14008db0e
14008da22:	48 8d 0c 7f          	lea    (%rdi,%rdi,2),%rcx
14008da26:	48 c1 e1 03          	shl    $0x3,%rcx
14008da2a:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14008da2f:	48 85 c9             	test   %rcx,%rcx
14008da32:	75 09                	jne    0x14008da3d
14008da34:	33 db                	xor    %ebx,%ebx
14008da36:	48 89 7c 24 20       	mov    %rdi,0x20(%rsp)
14008da3b:	eb 48                	jmp    0x14008da85
14008da3d:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14008da44:	72 2f                	jb     0x14008da75
14008da46:	48 8d 41 27          	lea    0x27(%rcx),%rax
14008da4a:	48 3b c1             	cmp    %rcx,%rax
14008da4d:	0f 86 bb 00 00 00    	jbe    0x14008db0e
14008da53:	48 8b c8             	mov    %rax,%rcx
14008da56:	e8 ed c7 26 00       	call   0x1402fa248
14008da5b:	48 85 c0             	test   %rax,%rax
14008da5e:	74 0e                	je     0x14008da6e
14008da60:	48 8d 58 27          	lea    0x27(%rax),%rbx
14008da64:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
14008da68:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
14008da6c:	eb 0f                	jmp    0x14008da7d
14008da6e:	ff 15 84 c5 29 00    	call   *0x29c584(%rip)        # 0x140329ff8
14008da74:	cc                   	int3
14008da75:	e8 ce c7 26 00       	call   0x1402fa248
14008da7a:	48 8b d8             	mov    %rax,%rbx
14008da7d:	4c 8b 84 24 80 00 00 	mov    0x80(%rsp),%r8
14008da84:	00
14008da85:	48 89 5c 24 78       	mov    %rbx,0x78(%rsp)
14008da8a:	48 8d 0c 76          	lea    (%rsi,%rsi,2),%rcx
14008da8e:	48 8d 34 cb          	lea    (%rbx,%rcx,8),%rsi
14008da92:	4c 8d 7e 18          	lea    0x18(%rsi),%r15
14008da96:	4c 89 7c 24 28       	mov    %r15,0x28(%rsp)
14008da9b:	49 8b 00             	mov    (%r8),%rax
14008da9e:	48 89 46 08          	mov    %rax,0x8(%rsi)
14008daa2:	66 c7 46 10 00 00    	movw   $0x0,0x10(%rsi)
14008daa8:	48 89 b4 24 88 00 00 	mov    %rsi,0x88(%rsp)
14008daaf:	00
14008dab0:	49 8b 56 08          	mov    0x8(%r14),%rdx
14008dab4:	49 8b 0e             	mov    (%r14),%rcx
14008dab7:	4c 3b e2             	cmp    %rdx,%r12
14008daba:	75 05                	jne    0x14008dac1
14008dabc:	4c 8b fb             	mov    %rbx,%r15
14008dabf:	eb 1d                	jmp    0x14008dade
14008dac1:	4d 8b ce             	mov    %r14,%r9
14008dac4:	4c 8b c3             	mov    %rbx,%r8
14008dac7:	49 8b d4             	mov    %r12,%rdx
14008daca:	e8 e1 63 00 00       	call   0x140093eb0
14008dacf:	48 89 9c 24 88 00 00 	mov    %rbx,0x88(%rsp)
14008dad6:	00
14008dad7:	49 8b cc             	mov    %r12,%rcx
14008dada:	49 8b 56 08          	mov    0x8(%r14),%rdx
14008dade:	4d 8b ce             	mov    %r14,%r9
14008dae1:	4d 8b c7             	mov    %r15,%r8
14008dae4:	e8 c7 63 00 00       	call   0x140093eb0
14008dae9:	90                   	nop
14008daea:	4c 8b cf             	mov    %rdi,%r9
14008daed:	4d 8b c5             	mov    %r13,%r8
14008daf0:	48 8b d3             	mov    %rbx,%rdx
14008daf3:	49 8b ce             	mov    %r14,%rcx
14008daf6:	e8 55 1d 03 00       	call   0x1400bf850
14008dafb:	48 8b c6             	mov    %rsi,%rax
14008dafe:	48 83 c4 30          	add    $0x30,%rsp
14008db02:	41 5f                	pop    %r15
14008db04:	41 5e                	pop    %r14
14008db06:	41 5d                	pop    %r13
14008db08:	41 5c                	pop    %r12
14008db0a:	5f                   	pop    %rdi
14008db0b:	5e                   	pop    %rsi
14008db0c:	5b                   	pop    %rbx
14008db0d:	c3                   	ret
14008db0e:	e8 9d a4 ff ff       	call   0x140087fb0
14008db13:	cc                   	int3
14008db14:	e8 c7 3a 03 00       	call   0x1400c15e0
14008db19:	cc                   	int3
14008db1a:	cc                   	int3
14008db1b:	cc                   	int3
14008db1c:	cc                   	int3
14008db1d:	cc                   	int3
14008db1e:	cc                   	int3
14008db1f:	cc                   	int3
14008db20:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14008db25:	53                   	push   %rbx
14008db26:	56                   	push   %rsi
14008db27:	57                   	push   %rdi
14008db28:	41 54                	push   %r12
14008db2a:	41 55                	push   %r13
14008db2c:	41 56                	push   %r14
14008db2e:	41 57                	push   %r15
14008db30:	48 83 ec 20          	sub    $0x20,%rsp
14008db34:	4d 8b e8             	mov    %r8,%r13
14008db37:	4c 8b fa             	mov    %rdx,%r15
14008db3a:	48 8b f1             	mov    %rcx,%rsi
14008db3d:	4c 8b 09             	mov    (%rcx),%r9
14008db40:	4c 8b f2             	mov    %rdx,%r14
14008db43:	4d 2b f1             	sub    %r9,%r14
14008db46:	49 c1 fe 03          	sar    $0x3,%r14
14008db4a:	48 8b 41 08          	mov    0x8(%rcx),%rax
14008db4e:	49 2b c1             	sub    %r9,%rax
14008db51:	48 c1 f8 03          	sar    $0x3,%rax
14008db55:	49 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%r8
14008db5c:	ff ff 1f
14008db5f:	49 3b c0             	cmp    %r8,%rax
14008db62:	0f 84 03 01 00 00    	je     0x14008dc6b
14008db68:	4c 8d 60 01          	lea    0x1(%rax),%r12
14008db6c:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14008db70:	49 2b c9             	sub    %r9,%rcx
14008db73:	48 c1 f9 03          	sar    $0x3,%rcx
14008db77:	48 8b d1             	mov    %rcx,%rdx
14008db7a:	48 d1 ea             	shr    $1,%rdx
14008db7d:	49 8b c0             	mov    %r8,%rax
14008db80:	48 2b c2             	sub    %rdx,%rax
14008db83:	48 3b c8             	cmp    %rax,%rcx
14008db86:	0f 87 d9 00 00 00    	ja     0x14008dc65
14008db8c:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
14008db90:	49 8b fc             	mov    %r12,%rdi
14008db93:	49 3b c4             	cmp    %r12,%rax
14008db96:	48 0f 43 f8          	cmovae %rax,%rdi
14008db9a:	49 3b f8             	cmp    %r8,%rdi
14008db9d:	0f 87 c2 00 00 00    	ja     0x14008dc65
14008dba3:	48 8d 0c fd 00 00 00 	lea    0x0(,%rdi,8),%rcx
14008dbaa:	00
14008dbab:	48 89 7c 24 78       	mov    %rdi,0x78(%rsp)
14008dbb0:	48 85 c9             	test   %rcx,%rcx
14008dbb3:	75 09                	jne    0x14008dbbe