140022986:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
14002298a:	4c 8d 4d d8          	lea    -0x28(%rbp),%r9
14002298e:	4c 8d 45 d0          	lea    -0x30(%rbp),%r8
140022992:	ba 00 00 00 80       	mov    $0x80000000,%edx
140022997:	48 ff 15 12 d1 01 00 	rex.W call *0x1d112(%rip)        # 0x14003fab0
14002299e:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400229a3:	85 c0                	test   %eax,%eax
1400229a5:	74 5b                	je     0x140022a02
1400229a7:	48 8b 4d d0          	mov    -0x30(%rbp),%rcx
1400229ab:	4c 8d 43 18          	lea    0x18(%rbx),%r8
1400229af:	ba 1b 00 00 00       	mov    $0x1b,%edx
1400229b4:	48 ff 15 b5 d0 01 00 	rex.W call *0x1d0b5(%rip)        # 0x14003fa70
1400229bb:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400229c0:	85 c0                	test   %eax,%eax
1400229c2:	74 3e                	je     0x140022a02
1400229c4:	4c 8b 45 d8          	mov    -0x28(%rbp),%r8
1400229c8:	48 8b 55 d0          	mov    -0x30(%rbp),%rdx
1400229cc:	48 8b 4d 38          	mov    0x38(%rbp),%rcx
1400229d0:	48 ff 15 09 d0 01 00 	rex.W call *0x1d009(%rip)        # 0x14003f9e0
1400229d7:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400229dc:	85 c0                	test   %eax,%eax
1400229de:	74 22                	je     0x140022a02
1400229e0:	4c 8b 45 f0          	mov    -0x10(%rbp),%r8
1400229e4:	48 8b ce             	mov    %rsi,%rcx
1400229e7:	48 8b 55 38          	mov    0x38(%rbp),%rdx
1400229eb:	48 ff 15 ee cf 01 00 	rex.W call *0x1cfee(%rip)        # 0x14003f9e0
1400229f2:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
1400229f7:	85 c0                	test   %eax,%eax
1400229f9:	74 07                	je     0x140022a02
1400229fb:	b8 01 00 00 00       	mov    $0x1,%eax
140022a00:	eb 02                	jmp    0x140022a04
140022a02:	33 c0                	xor    %eax,%eax
140022a04:	48 8b 5c 24 70       	mov    0x70(%rsp),%rbx
140022a09:	48 83 c4 50          	add    $0x50,%rsp
140022a0d:	5f                   	pop    %rdi
140022a0e:	5e                   	pop    %rsi
140022a0f:	5d                   	pop    %rbp
140022a10:	c3                   	ret
140022a11:	cc                   	int3
140022a12:	cc                   	int3
140022a13:	cc                   	int3
140022a14:	cc                   	int3
140022a15:	cc                   	int3
140022a16:	cc                   	int3
140022a17:	cc                   	int3
140022a18:	cc                   	int3
140022a19:	cc                   	int3
140022a1a:	cc                   	int3
140022a1b:	cc                   	int3
140022a1c:	cc                   	int3
140022a1d:	cc                   	int3
140022a1e:	cc                   	int3
140022a1f:	cc                   	int3
140022a20:	48 85 c9             	test   %rcx,%rcx
140022a23:	74 2b                	je     0x140022a50
140022a25:	53                   	push   %rbx
140022a26:	48 83 ec 20          	sub    $0x20,%rsp
140022a2a:	80 39 00             	cmpb   $0x0,(%rcx)
140022a2d:	48 8b d9             	mov    %rcx,%rbx
140022a30:	7d 09                	jge    0x140022a3b
140022a32:	48 83 c1 08          	add    $0x8,%rcx
140022a36:	e8 b9 89 ff ff       	call   0x14001b3f4
140022a3b:	48 8b 4b 18          	mov    0x18(%rbx),%rcx
140022a3f:	48 ff 15 62 d0 01 00 	rex.W call *0x1d062(%rip)        # 0x14003faa8
140022a46:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022a4b:	48 83 c4 20          	add    $0x20,%rsp
140022a4f:	5b                   	pop    %rbx
140022a50:	c3                   	ret
140022a51:	cc                   	int3
140022a52:	cc                   	int3
140022a53:	cc                   	int3
140022a54:	cc                   	int3
140022a55:	cc                   	int3
140022a56:	cc                   	int3
140022a57:	cc                   	int3
140022a58:	cc                   	int3
140022a59:	cc                   	int3
140022a5a:	cc                   	int3
140022a5b:	cc                   	int3
140022a5c:	cc                   	int3
140022a5d:	cc                   	int3
140022a5e:	cc                   	int3
140022a5f:	cc                   	int3
140022a60:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140022a65:	57                   	push   %rdi
140022a66:	48 83 ec 20          	sub    $0x20,%rsp
140022a6a:	8b c2                	mov    %edx,%eax
140022a6c:	49 8b f8             	mov    %r8,%rdi
140022a6f:	85 c0                	test   %eax,%eax
140022a71:	4c 8d 44 24 48       	lea    0x48(%rsp),%r8
140022a76:	ba 10 00 00 00       	mov    $0x10,%edx
140022a7b:	48 8b d9             	mov    %rcx,%rbx
140022a7e:	0f 45 d0             	cmovne %eax,%edx
140022a81:	48 ff 15 50 cf 01 00 	rex.W call *0x1cf50(%rip)        # 0x14003f9d8
140022a88:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022a8d:	85 c0                	test   %eax,%eax
140022a8f:	74 6c                	je     0x140022afd
140022a91:	4c 8d 44 24 38       	lea    0x38(%rsp),%r8
140022a96:	ba 00 00 00 80       	mov    $0x80000000,%edx
140022a9b:	48 8b cb             	mov    %rbx,%rcx
140022a9e:	48 ff 15 33 cf 01 00 	rex.W call *0x1cf33(%rip)        # 0x14003f9d8
140022aa5:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022aaa:	85 c0                	test   %eax,%eax
140022aac:	74 4f                	je     0x140022afd
140022aae:	44 8a 07             	mov    (%rdi),%r8b
140022ab1:	48 8b cb             	mov    %rbx,%rcx
140022ab4:	bf 01 00 00 00       	mov    $0x1,%edi
140022ab9:	8b d7                	mov    %edi,%edx
140022abb:	48 ff 15 56 cf 01 00 	rex.W call *0x1cf56(%rip)        # 0x14003fa18
140022ac2:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022ac7:	85 c0                	test   %eax,%eax
140022ac9:	74 32                	je     0x140022afd
140022acb:	8b 54 24 38          	mov    0x38(%rsp),%edx
140022acf:	48 8b cb             	mov    %rbx,%rcx
140022ad2:	48 ff 15 37 cf 01 00 	rex.W call *0x1cf37(%rip)        # 0x14003fa10
140022ad9:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022ade:	85 c0                	test   %eax,%eax
140022ae0:	74 1b                	je     0x140022afd
140022ae2:	8b 54 24 48          	mov    0x48(%rsp),%edx
140022ae6:	48 8b cb             	mov    %rbx,%rcx
140022ae9:	48 ff 15 20 cf 01 00 	rex.W call *0x1cf20(%rip)        # 0x14003fa10
140022af0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022af5:	85 c0                	test   %eax,%eax
140022af7:	74 04                	je     0x140022afd
140022af9:	8b c7                	mov    %edi,%eax
140022afb:	eb 02                	jmp    0x140022aff
140022afd:	33 c0                	xor    %eax,%eax
140022aff:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
140022b04:	48 83 c4 20          	add    $0x20,%rsp
140022b08:	5f                   	pop    %rdi
140022b09:	c3                   	ret
140022b0a:	cc                   	int3
140022b0b:	cc                   	int3
140022b0c:	cc                   	int3
140022b0d:	cc                   	int3
140022b0e:	cc                   	int3
140022b0f:	cc                   	int3
140022b10:	cc                   	int3
140022b11:	cc                   	int3
140022b12:	cc                   	int3
140022b13:	cc                   	int3
140022b14:	cc                   	int3
140022b15:	cc                   	int3
140022b16:	cc                   	int3
140022b17:	cc                   	int3
140022b18:	cc                   	int3
140022b19:	cc                   	int3
140022b1a:	cc                   	int3
140022b1b:	cc                   	int3
140022b1c:	cc                   	int3
140022b1d:	cc                   	int3
140022b1e:	cc                   	int3
140022b1f:	cc                   	int3
140022b20:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140022b25:	57                   	push   %rdi
140022b26:	48 83 ec 40          	sub    $0x40,%rsp
140022b2a:	85 d2                	test   %edx,%edx
140022b2c:	4c 8d 4c 24 30       	lea    0x30(%rsp),%r9
140022b31:	b8 10 00 00 00       	mov    $0x10,%eax
140022b36:	49 8b f8             	mov    %r8,%rdi
140022b39:	0f 45 c2             	cmovne %edx,%eax
140022b3c:	4c 8d 44 24 68       	lea    0x68(%rsp),%r8
140022b41:	8b d0                	mov    %eax,%edx
140022b43:	48 8b d9             	mov    %rcx,%rbx
140022b46:	48 ff 15 63 cf 01 00 	rex.W call *0x1cf63(%rip)        # 0x14003fab0
140022b4d:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022b52:	85 c0                	test   %eax,%eax
140022b54:	0f 84 83 00 00 00    	je     0x140022bdd
140022b5a:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
140022b5f:	4c 8d 4c 24 28       	lea    0x28(%rsp),%r9
140022b64:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
140022b69:	ba 00 00 00 80       	mov    $0x80000000,%edx
140022b6e:	48 ff 15 3b cf 01 00 	rex.W call *0x1cf3b(%rip)        # 0x14003fab0
140022b75:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022b7a:	85 c0                	test   %eax,%eax
140022b7c:	74 5f                	je     0x140022bdd
140022b7e:	48 8b 4c 24 20       	mov    0x20(%rsp),%rcx
140022b83:	4c 8b c7             	mov    %rdi,%r8
140022b86:	bf 01 00 00 00       	mov    $0x1,%edi
140022b8b:	8b d7                	mov    %edi,%edx
140022b8d:	48 ff 15 54 ce 01 00 	rex.W call *0x1ce54(%rip)        # 0x14003f9e8
140022b94:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022b99:	85 c0                	test   %eax,%eax
140022b9b:	74 40                	je     0x140022bdd
140022b9d:	4c 8b 44 24 28       	mov    0x28(%rsp),%r8
140022ba2:	48 8b 54 24 20       	mov    0x20(%rsp),%rdx
140022ba7:	48 8b 4c 24 68       	mov    0x68(%rsp),%rcx
140022bac:	48 ff 15 2d ce 01 00 	rex.W call *0x1ce2d(%rip)        # 0x14003f9e0
140022bb3:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022bb8:	85 c0                	test   %eax,%eax
140022bba:	74 21                	je     0x140022bdd
140022bbc:	4c 8b 44 24 30       	mov    0x30(%rsp),%r8
140022bc1:	48 8b cb             	mov    %rbx,%rcx
140022bc4:	48 8b 54 24 68       	mov    0x68(%rsp),%rdx
140022bc9:	48 ff 15 10 ce 01 00 	rex.W call *0x1ce10(%rip)        # 0x14003f9e0
140022bd0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022bd5:	85 c0                	test   %eax,%eax
140022bd7:	74 04                	je     0x140022bdd
140022bd9:	8b c7                	mov    %edi,%eax
140022bdb:	eb 02                	jmp    0x140022bdf
140022bdd:	33 c0                	xor    %eax,%eax
140022bdf:	48 8b 5c 24 50       	mov    0x50(%rsp),%rbx
140022be4:	48 83 c4 40          	add    $0x40,%rsp
140022be8:	5f                   	pop    %rdi
140022be9:	c3                   	ret
140022bea:	cc                   	int3
140022beb:	cc                   	int3
140022bec:	cc                   	int3
140022bed:	cc                   	int3
140022bee:	cc                   	int3
140022bef:	cc                   	int3
140022bf0:	cc                   	int3
140022bf1:	cc                   	int3
140022bf2:	cc                   	int3
140022bf3:	cc                   	int3
140022bf4:	cc                   	int3
140022bf5:	cc                   	int3
140022bf6:	cc                   	int3
140022bf7:	cc                   	int3
140022bf8:	cc                   	int3
140022bf9:	cc                   	int3
140022bfa:	cc                   	int3
140022bfb:	cc                   	int3
140022bfc:	cc                   	int3
140022bfd:	cc                   	int3
140022bfe:	cc                   	int3
140022bff:	cc                   	int3
140022c00:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
140022c05:	55                   	push   %rbp
140022c06:	56                   	push   %rsi
140022c07:	57                   	push   %rdi
140022c08:	48 83 ec 30          	sub    $0x30,%rsp
140022c0c:	8b c2                	mov    %edx,%eax
140022c0e:	33 ed                	xor    %ebp,%ebp
140022c10:	85 c0                	test   %eax,%eax
140022c12:	49 8b f8             	mov    %r8,%rdi
140022c15:	4c 8d 44 24 20       	lea    0x20(%rsp),%r8
140022c1a:	48 8b d9             	mov    %rcx,%rbx
140022c1d:	8d 75 10             	lea    0x10(%rbp),%esi
140022c20:	8b d6                	mov    %esi,%edx
140022c22:	0f 45 d0             	cmovne %eax,%edx
140022c25:	48 ff 15 ac cd 01 00 	rex.W call *0x1cdac(%rip)        # 0x14003f9d8
140022c2c:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022c31:	85 c0                	test   %eax,%eax
140022c33:	0f 84 9b 01 00 00    	je     0x140022dd4
140022c39:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
140022c3e:	ba 00 00 00 80       	mov    $0x80000000,%edx
140022c43:	48 8b cb             	mov    %rbx,%rcx
140022c46:	48 ff 15 8b cd 01 00 	rex.W call *0x1cd8b(%rip)        # 0x14003f9d8
140022c4d:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022c52:	85 c0                	test   %eax,%eax
140022c54:	0f 84 7a 01 00 00    	je     0x140022dd4
140022c5a:	4c 8b 4f 10          	mov    0x10(%rdi),%r9
140022c5e:	8d 55 04             	lea    0x4(%rbp),%edx
140022c61:	44 8b 47 08          	mov    0x8(%rdi),%r8d
140022c65:	48 8b cb             	mov    %rbx,%rcx
140022c68:	48 ff 15 e1 cd 01 00 	rex.W call *0x1cde1(%rip)        # 0x14003fa50
140022c6f:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022c74:	85 c0                	test   %eax,%eax
140022c76:	0f 84 58 01 00 00    	je     0x140022dd4
140022c7c:	8b 54 24 58          	mov    0x58(%rsp),%edx
140022c80:	48 8b cb             	mov    %rbx,%rcx
140022c83:	48 ff 15 86 cd 01 00 	rex.W call *0x1cd86(%rip)        # 0x14003fa10
140022c8a:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022c8f:	85 c0                	test   %eax,%eax
140022c91:	0f 84 3d 01 00 00    	je     0x140022dd4
140022c97:	40 38 2f             	cmp    %bpl,(%rdi)
140022c9a:	7d 73                	jge    0x140022d0f
140022c9c:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
140022ca1:	ba 01 00 00 80       	mov    $0x80000001,%edx
140022ca6:	48 8b cb             	mov    %rbx,%rcx
140022ca9:	48 ff 15 28 cd 01 00 	rex.W call *0x1cd28(%rip)        # 0x14003f9d8
140022cb0:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022cb5:	85 c0                	test   %eax,%eax
140022cb7:	0f 84 17 01 00 00    	je     0x140022dd4
140022cbd:	4c 8d 44 24 68       	lea    0x68(%rsp),%r8
140022cc2:	8b d6                	mov    %esi,%edx
140022cc4:	48 8b cb             	mov    %rbx,%rcx
140022cc7:	48 ff 15 0a cd 01 00 	rex.W call *0x1cd0a(%rip)        # 0x14003f9d8
140022cce:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022cd3:	85 c0                	test   %eax,%eax
140022cd5:	0f 84 f9 00 00 00    	je     0x140022dd4
140022cdb:	48 8d 57 18          	lea    0x18(%rdi),%rdx
140022cdf:	48 8b cb             	mov    %rbx,%rcx
140022ce2:	4c 8d 44 24 68       	lea    0x68(%rsp),%r8
140022ce7:	e8 30 85 ff ff       	call   0x14001b21c
140022cec:	85 c0                	test   %eax,%eax
140022cee:	0f 84 e0 00 00 00    	je     0x140022dd4
140022cf4:	8b 54 24 58          	mov    0x58(%rsp),%edx
140022cf8:	48 8b cb             	mov    %rbx,%rcx
140022cfb:	48 ff 15 0e cd 01 00 	rex.W call *0x1cd0e(%rip)        # 0x14003fa10
140022d02:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022d07:	85 c0                	test   %eax,%eax
140022d09:	0f 84 c5 00 00 00    	je     0x140022dd4
140022d0f:	f6 07 40             	testb  $0x40,(%rdi)
140022d12:	0f 84 9e 00 00 00    	je     0x140022db6
140022d18:	48 8b 47 28          	mov    0x28(%rdi),%rax
140022d1c:	48 85 c0             	test   %rax,%rax
140022d1f:	74 35                	je     0x140022d56
140022d21:	41 b8 ff ff ff 7f    	mov    $0x7fffffff,%r8d
140022d27:	41 8b c8             	mov    %r8d,%ecx
140022d2a:	40 38 28             	cmp    %bpl,(%rax)
140022d2d:	74 09                	je     0x140022d38
140022d2f:	48 ff c0             	inc    %rax
140022d32:	48 83 e9 01          	sub    $0x1,%rcx
140022d36:	75 f2                	jne    0x140022d2a
140022d38:	48 8b c1             	mov    %rcx,%rax
140022d3b:	48 f7 d8             	neg    %rax
140022d3e:	1b d2                	sbb    %edx,%edx
140022d40:	4c 2b c1             	sub    %rcx,%r8
140022d43:	f7 d2                	not    %edx
140022d45:	81 e2 57 00 07 80    	and    $0x80070057,%edx
140022d4b:	48 f7 d9             	neg    %rcx
140022d4e:	48 1b ed             	sbb    %rbp,%rbp
140022d51:	49 23 e8             	and    %r8,%rbp
140022d54:	eb 05                	jmp    0x140022d5b
140022d56:	ba 57 00 07 80       	mov    $0x80070057,%edx
140022d5b:	33 f6                	xor    %esi,%esi
140022d5d:	4c 8d 44 24 58       	lea    0x58(%rsp),%r8
140022d62:	85 d2                	test   %edx,%edx
140022d64:	48 8b cb             	mov    %rbx,%rcx
140022d67:	ba 02 00 00 80       	mov    $0x80000002,%edx
140022d6c:	48 0f 49 f5          	cmovns %rbp,%rsi
140022d70:	48 ff 15 61 cc 01 00 	rex.W call *0x1cc61(%rip)        # 0x14003f9d8
140022d77:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022d7c:	85 c0                	test   %eax,%eax
140022d7e:	74 54                	je     0x140022dd4
140022d80:	4c 8b 4f 28          	mov    0x28(%rdi),%r9
140022d84:	44 8b c6             	mov    %esi,%r8d
140022d87:	ba 1b 00 00 00       	mov    $0x1b,%edx
140022d8c:	48 8b cb             	mov    %rbx,%rcx
140022d8f:	48 ff 15 72 cc 01 00 	rex.W call *0x1cc72(%rip)        # 0x14003fa08
140022d96:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022d9b:	85 c0                	test   %eax,%eax
140022d9d:	74 35                	je     0x140022dd4
140022d9f:	8b 54 24 58          	mov    0x58(%rsp),%edx
140022da3:	48 8b cb             	mov    %rbx,%rcx
140022da6:	48 ff 15 63 cc 01 00 	rex.W call *0x1cc63(%rip)        # 0x14003fa10
140022dad:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022db2:	85 c0                	test   %eax,%eax
140022db4:	74 1e                	je     0x140022dd4
140022db6:	8b 54 24 20          	mov    0x20(%rsp),%edx
140022dba:	48 8b cb             	mov    %rbx,%rcx
140022dbd:	48 ff 15 4c cc 01 00 	rex.W call *0x1cc4c(%rip)        # 0x14003fa10
140022dc4:	0f 1f 44 00 00       	nopl   0x0(%rax,%rax,1)
140022dc9:	85 c0                	test   %eax,%eax
140022dcb:	74 07                	je     0x140022dd4
140022dcd:	b8 01 00 00 00       	mov    $0x1,%eax
140022dd2:	eb 02                	jmp    0x140022dd6
140022dd4:	33 c0                	xor    %eax,%eax