140022858:	e8 e3 06 00 00       	call   0x140022f40
14002285d:	85 c0                	test   %eax,%eax
14002285f:	0f 85 90 00 00 00    	jne    0x1400228f5
140022865:	41 b6 01             	mov    $0x1,%r14b
140022868:	40 f6 c6 01          	test   $0x1,%sil
14002286c:	75 3c                	jne    0x1400228aa
14002286e:	48 8b 8d f8 00 00 00 	mov    0xf8(%rbp),%rcx
140022875:	4c 29 e9             	sub    %r13,%rcx
140022878:	48 85 c9             	test   %rcx,%rcx
14002287b:	0f 8e 30 ff ff ff    	jle    0x1400227b1
140022881:	41 0f b6 45 00       	movzbl 0x0(%r13),%eax
140022886:	83 f8 2d             	cmp    $0x2d,%eax
140022889:	0f 84 18 ff ff ff    	je     0x1400227a7
14002288f:	83 f8 2b             	cmp    $0x2b,%eax
140022892:	0f 84 0f ff ff ff    	je     0x1400227a7
140022898:	8d 48 d0             	lea    -0x30(%rax),%ecx
14002289b:	80 f9 0a             	cmp    $0xa,%cl
14002289e:	0f 92 c1             	setb   %cl
1400228a1:	3c 2e                	cmp    $0x2e,%al
1400228a3:	0f 94 c0             	sete   %al
1400228a6:	08 c8                	or     %cl,%al
1400228a8:	74 4b                	je     0x1400228f5
1400228aa:	48 8b 47 18          	mov    0x18(%rdi),%rax
1400228ae:	48 3b 47 20          	cmp    0x20(%rdi),%rax
1400228b2:	0f 84 97 01 00 00    	je     0x140022a4f
1400228b8:	48 ff c0             	inc    %rax
1400228bb:	48 89 47 18          	mov    %rax,0x18(%rdi)
1400228bf:	44 89 f6             	mov    %r14d,%esi
1400228c2:	48 85 ff             	test   %rdi,%rdi
1400228c5:	0f 84 ee 00 00 00    	je     0x1400229b9
1400228cb:	48 8b 47 18          	mov    0x18(%rdi),%rax
1400228cf:	48 3b 47 20          	cmp    0x20(%rdi),%rax
1400228d3:	0f 84 ea 00 00 00    	je     0x1400229c3
1400228d9:	45 31 f6             	xor    %r14d,%r14d
1400228dc:	48 85 db             	test   %rbx,%rbx
1400228df:	0f 85 82 01 00 00    	jne    0x140022a67
1400228e5:	bb 00 00 00 00       	mov    $0x0,%ebx
1400228ea:	45 84 f6             	test   %r14b,%r14b
1400228ed:	0f 84 c6 fe ff ff    	je     0x1400227b9
1400228f3:	31 db                	xor    %ebx,%ebx
1400228f5:	48 0f be 85 c7 00 00 	movsbq 0xc7(%rbp),%rax
1400228fc:	00
1400228fd:	48 85 c0             	test   %rax,%rax
140022900:	79 07                	jns    0x140022909
140022902:	48 8b 85 b8 00 00 00 	mov    0xb8(%rbp),%rax
140022909:	48 85 c0             	test   %rax,%rax
14002290c:	0f 85 13 03 00 00    	jne    0x140022c25
140022912:	48 8b 95 f8 00 00 00 	mov    0xf8(%rbp),%rdx
140022919:	4c 89 e9             	mov    %r13,%rcx
14002291c:	4c 8b 85 88 01 00 00 	mov    0x188(%rbp),%r8
140022923:	e8 88 46 00 00       	call   0x140026fb0
140022928:	48 8b 85 90 01 00 00 	mov    0x190(%rbp),%rax
14002292f:	f2 0f 11 00          	movsd  %xmm0,(%rax)
140022933:	48 8b 85 e8 00 00 00 	mov    0xe8(%rbp),%rax
14002293a:	48 0f be 8d c7 00 00 	movsbq 0xc7(%rbp),%rcx
140022941:	00
140022942:	48 89 ca             	mov    %rcx,%rdx
140022945:	48 85 c9             	test   %rcx,%rcx
140022948:	79 07                	jns    0x140022951
14002294a:	48 8b 95 b8 00 00 00 	mov    0xb8(%rbp),%rdx
140022951:	49 89 c0             	mov    %rax,%r8
140022954:	4d 29 e0             	sub    %r12,%r8
140022957:	49 83 f8 05          	cmp    $0x5,%r8
14002295b:	7c 09                	jl     0x140022966
14002295d:	48 85 d2             	test   %rdx,%rdx
140022960:	0f 85 33 01 00 00    	jne    0x140022a99
140022966:	48 85 ff             	test   %rdi,%rdi
140022969:	74 77                	je     0x1400229e2
14002296b:	48 8b 47 18          	mov    0x18(%rdi),%rax
14002296f:	48 3b 47 20          	cmp    0x20(%rdi),%rax
140022973:	74 74                	je     0x1400229e9
140022975:	48 85 db             	test   %rbx,%rbx
140022978:	0f 85 fe 02 00 00    	jne    0x140022c7c
14002297e:	48 8b b5 a8 00 00 00 	mov    0xa8(%rbp),%rsi
140022985:	48 89 3e             	mov    %rdi,(%rsi)
140022988:	80 bd e7 00 00 00 00 	cmpb   $0x0,0xe7(%rbp)
14002298f:	0f 88 0b 02 00 00    	js     0x140022ba0
140022995:	80 bd c7 00 00 00 00 	cmpb   $0x0,0xc7(%rbp)
14002299c:	0f 88 0f 02 00 00    	js     0x140022bb1
1400229a2:	48 89 f0             	mov    %rsi,%rax
1400229a5:	48 81 c4 98 01 00 00 	add    $0x198,%rsp
1400229ac:	5b                   	pop    %rbx
1400229ad:	5f                   	pop    %rdi
1400229ae:	5e                   	pop    %rsi
1400229af:	41 5c                	pop    %r12
1400229b1:	41 5d                	pop    %r13
1400229b3:	41 5e                	pop    %r14
1400229b5:	41 5f                	pop    %r15
1400229b7:	5d                   	pop    %rbp
1400229b8:	c3                   	ret
1400229b9:	41 b6 01             	mov    $0x1,%r14b
1400229bc:	31 ff                	xor    %edi,%edi
1400229be:	e9 19 ff ff ff       	jmp    0x1400228dc
1400229c3:	48 8b 07             	mov    (%rdi),%rax
1400229c6:	48 8b 40 40          	mov    0x40(%rax),%rax
1400229ca:	48 89 f9             	mov    %rdi,%rcx
1400229cd:	ff 15 35 43 0d 00    	call   *0xd4335(%rip)        # 0x1400f6d08
1400229d3:	83 f8 ff             	cmp    $0xffffffff,%eax
1400229d6:	41 0f 94 c6          	sete   %r14b
1400229da:	0f 85 fc fe ff ff    	jne    0x1400228dc
1400229e0:	eb da                	jmp    0x1400229bc
1400229e2:	40 b6 01             	mov    $0x1,%sil
1400229e5:	31 ff                	xor    %edi,%edi
1400229e7:	eb 1d                	jmp    0x140022a06
1400229e9:	48 8b 07             	mov    (%rdi),%rax
1400229ec:	48 8b 40 40          	mov    0x40(%rax),%rax
1400229f0:	48 89 f9             	mov    %rdi,%rcx
1400229f3:	ff 15 0f 43 0d 00    	call   *0xd430f(%rip)        # 0x1400f6d08
1400229f9:	31 c9                	xor    %ecx,%ecx
1400229fb:	83 f8 ff             	cmp    $0xffffffff,%eax
1400229fe:	40 0f 94 c6          	sete   %sil
140022a02:	48 0f 44 f9          	cmove  %rcx,%rdi
140022a06:	48 85 db             	test   %rbx,%rbx
140022a09:	0f 85 55 02 00 00    	jne    0x140022c64
140022a0f:	40 84 f6             	test   %sil,%sil
140022a12:	0f 84 66 ff ff ff    	je     0x14002297e
140022a18:	48 8b 85 88 01 00 00 	mov    0x188(%rbp),%rax
140022a1f:	80 08 02             	orb    $0x2,(%rax)
140022a22:	e9 57 ff ff ff       	jmp    0x14002297e
140022a27:	83 f8 2d             	cmp    $0x2d,%eax
140022a2a:	0f 85 80 02 00 00    	jne    0x140022cb0
140022a30:	41 8a 45 01          	mov    0x1(%r13),%al
140022a34:	8d 48 d0             	lea    -0x30(%rax),%ecx
140022a37:	80 f9 0a             	cmp    $0xa,%cl
140022a3a:	0f 93 c1             	setae  %cl
140022a3d:	3c 2e                	cmp    $0x2e,%al
140022a3f:	0f 95 c0             	setne  %al
140022a42:	84 c8                	test   %cl,%al
140022a44:	0f 84 60 fe ff ff    	je     0x1400228aa
140022a4a:	e9 a6 fe ff ff       	jmp    0x1400228f5
140022a4f:	48 8b 07             	mov    (%rdi),%rax
140022a52:	48 8b 40 48          	mov    0x48(%rax),%rax
140022a56:	48 89 f9             	mov    %rdi,%rcx
140022a59:	ff 15 a9 42 0d 00    	call   *0xd42a9(%rip)        # 0x1400f6d08
140022a5f:	44 89 f6             	mov    %r14d,%esi
140022a62:	e9 5b fe ff ff       	jmp    0x1400228c2
140022a67:	48 8b 43 18          	mov    0x18(%rbx),%rax
140022a6b:	48 3b 43 20          	cmp    0x20(%rbx),%rax
140022a6f:	74 0e                	je     0x140022a7f
140022a71:	45 84 f6             	test   %r14b,%r14b
140022a74:	0f 85 3f fd ff ff    	jne    0x1400227b9
140022a7a:	e9 76 fe ff ff       	jmp    0x1400228f5
140022a7f:	48 8b 03             	mov    (%rbx),%rax
140022a82:	48 8b 40 40          	mov    0x40(%rax),%rax
140022a86:	48 89 d9             	mov    %rbx,%rcx
140022a89:	ff 15 79 42 0d 00    	call   *0xd4279(%rip)        # 0x1400f6d08
140022a8f:	83 f8 ff             	cmp    $0xffffffff,%eax
140022a92:	75 dd                	jne    0x140022a71
140022a94:	e9 4c fe ff ff       	jmp    0x1400228e5
140022a99:	49 39 c4             	cmp    %rax,%r12
140022a9c:	0f 95 c2             	setne  %dl
140022a9f:	48 83 c0 fc          	add    $0xfffffffffffffffc,%rax
140022aa3:	49 39 c4             	cmp    %rax,%r12
140022aa6:	41 0f 92 c0          	setb   %r8b
140022aaa:	41 20 d0             	and    %dl,%r8b
140022aad:	41 80 f8 01          	cmp    $0x1,%r8b
140022ab1:	75 2b                	jne    0x140022ade
140022ab3:	48 8d 4d e4          	lea    -0x1c(%rbp),%rcx
140022ab7:	48 89 c2             	mov    %rax,%rdx
140022aba:	44 8b 41 fc          	mov    -0x4(%rcx),%r8d
140022abe:	44 8b 0a             	mov    (%rdx),%r9d
140022ac1:	44 89 49 fc          	mov    %r9d,-0x4(%rcx)
140022ac5:	44 89 02             	mov    %r8d,(%rdx)
140022ac8:	48 83 c2 fc          	add    $0xfffffffffffffffc,%rdx
140022acc:	4c 8d 41 04          	lea    0x4(%rcx),%r8
140022ad0:	48 39 d1             	cmp    %rdx,%rcx
140022ad3:	4c 89 c1             	mov    %r8,%rcx
140022ad6:	72 e2                	jb     0x140022aba
140022ad8:	8a 8d c7 00 00 00    	mov    0xc7(%rbp),%cl
140022ade:	84 c9                	test   %cl,%cl
140022ae0:	79 0e                	jns    0x140022af0
140022ae2:	48 8b 95 b0 00 00 00 	mov    0xb0(%rbp),%rdx
140022ae9:	48 89 95 00 01 00 00 	mov    %rdx,0x100(%rbp)
140022af0:	49 39 c4             	cmp    %rax,%r12
140022af3:	73 60                	jae    0x140022b55
140022af5:	84 c9                	test   %cl,%cl
140022af7:	78 05                	js     0x140022afe
140022af9:	0f b6 c9             	movzbl %cl,%ecx
140022afc:	eb 07                	jmp    0x140022b05
140022afe:	48 8b 8d b8 00 00 00 	mov    0xb8(%rbp),%rcx
140022b05:	48 03 8d 00 01 00 00 	add    0x100(%rbp),%rcx
140022b0c:	eb 2b                	jmp    0x140022b39
140022b0e:	48 89 ca             	mov    %rcx,%rdx
140022b11:	4c 8b 8d 00 01 00 00 	mov    0x100(%rbp),%r9
140022b18:	4c 29 ca             	sub    %r9,%rdx
140022b1b:	45 31 c0             	xor    %r8d,%r8d
140022b1e:	48 83 fa 02          	cmp    $0x2,%rdx
140022b22:	41 0f 9d c0          	setge  %r8b
140022b26:	4d 01 c1             	add    %r8,%r9
140022b29:	4c 89 8d 00 01 00 00 	mov    %r9,0x100(%rbp)
140022b30:	49 83 c4 04          	add    $0x4,%r12
140022b34:	49 39 c4             	cmp    %rax,%r12
140022b37:	73 1c                	jae    0x140022b55
140022b39:	48 8b 95 00 01 00 00 	mov    0x100(%rbp),%rdx
140022b40:	0f b6 12             	movzbl (%rdx),%edx
140022b43:	44 8d 42 ff          	lea    -0x1(%rdx),%r8d
140022b47:	41 80 f8 7d          	cmp    $0x7d,%r8b
140022b4b:	77 c1                	ja     0x140022b0e
140022b4d:	41 39 14 24          	cmp    %edx,(%r12)
140022b51:	74 bb                	je     0x140022b0e
140022b53:	eb 22                	jmp    0x140022b77
140022b55:	48 8b 8d 00 01 00 00 	mov    0x100(%rbp),%rcx
140022b5c:	0f b6 09             	movzbl (%rcx),%ecx
140022b5f:	8d 51 ff             	lea    -0x1(%rcx),%edx
140022b62:	80 fa 7d             	cmp    $0x7d,%dl
140022b65:	0f 87 fb fd ff ff    	ja     0x140022966
140022b6b:	8b 00                	mov    (%rax),%eax
140022b6d:	ff c8                	dec    %eax
140022b6f:	39 c8                	cmp    %ecx,%eax
140022b71:	0f 82 ef fd ff ff    	jb     0x140022966
140022b77:	48 8b 85 88 01 00 00 	mov    0x188(%rbp),%rax
140022b7e:	c7 00 04 00 00 00    	movl   $0x4,(%rax)
140022b84:	e9 dd fd ff ff       	jmp    0x140022966
140022b89:	48 8b 07             	mov    (%rdi),%rax
140022b8c:	48 8b 40 40          	mov    0x40(%rax),%rax
140022b90:	48 89 f9             	mov    %rdi,%rcx
140022b93:	ff 15 6f 41 0d 00    	call   *0xd416f(%rip)        # 0x1400f6d08
140022b99:	89 c1                	mov    %eax,%ecx
140022b9b:	e9 5c fc ff ff       	jmp    0x1400227fc
140022ba0:	48 8b 8d d0 00 00 00 	mov    0xd0(%rbp),%rcx
140022ba7:	e8 24 b3 04 00       	call   0x14006ded0
140022bac:	e9 e4 fd ff ff       	jmp    0x140022995
140022bb1:	48 8b 8d b0 00 00 00 	mov    0xb0(%rbp),%rcx
140022bb8:	e8 13 b3 04 00       	call   0x14006ded0
140022bbd:	e9 e0 fd ff ff       	jmp    0x1400229a2
140022bc2:	4b 8d 14 36          	lea    (%r14,%r14,1),%rdx
140022bc6:	48 8d 8d d0 00 00 00 	lea    0xd0(%rbp),%rcx
140022bcd:	45 31 c0             	xor    %r8d,%r8d
140022bd0:	e8 9b 92 03 00       	call   0x14005be70
140022bd5:	48 b8 ff ff ff ff ff 	movabs $0x7fffffffffffffff,%rax
140022bdc:	ff ff 7f
140022bdf:	4c 8d ad d0 00 00 00 	lea    0xd0(%rbp),%r13
140022be6:	49 23 45 10          	and    0x10(%r13),%rax
140022bea:	48 ff c8             	dec    %rax
140022bed:	41 80 7d 17 00       	cmpb   $0x0,0x17(%r13)
140022bf2:	ba 16 00 00 00       	mov    $0x16,%edx
140022bf7:	48 0f 48 d0          	cmovs  %rax,%rdx
140022bfb:	4c 89 e9             	mov    %r13,%rcx
140022bfe:	45 31 c0             	xor    %r8d,%r8d
140022c01:	e8 6a 92 03 00       	call   0x14005be70
140022c06:	80 bd e7 00 00 00 00 	cmpb   $0x0,0xe7(%rbp)
140022c0d:	79 07                	jns    0x140022c16
140022c0f:	4c 8b ad d0 00 00 00 	mov    0xd0(%rbp),%r13
140022c16:	4d 01 ee             	add    %r13,%r14
140022c19:	4c 89 b5 f8 00 00 00 	mov    %r14,0xf8(%rbp)
140022c20:	e9 b9 fb ff ff       	jmp    0x1400227de
140022c25:	80 bd 0f 01 00 00 01 	cmpb   $0x1,0x10f(%rbp)
140022c2c:	0f 85 e0 fc ff ff    	jne    0x140022912
140022c32:	48 8b 85 e8 00 00 00 	mov    0xe8(%rbp),%rax
140022c39:	48 89 c1             	mov    %rax,%rcx
140022c3c:	4c 29 e1             	sub    %r12,%rcx
140022c3f:	48 81 f9 9f 00 00 00 	cmp    $0x9f,%rcx
140022c46:	0f 8f c6 fc ff ff    	jg     0x140022912
140022c4c:	8b 8d f4 00 00 00    	mov    0xf4(%rbp),%ecx
140022c52:	48 8d 50 04          	lea    0x4(%rax),%rdx
140022c56:	48 89 95 e8 00 00 00 	mov    %rdx,0xe8(%rbp)
140022c5d:	89 08                	mov    %ecx,(%rax)
140022c5f:	e9 ae fc ff ff       	jmp    0x140022912
140022c64:	48 8b 43 18          	mov    0x18(%rbx),%rax
140022c68:	48 3b 43 20          	cmp    0x20(%rbx),%rax
140022c6c:	74 1e                	je     0x140022c8c
140022c6e:	40 84 f6             	test   %sil,%sil
140022c71:	0f 84 a1 fd ff ff    	je     0x140022a18
140022c77:	e9 02 fd ff ff       	jmp    0x14002297e
140022c7c:	48 8b 43 18          	mov    0x18(%rbx),%rax
140022c80:	48 3b 43 20          	cmp    0x20(%rbx),%rax
140022c84:	0f 85 8e fd ff ff    	jne    0x140022a18
140022c8a:	31 f6                	xor    %esi,%esi
140022c8c:	48 8b 03             	mov    (%rbx),%rax
140022c8f:	48 8b 40 40          	mov    0x40(%rax),%rax
140022c93:	48 89 d9             	mov    %rbx,%rcx
140022c96:	ff 15 6c 40 0d 00    	call   *0xd406c(%rip)        # 0x1400f6d08
140022c9c:	83 f8 ff             	cmp    $0xffffffff,%eax
140022c9f:	0f 94 c0             	sete   %al
140022ca2:	40 30 c6             	xor    %al,%sil
140022ca5:	0f 84 6d fd ff ff    	je     0x140022a18
140022cab:	e9 ce fc ff ff       	jmp    0x14002297e
140022cb0:	83 f8 2b             	cmp    $0x2b,%eax
140022cb3:	0f 85 f8 fa ff ff    	jne    0x1400227b1
140022cb9:	e9 72 fd ff ff       	jmp    0x140022a30
140022cbe:	66 90                	xchg   %ax,%ax
140022cc0:	48 89 54 24 10       	mov    %rdx,0x10(%rsp)
140022cc5:	55                   	push   %rbp
140022cc6:	41 57                	push   %r15
140022cc8:	41 56                	push   %r14
140022cca:	41 55                	push   %r13
140022ccc:	41 54                	push   %r12
140022cce:	56                   	push   %rsi
140022ccf:	57                   	push   %rdi
140022cd0:	53                   	push   %rbx
140022cd1:	48 83 ec 68          	sub    $0x68,%rsp
140022cd5:	48 8d aa 80 00 00 00 	lea    0x80(%rdx),%rbp
140022cdc:	80 bd e7 00 00 00 00 	cmpb   $0x0,0xe7(%rbp)
140022ce3:	79 0c                	jns    0x140022cf1
140022ce5:	48 8b 8d d0 00 00 00 	mov    0xd0(%rbp),%rcx
140022cec:	e8 df b1 04 00       	call   0x14006ded0
140022cf1:	80 bd c7 00 00 00 00 	cmpb   $0x0,0xc7(%rbp)
140022cf8:	79 0c                	jns    0x140022d06
140022cfa:	48 8b 8d b0 00 00 00 	mov    0xb0(%rbp),%rcx
140022d01:	e8 ca b1 04 00       	call   0x14006ded0
140022d06:	90                   	nop
140022d07:	48 83 c4 68          	add    $0x68,%rsp
140022d0b:	5b                   	pop    %rbx
140022d0c:	5f                   	pop    %rdi
140022d0d:	5e                   	pop    %rsi
140022d0e:	41 5c                	pop    %r12
140022d10:	41 5d                	pop    %r13
140022d12:	41 5e                	pop    %r14
140022d14:	41 5f                	pop    %r15
140022d16:	5d                   	pop    %rbp
140022d17:	c3                   	ret
140022d18:	cc                   	int3
140022d19:	cc                   	int3
140022d1a:	cc                   	int3
140022d1b:	cc                   	int3
140022d1c:	cc                   	int3
140022d1d:	cc                   	int3
140022d1e:	cc                   	int3
140022d1f:	cc                   	int3
140022d20:	55                   	push   %rbp
140022d21:	41 56                	push   %r14
140022d23:	56                   	push   %rsi
140022d24:	57                   	push   %rdi
140022d25:	53                   	push   %rbx
140022d26:	48 83 ec 50          	sub    $0x50,%rsp
140022d2a:	48 8d 6c 24 50       	lea    0x50(%rsp),%rbp
140022d2f:	48 c7 45 f8 fe ff ff 	movq   $0xfffffffffffffffe,-0x8(%rbp)
140022d36:	ff
140022d37:	4c 89 cf             	mov    %r9,%rdi
140022d3a:	4c 89 c3             	mov    %r8,%rbx
140022d3d:	48 89 ce             	mov    %rcx,%rsi
140022d40:	48 b8 aa aa aa aa aa 	movabs $0xaaaaaaaaaaaaaaaa,%rax
140022d47:	aa aa aa
140022d4a:	4c 8d 75 f0          	lea    -0x10(%rbp),%r14
140022d4e:	49 89 06             	mov    %rax,(%r14)
140022d51:	48 89 d1             	mov    %rdx,%rcx
140022d54:	4c 89 f2             	mov    %r14,%rdx
140022d57:	e8 74 7a 03 00       	call   0x14005a7d0
140022d5c:	4d 8b 36             	mov    (%r14),%r14
140022d5f:	48 8d 05 f2 ec 0e 00 	lea    0xeecf2(%rip),%rax        # 0x140111a58
140022d66:	48 89 45 e8          	mov    %rax,-0x18(%rbp)
140022d6a:	48 8b 05 e7 ec 0e 00 	mov    0xeece7(%rip),%rax        # 0x140111a58
140022d71:	48 83 f8 ff          	cmp    $0xffffffffffffffff,%rax
140022d75:	0f 85 1a 01 00 00    	jne    0x140022e95
140022d7b:	48 63 05 de ec 0e 00 	movslq 0xeecde(%rip),%rax        # 0x140111a60
140022d82:	48 8d 50 ff          	lea    -0x1(%rax),%rdx
140022d86:	49 8b 4e 10          	mov    0x10(%r14),%rcx
140022d8a:	4d 8b 46 18          	mov    0x18(%r14),%r8
140022d8e:	49 29 c8             	sub    %rcx,%r8
140022d91:	49 c1 f8 03          	sar    $0x3,%r8