fffff800002f6d87:	cc                   	int3
fffff800002f6d88:	cc                   	int3
fffff800002f6d89:	cc                   	int3
fffff800002f6d8a:	cc                   	int3
fffff800002f6d8b:	cc                   	int3
fffff800002f6d8c:	cc                   	int3
fffff800002f6d8d:	cc                   	int3
fffff800002f6d8e:	cc                   	int3
fffff800002f6d8f:	cc                   	int3
fffff800002f6d90:	48 83 ec 38          	sub    $0x38,%rsp
fffff800002f6d94:	33 c0                	xor    %eax,%eax
fffff800002f6d96:	c6 44 24 20 08       	movb   $0x8,0x20(%rsp)
fffff800002f6d9b:	41 b1 01             	mov    $0x1,%r9b
fffff800002f6d9e:	66 89 42 0c          	mov    %ax,0xc(%rdx)
fffff800002f6da2:	e8 0d 00 00 00       	call   0xfffff800002f6db4
fffff800002f6da7:	48 83 c4 38          	add    $0x38,%rsp
fffff800002f6dab:	c3                   	ret
fffff800002f6dac:	cc                   	int3
fffff800002f6dad:	cc                   	int3
fffff800002f6dae:	cc                   	int3
fffff800002f6daf:	cc                   	int3
fffff800002f6db0:	cc                   	int3
fffff800002f6db1:	cc                   	int3
fffff800002f6db2:	cc                   	int3
fffff800002f6db3:	cc                   	int3
fffff800002f6db4:	40 53                	rex push %rbx
fffff800002f6db6:	48 83 ec 20          	sub    $0x20,%rsp
fffff800002f6dba:	41 8a c1             	mov    %r9b,%al
fffff800002f6dbd:	45 8a d0             	mov    %r8b,%r10b
fffff800002f6dc0:	44 8a 4c 24 50       	mov    0x50(%rsp),%r9b
fffff800002f6dc5:	48 8b da             	mov    %rdx,%rbx
fffff800002f6dc8:	44 8a c0             	mov    %al,%r8b
fffff800002f6dcb:	41 8a d2             	mov    %r10b,%dl
fffff800002f6dce:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6dd1:	e8 c6 04 00 00       	call   0xfffff800002f729c
fffff800002f6dd6:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f6dda:	b2 03                	mov    $0x3,%dl
fffff800002f6ddc:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6ddf:	e8 9c 60 f4 ff       	call   0xfffff8000023ce80
fffff800002f6de4:	44 8a c0             	mov    %al,%r8b
fffff800002f6de7:	b2 03                	mov    $0x3,%dl
fffff800002f6de9:	48 8b 43 18          	mov    0x18(%rbx),%rax
fffff800002f6ded:	41 80 e0 7f          	and    $0x7f,%r8b
fffff800002f6df1:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6df4:	e8 87 60 f4 ff       	call   0xfffff8000023ce80
fffff800002f6df9:	48 8b 43 18          	mov    0x18(%rbx),%rax
fffff800002f6dfd:	45 33 c0             	xor    %r8d,%r8d
fffff800002f6e00:	b2 01                	mov    $0x1,%dl
fffff800002f6e02:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6e05:	e8 76 60 f4 ff       	call   0xfffff8000023ce80
fffff800002f6e0a:	48 8b 43 18          	mov    0x18(%rbx),%rax
fffff800002f6e0e:	41 b0 06             	mov    $0x6,%r8b
fffff800002f6e11:	b2 02                	mov    $0x2,%dl
fffff800002f6e13:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6e16:	e8 65 60 f4 ff       	call   0xfffff8000023ce80
fffff800002f6e1b:	8b 53 08             	mov    0x8(%rbx),%edx
fffff800002f6e1e:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6e21:	e8 5a 02 00 00       	call   0xfffff800002f7080
fffff800002f6e26:	48 8b 43 18          	mov    0x18(%rbx),%rax
fffff800002f6e2a:	41 b0 01             	mov    $0x1,%r8b
fffff800002f6e2d:	b2 02                	mov    $0x2,%dl
fffff800002f6e2f:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6e32:	e8 49 60 f4 ff       	call   0xfffff8000023ce80
fffff800002f6e37:	48 8b 43 18          	mov    0x18(%rbx),%rax
fffff800002f6e3b:	41 b0 03             	mov    $0x3,%r8b
fffff800002f6e3e:	b2 04                	mov    $0x4,%dl
fffff800002f6e40:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6e43:	e8 38 60 f4 ff       	call   0xfffff8000023ce80
fffff800002f6e48:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f6e4c:	b2 06                	mov    $0x6,%dl
fffff800002f6e4e:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6e51:	e8 2a 60 f4 ff       	call   0xfffff8000023ce80
fffff800002f6e56:	a8 40                	test   $0x40,%al
fffff800002f6e58:	74 05                	je     0xfffff800002f6e5f
fffff800002f6e5a:	66 83 4b 0c 02       	orw    $0x2,0xc(%rbx)
fffff800002f6e5f:	b0 01                	mov    $0x1,%al
fffff800002f6e61:	48 83 c4 20          	add    $0x20,%rsp
fffff800002f6e65:	5b                   	pop    %rbx
fffff800002f6e66:	c3                   	ret
fffff800002f6e67:	cc                   	int3
fffff800002f6e68:	cc                   	int3
fffff800002f6e69:	cc                   	int3
fffff800002f6e6a:	cc                   	int3
fffff800002f6e6b:	cc                   	int3
fffff800002f6e6c:	cc                   	int3
fffff800002f6e6d:	cc                   	int3
fffff800002f6e6e:	cc                   	int3
fffff800002f6e6f:	cc                   	int3
fffff800002f6e70:	48 83 ec 38          	sub    $0x38,%rsp
fffff800002f6e74:	48 8b 02             	mov    (%rdx),%rax
fffff800002f6e77:	48 83 f8 04          	cmp    $0x4,%rax
fffff800002f6e7b:	77 4e                	ja     0xfffff800002f6ecb
fffff800002f6e7d:	83 e8 01             	sub    $0x1,%eax
fffff800002f6e80:	74 2a                	je     0xfffff800002f6eac
fffff800002f6e82:	83 e8 01             	sub    $0x1,%eax
fffff800002f6e85:	74 1c                	je     0xfffff800002f6ea3
fffff800002f6e87:	83 e8 01             	sub    $0x1,%eax
fffff800002f6e8a:	74 0e                	je     0xfffff800002f6e9a
fffff800002f6e8c:	83 f8 01             	cmp    $0x1,%eax
fffff800002f6e8f:	75 3a                	jne    0xfffff800002f6ecb
fffff800002f6e91:	48 c7 02 e8 02 00 00 	movq   $0x2e8,(%rdx)
fffff800002f6e98:	eb 19                	jmp    0xfffff800002f6eb3
fffff800002f6e9a:	48 c7 02 e8 03 00 00 	movq   $0x3e8,(%rdx)
fffff800002f6ea1:	eb 10                	jmp    0xfffff800002f6eb3
fffff800002f6ea3:	48 c7 02 f8 02 00 00 	movq   $0x2f8,(%rdx)
fffff800002f6eaa:	eb 07                	jmp    0xfffff800002f6eb3
fffff800002f6eac:	48 c7 02 f8 03 00 00 	movq   $0x3f8,(%rdx)
fffff800002f6eb3:	33 c0                	xor    %eax,%eax
fffff800002f6eb5:	c6 44 24 20 08       	movb   $0x8,0x20(%rsp)
fffff800002f6eba:	41 b1 01             	mov    $0x1,%r9b
fffff800002f6ebd:	66 89 42 0c          	mov    %ax,0xc(%rdx)
fffff800002f6ec1:	45 33 c0             	xor    %r8d,%r8d
fffff800002f6ec4:	e8 eb fe ff ff       	call   0xfffff800002f6db4
fffff800002f6ec9:	eb 02                	jmp    0xfffff800002f6ecd
fffff800002f6ecb:	32 c0                	xor    %al,%al
fffff800002f6ecd:	48 83 c4 38          	add    $0x38,%rsp
fffff800002f6ed1:	c3                   	ret
fffff800002f6ed2:	cc                   	int3
fffff800002f6ed3:	cc                   	int3
fffff800002f6ed4:	cc                   	int3
fffff800002f6ed5:	cc                   	int3
fffff800002f6ed6:	cc                   	int3
fffff800002f6ed7:	cc                   	int3
fffff800002f6ed8:	cc                   	int3
fffff800002f6ed9:	cc                   	int3
fffff800002f6eda:	cc                   	int3
fffff800002f6edb:	cc                   	int3
fffff800002f6edc:	cc                   	int3
fffff800002f6edd:	cc                   	int3
fffff800002f6ede:	cc                   	int3
fffff800002f6edf:	cc                   	int3
fffff800002f6ee0:	48 83 ec 38          	sub    $0x38,%rsp
fffff800002f6ee4:	b8 01 00 00 00       	mov    $0x1,%eax
fffff800002f6ee9:	66 89 42 0c          	mov    %ax,0xc(%rdx)
fffff800002f6eed:	8a 44 24 60          	mov    0x60(%rsp),%al
fffff800002f6ef1:	88 44 24 20          	mov    %al,0x20(%rsp)
fffff800002f6ef5:	e8 ba fe ff ff       	call   0xfffff800002f6db4
fffff800002f6efa:	48 83 c4 38          	add    $0x38,%rsp
fffff800002f6efe:	c3                   	ret
fffff800002f6eff:	cc                   	int3
fffff800002f6f00:	cc                   	int3
fffff800002f6f01:	cc                   	int3
fffff800002f6f02:	cc                   	int3
fffff800002f6f03:	cc                   	int3
fffff800002f6f04:	cc                   	int3
fffff800002f6f05:	cc                   	int3
fffff800002f6f06:	cc                   	int3
fffff800002f6f07:	cc                   	int3
fffff800002f6f08:	cc                   	int3
fffff800002f6f09:	cc                   	int3
fffff800002f6f0a:	cc                   	int3
fffff800002f6f0b:	cc                   	int3
fffff800002f6f0c:	cc                   	int3
fffff800002f6f0d:	cc                   	int3
fffff800002f6f0e:	cc                   	int3
fffff800002f6f0f:	cc                   	int3
fffff800002f6f10:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
fffff800002f6f15:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
fffff800002f6f1a:	48 89 7c 24 18       	mov    %rdi,0x18(%rsp)
fffff800002f6f1f:	41 56                	push   %r14
fffff800002f6f21:	48 83 ec 20          	sub    $0x20,%rsp
fffff800002f6f25:	41 8a f0             	mov    %r8b,%sil
fffff800002f6f28:	40 8a fa             	mov    %dl,%dil
fffff800002f6f2b:	48 8b d9             	mov    %rcx,%rbx
fffff800002f6f2e:	48 85 c9             	test   %rcx,%rcx
fffff800002f6f31:	74 77                	je     0xfffff800002f6faa
fffff800002f6f33:	48 83 39 00          	cmpq   $0x0,(%rcx)
fffff800002f6f37:	74 71                	je     0xfffff800002f6faa
fffff800002f6f39:	f6 41 0c 04          	testb  $0x4,0xc(%rcx)
fffff800002f6f3d:	41 be 01 00 00 00    	mov    $0x1,%r14d
fffff800002f6f43:	74 53                	je     0xfffff800002f6f98
fffff800002f6f45:	48 8b 41 10          	mov    0x10(%rcx),%rax
fffff800002f6f49:	b2 06                	mov    $0x6,%dl
fffff800002f6f4b:	e8 30 5f f4 ff       	call   0xfffff8000023ce80
fffff800002f6f50:	8a c8                	mov    %al,%cl
fffff800002f6f52:	8a d0                	mov    %al,%dl
fffff800002f6f54:	80 e1 b0             	and    $0xb0,%cl
fffff800002f6f57:	80 f9 b0             	cmp    $0xb0,%cl
fffff800002f6f5a:	74 3c                	je     0xfffff800002f6f98
fffff800002f6f5c:	84 d2                	test   %dl,%dl
fffff800002f6f5e:	78 22                	js     0xfffff800002f6f82
fffff800002f6f60:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f6f64:	b2 05                	mov    $0x5,%dl
fffff800002f6f66:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6f69:	e8 12 5f f4 ff       	call   0xfffff8000023ce80
fffff800002f6f6e:	44 84 73 0c          	test   %r14b,0xc(%rbx)
fffff800002f6f72:	74 0e                	je     0xfffff800002f6f82
fffff800002f6f74:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f6f78:	33 d2                	xor    %edx,%edx
fffff800002f6f7a:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6f7d:	e8 fe 5e f4 ff       	call   0xfffff8000023ce80
fffff800002f6f82:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f6f86:	b2 06                	mov    $0x6,%dl
fffff800002f6f88:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6f8b:	e8 f0 5e f4 ff       	call   0xfffff8000023ce80
fffff800002f6f90:	8a d0                	mov    %al,%dl
fffff800002f6f92:	24 b0                	and    $0xb0,%al
fffff800002f6f94:	3c b0                	cmp    $0xb0,%al
fffff800002f6f96:	75 c4                	jne    0xfffff800002f6f5c
fffff800002f6f98:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f6f9c:	b2 05                	mov    $0x5,%dl
fffff800002f6f9e:	48 8b cb             	mov    %rbx,%rcx
fffff800002f6fa1:	e8 da 5e f4 ff       	call   0xfffff8000023ce80
fffff800002f6fa6:	3c ff                	cmp    $0xff,%al
fffff800002f6fa8:	75 6b                	jne    0xfffff800002f7015
fffff800002f6faa:	b8 03 00 00 00       	mov    $0x3,%eax
fffff800002f6faf:	48 8b 5c 24 30       	mov    0x30(%rsp),%rbx
fffff800002f6fb4:	48 8b 74 24 38       	mov    0x38(%rsp),%rsi
fffff800002f6fb9:	48 8b 7c 24 40       	mov    0x40(%rsp),%rdi
fffff800002f6fbe:	48 83 c4 20          	add    $0x20,%rsp
fffff800002f6fc2:	41 5e                	pop    %r14
fffff800002f6fc4:	c3                   	ret
fffff800002f6fc5:	cc                   	int3
fffff800002f6fc6:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f6fca:	b2 06                	mov    $0x6,%dl
fffff800002f6fcc:	e8 af 5e f4 ff       	call   0xfffff8000023ce80
fffff800002f6fd1:	44 0f b7 43 0c       	movzwl 0xc(%rbx),%r8d
fffff800002f6fd6:	24 40                	and    $0x40,%al
fffff800002f6fd8:	0f 94 c2             	sete   %dl
fffff800002f6fdb:	66 45 0f a3 f0       	bt     %r14w,%r8w
fffff800002f6fe0:	0f 92 c1             	setb   %cl
fffff800002f6fe3:	84 d1                	test   %dl,%cl
fffff800002f6fe5:	75 11                	jne    0xfffff800002f6ff8
fffff800002f6fe7:	84 c0                	test   %al,%al
fffff800002f6fe9:	0f 95 c1             	setne  %cl
fffff800002f6fec:	66 45 0f a3 f0       	bt     %r14w,%r8w
fffff800002f6ff1:	0f 93 c0             	setae  %al
fffff800002f6ff4:	84 c8                	test   %cl,%al
fffff800002f6ff6:	74 0a                	je     0xfffff800002f7002
fffff800002f6ff8:	66 41 83 c8 04       	or     $0x4,%r8w
fffff800002f6ffd:	66 44 89 43 0c       	mov    %r8w,0xc(%rbx)
fffff800002f7002:	40 84 f6             	test   %sil,%sil
fffff800002f7005:	74 a3                	je     0xfffff800002f6faa
fffff800002f7007:	48 8b 43 10          	mov    0x10(%rbx),%rax
fffff800002f700b:	b2 05                	mov    $0x5,%dl
fffff800002f700d:	48 8b cb             	mov    %rbx,%rcx
fffff800002f7010:	e8 6b 5e f4 ff       	call   0xfffff8000023ce80
fffff800002f7015:	48 8b cb             	mov    %rbx,%rcx
fffff800002f7018:	a8 20                	test   $0x20,%al
fffff800002f701a:	74 aa                	je     0xfffff800002f6fc6
fffff800002f701c:	48 8b 43 18          	mov    0x18(%rbx),%rax
fffff800002f7020:	44 8a c7             	mov    %dil,%r8b
fffff800002f7023:	33 d2                	xor    %edx,%edx
fffff800002f7025:	e8 56 5e f4 ff       	call   0xfffff8000023ce80
fffff800002f702a:	33 c0                	xor    %eax,%eax
fffff800002f702c:	eb 81                	jmp    0xfffff800002f6faf
fffff800002f702e:	cc                   	int3
fffff800002f702f:	cc                   	int3
fffff800002f7030:	cc                   	int3
fffff800002f7031:	cc                   	int3
fffff800002f7032:	cc                   	int3
fffff800002f7033:	cc                   	int3
fffff800002f7034:	cc                   	int3
fffff800002f7035:	cc                   	int3
fffff800002f7036:	cc                   	int3
fffff800002f7037:	cc                   	int3
fffff800002f7038:	cc                   	int3
fffff800002f7039:	cc                   	int3
fffff800002f703a:	cc                   	int3
fffff800002f703b:	cc                   	int3
fffff800002f703c:	cc                   	int3
fffff800002f703d:	cc                   	int3
fffff800002f703e:	cc                   	int3
fffff800002f703f:	cc                   	int3
fffff800002f7040:	48 83 ec 28          	sub    $0x28,%rsp
fffff800002f7044:	48 85 c9             	test   %rcx,%rcx
fffff800002f7047:	74 1d                	je     0xfffff800002f7066
fffff800002f7049:	48 83 39 00          	cmpq   $0x0,(%rcx)
fffff800002f704d:	74 17                	je     0xfffff800002f7066
fffff800002f704f:	48 8b 41 10          	mov    0x10(%rcx),%rax
fffff800002f7053:	b2 05                	mov    $0x5,%dl
fffff800002f7055:	e8 26 5e f4 ff       	call   0xfffff8000023ce80
fffff800002f705a:	3c ff                	cmp    $0xff,%al
fffff800002f705c:	74 08                	je     0xfffff800002f7066
fffff800002f705e:	a8 01                	test   $0x1,%al
fffff800002f7060:	74 04                	je     0xfffff800002f7066
fffff800002f7062:	b0 01                	mov    $0x1,%al
fffff800002f7064:	eb 02                	jmp    0xfffff800002f7068
fffff800002f7066:	32 c0                	xor    %al,%al
fffff800002f7068:	48 83 c4 28          	add    $0x28,%rsp
fffff800002f706c:	c3                   	ret
fffff800002f706d:	cc                   	int3
fffff800002f706e:	cc                   	int3
fffff800002f706f:	cc                   	int3
fffff800002f7070:	cc                   	int3
fffff800002f7071:	cc                   	int3
fffff800002f7072:	cc                   	int3
fffff800002f7073:	cc                   	int3
fffff800002f7074:	cc                   	int3
fffff800002f7075:	cc                   	int3
fffff800002f7076:	cc                   	int3
fffff800002f7077:	cc                   	int3
fffff800002f7078:	cc                   	int3
fffff800002f7079:	cc                   	int3
fffff800002f707a:	cc                   	int3
fffff800002f707b:	cc                   	int3
fffff800002f707c:	cc                   	int3
fffff800002f707d:	cc                   	int3
fffff800002f707e:	cc                   	int3
fffff800002f707f:	cc                   	int3
fffff800002f7080:	48 83 ec 28          	sub    $0x28,%rsp
fffff800002f7084:	f6 41 0c 01          	testb  $0x1,0xc(%rcx)
fffff800002f7088:	74 04                	je     0xfffff800002f708e
fffff800002f708a:	32 c0                	xor    %al,%al
fffff800002f708c:	eb 05                	jmp    0xfffff800002f7093
fffff800002f708e:	e8 0d 00 00 00       	call   0xfffff800002f70a0
fffff800002f7093:	48 83 c4 28          	add    $0x28,%rsp
fffff800002f7097:	c3                   	ret
fffff800002f7098:	cc                   	int3
fffff800002f7099:	cc                   	int3
fffff800002f709a:	cc                   	int3
fffff800002f709b:	cc                   	int3
fffff800002f709c:	cc                   	int3
fffff800002f709d:	cc                   	int3
fffff800002f709e:	cc                   	int3
fffff800002f709f:	cc                   	int3
fffff800002f70a0:	48 89 5c 24 08       	mov    %rbx,0x8(%rsp)
fffff800002f70a5:	48 89 74 24 10       	mov    %rsi,0x10(%rsp)
fffff800002f70aa:	57                   	push   %rdi
fffff800002f70ab:	48 83 ec 20          	sub    $0x20,%rsp
fffff800002f70af:	8b f2                	mov    %edx,%esi
fffff800002f70b1:	48 8b f9             	mov    %rcx,%rdi
fffff800002f70b4:	48 85 c9             	test   %rcx,%rcx
fffff800002f70b7:	74 74                	je     0xfffff800002f712d
fffff800002f70b9:	48 83 39 00          	cmpq   $0x0,(%rcx)
fffff800002f70bd:	74 6e                	je     0xfffff800002f712d
fffff800002f70bf:	85 d2                	test   %edx,%edx
fffff800002f70c1:	74 6a                	je     0xfffff800002f712d
fffff800002f70c3:	33 d2                	xor    %edx,%edx
fffff800002f70c5:	b8 00 c2 01 00       	mov    $0x1c200,%eax
fffff800002f70ca:	f7 f6                	div    %esi
fffff800002f70cc:	b2 03                	mov    $0x3,%dl
fffff800002f70ce:	8b d8                	mov    %eax,%ebx
fffff800002f70d0:	48 8b 41 10          	mov    0x10(%rcx),%rax
fffff800002f70d4:	e8 a7 5d f4 ff       	call   0xfffff8000023ce80
fffff800002f70d9:	44 8a c0             	mov    %al,%r8b
fffff800002f70dc:	b2 03                	mov    $0x3,%dl
fffff800002f70de:	48 8b 47 18          	mov    0x18(%rdi),%rax
fffff800002f70e2:	41 80 c8 80          	or     $0x80,%r8b
fffff800002f70e6:	48 8b cf             	mov    %rdi,%rcx
fffff800002f70e9:	e8 92 5d f4 ff       	call   0xfffff8000023ce80
fffff800002f70ee:	48 8b 47 18          	mov    0x18(%rdi),%rax
fffff800002f70f2:	44 8b c3             	mov    %ebx,%r8d
fffff800002f70f5:	41 c1 e8 08          	shr    $0x8,%r8d
fffff800002f70f9:	b2 01                	mov    $0x1,%dl
fffff800002f70fb:	48 8b cf             	mov    %rdi,%rcx
fffff800002f70fe:	e8 7d 5d f4 ff       	call   0xfffff8000023ce80
fffff800002f7103:	48 8b 47 18          	mov    0x18(%rdi),%rax
fffff800002f7107:	44 8a c3             	mov    %bl,%r8b
fffff800002f710a:	33 d2                	xor    %edx,%edx