14003b47b:	57                   	push   %rdi
14003b47c:	48 83 ec 20          	sub    $0x20,%rsp
14003b480:	48 8b f2             	mov    %rdx,%rsi
14003b483:	48 8b d9             	mov    %rcx,%rbx
14003b486:	48 8b 79 08          	mov    0x8(%rcx),%rdi
14003b48a:	48 2b 39             	sub    (%rcx),%rdi
14003b48d:	48 c1 ff 03          	sar    $0x3,%rdi
14003b491:	48 8b 0a             	mov    (%rdx),%rcx
14003b494:	48 b8 ff ff ff ff ff 	movabs $0x1fffffffffffffff,%rax
14003b49b:	ff ff 1f
14003b49e:	48 3b c8             	cmp    %rax,%rcx
14003b4a1:	77 7f                	ja     0x14003b522
14003b4a3:	48 c1 e1 03          	shl    $0x3,%rcx
14003b4a7:	48 85 c9             	test   %rcx,%rcx
14003b4aa:	75 13                	jne    0x14003b4bf
14003b4ac:	33 d2                	xor    %edx,%edx
14003b4ae:	48 89 54 24 30       	mov    %rdx,0x30(%rsp)
14003b4b3:	4c 8b 43 08          	mov    0x8(%rbx),%r8
14003b4b7:	4c 8b ca             	mov    %rdx,%r9
14003b4ba:	48 8b 0b             	mov    (%rbx),%rcx
14003b4bd:	eb 3d                	jmp    0x14003b4fc
14003b4bf:	0f ae e8             	lfence
14003b4c2:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14003b4c9:	72 0a                	jb     0x14003b4d5
14003b4cb:	e8 84 a3 fc ff       	call   0x140005854
14003b4d0:	48 8b d0             	mov    %rax,%rdx
14003b4d3:	eb d9                	jmp    0x14003b4ae
14003b4d5:	ff 15 75 76 1d 00    	call   *0x1d7675(%rip)        # 0x140212b50
14003b4db:	48 8b d0             	mov    %rax,%rdx
14003b4de:	48 85 c0             	test   %rax,%rax
14003b4e1:	75 cb                	jne    0x14003b4ae
14003b4e3:	ff 15 47 76 1d 00    	call   *0x1d7647(%rip)        # 0x140212b30
14003b4e9:	90                   	nop
14003b4ea:	48 8b 01             	mov    (%rcx),%rax
14003b4ed:	48 83 21 00          	andq   $0x0,(%rcx)
14003b4f1:	49 89 01             	mov    %rax,(%r9)
14003b4f4:	4d 8d 49 08          	lea    0x8(%r9),%r9
14003b4f8:	48 83 c1 08          	add    $0x8,%rcx
14003b4fc:	49 3b c8             	cmp    %r8,%rcx
14003b4ff:	75 e9                	jne    0x14003b4ea
14003b501:	0f ae e8             	lfence
14003b504:	4c 8b 0e             	mov    (%rsi),%r9
14003b507:	4c 8b c7             	mov    %rdi,%r8
14003b50a:	48 8b cb             	mov    %rbx,%rcx
14003b50d:	e8 72 ef ff ff       	call   0x14003a484
14003b512:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
14003b517:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14003b51c:	48 83 c4 20          	add    $0x20,%rsp
14003b520:	5f                   	pop    %rdi
14003b521:	c3                   	ret
14003b522:	e8 45 a4 fc ff       	call   0x14000596c
14003b527:	cc                   	int3
14003b528:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
14003b52d:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14003b532:	56                   	push   %rsi
14003b533:	57                   	push   %rdi
14003b534:	41 56                	push   %r14
14003b536:	48 83 ec 20          	sub    $0x20,%rsp
14003b53a:	4c 8b f2             	mov    %rdx,%r14
14003b53d:	48 8b f9             	mov    %rcx,%rdi
14003b540:	48 8b 71 08          	mov    0x8(%rcx),%rsi
14003b544:	48 2b 31             	sub    (%rcx),%rsi
14003b547:	48 c1 fe 05          	sar    $0x5,%rsi
14003b54b:	48 8b 0a             	mov    (%rdx),%rcx
14003b54e:	48 b8 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%rax
14003b555:	ff ff 07
14003b558:	48 3b c8             	cmp    %rax,%rcx
14003b55b:	0f 87 aa 00 00 00    	ja     0x14003b60b
14003b561:	48 c1 e1 05          	shl    $0x5,%rcx
14003b565:	48 85 c9             	test   %rcx,%rcx
14003b568:	75 13                	jne    0x14003b57d
14003b56a:	33 db                	xor    %ebx,%ebx
14003b56c:	48 89 5c 24 40       	mov    %rbx,0x40(%rsp)
14003b571:	4c 8b 47 08          	mov    0x8(%rdi),%r8
14003b575:	48 8b cb             	mov    %rbx,%rcx
14003b578:	48 8b 17             	mov    (%rdi),%rdx
14003b57b:	eb 5f                	jmp    0x14003b5dc
14003b57d:	0f ae e8             	lfence
14003b580:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14003b587:	72 0a                	jb     0x14003b593
14003b589:	e8 c6 a2 fc ff       	call   0x140005854
14003b58e:	48 8b d8             	mov    %rax,%rbx
14003b591:	eb d9                	jmp    0x14003b56c
14003b593:	ff 15 b7 75 1d 00    	call   *0x1d75b7(%rip)        # 0x140212b50
14003b599:	48 8b d8             	mov    %rax,%rbx
14003b59c:	48 85 c0             	test   %rax,%rax
14003b59f:	75 cb                	jne    0x14003b56c
14003b5a1:	ff 15 89 75 1d 00    	call   *0x1d7589(%rip)        # 0x140212b30
14003b5a7:	90                   	nop
14003b5a8:	48 8b 02             	mov    (%rdx),%rax
14003b5ab:	48 83 22 00          	andq   $0x0,(%rdx)
14003b5af:	48 89 01             	mov    %rax,(%rcx)
14003b5b2:	48 8b 42 08          	mov    0x8(%rdx),%rax
14003b5b6:	48 83 62 08 00       	andq   $0x0,0x8(%rdx)
14003b5bb:	48 89 41 08          	mov    %rax,0x8(%rcx)
14003b5bf:	48 8b 42 10          	mov    0x10(%rdx),%rax
14003b5c3:	48 83 62 10 00       	andq   $0x0,0x10(%rdx)
14003b5c8:	48 89 41 10          	mov    %rax,0x10(%rcx)
14003b5cc:	48 8b 42 18          	mov    0x18(%rdx),%rax
14003b5d0:	48 89 41 18          	mov    %rax,0x18(%rcx)
14003b5d4:	48 83 c1 20          	add    $0x20,%rcx
14003b5d8:	48 83 c2 20          	add    $0x20,%rdx
14003b5dc:	49 3b d0             	cmp    %r8,%rdx
14003b5df:	75 c7                	jne    0x14003b5a8
14003b5e1:	48 8b d1             	mov    %rcx,%rdx
14003b5e4:	e8 53 fd ff ff       	call   0x14003b33c
14003b5e9:	0f ae e8             	lfence
14003b5ec:	4d 8b 0e             	mov    (%r14),%r9
14003b5ef:	4c 8b c6             	mov    %rsi,%r8
14003b5f2:	48 8b d3             	mov    %rbx,%rdx
14003b5f5:	48 8b cf             	mov    %rdi,%rcx
14003b5f8:	e8 5f 00 00 00       	call   0x14003b65c
14003b5fd:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14003b602:	48 83 c4 20          	add    $0x20,%rsp
14003b606:	41 5e                	pop    %r14
14003b608:	5f                   	pop    %rdi
14003b609:	5e                   	pop    %rsi
14003b60a:	c3                   	ret
14003b60b:	e8 5c a3 fc ff       	call   0x14000596c
14003b610:	cc                   	int3
14003b611:	90                   	nop
14003b612:	90                   	nop
14003b613:	90                   	nop
14003b614:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003b619:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
14003b61e:	57                   	push   %rdi
14003b61f:	48 83 ec 20          	sub    $0x20,%rsp
14003b623:	49 8b d8             	mov    %r8,%rbx
14003b626:	48 8b f2             	mov    %rdx,%rsi
14003b629:	48 8b f9             	mov    %rcx,%rdi
14003b62c:	48 3b ca             	cmp    %rdx,%rcx
14003b62f:	74 18                	je     0x14003b649
14003b631:	48 8b d7             	mov    %rdi,%rdx
14003b634:	48 8b cb             	mov    %rbx,%rcx
14003b637:	e8 a4 f9 ff ff       	call   0x14003afe0
14003b63c:	48 83 c3 20          	add    $0x20,%rbx
14003b640:	48 83 c7 20          	add    $0x20,%rdi
14003b644:	48 3b fe             	cmp    %rsi,%rdi
14003b647:	75 e8                	jne    0x14003b631
14003b649:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
14003b64e:	48 8b c3             	mov    %rbx,%rax
14003b651:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14003b656:	48 83 c4 20          	add    $0x20,%rsp
14003b65a:	5f                   	pop    %rdi
14003b65b:	c3                   	ret
14003b65c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14003b661:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
14003b666:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
14003b66b:	57                   	push   %rdi
14003b66c:	48 83 ec 20          	sub    $0x20,%rsp
14003b670:	48 8b d9             	mov    %rcx,%rbx
14003b673:	49 8b f9             	mov    %r9,%rdi
14003b676:	48 8b 09             	mov    (%rcx),%rcx
14003b679:	49 8b f0             	mov    %r8,%rsi
14003b67c:	48 8b ea             	mov    %rdx,%rbp
14003b67f:	48 85 c9             	test   %rcx,%rcx
14003b682:	74 39                	je     0x14003b6bd
14003b684:	48 8b 53 08          	mov    0x8(%rbx),%rdx
14003b688:	e8 af fc ff ff       	call   0x14003b33c
14003b68d:	48 8b 0b             	mov    (%rbx),%rcx
14003b690:	48 8b 43 10          	mov    0x10(%rbx),%rax
14003b694:	48 2b c1             	sub    %rcx,%rax
14003b697:	48 83 e0 e0          	and    $0xffffffffffffffe0,%rax
14003b69b:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
14003b6a1:	72 14                	jb     0x14003b6b7
14003b6a3:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
14003b6a7:	48 2b ca             	sub    %rdx,%rcx
14003b6aa:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
14003b6ae:	48 83 f8 1f          	cmp    $0x1f,%rax
14003b6b2:	77 37                	ja     0x14003b6eb
14003b6b4:	48 8b ca             	mov    %rdx,%rcx
14003b6b7:	ff 15 83 74 1d 00    	call   *0x1d7483(%rip)        # 0x140212b40
14003b6bd:	48 89 2b             	mov    %rbp,(%rbx)
14003b6c0:	48 c1 e6 05          	shl    $0x5,%rsi
14003b6c4:	48 03 f5             	add    %rbp,%rsi
14003b6c7:	48 c1 e7 05          	shl    $0x5,%rdi
14003b6cb:	48 89 73 08          	mov    %rsi,0x8(%rbx)
14003b6cf:	48 03 fd             	add    %rbp,%rdi
14003b6d2:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
14003b6d7:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
14003b6dc:	48 89 7b 10          	mov    %rdi,0x10(%rbx)
14003b6e0:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14003b6e5:	48 83 c4 20          	add    $0x20,%rsp
14003b6e9:	5f                   	pop    %rdi
14003b6ea:	c3                   	ret
14003b6eb:	ff 15 8f 74 1d 00    	call   *0x1d748f(%rip)        # 0x140212b80
14003b6f1:	cc                   	int3
14003b6f2:	90                   	nop
14003b6f3:	90                   	nop
14003b6f4:	4c 89 4c 24 20       	mov    %r9,0x20(%rsp)
14003b6f9:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
14003b6fe:	48 89 4c 24 08       	mov    %rcx,0x8(%rsp)
14003b703:	53                   	push   %rbx
14003b704:	56                   	push   %rsi
14003b705:	57                   	push   %rdi
14003b706:	41 54                	push   %r12
14003b708:	41 55                	push   %r13
14003b70a:	41 56                	push   %r14
14003b70c:	41 57                	push   %r15
14003b70e:	48 83 ec 40          	sub    $0x40,%rsp
14003b712:	4d 8b e1             	mov    %r9,%r12
14003b715:	49 8b d8             	mov    %r8,%rbx
14003b718:	48 8b fa             	mov    %rdx,%rdi
14003b71b:	4c 8d 69 08          	lea    0x8(%rcx),%r13
14003b71f:	4c 89 6c 24 20       	mov    %r13,0x20(%rsp)
14003b724:	4c 8b 39             	mov    (%rcx),%r15
14003b727:	4d 8b 75 00          	mov    0x0(%r13),%r14
14003b72b:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
14003b730:	48 8b 51 10          	mov    0x10(%rcx),%rdx
14003b734:	48 8b c2             	mov    %rdx,%rax
14003b737:	49 2b c6             	sub    %r14,%rax
14003b73a:	48 c1 f8 05          	sar    $0x5,%rax
14003b73e:	45 33 d2             	xor    %r10d,%r10d
14003b741:	4d 85 c9             	test   %r9,%r9
14003b744:	0f 84 85 02 00 00    	je     0x14003b9cf
14003b74a:	4c 3b c8             	cmp    %rax,%r9
14003b74d:	0f 86 8c 02 00 00    	jbe    0x14003b9df
14003b753:	49 8b ce             	mov    %r14,%rcx
14003b756:	49 2b cf             	sub    %r15,%rcx
14003b759:	48 c1 f9 05          	sar    $0x5,%rcx
14003b75d:	49 b9 ff ff ff ff ff 	movabs $0x7ffffffffffffff,%r9
14003b764:	ff ff 07
14003b767:	49 8b c1             	mov    %r9,%rax
14003b76a:	48 2b c1             	sub    %rcx,%rax
14003b76d:	4c 3b e0             	cmp    %rax,%r12
14003b770:	0f 87 25 04 00 00    	ja     0x14003bb9b
14003b776:	4e 8d 04 21          	lea    (%rcx,%r12,1),%r8
14003b77a:	4c 89 44 24 30       	mov    %r8,0x30(%rsp)
14003b77f:	49 2b d7             	sub    %r15,%rdx
14003b782:	48 c1 fa 05          	sar    $0x5,%rdx
14003b786:	48 8b ca             	mov    %rdx,%rcx
14003b789:	48 d1 e9             	shr    $1,%rcx
14003b78c:	49 8b c1             	mov    %r9,%rax
14003b78f:	48 2b c1             	sub    %rcx,%rax
14003b792:	48 3b d0             	cmp    %rax,%rdx
14003b795:	76 05                	jbe    0x14003b79c
14003b797:	49 8b c1             	mov    %r9,%rax
14003b79a:	eb 0b                	jmp    0x14003b7a7
14003b79c:	48 8d 04 0a          	lea    (%rdx,%rcx,1),%rax
14003b7a0:	49 3b c0             	cmp    %r8,%rax
14003b7a3:	49 0f 42 c0          	cmovb  %r8,%rax
14003b7a7:	48 89 84 24 98 00 00 	mov    %rax,0x98(%rsp)
14003b7ae:	00
14003b7af:	49 3b c1             	cmp    %r9,%rax
14003b7b2:	0f 87 e9 03 00 00    	ja     0x14003bba1
14003b7b8:	48 8b c8             	mov    %rax,%rcx
14003b7bb:	48 c1 e1 05          	shl    $0x5,%rcx
14003b7bf:	48 85 c9             	test   %rcx,%rcx
14003b7c2:	75 0a                	jne    0x14003b7ce
14003b7c4:	49 8b f2             	mov    %r10,%rsi
14003b7c7:	4c 89 54 24 20       	mov    %r10,0x20(%rsp)
14003b7cc:	eb 20                	jmp    0x14003b7ee
14003b7ce:	0f ae e8             	lfence
14003b7d1:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14003b7d8:	0f 82 f9 00 00 00    	jb     0x14003b8d7
14003b7de:	e8 71 a0 fc ff       	call   0x140005854
14003b7e3:	48 8b f0             	mov    %rax,%rsi
14003b7e6:	45 33 d2             	xor    %r10d,%r10d
14003b7e9:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
14003b7ee:	48 8b c7             	mov    %rdi,%rax
14003b7f1:	49 2b c7             	sub    %r15,%rax
14003b7f4:	48 c1 f8 05          	sar    $0x5,%rax
14003b7f8:	4e 8d 2c 20          	lea    (%rax,%r12,1),%r13
14003b7fc:	49 c1 e5 05          	shl    $0x5,%r13
14003b800:	4a 8d 0c 2e          	lea    (%rsi,%r13,1),%rcx
14003b804:	48 89 8c 24 88 00 00 	mov    %rcx,0x88(%rsp)
14003b80b:	00
14003b80c:	48 c1 e0 05          	shl    $0x5,%rax
14003b810:	48 03 c6             	add    %rsi,%rax
14003b813:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14003b818:	4d 8b cc             	mov    %r12,%r9
14003b81b:	48 8b c8             	mov    %rax,%rcx
14003b81e:	48 8d 53 08          	lea    0x8(%rbx),%rdx
14003b822:	4c 8b c0             	mov    %rax,%r8
14003b825:	4c 2b c3             	sub    %rbx,%r8
14003b828:	48 8b 42 f8          	mov    -0x8(%rdx),%rax
14003b82c:	4c 89 52 f8          	mov    %r10,-0x8(%rdx)
14003b830:	48 89 01             	mov    %rax,(%rcx)
14003b833:	48 8b 02             	mov    (%rdx),%rax
14003b836:	4c 89 12             	mov    %r10,(%rdx)
14003b839:	4a 89 04 02          	mov    %rax,(%rdx,%r8,1)
14003b83d:	48 8b 42 08          	mov    0x8(%rdx),%rax
14003b841:	4c 89 52 08          	mov    %r10,0x8(%rdx)
14003b845:	4a 89 44 02 08       	mov    %rax,0x8(%rdx,%r8,1)
14003b84a:	48 8b 42 10          	mov    0x10(%rdx),%rax
14003b84e:	4a 89 44 02 10       	mov    %rax,0x10(%rdx,%r8,1)
14003b853:	48 83 c1 20          	add    $0x20,%rcx
14003b857:	48 8d 52 20          	lea    0x20(%rdx),%rdx
14003b85b:	49 83 e9 01          	sub    $0x1,%r9
14003b85f:	75 c7                	jne    0x14003b828
14003b861:	48 8b d1             	mov    %rcx,%rdx
14003b864:	e8 d3 fa ff ff       	call   0x14003b33c
14003b869:	48 8b 44 24 28       	mov    0x28(%rsp),%rax
14003b86e:	48 89 44 24 28       	mov    %rax,0x28(%rsp)
14003b873:	49 83 fc 01          	cmp    $0x1,%r12
14003b877:	75 7a                	jne    0x14003b8f3
14003b879:	49 3b fe             	cmp    %r14,%rdi
14003b87c:	75 75                	jne    0x14003b8f3
14003b87e:	48 8b ce             	mov    %rsi,%rcx
14003b881:	4d 3b fe             	cmp    %r14,%r15
14003b884:	0f 84 1d 01 00 00    	je     0x14003b9a7
14003b88a:	49 8d 57 08          	lea    0x8(%r15),%rdx
14003b88e:	4c 8b c6             	mov    %rsi,%r8
14003b891:	4d 2b c7             	sub    %r15,%r8
14003b894:	33 db                	xor    %ebx,%ebx
14003b896:	48 8b 42 f8          	mov    -0x8(%rdx),%rax
14003b89a:	48 89 5a f8          	mov    %rbx,-0x8(%rdx)
14003b89e:	48 89 01             	mov    %rax,(%rcx)
14003b8a1:	48 8b 02             	mov    (%rdx),%rax
14003b8a4:	48 89 1a             	mov    %rbx,(%rdx)
14003b8a7:	4a 89 04 02          	mov    %rax,(%rdx,%r8,1)
14003b8ab:	48 8b 42 08          	mov    0x8(%rdx),%rax
14003b8af:	48 89 5a 08          	mov    %rbx,0x8(%rdx)
14003b8b3:	4a 89 44 02 08       	mov    %rax,0x8(%rdx,%r8,1)
14003b8b8:	48 8b 42 10          	mov    0x10(%rdx),%rax
14003b8bc:	4a 89 44 02 10       	mov    %rax,0x10(%rdx,%r8,1)
14003b8c1:	48 83 c1 20          	add    $0x20,%rcx
14003b8c5:	48 8d 52 20          	lea    0x20(%rdx),%rdx
14003b8c9:	48 8d 42 f8          	lea    -0x8(%rdx),%rax
14003b8cd:	49 3b c6             	cmp    %r14,%rax
14003b8d0:	75 c4                	jne    0x14003b896
14003b8d2:	e9 d0 00 00 00       	jmp    0x14003b9a7
14003b8d7:	ff 15 73 72 1d 00    	call   *0x1d7273(%rip)        # 0x140212b50
14003b8dd:	48 8b f0             	mov    %rax,%rsi
14003b8e0:	45 33 d2             	xor    %r10d,%r10d
14003b8e3:	48 85 c0             	test   %rax,%rax
14003b8e6:	0f 85 fd fe ff ff    	jne    0x14003b7e9
14003b8ec:	ff 15 3e 72 1d 00    	call   *0x1d723e(%rip)        # 0x140212b30
14003b8f2:	90                   	nop
14003b8f3:	48 8b ce             	mov    %rsi,%rcx
14003b8f6:	4c 3b ff             	cmp    %rdi,%r15
14003b8f9:	74 4a                	je     0x14003b945
14003b8fb:	49 8d 57 08          	lea    0x8(%r15),%rdx
14003b8ff:	4c 8b c6             	mov    %rsi,%r8
14003b902:	4d 2b c7             	sub    %r15,%r8
14003b905:	33 db                	xor    %ebx,%ebx
14003b907:	48 8b 42 f8          	mov    -0x8(%rdx),%rax
14003b90b:	48 89 5a f8          	mov    %rbx,-0x8(%rdx)
14003b90f:	48 89 01             	mov    %rax,(%rcx)
14003b912:	48 8b 02             	mov    (%rdx),%rax
14003b915:	48 89 1a             	mov    %rbx,(%rdx)
14003b918:	4a 89 04 02          	mov    %rax,(%rdx,%r8,1)
14003b91c:	48 8b 42 08          	mov    0x8(%rdx),%rax
14003b920:	48 89 5a 08          	mov    %rbx,0x8(%rdx)
14003b924:	4a 89 44 02 08       	mov    %rax,0x8(%rdx,%r8,1)
14003b929:	48 8b 42 10          	mov    0x10(%rdx),%rax
14003b92d:	4a 89 44 02 10       	mov    %rax,0x10(%rdx,%r8,1)
14003b932:	48 83 c1 20          	add    $0x20,%rcx
14003b936:	48 8d 52 20          	lea    0x20(%rdx),%rdx
14003b93a:	48 8d 42 f8          	lea    -0x8(%rdx),%rax