14022bd50:	44 8b ca             	mov    %edx,%r9d
14022bd53:	85 d2                	test   %edx,%edx
14022bd55:	78 23                	js     0x14022bd7a
14022bd57:	8b c2                	mov    %edx,%eax
14022bd59:	c1 e8 06             	shr    $0x6,%eax
14022bd5c:	39 41 08             	cmp    %eax,0x8(%rcx)
14022bd5f:	7e 19                	jle    0x14022bd7a
14022bd61:	44 8b c0             	mov    %eax,%r8d
14022bd64:	41 83 e1 3f          	and    $0x3f,%r9d
14022bd68:	48 8b 01             	mov    (%rcx),%rax
14022bd6b:	41 0f b6 c9          	movzbl %r9b,%ecx
14022bd6f:	4a 8b 04 c0          	mov    (%rax,%r8,8),%rax
14022bd73:	48 d3 e8             	shr    %cl,%rax
14022bd76:	83 e0 01             	and    $0x1,%eax
14022bd79:	c3                   	ret
14022bd7a:	33 c0                	xor    %eax,%eax
14022bd7c:	c3                   	ret
14022bd7d:	cc                   	int3
14022bd7e:	cc                   	int3
14022bd7f:	cc                   	int3
14022bd80:	33 c0                	xor    %eax,%eax
14022bd82:	39 41 10             	cmp    %eax,0x10(%rcx)
14022bd85:	0f 95 c0             	setne  %al
14022bd88:	c3                   	ret
14022bd89:	cc                   	int3
14022bd8a:	cc                   	int3
14022bd8b:	cc                   	int3
14022bd8c:	cc                   	int3
14022bd8d:	cc                   	int3
14022bd8e:	cc                   	int3
14022bd8f:	cc                   	int3
14022bd90:	83 79 08 00          	cmpl   $0x0,0x8(%rcx)
14022bd94:	7e 0e                	jle    0x14022bda4
14022bd96:	48 8b 01             	mov    (%rcx),%rax
14022bd99:	f6 00 01             	testb  $0x1,(%rax)
14022bd9c:	74 06                	je     0x14022bda4
14022bd9e:	b8 01 00 00 00       	mov    $0x1,%eax
14022bda3:	c3                   	ret
14022bda4:	33 c0                	xor    %eax,%eax
14022bda6:	c3                   	ret
14022bda7:	cc                   	int3
14022bda8:	cc                   	int3
14022bda9:	cc                   	int3
14022bdaa:	cc                   	int3
14022bdab:	cc                   	int3
14022bdac:	cc                   	int3
14022bdad:	cc                   	int3
14022bdae:	cc                   	int3
14022bdaf:	cc                   	int3
14022bdb0:	83 79 08 01          	cmpl   $0x1,0x8(%rcx)
14022bdb4:	75 15                	jne    0x14022bdcb
14022bdb6:	48 8b 01             	mov    (%rcx),%rax
14022bdb9:	48 83 38 01          	cmpq   $0x1,(%rax)
14022bdbd:	75 0c                	jne    0x14022bdcb
14022bdbf:	83 79 10 00          	cmpl   $0x0,0x10(%rcx)
14022bdc3:	75 06                	jne    0x14022bdcb
14022bdc5:	b8 01 00 00 00       	mov    $0x1,%eax
14022bdca:	c3                   	ret
14022bdcb:	33 c0                	xor    %eax,%eax
14022bdcd:	c3                   	ret
14022bdce:	cc                   	int3
14022bdcf:	cc                   	int3
14022bdd0:	44 8b 41 08          	mov    0x8(%rcx),%r8d
14022bdd4:	41 83 f8 01          	cmp    $0x1,%r8d
14022bdd8:	75 13                	jne    0x14022bded
14022bdda:	48 8b 01             	mov    (%rcx),%rax
14022bddd:	48 39 10             	cmp    %rdx,(%rax)
14022bde0:	75 0b                	jne    0x14022bded
14022bde2:	48 85 d2             	test   %rdx,%rdx
14022bde5:	74 10                	je     0x14022bdf7
14022bde7:	83 79 10 00          	cmpl   $0x0,0x10(%rcx)
14022bdeb:	eb 08                	jmp    0x14022bdf5
14022bded:	48 85 d2             	test   %rdx,%rdx
14022bdf0:	75 0b                	jne    0x14022bdfd
14022bdf2:	45 85 c0             	test   %r8d,%r8d
14022bdf5:	75 06                	jne    0x14022bdfd
14022bdf7:	b8 01 00 00 00       	mov    $0x1,%eax
14022bdfc:	c3                   	ret
14022bdfd:	33 c0                	xor    %eax,%eax
14022bdff:	c3                   	ret
14022be00:	33 c0                	xor    %eax,%eax
14022be02:	39 41 08             	cmp    %eax,0x8(%rcx)
14022be05:	0f 94 c0             	sete   %al
14022be08:	c3                   	ret
14022be09:	cc                   	int3
14022be0a:	cc                   	int3
14022be0b:	cc                   	int3
14022be0c:	cc                   	int3
14022be0d:	cc                   	int3
14022be0e:	cc                   	int3
14022be0f:	cc                   	int3
14022be10:	44 8b d2             	mov    %edx,%r10d
14022be13:	4c 8b c9             	mov    %rcx,%r9
14022be16:	85 d2                	test   %edx,%edx
14022be18:	78 71                	js     0x14022be8b
14022be1a:	8b ca                	mov    %edx,%ecx
14022be1c:	41 83 e2 3f          	and    $0x3f,%r10d
14022be20:	c1 e9 06             	shr    $0x6,%ecx
14022be23:	41 3b 49 08          	cmp    0x8(%r9),%ecx
14022be27:	7d 62                	jge    0x14022be8b
14022be29:	45 85 d2             	test   %r10d,%r10d
14022be2c:	75 06                	jne    0x14022be34
14022be2e:	41 89 49 08          	mov    %ecx,0x8(%r9)
14022be32:	eb 21                	jmp    0x14022be55
14022be34:	8d 41 01             	lea    0x1(%rcx),%eax
14022be37:	41 89 41 08          	mov    %eax,0x8(%r9)
14022be3b:	49 8b 01             	mov    (%r9),%rax
14022be3e:	4c 8d 04 c8          	lea    (%rax,%rcx,8),%r8
14022be42:	41 8b ca             	mov    %r10d,%ecx
14022be45:	48 c7 c0 ff ff ff ff 	mov    $0xffffffffffffffff,%rax
14022be4c:	48 d3 e0             	shl    %cl,%rax
14022be4f:	48 f7 d0             	not    %rax
14022be52:	49 21 00             	and    %rax,(%r8)
14022be55:	49 63 41 08          	movslq 0x8(%r9),%rax
14022be59:	85 c0                	test   %eax,%eax
14022be5b:	7e 1e                	jle    0x14022be7b
14022be5d:	49 8b 09             	mov    (%r9),%rcx
14022be60:	4c 8d 04 c1          	lea    (%rcx,%rax,8),%r8
14022be64:	49 83 78 f8 00       	cmpq   $0x0,-0x8(%r8)
14022be69:	4d 8d 40 f8          	lea    -0x8(%r8),%r8
14022be6d:	75 06                	jne    0x14022be75
14022be6f:	ff c8                	dec    %eax
14022be71:	85 c0                	test   %eax,%eax
14022be73:	7f ef                	jg     0x14022be64
14022be75:	41 89 41 08          	mov    %eax,0x8(%r9)
14022be79:	85 c0                	test   %eax,%eax
14022be7b:	75 08                	jne    0x14022be85
14022be7d:	41 c7 41 10 00 00 00 	movl   $0x0,0x10(%r9)
14022be84:	00
14022be85:	b8 01 00 00 00       	mov    $0x1,%eax
14022be8a:	c3                   	ret
14022be8b:	33 c0                	xor    %eax,%eax
14022be8d:	c3                   	ret
14022be8e:	cc                   	int3
14022be8f:	cc                   	int3
14022be90:	b8 38 00 00 00       	mov    $0x38,%eax
14022be95:	e8 46 e7 0c 00       	call   0x1402fa5e0
14022be9a:	48 2b e0             	sub    %rax,%rsp
14022be9d:	41 b8 f6 00 00 00    	mov    $0xf6,%r8d
14022bea3:	48 8d 15 4e 10 13 00 	lea    0x13104e(%rip),%rdx        # 0x14035cef8
14022beaa:	8d 48 e0             	lea    -0x20(%rax),%ecx
14022bead:	e8 8e d7 ff ff       	call   0x140229640
14022beb2:	48 85 c0             	test   %rax,%rax
14022beb5:	75 25                	jne    0x14022bedc
14022beb7:	4c 8d 0d 3a 10 13 00 	lea    0x13103a(%rip),%r9        # 0x14035cef8
14022bebe:	c7 44 24 20 f7 00 00 	movl   $0xf7,0x20(%rsp)
14022bec5:	00
14022bec6:	8d 50 71             	lea    0x71(%rax),%edx
14022bec9:	44 8d 40 41          	lea    0x41(%rax),%r8d
14022becd:	8d 48 03             	lea    0x3(%rax),%ecx
14022bed0:	e8 cb 54 ff ff       	call   0x1402213a0
14022bed5:	33 c0                	xor    %eax,%eax
14022bed7:	48 83 c4 38          	add    $0x38,%rsp
14022bedb:	c3                   	ret
14022bedc:	c7 40 14 01 00 00 00 	movl   $0x1,0x14(%rax)
14022bee3:	48 83 c4 38          	add    $0x38,%rsp
14022bee7:	c3                   	ret
14022bee8:	cc                   	int3
14022bee9:	cc                   	int3
14022beea:	cc                   	int3
14022beeb:	cc                   	int3
14022beec:	cc                   	int3
14022beed:	cc                   	int3
14022beee:	cc                   	int3
14022beef:	cc                   	int3
14022bef0:	40 53                	rex push %rbx
14022bef2:	b8 30 00 00 00       	mov    $0x30,%eax
14022bef7:	e8 e4 e6 0c 00       	call   0x1402fa5e0
14022befc:	48 2b e0             	sub    %rax,%rsp
14022beff:	f6 41 14 04          	testb  $0x4,0x14(%rcx)
14022bf03:	48 63 59 08          	movslq 0x8(%rcx),%rbx
14022bf07:	0f 84 a2 00 00 00    	je     0x14022bfaf
14022bf0d:	48 89 6c 24 40       	mov    %rbp,0x40(%rsp)
14022bf12:	48 89 74 24 48       	mov    %rsi,0x48(%rsp)
14022bf17:	33 f6                	xor    %esi,%esi
14022bf19:	48 89 7c 24 50       	mov    %rdi,0x50(%rsp)
14022bf1e:	8b ee                	mov    %esi,%ebp
14022bf20:	4c 89 64 24 58       	mov    %r12,0x58(%rsp)
14022bf25:	8d 7b ff             	lea    -0x1(%rbx),%edi
14022bf28:	44 8b 61 0c          	mov    0xc(%rcx),%r12d
14022bf2c:	4c 89 7c 24 20       	mov    %r15,0x20(%rsp)
14022bf31:	44 8b fe             	mov    %esi,%r15d
14022bf34:	45 85 e4             	test   %r12d,%r12d
14022bf37:	7e 44                	jle    0x14022bf7d
14022bf39:	4c 89 74 24 28       	mov    %r14,0x28(%rsp)
14022bf3e:	4c 8b 31             	mov    (%rcx),%r14
14022bf41:	49 8b 0e             	mov    (%r14),%rcx
14022bf44:	8b c5                	mov    %ebp,%eax
14022bf46:	33 c7                	xor    %edi,%eax
14022bf48:	8d 58 ff             	lea    -0x1(%rax),%ebx
14022bf4b:	f7 d0                	not    %eax
14022bf4d:	c1 e8 1f             	shr    $0x1f,%eax
14022bf50:	c1 eb 1f             	shr    $0x1f,%ebx
14022bf53:	23 d8                	and    %eax,%ebx
14022bf55:	f7 db                	neg    %ebx
14022bf57:	0b f3                	or     %ebx,%esi
14022bf59:	e8 82 00 00 00       	call   0x14022bfe0
14022bf5e:	23 c3                	and    %ebx,%eax
14022bf60:	4d 8d 76 08          	lea    0x8(%r14),%r14
14022bf64:	8b ce                	mov    %esi,%ecx
14022bf66:	ff c5                	inc    %ebp
14022bf68:	f7 d1                	not    %ecx
14022bf6a:	83 e1 40             	and    $0x40,%ecx
14022bf6d:	44 03 f9             	add    %ecx,%r15d
14022bf70:	44 03 f8             	add    %eax,%r15d
14022bf73:	41 3b ec             	cmp    %r12d,%ebp
14022bf76:	7c c9                	jl     0x14022bf41
14022bf78:	4c 8b 74 24 28       	mov    0x28(%rsp),%r14
14022bf7d:	4c 8b 64 24 58       	mov    0x58(%rsp),%r12
14022bf82:	8b c7                	mov    %edi,%eax
14022bf84:	48 8b 74 24 48       	mov    0x48(%rsp),%rsi
14022bf89:	f7 d0                	not    %eax
14022bf8b:	48 8b 6c 24 40       	mov    0x40(%rsp),%rbp
14022bf90:	ff c8                	dec    %eax
14022bf92:	c1 e8 1f             	shr    $0x1f,%eax
14022bf95:	c1 ef 1f             	shr    $0x1f,%edi
14022bf98:	23 c7                	and    %edi,%eax
14022bf9a:	48 8b 7c 24 50       	mov    0x50(%rsp),%rdi
14022bf9f:	ff c8                	dec    %eax
14022bfa1:	41 23 c7             	and    %r15d,%eax
14022bfa4:	4c 8b 7c 24 20       	mov    0x20(%rsp),%r15
14022bfa9:	48 83 c4 30          	add    $0x30,%rsp
14022bfad:	5b                   	pop    %rbx
14022bfae:	c3                   	ret
14022bfaf:	85 db                	test   %ebx,%ebx
14022bfb1:	75 08                	jne    0x14022bfbb
14022bfb3:	33 c0                	xor    %eax,%eax
14022bfb5:	48 83 c4 30          	add    $0x30,%rsp
14022bfb9:	5b                   	pop    %rbx
14022bfba:	c3                   	ret
14022bfbb:	48 8b 09             	mov    (%rcx),%rcx
14022bfbe:	48 8b 4c d9 f8       	mov    -0x8(%rcx,%rbx,8),%rcx
14022bfc3:	e8 18 00 00 00       	call   0x14022bfe0
14022bfc8:	c1 e3 06             	shl    $0x6,%ebx
14022bfcb:	83 c3 c0             	add    $0xffffffc0,%ebx
14022bfce:	03 c3                	add    %ebx,%eax
14022bfd0:	48 83 c4 30          	add    $0x30,%rsp
14022bfd4:	5b                   	pop    %rbx
14022bfd5:	c3                   	ret
14022bfd6:	cc                   	int3
14022bfd7:	cc                   	int3
14022bfd8:	cc                   	int3
14022bfd9:	cc                   	int3
14022bfda:	cc                   	int3
14022bfdb:	cc                   	int3
14022bfdc:	cc                   	int3
14022bfdd:	cc                   	int3
14022bfde:	cc                   	int3
14022bfdf:	cc                   	int3
14022bfe0:	4c 8b c1             	mov    %rcx,%r8
14022bfe3:	4c 8b c9             	mov    %rcx,%r9
14022bfe6:	45 33 d2             	xor    %r10d,%r10d
14022bfe9:	49 c1 e8 20          	shr    $0x20,%r8
14022bfed:	49 8b d0             	mov    %r8,%rdx
14022bff0:	48 f7 da             	neg    %rdx
14022bff3:	48 c1 ea 3f          	shr    $0x3f,%rdx
14022bff7:	48 f7 da             	neg    %rdx
14022bffa:	48 85 c9             	test   %rcx,%rcx
14022bffd:	8b c2                	mov    %edx,%eax
14022bfff:	41 0f 95 c2          	setne  %r10b
14022c003:	4c 33 c1             	xor    %rcx,%r8
14022c006:	4c 23 c2             	and    %rdx,%r8
14022c009:	83 e0 20             	and    $0x20,%eax
14022c00c:	44 03 d0             	add    %eax,%r10d
14022c00f:	4d 33 c8             	xor    %r8,%r9
14022c012:	49 8b d1             	mov    %r9,%rdx
14022c015:	48 c1 ea 10          	shr    $0x10,%rdx
14022c019:	48 8b ca             	mov    %rdx,%rcx
14022c01c:	49 33 d1             	xor    %r9,%rdx
14022c01f:	48 f7 d9             	neg    %rcx
14022c022:	48 c1 e9 3f          	shr    $0x3f,%rcx
14022c026:	48 f7 d9             	neg    %rcx
14022c029:	48 23 d1             	and    %rcx,%rdx
14022c02c:	8b c1                	mov    %ecx,%eax
14022c02e:	83 e0 10             	and    $0x10,%eax
14022c031:	4c 33 ca             	xor    %rdx,%r9
14022c034:	44 03 d0             	add    %eax,%r10d
14022c037:	49 8b d1             	mov    %r9,%rdx
14022c03a:	48 c1 ea 08          	shr    $0x8,%rdx
14022c03e:	48 8b ca             	mov    %rdx,%rcx
14022c041:	49 33 d1             	xor    %r9,%rdx
14022c044:	48 f7 d9             	neg    %rcx
14022c047:	48 c1 e9 3f          	shr    $0x3f,%rcx
14022c04b:	48 f7 d9             	neg    %rcx
14022c04e:	48 23 d1             	and    %rcx,%rdx
14022c051:	8b c1                	mov    %ecx,%eax
14022c053:	83 e0 08             	and    $0x8,%eax
14022c056:	4c 33 ca             	xor    %rdx,%r9
14022c059:	44 03 d0             	add    %eax,%r10d
14022c05c:	49 8b d1             	mov    %r9,%rdx
14022c05f:	48 c1 ea 04          	shr    $0x4,%rdx
14022c063:	48 8b ca             	mov    %rdx,%rcx
14022c066:	49 33 d1             	xor    %r9,%rdx
14022c069:	48 f7 d9             	neg    %rcx
14022c06c:	48 c1 e9 3f          	shr    $0x3f,%rcx
14022c070:	48 f7 d9             	neg    %rcx
14022c073:	8b c1                	mov    %ecx,%eax
14022c075:	48 23 d1             	and    %rcx,%rdx
14022c078:	83 e0 04             	and    $0x4,%eax
14022c07b:	4c 33 ca             	xor    %rdx,%r9
14022c07e:	44 03 d0             	add    %eax,%r10d
14022c081:	49 8b c9             	mov    %r9,%rcx
14022c084:	48 c1 e9 02          	shr    $0x2,%rcx
14022c088:	48 8b c1             	mov    %rcx,%rax
14022c08b:	49 33 c9             	xor    %r9,%rcx
14022c08e:	48 f7 d8             	neg    %rax
14022c091:	48 c1 e8 3f          	shr    $0x3f,%rax
14022c095:	48 f7 d8             	neg    %rax
14022c098:	48 23 c8             	and    %rax,%rcx
14022c09b:	83 e0 02             	and    $0x2,%eax
14022c09e:	49 33 c9             	xor    %r9,%rcx
14022c0a1:	48 d1 e9             	shr    $1,%rcx
14022c0a4:	48 f7 d9             	neg    %rcx
14022c0a7:	48 c1 e9 3f          	shr    $0x3f,%rcx
14022c0ab:	f7 d9                	neg    %ecx
14022c0ad:	83 e1 01             	and    $0x1,%ecx
14022c0b0:	41 03 ca             	add    %r10d,%ecx
14022c0b3:	03 c1                	add    %ecx,%eax
14022c0b5:	c3                   	ret
14022c0b6:	cc                   	int3
14022c0b7:	cc                   	int3
14022c0b8:	cc                   	int3
14022c0b9:	cc                   	int3
14022c0ba:	cc                   	int3
14022c0bb:	cc                   	int3
14022c0bc:	cc                   	int3
14022c0bd:	cc                   	int3
14022c0be:	cc                   	int3
14022c0bf:	cc                   	int3
14022c0c0:	b8 38 00 00 00       	mov    $0x38,%eax
14022c0c5:	e8 16 e5 0c 00       	call   0x1402fa5e0
14022c0ca:	48 2b e0             	sub    %rax,%rsp
14022c0cd:	41 b8 f6 00 00 00    	mov    $0xf6,%r8d
14022c0d3:	48 8d 15 1e 0e 13 00 	lea    0x130e1e(%rip),%rdx        # 0x14035cef8
14022c0da:	8d 48 e0             	lea    -0x20(%rax),%ecx
14022c0dd:	e8 5e d5 ff ff       	call   0x140229640
14022c0e2:	48 85 c0             	test   %rax,%rax
14022c0e5:	75 25                	jne    0x14022c10c
14022c0e7:	4c 8d 0d 0a 0e 13 00 	lea    0x130e0a(%rip),%r9        # 0x14035cef8
14022c0ee:	c7 44 24 20 f7 00 00 	movl   $0xf7,0x20(%rsp)
14022c0f5:	00
14022c0f6:	8d 50 71             	lea    0x71(%rax),%edx
14022c0f9:	44 8d 40 41          	lea    0x41(%rax),%r8d
14022c0fd:	8d 48 03             	lea    0x3(%rax),%ecx
14022c100:	e8 9b 52 ff ff       	call   0x1402213a0
14022c105:	33 c0                	xor    %eax,%eax
14022c107:	48 83 c4 38          	add    $0x38,%rsp
14022c10b:	c3                   	ret
14022c10c:	c7 40 14 09 00 00 00 	movl   $0x9,0x14(%rax)
14022c113:	48 83 c4 38          	add    $0x38,%rsp