1400217af:	4c 89 70 20          	mov    %r14,0x20(%rax)
1400217b3:	55                   	push   %rbp
1400217b4:	48 8b ec             	mov    %rsp,%rbp
1400217b7:	48 83 ec 50          	sub    $0x50,%rsp
1400217bb:	49 8b d8             	mov    %r8,%rbx
1400217be:	48 8b fa             	mov    %rdx,%rdi
1400217c1:	66 48 0f 7e da       	movq   %xmm3,%rdx
1400217c6:	45 33 c0             	xor    %r8d,%r8d
1400217c9:	48 8b f1             	mov    %rcx,%rsi
1400217cc:	48 85 d2             	test   %rdx,%rdx
1400217cf:	75 48                	jne    0x140021819
1400217d1:	83 7d 30 01          	cmpl   $0x1,0x30(%rbp)
1400217d5:	75 31                	jne    0x140021808
1400217d7:	48 8b c3             	mov    %rbx,%rax
1400217da:	48 2b c7             	sub    %rdi,%rax
1400217dd:	48 83 f8 05          	cmp    $0x5,%rax
1400217e1:	7d 0b                	jge    0x1400217ee
1400217e3:	41 b8 84 00 00 00    	mov    $0x84,%r8d
1400217e9:	e9 2e 01 00 00       	jmp    0x14002191c
1400217ee:	8b 05 70 e3 22 00    	mov    0x22e370(%rip),%eax        # 0x14024fb64
1400217f4:	48 8d 5f 05          	lea    0x5(%rdi),%rbx
1400217f8:	89 07                	mov    %eax,(%rdi)
1400217fa:	8a 05 68 e3 22 00    	mov    0x22e368(%rip),%al        # 0x14024fb68
140021800:	88 47 04             	mov    %al,0x4(%rdi)
140021803:	e9 14 01 00 00       	jmp    0x14002191c
140021808:	48 3b fb             	cmp    %rbx,%rdi
14002180b:	74 d6                	je     0x1400217e3
14002180d:	c6 07 30             	movb   $0x30,(%rdi)
140021810:	48 8d 5f 01          	lea    0x1(%rdi),%rbx
140021814:	e9 03 01 00 00       	jmp    0x14002191c
140021819:	44 8b 75 30          	mov    0x30(%rbp),%r14d
14002181d:	4c 8b ca             	mov    %rdx,%r9
140021820:	48 c1 ea 34          	shr    $0x34,%rdx
140021824:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffff,%rax
14002182b:	ff 0f 00
14002182e:	4c 23 c8             	and    %rax,%r9
140021831:	8d 8a cd fb ff ff    	lea    -0x433(%rdx),%ecx
140021837:	41 83 fe 02          	cmp    $0x2,%r14d
14002183b:	75 1d                	jne    0x14002185a
14002183d:	85 c9                	test   %ecx,%ecx
14002183f:	7e 19                	jle    0x14002185a
140021841:	44 89 44 24 20       	mov    %r8d,0x20(%rsp)
140021846:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
14002184a:	4c 8b c3             	mov    %rbx,%r8
14002184d:	48 8b d7             	mov    %rdi,%rdx
140021850:	e8 8f 02 00 00       	call   0x140021ae4
140021855:	e9 ba 00 00 00       	jmp    0x140021914
14002185a:	48 b8 00 00 00 00 00 	movabs $0x10000000000000,%rax
140021861:	00 10 00
140021864:	4d 8b d1             	mov    %r9,%r10
140021867:	4c 0b d0             	or     %rax,%r10
14002186a:	0f 57 c0             	xorps  %xmm0,%xmm0
14002186d:	8d 41 34             	lea    0x34(%rcx),%eax
140021870:	0f 11 45 e0          	movups %xmm0,-0x20(%rbp)
140021874:	83 f8 34             	cmp    $0x34,%eax
140021877:	77 66                	ja     0x1400218df
140021879:	f7 d9                	neg    %ecx
14002187b:	b8 01 00 00 00       	mov    $0x1,%eax
140021880:	48 d3 e0             	shl    %cl,%rax
140021883:	48 ff c8             	dec    %rax
140021886:	49 85 c2             	test   %rax,%r10
140021889:	75 54                	jne    0x1400218df
14002188b:	49 d3 ea             	shr    %cl,%r10
14002188e:	49 bb cd cc cc cc cc 	movabs $0xcccccccccccccccd,%r11
140021895:	cc cc cc
140021898:	49 8b c3             	mov    %r11,%rax
14002189b:	4c 89 55 e0          	mov    %r10,-0x20(%rbp)
14002189f:	49 f7 e2             	mul    %r10
1400218a2:	4c 8b ca             	mov    %rdx,%r9
1400218a5:	49 c1 e9 03          	shr    $0x3,%r9
1400218a9:	43 8d 04 89          	lea    (%r9,%r9,4),%eax
1400218ad:	03 c0                	add    %eax,%eax
1400218af:	44 3b d0             	cmp    %eax,%r10d
1400218b2:	eb 1f                	jmp    0x1400218d3
1400218b4:	49 8b c9             	mov    %r9,%rcx
1400218b7:	49 8b c3             	mov    %r11,%rax
1400218ba:	49 f7 e1             	mul    %r9
1400218bd:	41 ff c0             	inc    %r8d
1400218c0:	48 89 4d e0          	mov    %rcx,-0x20(%rbp)
1400218c4:	4c 8b ca             	mov    %rdx,%r9
1400218c7:	49 c1 e9 03          	shr    $0x3,%r9
1400218cb:	43 8d 04 89          	lea    (%r9,%r9,4),%eax
1400218cf:	03 c0                	add    %eax,%eax
1400218d1:	3b c8                	cmp    %eax,%ecx
1400218d3:	44 89 45 e8          	mov    %r8d,-0x18(%rbp)
1400218d7:	74 db                	je     0x1400218b4
1400218d9:	0f 28 45 e0          	movaps -0x20(%rbp),%xmm0
1400218dd:	eb 12                	jmp    0x1400218f1
1400218df:	44 8b c2             	mov    %edx,%r8d
1400218e2:	48 8d 4d f0          	lea    -0x10(%rbp),%rcx
1400218e6:	49 8b d1             	mov    %r9,%rdx
1400218e9:	e8 4e f3 ff ff       	call   0x140020c3c
1400218ee:	0f 10 00             	movups (%rax),%xmm0
1400218f1:	f2 0f 11 5c 24 28    	movsd  %xmm3,0x28(%rsp)
1400218f7:	4c 8d 4d f0          	lea    -0x10(%rbp),%r9
1400218fb:	4c 8b c3             	mov    %rbx,%r8
1400218fe:	44 89 74 24 20       	mov    %r14d,0x20(%rsp)
140021903:	48 8b d7             	mov    %rdi,%rdx
140021906:	66 0f 7f 45 f0       	movdqa %xmm0,-0x10(%rbp)
14002190b:	48 8d 4d e0          	lea    -0x20(%rbp),%rcx
14002190f:	e8 f4 f7 ff ff       	call   0x140021108
140021914:	44 8b 45 e8          	mov    -0x18(%rbp),%r8d
140021918:	48 8b 5d e0          	mov    -0x20(%rbp),%rbx
14002191c:	48 8b 7c 24 70       	mov    0x70(%rsp),%rdi
140021921:	33 c0                	xor    %eax,%eax
140021923:	4c 8b 74 24 78       	mov    0x78(%rsp),%r14
140021928:	48 89 1e             	mov    %rbx,(%rsi)
14002192b:	48 8b 5c 24 60       	mov    0x60(%rsp),%rbx
140021930:	44 89 46 08          	mov    %r8d,0x8(%rsi)
140021934:	89 46 0c             	mov    %eax,0xc(%rsi)
140021937:	48 8b c6             	mov    %rsi,%rax
14002193a:	48 8b 74 24 68       	mov    0x68(%rsp),%rsi
14002193f:	48 83 c4 50          	add    $0x50,%rsp
140021943:	5d                   	pop    %rbp
140021944:	c3                   	ret
140021945:	90                   	nop
140021946:	90                   	nop
140021947:	90                   	nop
140021948:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
14002194d:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
140021952:	57                   	push   %rdi
140021953:	48 83 ec 30          	sub    $0x30,%rsp
140021957:	48 8b f2             	mov    %rdx,%rsi
14002195a:	48 8b d9             	mov    %rcx,%rbx
14002195d:	66 48 0f 7e d9       	movq   %xmm3,%rcx
140021962:	48 8b d1             	mov    %rcx,%rdx
140021965:	48 c1 ea 3f          	shr    $0x3f,%rdx
140021969:	84 d2                	test   %dl,%dl
14002196b:	74 2d                	je     0x14002199a
14002196d:	49 3b f0             	cmp    %r8,%rsi
140021970:	75 10                	jne    0x140021982
140021972:	4c 89 03             	mov    %r8,(%rbx)
140021975:	48 c7 43 08 84 00 00 	movq   $0x84,0x8(%rbx)
14002197c:	00
14002197d:	e9 c5 00 00 00       	jmp    0x140021a47
140021982:	c6 06 2d             	movb   $0x2d,(%rsi)
140021985:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
14002198c:	ff ff 7f
14002198f:	48 ff c6             	inc    %rsi
140021992:	48 23 c8             	and    %rax,%rcx
140021995:	66 48 0f 6e d9       	movq   %rcx,%xmm3
14002199a:	49 b9 00 00 00 00 00 	movabs $0x7ff0000000000000,%r9
1400219a1:	00 f0 7f
1400219a4:	48 8b c1             	mov    %rcx,%rax
1400219a7:	49 23 c1             	and    %r9,%rax
1400219aa:	49 3b c1             	cmp    %r9,%rax
1400219ad:	0f 85 84 00 00 00    	jne    0x140021a37
1400219b3:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffff,%rax
1400219ba:	ff 0f 00
1400219bd:	48 23 c8             	and    %rax,%rcx
1400219c0:	75 09                	jne    0x1400219cb
1400219c2:	48 8d 15 7b e1 22 00 	lea    0x22e17b(%rip),%rdx        # 0x14024fb44
1400219c9:	eb 2d                	jmp    0x1400219f8
1400219cb:	48 b8 00 00 00 00 00 	movabs $0x8000000000000,%rax
1400219d2:	00 08 00
1400219d5:	84 d2                	test   %dl,%dl
1400219d7:	74 13                	je     0x1400219ec
1400219d9:	48 3b c8             	cmp    %rax,%rcx
1400219dc:	75 0e                	jne    0x1400219ec
1400219de:	48 8d 15 73 e1 22 00 	lea    0x22e173(%rip),%rdx        # 0x14024fb58
1400219e5:	bf 08 00 00 00       	mov    $0x8,%edi
1400219ea:	eb 1f                	jmp    0x140021a0b
1400219ec:	48 85 c8             	test   %rcx,%rax
1400219ef:	74 0e                	je     0x1400219ff
1400219f1:	48 8d 15 18 e5 22 00 	lea    0x22e518(%rip),%rdx        # 0x14024ff10
1400219f8:	bf 03 00 00 00       	mov    $0x3,%edi
1400219fd:	eb 0c                	jmp    0x140021a0b
1400219ff:	48 8d 15 42 e1 22 00 	lea    0x22e142(%rip),%rdx        # 0x14024fb48
140021a06:	bf 09 00 00 00       	mov    $0x9,%edi
140021a0b:	49 8b c0             	mov    %r8,%rax
140021a0e:	48 2b c6             	sub    %rsi,%rax
140021a11:	48 3b c7             	cmp    %rdi,%rax
140021a14:	0f 8c 58 ff ff ff    	jl     0x140021972
140021a1a:	4c 8b c7             	mov    %rdi,%r8
140021a1d:	48 8b ce             	mov    %rsi,%rcx
140021a20:	e8 cb 3f 1e 00       	call   0x1402059f0
140021a25:	83 63 08 00          	andl   $0x0,0x8(%rbx)
140021a29:	48 8d 04 37          	lea    (%rdi,%rsi,1),%rax
140021a2d:	48 89 03             	mov    %rax,(%rbx)
140021a30:	33 c0                	xor    %eax,%eax
140021a32:	89 43 0c             	mov    %eax,0xc(%rbx)
140021a35:	eb 10                	jmp    0x140021a47
140021a37:	83 64 24 20 00       	andl   $0x0,0x20(%rsp)
140021a3c:	48 8b d6             	mov    %rsi,%rdx
140021a3f:	48 8b cb             	mov    %rbx,%rcx
140021a42:	e8 59 fd ff ff       	call   0x1400217a0
140021a47:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
140021a4c:	48 8b c3             	mov    %rbx,%rax
140021a4f:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140021a54:	48 83 c4 30          	add    $0x30,%rsp
140021a58:	5f                   	pop    %rdi
140021a59:	c3                   	ret
140021a5a:	90                   	nop
140021a5b:	90                   	nop
140021a5c:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140021a61:	57                   	push   %rdi
140021a62:	48 83 ec 20          	sub    $0x20,%rsp
140021a66:	48 8b fa             	mov    %rdx,%rdi
140021a69:	48 8b d9             	mov    %rcx,%rbx
140021a6c:	48 3b ca             	cmp    %rdx,%rcx
140021a6f:	74 5e                	je     0x140021acf
140021a71:	48 8b 41 18          	mov    0x18(%rcx),%rax
140021a75:	48 83 f8 0f          	cmp    $0xf,%rax
140021a79:	76 28                	jbe    0x140021aa3
140021a7b:	48 8b 09             	mov    (%rcx),%rcx
140021a7e:	48 ff c0             	inc    %rax
140021a81:	48 3d 00 10 00 00    	cmp    $0x1000,%rax
140021a87:	72 14                	jb     0x140021a9d
140021a89:	48 8b 51 f8          	mov    -0x8(%rcx),%rdx
140021a8d:	48 2b ca             	sub    %rdx,%rcx
140021a90:	48 8d 41 f8          	lea    -0x8(%rcx),%rax
140021a94:	48 83 f8 1f          	cmp    $0x1f,%rax
140021a98:	77 43                	ja     0x140021add
140021a9a:	48 8b ca             	mov    %rdx,%rcx
140021a9d:	ff 15 9d 10 1f 00    	call   *0x1f109d(%rip)        # 0x140212b40
140021aa3:	48 c7 43 18 0f 00 00 	movq   $0xf,0x18(%rbx)
140021aaa:	00
140021aab:	33 c0                	xor    %eax,%eax
140021aad:	48 89 43 10          	mov    %rax,0x10(%rbx)
140021ab1:	88 03                	mov    %al,(%rbx)
140021ab3:	0f 10 07             	movups (%rdi),%xmm0
140021ab6:	0f 11 03             	movups %xmm0,(%rbx)
140021ab9:	0f 10 4f 10          	movups 0x10(%rdi),%xmm1
140021abd:	0f 11 4b 10          	movups %xmm1,0x10(%rbx)
140021ac1:	48 89 47 10          	mov    %rax,0x10(%rdi)
140021ac5:	48 c7 47 18 0f 00 00 	movq   $0xf,0x18(%rdi)
140021acc:	00
140021acd:	88 07                	mov    %al,(%rdi)
140021acf:	48 8b c3             	mov    %rbx,%rax
140021ad2:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140021ad7:	48 83 c4 20          	add    $0x20,%rsp
140021adb:	5f                   	pop    %rdi
140021adc:	c3                   	ret
140021add:	ff 15 9d 10 1f 00    	call   *0x1f109d(%rip)        # 0x140212b80
140021ae3:	cc                   	int3
140021ae4:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140021ae9:	48 89 6c 24 18       	mov    %rbp,0x18(%rsp)
140021aee:	56                   	push   %rsi
140021aef:	57                   	push   %rdi
140021af0:	41 54                	push   %r12
140021af2:	41 56                	push   %r14
140021af4:	41 57                	push   %r15
140021af6:	48 83 ec 50          	sub    $0x50,%rsp
140021afa:	48 8b fa             	mov    %rdx,%rdi
140021afd:	48 89 54 24 40       	mov    %rdx,0x40(%rsp)
140021b02:	66 48 0f 7e da       	movq   %xmm3,%rdx
140021b07:	49 8b e8             	mov    %r8,%rbp
140021b0a:	4c 8b e1             	mov    %rcx,%r12
140021b0d:	48 85 d2             	test   %rdx,%rdx
140021b10:	75 64                	jne    0x140021b76
140021b12:	44 8b 8c 24 a0 00 00 	mov    0xa0(%rsp),%r9d
140021b19:	00
140021b1a:	8d 5a 01             	lea    0x1(%rdx),%ebx
140021b1d:	41 8b c1             	mov    %r9d,%eax
140021b20:	f7 d8                	neg    %eax
140021b22:	48 8b c5             	mov    %rbp,%rax
140021b25:	45 1b c0             	sbb    %r8d,%r8d
140021b28:	48 2b c7             	sub    %rdi,%rax
140021b2b:	41 f7 d8             	neg    %r8d
140021b2e:	44 03 c3             	add    %ebx,%r8d
140021b31:	45 03 c1             	add    %r9d,%r8d
140021b34:	49 63 c8             	movslq %r8d,%rcx
140021b37:	48 3b c1             	cmp    %rcx,%rax
140021b3a:	0f 8c 7c 05 00 00    	jl     0x1400220bc
140021b40:	c6 07 30             	movb   $0x30,(%rdi)
140021b43:	48 03 fb             	add    %rbx,%rdi
140021b46:	45 85 c9             	test   %r9d,%r9d
140021b49:	74 1c                	je     0x140021b67
140021b4b:	c6 07 2e             	movb   $0x2e,(%rdi)
140021b4e:	45 8b c1             	mov    %r9d,%r8d
140021b51:	48 03 fb             	add    %rbx,%rdi
140021b54:	41 8b d9             	mov    %r9d,%ebx
140021b57:	ba 30 00 00 00       	mov    $0x30,%edx
140021b5c:	48 8b cf             	mov    %rdi,%rcx
140021b5f:	e8 9e 3e 1e 00       	call   0x140205a02
140021b64:	48 03 fb             	add    %rbx,%rdi
140021b67:	41 83 64 24 08 00    	andl   $0x0,0x8(%r12)
140021b6d:	49 89 3c 24          	mov    %rdi,(%r12)
140021b71:	e9 53 05 00 00       	jmp    0x1400220c9
140021b76:	4c 8b d2             	mov    %rdx,%r10
140021b79:	48 b8 ff ff ff ff ff 	movabs $0xfffffffffffff,%rax
140021b80:	ff 0f 00
140021b83:	4c 23 d0             	and    %rax,%r10
140021b86:	48 c1 ea 34          	shr    $0x34,%rdx
140021b8a:	41 be ce fb ff ff    	mov    $0xfffffbce,%r14d
140021b90:	85 d2                	test   %edx,%edx
140021b92:	74 07                	je     0x140021b9b
140021b94:	44 8d b2 cd fb ff ff 	lea    -0x433(%rdx),%r14d
140021b9b:	49 8b c2             	mov    %r10,%rax
140021b9e:	c6 84 24 88 00 00 00 	movb   $0x0,0x88(%rsp)
140021ba5:	00
140021ba6:	48 b9 00 00 00 00 00 	movabs $0x10000000000000,%rcx
140021bad:	00 10 00
140021bb0:	bb 01 00 00 00       	mov    $0x1,%ebx
140021bb5:	48 0b c1             	or     %rcx,%rax
140021bb8:	85 d2                	test   %edx,%edx
140021bba:	4c 0f 45 d0          	cmovne %rax,%r10
140021bbe:	44 8d 7b 08          	lea    0x8(%rbx),%r15d
140021bc2:	4c 89 54 24 38       	mov    %r10,0x38(%rsp)
140021bc7:	41 83 fe cc          	cmp    $0xffffffcc,%r14d
140021bcb:	0f 8c a1 01 00 00    	jl     0x140021d72
140021bd1:	45 85 f6             	test   %r14d,%r14d
140021bd4:	79 05                	jns    0x140021bdb
140021bd6:	45 33 c0             	xor    %r8d,%r8d
140021bd9:	eb 08                	jmp    0x140021be3
140021bdb:	45 8d 46 0f          	lea    0xf(%r14),%r8d
140021bdf:	41 c1 e8 04          	shr    $0x4,%r8d
140021be3:	41 69 c8 10 44 13 00 	imul   $0x134410,%r8d,%ecx
140021bea:	b8 39 8e e3 38       	mov    $0x38e38e39,%eax
140021bef:	45 8b c8             	mov    %r8d,%r9d
140021bf2:	41 c1 e1 04          	shl    $0x4,%r9d
140021bf6:	41 83 c1 78          	add    $0x78,%r9d
140021bfa:	c1 e9 12             	shr    $0x12,%ecx
140021bfd:	83 c1 19             	add    $0x19,%ecx
140021c00:	f7 e1                	mul    %ecx
140021c02:	8b f2                	mov    %edx,%esi
140021c04:	d1 ee                	shr    $1,%esi
140021c06:	2b f3                	sub    %ebx,%esi
140021c08:	0f 88 64 01 00 00    	js     0x140021d72
140021c0e:	0f ae e8             	lfence
140021c11:	45 2b ce             	sub    %r14d,%r9d
140021c14:	48 8d 15 e5 e3 fd ff 	lea    -0x21c1b(%rip),%rdx        # 0x140000000
140021c1b:	42 0f b7 8c 42 c0 f9 	movzwl 0x24f9c0(%rdx,%r8,2),%ecx
140021c22:	24 00
140021c24:	45 8d 59 08          	lea    0x8(%r9),%r11d
140021c28:	4d 8b ca             	mov    %r10,%r9
140021c2b:	49 c1 e1 08          	shl    $0x8,%r9
140021c2f:	03 ce                	add    %esi,%ecx
140021c31:	44 89 5c 24 24       	mov    %r11d,0x24(%rsp)
140021c36:	89 8c 24 98 00 00 00 	mov    %ecx,0x98(%rsp)
140021c3d:	4c 89 4c 24 30       	mov    %r9,0x30(%rsp)
140021c42:	48 63 c1             	movslq %ecx,%rax
140021c45:	45 8b c3             	mov    %r11d,%r8d
140021c48:	48 8d 0c 40          	lea    (%rax,%rax,2),%rcx
140021c4c:	48 8d 14 ca          	lea    (%rdx,%rcx,8),%rdx
140021c50:	49 8b c9             	mov    %r9,%rcx
140021c53:	48 8d 92 30 bc 21 00 	lea    0x21bc30(%rdx),%rdx
140021c5a:	e8 e1 04 00 00       	call   0x140022140
140021c5f:	44 8b c8             	mov    %eax,%r9d
140021c62:	8a 84 24 88 00 00 00 	mov    0x88(%rsp),%al
140021c69:	84 c0                	test   %al,%al
140021c6b:	74 29                	je     0x140021c96
140021c6d:	48 8b c5             	mov    %rbp,%rax
140021c70:	48 2b c7             	sub    %rdi,%rax
140021c73:	49 3b c7             	cmp    %r15,%rax
140021c76:	0f 8c 40 04 00 00    	jl     0x1400220bc
140021c7c:	48 8b d7             	mov    %rdi,%rdx
140021c7f:	41 8b c9             	mov    %r9d,%ecx
140021c82:	e8 59 1e 00 00       	call   0x140023ae0
140021c87:	8a 84 24 88 00 00 00 	mov    0x88(%rsp),%al