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
140021c8e:	49 03 ff             	add    %r15,%rdi
140021c91:	e9 af 00 00 00       	jmp    0x140021d45
140021c96:	45 85 c9             	test   %r9d,%r9d
140021c99:	0f 84 a6 00 00 00    	je     0x140021d45
140021c9f:	41 81 f9 00 e1 f5 05 	cmp    $0x5f5e100,%r9d
140021ca6:	72 05                	jb     0x140021cad
140021ca8:	41 8b cf             	mov    %r15d,%ecx
140021cab:	eb 66                	jmp    0x140021d13
140021cad:	41 81 f9 80 96 98 00 	cmp    $0x989680,%r9d
140021cb4:	72 07                	jb     0x140021cbd
140021cb6:	b9 08 00 00 00       	mov    $0x8,%ecx
140021cbb:	eb 56                	jmp    0x140021d13
140021cbd:	41 81 f9 40 42 0f 00 	cmp    $0xf4240,%r9d
140021cc4:	72 07                	jb     0x140021ccd
140021cc6:	b9 07 00 00 00       	mov    $0x7,%ecx
140021ccb:	eb 46                	jmp    0x140021d13
140021ccd:	41 81 f9 a0 86 01 00 	cmp    $0x186a0,%r9d
140021cd4:	72 07                	jb     0x140021cdd
140021cd6:	b9 06 00 00 00       	mov    $0x6,%ecx
140021cdb:	eb 36                	jmp    0x140021d13
140021cdd:	41 81 f9 10 27 00 00 	cmp    $0x2710,%r9d
140021ce4:	72 07                	jb     0x140021ced
140021ce6:	b9 05 00 00 00       	mov    $0x5,%ecx
140021ceb:	eb 26                	jmp    0x140021d13
140021ced:	41 81 f9 e8 03 00 00 	cmp    $0x3e8,%r9d
140021cf4:	72 07                	jb     0x140021cfd
140021cf6:	b9 04 00 00 00       	mov    $0x4,%ecx
140021cfb:	eb 16                	jmp    0x140021d13
140021cfd:	41 83 f9 64          	cmp    $0x64,%r9d
140021d01:	72 07                	jb     0x140021d0a
140021d03:	b9 03 00 00 00       	mov    $0x3,%ecx
140021d08:	eb 09                	jmp    0x140021d13
140021d0a:	41 83 f9 0a          	cmp    $0xa,%r9d
140021d0e:	1b c9                	sbb    %ecx,%ecx
140021d10:	83 c1 02             	add    $0x2,%ecx
140021d13:	48 8b c5             	mov    %rbp,%rax
140021d16:	44 8b f9             	mov    %ecx,%r15d
140021d19:	48 2b c7             	sub    %rdi,%rax
140021d1c:	49 3b c7             	cmp    %r15,%rax
140021d1f:	0f 8c 97 03 00 00    	jl     0x1400220bc
140021d25:	0f ae e8             	lfence
140021d28:	4c 8b c7             	mov    %rdi,%r8
140021d2b:	41 8b d1             	mov    %r9d,%edx
140021d2e:	e8 c9 1c 00 00       	call   0x1400239fc
140021d33:	49 03 ff             	add    %r15,%rdi
140021d36:	88 9c 24 88 00 00 00 	mov    %bl,0x88(%rsp)
140021d3d:	41 bf 09 00 00 00    	mov    $0x9,%r15d
140021d43:	8a c3                	mov    %bl,%al
140021d45:	8b 8c 24 98 00 00 00 	mov    0x98(%rsp),%ecx
140021d4c:	48 8d 15 ad e2 fd ff 	lea    -0x21d53(%rip),%rdx        # 0x140000000
140021d53:	4c 8b 4c 24 30       	mov    0x30(%rsp),%r9
140021d58:	2b cb                	sub    %ebx,%ecx
140021d5a:	2b f3                	sub    %ebx,%esi
140021d5c:	44 8b 5c 24 24       	mov    0x24(%rsp),%r11d
140021d61:	89 8c 24 98 00 00 00 	mov    %ecx,0x98(%rsp)
140021d68:	0f 89 d4 fe ff ff    	jns    0x140021c42
140021d6e:	84 c0                	test   %al,%al
140021d70:	75 0f                	jne    0x140021d81
140021d72:	48 3b fd             	cmp    %rbp,%rdi
140021d75:	0f 84 41 03 00 00    	je     0x1400220bc
140021d7b:	c6 07 30             	movb   $0x30,(%rdi)
140021d7e:	48 03 fb             	add    %rbx,%rdi
140021d81:	8b b4 24 a0 00 00 00 	mov    0xa0(%rsp),%esi
140021d88:	85 f6                	test   %esi,%esi
140021d8a:	74 0f                	je     0x140021d9b
140021d8c:	48 3b fd             	cmp    %rbp,%rdi
140021d8f:	0f 84 27 03 00 00    	je     0x1400220bc
140021d95:	c6 07 2e             	movb   $0x2e,(%rdi)
140021d98:	48 03 fb             	add    %rbx,%rdi
140021d9b:	45 85 f6             	test   %r14d,%r14d
140021d9e:	0f 89 fa 02 00 00    	jns    0x14002209e
140021da4:	0f ae e8             	lfence
140021da7:	83 a4 24 88 00 00 00 	andl   $0x0,0x88(%rsp)
140021dae:	00
140021daf:	4c 8d 1d 4a e2 fd ff 	lea    -0x21db6(%rip),%r11        # 0x140000000
140021db6:	41 8b c6             	mov    %r14d,%eax
140021db9:	45 33 ff             	xor    %r15d,%r15d
140021dbc:	99                   	cltd
140021dbd:	83 e2 0f             	and    $0xf,%edx
140021dc0:	03 c2                	add    %edx,%eax
140021dc2:	c1 f8 04             	sar    $0x4,%eax
140021dc5:	f7 d8                	neg    %eax
140021dc7:	4c 63 d0             	movslq %eax,%r10
140021dca:	b8 39 8e e3 38       	mov    $0x38e38e39,%eax
140021dcf:	f7 e6                	mul    %esi
140021dd1:	49 8b ca             	mov    %r10,%rcx
140021dd4:	44 89 54 24 24       	mov    %r10d,0x24(%rsp)
140021dd9:	47 0f b6 84 1a d0 fa 	movzbl 0x24fad0(%r10,%r11,1),%r8d
140021de0:	24 00
140021de2:	8b c2                	mov    %edx,%eax
140021de4:	d1 e8                	shr    $1,%eax
140021de6:	89 44 24 28          	mov    %eax,0x28(%rsp)
140021dea:	48 89 4c 24 30       	mov    %rcx,0x30(%rsp)
140021def:	44 8d 48 01          	lea    0x1(%rax),%r9d
140021df3:	44 89 4c 24 20       	mov    %r9d,0x20(%rsp)
140021df8:	45 3b c8             	cmp    %r8d,%r9d
140021dfb:	77 2a                	ja     0x140021e27
140021dfd:	48 8b c5             	mov    %rbp,%rax
140021e00:	48 2b c7             	sub    %rdi,%rax
140021e03:	48 3b c6             	cmp    %rsi,%rax
140021e06:	0f 8c b0 02 00 00    	jl     0x1400220bc
140021e0c:	85 f6                	test   %esi,%esi
140021e0e:	74 0f                	je     0x140021e1f
140021e10:	4c 8b c6             	mov    %rsi,%r8
140021e13:	41 8d 57 30          	lea    0x30(%r15),%edx
140021e17:	48 8b cf             	mov    %rdi,%rcx
140021e1a:	e8 e3 3b 1e 00       	call   0x140205a02
140021e1f:	48 03 fe             	add    %rsi,%rdi
140021e22:	e9 0b 02 00 00       	jmp    0x140022032
140021e27:	45 85 c0             	test   %r8d,%r8d
140021e2a:	74 61                	je     0x140021e8d
140021e2c:	0f ae e8             	lfence
140021e2f:	47 0f b6 bc 1a d0 fa 	movzbl 0x24fad0(%r10,%r11,1),%r15d
140021e36:	24 00
140021e38:	48 8b c5             	mov    %rbp,%rax
140021e3b:	48 2b c7             	sub    %rdi,%rax
140021e3e:	43 8d 14 ff          	lea    (%r15,%r15,8),%edx
140021e42:	8b ca                	mov    %edx,%ecx
140021e44:	48 89 8c 24 98 00 00 	mov    %rcx,0x98(%rsp)
140021e4b:	00
140021e4c:	48 3b c1             	cmp    %rcx,%rax
140021e4f:	0f 8c 67 02 00 00    	jl     0x1400220bc
140021e55:	85 d2                	test   %edx,%edx
140021e57:	74 29                	je     0x140021e82
140021e59:	44 8b c1             	mov    %ecx,%r8d
140021e5c:	ba 30 00 00 00       	mov    $0x30,%edx
140021e61:	48 8b cf             	mov    %rdi,%rcx
140021e64:	e8 99 3b 1e 00       	call   0x140205a02
140021e69:	48 8b 8c 24 98 00 00 	mov    0x98(%rsp),%rcx
140021e70:	00
140021e71:	4c 8d 1d 88 e1 fd ff 	lea    -0x21e78(%rip),%r11        # 0x140000000
140021e78:	44 8b 4c 24 20       	mov    0x20(%rsp),%r9d
140021e7d:	44 8b 54 24 24       	mov    0x24(%rsp),%r10d
140021e82:	48 03 f9             	add    %rcx,%rdi
140021e85:	45 8a c7             	mov    %r15b,%r8b
140021e88:	48 8b 4c 24 30       	mov    0x30(%rsp),%rcx
140021e8d:	45 3b f9             	cmp    %r9d,%r15d
140021e90:	0f 83 9c 01 00 00    	jae    0x140022032
140021e96:	41 0f b7 8c 4b 40 fa 	movzwl 0x24fa40(%r11,%rcx,2),%ecx
140021e9d:	24 00
140021e9f:	49 63 c2             	movslq %r10d,%rax
140021ea2:	41 0f b7 94 43 42 fa 	movzwl 0x24fa42(%r11,%rax,2),%edx
140021ea9:	24 00
140021eab:	41 0f b6 c0          	movzbl %r8b,%eax
140021eaf:	2b c8                	sub    %eax,%ecx
140021eb1:	89 54 24 2c          	mov    %edx,0x2c(%rsp)
140021eb5:	41 03 cf             	add    %r15d,%ecx
140021eb8:	48 8b c5             	mov    %rbp,%rax
140021ebb:	48 2b c7             	sub    %rdi,%rax
140021ebe:	89 8c 24 98 00 00 00 	mov    %ecx,0x98(%rsp)
140021ec5:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140021eca:	3b ca                	cmp    %edx,%ecx
140021ecc:	0f 83 31 01 00 00    	jae    0x140022003
140021ed2:	0f ae e8             	lfence
140021ed5:	48 8d 0c 49          	lea    (%rcx,%rcx,2),%rcx
140021ed9:	41 b8 08 00 00 00    	mov    $0x8,%r8d
140021edf:	48 8d 14 cd f0 2e 22 	lea    0x222ef0(,%rcx,8),%rdx
140021ee6:	00
140021ee7:	45 2b c2             	sub    %r10d,%r8d
140021eea:	48 8b 4c 24 38       	mov    0x38(%rsp),%rcx
140021eef:	49 03 d3             	add    %r11,%rdx
140021ef2:	41 c1 e0 04          	shl    $0x4,%r8d
140021ef6:	45 2b c6             	sub    %r14d,%r8d
140021ef9:	48 c1 e1 08          	shl    $0x8,%rcx
140021efd:	e8 3e 02 00 00       	call   0x140022140
140021f02:	44 8b d0             	mov    %eax,%r10d
140021f05:	44 3b 7c 24 28       	cmp    0x28(%rsp),%r15d
140021f0a:	73 59                	jae    0x140021f65
140021f0c:	48 83 7c 24 30 09    	cmpq   $0x9,0x30(%rsp)
140021f12:	0f 8c a4 01 00 00    	jl     0x1400220bc
140021f18:	0f ae e8             	lfence
140021f1b:	48 8b d7             	mov    %rdi,%rdx
140021f1e:	8b c8                	mov    %eax,%ecx
140021f20:	e8 bb 1b 00 00       	call   0x140023ae0
140021f25:	8b 8c 24 98 00 00 00 	mov    0x98(%rsp),%ecx