140021a43:	48 83 ea 18          	sub    $0x18,%rdx
140021a47:	44 39 42 0c          	cmp    %r8d,0xc(%rdx)
140021a4b:	7d 2d                	jge    0x140021a7a
140021a4d:	45 85 c0             	test   %r8d,%r8d
140021a50:	7e 28                	jle    0x140021a7a
140021a52:	48 8b 0a             	mov    (%rdx),%rcx
140021a55:	41 b9 02 00 00 00    	mov    $0x2,%r9d
140021a5b:	48 8b 01             	mov    (%rcx),%rax
140021a5e:	48 8b 40 10          	mov    0x10(%rax),%rax
140021a62:	ff 15 20 dc 04 00    	call   *0x4dc20(%rip)        # 0x14006f688
140021a68:	48 85 c0             	test   %rax,%rax
140021a6b:	74 0d                	je     0x140021a7a
140021a6d:	48 83 c0 18          	add    $0x18,%rax
140021a71:	48 89 03             	mov    %rax,(%rbx)
140021a74:	48 83 c4 30          	add    $0x30,%rsp
140021a78:	5b                   	pop    %rbx
140021a79:	c3                   	ret
140021a7a:	e8 c5 02 00 00       	call   0x140021d44
140021a7f:	cc                   	int3
140021a80:	48 8b c4             	mov    %rsp,%rax
140021a83:	48 89 58 08          	mov    %rbx,0x8(%rax)
140021a87:	48 89 68 10          	mov    %rbp,0x10(%rax)
140021a8b:	48 89 70 18          	mov    %rsi,0x18(%rax)
140021a8f:	48 89 78 20          	mov    %rdi,0x20(%rax)
140021a93:	41 54                	push   %r12
140021a95:	41 56                	push   %r14
140021a97:	41 57                	push   %r15
140021a99:	48 83 ec 20          	sub    $0x20,%rsp
140021a9d:	45 33 e4             	xor    %r12d,%r12d
140021aa0:	49 63 f8             	movslq %r8d,%rdi
140021aa3:	4c 8b f2             	mov    %rdx,%r14
140021aa6:	48 8b f1             	mov    %rcx,%rsi
140021aa9:	45 85 c0             	test   %r8d,%r8d
140021aac:	75 24                	jne    0x140021ad2
140021aae:	e8 89 fb ff ff       	call   0x14002163c
140021ab3:	48 8b 5c 24 40       	mov    0x40(%rsp),%rbx
140021ab8:	48 8b 6c 24 48       	mov    0x48(%rsp),%rbp
140021abd:	48 8b 74 24 50       	mov    0x50(%rsp),%rsi
140021ac2:	48 8b 7c 24 58       	mov    0x58(%rsp),%rdi
140021ac7:	48 83 c4 20          	add    $0x20,%rsp
140021acb:	41 5f                	pop    %r15
140021acd:	41 5e                	pop    %r14
140021acf:	41 5c                	pop    %r12
140021ad1:	c3                   	ret
140021ad2:	4d 85 f6             	test   %r14,%r14
140021ad5:	0f 84 cd 00 00 00    	je     0x140021ba8
140021adb:	48 8b 01             	mov    (%rcx),%rax
140021ade:	49 8b ee             	mov    %r14,%rbp
140021ae1:	48 2b e8             	sub    %rax,%rbp
140021ae4:	48 d1 fd             	sar    $1,%rbp
140021ae7:	44 8b 78 f0          	mov    -0x10(%rax),%r15d
140021aeb:	45 85 c0             	test   %r8d,%r8d
140021aee:	0f 88 b4 00 00 00    	js     0x140021ba8
140021af4:	b9 01 00 00 00       	mov    $0x1,%ecx
140021af9:	2b 48 f8             	sub    -0x8(%rax),%ecx
140021afc:	8b 40 f4             	mov    -0xc(%rax),%eax
140021aff:	2b c7                	sub    %edi,%eax
140021b01:	0b c8                	or     %eax,%ecx
140021b03:	7d 0a                	jge    0x140021b0f
140021b05:	8b d7                	mov    %edi,%edx
140021b07:	48 8b ce             	mov    %rsi,%rcx
140021b0a:	e8 c1 fe ff ff       	call   0x1400219d0
140021b0f:	48 8b 0e             	mov    (%rsi),%rcx
140021b12:	48 8b df             	mov    %rdi,%rbx
140021b15:	48 03 db             	add    %rbx,%rbx
140021b18:	49 3b ef             	cmp    %r15,%rbp
140021b1b:	77 37                	ja     0x140021b54
140021b1d:	48 8d 14 69          	lea    (%rcx,%rbp,2),%rdx
140021b21:	48 85 db             	test   %rbx,%rbx
140021b24:	74 6a                	je     0x140021b90
140021b26:	48 85 c9             	test   %rcx,%rcx
140021b29:	75 0e                	jne    0x140021b39
140021b2b:	ff 15 07 d9 04 00    	call   *0x4d907(%rip)        # 0x14006f438
140021b31:	c7 00 16 00 00 00    	movl   $0x16,(%rax)
140021b37:	eb 51                	jmp    0x140021b8a
140021b39:	48 85 d2             	test   %rdx,%rdx
140021b3c:	74 ed                	je     0x140021b2b
140021b3e:	48 63 41 f4          	movslq -0xc(%rcx),%rax
140021b42:	48 03 c0             	add    %rax,%rax
140021b45:	48 3b c3             	cmp    %rbx,%rax
140021b48:	72 34                	jb     0x140021b7e
140021b4a:	4c 8b c3             	mov    %rbx,%r8
140021b4d:	e8 ca 87 04 00       	call   0x14006a31c
140021b52:	eb 3c                	jmp    0x140021b90
140021b54:	4c 63 41 f4          	movslq -0xc(%rcx),%r8
140021b58:	4d 03 c0             	add    %r8,%r8
140021b5b:	48 85 db             	test   %rbx,%rbx
140021b5e:	74 30                	je     0x140021b90
140021b60:	48 85 c9             	test   %rcx,%rcx
140021b63:	74 c6                	je     0x140021b2b
140021b65:	4c 3b c3             	cmp    %rbx,%r8
140021b68:	72 0d                	jb     0x140021b77
140021b6a:	4c 8b c3             	mov    %rbx,%r8
140021b6d:	49 8b d6             	mov    %r14,%rdx
140021b70:	e8 9b 87 04 00       	call   0x14006a310
140021b75:	eb 19                	jmp    0x140021b90
140021b77:	33 d2                	xor    %edx,%edx
140021b79:	e8 98 87 04 00       	call   0x14006a316
140021b7e:	ff 15 b4 d8 04 00    	call   *0x4d8b4(%rip)        # 0x14006f438
140021b84:	c7 00 22 00 00 00    	movl   $0x22,(%rax)
140021b8a:	ff 15 48 d9 04 00    	call   *0x4d948(%rip)        # 0x14006f4d8
140021b90:	48 8b 06             	mov    (%rsi),%rax
140021b93:	3b 78 f4             	cmp    -0xc(%rax),%edi
140021b96:	7f 10                	jg     0x140021ba8
140021b98:	89 78 f0             	mov    %edi,-0x10(%rax)
140021b9b:	48 8b 06             	mov    (%rsi),%rax
140021b9e:	66 44 89 24 03       	mov    %r12w,(%rbx,%rax,1)
140021ba3:	e9 0b ff ff ff       	jmp    0x140021ab3
140021ba8:	b9 57 00 07 80       	mov    $0x80070057,%ecx
140021bad:	e8 1e ca ff ff       	call   0x14001e5d0
140021bb2:	cc                   	int3
140021bb3:	90                   	nop
140021bb4:	48 83 ec 28          	sub    $0x28,%rsp
140021bb8:	33 c9                	xor    %ecx,%ecx
140021bba:	e8 31 01 00 00       	call   0x140021cf0
140021bbf:	48 83 c4 28          	add    $0x28,%rsp
140021bc3:	e9 5c 0d 00 00       	jmp    0x140022924
140021bc8:	cc                   	int3
140021bc9:	90                   	nop
140021bca:	90                   	nop
140021bcb:	90                   	nop
140021bcc:	48 8b c4             	mov    %rsp,%rax
140021bcf:	48 89 58 08          	mov    %rbx,0x8(%rax)
140021bd3:	48 89 70 10          	mov    %rsi,0x10(%rax)
140021bd7:	57                   	push   %rdi
140021bd8:	48 83 ec 40          	sub    $0x40,%rsp
140021bdc:	41 8a d8             	mov    %r8b,%bl
140021bdf:	40 8a fa             	mov    %dl,%dil
140021be2:	40 8a f1             	mov    %cl,%sil
140021be5:	c6 40 20 00          	movb   $0x0,0x20(%rax)
140021be9:	48 8d 50 20          	lea    0x20(%rax),%rdx
140021bed:	48 8d 0d 14 c9 05 00 	lea    0x5c914(%rip),%rcx        # 0x14007e508
140021bf4:	e8 17 4f 03 00       	call   0x140056b10
140021bf9:	85 c0                	test   %eax,%eax
140021bfb:	78 0e                	js     0x140021c0b
140021bfd:	80 7c 24 68 00       	cmpb   $0x0,0x68(%rsp)
140021c02:	74 07                	je     0x140021c0b
140021c04:	33 c0                	xor    %eax,%eax
140021c06:	e9 c8 00 00 00       	jmp    0x140021cd3
140021c0b:	48 8b 0d 8e 56 0a 00 	mov    0xa568e(%rip),%rcx        # 0x1400c72a0
140021c12:	48 85 c9             	test   %rcx,%rcx
140021c15:	0f 85 a2 00 00 00    	jne    0x140021cbd
140021c1b:	b9 d0 16 00 00       	mov    $0x16d0,%ecx
140021c20:	e8 b7 3c 03 00       	call   0x1400558dc
140021c25:	48 89 44 24 30       	mov    %rax,0x30(%rsp)
140021c2a:	48 85 c0             	test   %rax,%rax
140021c2d:	74 09                	je     0x140021c38
140021c2f:	48 8b c8             	mov    %rax,%rcx
140021c32:	e8 e5 45 03 00       	call   0x14005621c
140021c37:	90                   	nop
140021c38:	48 89 05 61 56 0a 00 	mov    %rax,0xa5661(%rip)        # 0x1400c72a0
140021c3f:	48 85 c0             	test   %rax,%rax
140021c42:	75 0a                	jne    0x140021c4e
140021c44:	b8 0e 00 07 80       	mov    $0x8007000e,%eax
140021c49:	e9 85 00 00 00       	jmp    0x140021cd3
140021c4e:	48 8d 15 b3 c8 05 00 	lea    0x5c8b3(%rip),%rdx        # 0x14007e508
140021c55:	48 8d 4c 24 30       	lea    0x30(%rsp),%rcx
140021c5a:	e8 e1 f5 ff ff       	call   0x140021240
140021c5f:	90                   	nop
140021c60:	c6 44 24 28 01       	movb   $0x1,0x28(%rsp)
140021c65:	48 8d 05 a4 6c 05 00 	lea    0x56ca4(%rip),%rax        # 0x140078910
140021c6c:	48 89 44 24 20       	mov    %rax,0x20(%rsp)
140021c71:	41 b9 4a 00 00 00    	mov    $0x4a,%r9d
140021c77:	4c 8d 05 72 64 09 00 	lea    0x96472(%rip),%r8        # 0x1400b80f0
140021c7e:	48 8d 54 24 30       	lea    0x30(%rsp),%rdx
140021c83:	48 8b 0d 16 56 0a 00 	mov    0xa5616(%rip),%rcx        # 0x1400c72a0
140021c8a:	e8 4d 48 03 00       	call   0x1400564dc
140021c8f:	90                   	nop
140021c90:	48 8b 54 24 30       	mov    0x30(%rsp),%rdx
140021c95:	48 83 c2 e8          	add    $0xffffffffffffffe8,%rdx
140021c99:	83 c8 ff             	or     $0xffffffff,%eax
140021c9c:	f0 0f c1 42 10       	lock xadd %eax,0x10(%rdx)
140021ca1:	83 e8 01             	sub    $0x1,%eax
140021ca4:	7f 10                	jg     0x140021cb6
140021ca6:	48 8b 0a             	mov    (%rdx),%rcx
140021ca9:	48 8b 01             	mov    (%rcx),%rax
140021cac:	48 8b 40 08          	mov    0x8(%rax),%rax
140021cb0:	ff 15 d2 d9 04 00    	call   *0x4d9d2(%rip)        # 0x14006f688
140021cb6:	48 8b 0d e3 55 0a 00 	mov    0xa55e3(%rip),%rcx        # 0x1400c72a0
140021cbd:	84 db                	test   %bl,%bl
140021cbf:	75 0d                	jne    0x140021cce
140021cc1:	44 8a c7             	mov    %dil,%r8b
140021cc4:	40 8a d6             	mov    %sil,%dl
140021cc7:	e8 a0 4f 03 00       	call   0x140056c6c
140021ccc:	eb 05                	jmp    0x140021cd3
140021cce:	e8 1d 4a 03 00       	call   0x1400566f0
140021cd3:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140021cd8:	48 8b 74 24 58       	mov    0x58(%rsp),%rsi
140021cdd:	48 83 c4 40          	add    $0x40,%rsp
140021ce1:	5f                   	pop    %rdi
140021ce2:	c3                   	ret
140021ce3:	90                   	nop
140021ce4:	90                   	nop
140021ce5:	90                   	nop
140021ce6:	90                   	nop
140021ce7:	90                   	nop
140021ce8:	90                   	nop
140021ce9:	90                   	nop
140021cea:	90                   	nop
140021ceb:	90                   	nop
140021cec:	90                   	nop
140021ced:	90                   	nop
140021cee:	90                   	nop
140021cef:	90                   	nop
140021cf0:	40 53                	rex push %rbx
140021cf2:	48 83 ec 20          	sub    $0x20,%rsp
140021cf6:	8a d1                	mov    %cl,%dl
140021cf8:	48 8b 0d a1 55 0a 00 	mov    0xa55a1(%rip),%rcx        # 0x1400c72a0
140021cff:	48 85 c9             	test   %rcx,%rcx
140021d02:	74 35                	je     0x140021d39
140021d04:	e8 eb 53 03 00       	call   0x1400570f4
140021d09:	48 8b 1d 90 55 0a 00 	mov    0xa5590(%rip),%rbx        # 0x1400c72a0
140021d10:	48 85 db             	test   %rbx,%rbx
140021d13:	74 1c                	je     0x140021d31
140021d15:	48 8d 8b b0 16 00 00 	lea    0x16b0(%rbx),%rcx
140021d1c:	e8 cb f5 ff ff       	call   0x1400212ec
140021d21:	48 8b cb             	mov    %rbx,%rcx
140021d24:	e8 73 5a 03 00       	call   0x14005779c
140021d29:	48 8b cb             	mov    %rbx,%rcx
140021d2c:	e8 af 3b 03 00       	call   0x1400558e0
140021d31:	48 83 25 67 55 0a 00 	andq   $0x0,0xa5567(%rip)        # 0x1400c72a0
140021d38:	00
140021d39:	33 c0                	xor    %eax,%eax
140021d3b:	48 83 c4 20          	add    $0x20,%rsp
140021d3f:	5b                   	pop    %rbx
140021d40:	c3                   	ret
140021d41:	90                   	nop
140021d42:	90                   	nop
140021d43:	90                   	nop
140021d44:	48 83 ec 28          	sub    $0x28,%rsp
140021d48:	b9 0e 00 07 80       	mov    $0x8007000e,%ecx
140021d4d:	e8 7e c8 ff ff       	call   0x14001e5d0
140021d52:	cc                   	int3
140021d53:	90                   	nop
140021d54:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140021d59:	48 89 6c 24 10       	mov    %rbp,0x10(%rsp)
140021d5e:	48 89 74 24 18       	mov    %rsi,0x18(%rsp)
140021d63:	57                   	push   %rdi
140021d64:	48 83 ec 20          	sub    $0x20,%rsp
140021d68:	41 8b f8             	mov    %r8d,%edi
140021d6b:	48 8b f2             	mov    %rdx,%rsi
140021d6e:	48 8b e9             	mov    %rcx,%rbp
140021d71:	ff 15 29 d3 04 00    	call   *0x4d329(%rip)        # 0x14006f0a0
140021d77:	48 85 c0             	test   %rax,%rax
140021d7a:	74 4f                	je     0x140021dcb
140021d7c:	48 8b c8             	mov    %rax,%rcx
140021d7f:	ff 15 7b d3 04 00    	call   *0x4d37b(%rip)        # 0x14006f100
140021d85:	48 8b d8             	mov    %rax,%rbx
140021d88:	48 85 c0             	test   %rax,%rax
140021d8b:	74 3e                	je     0x140021dcb
140021d8d:	48 8b d6             	mov    %rsi,%rdx
140021d90:	48 8b cd             	mov    %rbp,%rcx
140021d93:	ff 15 0f d3 04 00    	call   *0x4d30f(%rip)        # 0x14006f0a8
140021d99:	8b c8                	mov    %eax,%ecx
140021d9b:	48 03 cb             	add    %rbx,%rcx
140021d9e:	83 e7 0f             	and    $0xf,%edi
140021da1:	76 15                	jbe    0x140021db8
140021da3:	48 3b d9             	cmp    %rcx,%rbx
140021da6:	73 23                	jae    0x140021dcb
140021da8:	0f b7 03             	movzwl (%rbx),%eax
140021dab:	48 8d 1c 43          	lea    (%rbx,%rax,2),%rbx
140021daf:	48 83 c3 02          	add    $0x2,%rbx
140021db3:	83 c7 ff             	add    $0xffffffff,%edi
140021db6:	75 eb                	jne    0x140021da3
140021db8:	48 3b d9             	cmp    %rcx,%rbx
140021dbb:	73 0e                	jae    0x140021dcb
140021dbd:	0f b7 03             	movzwl (%rbx),%eax
140021dc0:	66 f7 d8             	neg    %ax
140021dc3:	48 1b c0             	sbb    %rax,%rax
140021dc6:	48 23 c3             	and    %rbx,%rax
140021dc9:	eb 02                	jmp    0x140021dcd
140021dcb:	33 c0                	xor    %eax,%eax
140021dcd:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140021dd2:	48 8b 6c 24 38       	mov    0x38(%rsp),%rbp
140021dd7:	48 8b 74 24 40       	mov    0x40(%rsp),%rsi
140021ddc:	48 83 c4 20          	add    $0x20,%rsp
140021de0:	5f                   	pop    %rdi
140021de1:	c3                   	ret
140021de2:	90                   	nop
140021de3:	90                   	nop
140021de4:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021deb:	00
140021dec:	48 8d 05 8d 4b 0a 00 	lea    0xa4b8d(%rip),%rax        # 0x1400c6980
140021df3:	48 89 01             	mov    %rax,(%rcx)
140021df6:	45 33 c0             	xor    %r8d,%r8d
140021df9:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021dfd:	48 8d 05 9c 4b 0a 00 	lea    0xa4b9c(%rip),%rax        # 0x1400c69a0
140021e04:	41 8d 50 20          	lea    0x20(%r8),%edx
140021e08:	48 03 ca             	add    %rdx,%rcx
140021e0b:	48 89 01             	mov    %rax,(%rcx)
140021e0e:	48 8d 05 ab 4b 0a 00 	lea    0xa4bab(%rip),%rax        # 0x1400c69c0
140021e15:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021e19:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021e20:	00
140021e21:	48 03 ca             	add    %rdx,%rcx
140021e24:	48 89 01             	mov    %rax,(%rcx)
140021e27:	48 8d 05 b2 4b 0a 00 	lea    0xa4bb2(%rip),%rax        # 0x1400c69e0
140021e2e:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021e32:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021e39:	00
140021e3a:	48 03 ca             	add    %rdx,%rcx
140021e3d:	48 89 01             	mov    %rax,(%rcx)
140021e40:	48 8d 05 b9 4b 0a 00 	lea    0xa4bb9(%rip),%rax        # 0x1400c6a00
140021e47:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021e4b:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021e52:	00
140021e53:	48 03 ca             	add    %rdx,%rcx
140021e56:	48 89 01             	mov    %rax,(%rcx)
140021e59:	48 8d 05 c0 4b 0a 00 	lea    0xa4bc0(%rip),%rax        # 0x1400c6a20
140021e60:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021e64:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021e6b:	00
140021e6c:	48 03 ca             	add    %rdx,%rcx
140021e6f:	48 89 01             	mov    %rax,(%rcx)
140021e72:	48 8d 05 c7 4b 0a 00 	lea    0xa4bc7(%rip),%rax        # 0x1400c6a40
140021e79:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021e7d:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021e84:	00
140021e85:	48 03 ca             	add    %rdx,%rcx
140021e88:	48 89 01             	mov    %rax,(%rcx)
140021e8b:	48 8d 05 ce 4b 0a 00 	lea    0xa4bce(%rip),%rax        # 0x1400c6a60
140021e92:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021e96:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021e9d:	00
140021e9e:	48 03 ca             	add    %rdx,%rcx
140021ea1:	48 89 01             	mov    %rax,(%rcx)
140021ea4:	48 8d 05 d5 4b 0a 00 	lea    0xa4bd5(%rip),%rax        # 0x1400c6a80
140021eab:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021eaf:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021eb6:	00
140021eb7:	48 03 ca             	add    %rdx,%rcx
140021eba:	48 89 01             	mov    %rax,(%rcx)
140021ebd:	48 8d 05 dc 4b 0a 00 	lea    0xa4bdc(%rip),%rax        # 0x1400c6aa0
140021ec4:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021ec8:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021ecf:	00
140021ed0:	48 03 ca             	add    %rdx,%rcx
140021ed3:	48 89 01             	mov    %rax,(%rcx)
140021ed6:	48 8d 05 e3 4b 0a 00 	lea    0xa4be3(%rip),%rax        # 0x1400c6ac0
140021edd:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021ee1:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021ee8:	00
140021ee9:	48 03 ca             	add    %rdx,%rcx
140021eec:	48 89 01             	mov    %rax,(%rcx)
140021eef:	48 8d 05 ea 4b 0a 00 	lea    0xa4bea(%rip),%rax        # 0x1400c6ae0
140021ef6:	4c 89 41 10          	mov    %r8,0x10(%rcx)
140021efa:	48 c7 41 18 01 4a 00 	movq   $0x4a01,0x18(%rcx)
140021f01:	00
140021f02:	48 03 ca             	add    %rdx,%rcx
140021f05:	48 89 01             	mov    %rax,(%rcx)