140021ae7:	4c 89 c7             	mov    %r8,%rdi
140021aea:	48 89 ce             	mov    %rcx,%rsi
140021aed:	e8 7e fb ff ff       	call   0x140021670
140021af2:	48 8b 05 07 79 21 00 	mov    0x217907(%rip),%rax        # 0x140239400
140021af9:	48 8d 4e 24          	lea    0x24(%rsi),%rcx
140021afd:	48 89 fa             	mov    %rdi,%rdx
140021b00:	48 8b 00             	mov    (%rax),%rax
140021b03:	48 8b 98 90 01 00 00 	mov    0x190(%rax),%rbx
140021b0a:	4c 8b 43 10          	mov    0x10(%rbx),%r8
140021b0e:	e8 dd 82 1c 00       	call   0x1401e9df0
140021b13:	48 8b 53 10          	mov    0x10(%rbx),%rdx
140021b17:	48 89 c1             	mov    %rax,%rcx
140021b1a:	48 83 fa 1f          	cmp    $0x1f,%rdx
140021b1e:	76 30                	jbe    0x140021b50
140021b20:	48 2b 1d 79 75 21 00 	sub    0x217579(%rip),%rbx        # 0x1402390a0
140021b27:	c7 46 48 01 00 00 00 	movl   $0x1,0x48(%rsi)
140021b2e:	48 b8 39 8e e3 38 8e 	movabs $0x8e38e38e38e38e39,%rax
140021b35:	e3 38 8e
140021b38:	48 c1 fb 04          	sar    $0x4,%rbx
140021b3c:	48 0f af d8          	imul   %rax,%rbx
140021b40:	89 5e 44             	mov    %ebx,0x44(%rsi)
140021b43:	48 83 c4 20          	add    $0x20,%rsp
140021b47:	5b                   	pop    %rbx
140021b48:	5e                   	pop    %rsi
140021b49:	5f                   	pop    %rdi
140021b4a:	c3                   	ret
140021b4b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140021b50:	b8 20 00 00 00       	mov    $0x20,%eax
140021b55:	48 01 d1             	add    %rdx,%rcx
140021b58:	45 31 c0             	xor    %r8d,%r8d
140021b5b:	48 29 d0             	sub    %rdx,%rax
140021b5e:	83 f8 08             	cmp    $0x8,%eax
140021b61:	72 3d                	jb     0x140021ba0
140021b63:	89 c2                	mov    %eax,%edx
140021b65:	48 c7 01 00 00 00 00 	movq   $0x0,(%rcx)
140021b6c:	48 c7 44 11 f8 00 00 	movq   $0x0,-0x8(%rcx,%rdx,1)
140021b73:	00 00
140021b75:	48 8d 51 08          	lea    0x8(%rcx),%rdx
140021b79:	48 83 e2 f8          	and    $0xfffffffffffffff8,%rdx
140021b7d:	48 29 d1             	sub    %rdx,%rcx
140021b80:	01 c8                	add    %ecx,%eax
140021b82:	83 e0 f8             	and    $0xfffffff8,%eax
140021b85:	83 f8 08             	cmp    $0x8,%eax
140021b88:	72 96                	jb     0x140021b20
140021b8a:	83 e0 f8             	and    $0xfffffff8,%eax
140021b8d:	31 c9                	xor    %ecx,%ecx
140021b8f:	41 89 c9             	mov    %ecx,%r9d
140021b92:	83 c1 08             	add    $0x8,%ecx
140021b95:	4e 89 04 0a          	mov    %r8,(%rdx,%r9,1)
140021b99:	39 c1                	cmp    %eax,%ecx
140021b9b:	72 f2                	jb     0x140021b8f
140021b9d:	eb 81                	jmp    0x140021b20
140021b9f:	90                   	nop
140021ba0:	a8 04                	test   $0x4,%al
140021ba2:	75 24                	jne    0x140021bc8
140021ba4:	85 c0                	test   %eax,%eax
140021ba6:	0f 84 74 ff ff ff    	je     0x140021b20
140021bac:	c6 01 00             	movb   $0x0,(%rcx)
140021baf:	a8 02                	test   $0x2,%al
140021bb1:	0f 84 69 ff ff ff    	je     0x140021b20
140021bb7:	89 c0                	mov    %eax,%eax
140021bb9:	31 d2                	xor    %edx,%edx
140021bbb:	66 89 54 01 fe       	mov    %dx,-0x2(%rcx,%rax,1)
140021bc0:	e9 5b ff ff ff       	jmp    0x140021b20
140021bc5:	0f 1f 00             	nopl   (%rax)
140021bc8:	89 c0                	mov    %eax,%eax
140021bca:	c7 01 00 00 00 00    	movl   $0x0,(%rcx)
140021bd0:	c7 44 01 fc 00 00 00 	movl   $0x0,-0x4(%rcx,%rax,1)
140021bd7:	00
140021bd8:	e9 43 ff ff ff       	jmp    0x140021b20
140021bdd:	0f 1f 00             	nopl   (%rax)
140021be0:	55                   	push   %rbp
140021be1:	57                   	push   %rdi
140021be2:	56                   	push   %rsi
140021be3:	53                   	push   %rbx
140021be4:	48 83 ec 28          	sub    $0x28,%rsp
140021be8:	48 63 ea             	movslq %edx,%rbp
140021beb:	48 89 cf             	mov    %rcx,%rdi
140021bee:	48 83 fd fb          	cmp    $0xfffffffffffffffb,%rbp
140021bf2:	77 30                	ja     0x140021c24
140021bf4:	74 42                	je     0x140021c38
140021bf6:	48 8d 55 05          	lea    0x5(%rbp),%rdx
140021bfa:	b9 01 00 00 00       	mov    $0x1,%ecx
140021bff:	e8 9c 90 0a 00       	call   0x1400caca0
140021c04:	49 89 e8             	mov    %rbp,%r8
140021c07:	48 89 fa             	mov    %rdi,%rdx
140021c0a:	48 89 c3             	mov    %rax,%rbx
140021c0d:	48 8d 48 04          	lea    0x4(%rax),%rcx
140021c11:	e8 da 81 1c 00       	call   0x1401e9df0
140021c16:	48 89 d8             	mov    %rbx,%rax
140021c19:	89 2b                	mov    %ebp,(%rbx)
140021c1b:	48 83 c4 28          	add    $0x28,%rsp
140021c1f:	5b                   	pop    %rbx
140021c20:	5e                   	pop    %rsi
140021c21:	5f                   	pop    %rdi
140021c22:	5d                   	pop    %rbp
140021c23:	c3                   	ret
140021c24:	49 89 e8             	mov    %rbp,%r8
140021c27:	ba 04 00 00 00       	mov    $0x4,%edx
140021c2c:	48 8d 0d 25 8b 1d 00 	lea    0x1d8b25(%rip),%rcx        # 0x1401fa758
140021c33:	e8 58 17 0a 00       	call   0x1400c3390
140021c38:	41 b8 01 00 00 00    	mov    $0x1,%r8d
140021c3e:	48 83 ca ff          	or     $0xffffffffffffffff,%rdx
140021c42:	48 8d 0d 0f 8b 1d 00 	lea    0x1d8b0f(%rip),%rcx        # 0x1401fa758
140021c49:	e8 42 17 0a 00       	call   0x1400c3390
140021c4e:	90                   	nop
140021c4f:	90                   	nop
140021c50:	57                   	push   %rdi
140021c51:	56                   	push   %rsi
140021c52:	53                   	push   %rbx
140021c53:	48 83 ec 20          	sub    $0x20,%rsp
140021c57:	48 8b 05 a2 74 21 00 	mov    0x2174a2(%rip),%rax        # 0x140239100
140021c5e:	4c 89 c6             	mov    %r8,%rsi
140021c61:	44 89 cf             	mov    %r9d,%edi
140021c64:	44 8b 08             	mov    (%rax),%r9d
140021c67:	48 89 cb             	mov    %rcx,%rbx
140021c6a:	41 89 f8             	mov    %edi,%r8d
140021c6d:	48 89 d1             	mov    %rdx,%rcx
140021c70:	48 89 f2             	mov    %rsi,%rdx
140021c73:	e8 28 16 01 00       	call   0x1400332a0
140021c78:	48 85 c0             	test   %rax,%rax
140021c7b:	75 5b                	jne    0x140021cd8
140021c7d:	48 63 4b 04          	movslq 0x4(%rbx),%rcx
140021c81:	8b 43 30             	mov    0x30(%rbx),%eax
140021c84:	39 c1                	cmp    %eax,%ecx
140021c86:	7c 58                	jl     0x140021ce0
140021c88:	8d 54 40 30          	lea    0x30(%rax,%rax,2),%edx
140021c8c:	89 d0                	mov    %edx,%eax
140021c8e:	c1 e8 1f             	shr    $0x1f,%eax
140021c91:	01 d0                	add    %edx,%eax
140021c93:	8d 51 01             	lea    0x1(%rcx),%edx
140021c96:	d1 f8                	sar    $1,%eax
140021c98:	39 c1                	cmp    %eax,%ecx
140021c9a:	0f 4c d0             	cmovl  %eax,%edx
140021c9d:	89 53 30             	mov    %edx,0x30(%rbx)
140021ca0:	48 63 d2             	movslq %edx,%rdx
140021ca3:	48 89 d0             	mov    %rdx,%rax
140021ca6:	48 c1 e8 3d          	shr    $0x3d,%rax
140021caa:	75 3a                	jne    0x140021ce6
140021cac:	48 8b 4b 10          	mov    0x10(%rbx),%rcx
140021cb0:	48 c1 e2 03          	shl    $0x3,%rdx
140021cb4:	e8 87 8f 0a 00       	call   0x1400cac40
140021cb9:	48 63 4b 04          	movslq 0x4(%rbx),%rcx
140021cbd:	48 89 43 10          	mov    %rax,0x10(%rbx)
140021cc1:	8d 51 01             	lea    0x1(%rcx),%edx
140021cc4:	89 53 04             	mov    %edx,0x4(%rbx)
140021cc7:	48 8d 1c c8          	lea    (%rax,%rcx,8),%rbx
140021ccb:	89 fa                	mov    %edi,%edx
140021ccd:	48 89 f1             	mov    %rsi,%rcx
140021cd0:	e8 0b ff ff ff       	call   0x140021be0
140021cd5:	48 89 03             	mov    %rax,(%rbx)
140021cd8:	48 83 c4 20          	add    $0x20,%rsp
140021cdc:	5b                   	pop    %rbx
140021cdd:	5e                   	pop    %rsi
140021cde:	5f                   	pop    %rdi
140021cdf:	c3                   	ret
140021ce0:	48 8b 43 10          	mov    0x10(%rbx),%rax
140021ce4:	eb db                	jmp    0x140021cc1
140021ce6:	49 89 d0             	mov    %rdx,%r8
140021ce9:	48 8d 0d 88 8a 1d 00 	lea    0x1d8a88(%rip),%rcx        # 0x1401fa778
140021cf0:	ba 08 00 00 00       	mov    $0x8,%edx
140021cf5:	e8 96 16 0a 00       	call   0x1400c3390
140021cfa:	90                   	nop
140021cfb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140021d00:	41 57                	push   %r15
140021d02:	41 56                	push   %r14
140021d04:	41 55                	push   %r13
140021d06:	41 54                	push   %r12
140021d08:	55                   	push   %rbp
140021d09:	57                   	push   %rdi
140021d0a:	56                   	push   %rsi
140021d0b:	53                   	push   %rbx
140021d0c:	48 81 ec b8 00 00 00 	sub    $0xb8,%rsp
140021d13:	4c 8b 2d d6 6d 21 00 	mov    0x216dd6(%rip),%r13        # 0x140238af0
140021d1a:	49 8b 45 00          	mov    0x0(%r13),%rax
140021d1e:	48 89 84 24 a8 00 00 	mov    %rax,0xa8(%rsp)
140021d25:	00
140021d26:	31 c0                	xor    %eax,%eax
140021d28:	49 89 d4             	mov    %rdx,%r12
140021d2b:	48 8b 52 28          	mov    0x28(%rdx),%rdx
140021d2f:	49 89 cf             	mov    %rcx,%r15
140021d32:	48 8d 5c 24 28       	lea    0x28(%rsp),%rbx
140021d37:	b9 0e 00 00 00       	mov    $0xe,%ecx
140021d3c:	49 8b 6c 24 30       	mov    0x30(%r12),%rbp
140021d41:	48 89 54 24 28       	mov    %rdx,0x28(%rsp)
140021d46:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140021d4b:	48 89 d7             	mov    %rdx,%rdi
140021d4e:	f3 48 ab             	rep stos %rax,%es:(%rdi)
140021d51:	48 89 d9             	mov    %rbx,%rcx
140021d54:	e8 a7 3c 0a 00       	call   0x1400c5a00
140021d59:	48 89 c6             	mov    %rax,%rsi
140021d5c:	48 3b 6c 24 28       	cmp    0x28(%rsp),%rbp
140021d61:	0f 82 99 01 00 00    	jb     0x140021f00
140021d67:	80 4c 24 74 04       	orb    $0x4,0x74(%rsp)
140021d6c:	89 44 24 64          	mov    %eax,0x64(%rsp)
140021d70:	89 44 24 70          	mov    %eax,0x70(%rsp)
140021d74:	85 c0                	test   %eax,%eax
140021d76:	0f 85 b4 01 00 00    	jne    0x140021f30
140021d7c:	48 89 d9             	mov    %rbx,%rcx
140021d7f:	e8 7c 3c 0a 00       	call   0x1400c5a00
140021d84:	66 48 0f 6e c0       	movq   %rax,%xmm0
140021d89:	66 0f 70 c8 e0       	pshufd $0xe0,%xmm0,%xmm1
140021d8e:	66 0f d6 4c 24 68    	movq   %xmm1,0x68(%rsp)
140021d94:	48 3b 6c 24 28       	cmp    0x28(%rsp),%rbp
140021d99:	0f 82 61 01 00 00    	jb     0x140021f00
140021d9f:	66 0f 7e c1          	movd   %xmm0,%ecx
140021da3:	48 c1 e1 03          	shl    $0x3,%rcx
140021da7:	e8 74 8c 0a 00       	call   0x1400caa20
140021dac:	48 8b 7c 24 28       	mov    0x28(%rsp),%rdi
140021db1:	49 89 e8             	mov    %rbp,%r8
140021db4:	31 d2                	xor    %edx,%edx
140021db6:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140021dbb:	49 29 f8             	sub    %rdi,%r8
140021dbe:	48 89 f9             	mov    %rdi,%rcx
140021dc1:	e8 1a 80 1c 00       	call   0x1401e9de0
140021dc6:	48 89 c3             	mov    %rax,%rbx
140021dc9:	48 85 c0             	test   %rax,%rax
140021dcc:	0f 84 2e 01 00 00    	je     0x140021f00
140021dd2:	48 39 c5             	cmp    %rax,%rbp
140021dd5:	0f 84 25 01 00 00    	je     0x140021f00
140021ddb:	48 89 c1             	mov    %rax,%rcx
140021dde:	48 29 f9             	sub    %rdi,%rcx
140021de1:	48 83 c1 71          	add    $0x71,%rcx
140021de5:	e8 36 8c 0a 00       	call   0x1400caa20
140021dea:	f3 0f 6f 54 24 30    	movdqu 0x30(%rsp),%xmm2
140021df0:	f3 0f 6f 5c 24 40    	movdqu 0x40(%rsp),%xmm3
140021df6:	49 89 d8             	mov    %rbx,%r8
140021df9:	f3 0f 6f 64 24 50    	movdqu 0x50(%rsp),%xmm4
140021dff:	49 89 07             	mov    %rax,(%r15)
140021e02:	48 8d 48 6c          	lea    0x6c(%rax),%rcx
140021e06:	49 89 c6             	mov    %rax,%r14
140021e09:	48 8b 54 24 28       	mov    0x28(%rsp),%rdx
140021e0e:	f3 0f 6f 6c 24 60    	movdqu 0x60(%rsp),%xmm5
140021e14:	0f 11 10             	movups %xmm2,(%rax)
140021e17:	48 83 c3 01          	add    $0x1,%rbx
140021e1b:	f3 0f 6f 54 24 70    	movdqu 0x70(%rsp),%xmm2
140021e21:	0f 11 58 10          	movups %xmm3,0x10(%rax)
140021e25:	f3 0f 6f 9c 24 80 00 	movdqu 0x80(%rsp),%xmm3
140021e2c:	00 00
140021e2e:	0f 11 60 20          	movups %xmm4,0x20(%rax)
140021e32:	49 29 d0             	sub    %rdx,%r8
140021e35:	f3 0f 6f a4 24 90 00 	movdqu 0x90(%rsp),%xmm4
140021e3c:	00 00
140021e3e:	0f 11 68 30          	movups %xmm5,0x30(%rax)
140021e42:	49 83 c0 01          	add    $0x1,%r8
140021e46:	0f 11 50 40          	movups %xmm2,0x40(%rax)
140021e4a:	0f 11 58 50          	movups %xmm3,0x50(%rax)
140021e4e:	0f 11 60 60          	movups %xmm4,0x60(%rax)
140021e52:	e8 99 7f 1c 00       	call   0x1401e9df0
140021e57:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140021e5c:	85 f6                	test   %esi,%esi
140021e5e:	74 59                	je     0x140021eb9
140021e60:	31 ff                	xor    %edi,%edi
140021e62:	66 66 2e 0f 1f 84 00 	data16 cs nopw 0x0(%rax,%rax,1)
140021e69:	00 00 00 00
140021e6d:	0f 1f 00             	nopl   (%rax)
140021e70:	49 89 e8             	mov    %rbp,%r8
140021e73:	31 d2                	xor    %edx,%edx
140021e75:	48 89 d9             	mov    %rbx,%rcx
140021e78:	49 29 d8             	sub    %rbx,%r8
140021e7b:	e8 60 7f 1c 00       	call   0x1401e9de0
140021e80:	48 89 c6             	mov    %rax,%rsi
140021e83:	48 85 c0             	test   %rax,%rax
140021e86:	74 78                	je     0x140021f00
140021e88:	48 39 c5             	cmp    %rax,%rbp
140021e8b:	74 73                	je     0x140021f00
140021e8d:	49 8b 46 08          	mov    0x8(%r14),%rax
140021e91:	48 89 f2             	mov    %rsi,%rdx
140021e94:	48 89 d9             	mov    %rbx,%rcx
140021e97:	48 29 da             	sub    %rbx,%rdx
140021e9a:	48 8d 5e 01          	lea    0x1(%rsi),%rbx
140021e9e:	4c 8d 3c f8          	lea    (%rax,%rdi,8),%r15
140021ea2:	48 83 c7 01          	add    $0x1,%rdi
140021ea6:	e8 a5 8c 0a 00       	call   0x1400cab50
140021eab:	49 89 07             	mov    %rax,(%r15)
140021eae:	48 89 5c 24 28       	mov    %rbx,0x28(%rsp)
140021eb3:	41 3b 7e 40          	cmp    0x40(%r14),%edi
140021eb7:	72 b7                	jb     0x140021e70
140021eb9:	49 63 04 24          	movslq (%r12),%rax
140021ebd:	49 8b 54 24 08       	mov    0x8(%r12),%rdx
140021ec2:	8d 48 01             	lea    0x1(%rax),%ecx
140021ec5:	41 89 0c 24          	mov    %ecx,(%r12)
140021ec9:	4c 89 34 c2          	mov    %r14,(%rdx,%rax,8)
140021ecd:	41 8b 46 38          	mov    0x38(%r14),%eax
140021ed1:	49 89 5c 24 28       	mov    %rbx,0x28(%r12)
140021ed6:	31 db                	xor    %ebx,%ebx
140021ed8:	85 c0                	test   %eax,%eax
140021eda:	74 1e                	je     0x140021efa
140021edc:	49 8b 06             	mov    (%r14),%rax
140021edf:	4c 89 e2             	mov    %r12,%rdx
140021ee2:	48 8d 0c d8          	lea    (%rax,%rbx,8),%rcx
140021ee6:	e8 15 fe ff ff       	call   0x140021d00
140021eeb:	83 f8 ff             	cmp    $0xffffffff,%eax
140021eee:	74 10                	je     0x140021f00
140021ef0:	48 83 c3 01          	add    $0x1,%rbx
140021ef4:	41 3b 5e 38          	cmp    0x38(%r14),%ebx
140021ef8:	72 e2                	jb     0x140021edc
140021efa:	31 c0                	xor    %eax,%eax
140021efc:	eb 07                	jmp    0x140021f05
140021efe:	66 90                	xchg   %ax,%ax
140021f00:	b8 ff ff ff ff       	mov    $0xffffffff,%eax
140021f05:	48 8b 94 24 a8 00 00 	mov    0xa8(%rsp),%rdx
140021f0c:	00
140021f0d:	49 2b 55 00          	sub    0x0(%r13),%rdx
140021f11:	75 32                	jne    0x140021f45
140021f13:	48 81 c4 b8 00 00 00 	add    $0xb8,%rsp
140021f1a:	5b                   	pop    %rbx
140021f1b:	5e                   	pop    %rsi
140021f1c:	5f                   	pop    %rdi
140021f1d:	5d                   	pop    %rbp
140021f1e:	41 5c                	pop    %r12
140021f20:	41 5d                	pop    %r13
140021f22:	41 5e                	pop    %r14
140021f24:	41 5f                	pop    %r15
140021f26:	c3                   	ret
140021f27:	66 0f 1f 84 00 00 00 	nopw   0x0(%rax,%rax,1)
140021f2e:	00 00
140021f30:	89 c1                	mov    %eax,%ecx
140021f32:	48 c1 e1 03          	shl    $0x3,%rcx
140021f36:	e8 e5 8a 0a 00       	call   0x1400caa20
140021f3b:	48 89 44 24 38       	mov    %rax,0x38(%rsp)
140021f40:	e9 37 fe ff ff       	jmp    0x140021d7c
140021f45:	e8 26 29 1c 00       	call   0x1401e4870
140021f4a:	90                   	nop
140021f4b:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140021f50:	41 57                	push   %r15
140021f52:	41 56                	push   %r14
140021f54:	41 55                	push   %r13
140021f56:	41 54                	push   %r12
140021f58:	55                   	push   %rbp
140021f59:	57                   	push   %rdi
140021f5a:	56                   	push   %rsi
140021f5b:	53                   	push   %rbx
140021f5c:	48 83 ec 28          	sub    $0x28,%rsp
140021f60:	48 89 4c 24 70       	mov    %rcx,0x70(%rsp)
140021f65:	49 89 d4             	mov    %rdx,%r12
140021f68:	4d 89 c5             	mov    %r8,%r13
140021f6b:	48 85 d2             	test   %rdx,%rdx
140021f6e:	0f 84 6c 01 00 00    	je     0x1400220e0
140021f74:	31 ed                	xor    %ebp,%ebp
140021f76:	45 85 c9             	test   %r9d,%r9d
140021f79:	0f 85 21 01 00 00    	jne    0x1400220a0
140021f7f:	45 8b 74 24 38       	mov    0x38(%r12),%r14d
140021f84:	31 f6                	xor    %esi,%esi
140021f86:	66 2e 0f 1f 84 00 00 	cs nopw 0x0(%rax,%rax,1)
140021f8d:	00 00 00
140021f90:	44 39 f6             	cmp    %r14d,%esi
140021f93:	7d 47                	jge    0x140021fdc
140021f95:	44 89 f3             	mov    %r14d,%ebx
140021f98:	49 8b 04 24          	mov    (%r12),%rax