14011c629:	ff 15 c9 d9 20 00    	call   *0x20d9c9(%rip)        # 0x140329ff8
14011c62f:	cc                   	int3
14011c630:	e8 4f dc 1d 00       	call   0x1402fa284
14011c635:	66 0f 6f 05 f3 e3 20 	movdqa 0x20e3f3(%rip),%xmm0        # 0x14032aa30
14011c63c:	00
14011c63d:	f3 0f 7f 44 24 78    	movdqu %xmm0,0x78(%rsp)
14011c643:	c6 44 24 68 00       	movb   $0x0,0x68(%rsp)
14011c648:	48 8d 05 f1 e2 20 00 	lea    0x20e2f1(%rip),%rax        # 0x14032a940
14011c64f:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
14011c654:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14011c659:	48 85 c9             	test   %rcx,%rcx
14011c65c:	74 1b                	je     0x14011c679
14011c65e:	80 7c 24 48 00       	cmpb   $0x0,0x48(%rsp)
14011c663:	74 14                	je     0x14011c679
14011c665:	e8 92 17 fc ff       	call   0x1400dddfc
14011c66a:	ba 18 00 00 00       	mov    $0x18,%edx
14011c66f:	48 8b 4c 24 40       	mov    0x40(%rsp),%rcx
14011c674:	e8 0b dc 1d 00       	call   0x1402fa284
14011c679:	41 c6 07 00          	movb   $0x0,(%r15)
14011c67d:	48 8b 17             	mov    (%rdi),%rdx
14011c680:	48 85 d2             	test   %rdx,%rdx
14011c683:	74 16                	je     0x14011c69b
14011c685:	48 8b 42 08          	mov    0x8(%rdx),%rax
14011c689:	48 63 48 04          	movslq 0x4(%rax),%rcx
14011c68d:	48 83 c2 08          	add    $0x8,%rdx
14011c691:	48 03 ca             	add    %rdx,%rcx
14011c694:	48 8b 01             	mov    (%rcx),%rax
14011c697:	ff 50 08             	call   *0x8(%rax)
14011c69a:	90                   	nop
14011c69b:	49 8b 16             	mov    (%r14),%rdx
14011c69e:	48 85 d2             	test   %rdx,%rdx
14011c6a1:	74 16                	je     0x14011c6b9
14011c6a3:	48 8b 42 08          	mov    0x8(%rdx),%rax
14011c6a7:	48 63 48 04          	movslq 0x4(%rax),%rcx
14011c6ab:	48 83 c2 08          	add    $0x8,%rdx
14011c6af:	48 03 ca             	add    %rdx,%rcx
14011c6b2:	48 8b 01             	mov    (%rcx),%rax
14011c6b5:	ff 50 08             	call   *0x8(%rax)
14011c6b8:	90                   	nop
14011c6b9:	48 8b 16             	mov    (%rsi),%rdx
14011c6bc:	48 85 d2             	test   %rdx,%rdx
14011c6bf:	74 16                	je     0x14011c6d7
14011c6c1:	48 8b 42 08          	mov    0x8(%rdx),%rax
14011c6c5:	48 63 48 04          	movslq 0x4(%rax),%rcx
14011c6c9:	48 83 c2 08          	add    $0x8,%rdx
14011c6cd:	48 03 ca             	add    %rdx,%rcx
14011c6d0:	48 8b 01             	mov    (%rcx),%rax
14011c6d3:	ff 50 08             	call   *0x8(%rax)
14011c6d6:	90                   	nop
14011c6d7:	48 8b 8c 24 88 00 00 	mov    0x88(%rsp),%rcx
14011c6de:	00
14011c6df:	48 33 cc             	xor    %rsp,%rcx
14011c6e2:	e8 59 df 1d 00       	call   0x1402fa640
14011c6e7:	48 81 c4 90 00 00 00 	add    $0x90,%rsp
14011c6ee:	41 5f                	pop    %r15
14011c6f0:	41 5e                	pop    %r14
14011c6f2:	5f                   	pop    %rdi
14011c6f3:	5e                   	pop    %rsi
14011c6f4:	5b                   	pop    %rbx
14011c6f5:	c3                   	ret
14011c6f6:	cc                   	int3
14011c6f7:	cc                   	int3
14011c6f8:	cc                   	int3
14011c6f9:	cc                   	int3
14011c6fa:	cc                   	int3
14011c6fb:	cc                   	int3
14011c6fc:	cc                   	int3
14011c6fd:	cc                   	int3
14011c6fe:	cc                   	int3
14011c6ff:	cc                   	int3
14011c700:	40 53                	rex push %rbx
14011c702:	48 83 ec 20          	sub    $0x20,%rsp
14011c706:	49 8b d8             	mov    %r8,%rbx
14011c709:	4c 8b 02             	mov    (%rdx),%r8
14011c70c:	4d 85 c0             	test   %r8,%r8
14011c70f:	74 16                	je     0x14011c727
14011c711:	49 8b 40 08          	mov    0x8(%r8),%rax
14011c715:	48 63 48 04          	movslq 0x4(%rax),%rcx
14011c719:	49 83 c0 08          	add    $0x8,%r8
14011c71d:	49 03 c8             	add    %r8,%rcx
14011c720:	48 8b 01             	mov    (%rcx),%rax
14011c723:	ff 50 08             	call   *0x8(%rax)
14011c726:	90                   	nop
14011c727:	48 8b 13             	mov    (%rbx),%rdx
14011c72a:	48 85 d2             	test   %rdx,%rdx
14011c72d:	74 16                	je     0x14011c745
14011c72f:	48 8b 42 08          	mov    0x8(%rdx),%rax
14011c733:	48 63 48 04          	movslq 0x4(%rax),%rcx
14011c737:	48 83 c2 08          	add    $0x8,%rdx
14011c73b:	48 03 ca             	add    %rdx,%rcx
14011c73e:	48 8b 01             	mov    (%rcx),%rax
14011c741:	ff 50 08             	call   *0x8(%rax)
14011c744:	90                   	nop
14011c745:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14011c74a:	48 8b 08             	mov    (%rax),%rcx
14011c74d:	48 85 c9             	test   %rcx,%rcx
14011c750:	74 07                	je     0x14011c759
14011c752:	48 8b 01             	mov    (%rcx),%rax
14011c755:	ff 50 08             	call   *0x8(%rax)
14011c758:	90                   	nop
14011c759:	32 c0                	xor    %al,%al
14011c75b:	48 83 c4 20          	add    $0x20,%rsp
14011c75f:	5b                   	pop    %rbx
14011c760:	c3                   	ret
14011c761:	cc                   	int3
14011c762:	cc                   	int3
14011c763:	cc                   	int3
14011c764:	cc                   	int3
14011c765:	cc                   	int3
14011c766:	cc                   	int3
14011c767:	cc                   	int3
14011c768:	cc                   	int3
14011c769:	cc                   	int3
14011c76a:	cc                   	int3
14011c76b:	cc                   	int3
14011c76c:	cc                   	int3
14011c76d:	cc                   	int3
14011c76e:	cc                   	int3
14011c76f:	cc                   	int3
14011c770:	40 55                	rex push %rbp
14011c772:	53                   	push   %rbx
14011c773:	56                   	push   %rsi
14011c774:	57                   	push   %rdi
14011c775:	41 54                	push   %r12
14011c777:	41 55                	push   %r13
14011c779:	41 56                	push   %r14
14011c77b:	41 57                	push   %r15
14011c77d:	48 8d ac 24 78 ff ff 	lea    -0x88(%rsp),%rbp
14011c784:	ff
14011c785:	48 81 ec 88 01 00 00 	sub    $0x188,%rsp
14011c78c:	48 8b 05 ed b9 2e 00 	mov    0x2eb9ed(%rip),%rax        # 0x140408180
14011c793:	48 33 c4             	xor    %rsp,%rax
14011c796:	48 89 45 78          	mov    %rax,0x78(%rbp)
14011c79a:	49 8b f0             	mov    %r8,%rsi
14011c79d:	4c 89 44 24 70       	mov    %r8,0x70(%rsp)
14011c7a2:	48 89 54 24 78       	mov    %rdx,0x78(%rsp)
14011c7a7:	4c 8b e9             	mov    %rcx,%r13
14011c7aa:	48 89 55 98          	mov    %rdx,-0x68(%rbp)
14011c7ae:	4c 89 45 a0          	mov    %r8,-0x60(%rbp)
14011c7b2:	4c 89 4c 24 68       	mov    %r9,0x68(%rsp)
14011c7b7:	48 8b 8d f0 00 00 00 	mov    0xf0(%rbp),%rcx
14011c7be:	4c 8b a5 00 01 00 00 	mov    0x100(%rbp),%r12
14011c7c5:	4c 89 65 a8          	mov    %r12,-0x58(%rbp)
14011c7c9:	45 32 f6             	xor    %r14b,%r14b
14011c7cc:	48 8d 55 18          	lea    0x18(%rbp),%rdx
14011c7d0:	e8 eb e9 00 00       	call   0x14012b1c0
14011c7d5:	90                   	nop
14011c7d6:	48 8b d0             	mov    %rax,%rdx
14011c7d9:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
14011c7dd:	e8 0e 51 fc ff       	call   0x1400e18f0
14011c7e2:	90                   	nop
14011c7e3:	48 8b 55 30          	mov    0x30(%rbp),%rdx
14011c7e7:	48 83 fa 0f          	cmp    $0xf,%rdx
14011c7eb:	76 34                	jbe    0x14011c821
14011c7ed:	48 ff c2             	inc    %rdx
14011c7f0:	48 8b 4d 18          	mov    0x18(%rbp),%rcx
14011c7f4:	48 8b c1             	mov    %rcx,%rax
14011c7f7:	48 81 fa 00 10 00 00 	cmp    $0x1000,%rdx
14011c7fe:	72 1c                	jb     0x14011c81c
14011c800:	48 83 c2 27          	add    $0x27,%rdx
14011c804:	48 8b 49 f8          	mov    -0x8(%rcx),%rcx
14011c808:	48 2b c1             	sub    %rcx,%rax
14011c80b:	48 83 c0 f8          	add    $0xfffffffffffffff8,%rax
14011c80f:	48 83 f8 1f          	cmp    $0x1f,%rax
14011c813:	76 07                	jbe    0x14011c81c
14011c815:	ff 15 dd d7 20 00    	call   *0x20d7dd(%rip)        # 0x140329ff8
14011c81b:	cc                   	int3
14011c81c:	e8 63 da 1d 00       	call   0x1402fa284
14011c821:	66 0f 6f 05 07 e2 20 	movdqa 0x20e207(%rip),%xmm0        # 0x14032aa30
14011c828:	00
14011c829:	f3 0f 7f 45 28       	movdqu %xmm0,0x28(%rbp)
14011c82e:	c6 45 18 00          	movb   $0x0,0x18(%rbp)
14011c832:	48 8d 15 ef e4 20 00 	lea    0x20e4ef(%rip),%rdx        # 0x14032ad28
14011c839:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
14011c83d:	e8 2e f1 f7 ff       	call   0x14009b970
14011c842:	48 8b d8             	mov    %rax,%rbx
14011c845:	48 8d 15 b8 2e 21 00 	lea    0x212eb8(%rip),%rdx        # 0x14032f704
14011c84c:	48 8d 4d b8          	lea    -0x48(%rbp),%rcx
14011c850:	e8 1b f1 f7 ff       	call   0x14009b970
14011c855:	48 8b f8             	mov    %rax,%rdi
14011c858:	48 8b cb             	mov    %rbx,%rcx
14011c85b:	e8 60 35 f9 ff       	call   0x1400afdc0
14011c860:	84 c0                	test   %al,%al
14011c862:	0f 84 ad 06 00 00    	je     0x14011cf15
14011c868:	48 8b cf             	mov    %rdi,%rcx
14011c86b:	e8 20 32 f9 ff       	call   0x1400afa90
14011c870:	84 c0                	test   %al,%al
14011c872:	0f 84 9d 06 00 00    	je     0x14011cf15
14011c878:	48 8d 15 09 39 2e 00 	lea    0x2e3909(%rip),%rdx        # 0x140400188
14011c87f:	48 8b cb             	mov    %rbx,%rcx
14011c882:	e8 39 1f f9 ff       	call   0x1400ae7c0
14011c887:	48 8b d0             	mov    %rax,%rdx
14011c88a:	48 8d 4d 38          	lea    0x38(%rbp),%rcx
14011c88e:	e8 3d 95 f6 ff       	call   0x140085dd0
14011c893:	90                   	nop
14011c894:	4d 8d 7d 58          	lea    0x58(%r13),%r15
14011c898:	48 8d 55 38          	lea    0x38(%rbp),%rdx
14011c89c:	49 8b cf             	mov    %r15,%rcx
14011c89f:	e8 6c 07 f9 ff       	call   0x1400ad010
14011c8a4:	48 8b f0             	mov    %rax,%rsi
14011c8a7:	48 85 c0             	test   %rax,%rax
14011c8aa:	0f 84 22 06 00 00    	je     0x14011ced2
14011c8b0:	0f 57 c0             	xorps  %xmm0,%xmm0
14011c8b3:	f3 0f 7f 44 24 48    	movdqu %xmm0,0x48(%rsp)
14011c8b9:	45 33 f6             	xor    %r14d,%r14d
14011c8bc:	4c 89 74 24 58       	mov    %r14,0x58(%rsp)
14011c8c1:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
14011c8c5:	e8 a6 8f f7 ff       	call   0x140095870
14011c8ca:	90                   	nop
14011c8cb:	48 8b 4c 24 78       	mov    0x78(%rsp),%rcx
14011c8d0:	48 8b 09             	mov    (%rcx),%rcx
14011c8d3:	48 8b 01             	mov    (%rcx),%rax
14011c8d6:	ff 50 50             	call   *0x50(%rax)
14011c8d9:	48 63 d8             	movslq %eax,%rbx
14011c8dc:	48 8d 4d 80          	lea    -0x80(%rbp),%rcx
14011c8e0:	e8 1b 48 f8 ff       	call   0x1400a1100
14011c8e5:	c6 45 90 02          	movb   $0x2,-0x70(%rbp)
14011c8e9:	48 89 5d 80          	mov    %rbx,-0x80(%rbp)
14011c8ed:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14011c8f2:	48 3b 44 24 58       	cmp    0x58(%rsp),%rax
14011c8f7:	74 14                	je     0x14011c90d
14011c8f9:	48 8d 55 80          	lea    -0x80(%rbp),%rdx
14011c8fd:	48 8b c8             	mov    %rax,%rcx
14011c900:	e8 3b 8f f7 ff       	call   0x140095840
14011c905:	48 83 44 24 50 18    	addq   $0x18,0x50(%rsp)
14011c90b:	eb 11                	jmp    0x14011c91e
14011c90d:	4c 8d 45 80          	lea    -0x80(%rbp),%r8
14011c911:	48 8b d0             	mov    %rax,%rdx
14011c914:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14011c919:	e8 22 38 fd ff       	call   0x1400f0140
14011c91e:	0f 57 c0             	xorps  %xmm0,%xmm0
14011c921:	0f 11 45 f8          	movups %xmm0,-0x8(%rbp)
14011c925:	4c 89 75 08          	mov    %r14,0x8(%rbp)
14011c929:	48 c7 45 10 0f 00 00 	movq   $0xf,0x10(%rbp)
14011c930:	00
14011c931:	c6 45 f8 00          	movb   $0x0,-0x8(%rbp)
14011c935:	49 8b de             	mov    %r14,%rbx
14011c938:	48 8b cf             	mov    %rdi,%rcx
14011c93b:	e8 80 1c f9 ff       	call   0x1400ae5c0
14011c940:	48 85 c0             	test   %rax,%rax
14011c943:	74 47                	je     0x14011c98c
14011c945:	48 8b d3             	mov    %rbx,%rdx
14011c948:	48 8b cf             	mov    %rdi,%rcx
14011c94b:	e8 d0 f5 f7 ff       	call   0x14009bf20
14011c950:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14011c955:	48 3b 4c 24 58       	cmp    0x58(%rsp),%rcx
14011c95a:	74 10                	je     0x14011c96c
14011c95c:	48 8b d0             	mov    %rax,%rdx
14011c95f:	e8 dc 8e f7 ff       	call   0x140095840
14011c964:	48 83 44 24 50 18    	addq   $0x18,0x50(%rsp)
14011c96a:	eb 10                	jmp    0x14011c97c
14011c96c:	4c 8b c0             	mov    %rax,%r8
14011c96f:	48 8b d1             	mov    %rcx,%rdx
14011c972:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14011c977:	e8 c4 37 fd ff       	call   0x1400f0140
14011c97c:	48 ff c3             	inc    %rbx
14011c97f:	48 8b cf             	mov    %rdi,%rcx
14011c982:	e8 39 1c f9 ff       	call   0x1400ae5c0
14011c987:	48 3b d8             	cmp    %rax,%rbx
14011c98a:	72 b9                	jb     0x14011c945
14011c98c:	48 8b 4e 28          	mov    0x28(%rsi),%rcx
14011c990:	48 2b 4e 20          	sub    0x20(%rsi),%rcx
14011c994:	48 b8 65 21 0b 59 c8 	movabs $0xb21642c8590b2165,%rax
14011c99b:	42 16 b2
14011c99e:	48 f7 e9             	imul   %rcx
14011c9a1:	48 03 d1             	add    %rcx,%rdx
14011c9a4:	48 c1 fa 07          	sar    $0x7,%rdx
14011c9a8:	4c 8b c2             	mov    %rdx,%r8
14011c9ab:	49 c1 e8 3f          	shr    $0x3f,%r8
14011c9af:	48 ff ca             	dec    %rdx
14011c9b2:	4c 03 c2             	add    %rdx,%r8
14011c9b5:	48 8b 4c 24 50       	mov    0x50(%rsp),%rcx
14011c9ba:	48 2b 4c 24 48       	sub    0x48(%rsp),%rcx
14011c9bf:	48 b8 ab aa aa aa aa 	movabs $0x2aaaaaaaaaaaaaab,%rax
14011c9c6:	aa aa 2a
14011c9c9:	48 f7 e9             	imul   %rcx
14011c9cc:	48 c1 fa 02          	sar    $0x2,%rdx
14011c9d0:	48 8b c2             	mov    %rdx,%rax
14011c9d3:	48 c1 e8 3f          	shr    $0x3f,%rax
14011c9d7:	48 03 d0             	add    %rax,%rdx
14011c9da:	0f b6 bd f8 00 00 00 	movzbl 0xf8(%rbp),%edi
14011c9e1:	49 3b d0             	cmp    %r8,%rdx
14011c9e4:	75 69                	jne    0x14011ca4f
14011c9e6:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14011c9eb:	e8 80 8e f7 ff       	call   0x140095870
14011c9f0:	90                   	nop
14011c9f1:	49 8b de             	mov    %r14,%rbx
14011c9f4:	40 84 ff             	test   %dil,%dil
14011c9f7:	48 0f 45 5c 24 68    	cmovne 0x68(%rsp),%rbx
14011c9fd:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14011ca02:	e8 f9 46 f8 ff       	call   0x1400a1100
14011ca07:	c6 44 24 40 02       	movb   $0x2,0x40(%rsp)
14011ca0c:	48 89 5c 24 30       	mov    %rbx,0x30(%rsp)
14011ca11:	48 8b 44 24 50       	mov    0x50(%rsp),%rax
14011ca16:	48 3b 44 24 58       	cmp    0x58(%rsp),%rax
14011ca1b:	74 15                	je     0x14011ca32
14011ca1d:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
14011ca22:	48 8b c8             	mov    %rax,%rcx
14011ca25:	e8 16 8e f7 ff       	call   0x140095840
14011ca2a:	48 83 44 24 50 18    	addq   $0x18,0x50(%rsp)
14011ca30:	eb 13                	jmp    0x14011ca45
14011ca32:	4c 8d 44 24 30       	lea    0x30(%rsp),%r8
14011ca37:	48 8b d0             	mov    %rax,%rdx
14011ca3a:	48 8d 4c 24 48       	lea    0x48(%rsp),%rcx
14011ca3f:	e8 fc 36 fd ff       	call   0x1400f0140
14011ca44:	90                   	nop
14011ca45:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
14011ca4a:	e8 91 d1 f7 ff       	call   0x140099be0
14011ca4f:	40 84 ff             	test   %dil,%dil
14011ca52:	74 51                	je     0x14011caa5
14011ca54:	48 8d 44 24 60       	lea    0x60(%rsp),%rax
14011ca59:	48 89 45 b0          	mov    %rax,-0x50(%rbp)
14011ca5d:	49 8b 0c 24          	mov    (%r12),%rcx
14011ca61:	48 89 4c 24 60       	mov    %rcx,0x60(%rsp)
14011ca66:	48 85 c9             	test   %rcx,%rcx
14011ca69:	74 06                	je     0x14011ca71
14011ca6b:	48 8b 01             	mov    (%rcx),%rax
14011ca6e:	ff 10                	call   *(%rax)
14011ca70:	90                   	nop
14011ca71:	49 8d 4d 18          	lea    0x18(%r13),%rcx
14011ca75:	4c 8d 44 24 68       	lea    0x68(%rsp),%r8
14011ca7a:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
14011ca7f:	e8 fc 78 fd ff       	call   0x1400f4380
14011ca84:	48 8b 10             	mov    (%rax),%rdx
14011ca87:	48 8b 4a 18          	mov    0x18(%rdx),%rcx
14011ca8b:	48 8b 44 24 60       	mov    0x60(%rsp),%rax
14011ca90:	48 89 42 18          	mov    %rax,0x18(%rdx)
14011ca94:	48 89 4c 24 60       	mov    %rcx,0x60(%rsp)
14011ca99:	48 85 c9             	test   %rcx,%rcx
14011ca9c:	74 07                	je     0x14011caa5
14011ca9e:	48 8b 01             	mov    (%rcx),%rax
14011caa1:	ff 50 08             	call   *0x8(%rax)
14011caa4:	90                   	nop
14011caa5:	45 33 ed             	xor    %r13d,%r13d
14011caa8:	44 89 6c 24 20       	mov    %r13d,0x20(%rsp)
14011caad:	4c 8d 4c 24 48       	lea    0x48(%rsp),%r9
14011cab2:	4c 8b c6             	mov    %rsi,%r8
14011cab5:	48 8d 55 18          	lea    0x18(%rbp),%rdx
14011cab9:	49 8b cf             	mov    %r15,%rcx
14011cabc:	e8 cf 3f f8 ff       	call   0x1400a0a90
14011cac1:	90                   	nop
14011cac2:	48 8d 4d 18          	lea    0x18(%rbp),%rcx
14011cac6:	e8 a5 f4 f7 ff       	call   0x14009bf70
14011cacb:	44 0f b6 f0          	movzbl %al,%r14d
14011cacf:	84 c0                	test   %al,%al
14011cad1:	0f 85 03 01 00 00    	jne    0x14011cbda
14011cad7:	48 8d 4d 18          	lea    0x18(%rbp),%rcx
14011cadb:	e8 e0 fe f8 ff       	call   0x1400ac9c0
14011cae0:	48 8d 4d f8          	lea    -0x8(%rbp),%rcx
14011cae4:	48 3b c8             	cmp    %rax,%rcx