14004c667:	49 8b cf             	mov    %r15,%rcx
14004c66a:	49 8b 16             	mov    (%r14),%rdx
14004c66d:	eb 24                	jmp    0x14004c693
14004c66f:	48 89 39             	mov    %rdi,(%rcx)
14004c672:	48 89 79 08          	mov    %rdi,0x8(%rcx)
14004c676:	48 8b 02             	mov    (%rdx),%rax
14004c679:	48 89 01             	mov    %rax,(%rcx)
14004c67c:	48 8b 42 08          	mov    0x8(%rdx),%rax
14004c680:	48 89 41 08          	mov    %rax,0x8(%rcx)
14004c684:	48 89 3a             	mov    %rdi,(%rdx)
14004c687:	48 89 7a 08          	mov    %rdi,0x8(%rdx)
14004c68b:	48 83 c1 10          	add    $0x10,%rcx
14004c68f:	48 83 c2 10          	add    $0x10,%rdx
14004c693:	49 3b d0             	cmp    %r8,%rdx
14004c696:	75 d7                	jne    0x14004c66f
14004c698:	48 8b d1             	mov    %rcx,%rdx
14004c69b:	e8 d0 1b fd ff       	call   0x14001e270
14004c6a0:	4c 8b cb             	mov    %rbx,%r9
14004c6a3:	4c 8b c6             	mov    %rsi,%r8
14004c6a6:	49 8b d7             	mov    %r15,%rdx
14004c6a9:	49 8b ce             	mov    %r14,%rcx
14004c6ac:	48 83 c4 30          	add    $0x30,%rsp
14004c6b0:	41 5f                	pop    %r15
14004c6b2:	41 5e                	pop    %r14
14004c6b4:	5f                   	pop    %rdi
14004c6b5:	5e                   	pop    %rsi
14004c6b6:	5b                   	pop    %rbx
14004c6b7:	e9 0c 5f fd ff       	jmp    0x1400225c8
14004c6bc:	e8 a7 f6 fc ff       	call   0x14001bd68
14004c6c1:	cc                   	int3
14004c6c2:	90                   	nop
14004c6c3:	90                   	nop
14004c6c4:	4c 89 44 24 18       	mov    %r8,0x18(%rsp)
14004c6c9:	53                   	push   %rbx
14004c6ca:	56                   	push   %rsi
14004c6cb:	57                   	push   %rdi
14004c6cc:	41 54                	push   %r12
14004c6ce:	41 55                	push   %r13
14004c6d0:	41 56                	push   %r14
14004c6d2:	41 57                	push   %r15
14004c6d4:	48 83 ec 60          	sub    $0x60,%rsp
14004c6d8:	4c 8b fa             	mov    %rdx,%r15
14004c6db:	48 8b f1             	mov    %rcx,%rsi
14004c6de:	48 2b 11             	sub    (%rcx),%rdx
14004c6e1:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
14004c6e8:	aa aa 2a
14004c6eb:	48 f7 ea             	imul   %rdx
14004c6ee:	48 8b da             	mov    %rdx,%rbx
14004c6f1:	48 c1 fb 03          	sar    $0x3,%rbx
14004c6f5:	48 8b c3             	mov    %rbx,%rax
14004c6f8:	48 c1 e8 3f          	shr    $0x3f,%rax
14004c6fc:	48 03 d8             	add    %rax,%rbx
14004c6ff:	48 8b 41 08          	mov    0x8(%rcx),%rax
14004c703:	48 2b 01             	sub    (%rcx),%rax
14004c706:	48 c1 f8 04          	sar    $0x4,%rax
14004c70a:	48 ba ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rdx
14004c711:	aa aa aa
14004c714:	48 0f af c2          	imul   %rdx,%rax
14004c718:	49 bd 55 55 55 55 55 	movabs $0x555555555555555,%r13
14004c71f:	55 55 05
14004c722:	49 3b c5             	cmp    %r13,%rax
14004c725:	0f 84 61 01 00 00    	je     0x14004c88c
14004c72b:	4c 8d 40 01          	lea    0x1(%rax),%r8
14004c72f:	4c 89 44 24 28       	mov    %r8,0x28(%rsp)
14004c734:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14004c738:	48 2b 0e             	sub    (%rsi),%rcx
14004c73b:	48 c1 f9 04          	sar    $0x4,%rcx
14004c73f:	48 0f af ca          	imul   %rdx,%rcx
14004c743:	48 8b d1             	mov    %rcx,%rdx
14004c746:	48 d1 ea             	shr    $1,%rdx
14004c749:	49 8b c5             	mov    %r13,%rax
14004c74c:	48 2b c2             	sub    %rdx,%rax
14004c74f:	48 3b c8             	cmp    %rax,%rcx
14004c752:	77 0b                	ja     0x14004c75f
14004c754:	4c 8d 2c 11          	lea    (%rcx,%rdx,1),%r13
14004c758:	4d 3b e8             	cmp    %r8,%r13
14004c75b:	4d 0f 42 e8          	cmovb  %r8,%r13
14004c75f:	4c 89 ac 24 a8 00 00 	mov    %r13,0xa8(%rsp)
14004c766:	00
14004c767:	48 8d 94 24 a8 00 00 	lea    0xa8(%rsp),%rdx
14004c76e:	00
14004c76f:	e8 20 0e 00 00       	call   0x14004d594
14004c774:	4c 8b f0             	mov    %rax,%r14
14004c777:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14004c77c:	4c 8d 24 5b          	lea    (%rbx,%rbx,2),%r12
14004c780:	49 c1 e4 04          	shl    $0x4,%r12
14004c784:	4c 03 e0             	add    %rax,%r12
14004c787:	4c 89 64 24 20       	mov    %r12,0x20(%rsp)
14004c78c:	49 8d 7c 24 30       	lea    0x30(%r12),%rdi
14004c791:	48 89 7c 24 30       	mov    %rdi,0x30(%rsp)
14004c796:	48 89 bc 24 a0 00 00 	mov    %rdi,0xa0(%rsp)
14004c79d:	00
14004c79e:	48 8b 94 24 b0 00 00 	mov    0xb0(%rsp),%rdx
14004c7a5:	00
14004c7a6:	49 8b cc             	mov    %r12,%rcx
14004c7a9:	e8 26 28 ff ff       	call   0x14003efd4
14004c7ae:	4c 89 a4 24 a0 00 00 	mov    %r12,0xa0(%rsp)
14004c7b5:	00
14004c7b6:	48 8b 46 08          	mov    0x8(%rsi),%rax
14004c7ba:	48 89 84 24 b8 00 00 	mov    %rax,0xb8(%rsp)
14004c7c1:	00
14004c7c2:	48 8b 1e             	mov    (%rsi),%rbx
14004c7c5:	4c 89 74 24 40       	mov    %r14,0x40(%rsp)
14004c7ca:	4c 89 74 24 48       	mov    %r14,0x48(%rsp)
14004c7cf:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
14004c7d4:	4c 3b f8             	cmp    %rax,%r15
14004c7d7:	75 2c                	jne    0x14004c805
14004c7d9:	49 8b fe             	mov    %r14,%rdi
14004c7dc:	48 3b d8             	cmp    %rax,%rbx
14004c7df:	74 22                	je     0x14004c803
14004c7e1:	48 8b d3             	mov    %rbx,%rdx
14004c7e4:	48 8b cf             	mov    %rdi,%rcx
14004c7e7:	e8 58 27 ff ff       	call   0x14003ef44
14004c7ec:	48 83 c7 30          	add    $0x30,%rdi
14004c7f0:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
14004c7f5:	48 83 c3 30          	add    $0x30,%rbx
14004c7f9:	48 8b 84 24 b8 00 00 	mov    0xb8(%rsp),%rax
14004c800:	00
14004c801:	eb d9                	jmp    0x14004c7dc
14004c803:	eb 61                	jmp    0x14004c866
14004c805:	4d 8b e6             	mov    %r14,%r12
14004c808:	49 3b df             	cmp    %r15,%rbx
14004c80b:	74 1a                	je     0x14004c827
14004c80d:	48 8b d3             	mov    %rbx,%rdx
14004c810:	49 8b cc             	mov    %r12,%rcx
14004c813:	e8 bc 27 ff ff       	call   0x14003efd4
14004c818:	49 83 c4 30          	add    $0x30,%r12
14004c81c:	4c 89 64 24 48       	mov    %r12,0x48(%rsp)
14004c821:	48 83 c3 30          	add    $0x30,%rbx
14004c825:	eb e1                	jmp    0x14004c808
14004c827:	4c 89 b4 24 a0 00 00 	mov    %r14,0xa0(%rsp)
14004c82e:	00
14004c82f:	48 8b 5e 08          	mov    0x8(%rsi),%rbx
14004c833:	48 89 7c 24 40       	mov    %rdi,0x40(%rsp)
14004c838:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
14004c83d:	48 89 74 24 50       	mov    %rsi,0x50(%rsp)
14004c842:	4c 3b fb             	cmp    %rbx,%r15
14004c845:	74 1a                	je     0x14004c861
14004c847:	49 8b d7             	mov    %r15,%rdx
14004c84a:	48 8b cf             	mov    %rdi,%rcx
14004c84d:	e8 82 27 ff ff       	call   0x14003efd4
14004c852:	48 83 c7 30          	add    $0x30,%rdi
14004c856:	48 89 7c 24 48       	mov    %rdi,0x48(%rsp)
14004c85b:	49 83 c7 30          	add    $0x30,%r15
14004c85f:	eb e1                	jmp    0x14004c842
14004c861:	4c 8b 64 24 20       	mov    0x20(%rsp),%r12
14004c866:	4d 8b cd             	mov    %r13,%r9
14004c869:	4c 8b 44 24 28       	mov    0x28(%rsp),%r8
14004c86e:	49 8b d6             	mov    %r14,%rdx
14004c871:	48 8b ce             	mov    %rsi,%rcx
14004c874:	e8 e3 0e 00 00       	call   0x14004d75c
14004c879:	49 8b c4             	mov    %r12,%rax
14004c87c:	48 83 c4 60          	add    $0x60,%rsp
14004c880:	41 5f                	pop    %r15
14004c882:	41 5e                	pop    %r14
14004c884:	41 5d                	pop    %r13
14004c886:	41 5c                	pop    %r12
14004c888:	5f                   	pop    %rdi
14004c889:	5e                   	pop    %rsi
14004c88a:	5b                   	pop    %rbx
14004c88b:	c3                   	ret
14004c88c:	e8 d7 f4 fc ff       	call   0x14001bd68
14004c891:	cc                   	int3
14004c892:	90                   	nop
14004c893:	90                   	nop
14004c894:	48 8b c4             	mov    %rsp,%rax
14004c897:	48 89 58 08          	mov    %rbx,0x8(%rax)
14004c89b:	48 89 70 10          	mov    %rsi,0x10(%rax)
14004c89f:	57                   	push   %rdi
14004c8a0:	48 83 ec 40          	sub    $0x40,%rsp
14004c8a4:	49 8b d8             	mov    %r8,%rbx
14004c8a7:	48 8b f2             	mov    %rdx,%rsi
14004c8aa:	48 8b f9             	mov    %rcx,%rdi
14004c8ad:	48 89 58 d8          	mov    %rbx,-0x28(%rax)
14004c8b1:	48 89 58 e0          	mov    %rbx,-0x20(%rax)
14004c8b5:	4c 89 48 e8          	mov    %r9,-0x18(%rax)
14004c8b9:	48 3b ca             	cmp    %rdx,%rcx
14004c8bc:	74 1d                	je     0x14004c8db
14004c8be:	48 8b d7             	mov    %rdi,%rdx
14004c8c1:	48 8b cb             	mov    %rbx,%rcx
14004c8c4:	e8 7b 26 ff ff       	call   0x14003ef44
14004c8c9:	48 83 c3 30          	add    $0x30,%rbx
14004c8cd:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
14004c8d2:	48 83 c7 30          	add    $0x30,%rdi
14004c8d6:	48 3b fe             	cmp    %rsi,%rdi
14004c8d9:	75 e3                	jne    0x14004c8be
14004c8db:	48 8b c3             	mov    %rbx,%rax
14004c8de:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
14004c8e3:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
14004c8e8:	48 83 c4 40          	add    $0x40,%rsp
14004c8ec:	5f                   	pop    %rdi
14004c8ed:	c3                   	ret
14004c8ee:	90                   	nop
14004c8ef:	90                   	nop
14004c8f0:	48 89 5c 24 18       	mov    %rbx,0x18(%rsp)
14004c8f5:	48 89 74 24 20       	mov    %rsi,0x20(%rsp)
14004c8fa:	57                   	push   %rdi
14004c8fb:	41 54                	push   %r12
14004c8fd:	41 55                	push   %r13
14004c8ff:	41 56                	push   %r14
14004c901:	41 57                	push   %r15
14004c903:	48 83 ec 20          	sub    $0x20,%rsp
14004c907:	4d 8b e8             	mov    %r8,%r13
14004c90a:	4c 8b e2             	mov    %rdx,%r12
14004c90d:	4c 8b f1             	mov    %rcx,%r14
14004c910:	4c 8b ca             	mov    %rdx,%r9
14004c913:	4c 2b 09             	sub    (%rcx),%r9
14004c916:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
14004c91d:	aa aa 2a
14004c920:	49 f7 e9             	imul   %r9
14004c923:	48 8b f2             	mov    %rdx,%rsi
14004c926:	48 c1 fe 02          	sar    $0x2,%rsi
14004c92a:	48 8b c6             	mov    %rsi,%rax
14004c92d:	48 c1 e8 3f          	shr    $0x3f,%rax
14004c931:	48 03 f0             	add    %rax,%rsi
14004c934:	48 8b 41 08          	mov    0x8(%rcx),%rax
14004c938:	48 2b 01             	sub    (%rcx),%rax
14004c93b:	48 c1 f8 03          	sar    $0x3,%rax
14004c93f:	48 ba ab aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaab,%rdx
14004c946:	aa aa aa
14004c949:	48 0f af c2          	imul   %rdx,%rax
14004c94d:	49 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaa,%r8
14004c954:	aa aa 0a
14004c957:	49 3b c0             	cmp    %r8,%rax
14004c95a:	0f 84 1c 01 00 00    	je     0x14004ca7c
14004c960:	4c 8d 78 01          	lea    0x1(%rax),%r15
14004c964:	48 8b 49 10          	mov    0x10(%rcx),%rcx
14004c968:	49 2b 0e             	sub    (%r14),%rcx
14004c96b:	48 c1 f9 03          	sar    $0x3,%rcx
14004c96f:	48 0f af ca          	imul   %rdx,%rcx
14004c973:	48 8b d1             	mov    %rcx,%rdx
14004c976:	48 d1 ea             	shr    $1,%rdx
14004c979:	49 8b c0             	mov    %r8,%rax
14004c97c:	48 2b c2             	sub    %rdx,%rax
14004c97f:	48 3b c8             	cmp    %rax,%rcx
14004c982:	76 05                	jbe    0x14004c989
14004c984:	49 8b f8             	mov    %r8,%rdi
14004c987:	eb 0b                	jmp    0x14004c994
14004c989:	48 8d 3c 0a          	lea    (%rdx,%rcx,1),%rdi
14004c98d:	49 3b ff             	cmp    %r15,%rdi
14004c990:	49 0f 42 ff          	cmovb  %r15,%rdi
14004c994:	48 89 7c 24 58       	mov    %rdi,0x58(%rsp)
14004c999:	49 3b f8             	cmp    %r8,%rdi
14004c99c:	0f 87 d4 00 00 00    	ja     0x14004ca76
14004c9a2:	48 8d 0c 7f          	lea    (%rdi,%rdi,2),%rcx
14004c9a6:	48 c1 e1 03          	shl    $0x3,%rcx
14004c9aa:	33 db                	xor    %ebx,%ebx
14004c9ac:	48 85 c9             	test   %rcx,%rcx
14004c9af:	74 47                	je     0x14004c9f8
14004c9b1:	48 81 f9 00 10 00 00 	cmp    $0x1000,%rcx
14004c9b8:	72 29                	jb     0x14004c9e3
14004c9ba:	48 8d 41 27          	lea    0x27(%rcx),%rax
14004c9be:	48 3b c1             	cmp    %rcx,%rax
14004c9c1:	0f 86 af 00 00 00    	jbe    0x14004ca76
14004c9c7:	48 8b c8             	mov    %rax,%rcx
14004c9ca:	ff 15 f8 fe ab 00    	call   *0xabfef8(%rip)        # 0x140b0c8c8
14004c9d0:	48 85 c0             	test   %rax,%rax
14004c9d3:	74 19                	je     0x14004c9ee
14004c9d5:	48 8d 58 27          	lea    0x27(%rax),%rbx
14004c9d9:	48 83 e3 e0          	and    $0xffffffffffffffe0,%rbx
14004c9dd:	48 89 43 f8          	mov    %rax,-0x8(%rbx)
14004c9e1:	eb 15                	jmp    0x14004c9f8
14004c9e3:	ff 15 df fe ab 00    	call   *0xabfedf(%rip)        # 0x140b0c8c8
14004c9e9:	48 85 c0             	test   %rax,%rax
14004c9ec:	75 07                	jne    0x14004c9f5
14004c9ee:	ff 15 a4 fa ab 00    	call   *0xabfaa4(%rip)        # 0x140b0c498
14004c9f4:	cc                   	int3
14004c9f5:	48 8b d8             	mov    %rax,%rbx
14004c9f8:	48 89 5c 24 50       	mov    %rbx,0x50(%rsp)
14004c9fd:	48 8d 04 76          	lea    (%rsi,%rsi,2),%rax
14004ca01:	48 8d 34 c3          	lea    (%rbx,%rax,8),%rsi
14004ca05:	41 0f 10 45 00       	movups 0x0(%r13),%xmm0
14004ca0a:	0f 11 06             	movups %xmm0,(%rsi)
14004ca0d:	f2 41 0f 10 4d 10    	movsd  0x10(%r13),%xmm1
14004ca13:	f2 0f 11 4e 10       	movsd  %xmm1,0x10(%rsi)
14004ca18:	4d 8b 46 08          	mov    0x8(%r14),%r8
14004ca1c:	49 8b 16             	mov    (%r14),%rdx
14004ca1f:	48 8b cb             	mov    %rbx,%rcx
14004ca22:	4d 3b e0             	cmp    %r8,%r12
14004ca25:	75 05                	jne    0x14004ca2c
14004ca27:	4c 2b c2             	sub    %rdx,%r8
14004ca2a:	eb 19                	jmp    0x14004ca45
14004ca2c:	4d 8b c4             	mov    %r12,%r8
14004ca2f:	4d 2b 06             	sub    (%r14),%r8
14004ca32:	e8 2f 3a aa 00       	call   0x140af0466
14004ca37:	48 8d 4e 18          	lea    0x18(%rsi),%rcx
14004ca3b:	4d 8b 46 08          	mov    0x8(%r14),%r8
14004ca3f:	4d 2b c4             	sub    %r12,%r8
14004ca42:	49 8b d4             	mov    %r12,%rdx
14004ca45:	e8 1c 3a aa 00       	call   0x140af0466
14004ca4a:	4c 8b cf             	mov    %rdi,%r9
14004ca4d:	4d 8b c7             	mov    %r15,%r8
14004ca50:	48 8b d3             	mov    %rbx,%rdx
14004ca53:	49 8b ce             	mov    %r14,%rcx
14004ca56:	e8 01 0f 00 00       	call   0x14004d95c
14004ca5b:	48 8b c6             	mov    %rsi,%rax
14004ca5e:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
14004ca63:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14004ca68:	48 83 c4 20          	add    $0x20,%rsp
14004ca6c:	41 5f                	pop    %r15
14004ca6e:	41 5e                	pop    %r14
14004ca70:	41 5d                	pop    %r13
14004ca72:	41 5c                	pop    %r12
14004ca74:	5f                   	pop    %rdi
14004ca75:	c3                   	ret
14004ca76:	e8 55 72 fb ff       	call   0x140003cd0
14004ca7b:	cc                   	int3
14004ca7c:	e8 e7 f2 fc ff       	call   0x14001bd68
14004ca81:	cc                   	int3
14004ca82:	90                   	nop
14004ca83:	90                   	nop
14004ca84:	48 8b c4             	mov    %rsp,%rax
14004ca87:	48 89 58 08          	mov    %rbx,0x8(%rax)
14004ca8b:	48 89 70 10          	mov    %rsi,0x10(%rax)
14004ca8f:	48 89 78 18          	mov    %rdi,0x18(%rax)
14004ca93:	4c 89 70 20          	mov    %r14,0x20(%rax)
14004ca97:	41 57                	push   %r15
14004ca99:	48 83 ec 20          	sub    $0x20,%rsp
14004ca9d:	48 8b 01             	mov    (%rcx),%rax
14004caa0:	4d 8b f8             	mov    %r8,%r15
14004caa3:	83 62 08 00          	andl   $0x0,0x8(%rdx)
14004caa7:	4c 8b f2             	mov    %rdx,%r14
14004caaa:	48 89 42 10          	mov    %rax,0x10(%rdx)
14004caae:	48 8b 70 08          	mov    0x8(%rax),%rsi
14004cab2:	48 89 32             	mov    %rsi,(%rdx)
14004cab5:	eb 4b                	jmp    0x14004cb02
14004cab7:	48 8b 4e 20          	mov    0x20(%rsi),%rcx
14004cabb:	49 8b 3f             	mov    (%r15),%rdi
14004cabe:	49 89 36             	mov    %rsi,(%r14)
14004cac1:	48 8b 01             	mov    (%rcx),%rax
14004cac4:	48 8b 80 e0 00 00 00 	mov    0xe0(%rax),%rax
14004cacb:	ff 15 67 01 ac 00    	call   *0xac0167(%rip)        # 0x140b0cc38
14004cad1:	48 8b 17             	mov    (%rdi),%rdx
14004cad4:	48 8b cf             	mov    %rdi,%rcx
14004cad7:	8b d8                	mov    %eax,%ebx
14004cad9:	48 8b 82 e0 00 00 00 	mov    0xe0(%rdx),%rax
14004cae0:	ff 15 52 01 ac 00    	call   *0xac0152(%rip)        # 0x140b0cc38
14004cae6:	3b d8                	cmp    %eax,%ebx
14004cae8:	7d 08                	jge    0x14004caf2
14004caea:	48 8b 76 10          	mov    0x10(%rsi),%rsi
14004caee:	33 c0                	xor    %eax,%eax
14004caf0:	eb 0c                	jmp    0x14004cafe
14004caf2:	49 89 76 10          	mov    %rsi,0x10(%r14)
14004caf6:	b8 01 00 00 00       	mov    $0x1,%eax
14004cafb:	48 8b 36             	mov    (%rsi),%rsi
14004cafe:	41 89 46 08          	mov    %eax,0x8(%r14)
14004cb02:	80 7e 19 00          	cmpb   $0x0,0x19(%rsi)
14004cb06:	74 af                	je     0x14004cab7
14004cb08:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
14004cb0d:	49 8b c6             	mov    %r14,%rax